@unblind/react 0.1.0-alpha.21 → 0.1.0-alpha.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -1,2 +1,2 @@
1
- .uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.ub-tooltip{display:flex;width:fit-content;min-width:320px;max-width:520px;flex-direction:column;font-size:.875rem;gap:.5rem;border-radius:var(--ub-radius);border:1px solid var(--ub-border);padding:.5rem 0rem;background-color:var(--ub-popover);overflow:hidden}.ub-tooltip-datetime{font-weight:500}.ub-tooltip-divider{height:1px;width:100%;border:none;background:var(--ub-border);margin:0}.ub-tooltip-header{display:flex;align-items:center;justify-content:space-between;padding-left:1rem;padding-right:1rem;color:var(--ub-muted-foreground)}.ub-tooltip-content{position:relative;display:flex;flex-direction:column;gap:.2rem}.ub-tooltip-serie{display:flex;align-items:center;justify-content:space-between;padding-left:1rem;padding-right:1rem;gap:3rem}.ub-tooltip-serie-color{position:absolute;height:1em;width:4px;transform:translate(-1rem,.1em);border-radius:0 1.5px 1.5px 0}.ub-tooltip-serie-label{display:flex;gap:.25rem}.ub-tooltip-multiple-attributes .ub-tooltip-serie-label .ub-tooltip-serie-metric{color:var(--ub-muted-foreground);margin-right:.5rem}.ub-tooltip-summary{display:flex;justify-content:space-between;padding-left:1rem;padding-right:1rem;color:var(--ub-muted-foreground);opacity:90%}.ub-tooltip-serie-value-empty{font-weight:400;color:var(--ub-text-disabled)}.ub-tooltip-serie-attribute-divider:before{content:attr(data-text)}.ub-tooltip-no-data{padding:0 .3rem;font-style:italic;color:var(--ub-placeholder);line-height:1rem}.ub-default{display:flex;height:100%;align-items:center;justify-content:center;color:var(--ub-muted-foreground)}.ub-empty-content{text-align:center}.ub-empty-icon-wrapper{margin:0 auto;display:flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;background-color:var(--ub-muted)}.ub-icon{width:1.25rem;height:1.25rem;color:var(--ub-muted-foreground)}.ub-empty-text{margin-top:.5rem;font-size:.875rem;color:var(--ub-muted-foreground)}.ub-empty-text:before{content:attr(data-text)}.ub-default-loading{position:relative;width:100%;height:100%;background:linear-gradient(90deg,var(--ub-muted) 25%,var(--ub-muted) 50%,var(--ub-muted) 75%);border-radius:var(--ub-radius);overflow:hidden;animation:ub-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes ub-pulse{0%,to{opacity:1}50%{opacity:.5}}:root{--ub-radius: var(--radius, .5rem);--ub-background: var(--background, oklch(1 0 0));--ub-primary: var(--primary, oklch(.208 .042 264.541));--ub-primary-foreground: var(--primary-foreground, oklch(1 0 0));--ub-secondary: var(--secondary, oklch(.985 .002 264.542));--ub-secondary-foreground: var( --secondary-foreground, oklch(.208 .042 264.541) );--ub-muted: var(--muted, oklch(.967 .001 286.375));--ub-muted-foreground: var(--muted-foreground, oklch(.552 .016 285.938));--ub-popover: var(--popover, oklch(1 0 0));--ub-border: var( --border, oklch(.922 .005 264.542 / .8) );--ub-ring: var(--ring, oklch(.208 .042 264.541));--ub-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--ub-shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ub-shadow-ring: 0 0 0 1px oklch(.922 .005 264.542 / .4);--ub-shadow-ring-sm: 0 0 0 1px rgb(0 0 0 / .05);--ub-backdrop-blur: blur(12px);--ub-opacity-subtle: .7;--ub-chart-font-size: 11px;--ub-chart-font-color: var(--ub-muted-foreground);--ub-chart-grid-color: oklch(from var(--ub-muted-foreground) l c h / .15);--ub-chart-threshold-error: oklch(60% .2 30);--ub-chart-threshold-warning: oklch(75% .18 90);--ub-chart-threshold-ok: oklch(65% .15 145);--ub-chart-threshold-info: oklch(85% .005 240);--ub-chart-threshold-default: oklch(65% .01 0);--ub-chart-threshold-error-fill: oklch( from var(--ub-chart-threshold-error) l c h / .15 );--ub-chart-threshold-warning-fill: oklch( from var(--ub-chart-threshold-warning) l c h / .15 );--ub-chart-threshold-ok-fill: oklch( from var(--ub-chart-threshold-ok) l c h / .15 );--ub-chart-threshold-info-fill: oklch( from var(--ub-chart-threshold-info) l c h / .15 );--ub-chart-threshold-default-fill: oklch( from var(--ub-chart-threshold-default) l c h / .1 );--ub-chart-serie-color-1: var(--chart-1, oklch(.68 .214 293.418));--ub-chart-serie-color-2: var(--chart-2, oklch(.84 .151 94.621));--ub-chart-serie-color-3: var(--chart-3, oklch(.68 .2 255.485));--ub-chart-serie-color-4: var(--chart-4, oklch(.7 .245 27.325));--ub-chart-serie-color-5: var(--chart-5, oklch(.68 .18 149.579));--ub-chart-serie-color-6: var(--chart-6, oklch(.75 .159 50.554));--ub-chart-serie-color-7: var(--chart-7, oklch(.7 .14 215.355));--ub-chart-serie-color-8: var(--chart-8, oklch(.68 .25 301.364));--ub-chart-serie-color-9: var(--chart-9, oklch(.72 .16 89.872));--ub-chart-serie-color-10: var(--chart-10, oklch(.65 .2 276.652));--ub-chart-serie-color-11: var(--chart-11, oklch(.68 .14 192.803));--ub-chart-serie-color-12: var(--chart-12, oklch(.65 .22 3.555));--ub-chart-serie-fill-color-1: oklch( from var(--ub-chart-serie-color-1) l c h / .4 );--ub-chart-serie-fill-color-2: oklch( from var(--ub-chart-serie-color-2) l c h / .4 );--ub-chart-serie-fill-color-3: oklch( from var(--ub-chart-serie-color-3) l c h / .4 );--ub-chart-serie-fill-color-4: oklch( from var(--ub-chart-serie-color-4) l c h / .4 );--ub-chart-serie-fill-color-5: oklch( from var(--ub-chart-serie-color-5) l c h / .4 );--ub-chart-serie-fill-color-6: oklch( from var(--ub-chart-serie-color-6) l c h / .4 );--ub-chart-serie-fill-color-7: oklch( from var(--ub-chart-serie-color-7) l c h / .4 );--ub-chart-serie-fill-color-8: oklch( from var(--ub-chart-serie-color-8) l c h / .4 );--ub-chart-serie-fill-color-9: oklch( from var(--ub-chart-serie-color-9) l c h / .4 );--ub-chart-serie-fill-color-10: oklch( from var(--ub-chart-serie-color-10) l c h / .4 );--ub-chart-serie-fill-color-11: oklch( from var(--ub-chart-serie-color-11) l c h / .4 );--ub-chart-serie-fill-color-12: oklch( from var(--ub-chart-serie-color-12) l c h / .4 );.ub-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}-webkit-font-smoothing:antialiased}.dark{--ub-background: var(--background, oklch(.236 .013 265.755));--ub-primary: var(--primary, oklch(1 0 0));--ub-primary-foreground: var( --primary-foreground, oklch(.236 .013 265.755) );--ub-secondary: var(--secondary, oklch(1 0 0 / .05));--ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));--ub-muted: var(--muted, oklch(1 0 0 / .05));--ub-muted-foreground: var(--muted-foreground, oklch(.665 .032 252.894));--ub-popover: var(--popover, oklch(.236 .013 265.755));--ub-border: var(--border, oklch(1 0 0 / .1));--ub-ring: var(--ring, oklch(1 0 0));--ub-shadow-ring: 0 0 0 1px oklch(.274 .014 265.755 / .4);--ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / .1)}@media(prefers-color-scheme:dark){.root{--ub-background: var( --background, oklch(.236 .013 265.755) );--ub-primary: var(--primary, oklch(1 0 0));--ub-primary-foreground: var( --primary-foreground, oklch(.236 .013 265.755) );--ub-secondary: var(--secondary, oklch(1 0 0 / .05));--ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));--ub-muted: var(--muted, oklch(1 0 0 / .05));--ub-muted-foreground: var(--muted-foreground, oklch(.665 .032 252.894));--ub-popover: var(--popover, oklch(.236 .013 265.755));--ub-border: var(--border, oklch(1 0 0 / .1));--ub-ring: var(--ring, oklch(1 0 0));--ub-shadow-ring: 0 0 0 1px oklch(.274 .014 265.755 / .4);--ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / .1)}}@layer ub-chart{:where(.ub-chart-container){width:100%;height:100%;min-height:0;flex-grow:1}}
1
+ .uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.ub-tooltip{display:flex;width:fit-content;min-width:320px;max-width:520px;flex-direction:column;font-size:.875rem;gap:.5rem;border-radius:var(--ub-radius);border:1px solid var(--ub-border);padding:.5rem 0rem;background-color:var(--ub-popover);overflow:hidden}.ub-tooltip-datetime{font-weight:500}.ub-tooltip-divider{height:1px;width:100%;border:none;background:var(--ub-border);margin:0}.ub-tooltip-header{display:flex;align-items:center;justify-content:space-between;padding-left:1rem;padding-right:1rem;color:var(--ub-muted-foreground)}.ub-tooltip-content{position:relative;display:grid;column-gap:calc(1rem - 4px);row-gap:.25rem;padding-right:1rem}.ub-tooltip-multiple-metrics-attributes .ub-tooltip-content{grid-template-columns:min-content max-content 1fr auto}.ub-tooltip-multiple-attributes .ub-tooltip-content,.ub-tooltip-multiple-metrics .ub-tooltip-content{grid-template-columns:min-content 1fr auto}.ub-tooltip-serie{display:contents}.ub-tooltip-serie-color{height:1em;width:4px;align-self:center;border-radius:0 1.5px 1.5px 0}.ub-tooltip-multiple-attributes .ub-tooltip-serie-metric,.ub-tooltip-multiple-metrics-attributes .ub-tooltip-serie-metric{color:var(--ub-muted-foreground)}.ub-tooltip-summary{display:flex;justify-content:space-between;padding-left:1rem;padding-right:1rem;padding-top:.125rem;color:var(--ub-muted-foreground);opacity:90%}.ub-tooltip-serie-value{text-align:right;font-weight:500}.ub-tooltip-serie-value-empty{font-weight:400;color:var(--ub-text-disabled)}.ub-tooltip-serie-attribute-divider:before{content:attr(data-text)}.ub-tooltip-no-data{padding:0 .3rem;font-style:italic;color:var(--ub-placeholder);line-height:1rem}.ub-default{display:flex;height:100%;align-items:center;justify-content:center;color:var(--ub-muted-foreground)}.ub-empty-content{text-align:center}.ub-empty-icon-wrapper{margin:0 auto;display:flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;background-color:var(--ub-muted)}.ub-icon{width:1.25rem;height:1.25rem;color:var(--ub-muted-foreground)}.ub-empty-text{margin-top:.5rem;font-size:.875rem;color:var(--ub-muted-foreground)}.ub-empty-text:before{content:attr(data-text)}.ub-default-loading{position:relative;width:100%;height:100%;background:linear-gradient(90deg,var(--ub-muted) 25%,var(--ub-muted) 50%,var(--ub-muted) 75%);border-radius:var(--ub-radius);overflow:hidden;animation:ub-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes ub-pulse{0%,to{opacity:1}50%{opacity:.5}}:root{--ub-radius: var(--radius, .5rem);--ub-background: var(--background, oklch(1 0 0));--ub-primary: var(--primary, oklch(.208 .042 264.541));--ub-primary-foreground: var(--primary-foreground, oklch(1 0 0));--ub-secondary: var(--secondary, oklch(.985 .002 264.542));--ub-secondary-foreground: var( --secondary-foreground, oklch(.208 .042 264.541) );--ub-muted: var(--muted, oklch(.967 .001 286.375));--ub-muted-foreground: var(--muted-foreground, oklch(.552 .016 285.938));--ub-popover: var(--popover, oklch(1 0 0));--ub-border: var( --border, oklch(.922 .005 264.542 / .8) );--ub-ring: var(--ring, oklch(.208 .042 264.541));--ub-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--ub-shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--ub-shadow-ring: 0 0 0 1px oklch(.922 .005 264.542 / .4);--ub-shadow-ring-sm: 0 0 0 1px rgb(0 0 0 / .05);--ub-backdrop-blur: blur(12px);--ub-opacity-subtle: .7;--ub-chart-font-size: 11px;--ub-chart-font-color: var(--ub-muted-foreground);--ub-chart-grid-color: oklch(from var(--ub-muted-foreground) l c h / .15);--ub-chart-threshold-error: oklch(60% .2 30);--ub-chart-threshold-warning: oklch(75% .18 90);--ub-chart-threshold-ok: oklch(65% .15 145);--ub-chart-threshold-info: oklch(85% .005 240);--ub-chart-threshold-default: oklch(65% .01 0);--ub-chart-threshold-error-fill: oklch( from var(--ub-chart-threshold-error) l c h / .15 );--ub-chart-threshold-warning-fill: oklch( from var(--ub-chart-threshold-warning) l c h / .15 );--ub-chart-threshold-ok-fill: oklch( from var(--ub-chart-threshold-ok) l c h / .15 );--ub-chart-threshold-info-fill: oklch( from var(--ub-chart-threshold-info) l c h / .15 );--ub-chart-threshold-default-fill: oklch( from var(--ub-chart-threshold-default) l c h / .1 );--ub-chart-serie-color-1: var(--chart-1, oklch(.68 .214 293.418));--ub-chart-serie-color-2: var(--chart-2, oklch(.84 .151 94.621));--ub-chart-serie-color-3: var(--chart-3, oklch(.68 .2 255.485));--ub-chart-serie-color-4: var(--chart-4, oklch(.7 .245 27.325));--ub-chart-serie-color-5: var(--chart-5, oklch(.68 .18 149.579));--ub-chart-serie-color-6: var(--chart-6, oklch(.75 .159 50.554));--ub-chart-serie-color-7: var(--chart-7, oklch(.7 .14 215.355));--ub-chart-serie-color-8: var(--chart-8, oklch(.68 .25 301.364));--ub-chart-serie-color-9: var(--chart-9, oklch(.72 .16 89.872));--ub-chart-serie-color-10: var(--chart-10, oklch(.65 .2 276.652));--ub-chart-serie-color-11: var(--chart-11, oklch(.68 .14 192.803));--ub-chart-serie-color-12: var(--chart-12, oklch(.65 .22 3.555));--ub-chart-serie-fill-color-1: oklch( from var(--ub-chart-serie-color-1) l c h / .4 );--ub-chart-serie-fill-color-2: oklch( from var(--ub-chart-serie-color-2) l c h / .4 );--ub-chart-serie-fill-color-3: oklch( from var(--ub-chart-serie-color-3) l c h / .4 );--ub-chart-serie-fill-color-4: oklch( from var(--ub-chart-serie-color-4) l c h / .4 );--ub-chart-serie-fill-color-5: oklch( from var(--ub-chart-serie-color-5) l c h / .4 );--ub-chart-serie-fill-color-6: oklch( from var(--ub-chart-serie-color-6) l c h / .4 );--ub-chart-serie-fill-color-7: oklch( from var(--ub-chart-serie-color-7) l c h / .4 );--ub-chart-serie-fill-color-8: oklch( from var(--ub-chart-serie-color-8) l c h / .4 );--ub-chart-serie-fill-color-9: oklch( from var(--ub-chart-serie-color-9) l c h / .4 );--ub-chart-serie-fill-color-10: oklch( from var(--ub-chart-serie-color-10) l c h / .4 );--ub-chart-serie-fill-color-11: oklch( from var(--ub-chart-serie-color-11) l c h / .4 );--ub-chart-serie-fill-color-12: oklch( from var(--ub-chart-serie-color-12) l c h / .4 );.ub-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}-webkit-font-smoothing:antialiased}.dark{--ub-background: var(--background, oklch(.236 .013 265.755));--ub-primary: var(--primary, oklch(1 0 0));--ub-primary-foreground: var( --primary-foreground, oklch(.236 .013 265.755) );--ub-secondary: var(--secondary, oklch(1 0 0 / .05));--ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));--ub-muted: var(--muted, oklch(1 0 0 / .05));--ub-muted-foreground: var(--muted-foreground, oklch(.665 .032 252.894));--ub-popover: var(--popover, oklch(.236 .013 265.755));--ub-border: var(--border, oklch(1 0 0 / .1));--ub-ring: var(--ring, oklch(1 0 0));--ub-shadow-ring: 0 0 0 1px oklch(.274 .014 265.755 / .4);--ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / .1)}@media(prefers-color-scheme:dark){.root{--ub-background: var( --background, oklch(.236 .013 265.755) );--ub-primary: var(--primary, oklch(1 0 0));--ub-primary-foreground: var( --primary-foreground, oklch(.236 .013 265.755) );--ub-secondary: var(--secondary, oklch(1 0 0 / .05));--ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));--ub-muted: var(--muted, oklch(1 0 0 / .05));--ub-muted-foreground: var(--muted-foreground, oklch(.665 .032 252.894));--ub-popover: var(--popover, oklch(.236 .013 265.755));--ub-border: var(--border, oklch(1 0 0 / .1));--ub-ring: var(--ring, oklch(1 0 0));--ub-shadow-ring: 0 0 0 1px oklch(.274 .014 265.755 / .4);--ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / .1)}}@layer ub-chart{:where(.ub-chart-container){width:100%;height:100%;min-height:0;flex-grow:1}}
2
2
  /*# sourceMappingURL=index.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/uplot@1.6.32/node_modules/uplot/dist/uPlot.min.css","../src/components/Tooltip/Tooltip.css","../src/components/Defaults/Defaults.css","../src/styles.css"],"sourcesContent":[".uplot, .uplot *, .uplot *::before, .uplot *::after {box-sizing: border-box;}.uplot {font-family: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";line-height: 1.5;width: min-content;}.u-title {text-align: center;font-size: 18px;font-weight: bold;}.u-wrap {position: relative;user-select: none;}.u-over, .u-under {position: absolute;}.u-under {overflow: hidden;}.uplot canvas {display: block;position: relative;width: 100%;height: 100%;}.u-axis {position: absolute;}.u-legend {font-size: 14px;margin: auto;text-align: center;}.u-inline {display: block;}.u-inline * {display: inline-block;}.u-inline tr {margin-right: 16px;}.u-legend th {font-weight: 600;}.u-legend th > * {vertical-align: middle;display: inline-block;}.u-legend .u-marker {width: 1em;height: 1em;margin-right: 4px;background-clip: padding-box !important;}.u-inline.u-live th::after {content: \":\";vertical-align: middle;}.u-inline:not(.u-live) .u-value {display: none;}.u-series > * {padding: 4px;}.u-series th {cursor: pointer;}.u-legend .u-off > * {opacity: 0.3;}.u-select {background: rgba(0,0,0,0.07);position: absolute;pointer-events: none;}.u-cursor-x, .u-cursor-y {position: absolute;left: 0;top: 0;pointer-events: none;will-change: transform;}.u-hz .u-cursor-x, .u-vt .u-cursor-y {height: 100%;border-right: 1px dashed #607D8B;}.u-hz .u-cursor-y, .u-vt .u-cursor-x {width: 100%;border-bottom: 1px dashed #607D8B;}.u-cursor-pt {position: absolute;top: 0;left: 0;border-radius: 50%;border: 0 solid;pointer-events: none;will-change: transform;/*this has to be !important since we set inline \"background\" shorthand */background-clip: padding-box !important;}.u-axis.u-off, .u-select.u-off, .u-cursor-x.u-off, .u-cursor-y.u-off, .u-cursor-pt.u-off {display: none;}","/* Container */\n.ub-tooltip {\n display: flex;\n width: fit-content;\n min-width: 320px;\n max-width: 520px;\n flex-direction: column;\n font-size: 0.875rem;\n gap: 0.5rem;\n border-radius: var(--ub-radius);\n border: 1px solid var(--ub-border);\n padding: 0.5rem 0rem 0.5rem 0rem;\n background-color: var(--ub-popover);\n overflow: hidden;\n}\n\n.ub-tooltip-datetime {\n font-weight: 500;\n}\n\n.ub-tooltip-divider {\n height: 1px;\n width: 100%;\n border: none;\n background: var(--ub-border);\n margin: 0;\n}\n\n.ub-tooltip-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-left: 1rem;\n padding-right: 1rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-tooltip-content {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 0.2rem;\n}\n\n.ub-tooltip-serie {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-left: 1rem;\n padding-right: 1rem;\n gap: 3rem;\n}\n\n.ub-tooltip-serie-color {\n position: absolute;\n height: 1em;\n width: 4px;\n transform: translate(-1rem, 0.1em);\n border-radius: 0px 1.5px 1.5px 0px;\n}\n\n.ub-tooltip-serie-label {\n display: flex;\n gap: 0.25rem;\n}\n\n.ub-tooltip-multiple-attributes .ub-tooltip-serie-label .ub-tooltip-serie-metric {\n color: var(--ub-muted-foreground);\n margin-right: 0.5rem;\n}\n\n.ub-tooltip-summary {\n display: flex;\n justify-content: space-between;\n padding-left: 1rem;\n padding-right: 1rem;\n color: var(--ub-muted-foreground);\n opacity: 90%;\n}\n\n.ub-tooltip-serie-value-empty {\n font-weight: 400;\n color: var(--ub-text-disabled);\n}\n\n.ub-tooltip-serie-attribute-divider::before {\n content: attr(data-text);\n}\n\n.ub-tooltip-no-data {\n padding: 0 0.3rem 0 0.3rem;\n font-style: italic;\n color: var(--ub-placeholder);\n line-height: 1rem;\n}\n",".ub-default {\n display: flex;\n height: 100%;\n align-items: center;\n justify-content: center;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-content {\n text-align: center;\n}\n\n.ub-empty-icon-wrapper {\n margin: 0 auto;\n display: flex;\n height: 2.5rem;\n width: 2.5rem;\n align-items: center;\n justify-content: center;\n border-radius: 9999px;\n background-color: var(--ub-muted);\n}\n\n.ub-icon {\n width: 1.25rem;\n height: 1.25rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-text {\n margin-top: 0.5rem;\n font-size: 0.875rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-text::before {\n content: attr(data-text);\n}\n\n.ub-default-loading {\n position: relative;\n width: 100%;\n height: 100%;\n background: linear-gradient(\n 90deg,\n var(--ub-muted) 25%,\n var(--ub-muted) 50%,\n var(--ub-muted) 75%\n );\n border-radius: var(--ub-radius);\n overflow: hidden;\n animation: ub-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n@keyframes ub-pulse {\n 0%,\n 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n}\n","@import \"uplot/dist/uPlot.min.css\";\n@import \"./components/Tooltip/Tooltip.css\";\n@import \"./components/Defaults/Defaults.css\";\n\n:root {\n --ub-radius: var(--radius, 0.5rem);\n --ub-background: var(--background, oklch(1 0 0));\n --ub-primary: var(--primary, oklch(0.208 0.042 264.541));\n --ub-primary-foreground: var(--primary-foreground, oklch(1 0 0));\n --ub-secondary: var(--secondary, oklch(0.985 0.002 264.542));\n --ub-secondary-foreground: var(\n --secondary-foreground,\n oklch(0.208 0.042 264.541)\n );\n --ub-muted: var(--muted, oklch(0.967 0.001 286.375));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.552 0.016 285.938));\n --ub-popover: var(--popover, oklch(1 0 0));\n --ub-border: var(\n --border,\n oklch(0.922 0.005 264.542 / 0.8)\n ); /* gray-200/80 */\n --ub-ring: var(--ring, oklch(0.208 0.042 264.541));\n\n /* Custom extensions */\n /* Shadows */\n --ub-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --ub-shadow-lg:\n 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --ub-shadow-ring: 0 0 0 1px oklch(0.922 0.005 264.542 / 0.4);\n --ub-shadow-ring-sm: 0 0 0 1px rgb(0 0 0 / 0.05);\n\n /* Effects */\n --ub-backdrop-blur: blur(12px);\n --ub-opacity-subtle: 0.7;\n\n /* Chart */\n --ub-chart-font-size: 11px;\n --ub-chart-font-color: var(--ub-muted-foreground);\n --ub-chart-grid-color: oklch(from var(--ub-muted-foreground) l c h / 0.15);\n\n /* Threshold colors */\n --ub-chart-threshold-error: oklch(60% 0.2 30);\n --ub-chart-threshold-warning: oklch(75% 0.18 90);\n --ub-chart-threshold-ok: oklch(65% 0.15 145);\n --ub-chart-threshold-info: oklch(85% 0.005 240);\n --ub-chart-threshold-default: oklch(65% 0.01 0);\n\n --ub-chart-threshold-error-fill: oklch(\n from var(--ub-chart-threshold-error) l c h / 0.15\n );\n --ub-chart-threshold-warning-fill: oklch(\n from var(--ub-chart-threshold-warning) l c h / 0.15\n );\n --ub-chart-threshold-ok-fill: oklch(\n from var(--ub-chart-threshold-ok) l c h / 0.15\n );\n --ub-chart-threshold-info-fill: oklch(\n from var(--ub-chart-threshold-info) l c h / 0.15\n );\n --ub-chart-threshold-default-fill: oklch(\n from var(--ub-chart-threshold-default) l c h / 0.1\n );\n\n --ub-chart-serie-color-1: var(--chart-1, oklch(0.68 0.214 293.418));\n --ub-chart-serie-color-2: var(--chart-2, oklch(0.84 0.151 94.621));\n --ub-chart-serie-color-3: var(--chart-3, oklch(0.68 0.2 255.485));\n --ub-chart-serie-color-4: var(--chart-4, oklch(0.7 0.245 27.325));\n --ub-chart-serie-color-5: var(--chart-5, oklch(0.68 0.18 149.579));\n --ub-chart-serie-color-6: var(--chart-6, oklch(0.75 0.159 50.554));\n --ub-chart-serie-color-7: var(--chart-7, oklch(0.7 0.14 215.355));\n --ub-chart-serie-color-8: var(--chart-8, oklch(0.68 0.25 301.364));\n --ub-chart-serie-color-9: var(--chart-9, oklch(0.72 0.16 89.872));\n --ub-chart-serie-color-10: var(--chart-10, oklch(0.65 0.2 276.652));\n --ub-chart-serie-color-11: var(--chart-11, oklch(0.68 0.14 192.803));\n --ub-chart-serie-color-12: var(--chart-12, oklch(0.65 0.22 3.555));\n\n --ub-chart-serie-fill-color-1: oklch(\n from var(--ub-chart-serie-color-1) l c h / 0.4\n );\n --ub-chart-serie-fill-color-2: oklch(\n from var(--ub-chart-serie-color-2) l c h / 0.4\n );\n --ub-chart-serie-fill-color-3: oklch(\n from var(--ub-chart-serie-color-3) l c h / 0.4\n );\n --ub-chart-serie-fill-color-4: oklch(\n from var(--ub-chart-serie-color-4) l c h / 0.4\n );\n --ub-chart-serie-fill-color-5: oklch(\n from var(--ub-chart-serie-color-5) l c h / 0.4\n );\n --ub-chart-serie-fill-color-6: oklch(\n from var(--ub-chart-serie-color-6) l c h / 0.4\n );\n --ub-chart-serie-fill-color-7: oklch(\n from var(--ub-chart-serie-color-7) l c h / 0.4\n );\n --ub-chart-serie-fill-color-8: oklch(\n from var(--ub-chart-serie-color-8) l c h / 0.4\n );\n --ub-chart-serie-fill-color-9: oklch(\n from var(--ub-chart-serie-color-9) l c h / 0.4\n );\n --ub-chart-serie-fill-color-10: oklch(\n from var(--ub-chart-serie-color-10) l c h / 0.4\n );\n --ub-chart-serie-fill-color-11: oklch(\n from var(--ub-chart-serie-color-11) l c h / 0.4\n );\n --ub-chart-serie-fill-color-12: oklch(\n from var(--ub-chart-serie-color-12) l c h / 0.4\n );\n\n .ub-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n -webkit-font-smoothing: antialiased;\n}\n\n/* Explicit, compatibility with shadcn */\n.dark {\n --ub-background: var(--background, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-primary: var(--primary, oklch(1 0 0));\n --ub-primary-foreground: var(\n --primary-foreground,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-secondary: var(--secondary, oklch(1 0 0 / 0.05));\n --ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));\n --ub-muted: var(--muted, oklch(1 0 0 / 0.05));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.665 0.032 252.894));\n --ub-popover: var(--popover, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-border: var(--border, oklch(1 0 0 / 0.1));\n --ub-ring: var(--ring, oklch(1 0 0));\n\n /* Custom extensions */\n --ub-shadow-ring: 0 0 0 1px oklch(0.274 0.014 265.755 / 0.4); /* zinc-800/40 */\n --ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / 0.1);\n}\n\n@media (prefers-color-scheme: dark) {\n .root {\n --ub-background: var(\n --background,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-primary: var(--primary, oklch(1 0 0));\n --ub-primary-foreground: var(\n --primary-foreground,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-secondary: var(--secondary, oklch(1 0 0 / 0.05));\n --ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));\n --ub-muted: var(--muted, oklch(1 0 0 / 0.05));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.665 0.032 252.894));\n --ub-popover: var(--popover, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-border: var(--border, oklch(1 0 0 / 0.1));\n --ub-ring: var(--ring, oklch(1 0 0));\n\n /* Custom extensions */\n --ub-shadow-ring: 0 0 0 1px oklch(0.274 0.014 265.755 / 0.4); /* zinc-800/40 */\n --ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / 0.1);\n }\n}\n\n@layer ub-chart {\n :where(.ub-chart-container) {\n width: 100%;\n height: 100%;\n min-height: 0;\n flex-grow: 1;\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/uplot@1.6.32/node_modules/uplot/dist/uPlot.min.css","../src/components/Tooltip/Tooltip.css","../src/components/Defaults/Defaults.css","../src/styles.css"],"sourcesContent":[".uplot, .uplot *, .uplot *::before, .uplot *::after {box-sizing: border-box;}.uplot {font-family: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";line-height: 1.5;width: min-content;}.u-title {text-align: center;font-size: 18px;font-weight: bold;}.u-wrap {position: relative;user-select: none;}.u-over, .u-under {position: absolute;}.u-under {overflow: hidden;}.uplot canvas {display: block;position: relative;width: 100%;height: 100%;}.u-axis {position: absolute;}.u-legend {font-size: 14px;margin: auto;text-align: center;}.u-inline {display: block;}.u-inline * {display: inline-block;}.u-inline tr {margin-right: 16px;}.u-legend th {font-weight: 600;}.u-legend th > * {vertical-align: middle;display: inline-block;}.u-legend .u-marker {width: 1em;height: 1em;margin-right: 4px;background-clip: padding-box !important;}.u-inline.u-live th::after {content: \":\";vertical-align: middle;}.u-inline:not(.u-live) .u-value {display: none;}.u-series > * {padding: 4px;}.u-series th {cursor: pointer;}.u-legend .u-off > * {opacity: 0.3;}.u-select {background: rgba(0,0,0,0.07);position: absolute;pointer-events: none;}.u-cursor-x, .u-cursor-y {position: absolute;left: 0;top: 0;pointer-events: none;will-change: transform;}.u-hz .u-cursor-x, .u-vt .u-cursor-y {height: 100%;border-right: 1px dashed #607D8B;}.u-hz .u-cursor-y, .u-vt .u-cursor-x {width: 100%;border-bottom: 1px dashed #607D8B;}.u-cursor-pt {position: absolute;top: 0;left: 0;border-radius: 50%;border: 0 solid;pointer-events: none;will-change: transform;/*this has to be !important since we set inline \"background\" shorthand */background-clip: padding-box !important;}.u-axis.u-off, .u-select.u-off, .u-cursor-x.u-off, .u-cursor-y.u-off, .u-cursor-pt.u-off {display: none;}","/* Container */\n.ub-tooltip {\n display: flex;\n width: fit-content;\n min-width: 320px;\n max-width: 520px;\n flex-direction: column;\n font-size: 0.875rem;\n gap: 0.5rem;\n border-radius: var(--ub-radius);\n border: 1px solid var(--ub-border);\n padding: 0.5rem 0rem 0.5rem 0rem;\n background-color: var(--ub-popover);\n overflow: hidden;\n}\n\n.ub-tooltip-datetime {\n font-weight: 500;\n}\n\n.ub-tooltip-divider {\n height: 1px;\n width: 100%;\n border: none;\n background: var(--ub-border);\n margin: 0;\n}\n\n.ub-tooltip-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-left: 1rem;\n padding-right: 1rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-tooltip-content {\n position: relative;\n display: grid;\n column-gap: calc(1rem - 4px);\n row-gap: calc(0.25rem);\n padding-right: 1rem;\n}\n\n.ub-tooltip-multiple-metrics-attributes .ub-tooltip-content {\n grid-template-columns: min-content max-content 1fr auto;\n}\n\n.ub-tooltip-multiple-attributes .ub-tooltip-content {\n grid-template-columns: min-content 1fr auto;\n}\n\n.ub-tooltip-multiple-metrics .ub-tooltip-content {\n grid-template-columns: min-content 1fr auto;\n}\n\n.ub-tooltip-serie {\n display: contents;\n}\n\n.ub-tooltip-serie-color {\n height: 1em;\n width: 4px;\n align-self: center;\n border-radius: 0px 1.5px 1.5px 0px;\n}\n\n.ub-tooltip-multiple-attributes .ub-tooltip-serie-metric {\n color: var(--ub-muted-foreground);\n}\n\n.ub-tooltip-multiple-metrics-attributes .ub-tooltip-serie-metric {\n color: var(--ub-muted-foreground);\n}\n\n.ub-tooltip-summary {\n display: flex;\n justify-content: space-between;\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.125rem;\n color: var(--ub-muted-foreground);\n opacity: 90%;\n}\n\n.ub-tooltip-serie-value {\n text-align: right;\n font-weight: 500;\n}\n\n.ub-tooltip-serie-value-empty {\n font-weight: 400;\n color: var(--ub-text-disabled);\n}\n\n.ub-tooltip-serie-attribute-divider::before {\n content: attr(data-text);\n}\n\n.ub-tooltip-no-data {\n padding: 0 0.3rem 0 0.3rem;\n font-style: italic;\n color: var(--ub-placeholder);\n line-height: 1rem;\n}\n",".ub-default {\n display: flex;\n height: 100%;\n align-items: center;\n justify-content: center;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-content {\n text-align: center;\n}\n\n.ub-empty-icon-wrapper {\n margin: 0 auto;\n display: flex;\n height: 2.5rem;\n width: 2.5rem;\n align-items: center;\n justify-content: center;\n border-radius: 9999px;\n background-color: var(--ub-muted);\n}\n\n.ub-icon {\n width: 1.25rem;\n height: 1.25rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-text {\n margin-top: 0.5rem;\n font-size: 0.875rem;\n color: var(--ub-muted-foreground);\n}\n\n.ub-empty-text::before {\n content: attr(data-text);\n}\n\n.ub-default-loading {\n position: relative;\n width: 100%;\n height: 100%;\n background: linear-gradient(\n 90deg,\n var(--ub-muted) 25%,\n var(--ub-muted) 50%,\n var(--ub-muted) 75%\n );\n border-radius: var(--ub-radius);\n overflow: hidden;\n animation: ub-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n@keyframes ub-pulse {\n 0%,\n 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n}\n","@import \"uplot/dist/uPlot.min.css\";\n@import \"./components/Tooltip/Tooltip.css\";\n@import \"./components/Defaults/Defaults.css\";\n\n:root {\n --ub-radius: var(--radius, 0.5rem);\n --ub-background: var(--background, oklch(1 0 0));\n --ub-primary: var(--primary, oklch(0.208 0.042 264.541));\n --ub-primary-foreground: var(--primary-foreground, oklch(1 0 0));\n --ub-secondary: var(--secondary, oklch(0.985 0.002 264.542));\n --ub-secondary-foreground: var(\n --secondary-foreground,\n oklch(0.208 0.042 264.541)\n );\n --ub-muted: var(--muted, oklch(0.967 0.001 286.375));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.552 0.016 285.938));\n --ub-popover: var(--popover, oklch(1 0 0));\n --ub-border: var(\n --border,\n oklch(0.922 0.005 264.542 / 0.8)\n ); /* gray-200/80 */\n --ub-ring: var(--ring, oklch(0.208 0.042 264.541));\n\n /* Custom extensions */\n /* Shadows */\n --ub-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --ub-shadow-lg:\n 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --ub-shadow-ring: 0 0 0 1px oklch(0.922 0.005 264.542 / 0.4);\n --ub-shadow-ring-sm: 0 0 0 1px rgb(0 0 0 / 0.05);\n\n /* Effects */\n --ub-backdrop-blur: blur(12px);\n --ub-opacity-subtle: 0.7;\n\n /* Chart */\n --ub-chart-font-size: 11px;\n --ub-chart-font-color: var(--ub-muted-foreground);\n --ub-chart-grid-color: oklch(from var(--ub-muted-foreground) l c h / 0.15);\n\n /* Threshold colors */\n --ub-chart-threshold-error: oklch(60% 0.2 30);\n --ub-chart-threshold-warning: oklch(75% 0.18 90);\n --ub-chart-threshold-ok: oklch(65% 0.15 145);\n --ub-chart-threshold-info: oklch(85% 0.005 240);\n --ub-chart-threshold-default: oklch(65% 0.01 0);\n\n --ub-chart-threshold-error-fill: oklch(\n from var(--ub-chart-threshold-error) l c h / 0.15\n );\n --ub-chart-threshold-warning-fill: oklch(\n from var(--ub-chart-threshold-warning) l c h / 0.15\n );\n --ub-chart-threshold-ok-fill: oklch(\n from var(--ub-chart-threshold-ok) l c h / 0.15\n );\n --ub-chart-threshold-info-fill: oklch(\n from var(--ub-chart-threshold-info) l c h / 0.15\n );\n --ub-chart-threshold-default-fill: oklch(\n from var(--ub-chart-threshold-default) l c h / 0.1\n );\n\n --ub-chart-serie-color-1: var(--chart-1, oklch(0.68 0.214 293.418));\n --ub-chart-serie-color-2: var(--chart-2, oklch(0.84 0.151 94.621));\n --ub-chart-serie-color-3: var(--chart-3, oklch(0.68 0.2 255.485));\n --ub-chart-serie-color-4: var(--chart-4, oklch(0.7 0.245 27.325));\n --ub-chart-serie-color-5: var(--chart-5, oklch(0.68 0.18 149.579));\n --ub-chart-serie-color-6: var(--chart-6, oklch(0.75 0.159 50.554));\n --ub-chart-serie-color-7: var(--chart-7, oklch(0.7 0.14 215.355));\n --ub-chart-serie-color-8: var(--chart-8, oklch(0.68 0.25 301.364));\n --ub-chart-serie-color-9: var(--chart-9, oklch(0.72 0.16 89.872));\n --ub-chart-serie-color-10: var(--chart-10, oklch(0.65 0.2 276.652));\n --ub-chart-serie-color-11: var(--chart-11, oklch(0.68 0.14 192.803));\n --ub-chart-serie-color-12: var(--chart-12, oklch(0.65 0.22 3.555));\n\n --ub-chart-serie-fill-color-1: oklch(\n from var(--ub-chart-serie-color-1) l c h / 0.4\n );\n --ub-chart-serie-fill-color-2: oklch(\n from var(--ub-chart-serie-color-2) l c h / 0.4\n );\n --ub-chart-serie-fill-color-3: oklch(\n from var(--ub-chart-serie-color-3) l c h / 0.4\n );\n --ub-chart-serie-fill-color-4: oklch(\n from var(--ub-chart-serie-color-4) l c h / 0.4\n );\n --ub-chart-serie-fill-color-5: oklch(\n from var(--ub-chart-serie-color-5) l c h / 0.4\n );\n --ub-chart-serie-fill-color-6: oklch(\n from var(--ub-chart-serie-color-6) l c h / 0.4\n );\n --ub-chart-serie-fill-color-7: oklch(\n from var(--ub-chart-serie-color-7) l c h / 0.4\n );\n --ub-chart-serie-fill-color-8: oklch(\n from var(--ub-chart-serie-color-8) l c h / 0.4\n );\n --ub-chart-serie-fill-color-9: oklch(\n from var(--ub-chart-serie-color-9) l c h / 0.4\n );\n --ub-chart-serie-fill-color-10: oklch(\n from var(--ub-chart-serie-color-10) l c h / 0.4\n );\n --ub-chart-serie-fill-color-11: oklch(\n from var(--ub-chart-serie-color-11) l c h / 0.4\n );\n --ub-chart-serie-fill-color-12: oklch(\n from var(--ub-chart-serie-color-12) l c h / 0.4\n );\n\n .ub-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n -webkit-font-smoothing: antialiased;\n}\n\n/* Explicit, compatibility with shadcn */\n.dark {\n --ub-background: var(--background, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-primary: var(--primary, oklch(1 0 0));\n --ub-primary-foreground: var(\n --primary-foreground,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-secondary: var(--secondary, oklch(1 0 0 / 0.05));\n --ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));\n --ub-muted: var(--muted, oklch(1 0 0 / 0.05));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.665 0.032 252.894));\n --ub-popover: var(--popover, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-border: var(--border, oklch(1 0 0 / 0.1));\n --ub-ring: var(--ring, oklch(1 0 0));\n\n /* Custom extensions */\n --ub-shadow-ring: 0 0 0 1px oklch(0.274 0.014 265.755 / 0.4); /* zinc-800/40 */\n --ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / 0.1);\n}\n\n@media (prefers-color-scheme: dark) {\n .root {\n --ub-background: var(\n --background,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-primary: var(--primary, oklch(1 0 0));\n --ub-primary-foreground: var(\n --primary-foreground,\n oklch(0.236 0.013 265.755)\n ); /* zinc-900 */\n --ub-secondary: var(--secondary, oklch(1 0 0 / 0.05));\n --ub-secondary-foreground: var(--secondary-foreground, oklch(1 0 0));\n --ub-muted: var(--muted, oklch(1 0 0 / 0.05));\n --ub-muted-foreground: var(--muted-foreground, oklch(0.665 0.032 252.894));\n --ub-popover: var(--popover, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-border: var(--border, oklch(1 0 0 / 0.1));\n --ub-ring: var(--ring, oklch(1 0 0));\n\n /* Custom extensions */\n --ub-shadow-ring: 0 0 0 1px oklch(0.274 0.014 265.755 / 0.4); /* zinc-800/40 */\n --ub-shadow-ring-sm: 0 0 0 1px oklch(1 0 0 / 0.1);\n }\n}\n\n@layer ub-chart {\n :where(.ub-chart-container) {\n width: 100%;\n height: 100%;\n min-height: 0;\n flex-grow: 1;\n }\n}\n"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -65,6 +65,7 @@ interface TooltipProps {
65
65
  stacked?: boolean;
66
66
  invertSort?: boolean;
67
67
  visibilityLimit?: number;
68
+ disableSuggestedLabel?: boolean;
68
69
  }
69
70
 
70
71
  /**
@@ -82,7 +83,7 @@ type AggregationOperator = "avg" | "sum" | "max" | "min" | "p90" | "p99" | "p50"
82
83
  interface MetricMetadata {
83
84
  name: string;
84
85
  description: string;
85
- displayName?: string;
86
+ suggestedLabel?: string;
86
87
  unit: {
87
88
  code?: string;
88
89
  name?: string;
@@ -90,8 +91,10 @@ interface MetricMetadata {
90
91
  category?: string;
91
92
  };
92
93
  type: MetricType;
93
- operator?: AggregationOperator;
94
94
  }
95
+ type LabeledMetricMetadata = MetricMetadata & {
96
+ label?: string;
97
+ };
95
98
  /**
96
99
  * List of metric metadata.
97
100
  */
@@ -103,7 +106,6 @@ interface Serie {
103
106
  metric: string;
104
107
  attributes?: Record<string, string>;
105
108
  values: Array<number>;
106
- queryName?: string;
107
109
  queryIndex: number;
108
110
  isEmpty?: boolean;
109
111
  }
@@ -111,7 +113,6 @@ interface Serie {
111
113
  * Query definition for timeseries requests.
112
114
  */
113
115
  interface TimeseriesQuery {
114
- queryName?: string;
115
116
  metrics: Array<string>;
116
117
  groupBy?: Array<string>;
117
118
  operator?: AggregationOperator;
@@ -261,6 +262,10 @@ interface ChartVisualConfig {
261
262
  * Defaults to false
262
263
  */
263
264
  invertSort?: boolean;
265
+ /**
266
+ * Disables suggested label
267
+ */
268
+ disableSuggestedLabel?: boolean;
264
269
  }
265
270
  interface TooltipConfig {
266
271
  hide?: boolean;
@@ -303,13 +308,17 @@ type RangeThreshold = {
303
308
  };
304
309
  type Threshold = LineThreshold | RangeThreshold;
305
310
  interface TooltipSerie {
306
- metric: MetricMetadata;
311
+ metric: LabeledMetricMetadata;
307
312
  serie: uPlot.Series;
308
313
  color: string;
309
314
  value?: number;
310
315
  formattedValue?: string;
311
316
  attributes?: Record<string, string>;
312
317
  }
318
+ interface LabeledMetric {
319
+ name: string;
320
+ label: string;
321
+ }
313
322
 
314
323
  type ScopeConfig = TimeseriesQueryConfig & ChartVisualConfig & {
315
324
  /**
@@ -369,7 +378,7 @@ type ScopeProps = ScopeConfig & {
369
378
  * }
370
379
  * ```
371
380
  */
372
- declare function Scope({ children, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, }: ScopeProps): react_jsx_runtime.JSX.Element;
381
+ declare function Scope({ children, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, disableSuggestedLabel, }: ScopeProps): react_jsx_runtime.JSX.Element;
373
382
  type UseScopeReturn = TimeseriesQueryConfig & ChartVisualConfig & {
374
383
  timeRange: TimeRange;
375
384
  appearance: {
@@ -417,7 +426,7 @@ type UnblindProviderProps = UnblindClientProviderProps & ScopeProps & {
417
426
  * }
418
427
  * ```
419
428
  */
420
- declare function UnblindProvider({ children, queryClient, apiBaseUrl, fetchImpl, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, }: UnblindProviderProps): react_jsx_runtime.JSX.Element;
429
+ declare function UnblindProvider({ children, queryClient, apiBaseUrl, fetchImpl, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, disableSuggestedLabel, }: UnblindProviderProps): react_jsx_runtime.JSX.Element;
421
430
 
422
431
  interface UseMetricsReturn {
423
432
  metrics: MetricMetadataList | undefined;
@@ -528,8 +537,14 @@ type TimeseriesProps = Exclude<TimeseriesQueryConfig, "startTime" | "endTime" |
528
537
  * ```jsx
529
538
  * <Timeseries metrics={["nodejs.eventloop.p50", "..."]} />
530
539
  * ```
540
+ *
541
+ * @example
542
+ * Labeled metrics
543
+ * ```jsx
544
+ * <Timeseries metrics={{ name: "nodejs.eventloop.p50", label: "P50" ]} />
545
+ * ```
531
546
  */
532
- metrics: Array<string> | string;
547
+ metrics: Array<LabeledMetric> | Array<string> | string;
533
548
  /**
534
549
  * Optional className for the chart container.
535
550
  */
@@ -565,12 +580,12 @@ type TimeseriesProps = Exclude<TimeseriesQueryConfig, "startTime" | "endTime" |
565
580
  * </Scope>
566
581
  * ```
567
582
  */
568
- declare function Timeseries({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, interval: propInterval, type, className, appearance: propAppearance, unit: propUnit, thresholds: propThresholds, min: propMin, max: propMax, colors: propColors, tooltip: propTooltip, fill: propFill, hideAxis: propHideAxis, hideCursor: propHideCursor, relativeTimeAxis: propRelativeTimeAxis, onResponse, invertSort: propInvertSort, }: TimeseriesProps): react_jsx_runtime.JSX.Element;
583
+ declare function Timeseries({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, interval: propInterval, type, className, appearance: propAppearance, tooltip: propTooltip, onResponse, ...chartStyleProps }: TimeseriesProps): react_jsx_runtime.JSX.Element;
569
584
 
570
585
  interface ChartProps extends ChartVisualConfig {
571
586
  times: Array<number>;
572
587
  series: Serie[];
573
- metadata: Record<string, MetricMetadata>;
588
+ metadata: Record<string, LabeledMetricMetadata>;
574
589
  type: ChartType;
575
590
  invertSort?: boolean;
576
591
  className?: string;
package/dist/index.d.ts CHANGED
@@ -65,6 +65,7 @@ interface TooltipProps {
65
65
  stacked?: boolean;
66
66
  invertSort?: boolean;
67
67
  visibilityLimit?: number;
68
+ disableSuggestedLabel?: boolean;
68
69
  }
69
70
 
70
71
  /**
@@ -82,7 +83,7 @@ type AggregationOperator = "avg" | "sum" | "max" | "min" | "p90" | "p99" | "p50"
82
83
  interface MetricMetadata {
83
84
  name: string;
84
85
  description: string;
85
- displayName?: string;
86
+ suggestedLabel?: string;
86
87
  unit: {
87
88
  code?: string;
88
89
  name?: string;
@@ -90,8 +91,10 @@ interface MetricMetadata {
90
91
  category?: string;
91
92
  };
92
93
  type: MetricType;
93
- operator?: AggregationOperator;
94
94
  }
95
+ type LabeledMetricMetadata = MetricMetadata & {
96
+ label?: string;
97
+ };
95
98
  /**
96
99
  * List of metric metadata.
97
100
  */
@@ -103,7 +106,6 @@ interface Serie {
103
106
  metric: string;
104
107
  attributes?: Record<string, string>;
105
108
  values: Array<number>;
106
- queryName?: string;
107
109
  queryIndex: number;
108
110
  isEmpty?: boolean;
109
111
  }
@@ -111,7 +113,6 @@ interface Serie {
111
113
  * Query definition for timeseries requests.
112
114
  */
113
115
  interface TimeseriesQuery {
114
- queryName?: string;
115
116
  metrics: Array<string>;
116
117
  groupBy?: Array<string>;
117
118
  operator?: AggregationOperator;
@@ -261,6 +262,10 @@ interface ChartVisualConfig {
261
262
  * Defaults to false
262
263
  */
263
264
  invertSort?: boolean;
265
+ /**
266
+ * Disables suggested label
267
+ */
268
+ disableSuggestedLabel?: boolean;
264
269
  }
265
270
  interface TooltipConfig {
266
271
  hide?: boolean;
@@ -303,13 +308,17 @@ type RangeThreshold = {
303
308
  };
304
309
  type Threshold = LineThreshold | RangeThreshold;
305
310
  interface TooltipSerie {
306
- metric: MetricMetadata;
311
+ metric: LabeledMetricMetadata;
307
312
  serie: uPlot.Series;
308
313
  color: string;
309
314
  value?: number;
310
315
  formattedValue?: string;
311
316
  attributes?: Record<string, string>;
312
317
  }
318
+ interface LabeledMetric {
319
+ name: string;
320
+ label: string;
321
+ }
313
322
 
314
323
  type ScopeConfig = TimeseriesQueryConfig & ChartVisualConfig & {
315
324
  /**
@@ -369,7 +378,7 @@ type ScopeProps = ScopeConfig & {
369
378
  * }
370
379
  * ```
371
380
  */
372
- declare function Scope({ children, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, }: ScopeProps): react_jsx_runtime.JSX.Element;
381
+ declare function Scope({ children, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, disableSuggestedLabel, }: ScopeProps): react_jsx_runtime.JSX.Element;
373
382
  type UseScopeReturn = TimeseriesQueryConfig & ChartVisualConfig & {
374
383
  timeRange: TimeRange;
375
384
  appearance: {
@@ -417,7 +426,7 @@ type UnblindProviderProps = UnblindClientProviderProps & ScopeProps & {
417
426
  * }
418
427
  * ```
419
428
  */
420
- declare function UnblindProvider({ children, queryClient, apiBaseUrl, fetchImpl, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, }: UnblindProviderProps): react_jsx_runtime.JSX.Element;
429
+ declare function UnblindProvider({ children, queryClient, apiBaseUrl, fetchImpl, timeRange, startTime, endTime, interval, attributes, groupBy, operator, appearance, tooltip, colors, fill, hideAxis, hideCursor, relativeTimeAxis, invertSort, disableSuggestedLabel, }: UnblindProviderProps): react_jsx_runtime.JSX.Element;
421
430
 
422
431
  interface UseMetricsReturn {
423
432
  metrics: MetricMetadataList | undefined;
@@ -528,8 +537,14 @@ type TimeseriesProps = Exclude<TimeseriesQueryConfig, "startTime" | "endTime" |
528
537
  * ```jsx
529
538
  * <Timeseries metrics={["nodejs.eventloop.p50", "..."]} />
530
539
  * ```
540
+ *
541
+ * @example
542
+ * Labeled metrics
543
+ * ```jsx
544
+ * <Timeseries metrics={{ name: "nodejs.eventloop.p50", label: "P50" ]} />
545
+ * ```
531
546
  */
532
- metrics: Array<string> | string;
547
+ metrics: Array<LabeledMetric> | Array<string> | string;
533
548
  /**
534
549
  * Optional className for the chart container.
535
550
  */
@@ -565,12 +580,12 @@ type TimeseriesProps = Exclude<TimeseriesQueryConfig, "startTime" | "endTime" |
565
580
  * </Scope>
566
581
  * ```
567
582
  */
568
- declare function Timeseries({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, interval: propInterval, type, className, appearance: propAppearance, unit: propUnit, thresholds: propThresholds, min: propMin, max: propMax, colors: propColors, tooltip: propTooltip, fill: propFill, hideAxis: propHideAxis, hideCursor: propHideCursor, relativeTimeAxis: propRelativeTimeAxis, onResponse, invertSort: propInvertSort, }: TimeseriesProps): react_jsx_runtime.JSX.Element;
583
+ declare function Timeseries({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, interval: propInterval, type, className, appearance: propAppearance, tooltip: propTooltip, onResponse, ...chartStyleProps }: TimeseriesProps): react_jsx_runtime.JSX.Element;
569
584
 
570
585
  interface ChartProps extends ChartVisualConfig {
571
586
  times: Array<number>;
572
587
  series: Serie[];
573
- metadata: Record<string, MetricMetadata>;
588
+ metadata: Record<string, LabeledMetricMetadata>;
574
589
  type: ChartType;
575
590
  invertSort?: boolean;
576
591
  className?: string;
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var Ct=Object.create;var re=Object.defineProperty;var xt=Object.getOwnPropertyDescriptor;var St=Object.getOwnPropertyNames;var Pt=Object.getPrototypeOf,Rt=Object.prototype.hasOwnProperty;var kt=(e,t)=>{for(var r in t)re(e,r,{get:t[r],enumerable:!0})},De=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of St(t))!Rt.call(e,i)&&i!==r&&re(e,i,{get:()=>t[i],enumerable:!(o=xt(t,i))||o.enumerable});return e};var fe=(e,t,r)=>(r=e!=null?Ct(Pt(e)):{},De(t||!e||!e.__esModule?re(r,"default",{value:e,enumerable:!0}):r,e)),At=e=>De(re({},"__esModule",{value:!0}),e);var pr={};kt(pr,{Chart:()=>pe,Empty:()=>oe,Error:()=>ie,Loading:()=>ne,Scope:()=>Z,Timeseries:()=>ht,UnblindProvider:()=>Ie,useLogs:()=>Ke,useMetrics:()=>qe,useRefresh:()=>ye,useScope:()=>O,useTimeseries:()=>se,useUsage:()=>We});module.exports=At(pr);var _=require("@tanstack/react-query"),q=require("react"),ge=require("react/jsx-runtime"),Ve=(0,q.createContext)(void 0);function be({children:e,queryClient:t,queryClientConfig:r,apiBaseUrl:o="/api/unblind",fetchImpl:i}){let n=(0,q.useMemo)(()=>{if(t)return t;let s={refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1},l={defaultOptions:{queries:s}};return r?new _.QueryClient({...r,defaultOptions:{...r.defaultOptions,queries:{...s,...r.defaultOptions?.queries}}}):new _.QueryClient(l)},[t,r]),a=(0,q.useMemo)(()=>({apiBaseUrl:o,fetchImpl:i}),[o,i]);return(0,ge.jsx)(_.QueryClientProvider,{client:n,children:(0,ge.jsx)(Ve.Provider,{value:a,children:e})})}function N(){let e=(0,q.useContext)(Ve);if(!e)throw new Error("useUnblindConfig must be used within an UnblindClientProvider. Please wrap your app or component tree with <UnblindClientProvider>.");return e}function ye(){let e=(0,_.useQueryClient)();return(0,q.useCallback)(async()=>{await e.refetchQueries({queryKey:["unblind","timeseries"]})},[e])}var V=require("react");var D=require("react/jsx-runtime");function oe(){return(0,D.jsx)("div",{className:"ub-default",children:(0,D.jsxs)("div",{className:"ub-empty-content",children:[(0,D.jsx)("div",{className:"ub-empty-icon-wrapper",children:(0,D.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"ub-icon",children:(0,D.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})})}),(0,D.jsx)("p",{className:"ub-empty-text","data-text":"No data available for this time range"})]})})}function ie(){return(0,D.jsx)("div",{className:"ub-default-error"})}function ne(){return(0,D.jsx)("div",{className:"ub-default-loading","data-text":"Loading"})}var Oe=require("react/jsx-runtime"),Te=(0,V.createContext)(void 0);function Z({children:e,timeRange:t,startTime:r,endTime:o,interval:i,attributes:n,groupBy:a,operator:s,appearance:l,tooltip:m,colors:f,fill:g,hideAxis:h,hideCursor:u,relativeTimeAxis:b,invertSort:y}){let d=(0,V.useContext)(Te),v=l?.components?.Loading||d?.appearance?.components?.Loading,T=l?.components?.Error||d?.appearance?.components?.Error,x=l?.components?.Tooltip||d?.appearance?.components?.Tooltip,p=l?.components?.Empty||d?.appearance?.components?.Empty,C=typeof m?.hide=="boolean"?m?.hide:d?.tooltip?.hide,P=typeof m?.visibilityLimit=="number"?m?.visibilityLimit:d?.tooltip?.visibilityLimit,R=(0,V.useMemo)(()=>({components:{...v&&{Loading:v},...T&&{Error:T},...x&&{Tooltip:x},...p&&{Empty:p}}}),[v,T,x,p]),k=(0,V.useMemo)(()=>({hide:C,visibilityLimit:P}),[C,P]),L=(0,V.useMemo)(()=>({timeRange:t??d?.timeRange,startTime:r??d?.startTime,endTime:o??d?.endTime,interval:i??d?.interval,attributes:n??d?.attributes,groupBy:a??d?.groupBy,operator:s??d?.operator,colors:f??d?.colors,relativeTimeAxis:typeof b=="boolean"?b:d?.relativeTimeAxis,fill:typeof g=="boolean"?g:d?.fill,hideAxis:typeof h=="boolean"?h:d?.hideAxis,hideCursor:typeof u=="boolean"?u:d?.hideCursor,invertSort:typeof y=="boolean"?y:d?.invertSort,appearance:R,tooltip:k}),[t,r,o,i,n,a,s,f,g,b,h,u,R,k,d,y]);return(0,Oe.jsx)(Te.Provider,{value:L,children:e})}var Lt="6h";function O(){let e=(0,V.useContext)(Te);return(0,V.useMemo)(()=>({...e,timeRange:e?.timeRange||Lt,appearance:{components:{Loading:e?.appearance?.components?.Loading??ne,Error:e?.appearance?.components?.Error??ie,Empty:e?.appearance?.components?.Empty??oe,Tooltip:e?.appearance?.components?.Tooltip}}}),[e])}var ve=require("react/jsx-runtime");function Ie({children:e,queryClient:t,apiBaseUrl:r,fetchImpl:o,timeRange:i,startTime:n,endTime:a,interval:s,attributes:l,groupBy:m,operator:f,appearance:g,tooltip:h,colors:u,fill:b,hideAxis:y,hideCursor:d,relativeTimeAxis:v,invertSort:T}){return(0,ve.jsx)(be,{queryClient:t,apiBaseUrl:r,fetchImpl:o,children:(0,ve.jsx)(Z,{timeRange:i,startTime:n,endTime:a,interval:s,attributes:l,groupBy:m,operator:f,appearance:g,tooltip:h,colors:u,fill:b,hideAxis:y,hideCursor:d,relativeTimeAxis:v,invertSort:T,children:e})})}var ze=require("@tanstack/react-query");function qe(){let{apiBaseUrl:e,fetchImpl:t=fetch}=N(),r=(0,ze.useQuery)({queryKey:["unblind","metrics"],queryFn:async()=>{let o=await t(`${e}/metrics`,{headers:{"Content-Type":"application/json"}});if(!o.ok)throw new Error("Error loading metrics metadata");if(o.status===200){let{data:i}=await o.json();return i}else throw new Error("Unexpected status code")}});return{metrics:r.data,isLoading:r.isLoading,hasError:r.isError,refetch:r.refetch}}var Qe=require("@tanstack/react-query"),j=require("react");var Fe=fe(require("ms"));function Be({scope:e,props:t}){return t.timeRange||t.startTime&&t.endTime?t:e}function wt(e){let t=Math.floor(Date.now()/1e3);return[t-Math.floor((0,Fe.default)(e)/1e3),t]}function H(e,t,r){let o,i;if(typeof t=="number"&&typeof r=="number")o=t,i=r;else if(e){let[n,a]=wt(e);o=n,i=a}else throw new Error("Either timeRange or both startTime and endTime must be provided");return[o,i]}var _e=require("react");function W(e){let t=O(),{timeRange:r,startTime:o,endTime:i}=Be({props:e,scope:t});return(0,_e.useMemo)(()=>({timeRange:r,startTime:o,endTime:i}),[r,o,i])}function se(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{startTime:o,endTime:i,timeRange:n}=W(e),{queries:a,interval:s}=e,l=(0,j.useMemo)(()=>a.map(p=>p.metrics.join(",")).join(","),[a]),m=(0,j.useMemo)(()=>a.map(p=>{let C=p.attributes;if(!C)return"";let P=Object.keys(C);return P.length===0?"":P.map(R=>R+":"+C[R]?.join(",")).join(",")}).join(","),[a]),f=(0,j.useMemo)(()=>a.map(p=>p.operator),[a]),g=(0,j.useMemo)(()=>a.map(p=>p.groupBy).join(", "),[a]),u=(0,Qe.useQuery)({queryKey:["unblind","timeseries",l,m,o,i,n,s,f,g],queryFn:async()=>{if(!l)throw new Error("Missing required parameters");if(l.length===0)throw new Error("No series provided");let[p,C]=H(n,o,i),P={queries:a,startTime:p,endTime:C,interval:s},R=await r(`${t}/tenants/timeseries`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)});if(!R.ok)throw new Error("Error fetching metric");let{series:k,times:L,metadata:E}=await R.json();if(!k)throw console.error("Series not found"),new Error("Series not found");return{series:k,times:L,metadata:E}},enabled:!!l&&(typeof o=="number"&&typeof i=="number"||!!n)}),{metadata:b,series:y,times:d}=(0,j.useMemo)(()=>u.data?{series:u.data.series,times:u.data.times,metadata:u.data.metadata}:{series:[],times:[],metadata:{}},[u]),v=u.isLoading,T=u.isFetching,x=u.isError;return{data:{series:y,times:d,metadata:b},isLoading:v,isFetching:T,hasError:x,refetch:u.refetch}}var $e=require("@tanstack/react-query"),He=require("react");function We(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{startTime:o,endTime:i,timeRange:n}=W(e),s=(0,$e.useQuery)({queryKey:["unblind","usage",n,o,i],queryFn:async()=>{let[g,h]=H(n,o,i),u=`${t}/tenants/usage`,b=await r(u,{headers:{"Content-Type":"application/json"},body:JSON.stringify({startTime:g,endTime:h})});if(!b.ok)throw new Error("Error fetching usage");let{data:y}=await b.json();if(!y)throw new Error("usage not found");return y},enabled:typeof o=="number"&&typeof i=="number"||!!n}),l=(0,He.useMemo)(()=>s.data?s.data||[]:[],[s]),m=s.isLoading||s.isRefetching,f=s.isError;return{usage:l,isLoading:m,hasError:f,refetch:s.refetch}}var je=require("@tanstack/react-query"),Ge=require("react");function Ke(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{timeRange:o,startTime:i,endTime:n}=W(e),{attributes:a,body:s,severity:l,traceId:m,spanId:f,logId:g}=e,h=(0,je.useInfiniteQuery)({queryKey:["unblind","logs",o,i,n,s,l,g,JSON.stringify(a)],queryFn:async({pageParam:b})=>{let[y,d]=H(o,i,n),v=await r(`${t}/tenants/logs`,{method:"POST",body:JSON.stringify({attributes:a,body:s,severity:l,traceId:m,spanId:f,logId:g,startTime:y,endTime:d,pagination:{page:b}}),headers:{"Content-Type":"application/json"}});if(!v.ok)throw new Error("Error fetching logs");let{data:T,nextPage:x}=await v.json();if(!T)throw new Error("data not found");return{data:T,nextPage:x}},initialPageParam:void 0,getNextPageParam:b=>b.nextPage});return{logs:(0,Ge.useMemo)(()=>h.data?h.data.pages.flatMap(b=>b.data||[]):[],[h.data]),isLoading:h.isLoading,hasError:h.isError,hasNextPage:h.hasNextPage??!1,fetchNextPage:h.fetchNextPage,isFetchingNextPage:h.isFetchingNextPage,refetch:h.refetch}}var me=require("react");var ue=require("react"),mt=fe(require("uplot"));var ee=e=>"value"in e,ae=e=>"from"in e&&"to"in e;var te=fe(require("uplot")),it=require("@unblind/units");var F=require("@unblind/units");var A={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,month:24192e5,year:31536e6},G={second:[1,2,5,10,15,30],minute:[1,2,5,10,15,30],hour:[1,2,3,4,6,8,12],day:[1,2,3,7,14],month:[1,2,3,6],year:[1,2,5,10,20,50,100]};function Ut(e,t,r,o){if(t>7*A.day){let i=F.systemDateFormats.interval.year,n=Math.round(A.year/A.day)*A.day;if(Math.round(t/A.day)*A.day===n)i=F.systemDateFormats.interval.year;else{if(t<=A.year)return e.map(s=>{let l=new Date(s);return(o==="UTC"?l.getUTCDate():l.getDate())===1?l.toLocaleDateString(void 0,{month:"short",year:"numeric",timeZone:o}):l.toLocaleDateString(void 0,{day:"numeric",month:"short",timeZone:o})});i=F.systemDateFormats.interval.day}return e.map(s=>(0,F.dateTimeFormat)(s,{format:i,timeZone:o}))}return e.map(i=>{let n=new Date(i),a=t<A.minute,s=t<A.second,l=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",hour12:!1,timeZone:o});return(l==="00:00"||l==="24:00")&&!a&&!s?n.toLocaleDateString(void 0,{day:"2-digit",month:"short",timeZone:o}):n.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:a?"2-digit":void 0,fractionalSecondDigits:s?3:void 0,hour12:!1,timeZone:o})})}function Et(e){let t=[{size:A.second/1e3,increments:G.second},{size:A.minute/1e3,increments:G.minute},{size:A.hour/1e3,increments:G.hour},{size:A.day/1e3,increments:G.day},{size:A.month/1e3,increments:G.month},{size:A.year/1e3,increments:G.year}];for(let i of t)for(let n of i.increments){let a=i.size*n;if(a>=e)return{increment:a*1e3,multiplier:n}}let r=t[t.length-1],o=r.increments[r.increments.length-1];return{increment:r.size*o*1e3,multiplier:o}}function Mt(e,t,r){return[t,r]}function Nt(e,t,r){return t.length===0?[]:t.map((o,i)=>i===0||i===t.length-1?(0,F.dateTimeFormatTimeAgo)(o*1e3,{timeZone:r}):"")}function Dt(e,t,r){let o=e.scales.x,i=((o?.max??0)-(o?.min??0))*1e3,n=Math.floor(e.width/100),a=i/1e3/n,{increment:s}=Et(a),l=t.map(m=>m*1e3);return Ut(l,s,i,r)}function Xe(e,t,r=!1,o=!1){let i=r?(a,s,l,m)=>Mt(a,l,m):void 0,n=r?(a,s)=>Nt(a,s,t):(a,s)=>Dt(a,s,t);return{font:K(e),labelFont:K(e),grid:{show:!1,width:.5},ticks:{width:.5},splits:i,values:n,size:20,show:!o,align:r?2:void 0,space:(a,s,l,m,f)=>f<400?100:f<800?150:250}}var X=require("@floating-ui/dom"),Ye=require("react-dom/client"),Vt=4,Ot=8,Ce=class{overlay=null;reactRoot=null;renderedUplot=null;initialize(){this.overlay||(this.overlay=document.createElement("div"),this.overlay.id="unblind-tooltip-overlay",this.overlay.style.display="none",this.overlay.style.position="fixed",this.overlay.style.pointerEvents="none",this.overlay.style.zIndex="9999",document.body.appendChild(this.overlay),this.reactRoot=(0,Ye.createRoot)(this.overlay))}getOverlay(){return this.overlay}render(t,r){this.reactRoot?(this.reactRoot.render(r),this.renderedUplot=t):this.renderedUplot=null}show(){this.overlay&&(this.overlay.style.display="block")}hide(t){if(t!==this.renderedUplot){console.warn("Hide call plot");return}this.overlay&&(this.overlay.style.display="none"),this.render(null,null)}getRenderedUplot(){return this.renderedUplot}async positionTooltip(t){let r=this.getOverlay();if(r){let{x:o,y:i}=await(0,X.computePosition)({getBoundingClientRect:()=>({x:t.left,y:t.top,width:0,height:0,top:t.top,left:t.left,right:t.left,bottom:t.top})},r,{placement:"top-start",strategy:"fixed",middleware:[(0,X.offset)({mainAxis:Vt,crossAxis:Ot}),(0,X.flip)()]});r.style.left=`${o}px`,r.style.top=`${i}px`}}},U=new Ce;var xe=require("@unblind/units"),Y=require("react"),c=require("react/jsx-runtime"),It=6,Je=(0,Y.createContext)(null);function le(){let e=(0,Y.useContext)(Je);if(!e)throw new Error("useTooltipSerie must be used within a SerieProvider");return e}function zt({serie:e,children:t}){return(0,c.jsx)(Je.Provider,{value:e,children:t})}function Se({className:e="ub-tooltip-divider",...t}){return(0,c.jsx)("hr",{role:"presentation",...t,className:e})}function qt({formattedTime:e,unitCategory:t,tooltipSerieList:r,visibilityLimit:o,invertSort:i}){let n=r.slice(0,o),a=r.slice(o);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-metrics",children:[(0,c.jsxs)(Ae,{children:[(0,c.jsx)(Le,{children:e}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)(_t,{children:t})})]}),(0,c.jsx)(Se,{}),(0,c.jsxs)(ke,{children:[n.map(s=>(0,c.jsxs)(Re,{serie:s,children:[(0,c.jsx)(Ue,{}),(0,c.jsx)(Ee,{children:(0,c.jsx)(Ze,{})}),(0,c.jsx)(we,{})]},s.metric.name)),(0,c.jsx)(Pe,{series:a,invertSort:i})]})]})}function Ft({formattedTime:e,tooltipSerieList:t,visibilityLimit:r,invertSort:o}){let i=t[0],n=t.slice(0,r),a=t.slice(r);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-attributes",children:[(0,c.jsxs)(Ae,{children:[(0,c.jsx)(Le,{children:e}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)("span",{className:"ub-tooltip-serie-metric",children:tt(i?.metric.name||"")})})]}),(0,c.jsx)(Se,{}),(0,c.jsxs)(ke,{children:[n.map((s,l)=>(0,c.jsxs)(Re,{serie:s,children:[(0,c.jsx)(Ue,{}),(0,c.jsx)(Ee,{children:(0,c.jsx)(et,{})}),(0,c.jsx)(we,{})]},"serie_"+l)),(0,c.jsx)(Pe,{series:a,invertSort:o})]})]})}function Bt({formattedTime:e,tooltipSerieList:t,unitCategory:r,visibilityLimit:o,invertSort:i}){let n=t.slice(0,o),a=t.slice(o);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-attributes",children:[(0,c.jsxs)(Ae,{children:[(0,c.jsx)(Le,{children:e}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)("span",{className:"ub-tooltip-unit-category",children:r})})]}),(0,c.jsx)(Se,{}),(0,c.jsxs)(ke,{children:[n.map((s,l)=>(0,c.jsxs)(Re,{serie:s,children:[(0,c.jsx)(Ue,{}),(0,c.jsxs)(Ee,{children:[(0,c.jsx)(Ze,{}),(0,c.jsx)(et,{})]}),(0,c.jsx)(we,{})]},"serie"+l)),(0,c.jsx)(Pe,{series:a,invertSort:i})]})]})}function _t(e){return(0,c.jsx)("span",{className:"ub-tooltip-unit-category",children:e.children})}function Pe({series:e,invertSort:t}){let r=e[0]?.formattedValue,o=!e.some(n=>(n.value||0)>0),i=!e.some(n=>n.value!==void 0);return e.length>0?i?(0,c.jsx)("span",{className:"ub-tooltip-summary",children:(0,c.jsxs)("span",{children:["+",e.length," more with no data"]})}):o?(0,c.jsx)("span",{className:"ub-tooltip-summary",children:(0,c.jsxs)("span",{children:["+",e.length," more with zero values"]})}):(0,c.jsxs)("span",{className:"ub-tooltip-summary",children:[(0,c.jsxs)("span",{children:["+",e.length," more with "]}),(0,c.jsx)("span",{children:`${t?"\u2265":"\u2264"} ${r}`})]}):(0,c.jsx)(c.Fragment,{})}function Re(e){return(0,c.jsx)(zt,{serie:e.serie,children:(0,c.jsx)("div",{className:"ub-tooltip-serie",children:e.children})})}function ke(e){return(0,c.jsx)("div",{className:"ub-tooltip-content",children:e.children})}function Ae(e){return(0,c.jsx)("div",{className:"ub-tooltip-header",children:e.children})}function Le(e){return(0,c.jsx)("div",{className:"ub-tooltip-datetime",children:e.children})}function Ze(){let e=le();return(0,c.jsx)("span",{className:"ub-tooltip-serie-metric",children:tt(e.metric.name)})}function we(){let e=le();return e.formattedValue?(0,c.jsx)("span",{className:"ub-tooltip-serie-value",children:e.formattedValue}):(0,c.jsx)("span",{className:"ub-tooltip-serie-value-empty",children:"\u2013"})}function Ue(){let e=le();return(0,c.jsx)("span",{style:{backgroundColor:e.color},className:"ub-tooltip-serie-color"})}function Ee(e){return(0,c.jsx)("span",{className:"ub-tooltip-serie-label ub-truncate",children:e.children})}function et(){let{attributes:e}=le();if(!e)return null;let t=Object.values(e);return(0,c.jsx)("div",{className:"ub-tooltip-serie-attributes ub-truncate",children:t.map((r,o)=>(0,c.jsxs)(Y.Fragment,{children:[(0,c.jsx)("span",{className:"ub-tooltip-serie-attribute-value",children:r}),o<t.length-1&&(0,c.jsx)("span",{"data-text":", ",className:"ub-tooltip-serie-attribute-divider"})]},"tooltip-"+r))})}function Qt({tooltipSerieList:e,invertSort:t}){return t?e.sort((r,o)=>(Number(r.value)||0)-(Number(o.value)||0)):e.sort((r,o)=>(Number(o.value)||0)-(Number(r.value)||0))}function tt(e,t){let r=e.split(/[._-]/),o=r[r.length-1]||"";return t?o:o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()}function rt({timestamp:e,tooltipSerieList:t,timeZone:r,spansMultipleDays:o,hasMultipleMetrics:i,hasAttributes:n,invertSort:a,visibilityLimit:s}){let l=Qt({tooltipSerieList:t,invertSort:a}),m=o?(0,xe.dateTimeFormat)(e*1e3,{format:"MMM DD, HH:mm",timeZone:r}):(0,xe.dateTimeFormat)(e*1e3,{format:"HH:mm",timeZone:r}),f=s||It;return n?n&&!i?(0,c.jsx)(Ft,{formattedTime:m,tooltipSerieList:l,visibilityLimit:f,invertSort:a}):(0,c.jsx)(Bt,{formattedTime:m,unitCategory:"",tooltipSerieList:l,visibilityLimit:f,invertSort:a}):(0,c.jsx)(qt,{formattedTime:m,unitCategory:"",tooltipSerieList:l,visibilityLimit:f,invertSort:a})}var Me=require("react/jsx-runtime");function $t(e,t){if(!e||e.length===0)return!1;let r=e[0],o=e[e.length-1];if(r==null||o==null)return!1;let i=new Date(r*1e3),n=new Date(o*1e3),a=s=>t==="UTC"?`${s.getUTCFullYear()}-${s.getUTCMonth()}-${s.getUTCDate()}`:s.toLocaleDateString(void 0,{timeZone:t});return a(i)!==a(n)}function Ht(e,t){let r=!1;for(let i=1;i<e.series.length;i++)if(e.data[i]?.[t]!=null){r=!0;break}if(r)return t;let o=e.data[0].length;for(let i=1;t+i<o||t-i>=0;i++){let n=t-i,a=t+i;if(n>=0){for(let s=1;s<e.series.length;s++)if(e.data[s]?.[n]!=null)return n}if(a<o){for(let s=1;s<e.series.length;s++)if(e.data[s]?.[a]!=null)return a}}return t}function Wt(e,t,r,o,i,n,a){let s=[],l=e.data[0],m=new Set,f=new Set,g=!1;for(let h=1;h<e.series.length;h++){let u=e.data[h]?.[t]??null;if(o&&u!=null&&h>1){let C=e.data[h-1]?.[t]??0;u=u-C}let b=e.series[h],y=n?.[h-1];if(!y){console.warn("Original serie not found");continue}let d=i[y.metric];if(!d){console.warn("Metric metadata not found");continue}m.add(y.metric);let v=y?.attributes;if(v&&Object.keys(v).length>0){g=!0;for(let C in v)f.add(C)}let T=b?.stroke,x=typeof T=="function"?T(e,h):T??"#ffffff00",p=u==null?void 0:r?r(u):String(u);s.push({metric:d,color:x,value:u===null?void 0:u,formattedValue:p,attributes:v,serie:b})}return{tooltipSerieList:s,hasAttributes:g,hasMultipleMetrics:m.size>1,hasMultipleAttributes:f.size>1,spansMultipleDays:$t(l,a)}}function ot(e,t,r,o,i,n,a,s){let l,m,f,g=!1;function h(){let u=l.getBoundingClientRect();m=u.left,f=u.top}return{hooks:{init:u=>{U.initialize(),l=u.over,window.addEventListener("scroll",h,!0),window.addEventListener("resize",h),l.onmouseenter=()=>{g=!0,U.show()},l.onmouseleave=()=>{g=!1,U.getRenderedUplot()===u&&U.hide(u)},h()},setSize:()=>{h()},setCursor:u=>{let{left:b,top:y,idx:d}=u.cursor;if(!g||d==null){U.getRenderedUplot()===u&&U.hide(u);return}let T=Ht(u,d),x=u.data[0][T];if(x===void 0)return;let{tooltipSerieList:p,hasAttributes:C,hasMultipleAttributes:P,hasMultipleMetrics:R,spansMultipleDays:k}=Wt(u,T,e,t,r,n,o);U.show();let L=i,E=L?(0,Me.jsx)(L,{timestamp:x,tooltipSerieList:p,timeZone:o}):(0,Me.jsx)(rt,{timestamp:x,tooltipSerieList:p,timeZone:o,spansMultipleDays:k,stacked:t,hasAttributes:C,hasMultipleAttributes:P,hasMultipleMetrics:R,visibilityLimit:a,invertSort:s});U.render(u,E),U.positionTooltip({left:(b||0)+m,top:(y||0)+f})},destroy(u){window.removeEventListener("scroll",h,!0),window.removeEventListener("resize",h),l&&(l.onmouseenter=null,l.onmouseleave=null),U.getRenderedUplot()===u&&U.hide(u)}}}}var ce=["oklch(0.70 0.24 293)","oklch(0.85 0.18 95)","oklch(0.65 0.25 255)","oklch(0.72 0.26 27)","oklch(0.70 0.22 150)","oklch(0.78 0.18 50)","oklch(0.72 0.18 215)","oklch(0.70 0.27 301)","oklch(0.75 0.20 90)","oklch(0.68 0.23 277)","oklch(0.70 0.18 193)","oklch(0.68 0.25 4)"],K=e=>`${getComputedStyle(document.documentElement).getPropertyValue("--ub-chart-font-size").trim()} ${e}`,nt=(e,t)=>{let r=e;return t&&t.unit&&t.unit.code&&t.unit.code!=="1"&&(!r&&t.unit?r=t.unit.code:r&&t.unit.code!==r&&(r=void 0)),r};function jt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Array.isArray(e.fill)&&Array.isArray(e.border)}function Gt(e){return Array.isArray(e)}var Kt=12,Xt=({isFilling:e,useSolid:t,index:r})=>{let o=r%Kt+1;return e?t?`--ub-chart-serie-color-${o}`:`--ub-chart-serie-fill-color-${o}`:`--ub-chart-serie-color-${o}`},st=(e,t,r,o,i,n)=>{let a=o==="bar"||o==="area";if(r)return Gt(r)?r[t]:jt(r)?n?r.fill[t]:r.border[t]:r(e,t,o,n);let s=Xt({isFilling:n,useSolid:a,index:t}),l=i.getPropertyValue(s).trim();return l||(n&&a?ce[t%ce.length]?.replace(")"," / 0.4)"):ce[t%ce.length])},Yt=e=>{let t=te.default.paths.bars({size:[.6,100],radius:0,gap:0}),r=te.default.paths.linear({alignGaps:0}),o=te.default.paths.spline({alignGaps:1}),i=te.default.paths.stepped({alignGaps:1});switch(e){case"line":return r;case"bar":return t;case"area":return r;case"step":return i;case"spline":return o;default:return r}},Jt=(e,t,r,o,i)=>st(e,t,r,o,i,!0),Zt=(e,t)=>{switch(e){case"bar":return 1;case"line":return t?1.5:2;case"spline":return t?1.5:2;case"area":return 1;case"step":return 1.5;default:return 1}},er=(e,t,r)=>{if(t<0||r<0)return[t,r];let o=e.posToVal(t,"x"),i=e.data[0];if(!i||i.length===0)return[t,r];let n=0,a=0,s=i.length-1;for(;s-a>1;){let u=Math.floor((a+s)/2),b=i[u];b!=null&&b<o?a=u:s=u}let l=i[a],m=i[s];l!=null&&m!=null?n=Math.abs(l-o)<Math.abs(m-o)?a:s:l!=null?n=a:m!=null&&(n=s);let f=n;for(let u=n;u>=0;u--){let b=!1;for(let y=1;y<e.data.length;y++){let d=e.data[y];if(d&&d[u]!=null){b=!0;break}}if(b){f=u;break}}let g=i[f];return g==null?[t,r]:[e.valToPos(g,"x"),r]},tr=(e,t)=>{let r=t.getPropertyValue("--ub-chart-font-color").trim(),o=t.getPropertyValue("--ub-chart-grid-color").trim(),i=e.axes?.[0],n=e.axes?.[1];return i&&(i.stroke=r,i.grid?i.grid.stroke=o:i.grid={stroke:o}),n&&(n.stroke=r,n.grid?n.grid.stroke=o:n.grid={stroke:o}),e},rr=(e,t)=>e.getPropertyValue(`--ub-chart-threshold-${t}`).trim()||e.getPropertyValue("--ub-chart-threshold-default").trim(),or=(e,t)=>e.getPropertyValue(`--ub-chart-threshold-${t}-fill`).trim()||e.getPropertyValue("--ub-chart-threshold-default-fill").trim(),ir=e=>{switch(e){case"bold":return 2;case"line":return 1;case"dashed":return 1;default:return 1}},nr=e=>e==="line"?void 0:[5,5],sr=(e,t)=>{if(t){let r=[];return t.forEach(o=>{let i={label:o.label,stroke:rr(e,o.level),width:ir(),dash:nr(o.type),points:{show:!1,size:0},spanGaps:!0,show:!0,auto:!1};ee(o)||r.push(i),r.push(i)}),r}else return[]},ar=(e,t,r,o)=>{if(!o||!o.some(n=>ae(n)))return t.bands;let i=o.map((n,a)=>ee(n)?null:{series:[e.length+a*2+1,e.length+a*2+2],fill:or(r,n.level),dir:1}).filter(n=>n!==null);return[...t.bands,...i]},lr=(e,t,r,o,i,n,a)=>{let s=Zt(t,o);return[{},...e.map((l,m)=>({label:l.metric,stroke:st(l,m,r,t,n),width:s,points:{show:!1},spanGaps:!0,paths:Yt(t),fill:o||i?Jt(l,m,r,t,n):void 0})),...sr(n,a)]},cr=e=>typeof e=="string"&&String(e).toLowerCase().trim()==="by"?"bytes":e,at=(e,t,r,o,i,n,a,s,l,m,f,g,h,u,b,y,d,v,T,x)=>{let p=window.getComputedStyle(e),C=p.fontFamily,P=e?.clientWidth??1050,R=e?.clientHeight??250,k=cr(o),L=(0,it.getValueFormat)(k==="1"?null:k),E=I=>{let M=L(I);return M.text+(M.suffix?.trim()||"")},Q={width:P,height:R,scales:{y:{range:lt(o,b,y)}},plugins:h?[]:[ot(E,a,t,m,f,i,T,x)],padding:g?[8,10,8,48]:[8,10,8,18],cursor:{y:!1,sync:{key:"_"},drag:{setScale:!0,x:!0,y:!1},move:er,show:!v},series:lr(i,n,s,l,a,p,u),bands:ar(i,r,p,u),axes:[Xe(C,m,g,d),ct(L,C,d)],legend:{show:!1}};return tr(Q,p)};var ut=(e,t=4)=>{let r=e/t,o=Math.pow(10,Math.floor(Math.log10(r))),i=r/o,n;return i>5?n=10*o:i>2?n=5*o:i>1?n=2*o:n=o,Math.ceil(e/n)*n},S=(e,t)=>typeof e=="number"?e:t,lt=(e,t,r)=>(o,i,n)=>{if(i===0&&n===0)return[S(t,0),S(r,100)];let a=1,s=n*(1+a),l=i<0?i*(1+a):i*(1-a);if(e==="percent"||e==="percentunit"){let g=e==="percent"?100:1;return n>g?i<0?[S(t,l),S(r,s)]:[S(t,0),S(r,s)]:i<0?[S(t,l),S(r,g)]:[S(t,0),S(r,g)]}if(n<=.9999)return i<=0?[S(t,l),S(r,1)]:[S(t,0),S(r,1)];let m=ut(s),f=ut(Math.abs(l));return i<0?[S(r,-f),S(r,m)]:[S(t,0),S(r,m)]},ur=(e,t,r,o)=>{let i=e.axes[r];if(o>1)return i?._size||0;let n=(i?.ticks?.size||0)+(i?.gap||0),a=(t??[]).reduce((s,l)=>l.length>s.length?l:s,"");return a!=""&&(e.ctx.font=i?.font?.[0]??e.ctx.font,n+=e.ctx.measureText(a).width/devicePixelRatio),Math.ceil(n)};function ct(e,t,r){return{gap:0,font:K(t),labelFont:K(t),grid:{show:!0,width:.5},ticks:{width:.5},values:(o,i)=>i.map(n=>{let a=e(n);return a.text+(a.suffix?.trim()||"")}),size:ur,space:(o,i,n,a,s)=>{let l=o.height;return l<=100?30:l<=150?35:l<=200?45:l<=250?55:l<=300?60:70},show:!r}}function pt(e,t){let r=[],o=e[0],i=o.length,n=Array(i).fill(0),a=[o];if(e.forEach((s,l)=>{l!==0&&(t?a.push(s):a.push(s.map((m,f)=>n[f]=n[f]+(m||0))))}),!t)for(let s=1;s<e.length-1;s++)r.push({series:[s+1,s]});return{data:a,bands:r.filter(s=>s.series[1]>-1)}}var dt=require("react/jsx-runtime");function pe(e){let{times:t,series:r,metadata:o,type:i,className:n,timeZone:a,options:s,tooltip:l,colors:m,tooltipComponent:f,unit:g,fill:h=!1,thresholds:u,min:b,max:y,hideAxis:d,hideCursor:v,relativeTimeAxis:T,invertSort:x}=e,{hide:p,visibilityLimit:C}=l||{},P=(0,ue.useRef)(null),R=O(),k=m||R.colors;return(0,ue.useEffect)(()=>{if(!r||r.length===0){console.warn("No series provided");return}let L=[t],E=g;r.forEach(w=>{let $=o[w.metric];g||(E=nt(E,$)),L.push(w.values)});let Q=i==="bar"||i==="area",I=pt(L,!Q);u&&u.forEach(w=>{ee(w)?I.data.push(new Array(t.length).fill(w.value)):ae(w)&&(I.data.push(new Array(t.length).fill(w.from)),I.data.push(new Array(t.length).fill(w.to)))});let M=P.current,J=null;if(M){let w=at(M,o,I,E,r,i,Q,k,h,a,f,T,p,u,b,y,d,v,C,x);J=new mt.default({...w,...s},I.data,M);let $=new ResizeObserver(()=>{J?.setSize({width:M.clientWidth,height:M.clientHeight})});return $.observe(M),()=>{J?.destroy(),$.disconnect()}}},[r,t,i,o,a,f,T,k,h,g,p,u,b,y,s,d,v]),(0,dt.jsx)("div",{ref:P,className:"ub-chart-container"+(n?` ${n}`:"")})}var B=require("react/jsx-runtime");function ht({metrics:e,operator:t,attributes:r,groupBy:o,interval:i,type:n="line",className:a,appearance:s,unit:l,thresholds:m,min:f,max:g,colors:h,tooltip:u,fill:b,hideAxis:y,hideCursor:d,relativeTimeAxis:v,onResponse:T,invertSort:x}){let p=O(),C=i??p.interval,P=r??p.attributes,R=o??p.groupBy,k=t??p.operator,L=typeof v=="boolean"?v:p.relativeTimeAxis,E=h??p.colors,Q=typeof b=="boolean"?b:p.fill,I=typeof x=="boolean"?x:p.invertSort,M=typeof y=="boolean"?y:p.hideAxis,J=typeof d=="boolean"?d:p.hideCursor,w=s?.components?.Tooltip??p.appearance.components.Tooltip,$=(0,me.useMemo)(()=>({hide:u?.hide??p.tooltip?.hide,visibilityLimit:u?.visibilityLimit??p.tooltip?.visibilityLimit}),[u?.hide,p.tooltip?.hide,u?.visibilityLimit,p.tooltip?.visibilityLimit]),de=se({queries:(Array.isArray(e)?e:[e]).map(z=>({metrics:[z],operator:k,attributes:P,groupBy:R})),timeRange:p.timeRange,startTime:p.startTime,endTime:p.endTime,interval:C}),{isLoading:ft,data:gt,hasError:bt}=de,{series:Ne,times:yt,metadata:Tt}=gt,vt=Ne.every(z=>z.isEmpty),he=`ub-chart-container${a?` ${a}`:""}`;if((0,me.useEffect)(()=>{T&&T(de)},[de,T]),ft){let z=s?.components?.Loading??p.appearance.components.Loading;return(0,B.jsx)("div",{className:he,children:(0,B.jsx)(z,{})})}if(bt){let z=s?.components?.Error??p.appearance.components.Error;return(0,B.jsx)("div",{className:he,children:(0,B.jsx)(z,{})})}if(vt){let z=s?.components?.Empty??p.appearance.components.Empty;return(0,B.jsx)("div",{className:he,children:(0,B.jsx)(z,{})})}return(0,B.jsx)(pe,{times:yt,series:Ne,metadata:Tt,type:n,className:a,tooltip:$,colors:E,relativeTimeAxis:L,unit:l,fill:Q,tooltipComponent:w,thresholds:m,min:f,max:g,hideAxis:M,hideCursor:J,invertSort:I})}0&&(module.exports={Chart,Empty,Error,Loading,Scope,Timeseries,UnblindProvider,useLogs,useMetrics,useRefresh,useScope,useTimeseries,useUsage});
1
+ "use strict";var xt=Object.create;var le=Object.defineProperty;var St=Object.getOwnPropertyDescriptor;var Pt=Object.getOwnPropertyNames;var Lt=Object.getPrototypeOf,Rt=Object.prototype.hasOwnProperty;var kt=(e,t)=>{for(var r in t)le(e,r,{get:t[r],enumerable:!0})},Be=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Pt(t))!Rt.call(e,o)&&o!==r&&le(e,o,{get:()=>t[o],enumerable:!(i=St(t,o))||i.enumerable});return e};var Ce=(e,t,r)=>(r=e!=null?xt(Lt(e)):{},Be(t||!e||!e.__esModule?le(r,"default",{value:e,enumerable:!0}):r,e)),At=e=>Be(le({},"__esModule",{value:!0}),e);var mr={};kt(mr,{Chart:()=>be,Empty:()=>ce,Error:()=>ue,Loading:()=>pe,Scope:()=>oe,Timeseries:()=>Ct,UnblindProvider:()=>Qe,useLogs:()=>rt,useMetrics:()=>We,useRefresh:()=>Pe,useScope:()=>O,useTimeseries:()=>me,useUsage:()=>Ze});module.exports=At(mr);var $=require("@tanstack/react-query"),I=require("react"),xe=require("react/jsx-runtime"),_e=(0,I.createContext)(void 0);function Se({children:e,queryClient:t,queryClientConfig:r,apiBaseUrl:i="/api/unblind",fetchImpl:o}){let n=(0,I.useMemo)(()=>{if(t)return t;let a={refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1},l={defaultOptions:{queries:a}};return r?new $.QueryClient({...r,defaultOptions:{...r.defaultOptions,queries:{...a,...r.defaultOptions?.queries}}}):new $.QueryClient(l)},[t,r]),s=(0,I.useMemo)(()=>({apiBaseUrl:i,fetchImpl:o}),[i,o]);return(0,xe.jsx)($.QueryClientProvider,{client:n,children:(0,xe.jsx)(_e.Provider,{value:s,children:e})})}function N(){let e=(0,I.useContext)(_e);if(!e)throw new Error("useUnblindConfig must be used within an UnblindClientProvider. Please wrap your app or component tree with <UnblindClientProvider>.");return e}function Pe(){let e=(0,$.useQueryClient)();return(0,I.useCallback)(async()=>{await e.refetchQueries({queryKey:["unblind","timeseries"]})},[e])}var V=require("react");var D=require("react/jsx-runtime");function ce(){return(0,D.jsx)("div",{className:"ub-default",children:(0,D.jsxs)("div",{className:"ub-empty-content",children:[(0,D.jsx)("div",{className:"ub-empty-icon-wrapper",children:(0,D.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"ub-icon",children:(0,D.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})})}),(0,D.jsx)("p",{className:"ub-empty-text","data-text":"No data available for this time range"})]})})}function ue(){return(0,D.jsx)("div",{className:"ub-default-error"})}function pe(){return(0,D.jsx)("div",{className:"ub-default-loading","data-text":"Loading"})}var He=require("react/jsx-runtime"),Le=(0,V.createContext)(void 0);function oe({children:e,timeRange:t,startTime:r,endTime:i,interval:o,attributes:n,groupBy:s,operator:a,appearance:l,tooltip:u,colors:g,fill:d,hideAxis:h,hideCursor:p,relativeTimeAxis:m,invertSort:b,disableSuggestedLabel:v}){let f=(0,V.useContext)(Le),x=l?.components?.Loading||f?.appearance?.components?.Loading,C=l?.components?.Error||f?.appearance?.components?.Error,y=l?.components?.Tooltip||f?.appearance?.components?.Tooltip,T=l?.components?.Empty||f?.appearance?.components?.Empty,R=typeof u?.hide=="boolean"?u?.hide:f?.tooltip?.hide,k=typeof u?.visibilityLimit=="number"?u?.visibilityLimit:f?.tooltip?.visibilityLimit,S=(0,V.useMemo)(()=>({components:{...x&&{Loading:x},...C&&{Error:C},...y&&{Tooltip:y},...T&&{Empty:T}}}),[x,C,y,T]),M=(0,V.useMemo)(()=>({hide:R,visibilityLimit:k}),[R,k]),A=(0,V.useMemo)(()=>({timeRange:t??f?.timeRange,startTime:r??f?.startTime,endTime:i??f?.endTime,interval:o??f?.interval,attributes:n??f?.attributes,groupBy:s??f?.groupBy,operator:a??f?.operator,colors:g??f?.colors,relativeTimeAxis:typeof m=="boolean"?m:f?.relativeTimeAxis,fill:typeof d=="boolean"?d:f?.fill,hideAxis:typeof h=="boolean"?h:f?.hideAxis,hideCursor:typeof p=="boolean"?p:f?.hideCursor,invertSort:typeof b=="boolean"?b:f?.invertSort,disableSuggestedLabel:typeof v=="boolean"?v:f?.disableSuggestedLabel,appearance:S,tooltip:M}),[t,r,i,o,n,s,a,g,d,m,h,p,S,M,f,b,v]);return(0,He.jsx)(Le.Provider,{value:A,children:e})}var wt="6h";function O(){let e=(0,V.useContext)(Le);return(0,V.useMemo)(()=>({...e,timeRange:e?.timeRange||wt,appearance:{components:{Loading:e?.appearance?.components?.Loading??pe,Error:e?.appearance?.components?.Error??ue,Empty:e?.appearance?.components?.Empty??ce,Tooltip:e?.appearance?.components?.Tooltip}}}),[e])}var Re=require("react/jsx-runtime");function Qe({children:e,queryClient:t,apiBaseUrl:r,fetchImpl:i,timeRange:o,startTime:n,endTime:s,interval:a,attributes:l,groupBy:u,operator:g,appearance:d,tooltip:h,colors:p,fill:m,hideAxis:b,hideCursor:v,relativeTimeAxis:f,invertSort:x,disableSuggestedLabel:C}){return(0,Re.jsx)(Se,{queryClient:t,apiBaseUrl:r,fetchImpl:i,children:(0,Re.jsx)(oe,{timeRange:o,startTime:n,endTime:s,interval:a,attributes:l,groupBy:u,operator:g,appearance:d,tooltip:h,colors:p,fill:m,hideAxis:b,hideCursor:v,relativeTimeAxis:f,invertSort:x,disableSuggestedLabel:C,children:e})})}var $e=require("@tanstack/react-query");function We(){let{apiBaseUrl:e,fetchImpl:t=fetch}=N(),r=(0,$e.useQuery)({queryKey:["unblind","metrics"],queryFn:async()=>{let i=await t(`${e}/metrics`,{headers:{"Content-Type":"application/json"}});if(!i.ok)throw new Error("Error loading metrics metadata");if(i.status===200){let{data:o}=await i.json();return o}else throw new Error("Unexpected status code")}});return{metrics:r.data,isLoading:r.isLoading,hasError:r.isError,refetch:r.refetch}}var Xe=require("@tanstack/react-query"),X=require("react");var je=Ce(require("ms"));function Ge({scope:e,props:t}){return t.timeRange||t.startTime&&t.endTime?t:e}function Mt(e){let t=Math.floor(Date.now()/1e3);return[t-Math.floor((0,je.default)(e)/1e3),t]}function G(e,t,r){let i,o;if(typeof t=="number"&&typeof r=="number")i=t,o=r;else if(e){let[n,s]=Mt(e);i=n,o=s}else throw new Error("Either timeRange or both startTime and endTime must be provided");return[i,o]}var Ke=require("react");function K(e){let t=O(),{timeRange:r,startTime:i,endTime:o}=Ge({props:e,scope:t});return(0,Ke.useMemo)(()=>({timeRange:r,startTime:i,endTime:o}),[r,i,o])}function me(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{startTime:i,endTime:o,timeRange:n}=K(e),{queries:s,interval:a}=e,l=(0,X.useMemo)(()=>s.map(y=>y.metrics.join(",")).join(","),[s]),u=(0,X.useMemo)(()=>s.map(y=>{let T=y.attributes;if(!T)return"";let R=Object.keys(T);return R.length===0?"":R.map(k=>k+":"+T[k]?.join(",")).join(",")}).join(","),[s]),g=(0,X.useMemo)(()=>s.map(y=>y.operator),[s]),d=(0,X.useMemo)(()=>s.map(y=>y.groupBy).join(", "),[s]),p=(0,Xe.useQuery)({queryKey:["unblind","timeseries",l,u,i,o,n,a,g,d],queryFn:async()=>{if(!l)throw new Error("Missing required parameters");if(l.length===0)throw new Error("No series provided");let[y,T]=G(n,i,o),R={queries:s,startTime:y,endTime:T,interval:a},k=await r(`${t}/tenants/timeseries`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(R)});if(!k.ok)throw new Error("Error fetching metric");let{series:S,times:M,metadata:A}=await k.json();if(!S)throw console.error("Series not found"),new Error("Series not found");return{series:S,times:M,metadata:A}},enabled:!!l&&(typeof i=="number"&&typeof o=="number"||!!n)}),{metadata:m,series:b,times:v}=(0,X.useMemo)(()=>p.data?{series:p.data.series,times:p.data.times,metadata:p.data.metadata}:{series:[],times:[],metadata:{}},[p]),f=p.isLoading,x=p.isFetching,C=p.isError;return{data:{series:b,times:v,metadata:m},isLoading:f,isFetching:x,hasError:C,refetch:p.refetch}}var Ye=require("@tanstack/react-query"),Je=require("react");function Ze(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{startTime:i,endTime:o,timeRange:n}=K(e),a=(0,Ye.useQuery)({queryKey:["unblind","usage",n,i,o],queryFn:async()=>{let[d,h]=G(n,i,o),p=`${t}/tenants/usage`,m=await r(p,{headers:{"Content-Type":"application/json"},body:JSON.stringify({startTime:d,endTime:h})});if(!m.ok)throw new Error("Error fetching usage");let{data:b}=await m.json();if(!b)throw new Error("usage not found");return b},enabled:typeof i=="number"&&typeof o=="number"||!!n}),l=(0,Je.useMemo)(()=>a.data?a.data||[]:[],[a]),u=a.isLoading||a.isRefetching,g=a.isError;return{usage:l,isLoading:u,hasError:g,refetch:a.refetch}}var et=require("@tanstack/react-query"),tt=require("react");function rt(e){let{apiBaseUrl:t,fetchImpl:r=fetch}=N(),{timeRange:i,startTime:o,endTime:n}=K(e),{attributes:s,body:a,severity:l,traceId:u,spanId:g,logId:d}=e,h=(0,et.useInfiniteQuery)({queryKey:["unblind","logs",i,o,n,a,l,d,JSON.stringify(s)],queryFn:async({pageParam:m})=>{let[b,v]=G(i,o,n),f=await r(`${t}/tenants/logs`,{method:"POST",body:JSON.stringify({attributes:s,body:a,severity:l,traceId:u,spanId:g,logId:d,startTime:b,endTime:v,pagination:{page:m}}),headers:{"Content-Type":"application/json"}});if(!f.ok)throw new Error("Error fetching logs");let{data:x,nextPage:C}=await f.json();if(!x)throw new Error("data not found");return{data:x,nextPage:C}},initialPageParam:void 0,getNextPageParam:m=>m.nextPage});return{logs:(0,tt.useMemo)(()=>h.data?h.data.pages.flatMap(m=>m.data||[]):[],[h.data]),isLoading:h.isLoading,hasError:h.isError,hasNextPage:h.hasNextPage??!1,fetchNextPage:h.fetchNextPage,isFetchingNextPage:h.isFetchingNextPage,refetch:h.refetch}}var ie=e=>"value"in e,de=e=>"from"in e&&"to"in e;function ke(e){return typeof e=="object"&&e!==null&&typeof e.name=="string"&&typeof e.label=="string"}var ee=require("react");var ge=require("react"),Tt=Ce(require("uplot"));var se=Ce(require("uplot")),pt=require("@unblind/units");var _=require("@unblind/units");var w={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,month:24192e5,year:31536e6},Y={second:[1,2,5,10,15,30],minute:[1,2,5,10,15,30],hour:[1,2,3,4,6,8,12],day:[1,2,3,7,14],month:[1,2,3,6],year:[1,2,5,10,20,50,100]};function Ut(e,t,r,i){if(t>7*w.day){let o=_.systemDateFormats.interval.year,n=Math.round(w.year/w.day)*w.day;if(Math.round(t/w.day)*w.day===n)o=_.systemDateFormats.interval.year;else{if(t<=w.year)return e.map(a=>{let l=new Date(a);return(i==="UTC"?l.getUTCDate():l.getDate())===1?l.toLocaleDateString(void 0,{month:"short",year:"numeric",timeZone:i}):l.toLocaleDateString(void 0,{day:"numeric",month:"short",timeZone:i})});o=_.systemDateFormats.interval.day}return e.map(a=>(0,_.dateTimeFormat)(a,{format:o,timeZone:i}))}return e.map(o=>{let n=new Date(o),s=t<w.minute,a=t<w.second,l=n.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",hour12:!1,timeZone:i});return(l==="00:00"||l==="24:00")&&!s&&!a?n.toLocaleDateString(void 0,{day:"2-digit",month:"short",timeZone:i}):n.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:s?"2-digit":void 0,fractionalSecondDigits:a?3:void 0,hour12:!1,timeZone:i})})}function Et(e){let t=[{size:w.second/1e3,increments:Y.second},{size:w.minute/1e3,increments:Y.minute},{size:w.hour/1e3,increments:Y.hour},{size:w.day/1e3,increments:Y.day},{size:w.month/1e3,increments:Y.month},{size:w.year/1e3,increments:Y.year}];for(let o of t)for(let n of o.increments){let s=o.size*n;if(s>=e)return{increment:s*1e3,multiplier:n}}let r=t[t.length-1],i=r.increments[r.increments.length-1];return{increment:r.size*i*1e3,multiplier:i}}function Nt(e,t,r){return[t,r]}function Dt(e,t,r){return t.length===0?[]:t.map((i,o)=>o===0||o===t.length-1?(0,_.dateTimeFormatTimeAgo)(i*1e3,{timeZone:r}):"")}function Vt(e,t,r){let i=e.scales.x,o=((i?.max??0)-(i?.min??0))*1e3,n=Math.floor(e.width/100),s=o/1e3/n,{increment:a}=Et(s),l=t.map(u=>u*1e3);return Ut(l,a,o,r)}function ot(e,t,r=!1,i=!1){let o=r?(s,a,l,u)=>Nt(s,l,u):void 0,n=r?(s,a)=>Dt(s,a,t):(s,a)=>Vt(s,a,t);return{font:J(e),labelFont:J(e),grid:{show:!1,width:.5},ticks:{width:.5},splits:o,values:n,size:20,show:!i,align:r?2:void 0,space:(s,a,l,u,g)=>g<400?100:g<800?150:250}}var Z=require("@floating-ui/dom"),it=require("react-dom/client"),Ot=4,It=8,Ae=class{overlay=null;reactRoot=null;renderedUplot=null;initialize(){this.overlay||(this.overlay=document.createElement("div"),this.overlay.id="unblind-tooltip-overlay",this.overlay.style.display="none",this.overlay.style.position="fixed",this.overlay.style.pointerEvents="none",this.overlay.style.zIndex="9999",document.body.appendChild(this.overlay),this.reactRoot=(0,it.createRoot)(this.overlay))}getOverlay(){return this.overlay}render(t,r){this.reactRoot?(this.reactRoot.render(r),this.renderedUplot=t):this.renderedUplot=null}show(){this.overlay&&(this.overlay.style.display="block")}hide(t){if(t!==this.renderedUplot){console.warn("Hide call plot");return}this.overlay&&(this.overlay.style.display="none"),this.render(null,null)}getRenderedUplot(){return this.renderedUplot}async positionTooltip(t){let r=this.getOverlay();if(r){let{x:i,y:o}=await(0,Z.computePosition)({getBoundingClientRect:()=>({x:t.left,y:t.top,width:0,height:0,top:t.top,left:t.left,right:t.left,bottom:t.top})},r,{placement:"top-start",strategy:"fixed",middleware:[(0,Z.offset)({mainAxis:Ot,crossAxis:It}),(0,Z.flip)()]});r.style.left=`${i}px`,r.style.top=`${o}px`}}},U=new Ae;var Me=require("@unblind/units"),H=require("react"),c=require("react/jsx-runtime"),zt=6,nt=(0,H.createContext)(null);function fe(){let e=(0,H.useContext)(nt);if(!e)throw new Error("useTooltipSerie must be used within a SerieProvider");return e}function qt({serie:e,children:t}){return(0,c.jsx)(nt.Provider,{value:e,children:t})}var st=(0,H.createContext)(null);function ne(){let e=(0,H.useContext)(st);if(!e)throw new Error("useTooltipSerie must be used within a SerieProvider");return e}function we({formattedTime:e,tooltip:t,children:r}){return(0,c.jsx)(st.Provider,{value:{formattedTime:e,disableSuggestedLabel:t.disableSuggestedLabel,invertSort:t.invertSort,visibilityLimit:t.visibilityLimit||zt},children:r})}function Ue({className:e="ub-tooltip-divider",...t}){return(0,c.jsx)("hr",{role:"presentation",...t,className:e})}function Ft({unitCategory:e,tooltipSerieList:t}){let{visibilityLimit:r,formattedTime:i}=ne(),o=t.slice(0,r),n=t.slice(r);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-metrics",children:[(0,c.jsxs)(Ve,{children:[(0,c.jsx)(Oe,{children:i}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)(Ht,{children:e})})]}),(0,c.jsx)(Ue,{}),(0,c.jsxs)("div",{children:[(0,c.jsx)(De,{children:o.map(s=>(0,c.jsxs)(Ne,{serie:s,children:[(0,c.jsx)(ze,{}),(0,c.jsx)(at,{}),(0,c.jsx)(Ie,{})]},s.metric.name))}),(0,c.jsx)(Ee,{series:n})]})]})}function Bt({tooltipSerieList:e}){let{visibilityLimit:t,disableSuggestedLabel:r,formattedTime:i}=ne(),o=e[0],n=e.slice(0,t),s=e.slice(t);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-attributes",children:[(0,c.jsxs)(Ve,{children:[(0,c.jsx)(Oe,{children:i}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)("span",{className:"ub-tooltip-serie-metric",children:o?.metric.label||!r&&o?.metric.suggestedLabel||o?.metric.name})})]}),(0,c.jsx)(Ue,{}),(0,c.jsxs)("div",{children:[(0,c.jsx)(De,{children:n.map((a,l)=>(0,c.jsxs)(Ne,{serie:a,children:[(0,c.jsx)(ze,{}),(0,c.jsx)(lt,{}),(0,c.jsx)(Ie,{})]},"serie_"+l))}),(0,c.jsx)(Ee,{series:s})]})]})}function _t({tooltipSerieList:e,unitCategory:t}){let{visibilityLimit:r,formattedTime:i}=ne(),o=e.slice(0,r),n=e.slice(r);return(0,c.jsxs)("div",{className:"ub-tooltip ub-tooltip-multiple-metrics-attributes",children:[(0,c.jsxs)(Ve,{children:[(0,c.jsx)(Oe,{children:i}),(0,c.jsx)("div",{className:"ub-tooltip-header-right",children:(0,c.jsx)("span",{className:"ub-tooltip-unit-category",children:t})})]}),(0,c.jsx)(Ue,{}),(0,c.jsxs)("div",{children:[(0,c.jsx)(De,{children:o.map((s,a)=>(0,c.jsxs)(Ne,{serie:s,children:[(0,c.jsx)(ze,{}),(0,c.jsx)(at,{}),(0,c.jsx)(lt,{}),(0,c.jsx)(Ie,{})]},"serie"+a))}),(0,c.jsx)(Ee,{series:n})]})]})}function Ht(e){return(0,c.jsx)("span",{className:"ub-tooltip-unit-category",children:e.children})}function Ee({series:e}){let t=e[0]?.formattedValue,r=!e.some(n=>(n.value||0)>0),i=!e.some(n=>n.value!==void 0),{invertSort:o}=ne();return e.length>0?i?(0,c.jsx)("span",{className:"ub-tooltip-summary",children:(0,c.jsxs)("span",{children:["+",e.length," more with no data"]})}):r?(0,c.jsx)("span",{className:"ub-tooltip-summary",children:(0,c.jsxs)("span",{children:["+",e.length," more with zero values"]})}):(0,c.jsxs)("span",{className:"ub-tooltip-summary",children:[(0,c.jsxs)("span",{children:["+",e.length," more with "]}),(0,c.jsx)("span",{children:`${o?"\u2265":"\u2264"} ${t}`})]}):(0,c.jsx)(c.Fragment,{})}function Ne(e){return(0,c.jsx)(qt,{serie:e.serie,children:(0,c.jsx)("div",{className:"ub-tooltip-serie",children:e.children})})}function De(e){return(0,c.jsx)("div",{className:"ub-tooltip-content",children:e.children})}function Ve(e){return(0,c.jsx)("div",{className:"ub-tooltip-header",children:e.children})}function Oe(e){return(0,c.jsx)("div",{className:"ub-tooltip-datetime",children:e.children})}function at(){let e=fe(),{disableSuggestedLabel:t}=ne();return(0,c.jsx)("span",{className:"ub-tooltip-serie-metric ub-truncate",children:e.metric.label||!t&&e.metric.suggestedLabel||e.metric.name})}function Ie(){let e=fe();return e.formattedValue?(0,c.jsx)("span",{className:"ub-tooltip-serie-value ub-truncate",children:e.formattedValue}):(0,c.jsx)("span",{className:"ub-tooltip-serie-value-empty",children:"\u2013"})}function ze(){let e=fe();return(0,c.jsx)("span",{style:{backgroundColor:e.color},className:"ub-tooltip-serie-color"})}function lt(){let{attributes:e}=fe();if(!e)return null;let t=Object.values(e);return(0,c.jsx)("div",{className:"ub-tooltip-serie-attributes ub-truncate",children:t.map((r,i)=>(0,c.jsxs)(H.Fragment,{children:[(0,c.jsx)("span",{className:"ub-tooltip-serie-attribute-value",children:r}),i<t.length-1&&(0,c.jsx)("span",{"data-text":", ",className:"ub-tooltip-serie-attribute-divider"})]},"tooltip-"+r))})}function Qt({tooltipSerieList:e,invertSort:t}){return t?e.sort((r,i)=>(Number(r.value)||0)-(Number(i.value)||0)):e.sort((r,i)=>(Number(i.value)||0)-(Number(r.value)||0))}function ct({timestamp:e,tooltipSerieList:t,timeZone:r,spansMultipleDays:i,hasMultipleMetrics:o,hasAttributes:n,invertSort:s,visibilityLimit:a,disableSuggestedLabel:l}){let u=Qt({tooltipSerieList:t,invertSort:s}),g=i?(0,Me.dateTimeFormat)(e*1e3,{format:"MMM DD, HH:mm",timeZone:r}):(0,Me.dateTimeFormat)(e*1e3,{format:"HH:mm",timeZone:r});return n?n&&!o?(0,c.jsx)(we,{tooltip:{invertSort:s,visibilityLimit:a,disableSuggestedLabel:l},formattedTime:g,children:(0,c.jsx)(Bt,{tooltipSerieList:u})}):(0,c.jsx)(we,{tooltip:{invertSort:s,visibilityLimit:a,disableSuggestedLabel:l},formattedTime:g,children:(0,c.jsx)(_t,{unitCategory:"",tooltipSerieList:u})}):(0,c.jsx)(we,{tooltip:{invertSort:s,visibilityLimit:a,disableSuggestedLabel:l},formattedTime:g,children:(0,c.jsx)(Ft,{unitCategory:"",tooltipSerieList:u})})}var qe=require("react/jsx-runtime");function $t(e,t){if(!e||e.length===0)return!1;let r=e[0],i=e[e.length-1];if(r==null||i==null)return!1;let o=new Date(r*1e3),n=new Date(i*1e3),s=a=>t==="UTC"?`${a.getUTCFullYear()}-${a.getUTCMonth()}-${a.getUTCDate()}`:a.toLocaleDateString(void 0,{timeZone:t});return s(o)!==s(n)}function Wt(e,t){let r=!1;for(let o=1;o<e.series.length;o++)if(e.data[o]?.[t]!=null){r=!0;break}if(r)return t;let i=e.data[0].length;for(let o=1;t+o<i||t-o>=0;o++){let n=t-o,s=t+o;if(n>=0){for(let a=1;a<e.series.length;a++)if(e.data[a]?.[n]!=null)return n}if(s<i){for(let a=1;a<e.series.length;a++)if(e.data[a]?.[s]!=null)return s}}return t}function jt(e,t,r,i,o,n,s){let a=[],l=e.data[0],u=new Set,g=new Set,d=!1;for(let h=1;h<e.series.length;h++){let p=e.data[h]?.[t]??null;if(i&&p!=null&&h>1){let T=e.data[h-1]?.[t]??0;p=p-T}let m=e.series[h],b=n?.[h-1];if(!b){console.warn("Original serie not found");continue}let v=o[b.metric];if(!v){console.warn("Metric metadata not found");continue}u.add(b.metric);let f=b?.attributes;if(f&&Object.keys(f).length>0){d=!0;for(let T in f)g.add(T)}let x=m?.stroke,C=typeof x=="function"?x(e,h):x??"#ffffff00",y=p==null?void 0:r?r(p):String(p);a.push({metric:v,color:C,value:p===null?void 0:p,formattedValue:y,attributes:f,serie:m})}return{tooltipSerieList:a,hasAttributes:d,hasMultipleMetrics:u.size>1,hasMultipleAttributes:g.size>1,spansMultipleDays:$t(l,s)}}function ut(e,t,r,i,o,n,s,a,l){let u,g,d,h=!1;function p(){let m=u.getBoundingClientRect();g=m.left,d=m.top}return{hooks:{init:m=>{U.initialize(),u=m.over,window.addEventListener("scroll",p,!0),window.addEventListener("resize",p),u.onmouseenter=()=>{h=!0,U.show()},u.onmouseleave=()=>{h=!1,U.getRenderedUplot()===m&&U.hide(m)},p()},setSize:()=>{p()},setCursor:m=>{let{left:b,top:v,idx:f}=m.cursor;if(!h||f==null){U.getRenderedUplot()===m&&U.hide(m);return}let C=Wt(m,f),y=m.data[0][C];if(y===void 0)return;let{tooltipSerieList:T,hasAttributes:R,hasMultipleAttributes:k,hasMultipleMetrics:S,spansMultipleDays:M}=jt(m,C,e,t,r,n,i);U.show();let A=o,z=A?(0,qe.jsx)(A,{timestamp:y,tooltipSerieList:T,timeZone:i}):(0,qe.jsx)(ct,{timestamp:y,tooltipSerieList:T,timeZone:i,spansMultipleDays:M,stacked:t,hasAttributes:R,hasMultipleAttributes:k,hasMultipleMetrics:S,visibilityLimit:s,invertSort:a,disableSuggestedLabel:l});U.render(m,z),U.positionTooltip({left:(b||0)+g,top:(v||0)+d})},destroy(m){window.removeEventListener("scroll",p,!0),window.removeEventListener("resize",p),u&&(u.onmouseenter=null,u.onmouseleave=null),U.getRenderedUplot()===m&&U.hide(m)}}}}var he=["oklch(0.70 0.24 293)","oklch(0.85 0.18 95)","oklch(0.65 0.25 255)","oklch(0.72 0.26 27)","oklch(0.70 0.22 150)","oklch(0.78 0.18 50)","oklch(0.72 0.18 215)","oklch(0.70 0.27 301)","oklch(0.75 0.20 90)","oklch(0.68 0.23 277)","oklch(0.70 0.18 193)","oklch(0.68 0.25 4)"],J=e=>`${getComputedStyle(document.documentElement).getPropertyValue("--ub-chart-font-size").trim()} ${e}`,mt=(e,t)=>{let r=e;return t&&t.unit&&t.unit.code&&t.unit.code!=="1"&&(!r&&t.unit?r=t.unit.code:r&&t.unit.code!==r&&(r=void 0)),r};function Gt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&Array.isArray(e.fill)&&Array.isArray(e.border)}function Kt(e){return Array.isArray(e)}var Xt=12,Yt=({isFilling:e,useSolid:t,index:r})=>{let i=r%Xt+1;return e?t?`--ub-chart-serie-color-${i}`:`--ub-chart-serie-fill-color-${i}`:`--ub-chart-serie-color-${i}`},dt=(e,t,r,i,o,n)=>{let s=i==="bar"||i==="area";if(r)return Kt(r)?r[t]:Gt(r)?n?r.fill[t]:r.border[t]:r(e,t,i,n);let a=Yt({isFilling:n,useSolid:s,index:t}),l=o.getPropertyValue(a).trim();return l||(n&&s?he[t%he.length]?.replace(")"," / 0.4)"):he[t%he.length])},Jt=e=>{let t=se.default.paths.bars({size:[.6,100],radius:0,gap:0}),r=se.default.paths.linear({alignGaps:0}),i=se.default.paths.spline({alignGaps:1}),o=se.default.paths.stepped({alignGaps:1});switch(e){case"line":return r;case"bar":return t;case"area":return r;case"step":return o;case"spline":return i;default:return r}},Zt=(e,t,r,i,o)=>dt(e,t,r,i,o,!0),er=(e,t)=>{switch(e){case"bar":return 1;case"line":return t?1.5:2;case"spline":return t?1.5:2;case"area":return 1;case"step":return 1.5;default:return 1}},tr=(e,t,r)=>{if(t<0||r<0)return[t,r];let i=e.posToVal(t,"x"),o=e.data[0];if(!o||o.length===0)return[t,r];let n=0,s=0,a=o.length-1;for(;a-s>1;){let p=Math.floor((s+a)/2),m=o[p];m!=null&&m<i?s=p:a=p}let l=o[s],u=o[a];l!=null&&u!=null?n=Math.abs(l-i)<Math.abs(u-i)?s:a:l!=null?n=s:u!=null&&(n=a);let g=n;for(let p=n;p>=0;p--){let m=!1;for(let b=1;b<e.data.length;b++){let v=e.data[b];if(v&&v[p]!=null){m=!0;break}}if(m){g=p;break}}let d=o[g];return d==null?[t,r]:[e.valToPos(d,"x"),r]},rr=(e,t)=>{let r=t.getPropertyValue("--ub-chart-font-color").trim(),i=t.getPropertyValue("--ub-chart-grid-color").trim(),o=e.axes?.[0],n=e.axes?.[1];return o&&(o.stroke=r,o.grid?o.grid.stroke=i:o.grid={stroke:i}),n&&(n.stroke=r,n.grid?n.grid.stroke=i:n.grid={stroke:i}),e},or=(e,t)=>e.getPropertyValue(`--ub-chart-threshold-${t}`).trim()||e.getPropertyValue("--ub-chart-threshold-default").trim(),ir=(e,t)=>e.getPropertyValue(`--ub-chart-threshold-${t}-fill`).trim()||e.getPropertyValue("--ub-chart-threshold-default-fill").trim(),nr=e=>{switch(e){case"bold":return 2;case"line":return 1;case"dashed":return 1;default:return 1}},sr=e=>e==="line"?void 0:[5,5],ar=(e,t)=>{if(t){let r=[];return t.forEach(i=>{let o={label:i.label,stroke:or(e,i.level),width:nr(),dash:sr(i.type),points:{show:!1,size:0},spanGaps:!0,show:!0,auto:!1};ie(i)||r.push(o),r.push(o)}),r}else return[]},lr=(e,t,r,i)=>{if(!i||!i.some(n=>de(n)))return t.bands;let o=i.map((n,s)=>ie(n)?null:{series:[e.length+s*2+1,e.length+s*2+2],fill:ir(r,n.level),dir:1}).filter(n=>n!==null);return[...t.bands,...o]},cr=(e,t,r,i,o,n,s)=>{let a=er(t,i);return[{},...e.map((l,u)=>({label:l.metric,stroke:dt(l,u,r,t,n),width:a,points:{show:!1},spanGaps:!0,paths:Jt(t),fill:i||o?Zt(l,u,r,t,n):void 0})),...ar(n,s)]},ur=e=>typeof e=="string"&&String(e).toLowerCase().trim()==="by"?"bytes":e,ft=(e,t,r,i,o,n,s,a,l,u,g,d,h,p,m,b,v,f,x,C,y)=>{let T=window.getComputedStyle(e),R=T.fontFamily,k=e?.clientWidth??1050,S=e?.clientHeight??250,M=ur(i),A=(0,pt.getValueFormat)(M==="1"?null:M),z=q=>{let P=A(q);return P.text+(P.suffix?.trim()||"")},W={width:k,height:S,scales:{y:{range:ht(i,m,b)}},plugins:h?[]:[ut(z,s,t,u,g,o,x,C,y)],padding:d?[8,10,8,48]:[8,10,8,18],cursor:{y:!1,sync:{key:"_"},drag:{setScale:!0,x:!0,y:!1},move:tr,show:!f},series:cr(o,n,a,l,s,T,p),bands:lr(o,r,T,p),axes:[ot(R,u,d,v),gt(A,R,v)],legend:{show:!1}};return rr(W,T)};var bt=(e,t=4)=>{let r=e/t,i=Math.pow(10,Math.floor(Math.log10(r))),o=r/i,n;return o>5?n=10*i:o>2?n=5*i:o>1?n=2*i:n=i,Math.ceil(e/n)*n},L=(e,t)=>typeof e=="number"?e:t,ht=(e,t,r)=>(i,o,n)=>{if(o===0&&n===0)return[L(t,0),L(r,100)];let s=1,a=n*(1+s),l=o<0?o*(1+s):o*(1-s);if(e==="percent"||e==="percentunit"){let d=e==="percent"?100:1;return n>d?o<0?[L(t,l),L(r,a)]:[L(t,0),L(r,a)]:o<0?[L(t,l),L(r,d)]:[L(t,0),L(r,d)]}if(n<=.9999)return o<=0?[L(t,l),L(r,1)]:[L(t,0),L(r,1)];let u=bt(a),g=bt(Math.abs(l));return o<0?[L(r,-g),L(r,u)]:[L(t,0),L(r,u)]},pr=(e,t,r,i)=>{let o=e.axes[r];if(i>1)return o?._size||0;let n=(o?.ticks?.size||0)+(o?.gap||0),s=(t??[]).reduce((a,l)=>l.length>a.length?l:a,"");return s!=""&&(e.ctx.font=o?.font?.[0]??e.ctx.font,n+=e.ctx.measureText(s).width/devicePixelRatio),Math.ceil(n)};function gt(e,t,r){return{gap:0,font:J(t),labelFont:J(t),grid:{show:!0,width:.5},ticks:{width:.5},values:(i,o)=>o.map(n=>{let s=e(n);return s.text+(s.suffix?.trim()||"")}),size:pr,space:(i,o,n,s,a)=>{let l=i.height;return l<=100?30:l<=150?35:l<=200?45:l<=250?55:l<=300?60:70},show:!r}}function yt(e,t){let r=[],i=e[0],o=i.length,n=Array(o).fill(0),s=[i];if(e.forEach((a,l)=>{l!==0&&(t?s.push(a):s.push(a.map((u,g)=>n[g]=n[g]+(u||0))))}),!t)for(let a=1;a<e.length-1;a++)r.push({series:[a+1,a]});return{data:s,bands:r.filter(a=>a.series[1]>-1)}}var vt=require("react/jsx-runtime");function be(e){let{times:t,series:r,metadata:i,type:o,className:n,timeZone:s,options:a,tooltip:l,colors:u,tooltipComponent:g,unit:d,fill:h,thresholds:p,min:m,max:b,hideAxis:v,hideCursor:f,relativeTimeAxis:x,invertSort:C,disableSuggestedLabel:y}=e,{hide:T,visibilityLimit:R}=l||{},k=(0,ge.useRef)(null),S=O(),M=typeof x=="boolean"?x:S.relativeTimeAxis,A=u??S.colors,z=typeof h=="boolean"?h:S.fill||!1,W=typeof C=="boolean"?C:S.invertSort,q=typeof y=="boolean"?y:S.disableSuggestedLabel,P=typeof v=="boolean"?v:S.hideAxis,F=typeof f=="boolean"?f:S.hideCursor,ye=typeof R=="boolean"?R:S.tooltip?.visibilityLimit,B=typeof T=="boolean"?T:S.tooltip?.hide;return(0,ge.useEffect)(()=>{if(!r||r.length===0){console.warn("No series provided");return}let te=[t],Te=d;r.forEach(E=>{let ae=i[E.metric];d||(Te=mt(Te,ae)),te.push(E.values)});let Fe=o==="bar"||o==="area",re=yt(te,!Fe);p&&p.forEach(E=>{ie(E)?re.data.push(new Array(t.length).fill(E.value)):de(E)&&(re.data.push(new Array(t.length).fill(E.from)),re.data.push(new Array(t.length).fill(E.to)))});let j=k.current,ve=null;if(j){let E=ft(j,i,re,Te,r,o,Fe,A,z,s,g,M,B,p,m,b,P,F,ye,W,q);ve=new Tt.default({...E,...a},re.data,j);let ae=new ResizeObserver(()=>{ve?.setSize({width:j.clientWidth,height:j.clientHeight})});return ae.observe(j),()=>{ve?.destroy(),ae.disconnect()}}},[r,t,o,i,s,g,M,A,z,d,B,p,m,b,a,P,F,W,ye,q]),(0,vt.jsx)("div",{ref:k,className:"ub-chart-container"+(n?` ${n}`:"")})}var Q=require("react/jsx-runtime");function Ct({metrics:e,operator:t,attributes:r,groupBy:i,interval:o,type:n="line",className:s,appearance:a,tooltip:l,onResponse:u,...g}){let d=O(),h=o??d.interval,p=r??d.attributes,m=i??d.groupBy,b=t??d.operator,v=a?.components?.Tooltip??d.appearance.components.Tooltip,f=(0,ee.useMemo)(()=>({hide:l?.hide??d.tooltip?.hide,visibilityLimit:l?.visibilityLimit??d.tooltip?.visibilityLimit}),[l?.hide,d.tooltip?.hide,l?.visibilityLimit,d.tooltip?.visibilityLimit]),{queries:x,metadataLabels:C}=(0,ee.useMemo)(()=>{let P=Array.isArray(e)?e:[e],F={};return{queries:P.map(B=>{let te=ke(B)?B.name:B;return ke(B)&&(F[te]=B.label),{metrics:[te],operator:b,attributes:p,groupBy:m}}),metadataLabels:F}},[e,b,p,m]),y=me({queries:x,timeRange:d.timeRange,startTime:d.startTime,endTime:d.endTime,interval:h}),{isLoading:T,data:R,hasError:k}=y,{series:S,times:M,metadata:A}=R,z=S.every(P=>P.isEmpty),W=(0,ee.useMemo)(()=>Object.keys(C).length===0?A:Object.fromEntries(Object.entries(A).map(([P,F])=>[P,{...F,label:C[P]??F.suggestedLabel??P}])),[C,A]),q=`ub-chart-container${s?` ${s}`:""}`;if((0,ee.useEffect)(()=>{u&&u(y)},[y,u]),T){let P=a?.components?.Loading??d.appearance.components.Loading;return(0,Q.jsx)("div",{className:q,children:(0,Q.jsx)(P,{})})}if(k){let P=a?.components?.Error??d.appearance.components.Error;return(0,Q.jsx)("div",{className:q,children:(0,Q.jsx)(P,{})})}if(z){let P=a?.components?.Empty??d.appearance.components.Empty;return(0,Q.jsx)("div",{className:q,children:(0,Q.jsx)(P,{})})}return(0,Q.jsx)(be,{times:M,series:S,metadata:W,type:n,className:s,tooltip:f,tooltipComponent:v,...g})}0&&(module.exports={Chart,Empty,Error,Loading,Scope,Timeseries,UnblindProvider,useLogs,useMetrics,useRefresh,useScope,useTimeseries,useUsage});
2
2
  //# sourceMappingURL=index.js.map