@wizeworks/lens-ui 0.3.0-alpha.4 → 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-VILWxQLm.js → AccountPage-LO4tZhQV.js} +1 -1
- package/dist/assets/{AppsPanel-dMv08jJp.js → AppsPanel-FqAhi3J1.js} +1 -1
- package/dist/assets/{TeamPage-jnluOMGo.js → TeamPage-DIxM37vw.js} +1 -1
- package/dist/assets/{account-CBQ8udHj.js → account-DJJSBLFB.js} +2 -2
- package/dist/assets/{auth-client-DYivy6Jr.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-OzB99FXf.js +0 -58
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TeamPage-jnluOMGo.js","./account-CBQ8udHj.js","./auth-client-DYivy6Jr.js","./AppsPanel-dMv08jJp.js","./AccountPage-VILWxQLm.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 w,n as Te,nt as Ee,o as De,ot as Oe,p as ke,pt as Ae,q as je,r as Me,rt as Ne,s as Pe,st as Fe,t as Ie,tt as Le,u as Re,ut as ze,v as T,vt as Be,w as Ve,x as He,y as Ue,yt as We,z as Ge}from"./account-CBQ8udHj.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 Ke=We((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}}}})),qe=We(((e,t)=>{t.exports=Ke()})),Je=We((e=>{var t=Be();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`})),Ye=We(((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=Je()})),Xe=We((e=>{var t=qe(),n=Be(),r=Ye();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,w=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Te={pending:!1,data:null,method:null,action:null},Ee=[],De=-1;function Oe(e){return{current:e}}function ke(e){0>De||(e.current=Ee[De],Ee[De]=null,De--)}function Ae(e,t){De++,Ee[De]=e.current,e.current=t}var je=Oe(null),Me=Oe(null),Ne=Oe(null),Pe=Oe(null);function Fe(e,t){switch(Ae(Ne,t),Ae(Me,e),Ae(je,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}}ke(je),Ae(je,e)}function Ie(){ke(je),ke(Me),ke(Ne)}function Le(e){var t=e.memoizedState;t!==null&&(yh._currentValue=t.memoizedState,Ae(Pe,e)),t=je.current;var n=Cp(t,e.type);t!==n&&(Ae(Me,e),Ae(je,n))}function Re(e){Me.current===e&&(ke(je),ke(Me)),Pe.current===e&&(ke(Pe),yh._currentValue=Te)}var ze,T;function Ve(e){if(ze===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ze=t&&t[1]||``,T=-1<e.stack.indexOf(`
|
|
3
|
-
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
4
|
-
`+ze+e+T}var He=!1;function Ue(e,t){if(!e||He)return``;He=!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{He=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Ve(n):``}function We(e,t){switch(e.tag){case 26:case 27:case 5:return Ve(e.type);case 16:return Ve(`Lazy`);case 13:return e.child!==t&&t!==null?Ve(`Suspense Fallback`):Ve(`Suspense`);case 19:return Ve(`SuspenseList`);case 0:case 15:return Ue(e.type,!1);case 11:return Ue(e.type.render,!1);case 1:return Ue(e.type,!0);case 31:return Ve(`Activity`);case 30:return Ve(`ViewTransition`);default:return``}}function Ge(e){try{var t=``,n=null;do t+=We(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
8
|
-
Error generating stack: `+e.message+`
|
|
9
|
-
`+e.stack}}var Ke=Object.prototype.hasOwnProperty,Je=t.unstable_scheduleCallback,Xe=t.unstable_cancelCallback,Ze=t.unstable_shouldYield,E=t.unstable_requestPaint,Qe=t.unstable_now,$e=t.unstable_getCurrentPriorityLevel,et=t.unstable_ImmediatePriority,tt=t.unstable_UserBlockingPriority,nt=t.unstable_NormalPriority,rt=t.unstable_LowPriority,it=t.unstable_IdlePriority,at=t.log,ot=t.unstable_setDisableYieldValue,st=null,ct=null;function lt(e){if(typeof at==`function`&&ot(e),ct&&typeof ct.setStrictMode==`function`)try{ct.setStrictMode(st,e)}catch{}}var ut=Math.clz32?Math.clz32:pt,dt=Math.log,ft=Math.LN2;function pt(e){return e>>>=0,e===0?32:31-(dt(e)/ft|0)|0}var mt=256,ht=262144,gt=4194304;function _t(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 vt(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=_t(n))):i=_t(o):i=_t(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=_t(n))):i=_t(o)):i=_t(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 yt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function bt(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-ut(n),i=1<<r;t|=e[r],n&=~i}return t}function xt(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 St(){var e=gt;return gt<<=1,!(gt&62914560)&&(gt=4194304),e}function Ct(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function wt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Tt(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-ut(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&&Et(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Et(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-ut(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Dt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-ut(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function Ot(e,t){var n=t&-t;return n=n&42?1:kt(n),(n&(e.suspendedLanes|t))===0?n:0}function kt(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 At(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function jt(){var e=w.p;return e===0?(e=window.event,e===void 0?32:Fh(e.type)):e}function Mt(e,t){var n=w.p;try{return w.p=e,t()}finally{w.p=n}}var Nt=Math.random().toString(36).slice(2),Pt=`__reactFiber$`+Nt,Ft=`__reactProps$`+Nt,It=`__reactContainer$`+Nt,Lt=`__reactEvents$`+Nt,Rt=`__reactListeners$`+Nt,zt=`__reactHandles$`+Nt,Bt=`__reactResources$`+Nt,Vt=`__reactMarker$`+Nt,Ht=`__reactLoad$`+Nt;function Ut(e){delete e[Pt],delete e[Ft],delete e[Rt],delete e[zt]}function Wt(e){var t;if(t=e[Pt])return t;for(var n=e.parentNode;n;){if(t=n[It]||n[Pt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=wm(e);e!==null;){if(n=e[Pt])return n;e=wm(e)}return t}e=n,n=e.parentNode}return null}function Gt(e){if(e=e[Pt]||e[It]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Kt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function qt(e){var t=e[Bt];return t||=e[Bt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function Jt(e){e[Vt]=!0}function Yt(e){e[Ht]=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 Ke.call(nn,e)?!0:Ke.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=Gt(e);if(t&&(e=t.stateNode)){var n=e[Ft]||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[Ft]||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[Ft]||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(Kt(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(!Ke.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-ut(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 O(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Gi(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 Ki(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 qi(e,t,n,r,a,o){var s=0;if(r=e,typeof r==`function`)O(r)&&(s=1);else if(typeof r==`string`)s=ah(e,n,je.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 k(e,t,n){return e=Wi(6,e,null,t),e.lanes=n,e}function Yi(e){var t=Wi(18,null,null,0);return t.stateNode=e,t}function Xi(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 Zi=new WeakMap;function A(e,t){if(typeof e==`object`&&e){var n=Zi.get(e);return n===void 0?(t={value:e,source:t,stack:Ge(t)},Zi.set(e,t),t):n}return{value:e,source:t,stack:Ge(t)}}var Qi=[],$i=0,ea=null,ta=0,j=[],na=0,M=null,N=1,ra=``;function ia(e,t){Qi[$i++]=ta,Qi[$i++]=ea,ea=e,ta=t}function P(e,t,n){j[na++]=N,j[na++]=ra,j[na++]=M,M=e;var r=N;e=ra;var i=32-ut(r)-1;r&=~(1<<i),n+=1;var a=32-ut(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,N=1<<32-ut(t)+i|n<<i|r,ra=a+e}else N=1<<a|n<<i|r,ra=e}function aa(e){e.return!==null&&(ia(e,1),P(e,1,0))}function oa(e){for(;e===ea;)ea=Qi[--$i],Qi[$i]=null,ta=Qi[--$i],Qi[$i]=null;for(;e===M;)M=j[--na],j[na]=null,ra=j[--na],j[na]=null,N=j[--na],j[na]=null}function sa(e,t){j[na++]=N,j[na++]=ra,j[na++]=M,N=t.id,ra=t.overflow,M=e}var ca=null,F=null,I=!1,la=null,ua=!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[Pt]=e,t[Ft]=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:ua=!1;return;case 27:case 3:ua=!0;return;default:ca=ca.return}}function ha(e){if(e!==ca)return!1;if(!I)return ma(e),I=!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&&F&&fa(e),ma(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));F=Cm(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));F=Cm(e)}else t===27?(t=F,Pp(e.type)?(e=Sm,Sm=null,F=e):F=t):F=ca?xm(e.stateNode.nextSibling):null;return!0}function ga(){F=ca=null,I=!1}function _a(){var e=la;return e!==null&&(Sd===null?Sd=e:Sd.push.apply(Sd,e),la=null),e}function va(e){la===null?la=[e]:la.push(e)}var ya=Oe(null),ba=null,xa=null;function Sa(e,t,n){Ae(ya,t._currentValue),t._currentValue=n}function Ca(e){e._currentValue=ya.current,ke(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===Pe.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=Qe(),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=Oe(null);function Xa(){var e=Ya.current;return e===null?ld.pooledCache:e}function Za(e,t){t===null?Ae(Ya,Ya.current):Ae(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=ld,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=Gi(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=k(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=qi(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=Xi(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=k(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case S:return n=qi(t.type,t.key,t.props,null,e.mode,n),po(n,t),n.return=e,n;case ie:return t=Xi(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),I&&ia(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 I&&ia(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)}),I&&ia(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),I&&ia(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 I&&ia(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)}),I&&ia(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=qi(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=Xi(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=k(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,cd&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,Dt(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?(z&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=Oe(null),jo=Oe(0);function Mo(e,t){e=md,Ae(jo,e),Ae(Ao,t),md=e|t.baseLanes}function No(){Ae(jo,md),Ae(Ao,Ao.current)}function Po(){md=jo.current,ke(Ao),ke(jo)}var Fo=Oe(null),Io=null;function Lo(e){var t=e.alternate;Ae(Ho,Ho.current&1),Ae(Fo,e),Io===null&&(t===null||Ao.current!==null||t.memoizedState!==null)&&(Io=e)}function Ro(e){Ae(Ho,Ho.current),Ae(Fo,e),Io===null&&(Io=e)}function zo(e){e.tag===22?(Ae(Ho,Ho.current),Ae(Fo,e),Io===null&&(Io=e)):Bo()}function Bo(){Ae(Ho,Ho.current),Ae(Fo,Fo.current)}function Vo(e){ke(Fo),Io===e&&(Io=null),ke(Ho)}var Ho=Oe(0);function Uo(e,t){Ae(Fo,Fo.current),Ae(Ho,t)}function Wo(e){ke(Ho),ke(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:(z&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=I;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,ld===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){lt(!0);try{n()}finally{lt(!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(I){var n=ld.formState;if(n!==null){a:{var r=L;if(I){if(F){b:{for(var i=F,a=ua;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){F=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(cd&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){lt(!0);try{e()}finally{lt(!1)}}return n.memoizedState=[r,t],r}function nc(e,t,n){return n===void 0||Ko&1073741824&&!(z&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&&!(z&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=w.p;w.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{w.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,Te,n===null?ac:function(){return cc(e),n(r)})}function sc(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:Te,baseState:Te,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:Te},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),ld===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,Dt(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){lt(!0);try{e()}finally{lt(!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){lt(!0);try{n(t)}finally{lt(!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(I){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),ld===null)throw Error(i(349));z&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=ld.identifierPrefix;if(I){var n=ra,r=N;n=(r&~(1<<32-ut(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(cd&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(I)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)):(I&&s&&aa(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`&&!O(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,Uc(e,t,a,r,i)):(e=qi(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=Gi(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(I){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=F)?(e=_m(e,ua),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:M===null?null:{id:N,overflow:ra},retryLane:536870912,hydrationErrors:null},n=Yi(e),n.return=t,t.child=n,ca=t,F=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=ld,r!==null&&(s=Ot(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,F=xm(s.nextSibling),ca=t,I=!0,la=null,ua=!1,e!==null&&sa(t,e),t=qc(t,r),t.flags|=134221824;return t}return e=Gi(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)):(I&&r&&aa(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)):(I&&r&&aa(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(I){if(i?Lo(t):Bo(),(e=F)?(e=_m(e,ua),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:M===null?null:{id:N,overflow:ra},retryLane:536870912,hydrationErrors:null},n=Yi(e),n.return=t,t.child=n,ca=t,F=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=Gi(s,{mode:`hidden`,children:r.children}),r.subtreeFlags=s.subtreeFlags&1206910976,c===null?(i=Ji(i,a,n,null),i.flags|=2):i=Gi(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=Gi(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=ld,r!==null&&(a=Ot(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,F=xm(o.nextSibling),ca=t,I=!0,la=null,ua=!1,e!==null&&sa(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=I?ta: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=Gi(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Gi(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:Fe(t,t.stateNode.containerInfo),Sa(t,Fa,e.memoizedState.cache),ga();break;case 27:case 5:Le(t);break;case 4:Fe(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,I&&t.flags&1048576&&P(t,ta,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`)O(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(Fe(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(F=xm(e.firstChild),ca=t,I=!0,la=null,ua=!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:I||(t.stateNode=wp(t.type,t.pendingProps,Ne.current,t)):t.memoizedState=Gm(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Le(t),e===null&&I&&(r=t.stateNode=Dm(t.type,t.pendingProps,Ne.current),ca=t,ua=!0,a=F,Pp(t.type)?(Sm=a,F=xm(r.firstChild)):F=a),Bc(e,t,t.pendingProps.children,n),Xc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&I&&((a=r=F)&&(r=hm(r,t.type,t.pendingProps,ua),r===null?a=!1:(t.stateNode=r,ca=t,F=xm(r.firstChild),ua=!1,a=!0)),a||fa(t)),Le(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&&I&&((e=n=F)&&(n=gm(n,t.pendingProps,ua),n===null?e=!1:(t.stateNode=n,ca=t,F=null,e=!0)),e||fa(t)),null;case 13:return il(e,t,n);case 4:return Fe(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=ld,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:I&&aa(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:St(),e.lanes|=t,bd|=t)}function Cl(e,t){if(!I)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(oa(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),Ie(),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(Re(t),n=Ne.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=je.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(Re(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=je.current,ha(t))pa(t,o);else{var s=xp(Ne.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[Pt]=t,o[Ft]=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=Ne.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[Pt]=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[Pt]=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[Pt]=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[Pt]=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 Ie(),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;)Ki(n,e),n=n.sibling;return Uo(t,Ho.current&1|2),I&&ia(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Qe()>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&&!I)return wl(t),null}else 2*Qe()-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=Qe(),e.sibling=null,o=Ho.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||I?Uo(t,o):(n=o,Ae(Fo,t),Ae(Ho,n),Io===null&&(Io=t)),I&&ia(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&&ke(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(oa(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ca(Fa),Ie(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Re(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 Ie(),null;case 10:return Ca(t.type),null;case 22:case 23:return Vo(t),Po(),e!==null&&ke(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(oa(t),t.tag){case 3:Ca(Fa),Ie();break;case 26:case 27:case 5:Re(t);break;case 4:Ie();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&&ke(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[Ft]=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[Pt]=e,t[Ft]=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&&Ut(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(ct&&typeof ct.onCommitFiberUnmount==`function`)try{ct.onCommitFiberUnmount(st,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[Vt]||r[Pt]||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[Pt]=e,Jt(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[Pt]=e,Jt(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=Qe()),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,cd=0,ld=null,R=null,z=0,B=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 cd&2&&z!==0?z&-z:C.T===null?jt():Gf()}function Hd(){if(yd===0){if(!(z&536870912)||I){var e=ht;ht<<=1,!(ht&3932160)&&(ht=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===ld&&(B===2||B===9)||e.cancelPendingCommit!==null)&&(Zd(e,0),Jd(e,z,yd,!1)),wt(e,n),(!(cd&2)||e!==ld)&&(e===ld&&(!(cd&2)&&(_d|=n),hd===4&&Jd(e,z,yd,!1)),Lf(e))}function Gd(e,t,n){if(cd&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||yt(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-Qe(),10<a)){if(Jd(r,t,yd,!dd),vt(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-Qe():(a&4194048)===a?Td-Qe():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=bt(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-ut(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Et(e,n,t)}function Yd(){return cd&6?!0:(Rf(0,!1),!1)}function Xd(){if(R!==null){if(B===0)var e=R.return;else e=R,xa=ba=null,us(e),lo=null,uo=0,e=R;for(;e!==null;)Dl(e.alternate,e),e=e.return;R=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(),ld=e,R=n=Gi(e.current,null),z=t,B=0,ud=null,dd=!1,fd=yt(e,t),pd=!1,bd=yd=vd=_d=gd=hd=0,Sd=xd=null,Cd=!1,md=bt(e,t),Ii(),n}function Qd(e,t){L=null,C.H=bc,t===$a||t===to?(t=so(),B=3):t===eo?(t=so(),B=4):B=t===Rc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,ud=t,R===null&&(hd=1,Mc(e,A(t,e.current)))}function $d(){var e=Fo.current;return e===null?!0:(z&4194048)===z?Io===null:(z&62914560)===z||z&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||(z&4194048)!==z&&Fo.current!==null||(fd=!0),!(gd&134217727)&&!(_d&134217727)||ld===null||Jd(ld,z,yd,!1)}function rf(e,t,n){var r=cd;cd|=2;var i=ef(),a=tf();(ld!==e||z!==t)&&(Dd=null,Zd(e,t)),t=!1;var o=hd;a:do try{if(B!==0&&R!==null){var s=R,c=ud;switch(B){case 8:Xd(),o=6;break a;case 3:case 2:case 9:case 6:Fo.current===null&&(t=!0);var l=B;if(B=0,ud=null,uf(e,s,c,l),n&&fd){o=0;break a}break;default:l=B,B=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,cd=r,C.H=i,C.A=a,R===null&&(ld=null,z=0,Ii()),o}function af(){for(;R!==null;)cf(R)}function of(e,t){var n=cd;cd|=2;var r=ef(),a=tf();ld!==e||z!==t?(Dd=null,Ed=Qe()+500,Zd(e,t)):fd=yt(e,t);a:do try{if(B!==0&&R!==null){t=R;var o=ud;b:switch(B){case 1:B=0,ud=null,uf(e,t,o,1);break;case 2:case 9:if(ro(o)){B=0,ud=null,lf(t);break}t=function(){B!==2&&B!==9||ld!==e||(B=7),Lf(e)},o.then(t,t);break a;case 3:B=7;break a;case 4:B=5;break a;case 7:ro(o)?(B=0,ud=null,lf(t)):(B=0,ud=null,uf(e,t,o,7));break;case 5:var s=null;switch(R.tag){case 26:s=R.memoizedState;case 5:case 27:var c=R;if(s?sh(s):c.stateNode.complete){B=0,ud=null;var l=c.sibling;if(l!==null)R=l;else{var u=c.return;u===null?R=null:(R=u,df(u))}break b}}B=0,ud=null,uf(e,t,o,5);break;case 6:B=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,cd=n,R===null?(ld=null,z=0,Ii(),hd):0}function sf(){for(;R!==null&&!Ze();)cf(R)}function cf(e){var t=vl(e.alternate,e,md);e.memoizedProps=e.pendingProps,t===null?df(e):R=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,z);break;case 11:t=Qc(n,t,t.pendingProps,t.type.render,t.ref,z);break;case 5:us(t);var r=t;r===ca&&(I?(ma(r),r.tag===5&&r.stateNode!=null&&(F=r.stateNode)):(ma(r),I=!0));default:Dl(n,t),t=R=Ki(t,md),t=vl(n,t,md)}e.memoizedProps=e.pendingProps,t===null?df(e):R=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,z)){hd=1,Mc(e,A(n,e.current)),R=null;return}}catch(t){if(i!==null)throw R=i,t;hd=1,Mc(e,A(n,e.current)),R=null;return}t.flags&32768?(I||r===1?e=!0:fd||z&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){R=n;return}if(t=t.sibling,t!==null){R=t;return}R=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,R=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){R=e;return}R=e=n}while(e!==null);hd=6,R=null}function pf(e,t,n,r,a,o,s,c,l,u,d,f){e.cancelPendingCommit=null;do xf();while(kd!==0);if(cd&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));e===ld&&(R=ld=null,z=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,Tt(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(nt,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=w.p,w.p=2,a=cd,cd|=4;try{xu(e,t,n)}finally{cd=a,w.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=w.p;w.p=2;var a=cd;cd|=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{cd=a,w.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=w.p;w.p=2;var i=cd;cd|=4;try{Cu(e,t.alternate,t)}finally{cd=i,w.p=r,C.T=n}}kd=3}}function yf(){if(kd===4||kd===3){kd=0;var e=Id;Id=null,E();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),At(r),n=n.stateNode,ct&&typeof ct.onCommitFiberRoot==`function`)try{ct.onCommitFiberRoot(st,n,void 0,(n.current.flags&128)==128)}catch{}if(i!==null){n=C.T,a=w.p,w.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,w.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=At(Md),r=C.T,a=w.p;try{w.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,cd&6)throw Error(i(331));var c=cd;if(cd|=4,rd(o.current),Yu(o,o.current,s,n),cd=c,Rf(0,!1),ct&&typeof ct.onPostCommitFiberRoot==`function`)try{ct.onPostCommitFiberRoot(st,o)}catch{}return!0}finally{w.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&&(wt(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),wt(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,ld===e&&(z&n)===n&&(hd===4||hd===3&&(z&62914560)===z&&300>Qe()-wd?cd&2?vd|=n:Zd(e,0):vd|=n,bd===z&&(bd=0)),Lf(e)}function Df(e,t){t===0&&(t=St()),e=zi(e,t),e!==null&&(wt(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 Je(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-ut(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=z,a=vt(r,r===ld?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||yt(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=Qe(),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-ut(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=xt(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=ld,n=z,n=vt(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(B===2||B===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Xe(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||yt(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Xe(r),At(n)){case 2:case 8:n=tt;break;case 32:n=nt;break;case 268435456:n=it;break;default:n=nt}return r=Hf.bind(null,e),n=Je(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Xe(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=z;return r=vt(e,e===ld?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(Gd(e,r,t),Vf(e,Qe()),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(){cd&6?Je(et,zf):Bf()})}function Gf(){if(If===0){var e=Ua;e===0&&(e=mt,mt<<=1,!(mt&261888)&&(mt=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[Ft]||null).action),o=r.submitter;o&&(t=(t=o[Ft]||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[Lt];n===void 0&&(n=t[Lt]=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=Wt(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)&&(Wt(u)||u[It]))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?Wt(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:Kt(c),h=l==null?u:Kt(l),u=new d(g,m+`leave`,c,n,i),u.target=f,u.relatedTarget=h,g=null,Wt(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?Kt(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?Kt(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[Ft]||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[Pt]=r,n[Ft]=t,mp(n,e,t),Jt(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[Vt]||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=Wt(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),Ut(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[Vt])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),Ut(e)}function km(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Ut(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=w.d;w.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=Gt(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),Jt(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[Ht]=!0,o.onload=o.onerror=function(){Yt(o)}),Jt(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),Jt(r),n.head.appendChild(r)}}}function Hm(e,t,n){Nm.S(e,t,n);var r=Im;if(r&&e){var i=qt(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`);Jt(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=qt(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`),Jt(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=qt(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`),Jt(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=Ne.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=qt(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=qt(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=qt(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[Ht]){r.loading=1;return}}else t=e.createElement(`link`),t[Ht]=!0,t.onload=t.onerror=Yt.bind(null,t),mp(t,`link`,n),Jt(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,Jt(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`),Jt(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,Jt(o),o;r=Jm(n),(a=Am.get(a))&&eh(r,a),o=(e.ownerDocument||e).createElement(`link`),Jt(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,Jt(a),a):(r=n,(a=Am.get(o))&&(r=re({},n),th(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),Jt(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[Vt]||a[Pt]||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,Jt(a);return}a=t.ownerDocument||t,r=Jm(r),(i=Am.get(i))&&eh(r,i),a=a.createElement(`link`),Jt(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:Te,_currentValue2:Te,_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=Ct(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ct(0),this.hiddenUpdates=Ct(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=kt(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=w.p;try{w.p=2,jh(e,t,n,r)}finally{w.p=a,C.T=i}}function Ah(e,t,n,r){var i=C.T;C.T=null;var a=w.p;try{w.p=8,jh(e,t,n,r)}finally{w.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=Gt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=_t(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-ut(o);s.entanglements[1]|=c,o&=~c}Lf(a),!(cd&6)&&(Ed=Qe()+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=Wt(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($e()){case et:return 2;case tt:return 8;case nt:case rt:return 32;case it: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=Gt(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=Wt(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,Mt(e.priority,function(){Dh(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,Mt(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=Gt(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=Gt(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[Ft]||null;if(typeof a==`function`)o||$h(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[Ft]||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[It]=null}};function rg(e){this._internalRoot=e}rg.prototype.unstable_scheduleHydration=function(e){if(e){var t=jt();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`));w.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{st=og.inject(ag),ct=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[It]=t.current,tp(e),new ng(t)}})),Ze=We(((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=Xe()})),E=Be(),Qe=Ze(),$e=[`federation`],et=e=>`${e.project??``}|${e.service}|${e.environment??``}`,tt=(e,t)=>!e.online&&t-e.lastSeenMs>864e5;function nt(e){let t=new Map;for(let n of e){let e=et(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 rt=`wizelens.browser.render_ms`,it=`wizelens.browser.type`,at=`wizelens.browser.route`,ot=`service.version`,st=`wizelens.error.frame`;function ct(e){if(e.category!==`browser`)return null;let t=e.attributes[it];return t===`pageview`||t===`react`||t===`error`?t:`fetch`}var lt={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`},ut=`wizelens.react.components`,dt=`wizelens.request.id`,ft=`wizelens.request.aborted`,pt=`wizelens.response.body`,mt=`wizelens.response.body.truncated`,ht=`wizelens.request.body`,gt=`wizelens.request.body.truncated`,_t=`wizelens.tag.`,vt=`http.request.header.`,yt=`http.response.header.`,bt={system:`rpc.system`,service:`rpc.service`,method:`rpc.method`,grpcStatus:`rpc.grpc.status_code`},xt={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`},St=`0`.repeat(16),Ct=e=>e.length===32&&e.startsWith(St);function wt(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 Tt=e=>e.startMs+e.durationMs;function Et(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 Dt(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 Ot(e){let t=Et(e.spans),n=new Map;for(let r of e.spans){let e=(t.get(r.spanId)??[]).map(e=>[e.startMs,Tt(e)]);n.set(r.spanId,Math.max(0,r.durationMs-Dt(r.startMs,Tt(r),e)))}return n}function kt(e){let t=Et(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)=>Tt(t)-Tt(e))[0];for(;a;)i.add(a.spanId),a=[...t.get(a.spanId)??[]].sort((e,t)=>Tt(t)-Tt(e)||e.startMs-t.startMs)[0];return i}var At=(e,t)=>`${e}:${t}`;function jt(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 Mt=`service.version`,Nt=e=>{let t=e.attributes[Mt];return typeof t==`string`&&t?t.slice(0,50):null};function Pt(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 Ft(e,t,n){return Pt(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 It=e=>e.reduce((e,t)=>e+t.durationMs,0),Lt=new Set([`redis`,`valkey`,`mongodb`,`elasticsearch`,`opensearch`,`memcached`,`dynamodb`]),Rt=e=>Lt.has(String(e.attributes[`db.system.name`]??``).toLowerCase()),zt=e=>new Set(e.split(/\s+/).filter(Boolean)),Bt={redis:zt(`multi exec discard watch unwatch select auth ping echo hello client quit reset readonly readwrite asking`),valkey:zt(`multi exec discard watch unwatch select auth ping echo hello client quit reset readonly readwrite asking`),mongodb:zt(`getmore killcursors endsessions committransaction aborttransaction`)};function Vt(e){let t=Bt[String(e.attributes[`db.system.name`]??``).toLowerCase()];return!!t&&t.has(String(e.attributes[`db.operation.name`]??``).toLowerCase())}var Ht=zt(`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`),Ut=zt(`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`),Wt=zt(`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`),Gt=zt(`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 Kt(e){let t=e.toLowerCase();return Ht.has(t)?`SELECT`:Ut.has(t)?`INSERT`:Wt.has(t)?`UPDATE`:Gt.has(t)?`DELETE`:`OTHER`}var qt=e=>String(e.attributes[`db.query.text`]??e.name),Jt=e=>e.spans.filter(e=>e.category===`db`),Yt=/^\s*(SET|RESET|BEGIN|START\s+TRANSACTION|COMMIT|END|ROLLBACK|SAVEPOINT|RELEASE|DISCARD|USE)\b/i,Xt=e=>Rt(e)?Vt(e):Yt.test(qt(e)),Zt=e=>Jt(e).filter(e=>!Xt(e)),Qt=/\?|\$\d+|%s|%\(\w+\)s|(?<![:\w]):[A-Za-z_]\w*|@[A-Za-z_]\w*/,$t=e=>String(e.attributes[`wizelens.db.parameters`]??e.attributes[`wizelens.db.fingerprint`]??``),en=e=>e.attributes[`wizelens.db.parameters`]==null&&e.attributes[`wizelens.db.fingerprint`]==null&&(Rt(e)||Qt.test(qt(e))),tn=`Queries that waited together`;function nn(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 rn=e=>qt(e).trim().split(/\s+/)[0].toUpperCase();function D(e){return{kind:`slow-query`,severity:`warning`,title:`Slow query: ${e.durationMs.toFixed(1)} ms`,shape:qt(e),count:1,totalMs:e.durationMs,spanIds:[e.spanId]}}function an(e){let t=Pt(e);return{kind:`db-wait`,severity:`warning`,title:`${e.length===1?`${rn(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:tn,count:e.length,totalMs:t,spanIds:e.map(e=>e.spanId)}}var on=e=>e.length>=3||e.every(Xt);function sn(e,t=100){return nn(Jt(e).filter(e=>e.durationMs>=t)).flatMap(e=>on(e)?[an(e)]:e.map(D))}var cn=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,ln=/^\d+$/;function un(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=>ln.test(e)||cn.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 dn(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}${un(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}`:``}${un(a)}`}function fn(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 pn=e=>e.reduce((e,t)=>e+t.durationMs,0);function mn(e){let t=fn(Zt(e).filter(e=>!en(e)),e=>`${qt(e)}\u0000${$t(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:qt(e[0]),count:e.length,totalMs:pn(e),spanIds:e.map(e=>e.spanId)});return n}function hn(e,t=5){let n=[];for(let[r,i]of fn(Zt(e),qt))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:pn(i),spanIds:i.map(e=>e.spanId)});return n}function gn(e,t=5){let n=[],r=e.spans.filter(e=>e.category===`http.client`);for(let[e,i]of fn(r,dn))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:pn(i),spanIds:i.map(e=>e.spanId)});return n}function _n(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 vn(e){return e.spans.filter(ve).map(e=>({kind:`error`,severity:`error`,title:`${e.service}: ${_n(e).message}`,shape:e.name,count:1,totalMs:e.durationMs,spanIds:[e.spanId]}))}var yn={nPlusOneThreshold:5,slowQueryMs:100};function bn(e,t={}){let n=t.nPlusOneThreshold??yn.nPlusOneThreshold;return[...vn(e),...hn(e,n),...gn(e,n),...mn(e),...sn(e,t.slowQueryMs??yn.slowQueryMs)]}function xn(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 Sn=e=>e.filter(e=>e.kind!==`error`),Cn=(e,t)=>e.startMs-t.startMs;function wn(e){let t=e.spans.filter(e=>ct(e)===`fetch`).sort(Cn)[0],n=Ae(e.spans),r=e.spans.filter(e=>e.category===`db`),i=t?.attributes[rt],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=>Ft(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:Pt(r),dbTotalMs:It(r),dbCount:r.length,dbSlowestMs:Math.max(0,...r.map(e=>e.durationMs)),renderMs:a,service:n?.service??null,server:o}}function Tn(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 En=(e,t)=>{let n=e?.attributes[t];return n==null||n===``?null:String(n)},Dn=(e,t)=>e.startMs-t.startMs;function On(e){return e?Object.entries(e.attributes).filter(([e])=>e.startsWith(_t)).map(([e,t])=>t===null||t===``||t===!0?e.slice(_t.length):`${e.slice(_t.length)}:${String(t)}`):[]}function kn(e,t){let n=En(e,`url.path`);if(n){let t=En(e,`url.query`);return t?`${n}?${t}`:n}let r=En(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 An(e,t,n){return`${e} ${En(t,`http.route`)??un(n)}`}function jn(e,t){if(En(e,bt.system)){let t=`${En(e,bt.service)??`service`}/${En(e,bt.method)??`method`}`;return{method:`gRPC`,path:`/${t}`,endpoint:`gRPC ${t}`}}let n=(En(e,`http.request.method`)??En(t,`http.request.method`)??`GET`).toUpperCase(),r=kn(e,t);return{method:n,path:r,endpoint:An(n,e,r)}}function Mn(e,t={}){let n=Ae(e.spans),r=e.spans.filter(e=>ct(e)===`fetch`).sort(Dn)[0];if(!n&&!r)return null;let i=wn(e),a=e.spans.filter(e=>e.category===`http.client`),o=bn(e,t),s=e.spans.filter(ve).length,c=Sn(o).length,{method:l,path:u,endpoint:d}=jn(n,r),f=n?.attributes[`http.response.status_code`]??r?.attributes[`http.response.status_code`],p=typeof f==`number`?f:f==null?null:Number(f)||null;return{traceId:e.traceId,startMs:r?.startMs??n?.startMs??e.startMs,method:l,path:u,endpoint:d,status:p,aborted:n?.attributes[ft]===!0,durationMs:i.totalMs,serverMs:i.serverMs,dbMs:i.dbMs,dbCount:i.dbCount,fetchCount:a.length,fetchMs:Pt(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:xn({status:p,error:s>0,totalMs:i.totalMs,insights:c}),userAgent:En(n,`user_agent.original`),clientAddress:En(n,`client.address`),user:En(n,`enduser.id`),requestId:En(n,dt),tags:On(n)}}var Nn=Oe(e=>Mn(e)),Pn=new WeakMap;function Fn(e,t){if(t.slowQueryMs===yn.slowQueryMs&&t.nPlusOneThreshold===yn.nPlusOneThreshold)return Nn(e);let n=`${t.slowQueryMs}|${t.nPlusOneThreshold}`,r=Pn.get(e);return r||Pn.set(e,r=new Map),r.has(n)||r.set(n,Mn(e,t)),r.get(n)}function In(e){let t=[];for(let n of e){let e=Nn(n);e&&t.push(e)}return t.sort((e,t)=>t.startMs-e.startMs)}var Ln=e=>e.errors>0||(e.status??0)>=500,Rn=16,zn=1,Bn=20,Vn=50,Hn=e=>typeof e==`number`&&Number.isFinite(e)?e:0;function Un(e){let t=e.attributes[ut];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:Hn(t.renders),actualMs:Hn(t.actualMs),selfMs:Hn(t.selfMs),wasted:Hn(t.wasted),context:Hn(t.context)}]}):[]}catch{return[]}}function Wn(e,t){let n=[];return e.selfMs<zn||((t>0?e.renders/t>Bn:e.renders>Vn)&&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>=Rn&&n.push(`Slow render`)),n}function Gn(e,t){let n=t>0?e/t:0;return n>=.2?`high`:n>=.05?`medium`:`low`}var Kn=(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 qn(e){let t=e.attributes[at],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:Kn(e,lt.renderMs)??(e.durationMs>0?e.durationMs:null),ttfbMs:Kn(e,lt.ttfbMs),ssrMs:Kn(e,lt.ssrMs),clientRenderMs:Kn(e,lt.clientRenderMs),hydrationMs:Kn(e,lt.hydrationMs),fcpMs:Kn(e,lt.fcpMs),lcpMs:Kn(e,lt.lcpMs),cls:Kn(e,lt.cls),inpMs:Kn(e,lt.inpMs),loadMs:Kn(e,lt.loadMs),imageMs:Kn(e,lt.imageMs),images:Kn(e,lt.images),largeImages:Kn(e,lt.largeImages)}}var Jn=e=>`${(e/1e3).toFixed(1)} s`;function Yn(e){let t=[],n=[];(e.avgLcpMs??0)>4e3?t.push(`Slow largest paint (${Jn(e.avgLcpMs)})`):(e.avgLcpMs??0)>2500&&n.push(`Largest paint needs work (${Jn(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 (${Jn(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 Xn={high:`high`,minor:`medium`,none:`low`};function Zn(e){return{key:`render|route|${e.route}`,kind:`render`,area:`render`,impact:Xn[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 Qn(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 $n={"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 er(e){let t=/\b(?:FROM|INTO|UPDATE)\s+["`[]?([\w.]+)/i.exec(e)?.[1];return t?`A query on ${t}`:`A query`}function tr(e,t,n,r,i){let a=Math.round(n);return e===`n+1-db`?`${er(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`?`${er(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.`:`${er(t)} takes ${Math.round(r)} ms on average in ${i}. Check its indexes and how many rows it reads.`}function nr(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 rr(e){let t=[];for(let n of e.findings){if(n.kind===`error`)continue;let r=n.kind===`n+1-http`?n.shape:Fe(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 ir(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:nr(t.kind,t.occurrences,t.totalMs,n),title:$n[t.kind],description:tr(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 ar={high:0,medium:1,low:2},or=(e,t)=>ar[e.impact]-ar[t.impact]||t.totalMs-e.totalMs||t.lastSeenMs-e.lastSeenMs;function sr(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 cr=[`SELECT`,`INSERT`,`UPDATE`,`DELETE`,`OTHER`],lr=/\b(?:FROM|INTO|UPDATE|JOIN)\s+["`[]?([\w.]+)/i;function ur(e){let t=e.attributes[`db.operation.name`]??/^\s*(\w+)/.exec(qt(e))?.[1]??``;if(Rt(e))return Kt(String(t));let n=String(t).toUpperCase();return cr.includes(n)?n:`OTHER`}function dr(e){let t=e.attributes[`db.collection.name`];return t!=null&&t!==``?String(t):lr.exec(qt(e))?.[1]?.replace(/[\]"`]/g,``)??null}function fr(e){let t=Nn(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:Fe(qt(n)),operation:ur(n),table:dr(n),system:String(n.attributes[`db.system.name`]??`database`),rows:typeof r==`number`?r:r==null?null:Number(r)||null,error:ve(n)}})}var pr=Oe(fr),mr=e=>e.flatMap(pr),hr=`Web App`,gr=e=>e===`browser`?hr:e,_r=e=>e===`Web App`?`browser`:e;function vr(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 yr(e){let t=e.spans.filter(ve),n=t.filter(e=>e.events.some(e=>e.name===`exception`));return n.length?n:t}var br=e=>typeof e==`string`&&e?e:null,xr=(e,t,n,r)=>`${e}|${t}|${vr(n)}${r?`|${r}`:``}`;function Sr(e,t,n,r){let i=_n(t),a=i.type??(t.statusMessage?.startsWith(`HTTP`)?`HttpError`:`Error`),o=gr(t.service),s=ct(t)!==null,c=t.attributes[at],l=t.events.find(e=>e.name===`exception`),u=s?br(l?.attributes[st]):null;return{key:xr(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:br(t.attributes[ot]),userAgent:n?.userAgent??null,user:n?.user??null,tags:n?.tags??[]}}function Cr(e){let t=yr(e);if(t.length===0)return[];let n=Nn(e),r=(n?.status??0)>=500||e.logs.some(e=>e.level===`critical`);return t.map(t=>Sr(e,t,n,r))}var wr=Oe(Cr),Tr=e=>e.flatMap(wr).sort((e,t)=>t.timeMs-e.timeMs),Er=(e,t)=>e.attributes[t]==null||e.attributes[t]===``?null:String(e.attributes[t]),Dr=e=>e.category===`messaging`&&e.kind===`producer`,Or=e=>e.category===`messaging`&&e.kind===`consumer`;function kr(e){return`${Er(e,xt.system)??`queue`} · ${Er(e,xt.destination)??`unknown`}`}function Ar(e){return e.filter(e=>e.category===`messaging`).map(e=>({spanId:e.spanId,service:e.service,operation:Er(e,xt.operation)??(e.kind===`producer`?`send`:`process`),queue:kr(e),messageId:Er(e,xt.messageId),durationMs:e.durationMs,startMs:e.startMs,error:e.status===`error`})).sort((e,t)=>e.startMs-t.startMs)}var jr=1e3;function Mr(e,t,n){return e===0?`idle`:t>=10?`unhealthy`:t>=1||(n??0)>=jr?`degraded`:`healthy`}var Nr=e=>ve(e)||Number(e.attributes[`http.response.status_code`]??0)>=500,Pr=(e,t)=>e.attributes[t]==null?null:String(e.attributes[t]);function Fr(e){let t=Pr(e,`db.system.name`)??`database`,n=Pr(e,`db.namespace`);return n?`${t} · ${n}`:t}function Ir(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 Lr(e){let t=Pr(e,`url.full`);if(t)try{return new URL(t).host}catch{}return Pr(e,`server.address`)??`unknown host`}function Rr(e){return Dr(e)?{from:e.service,to:kr(e)}:Or(e)?{from:kr(e),to:e.service}:null}function zr(e,t){if(e.category===`db`)return Fr(e);if(e.category!==`http.client`&&ct(e)!==`fetch`)return null;let n=t.get(e.spanId);return n?n.service:e.category===`http.client`?Lr(e):null}function Br(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=Rr(r);e&&t.push({...e,span:r});let i=e?null:zr(r,n);i&&t.push({from:r.category===`browser`?`Web App`:r.service,to:i,span:r})}return t}var Vr={browser:0,network:1,routing:2,handler:3,service:4,queue:5,external:6,database:7,render:8},Hr=(e,t)=>typeof e.attributes[t]==`number`?e.attributes[t]:null,Ur=e=>e.startMs+e.durationMs;function Wr(e,t){return[[e.startMs,t.startMs],[Ur(t),Ur(e)]].filter(([e,t])=>t>e)}function Gr(e,t){let n=Math.min(Hr(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,Ur(e)]]};return n<=0?[r]:[{key:`routing`,label:`Routing`,kind:`routing`,owner:e.service,ms:n,segs:[[e.startMs,e.startMs+n]]},r]}function Kr(e,t,n){let r=[{key:`browser`,label:`Browser`,kind:`browser`,owner:`Web App`,ms:e.durationMs,segs:[[e.startMs,Ur(e)]]}];r.push({key:`network`,label:`Network`,kind:`network`,owner:`Network`,ms:n,segs:t?Wr(e,t):[[e.startMs,Ur(e)]]});let i=Hr(e,rt);return i&&r.push({key:`render`,label:`Render`,kind:`render`,owner:`Web App`,ms:i,segs:[[Ur(e),Ur(e)+i]]}),r}var qr=(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 Jr(e){let t=Hr(e,lt.ttfbMs),n=Hr(e,lt.fcpMs),r=Hr(e,lt.lcpMs),i=Hr(e,lt.loadMs);if(t===null)return[qr(`route`,`Route render`,`render`,e,0,Hr(e,lt.renderMs)??e.durationMs)];let a=[qr(`document`,`Server response (TTFB)`,`network`,e,0,t)];return n!==null&&n>t&&a.push(qr(`client`,`Client render (first paint)`,`render`,e,t,n)),r!==null&&n!==null&&r>n&&a.push(qr(`content`,`Main content paint`,`render`,e,n,r)),i!==null&&a.push(qr(`load`,`Page load`,`browser`,e,0,i)),a}function Yr(e,t){let n=Math.max(0,e.durationMs-Pt(t.filter(e=>!Or(e)))),r=t.find(e=>e.category===`http.server`),i=ct(e);return i===`fetch`?Kr(e,r,n):i===`pageview`?Jr(e):i===null?e.category===`http.server`?Gr(e,n):Dr(e)?[{key:`queue:${kr(e)}`,label:kr(e),kind:`queue`,owner:e.service,ms:n,segs:[[e.startMs,Ur(e)]]}]:Or(e)?[{key:`service:${e.service}`,label:e.service,kind:`service`,owner:e.service,ms:n,segs:[[e.startMs,Ur(e)]]}]:e.category===`db`?[{key:`db:${Fr(e)}`,label:Fr(e),kind:`database`,owner:e.service,ms:n,segs:[[e.startMs,Ur(e)]]}]:e.category===`http.client`&&r?[{key:`network`,label:`Network`,kind:`network`,owner:`Network`,ms:n,segs:Wr(e,r)}]:e.category===`http.client`?[{key:`ext:${Lr(e)}`,label:Lr(e),kind:`external`,owner:e.service,ms:n,segs:[[e.startMs,Ur(e)]]}]:e.attributes[`wizelens.layer`]===`handler`?[{key:`handler`,label:`Handler`,kind:`handler`,owner:e.service,ms:n,segs:[[e.startMs,Ur(e)]]}]:[{key:`service:${e.service}`,label:e.service,kind:`service`,owner:e.service,ms:n,segs:[]}]:[]}function Xr(e){let t=new Map(e.spans.map(e=>[e.spanId,e]));return e.spans.filter(Or).flatMap(e=>{let n=e.parentSpanId?t.get(e.parentSpanId):void 0;if(!n||!Dr(n)||e.startMs<=Ur(n))return[];let r=`Queue wait (${kr(e)})`;return[{key:`wait:${kr(e)}`,label:r,kind:`queue`,owner:kr(e),ms:e.startMs-Ur(n),segs:[[Ur(n),e.startMs]]}]})}function Zr(e){let t=Ne(e.spans.filter(e=>e.parentSpanId),e=>e.parentSpanId);return[...e.spans.flatMap(e=>Yr(e,t.get(e.spanId)??[])),...Xr(e)]}function Qr(e){let t=[];for(let[n,r]of Ne(Zr(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)||Vr[e.kind]-Vr[t.kind])}var $r=(e,t)=>Yr(e,t).find(e=>e.kind!==`browser`)?.label??e.service;function ei(e,t=10){let n=[];for(let t of e){let e=w(t.spans),r=Ae(t.spans),i=Ne(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:$r(a,i.get(a.spanId)??[]),durationMs:a.durationMs,startMs:a.startMs})}return n.sort((e,t)=>t.durationMs-e.durationMs).slice(0,t)}function ti(e){let t=Nn(e);if(t)return t.durationMs;let n=e.spans.find(e=>ct(e)===`pageview`);return n?Hr(n,lt.renderMs)??n.durationMs:e.durationMs}var ni=[[/\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 ri(e){let t=(e.split(`
|
|
17
|
-
`,1)[0]??``).trim();for(let[e,n]of ni)t=t.replace(e,n);return t=t.replace(/\s+/g,` `),t.length>200?t.slice(0,200):t}var ii=new Map;function ai(e){let t=ii.get(e);if(t!==void 0)return t;let n=wt(ri(e));return ii.size>5e4&&ii.clear(),ii.set(e,n),n}var oi=[`trace`,`debug`,`info`,`warn`,`error`,`critical`];function si(e){return e.logs.map((t,n)=>({key:`${e.traceId}:${n}`,traceId:e.traceId,traceName:Ct(e.traceId)?``:e.rootName,spanId:t.spanId,timeMs:t.timeMs,level:t.level,service:gr(t.service),category:t.category,message:t.message,attributes:t.attributes}))}var ci=Oe(si),li=e=>e.flatMap(ci).sort((e,t)=>t.timeMs-e.timeMs),ui=e=>oi.indexOf(e);function di(e,t){let n=ui(t.minLevel),r=t.query.trim().toLowerCase();return e.filter(e=>(t.exact?ui(e.level)===n:ui(e.level)>=n)&&(!t.service||e.service===t.service)&&(!t.category||e.category===t.category)&&(!t.traceId||e.traceId===t.traceId)&&(!t.pattern||ai(e.message)===t.pattern)&&(!t.origin||t.origin===`outside`===Ct(e.traceId))&&(!r||e.message.toLowerCase().includes(r)||e.category.toLowerCase().includes(r)||e.traceName.toLowerCase().includes(r)||e.traceId.startsWith(r)))}var fi=6048e5,pi=6e4,mi=6e4,hi=Object.keys(fe);function gi(e){return hi.find(t=>fe[t].ms>=e)??hi[hi.length-1]}function _i(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+mi)return null;let i=Math.min(r,t);return i-n>=pi?{from:n,to:i}:null}var vi=(e,t,n)=>_i(n,t)??me(e,t),yi=e=>e.compare===`week`?`week`:`previous`,bi=(e,t)=>t===`week`?{from:e.from-fi,to:e.to-fi}:ze(e);function xi(t,n,r){return r===`week`?`vs. same time last week`:n?`vs. previous period`:e[t]}var Si=1.04,Ci=.01,wi=Math.log(Si),Ti=e=>e>.01?Math.max(1,Math.ceil(Math.log(e/Ci)/wi)):0,Ei=e=>e===0?0:2*Ci*Si**e/2.04;function Di(e){let t={};for(let n of e){let e=Ti(n);t[e]=(t[e]??0)+1}return t}function Oi(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 ki=e=>Object.entries(e).map(([e,t])=>[Number(e),t]).sort((e,t)=>e[0]-t[0]);function Ai(e,t,n){let r=ki(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 Ei(e);return Ei(r[r.length-1][0])}function ji(e){let t=ki(e).filter(([,e])=>e>1e-9);return t.length?Ei(t[t.length-1][0]):null}function Mi(e,t){let n=Ti(t),r=0;for(let[t,i]of Object.entries(e))Number(t)<=n&&(r+=i);return r}var Ni=[`error_rate`,`p95_ms`,`requests`],Pi=e=>typeof e==`string`&&Ni.includes(e),Fi={high:2,medium:3,low:4},Ii=e=>typeof e==`string`&&Object.hasOwn(Fi,e),Li=Fi.medium;function Ri(e,t){return e===`requests`?t.n:t.n<=1e-9?null:e===`error_rate`?t.err/t.n*100:t.hist?Ai(t.hist,t.n,95):null}function zi(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 Bi(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 Vi(e,t){return e===`requests`?t.n>=10:e===`error_rate`?t.err>=5:t.n>=10}function Hi(e,t,n,r=Li){let i=Ri(e,t),a=n.map(t=>Ri(e,t)).filter(e=>e!==null);if(i===null||a.length<2)return null;let{mean:o,sd:s}=zi(a),c=o+r*Bi(e,o,s,t);return{value:i,normal:o,upper:c,above:Vi(e,t)&&i>c}}var Ui=e=>e.upper>0?e.value/e.upper:0,Wi=[`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}),Gi=[`dbCount`,`withInsights`,`insights`],Ki={trace:O([`slow`]),req:O(Gi,{hist:!0}),"req.dim":O(Gi),"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}),"err.u":O(),"ins.u":O(),"ep.u":O()},qi={...Ki,...Object.fromEntries(Wi.map(e=>[`${e}@svc`,Ki[e]]))},Ji={...Object.fromEntries(Wi.map(e=>[e,`${e}@svc`])),log:`log.s`};Object.keys(qi);var k=(...e)=>e.join(``),Yi=e=>e.split(``);function Xi(e,t){let n=Ji[e.kind];return n&&n!==`log.s`?[e,...[...new Set(t)].map(t=>({...e,kind:n,key:k(t,e.key)}))]:[e]}function Zi(e,t){let n=Number.parseInt(t.slice(0,13),16);return e+(Number.isFinite(n)?1-n/2**52:0)*1e-4}var A=(e,t,n,r={})=>({kind:e,key:t,timeMs:n,n:1,err:0,sum:0,...r}),Qi=()=>[,,,,,,].fill(0),$i=(e=!1)=>({n:0,err:0,sum:0,c:Qi(),hist:e?{}:null,firstMs:1/0,lastMs:-1/0,top:null,topRank:-1/0,ids:[]});function ea(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 ta(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&&Oi(e.hist??={},Di(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}),ea(e,[n],i,r.ids)}var j=e=>e.n?e.sum/e.n:null;function na(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}),ra=(e,t,n,r={})=>({type:`list`,id:e,table:t,window:n,filter:{},sort:{key:`time`,desc:!0},...r});function ia(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??[],aa=(e,t)=>e.groups[t]?.total??0;function oa(e){let t=$i();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&&Oi(t.hist??={},n.hist),t.firstMs=Math.min(t.firstMs,n.firstMs),t.lastMs=Math.max(t.lastMs,n.lastMs);return t}var sa=(e,t)=>oa(P(e,t).map(e=>e.agg)),ca=(e,t)=>new Map(P(e,t).map(e=>[e.key,e.agg]));function F(e,t,n,r=``){return e.series[t]?.byKey[r]??Array.from({length:n},()=>$i())}function I(e,t,n,r){let i=r.map(r=>F(e,t,n,r));return Array.from({length:n},(e,t)=>oa(i.map(e=>e[t])))}var la=e=>e.map(e=>e.n),ua=e=>e.map(j),da=(e,t)=>e.map(e=>e.c[t]??0),fa=(e,t)=>e.lists[t]??{items:[],total:0,page:1,pageSize:0},pa=(e,t)=>e<t?-1:+(e>t),ma=e=>(t,n)=>e(n)-e(t)||n.agg.lastMs-t.agg.lastMs||pa(t.key,n.key),ha=[`cur-1w`,`cur-2w`,`cur-3w`,`cur-4w`],ga=[`cur-1d`,`cur-2d`,`cur-3d`,`cur-4d`,`cur-5d`,`cur-6d`],_a=e=>e===`week`?ha:ga,va=e=>`probe.${String(e)}`,ya=()=>ha.map(e=>M(va(e),`trace`,e));function ba(e){return ha.filter(t=>sa(e,va(t)).n>0).length>=2?`week`:`day`}function xa(e,t,n){return{values:t.map((t,r)=>n[r]?.value??Ri(e,t)),normals:n.map(e=>e?.normal??null),uppers:n.map(e=>e?.upper??null)}}function Sa(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,Ui(e)>Ui(r.peak)&&(r.peak=e)):t.push({from:n,to:n,peak:e})}),t}function Ca(e,t,n){let r=t.length-1;return e===r||e===r-1&&!Vi(n,t[r])}function wa(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)=>Hi(t,r,e.samples.map(e=>e[i]),n.spreads)),s=Sa(o);if(!s.length)return[];let c=xa(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:Ca(r.to,e.cur,t),peak:r.peak,series:c}))}function Ta(e,t){return e.flatMap(e=>Ni.flatMap(n=>wa(e,n,t))).sort((e,t)=>e.startMs-t.startMs||(e.id<t.id?-1:+(e.id>t.id)))}var Ea=e=>{let t=new Set(e.map(e=>`${e.from}\u0000${e.to}`));return{calls:(e,n)=>t.has(`${e}\u0000${n}`)}},Da=e=>new Set(e.anomalies.map(e=>e.name));function Oa(e,t){let n=Da(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 ka(e,t){let n=Da(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 Aa(e){let t=[...e.anomalies.filter(e=>e.kind===`database`&&e.endpoint!==null)].sort((e,t)=>Ui(t.peak)-Ui(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 ja(e,t){let n=[...Da(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 Ma={error_rate:`fails more than`,p95_ms:`is slower than`,requests:`runs more often than`};function Na(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} ${Ma[e.metric]} normal: ${e.query}`:`${e.service}, further down the calls, is above normal too.`}function Pa(e,t){return[Oa(e,t),ka(e,t),Aa(e),ja(e,t.map)].filter(e=>e!==null)}var Fa=2e3,Ia={error_rate:`Error rate`,p95_ms:`p95 duration`,requests:`Traffic`},La=(e,t,n)=>e.name===t.name||n.calls(e.name,t.name)||n.calls(t.name,e.name);function Ra(e,t,n){let r=e.slice(0,Fa),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++)La(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 za(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 Ba(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 Va(e,t){return e?e.kind===`query`?e.database:e.service:t.name}function Ha(e,t,n){let r=e.filter(e=>e.name===t),i=[...r.length?r:e].sort((e,t)=>Ui(t.peak)-Ui(e.peak))[0],a=n>1?` and ${n-1} more`:``;return`${Ia[i.metric]} above normal on ${t}${a}`}function Ua(e,t){let n=e[0],r=n.startMs,i=Math.max(...e.map(e=>e.endMs)),a=Pa({startMs:r,endMs:i,anomalies:e},t),o=a[0]??null,s=Ba(e),c=new Set(s.map(e=>e.name)).size;return{id:za(`${n.row}|${n.metric}|${r}`),title:Ha(e,Va(o,n),c),metric:n.metric,startMs:r,endMs:i,ongoing:e.some(e=>e.ongoing),services:s,anomalies:[...e].sort((e,t)=>Ui(t.peak)-Ui(e.peak)||e.startMs-t.startMs).slice(0,20),anomalyCount:e.length,cause:o,causes:a}}function Wa(e,t){return Ra(e,t.map,t.nearMs).map(e=>Ua(e,t)).sort((e,t)=>Number(t.ongoing)-Number(e.ongoing)||t.startMs-e.startMs||(e.id<t.id?-1:1))}function Ga(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=Zi(e.durationMs,e.traceId),o=[A(`db`,``,n,r),A(`db.q`,e.query,n,{...r,top:{rank:a,data:i}}),A(`db.qd`,k(e.operation,Fr(e.span),e.query),n,{...r,top:{rank:a,data:i}}),A(`db.qe`,k(e.query,e.endpoint),n),A(`db.op`,e.operation,n,{sum:e.durationMs})];return e.table!==null&&o.push(A(`db.t`,e.table,n,{sum:e.durationMs,c:[e.rows===null?0:1,e.rows??0]})),o.flatMap(t=>Xi(t,[gr(e.span.service)]))}var Ka=(e,t)=>mr([e]).flatMap(e=>Ga(e,t)),qa=8192,Ja=e=>e.stack&&e.stack.length>8192?{...e,stack:e.stack.slice(0,qa)}:e;function Ya(e,t){let n=e.timeMs,r={c:[+!!e.critical]};return[...t?[A(`err.u`,k(e.key,t),n)]:[],A(`err`,``,n,r),A(`err.g`,e.key,n,{...r,top:{rank:n,data:Ja(e)}}),A(`err.ge`,k(e.key,e.endpoint),n),A(`err.t`,e.type,n),A(`err.s`,e.service,n),A(`err.e`,e.endpoint,n)].flatMap(t=>Xi(t,[e.service]))}var Xa=(e,t=null)=>Tr([e]).flatMap(e=>Ya(e,t)),Za=e=>({pattern:ri(e.message),message:e.message.slice(0,500),category:e.category,traceId:e.traceId}),Qa=e=>e.flatMap(e=>[A(`log`,e.level,e.timeMs),A(`log.s`,k(e.service,e.level),e.timeMs),A(`log.p`,k(e.service,e.level,ai(e.message),Ct(e.traceId)?`o`:`r`),e.timeMs,{top:{rank:e.timeMs,data:Za(e)}})]),$a=(e,t)=>M(e,`rel`,`all`,{order:{by:`lastMs`,desc:!0,limit:50},...t?{filter:{parts:[t,null]}}:{}});function eo(e,t){return P(e,t).map(e=>{let[t=``,n=``]=Yi(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 to(e,t,n,r){let i=r===null?null:{from:r,to:1/0};if(!n)return i;let a=eo(e,t),o=a.find(e=>e.version===n),s=o?{from:o.firstMs,to:ro(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 no=(e,t)=>t>=e.from&&t<e.to;function ro(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 io=[M(`meta.prev`,`trace`,`prev`),$a(`meta.rel`)],ao=e=>({range:e.range,window:e.window,prev:e.prev,compareLabel:xi(e.range,!!e.custom,e.compare??`previous`),hasPrev:sa(e,`meta.prev`).n>0,sampled:null,settling:e.settling??null,custom:!!e.custom,compare:e.compare??`previous`,releases:eo(e,`meta.rel`).filter(t=>t.firstMs>=e.window.from&&t.firstMs<e.window.to)}),oo=e=>e.service?.trim()||void 0,so=e=>e?{service:e}:{};function co(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 lo=(e,t)=>({page:co(e,`page`,1,1,1e6),size:co(e,`size`,t,5,5e3)}),uo=[`method`,`status`,`duration`,`service`,`q`,`endpoint`,`user`,`insights`],fo=[[``,`All Statuses`],[`2xx`,`2xx Success`],[`3xx`,`3xx Redirect`],[`4xx`,`4xx Client error`],[`5xx`,`5xx Server error`],[`failed`,`Failed (any error)`]],po={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]},mo=[[``,`Any Duration`],...Object.entries(po).map(([e,[t]])=>[e,t])],ho=new Set(fo.map(([e])=>e));function go(e){let t=t=>(e instanceof URLSearchParams?e.get(t):e[t])??``,n=ho.has(t(`status`))?t(`status`):``,r=Object.hasOwn(po,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 _o(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 vo(e){let t=Object.hasOwn(po,e)?po[e]:void 0;return t?[t[1],t[2]]:null}function yo(e,t){let n=vo(t);return!n||e.durationMs>=n[0]&&e.durationMs<n[1]}function bo(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 xo(e,t){return e.filter(e=>(!t.method||e.method===t.method)&&(!t.service||e.service===t.service||e.services.includes(t.service))&&_o(e,t.status)&&yo(e,t.duration)&&(!t.endpoint||e.endpoint===t.endpoint)&&(!t.user||e.user===t.user)&&(!t.insights||e.insights>0)&&bo(e,t.q.trim()))}var So=e=>uo.some(t=>e[t]!==``),Co={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},wo=e=>!!e&&e in Co;function To(e,t){let n=Co[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 Eo=e=>({service:oo(e)??``,status:e.status===`error`||e.status===`ok`?e.status:``,duration:e.duration&&vo(e.duration)?e.duration:``,q:e.q?.trim()??``,sort:e.sort===`duration`?`duration`:`time`}),Do=e=>({...e.q?{q:e.q}:{},...e.service?{service:_r(e.service)}:{},...e.status?{status:e.status}:{},...e.duration?{duration:e.duration}:{}});function Oo(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?vo(t.duration):null;return!n||e.durationMs>=n[0]&&e.durationMs<n[1]}var ko=e=>({route:`rr.${e}.route`,m:`rr.${e}.m`,large:`rr.${e}.large`,rc:`rc.${e}`,rcRoute:`rc.${e}.route`,views:`pv.${e}`});function Ao(e){let t=ko(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 jo(e){let t=ko(e);return[M(t.rc,`rc`,e,{top:!0}),M(t.rcRoute,`rc.route`,e),M(t.views,`pv`,e)]}var Mo=(e,t)=>sa(e,ko(t).views).n,No=e=>e.top?.traceId??``;function Po(e,t,n,r){let i=t=>n.get(k(e,t)),a=e=>{let t=i(e);return t?j(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&&ji(o))??0)),avgSsrRenderMs:a(`ssrRender`)};return{route:e,views:t.n,...s,avgHydrationMs:a(`hydration`),...Yn(s),totalRenderMs:i(`render`)?.sum??0,lastSeenMs:t.lastMs,exampleTraceId:No(t)}}function Fo(e,t){let n=ko(t),r=ca(e,n.m),i=ca(e,n.large);return[...P(e,n.route)].sort(ma(e=>e.agg.n)).map(e=>Po(e.key,e.agg,r,i))}function Io(e,t){let n=new Map;for(let{key:r}of P(e,t)){let[e=``,t=``]=Yi(r);n.set(e,[...n.get(e)??[],t])}return n}function Lo(e,t){let n=ko(t),r=P(e,n.rc),i=Io(e,n.rcRoute),a=Mo(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:Gn(s,o),issues:Wn({renders:n,selfMs:s,wasted:c,context:l},a),routes:[...i.get(e)??[]].sort(),lastSeenMs:t.lastMs,exampleTraceId:No(t)}}).sort((e,t)=>t.selfMs-e.selfMs||t.renders-e.renders||t.lastSeenMs-e.lastSeenMs)}var Ro=e=>({ins:`ig.${e}.ins`,ep:`ig.${e}.ins.ep`});function zo(e,t=`all`,n){let r=Ro(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,...Ao(e),...jo(e)]:a}function Bo(e,t){let n=new Map;for(let{key:r}of[...P(e,t)].sort(ma(e=>e.agg.lastMs))){let[e=``,t=``]=Yi(r);n.set(e,[...n.get(e)??[],t])}return n}function Vo(e,t,n){let r=t.top;return ir(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 Ho(e,t){let n=Ro(t),r=Bo(e,n.ep);return[...P(e,n.ins)].sort(ma(e=>e.agg.lastMs)).map(e=>Vo(e.key,e.agg,r.get(e.key)??[]))}function Uo(e,t,n=`all`){let r=Ho(e,t);if(n===`requests`)return r.sort(or);let i=Fo(e,t).filter(e=>e.issue!==`none`).map(Zn),a=Lo(e,t).filter(e=>e.issues.length>0).map(Qn);return[...r,...i,...a].sort(or)}var Wo=24,Go=15,Ko=25,L=8;function qo(e){let t=e.rootUrl??e.rootName;if(!/^https?:\/\//.test(t))return t;let n=new URL(t);return n.pathname+n.search}var Jo=e=>({traceId:e.traceId,startMs:e.startMs,path:qo(e),durationMs:ti(e),health:Nn(e)?.health??null,status:e.status,services:e.services}),Yo=({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 Xo(e,t){return{count:e.n,avgSpans:j(e),slow:e.c[0]??0,series:{count:la(t),avgSpans:ua(t),slow:da(t,0)}}}function Zo(e,t){let n=e.reduce((e,t)=>e+t.agg.sum,0);return[...e].sort(ma(e=>e.agg.sum)).slice(0,L).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 Qo(e){let t=sa(e,`meta.prev`).n>0;return{cur:Xo(sa(e,`t.cur`),F(e,`t.series`,Wo)),prev:Xo(sa(e,`t.prev`),F(e,`t.prevSeries`,Wo)),insights:Uo(e,`cur`).length,prevInsights:t?Uo(e,`prev`).length:null,insightSeries:da(F(e,`ins.series`,Wo),2)}}var $o=e=>({type:`trace`,id:`selected`,traceId:e,windows:[`cur`,`prev`]}),es={needs:e=>{let t=e.searchIds?{...Eo(e.params),q:``}:Eo(e.params),n=t.service||void 0,r=so(n);return ia([...io,M(`t.cur`,`trace`,`cur`,r),M(`t.prev`,`trace`,`prev`,r),N(`t.series`,`trace`,`cur`,Wo,r),N(`t.prevSeries`,`trace`,`prev`,Wo,r),...zo(`cur`,`all`,n),...zo(`prev`,`all`,n),N(`ins.series`,`req`,`cur`,Wo,r),ra(`recent`,`traces`,`cur`,{filter:{...Do(t),...e.searchIds?{traceIds:e.searchIds}:{}},sort:{key:t.sort,desc:!0},page:lo(e.params,Go)}),M(`bn.layer`,`bn.layer`,`cur`,{top:!0,...r}),M(`bn.owner`,`bn.owner`,`cur`,r),ra(`critical`,`critical`,`cur`,{filter:n?{service:_r(n)}:{},sort:{key:`duration`,desc:!0},limit:Ko}),...e.params.trace?[$o(e.params.trace)]:[]])},followUp:(e,t)=>e.params.trace?[]:[$o(fa(t,`recent`).items[0]?.traceId??null)],model(e){let t=fa(e,`recent`);return{meta:ao(e),cards:Qo(e),recent:t.items.map(Yo),matching:t.total??t.items.length,filter:Eo(e.params),page:t.page,size:t.pageSize,bottlenecks:{layer:Zo(P(e,`bn.layer`),`layer`),service:Zo(P(e,`bn.owner`),`service`)},critical:fa(e,`critical`).items,selected:e.traces.selected??null}}};function ts(e){let{findings:t,...n}=e;return n}var ns=e=>({...Jo(e),startMs:e.startMs,spanCount:e.spanCount,slow:ti(e)>=500}),rs=e=>li([e]),is=(e,t)=>ei([e],t),as=[`render`,`ssr`,`hydration`,`lcp`,`cls`,`ssrRender`],os=[`render`,`ssr`,`client`,`hydration`,`image`,`cls`],ss={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},cs={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 ls(e){let t=e.startMs,n=[A(`pv`,``,t),A(`pv.route`,e.route,t,{top:{rank:t,data:{traceId:e.traceId}}})];for(let r of as){let i=ss[r](e);i!==null&&n.push(A(`pv.m`,k(e.route,r),t,{sum:i}))}e.largeImages!==null&&n.push(A(`pv.large`,e.route,t,{sum:e.largeImages,values:[e.largeImages]}));for(let r of os){let i=cs[r](e);i!==null&&n.push(A(`pv.g`,r,t,{sum:i,values:[i]}))}return n}function us(e){let t=e.startMs,n=e.attributes[at],r=[A(`react`,``,t)];for(let i of Un(e))r.push(A(`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(A(`rc.route`,k(i.name,n),t));return r}function ds(e){return e.spans.flatMap(e=>{let t=ct(e);return t===`pageview`?ls(qn(e)):t===`react`?us(e):[]})}function fs(e){let t=e??0;return t>=100&&t<600?`${Math.floor(t/100)}xx`:`none`}function ps(e){return e>=0?e<100?`fast`:e<500?`medium`:e<1e3?`slow`:`slowest`:`none`}var ms=e=>[e.method,fs(e.status),Ln(e)?`1`:`0`,ps(e.durationMs)],hs=[{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}],gs=(e,t)=>`${e}|${t}`;function _s(e){return rr(e).flatMap(t=>{let n=gs(t.kind,t.shape),r={kind:t.kind,shape:t.shape,endpoint:t.endpoint,traceId:t.traceId,startMs:t.startMs};return[A(`ins`,n,e.startMs,{sum:t.totalMs,c:[t.count],top:{rank:e.startMs,data:r}}),A(`ins.ep`,k(n,t.endpoint),e.startMs),...e.user?[A(`ins.u`,k(n,e.user),e.startMs)]:[]]})}function vs(e){return hs.flatMap(t=>{let n=t.pick(e);return n===null?[]:[A(`req.part`,t.key,e.startMs,{sum:n,values:[n]})]})}function ys(e,t){return e.user?[A(`usr`,e.user,e.startMs,{...t,values:[e.durationMs]}),A(`ep.u`,k(gr(e.service),e.endpoint,e.user),e.startMs)]:[]}function bs(e){let t=e.startMs,n=ms(e),r={err:+!!Ln(e),sum:e.durationMs},i=+(e.insights>0),a=[A(`req`,``,t,{...r,c:[e.dbCount,i,e.insights],values:[e.durationMs]}),A(`req.dim`,k(...n),t,{...r,c:[e.dbCount,i,e.insights]})];for(let o of new Set([e.service,...e.services]))a.push(A(`req.svc`,k(o,...n),t,{...r,c:[e.dbCount,i,+(o===e.service)]}));let o=[e.service,...e.services].map(gr);return[...a,...vs(e),..._s(e),...ys(e,r)].flatMap(e=>Xi(e,o))}function xs(e,t){if(t===`database`)return Fe(qt(e));if(t===`external`)return dn(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 Ss=e=>k(e,``);function Cs(e,t){let n=Ss(t);return e.map(({key:e,agg:t})=>({name:e.slice(n.length),count:t.n,avgMs:j(t),errors:t.err}))}function ws(e,t){return{incoming:e.filter(e=>e.to===t),outgoing:e.filter(e=>e.from===t)}}var Ts=(e,t)=>t?e.find(e=>e.key===t)??e.find(e=>e.name===t)??null:null;function Es(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 Ds=e=>k(`api:${e.service}`,xs(e,`api`));function Os(e){let t=new Map(e.spans.map(e=>[e.spanId,e])),n=(e,n,r)=>{let i=Es(e,t);return i?[A(n,k(Ds(i),r),e.startMs,{err:+!!Nr(e),sum:e.durationMs})]:[]},r=Br(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`,Fe(qt(e))));return[...r,...i]}function ks(e){let t=new Map(e.spans.map(e=>[e.spanId,e]));return e.spans.flatMap(e=>{let n=Nt(e),r=e.parentSpanId?t.get(e.parentSpanId):void 0;return!n||r&&r.service===e.service?[]:[A(`rel`,k(gr(e.service),n),e.startMs,{err:+!!Nr(e),sum:e.durationMs,values:[e.durationMs]})]})}var As=(e,t)=>e.attributes[t]==null?null:String(e.attributes[t]);function js(e,t){return e.category===`http.server`?{key:`api:${e.service}`,name:e.service,kind:`api`,detail:null}:ct(e)===`fetch`?{key:`web:browser`,name:`Web App`,kind:`web`,detail:`browser`}:e.category===`db`?{key:`db:${Fr(e)}`,name:Fr(e),kind:`database`,detail:As(e,`db.system.name`)}:t.has(e)?{key:`ext:${Lr(e)}`,name:Lr(e),kind:`external`,detail:Lr(e)}:Dr(e)?{key:`queue:${kr(e)}`,name:kr(e),kind:`queue`,detail:kr(e)}:Or(e)?{key:`worker:${e.service}`,name:e.service,kind:`worker`,detail:null}:null}var Ms=new Set([`api`,`web`,`database`,`external`]);function Ns(e){let t=new Set(Ir(e));return e.spans.flatMap(e=>{let n=js(e,t);if(!n)return[];let{key:r,...i}=n,a={err:+!!Nr(e),sum:e.durationMs},o=[A(`svc`,r,e.startMs,{...a,values:[e.durationMs],top:{rank:e.startMs,data:i}})];return Ms.has(n.kind)&&o.push(A(`svc.ep`,k(r,xs(e,n.kind)),e.startMs,{...a,values:[e.durationMs]})),o})}function Ps(e){return Br(e).map(({from:e,to:t,span:n})=>A(`edge`,k(e,t),n.startMs,{err:+!!Nr(n),sum:n.durationMs,values:[n.durationMs],top:{rank:n.startMs,data:{from:e,to:t}}}))}var Fs=e=>[...new Set(e.spans.map(e=>gr(e.service)))];function Is(e){let t=Zr(e).filter(e=>e.kind!==`browser`&&e.ms>0&&!e.key.startsWith(`page:`)),n=e.startMs,r=Fs(e);return t.flatMap(e=>[A(`bn.layer`,e.key,n,{sum:e.ms,top:{rank:n,data:{label:e.label,kind:e.kind}}}),A(`bn.owner`,e.owner,n,{sum:e.ms})]).flatMap(e=>Xi(e,r))}var Ls=e=>[...Ns(e),...Ps(e),...Is(e)],Rs=yn.slowQueryMs,zs={slowQueryMs:Rs,nPlusOneThreshold:yn.nPlusOneThreshold,criticalPerTrace:5};function Bs(e){return Xi(A(`trace`,``,e.startMs,{sum:e.spanCount,c:[+(ti(e)>=500)]}),Fs(e))}function Vs(e,t){let n=Fn(e,t),r=rs(e),i=Ct(e.traceId),a=[...i?[]:Bs(e),...n?bs(n):[],...Ls(e),...Os(e),...Ka(e,t.slowQueryMs),...Xa(e,n?.user??null),...Qa(r),...ds(e),...ks(e)];return{traceId:e.traceId,startMs:e.startMs,request:n?ts(n):null,trace:i?null:ns(e),logs:r,critical:is(e,t.criticalPerTrace),contributions:a}}var Hs=new WeakMap;function Us(e,t={}){let n={...zs,...t},r=`${n.slowQueryMs}|${n.nPlusOneThreshold}|${n.criticalPerTrace}`,i=Hs.get(e);i||Hs.set(e,i=new Map);let a=i.get(r);if(a)return a;let o=Vs(e,n);return i.set(r,o),o}function Ws(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 Gs(e){if(e.type!==`groups`&&e.type!==`series`||e.service===void 0)return e;let t=Ji[e.kind];if(!t)throw Error(`${e.kind} has no per-service kind`);let{service:n,...r}=e;return{...r,kind:t,filter:Ws(n,e.filter)}}var Ks=e=>{let t=k(e,``);return e=>e.startsWith(t)?e.slice(t.length):e};function qs(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=Ks(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=Ks(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 Js=[{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`}],Ys=(e,t)=>e.keepMs??t,Xs=(e,t,n)=>t-n-e.ms;function Zs(e,t,n,r){return Math.floor(t/e.ms)*e.ms>Xs(e,n,Ys(e,r))}function Qs(e,t){let n=Js.find(n=>Zs(n,e.from,t,1/0))??Js[Js.length-1];return{from:Math.floor(e.from/n.ms)*n.ms,to:e.to}}var $s=(e,t,n)=>({tier:e,from:t,to:t+e.ms,weight:n/e.ms});function ec(e,t,n,r){if(e>=t)return[];let i=Js[n-1];if(i&&Zs(i,e,r.now,r.retentionMs))return tc(e,t,n-1,r);let a=Js[n];return[$s(a,Math.floor(e/a.ms)*a.ms,t-e)]}function tc(e,t,n,r){let i=Js[n],a=Math.ceil(e/i.ms)*i.ms,o=Math.floor(t/i.ms)*i.ms;if(a>o)return ec(e,t,n,r);let s=a<o?[{tier:i,from:a,to:o,weight:1}]:[];return[...ec(e,a,n,r),...s,...ec(o,t,n,r)]}function nc(e,t){let n=n=>Zs(n,e.from,t.now,t.retentionMs),r=Js.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=Js.findIndex(n);return i>=0?i:Js.length-1}function rc(e,t,n){return e.to<=e.from?[]:tc(e.from,e.to,nc(e,{now:t,retentionMs:n}),{now:t,retentionMs:n})}function ic(e,t,n,r){let i=(e.to-e.from)/t,a=Js.filter(t=>Zs(t,e.from,n,r)),o=a.length?a:[Js[Js.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 ac(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 oc(e,t,n,r={slowQueryMs:Rs},i=null){let a=_i(n,t),o=Qs(a??me(e,t),t),s=yi(n);return{range:a?gi(a.to-a.from):e,window:o,prev:bi(o,s),now:t,params:n,options:r,settling:i,custom:!!a,compare:s}}function sc(e,t){return{groups:{...e.groups,...t.groups},series:{...e.series,...t.series},lists:{...e.lists,...t.lists},traces:{...e.traces,...t.traces}}}var cc=(e,t,n)=>qs(e.runSync(t.map(Gs),n),t);function lc(e,t,n){let r=cc(n,e.needs(t),t),i=e.followUp?.(t,r)??[],a=i.length?sc(r,cc(n,i,t)):r;return e.model({...t,...a})}var uc={needs:()=>[M(`err`,`err`,`cur`)],model:e=>({errors:sa(e,`err`).n})},dc={avg:`avg`,count:`n`,total:`sum`},fc=e=>!!e&&Object.hasOwn(dc,e),pc=e=>({service:oo(e)??``,q:e.q?.trim()??``,table:e.table?.trim()??``,operation:e.operation?.trim().toUpperCase()??``,database:e.database?.trim()??``,sort:fc(e.sort)?e.sort:`avg`}),mc=e=>!!(e.operation||e.database);function hc(e,t){let{page:n,size:r}=lo(t,15),i=[e.q,e.table].filter(Boolean),a={...mc(e)?{parts:[e.operation||null,e.database||null,null]}:{},...i.length?{contains:i}:{}},o={by:dc[e.sort],desc:!0,limit:r,offset:(n-1)*r};return M(`db.q`,mc(e)?`db.qd`:`db.q`,`cur`,{top:!0,filter:a,order:o,...so(e.service||void 0)})}var gc=e=>Yi(e).at(-1),_c=e=>({queries:e.n,avgMs:j(e),slow:e.c[0]??0,totalMs:e.sum}),vc=e=>({total:la(e),slow:da(e,0),avg:ua(e)});function yc(e){let t=new Map;for(let{key:n}of[...e].sort(ma(e=>e.agg.n))){let[e=``,r=``]=Yi(n);t.set(e,[...t.get(e)??[],r])}return t}function bc(e){let t=yc(P(e,`db.qe`));return P(e,`db.q`).map(({key:e,agg:n})=>{let r=n.top,i=gc(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 xc(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 Sc(e){let t=ca(e,`db.op`);return cr.map(e=>{let n=t.get(e);return{operation:e,count:n?.n??0,avgMs:n?j(n):null,totalMs:n?.sum??0}})}function Cc(e,t,n){let r=_c(sa(e,`db.prev`)),i=r.queries>0,a=Uo(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 wc={order:{by:`n`,desc:!0,limit:200}},Tc={needs:e=>{let t=pc(e.params),n=t.service||void 0,r=so(n);return ia([...io,M(`db.cur`,`db`,`cur`,r),M(`db.prev`,`db`,`prev`,r),...zo(`cur`,`requests`,n),...zo(`prev`,`requests`,n),hc(t,e.params),M(`db.qe`,`db.qe`,`cur`,r),M(`db.t`,`db.t`,`cur`,{...wc,...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=_c(sa(e,`db.cur`)),n=Uo(e,`cur`,`requests`).filter(e=>e.area===`database`),r=vc(F(e,`sparks`,24));return{meta:ao(e),slowMs:e.options.slowQueryMs,summary:t,insights:n,queries:bc(e),queryShapes:aa(e,`db.q`),filter:pc(e.params),...lo(e.params,15),databases:P(e,`dbs`).map(e=>e.key.slice(3)).sort(),tables:xc(e),tableCount:aa(e,`db.t`),operations:Sc(e),starts:Ee(e.window,48),chart:vc(F(e,`chart`,48)),change:Cc(e,t,n.length),sparks:{queries:r.total,avgMs:r.avg,slow:r.slow}}}},Ec=e=>e===`unresolved`||e===`resolved`||e===`ignored`||e===`all`,Dc=e=>M(`life`,`err.g`,`all`,e?{filter:{prefix:`${e}|`}}:{}),Oc=e=>new Map(P(e,`life`).map(e=>[e.key,{firstMs:e.agg.firstMs,lastMs:e.agg.lastMs}])),kc=(e,t,n,r)=>jt(e[At(`error`,n)],t.get(n)?.lastMs??0,r);function Ac(e,t,n,r,i){let a=e.issues??{},o=Oc(t),s=Object.values(a).filter(e=>e.kind===`error`).map(e=>e.key),c=(t,n)=>n.includes(kc(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=>no(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 jc(e,t){let n=e.issues??{},r=Oc(e);return Object.fromEntries(t.map(t=>{let i=r.get(t);return[t,{status:kc(n,r,t,e.now),firstSeenMs:i?.firstMs??0,isNew:(i?.firstMs??0)>=e.window.from,assignee:n[At(`error`,t)]?.assignee??null}]}))}var Mc=e=>({service:oo(e)??``,type:e.type?.trim()??``,endpoint:e.endpoint?.trim()??``,critical:e.critical===`1`,q:e.q?.trim()??``,sort:e.sort===`count`?`count`:`recent`,status:Ec(e.status)?e.status:`unresolved`,fresh:e.new===`1`,release:oo(e)?e.release?.trim()??``:``,user:e.user?.trim()??``}),Nc=e=>!!(e.service||e.type||e.endpoint||e.critical||e.q||e.fresh||e.release||e.user||e.status!==`unresolved`),Pc=e=>M(`ep.groups`,`err.ge`,`cur`,{filter:{parts:[null,e]}}),Fc=e=>P(e,`ep.groups`).map(e=>Yi(e.key)[0]);function Ic(e,t,n={}){let{page:r,size:i}=lo(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 Lc=16,Rc=50,zc=50;function Bc(e){let t=new Map;for(let{key:n}of[...e].sort(ma(e=>e.agg.lastMs))){let[e=``,r=``]=Yi(n);t.set(e,[...t.get(e)??[],r])}return t}function Vc({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,zc);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,zc)}}function Hc(e,t){let n=sa(e,`req.${t}`);return{exceptions:sa(e,`err.${t}`).n,errorRate:we(n.err,n.n),endpoints:aa(e,`err.e.${t}`),critical:P(e,`err.g.${t}`).filter(e=>(e.agg.c[0]??0)>0).length}}function Uc(e){let t=ca(e,`err.s.cur`),n=ca(e,`err.s.prev`),r=new Map;for(let{key:t,agg:n}of P(e,`req.svc`)){let e=gr(Yi(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=la(F(e,`trend`,Lc,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 Wc(e,t){let n=Hc(e,`prev`),r=sa(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 Gc=(e,t)=>[M(`req.${e}`,`req`,e,so(t)),M(`err.${e}`,`err`,e,so(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},...so(t)}),M(`err.s.${e}`,`err.s`,e)];function Kc(e){let t=so(e);return[...io,...Gc(`cur`,e),...Gc(`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:Rc},...t}),M(`req.svc`,`req.svc`,`cur`),N(`trend`,`err.s`,`cur`,Lc,{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 qc(e,t){let n=e.endpoint?Fc(t):void 0,r=e.user?P(t,`user.groups`).map(e=>Yi(e.key)[0]):void 0;return n&&r?n.filter(e=>r.includes(e)):n??r}var Jc=e=>e?[M(`selected`,`err.g`,`cur`,{top:!0,ids:!0,filter:{keys:[e]}})]:[],Yc={needs:e=>{let t=Mc(e.params),n=t.endpoint?[Pc(t.endpoint)]:[],r=t.service?[$a(`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 ia([...Jc(e.params.group),...Kc(t.service||void 0),Dc(t.service),...n,...r,...i])},followUp(e,t){let n=Mc(e.params),r=to(t,`rel.svc`,n.release,n.fresh?e.window.from:null);return[Ic(n,e.params,Ac(e,t,n.status,r,qc(n,t)))]},model(e){let t=Hc(e,`cur`),n=Bc(P(e,`err.ge`)),r=F(e,`chart`,48),i=F(e,`sparks`,24);return{meta:ao(e),hasRequests:sa(e,`req.cur`).n>0,exceptions:t.exceptions,filter:Mc(e.params),groups:P(e,`groups`).map(e=>Vc(e,n)),groupCount:aa(e,`groups`),...lo(e.params,15),endpoints:P(e,`endpoints`).map(e=>({endpoint:e.key,count:e.agg.n})),issues:jc(e,[...P(e,`groups`),...P(e,`selected`)].map(e=>e.key)),hasIssues:!!e.issues,releases:eo(e,`rel.svc`).map(e=>({version:e.version,firstMs:e.firstMs})),selected:P(e,`selected`).map(e=>Vc(e,n))[0]??null,types:[...P(e,`err.t`)].sort(ma(e=>e.agg.n)).map(e=>({type:e.key,count:e.agg.n})),services:Uc(e),starts:Ee(e.window,48),chart:{plain:r.map(e=>e.n-(e.c[0]??0)),critical:da(r,0),prev:la(F(e,`chart.prev`,48))},cards:t,change:Wc(e,t),sparks:{exceptions:la(i),errorRate:F(e,`rate`,24).map(e=>e.n?e.err/e.n*100:null),critical:da(i,0)}}}},Xc=10,Zc=(e,t,n)=>M(e,t,`cur`,{filter:{parts:[...n,null]},order:{by:`n`,desc:!0,limit:Xc}});function Qc(e,t){return{count:aa(e,t),top:P(e,t).map(e=>({user:Yi(e.key).at(-1),count:e.agg.n}))}}var $c=e=>({count:e.length,high:e.filter(e=>e.impact===`high`).length,totalMs:e.reduce((e,t)=>e+t.totalMs,0)});function el(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 tl(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[At(`insight`,t.key)];return[t.key,{status:jt(a,t.lastSeenMs,e.now),firstSeenMs:i,isNew:i>=e.window.from,assignee:a?.assignee??null}]}))}var nl={needs:e=>{let t=oo(e.params),n=M(`ins.life`,`ins`,`all`,t?{service:t}:{}),r=t?[$a(`rel.svc`,t)]:[],i=e.params.key?[Zc(`users`,`ins.u`,[e.params.key])]:[];return ia([...io,...zo(`cur`,`all`,t),...zo(`prev`,`all`,t),n,...r,...i])},model(e){let t=Uo(e,`cur`),n=Uo(e,`prev`),r=Ec(e.params.status)?e.params.status:`unresolved`,i=tl(e,t),a=e=>r===`all`||i[e.key].status===r||r===`unresolved`&&i[e.key].status===`regressed`,o=to(e,`rel.svc`,oo(e.params)?e.params.release??``:``,null),s=t.filter(t=>el(t,e.params)&&a(t)&&(!o||no(o,i[t.key].firstSeenMs)));return{meta:ao(e),totals:$c(t),prevTotals:$c(n),found:sr(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:eo(e,`rel.svc`).map(e=>({version:e.version,firstMs:e.firstMs})),selectedUsers:e.params.key?Qc(e,`users`):null}}},rl=[{key:`info`,label:`Info and below`,levels:[`trace`,`debug`,`info`]},{key:`warn`,label:`Warnings`,levels:[`warn`]},{key:`error`,label:`Errors`,levels:[`error`,`critical`]}],il=e=>!!e&&oi.includes(e),al=e=>({minLevel:il(e.level)?e.level:`trace`,exact:e.exact===`1`&&il(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()??``}),ol=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 sl(e,t){let n=ca(e,t),r=e=>n.get(e)?.n??0;return{total:oi.reduce((e,t)=>e+r(t),0),warnings:r(`warn`),errors:r(`error`)+r(`critical`),critical:r(`critical`)}}function cl(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 ll=1e3,ul=(e,t,n)=>ra(`rows`,`logs`,`cur`,{filter:n?{...ol({...t,query:e.searchIds?``:t.query}),traceIds:n}:ol(t),page:lo(e.params,30)}),dl={needs:e=>{let t=al(e.params),n=so(t.service||void 0);return ia([...io,M(`log.cur`,`log`,`cur`,n),M(`log.prev`,`log`,`prev`,n),M(`log.s`,`log.s`,`cur`),...t.user?[ra(`user.traces`,`requests`,`cur`,{filter:{user:t.user},limit:ll})]:[ul(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=al(e.params);if(!n.user)return[];let r=fa(t,`user.traces`).items.map(e=>e.traceId);return[ul(e,n,e.searchIds?r.filter(t=>e.searchIds.includes(t)):r)]},model(e){let t=sl(e,`log.cur`),n=fa(e,`rows`),r=t=>la(I(e,`sparks`,24,t));return{meta:ao(e),filter:al(e.params),totalLines:t.total,services:[...new Set(P(e,`log.s`).map(e=>Yi(e.key)[0]))].sort(),rows:n.items,matching:n.total??n.items.length,page:n.page,pageSize:n.pageSize,starts:Ee(e.window,48),volume:Object.fromEntries(rl.map(t=>[t.key,la(I(e,`volume`,48,t.levels))])),cards:t,change:cl(t,sl(e,`log.prev`)),sparks:{total:r(oi),warnings:r([`warn`]),errors:r([`error`,`critical`]),critical:r([`critical`])}}}},fl=(e,t)=>fa(e,t).total??0,pl={needs:e=>{let t=ol(al(e.params));return ia([...io,ra(`cur`,`logs`,`cur`,{filter:t,limit:0,count:!0,aggregate:{buckets:48}}),ra(`prev`,`logs`,`prev`,{filter:t,limit:0,count:!0})])},model(e){let t=fa(e,`cur`).aggregate?.series??[],n=fl(e,`cur`),r=fl(e,`prev`);return{meta:ao(e),starts:Ee(e.window,48),lines:t.map(e=>e.n),errors:t.map(e=>e.err),total:n,errorTotal:fa(e,`cur`).aggregate?.total.err??0,change:r>0?le(n,r):null}}};function ml(e,t){let n=al(e.params),r=ui(n.minLevel);return P(t,`pat`).flatMap(e=>{let[t=``,i=`info`,a=``,o=`r`]=Yi(e.key),s=ui(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 hl(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 gl=e=>{let t=al(e.params).service;return t?{parts:[t,null,null,null]}:void 0};function _l(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)=>ui(t.level)>ui(e)?t.level:e,oi[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:la(I(e,`pat.s`,24,r))}}var vl={needs:e=>ia([...io,M(`pat`,`log.p`,`cur`,{filter:gl(e)})]),followUp(e,t){let n=hl(ml(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=hl(ml(e,e)),n=t.reduce((e,t)=>e+t.n,0);return{meta:ao(e),total:t.length,lines:n,rows:t.slice(0,50).map(t=>_l(e,t,n))}}},yl=(e,t,n)=>({value:e,previous:t,change:le(e,t),series:n}),bl=e=>e.n?we(e.err,e.n):null;function xl(e,t,n){let r=t.n>0,i=e=>r?e:null;return{total:yl(e.n,i(t.n),la(n)),avgDuration:yl(j(e),i(j(t)),ua(n)),sqlQueries:yl(e.c[0]??0,i(t.c[0]??0),da(n,0)),errorRate:yl(bl(e),i(bl(t)),n.map(bl)),withInsights:yl(e.c[1]??0,i(t.c[1]??0),da(n,1))}}function Sl(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 Cl=(e,t)=>xl(sa(e,`${t}.cur`),sa(e,`${t}.prev`),F(e,`${t}.series`,24)),wl=(e,t)=>e?.[t]??500;function Tl(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=Mi(e.hist,t)*n,i=(Mi(e.hist,4*t)-Mi(e.hist,t))*n;return{score:(r+i/2)/e.n,targetMs:t,satisfied:r,tolerating:i,frustrated:e.n-r-i}}function El(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 Dl(e){return e>=.94?`Excellent`:e>=.85?`Good`:e>=.7?`Fair`:e>=.5?`Poor`:`Unacceptable`}var Ol=e=>M(`apdex`,`svc`,`cur`,{hist:!0,...e?{filter:{keys:[e]}}:{}});function kl(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=gr(i.join(`:`));t.set(a,Tl(n.agg,wl(e.apdex,a)))}return t}var Al=e=>El([...kl(e).values()]),jl={api:0,web:1,database:2,external:3,queue:4,worker:5},Ml=e=>`svc.${e}`,Nl=`edge.cur`,Pl=e=>[M(Ml(e),`svc`,e,{hist:!0,top:!0})],Fl=()=>[M(Nl,`edge`,`cur`,{top:!0,hist:!0})];function Il({key:e,agg:t}){let n=t.top,r=we(t.err,t.n),i=t.hist?Ai(t.hist,t.n,95):null;return{key:e,name:n.name,kind:n.kind,status:Mr(t.n,r,i),requests:t.n,errors:t.err,errorRate:r,avgMs:j(t),p95Ms:i,detail:n.detail}}function Ll(e,t){let n=P(e,Ml(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(Il).sort((e,t)=>t.requests-e.requests||jl[e.kind]-jl[t.kind])}function Rl(e){return[...P(e,Nl)].sort(ma(e=>e.agg.n)).map(({agg:e})=>{let{from:t,to:n}=e.top;return{from:t,to:n,calls:e.n,avgMs:j(e),errors:e.err,p95Ms:e.hist?Ai(e.hist,e.n,95):null}})}var zl=[{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}],Bl=5,Vl=5,Hl=3,Ul=50,Wl=5;function Gl(e,t){let n=tl(e,t);return t.filter(e=>n[e.key].status===`unresolved`||n[e.key].status===`regressed`)}function Kl(e){let t=P(e,`err.recent`),n=jc(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:Vc(e),why:r}]:[]}).slice(0,Wl)}function ql(e){let t=ca(e,`timing`);return zl.map(e=>{let n=t.get(e.key);return{key:e.key,label:e.label,avg:n?j(n):null,p95:n?.hist?Ai(n.hist,n.n,95):null,shade:e.shade}})}function Jl(e){let t=F(e,`activity`,48),n=la(F(e,`activity.prev`,48));return{starts:Ee(e.window,48),requests:la(t),errors:t.map(e=>e.err),avgDuration:ua(t),prevRequests:n}}function Yl(e,t){let n=Ll(e,`cur`);if(!t)return n;let r=new Set(Rl(e).filter(e=>e.from===t).map(e=>e.to));return n.filter(e=>e.name===t||r.has(e.name))}var Xl={needs:e=>{let t=oo(e.params),n=so(t);return ia([...io,...Sl(`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}),...Pl(`cur`),...t?Fl():[],ra(`recent`,`requests`,`cur`,{limit:Vl,filter:t?{service:_r(t)}:{}}),...zo(`cur`,`all`,t),...zo(`prev`,`all`,t),Dc(t??``),Ol(t?`api:${_r(t)}`:void 0),M(`err.recent`,`err.g`,`cur`,{top:!0,order:{by:`lastMs`,desc:!0,limit:Ul},...t?{filter:{prefix:`${t}|`}}:{}})])},model(e){let t=Uo(e,`cur`),n=Cl(e,`h`);return{meta:ao(e),empty:n.total.value===0,headlines:n,insightsFound:sr(t,Uo(e,`prev`),e.window),activity:Jl(e),timing:ql(e),services:Yl(e,oo(e.params)).slice(0,Bl),recent:fa(e,`recent`).items,insights:Gl(e,t).slice(0,Hl),freshErrors:Kl(e),apdex:Al(e)}}},Zl=[{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`}],Ql=e=>e?.hist?Ai(e.hist,e.n,75):null,$l=e=>e?j(e):null;function eu(e,t){let n=ca(e,`pv.g.cur`);return Zl.map(e=>({key:e.key,label:e.label,value:(t===`avg`?$l:Ql)(n.get(e.phase)),kind:e.kind}))}function tu(e,t){let n=$l(ca(e,`pv.g.cur`).get(t)),r=$l(ca(e,`pv.g.prev`).get(t));return{value:n,change:le(n,r),series:ua(F(e,`cards`,24,t))}}var nu=e=>Lo(e,`cur`).filter(e=>e.issues.length>0).map(e=>e.name);function ru(e,t){let n=Lo(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:sa(e,`react.prev`).n>0?le(t,n):null,series:i}}var iu=()=>[...io,...Ao(`cur`),...jo(`cur`),...jo(`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)],au={needs:()=>ia(iu()),followUp(e,t){let n=nu(t);return n.length?[N(`issues`,`rc`,`cur`,24,{split:!0,filter:{keys:n}})]:[]},model(e){let t=(e.params.q??``).trim().toLowerCase(),n=Lo(e,`cur`),r=n.filter(e=>!t||e.name.toLowerCase().includes(t)),i=Fo(e,`cur`).filter(e=>!t||e.route.toLowerCase().includes(t)),a=n.filter(e=>e.issues.length>0).length;return{meta:ao(e),views:Mo(e,`cur`),routes:i.slice(0,200),routeCount:i.length,components:r.slice(0,200),componentCount:r.length,hasReact:sa(e,`react.cur`).n>0,starts:Ee(e.window,24),chart:{avg:ua(F(e,`cards`,24,`render`)),p75:F(e,`p75`,24).map(e=>Ql(e)),views:la(F(e,`views`,24))},phases:{avg:eu(e,`avg`),p75:eu(e,`p75`)},cards:{render:tu(e,`render`),ssr:tu(e,`ssr`),hydration:tu(e,`hydration`),issues:ru(e,a)}}}},ou=new Set(mo.map(([e])=>e).filter(Boolean));function su(e){let t={};for(let n of[`method`,`status`,`q`,`endpoint`,`user`])e[n]&&(t[n]=e[n]);return e.service&&(t.service=_r(e.service)),e.insights&&(t.insights=!0),ou.has(e.duration)&&(t.duration=e.duration),t}function cu(e){let t=e.status===`failed`?null:e.status||null,n=[e.method||null,t,e.status===`failed`?`1`:null,ou.has(e.duration)?e.duration:null],r=e.service?[_r(e.service),...n]:n;return r.some(e=>e!==null)?{parts:r}:void 0}var lu=e=>({key:wo(e.sort)?e.sort:`time`,desc:e.desc!==`0`});function uu(e,t){let n=t?{...go(e),q:``}:go(e),r={...su(n),...t?{traceIds:t}:{}},i=!!t||n.q.trim()!==``||!!(n.endpoint||n.user||n.insights),a=[...io,ra(`rows`,`requests`,`cur`,{filter:r,sort:lu(e),page:lo(e,15),...i?{aggregate:{buckets:24}}:{}}),M(`opt.dim`,`req.dim`,`cur`),M(`opt.svc`,`req.svc`,`cur`)];return i?a.push(ra(`prev`,`requests`,`prev`,{filter:r,limit:0,aggregate:{buckets:24}})):a.push(...Sl(`h`,n.service?`req.svc`:`req.dim`,cu(n))),e.trace&&a.push(ra(`selected`,`requests`,`cur`,{filter:{traceId:e.trace},limit:1})),ia(a)}function du(e){let t=fa(e,`rows`).aggregate,n=fa(e,`prev`).aggregate;return!t||!n?Cl(e,`h`):xl(t.total,n.total,t.series)}var fu=e=>[...new Set(e)].sort(),pu={needs:e=>uu(e.params,e.searchIds),model(e){let t=fa(e,`rows`),n=P(e,`opt.svc`).filter(e=>(e.agg.c[2]??0)>0);return{meta:ao(e),headlines:du(e),options:{methods:fu(P(e,`opt.dim`).map(e=>Yi(e.key)[0])),services:fu(n.map(e=>gr(Yi(e.key)[0])))},filtered:So(go(e.params)),rows:t.items,total:t.total??t.items.length,page:t.page,pageSize:t.pageSize,selected:e.params.trace?fa(e,`selected`).items[0]??null:null}}},mu=50,hu=(e,t)=>e.hist&&e.n?Ai(e.hist,e.n,t):null;function gu(e){return e.n?{count:e.n,errors:e.err,errorRate:we(e.err,e.n),avgMs:j(e),p50Ms:hu(e,50),p95Ms:hu(e,95),p99Ms:hu(e,99)}:null}var _u=e=>[...e].sort(ma(e=>e.agg.n)).map(e=>({name:Yi(e.key).at(-1),count:e.agg.n,errors:e.agg.err,avgMs:j(e.agg)}));function vu(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 yu(e){let t=F(e,`chart`,48);return{count:la(t),errors:t.map(e=>e.err),p50:t.map(e=>hu(e,50)),p95:t.map(e=>hu(e,95)),p99:t.map(e=>hu(e,99)),prevCount:la(F(e,`chart.prev`,48))}}var bu={needs:e=>{let t=vu(e.params),n={filter:{keys:[t.key]}},r={by:`n`,desc:!0,limit:mu};return ia([...io,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:`${gr(t.name)}|`,parts:[null,t.endpoint]}}),ra(`slowest`,`requests`,`cur`,{filter:{endpoint:t.endpoint,service:_r(t.name)},sort:{key:`duration`,desc:!0},limit:10}),Zc(`users`,`ep.u`,[gr(t.name),t.endpoint])])},followUp(e,t){let n=P(t,`ep`)[0]?.agg.ids??[],r=[...new Set(P(t,`ge`).map(e=>Yi(e.key)[0]))];return[...n.length?[ra(`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:mu}})]:[]]},model(e){let t=vu(e.params);return{meta:ao(e),service:t.name,endpoint:t.endpoint,totals:gu(sa(e,`ep`)),prev:gu(sa(e,`ep.prev`)),starts:Ee(e.window,48),chart:yu(e),slowest:fa(e,`slowest`).items,recent:fa(e,`recent`).items,queries:_u(P(e,`q`)),calls:_u(P(e,`call`)),errors:P(e,`errors`).map(e=>Vc(e)),users:Qc(e,`users`)}}},xu=50,Su=e=>({filter:{keys:[e]}}),Cu={needs:e=>{let t=e.params.group??``;return ia([...io,M(`g`,`err.g`,`cur`,{top:!0,ids:!0,...Su(t)}),M(`g.prev`,`err.g`,`prev`,Su(t)),M(`ge`,`err.ge`,`cur`,{filter:{prefix:k(t,``)}}),N(`chart`,`err.g`,`cur`,48,Su(t)),N(`chart.prev`,`err.g`,`prev`,48,Su(t)),M(`life`,`err.g`,`all`,Su(t)),Zc(`users`,`err.u`,[t])])},followUp(e,t){let n=P(t,`g`)[0]?.agg.ids.slice(0,xu)??[];return n.length?[ra(`requests`,`requests`,`cur`,{filter:{traceIds:n},limit:xu}),ra(`traces`,`traces`,`cur`,{filter:{traceIds:n},limit:xu})]:[]},model(e){let t=P(e,`g`)[0],n=[...P(e,`ge`)].sort(ma(e=>e.agg.n)),r=F(e,`chart`,48);return{meta:ao(e),group:t?Vc(t,new Map([[t.key,n.map(e=>Yi(e.key)[1])]])):null,prevCount:sa(e,`g.prev`).n,starts:Ee(e.window,48),chart:{count:la(r),critical:da(r,0),prev:la(F(e,`chart.prev`,48))},endpoints:n.map(e=>({endpoint:Yi(e.key)[1],count:e.agg.n})),requests:fa(e,`requests`).items,traces:fa(e,`traces`).items,issue:t?jc(e,[t.key])[t.key]??null:null,hasIssues:!!e.issues,users:Qc(e,`users`)}}};function wu(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 Tu=e=>e.n?{count:e.n,avgMs:j(e),totalMs:e.sum,slow:e.c[0]??0,errors:e.err}:null;function Eu(e,t){let[n=``,r=``]=Yi(e.key);return{service:t?n.slice(n.indexOf(`:`)+1):n,endpoint:t?r:``,count:e.agg.n,avgMs:j(e.agg)}}var Du={needs:e=>{let t=e.params.q??``,n={filter:{keys:[t]}};return ia([...io,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?[ra(`traces`,`traces`,`cur`,{filter:{traceIds:n},limit:n.length})]:[]},model(e){let t=F(e,`chart`,48);return{meta:ao(e),query:e.params.q??``,slowMs:e.options.slowQueryMs,totals:Tu(sa(e,`q`)),prev:Tu(sa(e,`q.prev`)),slowest:P(e,`q`)[0]?.agg.top??null,starts:Ee(e.window,48),chart:{count:la(t),avgMs:ua(t),slow:da(t,0),prevCount:la(F(e,`chart.prev`,48))},services:[...P(e,`svc`)].sort(ma(e=>e.agg.n)).map(e=>Eu(e,!1)),endpoints:[...P(e,`ep`)].sort(ma(e=>e.agg.n)).map(e=>Eu(e,!0)),traces:fa(e,`traces`).items}}},Ou=e=>Object.fromEntries(as.map(t=>[t,e(t)]));function ku(e,t){return{views:la(F(e,`views`,48)),prevViews:la(F(e,`views.prev`,48)),...Ou(n=>ua(F(e,`m.series`,48,k(t,n))))}}var Au={needs:e=>{let t=e.params.route??``,n={filter:{keys:[t]}},r={filter:{prefix:k(t,``)}};return ia([...io,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?[ra(`loads`,`traces`,`cur`,{filter:{traceIds:n},limit:n.length})]:[]},model(e){let t=e.params.route??``,n=ca(e,`m`);return{meta:ao(e),route:t,views:sa(e,`r`).n,prevViews:sa(e,`r.prev`).n,averages:Ou(e=>{let r=n.get(k(t,e));return r?j(r):null}),starts:Ee(e.window,48),chart:ku(e,t),components:[...P(e,`rc`)].sort(ma(e=>e.agg.n)).map(e=>({name:Yi(e.key)[0],count:e.agg.n})),loads:fa(e,`loads`).items}}},ju=10,Mu=e=>[$a(`rel.all`,e),M(`rel.cur`,`rel`,`cur`,{filter:{parts:[e,null]},hist:!0}),Dc(e)];function Nu(e,t){let n=eo(e,`rel.all`),r=ca(e,`rel.cur`),i=P(e,`life`).map(e=>e.agg.firstMs);return n.slice(0,ju).map(e=>{let a=r.get(k(t,e.version)),o=ro(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?Ai(a.hist,s,95):null,newErrors:i.filter(t=>t>=e.firstMs&&t<o).length}})}var Pu=50,Fu=10,Iu=10,Lu=new Set([`api`,`worker`]),Ru=e=>Lu.has(e);function zu(e){let t=gr(e);return[M(`err.g`,`err.g`,`cur`,{top:!0,filter:{prefix:`${t}|`},order:{by:`n`,desc:!0,limit:Pu}}),M(`err.cur`,`err.s`,`cur`,{filter:{keys:[t]}}),M(`err.prev`,`err.s`,`prev`,{filter:{keys:[t]}}),ra(`slowest`,`requests`,`cur`,{filter:{service:e},sort:{key:`duration`,desc:!0},limit:Fu,count:!0}),ra(`logs`,`logs`,`cur`,{filter:{logService:t},limit:Iu,count:!0}),M(`log.s`,`log.s`,`cur`,{filter:{parts:[t,null]}}),...Mu(t)]}function Bu(e){return{groups:[...P(e,`err.g`)].sort(ma(e=>e.agg.n)).map(e=>Vc(e)),total:aa(e,`err.g`),exceptions:sa(e,`err.cur`).n,prevExceptions:sa(e,`err.prev`).n}}function Vu(e,t){let n=fa(e,`logs`),r=ca(e,`log.s`),i=e=>r.get(k(gr(t),e))?.n??0;return{rows:n.items,total:n.total??n.items.length,warnings:i(`warn`),errors:i(`error`)+i(`critical`)}}function Hu(e){let t=F(e,`chart`,48),n=la(F(e,`chart.prev`,48));return{requests:la(t),errors:t.map(e=>e.err),avgMs:ua(t),p95Ms:t.map(e=>e.hist&&e.n?Ai(e.hist,e.n,95):null),prevRequests:n}}var Uu={groups:[],total:0,exceptions:0,prevExceptions:0},Wu={rows:[],total:0,warnings:0,errors:0},Gu={needs:()=>ia([...io,...Pl(`cur`),...Pl(`prev`),...Fl()]),followUp(e,t){let n=Ts(Ll(t,`cur`),e.params.service??null);return n?[M(`svc.ep`,`svc.ep`,`cur`,{filter:{prefix:Ss(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]}}),...Ru(n.kind)?[...zu(n.name),Ol(n.key)]:[]]:[]},model(e){let t=Ts(Ll(e,`cur`),e.params.service??null),n=!!t&&Ru(t.kind),r=fa(e,`slowest`);return{meta:ao(e),row:t,prevRow:t?Ll(e,`prev`).find(e=>e.key===t.key)??null:null,owned:n,starts:Ee(e.window,48),chart:Hu(e),endpoints:t?Cs([...P(e,`svc.ep`)].sort(ma(e=>e.agg.n)),t.key):[],endpointCount:aa(e,`svc.ep`),...t?ws(Rl(e),t.name):{incoming:[],outgoing:[]},errors:n?Bu(e):Uu,slowest:r.items,requestCount:r.total??r.items.length,logs:n&&t?Vu(e,t.name):Wu,versions:n&&t?Nu(e,gr(t.name)):[],apdex:n&&t?kl(e).get(gr(t.name))??null:null}}},Ku=24,qu=10;function Ju(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 Yu(e,t,n){return{row:t,endpoints:Cs([...P(e,`svc.ep`)].sort(ma(e=>e.agg.n)),t.key),starts:Ee(e.window,Ku),traffic:la(F(e,`traffic`,Ku)),...ws(n,t.name)}}var Xu={needs:()=>ia([...io,...Pl(`cur`),...Pl(`prev`),...Fl(),N(`served`,`svc`,`cur`,Ku,{filter:{prefix:`api:`}})]),followUp(e,t){let n=Ts(Ll(t,`cur`),e.params.service??null);if(!n)return[];let r={by:`n`,desc:!0,limit:qu};return[{type:`groups`,id:`svc.ep`,kind:`svc.ep`,window:`cur`,filter:{prefix:Ss(n.key)},order:r},N(`traffic`,`svc`,`cur`,Ku,{filter:{keys:[n.key]}})]},model(e){let t=Ll(e,`cur`),n=Rl(e),r=Ts(t,e.params.service??null),i=F(e,`served`,Ku);return{meta:ao(e),rows:t,edges:n,summary:Ju(t),prevSummary:Ju(Ll(e,`prev`)),served:la(i),failed:i.map(e=>e.err),selected:r?Yu(e,r,n):null}}},Zu=()=>({groups:{},series:{},lists:{},traces:{}}),Qu=864e5,$u=/^cur-(\d+)([dw])$/;function ed(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*Qu,to:e.window.from};let n=$u.exec(t),r=n?Number(n[1])*(n[2]===`w`?7:1)*Qu:0;return{from:e.window.from-r,to:e.window.to-r}}var td=e=>e.replace(/[A-Z]/g,e=>e.toLowerCase());function nd(e,t){if(!t)return!0;if(t.contains?.some(t=>!td(e).includes(td(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=Yi(e);return n.length===t.parts.length&&t.parts.every((e,t)=>e===null||e===n[t])}function rd(e,t){return t===`avg`?j(e)??-1/0:t===`n`||t===`sum`||t===`lastMs`?e[t]:e.c[Number(t.slice(1))]??0}function id(e,t,n){let r=n?-1:1;return[...e].sort((e,n)=>(rd(e.agg,t)-rd(n.agg,t))*r||(e.key<n.key?-1:+(e.key>n.key)))}var ad=6e4,od={"15m":ad,"1h":2.5*ad,"6h":15*ad,"24h":30*ad,"7d":240*ad,"30d":720*ad};function sd(e){let t=od[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 cd=(e,t)=>ed({window:e.window,prev:e.window,now:e.window.to},t),ld=500,R=200,z=[{id:`svc`,kind:`svc`},{id:`ep`,kind:`svc.ep`}],B=(e,t)=>`pb.${e}.${String(t)}`,ud=()=>ia([...io,...Pl(`cur`),...Fl(),...ya(),M(`pb.ver`,`rel`,`cur`),M(`pb.err`,`err.g`,`cur`,{top:!0,order:{by:`n`,desc:!0,limit:ld}})]);function dd(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,R).map(e=>e.key)}function fd(e,t){let n=sd(e),r=[`cur`,..._a(ba(t))],i=z.flatMap(e=>r.map(t=>N(B(e.id,t),e.kind,cd(n,t),n.buckets,{split:!0,hist:!0}))),a=P(t,`pb.ver`).map(e=>e.key).slice(0,R),o=dd(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 pd=e=>e.reduce((e,t)=>e+t.n,0);function md(e,t){let n=_a(t);return z.flatMap(t=>{let r=e.series[B(t.id,`cur`)]?.byKey??{},i=n.map(n=>e.series[B(t.id,n)]?.byKey??{});return Object.entries(r).map(([e,t])=>({key:e,cur:t,samples:i.map(t=>t[e]).filter(e=>!!e&&pd(e)>0)}))})}function hd(e,t){return _a(t).filter(t=>Object.values(e.series[B(`svc`,t)]?.byKey??{}).some(e=>pd(e)>0)).length}function gd(e){let t=new Set(P(e,`pb.ver.before`).map(e=>e.key));return P(e,`pb.ver`).map(e=>{let[n=``,r=``]=Yi(e.key);return{service:n,version:r,firstMs:e.agg.firstMs,isNew:!t.has(e.key)}})}function _d(e,t){let n=new Set(P(e,`pb.err.before`).map(e=>e.key)),r=new Set(dd(e,t));return P(e,`pb.err`).map(e=>{let t=Vc(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 vd=9e5,yd=e=>Ii(e)?e:`medium`,bd=(e,t)=>e.services.some(e=>e.row===t||e.name===t);function xd(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||bd(e,a))&&o(e)<=2*n).sort((e,t)=>o(e)-o(t)||t.startMs-e.startMs)[0]??null}function Sd(e){let t=new Map(P(e,Ml(`cur`)).map(e=>[e.key,e.agg.top]));return e=>t.get(e)??null}function Cd(e){let t=ba(e),{window:n,buckets:r,bucketMs:i}=sd(e),a=Ee(n,r),o=yd(e.params.sensitivity),s=Fi[o]??Li,c=Ta(md(e,t),{starts:a,bucketMs:i,spreads:s,rowInfo:Sd(e)}),l=Math.max(2*i,vd),u=Wa(c,{versions:gd(e),errors:_d(e,e),map:Ea(Rl(e)),nearMs:l,bucketMs:i}),d=hd(e,t),f=e.params.service?u.filter(t=>bd(t,e.params.service)):u;return{meta:ao(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:xd(u,e.params,l)}}var wd={needs:()=>ud(),followUp:fd,model:Cd},Td=[16,24,48],Ed=100,Dd=200,Od=new Set([`api`,`web`]),kd=e=>Td.find(t=>String(t)===e.buckets)??24,Ad=e=>({requests:e.n,errors:e.err,errorRatePercent:we(e.err,e.n),avgMs:j(e),p95Ms:e.hist&&e.n?Ai(e.hist,e.n,95):null});function jd(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 Md=(e,t)=>t?[t]:e.filter(e=>Od.has(e.kind)).slice(0,Ed);function Nd(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(Ss(t.key).length),...Ad(n)}))).filter(e=>!n||e.endpoint===n).sort((e,t)=>t.requests-e.requests||e.endpoint.localeCompare(t.endpoint))}var Pd={needs:()=>ia([...io,...Pl(`cur`)]),followUp(e,t){let n=Ll(t,`cur`),r=Ts(n,e.params.service??null);if(e.params.service&&!r)return[];let i=Md(n,r).map((e,t)=>M(`ep.${t}`,`svc.ep`,`cur`,{filter:{prefix:Ss(e.key)},hist:!0,order:{by:`n`,desc:!0,limit:Dd}}));return[jd(r,e.params.endpoint??``,kd(e.params)),...i]},model(e){let t=kd(e.params),n=Ll(e,`cur`),r=Ts(n,e.params.service??null),i=!e.params.service||!!r,a=i?F(e,`ts`,t):[],o=Ee(e.window,t);return{meta:ao(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],...Ad(e)})),totals:Ad(oa(a)),endpoints:i?Nd(e,Md(n,r),e.params.endpoint??``):[]}}},Fd=`wizelens-uptime`,Id=[`GET`,`HEAD`,`POST`,`PUT`,`PATCH`,`DELETE`,`OPTIONS`],Ld=`200-299`,Rd=(e,t)=>e===null?null:Math.floor((e-t)/864e5),zd=(e,t)=>{let n=Rd(e,t);return n!==null&&n<14},Bd=e=>`/uptime/${e}`;function Vd(e){let t=/^\S+ \/uptime\/([A-Za-z0-9_-]+)$/.exec(e);return t?t[1]:null}var Hd=`api:${Fd}`;function Ud(e){return e?{keys:Id.map(t=>k(Hd,`${t} ${Bd(e)}`))}:{prefix:Ss(Hd)}}function Wd(e){let t=new Map,n=Ss(Hd);for(let{key:r}of P(e,`ep`)){let e=Vd(r.slice(n.length));e&&t.set(e,[...t.get(e)??[],r])}return t}function Gd(e,t,n){let r=oa(P(e,`ep`).filter(e=>n.includes(e.key)).map(e=>e.agg)),i=I(e,`chart`,48,n);return{checkId:t,runs:r.n,failures:r.err,avgMs:j(r),avgMsSeries:ua(i),runSeries:i.map(e=>e.n),failSeries:i.map(e=>e.err)}}function Kd(e){let t=sa(e,`ep`),n=sa(e,`ep.prev`);return{runs:t.n,failures:t.err,avgMs:j(t),prevRuns:n.n,prevFailures:n.err,prevAvgMs:j(n)}}var qd={needs:e=>{let t=Ud(e.params.check||void 0);return ia([...io,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=[...Wd(e)].map(([t,n])=>Gd(e,t,n)).sort((e,t)=>t.runs-e.runs||(e.checkId<t.checkId?-1:1));return{meta:ao(e),starts:Ee(e.window,48),checks:t,totals:Kd(e)}}},Jd=(e,t)=>({user:e,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?Ai(t.hist,t.n,95):null,lastSeenMs:t.lastMs}),Yd=25,Xd={needs:e=>{let{page:t,size:n}=lo(e.params,Yd),r=e.params.q?.trim(),i=r?{filter:{contains:[r]}}:{};return ia([...io,M(`usr`,`usr`,`cur`,{hist:!0,...i,order:{by:`n`,desc:!0,limit:n,offset:(t-1)*n}})])},model:e=>({meta:ao(e),users:[...P(e,`usr`)].sort(ma(e=>e.agg.n)).map(e=>Jd(e.key,e.agg)),total:aa(e,`usr`),...lo(e.params,Yd)})},Zd={needs:e=>{let t=e.params.user??``;return ia([...io,M(`usr`,`usr`,`cur`,{hist:!0,filter:{keys:[t]}}),ra(`recent`,`requests`,`cur`,{filter:{user:t},sort:{key:`time`,desc:!0},limit:25,aggregate:{buckets:48}}),ra(`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=>Yi(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=fa(e,`recent`).aggregate?.series??[],i=new Map(P(e,`groups`).map(e=>[e.key,Vc(e)])),a=P(e,`u.groups`).flatMap(e=>{let t=i.get(Yi(e.key)[0]);return t?[{group:t,count:e.agg.n}]:[]});return{meta:ao(e),user:t,totals:n?.n?Jd(t,n):null,starts:Ee(e.window,48),chart:{requests:r.map(e=>e.n),errors:r.map(e=>e.err),avgMs:ua(r)},recent:fa(e,`recent`).items,slowest:fa(e,`slowest`).items,errors:a}}},Qd={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 $d(e){let t=al(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 ef=(e,t)=>e.mutedUntilMs!==null&&e.mutedUntilMs>t,tf=[`B`,`KB`,`MB`,`GB`,`TB`];function nf(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 rf(e){let t=0;for(;Math.abs(e)>=1024&&t<tf.length-1;)e/=1024,t++;return`${nf(e)} ${tf[t]}`}function af(e){let t=Math.abs(e);return t>=60?`${nf(e/60)} min`:t>=1?`${nf(e)} s`:t>=.001||t===0?`${nf(e*1e3)} ms`:`${nf(e*1e6)} µs`}var of=e=>e.replace(/\{([^}]*)\}/g,`$1`);function sf(e,t){if(e==null||!Number.isFinite(e))return`—`;if(t===`1`||t===`s/s`||t===`%`)return`${nf(t===`%`?e:e*100)}%`;if(t===`By`)return rf(e);if(t===`By/s`)return`${rf(e)}/s`;if(t===`s`)return af(e);if(t===`ms`)return af(e/1e3);if(t===`us`||t===`µs`)return af(e/1e6);if(t===`ns`)return af(e/1e9);if(t===`/s`)return`${nf(e)}/s`;let n=of(t);return n?`${nf(e)} ${n}`:nf(e)}var cf=[[/^(process|system|v8js|nodejs|dotnet|jvm|go|python|cpython|container)\./,`runtime`],[/^(http|kestrel|aspnetcore|signalr|url)\./,`http`],[/^db\./,`database`],[/^messaging\./,`messaging`],[/^rpc\./,`rpc`]],lf=[`runtime`,`http`,`database`,`messaging`,`rpc`,`custom`],uf=e=>cf.find(([t])=>t.test(e))?.[1]??`custom`,df=e=>e.kind===`histogram`?`percentiles`:e.kind===`sum`&&e.monotonic?`rate`:`value`,ff=(e,t)=>t===`rate`?`${e===`1`?``:e}/s`:e,pf=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]);function mf(e,t,n){return n?e:t?e.count<t.count||!pf(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 hf(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=pf(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 gf(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]?hf(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 _f(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 vf(e,t){return!e||e.count<=0?null:t===`avg`?e.sum/e.count:_f(e,t===`p50`?.5:t===`p95`?.95:.99)}var yf=(e,t)=>e.display===`percentiles`?e.hists.map(e=>vf(e,t)):e.values,bf={rateDelta:0,rateMs:0};function xf(e,t){if(e.kind!==`sum`||!e.monotonic)return bf;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}:bf}return!t||t.lastValue===null?bf:{rateDelta:n>=t.lastValue?n-t.lastValue:n,rateMs:e.timeMs-t.lastMs}}function Sf(e,t,n){if(!e.histogram)return null;let r=e.temporality===`delta`;if(!r&&n)return null;let i=mf(e.histogram,t?.lastHist??void 0,r);return i&&i.count>0?hf(null,i):null}function Cf(e,t){let n=t!==null&&e.timeMs<=t.lastMs,r=e.value??null,i=n&&e.temporality!==`delta`?bf:xf(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:Sf(e,t,n)},next:n?t:{lastMs:a,lastValue:r,lastHist:e.histogram??null}}}var wf=(e,t)=>e===null?t:t===null?e:Math.min(e,t),Tf=(e,t)=>e===null?t:t===null?e:Math.max(e,t);function Ef(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:wf(e.vmin,t.vmin),vmax:Tf(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?hf(e.hist,t.hist):e.hist}}function Df(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 Of(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}=Cf(e,i);r.push({timeMs:e.timeMs,row:t}),i=n}return{rows:r,state:i}}function kf(e,t,n,r){if(r.mode===`split`)return ac(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 Af(e,t,n,r){if(r)return kf(Math.floor(e/r.tier.ms)*r.tier.ms,t,n,r);let i=Le(e,t,n);return i<0?[]:[{index:i,share:1}]}function jf(e,t,n){for(let{index:r,share:i}of n)e[r]=Ef(e[r]??null,Df(t,i))}var Mf=e=>Array(e).fill(null),Nf=e=>e?.hist&&e.hist.count>0?e.hist:null;function Pf(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)=>Nf(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 Ff(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 If(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 Lf(e){let t=new Map;for(let n of e){let e=Ff(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:If(e,t.reduce((e,t)=>t.timeMs>=e.timeMs?t:e)),rows:Of(t,null).rows}))}function Rf(e,t,n,r){let i=null,a=r.tiers?rc(t,n,1/0):[];for(let{timeMs:n,row:o}of e){if(!r.tiers){n>=t.from&&n<t.to&&(i=Ef(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=Ef(i,Df(o,e.weight)))}return i}function zf(e,t,n,r){let i=Mf(n);for(let{timeMs:a,row:o}of e)jf(i,o,Af(a,t,n,r));return i}var Bf=(e,t,n,r)=>r.tiers?ic(e,t,n,1/0):null;function Vf(e,t,n,r,i={}){let a=i.tiers?Qs(vi(t,n,r),n):vi(t,n,r),o=Bf(a,24,n,i),s=Bf(a,60,n,i),c=Lf(e).flatMap(e=>{let t=Rf(e.rows,a,n,i);if(!t||t.cnt<=0)return[];let r=zf(e.rows,a,24,o);return[{...e.info,total:t,spark:r,line:zf(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 Hf={last:`Newest value`,avg:`Average`,max:`Highest`,p95:`p95`,p99:`p99`,rate:`Per second`},Uf=[`level`,`exact`,`service`,`category`,`q`,`pattern`,`origin`],Wf=500;function Gf(e){let t={};if(!e||typeof e!=`object`)return t;let n=e;for(let e of Uf)typeof n[e]==`string`&&n[e]&&(t[e]=n[e].slice(0,Wf));return t}function Kf(e){let t=new URLSearchParams(Gf(e)).toString();return t?`#/logs?${t}`:`#/logs`}function qf(e){let t=/^#\/logs(?:\?(.*))?$/.exec(e);return t?Gf(Object.fromEntries(new URLSearchParams(t[1]??``))):null}var Jf={overview:Xl,requests:pu,traces:es,database:Tc,rendering:au,errors:Yc,logs:dl,"log-patterns":vl,"log-chart":pl,services:Xu,service:Gu,error:Cu,endpoint:bu,query:Du,route:Au,insights:nl,badges:uc,uptime:qd,problems:wd,users:Xd,user:Zd,traffic:Pd},Yf=e=>Jf[e],Xf=(e,t,n)=>lc(Yf(e),t,n),Zf=[{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`}],Qf=10,V=[`p50`,`p95`,`p99`,`avg`];function $f(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 ep=e=>[...e].reverse().find(e=>e!=null)??null,tp=e=>V.includes(e.stat)?e.stat:`p95`,np=(e,t)=>e.filter(e=>!t||e.service===t);function rp(e,t,n){let r=t===`spark`?24:60;return gf(np(e,n).map(e=>Pf(df(e),e[t],r)),r)}function ip(e,t,n){let r=np(e,n);return r.length===0?null:df(r[0])===`value`?r.reduce((e,t)=>e+(t.total.lastV??0),0)/r.length:ep(yf(rp(r,`line`),t))}function ap(e,t,n){let r=t.reduce((e,t)=>t.total.lastMs>e.total.lastMs?t:e),i=df(r),a=ff(r.unit,i),o=yf(rp(t,`spark`),n),s=ip(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:uf(e),services:c,series:t.length,last:s,lastText:sf(s,a),spark:o}}function op(e,t){if(t===`service`)return e.service;let n=e.attributes[t];return n==null?`(none)`:String(n)}function sp(e,t){let n=Object.entries(e.attributes).map(([e,t])=>`${e}=${t}`);return t&&n.unshift(e.service),n.join(` · `)||e.service}function cp(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?op(n,t):sp(n,i),a=r.get(e);a?a.push(n):r.set(e,[n])}let a=[...r].map(([e,t])=>{let r=yf(rp(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,Qf).map(({label:e,values:t})=>({label:e,values:t})),hidden:Math.max(0,a.length-Qf)}}function lp(e){let t=e.filter(e=>e!=null);return t.length===0?{last:null,min:null,max:null,avg:null}:{last:ep(e),min:Math.min(...t),max:Math.max(...t),avg:t.reduce((e,t)=>e+t,0)/t.length}}function up(e,t,n,r){let i=tp(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=rp(t,`line`),u=l.display===`percentiles`,d=(n.to-n.from)/60/1e3;return{...ap(e,t,i),stat:i,groupBy:c,groupKeys:s,buckets:Ee(n,60),...cp(t,c,i),percentiles:u?Object.fromEntries(V.map(e=>[e,l.hists.map(t=>vf(t,e))])):null,countRate:u?l.hists.map(e=>e?e.count/d:null):null,summary:{...lp(yf(l,i)),last:ip(t,i)}}}function dp(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])=>op(e,t)===n))}function fp(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(op(n,e));return Object.fromEntries(Object.entries(t).map(([e,t])=>[e,[...t].sort().slice(0,50)]))}function pp(e,t){return t.flatMap(t=>{let n=Zf.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=rp(i,`spark`,t),o=ff(i[0].unit,a.display),s=yf(a,n.stat??`p95`),c=ip(i,n.stat??`p95`,t);return[{key:n.key,label:n.label,metric:r,unit:o,last:c,lastText:sf(c,o),spark:s}]});return n.length>0?[{service:t,stats:n}]:[]})}function mp(e,t,n){let r=dp(t,n.params.where),i=up(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:fp(t)}}function hp(e){let t=e.params.service||``,n=$f(e.series),r=tp(e.params),i=(e.params.q??``).toLowerCase(),a=[...n].filter(([e])=>!i||e.toLowerCase().includes(i)).map(([e,t])=>ap(e,t,r)).sort((e,t)=>lf.indexOf(e.area)-lf.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?mp(e.params.metric,o,e):null,runtime:pp(n,t?[t]:e.services)}}var gp=e=>hp(Vf(e.points,e.range,e.now,e.params)),_p=(e,t)=>e<t?-1:+(e>t),vp=e=>(t,n)=>e(n)-e(t)||_p(t.traceId,n.traceId),yp=(e,t)=>(!t.traceId||e===t.traceId)&&(!t.traceIds||t.traceIds.includes(e));function bp(e,t,n){let r=e.flatMap(e=>e.request&&be(e.request.startMs,n)&&yp(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 xo(r.sort(vp(e=>e.startMs)),i)}function xp(e,t){return To(e,{key:wo(t.sort.key)?t.sort.key:`time`,desc:t.sort.desc})}function Sp(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)&&yp(e.traceId,t)&&a(e.trace)&&Oo(e.trace,t)?[e.trace]:[]).sort(vp(e=>e.startMs));return r.sort.key===`duration`?o.sort((e,t)=>(r.sort.desc?t.durationMs-e.durationMs:e.durationMs-t.durationMs)||vp(e=>e.startMs)(e,t)):r.sort.desc?o:o.reverse()}var Cp=e=>Number(e.key.slice(e.key.lastIndexOf(`:`)+1));function wp(e,t,n,r){let i=di(e.flatMap(e=>yp(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||_p(e.traceId,t.traceId)||Cp(e)-Cp(t)),r?i:i.reverse()}function Tp(e,t,n){return e.flatMap(e=>yp(e.traceId,t)?e.critical.filter(e=>be(e.startMs,n)&&(!t.service||e.service===t.service)):[]).sort((e,t)=>t.durationMs-e.durationMs||vp(e=>e.startMs)(e,t)||_p(e.spanId,t.spanId))}function Ep(e,t,n){let r={...qi.req,hist:!1},i=$i(),a=Array.from({length:n},()=>$i());for(let o of e){let e=A(`req`,``,o.startMs,{err:+!!Ln(o),sum:o.durationMs,c:[o.dbCount,+(o.insights>0),o.insights]});ta(i,e,o.traceId,r);let s=Le(o.startMs,t,n);s>=0&&ta(a[s],e,o.traceId,r)}return{total:na(i,{times:!1}),series:a.map(e=>na(e,{times:!1}))}}function Dp(e,t,n){let r={...qi.log},i=$i(),a=Array.from({length:n},()=>$i());for(let o of e){let e=A(`log`,``,o.timeMs,{err:+(ui(o.level)>=ui(`error`))});ta(i,e,o.traceId,r);let s=Le(o.timeMs,t,n);s>=0&&ta(a[s],e,o.traceId,r)}return{total:na(i,{times:!1}),series:a.map(e=>na(e,{times:!1}))}}function Op(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 kp(e,t,n){let r=t.filter;if(t.table===`traces`)return Op(Sp(e,r,n,t),t);if(t.table===`logs`){let i=wp(e,r,n,t.sort.desc),a=Op(i,t);return t.aggregate&&(a.aggregate=Dp(i,n,t.aggregate.buckets)),a}if(t.table===`critical`)return Op(Tp(e,r,n),t);let i=bp(e,r,n),a=Op(xp(i,t),t);return t.aggregate&&(a.aggregate=Ep(i,n,t.aggregate.buckets)),a}function Ap(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 jp(e,t,n){let r=qi[t.kind],i=new Map;for(let{c:a,traceId:o}of e){if(!be(a.timeMs,n)||!nd(a.key,t.filter))continue;let e=i.get(a.key);e||i.set(a.key,e=$i(r.hist)),ta(e,a,o,r)}let a=e=>e.n>.5&&(!t.having||rd(e,t.having.by)>=t.having.min),o=[...i].filter(([,e])=>a(e)).map(([e,n])=>({key:e,agg:na(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:id(o,t.order.by,t.order.desc).slice(s,s+t.order.limit),total:o.length}}function Mp(e,t,n){let r=qi[t.kind],i=()=>Array.from({length:t.buckets},()=>$i(r.hist)),a=t.split?{}:{"":i()};for(let{c:o,traceId:s}of e){let e=nd(o.key,t.filter)?Le(o.timeMs,n,t.buckets):-1;e<0||ta((a[t.split?o.key:``]??=i())[e],o,s,r)}let o=Object.entries(a).map(([e,n])=>[e,n.map(e=>na(e,{hist:t.hist,times:!1}))]);return{byKey:Object.fromEntries(o)}}function Np(e,t,n){let r=t.windows.map(e=>ed(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 Pp(e,t={}){let n=null,r=null,i=()=>n??=e.map(e=>Us(e,t)),a=e=>(r??=Ap(i())).get(e)??[];return{facts:i,runSync(t,n){let r=Zu();for(let o of t)o.type===`groups`?r.groups[o.id]=jp(a(o.kind),o,ed(n,o.window)):o.type===`series`?r.series[o.id]=Mp(a(o.kind),o,ed(n,o.window)):o.type===`list`?r.lists[o.id]=kp(i(),o,ed(n,o.window)):r.traces[o.id]=Np(e,o,n);return r}}}var Fp=[`requests`,`traces`,`spans`,`logs`],Ip=Fp,Lp=[`requests`,`traces`,`spans`],Rp={service:{type:`text`,help:`Service name`,kinds:Ip},env:{type:`text`,help:`Environment`,kinds:Ip},trace:{type:`id`,help:`Trace id, or its start`,kinds:Ip},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:Lp},path:{type:`text`,help:`URL path`,kinds:Lp},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:Lp},duration:{type:`duration`,help:`Duration: 250ms, 1.5s, 2m`,kinds:Lp},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:Ip},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:Ip}},zp=e=>Object.hasOwn(Rp,e),Bp=class extends Error{start;end;constructor(e,t,n){super(e),this.start=t,this.end=n,this.name=`SearchError`}},Vp={chars:2e3,terms:64,depth:16},Hp=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),Up=e=>RegExp(`^${e.map(e=>e===null?`[\\s\\S]*`:Hp(e)).join(``)}$`,`i`);function Wp(e,t,n){return t===`>`?e>n:t===`>=`?e>=n:t===`<`?e<n:t===`<=`?e<=n:e===n}var Gp=e=>e!=null&&e!==``;function Kp(e){let t=typeof e==`string`&&e.trim()?Number(e):e;return typeof t==`number`&&Number.isFinite(t)?t:null}function qp(e,t,n){switch(e.type){case`exists`:return Gp;case`string`:{let t=e.value.toLowerCase();return n?e=>Gp(e)&&String(e).toLowerCase().startsWith(t):e=>Gp(e)&&String(e).toLowerCase()===t}case`pattern`:{let t=Up(e.pieces);return e=>Gp(e)&&t.test(String(e))}case`number`:return n=>{let r=Kp(n);return r!==null&&Wp(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=ui(e.value);return e=>typeof e==`string`&&ui(e)>=0&&Wp(ui(e),t,n)}default:return t=>typeof t==`string`&&t===e.value}}var Jp=e=>t=>Array.isArray(t)?t.some(e):e(t);function Yp(e){if(e.field===`tag`)return()=>!1;let t=Rp[e.field].kinds,n=e.field===`status`&&e.value.type===`spanStatus`?`outcome`:e.field,r=Jp(qp(e.value,e.cmp,Rp[e.field].type===`id`));return e=>t.includes(e.kind)&&r(e.fields[n])}function Xp(e){let t=qp(e.value,e.cmp,!1);return n=>n.attrs.some(n=>Object.hasOwn(n,e.key)&&t(n[e.key]))}function Zp(e){if(!e)return()=>!0;switch(e.type){case`and`:{let t=e.items.map(Zp);return e=>t.every(t=>t(e))}case`or`:{let t=e.items.map(Zp);return e=>t.some(t=>t(e))}case`not`:{let t=Zp(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 Yp(e);default:return Xp(e)}}var Qp=e=>e.flatMap(e=>e==null||e===``?[]:[String(e).toLowerCase()]),$p=(e,t)=>e[t]===void 0||e[t]===null?null:String(e[t]),em=e=>Kp(e),tm=e=>[e.statusMessage,...e.events.filter(e=>e.name===`exception`).map(e=>$p(e.attributes,`exception.message`))],nm=oi.indexOf(`error`);function rm(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 im(e,t){let n=e.attributes,r=$p(n,`url.path`)??$p(n,`url.full`),i=rm(r);return{kind:`spans`,text:Qp([e.name,r,$p(n,`db.query.text`),...tm(e)]),fields:{service:e.service,env:t,trace:e.traceId,span:e.spanId,name:e.name,method:$p(n,`http.request.method`),path:i,route:$p(n,`http.route`),status:em(n[`http.response.status_code`]),outcome:e.status,duration:e.durationMs,category:e.category,kind:e.kind,user:$p(n,`enduser.id`),error:ge(e)},attrs:[n]}}function am(e,t){return{kind:`logs`,text:Qp([e.message,e.category,e.traceName]),fields:{service:e.service===gr(`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:oi.indexOf(e.level)>=nm},attrs:[e.attributes]}}function om(e,t){let n=sm(e);return{kind:`traces`,text:Qp([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:rm(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 sm=e=>e.spans.flatMap(tm);function cm(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:Qp([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:rm(e.path),route:a,status:e.status,outcome:i?`error`:`ok`,duration:e.durationMs,user:e.user,error:i},attrs:t}}var lm=e=>typeof e==`string`?e:null;function um(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:lm(n.method),path:lm(n.path),route:lm(n.route),httpStatus:typeof n.status==`number`?n.status:null,user:lm(n.user)}}var dm=e=>e.key.slice(e.key.lastIndexOf(`:`)+1);function fm(e,t){let n=Nn(e);if(!n)return[];let r=ts(n);return[{kind:`requests`,timeMs:r.startMs,owner:``,doc:cm(r,e.spans.map(e=>e.attributes),t,sm(e)),item:()=>r}]}function pm(e,t,n){return t===`requests`?fm(e,n):t===`traces`?Ct(e.traceId)?[]:[{kind:t,timeMs:e.startMs,owner:``,doc:om(e,n),item:()=>ns(e)}]:t===`logs`?li([e]).map(e=>({kind:t,timeMs:e.timeMs,owner:dm(e),doc:am(e,n),item:()=>e})):e.spans.map(e=>{let r=im(e,n);return{kind:t,timeMs:e.startMs,owner:e.spanId,doc:r,item:()=>um(r,e.startMs)}})}var mm=e=>btoa(JSON.stringify([e.timeMs,e.traceId,e.owner]));function hm(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 gm(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 _m(e,t,n){let r=e.slice(0,t),i=r[r.length-1];return{rows:r,next:e.length>t&&i?mm(n(i)):null}}var vm=e=>Math.max(1,Math.min(200,Math.floor(e??50)));function ym(e,t){let n=Zp(t.node),r=vm(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 pm(r,t.kind,t.env))e.timeMs<t.window.from||e.timeMs>=t.window.to||t.cursor&&gm(i(e),t.cursor)<=0||n(e.doc)&&a.push(e);a.sort((e,t)=>gm(i(e),i(t)));let{rows:s,next:c}=_m(a,r,i);return{kind:t.kind,items:s.map(e=>e.item()),next:c}}var bm={status:[`ok`,`error`,`unset`,`2xx`,`3xx`,`4xx`,`5xx`],level:oi,error:[`true`,`false`],kind:[`server`,`client`,`internal`,`producer`,`consumer`]},xm={service:`spans`,env:`traces`,name:`spans`,method:`spans`,path:`spans`,route:`spans`,category:`spans`,user:`spans`},Sm=(e,t)=>e.toLowerCase().startsWith(t.toLowerCase()),Cm=e=>Object.entries(Rp).filter(([t])=>Sm(t,e)).map(([e,t])=>({value:e,help:t.help})),wm=(e,t)=>zp(e)?(bm[e]??[]).filter(e=>Sm(e,t)).map(e=>({value:e})):[];function Tm(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 Em(e,t){let n=new Map,r=t.field===null?t.prefix.replace(/^@/,``):t.prefix,i=(e,t=String(e))=>{e!=null&&e!==``&&Sm(String(e),r)&&n.set(t,(n.get(t)??0)+1)},a=t.field,o=a===null||a.startsWith(`@`)?`spans`:zp(a)?xm[a]:void 0;if(!o)return n;for(let n of e)for(let e of pm(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 Dm(e,t){return[...t.field===null?t.prefix.startsWith(`@`)?[]:Cm(t.prefix):wm(t.field,t.prefix),...Tm(Em(e,t),t.limit)].slice(0,t.limit)}var Om=/\s/,km=new Set([`OR`,`AND`,`NOT`]);function Am(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 Bp(`This quote is never closed.`,t,e.length);return r+1}function jm(e,t){let n=[],r=t;for(;r<e.length&&!Om.test(e[r])&&e[r]!==`(`&&e[r]!==`)`;)e[r]===`"`?r=Am(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 Mm=e=>e.every(e=>!e.lit)?e.map(e=>e.c).join(``):null;function Nm(e){let t=[],n=0;for(;n<e.length;){let r=e[n];if(Om.test(r))n++;else if(r===`(`||r===`)`)t.push({type:r,start:n,end:++n});else{let i=r===`-`&&n+1<e.length&&!Om.test(e[n+1]),{chars:a,end:o}=jm(e,i?n+1:n),s=Mm(a);if(!i&&s!==null&&km.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 Bp(`Unexpected character.`,n,n+1);n=o}}return t}var Pm=/^((?:\d+(?:\.\d+)?|\.\d+)(?:e[+-]?\d+)?)(us|µs|ms|s|m|h)?$/i,Fm={us:.001,µs:.001,ms:1,s:1e3,m:6e4,h:36e5},Im=/^-?(\d+(?:\.\d+)?|\.\d+)(e[+-]?\d+)?$/i,Lm={warning:`warn`,err:`error`,fatal:`critical`,crit:`critical`},Rm=new Set([`ok`,`error`,`unset`]),zm=class extends Error{},Bm=e=>e.map(e=>e.c).join(``);function Vm(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 Hm(e){let t=Pm.exec(e.trim());if(!t)throw new zm(`"${e}" is not a duration. Use 250ms, 1.5s, or 2m.`);return Number(t[1])*Fm[(t[2]??`ms`).toLowerCase()]}function Um(e){let t=e.toLowerCase(),n=Lm[t]??oi.find(e=>e===t);if(!n)throw new zm(`"${e}" is not a log level. Use ${oi.join(`, `)}.`);return n}function Wm(e,t){let n=e.toLowerCase();if(t===`=`&&Rm.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 zm(`"${e}" is not a status. Use 404, 5xx, ok, error, or unset.`)}function Gm(e){let t=e.toLowerCase();if(t===`true`||t===`false`)return{type:`bool`,value:t===`true`};throw new zm(`"${e}" is not true or false.`)}function Km(e,t,n){if(t!==`=`)throw new zm(`This field holds ${n===`id`?`ids`:`text`}. It cannot use ${t}.`);let r=Vm(e);return r?{type:`pattern`,pieces:r}:{type:`string`,value:Bm(e)}}function qm(e,t,n){let r=Bm(t);if(e===`text`||e===`id`)return Km(t,n,e);if(e===`duration`)return{type:`number`,value:Hm(r)};if(e===`status`)return Wm(r,n);if(e===`level`)return{type:`level`,value:Um(r)};if(n!==`=`)throw new zm(`true or false cannot use < or >.`);return Gm(r)}function Jm(e,t){let n=Bm(e);if(t===`=`)return Km(e,t,`text`);if(!Im.test(n))throw new zm(`${t} needs a number, not "${n}".`);return{type:`number`,value:Number(n)}}var Ym=new Set([`status`,`duration`,`level`]),Xm=/^@?[A-Za-z_][\w.-]*$/,Zm=[`>=`,`<=`,`>`,`<`],Qm=e=>e.map(e=>e.c).join(``);function $m(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=Zm.find(e=>n.startsWith(e));return r?{cmp:r,rest:e.slice(r.length)}:{cmp:`=`,rest:[...e]}}function eh(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 th=(e,t,n)=>e.startsWith(`@`)?{type:`attr`,key:e.slice(1),cmp:t,value:n}:{type:`field`,field:e,cmp:t,value:n};function nh(e,t,n){let r=t.startsWith(`@`);if(!r&&!zp(t))throw new Bp(`Unknown field "${t}". Use @${t} for an attribute, or put the text in quotes.`,e.start,e.end);let i=r?null:Rp[t].type,a=(e,t)=>i?qm(i,e,t):Jm(e,t),{cmp:o,rest:s}=$m(n);if(!s.length)throw new Bp(`${t} needs a value.`,e.start,e.end);try{if(o===`=`&&s.length===1&&s[0].c===`*`&&!s[0].lit)return th(t,`=`,{type:`exists`});let e=o===`=`?eh(s):-1;if(e<0)return th(t,o,a(s,o));if(i&&!Ym.has(i))throw new zm(`${t} cannot take a range.`);let[n,r]=[s.slice(0,e),s.slice(e+2)];if(!n.length||!r.length)throw new zm(`A range needs both ends, such as 200..299.`);return{type:`and`,items:[th(t,`>=`,a(n,`>=`)),th(t,`<=`,a(r,`<=`))]}}catch(t){throw t instanceof zm?new Bp(t.message,e.start,e.end):t}}function rh(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)?Qm(n):``,i=e.chars[t+1]?.c===`/`&&e.chars[t+2]?.c===`/`,a=Xm.test(r)&&!i?nh(e,r,e.chars.slice(t+1)):ih(e.chars);return a?e.neg?{type:`not`,item:a}:a:e.neg?{type:`not`,item:{type:`and`,items:[]}}:null}function ih(e){let t=e.filter(e=>e.lit||e.c!==`*`).map(e=>e.c).join(``);return t?{type:`text`,value:t}:null}function ah(e,t){let n=t.flatMap(t=>t.type===e?t.items:[t]);return n.length===1?n[0]:{type:e,items:n}}var oh=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 Bp(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 Bp(`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 Bp(`OR needs something after it.`,t.start,t.end);n.push(this.and(e))}return ah(`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 Bp(`AND needs something on both sides.`,e.start,e.end)}let n=this.unary(e);n&&t.push(n)}return ah(`and`,t)}unary(e){if(e>Vp.depth)throw new Bp(`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 Bp(`Unexpected ${t.type}.`,t.start,t.end);if(++this.terms>Vp.terms)throw new Bp(`A search can have at most ${Vp.terms} parts.`,t.start,t.end);return t.neg&&!t.chars.length?this.negate(t,e):rh(t)}negate(e,t){if(this.atEnd()||this.peek(`)`)||this.peek(`OR`))throw new Bp(`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 Bp(`These parentheses are empty.`,e.start,this.tokens[this.i].end);let n=this.or(t+1);if(!this.peek(`)`))throw new Bp(`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 sh(e){if(e.length>Vp.chars)throw new Bp(`A search can be at most ${Vp.chars} characters.`,Vp.chars,e.length);return new oh(e,Nm(e)).parse()}var ch=/[\s"\\():*]|^[-<>]|^(OR|AND|NOT)$|\.\./;function lh(e){return ch.test(e)||!e?`"${e.replace(/["\\]/g,e=>`\\${e}`)}"`:e}var uh=e=>e.map(e=>e===null?`*`:lh(e)).join(``);function dh(e){switch(e.type){case`string`:return lh(e.value);case`pattern`:return uh(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 fh=(e,t,n,r)=>`${e}:${t===`=`?``:t}${r&&n.type===`number`?`${n.value}ms`:dh(n)}`;function ph(e,t){switch(e.type){case`and`:return e.items.length?mh(e.items.map(e=>ph(e,!0)).join(` `),t&&e.items.length>1):`*`;case`or`:return mh(e.items.map(e=>ph(e,!0)).join(` OR `),t);case`not`:return e.item.type===`and`||e.item.type===`or`||e.item.type===`not`?`NOT ${ph(e.item,!0)}`:`-${ph(e.item,!0)}`;case`text`:return lh(e.value);case`field`:return fh(e.field,e.cmp,e.value,e.field===`duration`);default:return fh(`@${e.key}`,e.cmp,e.value,!1)}}var mh=(e,t)=>t?`(${e})`:e,hh=e=>e?ph(e,!1):``;function gh(e){try{return{ok:!0,node:sh(e)}}catch(e){if(e instanceof Bp)return{ok:!1,error:e.message,start:e.start,end:e.end};throw e}}var _h={type:`not`,item:{type:`and`,items:[]}},vh=e=>e.length===0?_h:e.length===1?e[0]:{type:`or`,items:e},yh=(e,t)=>({type:`attr`,key:`${_t}${e}`,cmp:`=`,value:t===void 0?{type:`exists`}:{type:`string`,value:t}});function bh(e,t,n){let r=e.value;if(r.type===`exists`)return vh(t.map(e=>e.node));if(r.type===`pattern`){let e=Up(r.pieces);return vh(t.filter(t=>e.test(t.name)).map(e=>e.node))}if(r.type!==`string`)return _h;let i=r.value.indexOf(`:`);if(i>0)return yh(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()),vh([...a?[a.node]:[],yh(r.value)])}function xh(e,t,n){return e.type===`and`||e.type===`or`?{type:e.type,items:e.items.map(e=>xh(e,t,n))}:e.type===`not`?{type:`not`,item:xh(e.item,t,n)}:e.type===`field`&&e.field===`tag`?bh(e,t,n):e}function Sh(e,t){let n=new Set;return{node:e&&xh(e,t,n),unknownTags:[...n]}}var Ch=1e3,wh=e=>e.type!==`text`&&(e.type!==`and`||e.items.some(wh));function Th(e){if(!e?.trim())return!1;let t=gh(e);return t.ok&&t.node!==null&&wh(t.node)}var Eh={requests:`requests`,traces:`traces`,logs:`logs`};function Dh(e,t,n,r,i=[],a=Ch){let o=gh(n);if(!o.ok)return[];let s=Sh(o.node,i).node,c=new Set,l=null;do{let n=ym(e,{kind:t,node:s,window:r,limit:200,cursor:hm(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 Oh=1e3,kh=24,Ah=e=>{let t=e;return t.startMs??t.timeMs??0};async function jh(e,t,n,r,i){let a=[],o=null;do{let s=await e({kind:t,node:n,window:r,limit:200,cursor:hm(o),env:i});for(let e of s.items)a.push(Ah(e));o=s.next}while(o&&a.length<1e3);return{times:a.slice(0,Oh),more:!!o}}async function Mh(e,t,n,r,i){let a=await Promise.all(Fp.map(t=>jh(e,t,n,r,i))),o=Object.fromEntries(Fp.map((e,t)=>[e,{n:a[t].times.length,more:a[t].more}])),s=Ee(r,kh),c=(r.to-r.from)/kh,l=Array(kh).fill(0);for(let e of a[Fp.indexOf(t)].times){let t=Math.floor((e-r.from)/c);t>=0&&t<kh&&l[t]++}return{counts:o,starts:s,histogram:l}}var Nh=(e,t)=>Math.max(0,(e.endMs??t)-e.startMs),Ph=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Fh=new Int8Array(128).fill(-1);for(let e=0;e<64;e++)Fh[Ph.charCodeAt(e)]=e;function Ih(e){let t=0,n=0,r;do{let i=e.text.charCodeAt(e.i++);if(r=i<128?Fh[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 Lh=e=>e.i<e.text.length&&e.text[e.i]!==`,`&&e.text[e.i]!==`;`;function Rh(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+=Ih(n);let e=[r];for(let t=0;t<4&&Lh(n);t++)e.push(i[t]+=Ih(n));t[t.length-1].push(e)}}for(let e of t)e.sort((e,t)=>e[0]-t[0]);return t}var zh=e=>Array.isArray(e)?e.map(e=>typeof e==`string`?e:``):[];function Bh(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 Vh(e){let t=e.sections.flatMap(e=>{let t=e,n=t?.map?Hh(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 Hh(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 Vh(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:Bh(zh(t.sources),t.sourceRoot),sourcesContent:n,names:zh(t.names),mappings:t.mappings}}function Uh(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 Wh(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?Gh(i.map,t-i.line,t===i.line?n-i.column:n):null}function Gh(e,t,n){if(e.sections)return Wh(e,t,n);e.lines??=Rh(e.mappings);let r=Uh(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 Kh(e,t,n){if(t<1||n<1)return null;try{return Gh(e,t-1,n-1)}catch{return null}}var qh=/^\s*at (?:async )?(?:(.*?) \()?(\S+?):(\d+):(\d+)\)?$/,Jh=/^\s*(.*?)@(\S+?):(\d+):(\d+)$/,Yh=/^\s*((?:https?|file|webpack):\/\/\S+?):(\d+):(\d+)$/;function Xh(e){if(e.includes(`eval at `)||e.includes(`(native)`))return null;let t=qh.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=Jh.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=Yh.exec(e);return r?{fn:null,url:r[1],line:Number(r[2]),column:Number(r[3]),raw:e.trim()}:null}function Zh(e,t=50){if(!e)return[];let n=[];for(let r of e.split(/\r?\n/)){let e=Xh(r);if(e&&n.push(e),n.length>=t)break}return n}var Qh=`[A-Za-z_$][\\w$]*`,$h=[RegExp(`function\\s*\\*?\\s*(${Qh})\\s*\\(`),RegExp(`(?:const|let|var)\\s+(${Qh})\\s*(?::[^=]+)?=\\s*(?:async\\s*)?(?:function\\b|\\([^)]*\\)[^=]*=>|${Qh}\\s*=>)`),RegExp(`(${Qh})\\s*:\\s*(?:async\\s*)?(?:function\\b|\\([^)]*\\)[^=]*=>)`),RegExp(`^\\s*(?:(?:public|private|protected|static|async|override|get|set)\\s+)*(${Qh})\\s*(?:<[^>]*>)?\\([^)]*\\)[^{;]*\\{`)],eg=new Set([`if`,`for`,`while`,`switch`,`catch`,`function`,`return`,`with`,`do`,`else`]),tg=300,ng=(e,t)=>e.split(t).length-1;function rg(e){for(let t of $h){let n=t.exec(e);if(n&&!eg.has(n[1]))return n[1]}return null}function ig(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-tg;e--){let a=e===t-1?r[e].slice(0,Math.max(0,n-1)):r[e];i+=ng(a,`}`)-ng(a,`{`);let o=rg(a);if(o&&(i<0||e===t-1))return o;i<0&&(i=0)}return null}var ag=300,og=/(^|\/)node_modules\/|^webpack\/(bootstrap|runtime)|^\(webpack\)|^vite\/|^\0/;function sg(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 cg=(e,t)=>!og.test(e??``)&&!t.includes(`/node_modules/`);function lg(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>ag?`${e.slice(0,ag)}…`:e);return a.length?{start:i,lines:a}:null}function ug(e,t,n){let r=t?Kh(t,e.line,e.column):null;if(!r)return{raw:e,source:null,line:null,column:null,fn:e.fn,inApp:cg(null,e.url),context:null};let i=sg(r.source),a=(r.content?ig(r.content,r.line,r.column):null)??e.fn;return{raw:e,source:i,line:r.line,column:r.column,fn:a,inApp:cg(i,e.url),context:lg(r.content,r.line,n)}}async function dg(e,t,n,r={}){let i=Zh(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=>ug(e,await o(e.url),s)))}var fg=/^(localhost|127(?:\.\d{1,3}){3}|\[::1\]|::1|[^.]+\.localhost)$/i,pg=e=>/^https?:$/.test(e.protocol)&&fg.test(e.hostname);function mg(e){let t=e.slice(-4096),n=null;for(let e of t.matchAll(/[#@]\s*sourceMappingURL=([^\s'"*]+)/g))n=e[1];return n}function hg(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 gg(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 _g(e,t,n){if(t.startsWith(`data:`)){let e=hg(t);return e?Hh(e):null}let r=await gg(e,new URL(t,n));return r?Hh(r.text):null}function vg(e={}){let t={fetch:e.fetch??((...e)=>globalThis.fetch(...e)),allow:e.allow??pg,maxBytes:e.maxBytes??33554432,timeoutMs:e.timeoutMs??5e3};return async e=>{let n;try{n=new URL(e)}catch{return null}let r=await gg(t,n),i=r?r.header??mg(r.text):null;return i?_g(t,i,n):_g(t,`${n.origin}${n.pathname}.map`,n)}}function yg(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 bg(e){let t=e.attributes[ot];return typeof t==`string`&&t?t:null}var xg=`api/sourcemaps/resolve`,Sg=[`blue`,`green`,`amber`,`orange`,`red`,`violet`,`slate`],Cg={name:40,query:2e3,rules:50,matchItems:200};function wg(e){return e.flatMap(e=>{if(!e.enabled)return[];let t=gh(e.query);return t.ok&&t.node?[{name:e.name,color:e.color,node:t.node}]:[]})}function Tg(e){return e?e.type===`and`||e.type===`or`?e.items.some(Tg):e.type===`not`?Tg(e.item):e.type===`field`&&e.field===`tag`:!1}var Eg=(e,t)=>`${e} ${t}`;function Dg(e,t){return e===`spans`?t.spanId:e===`logs`?dm(t):``}var Og={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 kg(e,t){return e.type===`and`||e.type===`or`?e.items.every(e=>kg(e,t)):e.type===`not`?kg(e.item,t):e.type===`text`?Og[t].text:e.type===`field`&&Og[t].fields.has(e.field)}var Ag=e=>[...new Set([e,_r(e),gr(e)])];function jg(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:Ag(e),method:r,route:i,path:i},attrs:[]}}var Mg=e=>({kind:`requests`,text:[],fields:{user:e},attrs:[]}),Ng=e=>({kind:`requests`,text:[],fields:{service:Ag(e)},attrs:[]});function Pg(e){return{kind:`requests`,text:[e.type,e.message,vr(e.message)].map(e=>e.toLowerCase()),fields:{service:Ag(e.service),error:!0,outcome:`error`},attrs:[]}}function Fg(e,t,n){return e.filter(e=>kg(e.node,t)&&Zp(e.node)(n)).map(e=>e.name)}var Ig=(e,t)=>({type:`field`,field:e,cmp:`=`,value:{type:`string`,value:t}}),Lg=(...e)=>hh(e.length===1?e[0]:{type:`and`,items:e});function Rg(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,Cg.name).replace(/-+$/,``)||`tag`}function zg(e,t){let n=t.indexOf(` `),r=n>0?[Ig(`method`,t.slice(0,n)),Ig(`route`,t.slice(n+1))]:[Ig(`route`,t)];return{label:`This endpoint (${t})`,name:Rg(t),query:Lg(Ig(`service`,_r(e)),...r)}}var Bg=e=>({label:`This service (${e})`,name:Rg(e),query:Lg(Ig(`service`,_r(e)))}),Vg=e=>({label:`This user (${e})`,name:Rg(`user-${e}`),query:Lg(Ig(`user`,e))});function Hg(e){return vr(e).split(/\{id\}|#/).map(e=>e.trim()).reduce((e,t)=>t.length>e.length?t:e,``).slice(0,120)}function Ug(e){let t=Hg(e.message)||e.type,n=Lg(Ig(`service`,_r(e.service)),{type:`field`,field:`error`,cmp:`=`,value:{type:`bool`,value:!0}},{type:`text`,value:t});return{label:`This error (${e.type})`,name:Rg(e.type),query:n}}var Wg=e=>({label:`This search`,name:Rg(e.replace(/[@:]/g,` `)),query:e});function Gg(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 Kg=(e,t)=>e.field===`tag`?Gg(t,e.prefix).slice(0,e.limit):null,qg=864e5,Jg=Object.keys(fe),Yg={"in-app":`In-app`,hub:`Local hub`,cloud:`Cloud`};function Xg(e){let t=new Set(e?.capabilities??$e),n=e?.storage?.maxAgeMs??qg,r=t.has(`serverStats`)?n:Math.min(n,g),i=Jg.filter(e=>fe[e].ms<=r);return{mode:e?.mode??`in-app`,has:e=>t.has(e),keptMs:n,ranges:i.length?i:[Jg[0]],service:e?.service??null}}function H(){let{info:e}=Se();return(0,E.useMemo)(()=>Xg(e),[e])}function Zg(){let[e,t]=te(),{ranges:n}=H();return[n.includes(e)?e:n[n.length-1],t]}function Qg(e){return e>=2*qg?`${Math.round(e/qg)} days`:e>=36e5?`${Math.round(e/36e5)} h`:`${Math.round(e/6e4)} min`}function $g(t,n,r){let i=me(n,r),a=ze(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:In(o),prevRequests:In(s)}}function e_(){let e=Se(),[t]=Zg();return(0,E.useMemo)(()=>({...$g(e.traces,t,e.updatedMs),all:e.traces,loading:e.loading}),[e.traces,e.updatedMs,e.loading,t])}var t_=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function n_(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:t_(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var r_=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},i_=e=>{let t=r_(e);return t.charAt(0).toUpperCase()+t.slice(1)},a_=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),o_={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 s_(e){return e!=null}function c_(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??o_.width,a=e.size??e.height??o_.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?a_(...c):a_(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??o_[`stroke-width`])*Number(e.size??e.width??o_.width)/Number(t.size??t.width??o_.width):t.strokeWidth??o_[`stroke-width`];return[`svg`,{...Object.entries(o_).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&s_(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&s_(t.width)&&{[r(`width`)]:t.width},...`height`in t&&s_(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 l_(e,t={}){return c_(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var u_=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},d_=(0,E.createContext)({}),f_=()=>(0,E.useContext)(d_),p_=(0,E.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=``}=f_()??{},y=!!c||u_(d),[b,ee,te=[]]=l_(u,{color:e??_,width:n??t??p,height:r??t??p,strokeWidth:i??m,absoluteStrokeWidth:a??h,nonScalingStroke:o??g,className:a_(v,s),hasA11yProp:y,attributes:d});return(0,E.createElement)(b,{ref:f,...ee},[...te.map(([e,t])=>(0,E.createElement)(e,t)),...Array.isArray(c)?c:[c]])});function U(e,t=[],n=[]){let r=typeof e==`string`?n_(e,t,n):e,i=(0,E.forwardRef)(({className:e,...t},n)=>(0,E.createElement)(p_,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=i_(r.name)),i}var m_={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`}]]};m_.node;var h_=U(m_),g_={name:`arrow-down`,size:24,node:[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]};g_.node;var __=U(g_),v_={name:`arrow-left`,size:24,node:[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]};v_.node;var y_=U(v_),b_={name:`arrow-right`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]};b_.node;var x_=U(b_),S_={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};S_.node;var C_=U(S_),w_={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`}]]};w_.node;var T_=U(w_),E_={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`}]]};E_.node;var D_=U(E_),O_={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`}]]};O_.node;var k_=U(O_),A_={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`}]]};A_.node;var j_=U(A_),M_={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`}]]};M_.node;var N_=U(M_),P_={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`}]]};P_.node;var F_=U(P_),I_={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`}]]};I_.node;var L_=U(I_),R_={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`}]]};R_.node;var z_=U(R_),B_={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`}]]};B_.node;var V_=U(B_),H_={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`]};H_.node;var U_=U(H_),W_={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};W_.node;var G_=U(W_),K_={name:`chevron-down`,size:24,node:[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]};K_.node;var q_=U(K_),J_={name:`chevron-left`,size:24,node:[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]};J_.node;var Y_=U(J_),X_={name:`chevron-right`,size:24,node:[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]};X_.node;var Z_=U(X_),Q_={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`]};Q_.node;var $_=U(Q_),ev={name:`clock`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]};ev.node;var tv=U(ev),nv={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`}]]};nv.node;var rv=U(nv),iv={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`}]]};iv.node;var av=U(iv),ov={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`}]]};ov.node;var sv=U(ov),cv={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`}]]};cv.node;var lv=U(cv),uv={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`}]]};uv.node;var dv=U(uv),fv={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`}]]};fv.node;var pv=U(fv),mv={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`}]]};mv.node;var hv=U(mv),gv={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`]};gv.node;var _v=U(gv),vv={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`}]]};vv.node;var yv=U(vv),bv={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`}]]};bv.node;var xv=U(bv),Sv={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`]};Sv.node;var Cv=U(Sv),wv={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`}]]};wv.node;var Tv=U(wv),Ev={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`}]]};Ev.node;var Dv=U(Ev),Ov={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`}]]};Ov.node;var kv=U(Ov),Av={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`}]]};Av.node;var jv=U(Av),Mv={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`}]]};Mv.node;var Nv=U(Mv),Pv={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`}]]};Pv.node;var Fv=U(Pv),Iv={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`]};Iv.node;var Lv=U(Iv),Rv={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`}]]};Rv.node;var zv=U(Rv),Bv={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`]};Bv.node;var Vv=U(Bv),Hv={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`}]]};Hv.node;var Uv=U(Hv),Wv={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`}]]};Wv.node;var Gv=U(Wv),Kv={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`}]]};Kv.node;var qv=U(Kv),Jv={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`}]]};Jv.node;var Yv=U(Jv),Xv={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`}]]};Xv.node;var Zv=U(Xv),Qv={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`}]]};Qv.node;var $v=U(Qv),ey={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`}]]};ey.node;var ty=U(ey),ny={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`}]]};ny.node;var ry=U(ny),iy={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`}]]};iy.node;var ay=U(iy),oy={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`]};oy.node;var sy=U(oy),cy={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`}]]};cy.node;var ly=U(cy),uy={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};uy.node;var dy=U(uy),fy={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`}]]};fy.node;var py=U(fy),my={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`}]]};my.node;var hy=U(my),gy={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`}]]};gy.node;var _y=U(gy),vy={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`}]]};vy.node;var yy=U(vy),by={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`}]]};by.node;var xy=U(by),Sy={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};Sy.node;var Cy=U(Sy),wy={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`}]]};wy.node;var Ty=U(wy),Ey={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`}]]};Ey.node;var Dy=U(Ey),Oy={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`}]]};Oy.node;var ky=U(Oy),Ay={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`}]]};Ay.node;var jy=U(Ay),My={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`}]]};My.node;var Ny=U(My),Py={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`}]]};Py.node;var Fy=U(Py),Iy={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`}]]};Iy.node;var Ly=U(Iy),Ry={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`}]]};Ry.node;var zy=U(Ry),By={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`}]]};By.node;var Vy=U(By),Hy={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`}]]};Hy.node;var Uy=U(Hy),Wy={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`}]]};Wy.node;var Gy=U(Wy),Ky={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`}]]};Ky.node;var qy=U(Ky),Jy={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`]};Jy.node;var Yy=U(Jy),Xy={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`]};Xy.node;var Zy=U(Xy),Qy={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`}]]};Qy.node;var $y=U(Qy),eb={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`]};eb.node;var tb=U(eb),nb={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`}]]};nb.node;var rb=U(nb),ib={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`}]]};ib.node;var ab=U(ib),ob={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};ob.node;var sb=U(ob),cb={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`}]]};cb.node;var lb=U(cb),ub=We((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})),db=We(((e,t)=>{t.exports=ub()})),W=db();function fb({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 pb({href:e,label:t=`View all`}){return(0,W.jsxs)(`a`,{className:`wl-view-all`,href:e,children:[t,` `,(0,W.jsx)(x_,{"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]})}function mb({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 hb({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 gb=`–`;function q(e){return e==null||!Number.isFinite(e)?gb: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 _b=e=>e===`week`?`Last week`:`Period before`,J=e=>e==null||!Number.isFinite(e)?gb:Math.round(e).toLocaleString(`en-US`),vb=(e,t)=>t>e?`${J(e)} of ${J(t)}`:J(t);function yb(e){return e==null||!Number.isFinite(e)?gb:e===0?`0%`:Math.abs(e)<10?`${e.toFixed(2).replace(/\.?0+$/,``)}%`:`${Math.round(e)}%`}function bb(e){return e==null||!Number.isFinite(e)?gb:e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function xb(e){return e>=1e6?`${(e/1e6).toFixed(1).replace(/\.0$/,``)}M`:e>=1e4?`${Math.round(e/1e3)}K`:J(e)}var Sb={utc:!1,hour12:!0},Cb=e=>void(Sb=e),wb=()=>Sb.utc,Tb=e=>({...e,...e.hour?{hour12:Sb.hour12}:{},...Sb.utc?{timeZone:`UTC`}:{}}),Eb=e=>new Date(e).toLocaleTimeString(`en-US`,Tb({hour:`numeric`,minute:`2-digit`,second:`2-digit`})),Db=e=>new Date(e).toLocaleDateString(`en-US`,Tb({month:`short`,day:`numeric`,year:`numeric`})),Ob=e=>new Date(e).toLocaleString(`en-US`,Tb({month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`})),kb=1728e5,Ab=(e,t=0)=>t>kb?new Date(e).toLocaleDateString(`en-US`,Tb({month:`short`,day:`numeric`})):new Date(e).toLocaleTimeString(`en-US`,Tb({hour:`numeric`,minute:`2-digit`})),jb=(e,t=0)=>t>kb?new Date(e).toLocaleString(`en-US`,Tb({month:`short`,day:`numeric`,hour:`numeric`})):Ab(e);function Mb(e){let t=new Date(Sb.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 Nb(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`:Db(e)}function Pb(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 Fb=e=>e.slice(0,8),Ib={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 Lb({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:Ib[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 Rb={info:`info`,success:`success`,opportunity:`warning`,warning:`orange`,critical:`danger`,neutral:`neutral`},zb=e=>Rb[e];function Bb(e){return e===null?`neutral`:e>=500?`danger`:e>=400?`warning`:`success`}function Vb({tone:e,title:t}){return(0,W.jsx)(`span`,{className:`wl-dot wl-tone-${e}`,title:t})}function Hb({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)(Vb,{tone:e}),t]})}function Y({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`wl-badge wl-badge-${e}`,children:t})}var Ub={high:`High`,medium:`Medium`,low:`Low`},Wb=({impact:e})=>(0,W.jsx)(Y,{tone:e,children:Ub[e]});function Gb({n:e}){return e>0?(0,W.jsx)(`span`,{className:`wl-count`,children:e}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})}function Kb({text:e,label:t=`Copy`,asLink:n=!1}){let[r,i]=(0,E.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)(G_,{}):(0,W.jsx)(av,{})})}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 qb({value:e,onChange:t,placeholder:n}){return(0,W.jsxs)(`label`,{className:`wl-input`,children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),(0,W.jsx)(`input`,{type:`search`,value:e,placeholder:n,onChange:e=>t(e.target.value)})]})}function Jb(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 Yb({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)(Y_,{size:16})}),Jb(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)(Z_,{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 Xb({label:e,title:t,buttonClass:n=`wl-top-btn`,onOpen:r,children:i}){let[a,o]=(0,E.useState)(!1),s=(0,E.useRef)(null);return(0,E.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 Zb=[[`1`,`1 day`],[`7`,`7 days`],[`30`,`30 days`]];function Qb({traceId:e}){let[t,n]=(0,E.useState)(`7`),[r,i]=(0,E.useState)(null),[a,o]=(0,E.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)(Xb,{label:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(qv,{"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:Zb,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)(Kb,{text:r.url,label:`Copy link`}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[`Works until `,Db(r.expiresMs),`. Revoke it on the Team page.`]})]}),a&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:a})]})})}function $b({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)(dv,{"aria-hidden":`true`}),` JSON`]})}var ex=/^[0-9a-f]{32}$/;function tx({trace:e}){let[t,n]=(0,E.useState)(!1),[r,i]=(0,E.useState)(``),{traces:a}=Se(),o=a.filter(t=>t.rootName===e.rootName&&t.traceId!==e.traceId).slice(0,5),s=t=>T(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)(kv,{"aria-hidden":`true`}),` Compare`]}),t&&(0,W.jsxs)(`div`,{className:`wl-menu wl-compare-menu`,children:[(0,W.jsx)(`form`,{onSubmit:e=>(e.preventDefault(),ex.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:Fb(e.traceId)}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[Eb(e.startMs),` · `,q(e.durationMs)]})]},e.traceId))]})]})}function nx(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 rx={"duplicate-query":`DUP`,"n+1-db":`N+1`,"n+1-http":`N+1`,"slow-query":`SLOW`,"db-wait":`WAIT`};function ix({kinds:e}){return e?(0,W.jsx)(W.Fragment,{children:[...e].filter(e=>rx[e]).map(e=>(0,W.jsx)(`span`,{className:`wl-fbadge wl-fbadge-${e.replace(`+`,`p`)}`,children:rx[e]},e))}):null}function ax(e,t){return[t.selected===e.spanId?`wl-selected`:``,t.highlight.has(e.spanId)?`wl-highlight`:``,ve(e)?`wl-row-error`:``].join(` `).trim()}function ox({service:e,services:t}){return(0,W.jsx)(`span`,{className:`wl-chip wl-svc wl-svc-${Pb(e,t)}`,children:e})}var sx=e=>e>=500?`wl-pill-err`:e>=400?`wl-pill-warn`:`wl-pill-ok`;function cx({trace:e,timing:t}){let n=[[`Total`,q(t.totalMs)],[`Server`,q(t.serverMs)],[`Database`,q(t.dbMs)],[`Render`,q(t.renderMs)],[`Started`,Mb(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)(ox,{service:t,services:e.services},t))})]})]})}function lx({timing:e,failed:t}){let n=Tn(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 ux({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)(y_,{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 ${sx(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)(hy,{"aria-hidden":`true`}),` `,r?`Refreshing…`:`Refresh`]})]})]}),s,(0,W.jsx)(cx,{trace:e,timing:t}),(0,W.jsx)(lx,{timing:t,failed:n===`critical`}),(0,W.jsxs)(`div`,{className:`wl-muted wl-small wl-mono`,children:[(0,W.jsx)(Kb,{text:e.traceId,label:`Copy trace id`}),`trace `,e.traceId]})]})}var dx={tags:[],editable:!1,max:Cg.rules},fx=null,px=null,mx=new Set,hx=()=>c().project,gx=()=>{let e=c().project;return e?`?project=${encodeURIComponent(e)}`:``};function _x(e){fx=e,mx.forEach(e=>e())}async function vx(){let e=hx();px=e;let t=await ne(`./api/tags${gx()}`).catch(()=>dx);px===e&&(px=null,_x({key:e,list:t,active:wg(t.tags)}))}var yx=()=>vx(),bx=e=>(mx.add(e),()=>void mx.delete(e));d(()=>{fx&&fx.key!==hx()&&vx()});function xx(){let e=H().has(`tags`),t=(0,E.useSyncExternalStore)(bx,()=>fx);return(0,E.useEffect)(()=>{e&&px===null&&(!fx||fx.key!==hx())&&vx()},[e,t]),e?t&&t.key===hx()?t:null:{list:dx,active:[]}}var Sx=()=>fx?.list.tags??[],Cx=e=>`./api/tags${e?`/${encodeURIComponent(e)}`:``}${gx()}`,wx=e=>x(`POST`,Cx(),e).then(e=>(yx(),e)),Tx=(e,t)=>x(`PATCH`,Cx(e),t).then(e=>(yx(),e)),Ex=(e,t)=>x(`PATCH`,Cx(e),{enabled:t}).then(e=>(yx(),e)),Dx=e=>x(`DELETE`,Cx(e)).then(()=>void yx());async function Ox(e,t){let n=c().env,r=gx(),i=`./api/tags/match${r}${n?`${r?`&`:`?`}env=${encodeURIComponent(n)}`:``}`,a=[];for(let e=0;e<t.length;e+=Cg.matchItems)a.push(t.slice(e,e+Cg.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 kx=[];async function Ax(e,t){if(e!==`traces`)return Ox(e,t);let[n,r]=await Promise.all([Ox(`traces`,t),Ox(`requests`,t)]),i={...r};for(let[e,t]of Object.entries(n))i[e]=[...new Set([...i[e]??[],...t])];return i}function jx(e,t,n){let r=xx(),i=(0,E.useMemo)(()=>t.map(n),[t]),a=i.map(e=>Eg(e.traceId,e.owner)).join(`,`),[o,s]=(0,E.useState)({});return(0,E.useEffect)(()=>{if(!r?.active.length||!i.length)return s({});let t=!0;return Ax(e,i).then(e=>t&&s(e),()=>t&&s({})),()=>void(t=!1)},[e,a,r]),(0,E.useMemo)(()=>e=>{let t=n(e),i=new Set(o[Eg(t.traceId,t.owner)]??[]);return(r?.list.tags??[]).filter(e=>i.has(e.name))},[o,r])}function Mx(){let e=xx();return(0,E.useMemo)(()=>{if(!e?.active.length)return()=>kx;let t=new Map(e.list.tags.map(e=>[e.name,e]));return(n,r)=>Fg(e.active,n,r).flatMap(e=>t.get(e)??[])},[e])}var Nx=e=>({traceId:e.traceId,owner:``,timeMs:e.startMs}),Px=e=>({traceId:e.traceId,owner:dm(e),timeMs:e.timeMs});function Fx({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 Ix({tags:e}){return e.length?(0,W.jsx)(`span`,{className:`wl-tags`,children:e.map(e=>(0,W.jsx)(Fx,{tag:e},e.name))}):null}function Lx(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)(Ix,{tags:n(t)})]})}:e)}var Rx=3e4;function zx(e){let{updatedMs:t}=Se(),n=Math.floor(t/Rx),[r,i]=(0,E.useState)(0),[a,o]=(0,E.useState)({data:null,error:null});(0,E.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,E.useCallback)(()=>i(e=>e+1),[]);return{...a,reload:s}}async function Bx(e,t){try{return await e(),t(),null}catch(e){return e instanceof Error?e.message:String(e)}}var Vx=e=>{let t=c();return t.project&&e.set(`project`,t.project),t.env&&e.set(`env`,t.env),e};function Hx(e,t){let n=gh(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}=Sh(n.node,wg(Sx()));return{...ym(m.getSnapshot().traces,{kind:e.kind,node:i,window:{from:r-fe[e.range].ms,to:r},limit:e.limit,cursor:hm(t)}),unknownTags:a}}async function Ux(e,t,n){if(!n)return Hx(e,t);let r=Vx(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?gh(e.q):null;throw n&&!n.ok?Object.assign(Error(n.error),{start:n.start,end:n.end}):t}}function Wx(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 Gx(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 Kg(i,Sx())??Dm(m.getSnapshot().traces,i)}let i=Vx(new URLSearchParams({prefix:t,range:n,limit:`12`}));return e&&i.set(`field`,e),(await ne(`./api/search/suggest?${i.toString()}`)).items}function Kx(e,t){let n=JSON.stringify([e,t]),[r,i]=(0,E.useState)({key:``,pages:[],loading:!0,failure:null,cursor:null}),[a,o]=(0,E.useState)({key:n,cursor:null});a.key!==n&&o({key:n,cursor:null}),(0,E.useEffect)(()=>{let r=!0,o=a.cursor===null;return i(e=>({...e,key:n,loading:!0,...o?{pages:[],failure:null}:{}})),Ux(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:Wx(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 qx({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 Jx({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 Yx=({children:e})=>(0,W.jsx)(`div`,{className:`wl-form-row`,children:e});function Xx({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 Zx=400,Qx=50;function $x(e){let[t]=Zg(),n=H().has(`search`),[r,i]=(0,E.useState)({state:`idle`});return(0,E.useEffect)(()=>{let r=gh(e.trim());if(!e.trim())return void i({state:`idle`});if(!r.ok)return void i({state:`error`,message:r.error});if(Tg(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(()=>{Ux({q:e.trim(),kind:`requests`,range:t,limit:Qx},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)}))},Zx);return()=>(a=!1,clearTimeout(o))},[e,t,n]),r}function eS({query:e}){let t=$x(e),[n]=Zg(),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 tS({value:e,name:t,onChange:n}){return(0,W.jsxs)(`fieldset`,{className:`wl-tag-colors`,children:[(0,W.jsx)(`legend`,{children:`Color`}),Sg.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 nS({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 rS({initial:e,scopes:t,saveLabel:n,onSave:r,onCancel:i}){let[a,o]=(0,E.useState)(e),[s,c]=(0,E.useState)(0),[l,u]=(0,E.useState)(null),[d,f]=(0,E.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)(nS,{scopes:t,picked:s,onPick:e=>{c(e),o(n=>({...n,name:t[e].name,query:t[e].query}))}}),(0,W.jsx)(Yx,{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)(tS,{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)(eS,{query:a.query}),l&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,role:`alert`,children:l}),(0,W.jsxs)(Yx,{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 iS(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 aS({scopes:e,onClose:t}){let[n,r]=(0,E.useState)(0),i=iS({...e[n],color:`blue`});return(0,W.jsxs)(`div`,{className:`wl-form`,children:[e.length>1&&(0,W.jsx)(nS,{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)(Kb,{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)(Kb,{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 oS({scopes:e,onClose:t}){let n=(0,E.useRef)(null),r=xx()?.list.editable??!1;(0,E.useEffect)(()=>n.current?.showModal(),[]);let i=e=>Bx(()=>wx(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)(rS,{initial:{name:a.name,color:`blue`,query:a.query},scopes:e,saveLabel:`Add tag`,onSave:i,onCancel:t}):(0,W.jsx)(aS,{scopes:e,onClose:t})]})}function sS({scopes:e}){let t=H(),n=xx(),[r,i]=(0,E.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)(Uy,{"aria-hidden":`true`}),` Tag this`]}),r&&(0,W.jsx)(oS,{scopes:e,onClose:()=>i(!1)})]})}function cS(e){return[...e.rootMethod?[zg(e.service,e.rootName)]:[],Bg(e.service)]}function lS({trace:e}){let t=jx(`traces`,(0,E.useMemo)(()=>[e],[e]),Nx);return(0,W.jsx)(Ix,{tags:t(e)})}var uS=({trace:e})=>(0,W.jsx)(sS,{scopes:cS(e)}),dS=e=>e.category===`http.client`||e.category===`http.server`||e.category===`browser`,fS=e=>e.category===`http.server`?`IN`:e.category===`browser`?`WEB`:`OUT`;function pS({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 ${ax(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:fS(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)(ix,{kinds:n.get(e.spanId)})]}),(0,W.jsx)(`td`,{children:(0,W.jsx)(ox,{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 mS(e){let t=e.trace.spans.filter(dS),n=(0,E.useMemo)(()=>nx(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)(pS,{span:t,props:e,kinds:n},t.spanId))})]})})}function hS({trace:e,onSelect:t}){let n=Ar(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 gS=yg(vg({allow:e=>/^https?:$/.test(e.protocol),timeoutMs:8e3}),{max:10,hitMs:3e4});function _S(){let e=c().project;return`./${xg}${e?`?project=${encodeURIComponent(e)}`:``}`}async function vS(e,t,n){if(!e)return dg(t,n.release,gS);let r={stack:t,release:n.release,traceId:n.traceId,spanId:n.spanId};return(await x(`POST`,_S(),r)).frames}function yS(e){let t=H().has(`sourcemaps`),n=e.browser?e.stack:null,[r,i]=(0,E.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,E.useEffect)(()=>{if(!n||!c)return;let e=!0;return vS(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 bS({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)(Kb,{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 xS({event:e}){return(0,W.jsx)(mb,{rows:[[`Method`,e.method??`–`],[`Path`,e.path?(0,W.jsx)(`span`,{className:`wl-mono`,children:e.path}):`–`],[`Status`,e.status===null?`–`:(0,W.jsx)(Hb,{tone:Bb(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 SS({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 CS=e=>e.source?`${e.source}:${e.line}:${e.column}`:`${e.raw.url}:${e.raw.line}:${e.raw.column}`,wS=(e,t)=>[`${e.type}: ${e.message}`,...t.map(e=>` at ${e.fn??`<anonymous>`} (${CS(e)})`)].join(`
|
|
19
|
-
`);function TS({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 ES({frame:e,first:t}){let[n,r]=(0,E.useState)(t),i=n?q_:Z_;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:CS(e)})]}),n&&e.context&&(0,W.jsx)(TS,{context:e.context,line:e.line}),n&&(0,W.jsxs)(`div`,{className:`wl-frame-raw`,children:[`Raw: `,e.raw.raw]})]})}function DS(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 OS({event:e}){let t=yS(e),[n,r]=(0,E.useState)(`original`);if(!e.browser||!e.stack)return(0,W.jsx)(bS,{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:DS(t,e.release,a)})]}),n===`raw`||!a?(0,W.jsx)(bS,{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)(Kb,{text:wS(e,i),label:`Copy original stack trace`})}),(0,W.jsx)(`ol`,{className:`wl-frames`,children:i.map((e,t)=>(0,W.jsx)(ES,{frame:e,first:t===o},t))})]})]})}function kS({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)(ox,{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 AS({span:e}){let t=_n(e);return(0,W.jsx)(`div`,{onClick:e=>e.stopPropagation(),children:(0,W.jsx)(OS,{event:{type:t.type??`Error`,message:t.message,stack:t.stack,browser:!0,release:bg(e),traceId:e.traceId,spanId:e.spanId}})})}function jS({trace:e,onSelect:t}){let n=new Map(e.spans.map(e=>[e.spanId,e])),r=e.spans.filter(ve).map(_n);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)(ox,{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)(AS,{span:n.get(r.spanId)}):r.stack&&(0,W.jsx)(`pre`,{className:`wl-code wl-stack`,children:r.stack})]},r.spanId))})}function MS(e,t,n){return(0,E.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 NS({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?__:C_;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,E.useState)(o??null),u=MS(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)(NS,{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)(E.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 PS={api:F_,web:ty,worker:rv,queue:zv,database:lv,external:jv},FS={api:`API service`,web:`Web app`,worker:`Message worker`,queue:`Queue`,database:`Database`,external:`Outside service`},IS={healthy:[`success`,`Healthy`],degraded:[`warning`,`Degraded`],unhealthy:[`danger`,`Unhealthy`],idle:[`neutral`,`Idle`]},LS=e=>IS[e][0],RS=e=>S(`services`,[encodeURIComponent(e)]),zS=C;function BS({status:e}){let[t,n]=IS[e];return(0,W.jsx)(Hb,{tone:t,colorText:t!==`neutral`,children:n})}function VS({row:e}){let t=PS[e.kind];return(0,W.jsxs)(`span`,{className:`wl-cell-icon`,title:FS[e.kind],children:[(0,W.jsx)(t,{size:18,"aria-hidden":!0}),e.name]})}var HS=[{key:`name`,header:`Service`,cell:e=>(0,W.jsx)(VS,{row:e}),sort:e=>e.name},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(BS,{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=>yb(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 US({rows:e,selectedKey:t}){let r=Mx();return(0,W.jsx)(Q,{columns:Lx(HS,`name`,e=>r(`services`,Ng(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 WS=e=>S(`hosts`,[encodeURIComponent(e)]),GS=e=>S(`kubernetes`,[`node`,encodeURIComponent(e)]),KS=(e,t)=>S(`kubernetes`,[`pod`,encodeURIComponent(e||`-`),encodeURIComponent(t)]),qS=e=>S(`kubernetes`,[],{view:`pods`,workload:e}),JS=e=>{try{return decodeURIComponent(e??``)}catch{return e??``}},YS=(e,t)=>typeof e[t]==`string`&&e[t]?String(e[t]):``;function XS({attributes:e}){let t=H().has(`infra`),n=YS(e,`k8s.pod.name`),r=YS(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:KS(YS(e,`k8s.namespace.name`),n),title:`Open this pod`,children:[(0,W.jsx)(F_,{size:12,"aria-hidden":`true`}),` Pod `,n]}),r&&(0,W.jsxs)(`a`,{className:`wl-infra-chip`,href:GS(r),title:`Open this node`,children:[(0,W.jsx)(Ty,{size:12,"aria-hidden":`true`}),` Node `,r]})]})}function ZS(e){if(typeof e!=`string`)return null;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}var QS=(e,t)=>S(`search`,[],{q:`@${e}:${lh(String(t))}`,kind:`spans`});function $S({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:QS(e,n),title:`Find spans with this value`,children:String(n)}):String(n)})]},e))})})}function eC({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)($S,{entries:Object.entries(n)})]})}function tC({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)(ox,{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 nC({span:e}){let t=e.attributes[`db.query.text`];if(typeof t!=`string`)return null;let n=ZS(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 rC({span:e,trace:t}){let n=gr(e.service),r=Tr([t]).find(t=>t.spanId===e.spanId),i=[[RS(n),n]];return e.category===`http.server`&&i.push([_e(`api:${e.service}`,xs(e,`api`)),`Endpoint`]),e.category===`db`&&i.push([He(Fe(qt(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 iC({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)(sb,{size:18})})]}),(0,W.jsx)(tC,{span:e,trace:t}),(0,W.jsx)(rC,{span:e,trace:t}),(0,W.jsx)(XS,{attributes:e.attributes}),(0,W.jsx)(nC,{span:e}),e.events.length>0&&(0,W.jsx)(`h3`,{children:`Events`}),e.events.map((e,n)=>(0,W.jsx)(eC,{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)($S,{entries:r,search:!0})]})}function aC(e){let{trace:t,findings:n,onSelect:r}=e,i=t.spans.filter(e=>e.category===`db`),a=(0,E.useMemo)(()=>nx(n),[n]),o=new Set(i.map(qt)).size,s=i.reduce((e,t)=>e+t.durationMs,0),c=Pt(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 ${ax(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)(ox,{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)(ix,{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:qt(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 oC(e,t){if(!t.text&&!t.errors&&!t.critical)return null;let n=t.text.trim().toLowerCase(),r=t.critical?kt(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 sC(e){let[t,n]=(0,E.useState)({text:``,errors:!1,critical:!1});return{filter:t,setFilter:n,keep:(0,E.useMemo)(()=>oC(e,t),[e,t])}}function cC({filter:e,onFilter:t,shown:n,total:r,onExpand:i}){return(0,W.jsxs)(`div`,{className:`wl-wf-bar-tools`,children:[(0,W.jsx)(qb,{value:e.text,onChange:n=>t({...e,text:n}),placeholder:`Find spans by name or service…`}),(0,W.jsx)(Xx,{label:`Errors only`,checked:e.errors,onChange:n=>t({...e,errors:n.target.checked})}),(0,W.jsx)(Xx,{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 lC={"http.server":`IN`,"http.client":`OUT`,db:`SQL`,messaging:`MSG`,browser:`WEB`,internal:`FN`},uC=[0,.25,.5,.75,1],dC=(e,t)=>e.startMs-t.startMs;function fC(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(dC);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(dC))s(e,0);return o}function pC({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:uC.map(t=>(0,W.jsx)(`span`,{className:`wl-wf-tick`,style:{left:`${t*100}%`},children:q(e*t)},t))})]})}function mC({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:lC[e.category]}),(0,W.jsx)(`span`,{className:`wl-wf-name`,children:e.name}),(0,W.jsx)(`span`,{className:`wl-svc-dot wl-svc-${Pb(e.service,r.services)}`,title:e.service})]})}function hC(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)(mC,{row:e.row,trace:e.trace,collapsed:e.collapsed,onToggle:e.onToggle}),(0,W.jsxs)(`div`,{className:`wl-wf-track`,children:[uC.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 gC({trace:e,selected:t,highlight:n,onSelect:r}){let[i,a]=(0,E.useState)(new Set),{filter:o,setFilter:s,keep:c}=sC(e),l=(0,E.useMemo)(()=>fC(e.spans,i,c),[e.spans,i,c]),u=(0,E.useMemo)(()=>Ot(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)(cC,{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)(pC,{total:d}),l.length===0&&(0,W.jsx)(K,{children:`No span matches.`}),l.map(a=>(0,W.jsx)(hC,{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 _C(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 vC(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)(aC,{...t}):e.tab===`http`?(0,W.jsx)(mS,{...t}):e.tab===`messages`?(0,W.jsx)(hS,{trace:e.trace,onSelect:e.onSelect}):e.tab===`logs`?(0,W.jsx)(kS,{trace:e.trace,onSelect:e.onSelect}):e.tab===`errors`?(0,W.jsx)(jS,{trace:e.trace,onSelect:e.onSelect}):(0,W.jsx)(gC,{trace:e.trace,selected:e.selected,highlight:e.highlight,onSelect:e.onSelect})}function yC(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:_C(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)(vC,{...e})}),t&&(0,W.jsx)(iC,{span:t,trace:e.trace,onClose:()=>e.onSelect(null)})]})]})}var bC=1500;function xC(e){let t=Se(),[n,r]=(0,E.useState)(null),[i,a]=(0,E.useState)(null),[o,s]=(0,E.useState)(!1),c=(0,E.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,E.useEffect)(()=>{r(null),c();let e=setTimeout(c,bC);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 SC=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 CC(e,t,n){let[r,i]=(0,E.useState)(t&&t!==`insights`?t:`timeline`);return(0,E.useEffect)(()=>{t&&t!==`insights`&&i(t)},[t]),[r,t=>{i(t),n&&history.replaceState(null,``,`#/traces/${e}/${t}`)}]}function wC({trace:e,view:t,loading:n=!1,onRefresh:r,shared:i=!1,actions:a}){let[o,s]=CC(e.traceId,t,!i),[c,l]=(0,E.useState)(null),[u,d]=(0,E.useState)(new Set);(0,E.useEffect)(()=>{t===`insights`&&document.getElementById(`wl-insights`)?.scrollIntoView({block:`start`})},[t]);let f=Se().info?.analysis,p=(0,E.useMemo)(()=>bn(e,f??{}),[e,f]),m=(0,E.useMemo)(()=>wn(e),[e]),h=xn({status:e.rootStatusCode,error:e.errorCount>0,totalMs:m.totalMs,insights:Sn(p).length});return(0,W.jsxs)(`div`,{className:`wl-detail`,children:[(0,W.jsx)(ux,{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)(uS,{trace:e})]}),tags:i?null:(0,W.jsx)(lS,{trace:e})}),(0,W.jsx)(`div`,{id:`wl-insights`,children:(0,W.jsx)(Lb,{findings:p,onSelect:e=>{d(new Set(e.spanIds)),l(e.spanIds[0]??null),s(SC(e))}})}),(0,W.jsx)(yC,{trace:e,findings:p,tab:o,selected:c,highlight:u,onTab:s,onSelect:e=>(l(e),d(new Set))})]})}function TC({traceId:e,view:t}){let{trace:n,error:r,loading:i,reload:a}=xC(e),o=H().has(`sharing`);return n?(0,W.jsx)(wC,{trace:n,view:t,loading:i,onRefresh:a,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(tx,{trace:n}),(0,W.jsx)($b,{trace:n}),o&&(0,W.jsx)(Qb,{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 EC({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)(y_,{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 DC(e,t){let[n,r]=[wn(e),wn(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 OC(e,t){let n=e=>{let t=Ot(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 kC=(e,t)=>e.ms?q(t):J(t);function AC({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?`+`:`−`,kC(e,Math.abs(t))]})}var jC=(e,t,n)=>[{key:`label`,header:n,cell:e=>e.label},{key:`a`,header:`A · ${Fb(e.traceId)}`,num:!0,cell:e=>kC(e,e.a)},{key:`b`,header:`B · ${Fb(t.traceId)}`,num:!0,cell:e=>kC(e,e.b)},{key:`diff`,header:`B − A`,num:!0,cell:e=>(0,W.jsx)(AC,{l:e})}];function MC({trace:e,label:t}){return(0,W.jsx)(G,{title:`${t}: ${e.rootName}`,action:(0,W.jsx)(pb,{href:y(e.traceId),label:`Open trace`}),children:(0,W.jsx)(gC,{trace:e,selected:null,highlight:new Set,onSelect:()=>{}})})}function NC({a:e,b:t}){let n=xC(e),r=xC(t),i=(0,W.jsx)(EC,{back:[y(e),`Back to trace`],icon:kv,title:`Compare traces`,stats:[[`A`,Fb(e)],[`B`,Fb(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:jC(n.trace,r.trace,``),rows:DC(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:jC(n.trace,r.trace,`Service`),rows:OC(n.trace,r.trace),rowKey:e=>e.label})})]}),(0,W.jsx)(MC,{trace:n.trace,label:`A`}),(0,W.jsx)(MC,{trace:r.trace,label:`B`})]})}var PC=[[`300000`,`5 minutes`],[`900000`,`15 minutes`],[`3600000`,`1 hour`],[`21600000`,`6 hours`],[`86400000`,`24 hours`]],FC=[[`0`,`No reminders`],[`900000`,`Remind every 15 minutes`],[`3600000`,`Remind every hour`],[`14400000`,`Remind every 4 hours`],[`86400000`,`Remind every day`]],IC=e=>PC.find(([t])=>Number(t)===e)?.[1]??`${Math.round(e/6e4)} min`,LC={">":`>`,"<":`<`,">=":`≥`,"<=":`≤`,above_normal:`above normal`},RC={2:`high`,3:`medium`,4:`low`},zC=e=>e.metric===`metric`?``:e.metric===`slo`?`×`:Qd[e.metric].unit,BC=e=>Number.isInteger(e)?String(e):Math.abs(e)<1?e.toPrecision(3):e.toFixed(1),VC=(e,t)=>t===null?`–`:`${BC(t)}${zC(e)===`%`||zC(e)===`×`?zC(e):zC(e)?` ${zC(e)}`:``}`;function HC(e){if(e.metric===`metric`)return`${e.metricName} ${Hf[e.metricStat||`avg`].toLowerCase()}${e.metricService?` (${e.metricService})`:``}`;if(e.metric===`slo`)return`SLO burn rate`;if(e.metric===`log_count`&&$d(e.logSearch??{}))return`Log lines (${$d(e.logSearch??{})})`;let t=e.endpoint?` of ${e.endpoint} (${e.service})`:e.service?` of ${e.service}`:``;return`${Qd[e.metric].label}${t}`}var UC=e=>e.op===`above_normal`?`above normal (${RC[e.threshold]??`${e.threshold} spreads`})`:`${LC[e.op]} ${VC(e,e.threshold)}`,WC=e=>`${HC(e)} ${UC(e)} over ${IC(e.windowMs)}${e.env?` · ${e.env}`:``}`;function GC(){let e=H().has(`accounts`),t=Me(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 KC=e=>({webhook:`Webhook`,slack:`Slack`,teams:`Teams`,discord:`Discord`,pagerduty:`PagerDuty`,email:`Email`})[e.kind],qC=[[`slack`,`Slack incoming webhook`],[`teams`,`Microsoft Teams webhook`],[`discord`,`Discord webhook`],[`pagerduty`,`PagerDuty (Events API v2)`],[`webhook`,`Webhook (JSON)`]],JC=[...qC,[`email`,`Email to members`]],YC={slack:`https://hooks.slack.com/services/…`,teams:`https://….webhook.office.com/…`,discord:`https://discord.com/api/webhooks/…`,webhook:`https://example.com/wizelens`};function XC({to:e,onChange:t}){let n=Ce(),r=Me(n)?.org,{data:i}=zx(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)(Xx,{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 ZC=e=>e===`email`?{kind:e,to:[]}:e===`pagerduty`?{kind:e,routingKey:``}:{kind:e,url:``};function QC({channel:e,onChange:t,onRemove:n}){let r=H().has(`accounts`);return(0,W.jsxs)(`div`,{className:`wl-alert-channel`,children:[(0,W.jsxs)(Yx,{children:[(0,W.jsx)(X,{label:`Send to`,value:e.kind,options:r?JC:qC,onChange:n=>t(n===e.kind?e:ZC(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:YC[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)(sb,{size:16})})]}),e.kind===`email`&&(0,W.jsx)(XC,{to:e.to,onChange:e=>t({kind:`email`,to:e})})]})}function $C({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)(QC,{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,ZC(`slack`)]),children:[(0,W.jsx)(dy,{"aria-hidden":`true`}),` Add a channel`]})]})}var ew=[[`>`,`is above`],[`>=`,`is at or above`],[`<`,`is below`],[`<=`,`is at or below`],[`above_normal`,`is above normal`]],tw=[[`2`,`High sensitivity`],[`3`,`Medium sensitivity`],[`4`,`Low sensitivity`]];function nw({r:e,set:t}){let n=Pi(e.metric)?ew:ew.filter(([e])=>e!==`above_normal`),r=tw.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:tw,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 rw=()=>(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.`}),iw=[[``,`Any level`],[`debug`,`Debug and up`],[`info`,`Info and up`],[`warn`,`Warnings and up`],[`error`,`Errors and up`],[`critical`,`Critical only`]],aw=[[``,`In and outside requests`],[`request`,`In requests`],[`outside`,`Outside requests`]];function ow({search:e,onChange:t}){let n=n=>r=>t(Gf({...e,[n]:r}));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(Yx,{children:[(0,W.jsx)(X,{label:`Level`,value:e.level??``,options:iw,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:aw,onChange:n(`origin`)})]}),(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Counts the log lines that match `,$d(e)?(0,W.jsx)(`strong`,{children:$d(e)}):`every line`,` over the window.`,(e.category||e.pattern)&&` The category and pattern from the Logs page apply too.`]})]})}var sw=Object.entries(Hf),cw=`wl-alert-metric-names`;function lw({r:e,set:t}){let n=c().project,{data:r}=zx(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)(Yx,{children:[(0,W.jsx)(Z,{label:`Metric name`,required:!0,list:cw,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:sw,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:cw,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 uw=3e5,dw={build:``,dismissed:``,subs:new Set};function fw(e){dw.build!==e&&(dw.build=e,dw.subs.forEach(e=>e()))}async function pw(){try{let e=await fetch(`./version.json`,{cache:`no-store`}),t=e.ok?await e.json():null;typeof t?.build==`string`&&t.build!==`mvghioax`&&fw(t.build)}catch{}}function mw(){fw(dw.build||`unknown`)}function hw(){dw.dismissed=dw.build,dw.subs.forEach(e=>e())}function gw(){window.addEventListener(`vite:preloadError`,e=>(e.preventDefault(),mw())),document.addEventListener(`visibilitychange`,()=>document.visibilityState===`visible`&&void pw()),setInterval(()=>document.visibilityState===`visible`&&void pw(),uw)}var _w=e=>(dw.subs.add(e),()=>void dw.subs.delete(e));function vw(){return(0,E.useSyncExternalStore)(_w,()=>!!dw.build&&dw.build!==dw.dismissed)}var yw={url:``,stream:null,users:0,tick:0,subs:new Set};function bw(e){yw.url!==e&&(yw.stream?.close(),yw.url=e,yw.stream=new EventSource(e),yw.stream.addEventListener(`data`,()=>(yw.tick+=1,yw.subs.forEach(e=>e()))),yw.stream.addEventListener(`open`,()=>void pw())),yw.users+=1}function xw(){--yw.users,!(yw.users>0)&&(yw.stream?.close(),yw.stream=null,yw.url=``)}var Sw=e=>(yw.subs.add(e),()=>void yw.subs.delete(e));function Cw(){let e=H().has(`changes`)&&typeof EventSource<`u`,t=c().project,n=e?`./api/changes${t?`?project=${encodeURIComponent(t)}`:``}`:null;return(0,E.useEffect)(()=>{if(n)return bw(n),xw},[n]),(0,E.useSyncExternalStore)(Sw,()=>yw.tick)}var ww=new Set,Tw=0,Ew=()=>(0,E.useSyncExternalStore)(e=>(ww.add(e),()=>ww.delete(e)),()=>Tw);function Dw(e,t){return e?`./api/projects/${encodeURIComponent(t)}/issues`:`./api/issues?project=${encodeURIComponent(t)}`}function Ow(){let e=H(),[t]=b(),n=e.has(`accounts`),r=e.has(`issues`)&&(!n||!!t),{data:i}=zx(r&&n?Dw(!0,t):null);return{on:r,members:i?.members??[]}}async function kw(e,t,n,r,i={}){try{await x(`POST`,Dw(e,c().project),{kind:t,key:n,action:r,...i}),Tw++;for(let e of ww)e();return null}catch(e){return e instanceof Error?e.message:String(e)}}var Aw=new Set,jw=[];function Mw(e){if(e&&JSON.stringify(e)!==JSON.stringify(jw)){jw=e;for(let e of Aw)e()}}function Nw(){let e=(0,E.useSyncExternalStore)(e=>(Aw.add(e),()=>Aw.delete(e)),()=>jw),[t]=u();return t?e.filter(e=>e.service===t):e}var Pw=(0,E.createContext)(null);function Fw(e){let t=(0,E.useContext)(Pw);return t&&t.page===e?t:null}var Iw={window:`wizelens.ui.window`,compare:`wizelens.ui.compare`,tz:`wizelens.ui.tz`,clock:`wizelens.ui.clock`},Lw=e=>e===``||/^\d+-\d+$/.test(e),Rw=e=>e===`previous`||e===`week`,zw=e=>e===`local`||e===`utc`,Bw=e=>e===`12`||e===`24`;function Vw(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 Hw=e=>e?`${Math.floor(e.from)}-${Math.floor(e.to)}`:``,Uw=()=>s(Iw.window,``,Lw),Ww=()=>s(Iw.compare,`previous`,Rw),Gw=()=>s(Iw.tz,`local`,zw),Kw=()=>s(Iw.clock,`12`,Bw);function qw(){let e=Ge(Iw.compare);return{window:Vw(Ge(Iw.window)),compare:e===`week`?`week`:`previous`}}function Jw(e,t){return{...e?{from:String(e.from),to:String(e.to)}:{},...t===`week`?{compare:t}:{}}}var Yw=e=>l(Iw.window,Hw(e)),Xw=e=>l(Iw.compare,e),Zw=100,Qw={},$w=15e3,eT=12e4,tT=new Set([`services`,`service`]);function nT(e,t,n,r=Qw){let i=n&&!tT.has(e)&&!t.service?{service:n}:{};return{...r,...i,...t}}function rT(){let[e]=Uw(),[t]=Ww();return(0,E.useMemo)(()=>Jw(Vw(e),t),[e,t])}function iT(e,t=Qw){let{query:n}=i(),[r]=u(),a=rT(),o=new URLSearchParams({...nT(e,Object.fromEntries(n),r,a),...t}).toString();return(0,E.useMemo)(()=>Object.fromEntries(new URLSearchParams(o)),[o])}var aT=new WeakMap;function oT(e,t){let n=aT.get(e);n||aT.set(e,n=new Map);let r=n.get(t);return r||n.set(t,r=Pp(e,{slowQueryMs:t})),r}var sT=[];function cT(e,t,n,r,i,a,o){let s=oc(n,i,t,{slowQueryMs:a}),c=Eh[e],l=c&&Th(t.q)?{searchIds:Dh(r,c,t.q,s.window,o)}:{};return Xf(e,{...s,...l},oT(r,a))}function lT(e,t,n){let r=Se(),[i]=Zg(),a=r.info?.analysis?.slowQueryMs??Zw,o=xx()?.active??sT;return{model:(0,E.useMemo)(()=>n?cT(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 uT(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 dT(e,t,n){let[r]=Zg(),{updatedMs:i}=Se(),a=`${`${Cw()}.${Ew()}`} ${Math.floor(i/(H().has(`changes`)?eT:$w))}`,o=n?uT(e,t,r):null,[s,c]=(0,E.useState)({url:null,model:null,error:null});return(0,E.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 fT(e,t,n,r){let{window:i,compare:a}=qw(),o=nT(e,t,c().service,Jw(i,a));if(r)return ne(uT(e,o,n));let s=m.getSnapshot(),l=s.info?.analysis?.slowQueryMs??Zw;return cT(e,o,n,s.traces,s.updatedMs,l,wg(Sx()))}function pT(){let e=H().has(`serverStats`),t=dT(`badges`,Qw,e);return e?t.model?.errors??0:null}function mT(e,t){let[n]=u(),r=new URLSearchParams(nT(e,t,n)).toString(),i=(0,E.useMemo)(()=>Object.fromEntries(new URLSearchParams(r)),[r]),a=H().has(`serverStats`),o=lT(e,i,!a),s=dT(e,i,a);return a?s:o}function hT(e,t,n=!1){let r=iT(e,t),i=H().has(`serverStats`),a=Fw(e),o=lT(e,r,!i&&!a),s=dT(e,r,i&&!a),c=gT(i?s:o,n,JSON.stringify(r)),l=a?{model:a.model,loading:!1,error:null}:c,u=l.model?.meta?.releases;return(0,E.useEffect)(()=>Mw(u),[u]),l}function gT(e,t,n){let r=(0,E.useRef)(null);return t&&r.current?.key===n?r.current.m:(e.model&&(r.current={key:n,m:e}),e)}var _T=`wl-alert-services`,vT=`wl-alert-endpoints`;function yT({service:e}){let{model:t}=hT(`service`,{service:`api:${_r(e)}`});return(0,W.jsx)(`datalist`,{id:vT,children:t?.endpoints.map(e=>(0,W.jsx)(`option`,{value:e.name},e.name))})}function bT({r:e,set:t}){let{model:n}=hT(`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)(Yx,{children:[(0,W.jsx)(Z,{label:`Service (optional)`,list:_T,value:e.service,onChange:e=>t(`service`)(e.target.value),placeholder:`All services`}),(0,W.jsx)(Z,{label:`Endpoint (optional)`,list:vT,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:_T,children:r.map(e=>(0,W.jsx)(`option`,{value:e},e))}),e.service&&!i&&(0,W.jsx)(yT,{service:e.service})]})}function xT(){let e=H().has(`accounts`),t=Me(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 ST=(e,t)=>{if(e===null)return`–`;let n=Math.max(1,(String(t).split(`.`)[1]??``).length);return`${e.toFixed(n)}%`},CT=e=>e===null?`–`:`${e.toFixed(1)}×`,wT=e=>e===null?`–`:e>0?`${Math.round(e*100)}%`:`Spent: ${(1-e).toFixed(1)}× the budget`,TT=e=>e===null?`neutral`:e<=0?`danger`:e<.25?`warning`:`success`;function ET(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 DT({r:e,set:t}){let n=xT(),{data:r}=zx(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)(Yx,{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 OT=[...Object.entries(Qd).map(([e,t])=>[e,`${t.label}${t.unit?` (${t.unit})`:``}`]),[`metric`,`A metric (CPU, memory, your own)`],[`slo`,`An SLO's burn rate (×)`]],kT={name:``,metric:`error_rate`,metricName:``,metricStat:``,metricService:``,op:`>`,threshold:5,windowMs:3e5,env:``,service:``,endpoint:``,channels:[],enabled:!0,remindMs:0,sloId:``,logSearch:{}},AT=e=>Object.fromEntries(Object.keys(kT).map(t=>[t,e[t]]));function jT(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{...AT(e),...n,...i,channels:r}}function MT({initial:e,title:t,onSave:n,onCancel:r}){let[i,a]=(0,E.useState)(e),[o,s]=(0,E.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(jT(i)).then(s)},children:[(0,W.jsxs)(Yx,{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)(Yx,{children:[(0,W.jsx)(X,{label:`Metric`,value:i.metric,options:OT,onChange:e=>(c(`metric`)(e),!Pi(e)&&i.op===`above_normal`&&c(`op`)(`>`))}),(0,W.jsx)(nw,{r:i,set:c}),(0,W.jsx)(X,{label:`Over the last`,value:String(i.windowMs),options:PC,onChange:e=>c(`windowMs`)(Number(e))})]}),i.op===`above_normal`&&(0,W.jsx)(rw,{}),i.metric===`metric`?(0,W.jsx)(lw,{r:i,set:c}):i.metric===`slo`?(0,W.jsx)(DT,{r:i,set:c}):i.metric===`log_count`?(0,W.jsx)(ow,{search:i.logSearch??{},onChange:c(`logSearch`)}):(0,W.jsx)(bT,{r:i,set:c}),(0,W.jsxs)(Yx,{children:[(0,W.jsx)(X,{label:`Remind while firing`,value:String(i.remindMs),options:FC,onChange:e=>c(`remindMs`)(Number(e))}),(0,W.jsx)(Xx,{label:`On`,checked:i.enabled,onChange:e=>c(`enabled`)(e.target.checked)})]}),(0,W.jsx)($C,{channels:i.channels,onChange:c(`channels`)}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),(0,W.jsxs)(Yx,{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 NT(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 PT=(e,t=4)=>Array.from({length:t+1},(n,r)=>e/t*r);function FT(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 IT(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 LT=e=>Math.max(0,...e.flatMap(e=>e.map(e=>e??0))),RT=6;function zT(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 BT(e,t){let n=e.flatMap(e=>{let n=zT(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 VT=e=>e.length===1?e[0].version:`${e.length} releases`;function HT({releases:e,starts:t,at:n,top:r,base:i}){let a=BT(e,t),o=a.length<=RT;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 ${Ob(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:VT(t)})]},e)})})}var UT=e=>e.length>1?e[e.length-1]-e[0]:0,WT={left:44,right:8,top:10,bottom:26};function GT(){let e=(0,E.useRef)(null),[t,n]=(0,E.useState)(600);return(0,E.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 KT(e,t,n){let r=Math.max(1,e.starts.length),i=(t-WT.left-WT.right)/r,a=NT(LT((e.lines??[]).map(e=>e.values))),o=NT(LT(e.stackBars?[JT(e)]:(e.bars??[]).map(e=>e.values))),s=e.separateBarScale||!e.lines?.length?e.lines?.length?a:o:Math.max(a,o),c=n-WT.bottom,l=c-WT.top,u=e.separateBarScale?o:s;return{x:e=>WT.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 qT({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:[PT(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:WT.left,x2:n-WT.right,y1:t.y(e),y2:t.y(e)}),(0,W.jsx)(`text`,{className:`wl-chart-axis`,x:WT.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:Ab(n,UT(e.starts))},n))]})}var JT=e=>e.starts.map((t,n)=>(e.bars??[]).reduce((e,t)=>e+(t.values[n]??0),0));function YT({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 XT({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 ZT({p:e,f:t}){return(0,W.jsxs)(`g`,{children:[e.stackBars?(0,W.jsx)(YT,{p:e,f:t}):(0,W.jsx)(XT,{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:IT(n.values,t.x,t.y,t.base),fill:n.color,opacity:e.areas?.18:.08}),(0,W.jsx)(`path`,{d:FT(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 QT({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(zT(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:jb(e.starts[t],UT(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 $T(e,t){let[n,r]=(0,E.useState)(null),i=(0,E.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];Yw({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 eE(e){let[t,n]=GT(),[r,i]=(0,E.useState)(null),a=e.height??200,o=KT(e,n,a),s=$T(e,o),c=Nw(),l=e.releases===!1?[]:c,u=e=>Math.floor((e.clientX-e.currentTarget.getBoundingClientRect().left-WT.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)(qT,{p:e,f:o,width:n}),(0,W.jsx)(ZT,{p:e,f:o}),(0,W.jsx)(HT,{releases:l,starts:e.starts,at:e=>WT.left+o.slot*e,top:WT.top,base:o.base}),s.band&&(0,W.jsx)(`rect`,{className:`wl-chart-band`,x:s.band.x,y:WT.top,width:s.band.w,height:o.base-WT.top}),r!==null&&(0,W.jsx)(`line`,{x1:o.x(r),x2:o.x(r),y1:WT.top,y2:o.base,stroke:`var(--wl-line-strong)`})]}),r!==null&&(0,W.jsx)(QT,{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 tE=36e5,nE=[[``,`Mute…`],[String(tE),`For 1 hour`],[String(4*tE),`For 4 hours`],[String(24*tE),`For 1 day`],[`-1`,`Until I unmute`]];function rE({rule:e}){let t=Date.now();if(!e.enabled)return(0,W.jsx)(Y,{tone:`neutral`,children:`Off`});let n=ef(e,t)&&(0,W.jsx)(Y,{tone:`neutral`,children:e.mutedUntilMs===864e13?`Muted`:`Muted until ${Ob(e.mutedUntilMs)}`}),r=(0,W.jsx)(Hb,{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 iE({rule:e,url:t,onDone:n,onEdit:r,onDelete:i}){let[a,o]=(0,E.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=ef(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:nE,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 aE=60;function oE(e,t,n){let r=(n-t)/aE,i=Array.from({length:aE},(e,n)=>t+n*r),a=Array(aE).fill(null);for(let n of e){let e=Math.floor((n.timeMs-t)/r);e>=0&&e<aE&&n.value!==null&&(a[e]=n.value)}return{starts:i,values:a}}function sE(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 cE(){let[e]=Zg(),[t]=Uw();return(0,E.useMemo)(()=>{let n=Vw(t),r=n?.to??Date.now();return{from:n?.from??r-fe[e].ms,to:r}},[e,t])}function lE({d:e,api:t,reload:n}){let[r,i]=(0,E.useState)(null),a=cE(),o=e.rule,s=oE(e.values,a.from,a.to),c=o.metric===`metric`?void 0:o.metric===`slo`?`×`:Qd[o.metric].unit,l=e=>VC(o,e),u=sE(o,a.from,a.to),d=[[`Rule`,WC(o)],[`Last value`,VC(o,o.lastValue)],[`Checked`,o.lastEvalMs?Ob(o.lastEvalMs):`Not yet`],[`Sends to`,o.channels.map(KC).join(`, `)||`Dashboard only`]],f=t.canWrite?(0,W.jsx)(iE,{rule:o,url:t.url,onDone:e=>(i(e??null),n())}):void 0;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(EC,{back:[`#/alerts`,`All alerts`],icon:k_,title:o.name,badge:(0,W.jsx)(rE,{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, ${IC(o.windowMs)} windows)`,action:u&&(0,W.jsx)(pb,{href:u,label:`View the traces`}),children:(0,W.jsx)(eE,{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:mE(!1),rows:e.events,rowKey:e=>e.id,empty:(0,W.jsx)(K,{children:`Nothing happened to this alert yet.`})})})]})}function uE({id:e}){let t=GC(),n=cE(),r=t.url(`/${encodeURIComponent(e)}`),{data:i,error:a,reload:o}=zx(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)(lE,{d:i,api:t,reload:o}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:`Loading…`})})})}function dE(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=>WC(e)},{key:`state`,header:`State`,cell:e=>(0,W.jsx)(rE,{rule:e})},{key:`value`,header:`Last value`,num:!0,cell:e=>VC(e,e.lastValue)},{key:`to`,header:`Sends to`,cell:e=>e.channels.map(KC).join(`, `)||`Dashboard only`},...e?[{key:`actions`,header:``,cell:e=>(0,W.jsx)(iE,{rule:e,url:t,onDone:n,onEdit:()=>r(e),onDelete:()=>i(e)})}]:[]]}var fE={fired:`danger`,resolved:`success`,remind:`warning`,test:`info`,ack:`info`,mute:`neutral`,unmute:`neutral`},pE={fired:`Fired`,resolved:`Resolved`,remind:`Reminder`,test:`Test`,ack:`Acknowledged`,mute:`Muted`,unmute:`Unmuted`},mE=e=>[{key:`time`,header:`When`,cell:e=>Nb(e.timeMs),className:`wl-nowrap`},{key:`kind`,header:``,cell:e=>(0,W.jsx)(Y,{tone:fE[e.kind],children:pE[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`}],hE=[`name`,`metric`,`service`,`endpoint`,`metricName`,`metricStat`,`metricService`,`sloId`,`op`],gE=[`threshold`,`windowMs`],_E=[...hE,...gE];function vE(e){let t={};try{t=Gf(JSON.parse(e))}catch{}return{...kT,name:$d(t).slice(0,100)||`Log lines`,metric:`log_count`,threshold:10,logSearch:t}}function yE(e){let t=e.get(`log`);if(t)return vE(t);let n=Object.fromEntries(hE.filter(t=>e.get(t)).map(t=>[t,e.get(t)])),r=Object.fromEntries(gE.filter(t=>Number.isFinite(Number(e.get(t)))&&e.get(t)).map(t=>[t,Number(e.get(t))]));return{...kT,...n,...r}}function bE(){let[e]=i().params;return H().has(`alerts`)?e?(0,W.jsx)(uE,{id:C(e)},e):(0,W.jsx)(xE,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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 xE(){let e=GC(),t=i().query,{data:r,error:a,reload:o}=zx(e.ready?e.url():null),[s,c]=(0,E.useState)(null),[l,u]=(0,E.useState)(null),d=t.get(`new`)===`1`,f=()=>(c(null),d&&n({new:null,log:null,...Object.fromEntries(_E.map(e=>[e,null]))})),p=async t=>{let n=await Bx(()=>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 Bx(()=>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)(dy,{"aria-hidden":`true`}),` New alert`]}),_=s?(0,W.jsx)(MT,{title:`Edit "${s.name}"`,initial:AT(s),onSave:p,onCancel:f},s.id):d&&e.canWrite?(0,W.jsx)(MT,{title:`New alert`,initial:yE(t),onSave:p,onCancel:f}):null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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:dE(e.canWrite,e.url,m,c,h),rows:r?.rules??[],rowKey:e=>e.id,onRowClick:e=>T(pe(e.id)),empty:(0,W.jsxs)(K,{title:`No alerts yet`,children:[(0,W.jsx)(k_,{"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:mE(!0),rows:r?.events??[],rowKey:e=>e.id,onRowClick:e=>T(pe(e.ruleId)),empty:(0,W.jsx)(K,{children:`Nothing fired yet.`})})})]})}function SE({targets:e,url:t,canWrite:n,onSaved:r}){let{model:i}=hT(`services`),a=[...new Set((i?.rows??[]).filter(e=>e.kind===`api`||e.kind===`worker`).map(e=>e.name))].sort(),[o,s]=(0,E.useState)({}),[c,l]=(0,E.useState)(null);return(0,E.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 CE={name:``,service:``,endpoint:``,kind:`success`,target:99.9,thresholdMs:500,windowDays:30},wE=[[`success`,`Requests succeed`],[`latency`,`Requests are fast enough`]],TE=[[`30`,`Over 30 days`],[`7`,`Over 7 days`]];function EE(){let{model:e}=hT(`services`);return[...new Set((e?.rows??[]).filter(e=>e.kind===`api`||e.kind===`worker`||e.kind===`web`).map(e=>e.name))]}function DE({initial:e,title:t,onSave:n,onCancel:r}){let[i,a]=(0,E.useState)(e),[o,s]=(0,E.useState)(null),c=EE(),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)(Yx,{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)(Yx,{children:[(0,W.jsx)(X,{label:`Good means`,value:i.kind,options:wE,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:TE,onChange:e=>l(`windowDays`)(Number(e))})]}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),(0,W.jsxs)(Yx,{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 OE=`14.4`;function kE({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)(eE,{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)(eE,{starts:t.starts,format:t=>ST(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 AE({r:e,url:t,canWrite:n,reload:r}){let[i,a]=(0,E.useState)(!1),o=H().has(`alerts`),s=e.status,c=[[`Goal`,ET(e.slo)],[`Now`,ST(s.sli,e.slo.target)],[`Requests`,J(s.total)],[`Burn now`,`${CT(e.burn1h)} (1 h), ${CT(e.burn6h)} (6 h)`]],l=async e=>{let n=await Bx(()=>x(`PATCH`,t,e),r);return n||a(!1),n},u=()=>void Bx(()=>x(`DELETE`,t),()=>T(`#/slos`)),d=Ue({metric:`slo`,sloId:e.slo.id,op:`>`,threshold:OE,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)(T_,{"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)(EC,{back:[`#/slos`,`All SLOs`],icon:Gy,title:e.slo.name,badge:(0,W.jsx)(Y,{tone:TT(s.budgetLeft),children:s.budgetLeft!==null&&s.budgetLeft>0?`${wT(s.budgetLeft)} of budget left`:wT(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)(DE,{title:`Edit "${e.slo.name}"`,initial:e.slo,onSave:l,onCancel:()=>a(!1)}),(0,W.jsx)(kE,{r:e})]})}function jE({id:e}){let t=xT(),n=t.url(`/${encodeURIComponent(e)}`),{data:r,error:i,reload:a}=zx(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)(AE,{r,url:n,canWrite:t.canWrite,reload:a}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:`Loading…`})})})}var ME=[{key:`name`,header:`SLO`,cell:e=>(0,W.jsx)(`strong`,{children:e.slo.name})},{key:`goal`,header:`Goal`,className:`wl-wrap`,cell:e=>ET(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:ST(e.status.sli,e.slo.target)})},{key:`budget`,header:`Budget Left`,num:!0,cell:e=>(0,W.jsx)(Y,{tone:TT(e.status.budgetLeft),children:wT(e.status.budgetLeft)})},{key:`burn`,header:`Burn (1 h / 6 h)`,num:!0,className:`wl-nowrap`,cell:e=>`${CT(e.burn1h)} / ${CT(e.burn6h)}`},{key:`total`,header:`Requests`,num:!0,cell:e=>e.status.total.toLocaleString()}];function NE(){let[e]=i().params;return H().has(`slos`)?e?(0,W.jsx)(jE,{id:C(e)},e):(0,W.jsx)(PE,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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 PE(){let e=xT(),{data:t,error:n,reload:r}=zx(e.ready?e.url():null),[i,a]=(0,E.useState)(!1),o=async t=>{let n=await Bx(()=>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)(dy,{"aria-hidden":`true`}),` New SLO`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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)(DE,{title:`New SLO`,initial:CE,onSave:o,onCancel:()=>a(!1)}),(0,W.jsx)(G,{title:`Objectives`,flush:!0,children:(0,W.jsx)(Q,{columns:ME,rows:t?.slos??[],rowKey:e=>e.slo.id,onRowClick:e=>T(Ve(e.slo.id)),empty:(0,W.jsxs)(K,{title:`No SLOs yet`,children:[(0,W.jsx)(Gy,{"aria-hidden":`true`}),` Add one to track an error budget for a service or an endpoint.`]})})}),t&&(0,W.jsx)(SE,{targets:t.apdex,url:e.apdexUrl,canWrite:e.canWrite,onSaved:r})]})}var FE=new Set,IE=0,LE=()=>(IE++,FE.forEach(e=>e())),RE=()=>(0,E.useSyncExternalStore)(e=>(FE.add(e),()=>FE.delete(e)),()=>IE);function zE(){let e=H(),t=e.has(`accounts`),n=Me(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 BE(e){let t=zE(),n=RE(),r=t.url(),{data:i,error:a}=zx(t.on&&t.ready?`${r}${r.includes(`?`)?`&`:`?`}t=${n}`:null);return{items:(i?.items??[]).filter(t=>!e||t.kind===e),error:a}}async function VE(e,t,n){let r=await x(t,e,n);return LE(),`id`in r?r:null}var HE=3e4,UE=`1h`;function WE(){let[e,t]=(0,E.useState)(0);return(0,E.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),HE);return()=>clearInterval(e)},[]),e}function GE(e,t,n){let r=rT(),[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,E.useMemo)(()=>e.map(o),[a])}function KE(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 qE(e,t,n){let r=H(),[i]=Zg(),a=GE(e,t,n),o=WE(),s=r.has(`serverMetrics`),c=s?i:fe[i].ms>fe[UE].ms?UE:i,[l,u]=(0,E.useState)({details:[],loading:!0,error:null});return(0,E.useEffect)(()=>{let e=!0;return(s?Promise.all(a.map(e=>ne(KE(e,c)).then(e=>e.selected))):ne(`./api/metrics/points?since=${Math.floor(Date.now()-fe[c].ms)}`).then(e=>a.map(t=>gp({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 JE=1e4,YE=`1h`;function XE(e){let{query:t}=i(),[n]=u(),r=rT(),a=Object.fromEntries(t),o=new URLSearchParams({...r,...n&&!a.service?{service:n}:{},...a,...e}).toString();return(0,E.useMemo)(()=>Object.fromEntries(new URLSearchParams(o)),[o])}function ZE(e){let[t,n]=(0,E.useState)(0);return(0,E.useEffect)(()=>{let t=setInterval(()=>n(e=>e+1),e);return()=>clearInterval(t)},[e]),t}function QE(e,t){let[n,r]=(0,E.useState)({data:null,url:null,error:null});return(0,E.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 $E(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 eD(e){let t=H(),[n]=Zg(),r=XE(e),i=ZE(JE),a=t.has(`serverMetrics`)?`server`:t.has(`metrics`)?`points`:`none`,o=a===`points`&&fe[n].ms>fe[YE].ms,s=o?YE:n,c=QE(a===`server`?$E(r,s):null,i),l=(0,E.useMemo)(()=>Date.now()-fe[s].ms,[s,i]),u=QE(a===`points`?`./api/metrics/points?since=${Math.floor(l)}`:null,i),d=(0,E.useMemo)(()=>u.data?gp({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 tD=[[`line`,`Lines`],[`area`,`Areas`],[`bar`,`Stacked bars`],[`number`,`Numbers`],[`table`,`Table`]],nD=[[``,`Default`],[`p50`,`p50`],[`p95`,`p95`],[`p99`,`p99`],[`avg`,`Average`]],rD=[[`1`,`Half width`],[`2`,`Full width`]],iD=`wl-dash-metric-names`,aD={id:``,title:``,type:`line`,metrics:[{name:``,stat:``}],where:``,group:``,width:1};function oD({p:e,set:t}){let{details:n}=qE(e.metrics.filter(e=>e.name).slice(0,1),``,``),r=n[0],i=r?Object.keys(r.values):[],[a,o]=(0,E.useState)(``),s=n=>t({where:[...e.where.split(`,`).filter(Boolean),`${a}=${n}`].join(`,`)});return(0,W.jsxs)(Yx,{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 sD({initial:e,onSave:t,onCancel:n}){let[r,i]=(0,E.useState)(e),{model:a}=eD({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)(Yx,{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:tD,onChange:e=>o({type:e})}),(0,W.jsx)(X,{label:`Width`,value:String(r.width),options:rD,onChange:e=>o({width:e===`2`?2:1})})]}),r.metrics.map((e,t)=>(0,W.jsxs)(Yx,{children:[(0,W.jsx)(Z,{label:`Metric ${t+1}`,required:!0,list:iD,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:nD,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)(sb,{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)(dy,{"aria-hidden":`true`}),` Add a metric`]}),(0,W.jsx)(`datalist`,{id:iD,children:a?.catalog.map(e=>(0,W.jsx)(`option`,{value:e.name,children:e.lastText},e.name))}),(0,W.jsx)(oD,{p:r,set:o}),(0,W.jsxs)(Yx,{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 cD({values:e,width:t=86,height:n=30,color:r=`var(--wl-blue)`,stretch:i=!1}){let a=(0,E.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=LT([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:IT(e,s,c,n),fill:`url(#${a})`}),(0,W.jsx)(`path`,{d:FT(e,s,c),fill:`none`,stroke:r,strokeWidth:`1.6`,strokeLinejoin:`round`,strokeLinecap:`round`,vectorEffect:`non-scaling-stroke`})]})}function lD(e=[]){let{registry:t,traces:n}=Se(),r=e.join(`
|
|
21
|
-
`);return(0,E.useMemo)(()=>{let e=[...(t?.services??[]).map(e=>e.service),...n.flatMap(e=>e.services)];return[...new Set([...e.map(gr),...r?r.split(`
|
|
22
|
-
`):[]])].sort()},[t,n,r])}function uD(){let[,e]=u();return t=>{e(t),se(window.location.hash).page!==`services`&&n({page:null})}}function dD({value:e,services:t=[]}){let n=lD(e?[...t,e]:t),r=uD();return(0,W.jsx)(X,{label:`Service`,value:e,onChange:r,options:[[``,`All Services`],...n.map(e=>[e,e])]})}function fD(){let[e]=u(),t=uD();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)(sb,{size:14,"aria-hidden":`true`})]}):null}var pD=[`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)`],mD={runtime:`Runtime`,http:`HTTP`,database:`Database`,messaging:`Messaging`,rpc:`RPC`,custom:`Your metrics`};function hD({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)(cD,{values:r.spark,width:96,height:24})]},r.key))})]},e))})}function gD({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 _D({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)(gD,{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)(cD,{values:e.spark,width:72,height:22})]})})}function vD({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=uD();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)(qb,{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:mD[n]}),(0,W.jsx)(`ul`,{children:e.catalog.filter(e=>e.area===n).map(e=>(0,W.jsx)(_D,{m:e,active:t.metric===e.name},e.name))})]},n))]})}var yD=e=>t=>sf(t,e);function bD(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 xD=e=>[...e].reverse().find(e=>e!=null)??null;function SD({lines:e}){let t=(e,t)=>{let n=e.values.filter(e=>e!=null);return n.length?sf(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=>sf(xD(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 CD({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:sf(xD(e.values),e.unit)}),(0,W.jsx)(cD,{values:e.values,width:240,height:28,stretch:!0,color:pD[t%pD.length]})]},e.label))})}function wD(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)(SD,{lines:n});if(e.type===`number`)return(0,W.jsx)(CD,{lines:n});let r=n.slice(0,10).map((e,t)=>({label:e.label,values:e.values,color:pD[t%pD.length]})),i=yD(n[0].unit);return e.type===`bar`?(0,W.jsx)(eE,{starts:t,bars:r,stackBars:!0,format:i,height:220}):(0,W.jsx)(eE,{starts:t,lines:r,areas:e.type===`area`,format:i,height:220})}function TD({panel:e,actions:t}){let{details:n,loading:r,error:i}=qE(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…`}):wD(e,s,bD(n,a))]})}function ED({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)(C_,{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)(__,{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 DD({d:e,url:t,editable:n,reload:r}){let[i,a]=(0,E.useState)(null),[o,s]=(0,E.useState)(null),c=e=>void VE(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)(dy,{"aria-hidden":`true`}),` Add a chart`]}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>void VE(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 VE(t,`DELETE`).then(()=>T(`#/dashboards`)),children:`Delete`})]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(EC,{back:[`#/dashboards`,`All dashboards`],icon:Uv,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)(sD,{initial:i===`new`?aD: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)(TD,{panel:t,actions:n&&(0,W.jsx)(ED,{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 OD({id:e}){let t=zE(),n=Ce()?.user?.id??``,r=t.url(`/${encodeURIComponent(e)}`),{data:i,error:a,reload:o}=zx(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)(DD,{d:i,url:r,editable:s,reload:o})})}var kD=[{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=>Nb(e.updatedMs)}];function AD({onDone:e}){let t=zE(),[n,r]=(0,E.useState)(``),[i,a]=(0,E.useState)(!1),[o,s]=(0,E.useState)(null);return(0,W.jsx)(G,{title:`New dashboard`,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:r=>{r.preventDefault(),VE(t.url(),`POST`,{kind:`dashboard`,name:n,panels:[],shared:!t.cloud||i}).then(t=>(e(),t&&T(ke(t.id))),e=>s(e instanceof Error?e.message:String(e)))},children:[(0,W.jsxs)(Yx,{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)(Xx,{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)(Yx,{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 jD(){let e=zE(),{items:t,error:n}=BE(`dashboard`),[r,i]=(0,E.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)(dy,{"aria-hidden":`true`}),` New dashboard`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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)(AD,{onDone:()=>i(!1)}),(0,W.jsx)(G,{title:`Dashboards`,flush:!0,children:(0,W.jsx)(Q,{columns:kD,rows:t,rowKey:e=>e.id,onRowClick:e=>T(ke(e.id)),empty:(0,W.jsxs)(K,{title:`No dashboards yet`,children:[(0,W.jsx)(Uv,{"aria-hidden":`true`}),` Make one to put the metrics you watch on one page.`]})})})]})}function MD(){let[e]=i().params;return H().has(`saved`)?e?(0,W.jsx)(OD,{id:C(e)},e):(0,W.jsx)(jD,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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 ND=250;function PD(e,t={page:null}){let[r,i]=(0,E.useState)(e),a=JSON.stringify(t);return(0,E.useEffect)(()=>i(e),[e]),(0,E.useEffect)(()=>{if(r===e)return;let t=setTimeout(()=>n({q:r,...JSON.parse(a)}),ND);return()=>clearTimeout(t)},[r,e,a]),[r,i]}function FD({value:e}){let[t,n]=PD(e,{page:null});return(0,W.jsx)(qb,{value:t,onChange:n,placeholder:`Find a user by id…`})}function ID({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 LD({kind:e,itemOf:t,tagged:n,...r}){let i=jx(e,r.rows,t);return(0,W.jsx)(Q,{...r,columns:Lx(r.columns,n,i)})}function RD({group:e,docOf:t,tagged:n,...r}){let i=Mx();return(0,W.jsx)(Q,{...r,columns:Lx(r.columns,n,n=>i(e,t(n)))})}function zD({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?C_:__,{"aria-hidden":`true`}),yb(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)(zD,{change:r,upIsGood:i,compareLabel:a})}),o&&(0,W.jsx)(`div`,{className:`wl-stat-spark`,children:(0,W.jsx)(cD,{values:o,width:240,height:28,stretch:!0,color:s?`var(--wl-red)`:`var(--wl-blue)`})})]})}var BD=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Eb(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)(Hb,{tone:Bb(e.status),children:e.status??`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function VD({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:Tv,label:`Requests`,value:J(t.requests),series:e.chart.requests,...n,upIsGood:!0}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:t.errorRate===null?`–`:yb(t.errorRate),series:e.chart.errors,danger:!0,...n}),(0,W.jsx)($,{icon:tv,label:`Average`,value:q(t.avgMs),series:e.chart.avgMs,...n}),(0,W.jsx)($,{icon:qy,label:`p95`,value:q(t.p95Ms),...n})]})}function HD({m:e}){let t={user:e.user},n=Mx()(`users`,Mg(e.user)),r=[[`Requests`,J(e.totals.requests)],[`Failed`,J(e.totals.errors)],[`Error groups`,J(e.errors.length)]],i=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(pb,{href:S(`requests`,[],t),label:`Requests`}),(0,W.jsx)(pb,{href:S(`errors`,[],{...t,status:`all`}),label:`Errors`}),(0,W.jsx)(pb,{href:S(`logs`,[],t),label:`Logs`}),(0,W.jsx)(sS,{scopes:[Vg(e.user)]})]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(EC,{back:[`#/users`,`All users`],icon:tb,title:e.user,mono:!0,badge:(0,W.jsx)(Ix,{tags:n}),actions:i,stats:r}),(0,W.jsx)(VD,{m:e}),(0,W.jsx)(G,{title:`Requests Over Time`,children:(0,W.jsx)(eE,{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)(RD,{group:`errors`,docOf:e=>Pg(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=>T(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)(LD,{kind:`requests`,itemOf:Nx,tagged:`path`,columns:BD,rows:e.slowest,rowKey:e=>e.traceId,onRowClick:e=>T(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No requests.`})})})]}),(0,W.jsx)(G,{title:`Newest Requests`,flush:!0,children:(0,W.jsx)(LD,{kind:`requests`,itemOf:Nx,tagged:`path`,columns:BD,rows:e.recent,rowKey:e=>e.traceId,onRowClick:e=>T(S(`requests`,[],{trace:e.traceId})),empty:(0,W.jsx)(K,{children:`No requests.`})})})]})}function UD({user:e}){let{model:t,loading:n,error:r}=hT(`user`,{user:e});return(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[(0,W.jsx)(ID,{model:t,loading:n,error:r,what:`this user`}),t&&(t.totals?(0,W.jsx)(HD,{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 WD=[{key:`user`,header:`User`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(tb,{"aria-hidden":`true`}),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?`–`:yb(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=>Nb(e.lastSeenMs)}];function GD(){let{model:e,loading:t,error:a}=hT(`users`),o=i().query.get(`q`)??``;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{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)(FD,{value:o})}),(0,W.jsx)(ID,{model:e,loading:t,error:a,what:`users`}),e&&(0,W.jsxs)(G,{title:`Users (${J(e.total)})`,flush:!0,children:[(0,W.jsx)(RD,{group:`users`,docOf:e=>Mg(e.user),tagged:`user`,columns:WD,rows:e.users,rowKey:e=>e.user,onRowClick:e=>T(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`}),` (the add-ons do it from the signed-in user) to see them here.`]})}),e.total>0&&(0,W.jsx)(Yb,{page:e.page,pageSize:e.size,total:e.total,noun:`users`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})]})}function KD(){let[e]=i().params;return e?(0,W.jsx)(UD,{user:C(e)},e):(0,W.jsx)(GD,{})}var qD=`wl-oauth-query`,JD=new Set([`sig`,`exp`,`ba_iat`,`ba_pl`,`ba_param`]);function YD(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 XD=e=>Number(new URLSearchParams(e).get(`exp`)??0)*1e3<Date.now(),ZD={get:()=>{try{let e=sessionStorage.getItem(qD);return e&&!XD(e)?e:null}catch{return null}},set:e=>{try{e?sessionStorage.setItem(qD,e):sessionStorage.removeItem(qD)}catch{}}};function QD(e){let t=new URLSearchParams([...new URLSearchParams(e)].filter(([e])=>!JD.has(e)));window.location.assign(`api/auth/oauth2/authorize?${t.toString()}`)}var $D=e=>Te(t=>t.$fetch(`/oauth2/public-client`,{method:`GET`,query:{client_id:e}}));async function eO(e,t){await Te(n=>n.$fetch(`/wizelens/oauth-grant`,{method:`POST`,body:{...t,oauth_query:e}})),await tO(e,!0)}async function tO(e,t){let n=await Te(n=>n.$fetch(`/oauth2/consent`,{method:`POST`,body:{accept:t,oauth_query:e}}));ZD.set(null);let r=n.url??n.redirect_uri;r&&window.location.assign(r)}var nO=`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 rO({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:nO}),(0,W.jsx)(`circle`,{cx:`50`,cy:`50`,r:`16.8`,fill:e})]})}function iO({dot:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(rO,{dot:e}),(0,W.jsxs)(`span`,{children:[`Wize`,(0,W.jsx)(`span`,{className:`wl-brand-lens`,children:`Lens`})]})]})}function aO({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 oO({stats:e}){let[t,n]=(0,E.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)(eE,{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 sO={avg:e=>q(e),total:e=>q(e),count:e=>e.toLocaleString(`en-US`)};function cO({stats:e}){let[t,r]=(0,E.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?`–`:sO[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)(aO,{items:i})})}var lO=[[`avg`,`Slowest`],[`count`,`Most frequent`],[`total`,`Most total time`]],uO=(e,t)=>t&&!e.includes(t)?[t,...e]:e,dO=e=>e.map(e=>[e,e]);function fO({stats:e}){let t=e.filter,[r,i]=PD(t.q),a=e=>t=>n({[e]:t||null,page:null}),o=uO(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)(dD,{value:t.service}),(0,W.jsx)(X,{label:`Database`,value:t.database,onChange:a(`database`),options:[[``,`All Databases`],...dO(uO(e.databases,t.database))]}),(0,W.jsx)(X,{label:`Operation`,value:t.operation,onChange:a(`operation`),options:[[``,`All Operations`],...dO([...cr])]}),(0,W.jsx)(X,{label:`Table`,value:t.table,onChange:a(`table`),options:[[``,`All Tables`],...dO(o)]}),(0,W.jsx)(X,{label:`Order`,value:t.sort,onChange:a(`sort`),options:lO}),(0,W.jsx)(qb,{value:r,onChange:i,placeholder:`Search queries…`}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:s,children:[(0,W.jsx)(yy,{"aria-hidden":`true`}),` Reset`]})]})}var pO=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)}],mO=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Eb(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)(Hb,{tone:e.status===`error`?`danger`:`success`,children:e.status===`error`?`Failed`:`OK`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function hO({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:Tv,label:`Runs`,value:J(t.count),change:n(t.count,e.prev?.count),series:e.chart.count,...r}),(0,W.jsx)($,{icon:tv,label:`Avg Duration`,value:q(t.avgMs),change:n(t.avgMs,e.prev?.avgMs),series:e.chart.avgMs,...r}),(0,W.jsx)($,{icon:Zy,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:tv,label:`Total Time`,value:q(t.totalMs),change:n(t.totalMs,e.prev?.totalMs),...r})]})}function gO({m:e}){let t={label:_b(e.meta.compare),values:e.chart.prevCount,color:`var(--wl-slate)`,dashed:!0},n=e.slowest?(0,W.jsx)(pb,{href:y(e.slowest.traceId,`sql`),label:`Slowest run: ${q(e.slowest.durationMs)}`}):null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(hO,{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)(eE,{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)(eE,{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)(RD,{group:`services`,docOf:e=>Ng(e.service),tagged:`name`,columns:pO(!1),rows:e.services,rowKey:e=>e.service,onRowClick:e=>T(RS(e.service)),empty:(0,W.jsx)(K,{children:`No service ran it.`})})}),(0,W.jsx)(G,{title:`Endpoints`,flush:!0,children:(0,W.jsx)(RD,{group:`endpoints`,docOf:e=>jg(e.service,e.endpoint),tagged:`name`,columns:pO(!0),rows:e.endpoints,rowKey:e=>`${e.service} ${e.endpoint}`,onRowClick:e=>T(_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)(LD,{kind:`traces`,itemOf:Nx,tagged:`path`,columns:mO,rows:e.traces,rowKey:e=>e.traceId,onRowClick:e=>T(y(e.traceId,`sql`)),empty:(0,W.jsx)(K,{children:`No trace in this range.`})})})]})}function _O({query:e}){let{model:t,loading:n,error:r}=hT(`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)(ID,{model:t,loading:n,error:r,what:`this query`}),(0,W.jsx)(EC,{back:[S(`database`),`All queries`],icon:lv,title:e,mono:!0,actions:(0,W.jsx)(Kb,{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)(gO,{m:t})]})}function vO(e){if(e==null)return``;let t=String(e);return/[",\r\n]/.test(t)?`"${t.replace(/"/g,`""`)}"`:t}function yO(e,t){return[e.map(([e])=>e).join(`,`),...t.map(t=>e.map(([,e])=>vO(e(t))).join(`,`))].join(`\r
|
|
23
|
-
`)}var bO=e=>e?new Date(e).toISOString():``,xO=e=>e==null?null:Math.round(e*100)/100;function SO(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 CO(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 yO(t.map(e=>[e,t=>n(t[e])]),e)}var wO=[[`last_seen`,e=>bO(e.lastSeenMs)],[`first_seen`,e=>bO(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]],TO=[[`time`,e=>bO(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]],EO=[[`query`,e=>e.query],[`system`,e=>e.system],[`count`,e=>e.count],[`avg_ms`,e=>xO(e.avgMs)],[`max_ms`,e=>xO(e.maxMs)],[`total_ms`,e=>xO(e.totalMs)],[`slow`,e=>e.slow],[`errors`,e=>e.errors],[`endpoints`,e=>e.endpoints.join(` `)],[`example_trace_id`,e=>e.exampleTraceId]],DO=[[`trace_id`,e=>e.traceId],[`path`,e=>e.path],[`duration_ms`,e=>xO(e.durationMs)],[`status`,e=>e.status],[`health`,e=>e.health],[`services`,e=>e.services.join(` `)]],OO=[[`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=>xO(e.totalMs)],[`endpoints`,e=>e.endpoints.join(` `)],[`last_seen`,e=>bO(e.lastSeenMs)],[`example_trace_id`,e=>e.exampleTraceId]],kO={errors:e=>yO(wO,e.groups),logs:e=>yO(TO,e.rows),database:e=>yO(EO,e.queries),traces:e=>yO(DO,e.recent),insights:e=>yO(OO,e.groups)},AO=5e3;function jO({page:e,disabled:t=!1}){let[n]=Zg(),r=H().has(`serverStats`),a=i().query,[o,s]=(0,E.useState)(!1);return(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>{s(!0),fT(e,{...Object.fromEntries(a),page:`1`,size:String(AO)},n,r).then(t=>SO(e,kO[e](t))).finally(()=>s(!1))},disabled:t||o,title:`Download as CSV (up to ${AO.toLocaleString()} rows)`,children:[(0,W.jsx)($y,{"aria-hidden":`true`}),` Export`]})}var MO=5,NO=e=>e.replace(/^[A-Z]+ /,``);function PO({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:[NO(t),n]})}var FO=e=>(0,W.jsx)(`span`,{className:e?`wl-text-error`:void 0,children:J(e)});function IO(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=>FO(e.slow)},{key:`errors`,header:`Errors`,num:!0,cell:e=>FO(e.errors)},{key:`endpoint`,header:`Endpoint`,cell:e=>(0,W.jsx)(PO,{q:e})}]}var LO={avg:`Slowest Queries`,count:`Most Frequent Queries`,total:`Queries by Total Time`};function RO({open:e,total:t,onToggle:n}){return t<=MO?null:(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:n,children:e?`Show top ${MO}`:`View all ${t}`})}function zO({stats:e}){return(0,W.jsxs)(G,{title:`${LO[e.filter.sort]} (${J(e.queryShapes)})`,flush:!0,className:`wl-db-queries`,action:(0,W.jsx)(jO,{page:`database`,disabled:e.queries.length===0}),children:[(0,W.jsx)(Q,{columns:IO(e.slowMs),rows:e.queries,rowKey:e=>e.key,onRowClick:e=>T(He(e.query)),empty:(0,W.jsx)(K,{children:`No queries match in this time range.`})}),e.queryShapes>0&&(0,W.jsx)(Yb,{page:e.page,pageSize:e.size,total:e.queryShapes,noun:`queries`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}var BO=[{key:`table`,header:`Table`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(lv,{"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?`–`:xb(e.rows)}];function VO({stats:e}){let[t,r]=(0,E.useState)(!1),i=t?e.tables:e.tables.slice(0,MO);return(0,W.jsxs)(G,{title:`Table Hotspots (${vb(e.tables.length,e.tableCount)})`,action:(0,W.jsx)(RO,{open:t,total:e.tables.length,onToggle:()=>r(!t)}),children:[(0,W.jsx)(Q,{columns:BO,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 HO={database:lv,http:jv,render:ty};function UO({insight:e}){let t=e.impact===`medium`?Zy:HO[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)(Wb,{impact:e.impact})]}),(0,W.jsx)(`span`,{className:`wl-insight-text`,children:e.description})]}),(0,W.jsx)(Z_,{className:`wl-insight-go`,"aria-hidden":`true`})]})}function WO({insights:e,area:t}){return(0,W.jsx)(G,{title:`Latest Insights`,action:(0,W.jsx)(pb,{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)(UO,{insight:e},e.key))})})}function GO({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:lv,label:`SQL Queries`,value:J(t.queries),change:n.queries,upIsGood:!1,compareLabel:o,series:r.queries}),(0,W.jsx)($,{icon:tv,label:`Avg Query Duration`,value:q(t.avgMs),change:n.avgMs,upIsGood:!1,compareLabel:o,series:r.avgMs}),(0,W.jsx)($,{icon:Zy,label:`Slow Queries`,value:J(t.slow),change:n.slow,upIsGood:!1,compareLabel:o,series:r.slow,danger:!0}),(0,W.jsx)($,{icon:Gv,label:`Potential Improvements`,href:S(`insights`,[],{area:`database`}),value:J(i.length),change:n.insights,upIsGood:!1,compareLabel:o})]})}function KO(){let[e,t]=i().params;return e===`queries`&&t?(0,W.jsx)(_O,{query:C(t)},t):(0,W.jsx)(qO,{})}function qO(){let{model:e,loading:t,error:n}=hT(`database`);return(0,W.jsxs)(`div`,{className:`wl-db-page`,children:[(0,W.jsx)(fb,{title:`Database`,subtitle:`SQL visibility, query performance, and optimization opportunities across your stack.`}),(0,W.jsx)(ID,{model:e,loading:t,error:n,what:`queries`}),e&&(0,W.jsx)(JO,{stats:e})]})}function JO({stats:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fO,{stats:e}),(0,W.jsx)(GO,{stats:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(oO,{stats:e}),(0,W.jsx)(cO,{stats:e})]}),(0,W.jsx)(`div`,{className:`wl-grid`,children:(0,W.jsx)(zO,{stats:e})}),(0,W.jsx)(`div`,{className:`wl-grid`,children:(0,W.jsx)(VO,{stats:e})}),(0,W.jsx)(WO,{insights:e.insights,area:`database`})]})}var YO=[[/Edg\//,`Edge`],[/OPR\//,`Opera`],[/Firefox\//,`Firefox`],[/Chrome\//,`Chrome`],[/Safari\//,`Safari`]],XO=[[/iPhone|iPad/,`iOS`],[/Android/,`Android`],[/Windows/,`Windows`],[/Mac OS X|Macintosh/,`macOS`],[/CrOS/,`ChromeOS`],[/Linux/,`Linux`]];function ZO(e){if(!e)return`Unknown device`;let t=YO.find(([t])=>t.test(e))?.[1],n=XO.find(([t])=>t.test(e))?.[1];return t?n?`${t} on ${n}`:t:e.length>40?`${e.slice(0,40)}…`:e}function QO({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 $O=36e5,ek=[[String($O),`For 1 hour`],[String(24*$O),`For 1 day`],[String(168*$O),`For 1 week`],[`0`,`For good`]],tk={error:[`Resolve`,`Ignore`],insight:[`Mark fixed`,`Dismiss`]};function nk({kind:e,issueKey:t,info:n}){let{on:r,members:i}=Ow(),a=H().has(`accounts`),[o,s]=(0,E.useState)(null);if(!r)return null;let c=async(n,r={})=>s(await kw(a,e,t,n,r)),l=!n||n.status===`unresolved`||n.status===`regressed`,[u,d]=tk[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}…`],...ek],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 rk({fields:e,label:t=`Alert on this`}){return H().has(`alerts`)?(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-sm`,href:Ue(e),children:[(0,W.jsx)(T_,{"aria-hidden":`true`}),` `,t]}):null}var ik=e=>e.replace(/^[A-Z]+ /,``);function ak({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)(Y_,{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)(Z_,{size:16})})]})}var ok=e=>e.latest.method?S(`requests`,[],{endpoint:e.endpoint,status:`failed`}):S(`requests`,[],{q:ik(e.endpoint),status:`failed`});function sk({group:e}){let t=e.latest.browser?ty:e.type.toLowerCase().includes(`db`)||e.type.toLowerCase().includes(`sql`)?lv:Ty;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:ok(e),children:[`View affected requests `,(0,W.jsx)(x_,{"aria-hidden":`true`})]})]})}function ck(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 lk=e=>[Ug(e),...e.latest.method?[zg(e.service,e.endpoint)]:[],Bg(e.service)];function uk({group:e,info:t}){let[n,r]=(0,E.useState)(`stack`),i=Mx()(`errors`,Pg(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)(QO,{info:t})]}),(0,W.jsxs)(`div`,{className:`wl-err-tagline`,children:[(0,W.jsx)(Ix,{tags:i}),(0,W.jsx)(sS,{scopes:lk(e)})]}),(0,W.jsx)(nk,{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)(pv,{"aria-hidden":`true`}),` View full error`]}),(0,W.jsx)(sk,{group:e}),(0,W.jsx)(mb,{rows:[[`Endpoint`,(0,W.jsx)(`span`,{className:`wl-mono`,children:ik(e.endpoint)},`e`)],[`Service`,e.service],...ck(e),[`First seen`,Ob(t?.firstSeenMs||e.firstSeenMs)],[`Last seen`,Ob(e.lastSeenMs)]]}),(0,W.jsxs)(`div`,{className:`wl-err-tabs`,children:[(0,W.jsx)(hb,{tabs:[[`stack`,`Stack Trace`],[`context`,`Request Context`],[`tags`,`Tags`]],value:n,onChange:r}),n===`stack`&&(0,W.jsx)(OS,{event:e.latest}),n===`context`&&(0,W.jsx)(xS,{event:e.latest}),n===`tags`&&(0,W.jsx)(SS,{event:e.latest})]})]})}function dk({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)(ak,{groups:e,index:i}),className:`wl-err-details`,children:t?(0,W.jsx)(uk,{group:t,info:r[t.key]},t.key):a})}var fk=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Eb(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)(Hb,{tone:Bb(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?ZO(e.userAgent):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function pk({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:z_,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:D_,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:L_,label:`Endpoints`,value:J(e.endpoints.length),change:null,...n}),(0,W.jsx)($,{icon:rb,label:`Users Affected`,value:J(e.users.count),change:null,href:S(`users`),...n,note:`In this range`})]})}function mk({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:()=>T(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)(aO,{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)(aO,{items:e.users.top.map(e=>({key:e.user,label:e.user,value:e.count,display:J(e.count),onClick:()=>T(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)(aO,{items:t(wu(e.requests,e=>e.userAgent?ZO(e.userAgent):null))}):(0,W.jsx)(K,{children:`No user agent recorded.`})})]})}var hk=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 gk({m:e}){let t=e.group,n=Mx()(`errors`,Pg(t)),r=[[`Service`,(0,W.jsx)(`a`,{href:RS(t.service),children:t.service},`s`)],[`Type`,t.type],[`First seen`,Ob(e.issue?.firstSeenMs||t.firstSeenMs)],[`Last seen`,Ob(t.lastSeenMs)]],i=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Y,{tone:`danger`,children:t.critical?`Critical`:`Error`}),` `,(0,W.jsx)(QO,{info:e.issue??void 0}),` `,(0,W.jsx)(Ix,{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)(EC,{back:[S(`errors`,[],{service:t.service}),`All errors`],icon:z_,title:`${t.type}: ${t.message}`,badge:i,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(nk,{kind:`error`,issueKey:t.key,info:e.issue??void 0}),(0,W.jsx)(rk,{fields:hk(t)}),(0,W.jsx)(sS,{scopes:lk(t)})]}),stats:r}),(0,W.jsx)(pk,{m:e}),(0,W.jsx)(G,{title:`Occurrences Over Time`,children:(0,W.jsx)(eE,{starts:e.starts,stackBars:!0,bars:a,lines:[{label:_b(e.meta.compare),values:e.chart.prev,color:`var(--wl-slate)`,dashed:!0}]})}),(0,W.jsx)(mk,{m:e}),(0,W.jsx)(G,{title:`Latest Stack Trace`,children:(0,W.jsx)(OS,{event:t.latest})}),(0,W.jsx)(G,{title:`Newest Occurrences (${J(e.requests.length||e.traces.length)})`,flush:!0,action:(0,W.jsx)(pb,{href:y(t.latest.traceId),label:`Open latest trace`}),children:(0,W.jsx)(LD,{kind:`requests`,itemOf:Nx,tagged:`path`,columns:fk,rows:e.requests,rowKey:e=>e.traceId,onRowClick:e=>T(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 _k({group:e}){let{model:t,loading:n,error:r}=hT(`error`,{group:e});return(0,W.jsxs)(`div`,{className:`wl-dpage wl-errors-page`,children:[(0,W.jsx)(ID,{model:t,loading:n,error:r,what:`this error`}),t&&(t.group?(0,W.jsx)(gk,{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 vk({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)(U_,{"aria-hidden":`true`})}):(0,W.jsx)(eE,{starts:t,stackBars:!0,lines:[{label:_b(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 yk=5;function bk({stats:e}){let[t,r]=(0,E.useState)(!1),i=t?e.types:e.types.slice(0,yk),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>yk&&(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:()=>r(!t),children:t?`Show top ${yk}`:`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)(aO,{items:o})})}function xk({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)(sb,{size:13,"aria-hidden":`true`})]},t))})}var Sk=[[`recent`,`Most recent`],[`count`,`Most frequent`]],Ck=[[`unresolved`,`Unresolved`],[`resolved`,`Resolved`],[`ignored`,`Ignored`],[`all`,`All Statuses`]],wk=(e,t)=>t&&!e.includes(t)?[t,...e]:e,Tk=e=>e.replace(/^[A-Z]+ /,``);function Ek({stats:e}){let t=e.filter,[r,i]=PD(t.q,{page:null,group:null}),a=e=>t=>n({[e]:t||null,page:null,group:null}),o=wk(e.types.map(e=>e.type),t.type),s=wk(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=wk(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)(dD,{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:Ck}),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,Tk(e)])]}),(0,W.jsx)(X,{label:`Order`,value:t.sort,onChange:a(`sort`),options:Sk}),(0,W.jsx)(qb,{value:r,onChange:i,placeholder:`Search errors by type or message…`}),(0,W.jsx)(Xx,{label:`Critical only`,checked:t.critical,onChange:u(`critical`)}),(0,W.jsx)(Xx,{label:`New only`,checked:t.fresh,onChange:u(`new`)}),(0,W.jsx)(xk,{chips:[[`User`,`user`,t.user]]}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:c,children:[(0,W.jsx)(yy,{"aria-hidden":`true`}),` Reset`]})]})}var Dk=e=>e.replace(/^[A-Z]+ /,``),Ok=e=>[{key:`time`,header:`Time`,className:`wl-nowrap`,sort:e=>e.lastSeenMs,cell:e=>Eb(e.lastSeenMs)},{key:`status`,header:`Status`,cell:t=>(0,W.jsxs)(`span`,{className:`wl-err-status`,children:[(0,W.jsx)(Hb,{tone:`danger`,colorText:!0,children:t.critical?`Critical`:`Error`}),(0,W.jsx)(QO,{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:Dk(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 kk({stats:e,selected:t}){let r=Nc(e.filter),i=e.filter.sort===`count`?`Most Frequent Exceptions`:`Recent Exceptions`,a=Mx();return(0,W.jsxs)(G,{title:`${i} (${J(e.groupCount)})`,flush:!0,className:`wl-err-list`,action:(0,W.jsx)(jO,{page:`errors`,disabled:e.groupCount===0}),children:[(0,W.jsx)(Q,{columns:Lx(Ok(e.issues),`error`,e=>a(`errors`,Pg(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)(Yb,{page:e.page,pageSize:e.size,total:e.groupCount,noun:`groups`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function Ak({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?C_:__,{"aria-hidden":`true`}),yb(Math.abs(n))]})}function jk(){return[{key:`service`,header:`Service`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[e.service===`Web App`?(0,W.jsx)(ty,{"aria-hidden":`true`}):(0,W.jsx)(F_,{"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?yb(e.errorRate):`–`},{key:`trend`,header:`Trend`,cell:e=>(0,W.jsx)(cD,{values:e.trend,width:110,height:24,color:`var(--wl-red)`})},{key:`change`,header:``,num:!0,cell:e=>(0,W.jsx)(Ak,{now:e.exceptions,before:e.prevExceptions})}]}function Mk({stats:e}){let t=uD();return(0,W.jsx)(G,{title:`Errors by Service`,children:(0,W.jsx)(Q,{columns:jk(),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 Nk({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:z_,label:`Total Exceptions`,value:J(t.exceptions),change:n.exceptions,series:r.exceptions,...a}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:e.hasRequests?yb(t.errorRate):`–`,change:n.errorRate,series:r.errorRate,...a}),(0,W.jsx)($,{icon:L_,label:`Impacted Endpoints`,value:J(t.endpoints),change:n.endpoints,...a,danger:!1}),(0,W.jsx)($,{icon:D_,label:`Critical Incidents`,href:S(`errors`,[],{critical:`1`}),value:J(t.critical),change:n.critical,series:r.critical,...a})]})}function Pk(){let[e]=i().params;return e?(0,W.jsx)(_k,{group:C(e)},e):(0,W.jsx)(Fk,{})}function Fk(){let{model:e,loading:t,error:n}=hT(`errors`);return(0,W.jsxs)(`div`,{className:`wl-errors-page`,children:[(0,W.jsx)(fb,{title:`Errors`,subtitle:`Investigate exceptions, failures, and request-level problems across your stack.`}),(0,W.jsx)(ID,{model:e,loading:t,error:n,what:`errors`}),e&&(0,W.jsx)(Ik,{stats:e})]})}function Ik({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)(Ek,{stats:e}),(0,W.jsx)(Nk,{stats:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(vk,{stats:e}),(0,W.jsx)(bk,{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)(kk,{stats:e,selected:r}),(0,W.jsx)(Mk,{stats:e})]}),(0,W.jsx)(dk,{groups:e.groups,group:n,linked:!!t,issues:e.issues})]})]})}var Lk={"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 Rk(e){return e.kind===`render`?Lk[e.key.startsWith(`render|component|`)?`render-component`:`render-route`]:Lk[e.kind]}var zk={database:`Database`,http:`HTTP`,render:`Rendering`};function Bk(e,t){return e.area===`render`?S(`rendering`,[],{q:t}):S(`requests`,[],{endpoint:t,insights:`1`})}function Vk({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:Bk(e,t),children:t})},t))})}function Hk({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 Uk({group:e,info:t,users:r,now:i}){let a=Rk(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)(sb,{size:18})})]}),(0,W.jsxs)(`div`,{className:`wl-side-meta`,children:[(0,W.jsx)(Wb,{impact:e.impact}),(0,W.jsx)(Y,{tone:`neutral`,children:zk[e.area]}),(0,W.jsx)(QO,{kind:`insight`,info:t}),(0,W.jsxs)(`span`,{children:[`Last seen `,Nb(e.lastSeenMs,i)]})]}),(0,W.jsx)(nk,{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)(Kb,{text:e.shape,label:`Copy pattern`})]}),(0,W.jsx)(`pre`,{className:`wl-code wl-insight-shape`,children:e.shape}),(0,W.jsx)(mb,{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)(Hk,{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)(Vk,{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 Wk={high:3,medium:2,low:1};function Gk(e,t,n){return[{key:`impact`,header:`Impact`,cell:e=>(0,W.jsx)(Wb,{impact:e.impact}),sort:e=>Wk[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)(QO,{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=>zk[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:Nb(t.lastSeenMs,e)}),sort:e=>e.lastSeenMs}].filter(e=>!!e)}function Kk({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:Gk(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 qk({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:Gv,label:`Insights Found`,value:J(e.found.value),change:e.found.change,upIsGood:!1,compareLabel:r,series:e.found.series}),(0,W.jsx)($,{icon:Zy,danger:!0,label:`High Impact`,value:J(t.high),change:le(t.high,n.high),upIsGood:!1,compareLabel:r}),(0,W.jsx)($,{icon:tv,label:`Time Involved`,value:q(t.totalMs),change:le(t.totalMs,n.totalMs),upIsGood:!1,compareLabel:r})]})}var Jk=[[`unresolved`,`Open`],[`resolved`,`Fixed`],[`ignored`,`Dismissed`],[`all`,`All Statuses`]];function Yk({issues:e,releases:t}){let r=i().query,[a]=u(),[o,s]=PD(r.get(`q`)??``,{});return(0,W.jsxs)(G,{className:`wl-filters`,children:[(0,W.jsx)(dD,{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:Jk}),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)(qb,{value:o,onChange:s,placeholder:`Search by query, endpoint, route, or component…`}),(0,W.jsx)(xk,{chips:[[`Endpoint`,`endpoint`,r.get(`endpoint`)??``]]})]})}function Xk({m:e,wanted:t}){let n=e.meta.window.to;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(qk,{m:e}),(0,W.jsx)(Yk,{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)(jO,{page:`insights`,disabled:e.matching===0}),children:(0,W.jsx)(Kk,{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)(Uk,{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 Zk(){let e=i().query.get(`key`),{model:t,loading:n,error:r}=hT(`insights`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Insights`,subtitle:`Problems WizeLens found in your requests and pages, ranked by impact.`}),(0,W.jsx)(ID,{model:t,loading:n,error:r,what:`insights`}),t&&(0,W.jsx)(Xk,{m:t,wanted:e})]})}function Qk({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 $k=/[\s()]/;function eA(e,t){let n=t;for(;n>0&&!$k.test(e[n-1]);)n--;let r=t;for(;r<e.length&&!$k.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 tA(e,t,n){let r=t.field===null?`${t.lead}${n}:`:`${t.lead}${lh(n)} `;return{text:e.slice(0,t.start)+r+e.slice(t.end).replace(/^ /,``),caret:t.start+r.length}}var nA=150;function rA(e,t,n){let[r,i]=(0,E.useState)(null),a=e?`${e.field}\u0000${e.prefix}`:null;return(0,E.useEffect)(()=>{if(!e||a===null)return void i(null);let r=!0,o=e=>r&&i({key:a,items:e}),s=setTimeout(()=>Gx(e.field,e.prefix,t,n).then(o,()=>o([])),nA);return()=>(r=!1,clearTimeout(s))},[a,t,n]),r&&r.key===a?r.items:[]}function iA({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 aA({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 oA({value:e,onSubmit:t,range:n,server:r,placeholder:i,serverError:a}){let[o,s]=(0,E.useState)(e),[c,l]=(0,E.useState)(null),[u,d]=(0,E.useState)(0),f=(0,E.useRef)(null);(0,E.useEffect)(()=>s(e),[e]);let p=rA(c,n,r),m=gh(o),h=m.ok?o===e?a??null:null:m,g=e=>(l(eA(e.value,e.selectionStart??e.value.length)),d(0)),_=e=>{if(!c)return;let t=tA(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)(Cy,{"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)(aA,{items:p,active:u,onPick:_}),h&&(0,W.jsx)(iA,{draft:o,error:{message:`error`in h?h.error:h.message,start:h.start,end:h.end}})]})}function sA({value:e,placeholder:t,reset:r={}}){let[i]=Zg(),a=H().has(`search`);return(0,W.jsx)(oA,{value:e,range:i,server:a,placeholder:t,onSubmit:e=>n({q:e||null,page:null,...r})})}var cA={trace:`neutral`,debug:`neutral`,info:`info`,warn:`warning`,error:`danger`,critical:`danger`},lA=({level:e})=>(0,W.jsx)(Y,{tone:cA[e],children:e}),uA=[[``,`In and outside requests`],[`request`,`In requests`],[`outside`,`Outside requests`]],dA=[[`trace`,`All levels`],[`debug`,`Debug and up`],[`info`,`Info and up`],[`warn`,`Warnings and up`],[`error`,`Errors and up`],[`critical`,`Critical only`]];function fA({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:dA,onChange:e=>n({level:e===`trace`?null:e,page:null})}),(0,W.jsx)(dD,{value:t.service,services:r}),(0,W.jsx)(sA,{value:t.query,placeholder:`Messages, categories, or trace IDs; or level:error service:api`}),(0,W.jsx)(Xx,{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:uA,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)(yy,{"aria-hidden":`true`}),` Reset`]}),(0,W.jsx)(xk,{chips:[[`Category`,`category`,t.category??``],[`Trace`,`trace`,t.traceId??``],[`Pattern`,`pattern`,t.pattern??``],[`User`,`user`,t.user??``]]})]})}function pA({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)(mb,{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:Ct(e.traceId)?`Lines written near it, outside a request`:`All lines of this request`})]})}var mA={info:`var(--wl-chart-bar)`,warn:`var(--wl-amber)`,error:`var(--wl-red)`};function hA({stats:e}){let t=rl.map(t=>({label:t.label,color:mA[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)(eE,{starts:e.starts,bars:t,height:180})})}var gA=[{key:`time`,header:`Time`,className:`wl-nowrap`,sort:e=>e.timeMs,cell:e=>Eb(e.timeMs)},{key:`level`,header:`Level`,sort:e=>oi.indexOf(e.level),cell:e=>(0,W.jsx)(lA,{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=>Ct(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})}],_A=`wizelens.ui.logSearches`,vA=e=>({id:e.id??crypto.randomUUID(),projectId:``,kind:`search`,name:e.name??``,href:e.href??Kf(e.params??{}),panels:[],chart:!0,shared:!1,owner:``,ownerName:``,createdMs:e.createdMs??Date.now(),updatedMs:e.updatedMs??e.createdMs??Date.now()});function yA(){try{return JSON.parse(localStorage.getItem(_A)??`[]`).map(vA)}catch{return[]}}function bA(e){try{localStorage.setItem(_A,JSON.stringify(e))}catch{}}var xA=e=>e instanceof Error?e.message:String(e),SA=e=>e.flatMap(e=>{let t=e.chart?qf(e.href):null;return t?[{item:e,params:t}]:[]});function CA(){let e=zE(),{items:t,error:n}=BE(`search`),[r,i]=(0,E.useState)(yA),a=(0,E.useCallback)(async e=>{try{return await e(),null}catch(e){return xA(e)}},[]),o=e=>(bA(e),i(e));return{charts:SA(e.on?t:r),error:e.on?n:null,server:e.on,canWrite:!e.on||e.canWrite,save:(t,n,r)=>a(()=>e.on?VE(e.url(),`POST`,{kind:`search`,name:t.trim(),href:Kf(n),chart:!0,shared:!e.cloud||r}):o([...yA(),vA({name:t.trim(),params:n})])),remove:t=>a(()=>e.on?VE(e.url(`/${encodeURIComponent(t)}`),`DELETE`):o(yA().filter(e=>e.id!==t)))}}var wA=e=>({...Object.fromEntries(Uf.map(e=>[e,null])),trace:null,page:null,...e}),TA=e=>S(`alerts`,[],{new:`1`,log:JSON.stringify(e)});function EA({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 DA({name:e,params:t,onDelete:r}){let{model:i}=mT(`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:$d(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)(EA,{pct:i.change})]})]}),i&&(0,W.jsx)(eE,{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(wA(t)),children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),` Show lines`]}),a&&(0,W.jsxs)(`a`,{href:TA(t),children:[(0,W.jsx)(T_,{"aria-hidden":`true`}),` Alert`]}),r&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:r,children:[(0,W.jsx)(Yy,{"aria-hidden":`true`}),` Delete`]})]})]})}function OA({params:e,cloud:t,onSave:n,onDone:r}){let[i,a]=(0,E.useState)($d(e).slice(0,100)),[o,s]=(0,E.useState)(!0),[c,l]=(0,E.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)(Xx,{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 kA(){let{charts:e,error:t,canWrite:n,save:r,remove:a}=CA(),o=Gf(Object.fromEntries(i().query)),s=H(),[c,l]=(0,E.useState)(!1),[u,d]=(0,E.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:TA(o),children:[(0,W.jsx)(T_,{"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)(xy,{"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)(OA,{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)(DA,{name:e.item.name,params:e.params,onDelete:n?()=>f(e.item.id):void 0},e.item.id))})]})}function AA({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 jA=[{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)(lA,{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)(AA,{pct:e.change})},{key:`trend`,header:`Trend`,cell:e=>(0,W.jsx)(cD,{values:e.series,width:96,height:26})}];function MA(){let{model:e}=hT(`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:jA,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 NA({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:xv,label:`Log Lines`,value:J(t.total),change:n.total,series:r.total,...a}),(0,W.jsx)($,{icon:Zy,label:`Warnings`,href:S(`logs`,[],{level:`warn`,exact:`1`}),value:J(t.warnings),change:n.warnings,series:r.warnings,...a}),(0,W.jsx)($,{icon:sy,label:`Errors`,href:S(`logs`,[],{level:`error`}),value:J(t.errors),change:n.errors,series:r.errors,danger:!0,...a}),(0,W.jsx)($,{icon:D_,label:`Critical`,href:S(`logs`,[],{level:`critical`}),value:J(t.critical),change:n.critical,series:r.critical,danger:!0,...a})]})}function PA({stats:e}){let{rows:t,page:r,pageSize:i,matching:a}=e,[o,s]=(0,E.useState)(null),c=e=>s(o===e?null:e),l=jx(`logs`,t,Px);return(0,W.jsxs)(G,{title:`Log Lines (${J(a)})`,flush:!0,action:(0,W.jsx)(jO,{page:`logs`,disabled:a===0}),children:[(0,W.jsx)(Q,{columns:Lx(gA,`message`,l),rows:t,rowKey:e=>e.key,selectedKey:o,onRowClick:e=>c(e.key),detail:e=>(0,W.jsx)(pA,{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)(Yb,{page:r,pageSize:i,total:a,noun:`lines`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function FA(){let[e,t]=(0,E.useState)(!1),{model:n,loading:r,error:i}=hT(`logs`,void 0,e);return(0,W.jsxs)(`div`,{className:`wl-logs-page`,children:[(0,W.jsx)(fb,{title:`Logs`,subtitle:`Every log line across your services: in requests, and outside them (startup, jobs, timers).`,children:(0,W.jsx)(Qk,{paused:e,onChange:t})}),(0,W.jsx)(ID,{model:n,loading:r,error:i,what:`log lines`}),n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(NA,{stats:n}),(0,W.jsx)(hA,{stats:n}),(0,W.jsx)(kA,{}),(0,W.jsx)(fA,{stats:n}),(0,W.jsx)(MA,{}),(0,W.jsx)(PA,{stats:n})]})]})}var IA=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function LA(e,t,n){let r={label:`Errors`,values:t.errors,color:IA},i={label:_b(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 RA({m:e}){let[t,n]=(0,E.useState)(`requests`),r=LA(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)(eE,{starts:e.activity.starts,lines:r.lines,bars:r.bars,height:220,separateBarScale:!0,format:t===`requests`?J:q})})}var zA=[{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=>Eb(e.group.lastSeenMs)}];function BA({rows:e}){return(0,W.jsx)(G,{title:`New and Regressed Errors`,action:(0,W.jsx)(pb,{href:S(`errors`,[],{new:`1`}),label:`View new errors`}),children:(0,W.jsx)(Q,{columns:zA,rows:e,rowKey:e=>e.group.key,onRowClick:e=>T(he(e.group.key)),empty:(0,W.jsx)(K,{children:`No new or regressed errors in this range.`})})})}var VA={database:lv,http:Zy,render:ty},HA=3;function UA({group:e}){let t=VA[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)(Wb,{impact:e.impact})]}),(0,W.jsx)(`span`,{className:`wl-ov-insight-text`,children:e.description})]}),(0,W.jsx)(Z_,{className:`wl-ov-insight-go`,"aria-hidden":`true`})]})}function WA({groups:e}){return(0,W.jsx)(G,{title:`Latest Insights`,action:(0,W.jsx)(pb,{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,HA).map(e=>(0,W.jsx)(UA,{group:e},e.key))})})}function GA({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`:`${Dl(r)} · ${i}`;return(0,W.jsx)($,{icon:_v,label:`Apdex`,value:r===null?`–`:r.toFixed(2),change:null,upIsGood:!0,compareLabel:t,note:a,href:n?S(`slos`):void 0})}function KA({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:Vv,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:tv,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:lv,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:Zy,label:`Error Rate`,href:S(`requests`,[],{status:`failed`}),value:n?`–`:yb(t.errorRate.value),change:t.errorRate.change,upIsGood:!1,compareLabel:r,series:t.errorRate.series,danger:!0}),(0,W.jsx)(GA,{apdex:e.apdex,compareLabel:r}),(0,W.jsx)($,{icon:Gv,label:`Insights Found`,href:S(`insights`),value:J(e.insightsFound.value),change:e.insightsFound.change,upIsGood:!1,compareLabel:r,series:e.insightsFound.series})]})}var qA=5,JA=[{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)(Hb,{tone:Bb(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)(Gb,{n:e.insights})}];function YA({rows:e}){let t=(0,E.useMemo)(()=>e.slice(0,qA),[e]),n=jx(`requests`,t,Nx);return(0,W.jsx)(G,{title:`Recent Requests`,action:(0,W.jsx)(pb,{href:S(`requests`)}),children:(0,W.jsx)(Q,{columns:Lx(JA,`path`,n),rows:t,rowKey:e=>e.traceId,onRowClick:e=>T(S(`requests`,[],{trace:e.traceId})),empty:(0,W.jsx)(K,{children:`No requests in this range.`})})})}var XA={api:F_,web:ty,worker:rv,queue:zv,database:lv,external:jv},ZA={healthy:[`success`,`Healthy`],degraded:[`warning`,`Degraded`],unhealthy:[`danger`,`Unhealthy`],idle:[`neutral`,`Idle`]},QA=5;function $A(e){return[{key:`name`,header:`Service`,cell:e=>{let t=XA[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)(Hb,{tone:ZA[e.status][0],colorText:!0,children:ZA[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 ej({rows:e,range:t}){let n=Mx(),r=Lx($A(t),`name`,e=>n(`services`,Ng(e.name)));return(0,W.jsx)(G,{title:`Services`,action:(0,W.jsx)(pb,{href:S(`services`)}),children:(0,W.jsx)(Q,{columns:r,rows:e.slice(0,QA),rowKey:e=>e.key,onRowClick:e=>T(RS(e.key)),empty:(0,W.jsx)(K,{children:`No services seen in this range.`})})})}var tj=(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 nj({m:e}){let[t,n]=(0,E.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)(aO,{items:tj(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 rj(){let{model:e,loading:t,error:n}=hT(`overview`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Overview`,subtitle:`Recent request-level diagnostics across your stack.`}),(0,W.jsx)(ID,{model:e,loading:t,error:n,what:`traces`}),e&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(KA,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-ov-top`,children:[(0,W.jsx)(RA,{m:e}),(0,W.jsx)(nj,{m:e})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-ov-mid`,children:[(0,W.jsx)(ej,{rows:e.services,range:e.meta.custom?null:e.meta.range}),(0,W.jsx)(YA,{rows:e.recent})]}),(0,W.jsx)(BA,{rows:e.freshErrors}),(0,W.jsx)(WA,{groups:e.insights})]})]})}var ij=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Eb(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 aj({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:hv,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:Tv,label:`Avg Render Time`,value:q(t.render),...n,series:e.chart.render}),(0,W.jsx)($,{icon:lb,label:`Avg LCP`,value:q(t.lcp),...n,series:e.chart.lcp}),(0,W.jsx)($,{icon:Ty,label:`Avg SSR Time`,value:q(t.ssr),...n,series:e.chart.ssr})]})}function oj({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)(eE,{starts:e.starts,lines:[{label:`Views`,values:e.chart.views,color:`var(--wl-blue)`},{label:_b(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)(eE,{starts:e.starts,lines:t,height:220,format:e=>q(e)})})]})}function sj({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)(aj,{m:e}),(0,W.jsx)(oj,{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)(aO,{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)(LD,{kind:`traces`,itemOf:Nx,tagged:`path`,columns:ij,rows:e.loads,rowKey:e=>e.traceId,onRowClick:e=>T(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No page load in this range.`})})})]})]})}function cj({route:e}){let{model:t,loading:n,error:r}=hT(`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)(ID,{model:t,loading:n,error:r,what:`this route`}),(0,W.jsx)(EC,{back:[S(`rendering`),`All routes`],icon:ty,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)(sj,{m:t})]})}var lj=[[`react`,`React`],[`vue`,`Vue`],[`angular`,`Angular`],[`svelte`,`Svelte`],[`js`,`Plain JS`]],uj={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 dj({loading:e}){let[t,n]=(0,E.useState)(`react`),r=uj[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)(hb,{tabs:lj,value:t,onChange:n}),(0,W.jsxs)(`p`,{children:[r.intro,` `,(0,W.jsx)(`code`,{className:`wl-mono`,children:r.label}),` `,(0,W.jsx)(Kb,{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 fj=[[`avg`,`Avg. duration`],[`p75`,`p75 duration`]],pj=.25;function mj({m:e}){let[t,n]=(0,E.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)(eE,{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 hj({m:e}){let[t,n]=(0,E.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:fj,onChange:n}),children:o?(0,W.jsxs)(`div`,{className:`wl-phases`,children:[(0,W.jsx)(aO,{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)(aO,{max:pj,items:[{key:a.key,label:a.label,value:Math.min(a.value??0,pj),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 gj=6,_j={none:{tone:`success`,label:`None`},minor:{tone:`warning`,label:`Minor`},high:{tone:`danger`,label:`High`}},vj=`Full page loads only`,yj=(e,t)=>(0,W.jsx)(`span`,{title:t,children:e}),bj=[{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:yj(`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:yj(`SSR Time`,vj),num:!0,cell:e=>q(e.avgSsrMs),sort:e=>e.avgSsrMs??-1},{key:`hydration`,header:yj(`Hydration Time`,vj),num:!0,cell:e=>q(e.avgHydrationMs),sort:e=>e.avgHydrationMs??-1},{key:`lcp`,header:yj(`LCP`,`Largest Contentful Paint. `+vj),num:!0,cell:e=>q(e.avgLcpMs),sort:e=>e.avgLcpMs??-1},{key:`images`,header:yj(`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)(Hb,{tone:_j[e.issue].tone,colorText:e.issue===`high`,children:_j[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)(Gb,{n:e.issues.length})}],xj=[{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)(Wb,{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)(Gb,{n:e.issues.length})}];function Sj(e,t,n,r){return n<=gj?null:e?(0,W.jsx)(pb,{href:S(`rendering`),label:`Show fewer`}):(0,W.jsx)(pb,{href:S(`rendering`,[],{all:t}),label:r})}function Cj({routes:e,total:t,all:n}){return(0,W.jsx)(G,{flush:!0,title:`Pages & Routes (${vb(e.length,t)})`,action:Sj(n,`routes`,e.length,`View all pages`),children:(0,W.jsx)(Q,{columns:bj,rows:n?e:e.slice(0,gj),rowKey:e=>e.route,onRowClick:e=>T(v(e.route)),empty:(0,W.jsx)(K,{title:`No page views in this range`})})})}function wj({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 (${vb(e.length,t)})`,action:Sj(r,`components`,e.length,`View all components`),children:(0,W.jsx)(Q,{columns:xj,rows:r?e:e.slice(0,gj),rowKey:e=>e.name,onRowClick:e=>T(y(e.exampleTraceId)),empty:i})})}function Tj({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:Tv,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:Ty,label:`SSR Time`,value:q(t.ssr.value),change:t.ssr.change,upIsGood:!1,compareLabel:n,series:t.ssr.series}),(0,W.jsx)($,{icon:lb,label:`Hydration Time`,value:q(t.hydration.value),change:t.hydration.change,upIsGood:!1,compareLabel:n,series:t.hydration.series}),(0,W.jsx)($,{icon:Zy,danger:!0,label:`Component Issues`,value:J(t.issues.value),change:t.issues.change,upIsGood:!1,compareLabel:n,series:t.issues.series})]})}function Ej(){let[e,t]=PD(i().query.get(`q`)??``,{});return(0,W.jsx)(`section`,{className:`wl-panel wl-filters`,children:(0,W.jsx)(qb,{value:e,onChange:t,placeholder:`Search routes and components…`})})}function Dj(){let[e,t]=i().params;return e===`routes`&&t?(0,W.jsx)(cj,{route:C(t)},t):(0,W.jsx)(Oj,{})}function Oj(){let{model:e,loading:t,error:n}=hT(`rendering`),r=i().query.get(`all`),a=!e||e.views===0&&!e.hasReact;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Rendering`,subtitle:`Frontend rendering diagnostics across server-side rendering, hydration, and component cost.`}),(0,W.jsx)(ID,{model:e,loading:!1,error:n,what:`page views`}),a?(0,W.jsx)(dj,{loading:t}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Tj,{data:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(mj,{m:e}),(0,W.jsx)(hj,{m:e})]}),(0,W.jsx)(Ej,{}),(0,W.jsxs)(`div`,{className:`wl-grid`,children:[(0,W.jsx)(Cj,{routes:e.routes,total:e.routeCount,all:r===`routes`}),(0,W.jsx)(wj,{components:e.components,total:e.componentCount,hasReact:e.hasReact,all:r===`components`})]})]})]})}function kj({filter:e,methods:t,services:r}){let i=e=>t=>n({[e]:t,page:null}),a=()=>n({...Object.fromEntries(uo.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:fo}),(0,W.jsx)(X,{label:`Duration`,value:e.duration,onChange:i(`duration`),options:mo}),(0,W.jsx)(dD,{value:e.service,services:r}),(0,W.jsx)(sA,{value:e.q,reset:{trace:null},placeholder:`Path, user, or trace ID; or status:5xx duration:>1s @user.id:42`}),(0,W.jsx)(Xx,{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)(xk,{chips:[[`Endpoint`,`endpoint`,e.endpoint],[`User`,`user`,e.user]]})]})}function Aj(e){return e?Ae(e.spans):void 0}function jj(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 Mj=e=>jj(e,vt),Nj=e=>jj(e,yt);function Pj(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 Fj={request:[ht,gt],response:[pt,mt]};function Ij(e,t=`response`){let[n,r]=Fj[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 Lj={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`},Rj=(e,t=!1)=>t?`Aborted by the client`:e===null?`No status`:Lj[e]?`${e} ${Lj[e]}`:String(e);function zj({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 Bj=`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 Vj({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=Mj(t);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Request`}),(0,W.jsx)(mb,{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`,bb(Pj(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)(zj,{headers:r}):(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:Bj}),Ij(t,`request`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Body`}),(0,W.jsx)(Hj,{server:t,which:`request`})]})]})}function Hj({server:e,which:t}){let n=Ij(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 Uj({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=Nj(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)(mb,{rows:[[`Status`,(0,W.jsx)(Hb,{tone:Bb(e.status),children:Rj(e.status,e.aborted)})],[`Content type`,r?String(r):`–`],[`Body size`,bb(Pj(t,`http.response.body.size`))]]}),(0,W.jsxs)(`h3`,{className:`wl-section-title`,children:[`Headers (`,n.length,`)`]}),n.length?(0,W.jsx)(zj,{headers:n}):(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:Bj}),(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Body`}),(0,W.jsx)(Hj,{server:t,which:`response`})]})}var Wj=(e,t)=>e===0?`0`:`${e} (${q(t)})`;function Gj({text:e}){return e?(0,W.jsxs)(`span`,{className:`wl-rq-copy`,children:[(0,W.jsx)(Kb,{text:e}),(0,W.jsx)(`span`,{className:`wl-mono wl-truncate`,title:e,children:e})]}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})}function Kj({r:e}){return(0,W.jsx)(mb,{rows:[[`Service`,e.service],[`Method`,e.method],[`Path`,(0,W.jsx)(`span`,{className:`wl-mono`,children:e.path})],[`Status`,(0,W.jsx)(Hb,{tone:Bb(e.status),children:Rj(e.status,e.aborted)})],[`Duration`,q(e.durationMs)],[`SQL Queries`,Wj(e.dbCount,e.dbMs)],[`Fetch Calls`,Wj(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)(Gj,{text:e.traceId})],[`Request ID`,(0,W.jsx)(Gj,{text:e.requestId})]]})}var qj=e=>/:(hit|ok|success|true)$/i.test(e)?`wl-chip wl-chip-green`:e.startsWith(`user:`)?`wl-chip`:`wl-chip wl-chip-blue`,Jj=e=>[zg(e.service,e.endpoint),Bg(e.service),...e.user?[Vg(e.user)]:[]];function Yj({r:e}){let t=jx(`requests`,(0,E.useMemo)(()=>[e],[e]),Nx)(e),n=t.length===0&&e.tags.length===0;return(0,W.jsxs)(`div`,{className:`wl-chips wl-rq-tags`,children:[(0,W.jsx)(Ix,{tags:t}),e.tags.map(e=>(0,W.jsx)(`span`,{className:qj(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)(sS,{scopes:Jj(e)})]})}function Xj(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 Zj({r:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Summary`}),(0,W.jsx)(Kj,{r:e}),(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Tags`}),(0,W.jsx)(Yj,{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)(aO,{items:Xj(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)(pv,{"aria-hidden":`true`}),` View full trace`]})]})}var Qj=40;function $j(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 eM(e){return ve(e)?`error`:e.category===`browser`?ct(e)===`fetch`?`browser`:`render`:e.category.replace(`.`,`-`)}function tM({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-${eM(e)}`,style:{left:`${i}%`,width:`${Math.min(a,100-i)}%`}})}),(0,W.jsx)(`span`,{className:`wl-rq-span-ms`,children:q(e.durationMs)})]})}function nM({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,Qj);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)(tM,{s:r,depth:$j(r,t),start:e.startMs,total:n},r.spanId))}),e.spans.length>Qj&&(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Showing `,Qj,` 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)(pv,{"aria-hidden":`true`}),` View full trace`]})]})}var rM=[[`overview`,`Overview`],[`headers`,`Headers`],[`response`,`Response`],[`trace`,`Trace`]];function iM({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)(sb,{size:18})})]}),(0,W.jsxs)(`div`,{className:`wl-side-meta`,children:[(0,W.jsxs)(`span`,{children:[Eb(e.startMs),` • `,Db(e.startMs)]}),(0,W.jsx)(Y,{tone:Bb(e.status),children:Rj(e.status,e.aborted)}),(0,W.jsx)(`strong`,{className:`wl-rq-duration`,children:q(e.durationMs)})]})]})}function aM({r:e,trace:t}){let[n,r]=(0,E.useState)(`overview`),i=Aj(t);return(0,W.jsxs)(G,{className:`wl-rq-side`,children:[(0,W.jsx)(iM,{r:e}),(0,W.jsx)(hb,{tabs:rM,value:n,onChange:r}),n===`overview`&&(0,W.jsx)(Zj,{r:e}),n===`headers`&&(0,W.jsx)(Vj,{r:e,server:i}),n===`response`&&(0,W.jsx)(Uj,{r:e,server:i}),n===`trace`&&(0,W.jsx)(nM,{trace:t})]})}function oM({headlines:e,compareLabel:t,empty:n}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-rq-cards`,children:[(0,W.jsx)($,{icon:Vv,label:`Total Requests`,value:J(e.total.value),change:e.total.change,upIsGood:!0,compareLabel:t,series:e.total.series}),(0,W.jsx)($,{icon:tv,label:`Avg Duration`,value:q(e.avgDuration.value),change:e.avgDuration.change,upIsGood:!1,compareLabel:t,series:e.avgDuration.series}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:n?`–`:yb(e.errorRate.value),change:e.errorRate.change,upIsGood:!1,compareLabel:t,series:e.errorRate.series,danger:!0}),(0,W.jsx)($,{icon:Gv,label:`Requests With Insights`,value:J(e.withInsights.value),change:e.withInsights.change,upIsGood:!1,compareLabel:t,series:e.withInsights.series})]})}function sM({label:e,k:t,sort:n,onSort:r}){let i=n.key===t,a=n.desc?__:C_;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 cM=e=>(0,W.jsx)(`span`,{className:Ln(e)?`wl-text-error`:void 0,children:q(e.durationMs)});function lM(e,t){let n=(n,r)=>(0,W.jsx)(sM,{label:n,k:r,sort:e,onSort:t});return[{key:`time`,header:n(`Time`,`time`),cell:e=>Eb(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)(Hb,{tone:Bb(e.status),colorText:(e.status??0)>=500,children:e.aborted?`Aborted`:e.status??`…`})},{key:`duration`,header:n(`Duration`,`duration`),cell:cM,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)(Gb,{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)(Gb,{n:e.insights})}]}var uM=[[`time`,e=>bO(e.startMs)],[`method`,e=>e.method],[`path`,e=>e.path],[`endpoint`,e=>e.endpoint],[`status`,e=>e.status],[`duration_ms`,e=>xO(e.durationMs)],[`server_ms`,e=>xO(e.serverMs)],[`db_ms`,e=>xO(e.dbMs)],[`sql_queries`,e=>e.dbCount],[`fetch_calls`,e=>e.fetchCount],[`fetch_ms`,e=>xO(e.fetchMs)],[`render_ms`,e=>xO(e.renderMs)],[`network_ms`,e=>xO(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(` `)]],dM=e=>yO(uM,e),fM=e=>SO(`requests`,dM(e)),pM=5e3;function mM(){let e=i().query,t=e.get(`sort`)??void 0,r={key:wo(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 hM(){let[e]=Zg(),t=H().has(`serverStats`),n=i().query,[r,a]=(0,E.useState)(!1);return[r,()=>{a(!0),fT(`requests`,{...Object.fromEntries(n),page:`1`,size:String(pM)},e,t).then(e=>fM(e.rows)).finally(()=>a(!1))}]}function gM({model:e,selectedId:t}){let[r,i]=mM(),[a,o]=hM(),s=jx(`requests`,e.rows,Nx),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=Lx(lM(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(pM)})`,children:[(0,W.jsx)($y,{"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)(Yb,{page:e.page,pageSize:e.pageSize,total:e.total,noun:`requests`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function _M(){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 vM({id:e,row:t}){let{trace:n}=xC(e),r=t??(n?Nn(n):null);return r?(0,W.jsx)(aM,{r,trace:n??void 0},r.traceId):(0,W.jsx)(_M,{})}function yM(){let e=i(),[t,n]=(0,E.useState)(!1),{model:r,loading:a,error:o}=hT(`requests`,void 0,t),[s]=u(),c=go(e.query),l={...c,service:c.service||s},d=e.query.get(`trace`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Requests`,subtitle:`Inspect and analyze recent request activity across your stack.`,children:(0,W.jsx)(Qk,{paused:t,onChange:n})}),(0,W.jsx)(ID,{model:r,loading:a,error:o,what:`requests`}),(0,W.jsx)(kj,{filter:l,methods:r?.options.methods??[],services:r?.options.services??[]}),r&&(0,W.jsx)(oM,{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)(gM,{model:r,selectedId:d}),d&&(0,W.jsx)(vM,{id:d,row:r?.selected??null})]})]})}var bM=`color-mix(in srgb, var(--wl-red) 45%, transparent)`,xM=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)})}],SM=[{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)(Hb,{tone:Bb(e.status),children:e.status??`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:Ln(e)?`wl-text-error`:void 0,children:q(e.durationMs)})}],CM=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=>Nb(t.lastSeenMs,e)},{key:`count`,header:`Count`,num:!0,cell:e=>J(e.count)}];function wM({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:Tv,label:`Requests`,value:J(t.count),change:n(t.count,e.prev?.count),upIsGood:!0,series:e.chart.count,...i}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:yb(t.errorRate),change:n(t.errorRate,e.prev?.errorRate),upIsGood:!1,series:r,danger:!0,...i}),(0,W.jsx)($,{icon:qy,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:qy,label:`p99 Latency`,value:q(t.p99Ms),change:n(t.p99Ms,e.prev?.p99Ms),upIsGood:!1,series:e.chart.p99,...i})]})}function TM({m:e}){let t={label:_b(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)(eE,{starts:e.starts,lines:[{label:`Requests`,values:e.chart.count,color:`var(--wl-blue)`},t],bars:[{label:`Errors`,values:e.chart.errors,color:bM}],height:220,separateBarScale:!0,format:J})}),(0,W.jsx)(G,{title:`Latency Over Time`,children:(0,W.jsx)(eE,{starts:e.starts,lines:n,height:220,format:e=>q(e)})})]})}function EM({m:e}){let t=e.slowest.length?e.slowest:e.recent,n=(0,W.jsx)(pb,{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:xM(`Query`),rows:e.queries,rowKey:e=>e.name,onRowClick:e=>T(He(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:xM(`Service or host`),rows:e.calls,rowKey:e=>e.name,onRowClick:e=>T(RS(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)(RD,{group:`errors`,docOf:Pg,tagged:`error`,columns:CM(e.meta.window.to),rows:e.errors,rowKey:e=>e.key,onRowClick:e=>T(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)(LD,{kind:`requests`,itemOf:Nx,tagged:`path`,columns:SM,rows:t,rowKey:e=>e.traceId,onRowClick:e=>T(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No request in this range.`})})})]})]})}function DM({service:e,endpoint:t}){let{model:n,loading:r,error:i}=hT(`endpoint`,{service:e,endpoint:t}),a=e.includes(`:`)?e.slice(e.indexOf(`:`)+1):e,o=Mx()(`endpoints`,jg(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)(ID,{model:n,loading:r,error:i,what:`this endpoint`}),(0,W.jsx)(EC,{back:[RS(e),a],icon:ab,title:t,mono:!0,badge:(0,W.jsx)(Ix,{tags:o}),stats:s,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(rk,{fields:{metric:`p95_ms`,service:a,endpoint:t,name:`${t} is slow`}}),(0,W.jsx)(sS,{scopes:[zg(a,t),Bg(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)(wM,{m:n}),(0,W.jsx)(TM,{m:n}),(0,W.jsx)(EM,{m:n})]})]})}function OM(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)(Hb,{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=>Nb(t.firstSeenMs,e),sort:e=>-e.firstSeenMs,className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Nb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs}]}function kM({group:e,now:t,onClose:n}){let[r,i]=(0,E.useState)(!1),a=e.instances.filter(e=>tt(e,t)).length,o=r?e.instances:e.instances.filter(e=>!tt(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)(Xx,{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:OM(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 AM=3e4;function jM(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 MM(e,t,n=!0){let r=H().has(`infra`),[i]=Zg(),a=Object.fromEntries(Object.entries(t).filter(e=>!!e[1])),o=new URLSearchParams(a).toString(),s=(0,E.useMemo)(()=>r&&n?jM(e,Object.fromEntries(new URLSearchParams(o)),i):null,[r,n,e,o,i]),[c,l]=(0,E.useState)(0),[u,d]=(0,E.useState)({model:null,url:null,error:null});(0,E.useEffect)(()=>{let e=setInterval(()=>l(e=>e+1),AM);return()=>clearInterval(e)},[]),(0,E.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 NM=e=>sf(e,`1`),PM=e=>sf(e,`By`),FM=e=>sf(e,`By/s`);function IM(e){return e==null?`–`:e<.995?`${Math.round(e*1e3)} millicores`:`${e>=10?e.toFixed(0):e.toFixed(2)} cores`}function LM(e,t){return e===null?`–`:t?`${PM(e)} of ${PM(t)}`:PM(e)}function RM({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:NM(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:NM(e)})]})}function zM({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 BM({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)(y_,{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 VM({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)(eE,{starts:t,lines:n,height:200,format:r})})}function HM(e){return[{key:`service`,header:`Service`,cell:e=>(0,W.jsx)(`a`,{href:RS(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)(Hb,{tone:e.online?`success`:`neutral`,children:e.online?`Online`:`Offline`}),sort:e=>+!e.online},{key:`seen`,header:`Last seen`,cell:t=>Nb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs}]}function UM({services:e,now:t,empty:n}){return(0,W.jsx)(G,{title:`Services`,flush:!0,children:(0,W.jsx)(Q,{columns:HM(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 WM({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 GM={Running:`success`,Pending:`warning`,Failed:`danger`,Succeeded:`neutral`,Unknown:`neutral`},KM=(e,t)=>e!==null&&t?e/t:null,qM=(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 JM({phase:e}){return e?(0,W.jsx)(Hb,{tone:GM[e]??`neutral`,children:e}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`Unknown`})}var YM=e=>[{key:`name`,header:`Node`,cell:e=>(0,W.jsx)(`a`,{href:GS(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)(Hb,{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)(RM,{share:KM(e.cpu,e.cpuAlloc)}):IM(e.cpu),sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>e.memAlloc?(0,W.jsx)(RM,{share:KM(e.memory,e.memAlloc)}):PM(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=>qM(e.pending,!0),num:!0,sort:e=>e.pending,className:`wl-hide-sm`},{key:`restarts`,header:`Restarts`,cell:e=>qM(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:WS(e.name),children:`Host page`}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Nb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs,className:`wl-hide-sm`}];function XM({rows:e,now:t}){return(0,W.jsx)(Q,{columns:YM(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 ZM=[{key:`name`,header:`Workload`,cell:e=>(0,W.jsx)(`a`,{href:qS(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=>qM(e.pending,!0),num:!0,sort:e=>e.pending},{key:`restarts`,header:`Restarts`,cell:e=>qM(e.restartsNew,!0),num:!0,sort:e=>e.restartsNew},{key:`oom`,header:`OOM Killed`,cell:e=>qM(e.oomKills,!0),num:!0,sort:e=>e.oomKills}];function QM({rows:e}){return(0,W.jsx)(Q,{columns:ZM,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 $M=[{key:`name`,header:`Pod`,cell:e=>(0,W.jsx)(`a`,{href:KS(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)(JM,{phase:e.phase}),sort:e=>e.phase},{key:`node`,header:`Node`,cell:e=>e.node?(0,W.jsx)(`a`,{href:GS(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=>IM(e.cpu),num:!0,sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>e.memLimit?(0,W.jsx)(RM,{share:KM(e.memory,e.memLimit)}):PM(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=>qM(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:RS(e),children:e},e))}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),sort:e=>e.services.length,className:`wl-hide-sm`}];function eN({rows:e,empty:t=`No pods match these filters.`}){return(0,W.jsx)(Q,{columns:$M,rows:e,rowKey:e=>e.key,defaultSort:{key:`name`,desc:!1},empty:(0,W.jsx)(K,{title:`No pods`,children:t})})}function tN({name:e}){let t=H().has(`infra`),n=MM(`kubernetes`,{service:e},t),r=MM(`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)(eN,{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:WS(e.name),children:e.name}),(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[`CPU `,(0,W.jsx)(RM,{share:e.cpu}),` Memory `,(0,W.jsx)(RM,{share:e.mem})]})]},e.name))})})]})}var nN={api:`Requests`,web:`Requests`,worker:`Messages Handled`,queue:`Messages Sent`,database:`Queries`,external:`Calls`},rN=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function iN({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:Tv,label:nN[t.kind],value:J(t.requests),change:i(t.requests,n?.requests),upIsGood:!0,compareLabel:r,series:e.chart.requests}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:yb(t.errorRate),change:i(t.errorRate,n?.errorRate),upIsGood:!1,compareLabel:r,series:a,danger:!0}),(0,W.jsx)($,{icon:tv,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:qy,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)(GA,{apdex:e.apdex,compareLabel:r})]})}function aN({m:e,row:t}){let n=nN[t.kind];return(0,W.jsx)(G,{title:`${n} Over Time`,children:(0,W.jsx)(eE,{starts:e.starts,lines:[{label:n,values:e.chart.requests,color:`var(--wl-blue)`},{label:_b(e.meta.compare),values:e.chart.prevRequests,color:`var(--wl-slate)`,dashed:!0}],bars:[{label:`Errors`,values:e.chart.errors,color:rN}],height:220,separateBarScale:!0,format:J})})}function oN({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)(eE,{starts:e.starts,lines:t,height:220,format:e=>q(e)})})}var sN={database:`System`,external:`Host`,queue:`Queue`,web:`Source`};function cN(e,t){let{registry:n}=Se(),[r]=ee(),[i]=b(),a=H().has(`accounts`);return!t||!n?[]:nt(n.services.filter(t=>t.service===e&&xe(t,{env:r,project:i},!a)))}function lN(e,n,r){let i=[[`Kind`,FS[e.kind]]];e.detail&&sN[e.kind]&&i.push([sN[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`,Nb(a.lastSeenMs,r)]),i}function uN({row:e,groups:t}){let{updatedMs:n}=Se(),r=PS[e.kind],i=Mx()(`services`,Ng(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)(y_,{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)(BS,{status:e.status})}),(0,W.jsx)(Ix,{tags:i}),a&&(0,W.jsxs)(`span`,{className:`wl-dhead-actions`,children:[e.kind!==`web`&&(0,W.jsx)(rk,{fields:{metric:`error_rate`,service:e.name,name:`${e.name} errors`}}),(0,W.jsx)(sS,{scopes:[Bg(e.name)]})]})]}),(0,W.jsx)(`dl`,{className:`wl-stats`,children:lN(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 dN=(e,t)=>t?e/t*100:0,fN={api:`Endpoint`,web:`Call`,worker:`Operation`,queue:`Operation`,database:`Query`,external:`Call`};function pN(e){return[{key:`name`,header:fN[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=>yb(dN(e.errors,e.count)),sort:e=>dN(e.errors,e.count)},{key:`avg`,header:`Avg Latency`,num:!0,cell:e=>q(e.avgMs),sort:e=>e.avgMs??0}]}function mN({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 hN(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 gN(e){if(e.kind===`api`)return t=>T(_e(e.key,t.name));if(e.kind===`database`)return e=>T(He(e.name))}function _N({m:e,row:t}){let[n,r]=(0,E.useState)(!1),i=n?e.endpoints:e.endpoints.slice(0,10),a=hN(t),o=t.kind===`database`?`Queries`:t.kind===`api`?`Endpoints`:`Operations`,s=Mx(),c=t.kind===`api`||t.kind===`worker`?Lx(pN(t.kind),`name`,e=>s(`endpoints`,jg(t.name,e.name))):pN(t.kind),l=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(mN,{open:n,total:e.endpoints.length,onToggle:()=>r(!n)}),a&&(0,W.jsx)(pb,{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:gN(t),defaultSort:{key:`count`,desc:!0},empty:(0,W.jsx)(K,{children:`Nothing recorded in this range.`})})})}var vN=e=>[{key:`name`,header:`Service`,cell:t=>(0,W.jsx)(`a`,{href:RS(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 yN({title:e,edges:t,side:n,empty:r}){return(0,W.jsx)(G,{title:e,flush:!0,children:(0,W.jsx)(Q,{columns:vN(n),rows:t,rowKey:e=>`${e.from}→${e.to}`,onRowClick:e=>T(RS(e[n])),defaultSort:{key:`calls`,desc:!0},empty:(0,W.jsx)(K,{children:r})})})}var bN=e=>e.replace(/^[A-Z]+ /,``);function xN(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:bN(e.endpoint)})},{key:`seen`,header:`Last Seen`,className:`wl-nowrap`,sort:e=>e.lastSeenMs,cell:t=>Nb(t.lastSeenMs,e)},{key:`count`,header:`Count`,num:!0,sort:e=>e.count,cell:e=>J(e.count)}]}function SN({m:e,name:t}){let{updatedMs:n}=Se(),[r,i]=(0,E.useState)(!1),{groups:a,total:o}=e.errors,s=Mx(),c=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(mN,{open:r,total:a.length,onToggle:()=>i(!r)}),(0,W.jsx)(pb,{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:Lx(xN(n),`error`,e=>s(`errors`,Pg(e))),rows:r?a:a.slice(0,10),rowKey:e=>e.key,onRowClick:e=>T(he(e.key)),empty:(0,W.jsx)(K,{title:`No exceptions`,children:`Nothing failed in this time range.`})})})}var CN=[{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)(Hb,{tone:Bb(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:Ln(e)?`wl-text-error`:void 0,children:q(e.durationMs)})}];function wN({m:e,name:t}){let n=jx(`requests`,e.slowest,Nx),r=e.requestCount>0&&(0,W.jsx)(pb,{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:Lx(CN,`path`,n),rows:e.slowest,rowKey:e=>e.traceId,onRowClick:e=>T(y(e.traceId)),empty:(0,W.jsx)(K,{title:`No requests`,children:`No request went through this service in this range.`})})})}var TN=gA.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 EN({m:e,name:t}){let{total:n,warnings:r,errors:i,rows:a}=e.logs,o=jx(`logs`,a,Px),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)(pb,{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:Lx(TN,`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 DN({name:e}){let{model:t}=eD({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)(pb,{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)(cD,{values:t.spark,width:240,height:28,stretch:!0})]},t.key))})})}var ON=(e,t)=>{let n=e[e.indexOf(t)+1];return!!n&&t.requests>0&&n.requests>0&&t.errorRate>n.errorRate};function kN(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=>Ob(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:ON(e,t)?`wl-text-error`:void 0,children:yb(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 AN({m:e,name:t}){return(0,W.jsx)(G,{title:`Versions (${J(e.versions.length)})`,flush:!0,children:(0,W.jsx)(Q,{columns:kN(e.versions),rows:e.versions,rowKey:e=>e.version,onRowClick:e=>T(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 jN=new Set([`api`,`web`,`database`,`external`]);function MN({id:e}){return(0,W.jsxs)(G,{children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`services`),children:[(0,W.jsx)(y_,{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 NN({m:e,row:t}){let{updatedMs:n}=Se(),r=cN(t.name,e.owned);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(uN,{row:t,groups:r}),(0,W.jsx)(iN,{m:e,row:t}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(aN,{m:e,row:t}),(0,W.jsx)(oN,{m:e})]}),jN.has(t.kind)&&(0,W.jsx)(_N,{m:e,row:t}),e.owned&&(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(SN,{m:e,name:t.name}),(0,W.jsx)(wN,{m:e,name:t.name})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(yN,{title:`Called By`,edges:e.incoming,side:`from`,empty:`Nothing called this service in this range.`}),(0,W.jsx)(yN,{title:`Calls`,edges:e.outgoing,side:`to`,empty:`This service called nothing in this range.`})]}),e.owned&&(0,W.jsx)(AN,{m:e,name:t.name}),e.owned&&(0,W.jsx)(EN,{m:e,name:t.name}),e.owned&&(0,W.jsx)(DN,{name:t.name}),e.owned&&(0,W.jsx)(tN,{name:t.name}),r.map(e=>(0,W.jsx)(kM,{group:e,now:n},e.key))]})}function PN({id:e}){let{model:t,loading:n,error:r}=hT(`service`,{service:e});return(0,W.jsxs)(`div`,{className:`wl-svc-page`,children:[(0,W.jsx)(ID,{model:t,loading:n,error:r,what:`this service`}),t&&(t.row?(0,W.jsx)(NN,{m:t,row:t.row}):(0,W.jsx)(MN,{id:e}))]})}var FN=190,IN=46,LN=110,RN=22;function zN(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 BN(e,t){let n=zN(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*FN+(o-1)*LN,height:a*68-RN}}function VN({edge:e,a:t,b:n}){let r=t.x+FN,i=t.y+IN/2,a=n.x,o=n.y+IN/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?[`${yb(c)} failed`]:[]].join(` · `);return(0,W.jsxs)(`g`,{className:e.errors?`wl-dep-edge wl-failing`:`wl-dep-edge`,onClick:()=>T(RS(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 HN({p:e,selected:t}){let r=PS[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:FN,height:IN,rx:`10`}),(0,W.jsx)(`foreignObject`,{x:`10`,y:`0`,width:170,height:IN,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-${LS(e.row.status)}`})]})})]})}function UN({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}=BN(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)(VN,{edge:e,a:t,b:n},`${e.from}→${e.to}`):null}),[...r.values()].map(e=>(0,W.jsx)(HN,{p:e,selected:e.row.key===n},e.row.key))]})})}function WN({ask:e,onClose:t}){let n=(0,E.useRef)(null),[r,i]=(0,E.useState)(e.input?.initial??``),a=(0,E.useRef)(t);a.current=t,(0,E.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 GN=1;function KN(){let[e,t]=(0,E.useState)(null),n=e=>new Promise(n=>t({...e,id:GN++,resolve:n}));return{dialog:e&&(0,W.jsx)(WN,{ask:e,onClose:n=>{e?.resolve(n),t(null)}},e.id),confirm:async e=>await n(e)!==null,prompt:e=>n(e)}}var qN={viewer:`Viewer`,member:`Member`,admin:`Admin`,owner:`Owner`},JN={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.`},YN=[`viewer`,`member`,`admin`,`owner`].map(e=>[e,qN[e]]),XN=e=>e===`owner`||e===`admin`,ZN=e=>e.online>0?`Online`:f(e.newest),QN=e=>e.instances.length===1?`1`:`${J(e.online)} of ${J(e.instances.length)} online`;function $N(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)(Hb,{tone:e.online>0?`success`:`neutral`,children:ZN(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:QN,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=>Nb(t.newest.lastSeenMs,e),sort:e=>-e.newest.lastSeenMs}]}function eP(e){let[t]=b(),n=Me(Ce())?.org.role,r=H().has(`accounts`),{dialog:i,confirm:a}=KN(),[o,s]=(0,E.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 Bx(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&&XN(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 tP(){let{registry:e,updatedMs:t}=Se(),[n]=ee(),[r]=b(),i=H().has(`accounts`),[a,o]=(0,E.useState)(null),s=nt((e?.services??[]).filter(e=>xe(e,{env:n,project:r},!i))),c=eP(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:$N(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)(kM,{group:l,now:t,onClose:()=>o(null)},l.key)]})}function nP({items:e,row:t}){let n=t.kind,r=Mx(),i=e=>n===`api`||n===`worker`?r(`endpoints`,jg(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)(Ix,{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 rP({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 iP({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)(VS,{row:t})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:()=>n({service:null}),"aria-label":`Close details`,children:(0,W.jsx)(sb,{size:18})})]}),className:`wl-svc-detail`,children:[(0,W.jsx)(mb,{rows:[[`Kind`,FS[t.kind]],[`Status`,(0,W.jsx)(BS,{status:t.status})],[`Requests`,J(t.requests)],[`Errors`,`${J(t.errors)} (${yb(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:RS(t.key),children:[(0,W.jsx)(pv,{"aria-hidden":`true`}),` View full service`]}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Traffic`}),(0,W.jsx)(eE,{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)(nP,{items:r,row:t}),(0,W.jsx)(rP,{title:`Called by`,edges:i,side:`from`}),(0,W.jsx)(rP,{title:`Calls`,edges:a,side:`to`})]})}function aP({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:F_,label:`Services`,value:J(t.apis),change:i(t.apis,n.apis),upIsGood:!0,compareLabel:r}),(0,W.jsx)($,{icon:lv,label:`Databases`,value:J(t.databases),change:i(t.databases,n.databases),upIsGood:!0,compareLabel:r}),(0,W.jsx)($,{icon:Tv,label:`Requests Served`,value:J(t.served),change:i(t.served,n.served),upIsGood:!0,compareLabel:r,series:e.served}),(0,W.jsx)($,{icon:Zy,label:`Error Rate`,value:yb(t.errorRate),change:i(t.errorRate,n.errorRate),upIsGood:!1,compareLabel:r,series:e.failed,danger:!0})]})}function oP({m:e}){let t=e.selected;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(aP,{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)(US,{rows:e.rows,selectedKey:t?.row.key??null})}),t&&(0,W.jsx)(iP,{detail:t})]}),(0,W.jsx)(tP,{}),(0,W.jsx)(G,{title:`Dependencies`,children:(0,W.jsx)(UN,{rows:e.rows,edges:e.edges,selectedKey:t?.row.key??null})})]})}function sP(){let{model:e,loading:t,error:n}=hT(`services`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Services`,subtitle:`Every service and database in your stack, how healthy it is, and what it talks to.`}),(0,W.jsx)(ID,{model:e,loading:t,error:n,what:`services`}),e&&(0,W.jsx)(oP,{m:e})]})}function cP(){let[e,t,n]=i().params;return e&&t===`endpoints`&&n?(0,W.jsx)(DM,{service:zS(e),endpoint:zS(n)},`${e}/${n}`):e?(0,W.jsx)(PN,{id:zS(e)},e):(0,W.jsx)(sP,{})}function lP(e){let t=Nn(e);return t?zb(t.health):e.status===`error`?`danger`:`success`}function uP({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:Fb(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)(Ix,{tags:r})]})}),(0,W.jsx)(`td`,{className:`wl-num`,children:q(e.durationMs)}),(0,W.jsx)(`td`,{className:`wl-num`,children:(0,W.jsx)(Vb,{tone:e.health?zb(e.health):e.status===`error`?`danger`:`success`,title:e.status})})]})}function dP({items:e,total:t,page:r,size:a,selectedId:o}){let s=i().query.get(`q`)??``,c=jx(`traces`,e,Nx);return(0,W.jsxs)(G,{title:`Traces (${J(t)})`,action:(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(jO,{page:`traces`,disabled:t===0}),(0,W.jsx)(pb,{href:S(`requests`,[],{q:s}),label:`View requests`})]}),children:[(0,W.jsx)(sA,{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)(uP,{item:e,selected:e.traceId===o,tags:c(e)},e.traceId))})]})}),t>a&&(0,W.jsx)(Yb,{page:r,pageSize:a,total:t,noun:`traces`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}var fP={browser:ty,network:jv,routing:jy,handler:rv,service:F_,queue:zv,database:lv,external:pv,render:ly},pP=e=>Array.from({length:7},(t,n)=>e/6*n);function mP({layer:e,max:t}){let n=fP[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 hP({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??``} ${qo(e)}`.trim()}),t!=null&&(0,W.jsx)(Y,{tone:Bb(t),children:t}),(0,W.jsx)(`span`,{className:`wl-chip`,children:q(ti(e))}),(0,W.jsxs)(`span`,{className:`wl-chip`,children:[e.spanCount,` spans`]}),(0,W.jsx)(`span`,{className:`wl-muted`,children:Ob(e.startMs)}),(0,W.jsxs)(`a`,{className:`wl-view-all`,href:y(e.traceId),children:[`Open trace `,(0,W.jsx)(pv,{size:14,"aria-hidden":`true`})]})]})}function gP({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=Qr(e),n=NT(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)(Vb,{tone:lP(e)}),(0,W.jsx)(`span`,{className:`wl-mono wl-muted wl-small`,children:e.traceId}),(0,W.jsx)(Kb,{text:e.traceId,label:`Copy trace id`})]});return(0,W.jsxs)(G,{title:r,children:[(0,W.jsx)(hP,{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:pP(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)(mP,{layer:e,max:n},e.key))]})]})}var _P=[[``,`All Statuses`],[`error`,`Failed`],[`ok`,`Succeeded`]],vP=[[`time`,`Newest first`],[`duration`,`Slowest first`]];function yP({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)(dD,{value:e.service}),(0,W.jsx)(X,{label:`Status`,value:e.status,onChange:t(`status`),options:_P}),(0,W.jsx)(X,{label:`Duration`,value:e.duration,onChange:t(`duration`),options:mo}),(0,W.jsx)(X,{label:`Order`,value:e.sort,onChange:t(`sort`),options:vP}),(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)(yy,{"aria-hidden":`true`}),` Reset`]})]})}function bP(e,t){return(t.find(t=>t.info?.service===e.service)??t.find(e=>e.self))?.info??null}function xP(e){let t=e.rootStatusCode;return t==null?e.status===`error`?`Error`:`OK`:t>=400?`${t} Error`:`${t} OK`}function SP({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=w(e.spans),r=Ae(e.spans),i=bP(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`,`${Db(e.startMs)} ${Eb(e.startMs)}`],[`Duration`,q(ti(e))],[`Status`,(0,W.jsx)(Hb,{tone:lP(e),children:xP(e)})],[`Method`,e.rootMethod??`—`],[`Path`,qo(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)(Kb,{text:JSON.stringify({traceId:e.traceId,rootName:e.rootName,services:e.services},null,2),label:`Copy attributes`}),children:(0,W.jsx)(mb,{rows:o})})}var CP={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)`},wP=100;function TP({data:e}){let[t,n]=(0,E.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:EP(e.kind,e.key,i)}}),e.label]}),value:e.totalMs,share:yb(e.share),display:q(e.totalMs),color:EP(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)(aO,{compact:!0,items:a})})}function EP(e,t,n){return e===`owner`?`var(--wl-s${Pb(t,n)})`:CP[e]}function DP({critical:e}){let[t,n]=(0,E.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=>T(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${Pb(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>=wP?`wl-text-tone-danger`:`wl-text-tone-warning`,children:q(e.durationMs)})}]})})}function OP({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:Vv,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:tv,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:Zy,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:Gv,label:`Bottleneck Insights`,href:S(`insights`),value:J(r),change:s(r,i),upIsGood:!1,compareLabel:o,series:a})]})}function kP({m:e}){let t=Se();return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(yP,{filter:e.filter}),(0,W.jsx)(OP,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-traces-top`,children:[(0,W.jsx)(dP,{items:e.recent,total:e.matching,page:e.page,size:e.size,selectedId:e.selected?.traceId??null}),(0,W.jsx)(gP,{trace:e.selected})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-3`,children:[(0,W.jsx)(TP,{data:e.bottlenecks}),(0,W.jsx)(DP,{critical:e.critical}),(0,W.jsx)(SP,{trace:e.selected,sources:t.sources})]})]})}function AP(){let{model:e,loading:t,error:n}=hT(`traces`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Traces`,subtitle:`Follow requests across browser, API, database, and rendering to understand performance end-to-end.`}),(0,W.jsx)(ID,{model:e,loading:t,error:n,what:`traces`}),e&&(0,W.jsx)(kP,{m:e})]})}var jP={overview:()=>(0,W.jsx)(rj,{}),requests:()=>(0,W.jsx)(yM,{}),errors:()=>(0,W.jsx)(Fk,{}),error:e=>(0,W.jsx)(_k,{group:e.group??``}),database:()=>(0,W.jsx)(qO,{}),query:e=>(0,W.jsx)(_O,{query:e.q??``}),logs:()=>(0,W.jsx)(FA,{}),insights:()=>(0,W.jsx)(Zk,{}),rendering:()=>(0,W.jsx)(Oj,{}),route:e=>(0,W.jsx)(cj,{route:e.route??``}),services:()=>(0,W.jsx)(sP,{}),service:e=>(0,W.jsx)(PN,{id:e.service??``}),endpoint:e=>(0,W.jsx)(DM,{service:e.service??``,endpoint:e.endpoint??``}),traces:()=>(0,W.jsx)(AP,{})};function MP({page:e,params:t,model:n}){let r=jP[e];return(0,W.jsx)(Pw.Provider,{value:{page:e,model:n},children:r?r(t):null})}function NP({token:e}){let[t,n]=(0,E.useState)(null),[r,i]=(0,E.useState)(null);(0,E.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 ${Ob(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)(iO,{})}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:t?`${a} · link works until ${Db(t.expiresMs)}`:a})]}),(0,W.jsx)(`main`,{className:`wl-page`,children:t?`trace`in t?(0,W.jsx)(wC,{trace:t.trace,shared:!0}):(0,W.jsx)(MP,{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 PP(e){return e==null||!Number.isFinite(e)?`–`:e>=100?`100%`:`${(Math.floor(e*100)/100).toFixed(2)}%`}function FP(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 IP=(e,t)=>e?.checks.find(e=>e.checkId===t);function LP(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 RP=e=>e===null?`neutral`:e>=99.9?`success`:e>=99?`warning`:`danger`,zP=6e4,BP=864e5;function VP({days:e,nowMs:t}){let n=Math.floor(t/BP)*BP-29*BP;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-${RP(e)}`,title:`${Db(n+t*BP)}: ${e===null?`no data`:PP(e)}`},t))})}function HP({c:e,nowMs:t}){let n=FP({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)(Hb,{tone:n.tone,colorText:!0,children:n.label===`Up`?`Operational`:n.label===`Down`?`Down`:`Checking`})]}),(0,W.jsx)(VP,{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 `,PP(e.uptime[`24h`]),` · 7 days `,PP(e.uptime[`7d`]),` · 30 days `,PP(e.uptime[`30d`])]}),(0,W.jsx)(`span`,{children:`Today`})]})]})}function UP({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 WP({view:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(UP,{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)(HP,{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 `,Ob(e.startMs),e.endMs===null?``:`, for ${LP(e.endMs-e.startMs)}`]})]},`${e.checkName}-${e.startMs}`))})})]})}function GP({token:e}){let[t,n]=(0,E.useState)(null),[r,i]=(0,E.useState)(null);return(0,E.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(),zP);return()=>clearInterval(r)},[e]),(0,E.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)(iO,{})})]})]}),(0,W.jsx)(`main`,{className:`wl-page wl-status-main`,children:t?(0,W.jsx)(WP,{view:t}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:r?`This status page does not exist`:`Loading…`,children:r})})})]})}var KP={name:`email`,label:`Email`,type:`email`,autoComplete:`email`},qP={name:`password`,label:`Password`,type:`password`,autoComplete:`current-password`},JP={name:`password`,label:`Password (12 characters or more)`,type:`password`,autoComplete:`new-password`},YP={name:`name`,label:`Your name`,autoComplete:`name`};function XP({title:e,intro:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-brand-row`,children:(0,W.jsx)(iO,{})}),(0,W.jsx)(`h1`,{children:e}),t&&(0,W.jsx)(`p`,{className:`wl-muted`,children:t})]})}function ZP({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)(XP,{title:e,intro:t}),n]})})}function QP({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 $P({title:e,intro:t,fields:n,submit:r,onSubmit:i,secondary:a,footer:o}){let[s,c]=(0,E.useState)(!1),[l,u]=(0,E.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)(XP,{title:e,intro:t}),n.map(e=>(0,W.jsx)(QP,{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 eF=({onClick:e,children:t})=>(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:e,children:t}),tF=()=>`${window.location.origin}${window.location.pathname}${window.location.hash.startsWith(`#/oauth`)?window.location.hash:`#/`}`,nF={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 rF(){let e=new URLSearchParams(window.location.search),t=e.get(`error`);return t?(window.history.replaceState(null,``,window.location.pathname+window.location.hash),nF[t]??`Single sign-on failed: ${(e.get(`error_description`)??t).replace(/_/g,` `)}.`):null}function iF({footer:e}){let t=async e=>{let t=await Te(t=>t.signIn.sso({email:e.email,callbackURL:tF(),errorCallbackURL:tF()}));window.location.assign(t.url)};return(0,W.jsx)($P,{title:`Sign in with SSO`,intro:`Use your work email. Your company's sign-in page opens next.`,fields:[{...KP,label:`Work email`}],submit:`Continue`,onSubmit:t,footer:e})}var aF=`x-wizelens-setup-token`;function oF({text:e}){return(0,W.jsx)(ZP,{title:`Check your email`,intro:e,children:(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`overview`),children:`Go to sign in`})})}function sF({token:e,state:t}){let[n,r]=(0,E.useState)(!1);return e?n?(0,W.jsx)(oF,{text:`Check your email to confirm it, then sign in.`}):(0,W.jsx)($P,{title:`Set up WizeLens Cloud`,intro:`Create the first account. You become the owner of the first organization.`,fields:[YP,KP,JP],submit:`Create account`,onSubmit:async n=>{if(await Te(t=>t.signUp.email({name:n.name,email:n.email,password:n.password},{headers:{[aF]:e}})),t.mail)return r(!0);await De(),T(S(`overview`))}}):(0,W.jsx)(ZP,{title:`Set up WizeLens Cloud`,intro:`This cloud has no account yet. Open the setup link printed in the cloud's log.`})}function cF({state:e,title:t=`Sign in to WizeLens`,intro:n,email:r,onSignedIn:i=async()=>void await De(),footer:a,onSso:o}){let[s,c]=(0,E.useState)(null),[l,u]=(0,E.useState)(null),d=async t=>{c(null);try{let e=await Te(e=>e.signIn.email({email:t.email,password:t.password}));if(`twoFactorRedirect`in e&&e.twoFactorRedirect)return T(S(`two-factor`));await i()}catch(n){throw e.mail&&n instanceof Ie&&n.code===`EMAIL_NOT_VERIFIED`&&c(t.email),n}},f=()=>void Te(e=>e.signIn.passkey()).then(i,e=>u(ye(e))),p=e=>void Te(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)(eF,{onClick:()=>p(s),children:`Send the link again`}),l&&(0,W.jsx)(`p`,{className:`wl-muted wl-small`,role:`status`,children:l})]}),h=[{...KP,value:r},qP],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)($P,{title:t,intro:n,fields:h,submit:`Sign in`,onSubmit:d,secondary:m,footer:g})}function lF({state:e,back:t}){let[n,r]=(0,E.useState)(!1);return n?(0,W.jsx)(oF,{text:`Check your email. The link in it confirms your account.`}):(0,W.jsx)($P,{title:`Create your account`,fields:[YP,KP,JP],submit:`Create account`,onSubmit:async t=>{if(await Te(e=>e.signUp.email({name:t.name,email:t.email,password:t.password})),e.mail)return r(!0);await De()},footer:t})}function uF({state:e,intro:t}){let[n,r]=(0,E.useState)(`login`),[i]=(0,E.useState)(rF);if(e.needsSetup)return(0,W.jsx)(sF,{token:``,state:e});let a=(0,W.jsx)(eF,{onClick:()=>r(`login`),children:`I have an account`});if(n===`signup`)return(0,W.jsx)(lF,{state:e,back:a});if(n===`sso`)return(0,W.jsx)(iF,{footer:(0,W.jsx)(eF,{onClick:()=>r(`login`),children:`Sign in another way`})});let o=e.signup===`open`?(0,W.jsx)(eF,{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)(cF,{state:e,intro:i?(0,W.jsx)(`span`,{className:`wl-text-error`,role:`alert`,children:i}):t,footer:o,onSso:()=>r(`sso`)})}var dF=`x-wizelens-invite`;async function fF(e){await Te(t=>t.organization.acceptInvitation({invitationId:e})),Pe.set(null),await De(),T(S(`overview`))}function pF({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)($P,{title:`Join ${t.orgName}`,intro:r,fields:[],submit:`Join`,onSubmit:()=>fF(e)}):(0,W.jsx)(ZP,{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 mF({id:e,invite:t,state:n}){let[r,i]=(0,E.useState)(!1),[a,o]=(0,E.useState)(!1),s=`Join ${t.orgName} as ${t.role}. ${t.inviter} invited ${t.email}.`,c=(0,W.jsx)(eF,{onClick:()=>i(!r),children:r?`I need a new account`:`I already have an account`});if(a)return(0,W.jsx)(ZP,{title:`Check your email`,intro:`Check your email to confirm it. The link brings you back here.`});if(r)return(0,W.jsx)(cF,{state:n,title:`Sign in to accept`,intro:s,email:t.email,onSignedIn:()=>fF(e),footer:c});let l=[YP,{name:`email`,label:`Email`,type:`email`,value:t.email,readOnly:!0},JP];return(0,W.jsx)($P,{title:`Join ${t.orgName}`,intro:s,fields:l,submit:`Create account and join`,onSubmit:async r=>{if(Pe.set(e),await Te(n=>n.signUp.email({name:r.name,email:t.email,password:r.password},{headers:{[dF]:e}})),n.mail)return o(!0);await fF(e)},footer:c})}function hF({id:e,state:t}){let[n,r]=(0,E.useState)(null),[i,a]=(0,E.useState)(null);return(0,E.useEffect)(()=>{if(!e)return a(`This invite link is not complete.`);Pe.set(e),ne(`./api/invites/${encodeURIComponent(e)}`).then(r,e=>a(ye(e)))},[e]),i?(0,W.jsx)(ZP,{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:()=>Pe.set(null),children:`Go to WizeLens`})}):n?t.signedIn?(0,W.jsx)(pF,{id:e,invite:n,state:t}):(0,W.jsx)(mF,{id:e,invite:n,state:t}):(0,W.jsx)(ZP,{title:`Opening the invite…`})}function gF({state:e}){let t=async e=>{await x(`POST`,`./api/orgs`,{name:e.name}),await De()},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)($P,{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 _F({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 vF=({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 yF({query:e,state:t}){let{clientId:n,returnHost:r}=YD(e),i=t.orgs??[],[a,o]=(0,E.useState)(null),[s,c]=(0,E.useState)(Me(t)?.org.id??i[0]?.id??``),[l,u]=(0,E.useState)(`some`),d=i.find(e=>e.id===s),[f,p]=(0,E.useState)(()=>new Set(d?.projects.map(e=>e.id))),[m,h]=(0,E.useState)(!1),[g,_]=(0,E.useState)(null),[v,y]=(0,E.useState)(!1);(0,E.useEffect)(()=>void $D(n).then(o,()=>o({})),[n]);let b=a?.client_name||`This app`;if(!d)return(0,W.jsx)(ZP,{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(()=>eO(e,{organizationId:d.id,allProjects:l===`all`,projectIds:l===`all`?[]:[...f]})),x=l===`some`&&f.size===0;return(0,W.jsxs)(ZP,{title:`Connect ${b}`,intro:`${b} wants to read your WizeLens data. Choose what it may see.`,children:[(0,W.jsx)(vF,{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)(_F,{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(()=>tO(e,!1)),children:`Deny`})]})}var bF=e=>e===`oauth`||e===`oauth-consent`;function xF(e){let t=e.query.has(`sig`)?e.query.toString():ZD.get()??``;return(0,E.useEffect)(()=>{e.query.has(`sig`)&&ZD.set(e.query.toString())},[e.query]),t}function SF({query:e}){return(0,E.useEffect)(()=>QD(e),[e]),(0,W.jsx)(ZP,{title:`One moment…`,intro:`Taking you to the next step.`})}var CF=()=>(0,W.jsx)(ZP,{title:`This link has expired`,intro:`Go back to the app you were connecting, and connect it again.`});function wF({route:e,state:t}){let n=xF(e);return n?t.signedIn?e.page===`oauth`?(0,W.jsx)(SF,{query:n}):(0,W.jsx)(yF,{query:n,state:t}):(0,W.jsx)(uF,{state:t,intro:`Sign in to connect an app to WizeLens. Next you choose what it may read.`}):(0,W.jsx)(CF,{})}var TF=e=>S(`invite`,[],{token:e}),EF=e=>`${window.location.origin}${window.location.pathname}${TF(e)}`;async function DF(){let e=ZD.get();if(e)return QD(e);await De();let t=Pe.get();T(t?TF(t):S(`overview`))}var OF=(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`overview`),children:`Go to WizeLens`});function kF({error:e}){let[t,n]=(0,E.useState)(!1);return t?(0,W.jsx)(ZP,{title:`Check your email`,intro:`If the email has an account that is not confirmed, a new link is on its way.`,children:OF}):(0,W.jsx)($P,{title:`This link does not work`,intro:`${e.replace(/\.?$/,`.`)} Send a new link.`,fields:[KP],submit:`Send a new link`,onSubmit:async e=>{await Te(t=>t.sendVerificationEmail({email:e.email})),n(!0)},footer:(0,W.jsx)(`a`,{href:S(`overview`),children:`Back to sign in`})})}function AF({token:e}){let[t,n]=(0,E.useState)(null),[r,i]=(0,E.useState)(null),a=(0,E.useRef)(!1);return(0,E.useEffect)(()=>{!a.current&&e&&(a.current=!0,Te(t=>t.verifyEmail({query:{token:e}})).then(async e=>{if(!(`user`in e))return n(`changing`);n(`done`),await DF()},e=>i({text:ye(e),expired:e instanceof Ie&&/TOKEN/.test(e.code)})))},[e]),e?r?.expired?(0,W.jsx)(kF,{error:r.text}):r?(0,W.jsx)(ZP,{title:`This link did not work`,intro:r.text,children:OF}):t===`changing`?(0,W.jsx)(ZP,{title:`One more step`,intro:`Now open the link we sent to your new email. It finishes the change.`,children:OF}):(0,W.jsx)(ZP,{title:t===`done`?`Email confirmed`:`Confirming your email…`}):(0,W.jsx)(kF,{error:`This link is not complete.`})}function jF({token:e,state:t,deleted:n=!1}){let[r,i]=(0,E.useState)(n);return r?(0,W.jsx)(ZP,{title:`Account deleted`,intro:`Your account is deleted. Thank you for using WizeLens.`,children:OF}):t.signedIn?e?(0,W.jsx)($P,{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 Te(t=>t.deleteUser({token:e})),await De(),i(!0)},footer:(0,W.jsx)(`a`,{href:S(`account`),children:`Keep my account`})}):(0,W.jsx)(ZP,{title:`This link is not complete`,intro:`Delete your account from the Account page.`,children:OF}):(0,W.jsx)(uF,{state:t,intro:`Sign in to delete your account.`})}var MF=(0,W.jsx)(`a`,{href:S(`overview`),children:`Back to sign in`}),NF={name:`password`,label:`New password (12 characters or more)`,type:`password`,autoComplete:`new-password`},PF={name:`again`,label:`New password again`,type:`password`,autoComplete:`new-password`};function FF({state:e}){let[t,n]=(0,E.useState)(!1);return t&&!e.mail?(0,W.jsx)(ZP,{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:MF}):t?(0,W.jsx)(ZP,{title:`Check your email`,intro:`If the email has an account, a link is on its way.`,children:MF}):(0,W.jsx)($P,{title:`Forgot your password?`,intro:`Enter your email. We send a link to choose a new password.`,fields:[KP],submit:`Send the link`,onSubmit:async e=>{await Te(t=>t.requestPasswordReset({email:e.email})),n(!0)},footer:MF})}function IF({token:e}){let[t,n]=(0,E.useState)(!1);if(!e)return(0,W.jsx)(ZP,{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)(ZP,{title:`Password changed`,intro:`Password changed. Sign in.`,children:MF});let r=async t=>{if(t.password!==t.again)throw Error(`The two passwords are not the same.`);await Te(n=>n.resetPassword({newPassword:t.password,token:e})),await De(),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`}),MF]});return(0,W.jsx)($P,{title:`Choose a new password`,fields:[NF,PF],submit:`Change password`,onSubmit:r,footer:i})}var LF={name:`trust`,label:`Trust this device for 14 days`,type:`checkbox`};function RF(){let[e,t]=(0,E.useState)(!1),n=async t=>{let n=t.code.replace(/\s+/g,``),r=t.trust===`on`;e?await Te(e=>e.twoFactor.verifyBackupCode({code:n,trustDevice:r})):await Te(e=>e.twoFactor.verifyTotp({code:n,trustDevice:r})),await DF()},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)(eF,{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)($P,{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,LF],submit:`Continue`,onSubmit:n,footer:i},String(e))}var zF=()=>(0,W.jsx)(`div`,{className:`wl-auth`,children:(0,W.jsx)(`p`,{className:`wl-muted`,children:`Loading WizeLens…`})});function BF(e,t){let n=e.query.get(`token`)??``;switch(e.page){case`setup`:return t.needsSetup?(0,W.jsx)(sF,{token:n,state:t}):null;case`two-factor`:return t.signedIn?null:(0,W.jsx)(RF,{});case`forgot-password`:return(0,W.jsx)(FF,{state:t});case`reset-password`:return(0,W.jsx)(IF,{token:n});case`verify-email`:return(0,W.jsx)(AF,{token:n});case`invite`:return(0,W.jsx)(hF,{id:n,state:t});case`delete-account`:return(0,W.jsx)(jF,{token:n,state:t,deleted:e.query.has(`done`)});case`oauth`:case`oauth-consent`:return(0,W.jsx)(wF,{route:e,state:t});default:return null}}function VF({children:e}){let t=i(),n=Se(),r=H(),a=Ce(),o=r.has(`accounts`);(0,E.useEffect)(()=>{o&&De().catch(()=>void 0)},[o]);let s=!!a?.signedIn;if((0,E.useEffect)(()=>{s&&!bF(t.page)&&t.page!==`two-factor`&&ZD.set(null)},[s,t.page]),t.page===`shared`)return(0,W.jsx)(NP,{token:t.params[0]??``});if(t.page===`status`)return(0,W.jsx)(GP,{token:t.params[0]??``});if(!n.info&&n.loading)return(0,W.jsx)(zF,{});if(!o)return(0,W.jsx)(W.Fragment,{children:e});if(!a)return(0,W.jsx)(zF,{});let c=BF(t,a);return c?(0,W.jsx)(W.Fragment,{children:c}):a.signedIn?!a.orgs?.length&&t.page!==`account`?(0,W.jsx)(gF,{state:a}):(0,W.jsx)(W.Fragment,{children:e}):(0,W.jsx)(uF,{state:a})}var HF=new Set([`overview`,`problems`,`search`,`requests`,`traces`,`database`,`rendering`,`errors`,`logs`,`metrics`,`services`,`insights`]);function UF(e,t,n){if(t===Iw.window){let e=Vw(n);return{from:e?String(e.from):null,to:e?String(e.to):null}}return t===Iw.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 WF=[p.range,Iw.window,Iw.compare,h.env,h.project,h.service];function GF(e,t){let r=se(window.location.hash);if(!HF.has(r.page))return;let i=UF(r.page,e,t);Object.entries(i).some(([e,t])=>(r.query.get(e)??null)!==t)&&n(i)}function KF(e,t,n){if(t===Iw.window)return n.has(`from`)&&n.has(`to`)?Hw(Vw(`${n.get(`from`)}-${n.get(`to`)}`)):n.has(`range`)?``:void 0;if(t===Iw.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 qF(){let e=i(),t=`${e.page}?${e.query.toString()}`;(0,E.useEffect)(()=>_(GF),[]),(0,E.useEffect)(()=>{if(HF.has(e.page))for(let t of WF){let n=KF(e.page,t,e.query);n!==void 0&&n!==(Ge(t)??``)?l(t,n):n===void 0&&Ge(t)&&GF(t,Ge(t))}},[t])}var JF=[[`p50`,`p50`],[`p95`,`p95`],[`p99`,`p99`],[`avg`,`Average`]],YF={value:`Value`,rate:`Per second`,percentiles:`Distribution`},XF={value:`avg`,rate:`rate`,percentiles:`p95`};function ZF(e){return e.percentiles&&!e.groupBy?[`p50`,`p95`,`p99`].map((t,n)=>({label:t,values:e.percentiles[t],color:pD[n]})):e.lines.map((e,t)=>({label:e.label,values:e.values,color:pD[t%pD.length]}))}function QF({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:JF,onChange:e=>n({stat:e}),label:`Statistic`,small:!0}),(0,W.jsx)(rk,{fields:{metric:`metric`,metricName:e.name,metricStat:XF[e.display],metricService:e.services.length===1?e.services[0]:``,name:`${e.name} is high`}})]})}function $F({d:e}){let t=t=>sf(t,e.displayUnit),n=e.percentiles?` (${e.stat})`:``;return(0,W.jsx)(mb,{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`,YF[e.display]],[`Unit`,e.unit||`none`],[`Services`,e.services.join(`, `)]]})}function eI({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)(QF,{d:t}),className:`wl-metric-chart`,children:[t.description&&(0,W.jsx)(`p`,{className:`wl-metric-desc`,children:t.description}),(0,W.jsx)(eE,{starts:t.buckets,lines:ZF(t),bars:n,separateBarScale:!0,format:yD(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)($F,{d:t})]})}function tI({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 nI(){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 rI(){let e=eD(),{query:t}=i(),n=t.toString(),r=(0,E.useMemo)(()=>Object.fromEntries(new URLSearchParams(n)),[n]),a=e.model;return(0,W.jsxs)(`div`,{className:`wl-metrics-page`,children:[(0,W.jsx)(fb,{title:`Metrics`,subtitle:`CPU, memory, garbage collection, request times, and your own counters, per service.`}),(0,W.jsx)(tI,{state:e}),e.source===`none`&&(0,W.jsx)(nI,{}),a&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(hD,{model:a,selected:r.metric??``}),(0,W.jsxs)(`div`,{className:`wl-metric-body`,children:[(0,W.jsx)(vD,{model:a,params:r}),(0,W.jsx)(eI,{detail:a.selected})]})]})]})}var iI=[{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=>LM(e.used,e.total),sort:e=>e.used??0},{key:`share`,header:`Full`,cell:e=>(0,W.jsx)(RM,{share:e.share}),sort:e=>e.share??-1}];function aI({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)(VM,{title:`CPU Over Time`,starts:t,lines:[{label:`Busy`,values:e.cpu,color:`var(--wl-blue)`}],format:NM}),(0,W.jsx)(VM,{title:`Memory Over Time`,starts:t,lines:[{label:`Used`,values:e.memory,color:`var(--wl-green)`}],format:PM})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(VM,{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:FM}),(0,W.jsx)(VM,{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:FM})]})]})}function oI({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:KS(t,n),children:e},e)})})})}function sI({d:e,now:t}){let n=e.row,r=[[`OS`,n.os||`–`],[`CPUs`,n.cores?IM(n.cores):`–`],[`Load (1 min)`,n.load1?.toFixed(2)??`–`],[`Last seen`,Nb(n.lastSeenMs,t)]];return n.cluster&&r.push([`Cluster`,n.cluster]),n.node&&r.push([`Kubernetes`,(0,W.jsx)(`a`,{href:GS(n.name),children:`Node page`},`n`)]),(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(BM,{back:S(`hosts`),backLabel:`All hosts`,icon:Ty,title:n.name,facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(zM,{icon:sv,label:`CPU`,value:NM(n.cpu),note:n.cores?`of ${IM(n.cores)}`:`busy`,danger:(n.cpu??0)>=.9}),(0,W.jsx)(zM,{icon:$v,label:`Memory`,value:NM(n.mem),note:LM(n.memUsed,n.memTotal),danger:(n.mem??0)>=.9}),(0,W.jsx)(zM,{icon:Nv,label:`Fullest Disk`,value:NM(n.disk),note:LM(n.diskUsed,n.diskTotal),danger:(n.disk??0)>=.9}),(0,W.jsx)(zM,{icon:ay,label:`Network`,value:FM((n.netIn??0)+(n.netOut??0)),note:`${FM(n.netIn)} in, ${FM(n.netOut)} out`})]}),(0,W.jsx)(aI,{d:e}),(0,W.jsx)(UM,{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)(oI,{d:e}),(0,W.jsx)(G,{title:`File Systems`,flush:!0,children:(0,W.jsx)(Q,{columns:iI,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 cI({name:e}){let t=MM(`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)(WM,{supported:!1,what:`host`}),r&&(0,W.jsx)(sI,{d:r,now:n}),t.model&&!t.loading&&!r&&(0,W.jsx)(BM,{back:S(`hosts`),backLabel:`All hosts`,icon:Ty,title:e,facts:[[`Status`,`Sent no host metrics in this time range`]]})]})}function lI(e){return[{key:`name`,header:`Host`,cell:e=>(0,W.jsx)(`a`,{href:WS(e.name),children:(0,W.jsx)(`strong`,{children:e.name})}),sort:e=>e.name},{key:`cpu`,header:`CPU`,cell:e=>(0,W.jsx)(RM,{share:e.cpu}),sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>(0,W.jsx)(RM,{share:e.mem}),sort:e=>e.mem??-1},{key:`disk`,header:`Disk`,cell:e=>(0,W.jsx)(RM,{share:e.disk}),sort:e=>e.disk??-1,className:`wl-hide-sm`},{key:`net`,header:`Network In / Out`,cell:e=>`${FM(e.netIn)} / ${FM(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:RS(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:GS(e.name),children:`Node`}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Nb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs,className:`wl-hide-sm`}]}function uI({m:e}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(zM,{icon:Ty,label:`Hosts`,value:J(e.summary.hosts),note:`sending host metrics`}),(0,W.jsx)(zM,{icon:sv,label:`Avg CPU`,value:NM(e.summary.cpu),note:`busy, across hosts`}),(0,W.jsx)(zM,{icon:$v,label:`Avg Memory`,value:NM(e.summary.mem),note:`used, across hosts`}),(0,W.jsx)(zM,{icon:F_,label:`Services`,value:J(e.summary.services),note:`running on these hosts`})]})}function dI(){let e=i().query.get(`q`)??``,t=MM(`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)(fb,{title:`Hosts`,subtitle:`CPU, memory, disks, and network of every host, and the services that run on it.`,children:t.supported&&(0,W.jsx)(qb,{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)(WM,{supported:t.supported,what:`host`}),a&&!o&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(uI,{m:a}),(0,W.jsx)(G,{title:`All Hosts`,flush:!0,children:(0,W.jsx)(Q,{columns:lI(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 fI(){let[e]=i().params;return e?(0,W.jsx)(cI,{name:JS(e)},e):(0,W.jsx)(dI,{})}var pI=S(`kubernetes`);function mI({d:e}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-3`,children:[(0,W.jsx)(VM,{title:`CPU Over Time`,starts:e.buckets,lines:[{label:`CPU`,values:e.cpu,color:`var(--wl-blue)`}],format:e=>IM(e)}),(0,W.jsx)(VM,{title:`Memory Over Time`,starts:e.buckets,lines:[{label:`Working set`,values:e.memory,color:`var(--wl-green)`}],format:PM}),(0,W.jsx)(VM,{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:FM})]})}function hI({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)(WM,{supported:!1,what:`Kubernetes`}),n?r:!!e.model&&!e.loading&&(0,W.jsx)(BM,{back:pI,backLabel:`Kubernetes`,icon:F_,title:t,facts:[[`Status`,`Sent no metrics in this time range`]]})]})}function gI({d:e,now:t}){let n=e.row,r=[[`Cluster`,n.cluster||`–`],[`Pods`,J(n.pods)],[`Last seen`,Nb(n.lastSeenMs,t)]];n.host&&r.push([`Host`,(0,W.jsx)(`a`,{href:WS(n.name),children:`Disks and network`},`h`)]);let i=n.ready===null?void 0:(0,W.jsx)(Hb,{tone:n.ready?`success`:`danger`,children:n.ready?`Ready`:`Not ready`});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(BM,{back:pI,backLabel:`Kubernetes`,icon:Ty,title:n.name,status:i,facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(zM,{icon:sv,label:`CPU`,value:IM(n.cpu),note:n.cpuAlloc?`of ${IM(n.cpuAlloc)} allocatable`:`in use`}),(0,W.jsx)(zM,{icon:$v,label:`Memory`,value:PM(n.memory),note:n.memAlloc?`of ${PM(n.memAlloc)} allocatable`:`working set`}),(0,W.jsx)(zM,{icon:F_,label:`Pods`,value:J(n.pods),note:`${J(n.pending)} pending`,danger:n.pending>0}),(0,W.jsx)(zM,{icon:yy,label:`Restarts`,value:J(n.restartsNew),note:`in this range`,danger:n.restartsNew>0})]}),(0,W.jsx)(mI,{d:e}),(0,W.jsx)(G,{title:`Pods`,flush:!0,children:(0,W.jsx)(eN,{rows:e.pods,empty:`No pods on this node in this range.`})}),(0,W.jsx)(UM,{services:e.services,now:t,empty:`No service reports a pod on this node as where it runs.`})]})}function _I({name:e}){let t=MM(`kubernetes`,{node:e}),{updatedMs:n}=Se(),r=t.model?.node?.row.name===e?t.model.node:null;return(0,W.jsx)(hI,{state:t,what:e,found:!!r,children:r&&(0,W.jsx)(gI,{d:r,now:n})})}var vI=[{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)(Hb,{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=>PM(e.memLimit),num:!0,className:`wl-hide-sm`},{key:`cpu`,header:`CPU Limit`,cell:e=>IM(e.cpuLimit),num:!0,className:`wl-hide-sm`}];function yI({d:e,now:t}){let n=e.row,r=[[`Namespace`,n.namespace||`–`],[`Node`,n.node?(0,W.jsx)(`a`,{href:GS(n.node),children:n.node},`n`):`–`],[`Workload`,n.workload?(0,W.jsx)(`a`,{href:qS(`${n.namespace}/${n.workload}`),children:n.workload},`w`):`–`],[`Last seen`,Nb(n.lastSeenMs,t)]];return n.cluster&&r.unshift([`Cluster`,n.cluster]),(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(BM,{back:pI,backLabel:`Kubernetes`,icon:F_,title:n.name,status:(0,W.jsx)(JM,{phase:n.phase}),facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(zM,{icon:sv,label:`CPU`,value:IM(n.cpu),note:`in use now`}),(0,W.jsx)(zM,{icon:$v,label:`Memory`,value:PM(n.memory),note:n.memLimit?`limit ${PM(n.memLimit)}`:`working set`}),(0,W.jsx)(zM,{icon:yy,label:`Restarts`,value:J(n.restarts),note:`${J(n.restartsNew)} in this range`,danger:n.restartsNew>0}),(0,W.jsx)(zM,{icon:Vv,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)(mI,{d:e}),(0,W.jsx)(G,{title:`Containers`,flush:!0,children:(0,W.jsx)(Q,{columns:vI,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)(UM,{services:e.services,now:t,empty:`No service reports this pod as where it runs.`})]})}function bI({ns:e,name:t}){let n=MM(`kubernetes`,{pod:e?`${e}/${t}`:t}),{updatedMs:r}=Se(),i=n.model?.pod?.row.name===t?n.model.pod:null;return(0,W.jsx)(hI,{state:n,what:t,found:!!i,children:i&&(0,W.jsx)(yI,{d:i,now:r})})}var xI=[[`pods`,`Pods`],[`workloads`,`Workloads`],[`nodes`,`Nodes`]];function SI({m:e}){let t=e.summary;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(zM,{icon:Ty,label:`Nodes`,value:`${J(t.readyNodes)} of ${J(t.nodes)}`,note:`ready`,danger:t.readyNodes<t.nodes}),(0,W.jsx)(zM,{icon:L_,label:`Pods`,value:J(t.pods),note:`${J(t.running)} running, ${J(t.failed)} failed`}),(0,W.jsx)(zM,{icon:tv,label:`Pending Pods`,value:J(t.pending),note:`waiting to be scheduled or started`,danger:t.pending>0}),(0,W.jsx)(zM,{icon:yy,label:`Restarts`,value:J(t.restartsNew),note:(0,W.jsxs)(W.Fragment,{children:[`container restarts in this range · `,(0,W.jsx)(Fy,{size:12,"aria-hidden":!0}),` `,J(t.oomKills),` out of memory`]}),danger:t.restartsNew>0||t.oomKills>0})]})}function CI({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)(qb,{value:t.q??``,onChange:e=>n({q:e||null}),placeholder:`Find a pod, workload, or node`})]})}function wI(){let e=Object.fromEntries(i().query),t=xI.some(([t])=>t===e.view)?e.view:`pods`,r=MM(`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)(fb,{title:`Kubernetes`,subtitle:`Clusters, nodes, workloads, and pods: what runs where, what restarts, and what waits.`,children:o&&!s&&(0,W.jsx)(CI,{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)(WM,{supported:r.supported,what:`Kubernetes`}),o&&!s&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(SI,{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)(hb,{tabs:xI,value:t,onChange:e=>n({view:e===`pods`?null:e})}),children:[t===`pods`&&(0,W.jsx)(eN,{rows:o.pods}),t===`workloads`&&(0,W.jsx)(QM,{rows:o.workloads}),t===`nodes`&&(0,W.jsx)(XM,{rows:o.nodes,now:a})]})]})]})}function TI(){let[e,t,n]=i().params;return e===`node`&&t?(0,W.jsx)(_I,{name:JS(t)},t):e===`pod`&&t&&n?(0,W.jsx)(bI,{ns:JS(t)===`-`?``:JS(t),name:JS(n)},`${t}/${n}`):(0,W.jsx)(wI,{})}var EI={release:`New release`,error:`New error`,query:`Query`,downstream:`Downstream service`},DI={release:_y,error:z_,query:lv,downstream:Dv};function OI(e){return e.kind===`error`?S(`errors`,[],{group:e.key}):e.kind===`release`?S(`services`,[e.service]):S(`services`,[e.row])}function kI({cause:e}){let t=DI[e.kind];return(0,W.jsxs)(`a`,{className:`wl-pb-cause`,href:OI(e),children:[(0,W.jsx)(t,{size:15,"aria-hidden":!0}),(0,W.jsx)(`strong`,{children:EI[e.kind]}),(0,W.jsx)(`span`,{children:Na(e)})]})}function AI(e,t,n){return t===null?`–`:e===`error_rate`?yb(t):e===`p95_ms`?q(t):`${J(t/Math.max(n/6e4,1e-9))}/min`}var jI=(e,t,n)=>e===`requests`?t.map(e=>e===null?null:e/Math.max(n/6e4,1e-9)):[...t],MI=e=>Ia[e];function NI(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 ${Nb(e.startMs,t)} · ${r}${e.ongoing?` · ongoing`:` · ended ${Nb(e.endMs,t)}`}`}var PI=e=>S(`problems`,[e.id]);function FI(){return(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`problems`),children:[(0,W.jsx)(y_,{size:14,"aria-hidden":`true`}),` All problems`]})}function II({p:e,now:t}){let n=[[`Started`,Ob(e.startMs)],[e.ongoing?`Status`:`Ended`,e.ongoing?`Ongoing`:Ob(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)(FI,{}),(0,W.jsxs)(`h1`,{className:`wl-pb-head-title`,children:[(0,W.jsx)(Vb,{tone:e.ongoing?`danger`:`neutral`}),(0,W.jsx)(`span`,{children:e.title})]}),(0,W.jsx)(`p`,{className:`wl-pb-when`,children:NI(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 LI({p:e}){return(0,W.jsxs)(G,{title:`Suspected Cause`,children:[e.cause?(0,W.jsx)(kI,{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)(kI,{cause:e},e.kind))]})]})}var RI=e=>e.endpoint?`${e.name} · ${e.endpoint}`:e.name;function zI({a:e,m:t}){let n=n=>jI(e.metric,n,t.bucketMs),r=[{label:MI(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:`${MI(e.metric)}: ${RI(e)}`,children:(0,W.jsx)(eE,{starts:t.starts,lines:r,height:240,format:n=>AI(e.metric,e.metric===`requests`?n*(t.bucketMs/6e4):n,t.bucketMs)})})}function BI(e){let t=(t,n)=>AI(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:RI(e)})},{key:`metric`,header:`Metric`,cell:e=>MI(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=>Ob(e.startMs),sort:e=>e.startMs}]}function VI({p:e,m:t}){let[n,r]=(0,E.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)(II,{p:e,now:t.meta.window.to}),(0,W.jsx)(LI,{p:e}),i&&(0,W.jsx)(zI,{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:BI(t),rows:e.anomalies,rowKey:e=>e.id,onRowClick:e=>r(e.id),selectedKey:i?.id??null})})]})}function HI(){return(0,W.jsxs)(G,{children:[(0,W.jsx)(FI,{}),(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 UI({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:PI(e),children:[(0,W.jsx)(Vb,{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:NI(e,t)}),(0,W.jsx)(Z_,{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)(kI,{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 WI({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 GI({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)(UI,{p:e,now:t},e.id))}):(0,W.jsx)(WI,{m:e})})}var KI=[[`high`,`High sensitivity`],[`medium`,`Medium sensitivity`],[`low`,`Low sensitivity`]];function qI({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 JI({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)(qI,{icon:Ny,label:`Ongoing`,value:e.ongoing,foot:`still above normal now`,danger:!0}),(0,W.jsx)(qI,{icon:Zy,label:`Problems`,value:e.total,foot:`in this range`}),(0,W.jsx)(qI,{icon:h_,label:`Anomalies`,value:e.anomalies,foot:`against the ${t}`}),(0,W.jsx)(qI,{icon:F_,label:`Services Affected`,value:e.services,foot:`in any problem`})]})}function YI({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 XI({m:e}){let t=i().query.get(`sensitivity`)??e?.sensitivity??`medium`;return(0,W.jsx)(fb,{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:KI,onChange:e=>n({sensitivity:e===`medium`?null:e})})})}function ZI(){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}=hT(`problems`,t?{problem:t}:void 0);return(0,W.jsxs)(`div`,{className:`wl-pb-page`,children:[!n&&(0,W.jsx)(XI,{m:r}),(0,W.jsx)(ID,{model:r,loading:a,error:o,what:`problems`}),r&&(0,W.jsx)(YI,{m:r}),r&&n&&(r.selected?(0,W.jsx)(VI,{p:r.selected,m:r},r.selected.id):(0,W.jsx)(HI,{})),r&&!n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(JI,{m:r}),(0,W.jsx)(GI,{m:r})]})]})}function QI(e,t,n,r){let[i,a]=(0,E.useState)(null);return(0,E.useEffect)(()=>{if(a(null),!e.trim()||!gh(e).ok)return;let i=!0,o=Date.now();return Mh(t=>Ux({q:e,kind:t.kind,range:n,limit:200},t.cursor?mm(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 $I(e){return{key:`time`,header:`Time`,className:`wl-nowrap`,cell:t=>Ob(e(t))}}var eL=e=>e===null?`–`:(0,W.jsx)(Y,{tone:Bb(e),children:e}),tL=(e,t)=>(0,W.jsx)(`a`,{href:e,title:t,className:`wl-truncate`,children:t}),nL={requests:[$I(e=>e.startMs),{key:`req`,header:`Request`,className:`wl-search-main`,cell:e=>tL(S(`requests`,[],{trace:e.traceId}),`${e.method} ${e.path}`)},{key:`status`,header:`Status`,cell:e=>eL(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:[$I(e=>e.startMs),{key:`trace`,header:`Trace`,className:`wl-search-main`,cell:e=>tL(y(e.traceId),e.path)},{key:`health`,header:`Health`,cell:e=>e.health?(0,W.jsx)(Y,{tone:zb(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:[$I(e=>e.startMs),{key:`span`,header:`Span`,className:`wl-search-main`,cell:e=>tL(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`}):`–`:eL(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:[$I(e=>e.timeMs),{key:`level`,header:`Level`,cell:e=>(0,W.jsx)(lA,{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=>tL(y(e.traceId,`logs`),e.traceName)}]},rL={requests:`req`,traces:`trace`,spans:`span`,logs:`msg`};function iL(e,t){let n=t;return{traceId:n.traceId,owner:Dg(e,t),timeMs:n.startMs??n.timeMs??0}}function aL(e,t){return e===`logs`?t.key:e===`spans`?`${t.traceId}:${t.spanId}`:t.traceId}var oL=50,sL=[[`requests`,`Requests`],[`traces`,`Traces`],[`spans`,`Spans`],[`logs`,`Logs`]],cL=e=>e?`${e.n.toLocaleString()}${e.more?`+`:``}`:``,lL=e=>Fp.includes(e??``);function uL({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 dL({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:()=>SO(`search-${e}`,CO(t)),children:[(0,W.jsx)($y,{"aria-hidden":`true`}),` Export`]})}function fL({kind:e,s:t}){let n=t.pages.flatMap(e=>e.items),r=t.pages[0]?.settling,i=t.pages[0]?.unknownTags??[],a=jx(e,n,t=>iL(e,t)),o=Lx(nL[e],rL[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:`${sL.find(([t])=>t===e)[1]} (${n.length}${t.more?`+`:``})`,flush:!0,action:n.length>0&&(0,W.jsx)(dL,{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)(uL,{failure:t.failure}):(0,W.jsx)(Q,{columns:o,rows:n,rowKey:t=>aL(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 pL({summary:e,kind:t}){let n=sL.find(([e])=>e===t)[1];return(0,W.jsx)(G,{title:`${n} Over Time`,children:(0,W.jsx)(eE,{starts:e.starts,bars:[{label:n,values:e.histogram,color:`var(--wl-blue)`}],height:140})})}function mL(){let{items:e}=BE(`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 hL(){let{query:e}=i(),t=e.get(`q`)??``,r=lL(e.get(`kind`))?e.get(`kind`):`requests`,[a]=Zg(),o=H().has(`search`),s=Kx({q:t,kind:r,range:a,limit:oL},o),c=s.failure?.type===`invalid`?s.failure:null,l=QI(t,r,a,o),u=sL.map(([e,t])=>[e,l?`${t} (${cL(l.counts[e])})`:t]),d=gh(t),f=t.trim()&&d.ok&&d.node&&!Tg(d.node)?[Wg(t.trim())]:[];return(0,W.jsxs)(`div`,{className:`wl-search-page`,children:[(0,W.jsx)(fb,{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)(sS,{scopes:f})}),(0,W.jsxs)(`section`,{className:`wl-panel wl-search-bar`,children:[(0,W.jsx)(oA,{value:t,onSubmit:e=>n({q:e||null}),range:a,server:o,serverError:c}),(0,W.jsx)(hb,{tabs:u,value:r,onChange:e=>n({kind:e===`requests`?null:e})}),(0,W.jsx)(mL,{})]}),l&&(0,W.jsx)(pL,{summary:l,kind:r}),(0,W.jsx)(fL,{kind:r,s})]})}function gL({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 _L({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 vL({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)(Kb,{text:t,label:`Copy: ${e}`})]})}function yL({hubUrl:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{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)(vL,{label:`WizeLens add-on (.NET or Node)`,text:`WIZELENS_HUB=${e}`}),(0,W.jsx)(vL,{label:`Group it in a project (optional)`,text:`WIZELENS_PROJECT=my-project`}),(0,W.jsx)(vL,{label:`Any OpenTelemetry app (OTLP/HTTP)`,text:`OTEL_EXPORTER_OTLP_ENDPOINT=${e}`}),(0,W.jsx)(vL,{label:`OTLP project (optional)`,text:`OTEL_RESOURCE_ATTRIBUTES=service.namespace=my-project`})]})]})}function bL({url:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{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)(vL,{label:`WizeLens add-on (.NET or Node)`,text:`WIZELENS_HUB=${e}`}),(0,W.jsx)(vL,{label:`Its ingest key`,text:`WIZELENS_HUB_TOKEN=wl_ik_...`}),(0,W.jsx)(vL,{label:`Any OpenTelemetry app (OTLP/HTTP)`,text:`OTEL_EXPORTER_OTLP_ENDPOINT=${e}`}),(0,W.jsx)(vL,{label:`OTLP key`,text:`OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer wl_ik_...`}),(0,W.jsx)(vL,{label:`AI agents (MCP), with a read key`,text:`${e}/_wizelens/mcp`})]})]})}function xL({hub:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{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 SL({info:e}){let t=new URL(`../`,window.location.href).href.replace(/\/$/,``);return e?.mode===`hub`?(0,W.jsx)(yL,{hubUrl:t}):e?.mode===`cloud`?(0,W.jsx)(bL,{url:t}):e?.hub?(0,W.jsx)(xL,{hub:e.hub}):null}var CL=[{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:`–`}],wL=e=>e===`–`?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:e}),TL=[{key:`setting`,header:`Setting`,cell:e=>e.setting},{key:`dotnet`,header:`.NET: AddWizeLens(o => …)`,cell:e=>wL(e.dotnet)},{key:`node`,header:`Node: createWizeLens({ … })`,cell:e=>wL(e.node)},{key:`env`,header:`Environment variable`,cell:e=>wL(e.env)}];function EL(){return(0,W.jsx)(G,{flush:!0,children:(0,W.jsx)(Q,{columns:TL,rows:CL,rowKey:e=>e.setting})})}function DL(){let e=H(),t=e.has(`accounts`),n=Me(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 OL=e=>({slowQueryMs:e.slowQueryMs?.toString()??``,nPlusOneThreshold:e.nPlusOneThreshold?.toString()??``,retentionDays:e.retentionDays?.toString()??``,redactKeys:(e.redactKeys??[]).join(`, `)}),kL=e=>({slowQueryMs:e.slowQueryMs||null,nPlusOneThreshold:e.nPlusOneThreshold||null,retentionDays:e.retentionDays||null,redactKeys:e.redactKeys.split(`,`).map(e=>e.trim()).filter(Boolean)});function AL({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 jL({url:e,reply:t,canEdit:n,onSaved:r}){let[i,a]=(0,E.useState)(()=>OL(t.settings)),[o,s]=(0,E.useState)(null);(0,E.useEffect)(()=>a(OL(t.settings)),[t]);let c=e=>t=>a(n=>({...n,[e]:t.target.value})),l=t.defaults,u=t=>{t.preventDefault(),x(`PUT`,e,kL(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)(Yx,{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(OL({})),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)(AL,{reply:t})]})]})}function ML(){let e=DL(),{data:t,error:n,reload:r}=zx(e.url),[i,a]=(0,E.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)(_L,{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)(jL,{url:e.url,reply:o,canEdit:e.canEdit,onSaved:e=>(a(e),r())})]})]})}var NL=36e5;function PL(e){return e%(24*NL)==0?`${e/(24*NL)} day${e===24*NL?``:`s`}`:e>=NL?`${+(e/NL).toFixed(1)} hours`:`${Math.round(e/6e4)} minutes`}var FL=e=>e===void 0?`–`:(0,W.jsx)(Y,{tone:e?`success`:`neutral`,children:e?`On`:`Off`});function IL(e){return e.status===`ok`?(0,W.jsx)(Hb,{tone:`success`,children:`Connected`}):e.status===`pending`?(0,W.jsx)(Hb,{tone:`neutral`,children:`Connecting…`}):(0,W.jsxs)(Hb,{tone:`danger`,colorText:!0,children:[`Unreachable`,e.error?` (${e.error})`:``]})}function LL(e,t){if(!t.mcp)return FL(!1);let n=`${e.endpoint}/mcp`;return(0,W.jsxs)(`span`,{children:[FL(!0),` `,(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:n}),` `,(0,W.jsx)(Kb,{text:n,label:`Copy MCP URL`})]})}function RL(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 zL(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`,IL(e)],[`Version`,t.version],[`Runtime`,t.runtime],[`Environment`,t.environment??null],[`Host`,t.host??null],[`Started`,t.startedMs?Ob(t.startedMs):null],[`Storage`,r],[`Max traces`,n?.maxTraces===void 0?null:J(n.maxTraces)],[`Keeps data for`,n?PL(n.maxAgeMs):null],[`Sampling`,t.mode===`in-app`?RL(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)`,LL(e,t)],[`Response bodies`,t.captureResponseBody===void 0?null:FL(t.captureResponseBody)]].filter(e=>e[1]!==null)}function BL({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)(mb,{rows:zL(e,t)}):(0,W.jsx)(mb,{rows:[[`Status`,IL(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 VL={name:``,color:`blue`,query:``},HL={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 UL(e,t){return[{key:`tag`,header:`Tag`,cell:e=>(0,W.jsx)(Fx,{tag:e})},{key:`what`,header:`Shows on`,className:`wl-wrap`,cell:e=>HL[e.name]??(0,W.jsx)(`span`,{className:`wl-tag-query`,children:e.query})},{key:`on`,header:`On`,cell:n=>(0,W.jsx)(Xx,{label:n.enabled?`On`:`Off`,checked:n.enabled,disabled:!e,onChange:()=>t(n)})}]}function WL(e,t,n){return[{key:`tag`,header:`Tag`,cell:e=>(0,W.jsx)(Fx,{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 GL(){let e=iS({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 KL(){let e=H(),t=xx(),{confirm:n,dialog:r}=KN(),[i,a]=(0,E.useState)(null),[o,s]=(0,E.useState)(null),c=t?.list,l=!!c?.editable,u=c?.tags.filter(e=>!e.builtIn)??[],d=e=>void Bx(e,()=>void 0).then(s),f=e=>d(()=>Ex(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(()=>Dx(e.id))},m=e=>Bx(()=>i===`new`?wx(e):Tx(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)(dy,{"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)(_L,{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)(rS,{initial:i===`new`?VL:{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:WL(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)(GL,{}),(0,W.jsx)(G,{title:`Built-in tags`,flush:!0,children:(0,W.jsx)(Q,{columns:UL(l,f),rows:c?.tags.filter(e=>e.builtIn)??[],rowKey:e=>e.id})})]})}var qL=[[`light`,`Light`],[`dark`,`Dark`],[`system`,`Same as my system`]],JL=[[`local`,`My computer's time zone`],[`utc`,`UTC`]],YL=[[`12`,`12-hour (2:05 PM)`],[`24`,`24-hour (14:05)`]];function XL(){let[e,t]=je(),[n,r]=Zg(),[i,a]=Gw(),[o,s]=Kw(),c=H().ranges.map(e=>[e,fe[e].label]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{title:`Dashboard`,description:`How this dashboard looks and opens for you. Saved in this browser only.`}),(0,W.jsxs)(G,{children:[(0,W.jsxs)(Yx,{children:[(0,W.jsx)(Jx,{label:`Theme`,value:e,options:qL,onChange:t}),(0,W.jsx)(Jx,{label:`Default time range`,value:n,options:c,onChange:r,hint:`Pages open with this range.`})]}),(0,W.jsxs)(Yx,{children:[(0,W.jsx)(Jx,{label:`Time zone`,value:i,options:JL,onChange:a,hint:`Times and charts show in this zone.`}),(0,W.jsx)(Jx,{label:`Clock`,value:o,options:YL,onChange:s})]})]})]})}function ZL(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 QL(){let e=Se(),t=H(),{params:n}=i(),r=e.info?.mode,a=ZL(r),o=H().has(`tags`),s=[{id:`dashboard`,label:`Dashboard`,icon:Ly,render:()=>(0,W.jsx)(XL,{})},...t.has(`settings`)?[{id:`project`,label:`This project`,icon:Cv,render:()=>(0,W.jsx)(ML,{})}]:[],...r===`hub`||r===`cloud`||e.info?.hub?[{id:`connect`,label:r===`in-app`?`Sends to`:`Connect a service`,icon:py,render:()=>(0,W.jsx)(SL,{info:e.info})}]:[],{id:`services`,label:a.label,icon:Ty,render:()=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{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)(BL,{source:e},e.endpoint))})]})},...o?[{id:`tags`,label:`Tags`,icon:Uy,render:()=>(0,W.jsx)(KL,{})}]:[],{id:`options`,label:`Add-on options`,icon:j_,render:()=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_L,{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)(EL,{})]})}];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Settings`,subtitle:`Your dashboard preferences, and how WizeLens is set up.`}),(0,W.jsx)(gL,{page:`settings`,sections:s,active:n[0]})]})}function $L(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 eR(){let e=H().has(`accounts`),t=Me(Ce())?.org.role,{list:n,item:r}=$L(e),{data:i,error:a,reload:o}=zx(n),s=c().project;return{data:i,error:a,reload:o,canWrite:!e||t!==void 0&&t!==`viewer`,save:(t,n)=>Bx(()=>n?x(`PATCH`,`${r}/${n}`,t):x(`POST`,r,e?t:{...t,project:s}),o),remove:e=>Bx(()=>x(`DELETE`,`${r}/${e}`),o),runNow:e=>Bx(()=>x(`POST`,`${r}/${e}/run`),o)}}var tR=[1,2,5,10,15,30,60].map(e=>[String(e),e===1?`Every minute`:e===60?`Every hour`:`Every ${e} minutes`]),nR=Id.map(e=>[e,e]),rR={name:``,url:`https://`,method:`GET`,headers:{},expectStatus:Ld,expectBody:``,intervalMin:5,timeoutMs:1e4,env:``,enabled:!0},iR=e=>Object.entries(e).map(([e,t])=>`${e}: ${t}`).join(`
|
|
57
|
-
`);function aR(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 oR=e=>{if(!e)return rR;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 sR({initial:e,onSave:t,onCancel:n}){let[r,i]=(0,E.useState)(()=>oR(e)),[a,o]=(0,E.useState)(()=>iR(r.headers)),[s,c]=(0,E.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:aR(a)}).then(c)},children:[(0,W.jsxs)(Yx,{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)(Jx,{label:`Method`,value:r.method,options:nR,onChange:l(`method`)})]}),(0,W.jsxs)(Yx,{children:[(0,W.jsx)(Jx,{label:`Runs`,value:String(r.intervalMin),options:tR,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)(qx,{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)(Xx,{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 cR(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=>Ob(e.startMs)},{key:`length`,header:`Down For`,num:!0,sort:t=>Nh(t,e),cell:t=>LP(Nh(t,e))},{key:`reason`,header:`Reason`,className:`wl-wrap`,cell:e=>e.reason}]}function lR({incidents:e,nowMs:t,withCheck:n=!0}){return(0,W.jsx)(G,{title:`Incidents`,flush:!0,children:(0,W.jsx)(Q,{columns:cR(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 uR({c:e,nowMs:t}){let n=Rd(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 dR({c:e}){let t=FP(e);return(0,W.jsx)(Hb,{tone:t.tone,colorText:t.tone===`danger`,children:t.label})}function fR(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 pR(e){let t=e=>({key:e,header:e,num:!0,sort:t=>t.uptime[e]??-1,cell:t=>PP(t.uptime[e])});return[{key:`state`,header:`Status`,sort:e=>FP(e).rank,cell:e=>(0,W.jsx)(dR,{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)(mR,{c:t,model:e.model})},{key:`last`,header:`Last Check`,className:`wl-nowrap`,sort:e=>e.lastRunMs??0,cell:t=>t.lastRunMs?Nb(t.lastRunMs,e.nowMs):`Not yet`},{key:`tls`,header:`Certificate`,sort:e=>e.tlsExpiresMs??1/0,cell:t=>(0,W.jsx)(uR,{c:t,nowMs:e.nowMs})},...fR(e)]}function mR({c:e,model:t}){let n=IP(t,e.id);return(0,W.jsxs)(`span`,{className:`wl-uptime-response`,children:[n&&(0,W.jsx)(cD,{values:n.avgMsSeries,width:80,height:20,color:`var(--wl-blue)`}),q(e.lastDurationMs)]})}function hR(e){return(0,W.jsx)(Q,{columns:pR(e),rows:e.checks,rowKey:e=>e.id,empty:e.empty,defaultSort:{key:`state`,desc:!1}})}var gR=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function _R(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?`${Nb(e.lastRunMs,t)} · ${e.lastStatus??`no answer`} · ${q(e.lastDurationMs)}`:`Not yet`],[`Certificate`,e.tlsExpiresMs?(0,W.jsxs)(`span`,{children:[(0,W.jsx)(uR,{c:e,nowMs:t}),` ends `,Db(e.tlsExpiresMs)]},`t`):(0,W.jsx)(uR,{c:e,nowMs:t},`t`)],...e.env?[[`Environment`,e.env]]:[]]}function vR({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)(y_,{size:14,"aria-hidden":`true`}),` All checks`]}),(0,W.jsxs)(`h1`,{className:`wl-svc-title`,children:[(0,W.jsx)(Fv,{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)(dR,{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:_R(e,t).map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}function yR({c:e,model:t}){let n=IP(t,e.id),r=(t,n)=>(0,W.jsx)($,{icon:Fv,label:n,value:PP(e.uptime[t]),change:null,upIsGood:!0,compareLabel:``,note:e.uptime[t]===null?`No runs yet`:RP(e.uptime[t])===`success`?`On target`:`Below 99.9%`,danger:RP(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:tv,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)(eE,{starts:t.starts,lines:[{label:`Average`,values:n.avgMsSeries,color:`var(--wl-blue)`}],bars:[{label:`Failed`,values:n.failSeries,color:gR}],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 bR({id:e}){let t=eR(),{model:n}=hT(`uptime`,{check:e}),[r,i]=(0,E.useState)(!1),[a,o]=(0,E.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)(y_,{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):T(S(`uptime`))),children:`Delete`})]});return(0,W.jsxs)(`div`,{className:`wl-svc-page`,children:[(0,W.jsx)(vR,{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)(sR,{initial:s,onSave:c,onCancel:()=>i(!1)}),(0,W.jsx)(yR,{c:s,model:n}),(0,W.jsx)(lR,{incidents:t.data.incidents.filter(t=>t.checkId===e),nowMs:t.data.nowMs,withCheck:!1})]})}function xR(){let e=H(),t=c().project,n=Me(Ce())?.org.role,r=`./api/projects/${t}/status-page`,{data:i,error:a,reload:o}=zx(e.has(`statusPages`)&&t?r:null),[s,l]=(0,E.useState)(``),[u,d]=(0,E.useState)(null),[f,p]=(0,E.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 ${Db(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)(Kb,{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)(Yx,{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 Bx(()=>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 Bx(()=>x(`DELETE`,r),o).then(e=>(p(e),d(null))),children:`Turn off`})]})]})}var SR=e=>{let t=e.filter(e=>e!==null);return t.length?t.reduce((e,t)=>e+t,0)/t.length:null};function CR({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:$_,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:Fv,label:`Uptime (24 h)`,value:PP(SR(n.map(e=>e.uptime[`24h`]))),change:null,upIsGood:!0,compareLabel:``,note:`Average of the checks that are on`}),(0,W.jsx)($,{icon:tv,label:`Avg Response`,value:q(i?.avgMs),change:o(i?.avgMs,i?.prevAvgMs),upIsGood:!1,compareLabel:s}),(0,W.jsx)($,{icon:Zy,label:`Failed Runs`,value:J(i?.failures??0),change:o(i?.failures,i?.prevFailures),upIsGood:!1,compareLabel:s,series:c,danger:!0})]})}function wR({checks:e,nowMs:t}){let n=e.filter(e=>e.enabled&&zd(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=Rd(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 TR=`Checks that call your sites and APIs on a schedule, from this host. Results are requests of the wizelens-uptime service.`;function ER(){let e=i().params[0];return H().has(`uptime`)?e?(0,W.jsx)(bR,{id:e}):(0,W.jsx)(kR,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Uptime`,subtitle:TR}),(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 DR(){let[e,t]=(0,E.useState)(null);return[e,(e,n)=>t(e??n??null)]}function OR(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 kR(){let e=eR(),{model:t}=hT(`uptime`),[n,r]=(0,E.useState)(null),[i,a]=DR(),o=e.data?.checks??[],s=OR(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)(dy,{"aria-hidden":`true`}),` New check`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fb,{title:`Uptime`,subtitle:TR,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)(wR,{checks:o,nowMs:e.data?.nowMs??Date.now()}),n&&(0,W.jsx)(sR,{initial:n===`new`?null:n,onSave:c,onCancel:()=>r(null)}),(0,W.jsx)(CR,{checks:o,model:t}),(0,W.jsx)(G,{title:`Checks`,flush:!0,children:(0,W.jsx)(hR,{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)(Fv,{"aria-hidden":`true`}),` Add one to hear when a site or API stops answering.`]})})}),(0,W.jsx)(lR,{incidents:e.data?.incidents??[],nowMs:e.data?.nowMs??Date.now()}),(0,W.jsx)(xR,{})]})}function AR({thin:e=!0}){let t=Ce(),[n,r]=(0,E.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 Te(e=>e.sendVerificationEmail({email:i.email})).then(()=>r(`We sent a new link.`),e=>r(ye(e))),children:`Send again`})]})}var jR=e=>zx(e?`./api/orgs/${e}/usage`:null),MR=()=>`${window.location.pathname}#/team/billing`,NR=e=>({customerType:`organization`,referenceId:e});async function PR(e,t,n){let r=await x(`POST`,`./api/auth/subscription/upgrade`,{...NR(e),plan:t,annual:n,successUrl:MR(),cancelUrl:MR(),returnUrl:MR(),disableRedirect:!0});window.location.assign(r.url)}async function FR(e){let t=await x(`POST`,`./api/auth/subscription/billing-portal`,{...NR(e),returnUrl:MR(),disableRedirect:!0});window.location.assign(t.url)}async function IR(e){let t=await x(`POST`,`./api/auth/subscription/cancel`,{...NR(e),returnUrl:MR(),disableRedirect:!0});window.location.assign(t.url)}var LR=(e,t)=>x(`PATCH`,`./api/orgs/${e}/billing`,{spendCapUsd:t}),RR=e=>e>=100?`${Math.round(e).toLocaleString()} GB`:`${(Math.round(e*100)/100).toLocaleString()} GB`,zR=e=>`$${e.toLocaleString(void 0,{minimumFractionDigits:e%1?2:0,maximumFractionDigits:2})}`;function BR(){let e=Ce(),t=e?.billing?Me(e):null,{data:n}=jR(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 ${RR(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 VR(){let{items:e}=BE(),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`?Cy:e.shared?rb:N_;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 HR=[{page:`overview`,label:`Overview`,icon:Lv},{page:`problems`,label:`Problems`,icon:Ny},{page:`search`,label:`Search`,icon:Cy},{page:`requests`,label:`Requests`,icon:Yv},{page:`traces`,label:`Traces`,icon:jy},{page:`database`,label:`Database`,icon:lv},{page:`rendering`,label:`Rendering`,icon:ty},{page:`errors`,label:`Errors`,icon:Zy},{page:`logs`,label:`Logs`,icon:xv},{page:`metrics`,label:`Metrics`,icon:h_,needs:`metrics`},{page:`hosts`,label:`Hosts`,icon:Ty,needs:`infra`},{page:`kubernetes`,label:`Kubernetes`,icon:L_,needs:`infra`},{page:`services`,label:`Services`,icon:F_},{page:`insights`,label:`Insights`,icon:Gv},{page:`uptime`,label:`Uptime`,icon:Fv,needs:`uptime`},{page:`users`,label:`Users`,icon:tb},{page:`alerts`,label:`Alerts`,icon:k_,needs:`alerts`},{page:`slos`,label:`SLOs`,icon:Gy,needs:`slos`},{page:`dashboards`,label:`Dashboards`,icon:Uv,needs:`saved`},{page:`team`,label:`Team`,icon:rb,needs:`accounts`},{page:`settings`,label:`Settings`,icon:ky}];function UR({page:e,counts:t={},dot:n}){let r=e===`trace`?`traces`:e,i=H(),a=HR.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)(iO,{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)(VR,{}),(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 WR({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)(G_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]},e||`all`))]})}function GR({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 ${Nb(r.lastSeenMs)}`]}),a&&(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-block`,children:a})]}),t&&(0,W.jsx)(G_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]})}function KR({registry:e,projects:t}){let[n,r]=ee(),[i,a]=b(),[o]=u(),s=uD(),c=nt((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)(Vv,{"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)(q_,{"aria-hidden":`true`})]});return(0,W.jsx)(Xb,{label:p,title:`Project, environment, and connected services`,children:l=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(WR,{title:`Project`,values:t??f(e?.projects??[]),value:i,all:!t,onPick:e=>(a(e),l())}),(0,W.jsx)(WR,{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)(G_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]}),c.map(e=>(0,W.jsx)(GR,{g:e,active:gr(e.service)===o,onPick:()=>(s(gr(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 qR(){let e=Ce(),t=e?.user;if(!t)return null;let n=Me(e)?.org,r=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(tb,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-label`,children:t.name}),(0,W.jsx)(q_,{"aria-hidden":`true`})]});return(0,W.jsx)(Xb,{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)(Dy,{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)(Zv,{size:16,"aria-hidden":`true`}),` Sign out`]})]})})}var JR=864e5,YR=15;function XR(e){let t=e.spans.find(ve);return t?_n(t).message:`Request failed`}function ZR(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 QR(e,t){let n=e.filter(e=>e.startMs>=t-JR),r=new Map(n.map(e=>[e.traceId,e])),i=new Map;for(let e of In(n)){let t=y(e.traceId);if(e.errors>0||(e.status??0)>=500){let n=XR(r.get(e.traceId));ZR(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`))ZR(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,YR)}function $R(e){let t=H().has(`alerts`),n=GC(),{data:r}=zx(t&&n.ready?n.url():null);return(0,E.useMemo)(()=>(r?.events??[]).filter(t=>(t.kind===`fired`||t.kind===`remind`)&&t.timeMs>=e-JR).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 ez={error:Zy,insight:Gv,alert:k_};function tz({note:e,unread:t,now:n}){let r=ez[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:Nb(e.timeMs,n)})]})}function nz({traces:e,now:t}){let[n,r]=o(),i=$R(t),a=(0,E.useMemo)(()=>[...i,...QR(e,t)].sort((e,t)=>t.timeMs-e.timeMs).slice(0,YR),[i,e,t]),s=a.filter(e=>e.timeMs>Number(n)).length;return(0,W.jsx)(Xb,{label:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(D_,{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)(tz,{note:e,unread:e.timeMs>Number(n),now:t},e.key))]})})}var rz=Ye(),iz=220,az=3,oz=(e,t)=>e.toLowerCase().includes(t.toLowerCase()),sz=e=>e.catch(()=>null);async function cz(e,t,n,r){let i={q:e,size:`5`,page:`1`},[a,o,s,c,l,u,d]=await Promise.all([sz(fT(`errors`,{...i,status:`all`},t,n)),sz(fT(`database`,i,t,n)),sz(fT(`insights`,{q:e},t,n)),r.metrics?sz(ne(`./api/models/metrics?range=${t}&q=${encodeURIComponent(e)}`)):null,r.alerts?sz(ne(r.alerts)):null,r.slos?sz(ne(r.slos)):null,r.saved?sz(ne(r.saved)):null]);return[...(a?.groups??[]).slice(0,az).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,az).map(e=>({key:`q${e.key}`,kind:`query`,title:e.query,detail:`Query · ${e.count} runs`,href:He(e.query)})),...(s?.groups??[]).slice(0,az).map(e=>({key:`i${e.key}`,kind:`insight`,title:e.title,detail:e.shape,href:S(`insights`,[],{key:e.key})})),...(c?.catalog??[]).slice(0,az).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=>oz(t.name,e)).slice(0,az).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=>oz(t.slo.name,e)).slice(0,az).map(e=>({key:`o${e.slo.id}`,kind:`slo`,title:e.slo.name,detail:`SLO`,href:Ve(e.slo.id)})),...(d?.items??[]).filter(t=>oz(t.name,e)).slice(0,az).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 lz(e,t,n){let r=H(),i=GC(),a=xT(),o=zE(),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,E.useState)([]),d=e.trim();return(0,E.useEffect)(()=>{if(u([]),d.length<2)return;let e=!0,r=setTimeout(()=>void cz(d,t,n,JSON.parse(c)).then(t=>e&&u(t)),iz);return()=>(e=!1,clearTimeout(r))},[d,t,n,c]),l}var uz=180,dz=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})}),fz=e=>({key:`sl${e.key}`,kind:`log`,title:e.message,detail:`${e.level} · ${e.service}`,href:y(e.traceId,`logs`)});function pz(e,t,n){let[r,i]=(0,E.useState)([]),a=e.trim();return(0,E.useEffect)(()=>{if(i([]),!a||!gh(a).ok)return;let e=!0,r=setTimeout(async()=>{let r={q:a,range:t,limit:5},[o,s]=await Promise.all([Ux({...r,kind:`requests`},null,n),Ux({...r,kind:`logs`,limit:3},null,n)]).catch(()=>[null,null]);e&&i([...(o?.items??[]).map(dz),...(s?.items??[]).map(fz)])},uz);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 mz=6,hz=(e,t)=>e.toLowerCase().includes(t);function gz(e,t){let n=[];for(let r of In(e)){if(n.length>=mz)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)}):(hz(r.path,t)||hz(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 _z(e,t){let n=new Set,r=[];for(let i of e)for(let e of i.spans.filter(ve)){let a=_n(e),o=`${a.type??``}: ${a.message}`;if(!n.has(o)&&hz(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>=mz))return r}return r}function vz(e,t){let n=new Set;for(let r of e)for(let e of r.services)hz(e,t)&&n.add(e);return[...n].slice(0,mz).map(e=>({key:`s${e}`,kind:`service`,title:e,detail:`Service`,href:S(`services`,[encodeURIComponent(gr(e))])}))}function yz(e,t,n,r=!1){let i=n.trim().toLowerCase();return i?[...t.filter(e=>hz(e.label,i)).map(e=>({key:`p${e.page}`,kind:`page`,title:e.label,detail:`Go to page`,href:S(e.page)})),...r?[]:gz(e,i),..._z(e,i),...vz(e,i)]:t.map(e=>({key:`p${e.page}`,kind:`page`,title:e.label,detail:`Go to page`,href:S(e.page)}))}var bz={page:yv,request:Yv,trace:jy,error:Zy,service:F_,log:xv,search:Cy,query:lv,insight:Gv,metric:h_,alert:k_,slo:Gy,saved:N_};function xz(e){(0,E.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 Sz({traces:e,onClose:t}){let[n,r]=(0,E.useState)(``),[i,a]=(0,E.useState)(0),o=H().has(`search`),[s]=Zg(),c=pz(n,s,o),l=lz(n,s,o),u=(0,E.useMemo)(()=>yz(e,HR,n,o),[e,n,o]),d=(0,E.useMemo)(()=>[...c.slice(0,1),...u,...l,...c.slice(1)],[c,u,l]),f=e=>{let n=d[e];n&&(T(n.href),t())};return(0,rz.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=bz[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 Cz=e=>String(e).padStart(2,`0`);function wz(e){let t=new Date(wb()?e:e-new Date(e).getTimezoneOffset()*6e4);return`${t.getUTCFullYear()}-${Cz(t.getUTCMonth()+1)}-${Cz(t.getUTCDate())}T${Cz(t.getUTCHours())}:${Cz(t.getUTCMinutes())}`}function Tz(e){let t=Date.parse(`${e}:00Z`);return wb()?t:t+new Date(t).getTimezoneOffset()*6e4}function Ez({current:e,onDone:t}){let n=Date.now(),[r,i]=(0,E.useState)(wz(e?.from??n-36e5)),[a,o]=(0,E.useState)(wz(e?.to??n)),s={from:Tz(r),to:Math.min(Tz(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&&(Yw(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 Dz=[[`previous`,`The period before`],[`week`,`Same time last week`]];function Oz(){let[e,t]=Zg(),{ranges:n}=H(),[r]=Uw(),[i]=Ww(),a=Vw(r),o=a?`${Ob(a.from)} – ${Ob(a.to)}`:fe[e].label,s=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(V_,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-label`,children:o}),(0,W.jsx)(q_,{"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)(G_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]},t);return(0,W.jsx)(Xb,{label:s,title:`Time range`,children:r=>(0,W.jsxs)(W.Fragment,{children:[n.map(n=>c(!a&&n===e,fe[n].label,()=>(Yw(null),t(n),r()))),(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Custom range`}),(0,W.jsx)(Ez,{current:a,onDone:r}),(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Compare with`}),Dz.map(([e,t])=>c(i===e,t,()=>(Xw(e),r())))]})})}var kz=/^#\/(|overview|search|requests|traces|database|rendering|errors|logs|metrics|services|insights|slos|dashboards|users)(\/|\?|$)/;function Az({close:e}){let t=zE(),[n,r]=(0,E.useState)(``),[i,a]=(0,E.useState)(!1),[o,s]=(0,E.useState)(!1),c=qf(location.hash)!==null,[l,u]=(0,E.useState)(null),d=()=>{let r=location.hash||`#/`,a=r.startsWith(`#/search`)||c?`search`:`view`;VE(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)(Xx,{label:`Share with the team`,checked:i,onChange:e=>a(e.target.checked)}),c&&(0,W.jsx)(Xx,{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 jz(){let e=zE();return i(),!e.on||!e.canWrite||!kz.test(location.hash||`#/`)?null:(0,W.jsx)(Xb,{label:(0,W.jsx)(zy,{size:18,"aria-hidden":`true`}),title:`Save this view`,children:e=>(0,W.jsx)(Az,{close:e})})}var Mz=[[`1`,`For 1 day`],[`7`,`For 7 days`],[`30`,`For 30 days`]],Nz=new Set([`overview`,`requests`,`errors`,`database`,`logs`,`insights`,`rendering`,`services`,`traces`]);function Pz(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}}:Nz.has(e.page)&&!t?{page:e.page,params:{}}:null}function Fz({target:e}){let t=i(),[n]=Zg(),[r,a]=(0,E.useState)(`7`),[o,s]=(0,E.useState)(null),[l,u]=(0,E.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:Mz,onChange:a}),o?(0,W.jsxs)(`span`,{className:`wl-share-url`,children:[(0,W.jsx)(`code`,{className:`wl-truncate`,children:o}),(0,W.jsx)(Kb,{text:o,label:`Copy link`})]}):(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>{let{window:i,compare:a}=qw(),o=c(),l={...Object.fromEntries(t.query),...Jw(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 Iz(){let e=i(),t=H(),n=Pz(e);return!t.has(`sharing`)||!c().project||!n?null:(0,W.jsx)(Xb,{label:(0,W.jsx)(qv,{size:18,"aria-hidden":`true`}),title:`Share this page`,children:()=>(0,W.jsx)(Fz,{target:n})})}function Lz(e){return e.find(e=>e.self)?.status===`down`?` wl-down`:e.some(e=>e.status===`down`)?` wl-partial`:``}function Rz({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${Lz(e)}`}),(0,W.jsx)(`span`,{className:`wl-label`,children:t}),(0,W.jsx)(q_,{"aria-hidden":`true`})]});return(0,W.jsx)(Xb,{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)(pv,{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 zz(){let e=H(),t=e.service&&!e.service.endsWith(Yg[e.mode])?` · ${e.service}`:``,n=`${Yg[e.mode]}${t} · kept ${Qg(e.keptMs)}`;return(0,W.jsx)(`span`,{className:`wl-mode-badge`,title:`WizeLens runs ${e.mode===`in-app`?`inside this service`:`as a ${Yg[e.mode].toLowerCase()}`}. Data older than ${Qg(e.keptMs)} is dropped.`,children:n})}var Bz={light:`dark`,dark:`system`,system:`light`},Vz={light:Vy,dark:ry,system:ty};function Hz(){let[e,t]=je(),n=Vz[e];return(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:()=>t(Bz[e]),title:`Theme: ${e}. Click for ${Bz[e]}.`,"aria-label":`Theme: ${e}`,children:(0,W.jsx)(n,{size:20,"aria-hidden":`true`})})}var Uz=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform);function Wz(){let e=Ce();if(H().has(`accounts`))return(e?.orgs??[]).flatMap(e=>e.projects.map(t=>[t.id,`${e.name} / ${t.name}`]))}function Gz({data:e}){let[t,n]=(0,E.useState)(!1),r=Wz(),i=(0,E.useCallback)(()=>n(!0),[]);return xz(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)(Cy,{size:18,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:`Search requests, traces, errors, services…`}),(0,W.jsx)(`kbd`,{children:Uz?`⌘ K`:`Ctrl K`})]}),(0,W.jsx)(`span`,{className:`wl-spacer`}),(0,W.jsx)(zz,{}),(0,W.jsx)(fD,{}),e.registry?(0,W.jsx)(KR,{registry:e.registry,projects:r}):(0,W.jsx)(Rz,{sources:e.sources}),(0,W.jsx)(Oz,{}),(0,W.jsx)(jz,{}),(0,W.jsx)(Iz,{}),(0,W.jsx)(nz,{traces:e.traces,now:e.updatedMs}),(0,W.jsx)(Hz,{}),r&&(0,W.jsx)(qR,{}),t&&(0,W.jsx)(Sz,{traces:e.traces,onClose:()=>n(!1)})]})}function Kz(){return vw()?(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:hw,children:`Later`})]}):null}function qz(){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 Jz=e=>(0,E.lazy)(()=>e().then(e=>({default:e}),()=>(mw(),{default:qz}))),Yz={overview:rj,problems:ZI,search:hL,requests:yM,traces:AP,database:KO,rendering:Dj,errors:Pk,logs:FA,metrics:rI,hosts:fI,kubernetes:TI,services:cP,insights:Zk,settings:QL,alerts:bE,uptime:ER,slos:NE,dashboards:MD,users:KD,team:Jz(()=>Re(()=>import(`./TeamPage-jnluOMGo.js`).then(e=>e.TeamPage),__vite__mapDeps([0,1,2,3]),import.meta.url)),account:Jz(()=>Re(()=>import(`./AccountPage-VILWxQLm.js`).then(e=>e.AccountPage),__vite__mapDeps([4,1,3]),import.meta.url))},Xz=3e5,Zz={critical:`var(--wl-red)`,warning:`var(--wl-orange)`};function Qz(){let e=Se();return(0,E.useMemo)(()=>{let t=In(e.traces.filter(t=>t.startMs>=e.updatedMs-Xz));return t.some(Ln)?Zz.critical:t.some(e=>e.health===`warning`)?Zz.warning:void 0},[e.traces,e.updatedMs])}function $z({route:e}){let t=H().has(`accounts`);if(e.page===`trace`){let[t,n,r]=e.params;return n===`compare`&&r?(0,W.jsx)(NC,{a:t,b:r},`${t}/${r}`):(0,W.jsx)(TC,{traceId:t,view:n},t)}let n=e.page,r=n===`shared`||n===`status`||ue.includes(n)||n===`account`&&!t?rj:Yz[n];return(0,W.jsx)(r,{})}function eB(){return(0,W.jsx)(VF,{children:(0,W.jsx)(tB,{})})}function tB(){let e=i(),t=Se(),n=e_(),[r]=je(),o=Qz();(0,E.useEffect)(()=>a(r),[r]);let[s]=Gw(),[c]=Kw();Cb({utc:s===`utc`,hour12:c===`12`}),qF(),(0,E.useEffect)(()=>{window.scrollTo(0,0)},[e.page,e.params.join(`/`)]),(0,E.useEffect)(()=>{document.title=t.info?`WizeLens · ${t.info.service}`:`WizeLens`},[t.info]);let l=pT(),u=(0,E.useMemo)(()=>l===null?Tr(n.traces).length:0,[l,n.traces]),d=l??u;return(0,W.jsxs)(`div`,{className:`wl-shell`,children:[(0,W.jsx)(UR,{page:e.page,counts:{errors:d},dot:o}),(0,W.jsxs)(`div`,{className:`wl-main`,children:[(0,W.jsx)(Gz,{data:t}),(0,W.jsx)(Kz,{}),(0,W.jsx)(AR,{}),(0,W.jsx)(BR,{}),(0,W.jsx)(`main`,{className:`wl-page`,children:(0,W.jsx)($z,{route:e})})]})]})}m.start(),gw(),(0,Qe.createRoot)(document.getElementById(`root`)).render((0,W.jsx)(E.StrictMode,{children:(0,W.jsx)(eB,{})}));export{Nb as A,Yy as B,Jx as C,X as D,zx as E,fb as F,G_ as G,dy as H,G as I,D_ as K,db as L,Ob as M,Fb as N,Y as O,K as P,rb as R,Yx as S,Bx as T,qv as U,py as V,dv as W,ZO as _,FR as a,Xx as b,AR as c,EF as d,JN as f,KN as g,XN as h,zR as i,Db as j,Kb as k,_L as l,YN as m,PR as n,LR as o,qN as p,U as q,RR as r,jR as s,IR as t,gL as u,ZD as v,qx as w,Z as x,Q as y,tb as z};
|