@unblind/react 0.1.0-alpha.2 → 0.1.0-alpha.4

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,3 +1,2 @@
1
- @layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: Inter, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500: oklch(63.7% .237 25.331);--color-slate-50: oklch(98.4% .003 247.858);--color-slate-100: oklch(96.8% .007 247.896);--color-slate-200: oklch(92.9% .013 255.508);--color-slate-300: oklch(86.9% .022 252.894);--color-slate-400: oklch(70.4% .04 256.788);--color-slate-500: oklch(55.4% .046 257.417);--color-slate-600: oklch(44.6% .043 257.281);--color-slate-700: oklch(37.2% .044 257.287);--color-slate-900: oklch(20.8% .042 265.755);--color-gray-100: oklch(96.7% .003 264.542);--color-gray-200: oklch(92.8% .006 264.531);--color-gray-400: oklch(70.7% .022 261.325);--color-gray-500: oklch(55.1% .027 264.364);--color-zinc-400: oklch(70.5% .015 286.067);--color-zinc-800: oklch(27.4% .006 286.033);--color-zinc-900: oklch(21% .006 285.885);--color-black: #000;--color-white: #fff;--spacing: .25rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--radius-lg: .5rem;--blur-sm: 8px;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-font-feature-settings: var(--font-sans--font-feature-settings);--default-mono-font-family: var(--font-mono);--font-sans--font-feature-settings: "cv11"}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor;@supports (color: color-mix(in lab,red,red)){color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.top-0{top:calc(var(--spacing) * 0)}.z-10{z-index:10}.container{width:100%;@media(width>=40rem){max-width:40rem}@media(width>=48rem){max-width:48rem}@media(width>=64rem){max-width:64rem}@media(width>=80rem){max-width:80rem}@media(width>=96rem){max-width:96rem}}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.h-10{height:calc(var(--spacing) * 10)}.h-full{height:100%}.h-px{height:1px}.w-10{width:calc(var(--spacing) * 10)}.w-\[320px\]{width:320px}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:calc(infinity * 1px)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-200\/80{border-color:color-mix(in srgb,oklch(92.8% .006 264.531) 80%,transparent);@supports (color: color-mix(in lab,red,red)){border-color:color-mix(in oklab,var(--color-gray-200) 80%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-white{background-color:var(--color-white)}.bg-white\/95{background-color:color-mix(in srgb,#fff 95%,transparent);@supports (color: color-mix(in lab,red,red)){background-color:color-mix(in oklab,var(--color-white) 95%,transparent)}}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.pt-2\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-4\.5{padding-left:calc(var(--spacing) * 4.5)}.text-center{text-align:center}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight: var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-red-500{color:var(--color-red-500)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.text-zinc-400{color:var(--color-zinc-400)}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-70{opacity:70%}.shadow-sm{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black\/5{--tw-ring-color: color-mix(in srgb, #000 5%, transparent);@supports (color: color-mix(in lab,red,red)){--tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent)}}.ring-gray-200\/40{--tw-ring-color: color-mix(in srgb, oklch(92.8% .006 264.531) 40%, transparent);@supports (color: color-mix(in lab,red,red)){--tw-ring-color: color-mix(in oklab, var(--color-gray-200) 40%, transparent)}}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur: blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.hover\:bg-slate-50{&:hover{@media(hover:hover){background-color:var(--color-slate-50)}}}.dark\:border-white\/5{&:where(.dark,.dark *){border-color:color-mix(in srgb,#fff 5%,transparent);@supports (color: color-mix(in lab,red,red)){border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}}.dark\:border-white\/10{&:where(.dark,.dark *){border-color:color-mix(in srgb,#fff 10%,transparent);@supports (color: color-mix(in lab,red,red)){border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}}.dark\:bg-white\/15{&:where(.dark,.dark *){background-color:color-mix(in srgb,#fff 15%,transparent);@supports (color: color-mix(in lab,red,red)){background-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}}.dark\:bg-zinc-800{&:where(.dark,.dark *){background-color:var(--color-zinc-800)}}.dark\:bg-zinc-900{&:where(.dark,.dark *){background-color:var(--color-zinc-900)}}.dark\:bg-zinc-900\/95{&:where(.dark,.dark *){background-color:color-mix(in srgb,oklch(21% .006 285.885) 95%,transparent);@supports (color: color-mix(in lab,red,red)){background-color:color-mix(in oklab,var(--color-zinc-900) 95%,transparent)}}}.dark\:text-gray-400{&:where(.dark,.dark *){color:var(--color-gray-400)}}.dark\:text-gray-500{&:where(.dark,.dark *){color:var(--color-gray-500)}}.dark\:text-slate-100{&:where(.dark,.dark *){color:var(--color-slate-100)}}.dark\:text-slate-200{&:where(.dark,.dark *){color:var(--color-slate-200)}}.dark\:text-slate-300{&:where(.dark,.dark *){color:var(--color-slate-300)}}.dark\:text-slate-400{&:where(.dark,.dark *){color:var(--color-slate-400)}}.dark\:text-white{&:where(.dark,.dark *){color:var(--color-white)}}.dark\:ring-white\/10{&:where(.dark,.dark *){--tw-ring-color: color-mix(in srgb, #fff 10%, transparent);@supports (color: color-mix(in lab,red,red)){--tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent)}}}.dark\:ring-zinc-800\/40{&:where(.dark,.dark *){--tw-ring-color: color-mix(in srgb, oklch(27.4% .006 286.033) 40%, transparent);@supports (color: color-mix(in lab,red,red)){--tw-ring-color: color-mix(in oklab, var(--color-zinc-800) 40%, transparent)}}}.dark\:hover\:bg-white\/5{&:where(.dark,.dark *){&:hover{@media(hover:hover){background-color:color-mix(in srgb,#fff 5%,transparent);@supports (color: color-mix(in lab,red,red)){background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}}}}}.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}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-ordinal{syntax: "*"; inherits: false;}@property --tw-slashed-zero{syntax: "*"; inherits: false;}@property --tw-numeric-figure{syntax: "*"; inherits: false;}@property --tw-numeric-spacing{syntax: "*"; inherits: false;}@property --tw-numeric-fraction{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-backdrop-blur{syntax: "*"; inherits: false;}@property --tw-backdrop-brightness{syntax: "*"; inherits: false;}@property --tw-backdrop-contrast{syntax: "*"; inherits: false;}@property --tw-backdrop-grayscale{syntax: "*"; inherits: false;}@property --tw-backdrop-hue-rotate{syntax: "*"; inherits: false;}@property --tw-backdrop-invert{syntax: "*"; inherits: false;}@property --tw-backdrop-opacity{syntax: "*"; inherits: false;}@property --tw-backdrop-saturate{syntax: "*"; inherits: false;}@property --tw-backdrop-sepia{syntax: "*"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style: solid;--tw-font-weight: initial;--tw-ordinal: initial;--tw-slashed-zero: initial;--tw-numeric-figure: initial;--tw-numeric-spacing: initial;--tw-numeric-fraction: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-backdrop-blur: initial;--tw-backdrop-brightness: initial;--tw-backdrop-contrast: initial;--tw-backdrop-grayscale: initial;--tw-backdrop-hue-rotate: initial;--tw-backdrop-invert: initial;--tw-backdrop-opacity: initial;--tw-backdrop-saturate: initial;--tw-backdrop-sepia: initial}}}
2
- /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
1
+ @import"uplot/dist/uPlot.min.css";.ub-default{display:flex;height:100%;align-items:center;justify-content:center;color:var(--ub-muted-foreground)}.ub-loading-text:before{content:attr(data-text)}.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)}: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;-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)}.ub-tooltip{display:flex;min-width:340px;max-width:520px;width:auto;flex-direction:column;font-size:.875rem;gap:.5rem;border-radius:var(--ub-radius);border:1px solid var(--ub-border);padding:.5rem .625rem;background-color:var(--ub-popover)}.ub-tooltip-datetime{font-weight:500;padding-left:.3rem;padding-right:.3rem}.ub-tooltip-divider{height:1px;width:100%;border:none;background:var(--ub-border);margin:0}.ub-tooltip-content{display:flex;flex-direction:column;padding-left:.35rem;padding-right:.35rem;gap:.2rem}.ub-tooltip-group{display:flex;flex-direction:column;gap:.25rem}.ub-tooltip-group-header{position:sticky;top:0;z-index:10;color:var(--ub-primary);--opacity: 50%}.ub-tooltip-group-header--separator{margin-top:.25rem}.ub-tooltip-items{display:flex;flex-direction:column;gap:.5rem}.ub-tooltip-item{display:flex;flex-direction:column;transition:background-color .15s ease}.ub-tooltip-item-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ub-tooltip-item-left{display:flex;flex-direction:column;--gap: .625rem;min-width:0;overflow:hidden}.ub-tooltip-item-heading{display:flex;gap:.25rem;align-items:center}.ub-tooltip-item-metric-name{opacity:100%}.ub-tooltip-item-metric-name-label{--opacity: 50%}.ub-tooltip-item-dot{width:3px;height:14px;flex-shrink:0;border-radius:9999px}.ub-tooltip-item-attributes{display:flex;gap:.25rem;margin-right:auto}.ub-tooltip-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ub-tooltip-item-value{font-weight:500;--tw-font-weight: 500;font-variant-numeric:tabular-nums;font-size:.8rem;white-space:nowrap;margin-left:3rem}.ub-tooltip-item-value--empty{font-weight:400;color:var(--ub-text-disabled)}.ub-tooltip-attributes{margin-top:.125rem;display:flex;flex-wrap:wrap;-moz-column-gap:.75rem;column-gap:.75rem;row-gap:.125rem;padding-left:.75rem;line-height:1rem}.ub-tooltip-attribute{display:flex;align-items:center;gap:.25rem}.ub-tooltip-item-attribute-container{display:flex}.ub-tooltip-item-attribute-key{opacity:var(--ub-opacity-subtle);font-size:12px}.ub-tooltip-item-attribute-with-key{background:var(--ub-muted);radius:var(--ub-radius);padding:0 .25rem}.ub-tooltip-item-attribute-with-key{.ub-tooltip-item-attribute-value{color:var(--primary-foreground)}}.ub-tooltip-item-attribute-value{color:var(--ub-muted-foreground);font-weight:500;font-size:12px}.ub-tooltip-item-hidden-metric .ub-tooltip-item-attribute-value{color:var(--ub-foreground)}.ub-tooltip-item-attribute-divider:before{content:attr(data-text);color:var(--ub-muted-foreground)}.ub-tooltip-no-data{padding:0 .3rem;font-style:italic;color:var(--ub-placeholder);line-height:1rem}.ub-chart-container{width:100%;height:100%;min-height:0;flex:1}.ub-chart-container{width:100%;height:100%}
3
2
  /*# sourceMappingURL=index.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/styles.css"],"sourcesContent":["/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */\n@layer properties;\n@layer theme, base, components, utilities;\n@layer theme {\n :root, :host {\n --font-sans: Inter, sans-serif;\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-slate-50: oklch(98.4% 0.003 247.858);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-slate-200: oklch(92.9% 0.013 255.508);\n --color-slate-300: oklch(86.9% 0.022 252.894);\n --color-slate-400: oklch(70.4% 0.04 256.788);\n --color-slate-500: oklch(55.4% 0.046 257.417);\n --color-slate-600: oklch(44.6% 0.043 257.281);\n --color-slate-700: oklch(37.2% 0.044 257.287);\n --color-slate-900: oklch(20.8% 0.042 265.755);\n --color-gray-100: oklch(96.7% 0.003 264.542);\n --color-gray-200: oklch(92.8% 0.006 264.531);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-zinc-400: oklch(70.5% 0.015 286.067);\n --color-zinc-800: oklch(27.4% 0.006 286.033);\n --color-zinc-900: oklch(21% 0.006 285.885);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --font-weight-normal: 400;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --radius-lg: 0.5rem;\n --blur-sm: 8px;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-font-feature-settings: var(--font-sans--font-feature-settings);\n --default-mono-font-family: var(--font-mono);\n --font-sans--font-feature-settings: \"cv11\";\n }\n}\n@layer base {\n *, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\n html, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\n hr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\n abbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\n h1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b, strong {\n font-weight: bolder;\n }\n code, kbd, samp, pre {\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n sub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n sub {\n bottom: -0.25em;\n }\n sup {\n top: -0.5em;\n }\n table {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n :-moz-focusring {\n outline: auto;\n }\n progress {\n vertical-align: baseline;\n }\n summary {\n display: list-item;\n }\n ol, ul, menu {\n list-style: none;\n }\n img, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\n img, video {\n max-width: 100%;\n height: auto;\n }\n button, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n :where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n :where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n ::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n ::-webkit-datetime-edit {\n display: inline-flex;\n }\n ::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n ::-webkit-calendar-picker-indicator {\n line-height: 1;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n}\n@layer utilities {\n .fixed {\n position: fixed;\n }\n .relative {\n position: relative;\n }\n .sticky {\n position: sticky;\n }\n .top-0 {\n top: calc(var(--spacing) * 0);\n }\n .z-10 {\n z-index: 10;\n }\n .container {\n width: 100%;\n @media (width >= 40rem) {\n max-width: 40rem;\n }\n @media (width >= 48rem) {\n max-width: 48rem;\n }\n @media (width >= 64rem) {\n max-width: 64rem;\n }\n @media (width >= 80rem) {\n max-width: 80rem;\n }\n @media (width >= 96rem) {\n max-width: 96rem;\n }\n }\n .mx-auto {\n margin-inline: auto;\n }\n .my-1 {\n margin-block: calc(var(--spacing) * 1);\n }\n .mt-0\\.5 {\n margin-top: calc(var(--spacing) * 0.5);\n }\n .mt-2 {\n margin-top: calc(var(--spacing) * 2);\n }\n .block {\n display: block;\n }\n .flex {\n display: flex;\n }\n .grid {\n display: grid;\n }\n .inline {\n display: inline;\n }\n .size-2 {\n width: calc(var(--spacing) * 2);\n height: calc(var(--spacing) * 2);\n }\n .size-5 {\n width: calc(var(--spacing) * 5);\n height: calc(var(--spacing) * 5);\n }\n .h-10 {\n height: calc(var(--spacing) * 10);\n }\n .h-full {\n height: 100%;\n }\n .h-px {\n height: 1px;\n }\n .w-10 {\n width: calc(var(--spacing) * 10);\n }\n .w-\\[320px\\] {\n width: 320px;\n }\n .w-full {\n width: 100%;\n }\n .min-w-0 {\n min-width: calc(var(--spacing) * 0);\n }\n .shrink-0 {\n flex-shrink: 0;\n }\n .resize {\n resize: both;\n }\n .flex-col {\n flex-direction: column;\n }\n .flex-wrap {\n flex-wrap: wrap;\n }\n .items-center {\n align-items: center;\n }\n .justify-between {\n justify-content: space-between;\n }\n .justify-center {\n justify-content: center;\n }\n .gap-1 {\n gap: calc(var(--spacing) * 1);\n }\n .gap-2\\.5 {\n gap: calc(var(--spacing) * 2.5);\n }\n .gap-4 {\n gap: calc(var(--spacing) * 4);\n }\n .gap-x-3 {\n column-gap: calc(var(--spacing) * 3);\n }\n .gap-y-0\\.5 {\n row-gap: calc(var(--spacing) * 0.5);\n }\n .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .overflow-hidden {\n overflow: hidden;\n }\n .rounded-full {\n border-radius: calc(infinity * 1px);\n }\n .rounded-lg {\n border-radius: var(--radius-lg);\n }\n .border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n .border-gray-100 {\n border-color: var(--color-gray-100);\n }\n .border-gray-200 {\n border-color: var(--color-gray-200);\n }\n .border-gray-200\\/80 {\n border-color: color-mix(in srgb, oklch(92.8% 0.006 264.531) 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-gray-200) 80%, transparent);\n }\n }\n .bg-gray-100 {\n background-color: var(--color-gray-100);\n }\n .bg-gray-200 {\n background-color: var(--color-gray-200);\n }\n .bg-white {\n background-color: var(--color-white);\n }\n .bg-white\\/95 {\n background-color: color-mix(in srgb, #fff 95%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 95%, transparent);\n }\n }\n .px-3 {\n padding-inline: calc(var(--spacing) * 3);\n }\n .py-1 {\n padding-block: calc(var(--spacing) * 1);\n }\n .py-1\\.5 {\n padding-block: calc(var(--spacing) * 1.5);\n }\n .pt-2\\.5 {\n padding-top: calc(var(--spacing) * 2.5);\n }\n .pt-3 {\n padding-top: calc(var(--spacing) * 3);\n }\n .pb-2 {\n padding-bottom: calc(var(--spacing) * 2);\n }\n .pb-3 {\n padding-bottom: calc(var(--spacing) * 3);\n }\n .pl-4\\.5 {\n padding-left: calc(var(--spacing) * 4.5);\n }\n .text-center {\n text-align: center;\n }\n .text-sm {\n font-size: var(--text-sm);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n .text-xs {\n font-size: var(--text-xs);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n .font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: var(--font-weight-medium);\n }\n .font-normal {\n --tw-font-weight: var(--font-weight-normal);\n font-weight: var(--font-weight-normal);\n }\n .font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: var(--font-weight-semibold);\n }\n .whitespace-nowrap {\n white-space: nowrap;\n }\n .text-gray-400 {\n color: var(--color-gray-400);\n }\n .text-gray-500 {\n color: var(--color-gray-500);\n }\n .text-red-500 {\n color: var(--color-red-500);\n }\n .text-slate-400 {\n color: var(--color-slate-400);\n }\n .text-slate-500 {\n color: var(--color-slate-500);\n }\n .text-slate-600 {\n color: var(--color-slate-600);\n }\n .text-slate-700 {\n color: var(--color-slate-700);\n }\n .text-slate-900 {\n color: var(--color-slate-900);\n }\n .text-zinc-400 {\n color: var(--color-zinc-400);\n }\n .italic {\n font-style: italic;\n }\n .tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n .opacity-70 {\n opacity: 70%;\n }\n .shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring-1 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring-black\\/5 {\n --tw-ring-color: color-mix(in srgb, #000 5%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent);\n }\n }\n .ring-gray-200\\/40 {\n --tw-ring-color: color-mix(in srgb, oklch(92.8% 0.006 264.531) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-gray-200) 40%, transparent);\n }\n }\n .filter {\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .backdrop-blur-sm {\n --tw-backdrop-blur: blur(var(--blur-sm));\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n .transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n .hover\\:bg-slate-50 {\n &:hover {\n @media (hover: hover) {\n background-color: var(--color-slate-50);\n }\n }\n }\n .dark\\:border-white\\/5 {\n &:where(.dark, .dark *) {\n border-color: color-mix(in srgb, #fff 5%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 5%, transparent);\n }\n }\n }\n .dark\\:border-white\\/10 {\n &:where(.dark, .dark *) {\n border-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n }\n }\n .dark\\:bg-white\\/15 {\n &:where(.dark, .dark *) {\n background-color: color-mix(in srgb, #fff 15%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 15%, transparent);\n }\n }\n }\n .dark\\:bg-zinc-800 {\n &:where(.dark, .dark *) {\n background-color: var(--color-zinc-800);\n }\n }\n .dark\\:bg-zinc-900 {\n &:where(.dark, .dark *) {\n background-color: var(--color-zinc-900);\n }\n }\n .dark\\:bg-zinc-900\\/95 {\n &:where(.dark, .dark *) {\n background-color: color-mix(in srgb, oklch(21% 0.006 285.885) 95%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-zinc-900) 95%, transparent);\n }\n }\n }\n .dark\\:text-gray-400 {\n &:where(.dark, .dark *) {\n color: var(--color-gray-400);\n }\n }\n .dark\\:text-gray-500 {\n &:where(.dark, .dark *) {\n color: var(--color-gray-500);\n }\n }\n .dark\\:text-slate-100 {\n &:where(.dark, .dark *) {\n color: var(--color-slate-100);\n }\n }\n .dark\\:text-slate-200 {\n &:where(.dark, .dark *) {\n color: var(--color-slate-200);\n }\n }\n .dark\\:text-slate-300 {\n &:where(.dark, .dark *) {\n color: var(--color-slate-300);\n }\n }\n .dark\\:text-slate-400 {\n &:where(.dark, .dark *) {\n color: var(--color-slate-400);\n }\n }\n .dark\\:text-white {\n &:where(.dark, .dark *) {\n color: var(--color-white);\n }\n }\n .dark\\:ring-white\\/10 {\n &:where(.dark, .dark *) {\n --tw-ring-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n }\n }\n .dark\\:ring-zinc-800\\/40 {\n &:where(.dark, .dark *) {\n --tw-ring-color: color-mix(in srgb, oklch(27.4% 0.006 286.033) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-zinc-800) 40%, transparent);\n }\n }\n }\n .dark\\:hover\\:bg-white\\/5 {\n &:where(.dark, .dark *) {\n &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #fff 5%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 5%, transparent);\n }\n }\n }\n }\n }\n}\n.uplot, .uplot *, .uplot *::before, .uplot *::after {\n box-sizing: border-box;\n}\n.uplot {\n 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\";\n line-height: 1.5;\n width: min-content;\n}\n.u-title {\n text-align: center;\n font-size: 18px;\n font-weight: bold;\n}\n.u-wrap {\n position: relative;\n user-select: none;\n}\n.u-over, .u-under {\n position: absolute;\n}\n.u-under {\n overflow: hidden;\n}\n.uplot canvas {\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n}\n.u-axis {\n position: absolute;\n}\n.u-legend {\n font-size: 14px;\n margin: auto;\n text-align: center;\n}\n.u-inline {\n display: block;\n}\n.u-inline * {\n display: inline-block;\n}\n.u-inline tr {\n margin-right: 16px;\n}\n.u-legend th {\n font-weight: 600;\n}\n.u-legend th > * {\n vertical-align: middle;\n display: inline-block;\n}\n.u-legend .u-marker {\n width: 1em;\n height: 1em;\n margin-right: 4px;\n background-clip: padding-box !important;\n}\n.u-inline.u-live th::after {\n content: \":\";\n vertical-align: middle;\n}\n.u-inline:not(.u-live) .u-value {\n display: none;\n}\n.u-series > * {\n padding: 4px;\n}\n.u-series th {\n cursor: pointer;\n}\n.u-legend .u-off > * {\n opacity: 0.3;\n}\n.u-select {\n background: rgba(0,0,0,0.07);\n position: absolute;\n pointer-events: none;\n}\n.u-cursor-x, .u-cursor-y {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n will-change: transform;\n}\n.u-hz .u-cursor-x, .u-vt .u-cursor-y {\n height: 100%;\n border-right: 1px dashed #607D8B;\n}\n.u-hz .u-cursor-y, .u-vt .u-cursor-x {\n width: 100%;\n border-bottom: 1px dashed #607D8B;\n}\n.u-cursor-pt {\n position: absolute;\n top: 0;\n left: 0;\n border-radius: 50%;\n border: 0 solid;\n pointer-events: none;\n will-change: transform;\n background-clip: padding-box !important;\n}\n.u-axis.u-off, .u-select.u-off, .u-cursor-x.u-off, .u-cursor-y.u-off, .u-cursor-pt.u-off {\n display: none;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@layer properties {\n @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-border-style: solid;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-backdrop-blur: initial;\n --tw-backdrop-brightness: initial;\n --tw-backdrop-contrast: initial;\n --tw-backdrop-grayscale: initial;\n --tw-backdrop-hue-rotate: initial;\n --tw-backdrop-invert: initial;\n --tw-backdrop-opacity: initial;\n --tw-backdrop-saturate: initial;\n --tw-backdrop-sepia: initial;\n }\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/components/Defaults/Defaults.css","../src/styles.css","../src/components/Tooltip/Tooltip.css","../src/components/Chart/Chart.css","../src/components/TimeseriesChart/TimeseriesChart.css"],"sourcesContent":[".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-loading-text::before {\n content: attr(data-text);\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","@import \"uplot/dist/uPlot.min.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 --ub-chart-font-size: 11px;\n -webkit-font-smoothing: antialiased;\n}\n\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 /* We are using popover for tooltip background */\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","/* Container */\n.ub-tooltip {\n display: flex;\n min-width: 340px;\n max-width: 520px;\n width: auto;\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 0.625rem 0.5rem 0.625rem;\n background-color: var(--ub-popover);\n}\n\n.ub-tooltip-datetime {\n font-weight: 500;\n padding-left: 0.3rem;\n padding-right: 0.3rem;\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-content {\n display: flex;\n flex-direction: column;\n padding-left: 0.35rem;\n padding-right: 0.35rem;\n gap: 0.2rem;\n}\n\n.ub-tooltip-group {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n.ub-tooltip-group-header {\n position: sticky;\n top: 0;\n z-index: 10;\n color: var(--ub-primary);\n --opacity: 50%;\n}\n\n.ub-tooltip-group-header--separator {\n margin-top: 0.25rem;\n}\n\n.ub-tooltip-items {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.ub-tooltip-item {\n display: flex;\n flex-direction: column;\n transition: background-color 0.15s ease;\n}\n\n.ub-tooltip-item-row {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 1rem;\n}\n\n.ub-tooltip-item-left {\n display: flex;\n flex-direction: column;\n --gap: 0.625rem;\n min-width: 0;\n overflow: hidden;\n}\n\n.ub-tooltip-item-heading {\n display: flex;\n gap: 0.25rem;\n align-items: center;\n}\n\n.ub-tooltip-item-metric-name {\n opacity: 100%;\n}\n\n.ub-tooltip-item-metric-name-label {\n --opacity: 50%;\n}\n\n.ub-tooltip-item-dot {\n width: 3px;\n height: 14px;\n flex-shrink: 0;\n border-radius: 9999px;\n}\n\n.ub-tooltip-item-attributes {\n display: flex;\n gap: 0.25rem;\n margin-right: auto;\n}\n\n.ub-tooltip-item-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.ub-tooltip-item-value {\n font-weight: 500;\n --tw-font-weight: 500;\n font-variant-numeric: tabular-nums;\n font-size: 0.8rem;\n white-space: nowrap;\n margin-left: 3rem;\n}\n\n.ub-tooltip-item-value--empty {\n font-weight: 400;\n color: var(--ub-text-disabled);\n}\n\n/* Attributes Container */\n.ub-tooltip-attributes {\n margin-top: 0.125rem;\n display: flex;\n flex-wrap: wrap;\n -moz-column-gap: 0.75rem;\n column-gap: 0.75rem;\n row-gap: 0.125rem;\n padding-left: 0.75rem;\n line-height: 1rem;\n}\n\n/* Attribute Item */\n.ub-tooltip-attribute {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n\n.ub-tooltip-item-attribute-container {\n display: flex;\n}\n\n.ub-tooltip-item-attribute-key {\n opacity: var(--ub-opacity-subtle);\n font-size: 12px;\n}\n\n.ub-tooltip-item-attribute-with-key {\n background: var(--ub-muted);\n radius: var(--ub-radius);\n padding: 0 0.25rem 0 0.25rem;\n}\n\n.ub-tooltip-item-attribute-with-key {\n .ub-tooltip-item-attribute-value {\n color: var(--primary-foreground)\n }\n}\n\n.ub-tooltip-item-attribute-value {\n color: var(--ub-muted-foreground);\n font-weight: 500;\n font-size: 12px;\n}\n\n.ub-tooltip-item-hidden-metric .ub-tooltip-item-attribute-value {\n color: var(--ub-foreground);\n}\n\n.ub-tooltip-item-attribute-divider::before {\n content: attr(data-text);\n color: var(--ub-muted-foreground);\n}\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-chart-container {\n width: 100%;\n height: 100%;\n min-height: 0;\n flex: 1;\n}\n",".ub-chart-container {\n width: 100%;\n height: 100%;\n}\n"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -18,7 +18,7 @@ type UnblindClientConfig = {
18
18
  fetchImpl?: typeof fetch;
19
19
  };
20
20
  type UnblindClientProviderProps = {
21
- children: ReactNode;
21
+ children?: ReactNode;
22
22
  /**
23
23
  * Optional QueryClient instance. If not provided, a new one will be created.
24
24
  * Useful if you already have a QueryClientProvider in your app and want to reuse it.
@@ -38,31 +38,6 @@ type UnblindClientProviderProps = {
38
38
  */
39
39
  fetchImpl?: typeof fetch;
40
40
  };
41
- /**
42
- * UnblindClientProvider sets up the QueryClientProvider (for React Query)
43
- * and the Unblind client configuration context.
44
- *
45
- * @example
46
- * ```tsx
47
- * import { UnblindClientProvider } from '@unblind/react';
48
- *
49
- * function App() {
50
- * return (
51
- * <UnblindClientProvider apiBaseUrl="/api/unblind">
52
- * <YourComponents />
53
- * </UnblindClientProvider>
54
- * );
55
- * }
56
- * ```
57
- */
58
- declare function UnblindClientProvider({ children, queryClient: providedQueryClient, queryClientConfig: providedQueryClientConfig, apiBaseUrl, fetchImpl, }: UnblindClientProviderProps): react_jsx_runtime.JSX.Element;
59
- /**
60
- * Access the Unblind client configuration.
61
- *
62
- * @throws Error if called outside of an UnblindClientProvider.
63
- * This ensures that QueryClientProvider is always available for hooks.
64
- */
65
- declare function useUnblindClientConfig(): UnblindClientConfig;
66
41
  /**
67
42
  * Hook to refresh all timeseries data.
68
43
  * Invalidates all queries with the 'unblind' and 'timeseries' keys,
@@ -84,11 +59,12 @@ declare function useUnblindClientConfig(): UnblindClientConfig;
84
59
  declare function useRefresh(): () => Promise<void>;
85
60
 
86
61
  interface TooltipItem {
87
- metric: string | HTMLElement | undefined;
62
+ metric: MetricMetadata;
63
+ serie: uPlot.Series;
88
64
  color: string;
89
65
  value?: number;
90
66
  formattedValue?: string;
91
- attributes?: Record<string, any>;
67
+ attributes?: Record<string, string>;
92
68
  }
93
69
  interface TooltipProps {
94
70
  timestamp: number;
@@ -137,7 +113,7 @@ type MetricMetadataList = Array<MetricMetadata>;
137
113
  */
138
114
  interface Serie {
139
115
  metric: string;
140
- attributes: Array<AttributeWithValue>;
116
+ attributes?: Record<string, string>;
141
117
  values: Array<number>;
142
118
  queryName?: string;
143
119
  queryIndex: number;
@@ -240,7 +216,7 @@ interface ChartVisualConfig {
240
216
  * Optional order for rendering results.
241
217
  * Defaults to false
242
218
  */
243
- orderByValues?: boolean;
219
+ sortByValues?: boolean;
244
220
  }
245
221
  /**
246
222
  * Appearance configuration for Unblind components.
@@ -264,9 +240,11 @@ type Appearance = {
264
240
  } & ChartVisualConfig;
265
241
  type TimeseriesProps = TimeseriesQueryConfig & {
266
242
  /**
267
- * Array of metric names to display in the chart.
243
+ * Metric name(s) to display in the chart.
244
+ *
245
+ * Optional: a single string name.
268
246
  */
269
- metrics: Array<string>;
247
+ metrics: Array<string> | string;
270
248
  };
271
249
 
272
250
  type UnblindScopeConfig = TimeseriesQueryConfig & {
@@ -297,7 +275,7 @@ type UnblindScopeConfig = TimeseriesQueryConfig & {
297
275
  appearance?: Appearance;
298
276
  };
299
277
  type UnblindScopeProps = UnblindScopeConfig & {
300
- children: React$1.ReactNode;
278
+ children?: React$1.ReactNode;
301
279
  };
302
280
  /**
303
281
  * UnblindScope provides scoped configuration for all Unblind components (charts, logs, etc).
@@ -338,7 +316,7 @@ type UseScopeReturn = TimeseriesQueryConfig & {
338
316
  Tooltip?: React$1.ComponentType<TooltipProps>;
339
317
  };
340
318
  colors: Colors;
341
- orderByValues?: boolean;
319
+ sortByValues?: boolean;
342
320
  };
343
321
  };
344
322
  /**
@@ -357,7 +335,7 @@ type UseScopeReturn = TimeseriesQueryConfig & {
357
335
  declare function useScope(): UseScopeReturn;
358
336
 
359
337
  type UnblindProviderProps = UnblindClientProviderProps & UnblindScopeProps & {
360
- children: React.ReactNode;
338
+ children?: React.ReactNode;
361
339
  };
362
340
  /**
363
341
  * UnblindProvider is required for all Unblind hooks to work.
@@ -472,6 +450,18 @@ type TimeseriesChartProps = TimeseriesProps & {
472
450
  * Chart type. Defaults to "line".
473
451
  */
474
452
  type?: ChartType;
453
+ /**
454
+ * Unit of measurement for the value.
455
+ *
456
+ * Supports standard unit identifiers:
457
+ * - Data: 'bytes', 'decbytes', 'bits', 'decbits'
458
+ * - Time: 'ms', 's', 'm', 'h', 'd'
459
+ * - Throughput: 'Bps', 'Mbps', 'Gbps'
460
+ * - Percentage: 'percent', 'percentunit'
461
+ * - And many more standard units
462
+ *
463
+ */
464
+ unit?: string;
475
465
  /**
476
466
  * Optional className for the chart container.
477
467
  */
@@ -502,7 +492,7 @@ type TimeseriesChartProps = TimeseriesProps & {
502
492
  * </UnblindScope>
503
493
  * ```
504
494
  */
505
- declare function TimeseriesChart({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, timeRange: propTimeRange, startTime: propStartTime, endTime: propEndTime, interval: propInterval, type, className, appearance: propAppearance, }: TimeseriesChartProps): react_jsx_runtime.JSX.Element;
495
+ declare function TimeseriesChart({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, timeRange: propTimeRange, startTime: propStartTime, endTime: propEndTime, interval: propInterval, type, className, appearance: propAppearance, unit: propUnit, }: TimeseriesChartProps): react_jsx_runtime.JSX.Element;
506
496
 
507
497
  interface ChartProps extends ChartVisualConfig {
508
498
  times: Array<number>;
@@ -512,6 +502,7 @@ interface ChartProps extends ChartVisualConfig {
512
502
  className?: string;
513
503
  timeZone?: string;
514
504
  options?: uPlot.Options;
505
+ unit?: string;
515
506
  tooltipAppearance?: React.ComponentType<TooltipProps>;
516
507
  }
517
508
  /**
@@ -519,6 +510,8 @@ interface ChartProps extends ChartVisualConfig {
519
510
  */
520
511
  declare function Chart(props: ChartProps): react_jsx_runtime.JSX.Element;
521
512
 
522
- declare function Divider({ className, ...props }: React$1.ComponentPropsWithoutRef<"hr">): react_jsx_runtime.JSX.Element;
513
+ declare function Empty(): react_jsx_runtime.JSX.Element;
514
+ declare function Error(): react_jsx_runtime.JSX.Element;
515
+ declare function Loading(): react_jsx_runtime.JSX.Element;
523
516
 
524
- export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors, Divider, type Interval, type Log, type MetricMetadata, type MetricMetadataList, type MetricType, type PaginatedResponse, type Serie, type Severity, type TimeConfig, type TimeRange, TimeseriesChart, type TimeseriesChartProps, type TimeseriesProps, type TimeseriesQuery, type TimeseriesQueryConfig, type TooltipProps, type UnblindClientConfig, UnblindClientProvider, type UnblindClientProviderProps, UnblindProvider, type UnblindProviderProps, UnblindScope, type UnblindScopeConfig, type UnblindScopeProps, type Usage, type UseLogsParams, type UseLogsReturn, type UseMetricsReturn, type UseScopeReturn, type UseTimeseriesParams, type UseTimeseriesReturn, type UseUsageParams, type UseUsageReturn, useLogs, useMetrics, useRefresh, useScope, useTheme, useTimeseries, useUnblindClientConfig, useUsage };
517
+ export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors, Empty, Error, type Interval, Loading, type Log, type MetricMetadata, type MetricMetadataList, type MetricType, type PaginatedResponse, type Serie, type Severity, type TimeConfig, type TimeRange, TimeseriesChart, type TimeseriesChartProps, type TimeseriesProps, type TimeseriesQuery, type TimeseriesQueryConfig, type TooltipProps, type UnblindClientConfig, UnblindProvider, type UnblindProviderProps, UnblindScope, type UnblindScopeConfig, type UnblindScopeProps, type Usage, type UseLogsParams, type UseLogsReturn, type UseMetricsReturn, type UseScopeReturn, type UseTimeseriesParams, type UseTimeseriesReturn, type UseUsageParams, type UseUsageReturn, useLogs, useMetrics, useRefresh, useScope, useTheme, useTimeseries, useUsage };
package/dist/index.d.ts CHANGED
@@ -18,7 +18,7 @@ type UnblindClientConfig = {
18
18
  fetchImpl?: typeof fetch;
19
19
  };
20
20
  type UnblindClientProviderProps = {
21
- children: ReactNode;
21
+ children?: ReactNode;
22
22
  /**
23
23
  * Optional QueryClient instance. If not provided, a new one will be created.
24
24
  * Useful if you already have a QueryClientProvider in your app and want to reuse it.
@@ -38,31 +38,6 @@ type UnblindClientProviderProps = {
38
38
  */
39
39
  fetchImpl?: typeof fetch;
40
40
  };
41
- /**
42
- * UnblindClientProvider sets up the QueryClientProvider (for React Query)
43
- * and the Unblind client configuration context.
44
- *
45
- * @example
46
- * ```tsx
47
- * import { UnblindClientProvider } from '@unblind/react';
48
- *
49
- * function App() {
50
- * return (
51
- * <UnblindClientProvider apiBaseUrl="/api/unblind">
52
- * <YourComponents />
53
- * </UnblindClientProvider>
54
- * );
55
- * }
56
- * ```
57
- */
58
- declare function UnblindClientProvider({ children, queryClient: providedQueryClient, queryClientConfig: providedQueryClientConfig, apiBaseUrl, fetchImpl, }: UnblindClientProviderProps): react_jsx_runtime.JSX.Element;
59
- /**
60
- * Access the Unblind client configuration.
61
- *
62
- * @throws Error if called outside of an UnblindClientProvider.
63
- * This ensures that QueryClientProvider is always available for hooks.
64
- */
65
- declare function useUnblindClientConfig(): UnblindClientConfig;
66
41
  /**
67
42
  * Hook to refresh all timeseries data.
68
43
  * Invalidates all queries with the 'unblind' and 'timeseries' keys,
@@ -84,11 +59,12 @@ declare function useUnblindClientConfig(): UnblindClientConfig;
84
59
  declare function useRefresh(): () => Promise<void>;
85
60
 
86
61
  interface TooltipItem {
87
- metric: string | HTMLElement | undefined;
62
+ metric: MetricMetadata;
63
+ serie: uPlot.Series;
88
64
  color: string;
89
65
  value?: number;
90
66
  formattedValue?: string;
91
- attributes?: Record<string, any>;
67
+ attributes?: Record<string, string>;
92
68
  }
93
69
  interface TooltipProps {
94
70
  timestamp: number;
@@ -137,7 +113,7 @@ type MetricMetadataList = Array<MetricMetadata>;
137
113
  */
138
114
  interface Serie {
139
115
  metric: string;
140
- attributes: Array<AttributeWithValue>;
116
+ attributes?: Record<string, string>;
141
117
  values: Array<number>;
142
118
  queryName?: string;
143
119
  queryIndex: number;
@@ -240,7 +216,7 @@ interface ChartVisualConfig {
240
216
  * Optional order for rendering results.
241
217
  * Defaults to false
242
218
  */
243
- orderByValues?: boolean;
219
+ sortByValues?: boolean;
244
220
  }
245
221
  /**
246
222
  * Appearance configuration for Unblind components.
@@ -264,9 +240,11 @@ type Appearance = {
264
240
  } & ChartVisualConfig;
265
241
  type TimeseriesProps = TimeseriesQueryConfig & {
266
242
  /**
267
- * Array of metric names to display in the chart.
243
+ * Metric name(s) to display in the chart.
244
+ *
245
+ * Optional: a single string name.
268
246
  */
269
- metrics: Array<string>;
247
+ metrics: Array<string> | string;
270
248
  };
271
249
 
272
250
  type UnblindScopeConfig = TimeseriesQueryConfig & {
@@ -297,7 +275,7 @@ type UnblindScopeConfig = TimeseriesQueryConfig & {
297
275
  appearance?: Appearance;
298
276
  };
299
277
  type UnblindScopeProps = UnblindScopeConfig & {
300
- children: React$1.ReactNode;
278
+ children?: React$1.ReactNode;
301
279
  };
302
280
  /**
303
281
  * UnblindScope provides scoped configuration for all Unblind components (charts, logs, etc).
@@ -338,7 +316,7 @@ type UseScopeReturn = TimeseriesQueryConfig & {
338
316
  Tooltip?: React$1.ComponentType<TooltipProps>;
339
317
  };
340
318
  colors: Colors;
341
- orderByValues?: boolean;
319
+ sortByValues?: boolean;
342
320
  };
343
321
  };
344
322
  /**
@@ -357,7 +335,7 @@ type UseScopeReturn = TimeseriesQueryConfig & {
357
335
  declare function useScope(): UseScopeReturn;
358
336
 
359
337
  type UnblindProviderProps = UnblindClientProviderProps & UnblindScopeProps & {
360
- children: React.ReactNode;
338
+ children?: React.ReactNode;
361
339
  };
362
340
  /**
363
341
  * UnblindProvider is required for all Unblind hooks to work.
@@ -472,6 +450,18 @@ type TimeseriesChartProps = TimeseriesProps & {
472
450
  * Chart type. Defaults to "line".
473
451
  */
474
452
  type?: ChartType;
453
+ /**
454
+ * Unit of measurement for the value.
455
+ *
456
+ * Supports standard unit identifiers:
457
+ * - Data: 'bytes', 'decbytes', 'bits', 'decbits'
458
+ * - Time: 'ms', 's', 'm', 'h', 'd'
459
+ * - Throughput: 'Bps', 'Mbps', 'Gbps'
460
+ * - Percentage: 'percent', 'percentunit'
461
+ * - And many more standard units
462
+ *
463
+ */
464
+ unit?: string;
475
465
  /**
476
466
  * Optional className for the chart container.
477
467
  */
@@ -502,7 +492,7 @@ type TimeseriesChartProps = TimeseriesProps & {
502
492
  * </UnblindScope>
503
493
  * ```
504
494
  */
505
- declare function TimeseriesChart({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, timeRange: propTimeRange, startTime: propStartTime, endTime: propEndTime, interval: propInterval, type, className, appearance: propAppearance, }: TimeseriesChartProps): react_jsx_runtime.JSX.Element;
495
+ declare function TimeseriesChart({ metrics, operator: propOperator, attributes: propAttributes, groupBy: propGroupBy, timeRange: propTimeRange, startTime: propStartTime, endTime: propEndTime, interval: propInterval, type, className, appearance: propAppearance, unit: propUnit, }: TimeseriesChartProps): react_jsx_runtime.JSX.Element;
506
496
 
507
497
  interface ChartProps extends ChartVisualConfig {
508
498
  times: Array<number>;
@@ -512,6 +502,7 @@ interface ChartProps extends ChartVisualConfig {
512
502
  className?: string;
513
503
  timeZone?: string;
514
504
  options?: uPlot.Options;
505
+ unit?: string;
515
506
  tooltipAppearance?: React.ComponentType<TooltipProps>;
516
507
  }
517
508
  /**
@@ -519,6 +510,8 @@ interface ChartProps extends ChartVisualConfig {
519
510
  */
520
511
  declare function Chart(props: ChartProps): react_jsx_runtime.JSX.Element;
521
512
 
522
- declare function Divider({ className, ...props }: React$1.ComponentPropsWithoutRef<"hr">): react_jsx_runtime.JSX.Element;
513
+ declare function Empty(): react_jsx_runtime.JSX.Element;
514
+ declare function Error(): react_jsx_runtime.JSX.Element;
515
+ declare function Loading(): react_jsx_runtime.JSX.Element;
523
516
 
524
- export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors, Divider, type Interval, type Log, type MetricMetadata, type MetricMetadataList, type MetricType, type PaginatedResponse, type Serie, type Severity, type TimeConfig, type TimeRange, TimeseriesChart, type TimeseriesChartProps, type TimeseriesProps, type TimeseriesQuery, type TimeseriesQueryConfig, type TooltipProps, type UnblindClientConfig, UnblindClientProvider, type UnblindClientProviderProps, UnblindProvider, type UnblindProviderProps, UnblindScope, type UnblindScopeConfig, type UnblindScopeProps, type Usage, type UseLogsParams, type UseLogsReturn, type UseMetricsReturn, type UseScopeReturn, type UseTimeseriesParams, type UseTimeseriesReturn, type UseUsageParams, type UseUsageReturn, useLogs, useMetrics, useRefresh, useScope, useTheme, useTimeseries, useUnblindClientConfig, useUsage };
517
+ export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors, Empty, Error, type Interval, Loading, type Log, type MetricMetadata, type MetricMetadataList, type MetricType, type PaginatedResponse, type Serie, type Severity, type TimeConfig, type TimeRange, TimeseriesChart, type TimeseriesChartProps, type TimeseriesProps, type TimeseriesQuery, type TimeseriesQueryConfig, type TooltipProps, type UnblindClientConfig, UnblindProvider, type UnblindProviderProps, UnblindScope, type UnblindScopeConfig, type UnblindScopeProps, type Usage, type UseLogsParams, type UseLogsReturn, type UseMetricsReturn, type UseScopeReturn, type UseTimeseriesParams, type UseTimeseriesReturn, type UseUsageParams, type UseUsageReturn, useLogs, useMetrics, useRefresh, useScope, useTheme, useTimeseries, useUsage };