@perses-dev/tracing-gantt-chart-plugin 0.13.0-beta.0 → 0.13.0-beta.1

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.
Files changed (39) hide show
  1. package/__mf/js/{TracingGanttChart.a69ad65c.js → TracingGanttChart.b2e20301.js} +3 -3
  2. package/__mf/js/async/260.9bec2000.js +39 -0
  3. package/__mf/js/async/{729.b8d22843.js.LICENSE.txt → 260.9bec2000.js.LICENSE.txt} +17 -1
  4. package/__mf/js/async/568.9ba2f5f6.js +24 -0
  5. package/__mf/js/async/{366.0baba713.js.LICENSE.txt → 568.9ba2f5f6.js.LICENSE.txt} +0 -16
  6. package/__mf/js/async/785.187cf92a.js +7 -0
  7. package/__mf/js/async/{895.7c3edbda.js → 940.39b5cb1d.js} +1 -1
  8. package/__mf/js/async/__federation_expose_TracingGanttChart.bcd10502.js +1 -0
  9. package/__mf/js/{main.62d36e4e.js → main.6c69ae4f.js} +2 -2
  10. package/lib/PanelActions.d.ts +1 -1
  11. package/lib/PanelActions.d.ts.map +1 -1
  12. package/lib/PanelActions.js.map +1 -1
  13. package/lib/TracingGanttChart/DetailPane/Attributes.d.ts +4 -4
  14. package/lib/TracingGanttChart/DetailPane/Attributes.d.ts.map +1 -1
  15. package/lib/TracingGanttChart/DetailPane/Attributes.js.map +1 -1
  16. package/lib/TracingGanttChart/Search.js.map +1 -1
  17. package/lib/TracingGanttChart/TracingGanttChart.d.ts +1 -1
  18. package/lib/TracingGanttChart/TracingGanttChart.d.ts.map +1 -1
  19. package/lib/TracingGanttChart/TracingGanttChart.js.map +1 -1
  20. package/lib/TracingGanttChart/trace.d.ts +2 -1
  21. package/lib/TracingGanttChart/trace.d.ts.map +1 -1
  22. package/lib/TracingGanttChart/trace.js.map +1 -1
  23. package/lib/TracingGanttChart/utils.js +1 -1
  24. package/lib/TracingGanttChart/utils.js.map +1 -1
  25. package/lib/TracingGanttChartPanel.d.ts +1 -1
  26. package/lib/TracingGanttChartPanel.js.map +1 -1
  27. package/lib/cjs/TracingGanttChart/utils.js +43 -2
  28. package/lib/test/convert/jaeger.d.ts +1 -1
  29. package/lib/test/convert/jaeger.d.ts.map +1 -1
  30. package/lib/test/convert/jaeger.js.map +1 -1
  31. package/mf-manifest.json +13 -13
  32. package/mf-stats.json +13 -13
  33. package/package.json +4 -4
  34. package/__mf/js/async/366.0baba713.js +0 -24
  35. package/__mf/js/async/558.c4505dfb.js +0 -7
  36. package/__mf/js/async/729.b8d22843.js +0 -39
  37. package/__mf/js/async/__federation_expose_TracingGanttChart.2f3100da.js +0 -1
  38. /package/__mf/css/async/{558.85c2cbf6.css → 785.85c2cbf6.css} +0 -0
  39. /package/__mf/js/async/{558.c4505dfb.js.LICENSE.txt → 785.187cf92a.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self["chunk_TracingGanttChart "]=self["chunk_TracingGanttChart "]||[]).push([["989"],{68985(e,t,n){n.r(t),n.d(t,{TracingGanttChart:()=>e$});var s=n(62540),r=n(87836),i=n(74628),a=n(70451),l=n(315),o=n(56599),d=n(77308),u=n(74513),c=n(92959);let x=new c.A({hue:{min:20,max:360}}),p=new c.A({hue:{min:0,max:20}}),m={},h="2rem",f=e=>{var t;return(null==(t=e.status)?void 0:t.code)===u.CY};function v(e,t,n,s){return function(e,t,n,s){let r=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if("categorical"===n){let n=t.echartsTheme.color,i=[e.palette.error.light,e.palette.error.main,e.palette.error.dark],a=r?i:n;if(0===a.length)return console.warn("getConsistentCategoricalColor() called with empty color palette, fallback to #000"),"#000";let l=0;for(let e=0;e<s.length;e++)l=s.charCodeAt(e)+((l<<5)-l);return a[Math.abs(l)%a.length]??"#000"}{let e,t;return(t=m[e=`${s}_____${r}`])||(t=function(e,t){let[n,s,r]=t?p.hsl(e):x.hsl(e),i=`${(100*s).toFixed(0)}%`,a=`${(100*r).toFixed(0)}%`;return`hsla(${n.toFixed(2)},${i},${a},0.9)`}(s,r),m[e]=t),t}}(e,t,n,s.resource.serviceName??"",f(s))}function j(e){return e<1?`${Math.round(1e3*e)}μs`:e<1e3?`${+e.toFixed(2)}ms`:`${+(e/1e3).toFixed(2)}s`}function g(e){let{trace:t,viewport:n}=e,r=n.endTimeUnixMs-n.startTimeUnixMs,i=n.startTimeUnixMs-t.startTimeUnixMs;return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(k,{style:{left:"0%",borderWidth:0},children:j(i+0*r)}),(0,s.jsx)(k,{style:{left:"25%"},children:j(i+.25*r)}),(0,s.jsx)(k,{style:{left:"50%"},children:j(i+.5*r)}),(0,s.jsx)(k,{style:{left:"75%"},children:j(i+.75*r)}),(0,s.jsx)(k,{style:{left:"100%"},children:(0,s.jsx)("span",{style:{position:"absolute",right:".75rem"},children:j(i+ +r)})})]})}function b(){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(k,{style:{left:"25%"}}),(0,s.jsx)(k,{style:{left:"50%"}}),(0,s.jsx)(k,{style:{left:"75%"}})]})}let k=(0,d.A)(i.A)(e=>{let{theme:t}=e;return{position:"absolute",height:"100%",borderLeft:`1px solid ${t.palette.divider}`,padding:".25rem"}});var M=n(85180),T=n(47414),y=n(40224);function I(e,t){for(let n of e)!1!==t(n)&&I(n.childSpans,t)}function w(e){return{timeUnixMs:1e-6*parseInt(e.timeUnixNano),name:e.name,attributes:e.attributes??[]}}function A(e){return{traceId:e.traceId,spanId:e.spanId,attributes:e.attributes??[]}}function S(e){var t,n;let{options:l,trace:d,viewport:u,setViewport:c}=e,x=(0,o.A)(),p=(0,r.useChartsTheme)(),{width:m,ref:h}=(0,M.default)(),f=(0,a.useRef)(null),[j,g]=(0,a.useState)({type:"none"}),k=d.endTimeUnixMs-d.startTimeUnixMs,y=(u.startTimeUnixMs-d.startTimeUnixMs)/k,w=(d.endTimeUnixMs-u.endTimeUnixMs)/k,A=(0,a.useCallback)(e=>{var t,n;return v(x,p,null==(n=l.visual)||null==(t=n.palette)?void 0:t.mode,e)},[x,p,null==(n=l.visual)||null==(t=n.palette)?void 0:t.mode]);(0,a.useEffect)(()=>{if(!f.current||!m)return;let e=f.current.getContext("2d");if(e){let t,n,s,r,i;n=Math.round(Math.min(Math.max(60/(t=d.spanById.size),1),7)),s=d.endTimeUnixMs-d.startTimeUnixMs,r=60/t,i=0,I(d.rootSpans,t=>{let a=t.endTimeUnixMs-t.startTimeUnixMs,l=(t.startTimeUnixMs-d.startTimeUnixMs)/s;e.fillStyle=A(t),e.beginPath(),e.rect(Math.round(l*m),Math.round(i),Math.max(2,Math.round(a/s*m)),n),e.fill(),i+=r})}},[m,60,d,A]);let S=e=>{if(!f.current||!m)return 0;let t=e.clientX-f.current.getBoundingClientRect().left;return d.startTimeUnixMs+t/m*k},L=(0,T.useEvent)(e=>{switch(e.preventDefault(),j.type){case"none":return;case"resize":{let t,n,s=j.fixedPoint,r=S(e);s<r?(t=s,n=r):(t=r,n=s),c({startTimeUnixMs:Math.max(t,d.startTimeUnixMs),endTimeUnixMs:Math.min(n,d.endTimeUnixMs)});return}case"drag":{let{start:t,end:n}=j,s=S(e);s-t<d.startTimeUnixMs&&(s=d.startTimeUnixMs+t),s+n>d.endTimeUnixMs&&(s=d.endTimeUnixMs-n),c({startTimeUnixMs:s-t,endTimeUnixMs:s+n});return}}}),$=(0,T.useEvent)(e=>{e.preventDefault(),g({type:"none"}),u.startTimeUnixMs===u.endTimeUnixMs&&c({startTimeUnixMs:d.startTimeUnixMs,endTimeUnixMs:d.endTimeUnixMs})});return(0,a.useEffect)(()=>{function e(){window.removeEventListener("mousemove",L),window.removeEventListener("mouseup",$),document.body.style.cursor="inherit"}return"none"===j.type?e():(window.addEventListener("mousemove",L),window.addEventListener("mouseup",$),document.body.style.cursor="resize"===j.type?"col-resize":"move"),e},[j,L,$]),(0,s.jsxs)(i.A,{ref:h,sx:{position:"relative",height:60},onMouseDown:e=>{if(e.preventDefault(),!(e.target instanceof HTMLElement))return;let t=u.startTimeUnixMs===d.startTimeUnixMs&&u.endTimeUnixMs===d.endTimeUnixMs,n=e.target.dataset.elem,s=S(e);"resizerLeft"===n?g({type:"resize",fixedPoint:u.endTimeUnixMs}):"resizerRight"===n?g({type:"resize",fixedPoint:u.startTimeUnixMs}):"cutoffBox"===n||t?(g({type:"resize",fixedPoint:s}),c({startTimeUnixMs:s,endTimeUnixMs:s})):g({type:"drag",start:s-u.startTimeUnixMs,end:u.endTimeUnixMs-s})},children:[(0,s.jsx)("canvas",{ref:f,width:m,height:60,style:{position:"absolute"}}),(0,s.jsx)(b,{}),(0,s.jsx)(U,{"data-elem":"cutoffBox",style:{left:0,width:`${100*y}%`}}),(0,s.jsx)(C,{"data-elem":"resizerLeft",style:{left:`${100*y}%`}}),(0,s.jsx)(C,{"data-elem":"resizerRight",style:{right:`${100*w}%`}}),(0,s.jsx)(U,{"data-elem":"cutoffBox",style:{right:0,width:`${100*w}%`}})]})}let U=(0,d.A)(i.A)({position:"absolute",height:"100%",backgroundColor:"rgba(225, 225, 225, .5)"}),C=(0,d.A)(i.A)(e=>{let{theme:t}=e;return{position:"absolute",height:"100%",backgroundColor:t.palette.divider,width:"2px",cursor:"col-resize","&:before":{position:"absolute",width:"8px",left:"-3px",top:0,bottom:0,content:'" "',zIndex:1}}});function L(e){let{options:t,trace:n,viewport:r,setViewport:a}=e,l=(0,o.A)();return(0,s.jsxs)(i.A,{sx:{border:`1px solid ${l.palette.divider}`,borderRadius:`${l.shape.borderRadius}px`},children:[(0,s.jsx)(i.A,{sx:{position:"relative",height:h,borderBottom:`1px solid ${l.palette.divider}`},children:(0,s.jsx)(g,{trace:n,viewport:{startTimeUnixMs:n.startTimeUnixMs,endTimeUnixMs:n.endTimeUnixMs}})}),(0,s.jsx)(S,{options:t,trace:n,viewport:r,setViewport:a})]})}var $=n(47095),z=n(88091),E=n(87034),R=n(33868),V=n(47601),F=n(7800),P=n(76477),B=n(6227),D=n(57438),N=n(79956),O=n(14045);function W(e){let{customLinks:t,trace:n,span:r}=e;return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(P.A,{children:[(0,s.jsx)(H,{name:"span ID",value:r.spanId}),(0,s.jsx)(H,{name:"start",value:j(r.startTimeUnixMs-n.startTimeUnixMs)}),(0,s.jsx)(H,{name:"duration",value:j(r.endTimeUnixMs-r.startTimeUnixMs)}),r.kind&&(0,s.jsx)(H,{name:"kind",value:r.kind}),r.status.code&&(0,s.jsx)(H,{name:"status code",value:r.status.code}),r.status.message&&(0,s.jsx)(H,{name:"status message",value:r.status.message})]}),r.attributes.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(B.A,{}),(0,s.jsx)(G,{customLinks:t,attributes:r.attributes.toSorted((e,t)=>e.key.localeCompare(t.key))})]}),r.resource.attributes.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(B.A,{}),(0,s.jsx)(G,{customLinks:t,attributes:r.resource.attributes.toSorted((e,t)=>e.key.localeCompare(t.key))})]}),(r.scope.name||r.scope.version||r.scope.attributes&&r.scope.attributes.length>0)&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(B.A,{}),(0,s.jsxs)(P.A,{children:[r.scope.name&&(0,s.jsx)(H,{name:"scope name",value:r.scope.name}),r.scope.version&&(0,s.jsx)(H,{name:"scope version",value:r.scope.version}),(0,s.jsx)(_,{customLinks:t,attributes:(r.scope.attributes??[]).toSorted((e,t)=>e.key.localeCompare(t.key))})]})]})]})}function G(e){let{customLinks:t,attributes:n}=e;return(0,s.jsx)(P.A,{children:(0,s.jsx)(_,{customLinks:t,attributes:n})})}function _(e){let{customLinks:t,attributes:n}=e,r=(0,T.useAllVariableValues)(),i=(0,a.useMemo)(()=>Object.fromEntries(((null==t?void 0:t.links.attributes)??[]).map(e=>[e.name,e.link])),[t]),l=(0,a.useMemo)(()=>{let e=n.map(e=>[e.key.replaceAll(".","_"),Y(e.value)]);return{...null==t?void 0:t.variables,...Object.fromEntries(e)}},[t,n]);return(0,s.jsx)(s.Fragment,{children:n.map((e,t)=>(0,s.jsx)(H,{name:e.key,value:Y(e.value),link:i[e.key]?(0,T.replaceVariablesInString)(i[e.key],r,l):void 0},t))})}function H(e){let{name:t,value:n,link:r}=e,{RouterComponent:i}=(0,T.useRouterContext)(),a=i&&r?(0,s.jsx)(D.A,{component:i,to:r,children:n}):n;return(0,s.jsx)(N.Ay,{sx:{px:1,py:0},children:(0,s.jsx)(O.A,{primary:t,secondary:a,slotProps:{primary:{variant:"h5"},secondary:{variant:"body1",sx:{wordBreak:"break-word"}}}})})}function Y(e){if("stringValue"in e)return e.stringValue||"<empty string>";if("intValue"in e)return e.intValue;if("doubleValue"in e)return String(e.doubleValue);if("boolValue"in e)return String(e.boolValue);if("arrayValue"in e){let t=e.arrayValue.values;return t&&t.length>0?t.map(Y).join(", "):"<empty array>"}return"<unknown type>"}var J=n(99415),Q=n(39098),X=n(38990),q=n(87275);function K(e){let{customLinks:t,trace:n,span:r}=e;return(0,s.jsx)(s.Fragment,{children:r.events.sort((e,t)=>e.timeUnixMs-t.timeUnixMs).map((e,r)=>(0,s.jsxs)(a.Fragment,{children:[r>0&&(0,s.jsx)(B.A,{}),(0,s.jsx)(Z,{customLinks:t,trace:n,event:e})]},r))})}function Z(e){let{customLinks:t,trace:n,event:r}=e,i=r.timeUnixMs-n.startTimeUnixMs,[l,o]=(0,a.useState)(!1);return(0,s.jsxs)(P.A,{children:[(0,s.jsxs)(J.A,{onClick:()=>{o(!l)},sx:{px:1},children:[(0,s.jsx)(O.A,{primary:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("strong",{children:[j(i),":"]})," ",r.name]}),slotProps:{primary:{noWrap:!0}}}),l?(0,s.jsx)(X.default,{}):(0,s.jsx)(q.default,{})]}),(0,s.jsx)(Q.A,{in:l,timeout:"auto",unmountOnExit:!0,children:(0,s.jsxs)(P.A,{sx:{px:1},children:[(0,s.jsx)(H,{name:"name",value:r.name}),(0,s.jsx)(H,{name:"time",value:j(i)}),(0,s.jsx)(_,{customLinks:t,attributes:r.attributes})]})})]})}function ee(e){let{customLinks:t,span:n}=e;return(0,s.jsx)(s.Fragment,{children:n.links.map((e,n)=>(0,s.jsxs)(a.Fragment,{children:[n>0&&(0,s.jsx)(B.A,{}),(0,s.jsx)(et,{link:e,customLinks:t})]},n))})}function et(e){let{customLinks:t,link:n}=e,r=(0,T.useAllVariableValues)(),i=(null==t?void 0:t.links.trace)?(0,T.replaceVariablesInString)(t.links.trace,r,{...null==t?void 0:t.variables,traceId:n.traceId}):void 0,a=(null==t?void 0:t.links.span)?(0,T.replaceVariablesInString)(t.links.span,r,{...null==t?void 0:t.variables,traceId:n.traceId,spanId:n.spanId}):void 0;return(0,s.jsxs)(P.A,{children:[(0,s.jsx)(H,{name:"trace ID",value:n.traceId,link:i}),(0,s.jsx)(H,{name:"span ID",value:n.spanId,link:a}),(0,s.jsx)(_,{customLinks:t,attributes:n.attributes})]})}function en(e){let{customLinks:t,trace:n,span:r,onCloseBtnClick:l}=e,[o,d]=(0,a.useState)("attributes");return"events"===o&&0===r.events.length&&d("attributes"),"links"===o&&0===r.links.length&&d("attributes"),(0,s.jsxs)(i.A,{children:[(0,s.jsx)($.A,{sx:{float:"right"},onClick:l,children:(0,s.jsx)(F.default,{})}),(0,s.jsx)(z.A,{sx:{wordBreak:"break-word"},children:r.resource.serviceName}),(0,s.jsx)(z.A,{variant:"h2",sx:{wordBreak:"break-word"},children:r.name}),(0,s.jsx)(i.A,{sx:{borderBottom:1,borderColor:"divider"},children:(0,s.jsxs)(E.A,{value:o,onChange:(e,t)=>d(t),variant:"scrollable",children:[(0,s.jsx)(R.A,{sx:{p:0},value:"attributes",label:"Attributes"}),r.events.length>0&&(0,s.jsx)(R.A,{value:"events",label:"Events",icon:(0,s.jsx)(V.A,{label:r.events.length}),iconPosition:"end",sx:{minHeight:48,height:48}}),r.links.length>0&&(0,s.jsx)(R.A,{value:"links",label:"Links",icon:(0,s.jsx)(V.A,{label:r.links.length}),iconPosition:"end",sx:{minHeight:48,height:48}})]})}),"attributes"===o&&(0,s.jsx)(W,{customLinks:t,trace:n,span:r}),"events"===o&&(0,s.jsx)(K,{customLinks:t,trace:n,span:r}),"links"===o&&(0,s.jsx)(ee,{customLinks:t,span:r})]})}var es=n(74649);let er=(0,a.createContext)(void 0);function ei(e){let{children:t}=e,[n,r]=(0,a.useState)(new Set),[i,l]=(0,a.useState)([]),[o,d]=(0,a.useState)(void 0);return(0,s.jsx)(er.Provider,{value:{collapsedSpans:n,setCollapsedSpans:r,visibleSpans:i,setVisibleSpans:l,hoveredParent:o,setHoveredParent:d},children:t})}function ea(){let e=(0,a.useContext)(er);if(void 0===e)throw Error("No GanttTableContext found. Did you forget a Provider?");return e}var el=n(94574),eo=n(11061);function ed(e){let{span:t}=e,{collapsedSpans:n,setCollapsedSpans:r,visibleSpans:i,hoveredParent:l,setHoveredParent:d}=ea(),u=(0,o.A)(),c=(0,a.useCallback)(e=>{e.stopPropagation(),r(e=>{let n=new Set(e);return n.has(t.spanId)?n.delete(t.spanId):n.add(t.spanId),n})},[t,r]),x=(0,a.useCallback)(()=>{d(t.spanId)},[t,d]),p=[t],m=t.parentSpan;for(;m;)p.unshift(m),m=m.parentSpan;return(0,s.jsx)(s.Fragment,{children:p.map((e,t)=>(0,s.jsx)(eu,{style:{width:t===p.length-1||0===i.length||i.includes(e.spanId)?24:8,borderLeft:`${l===(e.parentSpanId??"")?3:1}px solid ${u.palette.divider}`},onMouseEnter:()=>d(e.parentSpanId??""),onMouseLeave:()=>d(void 0),children:t===p.length-1&&e.childSpans.length>0&&(n.has(e.spanId)?(0,s.jsx)(eo.default,{titleAccess:"expand",onClick:c,onMouseEnter:x}):(0,s.jsx)(q.default,{titleAccess:"collapse",onClick:c,onMouseEnter:x}))},e.spanId))})}let eu=(0,d.A)("div")({display:"flex",height:"100%",alignItems:"center",justifyContent:"flex-end",flexShrink:0,transition:"width 1s"});var ec=n(30145),ex=n(97653),ep=n(65241);function em(e){let{customLinks:t,span:n}=e,i=(0,T.useAllVariableValues)(),{RouterComponent:l}=(0,T.useRouterContext)(),[o,d]=(0,a.useState)(null),u=!!o;if(!l||!t.links.span)return null;if(1===n.links.length&&n.links[0]){let e=n.links[0];return(0,s.jsx)(r.InfoTooltip,{description:"open linked span",children:(0,s.jsx)($.A,{size:"small",component:l,to:(0,T.replaceVariablesInString)(t.links.span,i,{...t.variables,traceId:e.traceId,spanId:e.spanId}),children:(0,s.jsx)(ep.default,{fontSize:"inherit"})})})}let c=e=>{e.stopPropagation(),d(null)};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.InfoTooltip,{description:`${n.links.length} linked spans`,children:(0,s.jsx)($.A,{"aria-label":"span links","aria-haspopup":"true","aria-expanded":u?"true":void 0,size:"small",onClick:e=>{e.stopPropagation(),d(e.currentTarget)},children:(0,s.jsx)(ep.default,{fontSize:"inherit"})})}),(0,s.jsx)(ec.A,{anchorEl:o,open:u,onClose:c,children:n.links.map(e=>(0,s.jsxs)(ex.A,{component:l,onClick:c,to:(0,T.replaceVariablesInString)(t.links.span,i,{...t.variables,traceId:e.traceId,spanId:e.spanId}),children:["Open linked span ",e.spanId]},e.spanId))})]})}function eh(e){let{customLinks:t,span:n,nameColumnWidth:r}=e;return(0,s.jsxs)(l.A,{direction:"row",sx:{alignItems:"center"},style:{width:`${100*r}%`},children:[(0,s.jsx)(ed,{span:n}),f(n)&&(0,s.jsx)(el.default,{titleAccess:"error",color:"error",sx:{marginRight:"5px"}}),(0,s.jsxs)(i.A,{sx:{whiteSpace:"nowrap",overflow:"hidden"},children:[(0,s.jsxs)("strong",{children:[n.resource.serviceName,":"]})," ",n.name]}),t&&t.links.span&&n.links.length>0&&(0,s.jsx)(i.A,{sx:{marginLeft:"auto",px:1},children:(0,s.jsx)(em,{customLinks:t,span:n})})]})}function ef(e){var t,n;let{options:a,span:l,viewport:d}=e,u=(0,o.A)(),c=(0,r.useChartsTheme)(),x=l.endTimeUnixMs-l.startTimeUnixMs,p=d.endTimeUnixMs-d.startTimeUnixMs,m=x/p,h=(l.startTimeUnixMs-d.startTimeUnixMs)/p;return(0,s.jsxs)(i.A,{sx:{position:"relative",height:"100%",flexGrow:1,overflow:"hidden"},children:[(0,s.jsx)(b,{}),(0,s.jsx)(i.A,{"data-testid":"span-duration-bar",sx:{position:"absolute",top:0,bottom:0,margin:"auto",minWidth:"2px",height:"8px",borderRadius:u.shape.borderRadius},style:{left:`${100*h}%`,width:`${100*m}%`,backgroundColor:v(u,c,null==(n=a.visual)||null==(t=n.palette)?void 0:t.mode,l)}}),(0,s.jsx)(i.A,{sx:{position:"absolute",top:"50%",transform:"translateY(-50%)",padding:"0 8px",color:u.palette.grey[700],fontSize:".7rem"},style:h+m<.95?{left:`${(h+m)*100}%`}:{left:`${100*h}%`,transform:"translateY(-50%) translateX(-100%)"},children:j(x)})]})}let ev=(0,a.memo)(function(e){let t,{options:n,customLinks:r,span:i,viewport:a,selected:l,matched:d,focused:u,nameColumnWidth:c,divider:x,onClick:p}=e,m=(0,o.A)();return l?t=m.palette.action.focus:u?t=m.palette.action.selected:d&&(t=m.palette.action.hover),(0,s.jsxs)(ej,{sx:{backgroundColor:t,"&:hover":t?{backgroundColor:t}:void 0},direction:"row",onClick:()=>{var e;(null==(e=document.getSelection())?void 0:e.type)!=="Range"&&p(i)},children:[(0,s.jsx)(eh,{customLinks:r,span:i,nameColumnWidth:c}),x,(0,s.jsx)(ef,{options:n,span:i,viewport:a})]})}),ej=(0,d.A)(l.A)(e=>{let{theme:t}=e;return{height:h,"&:hover":{backgroundColor:t.palette.action.hover,borderTop:`1px solid ${t.palette.divider}`,borderBottom:`1px solid ${t.palette.divider}`}}});function eg(e){let{trace:t,viewport:n,nameColumnWidth:r,divider:a}=e,d=(0,o.A)();return(0,s.jsxs)(l.A,{direction:"row",alignItems:"center",sx:{height:h,fontSize:"0.9rem",borderBottom:`1px solid ${d.palette.divider}`},children:[(0,s.jsx)(i.A,{style:{width:`${100*r}%`},children:(0,s.jsx)("span",{style:{padding:".25rem"},children:"Service & Operation"})}),a,(0,s.jsx)(i.A,{sx:{position:"relative",height:"100%",flexGrow:1},children:(0,s.jsx)(g,{trace:t,viewport:n})})]})}function eb(e){let{parentRef:t,spacing:n=0,onMove:r}=e,[i,l]=(0,a.useState)(!1),o=(0,T.useEvent)(e=>{if(!t.current)return;let s=t.current.getBoundingClientRect(),i=(e.clientX-s.left+n)/s.width;.05<=i&&i<=.95&&r(i)}),d=(0,T.useEvent)(()=>{l(!1)});return(0,a.useEffect)(()=>{function e(){window.removeEventListener("mousemove",o),window.removeEventListener("mouseup",d),document.body.style.cursor="inherit"}return i?(window.addEventListener("mousemove",o),window.addEventListener("mouseup",d),document.body.style.cursor="col-resize"):e(),e},[i,o,d]),(0,s.jsx)(ek,{onMouseDown:e=>{e.preventDefault(),l(!0)},onClick:e=>e.stopPropagation()})}let ek=(0,d.A)(i.A)(e=>{let{theme:t}=e;return{position:"relative",width:"1px",minWidth:"1px",height:"100%",backgroundColor:t.palette.divider,cursor:"col-resize","&:before":{position:"absolute",width:"7px",left:"-3px",top:0,bottom:0,content:'" "',zIndex:1}}});function eM(e){let{options:t,customLinks:n,trace:r,viewport:l,selectedSpan:d,onSpanClick:u,matchingSpanIds:c,focusedSpanId:x}=e,{collapsedSpans:p,setCollapsedSpans:m,setVisibleSpans:h}=ea(),[f,v]=(0,a.useState)(.25),j=(0,a.useRef)(null),g=(0,a.useRef)(null),b=(0,o.A)(),k=(0,a.useMemo)(()=>{let e=[];return I(r.rootSpans,t=>{if(e.push(t),p.has(t.spanId))return!1}),e},[r.rootSpans,p]),M=(0,a.useMemo)(()=>new Set(c??[]),[c]);(0,a.useEffect)(()=>{if(!x)return;let e=r.spanById.get(x);if(!e)return;let t=new Set,n=e.parentSpan;for(;n;)t.add(n.spanId),n=n.parentSpan;t.size>0&&m(e=>{let n=new Set(e),s=!1;for(let e of t)n.delete(e)&&(s=!0);return s?n:e})},[x,r.spanById,m]),(0,a.useEffect)(()=>{if(!x||!g.current)return;let e=k.findIndex(e=>e.spanId===x);e>=0&&g.current.scrollToIndex({index:e,align:"center"})},[x,k]);let T=(0,a.useMemo)(()=>{if(!d)return 0;let e=k.findIndex(e=>e.spanId===d.spanId);return e>=0?e:0},[k,d]),y=(0,s.jsx)(eb,{parentRef:j,onMove:v});return(0,s.jsxs)(i.A,{ref:j,sx:{display:"flex",flexDirection:"column",flexGrow:1,border:`1px solid ${b.palette.divider}`,borderRadius:`${b.shape.borderRadius}px`},children:[(0,s.jsx)(eg,{trace:r,viewport:l,nameColumnWidth:f,divider:y}),(0,s.jsx)(es.aY,{ref:g,data:k,initialTopMostItemIndex:T,itemContent:(e,r)=>(0,s.jsx)(ev,{options:t,customLinks:n,span:r,viewport:l,selected:r===d,matched:M.has(r.spanId),focused:r.spanId===x,nameColumnWidth:f,divider:y,onClick:u}),rangeChanged:function(e){let{startIndex:t,endIndex:n}=e,s=[];for(let e=t;e<=n;e++)s.push(k[e].spanId);h(s)}})]})}var eT=n(98599),ey=n(93648),eI=n(2582);function ew(e){let{search:t}=e,{searchQuery:n,setSearchQuery:r,matchingSpanIds:i,focusedMatchIndex:a,setFocusedMatchIndex:o}=t,d=n.length>0,u=i.length,c=u>0;function x(){c&&o((a-1+u)%u)}function p(){c&&o((a+1)%u)}return(0,s.jsxs)(l.A,{direction:"row",sx:{alignItems:"center",gap:.5,minWidth:300},children:[(0,s.jsx)(ey.A,{size:"small",placeholder:"Search spans...",value:n,onChange:e=>r(e.target.value),onKeyDown:function(e){"Enter"===e.key&&(e.preventDefault(),e.shiftKey?x():p())},slotProps:{input:{endAdornment:(0,s.jsx)(eI.A,{position:"end",sx:{visibility:d?"visible":"hidden",whiteSpace:"nowrap"},children:c?`${a+1}/${u}`:"0/0"})}},sx:{minWidth:200}}),(0,s.jsx)($.A,{size:"small",disabled:!c,"aria-label":"Previous match",onClick:x,children:(0,s.jsx)(X.default,{})}),(0,s.jsx)($.A,{size:"small",disabled:!c,"aria-label":"Next match",onClick:p,children:(0,s.jsx)(q.default,{})}),(0,s.jsx)($.A,{size:"small",disabled:!d,"aria-label":"Clear search",onClick:()=>r(""),children:(0,s.jsx)(F.default,{})})]})}let eA={year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",fractionalSecondDigits:3,timeZoneName:"short"};function eS(e){let{trace:t,search:n}=e,{dateFormatOptionsWithUserTimeZone:i}=(0,r.useTimeZone)(),o=(0,a.useMemo)(()=>{let e=i(eA);return new Intl.DateTimeFormat(void 0,e)},[i]),[d,u]=(0,a.useState)(!1),c=t.rootSpans[0];return c?(0,s.jsxs)(l.A,{direction:"column",sx:{gap:1},children:[(0,s.jsxs)(l.A,{direction:"row",sx:{justifyContent:"space-between"},children:[(0,s.jsxs)(l.A,{direction:"row",sx:{gap:1,alignItems:"center"},children:[(0,s.jsxs)(z.A,{variant:"h3",children:[c.resource.serviceName,": ",c.name," (",j(t.endTimeUnixMs-t.startTimeUnixMs),")"]}),(0,s.jsx)($.A,{size:"small",onClick:()=>u(e=>!e),"aria-label":"Toggle search",children:(0,s.jsx)(eT.default,{fontSize:"small"})})]}),(0,s.jsxs)(z.A,{variant:"h4",children:[(0,s.jsxs)(z.A,{component:"span",sx:{px:1},children:[(0,s.jsx)("strong",{children:"Start:"})," ",o.format(t.startTimeUnixMs)]}),(0,s.jsxs)(z.A,{component:"span",sx:{px:1},children:[(0,s.jsx)("strong",{children:"Trace ID:"})," ",c.traceId]})]})]}),d&&(0,s.jsx)(ew,{search:n})]}):(0,s.jsx)(z.A,{children:"Trace contains no spans."})}function eU(e){let{options:t,customLinks:n,trace:r}=e,o=(0,a.useMemo)(()=>{try{return function(e){let t=new Map,n=[],s=0,r=0;for(let n of e.resourceSpans){let e=function(e){let t="unknown";for(let n of(null==e?void 0:e.attributes)??[])if("service.name"===n.key&&"stringValue"in n.value){t=n.value.stringValue;break}return{serviceName:t,attributes:(null==e?void 0:e.attributes)??[]}}(n.resource);for(let a of n.scopeSpans){let n=a.scope??{};for(let l of a.spans){var i;let a={resource:e,scope:n,childSpans:[],...{traceId:(i=l).traceId,spanId:i.spanId,parentSpanId:i.parentSpanId,name:i.name,kind:i.kind,startTimeUnixMs:1e-6*parseInt(i.startTimeUnixNano),endTimeUnixMs:1e-6*parseInt(i.endTimeUnixNano),attributes:i.attributes??[],events:(i.events??[]).map(w),links:(i.links??[]).map(A),status:i.status??{}}};t.set(l.spanId,a),(0===s||a.startTimeUnixMs<s)&&(s=a.startTimeUnixMs),(0===r||a.endTimeUnixMs>r)&&(r=a.endTimeUnixMs)}}}for(let[,e]of t){if(!e.parentSpanId){n.push(e);continue}let s=t.get(e.parentSpanId);if(!s){console.trace(`span ${e.spanId} has parent ${e.parentSpanId} which has not been received yet`),n.push(e);continue}e.parentSpan=s;let r=(0,y.sortedIndexBy)(s.childSpans,e,e=>e.startTimeUnixMs);s.childSpans.splice(r,0,e)}return{trace:e,rootSpans:n,spanById:t,startTimeUnixMs:s,endTimeUnixMs:r}}(r)}catch(e){throw Error(`Error: unable to parse trace: ${e}`)}},[r]),[d,u]=(0,a.useState)({startTimeUnixMs:o.startTimeUnixMs,endTimeUnixMs:o.endTimeUnixMs}),[c,x]=(0,a.useState)(()=>t.selectedSpanId?o.spanById.get(t.selectedSpanId):void 0),p=function(e){let[t,n]=(0,a.useState)(""),[s,r]=(0,a.useState)(0),i=(0,a.useMemo)(()=>{if(0===t.length)return[];let n=t.toLowerCase(),s=[];return I(e.rootSpans,e=>{var t;let r;r=e=>e.key.toLowerCase().includes(n)||Y(e.value).toLowerCase().includes(n),((null==(t=e.resource.serviceName)?void 0:t.toLowerCase().includes(n))||e.name.toLowerCase().includes(n)||e.spanId.toLowerCase().includes(n)||e.attributes.some(r)||e.resource.attributes.some(r))&&s.push(e.spanId)}),s},[t,e.rootSpans]);return{searchQuery:t,setSearchQuery:(0,a.useCallback)(e=>{n(e),r(0)},[]),matchingSpanIds:i,focusedMatchIndex:s,setFocusedMatchIndex:r}}(o),m=(0,a.useRef)(null),[h,f]=(0,a.useState)(.82),v=m.current&&parseFloat(getComputedStyle(m.current).columnGap)||0;return(0,s.jsxs)(l.A,{ref:m,direction:"row",sx:{height:"100%",minHeight:"240px",gap:2},children:[(0,s.jsxs)(l.A,{sx:{flexGrow:1,gap:2},children:[(0,s.jsx)(eS,{trace:o,search:p}),(0,s.jsx)(L,{options:t,trace:o,viewport:d,setViewport:u}),(0,s.jsx)(ei,{children:(0,s.jsx)(eM,{options:t,customLinks:n,trace:o,viewport:d,selectedSpan:c,onSpanClick:x,matchingSpanIds:p.matchingSpanIds,focusedSpanId:p.matchingSpanIds[p.focusedMatchIndex]})})]}),c&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(eb,{parentRef:m,spacing:v,onMove:f}),(0,s.jsx)(i.A,{style:{width:`${(1-h)*100}%`,minWidth:`${(1-h)*100}%`},sx:{overflow:"auto"},children:(0,s.jsx)(en,{customLinks:n,trace:o,span:c,onCloseBtnClick:()=>x(void 0)})})]})]})}var eC=n(97090),eL=n(33498);let e$={PanelComponent:function(e){var t,n,a,l;let{spec:o,queryResults:d}=e,u=(0,r.useChartsTheme)().container.padding.default;if(d.length>1)return(0,s.jsx)(r.TextOverlay,{message:"This panel does not support more than one query."});if(null==(t=d[0])?void 0:t.data.searchResult)return(0,s.jsx)(r.TextOverlay,{message:"This panel does not support displaying trace search results. Please enter a trace id in the query field instead."});let c=null==(n=d[0])?void 0:n.data.trace;if(!c)return(0,s.jsx)(r.NoDataOverlay,{resource:"trace"});let x=null==(a=d[0])?void 0:a.definition.spec.plugin.spec,p=null==x||null==(l=x.datasource)?void 0:l.name,m=o.links?{variables:{datasourceName:p??""},links:o.links}:void 0;return(0,s.jsx)(i.A,{sx:{height:"100%",padding:`${u}px`},children:(0,s.jsx)(eU,{options:o,customLinks:m,trace:c})})},supportedQueryTypes:["TraceQuery"],createInitialOptions:function(){return{}},actions:[{component:function(e){var t,n;let{queryResults:i}=e,l=null==(n=i[0])||null==(t=n.data)?void 0:t.trace,o=(0,a.useCallback)(()=>{var e,t,n;let s,r;if(!l)return;let i=JSON.stringify(l,null,2);e=function(e){for(let t of e.resourceSpans)for(let e of t.scopeSpans)for(let t of e.spans)return`${t.traceId}.json`;return"trace.json"}(l),t="application/json",n=i,s=URL.createObjectURL(new Blob([n],{type:t})),(r=document.createElement("a")).download=e,r.href=s,r.click(),URL.revokeObjectURL(s)},[l]);return l?(0,s.jsx)(r.InfoTooltip,{description:"download OTLP/JSON trace",children:(0,s.jsx)(eL.v,{"aria-label":"download OTLP/JSON trace",size:"small",onClick:o,children:(0,s.jsx)(eC.default,{fontSize:"inherit"})})}):null}}]}}}]);