railwatch 0.3.6 → 0.4.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +60 -0
- data/{lib/generators/railwatch/install/templates → app/frontend/lib}/railwatch.ts +162 -42
- data/app/models/railwatch/ingest/batch.rb +1 -0
- data/app/models/railwatch/ingest/mapper.rb +12 -0
- data/docs/configuration.md +8 -3
- data/lib/generators/railwatch/install/install_generator.rb +5 -1
- data/lib/railwatch/patches/rake_task.rb +10 -1
- data/lib/railwatch/patches/runner_command.rb +3 -1
- data/lib/railwatch/transport/http.rb +15 -5
- data/lib/railwatch/version.rb +1 -1
- data/lib/railwatch/wire_fixtures.json +856 -0
- data/lib/railwatch.rb +22 -0
- data/lib/tasks/railwatch_tasks.rake +7 -0
- data/public/railwatch/assets/{app-layout-B5Fcdwfz.js → app-layout-DUk54qUM.js} +1 -1
- data/public/railwatch/assets/{app-wordmark-1SRllgHv.js → app-wordmark-DDNuuq5_.js} +1 -1
- data/public/railwatch/assets/{appearance-DbwahDrc.js → appearance-C3LMdsDy.js} +1 -1
- data/public/railwatch/assets/{arrow-up-DwKQcab4.js → arrow-up-DYTCBENO.js} +1 -1
- data/public/railwatch/assets/{auth-layout-DXfxXAN_.js → auth-layout-CzPRawuI.js} +1 -1
- data/public/railwatch/assets/{badge-CApjyWcg.js → badge-s7YDycYg.js} +1 -1
- data/public/railwatch/assets/{braces-kGSgxWnS.js → braces-BFrg-bvp.js} +1 -1
- data/public/railwatch/assets/{card-BaJ8kNkp.js → card-DiW-JhK3.js} +1 -1
- data/public/railwatch/assets/{chart-hover-XYPNE2CX.js → chart-hover-DMWx5-Rs.js} +1 -1
- data/public/railwatch/assets/{chart-Xnrz1Nqw.js → chart-nsdZV0Dv.js} +1 -1
- data/public/railwatch/assets/{chart-panel-BYk68mJJ.js → chart-panel-BlirnMrQ.js} +1 -1
- data/public/railwatch/assets/{checkbox-Bf41R8W6.js → checkbox-C2AqEZXX.js} +1 -1
- data/public/railwatch/assets/{code-a-9sh36A.js → code-DVJtYP7h.js} +1 -1
- data/public/railwatch/assets/{copy-block-zykZWQym.js → copy-block-D1myf7is.js} +1 -1
- data/public/railwatch/assets/{copy-id-b6CW5ESL.js → copy-id-CyRCMfdH.js} +1 -1
- data/public/railwatch/assets/{cursor-load-more-0cHzbTPT.js → cursor-load-more-JfSVBn9C.js} +1 -1
- data/public/railwatch/assets/{data-table-IvA7xvrK.js → data-table-CwtPkw_i.js} +1 -1
- data/public/railwatch/assets/{edit-7lmf3k80.js → edit-BvTugIpj.js} +1 -1
- data/public/railwatch/assets/{edit-ZKE15r-F.js → edit-DvpDUM-t.js} +1 -1
- data/public/railwatch/assets/{edit-DTtRV1fO.js → edit-fB83T9Yh.js} +1 -1
- data/public/railwatch/assets/{empty-state-BFTnQ2oT.js → empty-state-CshhuRUU.js} +1 -1
- data/public/railwatch/assets/{env-layout-erSDpIXg.js → env-layout-Dkp_4NvM.js} +1 -1
- data/public/railwatch/assets/{execution-path-Di5uUHi-.js → execution-path-CdEerUGH.js} +1 -1
- data/public/railwatch/assets/{filter-bar-Btm__gQi.js → filter-bar-BMHf8xBb.js} +1 -1
- data/public/railwatch/assets/{flamegraph-C-mZdqa7.js → flamegraph-uYWk1Yov.js} +1 -1
- data/public/railwatch/assets/{frames-KZBsjg6-.js → frames-B5ZECkvt.js} +1 -1
- data/public/railwatch/assets/{google-sign-in-button-DJRoD72g.js → google-sign-in-button-CAvsXYb4.js} +1 -1
- data/public/railwatch/assets/{index-CeqMDByC.js → index-1-78ZewP.js} +1 -1
- data/public/railwatch/assets/{index-P_e_cI0O.js → index-B-qRsj0W.js} +1 -1
- data/public/railwatch/assets/{index-kNhZPLVj.js → index-B4IRsZXK.js} +1 -1
- data/public/railwatch/assets/{index-QyHE9WsU.js → index-BIZsdfdM.js} +1 -1
- data/public/railwatch/assets/{index-EGU__DOB.js → index-BIom4V2g.js} +1 -1
- data/public/railwatch/assets/{index-Bot7kHMA.js → index-BMgA9NNc.js} +1 -1
- data/public/railwatch/assets/{index-CX8Br7m9.js → index-BpnfuXi-.js} +1 -1
- data/public/railwatch/assets/{index-D4968-TC.js → index-Bw_ByIps.js} +1 -1
- data/public/railwatch/assets/{index-CU6yhEyt.js → index-C7bU7oUF.js} +1 -1
- data/public/railwatch/assets/{index-Z1c4nFL0.js → index-CAkCcAty.js} +1 -1
- data/public/railwatch/assets/{index-B-bSm1jB.js → index-CRShH-fR.js} +1 -1
- data/public/railwatch/assets/{index-DBTxQw77.js → index-CZWzIE8F.js} +1 -1
- data/public/railwatch/assets/{index-Cj3_jD1E.js → index-CaJvo0Oc.js} +1 -1
- data/public/railwatch/assets/{index-HCJmFcZu.js → index-CdM3F3jz.js} +1 -1
- data/public/railwatch/assets/{index-DcItJxa5.js → index-ClG89uia.js} +1 -1
- data/public/railwatch/assets/{index-CAzQkw-h.js → index-ClJtZh5Q.js} +1 -1
- data/public/railwatch/assets/{index-Bjw4sTXU.js → index-Czq2bi1U.js} +1 -1
- data/public/railwatch/assets/{index-CP6jrrPT.js → index-D-O1LUPq.js} +1 -1
- data/public/railwatch/assets/{index-CYYmZpZu.js → index-DJIXGkfB.js} +1 -1
- data/public/railwatch/assets/{index-BAkZNNEh.js → index-DMcsT2ES.js} +1 -1
- data/public/railwatch/assets/{index-wOj5j0KC.js → index-DVUwgfqP.js} +1 -1
- data/public/railwatch/assets/{index-DAEzO_vq.js → index-DWMKU6mG.js} +1 -1
- data/public/railwatch/assets/{index-BWSyQRZI.js → index-DYrF-A96.js} +1 -1
- data/public/railwatch/assets/{index-BsrCnQqg.js → index-DcuyMiuG.js} +1 -1
- data/public/railwatch/assets/{index-BoTOVM0v.js → index-DpWQMikK.js} +1 -1
- data/public/railwatch/assets/{index-CIUl9POV.js → index-DuGGTdIJ.js} +1 -1
- data/public/railwatch/assets/{index-uHBVO8Lh.js → index-DzoUj38Q.js} +1 -1
- data/public/railwatch/assets/{index-CBJZQgHA.js → index-QxAKxnHK.js} +1 -1
- data/public/railwatch/assets/{index-9LL_C3eG.js → index-X13K9BbO.js} +1 -1
- data/public/railwatch/assets/{index-DEfu_YvU.js → index-Zf9xXwq7.js} +1 -1
- data/public/railwatch/assets/{index-Bo8hrjbs.js → index-dKn1tKSX.js} +1 -1
- data/public/railwatch/assets/{index-DCAho97K.js → index-fA7h22qS.js} +1 -1
- data/public/railwatch/assets/{index-BtSlLmkg.js → index-iVNm3uzI.js} +1 -1
- data/public/railwatch/assets/{index-B0VXzXYG.js → index-n16aviHx.js} +1 -1
- data/public/railwatch/assets/{index-DXUwhSCQ.js → index-vC9KU2bt.js} +1 -1
- data/public/railwatch/assets/{inertia-Degv_G9N.js → inertia-CUTKXjxg.js} +3 -3
- data/public/railwatch/assets/{input-error-C6SqO_iU.js → input-error-C8ycyeD0.js} +1 -1
- data/public/railwatch/assets/{json-viewer-DcQIxT86.js → json-viewer-CJECqZ0l.js} +1 -1
- data/public/railwatch/assets/{klass-WgQEfWpo.js → klass-Br9dng39.js} +1 -1
- data/public/railwatch/assets/{label-B_vK19tR.js → label-B32Ks8n7.js} +1 -1
- data/public/railwatch/assets/{layout-C8q7GUlZ.js → layout-5ZhRtywp.js} +1 -1
- data/public/railwatch/assets/{live-dot-DaXEbkXo.js → live-dot-Bb1UYT9F.js} +1 -1
- data/public/railwatch/assets/{nav-BnD5XArZ.js → nav-XUcwnBso.js} +1 -1
- data/public/railwatch/assets/{new-BL9OqXHe.js → new-0xyEF6NL.js} +1 -1
- data/public/railwatch/assets/{new-DIjwu2jF.js → new-CV011uLi.js} +1 -1
- data/public/railwatch/assets/{new-BqP0NhOF.js → new-CdvlEBjJ.js} +1 -1
- data/public/railwatch/assets/{new-BhRnQn4w.js → new-D9-ORiNW.js} +1 -1
- data/public/railwatch/assets/{new-uxMnBtoY.js → new-GIkDYLt8.js} +1 -1
- data/public/railwatch/assets/{new-CWP3wtwt.js → new-YBWOo9_V.js} +1 -1
- data/public/railwatch/assets/{onboarding-C_Y3xTsH.js → onboarding-BqEuP-Ml.js} +1 -1
- data/public/railwatch/assets/{origin-identity-CNhOnfBa.js → origin-identity-DrJ4D2TX.js} +1 -1
- data/public/railwatch/assets/{percentile-picker-BujVEhP6.js → percentile-picker-_wllqYoJ.js} +1 -1
- data/public/railwatch/assets/{relative-time-6CoKr1lN.js → relative-time-CV7V8aSP.js} +1 -1
- data/public/railwatch/assets/{release-health-1Qzc_XhT.js → release-health-DRNLZtT7.js} +1 -1
- data/public/railwatch/assets/{route-xqgYjOwJ.js → route-D9slUz_a.js} +1 -1
- data/public/railwatch/assets/{segmented-CVKq2Xpa.js → segmented-Bj70Htrs.js} +1 -1
- data/public/railwatch/assets/{select-CsmSXsJ4.js → select-DJBZX2ky.js} +1 -1
- data/public/railwatch/assets/{separator-CrM10Oot.js → separator-UUo0bkyc.js} +1 -1
- data/public/railwatch/assets/{series-chart-D33UhdG2.js → series-chart-C1YrNlID.js} +1 -1
- data/public/railwatch/assets/{show-zxVxhUel.js → show-BQtEcTeD.js} +1 -1
- data/public/railwatch/assets/{show-B0nHy31L.js → show-BT3tKCgP.js} +1 -1
- data/public/railwatch/assets/{show-DZwcZZrz.js → show-BoG7jcwk.js} +1 -1
- data/public/railwatch/assets/{show-ixK2r2f1.js → show-BpyCRL-I.js} +1 -1
- data/public/railwatch/assets/{show-rysBbvt-.js → show-C0uC3gnA.js} +1 -1
- data/public/railwatch/assets/{show-B3izvRdU.js → show-COfP8yWt.js} +1 -1
- data/public/railwatch/assets/{show-B7NhcWgp.js → show-CefJwag7.js} +1 -1
- data/public/railwatch/assets/{show-8H9WAGav.js → show-ChDJZjoj.js} +1 -1
- data/public/railwatch/assets/{show-CJMeX75E.js → show-D7IL22Hy.js} +1 -1
- data/public/railwatch/assets/{show-DUwQlohF.js → show-D7tP881O.js} +1 -1
- data/public/railwatch/assets/{show-BM-E2iYc.js → show-DR6u4CR7.js} +1 -1
- data/public/railwatch/assets/{show-CMisHNAI.js → show-DnBCvlnd.js} +1 -1
- data/public/railwatch/assets/{show-BlNR3ZOZ.js → show-DoCg0ifP.js} +1 -1
- data/public/railwatch/assets/{show-9jDeBNpc.js → show-GruxlCov.js} +1 -1
- data/public/railwatch/assets/{show-CvNV23gH.js → show-Pu3Iehw5.js} +1 -1
- data/public/railwatch/assets/{show-DMZlwzL_.js → show-TTCk2Met.js} +1 -1
- data/public/railwatch/assets/{show-CQ4Ze-Un.js → show-yQipmite.js} +1 -1
- data/public/railwatch/assets/{sort-header-CKj_7G3U.js → sort-header-CqQQhaxg.js} +1 -1
- data/public/railwatch/assets/{sparkline-cell-Ckg29yVq.js → sparkline-cell-BwdBz0yv.js} +1 -1
- data/public/railwatch/assets/{stat-TxvoBiC8.js → stat-IghK3WjD.js} +1 -1
- data/public/railwatch/assets/{status-badge-5NCVJHjo.js → status-badge-XYUN9gUA.js} +1 -1
- data/public/railwatch/assets/{tenant-path-B5ZRK4x3.js → tenant-path-SxnZbfU1.js} +1 -1
- data/public/railwatch/assets/{text-link-BPllRj0F.js → text-link-NCL9N5D5.js} +1 -1
- data/public/railwatch/assets/{textarea-DtD5yZp_.js → textarea-DhI1dmQa.js} +1 -1
- data/public/railwatch/assets/{timeline-DZz5ZnHN.js → timeline-CLAwsAlo.js} +1 -1
- data/public/railwatch/assets/{transition-Ds6Cakuc.js → transition-DpTb9Yiv.js} +1 -1
- data/public/railwatch/assets/{use-clipboard-BLjjYH8V.js → use-clipboard-D5i6e5kf.js} +1 -1
- data/public/railwatch/assets/{use-live-GKze1mNC.js → use-live-V-slSdFJ.js} +1 -1
- data/public/railwatch/manifest.json +1287 -1287
- metadata +117 -116
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as C,u as S,r as F,j as s,L as z,i as A,b as R,d as B,e as w,f as L}from"./inertia-
|
|
1
|
+
import{c as C,u as S,r as F,j as s,L as z,i as A,b as R,d as B,e as w,f as L}from"./inertia-CUTKXjxg.js";import{E as J}from"./empty-state-CshhuRUU.js";import{p as O,F as D,s as H}from"./filter-bar-BMHf8xBb.js";import{J as I}from"./json-viewer-CJECqZ0l.js";import{P as T,E as V}from"./env-layout-Dkp_4NvM.js";import{R as W}from"./relative-time-CV7V8aSP.js";import{B as $}from"./badge-s7YDycYg.js";import{B as b}from"./app-wordmark-DDNuuq5_.js";import{C as G,a as K}from"./app-layout-DUk54qUM.js";import"./use-clipboard-D5i6e5kf.js";import"./index-BpnfuXi-.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./format-B9SDkrWj.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";function xe(i){const e=C.c(30),{environment:c}=S().props,[y,E]=F.useState(null);let f;e[0]!==c?(f=t=>{const u=c?R(c.application_id,c.id,{q:t||void 0}):B({q:t||void 0});w.visit(u,{preserveState:!0,preserveScroll:!0})},e[0]=c,e[1]=f):f=e[1];const l=f,P=Q;let x;e[2]!==i.q?(x=O(i.q),e[2]=i.q,e[3]=x):x=e[3];const r=x,p=r.fields.status==="failed";let h;e[4]!==p||e[5]!==r.fields||e[6]!==r.text||e[7]!==l?(h=()=>{const t={...r.fields};p?delete t.status:t.status="failed",l(H({text:r.text,fields:t}))},e[4]=p,e[5]=r.fields,e[6]=r.text,e[7]=l,e[8]=h):h=e[8];const _=h;let v,j;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=[{title:"Alerts",href:"#"}],j=s.jsx(T,{withWindow:!1,title:"Alerts",description:"Fired alerts across your integrations, newest first."}),e[9]=v,e[10]=j):(v=e[9],j=e[10]);let g;e[11]===Symbol.for("react.memo_cache_sentinel")?(g={key:"event",label:"Event",options:["new_issue","regressed_issue","threshold","quota"]},e[11]=g):g=e[11];let a;e[12]!==i.statuses?(a=[g,{key:"status",label:"Status",options:i.statuses}],e[12]=i.statuses,e[13]=a):a=e[13];let o;e[14]!==i.q||e[15]!==a||e[16]!==l?(o=s.jsx(D,{value:i.q,fields:a,onChange:l,placeholder:"event:new_issue status:failed"}),e[14]=i.q,e[15]=a,e[16]=l,e[17]=o):o=e[17];const k=p?"default":"outline";let n;e[18]!==k||e[19]!==_?(n=s.jsx(b,{size:"sm",variant:k,className:"h-8",onClick:_,children:"Failed only"}),e[18]=k,e[19]=_,e[20]=n):n=e[20];let d;e[21]!==o||e[22]!==n?(d=s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[o,n]}),e[21]=o,e[22]=n,e[23]=d):d=e[23];let m;e[24]!==y||e[25]!==i.alerts?(m=i.alerts.length===0?s.jsx(J,{title:"No alerts have fired."}):s.jsx("div",{className:"divide-y rounded-md border",children:i.alerts.map(t=>{const u=y===t.id;return s.jsxs("div",{className:"p-3",children:[s.jsxs("button",{type:"button",className:"flex w-full flex-wrap items-center gap-3 text-left text-sm",onClick:()=>E(u?null:t.id),children:[u?s.jsx(G,{className:"text-muted-foreground size-4 shrink-0"}):s.jsx(K,{className:"text-muted-foreground size-4 shrink-0"}),s.jsx("span",{className:"font-mono text-xs",children:t.event}),s.jsxs("span",{className:"text-muted-foreground text-xs",children:[t.integration.name," (",t.integration.kind,")"]}),t.issue&&s.jsxs(z,{href:A(t.issue.id),onClick:M,className:"text-xs hover:underline",children:[s.jsx("span",{className:"font-mono font-semibold",children:t.issue.key})," ",s.jsx("span",{className:"text-muted-foreground",children:t.issue.title})]}),s.jsxs("span",{className:"ml-auto flex items-center gap-2",children:[s.jsx($,{variant:t.status==="failed"?"destructive":"outline",className:"capitalize",title:t.error??void 0,children:t.status}),s.jsx(W,{iso:t.sent_at??t.created_at,className:"text-muted-foreground text-xs"}),t.status==="failed"&&s.jsx(b,{size:"sm",variant:"outline",onClick:q=>{q.stopPropagation(),P(t.id)},children:"Retry"})]})]}),u&&s.jsxs("div",{className:"mt-3 space-y-2 pl-7",children:[t.error&&s.jsx("p",{className:"text-destructive text-xs",children:t.error}),s.jsx(I,{data:t.payload})]})]},t.id)})}),e[24]=y,e[25]=i.alerts,e[26]=m):m=e[26];let N;return e[27]!==d||e[28]!==m?(N=s.jsxs(V,{title:"Alerts",crumbs:v,children:[j,d,m]}),e[27]=d,e[28]=m,e[29]=N):N=e[29],N}function M(i){return i.stopPropagation()}function Q(i){return w.post(L(i),{},{preserveScroll:!0})}export{xe as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{B as H,r as c,j as T,a3 as x}from"./inertia-
|
|
1
|
+
import{B as H,r as c,j as T,a3 as x}from"./inertia-CUTKXjxg.js";const V=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],ae=H("check",V);var Y=Object.defineProperty,w=(e,t)=>Y(e,"name",{value:t,configurable:!0}),I=!!(typeof window<"u"&&window.document&&window.document.createElement);function X(e,t,{checkForDefaultPrevented:n=!0}={}){return w(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}w(X,"composeEventHandlers");function q(e){if(!I)throw new Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window}w(q,"getOwnerWindow");function R(e){if(!I)throw new Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}w(R,"getOwnerDocument");function $(e,t=!1){const{activeElement:n}=R(e);if(!n?.nodeName)return null;if(j(n)&&n.contentDocument)return $(n.contentDocument.body,t);if(t){const o=n.getAttribute("aria-activedescendant");if(o){const r=R(n).getElementById(o);if(r)return r}}return n}w($,"getActiveElement");function j(e){return e.tagName==="IFRAME"}w(j,"isFrame");var G=Object.defineProperty,S=(e,t)=>G(e,"name",{value:t,configurable:!0});function J(e,t){const n=c.createContext(t);n.displayName=e+"Context";const o=S(i=>{const{children:s,...u}=i,a=c.useMemo(()=>u,Object.values(u));return T.jsx(n.Provider,{value:a,children:s})},"Provider");o.displayName=e+"Provider";function r(i,s={}){const{optional:u=!1}=s,a=c.useContext(n);if(a)return a;if(t!==void 0)return t;if(!u)throw new Error(`\`${i}\` must be used within \`${e}\``)}return S(r,"useContext"),[o,r]}S(J,"createContext");function K(e,t=[]){let n=[];function o(i,s){const u=c.createContext(s);u.displayName=i+"Context";const a=n.length;n=[...n,s];const d=S(f=>{const{scope:v,children:p,...m}=f,E=v?.[e]?.[a]||u,g=c.useMemo(()=>m,Object.values(m));return T.jsx(E.Provider,{value:g,children:p})},"Provider");d.displayName=i+"Provider";function l(f,v,p={}){const{optional:m=!1}=p,E=v?.[e]?.[a]||u,g=c.useContext(E);if(g)return g;if(s!==void 0)return s;if(!m)throw new Error(`\`${f}\` must be used within \`${i}\``)}return S(l,"useContext"),[d,l]}S(o,"createContext");const r=S(()=>{const i=n.map(s=>c.createContext(s));return S(function(u){const a=u?.[e]||i;return c.useMemo(()=>({[`__scope${e}`]:{...u,[e]:a}}),[u,a])},"useScope")},"createScope");return r.scopeName=e,[o,D(r,...t)]}S(K,"createContextScope");function D(...e){const t=e[0];if(e.length===1)return t;const n=S(()=>{const o=e.map(r=>({useScope:r(),scopeName:r.scopeName}));return S(function(i){const s=o.reduce((u,{useScope:a,scopeName:d})=>{const f=a(i)[`__scope${d}`];return{...u,...f}},{});return c.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}S(D,"composeContextScopes");var b=globalThis?.document?c.useLayoutEffect:()=>{},Q=Object.defineProperty,Z=(e,t)=>Q(e,"name",{value:t,configurable:!0}),A=x[" useEffectEvent ".trim().toString()],O=x[" useInsertionEffect ".trim().toString()];function U(e){if(typeof A=="function")return A(e);const t=c.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof O=="function"?O(()=>{t.current=e}):b(()=>{t.current=e}),c.useMemo(()=>((...n)=>t.current?.(...n)),[])}Z(U,"useEffectEvent");var ee=Object.defineProperty,P=(e,t)=>ee(e,"name",{value:t,configurable:!0}),te=x[" useInsertionEffect ".trim().toString()]||b;function ne({prop:e,defaultProp:t,onChange:n=P(()=>{},"onChange"),caller:o}){const[r,i,s]=z({defaultProp:t,onChange:n}),u=e!==void 0,a=u?e:r,d=c.useCallback(l=>{if(u){const f=F(l)?l(e):l;f!==e&&s.current?.(f)}else i(l)},[u,e,i,s]);return[a,d]}P(ne,"useControllableState");function z({defaultProp:e,onChange:t}){const[n,o]=c.useState(e),r=c.useRef(n),i=c.useRef(t);return te(()=>{i.current=t},[t]),c.useEffect(()=>{r.current!==n&&(i.current?.(n),r.current=n)},[n,r]),[n,o,i]}P(z,"useUncontrolledState");function F(e){return typeof e=="function"}P(F,"isFunction");var M=Symbol("RADIX:SYNC_STATE");function re(e,t,n,o){const{prop:r,defaultProp:i,onChange:s,caller:u}=t,a=r!==void 0,d=U(s),l=[{...n,state:i}];o&&l.push(o);const[f,v]=c.useReducer((g,y)=>{if(y.type===M)return{...g,state:y.state};const N=e(g,y);return a&&!Object.is(N.state,g.state)&&d(N.state),N},...l),p=f.state,m=c.useRef(p);c.useEffect(()=>{m.current!==p&&(m.current=p,a||d(p))},[p,m,a]);const E=c.useMemo(()=>r!==void 0?{...f,state:r}:f,[f,r]);return c.useEffect(()=>{a&&!Object.is(r,f.state)&&v({type:M,state:r})},[r,f.state,a]),[E,v]}P(re,"useControllableStateReducer");var oe=Object.defineProperty,h=(e,t)=>oe(e,"name",{value:t,configurable:!0});function W(e,t){return c.useReducer((n,o)=>t[n][o]??n,e)}h(W,"useStateMachine");var fe=h(e=>{const{present:t,children:n}=e,o=L(t),r=typeof n=="function"?n({present:o.isPresent}):c.Children.only(n),i=k(o.ref,B(r));return typeof n=="function"||o.isPresent?c.cloneElement(r,{ref:i}):null},"Presence");function L(e){const[t,n]=c.useState(),o=c.useRef(null),r=c.useRef(e),i=c.useRef("none"),s=c.useRef(void 0),u=e?"mounted":"unmounted",[a,d]=W(u,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return c.useEffect(()=>{a==="mounted"?(i.current=s.current??C(o.current),s.current=void 0):i.current="none"},[a]),b(()=>{const l=o.current,f=r.current;if(f!==e){const p=i.current,m=C(l);e?(s.current=m,d("MOUNT")):m==="none"||l?.display==="none"?d("UNMOUNT"):d(f&&p!==m?"ANIMATION_OUT":"UNMOUNT"),r.current=e}},[e,d]),b(()=>{if(t){let l;const f=t.ownerDocument.defaultView??window,v=h(m=>{const g=C(o.current).includes(CSS.escape(m.animationName));if(m.target===t&&g&&(d("ANIMATION_END"),!r.current)){const y=t.style.animationFillMode;t.style.animationFillMode="forwards",l=f.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=y)})}},"handleAnimationEnd"),p=h(m=>{m.target===t&&(i.current=C(o.current))},"handleAnimationStart");return t.addEventListener("animationstart",p),t.addEventListener("animationcancel",v),t.addEventListener("animationend",v),()=>{f.clearTimeout(l),t.removeEventListener("animationstart",p),t.removeEventListener("animationcancel",v),t.removeEventListener("animationend",v)}}else d("ANIMATION_END")},[t,d]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:c.useCallback(l=>{if(l){const f=getComputedStyle(l);o.current=f,s.current=C(f)}else o.current=null;n(l)},[])}}h(L,"usePresence");function _(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}h(_,"setRef");function k(...e){const t=c.useRef(e);return t.current=e,c.useCallback(n=>{const o=t.current;let r=!1;const i=o.map(s=>{const u=_(s,n);return!r&&typeof u=="function"&&(r=!0),u});if(r)return()=>{for(let s=0;s<i.length;s++){const u=i[s];typeof u=="function"?u():_(o[s],null)}}},[])}h(k,"useStableComposedRefs");function C(e){return e?.animationName||"none"}h(C,"getAnimationName");function B(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}h(B,"getElementRef");var se=Object.defineProperty,ce=(e,t)=>se(e,"name",{value:t,configurable:!0});function ie(e){const[t,n]=c.useState(void 0);return b(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const i=r[0];let s,u;if("borderBoxSize"in i){const a=i.borderBoxSize,d=Array.isArray(a)?a[0]:a;s=d.inlineSize,u=d.blockSize}else s=e.offsetWidth,u=e.offsetHeight;n({width:s,height:u})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else n(void 0)},[e]),t}ce(ie,"useSize");export{ae as C,fe as P,X as a,b,K as c,ie as d,ne as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as le,u as ae,j as r,e as oe,ab as ne,a1 as ce,L as me}from"./inertia-
|
|
1
|
+
import{c as le,u as ae,j as r,e as oe,ab as ne,a1 as ce,L as me}from"./inertia-CUTKXjxg.js";import{C as de}from"./chart-hover-DMWx5-Rs.js";import{V as ue,D as fe}from"./chart-panel-BlirnMrQ.js";import{D as he}from"./data-table-CwtPkw_i.js";import{E as xe}from"./empty-state-CshhuRUU.js";import{F as pe}from"./filter-bar-BMHf8xBb.js";import{P as ye,E as ge}from"./env-layout-Dkp_4NvM.js";import{u as ve,P as be}from"./percentile-picker-_wllqYoJ.js";import{S as ke,H as je}from"./app-layout-DUk54qUM.js";import{S as M}from"./sort-header-CqQQhaxg.js";import{S as _e}from"./sparkline-cell-BwdBz0yv.js";import{m as re,c as $,p as qe}from"./format-B9SDkrWj.js";import"./series-chart-C1YrNlID.js";import"./chart-nsdZV0Dv.js";import"./badge-s7YDycYg.js";import"./app-wordmark-DDNuuq5_.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";import"./arrow-up-DYTCBENO.js";function it(t){const e=le.c(95),{environment:se,window:a}=ae().props,{percentile:o}=ve(),n=se.application_id,c=se.id;let O;e[0]!==n||e[1]!==c||e[2]!==t.dir||e[3]!==t.q||e[4]!==t.sort||e[5]!==a?(O=s=>oe.visit(ne(n,c,{window:a,sort:t.sort,dir:t.dir,q:t.q||void 0,...s}),{preserveState:!0}),e[0]=n,e[1]=c,e[2]=t.dir,e[3]=t.q,e[4]=t.sort,e[5]=a,e[6]=O):O=e[6];const m=O;let H;e[7]!==t.dir||e[8]!==t.sort||e[9]!==m?(H=s=>m({sort:s,dir:t.sort===s&&t.dir==="desc"?"asc":"desc"}),e[7]=t.dir,e[8]=t.sort,e[9]=m,e[10]=H):H=e[10];const i=H;let N;e[11]!==n||e[12]!==c||e[13]!==a?(N=s=>ce(n,c,s.group_hash,{window:a}),e[11]=n,e[12]=c,e[13]=a,e[14]=N):N=e[14];const l=N;let D;e[15]===Symbol.for("react.memo_cache_sentinel")?(D=r.jsx(ye,{title:"Requests",description:"Every route your app served, with error rates and percentiles.",actions:r.jsxs(r.Fragment,{children:[r.jsx(ke,{page:"requests"}),r.jsx(be,{})]})}),e[15]=D):D=e[15];let L;e[16]===Symbol.for("react.memo_cache_sentinel")?(L={key:"method",label:"Method",options:["GET","POST","PUT","PATCH","DELETE"]},e[16]=L):L=e[16];let A;e[17]===Symbol.for("react.memo_cache_sentinel")?(A=[L,{key:"status",label:"Status",options:["2xx","3xx","4xx","5xx"]},{key:"route",label:"Route"}],e[17]=A):A=e[17];let d;e[18]!==m?(d=s=>m({q:s||void 0}),e[18]=m,e[19]=d):d=e[19];let u;e[20]!==t.q||e[21]!==d?(u=r.jsx(pe,{value:t.q,fields:A,onChange:d,placeholder:"method:GET status:5xx route:/widgets"}),e[20]=t.q,e[21]=d,e[22]=u):u=e[22];let f;e[23]!==t.deploys||e[24]!==t.series?(f=r.jsx(ue,{label:"Requests",data:t.series,deploys:t.deploys}),e[23]=t.deploys,e[24]=t.series,e[25]=f):f=e[25];let h;e[26]!==t.deploys||e[27]!==t.series||e[28]!==o?(h=r.jsx(fe,{label:"Latency",data:t.series,deploys:t.deploys,percentile:o}),e[26]=t.deploys,e[27]=t.series,e[28]=o,e[29]=h):h=e[29];let x;e[30]!==f||e[31]!==h?(x=r.jsxs("div",{className:"grid gap-4 lg:grid-cols-2",children:[f,h]}),e[30]=f,e[31]=h,e[32]=x):x=e[32];let F;e[33]===Symbol.for("react.memo_cache_sentinel")?(F=r.jsx(xe,{icon:je,title:"No requests in this window",description:"HTTP requests to your app appear here as they're reported."}),e[33]=F):F=e[33];let p;e[34]!==l?(p={onOpen:(s,ie)=>ie?.newTab?globalThis.window.open(l(s),"_blank"):oe.visit(l(s))},e[34]=l,e[35]=p):p=e[35];let y;e[36]!==l?(y={key:"name",header:"Route",grow:!0,cell:s=>r.jsx(me,{className:"font-mono text-xs hover:underline",href:l(s),title:s.name,children:s.name})},e[36]=l,e[37]=y):y=e[37];let K,V,B;e[38]===Symbol.for("react.memo_cache_sentinel")?(K={key:"trend",hideOnMobile:!0,header:"Trend",cell:Me},V={key:"ok",hideOnMobile:!0,header:"2xx",align:"right",cell:Re},B={key:"4xx",hideOnMobile:!0,header:"4xx",align:"right",cell:Ce},e[38]=K,e[39]=V,e[40]=B):(K=e[38],V=e[39],B=e[40]);const z=t.sort==="errors",I=t.dir==="asc"?"asc":"desc";let g;e[41]!==i?(g=()=>i("errors"),e[41]=i,e[42]=g):g=e[42];let v;e[43]!==z||e[44]!==I||e[45]!==g?(v={key:"5xx",header:r.jsx(M,{label:"5xx",active:z,dir:I,onClick:g}),align:"right",cell:Te},e[43]=z,e[44]=I,e[45]=g,e[46]=v):v=e[46];const J=t.sort==="count",Q=t.dir==="asc"?"asc":"desc";let b;e[47]!==i?(b=()=>i("count"),e[47]=i,e[48]=b):b=e[48];let k;e[49]!==J||e[50]!==Q||e[51]!==b?(k={key:"total",header:r.jsx(M,{label:"Total",active:J,dir:Q,onClick:b}),align:"right",cell:we},e[49]=J,e[50]=Q,e[51]=b,e[52]=k):k=e[52];let G;e[53]===Symbol.for("react.memo_cache_sentinel")?(G={key:"err",hideOnMobile:!0,header:"Error %",align:"right",cell:Ee},e[53]=G):G=e[53];const W=t.sort==="avg",X=t.dir==="asc"?"asc":"desc";let j;e[54]!==i?(j=()=>i("avg"),e[54]=i,e[55]=j):j=e[55];let _;e[56]!==W||e[57]!==X||e[58]!==j?(_={key:"avg",hideOnMobile:!0,header:r.jsx(M,{label:"Avg",active:W,dir:X,onClick:j}),align:"right",cell:Se},e[56]=W,e[57]=X,e[58]=j,e[59]=_):_=e[59];const Y=t.sort===o,Z=t.dir==="asc"?"asc":"desc";let q;e[60]!==o||e[61]!==i?(q=()=>i(o),e[60]=o,e[61]=i,e[62]=q):q=e[62];let P;e[63]!==o||e[64]!==Y||e[65]!==Z||e[66]!==q?(P=r.jsx(M,{label:o,active:Y,dir:Z,onClick:q}),e[63]=o,e[64]=Y,e[65]=Z,e[66]=q,e[67]=P):P=e[67];let S;e[68]!==o?(S=s=>r.jsx("span",{className:"font-semibold",children:re(s[o])}),e[68]=o,e[69]=S):S=e[69];let E;e[70]!==o||e[71]!==P||e[72]!==S?(E={key:o,header:P,align:"right",cell:S},e[70]=o,e[71]=P,e[72]=S,e[73]=E):E=e[73];const ee=t.sort==="max",te=t.dir==="asc"?"asc":"desc";let w;e[74]!==i?(w=()=>i("max"),e[74]=i,e[75]=w):w=e[75];let T;e[76]!==ee||e[77]!==te||e[78]!==w?(T={key:"max",hideOnMobile:!0,header:r.jsx(M,{label:"Max",active:ee,dir:te,onClick:w}),align:"right",cell:Pe},e[76]=ee,e[77]=te,e[78]=w,e[79]=T):T=e[79];let C;e[80]!==y||e[81]!==v||e[82]!==k||e[83]!==_||e[84]!==E||e[85]!==T?(C=[y,K,V,B,v,k,G,_,E,T],e[80]=y,e[81]=v,e[82]=k,e[83]=_,e[84]=E,e[85]=T,e[86]=C):C=e[86];let R;e[87]!==t.routes||e[88]!==p||e[89]!==C?(R=r.jsx(he,{rows:t.routes,rowKey:He,empty:F,hoverKey:Oe,keyboardNav:p,columns:C}),e[87]=t.routes,e[88]=p,e[89]=C,e[90]=R):R=e[90];let U;return e[91]!==x||e[92]!==R||e[93]!==u?(U=r.jsx(ge,{title:"Requests",children:r.jsxs(de,{children:[D,u,x,R]})}),e[91]=x,e[92]=R,e[93]=u,e[94]=U):U=e[94],U}function Pe(t){return re(t.max)}function Se(t){return re(t.avg)}function Ee(t){return qe(t.errors,t.count)}function we(t){return $(t.count)}function Te(t){return r.jsx("span",{className:t.errors?"text-destructive":"",children:$(t.errors)})}function Ce(t){return $(t.client_errors)}function Re(t){return $(t.count-t.errors-t.client_errors)}function Me(t){return r.jsx(_e,{data:t.sparkline,hoverKey:t.group_hash})}function Oe(t){return t.group_hash}function He(t){return t.group_hash}export{it as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as le,u as ce,j as s,e as ie,ao as me,L as de}from"./inertia-
|
|
1
|
+
import{c as le,u as ce,j as s,e as ie,ao as me,L as de}from"./inertia-CUTKXjxg.js";import{C as ue}from"./chart-hover-DMWx5-Rs.js";import{D as fe}from"./data-table-CwtPkw_i.js";import{E as he}from"./empty-state-CshhuRUU.js";import{F as ye}from"./filter-bar-BMHf8xBb.js";import{P as ge,E as pe}from"./env-layout-Dkp_4NvM.js";import{S as W}from"./sort-header-CqQQhaxg.js";import{S as xe}from"./sparkline-cell-BwdBz0yv.js";import{S as Y,a as _e}from"./stat-IghK3WjD.js";import{c as a,m as ve,a as be}from"./format-B9SDkrWj.js";import{t as je}from"./tenant-path-SxnZbfU1.js";import{K as ke}from"./app-layout-DUk54qUM.js";import"./badge-s7YDycYg.js";import"./app-wordmark-DDNuuq5_.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./arrow-up-DYTCBENO.js";import"./series-chart-C1YrNlID.js";import"./chart-nsdZV0Dv.js";import"./checkbox-C2AqEZXX.js";function it(t){const e=le.c(91),{environment:ae,window:o}=ce().props,l=ae.application_id,c=ae.id;let P;e[0]!==l||e[1]!==c||e[2]!==t.dir||e[3]!==t.q||e[4]!==t.sort||e[5]!==o?(P=r=>ie.visit(me(l,c,{window:o,sort:t.sort,dir:t.dir,q:t.q||void 0,...r}),{preserveState:!0}),e[0]=l,e[1]=c,e[2]=t.dir,e[3]=t.q,e[4]=t.sort,e[5]=o,e[6]=P):P=e[6];const m=P;let M;e[7]!==t.dir||e[8]!==t.sort||e[9]!==m?(M=r=>m({sort:r,dir:t.sort===r&&t.dir==="desc"?"asc":"desc"}),e[7]=t.dir,e[8]=t.sort,e[9]=m,e[10]=M):M=e[10];const n=M;let F;e[11]!==l||e[12]!==c||e[13]!==o?(F=r=>je(l,c,r.tenant,{window:o}),e[11]=l,e[12]=c,e[13]=o,e[14]=F):F=e[14];const i=F;let K;e[15]===Symbol.for("react.memo_cache_sentinel")?(K=s.jsx(ge,{title:"Tenants",description:"Your application's own tenants, aggregated from the tenant tag on every record."}),e[15]=K):K=e[15];let d;e[16]!==t.summary.tenants?(d=a(t.summary.tenants),e[16]=t.summary.tenants,e[17]=d):d=e[17];let u;e[18]!==d?(u=s.jsx(Y,{label:"Tenants active",value:d}),e[18]=d,e[19]=u):u=e[19];const z=`${t.summary.top_share}%`,G=t.summary.top_tenant??"none";let f;e[20]!==z||e[21]!==G?(f=s.jsx(Y,{label:"Top tenant",value:z,hint:G}),e[20]=z,e[21]=G,e[22]=f):f=e[22];let h;e[23]!==t.summary.with_errors?(h=a(t.summary.with_errors),e[23]=t.summary.with_errors,e[24]=h):h=e[24];const I=t.summary.with_errors?"destructive":"success";let y;e[25]!==I||e[26]!==h?(y=s.jsx(Y,{label:"With 5xx",value:h,tone:I}),e[25]=I,e[26]=h,e[27]=y):y=e[27];const Q=`${t.summary.untagged_share}%`;let g;e[28]!==Q?(g=s.jsx(Y,{label:"Untagged",value:Q,hint:"requests with no tenant"}),e[28]=Q,e[29]=g):g=e[29];let p;e[30]!==y||e[31]!==g||e[32]!==u||e[33]!==f?(p=s.jsxs(_e,{children:[u,f,y,g]}),e[30]=y,e[31]=g,e[32]=u,e[33]=f,e[34]=p):p=e[34];let L;e[35]===Symbol.for("react.memo_cache_sentinel")?(L=[],e[35]=L):L=e[35];let x;e[36]!==m?(x=r=>m({q:r||void 0}),e[36]=m,e[37]=x):x=e[37];let _;e[38]!==t.q||e[39]!==x?(_=s.jsx(ye,{value:t.q,fields:L,onChange:x,placeholder:"Filter tenants"}),e[38]=t.q,e[39]=x,e[40]=_):_=e[40];let B;e[41]===Symbol.for("react.memo_cache_sentinel")?(B=s.jsx(he,{icon:ke,title:"No tenant-tagged records in this window",description:"Records carry the tenant from ActiveRecord::Tenanted / TenantRecord.current_tenant, or call Railwatch.context(tenant: org.slug)"}),e[41]=B):B=e[41];let v,b;e[42]!==i?(v=r=>ie.visit(i(r)),b={onOpen:(r,oe)=>oe?.newTab?globalThis.window.open(i(r),"_blank"):ie.visit(i(r))},e[42]=i,e[43]=v,e[44]=b):(v=e[43],b=e[44]);let j;e[45]!==i?(j={key:"tenant",header:"Tenant",cell:r=>s.jsx(de,{className:"font-mono text-xs hover:underline",href:i(r),children:r.tenant})},e[45]=i,e[46]=j):j=e[46];let H;e[47]===Symbol.for("react.memo_cache_sentinel")?(H={key:"trend",hideOnMobile:!0,header:"Trend",cell:Oe},e[47]=H):H=e[47];const V=t.sort==="requests",X=t.dir==="asc"?"asc":"desc";let k;e[48]!==n?(k=()=>n("requests"),e[48]=n,e[49]=k):k=e[49];let w;e[50]!==V||e[51]!==X||e[52]!==k?(w={key:"requests",header:s.jsx(W,{label:"Requests",active:V,dir:X,onClick:k}),align:"right",cell:Ne},e[50]=V,e[51]=X,e[52]=k,e[53]=w):w=e[53];const Z=t.sort==="errors",ee=t.dir==="asc"?"asc":"desc";let S;e[54]!==n?(S=()=>n("errors"),e[54]=n,e[55]=S):S=e[55];let q;e[56]!==Z||e[57]!==ee||e[58]!==S?(q={key:"5xx",header:s.jsx(W,{label:"5xx",active:Z,dir:ee,onClick:S}),align:"right",cell:Re},e[56]=Z,e[57]=ee,e[58]=S,e[59]=q):q=e[59];const te=t.sort==="p95",se=t.dir==="asc"?"asc":"desc";let T;e[60]!==n?(T=()=>n("p95"),e[60]=n,e[61]=T):T=e[61];let C;e[62]!==te||e[63]!==se||e[64]!==T?(C={key:"p95",header:s.jsx(W,{label:"p95",active:te,dir:se,onClick:T}),align:"right",cell:Ee},e[62]=te,e[63]=se,e[64]=T,e[65]=C):C=e[65];let $,D,U;e[66]===Symbol.for("react.memo_cache_sentinel")?($={key:"jobs",hideOnMobile:!0,header:"Jobs",align:"right",cell:Ce},D={key:"failed",hideOnMobile:!0,header:"Failed",align:"right",cell:Te},U={key:"exceptions",hideOnMobile:!0,header:"Exceptions",align:"right",cell:qe},e[66]=$,e[67]=D,e[68]=U):($=e[66],D=e[67],U=e[68]);const re=t.sort==="users",ne=t.dir==="asc"?"asc":"desc";let E;e[69]!==n?(E=()=>n("users"),e[69]=n,e[70]=E):E=e[70];let R;e[71]!==re||e[72]!==ne||e[73]!==E?(R={key:"users",hideOnMobile:!0,header:s.jsx(W,{label:"Users",active:re,dir:ne,onClick:E}),align:"right",cell:Se},e[71]=re,e[72]=ne,e[73]=E,e[74]=R):R=e[74];let A;e[75]===Symbol.for("react.memo_cache_sentinel")?(A={key:"seen",header:"Last seen",align:"right",cell:we},e[75]=A):A=e[75];let N;e[76]!==j||e[77]!==w||e[78]!==q||e[79]!==C||e[80]!==R?(N=[j,H,w,q,C,$,D,U,R,A],e[76]=j,e[77]=w,e[78]=q,e[79]=C,e[80]=R,e[81]=N):N=e[81];let O;e[82]!==t.tenants||e[83]!==v||e[84]!==b||e[85]!==N?(O=s.jsx(fe,{rows:t.tenants,rowKey:Me,empty:B,hoverKey:Pe,onRowClick:v,keyboardNav:b,columns:N}),e[82]=t.tenants,e[83]=v,e[84]=b,e[85]=N,e[86]=O):O=e[86];let J;return e[87]!==p||e[88]!==_||e[89]!==O?(J=s.jsx(pe,{title:"Tenants",children:s.jsxs(ue,{children:[K,p,_,O]})}),e[87]=p,e[88]=_,e[89]=O,e[90]=J):J=e[90],J}function we(t){return be(t.last_seen_at)}function Se(t){return a(t.users)}function qe(t){return a(t.exceptions)}function Te(t){return s.jsx("span",{className:t.failed_jobs?"text-destructive":"",children:a(t.failed_jobs)})}function Ce(t){return a(t.jobs)}function Ee(t){return s.jsx("span",{className:"font-semibold",children:ve(t.p95)})}function Re(t){return s.jsx("span",{className:t.errors?"text-destructive":"",children:a(t.errors)})}function Ne(t){return a(t.requests)}function Oe(t){return s.jsx(xe,{data:t.sparkline,hoverKey:t.tenant})}function Pe(t){return t.tenant}function Me(t){return t.tenant}export{it as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as Je,u as Ce,j as l,X as je,K as Me,Y as Ee,e as fe,L as Ae}from"./inertia-
|
|
1
|
+
import{c as Je,u as Ce,j as l,X as je,K as Me,Y as Ee,e as fe,L as Ae}from"./inertia-CUTKXjxg.js";import{C as Te}from"./chart-hover-DMWx5-Rs.js";import{V as Ie}from"./chart-panel-BlirnMrQ.js";import{C as Fe}from"./cursor-load-more-JfSVBn9C.js";import{D as xe}from"./data-table-CwtPkw_i.js";import{E as ke}from"./empty-state-CshhuRUU.js";import{F as Ke}from"./filter-bar-BMHf8xBb.js";import{O as ve}from"./origin-identity-DrJ4D2TX.js";import{P as He,E as Le}from"./env-layout-Dkp_4NvM.js";import{u as De,P as Re}from"./percentile-picker-_wllqYoJ.js";import{S as Be,W as we}from"./app-layout-DUk54qUM.js";import{S as Qe}from"./sparkline-cell-BwdBz0yv.js";import{S as ge}from"./status-badge-XYUN9gUA.js";import{C as Se,a as qe,b as Oe,c as Ne}from"./card-DiW-JhK3.js";import{m as he,c as Pe,w as Ve,p as We}from"./format-B9SDkrWj.js";import"./series-chart-C1YrNlID.js";import"./chart-nsdZV0Dv.js";import"./app-wordmark-DDNuuq5_.js";import"./badge-s7YDycYg.js";import"./tenant-path-SxnZbfU1.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";function Ht(t){const e=Je.c(114),{environment:_e,window:s,range:n}=Ce().props,{percentile:c}=De(),r=_e.application_id,i=_e.id;let C;e[0]!==n?.from||e[1]!==n?.to||e[2]!==s?(C=s==="custom"?{from:n?.from,to:n?.to}:{window:s},e[0]=n?.from,e[1]=n?.to,e[2]=s,e[3]=C):C=e[3];const a=C;let M;e[4]!==n||e[5]!==a?(M=n?{from:n.from,to:n.to}:a,e[4]=n,e[5]=a,e[6]=M):M=e[6];const pe=M;let E;e[7]!==r||e[8]!==pe||e[9]!==i||e[10]!==t.pagination.limit||e[11]!==t.q?(E=o=>je(r,i,{...pe,q:t.q||void 0,cursor:o,limit:t.pagination.limit}),e[7]=r,e[8]=pe,e[9]=i,e[10]=t.pagination.limit,e[11]=t.q,e[12]=E):E=e[12];const be=E;let A;e[13]!==r||e[14]!==i?(A=o=>Me(r,i,o.execution_id),e[13]=r,e[14]=i,e[15]=A):A=e[15];const J=A;let T;e[16]!==r||e[17]!==i||e[18]!==t.q||e[19]!==a?(T=o=>Ee(r,i,o.group_hash,{...a,q:t.q||void 0}),e[16]=r,e[17]=i,e[18]=t.q,e[19]=a,e[20]=T):T=e[20];const m=T;let I;e[21]===Symbol.for("react.memo_cache_sentinel")?(I=l.jsx(He,{title:"Jobs",description:"Active Job attempts by class and queue, with queue latency and failures.",actions:l.jsxs(l.Fragment,{children:[l.jsx(Be,{page:"jobs"}),l.jsx(Re,{})]})}),e[21]=I):I=e[21];let u;e[22]!==t.deploys||e[23]!==t.series?(u=l.jsx(Ie,{legend:"job",label:"Job attempts",seriesLabel:"Attempts",data:t.series,deploys:t.deploys}),e[22]=t.deploys,e[23]=t.series,e[24]=u):u=e[24];let F;e[25]===Symbol.for("react.memo_cache_sentinel")?(F=l.jsx(Oe,{children:l.jsx(Ne,{children:"Queues"})}),e[25]=F):F=e[25];let K;e[26]===Symbol.for("react.memo_cache_sentinel")?(K=[{key:"q",header:"Queue",cell:mt},{key:"n",header:"Attempts",align:"right",cell:ct},{key:"lat",hideOnMobile:!0,header:"Avg wait",align:"right",cell:at},{key:"f",header:"Failed",align:"right",cell:st}],e[26]=K):K=e[26];let d;e[27]!==t.queues?(d=l.jsxs(Se,{className:"lg:col-span-1",children:[F,l.jsx(qe,{children:l.jsx(xe,{rows:t.queues,rowKey:ut,columns:K})})]}),e[27]=t.queues,e[28]=d):d=e[28];let H;e[29]===Symbol.for("react.memo_cache_sentinel")?(H=l.jsx(Oe,{children:l.jsx(Ne,{children:"Recent runs"})}),e[29]=H):H=e[29];let L,D,R,B,Q;e[30]===Symbol.for("react.memo_cache_sentinel")?(L={key:"after",label:"After"},D={key:"before",label:"Before"},R={key:"user",label:"User"},B={key:"tenant",label:"Tenant"},Q={key:"deploy",label:"Deploy"},e[30]=L,e[31]=D,e[32]=R,e[33]=B,e[34]=Q):(L=e[30],D=e[31],R=e[32],B=e[33],Q=e[34]);let V,W,U,X;e[35]===Symbol.for("react.memo_cache_sentinel")?(V={key:"kind",label:"Execution kind",options:["job"]},W={key:"queue",label:"Queue"},U={key:"class",label:"Job class"},X={key:"job_id",label:"Job ID"},e[35]=V,e[36]=W,e[37]=U,e[38]=X):(V=e[35],W=e[36],U=e[37],X=e[38]);let Y;e[39]===Symbol.for("react.memo_cache_sentinel")?(Y=[L,D,R,B,Q,V,W,U,X,{key:"outcome",label:"Outcome",options:["processed","failed"]}],e[39]=Y):Y=e[39];let f;e[40]!==r||e[41]!==i||e[42]!==a?(f=o=>fe.visit(je(r,i,{...a,q:o||void 0}),{only:["recent","pagination","q"],preserveState:!0,reset:["recent"]}),e[40]=r,e[41]=i,e[42]=a,e[43]=f):f=e[43];let h;e[44]!==t.q||e[45]!==f?(h=l.jsx(Ke,{value:t.q,fields:Y,onChange:f,placeholder:"queue:default outcome:failed"}),e[44]=t.q,e[45]=f,e[46]=h):h=e[46];let $;e[47]===Symbol.for("react.memo_cache_sentinel")?($=l.jsx(ke,{icon:we,title:"No job runs in this window",description:"Job classes appear here once Active Job executions are reported."}),e[47]=$):$=e[47];let p,b;e[48]!==J?(p=o=>fe.visit(J(o)),b={onOpen:(o,ye)=>ye?.newTab?globalThis.window.open(J(o),"_blank"):fe.visit(J(o))},e[48]=J,e[49]=p,e[50]=b):(p=e[49],b=e[50]);let z,G,Z,ee;e[51]===Symbol.for("react.memo_cache_sentinel")?(z={key:"when",header:"When",cell:it},G={key:"name",header:"Job",grow:!0,cell:rt},Z={key:"st",header:"Outcome",cell:ot},ee={key:"att",hideOnMobile:!0,header:"Attempt",align:"right",cell:lt},e[51]=z,e[52]=G,e[53]=Z,e[54]=ee):(z=e[51],G=e[52],Z=e[53],ee=e[54]);let y;e[55]!==r||e[56]!==i||e[57]!==n||e[58]!==s?(y={key:"user",hideOnMobile:!0,header:"Origin user",cell:o=>l.jsx(ve,{...o,applicationId:r,environmentId:i,kind:"user",range:n,window:s})},e[55]=r,e[56]=i,e[57]=n,e[58]=s,e[59]=y):y=e[59];let x;e[60]!==r||e[61]!==i||e[62]!==n||e[63]!==s?(x={key:"tenant",hideOnMobile:!0,header:"Origin tenant",cell:o=>l.jsx(ve,{...o,applicationId:r,environmentId:i,kind:"tenant",range:n,window:s})},e[60]=r,e[61]=i,e[62]=n,e[63]=s,e[64]=x):x=e[64];let te;e[65]===Symbol.for("react.memo_cache_sentinel")?(te={key:"ex",hideOnMobile:!0,header:"Exception",cell:tt},e[65]=te):te=e[65];let g;e[66]!==y||e[67]!==x?(g=[z,G,Z,ee,y,x,te],e[66]=y,e[67]=x,e[68]=g):g=e[68];let _;e[69]!==t.recent||e[70]!==p||e[71]!==b||e[72]!==g?(_=l.jsx(xe,{rows:t.recent,rowKey:nt,empty:$,onRowClick:p,keyboardNav:b,columns:g}),e[69]=t.recent,e[70]=p,e[71]=b,e[72]=g,e[73]=_):_=e[73];let le;e[74]===Symbol.for("react.memo_cache_sentinel")?(le=["recent","pagination"],e[74]=le):le=e[74];let j;e[75]!==t.pagination||e[76]!==be?(j=l.jsx(Fe,{meta:t.pagination,href:be,only:le}),e[75]=t.pagination,e[76]=be,e[77]=j):j=e[77];let k;e[78]!==h||e[79]!==_||e[80]!==j?(k=l.jsxs(Se,{className:"lg:col-span-2",children:[H,l.jsxs(qe,{className:"space-y-3",children:[h,_,j]})]}),e[78]=h,e[79]=_,e[80]=j,e[81]=k):k=e[81];let v;e[82]!==k||e[83]!==d?(v=l.jsxs("div",{className:"grid gap-4 lg:grid-cols-3",children:[d,k]}),e[82]=k,e[83]=d,e[84]=v):v=e[84];let oe;e[85]===Symbol.for("react.memo_cache_sentinel")?(oe=l.jsx(ke,{icon:we,title:"No job attempts in this window",description:"Individual job executions appear here as they run."}),e[85]=oe):oe=e[85];let w;e[86]!==m?(w={onOpen:(o,ye)=>ye?.newTab?globalThis.window.open(m(o),"_blank"):fe.visit(m(o))},e[86]=m,e[87]=w):w=e[87];let S;e[88]!==m?(S={key:"name",header:"Job",grow:!0,cell:o=>l.jsx(Ae,{className:"font-mono text-xs hover:underline",href:m(o),children:o.name})},e[88]=m,e[89]=S):S=e[89];let re,ie,ne,se,ae;e[90]===Symbol.for("react.memo_cache_sentinel")?(re={key:"trend",hideOnMobile:!0,header:"Trend",cell:Ge},ie={key:"n",header:"Attempts",align:"right",cell:ze},ne={key:"f",header:"Failed",align:"right",cell:$e},se={key:"fr",hideOnMobile:!0,header:"Failure %",align:"right",cell:Ye},ae={key:"avg",hideOnMobile:!0,header:"Avg",align:"right",cell:Xe},e[90]=re,e[91]=ie,e[92]=ne,e[93]=se,e[94]=ae):(re=e[90],ie=e[91],ne=e[92],se=e[93],ae=e[94]);let q;e[95]!==c?(q=o=>l.jsx("span",{className:"font-semibold",children:he(o[c])}),e[95]=c,e[96]=q):q=e[96];let O;e[97]!==c||e[98]!==q?(O={key:c,header:c,align:"right",cell:q},e[97]=c,e[98]=q,e[99]=O):O=e[99];let ce;e[100]===Symbol.for("react.memo_cache_sentinel")?(ce={key:"max",hideOnMobile:!0,header:"Max",align:"right",cell:Ue},e[100]=ce):ce=e[100];let N;e[101]!==S||e[102]!==O?(N=[S,re,ie,ne,se,ae,O,ce],e[101]=S,e[102]=O,e[103]=N):N=e[103];let P;e[104]!==t.classes||e[105]!==w||e[106]!==N?(P=l.jsx(xe,{rows:t.classes,rowKey:et,empty:oe,hoverKey:Ze,keyboardNav:w,columns:N}),e[104]=t.classes,e[105]=w,e[106]=N,e[107]=P):P=e[107];let me;e[108]===Symbol.for("react.memo_cache_sentinel")?(me=l.jsx(ge,{outcome:"processed"}),e[108]=me):me=e[108];let ue;e[109]===Symbol.for("react.memo_cache_sentinel")?(ue=l.jsxs("p",{className:"text-muted-foreground text-xs",children:[me," processed ·"," ",l.jsx(ge,{outcome:"failed"})," failed"]}),e[109]=ue):ue=e[109];let de;return e[110]!==v||e[111]!==P||e[112]!==u?(de=l.jsx(Le,{title:"Jobs",children:l.jsxs(Te,{children:[I,u,v,P,ue]})}),e[110]=v,e[111]=P,e[112]=u,e[113]=de):de=e[113],de}function Ue(t){return he(t.max)}function Xe(t){return he(t.avg)}function Ye(t){return We(t.errors,t.count)}function $e(t){return l.jsx("span",{className:t.errors?"text-destructive":"",children:t.errors})}function ze(t){return Pe(t.count)}function Ge(t){return l.jsx(Qe,{data:t.sparkline,hoverKey:t.group_hash})}function Ze(t){return t.group_hash}function et(t){return t.group_hash}function tt(t){return l.jsx("span",{className:"text-destructive line-clamp-1 text-xs",children:t.exception_preview})}function lt(t){return t.attempt}function ot(t){return l.jsx(ge,{outcome:t.outcome})}function rt(t){return l.jsx("span",{className:"font-mono text-xs",children:t.name})}function it(t){return l.jsx("span",{className:"text-xs",children:Ve(t.occurred_at)})}function nt(t){return t.execution_id}function st(t){return t.failed}function at(t){return he(t.avg_latency)}function ct(t){return Pe(t.count)}function mt(t){return l.jsx("span",{className:"font-mono text-xs",children:t.queue})}function ut(t){return t.queue??"-"}export{Ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as B,u as F,j as t,e as I,A as R,r as A,L as $}from"./inertia-
|
|
1
|
+
import{c as B,u as F,j as t,e as I,A as R,r as A,L as $}from"./inertia-CUTKXjxg.js";import{E as G}from"./empty-state-CshhuRUU.js";import{F as H}from"./filter-bar-BMHf8xBb.js";import{P as O,E as T}from"./env-layout-Dkp_4NvM.js";import{S as J}from"./series-chart-C1YrNlID.js";import{S as q}from"./stat-IghK3WjD.js";import{B as L}from"./badge-s7YDycYg.js";import{C as K,a as M}from"./card-DiW-JhK3.js";import{e as Q}from"./execution-path-CdEerUGH.js";import{c as P,w as z}from"./format-B9SDkrWj.js";import"./app-wordmark-DDNuuq5_.js";import"./app-layout-DUk54qUM.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./checkbox-C2AqEZXX.js";import"./label-B32Ks8n7.js";import"./use-live-V-slSdFJ.js";import"./segmented-Bj70Htrs.js";import"./chart-hover-DMWx5-Rs.js";import"./chart-nsdZV0Dv.js";import"./arrow-up-DYTCBENO.js";function U(i){const e=B.c(51),{d:s,a:g,e:j}=i,[_,w]=A.useState(!1);let f;e[0]===Symbol.for("react.memo_cache_sentinel")?(f=()=>w(V),e[0]=f):f=e[0];let l;e[1]!==s.gem_name?(l=s.gem_name&&t.jsx(L,{variant:"secondary",className:"font-mono",children:s.gem_name}),e[1]=s.gem_name,e[2]=l):l=e[2];let r;e[3]!==s.horizon?(r=s.horizon&&t.jsxs(L,{variant:"outline",className:"font-mono",children:["removed in ",s.horizon]}),e[3]=s.horizon,e[4]=r):r=e[4];let a;e[5]!==l||e[6]!==r?(a=t.jsxs("div",{className:"flex items-center gap-2",children:[l,r]}),e[5]=l,e[6]=r,e[7]=a):a=e[7];let n;e[8]!==s.message?(n=t.jsx("p",{className:"mt-1 font-mono text-xs whitespace-pre-wrap",children:s.message}),e[8]=s.message,e[9]=n):n=e[9];let o;e[10]!==s.source?(o=s.source&&t.jsx("p",{className:"text-muted-foreground mt-1 font-mono text-xs",children:s.source}),e[10]=s.source,e[11]=o):o=e[11];let c;e[12]!==a||e[13]!==n||e[14]!==o?(c=t.jsxs("div",{className:"min-w-0 flex-1",children:[a,n,o]}),e[12]=a,e[13]=n,e[14]=o,e[15]=c):c=e[15];let x;e[16]!==s.sparkline?(x=t.jsx(J,{data:s.sparkline,className:"h-10 w-32"}),e[16]=s.sparkline,e[17]=x):x=e[17];let m;e[18]!==s.count?(m=P(s.count),e[18]=s.count,e[19]=m):m=e[19];let d;e[20]!==m?(d=t.jsx("div",{className:"text-lg font-semibold tabular-nums",children:m}),e[20]=m,e[21]=d):d=e[21];let p;e[22]===Symbol.for("react.memo_cache_sentinel")?(p=t.jsx("div",{className:"text-muted-foreground text-xs",children:"occurrences"}),e[22]=p):p=e[22];let u;e[23]!==d?(u=t.jsxs("div",{className:"text-right",children:[d,p]}),e[23]=d,e[24]=u):u=e[24];let h;e[25]!==u||e[26]!==x?(h=t.jsxs("div",{className:"flex shrink-0 items-center gap-4",children:[x,u]}),e[25]=u,e[26]=x,e[27]=h):h=e[27];let v;e[28]!==h||e[29]!==c?(v=t.jsxs("button",{type:"button",onClick:f,className:"flex flex-wrap items-start justify-between gap-4 text-left",children:[c,h]}),e[28]=h,e[29]=c,e[30]=v):v=e[30];let N;e[31]!==s.first_seen_at?(N=z(s.first_seen_at),e[31]=s.first_seen_at,e[32]=N):N=e[32];let b;e[33]!==N?(b=t.jsxs("span",{children:["First seen ",N]}),e[33]=N,e[34]=b):b=e[34];let y;e[35]!==s.last_seen_at?(y=z(s.last_seen_at),e[35]=s.last_seen_at,e[36]=y):y=e[36];let S;e[37]!==y?(S=t.jsxs("span",{children:["Last seen ",y]}),e[37]=y,e[38]=S):S=e[38];let k;e[39]!==b||e[40]!==S?(k=t.jsxs("div",{className:"text-muted-foreground flex gap-4 text-xs",children:[b,S]}),e[39]=b,e[40]=S,e[41]=k):k=e[41];let E;e[42]!==g||e[43]!==s.occurrences||e[44]!==j||e[45]!==_?(E=_&&t.jsx("div",{className:"mt-2 overflow-hidden rounded-lg border",children:t.jsx("table",{className:"w-full text-xs",children:t.jsx("tbody",{children:s.occurrences.map(D=>t.jsxs("tr",{className:"border-t first:border-t-0",children:[t.jsx("td",{className:"px-3 py-1.5 tabular-nums",children:z(D.occurred_at)}),t.jsx("td",{className:"px-3 py-1.5",children:D.execution_id?t.jsx($,{className:"font-mono hover:underline",href:Q({applicationId:g,environmentId:j,source:D.execution_source,executionId:D.execution_id}),children:D.execution_preview}):t.jsx("span",{className:"text-muted-foreground",children:"–"})})]},D.id))})})}),e[42]=g,e[43]=s.occurrences,e[44]=j,e[45]=_,e[46]=E):E=e[46];let C;return e[47]!==v||e[48]!==k||e[49]!==E?(C=t.jsx(K,{children:t.jsxs(M,{className:"flex flex-col gap-2 pt-4",children:[v,k,E]})}),e[47]=v,e[48]=k,e[49]=E,e[50]=C):C=e[50],C}function V(i){return!i}function _e(i){const e=B.c(33),{environment:s,window:g}=F().props,j=s.application_id,_=s.id;let w;e[0]===Symbol.for("react.memo_cache_sentinel")?(w=t.jsx(O,{title:"Deprecations",description:"ActiveSupport::Deprecation warnings, grouped by gem and message."}),e[0]=w):w=e[0];let f;e[1]!==i.distinct?(f=P(i.distinct),e[1]=i.distinct,e[2]=f):f=e[2];let l;e[3]!==f?(l=t.jsx(q,{label:"Distinct deprecations",value:f}),e[3]=f,e[4]=l):l=e[4];let r;e[5]!==i.total_occurrences?(r=P(i.total_occurrences),e[5]=i.total_occurrences,e[6]=r):r=e[6];let a;e[7]!==r?(a=t.jsx(q,{label:"Total occurrences",value:r}),e[7]=r,e[8]=a):a=e[8];let n;e[9]!==i.new_this_window?(n=P(i.new_this_window),e[9]=i.new_this_window,e[10]=n):n=e[10];let o;e[11]!==n?(o=t.jsx(q,{label:"New this window",value:n}),e[11]=n,e[12]=o):o=e[12];let c;e[13]!==l||e[14]!==a||e[15]!==o?(c=t.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[l,a,o]}),e[13]=l,e[14]=a,e[15]=o,e[16]=c):c=e[16];let x;e[17]===Symbol.for("react.memo_cache_sentinel")?(x=[{key:"gem",label:"Gem"}],e[17]=x):x=e[17];let m;e[18]!==j||e[19]!==_||e[20]!==g?(m=h=>I.visit(R(j,_,{window:g,q:h||void 0}),{preserveState:!0}),e[18]=j,e[19]=_,e[20]=g,e[21]=m):m=e[21];let d;e[22]!==i.q||e[23]!==m?(d=t.jsx(H,{value:i.q,fields:x,onChange:m,placeholder:"gem:rails deprecated method"}),e[22]=i.q,e[23]=m,e[24]=d):d=e[24];let p;e[25]!==j||e[26]!==_||e[27]!==i.deprecations?(p=i.deprecations.length===0?t.jsx(G,{title:"No deprecations in this window."}):t.jsx("div",{className:"flex flex-col gap-3",children:i.deprecations.map(h=>t.jsx(U,{d:h,a:j,e:_},h.group_hash))}),e[25]=j,e[26]=_,e[27]=i.deprecations,e[28]=p):p=e[28];let u;return e[29]!==d||e[30]!==p||e[31]!==c?(u=t.jsxs(T,{title:"Deprecations",children:[w,c,d,p]}),e[29]=d,e[30]=p,e[31]=c,e[32]=u):u=e[32],u}export{_e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as O,j as s,C as R,aa as H}from"./inertia-Degv_G9N.js";import{C as w}from"./chart-panel-BYk68mJJ.js";import{D as C}from"./data-table-IvA7xvrK.js";import{E as q}from"./empty-state-BFTnQ2oT.js";import{C as U,X as G,Y as I,a as W,b as X,c as Y}from"./chart-Xnrz1Nqw.js";import{A as J,a as V}from"./series-chart-D33UhdG2.js";import{E as Z,P as ee}from"./env-layout-erSDpIXg.js";import{a as te,S as _}from"./stat-TxvoBiC8.js";import{C as A,b as L,c as P,a as $}from"./card-BaJ8kNkp.js";import{c as j,m as T,b as se,a as K,w as Q}from"./format-B9SDkrWj.js";import{r as B}from"./app-layout-B5Fcdwfz.js";import"./chart-hover-XYPNE2CX.js";import"./badge-CApjyWcg.js";import"./app-wordmark-1SRllgHv.js";import"./use-live-GKze1mNC.js";import"./live-dot-DaXEbkXo.js";import"./index-B0VXzXYG.js";import"./index-CX8Br7m9.js";import"./segmented-CVKq2Xpa.js";import"./label-B_vK19tR.js";import"./arrow-up-DwKQcab4.js";import"./checkbox-Bf41R8W6.js";const E={fontSize:10,fontFamily:"var(--font-mono)"};function re(t){return new Date(t).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}function D(t){return new Date(t).toLocaleString(void 0,{day:"2-digit",month:"short",hour:"2-digit",minute:"2-digit"})}function N(t){const e=O.c(24),{label:a,data:r,format:o,color:p,className:l}=t,c=p===void 0?"var(--primary)":p,x=l===void 0?"h-32":l;let m;e[0]!==c||e[1]!==a?(m={value:{label:a,color:c}},e[0]=c,e[1]=a,e[2]=m):m=e[2];const b=m,h=`${x} w-full`;let n,u;e[3]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(U,{vertical:!1,strokeDasharray:"2 4"}),u=s.jsx(G,{dataKey:"t",tickFormatter:re,tickLine:!1,axisLine:!1,minTickGap:40,tick:E}),e[3]=n,e[4]=u):(n=e[3],u=e[4]);let i;e[5]!==o?(i=s.jsx(I,{width:44,tickLine:!1,axisLine:!1,tick:E,tickFormatter:S=>o(Number(S))}),e[5]=o,e[6]=i):i=e[6];let d;e[7]!==o||e[8]!==a?(d=s.jsx(W,{content:s.jsx(X,{labelFormatter:ae,formatter:S=>[o(Number(S)),a]})}),e[7]=o,e[8]=a,e[9]=d):d=e[9];let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=s.jsx(J,{dataKey:"value",stroke:"var(--color-value)",fill:"var(--color-value)",fillOpacity:.15,strokeWidth:1.75,isAnimationActive:!1}),e[10]=g):g=e[10];let f;e[11]!==r||e[12]!==i||e[13]!==d?(f=s.jsxs(V,{data:r,children:[n,u,i,d,g]}),e[11]=r,e[12]=i,e[13]=d,e[14]=f):f=e[14];let v;e[15]!==b||e[16]!==f||e[17]!==h?(v=s.jsx(Y,{config:b,className:h,children:f}),e[15]=b,e[16]=f,e[17]=h,e[18]=v):v=e[18];let y;e[19]!==r?(y=r.length>0&&s.jsxs("div",{className:"text-muted-foreground mt-1 flex justify-between font-mono text-[10px]",children:[s.jsx("span",{children:D(r[0].t)}),s.jsx("span",{children:D(r[r.length-1].t)})]}),e[19]=r,e[20]=y):y=e[20];let k;return e[21]!==v||e[22]!==y?(k=s.jsxs("div",{children:[v,y]}),e[21]=v,e[22]=y,e[23]=k):k=e[23],k}function ae(t){return D(String(t))}function z(t){const e=O.c(21),{busy:a,max:r,className:o}=t;if(!r){let f;return e[0]===Symbol.for("react.memo_cache_sentinel")?(f=s.jsx("span",{className:"text-muted-foreground",children:"–"}),e[0]=f):f=e[0],f}const p=Math.min(1,(a??0)/r);let l;e[1]!==o?(l=R("flex items-center gap-1.5",o),e[1]=o,e[2]=l):l=e[2];const c=a??0,x=p>=.9?"bg-danger":p>=.7?"bg-warning":"bg-live";let m;e[3]!==x?(m=R("absolute inset-y-0 left-0 rounded-full",x),e[3]=x,e[4]=m):m=e[4];const b=`${Math.max(4,p*100)}%`;let h;e[5]!==b?(h={width:b},e[5]=b,e[6]=h):h=e[6];let n;e[7]!==m||e[8]!==h?(n=s.jsx("span",{className:m,style:h}),e[7]=m,e[8]=h,e[9]=n):n=e[9];let u;e[10]!==r||e[11]!==c||e[12]!==n?(u=s.jsx("span",{role:"meter","aria-label":"Utilisation","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":r,className:"bg-muted-foreground/25 relative h-1.5 w-10 shrink-0 overflow-hidden rounded-full",children:n}),e[10]=r,e[11]=c,e[12]=n,e[13]=u):u=e[13];const i=a??0;let d;e[14]!==r||e[15]!==i?(d=s.jsxs("span",{className:"font-mono tabular-nums",children:[i,"/",r]}),e[14]=r,e[15]=i,e[16]=d):d=e[16];let g;return e[17]!==l||e[18]!==d||e[19]!==u?(g=s.jsxs("span",{className:l,children:[u,d]}),e[17]=l,e[18]=d,e[19]=u,e[20]=g):g=e[20],g}const M=t=>`${t.toFixed(0)}%`;function le(t){return t.reduce((e,a)=>e+(a??0),0)}function F(t){return t.reduce((e,a)=>Math.max(e,a??0),0)}function lt(t){const e=O.c(27);let a;if(e[0]!==t.samples){const i=t.samples.flatMap(Pe);a=i.length?i.reduce(Le,0)/i.length:0,e[0]=t.samples,e[1]=a}else a=e[1];const r=a;let o,p,l,c,x;if(e[2]!==t.queues||e[3]!==t.samples||e[4]!==t.series||e[5]!==t.silent_servers||e[6]!==r){const i=le(t.samples.map(Ae)),d=F(t.samples.map(Re)),g=F(t.samples.map(Oe)),f=t.samples.length>0||t.series.length>0;o=Z,p="Processes",e[12]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx(ee,{title:"Processes",description:"What every web and worker process is doing right now: thread pools, socket backlog, queue depth, and the boots behind them."}),e[12]=l):l=e[12],e[13]!==t.silent_servers?(c=t.silent_servers.length>0&&s.jsxs(A,{className:"border-warning/40",children:[s.jsx(L,{children:s.jsxs(P,{className:"flex items-center gap-2",children:[s.jsx(H,{className:"text-warning size-4"}),t.silent_servers.length===1?"1 expected host is silent":`${t.silent_servers.length} expected hosts are silent`]})}),s.jsxs($,{className:"space-y-2",children:[s.jsx("div",{className:"flex flex-wrap gap-1.5",children:t.silent_servers.map(De)}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"No health sample or execution from these hosts in the last 10 minutes. Expected hosts come from your Kamal post-deploy hook, or from the environment settings if you set them by hand."})]})]}),e[13]=t.silent_servers,e[14]=c):c=e[14],x=f?s.jsxs(s.Fragment,{children:[s.jsxs(te,{children:[s.jsx(_,{label:"Live processes",value:t.samples.length}),s.jsx(_,{label:"Thread utilisation",value:M(r),tone:r>=90?"destructive":r>=70?"warning":void 0,hint:"averaged across live processes"}),s.jsx(_,{label:"Backlog",value:j(i)}),s.jsx(_,{label:"Queue depth",value:j(d)}),s.jsx(_,{label:"Oldest job",value:T(g)})]}),s.jsx(C,{rows:t.samples,rowKey:Te,empty:s.jsx(q,{title:"No process reported in the last 10 minutes",description:"Health samples are older than the live window."}),columns:[{key:"server",header:"Server",cell:Me},{key:"role",header:"Role",cell:qe},{key:"pid",hideOnMobile:!0,header:"PID",align:"right",cell:Ce},{key:"threads",header:"Threads",cell:Se},{key:"pool",hideOnMobile:!0,header:"DB pool",cell:Ne},{key:"mem",hideOnMobile:!0,header:"Memory",align:"right",cell:we},{key:"seen",header:"Last sample",align:"right",cell:ke}]}),t.queues.length>0&&s.jsxs(A,{children:[s.jsx(L,{children:s.jsx(P,{children:"Queue depth"})}),s.jsx($,{children:s.jsx(C,{rows:t.queues,rowKey:_e,columns:[{key:"q",header:"Queue",cell:ye},{key:"d",header:"Ready jobs",align:"right",cell:ve}]})})]}),s.jsxs("div",{className:"grid gap-4 lg:grid-cols-2",children:[s.jsx(w,{label:"Thread utilisation",value:M(r),children:s.jsx(N,{label:"Utilisation",format:M,data:t.series.map(je)})}),s.jsx(w,{label:"Backlog",value:j(i),children:s.jsx(N,{label:"Backlog",color:"var(--warning)",format:j,data:t.series.map(ge)})}),s.jsx(w,{label:"Queue depth",value:j(d),children:s.jsx(N,{label:"Ready jobs",format:j,data:t.series.map(be)})}),s.jsx(w,{label:"Oldest job",value:T(g),children:s.jsx(N,{label:"Oldest job",color:"var(--danger)",format:xe,data:t.series.map(fe)})})]})]}):s.jsx(q,{icon:B,title:"No health samples yet",description:"The gem reports thread pool, backlog and queue health every 15s from each web and worker process."}),e[2]=t.queues,e[3]=t.samples,e[4]=t.series,e[5]=t.silent_servers,e[6]=r,e[7]=o,e[8]=p,e[9]=l,e[10]=c,e[11]=x}else o=e[7],p=e[8],l=e[9],c=e[10],x=e[11];let m;e[15]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx("h2",{className:"text-sm font-semibold",children:"Process boots"}),e[15]=m):m=e[15];let b,h;e[16]===Symbol.for("react.memo_cache_sentinel")?(b=s.jsx(q,{icon:B,title:"No process has booted with Railwatch yet",description:"Server processes report here once they boot with the gem installed."}),h=[{key:"b",header:"Booted",cell:he},{key:"s",header:"Server",cell:de},{key:"r",header:"Role",cell:ue},{key:"pid",hideOnMobile:!0,header:"PID",align:"right",cell:me},{key:"d",header:"Deploy",cell:ce},{key:"v",hideOnMobile:!0,header:"Ruby / Rails / Railwatch",cell:ie},{key:"ad",hideOnMobile:!0,header:"DB / queue / cache",cell:oe},{key:"boot",hideOnMobile:!0,header:"Boot",align:"right",cell:ne}],e[16]=b,e[17]=h):(b=e[16],h=e[17]);let n;e[18]!==t.processes?(n=s.jsx(C,{rows:t.processes,rowKey:pe,empty:b,columns:h}),e[18]=t.processes,e[19]=n):n=e[19];let u;return e[20]!==o||e[21]!==p||e[22]!==l||e[23]!==c||e[24]!==x||e[25]!==n?(u=s.jsxs(o,{title:p,children:[l,c,x,m,n]}),e[20]=o,e[21]=p,e[22]=l,e[23]=c,e[24]=x,e[25]=n,e[26]=u):u=e[26],u}function ne(t){return t.boot_seconds?`${t.boot_seconds.toFixed(1)}s`:"–"}function oe(t){return s.jsxs("span",{className:"font-mono text-xs",children:[t.detail.database_adapter," / ",t.detail.queue_adapter," /"," ",t.detail.cache_store?.replace("ActiveSupport::Cache::","")]})}function ie(t){return s.jsxs("span",{className:"font-mono text-xs",children:[t.ruby_version," / ",t.rails_version," / ",t.railwatch_version]})}function ce(t){return s.jsx("span",{className:"font-mono text-xs",children:t.deploy?.slice(0,12)})}function me(t){return t.pid}function ue(t){return t.role}function de(t){return s.jsx("span",{className:"font-mono text-xs",children:t.server})}function he(t){return s.jsx("span",{className:"text-xs",title:Q(t.booted_at),children:K(t.booted_at)})}function pe(t){return t.id}function fe(t){return{t:t.t,value:t.queue_latency}}function xe(t){return T(t)}function be(t){return{t:t.t,value:t.queue_depth}}function ge(t){return{t:t.t,value:t.backlog}}function je(t){return{t:t.t,value:t.utilisation}}function ve(t){return j(t.depth)}function ye(t){return t.queue}function _e(t){return t.queue}function ke(t){return s.jsx("span",{title:Q(t.sampled_at),children:K(t.sampled_at)})}function we(t){return se(t.memory)}function Ne(t){return s.jsx(z,{busy:t.pool_busy,max:t.pool_size})}function Se(t){return s.jsx(z,{busy:t.threads_busy,max:t.threads_max})}function Ce(t){return t.pid}function qe(t){return t.role}function Me(t){return s.jsx("span",{className:"font-mono text-xs",children:t.server})}function Te(t){return t.id}function De(t){return s.jsx("span",{className:"border-warning/40 bg-warning/10 text-warning rounded-sm border px-1.5 font-mono text-[11px]",children:t},t)}function Oe(t){return t.queue_latency}function Re(t){return t.queue_depth}function Ae(t){return t.backlog}function Le(t,e){return t+e}function Pe(t){return t.threads_max?[(t.threads_busy??0)/t.threads_max*100]:[]}export{lt as default};
|
|
1
|
+
import{c as O,j as s,C as R,aa as H}from"./inertia-CUTKXjxg.js";import{C as w}from"./chart-panel-BlirnMrQ.js";import{D as C}from"./data-table-CwtPkw_i.js";import{E as q}from"./empty-state-CshhuRUU.js";import{C as U,X as G,Y as I,a as W,b as X,c as Y}from"./chart-nsdZV0Dv.js";import{A as J,a as V}from"./series-chart-C1YrNlID.js";import{E as Z,P as ee}from"./env-layout-Dkp_4NvM.js";import{a as te,S as _}from"./stat-IghK3WjD.js";import{C as A,b as L,c as P,a as $}from"./card-DiW-JhK3.js";import{c as j,m as T,b as se,a as K,w as Q}from"./format-B9SDkrWj.js";import{r as B}from"./app-layout-DUk54qUM.js";import"./chart-hover-DMWx5-Rs.js";import"./badge-s7YDycYg.js";import"./app-wordmark-DDNuuq5_.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./arrow-up-DYTCBENO.js";import"./checkbox-C2AqEZXX.js";const E={fontSize:10,fontFamily:"var(--font-mono)"};function re(t){return new Date(t).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"})}function D(t){return new Date(t).toLocaleString(void 0,{day:"2-digit",month:"short",hour:"2-digit",minute:"2-digit"})}function N(t){const e=O.c(24),{label:a,data:r,format:o,color:p,className:l}=t,c=p===void 0?"var(--primary)":p,x=l===void 0?"h-32":l;let m;e[0]!==c||e[1]!==a?(m={value:{label:a,color:c}},e[0]=c,e[1]=a,e[2]=m):m=e[2];const b=m,h=`${x} w-full`;let n,u;e[3]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(U,{vertical:!1,strokeDasharray:"2 4"}),u=s.jsx(G,{dataKey:"t",tickFormatter:re,tickLine:!1,axisLine:!1,minTickGap:40,tick:E}),e[3]=n,e[4]=u):(n=e[3],u=e[4]);let i;e[5]!==o?(i=s.jsx(I,{width:44,tickLine:!1,axisLine:!1,tick:E,tickFormatter:S=>o(Number(S))}),e[5]=o,e[6]=i):i=e[6];let d;e[7]!==o||e[8]!==a?(d=s.jsx(W,{content:s.jsx(X,{labelFormatter:ae,formatter:S=>[o(Number(S)),a]})}),e[7]=o,e[8]=a,e[9]=d):d=e[9];let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=s.jsx(J,{dataKey:"value",stroke:"var(--color-value)",fill:"var(--color-value)",fillOpacity:.15,strokeWidth:1.75,isAnimationActive:!1}),e[10]=g):g=e[10];let f;e[11]!==r||e[12]!==i||e[13]!==d?(f=s.jsxs(V,{data:r,children:[n,u,i,d,g]}),e[11]=r,e[12]=i,e[13]=d,e[14]=f):f=e[14];let v;e[15]!==b||e[16]!==f||e[17]!==h?(v=s.jsx(Y,{config:b,className:h,children:f}),e[15]=b,e[16]=f,e[17]=h,e[18]=v):v=e[18];let y;e[19]!==r?(y=r.length>0&&s.jsxs("div",{className:"text-muted-foreground mt-1 flex justify-between font-mono text-[10px]",children:[s.jsx("span",{children:D(r[0].t)}),s.jsx("span",{children:D(r[r.length-1].t)})]}),e[19]=r,e[20]=y):y=e[20];let k;return e[21]!==v||e[22]!==y?(k=s.jsxs("div",{children:[v,y]}),e[21]=v,e[22]=y,e[23]=k):k=e[23],k}function ae(t){return D(String(t))}function z(t){const e=O.c(21),{busy:a,max:r,className:o}=t;if(!r){let f;return e[0]===Symbol.for("react.memo_cache_sentinel")?(f=s.jsx("span",{className:"text-muted-foreground",children:"–"}),e[0]=f):f=e[0],f}const p=Math.min(1,(a??0)/r);let l;e[1]!==o?(l=R("flex items-center gap-1.5",o),e[1]=o,e[2]=l):l=e[2];const c=a??0,x=p>=.9?"bg-danger":p>=.7?"bg-warning":"bg-live";let m;e[3]!==x?(m=R("absolute inset-y-0 left-0 rounded-full",x),e[3]=x,e[4]=m):m=e[4];const b=`${Math.max(4,p*100)}%`;let h;e[5]!==b?(h={width:b},e[5]=b,e[6]=h):h=e[6];let n;e[7]!==m||e[8]!==h?(n=s.jsx("span",{className:m,style:h}),e[7]=m,e[8]=h,e[9]=n):n=e[9];let u;e[10]!==r||e[11]!==c||e[12]!==n?(u=s.jsx("span",{role:"meter","aria-label":"Utilisation","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":r,className:"bg-muted-foreground/25 relative h-1.5 w-10 shrink-0 overflow-hidden rounded-full",children:n}),e[10]=r,e[11]=c,e[12]=n,e[13]=u):u=e[13];const i=a??0;let d;e[14]!==r||e[15]!==i?(d=s.jsxs("span",{className:"font-mono tabular-nums",children:[i,"/",r]}),e[14]=r,e[15]=i,e[16]=d):d=e[16];let g;return e[17]!==l||e[18]!==d||e[19]!==u?(g=s.jsxs("span",{className:l,children:[u,d]}),e[17]=l,e[18]=d,e[19]=u,e[20]=g):g=e[20],g}const M=t=>`${t.toFixed(0)}%`;function le(t){return t.reduce((e,a)=>e+(a??0),0)}function F(t){return t.reduce((e,a)=>Math.max(e,a??0),0)}function lt(t){const e=O.c(27);let a;if(e[0]!==t.samples){const i=t.samples.flatMap(Pe);a=i.length?i.reduce(Le,0)/i.length:0,e[0]=t.samples,e[1]=a}else a=e[1];const r=a;let o,p,l,c,x;if(e[2]!==t.queues||e[3]!==t.samples||e[4]!==t.series||e[5]!==t.silent_servers||e[6]!==r){const i=le(t.samples.map(Ae)),d=F(t.samples.map(Re)),g=F(t.samples.map(Oe)),f=t.samples.length>0||t.series.length>0;o=Z,p="Processes",e[12]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx(ee,{title:"Processes",description:"What every web and worker process is doing right now: thread pools, socket backlog, queue depth, and the boots behind them."}),e[12]=l):l=e[12],e[13]!==t.silent_servers?(c=t.silent_servers.length>0&&s.jsxs(A,{className:"border-warning/40",children:[s.jsx(L,{children:s.jsxs(P,{className:"flex items-center gap-2",children:[s.jsx(H,{className:"text-warning size-4"}),t.silent_servers.length===1?"1 expected host is silent":`${t.silent_servers.length} expected hosts are silent`]})}),s.jsxs($,{className:"space-y-2",children:[s.jsx("div",{className:"flex flex-wrap gap-1.5",children:t.silent_servers.map(De)}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"No health sample or execution from these hosts in the last 10 minutes. Expected hosts come from your Kamal post-deploy hook, or from the environment settings if you set them by hand."})]})]}),e[13]=t.silent_servers,e[14]=c):c=e[14],x=f?s.jsxs(s.Fragment,{children:[s.jsxs(te,{children:[s.jsx(_,{label:"Live processes",value:t.samples.length}),s.jsx(_,{label:"Thread utilisation",value:M(r),tone:r>=90?"destructive":r>=70?"warning":void 0,hint:"averaged across live processes"}),s.jsx(_,{label:"Backlog",value:j(i)}),s.jsx(_,{label:"Queue depth",value:j(d)}),s.jsx(_,{label:"Oldest job",value:T(g)})]}),s.jsx(C,{rows:t.samples,rowKey:Te,empty:s.jsx(q,{title:"No process reported in the last 10 minutes",description:"Health samples are older than the live window."}),columns:[{key:"server",header:"Server",cell:Me},{key:"role",header:"Role",cell:qe},{key:"pid",hideOnMobile:!0,header:"PID",align:"right",cell:Ce},{key:"threads",header:"Threads",cell:Se},{key:"pool",hideOnMobile:!0,header:"DB pool",cell:Ne},{key:"mem",hideOnMobile:!0,header:"Memory",align:"right",cell:we},{key:"seen",header:"Last sample",align:"right",cell:ke}]}),t.queues.length>0&&s.jsxs(A,{children:[s.jsx(L,{children:s.jsx(P,{children:"Queue depth"})}),s.jsx($,{children:s.jsx(C,{rows:t.queues,rowKey:_e,columns:[{key:"q",header:"Queue",cell:ye},{key:"d",header:"Ready jobs",align:"right",cell:ve}]})})]}),s.jsxs("div",{className:"grid gap-4 lg:grid-cols-2",children:[s.jsx(w,{label:"Thread utilisation",value:M(r),children:s.jsx(N,{label:"Utilisation",format:M,data:t.series.map(je)})}),s.jsx(w,{label:"Backlog",value:j(i),children:s.jsx(N,{label:"Backlog",color:"var(--warning)",format:j,data:t.series.map(ge)})}),s.jsx(w,{label:"Queue depth",value:j(d),children:s.jsx(N,{label:"Ready jobs",format:j,data:t.series.map(be)})}),s.jsx(w,{label:"Oldest job",value:T(g),children:s.jsx(N,{label:"Oldest job",color:"var(--danger)",format:xe,data:t.series.map(fe)})})]})]}):s.jsx(q,{icon:B,title:"No health samples yet",description:"The gem reports thread pool, backlog and queue health every 15s from each web and worker process."}),e[2]=t.queues,e[3]=t.samples,e[4]=t.series,e[5]=t.silent_servers,e[6]=r,e[7]=o,e[8]=p,e[9]=l,e[10]=c,e[11]=x}else o=e[7],p=e[8],l=e[9],c=e[10],x=e[11];let m;e[15]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx("h2",{className:"text-sm font-semibold",children:"Process boots"}),e[15]=m):m=e[15];let b,h;e[16]===Symbol.for("react.memo_cache_sentinel")?(b=s.jsx(q,{icon:B,title:"No process has booted with Railwatch yet",description:"Server processes report here once they boot with the gem installed."}),h=[{key:"b",header:"Booted",cell:he},{key:"s",header:"Server",cell:de},{key:"r",header:"Role",cell:ue},{key:"pid",hideOnMobile:!0,header:"PID",align:"right",cell:me},{key:"d",header:"Deploy",cell:ce},{key:"v",hideOnMobile:!0,header:"Ruby / Rails / Railwatch",cell:ie},{key:"ad",hideOnMobile:!0,header:"DB / queue / cache",cell:oe},{key:"boot",hideOnMobile:!0,header:"Boot",align:"right",cell:ne}],e[16]=b,e[17]=h):(b=e[16],h=e[17]);let n;e[18]!==t.processes?(n=s.jsx(C,{rows:t.processes,rowKey:pe,empty:b,columns:h}),e[18]=t.processes,e[19]=n):n=e[19];let u;return e[20]!==o||e[21]!==p||e[22]!==l||e[23]!==c||e[24]!==x||e[25]!==n?(u=s.jsxs(o,{title:p,children:[l,c,x,m,n]}),e[20]=o,e[21]=p,e[22]=l,e[23]=c,e[24]=x,e[25]=n,e[26]=u):u=e[26],u}function ne(t){return t.boot_seconds?`${t.boot_seconds.toFixed(1)}s`:"–"}function oe(t){return s.jsxs("span",{className:"font-mono text-xs",children:[t.detail.database_adapter," / ",t.detail.queue_adapter," /"," ",t.detail.cache_store?.replace("ActiveSupport::Cache::","")]})}function ie(t){return s.jsxs("span",{className:"font-mono text-xs",children:[t.ruby_version," / ",t.rails_version," / ",t.railwatch_version]})}function ce(t){return s.jsx("span",{className:"font-mono text-xs",children:t.deploy?.slice(0,12)})}function me(t){return t.pid}function ue(t){return t.role}function de(t){return s.jsx("span",{className:"font-mono text-xs",children:t.server})}function he(t){return s.jsx("span",{className:"text-xs",title:Q(t.booted_at),children:K(t.booted_at)})}function pe(t){return t.id}function fe(t){return{t:t.t,value:t.queue_latency}}function xe(t){return T(t)}function be(t){return{t:t.t,value:t.queue_depth}}function ge(t){return{t:t.t,value:t.backlog}}function je(t){return{t:t.t,value:t.utilisation}}function ve(t){return j(t.depth)}function ye(t){return t.queue}function _e(t){return t.queue}function ke(t){return s.jsx("span",{title:Q(t.sampled_at),children:K(t.sampled_at)})}function we(t){return se(t.memory)}function Ne(t){return s.jsx(z,{busy:t.pool_busy,max:t.pool_size})}function Se(t){return s.jsx(z,{busy:t.threads_busy,max:t.threads_max})}function Ce(t){return t.pid}function qe(t){return t.role}function Me(t){return s.jsx("span",{className:"font-mono text-xs",children:t.server})}function Te(t){return t.id}function De(t){return s.jsx("span",{className:"border-warning/40 bg-warning/10 text-warning rounded-sm border px-1.5 font-mono text-[11px]",children:t},t)}function Oe(t){return t.queue_latency}function Re(t){return t.queue_depth}function Ae(t){return t.backlog}function Le(t,e){return t+e}function Pe(t){return t.threads_max?[(t.threads_busy??0)/t.threads_max*100]:[]}export{lt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as M,u as A,j as n,t as K,e as P,L as R}from"./inertia-
|
|
1
|
+
import{c as M,u as A,j as n,t as K,e as P,L as R}from"./inertia-CUTKXjxg.js";import{D as S}from"./data-table-CwtPkw_i.js";import{E as B}from"./empty-state-CshhuRUU.js";import{P as $,E as D}from"./env-layout-Dkp_4NvM.js";import{B as L}from"./badge-s7YDycYg.js";import{c as T,b as O,m as C,w as H}from"./format-B9SDkrWj.js";import{b as E}from"./app-layout-DUk54qUM.js";import"./chart-hover-DMWx5-Rs.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./app-wordmark-DDNuuq5_.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";function fe(t){const e=M.c(26),{environment:N}=A().props,j=N.application_id,w=N.id;let c;e[0]!==j||e[1]!==w?(c=r=>r.execution_id?K(j,w,r.execution_id):null,e[0]=j,e[1]=w,e[2]=c):c=e[2];const i=c;let m;e[3]===Symbol.for("react.memo_cache_sentinel")?(m=n.jsx($,{title:"Broadcasts",description:"Action Cable broadcasts, transmits, and channel actions (covers inertia_cable and Turbo Streams)."}),e[3]=m):m=e[3];let d,u;e[4]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(B,{icon:E,title:"No broadcasts in this window",description:"Action Cable broadcasts appear here as your app sends them."}),u=[{key:"k",header:"Kind",cell:X},{key:"n",header:"Stream / channel",cell:V},{key:"c",hideOnMobile:!0,header:"Count",align:"right",cell:U},{key:"b",hideOnMobile:!0,header:"Bytes",align:"right",cell:Q},{key:"avg",hideOnMobile:!0,header:"Avg",align:"right",cell:J}],e[4]=d,e[5]=u):(d=e[4],u=e[5]);let a;e[6]!==t.streams?(a=n.jsx(S,{rows:t.streams,rowKey:Y,empty:d,columns:u}),e[6]=t.streams,e[7]=a):a=e[7];let p;e[8]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx("h2",{className:"text-sm font-semibold",children:"Recent"}),e[8]=p):p=e[8];let h;e[9]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(B,{icon:E,title:"No broadcasts in this window",description:"Action Cable broadcasts appear here as your app sends them."}),e[9]=h):h=e[9];let s;e[10]!==i?(s={onOpen:(r,g)=>{const v=i(r);v&&(g?.newTab?window.open(v,"_blank"):P.visit(v))}},e[10]=i,e[11]=s):s=e[11];let f,b,x,y,_;e[12]===Symbol.for("react.memo_cache_sentinel")?(y={key:"when",header:"When",cell:F},_={key:"k",header:"Kind",cell:z},f={key:"s",header:"Stream / channel",cell:W},b={key:"b",hideOnMobile:!0,header:"Bytes",align:"right",cell:I},x={key:"d",header:"Duration",align:"right",cell:q},e[12]=f,e[13]=b,e[14]=x,e[15]=y,e[16]=_):(f=e[12],b=e[13],x=e[14],y=e[15],_=e[16]);let o;e[17]!==i?(o=[y,_,f,b,x,{key:"in",hideOnMobile:!0,header:"In",cell:r=>{const g=i(r);return g?n.jsx(R,{className:"font-mono text-xs hover:underline",href:g,children:r.execution_preview}):null}}],e[17]=i,e[18]=o):o=e[18];let l;e[19]!==t.recent||e[20]!==o||e[21]!==s?(l=n.jsx(S,{rows:t.recent,rowKey:G,empty:h,keyboardNav:s,columns:o}),e[19]=t.recent,e[20]=o,e[21]=s,e[22]=l):l=e[22];let k;return e[23]!==l||e[24]!==a?(k=n.jsxs(D,{title:"Broadcasts",children:[m,a,p,l]}),e[23]=l,e[24]=a,e[25]=k):k=e[25],k}function q(t){return C(t.duration,3)}function I(t){return O(t.bytes)}function W(t){return n.jsxs("span",{className:"font-mono text-xs",children:[t.stream??t.channel,t.action?`#${t.action}`:""]})}function z(t){return t.failed?n.jsxs("span",{className:"flex items-center gap-1.5",children:[t.kind,n.jsx(L,{variant:"destructive",children:"failed"})]}):t.kind}function F(t){return n.jsx("span",{className:"text-xs",children:H(t.occurred_at)})}function G(t){return t.id}function J(t){return C(t.avg,3)}function Q(t){return O(t.bytes)}function U(t){return T(t.count)}function V(t){return n.jsx("span",{className:"font-mono text-xs",children:t.name})}function X(t){return t.kind}function Y(t){return`${t.group_hash}-${t.kind}`}export{fe as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as ee,u as re,j as r,e as X,ai as Y,L as ie}from"./inertia-
|
|
1
|
+
import{c as ee,u as re,j as r,e as X,ai as Y,L as ie}from"./inertia-CUTKXjxg.js";import{D as ne}from"./chart-panel-BlirnMrQ.js";import{D as Z}from"./data-table-CwtPkw_i.js";import{F as se}from"./filter-bar-BMHf8xBb.js";import{P as oe,E as le}from"./env-layout-Dkp_4NvM.js";import{u as ae,P as ce}from"./percentile-picker-_wllqYoJ.js";import{S as F}from"./sort-header-CqQQhaxg.js";import{S as de}from"./sparkline-cell-BwdBz0yv.js";import{B as me}from"./badge-s7YDycYg.js";import{e as ue}from"./execution-path-CdEerUGH.js";import{m as H,c as fe,w as he}from"./format-B9SDkrWj.js";import"./series-chart-C1YrNlID.js";import"./chart-hover-DMWx5-Rs.js";import"./chart-nsdZV0Dv.js";import"./empty-state-CshhuRUU.js";import"./app-wordmark-DDNuuq5_.js";import"./app-layout-DUk54qUM.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./checkbox-C2AqEZXX.js";import"./label-B32Ks8n7.js";import"./use-live-V-slSdFJ.js";import"./segmented-Bj70Htrs.js";import"./arrow-up-DYTCBENO.js";function te(t){const e=ee.c(3),{kind:l}=t;if(!l)return null;const o=l==="partial"?"secondary":l==="layout"?"outline":"default";let i;return e[0]!==l||e[1]!==o?(i=r.jsx(me,{variant:o,className:"font-mono",children:l}),e[0]=l,e[1]=o,e[2]=i):i=e[2],i}function Ze(t){const e=ee.c(81),{environment:l,window:o}=re().props,{percentile:i}=ae(),a=l.application_id,c=l.id;let q;e[0]!==a||e[1]!==c||e[2]!==t.dir||e[3]!==t.q||e[4]!==t.sort||e[5]!==o?(q=s=>X.visit(Y(a,c,{window:o,sort:s,dir:t.sort===s&&t.dir==="desc"?"asc":"desc",q:t.q||void 0}),{preserveState:!0}),e[0]=a,e[1]=c,e[2]=t.dir,e[3]=t.q,e[4]=t.sort,e[5]=o,e[6]=q):q=e[6];const n=q;let M;e[7]===Symbol.for("react.memo_cache_sentinel")?(M=r.jsx(oe,{title:"View renders",description:"Every template your app rendered, grouped by identifier.",actions:r.jsx(ce,{})}),e[7]=M):M=e[7];let d;e[8]!==t.series||e[9]!==i?(d=r.jsx(ne,{label:"Duration",data:t.series,percentile:i}),e[8]=t.series,e[9]=i,e[10]=d):d=e[10];let C;e[11]===Symbol.for("react.memo_cache_sentinel")?(C=[{key:"template",label:"Template"}],e[11]=C):C=e[11];let m;e[12]!==a||e[13]!==c||e[14]!==o?(m=s=>X.visit(Y(a,c,{window:o,q:s||void 0}),{preserveState:!0}),e[12]=a,e[13]=c,e[14]=o,e[15]=m):m=e[15];let u;e[16]!==t.q||e[17]!==m?(u=r.jsx(se,{value:t.q,fields:C,onChange:m,placeholder:"template:widgets/_row"}),e[16]=t.q,e[17]=m,e[18]=u):u=e[18];let O,D,E;e[19]===Symbol.for("react.memo_cache_sentinel")?(O={key:"id",header:"Template",grow:!0,cell:Ne},D={key:"kind",hideOnMobile:!0,header:"Kind",cell:Se},E={key:"trend",hideOnMobile:!0,header:"Trend",cell:be},e[19]=O,e[20]=D,e[21]=E):(O=e[19],D=e[20],E=e[21]);const $=t.sort==="count",A=t.dir==="asc"?"asc":"desc";let f;e[22]!==n?(f=()=>n("count"),e[22]=n,e[23]=f):f=e[23];let h;e[24]!==A||e[25]!==f||e[26]!==$?(h={key:"n",header:r.jsx(F,{label:"Count",active:$,dir:A,onClick:f}),align:"right",cell:ve},e[24]=A,e[25]=f,e[26]=$,e[27]=h):h=e[27];const W=t.sort==="avg",z=t.dir==="asc"?"asc":"desc";let x;e[28]!==n?(x=()=>n("avg"),e[28]=n,e[29]=x):x=e[29];let p;e[30]!==W||e[31]!==z||e[32]!==x?(p={key:"avg",hideOnMobile:!0,header:r.jsx(F,{label:"Avg",active:W,dir:z,onClick:x}),align:"right",cell:je},e[30]=W,e[31]=z,e[32]=x,e[33]=p):p=e[33];const G=t.sort===i,J=t.dir==="asc"?"asc":"desc";let y;e[34]!==i||e[35]!==n?(y=()=>n(i),e[34]=i,e[35]=n,e[36]=y):y=e[36];let _;e[37]!==i||e[38]!==G||e[39]!==J||e[40]!==y?(_=r.jsx(F,{label:i,active:G,dir:J,onClick:y}),e[37]=i,e[38]=G,e[39]=J,e[40]=y,e[41]=_):_=e[41];let k;e[42]!==i?(k=s=>r.jsx("span",{className:"font-semibold",children:H(s[i],2)}),e[42]=i,e[43]=k):k=e[43];let g;e[44]!==i||e[45]!==_||e[46]!==k?(g={key:i,header:_,align:"right",cell:k},e[44]=i,e[45]=_,e[46]=k,e[47]=g):g=e[47];const Q=t.sort==="max",U=t.dir==="asc"?"asc":"desc";let w;e[48]!==n?(w=()=>n("max"),e[48]=n,e[49]=w):w=e[49];let j;e[50]!==Q||e[51]!==U||e[52]!==w?(j={key:"max",hideOnMobile:!0,header:r.jsx(F,{label:"Max",active:Q,dir:U,onClick:w}),align:"right",cell:we},e[50]=Q,e[51]=U,e[52]=w,e[53]=j):j=e[53];let v;e[54]!==h||e[55]!==p||e[56]!==g||e[57]!==j?(v=[O,D,E,h,p,g,j],e[54]=h,e[55]=p,e[56]=g,e[57]=j,e[58]=v):v=e[58];let b;e[59]!==t.renders||e[60]!==v?(b=r.jsx(Z,{rows:t.renders,rowKey:Pe,empty:"No view renders in this window.",columns:v}),e[59]=t.renders,e[60]=v,e[61]=b):b=e[61];let B;e[62]===Symbol.for("react.memo_cache_sentinel")?(B=r.jsx("h2",{className:"text-sm font-semibold",children:"Slowest recent renders"}),e[62]=B):B=e[62];let K,T,I,L;e[63]===Symbol.for("react.memo_cache_sentinel")?(K={key:"when",header:"When",className:"w-40",cell:ke},T={key:"id",header:"Template",grow:!0,cell:_e},I={key:"kind",hideOnMobile:!0,header:"Kind",cell:ye},L={key:"layout",hideOnMobile:!0,header:"Layout",cell:pe},e[63]=K,e[64]=T,e[65]=I,e[66]=L):(K=e[63],T=e[64],I=e[65],L=e[66]);let S;e[67]!==a||e[68]!==c?(S={key:"in",hideOnMobile:!0,header:"In",cell:s=>s.execution_id?r.jsx(ie,{className:"font-mono text-xs hover:underline",href:ue({applicationId:a,environmentId:c,source:s.execution_source,executionId:s.execution_id}),children:s.execution_preview}):r.jsx("span",{className:"text-muted-foreground text-xs",children:"–"})},e[67]=a,e[68]=c,e[69]=S):S=e[69];let R;e[70]===Symbol.for("react.memo_cache_sentinel")?(R={key:"d",header:"Duration",align:"right",cell:xe},e[70]=R):R=e[70];let N;e[71]!==S?(N=[K,T,I,L,S,R],e[71]=S,e[72]=N):N=e[72];let P;e[73]!==t.slowest||e[74]!==N?(P=r.jsx(Z,{rows:t.slowest,rowKey:ge,columns:N}),e[73]=t.slowest,e[74]=N,e[75]=P):P=e[75];let V;return e[76]!==d||e[77]!==b||e[78]!==P||e[79]!==u?(V=r.jsxs(le,{title:"View renders",children:[M,d,u,b,B,P]}),e[76]=d,e[77]=b,e[78]=P,e[79]=u,e[80]=V):V=e[80],V}function xe(t){return H(t.duration,2)}function pe(t){return r.jsx("span",{className:"text-muted-foreground font-mono text-xs",children:t.layout??""})}function ye(t){return r.jsx(te,{kind:t.kind})}function _e(t){return r.jsx("span",{className:"font-mono text-xs",children:t.identifier})}function ke(t){return r.jsx("span",{className:"text-xs tabular-nums",children:he(t.occurred_at)})}function ge(t){return t.id}function we(t){return H(t.max,2)}function je(t){return H(t.avg,2)}function ve(t){return fe(t.count)}function be(t){return r.jsx(de,{data:t.sparkline})}function Se(t){return r.jsx(te,{kind:t.kind})}function Ne(t){return r.jsx("span",{className:"font-mono text-xs",children:t.name})}function Pe(t){return t.group_hash}export{Ze as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as z,u as G,j as i,t as J,e as V,$ as Q,L as U}from"./inertia-
|
|
1
|
+
import{c as z,u as G,j as i,t as J,e as V,$ as Q,L as U}from"./inertia-CUTKXjxg.js";import{V as X}from"./chart-panel-BlirnMrQ.js";import{D as H}from"./data-table-CwtPkw_i.js";import{E as W}from"./empty-state-CshhuRUU.js";import{F as Y}from"./filter-bar-BMHf8xBb.js";import{P as Z,E as ee}from"./env-layout-Dkp_4NvM.js";import{u as te,P as ie}from"./percentile-picker-_wllqYoJ.js";import{S as re}from"./sparkline-cell-BwdBz0yv.js";import{B as le}from"./badge-s7YDycYg.js";import{m as F,c as ne,w as ae}from"./format-B9SDkrWj.js";import{M as I}from"./app-layout-DUk54qUM.js";import"./series-chart-C1YrNlID.js";import"./chart-hover-DMWx5-Rs.js";import"./chart-nsdZV0Dv.js";import"./app-wordmark-DDNuuq5_.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";function We(t){const e=z.c(51),{environment:K,window:L}=G().props,{percentile:l}=te(),n=K.application_id,a=K.id;let y;e[0]!==n||e[1]!==a?(y=r=>r.execution_id?J(n,a,r.execution_id):null,e[0]=n,e[1]=a,e[2]=y):y=e[2];const s=y;let _;e[3]===Symbol.for("react.memo_cache_sentinel")?(_=i.jsx(Z,{title:"Mail",description:"Action Mailer deliveries: recipients, delivery method, render and send time.",actions:i.jsx(ie,{})}),e[3]=_):_=e[3];let o;e[4]!==t.series?(o=i.jsx(X,{legend:"outcome",label:"Deliveries",seriesLabel:"Deliveries",data:t.series}),e[4]=t.series,e[5]=o):o=e[5];let b,g,k,v,j,M;e[6]===Symbol.for("react.memo_cache_sentinel")?(b=i.jsx(W,{icon:I,title:"No mail sent in this window",description:"ActionMailer deliveries appear here as your app sends them."}),g={key:"m",header:"Mailer",cell:ge},k={key:"trend",hideOnMobile:!0,header:"Trend",cell:be},v={key:"n",header:"Sent",align:"right",cell:_e},j={key:"f",hideOnMobile:!0,header:"Failed",align:"right",cell:ye},M={key:"avg",hideOnMobile:!0,header:"Avg",align:"right",cell:xe},e[6]=b,e[7]=g,e[8]=k,e[9]=v,e[10]=j,e[11]=M):(b=e[6],g=e[7],k=e[8],v=e[9],j=e[10],M=e[11]);let c;e[12]!==l?(c=r=>i.jsx("span",{className:"font-semibold",children:F(r[l])}),e[12]=l,e[13]=c):c=e[13];let m;e[14]!==l||e[15]!==c?(m=[g,k,v,j,M,{key:l,header:l,align:"right",cell:c}],e[14]=l,e[15]=c,e[16]=m):m=e[16];let d;e[17]!==t.mailers||e[18]!==m?(d=i.jsx(H,{rows:t.mailers,rowKey:ke,empty:b,columns:m}),e[17]=t.mailers,e[18]=m,e[19]=d):d=e[19];let w;e[20]===Symbol.for("react.memo_cache_sentinel")?(w=i.jsx("h2",{className:"text-sm font-semibold",children:"Recent"}),e[20]=w):w=e[20];let S;e[21]===Symbol.for("react.memo_cache_sentinel")?(S=[{key:"mailer",label:"Mailer"},{key:"kind",label:"Kind"}],e[21]=S):S=e[21];let u;e[22]!==n||e[23]!==a||e[24]!==L?(u=r=>V.visit(Q(n,a,{window:L,q:r||void 0}),{preserveState:!0}),e[22]=n,e[23]=a,e[24]=L,e[25]=u):u=e[25];let h;e[26]!==t.q||e[27]!==u?(h=i.jsx(Y,{value:t.q,fields:S,onChange:u,placeholder:"mailer:WidgetMailer kind:smtp"}),e[26]=t.q,e[27]=u,e[28]=h):h=e[28];let N;e[29]===Symbol.for("react.memo_cache_sentinel")?(N=i.jsx(W,{icon:I,title:"No mail sent in this window",description:"ActionMailer deliveries appear here as your app sends them."}),e[29]=N):N=e[29];let p;e[30]!==s?(p={onOpen:(r,B)=>{const R=s(r);R&&(B?.newTab?globalThis.window.open(R,"_blank"):V.visit(R))}},e[30]=s,e[31]=p):p=e[31];let P,O,E,C,q,A,D,T;e[32]===Symbol.for("react.memo_cache_sentinel")?(P={key:"when",header:"When",cell:pe},O={key:"m",header:"Mailer",cell:he},E={key:"s",header:"Subject",cell:ue},C={key:"to",hideOnMobile:!0,header:"To/CC/BCC",align:"right",cell:de},q={key:"att",hideOnMobile:!0,header:"Att.",align:"right",cell:me},A={key:"dm",hideOnMobile:!0,header:"Via",cell:ce},D={key:"st",header:"",cell:oe},T={key:"d",hideOnMobile:!0,header:"Duration",align:"right",cell:se},e[32]=P,e[33]=O,e[34]=E,e[35]=C,e[36]=q,e[37]=A,e[38]=D,e[39]=T):(P=e[32],O=e[33],E=e[34],C=e[35],q=e[36],A=e[37],D=e[38],T=e[39]);let f;e[40]!==s?(f=[P,O,E,C,q,A,D,T,{key:"in",hideOnMobile:!0,header:"In",cell:r=>{const B=s(r);return B?i.jsx(U,{className:"font-mono text-xs hover:underline",href:B,children:r.execution_preview}):null}}],e[40]=s,e[41]=f):f=e[41];let x;e[42]!==t.recent||e[43]!==p||e[44]!==f?(x=i.jsx(H,{rows:t.recent,rowKey:fe,empty:N,keyboardNav:p,columns:f}),e[42]=t.recent,e[43]=p,e[44]=f,e[45]=x):x=e[45];let $;return e[46]!==d||e[47]!==h||e[48]!==o||e[49]!==x?($=i.jsxs(ee,{title:"Mail",children:[_,o,d,w,h,x]}),e[46]=d,e[47]=h,e[48]=o,e[49]=x,e[50]=$):$=e[50],$}function se(t){return F(t.duration)}function oe(t){return t.failed?i.jsx(le,{variant:"destructive",children:"failed"}):null}function ce(t){return t.delivery_method}function me(t){return t.attachments}function de(t){return`${t.to}/${t.cc}/${t.bcc}`}function ue(t){return i.jsx("span",{className:"line-clamp-1 text-xs",children:t.subject})}function he(t){return i.jsx("span",{className:"font-mono text-xs",children:t.mailer})}function pe(t){return i.jsx("span",{className:"text-xs",children:ae(t.occurred_at)})}function fe(t){return t.id}function xe(t){return F(t.avg)}function ye(t){return t.errors}function _e(t){return ne(t.count)}function be(t){return i.jsx(re,{data:t.sparkline})}function ge(t){return i.jsx("span",{className:"font-mono text-xs",children:t.name})}function ke(t){return t.group_hash}export{We as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as D,u as A,au as I,j as s,F as M,aR as G,H,e as p,aS as B,aT as L,aU as $,aV as K}from"./inertia-
|
|
1
|
+
import{c as D,u as A,au as I,j as s,F as M,aR as G,H,e as p,aS as B,aT as L,aU as $,aV as K}from"./inertia-CUTKXjxg.js";import{G as O}from"./google-sign-in-button-CAvsXYb4.js";import{I as k}from"./input-error-C8ycyeD0.js";import{D as T}from"./data-table-CwtPkw_i.js";import{B as z}from"./badge-s7YDycYg.js";import{B as x}from"./app-wordmark-DDNuuq5_.js";import{C as P,b as S,c as F,a as R}from"./card-DiW-JhK3.js";import{L as N,I as E}from"./label-B32Ks8n7.js";import{A as q}from"./app-layout-DUk54qUM.js";import{a as U}from"./format-B9SDkrWj.js";import"./separator-UUo0bkyc.js";import"./index-n16aviHx.js";import"./chart-hover-DMWx5-Rs.js";import"./empty-state-CshhuRUU.js";import"./live-dot-Bb1UYT9F.js";import"./index-BpnfuXi-.js";import"./checkbox-C2AqEZXX.js";function ve(t){const e=D.c(31),{account:a,auth:n}=A().props;let f,j;e[0]===Symbol.for("react.memo_cache_sentinel")?(f=[{title:"Members",href:I()}],j=s.jsx(H,{title:"Members"}),e[0]=f,e[1]=j):(f=e[0],j=e[1]);let g;e[2]===Symbol.for("react.memo_cache_sentinel")?(g=s.jsxs("div",{children:[s.jsx("h1",{className:"text-xl font-semibold",children:"Members"}),s.jsx("p",{className:"text-muted-foreground text-sm",children:"People who can see this account's applications and issues."})]}),e[2]=g):g=e[2];let w;e[3]===Symbol.for("react.memo_cache_sentinel")?(w=s.jsx(S,{children:s.jsx(F,{className:"text-sm",children:"Add member"})}),e[3]=w):w=e[3];let b;e[4]===Symbol.for("react.memo_cache_sentinel")?(b=I(),e[4]=b):b=e[4];let i;e[5]!==t.roles?(i=s.jsxs(P,{className:"max-w-lg",children:[w,s.jsx(R,{children:s.jsx(M,{method:"post",action:b,className:"flex flex-wrap items-end gap-3",resetOnSuccess:!0,children:r=>{const{errors:u,processing:C}=r;return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"grid flex-1 gap-1",children:[s.jsx(N,{htmlFor:"email",children:"Email"}),s.jsx(E,{id:"email",name:"email",type:"email",required:!0}),s.jsx(k,{messages:u.email})]}),s.jsxs("div",{className:"grid gap-1",children:[s.jsx(N,{htmlFor:"role",children:"Role"}),s.jsx("select",{id:"role",name:"role",className:"border-input h-9 rounded-md border bg-transparent px-2 text-sm",children:t.roles.filter(ne).map(re)})]}),s.jsx(x,{disabled:C,children:"Invite"})]})}})})]}),e[5]=t.roles,e[6]=i):i=e[6];let l;e[7]!==t.invitations?(l=t.invitations.length>0&&s.jsxs(P,{children:[s.jsx(S,{children:s.jsx(F,{children:"Pending invitations"})}),s.jsx(R,{children:s.jsx(T,{rows:t.invitations,rowKey:te,columns:[{key:"e",header:"Email",cell:se},{key:"r",header:"Role",cell:ee},{key:"x",header:"Expires",cell:Z},{key:"a",header:"",align:"right",cell:X}]})})]}),e[7]=t.invitations,e[8]=l):l=e[8];let _,v;e[9]===Symbol.for("react.memo_cache_sentinel")?(_={key:"n",header:"Name",cell:J},v={key:"e",header:"Email",cell:Y},e[9]=_,e[10]=v):(_=e[9],v=e[10]);let o;e[11]!==t.roles?(o={key:"r",header:"Role",cell:r=>r.role==="owner"?s.jsx(z,{variant:"outline",children:"owner"}):s.jsx("select",{value:r.role,"aria-label":`Role for ${r.name}`,onChange:u=>p.patch(B(r.id),{role:u.target.value}),className:"border-input bg-background h-7 rounded-md border px-2 text-xs",children:t.roles.filter(W).map(V)})},e[11]=t.roles,e[12]=o):o=e[12];let c;e[13]!==t.ownership.can_transfer||e[14]!==t.ownership.current_user_id?(c={key:"x",header:"",align:"right",cell:r=>s.jsxs("span",{className:"flex justify-end gap-1",children:[t.ownership.can_transfer&&r.user_id!==t.ownership.current_user_id&&s.jsx(x,{size:"sm",variant:"outline",onClick:()=>{window.confirm(`Transfer ownership to ${r.name}? Your role will become admin.`)&&p.post(L(r.id))},children:"Transfer ownership"}),r.role!=="owner"&&s.jsx(x,{size:"sm",variant:"ghost",className:"text-destructive",onClick:()=>p.delete(B(r.id)),children:"Remove"})]})},e[13]=t.ownership.can_transfer,e[14]=t.ownership.current_user_id,e[15]=c):c=e[15];let d;e[16]!==c||e[17]!==o?(d=[_,v,o,c],e[16]=c,e[17]=o,e[18]=d):d=e[18];let m;e[19]!==t.members||e[20]!==d?(m=s.jsx(T,{rows:t.members,rowKey:Q,columns:d}),e[19]=t.members,e[20]=d,e[21]=m):m=e[21];let h;e[22]!==a||e[23]!==n||e[24]!==t.ownership.can_delete_account?(h=t.ownership.can_delete_account&&a&&s.jsxs(P,{className:"border-destructive/30 max-w-lg",children:[s.jsx(S,{children:s.jsx(F,{className:"text-destructive text-sm",children:"Delete account"})}),s.jsxs(R,{className:"space-y-4",children:[s.jsxs("p",{className:"text-muted-foreground text-sm",children:["Permanently deletes ",a.name,", its applications, ingest tokens, alerts, and telemetry databases. This cannot be undone."]}),n.user.provider&&!n.session.recently_authenticated&&s.jsx(O,{label:"Confirm with Google",reauthenticateFor:"account",separated:!1}),s.jsx(M,{method:"delete",action:G(a.id),className:"grid gap-3",children:r=>{const{errors:u,processing:C}=r;return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"grid gap-1",children:[s.jsxs(N,{htmlFor:"account-deletion-confirmation",children:["Enter ",a.name," to confirm"]}),s.jsx(E,{id:"account-deletion-confirmation",name:"confirmation",autoComplete:"off"}),s.jsx(k,{messages:u.confirmation})]}),!n.user.provider&&s.jsxs("div",{className:"grid gap-1",children:[s.jsx(N,{htmlFor:"account-password-challenge",children:"Current password"}),s.jsx(E,{id:"account-password-challenge",type:"password",name:"password_challenge",autoComplete:"current-password"}),s.jsx(k,{messages:u.password_challenge})]}),s.jsx(x,{variant:"destructive",className:"w-fit",disabled:C||!!n.user.provider&&!n.session.recently_authenticated,children:"Delete account and telemetry"})]})}})]})]}),e[22]=a,e[23]=n,e[24]=t.ownership.can_delete_account,e[25]=h):h=e[25];let y;return e[26]!==m||e[27]!==h||e[28]!==i||e[29]!==l?(y=s.jsxs(q,{breadcrumbs:f,children:[j,s.jsxs("div",{className:"flex flex-1 flex-col gap-6 p-4 md:p-6",children:[g,i,l,m,h]})]}),e[26]=m,e[27]=h,e[28]=i,e[29]=l,e[30]=y):y=e[30],y}function V(t){return s.jsx("option",{value:t,children:t},t)}function W(t){return t!=="owner"}function Y(t){return s.jsx("span",{className:"font-mono text-xs",children:t.email})}function J(t){return t.name}function Q(t){return t.id}function X(t){return s.jsxs("span",{className:"flex justify-end gap-1",children:[s.jsx(x,{size:"sm",variant:"ghost",onClick:()=>p.post($(t.id)),children:"Resend"}),s.jsx(x,{size:"sm",variant:"ghost",className:"text-destructive",onClick:()=>p.delete(K(t.id)),children:"Withdraw"})]})}function Z(t){return s.jsx("span",{className:"text-muted-foreground text-xs",children:U(t.expires_at)})}function ee(t){return s.jsx(z,{variant:"outline",children:t.role})}function se(t){return s.jsx("span",{className:"font-mono text-xs",children:t.email})}function te(t){return t.id}function re(t){return s.jsx("option",{value:t,children:t},t)}function ne(t){return t!=="owner"}export{ve as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as F,r as D,j as s,L as w,J as O,e as S,t as T,ae as Q,c as L}from"./inertia-
|
|
1
|
+
import{u as F,r as D,j as s,L as w,J as O,e as S,t as T,ae as Q,c as L}from"./inertia-CUTKXjxg.js";import{S as _}from"./code-DVJtYP7h.js";import{C as R}from"./cursor-load-more-JfSVBn9C.js";import{D as q}from"./data-table-CwtPkw_i.js";import{E as z}from"./empty-state-CshhuRUU.js";import{F as B}from"./filter-bar-BMHf8xBb.js";import{u as K,E as $,P as A}from"./env-layout-Dkp_4NvM.js";import{u as H,P as I}from"./percentile-picker-_wllqYoJ.js";import{S as k}from"./sort-header-CqQQhaxg.js";import{S as J}from"./sparkline-cell-BwdBz0yv.js";import{a as U,S as C}from"./stat-IghK3WjD.js";import{B as W}from"./app-wordmark-DDNuuq5_.js";import{C as G,b as V,c as X,a as Y}from"./card-DiW-JhK3.js";import{u as Z,C as ee}from"./use-clipboard-D5i6e5kf.js";import{c as E,m as f}from"./format-B9SDkrWj.js";import{C as se,a as oe,D as re}from"./app-layout-DUk54qUM.js";import{C as te}from"./index-BpnfuXi-.js";import"./chart-hover-DMWx5-Rs.js";import"./badge-s7YDycYg.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./segmented-Bj70Htrs.js";import"./label-B32Ks8n7.js";import"./arrow-up-DYTCBENO.js";import"./series-chart-C1YrNlID.js";import"./chart-nsdZV0Dv.js";import"./checkbox-C2AqEZXX.js";const ae=1500;function ie(r){const o=L.c(20),{suggestion:a}=r,[,d]=Z(),[u,v]=D.useState(!1);let m;o[0]!==d||o[1]!==a.code?(m=()=>{d(a.code).then(g=>{g&&(v(!0),window.setTimeout(()=>v(!1),ae))})},o[0]=d,o[1]=a.code,o[2]=m):m=o[2];const y=m;let n;o[3]!==a.code?(n=s.jsx("pre",{className:"overflow-x-auto font-mono text-xs whitespace-pre-wrap",children:a.code}),o[3]=a.code,o[4]=n):n=o[4];let l;o[5]!==y?(l=g=>{g.stopPropagation(),y()},o[5]=y,o[6]=l):l=o[6];let c;o[7]!==u?(c=u?s.jsx(te,{className:"size-3 text-emerald-500"}):s.jsx(ee,{className:"size-3 opacity-60"}),o[7]=u,o[8]=c):c=o[8];let h;o[9]!==l||o[10]!==c?(h=s.jsxs(W,{type:"button",variant:"ghost",size:"sm",className:"h-6 shrink-0 gap-1 px-1.5 text-xs",onClick:l,children:[c,"Copy"]}),o[9]=l,o[10]=c,o[11]=h):h=o[11];let p;o[12]!==n||o[13]!==h?(p=s.jsxs("div",{className:"flex items-start justify-between gap-2",children:[n,h]}),o[12]=n,o[13]=h,o[14]=p):p=o[14];let t;o[15]!==a.explanation?(t=s.jsx("p",{className:"text-muted-foreground text-xs whitespace-normal",children:a.explanation}),o[15]=a.explanation,o[16]=t):t=o[16];let x;return o[17]!==p||o[18]!==t?(x=s.jsxs("div",{className:"border-warning/40 bg-muted/40 mt-2 space-y-2 rounded-lg border p-2",children:[p,t]}),o[17]=p,o[18]=t,o[19]=x):x=o[19],x}function Fe(r){const{environment:o,window:a,range:d}=F().props,{percentile:u}=H(),{label:v}=K(),[m,y]=D.useState(null),n=o.application_id,l=o.id,c=a==="custom"?{from:d?.from,to:d?.to}:{window:a},h=d?{from:d.from,to:d.to}:c,p=(e,i=r.q)=>Q(n,l,{...e?h:c,q:i||void 0,cursor:e,limit:r.pagination.limit,sort:r.sort,dir:r.dir}),t=r.summary.current,x=r.summary.previous,g=a==="custom"?"vs previous period":`vs previous ${v}`,M=r.n_plus_ones.filter(e=>e.suggestion).length,P=e=>{e.suggestion&&y(i=>i===e.group_hash?null:e.group_hash)},b=e=>S.visit(Q(n,l,{...c,q:r.q||void 0,sort:e,dir:r.sort===e&&r.dir==="desc"?"asc":"desc"}),{preserveState:!0}),j=e=>O(n,l,e,c),N=(e,i)=>i?.newTab?globalThis.window.open(j(e),"_blank"):S.visit(j(e));return s.jsxs($,{title:"Queries",children:[s.jsx(A,{title:"Queries",description:"Every SQL shape your app ran, grouped by normalized statement.",actions:s.jsx(I,{})}),s.jsxs(U,{children:[s.jsx(C,{label:"Queries",value:E(t.count),delta:{current:t.count,previous:x.count,goodDirection:"down"},deltaCaption:g}),s.jsx(C,{label:"N+1 groups",value:E(r.n_plus_ones.length),tone:r.n_plus_ones.length>0?"warning":void 0,hint:r.n_plus_ones.length>0?`${M} with a suggested fix`:void 0}),s.jsx(C,{label:"Avg",value:f(t.avg/1e3,2),delta:{current:t.avg,previous:x.avg,goodDirection:"down"},deltaCaption:g}),s.jsx(C,{label:"p95",value:f(t.p95/1e3,2),hint:`p99 ${f(t.p99/1e3,2)}`,delta:{current:t.p95,previous:x.p95,goodDirection:"down"},deltaCaption:g})]}),r.n_plus_ones.length>0&&s.jsxs(G,{className:"border-amber-500/40",children:[s.jsx(V,{children:s.jsx(X,{children:"N+1 queries detected"})}),s.jsx(Y,{children:s.jsx(q,{rows:r.n_plus_ones,rowKey:e=>e.group_hash,onRowClick:P,keyboardNav:{onOpen:(e,i)=>N(e.group_hash,i)},columns:[{key:"sql",header:"Query shape",grow:!0,cell:e=>s.jsxs(s.Fragment,{children:[s.jsx(w,{href:O(n,l,e.group_hash),children:s.jsx(_,{className:"hover:underline",children:e.sql})}),m===e.group_hash&&e.suggestion&&s.jsx(ie,{suggestion:e.suggestion})]})},{key:"fix",header:"Fix",cell:e=>e.suggestion?s.jsxs("button",{type:"button","aria-expanded":m===e.group_hash,"aria-label":`Suggested fix: ${e.suggestion.code}`,onClick:i=>{i.stopPropagation(),P(e)},className:"border-warning/50 text-warning hover:bg-warning/10 inline-flex items-center gap-0.5 rounded-md border py-0.5 pr-1.5 pl-0.5 font-mono text-[11px] uppercase",children:[m===e.group_hash?s.jsx(se,{className:"size-3"}):s.jsx(oe,{className:"size-3"}),"Fix"]}):null},{key:"src",hideOnMobile:!0,header:"Source",cell:e=>s.jsx("span",{className:"text-muted-foreground font-mono text-xs",children:e.source??""})},{key:"occ",header:"Executions affected",align:"right",cell:e=>e.occurrences},{key:"mx",hideOnMobile:!0,header:"Max repeats",align:"right",cell:e=>e.max_count}]})})]}),s.jsx(q,{rows:r.queries,rowKey:e=>e.group_hash,empty:s.jsx(z,{icon:re,title:"No queries in this window",description:"SQL queries executed by your app appear here as they're reported."}),hoverKey:e=>e.group_hash,keyboardNav:{onOpen:(e,i)=>N(e.group_hash,i)},columns:[{key:"sql",header:"Query",grow:!0,cell:e=>s.jsx(w,{href:j(e.group_hash),children:s.jsx(_,{className:"hover:underline",children:e.name})})},{key:"trend",hideOnMobile:!0,header:"Trend",cell:e=>s.jsx(J,{data:e.sparkline,hoverKey:e.group_hash})},{key:"n",header:s.jsx(k,{label:"Count",active:r.sort==="count",dir:r.dir==="asc"?"asc":"desc",onClick:()=>b("count")}),align:"right",cell:e=>E(e.count)},{key:"avg",hideOnMobile:!0,header:s.jsx(k,{label:"Avg",active:r.sort==="avg",dir:r.dir==="asc"?"asc":"desc",onClick:()=>b("avg")}),align:"right",cell:e=>f(e.avg,2)},{key:u,header:s.jsx(k,{label:u,active:r.sort===u,dir:r.dir==="asc"?"asc":"desc",onClick:()=>b(u)}),align:"right",cell:e=>s.jsx("span",{className:"font-semibold",children:f(e[u],2)})},{key:"max",hideOnMobile:!0,header:s.jsx(k,{label:"Max",active:r.sort==="max",dir:r.dir==="asc"?"asc":"desc",onClick:()=>b("max")}),align:"right",cell:e=>f(e.max,2)}]}),s.jsx("h2",{className:"text-sm font-semibold",children:"Slowest individual queries"}),s.jsx(B,{value:r.q,fields:[{key:"after",label:"After"},{key:"before",label:"Before"},{key:"user",label:"User"},{key:"tenant",label:"Tenant"},{key:"deploy",label:"Deploy"},{key:"source",label:"Source"},{key:"kind",label:"Execution kind",options:["request","job","scheduled_task","command"]},{key:"connection",label:"Connection"},{key:"role",label:"Role"},{key:"adapter",label:"Adapter"}],onChange:e=>S.visit(p(void 0,e),{only:["slowest","pagination","q"],preserveState:!0,reset:["slowest"]}),placeholder:"connection:primary role:reading source:app/models"}),s.jsx(q,{rows:r.slowest,rowKey:e=>e.id,keyboardNav:{onOpen:(e,i)=>N(e.group_hash,i)},columns:[{key:"sql",header:"SQL",grow:!0,cell:e=>s.jsx(w,{href:j(e.group_hash),children:s.jsx(_,{className:"hover:underline",children:e.sql})})},{key:"exe",hideOnMobile:!0,header:"In",cell:e=>e.execution_id?s.jsx(w,{className:"font-mono text-xs hover:underline",href:T(n,l,e.execution_id),children:e.execution_preview}):s.jsx("span",{className:"text-muted-foreground text-xs",children:"–"})},{key:"src",hideOnMobile:!0,header:"Source",cell:e=>s.jsx("span",{className:"text-muted-foreground font-mono text-xs",children:e.source??""})},{key:"d",header:"Duration",align:"right",cell:e=>f(e.duration,2)}]}),s.jsx(R,{meta:r.pagination,href:p,only:["slowest","pagination"]})]})}export{Fe as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as ee,u as ne,j as s,e as ie,_ as te,L as ae,t as re,r as ce,C as me}from"./inertia-
|
|
1
|
+
import{c as ee,u as ne,j as s,e as ie,_ as te,L as ae,t as re,r as ce,C as me}from"./inertia-CUTKXjxg.js";import{C as fe}from"./cursor-load-more-JfSVBn9C.js";import{D as de}from"./data-table-CwtPkw_i.js";import{E as he}from"./empty-state-CshhuRUU.js";import{p as Z,F as ue,s as se}from"./filter-bar-BMHf8xBb.js";import{P as ge,E as xe}from"./env-layout-Dkp_4NvM.js";import{S as pe,F as be}from"./app-layout-DUk54qUM.js";import{a as le,S as ve}from"./segmented-Bj70Htrs.js";import{L as ye}from"./status-badge-XYUN9gUA.js";import{c as oe,w as je}from"./format-B9SDkrWj.js";import"./app-wordmark-DDNuuq5_.js";import"./chart-hover-DMWx5-Rs.js";import"./badge-s7YDycYg.js";import"./use-live-V-slSdFJ.js";import"./live-dot-Bb1UYT9F.js";import"./index-n16aviHx.js";import"./index-BpnfuXi-.js";import"./label-B32Ks8n7.js";import"./checkbox-C2AqEZXX.js";const ke="",_e=160;function we(t){const e=ee.c(18),{message:a,highlight:i,tags:o}=t,[n,m]=ce.useState(!1);let d,c;e[0]!==a||e[1]!==n?(d=a.length>_e||a.includes(`
|
|
2
2
|
`),c=me("font-mono text-xs break-all whitespace-pre-wrap",d&&!n&&"line-clamp-3"),e[0]=a,e[1]=n,e[2]=d,e[3]=c):(d=e[2],c=e[3]);let f;e[4]!==i||e[5]!==a?(f=i?s.jsx(Se,{text:i}):a,e[4]=i,e[5]=a,e[6]=f):f=e[6];let h;e[7]!==o?(h=o.length>0&&s.jsxs("span",{className:"text-muted-foreground",children:[" [",o.join(", "),"]"]}),e[7]=o,e[8]=h):h=e[8];let u;e[9]!==c||e[10]!==f||e[11]!==h?(u=s.jsxs("span",{className:c,children:[f,h]}),e[9]=c,e[10]=f,e[11]=h,e[12]=u):u=e[12];const r=u;if(!d)return r;let g;e[13]===Symbol.for("react.memo_cache_sentinel")?(g=()=>m(qe),e[13]=g):g=e[13];const p=n?"Collapse":"Expand";let x;return e[14]!==r||e[15]!==n||e[16]!==p?(x=s.jsx("button",{type:"button",onClick:g,"aria-expanded":n,className:"block w-full cursor-pointer text-left",title:p,children:r}),e[14]=r,e[15]=n,e[16]=p,e[17]=x):x=e[17],x}function qe(t){return!t}function Se(t){const e=ee.c(4),{text:a}=t;let i;e[0]!==a?(i=a.split(ke).map(Le),e[0]=a,e[1]=i):i=e[1];let o;return e[2]!==i?(o=s.jsx(s.Fragment,{children:i}),e[2]=i,e[3]=o):o=e[3],o}function Le(t,e){return e%2===1?s.jsx("mark",{className:"fts-mark",children:t},e):s.jsx("span",{children:t},e)}function Qe(t){const e=ee.c(81),{environment:a,window:i,range:o}=ne().props,n=a.application_id,m=a.id;let d;e[0]!==o?.from||e[1]!==o?.to||e[2]!==i?(d=i==="custom"?{from:o?.from,to:o?.to}:{window:i},e[0]=o?.from,e[1]=o?.to,e[2]=i,e[3]=d):d=e[3];const c=d;let f;e[4]!==o||e[5]!==c?(f=o?{from:o.from,to:o.to}:c,e[4]=o,e[5]=c,e[6]=f):f=e[6];const h=f;let u;e[7]!==n||e[8]!==m||e[9]!==c?(u=l=>ie.visit(te(n,m,{...c,q:l||void 0}),{only:["logs","pagination","highlights","counts","q"],preserveState:!0,preserveScroll:!0,reset:["logs","highlights"]}),e[7]=n,e[8]=m,e[9]=c,e[10]=u):u=e[10];const r=u;let g;e[11]!==n||e[12]!==h||e[13]!==m||e[14]!==t.pagination.limit||e[15]!==t.q?(g=l=>te(n,m,{...h,q:t.q||void 0,cursor:l,limit:t.pagination.limit}),e[11]=n,e[12]=h,e[13]=m,e[14]=t.pagination.limit,e[15]=t.q,e[16]=g):g=e[16];const p=g;let x;e[17]!==t.q?(x=Z(t.q),e[17]=t.q,e[18]=x):x=e[18];const R=x.fields.level;let T;e[19]!==t.q||e[20]!==r?(T=l=>{const M=Z(t.q),Y={...M.fields};l?Y.level=l:delete Y.level,r(se({text:M.text,fields:Y}))},e[19]=t.q,e[20]=r,e[21]=T):T=e[21];const b=T;let A;e[22]===Symbol.for("react.memo_cache_sentinel")?(A=s.jsx(ge,{title:"Logs",description:"Rails.logger lines and Rails.event structured events, linked to the request or job that wrote them.",actions:s.jsx(pe,{page:"logs"})}),e[22]=A):A=e[22];const Q=!R;let v;e[23]!==b?(v=()=>b(void 0),e[23]=b,e[24]=v):v=e[24];let y;e[25]!==Q||e[26]!==v?(y=s.jsx(le,{active:Q,onClick:v,children:"All"}),e[25]=Q,e[26]=v,e[27]=y):y=e[27];let B;e[28]===Symbol.for("react.memo_cache_sentinel")?(B=["debug","info","warn","error","fatal","event"],e[28]=B):B=e[28];let j;e[29]!==R||e[30]!==t.counts||e[31]!==b?(j=B.map(l=>s.jsxs(le,{active:R===l,onClick:()=>b(l),className:"gap-1.5",children:[l,s.jsx("span",{className:"opacity-60",children:oe(t.counts[l]??0)})]},l)),e[29]=R,e[30]=t.counts,e[31]=b,e[32]=j):j=e[32];let k;e[33]!==j||e[34]!==y?(k=s.jsx("div",{className:"-mx-3 [scrollbar-width:none] overflow-x-auto px-3 md:mx-0 md:px-0 [&::-webkit-scrollbar]:hidden",children:s.jsxs(ve,{className:"w-max",children:[y,j]})}),e[33]=j,e[34]=y,e[35]=k):k=e[35];let D,O,$,I;e[36]===Symbol.for("react.memo_cache_sentinel")?(D={key:"after",label:"After"},O={key:"before",label:"Before"},$={key:"user",label:"User"},I={key:"deploy",label:"Deploy"},e[36]=D,e[37]=O,e[38]=$,e[39]=I):(D=e[36],O=e[37],$=e[38],I=e[39]);let K;e[40]===Symbol.for("react.memo_cache_sentinel")?(K={key:"level",label:"Level",options:["debug","info","warn","error","fatal","event","unknown"]},e[40]=K):K=e[40];let z;e[41]===Symbol.for("react.memo_cache_sentinel")?(z=[D,O,$,I,K,{key:"kind",label:"Execution kind",options:["request","job","scheduled_task","command"]},{key:"source",label:"Source"},{key:"tenant",label:"Tenant"}],e[41]=z):z=e[41];let _;e[42]!==t.q||e[43]!==r?(_=s.jsx(ue,{value:t.q,fields:z,onChange:r,placeholder:"level:error kind:job source:app/jobs/sync_job.rb:12"}),e[42]=t.q,e[43]=r,e[44]=_):_=e[44];let w;e[45]!==t.logs.length?(w=oe(t.logs.length),e[45]=t.logs.length,e[46]=w):w=e[46];const X=t.logs.length===1?"line":"lines";let q;e[47]!==w||e[48]!==X?(q=s.jsxs("span",{className:"font-mono tabular-nums",children:[w," ",X]}),e[47]=w,e[48]=X,e[49]=q):q=e[49];let H;e[50]===Symbol.for("react.memo_cache_sentinel")?(H=s.jsx("span",{children:"Full-text search: quotes for phrases, -word to exclude, prefixes match"}),e[50]=H):H=e[50];let S;e[51]!==q?(S=s.jsxs("div",{className:"text-muted-foreground flex flex-wrap items-baseline gap-x-3 gap-y-1 text-xs",children:[q,H]}),e[51]=q,e[52]=S):S=e[52];let U,V,W;e[53]===Symbol.for("react.memo_cache_sentinel")?(U=s.jsx(he,{icon:be,title:"No log lines match",signal:"caution",description:"Log lines are captured from your app's Rails logger."}),V={key:"when",header:"When",className:"w-40",cell:Ee},W={key:"lvl",header:"Level",cell:Ne},e[53]=U,e[54]=V,e[55]=W):(U=e[53],V=e[54],W=e[55]);let L;e[56]!==t.highlights?(L={key:"msg",header:"Message",grow:!0,className:"whitespace-normal",cell:l=>s.jsx(we,{message:l.message,highlight:t.highlights[l.id],tags:l.tags})},e[56]=t.highlights,e[57]=L):L=e[57];let N;e[58]!==n||e[59]!==m?(N={key:"in",hideOnMobile:!0,header:"In",cell:l=>l.execution_id?s.jsx(ae,{className:"font-mono text-xs hover:underline",href:re(n,m,l.execution_id),children:l.execution_preview}):null},e[58]=n,e[59]=m,e[60]=N):N=e[60];let E;e[61]!==t.q||e[62]!==r?(E={key:"t",hideOnMobile:!0,header:"Tenant",cell:l=>l.tenant?s.jsx("button",{className:"font-mono text-xs hover:underline",onClick:()=>{const M=Z(t.q);r(se({text:M.text,fields:{...M.fields,tenant:l.tenant}}))},children:l.tenant}):null},e[61]=t.q,e[62]=r,e[63]=E):E=e[63];let C;e[64]!==L||e[65]!==N||e[66]!==E?(C=[V,W,L,N,E],e[64]=L,e[65]=N,e[66]=E,e[67]=C):C=e[67];let P;e[68]!==t.logs||e[69]!==C?(P=s.jsx(de,{rows:t.logs,rowKey:Ce,empty:U,columns:C}),e[68]=t.logs,e[69]=C,e[70]=P):P=e[70];let G;e[71]===Symbol.for("react.memo_cache_sentinel")?(G=["logs","pagination","highlights"],e[71]=G):G=e[71];let F;e[72]!==p||e[73]!==t.pagination?(F=s.jsx(fe,{meta:t.pagination,href:p,only:G}),e[72]=p,e[73]=t.pagination,e[74]=F):F=e[74];let J;return e[75]!==k||e[76]!==_||e[77]!==S||e[78]!==P||e[79]!==F?(J=s.jsxs(xe,{title:"Logs",children:[A,k,_,S,P,F]}),e[75]=k,e[76]=_,e[77]=S,e[78]=P,e[79]=F,e[80]=J):J=e[80],J}function Ne(t){return s.jsx(ye,{level:t.level})}function Ee(t){return s.jsx("span",{className:"text-xs tabular-nums",children:je(t.occurred_at)})}function Ce(t){return t.id}export{Qe as default};
|