@unblind/react 0.1.0-alpha.2 → 0.1.0-alpha.3
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 +1 -2
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +8 -30
- package/dist/index.d.ts +8 -30
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -3
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, .65rem);--ub-background: var(--background, oklch(1 0 0));--ub-foreground: var(--foreground, oklch(.141 .005 285.823));--ub-card: var(--card, oklch(1 0 0));--ub-card-foreground: var(--card-foreground, oklch(.141 .005 285.823));--ub-popover: var(--popover, oklch(1 0 0));--ub-popover-foreground: var( --popover-foreground, oklch(.208 .042 264.541) );--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-accent: var(--accent, oklch(.985 .002 264.542));--ub-accent-foreground: var( --accent-foreground, oklch(.208 .042 264.541) );--ub-destructive: var(--destructive, oklch(.628 .258 29.234));--ub-destructive-foreground: var(--destructive-foreground, oklch(1 0 0));--ub-border: var( --border, oklch(.922 .005 264.542 / .8) );--ub-input: var(--input, 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}.dark{--ub-background: var(--background, oklch(.236 .013 265.755));--ub-foreground: var(--foreground, oklch(.9 .02 264.436));--ub-card: var(--card, oklch(.236 .013 265.755));--ub-card-foreground: var(--card-foreground, oklch(.9 .02 264.436));--ub-popover: var(--popover, oklch(.236 .013 265.755));--ub-popover-foreground: var(--popover-foreground, oklch(.9 .02 264.436));--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-accent: var(--accent, oklch(1 0 0 / .05));--ub-accent-foreground: var(--accent-foreground, oklch(1 0 0));--ub-destructive: var(--destructive, oklch(.628 .258 29.234));--ub-destructive-foreground: var(--destructive-foreground, oklch(1 0 0));--ub-border: var(--border, oklch(1 0 0 / .1));--ub-input: var(--input, 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:320px;max-width:520px;width:auto;flex-direction:column;gap:.25rem;font-size:13px;border-radius:var(--ub-radius);color:var(--ub-foreground);border:1px solid var(--ub-border);background-color:var(--ub-card);box-shadow:var(--ub-shadow-ring),var(--ub-shadow-lg)}.ub-tooltip-datetime{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem 0;font-weight:400;color:var(--ub-foreground)}.ub-tooltip-divider{margin:.25rem 0;height:1px;border:none;border-top:1px solid var(--ub-border);background:transparent}.ub-tooltip-content{display:flex;flex-direction:column;padding-bottom:.25rem}.ub-tooltip-group{display:flex;flex-direction:column}.ub-tooltip-group-header{position:sticky;top:0;z-index:10;background-color:var(--ub-popover);backdrop-filter:var(--ub-backdrop-blur);padding:0 .75rem;font-weight:400;color:var(--ub-secondary)}.ub-tooltip-group-header--separator{margin-top:.5rem;border-top:1px solid var(--ub-border);padding-top:.75rem}.ub-tooltip-items{display:flex;flex-direction:column;gap:.25rem}.ub-tooltip-item{display:flex;flex-direction:column;padding:.25rem .75rem;transition:background-color .15s ease}.ub-tooltip-item:hover{background-color:var(--ub-accent)}.ub-tooltip-item-main{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ub-tooltip-item-left{display:flex;align-items:center;gap:.625rem;min-width:0;overflow:hidden}.ub-tooltip-item-dot{width:.5rem;height:.5rem;flex-shrink:0;border-radius:9999px;box-shadow:0 0 0 1px var(--ub-shadow-ring-sm),var(--ub-shadow-sm)}.ub-tooltip-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--ub-foreground)}.ub-tooltip-item-value{font-weight:600;font-variant-numeric:tabular-nums;color:var(--ub-foreground);white-space:nowrap}.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:1.125rem;font-size:.75rem;line-height:1rem;color:var(--ub-muted-foreground)}.ub-tooltip-attribute{display:flex;align-items:center;gap:.25rem}.ub-tooltip-attribute-key{opacity:var(--ub-opacity-subtle)}.ub-tooltip-attribute-value{font-weight:500;color:var(--ub-secondary)}.ub-tooltip-no-data{padding:0 .75rem .75rem;font-style:italic;color:var(--ub-placeholder);font-size:.75rem;line-height:1rem}.ub-chart-container{width:100%;height:100%}
|
|
3
2
|
/*# sourceMappingURL=index.css.map */
|
package/dist/index.css.map
CHANGED
|
@@ -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/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.65rem);\n --ub-background: var(--background, oklch(1 0 0));\n --ub-foreground: var(--foreground, oklch(0.141 0.005 285.823));\n --ub-card: var(--card, oklch(1 0 0));\n --ub-card-foreground: var(--card-foreground, oklch(0.141 0.005 285.823));\n --ub-popover: var(--popover, oklch(1 0 0));\n --ub-popover-foreground: var(\n --popover-foreground,\n oklch(0.208 0.042 264.541)\n );\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-accent: var(--accent, oklch(0.985 0.002 264.542));\n --ub-accent-foreground: var(\n --accent-foreground,\n oklch(0.208 0.042 264.541)\n ); /* #0f172a slate-900 */\n --ub-destructive: var(--destructive, oklch(0.628 0.258 29.234));\n --ub-destructive-foreground: var(--destructive-foreground, 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-input: var(--input, oklch(0.922 0.005 264.542 / 0.8));\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}\n\n.dark {\n --ub-background: var(--background, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-foreground: var(--foreground, oklch(0.9 0.02 264.436));\n --ub-card: var(--card, oklch(0.236 0.013 265.755)); /* # zinc-900 */\n --ub-card-foreground: var(--card-foreground, oklch(0.9 0.02 264.436));\n --ub-popover: var(--popover, oklch(0.236 0.013 265.755)); /* zinc-900 */\n --ub-popover-foreground: var(--popover-foreground, oklch(0.9 0.02 264.436));\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-accent: var(--accent, oklch(1 0 0 / 0.05));\n --ub-accent-foreground: var(--accent-foreground, oklch(1 0 0));\n --ub-destructive: var(--destructive, oklch(0.628 0.258 29.234));\n --ub-destructive-foreground: var(--destructive-foreground, oklch(1 0 0));\n --ub-border: var(--border, oklch(1 0 0 / 0.1));\n --ub-input: var(--input, 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: 320px;\n max-width: 520px;\n width: auto;\n flex-direction: column;\n gap: 0.25rem;\n font-size: 13px;\n border-radius: var(--ub-radius);\n color: var(--ub-foreground);\n border: 1px solid var(--ub-border);\n background-color: var(--ub-card);\n box-shadow: var(--ub-shadow-ring), var(--ub-shadow-lg);\n}\n\n.ub-tooltip-datetime {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0.625rem 0.75rem 0 0.75rem;\n font-weight: 400;\n color: var(--ub-foreground);\n}\n\n.ub-tooltip-divider {\n margin: 0.25rem 0;\n height: 1px;\n border: none;\n border-top: 1px solid var(--ub-border);\n background: transparent;\n}\n\n.ub-tooltip-content {\n display: flex;\n flex-direction: column;\n padding-bottom: 0.25rem;\n}\n\n.ub-tooltip-group {\n display: flex;\n flex-direction: column;\n}\n\n.ub-tooltip-group-header {\n position: sticky;\n top: 0;\n z-index: 10;\n background-color: var(--ub-popover);\n backdrop-filter: var(--ub-backdrop-blur);\n padding: 0 0.75rem;\n font-weight: 400;\n color: var(--ub-secondary);\n}\n\n.ub-tooltip-group-header--separator {\n margin-top: 0.5rem;\n border-top: 1px solid var(--ub-border);\n padding-top: 0.75rem;\n}\n\n.ub-tooltip-items {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n.ub-tooltip-item {\n display: flex;\n flex-direction: column;\n padding: 0.25rem 0.75rem;\n transition: background-color 0.15s ease;\n}\n\n.ub-tooltip-item:hover {\n background-color: var(--ub-accent);\n}\n\n.ub-tooltip-item-main {\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 align-items: center;\n gap: 0.625rem;\n min-width: 0;\n overflow: hidden;\n}\n\n.ub-tooltip-item-dot {\n width: 0.5rem;\n height: 0.5rem;\n flex-shrink: 0;\n border-radius: 9999px;\n box-shadow:\n 0 0 0 1px var(--ub-shadow-ring-sm),\n var(--ub-shadow-sm);\n}\n\n.ub-tooltip-item-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-weight: 500;\n color: var(--ub-foreground);\n}\n\n.ub-tooltip-item-value {\n font-weight: 600;\n font-variant-numeric: tabular-nums;\n color: var(--ub-foreground);\n white-space: nowrap;\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: 1.125rem;\n font-size: 0.75rem;\n line-height: 1rem;\n color: var(--ub-muted-foreground);\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-attribute-key {\n opacity: var(--ub-opacity-subtle);\n}\n\n.ub-tooltip-attribute-value {\n font-weight: 500;\n color: var(--ub-secondary);\n}\n\n.ub-tooltip-no-data {\n padding: 0 0.75rem 0.75rem 0.75rem;\n font-style: italic;\n color: var(--ub-placeholder);\n font-size: 0.75rem;\n line-height: 1rem;\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
|
@@ -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:
|
|
62
|
+
metric: MetricMetadata;
|
|
63
|
+
serie: uPlot.Series;
|
|
88
64
|
color: string;
|
|
89
65
|
value?: number;
|
|
90
66
|
formattedValue?: string;
|
|
91
|
-
attributes?: Record<string,
|
|
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
|
|
116
|
+
attributes?: Record<string, string>;
|
|
141
117
|
values: Array<number>;
|
|
142
118
|
queryName?: string;
|
|
143
119
|
queryIndex: number;
|
|
@@ -519,6 +495,8 @@ interface ChartProps extends ChartVisualConfig {
|
|
|
519
495
|
*/
|
|
520
496
|
declare function Chart(props: ChartProps): react_jsx_runtime.JSX.Element;
|
|
521
497
|
|
|
522
|
-
declare function
|
|
498
|
+
declare function Empty(): react_jsx_runtime.JSX.Element;
|
|
499
|
+
declare function Error(): react_jsx_runtime.JSX.Element;
|
|
500
|
+
declare function Loading(): react_jsx_runtime.JSX.Element;
|
|
523
501
|
|
|
524
|
-
export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors,
|
|
502
|
+
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
|
@@ -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:
|
|
62
|
+
metric: MetricMetadata;
|
|
63
|
+
serie: uPlot.Series;
|
|
88
64
|
color: string;
|
|
89
65
|
value?: number;
|
|
90
66
|
formattedValue?: string;
|
|
91
|
-
attributes?: Record<string,
|
|
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
|
|
116
|
+
attributes?: Record<string, string>;
|
|
141
117
|
values: Array<number>;
|
|
142
118
|
queryName?: string;
|
|
143
119
|
queryIndex: number;
|
|
@@ -519,6 +495,8 @@ interface ChartProps extends ChartVisualConfig {
|
|
|
519
495
|
*/
|
|
520
496
|
declare function Chart(props: ChartProps): react_jsx_runtime.JSX.Element;
|
|
521
497
|
|
|
522
|
-
declare function
|
|
498
|
+
declare function Empty(): react_jsx_runtime.JSX.Element;
|
|
499
|
+
declare function Error(): react_jsx_runtime.JSX.Element;
|
|
500
|
+
declare function Loading(): react_jsx_runtime.JSX.Element;
|
|
523
501
|
|
|
524
|
-
export { type AggregationOperator, type Appearance, type AttributeWithValue, Chart, type ChartProps, type ChartType, type ChartVisualConfig, type Colors,
|
|
502
|
+
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.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var We=Object.create;var K=Object.defineProperty;var Ke=Object.getOwnPropertyDescriptor;var Ye=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Je=Object.prototype.hasOwnProperty;var Ze=(e,t)=>{for(var r in t)K(e,r,{get:t[r],enumerable:!0})},ge=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ye(t))!Je.call(e,o)&&o!==r&&K(e,o,{get:()=>t[o],enumerable:!(i=Ke(t,o))||i.enumerable});return e};var Y=(e,t,r)=>(r=e!=null?We(Xe(e)):{},ge(t||!e||!e.__esModule?K(r,"default",{value:e,enumerable:!0}):r,e)),et=e=>ge(K({},"__esModule",{value:!0}),e);var Ut={};Ze(Ut,{Chart:()=>ie,Divider:()=>re,TimeseriesChart:()=>$e,UnblindClientProvider:()=>X,UnblindProvider:()=>be,UnblindScope:()=>J,useLogs:()=>Se,useMetrics:()=>we,useRefresh:()=>se,useScope:()=>j,useTheme:()=>te,useTimeseries:()=>Z,useUnblindClientConfig:()=>S,useUsage:()=>Ce});module.exports=et(Ut);var B=require("@tanstack/react-query"),N=require("react"),ae=require("react/jsx-runtime"),he=(0,N.createContext)(void 0);function X({children:e,queryClient:t,queryClientConfig:r,apiBaseUrl:i="/api/unblind",fetchImpl:o}){let s=(0,N.useMemo)(()=>{if(t)return t;let n={refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1},l={defaultOptions:{queries:n}};return r?new B.QueryClient({...r,defaultOptions:{...r.defaultOptions,queries:{...n,...r.defaultOptions?.queries}}}):new B.QueryClient(l)},[t,r]),a=(0,N.useMemo)(()=>({apiBaseUrl:i,fetchImpl:o}),[i,o]);return(0,ae.jsx)(B.QueryClientProvider,{client:s,children:(0,ae.jsx)(he.Provider,{value:a,children:e})})}function S(){let e=(0,N.useContext)(he);if(!e)throw new Error("useUnblindConfig must be used within an UnblindClientProvider. Please wrap your app or component tree with <UnblindClientProvider>.");return e}function se(){let e=(0,B.useQueryClient)();return(0,N.useCallback)(async()=>{await e.refetchQueries({queryKey:["unblind","timeseries"]})},[e])}var A=require("react"),R=require("react/jsx-runtime"),le=(0,A.createContext)(void 0);function J({children:e,timeRange:t,startTime:r,endTime:i,interval:o,attributes:s,groupBy:a,operator:n,appearance:l}){let c=(0,A.useContext)(le),p=l?.components?.Loading,u=l?.components?.Error,m=l?.components?.Tooltip,d=(0,A.useMemo)(()=>{if(!(!p&&!u&&!m))return{components:{...p&&{Loading:p},...u&&{Error:u},...m&&{Tooltip:m}}}},[p,u,m]),h=(0,A.useMemo)(()=>({timeRange:t??c?.timeRange,startTime:r??c?.startTime,endTime:i??c?.endTime,interval:o??c?.interval,attributes:s??c?.attributes,groupBy:a??c?.groupBy,operator:n??c?.operator,appearance:d??c?.appearance}),[t,r,i,o,s,a,n,d,c]);return(0,R.jsx)(le.Provider,{value:h,children:e})}var tt=()=>(0,R.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-gray-500",children:"Loading data..."}),rt=({error:e})=>(0,R.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-red-500",children:e?.message??"Something went wrong"}),ot=()=>(0,R.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,R.jsxs)("div",{className:"text-center",children:[(0,R.jsx)("div",{className:"mx-auto flex h-10 w-10 items-center justify-center rounded-full bg-gray-100 dark:bg-zinc-800",children:(0,R.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-5 text-gray-400 dark:text-gray-500",children:(0,R.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,R.jsx)("p",{className:"mt-2 text-sm text-gray-500 dark:text-gray-400",children:"No data available for this time range"})]})}),it=["#7c3aed","#eab308","#2563eb","#dc2626","#16a34a","#f97316","#0891b2","#9333ea","#ca8a04","#4f46e5","#0d9488","#be185d"],nt="6h";function j(){let e=(0,A.useContext)(le);return{timeRange:e?.timeRange||nt,startTime:e?.startTime,endTime:e?.endTime,interval:e?.interval,attributes:e?.attributes,groupBy:e?.groupBy,operator:e?.operator,appearance:{components:{Loading:e?.appearance?.components?.Loading??tt,Error:e?.appearance?.components?.Error??rt,Empty:e?.appearance?.components?.Empty??ot,Tooltip:e?.appearance?.components?.Tooltip},colors:e?.appearance?.colors||it}}}var ce=require("react/jsx-runtime");function be({children:e,queryClient:t,apiBaseUrl:r,fetchImpl:i,timeRange:o,startTime:s,endTime:a,interval:n,attributes:l,groupBy:c,operator:p,appearance:u}){return(0,ce.jsx)(X,{queryClient:t,apiBaseUrl:r,fetchImpl:i,children:(0,ce.jsx)(J,{timeRange:o,startTime:s,endTime:a,interval:n,attributes:l,groupBy:c,operator:p,appearance:u,children:e})})}var ye=require("@tanstack/react-query");function we(){let{apiBaseUrl:e,fetchImpl:t=fetch}=S(),r=(0,ye.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 ve=require("@tanstack/react-query"),q=require("react");var xe=Y(require("ms"));function at(e){let t=Date.now();return[t-(0,xe.default)(e),t]}function H(e,t,r){let i,o;if(typeof t=="number"&&typeof r=="number")i=t,o=r;else if(e){let[s,a]=at(e);i=s,o=a}else throw new Error("Either timeRange or both startTime and endTime must be provided");return[i,o]}function Z({queries:e,timeRange:t,startTime:r,endTime:i,interval:o}){let{apiBaseUrl:s,fetchImpl:a=fetch}=S(),n=(0,q.useMemo)(()=>e.map(b=>b.metrics.join(",")).join(","),[e]),l=(0,q.useMemo)(()=>e.map(b=>{let T=b.attributes;if(!T)return"";let y=Object.keys(T);return y.length===0?"":y.map(x=>x+":"+T[x]?.join(",")).join(",")}).join(","),[e]),c=(0,q.useMemo)(()=>e.map(b=>b.operator),[e]),p=(0,q.useMemo)(()=>e.map(b=>b.groupBy).join(", "),[e]),m=(0,ve.useQuery)({queryKey:["unblind","timeseries",n,l,r,i,t,o,c,p],queryFn:async()=>{if(!n)throw new Error("Missing required parameters");if(n.length===0)throw new Error("No series provided");let[b,T]=H(t,r,i),y={queries:e,startTime:b,endTime:T,interval:o},x=await a(`${s}/tenants/timeseries`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(y)});if(!x.ok)throw new Error("Error fetching metric");let{series:C,times:P,metadata:E}=await x.json();if(!C)throw console.error("Series not found"),new Error("Series not found");return{series:C,times:P,metadata:E}},enabled:!!n&&(typeof r=="number"&&typeof i=="number"||!!t)}),{metadata:d,series:h,times:k}=(0,q.useMemo)(()=>m.data?{series:m.data.series,times:m.data.times,metadata:m.data.metadata}:{series:[],times:[],metadata:{}},[m]),w=m.isLoading,f=m.isFetching,g=m.isError;return{data:{series:h,times:k,metadata:d},isLoading:w,isFetching:f,hasError:g,refetch:m.refetch}}var ke=require("@tanstack/react-query"),Te=require("react");function Ce({timeRange:e,startTime:t,endTime:r}){let{apiBaseUrl:i,fetchImpl:o=fetch}=S(),a=(0,ke.useQuery)({queryKey:["unblind","usage",e,t,r],queryFn:async()=>{let[p,u]=H(e,t,r),m=`${i}/tenants/usage`,d=await o(m,{headers:{"Content-Type":"application/json"},body:JSON.stringify({startTime:p,endTime:u})});if(!d.ok)throw new Error("Error fetching usage");let{data:h}=await d.json();if(!h)throw new Error("usage not found");return h},enabled:typeof t=="number"&&typeof r=="number"||!!e}),n=(0,Te.useMemo)(()=>a.data?a.data||[]:[],[a]),l=a.isLoading||a.isRefetching,c=a.isError;return{usage:n,isLoading:l,hasError:c,refetch:a.refetch}}var Pe=require("@tanstack/react-query"),Ue=require("react");function Se({timeRange:e,filters:t,startTime:r,endTime:i}){let{apiBaseUrl:o,fetchImpl:s=fetch}=S(),a=typeof r=="number"&&typeof i=="number"||!!e,n=(0,Pe.useInfiniteQuery)({queryKey:["unblind","logs",e,t.map(c=>c.name+":"+c.value).sort().join(",")],queryFn:async({pageParam:c})=>{let p=t.reduce((C,P)=>(C[P.name]||(C[P.name]=[]),C[P.name].push(P.value),C),{}),{body:u=[],severity:m=[],"service.name":d=[],"trace.id":h=[],"span.id":k=[],...w}=p,[f,g]=H(e,r,i),b=Date.now(),T=await s(`${o}/tenants/logs`,{method:"POST",body:JSON.stringify({filter:{attributes:w,body:u,severity:m,traceId:h,spanId:k,service:d},startTime:f,endTime:g,pagination:{page:c}}),headers:{"Content-Type":"application/json"}});if(!T.ok)throw new Error("Error fetching logs");let{data:y,next_page:x}=await T.json();if(!y)throw new Error("logs not found");return{data:y,next_page:x}},enabled:a,initialPageParam:void 0,getNextPageParam:c=>c.next_page});return{logs:(0,Ue.useMemo)(()=>n.data?n.data.pages.flatMap(c=>c.data||[]):[],[n.data]),isLoading:n.isLoading,hasError:n.isError,hasNextPage:n.hasNextPage??!1,fetchNextPage:n.fetchNextPage,isFetchingNextPage:n.isFetchingNextPage,refetch:n.refetch}}var ee=require("react");function te(){let[e,t]=(0,ee.useState)(!1);return(0,ee.useEffect)(()=>{let r=()=>t(document.documentElement.classList.contains("dark"));return r(),window.addEventListener("storage",r),window.addEventListener("theme-change",r),()=>{window.removeEventListener("storage",r),window.removeEventListener("theme-change",r)}},[]),e}var oe=require("react"),Ge=Y(require("uplot"));var W=Y(require("uplot")),je=require("@grafana/data");var L=require("@grafana/data");var U={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,month:24192e5,year:31536e6},_={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 st(e,t,r,i){if(t>U.day){let o=L.systemDateFormats.interval.year,s=Math.round(U.year/U.day)*U.day;return Math.round(t/U.day)*U.day===s?o=L.systemDateFormats.interval.year:t<=U.year?o=L.systemDateFormats.interval.month:o=L.systemDateFormats.interval.day,e.map(n=>(0,L.dateTimeFormat)(n,{format:o,timeZone:i}))}return e.map(o=>{let s=new Date(o),a=t<U.minute,n=t<U.second,l=s.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",hour12:!1,timeZone:i});return(l==="00:00"||l==="24:00")&&!a&&!n?s.toLocaleDateString(void 0,{day:"2-digit",month:"short",timeZone:i}):s.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:a?"2-digit":void 0,fractionalSecondDigits:n?3:void 0,hour12:!1,timeZone:i})})}function Me(e){let t=[{size:U.second/1e3,increments:_.second},{size:U.minute/1e3,increments:_.minute},{size:U.hour/1e3,increments:_.hour},{size:U.day/1e3,increments:_.day},{size:U.month/1e3,increments:_.month},{size:U.year/1e3,increments:_.year}];for(let o of t)for(let s of o.increments){let a=o.size*s;if(a>=e)return{increment:a*1e3,multiplier:s}}let r=t[t.length-1],i=r.increments[r.increments.length-1];return{increment:r.size*i*1e3,multiplier:i}}function Re(e,t,r){return[t,r]}function lt(e,t,r,i){let o=r-t,s=e.width,a=Math.floor(s/100),n=o/a,{increment:l,multiplier:c}=Me(n),p=l/1e3,u=[];if(o<12*3600){let d=Math.ceil(t/p)*p;for(;d<=r;d+=p)u.push(d);return u}if(o<3*86400){if(l>=6*3600*1e3){let h=l/1e3/3600,k=new Date(t*1e3);if(i==="UTC"){let f=k.getUTCHours(),g=Math.floor(f/h)*h;k.setUTCHours(g,0,0,0)}else{let f=k.getHours(),g=Math.floor(f/h)*h;k.setHours(g,0,0,0)}let w=k.getTime()/1e3;for(w<t&&(w+=p);w<=r;)u.push(w),w+=p;return u}let d=Math.ceil(t/p)*p;for(;d<=r;d+=p)u.push(d);return u}if(l>=U.day){let d=new Date(t*1e3);i==="UTC"?(d.setUTCHours(0,0,0,0),d.getTime()/1e3<t&&d.setUTCDate(d.getUTCDate()+c)):(d.setHours(0,0,0,0),d.getTime()/1e3<t&&d.setDate(d.getDate()+c));let h=d.getTime()/1e3;for(;h<=r;)u.push(h),i==="UTC"?d.setUTCDate(d.getUTCDate()+c):d.setDate(d.getDate()+c),h=d.getTime()/1e3;return u}let m=Math.ceil(t/p)*p;for(;m<=r;m+=p)u.push(m);return u}function Ee(e,t,r){return t.length===0?[]:t.map((i,o)=>o===0||o===t.length-1?(0,L.dateTimeFormatTimeAgo)(i*1e3,{timeZone:r}):"")}function ct(e,t,r){let i=e.scales.x,o=((i?.max??0)-(i?.min??0))*1e3,s=Math.floor(e.width/100),a=o/1e3/s,{increment:n}=Me(a),l=t.map(c=>c*1e3);return st(l,n,o,r)}function Ne(e,t=!1){let r=t?(s,a,n,l)=>Re(s,n,l):(s,a,n,l)=>lt(s,n,l,e),i=t?(s,a)=>Ee(s,a,e):(s,a)=>ct(s,a,e),o=t?(s,a,n,l,c)=>{let u=document.createElement("canvas").getContext("2d");if(!u)return 0;u.font=F;let m=Ee(s,Re(s,n,l),e),d=Math.max(u.measureText(m[0]||"").width,u.measureText(m[1]||"").width);return Math.ceil(d/2)+15}:void 0;return{font:F,labelFont:F,grid:{show:!1,width:.5},ticks:{width:.5},splits:r,values:i,size:20}}var Q=require("@floating-ui/dom"),Ve=Y(require("uplot"));var Le=require("react-dom/client"),pe=class{overlay=null;reactRoot=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,Le.createRoot)(this.overlay))}getOverlay(){return this.overlay}render(t){this.reactRoot&&this.reactRoot.render(t)}show(){this.overlay&&(this.overlay.style.display="block")}hide(){this.overlay&&(this.overlay.style.display="none"),this.render(null)}destroy(){this.reactRoot&&(this.reactRoot.unmount(),this.reactRoot=null),this.overlay&&(this.overlay.remove(),this.overlay=null)}},G=new pe;var de=require("@grafana/data"),Ie=require("react");var ze=require("react/jsx-runtime");function re({className:e="h-px bg-gray-200 border-gray-200 dark:bg-white/15",...t}){return(0,ze.jsx)("hr",{role:"presentation",...t,className:e})}var v=require("react/jsx-runtime");function pt(e){return typeof e.metric=="string"?e.metric:e.metric?.textContent||"Unknown Metric"}function Ae(e){let t=e.attributes||{};if(t["service.name"])return String(t["service.name"]);let i=Object.keys(t)[0];return i?String(t[i]):"z-fallback"}function De(e){return[...e].sort((t,r)=>(Number(r.value)||0)-(Number(t.value)||0))}function dt(e){return[...e].sort((t,r)=>Ae(t).localeCompare(Ae(r)))}function ut(e){let t={};return e.forEach(r=>{let i=pt(r);t[i]||(t[i]=[]),t[i].push(r)}),t}function mt(e,t){let r=ut(e);return Object.keys(r).sort((o,s)=>o.localeCompare(s)).map(o=>{let s=r[o];if(!s)return{metricName:o,items:[]};let a=t?De(s):dt(s);return{metricName:o,items:a}})}function ft({item:e,groupIdx:t,idx:r}){let i=e.attributes||{},o=Object.entries(i),s=typeof e.metric=="string"?e.metric:e.metric?.textContent||"Unknown",a=o,n=o.find(([l])=>l==="service.name");return n?(s=String(n[1]),a=o.filter(([l])=>l!=="service.name")):o.length>0&&o[0]&&(s=`${o[0][0]}: ${o[0][1]}`,a=o.slice(1)),(0,v.jsxs)("div",{className:"group flex flex-col px-3 py-1 hover:bg-slate-50 dark:hover:bg-white/5 transition-colors",children:[(0,v.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,v.jsxs)("div",{className:"flex items-center gap-2.5 min-w-0 overflow-hidden",children:[(0,v.jsx)("span",{className:"size-2 mt-0.5 shrink-0 rounded-full shadow-sm ring-1 ring-black/5 dark:ring-white/10",style:{backgroundColor:e.color}}),(0,v.jsx)("span",{className:"truncate font-medium text-slate-600 dark:text-slate-300",title:s,children:s})]}),(0,v.jsx)("div",{className:"font-semibold tabular-nums text-slate-900 dark:text-white whitespace-nowrap",children:e.formattedValue??(0,v.jsx)("span",{className:"font-normal text-slate-400",children:"\u2014"})})]}),a.length>0&&(0,v.jsx)("div",{className:"mt-0.5 flex flex-wrap gap-x-3 gap-y-0.5 pl-4.5 text-xs text-slate-500 dark:text-slate-400",children:a.map(([l,c])=>(0,v.jsxs)("span",{className:"flex items-center gap-1",children:[(0,v.jsxs)("span",{className:"opacity-70",children:[l,":"]}),(0,v.jsx)("span",{className:"font-medium text-slate-600 dark:text-slate-300",children:String(c)})]},l))})]},`item-${t}-${r}`)}function gt({group:e,groupIdx:t,hasAttributes:r}){return(0,v.jsxs)("div",{className:"flex flex-col",children:[r&&(0,v.jsx)("div",{className:`sticky top-0 z-10 bg-white/95 dark:bg-zinc-900/95 backdrop-blur-sm px-3 py-1.5 font-semibold text-slate-900 dark:text-white ${t>0?"mt-2 border-t border-gray-100 dark:border-white/5 pt-3":""}`,children:e.metricName}),(0,v.jsx)("div",{className:"flex flex-col gap-1",children:e.items.map((i,o)=>(0,v.jsx)(ft,{item:i,groupIdx:t,idx:o},`item-${t}-${o}`))})]},e.metricName)}function Oe({timestamp:e,items:t,timeZone:r,spansMultipleDays:i,orderByValues:o,hasAttributes:s}){let a=i?(0,de.dateTimeFormat)(e*1e3,{format:"MMM DD, HH:mm:ss",timeZone:r}):(0,de.dateTimeFormat)(e*1e3,{format:"HH:mm:ss",timeZone:r}),n=(0,Ie.useMemo)(()=>{let l=mt(t,o);if(!s&&o&&l.length>0){let c=l.flatMap(m=>m.items),p=De(c);return[{metricName:l[0]?.metricName||"Metrics",items:p}]}return l},[t,o,s]);return(0,v.jsxs)("div",{style:{fontSize:"13px"},className:"flex w-[320px] flex-col gap-1 text-sm rounded-lg text-slate-900 dark:text-slate-200 border border-gray-200/80 bg-white shadow-xl ring-1 ring-gray-200/40 dark:ring-zinc-800/40 dark:border-white/10 dark:bg-zinc-900",children:[(0,v.jsx)("div",{className:"flex items-center justify-between px-3 pt-2.5 font-medium text-slate-700 dark:text-slate-100",children:a}),(0,v.jsx)(re,{className:"my-1 border-gray-100 dark:border-white/5"}),n.length>0?(0,v.jsx)("div",{className:"flex flex-col pb-2",children:n.map((l,c)=>(0,v.jsx)(gt,{group:l,groupIdx:c,hasAttributes:s},l.metricName))}):(0,v.jsx)("div",{className:"px-3 pb-3 italic text-zinc-400 text-xs",children:"No data available"})]})}var ue=require("react/jsx-runtime"),ht=4,bt=8;function yt(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),s=new Date(i*1e3),a=n=>t==="UTC"?`${n.getUTCFullYear()}-${n.getUTCMonth()}-${n.getUTCDate()}`:n.toLocaleDateString(void 0,{timeZone:t});return a(o)!==a(s)}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 s=t-o,a=t+o;if(s>=0){for(let n=1;n<e.series.length;n++)if(e.data[n]?.[s]!=null)return s}if(a<i){for(let n=1;n<e.series.length;n++)if(e.data[n]?.[a]!=null)return a}}return t}function xt(e,t,r,i,o){let s=!1,a=[];for(let n=1;n<e.series.length;n++){let l=e.data[n]?.[t]??null;if(i&&l!=null&&n>1){let k=e.data[n-1]?.[t]??0;l=l-k}let c=e.series[n],p=o?.[n-1],u=c?.label??`Series ${n}`,m=c?.stroke,d=typeof m=="function"?m(Ve.default,n):m??"#ffffff00",h=l==null?void 0:r?r(l):String(l);p?.attributes&&Object.keys(p?.attributes).length>0&&(s=!0),a.push({metric:u,color:d,value:l===null?void 0:l,formattedValue:h,attributes:p?.attributes})}return{items:a,hasAttributes:s}}async function vt(e,t){let{x:r,y:i}=await(0,Q.computePosition)({getBoundingClientRect:()=>({x:t.left,y:t.top,width:0,height:0,top:t.top,left:t.left,right:t.left,bottom:t.top})},e,{placement:"top-start",strategy:"fixed",middleware:[(0,Q.offset)({mainAxis:ht,crossAxis:bt}),(0,Q.flip)()]});e.style.left=`${r}px`,e.style.top=`${i}px`}function Be(e,t,r,i,o,s){let a,n,l,c=!1;function p(){let d=a.getBoundingClientRect();n=d.left,l=d.top}function u(){G.hide()}function m(){G.show()}return{hooks:{init:d=>{G.initialize(),a=d.over,window.addEventListener("scroll",p,!0),window.addEventListener("resize",p),a.onmouseenter=()=>{c=!0,m()},a.onmouseleave=()=>{c=!1,u()},p()},setSize:()=>{p()},setCursor:d=>{let{left:h,top:k,idx:w}=d.cursor;if(!c||w==null){u();return}let g=d.data[0],b=yt(g,r),T=wt(d,w),y=d.data[0][T];if(y===void 0)return;let{items:x,hasAttributes:C}=xt(d,T,e,t,o),P={left:(h||0)+n,top:(k||0)+l};m();let E=i,D=E?(0,ue.jsx)(E,{timestamp:y,items:x,timeZone:r}):(0,ue.jsx)(Oe,{timestamp:y,items:x,timeZone:r,spansMultipleDays:b,stacked:t,hasAttributes:C,orderByValues:s});G.render(D);let O=G.getOverlay();O&&vt(O,P)},destroy(){window.removeEventListener("scroll",p,!0),window.removeEventListener("resize",p)}}}}var F='11px "Inter", sans-serif';var Fe=(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},me=(e,t,r)=>Array.isArray(r)?r[t]:r(e,t),kt=e=>{let t=W.default.paths.bars({size:[.6,100],radius:0,gap:0}),r=W.default.paths.linear({alignGaps:0}),i=W.default.paths.spline({alignGaps:1}),o=W.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}},Tt=(e,t,r,i)=>{switch(i){case"area":return me(e,t,r);case"bar":return me(e,t,r);default:return}},Ct=e=>{switch(e){case"bar":return 1;case"line":return 2;case"area":return 2;case"step":return 1.5;default:return 1}},He=(e,t,r,i,o,s,a,n,l,c,p)=>{let u=e?.clientWidth??1050,m=e?.clientHeight??250,d=typeof t=="string"?String(t).toLowerCase().replaceAll("by","bytes"):t,h=(0,je.getValueFormat)(d==="1"?null:d),k=Ct(i),w={width:u,height:m,scales:{y:{range:{min:{mode:1,soft:0},max:{pad:2}}}},plugins:[Be(f=>{let g=h(f,2);return g.text+(g.suffix?.trim()||"")},o,n,l,r,p)],padding:c?[10,15,10,15]:[8,15,8,15],cursor:{y:!1,sync:{key:"_"},drag:{setScale:!0,x:!0,y:!1},move:(f,g,b)=>{let T=f.posToVal(g,"x"),y=f.data[0];if(!y||y.length===0)return[g,b];let x=0,C=0,P=y.length-1;for(;P-C>1;){let z=Math.floor((C+P)/2),$=y[z];$!=null&&$<T?C=z:P=z}let E=y[C],D=y[P];E!=null&&D!=null?x=Math.abs(E-T)<Math.abs(D-T)?C:P:E!=null?x=C:D!=null&&(x=P);let O=x;for(let z=x;z>=0;z--){let $=!1;for(let ne=1;ne<f.data.length;ne++){let fe=f.data[ne];if(fe&&fe[z]!=null){$=!0;break}}if($){O=z;break}}let V=y[O];return V==null?[g,b]:[f.valToPos(V,"x"),b]}},series:[{},...r.map((f,g)=>({label:f.metric,stroke:me(f,g,a),width:k,points:{show:!1},spanGaps:!0,paths:kt(i),fill:Tt(f,g,a,i)}))],axes:[Ne(n,c),qe(h)],legend:{show:!1}};if(s){let f=w.axes?.[0],g=w.axes?.[1];f&&(f.stroke="#dadada",f.grid&&(f.grid.stroke="#2c3235")),g&&(g.stroke="#dadada",g.grid&&(g.grid.stroke="#2c3235"))}else{let f=w.axes?.[0],g=w.axes?.[1];f&&(f.stroke="#45556c"),g&&(g.stroke="#45556c")}return w};var Pt=(e,t,r,i)=>{let o=e.axes[r];if(i>1)return o?._size;let s=(o?.ticks?.size||0)+(o?.gap||0),a=(t??[]).reduce((n,l)=>l.length>n.length?l:n,"");return a!=""&&(e.ctx.font=o?.font?.[0]??e.ctx.font,s+=e.ctx.measureText(a).width/devicePixelRatio),Math.ceil(s)};function qe(e){return{gap:0,font:F,labelFont:F,grid:{show:!0,width:.5},ticks:{width:.5},values:(t,r)=>r.map(i=>{let o=e(i);return o.text+(o.suffix?.trim()||"")}),size:Pt}}function _e(e,t){let r=[],i=e[0],o=i.length,s=Array(o).fill(0),a=[i];return e.forEach((n,l)=>{l!==0&&(t?a.push(n):a.push(n.map((c,p)=>s[p]=s[p]+(c||0))))}),e.forEach((n,l)=>{l===0||t||r.push({series:[e.findIndex((c,p)=>p>l),l]})}),{data:a,bands:r.filter(n=>n.series[1]>-1)}}var Qe=require("react/jsx-runtime");function ie(e){let{times:t,series:r,metadata:i,type:o,className:s,timeZone:a,options:n,tooltipAppearance:l,colors:c,orderByValues:p}=e,u=(0,oe.useRef)(null),m=te(),d=j(),h=c||d.appearance.colors;return(0,oe.useEffect)(()=>{if(!r||r.length===0){console.warn("No series provided");return}let k=[t],w;r.forEach(x=>{let C=i[x.metric];w=Fe(w,C),k.push(x.values)});let f=o==="bar"||o==="area",g=_e(k,!f),b=u.current,T=He(b,w,r,o,f,m,h,a,l,p),y=null;if(b){T.bands=g.bands,y=new Ge.default({...T,...n},g.data,b);let x=new ResizeObserver(()=>{y?.setSize({width:b.clientWidth,height:b.clientHeight})});return x.observe(b),()=>{y?.destroy(),x.disconnect()}}},[r,t,o,m,i,a,l,h,p]),(0,Qe.jsx)("div",{ref:u,className:s})}var I=require("react/jsx-runtime");function $e({metrics:e,operator:t,attributes:r,groupBy:i,timeRange:o,startTime:s,endTime:a,interval:n,type:l="line",className:c,appearance:p}){let u=j(),m=o??u.timeRange,d=s??u.startTime,h=a??u.endTime,k=n??u.interval,w=r??u.attributes,f=i??u.groupBy,g=t??u.operator,b=p?.colors??u.appearance.colors,T=p?.orderByValues??u.appearance.orderByValues,{isLoading:y,data:x,hasError:C}=Z({queries:e.map(M=>({metrics:[M],operator:g,attributes:w,groupBy:f})),timeRange:m,startTime:d,endTime:h,interval:k}),{series:P,times:E,metadata:D}=x,O=P.every(M=>M.isEmpty),V=c||"h-full w-full";if(y){let M=p?.components?.Loading??u.appearance.components.Loading;return(0,I.jsx)("div",{className:V,children:(0,I.jsx)(M,{})})}if(O){let M=p?.components?.Empty??u.appearance.components.Empty;return(0,I.jsx)("div",{className:V,children:(0,I.jsx)(M,{})})}if(C){let M=p?.components?.Error??u.appearance.components.Error;return(0,I.jsx)("div",{className:V,children:(0,I.jsx)(M,{})})}return(0,I.jsx)(ie,{times:E,series:P,metadata:D,type:l,className:V,tooltipAppearance:p?.components?.Tooltip??u.appearance.components.Tooltip,colors:b,orderByValues:T})}0&&(module.exports={Chart,Divider,TimeseriesChart,UnblindClientProvider,UnblindProvider,UnblindScope,useLogs,useMetrics,useRefresh,useScope,useTheme,useTimeseries,useUnblindClientConfig,useUsage});
|
|
1
|
+
"use strict";var Je=Object.create;var K=Object.defineProperty;var Ze=Object.getOwnPropertyDescriptor;var et=Object.getOwnPropertyNames;var tt=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var ot=(e,t)=>{for(var r in t)K(e,r,{get:t[r],enumerable:!0})},he=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of et(t))!rt.call(e,o)&&o!==r&&K(e,o,{get:()=>t[o],enumerable:!(n=Ze(t,o))||n.enumerable});return e};var X=(e,t,r)=>(r=e!=null?Je(tt(e)):{},he(t||!e||!e.__esModule?K(r,"default",{value:e,enumerable:!0}):r,e)),nt=e=>he(K({},"__esModule",{value:!0}),e);var Rt={};ot(Rt,{Chart:()=>ie,Empty:()=>Y,Error:()=>J,Loading:()=>Z,TimeseriesChart:()=>Ye,UnblindProvider:()=>Te,UnblindScope:()=>ee,useLogs:()=>Ne,useMetrics:()=>we,useRefresh:()=>le,useScope:()=>H,useTheme:()=>oe,useTimeseries:()=>te,useUsage:()=>Se});module.exports=nt(Rt);var B=require("@tanstack/react-query"),L=require("react"),ae=require("react/jsx-runtime"),ye=(0,L.createContext)(void 0);function ve({children:e,queryClient:t,queryClientConfig:r,apiBaseUrl:n="/api/unblind",fetchImpl:o}){let l=(0,L.useMemo)(()=>{if(t)return t;let i={refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1},a={defaultOptions:{queries:i}};return r?new B.QueryClient({...r,defaultOptions:{...r.defaultOptions,queries:{...i,...r.defaultOptions?.queries}}}):new B.QueryClient(a)},[t,r]),s=(0,L.useMemo)(()=>({apiBaseUrl:n,fetchImpl:o}),[n,o]);return(0,ae.jsx)(B.QueryClientProvider,{client:l,children:(0,ae.jsx)(ye.Provider,{value:s,children:e})})}function A(){let e=(0,L.useContext)(ye);if(!e)throw new Error("useUnblindConfig must be used within an UnblindClientProvider. Please wrap your app or component tree with <UnblindClientProvider>.");return e}function le(){let e=(0,B.useQueryClient)();return(0,L.useCallback)(async()=>{await e.refetchQueries({queryKey:["unblind","timeseries"]})},[e])}var z=require("react");var N=require("react/jsx-runtime");function Y(){return(0,N.jsx)("div",{className:"ub-default",children:(0,N.jsxs)("div",{className:"ub-empty-content",children:[(0,N.jsx)("div",{className:"ub-empty-icon-wrapper",children:(0,N.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,N.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,N.jsx)("p",{className:"ub-empty-text","data-text":"No data available for this time range"})]})})}function J(){return(0,N.jsx)("div",{className:"ub-error"})}function Z(){return(0,N.jsx)("div",{className:"ub-default","data-text":"Loading"})}var xe=require("react/jsx-runtime"),ue=(0,z.createContext)(void 0);function ee({children:e,timeRange:t,startTime:r,endTime:n,interval:o,attributes:l,groupBy:s,operator:i,appearance:a}){let u=(0,z.useContext)(ue),p=a?.components?.Loading,c=a?.components?.Error,d=a?.components?.Tooltip,m=(0,z.useMemo)(()=>{if(!(!p&&!c&&!d))return{components:{...p&&{Loading:p},...c&&{Error:c},...d&&{Tooltip:d}}}},[p,c,d]),g=(0,z.useMemo)(()=>({timeRange:t??u?.timeRange,startTime:r??u?.startTime,endTime:n??u?.endTime,interval:o??u?.interval,attributes:l??u?.attributes,groupBy:s??u?.groupBy,operator:i??u?.operator,appearance:m??u?.appearance}),[t,r,n,o,l,s,i,m,u]);return(0,xe.jsx)(ue.Provider,{value:g,children:e})}var it=["#7c3aed","#eab308","#2563eb","#dc2626","#16a34a","#f97316","#0891b2","#9333ea","#ca8a04","#4f46e5","#0d9488","#be185d"],st="6h";function H(){let e=(0,z.useContext)(ue);return{timeRange:e?.timeRange||st,startTime:e?.startTime,endTime:e?.endTime,interval:e?.interval,attributes:e?.attributes,groupBy:e?.groupBy,operator:e?.operator,appearance:{components:{Loading:e?.appearance?.components?.Loading??Z,Error:e?.appearance?.components?.Error??J,Empty:e?.appearance?.components?.Empty??Y,Tooltip:e?.appearance?.components?.Tooltip},colors:e?.appearance?.colors||it}}}var ce=require("react/jsx-runtime");function Te({children:e,queryClient:t,apiBaseUrl:r,fetchImpl:n,timeRange:o,startTime:l,endTime:s,interval:i,attributes:a,groupBy:u,operator:p,appearance:c}){return(0,ce.jsx)(ve,{queryClient:t,apiBaseUrl:r,fetchImpl:n,children:(0,ce.jsx)(ee,{timeRange:o,startTime:l,endTime:s,interval:i,attributes:a,groupBy:u,operator:p,appearance:c,children:e})})}var Ce=require("@tanstack/react-query");function we(){let{apiBaseUrl:e,fetchImpl:t=fetch}=A(),r=(0,Ce.useQuery)({queryKey:["unblind","metrics"],queryFn:async()=>{let n=await t(`${e}/metrics`,{headers:{"Content-Type":"application/json"}});if(!n.ok)throw new Error("Error loading metrics metadata");if(n.status===200){let{data:o}=await n.json();return o}else throw new Error("Unexpected status code")}});return{metrics:r.data,isLoading:r.isLoading,hasError:r.isError,refetch:r.refetch}}var Ue=require("@tanstack/react-query"),$=require("react");var Pe=X(require("ms"));function at(e){let t=Date.now();return[t-(0,Pe.default)(e),t]}function F(e,t,r){let n,o;if(typeof t=="number"&&typeof r=="number")n=t,o=r;else if(e){let[l,s]=at(e);n=l,o=s}else throw new Error("Either timeRange or both startTime and endTime must be provided");return[n,o]}function te({queries:e,timeRange:t,startTime:r,endTime:n,interval:o}){let{apiBaseUrl:l,fetchImpl:s=fetch}=A(),i=(0,$.useMemo)(()=>e.map(f=>f.metrics.join(",")).join(","),[e]),a=(0,$.useMemo)(()=>e.map(f=>{let b=f.attributes;if(!b)return"";let C=Object.keys(b);return C.length===0?"":C.map(T=>T+":"+b[T]?.join(",")).join(",")}).join(","),[e]),u=(0,$.useMemo)(()=>e.map(f=>f.operator),[e]),p=(0,$.useMemo)(()=>e.map(f=>f.groupBy).join(", "),[e]),d=(0,Ue.useQuery)({queryKey:["unblind","timeseries",i,a,r,n,t,o,u,p],queryFn:async()=>{if(!i)throw new Error("Missing required parameters");if(i.length===0)throw new Error("No series provided");let[f,b]=F(t,r,n),C={queries:e,startTime:f,endTime:b,interval:o},T=await s(`${l}/tenants/timeseries`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(C)});if(!T.ok)throw new Error("Error fetching metric");let{series:y,times:w,metadata:R}=await T.json();if(!y)throw console.error("Series not found"),new Error("Series not found");return{series:y,times:w,metadata:R}},enabled:!!i&&(typeof r=="number"&&typeof n=="number"||!!t)}),{metadata:m,series:g,times:x}=(0,$.useMemo)(()=>d.data?{series:d.data.series,times:d.data.times,metadata:d.data.metadata}:{series:[],times:[],metadata:{}},[d]),v=d.isLoading,U=d.isFetching,P=d.isError;return{data:{series:g,times:x,metadata:m},isLoading:v,isFetching:U,hasError:P,refetch:d.refetch}}var ke=require("@tanstack/react-query"),Re=require("react");function Se({timeRange:e,startTime:t,endTime:r}){let{apiBaseUrl:n,fetchImpl:o=fetch}=A(),s=(0,ke.useQuery)({queryKey:["unblind","usage",e,t,r],queryFn:async()=>{let[p,c]=F(e,t,r),d=`${n}/tenants/usage`,m=await o(d,{headers:{"Content-Type":"application/json"},body:JSON.stringify({startTime:p,endTime:c})});if(!m.ok)throw new Error("Error fetching usage");let{data:g}=await m.json();if(!g)throw new Error("usage not found");return g},enabled:typeof t=="number"&&typeof r=="number"||!!e}),i=(0,Re.useMemo)(()=>s.data?s.data||[]:[],[s]),a=s.isLoading||s.isRefetching,u=s.isError;return{usage:i,isLoading:a,hasError:u,refetch:s.refetch}}var Ee=require("@tanstack/react-query"),Me=require("react");function Ne({timeRange:e,filters:t,startTime:r,endTime:n}){let{apiBaseUrl:o,fetchImpl:l=fetch}=A(),s=typeof r=="number"&&typeof n=="number"||!!e,i=(0,Ee.useInfiniteQuery)({queryKey:["unblind","logs",e,t.map(u=>u.name+":"+u.value).sort().join(",")],queryFn:async({pageParam:u})=>{let p=t.reduce((y,w)=>(y[w.name]||(y[w.name]=[]),y[w.name].push(w.value),y),{}),{body:c=[],severity:d=[],"service.name":m=[],"trace.id":g=[],"span.id":x=[],...v}=p,[U,P]=F(e,r,n),f=Date.now(),b=await l(`${o}/tenants/logs`,{method:"POST",body:JSON.stringify({filter:{attributes:v,body:c,severity:d,traceId:g,spanId:x,service:m},startTime:U,endTime:P,pagination:{page:u}}),headers:{"Content-Type":"application/json"}});if(!b.ok)throw new Error("Error fetching logs");let{data:C,next_page:T}=await b.json();if(!C)throw new Error("logs not found");return{data:C,next_page:T}},enabled:s,initialPageParam:void 0,getNextPageParam:u=>u.next_page});return{logs:(0,Me.useMemo)(()=>i.data?i.data.pages.flatMap(u=>u.data||[]):[],[i.data]),isLoading:i.isLoading,hasError:i.isError,hasNextPage:i.hasNextPage??!1,fetchNextPage:i.fetchNextPage,isFetchingNextPage:i.isFetchingNextPage,refetch:i.refetch}}var re=require("react");function oe(){let[e,t]=(0,re.useState)(!1);return(0,re.useEffect)(()=>{let r=()=>t(document.documentElement.classList.contains("dark"));return r(),window.addEventListener("storage",r),window.addEventListener("theme-change",r),()=>{window.removeEventListener("storage",r),window.removeEventListener("theme-change",r)}},[]),e}var ne=require("react"),Ke=X(require("uplot"));var W=X(require("uplot")),je=require("@grafana/data");var I=require("@grafana/data");var k={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,month:24192e5,year:31536e6},j={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 lt(e,t,r,n){if(t>k.day){let o=I.systemDateFormats.interval.year,l=Math.round(k.year/k.day)*k.day;return Math.round(t/k.day)*k.day===l?o=I.systemDateFormats.interval.year:t<=k.year?o=I.systemDateFormats.interval.month:o=I.systemDateFormats.interval.day,e.map(i=>(0,I.dateTimeFormat)(i,{format:o,timeZone:n}))}return e.map(o=>{let l=new Date(o),s=t<k.minute,i=t<k.second,a=l.toLocaleTimeString("en-GB",{hour:"2-digit",minute:"2-digit",hour12:!1,timeZone:n});return(a==="00:00"||a==="24:00")&&!s&&!i?l.toLocaleDateString(void 0,{day:"2-digit",month:"short",timeZone:n}):l.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:s?"2-digit":void 0,fractionalSecondDigits:i?3:void 0,hour12:!1,timeZone:n})})}function Ie(e){let t=[{size:k.second/1e3,increments:j.second},{size:k.minute/1e3,increments:j.minute},{size:k.hour/1e3,increments:j.hour},{size:k.day/1e3,increments:j.day},{size:k.month/1e3,increments:j.month},{size:k.year/1e3,increments:j.year}];for(let o of t)for(let l of o.increments){let s=o.size*l;if(s>=e)return{increment:s*1e3,multiplier:l}}let r=t[t.length-1],n=r.increments[r.increments.length-1];return{increment:r.size*n*1e3,multiplier:n}}function Le(e,t,r){return[t,r]}function ut(e,t,r,n){let o=r-t,l=e.width,s=Math.floor(l/100),i=o/s,{increment:a,multiplier:u}=Ie(i),p=a/1e3,c=[];if(o<12*3600){let m=Math.ceil(t/p)*p;for(;m<=r;m+=p)c.push(m);return c}if(o<3*86400){if(a>=6*3600*1e3){let g=a/1e3/3600,x=new Date(t*1e3);if(n==="UTC"){let U=x.getUTCHours(),P=Math.floor(U/g)*g;x.setUTCHours(P,0,0,0)}else{let U=x.getHours(),P=Math.floor(U/g)*g;x.setHours(P,0,0,0)}let v=x.getTime()/1e3;for(v<t&&(v+=p);v<=r;)c.push(v),v+=p;return c}let m=Math.ceil(t/p)*p;for(;m<=r;m+=p)c.push(m);return c}if(a>=k.day){let m=new Date(t*1e3);n==="UTC"?(m.setUTCHours(0,0,0,0),m.getTime()/1e3<t&&m.setUTCDate(m.getUTCDate()+u)):(m.setHours(0,0,0,0),m.getTime()/1e3<t&&m.setDate(m.getDate()+u));let g=m.getTime()/1e3;for(;g<=r;)c.push(g),n==="UTC"?m.setUTCDate(m.getUTCDate()+u):m.setDate(m.getDate()+u),g=m.getTime()/1e3;return c}let d=Math.ceil(t/p)*p;for(;d<=r;d+=p)c.push(d);return c}function Ae(e,t,r){return t.length===0?[]:t.map((n,o)=>o===0||o===t.length-1?(0,I.dateTimeFormatTimeAgo)(n*1e3,{timeZone:r}):"")}function ct(e,t,r){let n=e.scales.x,o=((n?.max??0)-(n?.min??0))*1e3,l=Math.floor(e.width/100),s=o/1e3/l,{increment:i}=Ie(s),a=t.map(u=>u*1e3);return lt(a,i,o,r)}function De(e,t,r=!1){let n=r?(s,i,a,u)=>Le(s,a,u):(s,i,a,u)=>ut(s,a,u,t),o=r?(s,i)=>Ae(s,i,t):(s,i)=>ct(s,i,t),l=r?(s,i,a,u,p)=>{let d=document.createElement("canvas").getContext("2d");if(!d)return 0;d.font=q(e);let m=Ae(s,Le(s,a,u),t),g=Math.max(d.measureText(m[0]||"").width,d.measureText(m[1]||"").width);return Math.ceil(g/2)+15}:void 0;return{font:q(e),labelFont:q(e),grid:{show:!1,width:.5},ticks:{width:.5},splits:n,values:o,size:20}}var Q=require("@floating-ui/dom"),Fe=X(require("uplot"));var ze=require("react-dom/client"),pe=class{overlay=null;reactRoot=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,ze.createRoot)(this.overlay))}getOverlay(){return this.overlay}render(t){this.reactRoot&&this.reactRoot.render(t)}show(){this.overlay&&(this.overlay.style.display="block")}hide(){this.overlay&&(this.overlay.style.display="none"),this.render(null)}destroy(){this.reactRoot&&(this.reactRoot.unmount(),this.reactRoot=null),this.overlay&&(this.overlay.remove(),this.overlay=null)}},G=new pe;var me=require("@grafana/data"),Oe=require("react");var h=require("react/jsx-runtime");function Be(e){return e.metric.displayName||e.metric.name||(typeof e.serie.label=="string"?e.serie.label:e.serie.label?.textContent||"Unknown")}function Ve(e){let t=e.attributes||{};if(t["service.name"])return String(t["service.name"]);let n=Object.keys(t)[0];return n?String(t[n]):"z-fallback"}function He(e){return[...e].sort((t,r)=>(Number(r.value)||0)-(Number(t.value)||0))}function pt(e){return[...e].sort((t,r)=>Ve(t).localeCompare(Ve(r)))}function mt(e){let t={};return e.forEach(r=>{let n=Be(r);t[n]||(t[n]=[]),t[n].push(r)}),t}function dt(e,t){let r=mt(e);return Object.keys(r).sort((o,l)=>o.localeCompare(l)).map(o=>{let l=r[o];if(!l)return{metricName:o,items:[]};let s=t?He(l):pt(l);return{metricName:o,items:s}})}function ft({item:e,groupIdx:t,idx:r}){let n=e.attributes||{},o=Object.entries(n),l=Be(e),s=o,i=o.find(([a])=>a==="service.name");return i?(l=String(i[1]),s=o.filter(([a])=>a!=="service.name")):o.length>0&&o[0]&&(l=`${o[0][0]}: ${o[0][1]}`,s=o.slice(1)),(0,h.jsxs)("div",{className:"ub-tooltip-item",children:[(0,h.jsxs)("div",{className:"ub-tooltip-item-main",children:[(0,h.jsxs)("div",{className:"ub-tooltip-item-left",children:[(0,h.jsx)("span",{className:"ub-tooltip-item-dot",style:{backgroundColor:e.color}}),(0,h.jsx)("span",{className:"ub-tooltip-item-label",title:l,children:l})]}),(0,h.jsx)("div",{className:"ub-tooltip-item-value",children:e.formattedValue??(0,h.jsx)("span",{className:"ub-tooltip-item-value--empty",children:"\u2014"})})]}),s.length>0&&(0,h.jsx)("div",{className:"ub-tooltip-attributes",children:s.map(([a,u])=>(0,h.jsxs)("span",{className:"ub-tooltip-attribute",children:[(0,h.jsxs)("span",{className:"ub-tooltip-attribute-key",children:[a,":"]}),(0,h.jsx)("span",{className:"ub-tooltip-attribute-value",children:String(u)})]},a))})]},`item-${t}-${r}`)}function gt({className:e="ub-tooltip-divider",...t}){return(0,h.jsx)("hr",{role:"presentation",...t,className:e})}function bt({group:e,groupIdx:t,hasAttributes:r}){return(0,h.jsxs)("div",{className:"ub-tooltip-group",children:[r&&(0,h.jsx)("div",{className:`ub-tooltip-group-header${t>0?" ub-tooltip-group-header--separator":""}`,children:e.metricName}),(0,h.jsx)("div",{className:"ub-tooltip-items",children:e.items.map((n,o)=>(0,h.jsx)(ft,{item:n,groupIdx:t,idx:o},`item-${t}-${o}`))})]},e.metricName)}function qe({timestamp:e,items:t,timeZone:r,spansMultipleDays:n,orderByValues:o,hasAttributes:l}){let s=n?(0,me.dateTimeFormat)(e*1e3,{format:"MMM DD, HH:mm:ss",timeZone:r}):(0,me.dateTimeFormat)(e*1e3,{format:"HH:mm:ss",timeZone:r}),i=(0,Oe.useMemo)(()=>{let a=dt(t,o);if(!l&&o&&a.length>0){let u=a.flatMap(d=>d.items),p=He(u);return[{metricName:a[0]?.metricName||"Metrics",items:p}]}return a},[t,o,l]);return(0,h.jsxs)("div",{className:"ub-tooltip",children:[(0,h.jsx)("div",{className:"ub-tooltip-datetime",children:s}),(0,h.jsx)(gt,{}),i.length>0?(0,h.jsx)("div",{className:"ub-tooltip-content",children:i.map((a,u)=>(0,h.jsx)(bt,{group:a,groupIdx:u,hasAttributes:l},a.metricName))}):(0,h.jsx)("div",{className:"ub-tooltip-no-data",children:"No data available"})]})}var de=require("react/jsx-runtime"),ht=4,yt=8;function vt(e,t){if(!e||e.length===0)return!1;let r=e[0],n=e[e.length-1];if(r==null||n==null)return!1;let o=new Date(r*1e3),l=new Date(n*1e3),s=i=>t==="UTC"?`${i.getUTCFullYear()}-${i.getUTCMonth()}-${i.getUTCDate()}`:i.toLocaleDateString(void 0,{timeZone:t});return s(o)!==s(l)}function xt(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 n=e.data[0].length;for(let o=1;t+o<n||t-o>=0;o++){let l=t-o,s=t+o;if(l>=0){for(let i=1;i<e.series.length;i++)if(e.data[i]?.[l]!=null)return l}if(s<n){for(let i=1;i<e.series.length;i++)if(e.data[i]?.[s]!=null)return s}}return t}function Tt(e,t,r,n,o,l){let s=!1,i=[];for(let a=1;a<e.series.length;a++){let u=e.data[a]?.[t]??null;if(n&&u!=null&&a>1){let v=e.data[a-1]?.[t]??0;u=u-v}let p=e.series[a],c=l?.[a-1];if(!c){console.warn("Original serie not found");continue}let d=o[c.metric];if(!d){console.warn("Metric metadata not found");continue}let m=p?.stroke,g=typeof m=="function"?m(Fe.default,a):m??"#ffffff00",x=u==null?void 0:r?r(u):String(u);c?.attributes&&Object.keys(c?.attributes).length>0&&(s=!0),i.push({metric:d,color:g,value:u===null?void 0:u,formattedValue:x,attributes:c?.attributes,serie:p})}return{items:i,hasAttributes:s}}async function Ct(e,t){let{x:r,y:n}=await(0,Q.computePosition)({getBoundingClientRect:()=>({x:t.left,y:t.top,width:0,height:0,top:t.top,left:t.left,right:t.left,bottom:t.top})},e,{placement:"top-start",strategy:"fixed",middleware:[(0,Q.offset)({mainAxis:ht,crossAxis:yt}),(0,Q.flip)()]});e.style.left=`${r}px`,e.style.top=`${n}px`}function $e(e,t,r,n,o,l,s){let i,a,u,p=!1;function c(){let g=i.getBoundingClientRect();a=g.left,u=g.top}function d(){G.hide()}function m(){G.show()}return{hooks:{init:g=>{G.initialize(),i=g.over,window.addEventListener("scroll",c,!0),window.addEventListener("resize",c),i.onmouseenter=()=>{p=!0,m()},i.onmouseleave=()=>{p=!1,d()},c()},setSize:()=>{c()},setCursor:g=>{let{left:x,top:v,idx:U}=g.cursor;if(!p||U==null){d();return}let f=g.data[0],b=vt(f,n),C=xt(g,U),T=g.data[0][C];if(T===void 0)return;let{items:y,hasAttributes:w}=Tt(g,C,e,t,r,l),R={left:(x||0)+a,top:(v||0)+u};m();let E=o,O=E?(0,de.jsx)(E,{timestamp:T,items:y,timeZone:n}):(0,de.jsx)(qe,{timestamp:T,items:y,timeZone:n,spansMultipleDays:b,stacked:t,hasAttributes:w,orderByValues:s});G.render(O);let M=G.getOverlay();M&&Ct(M,R)},destroy(){window.removeEventListener("scroll",c,!0),window.removeEventListener("resize",c)}}}}var q=e=>`${getComputedStyle(document.documentElement).getPropertyValue("--ub-chart-font-size").trim()} ${e}`;var Ge=(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},fe=(e,t,r)=>Array.isArray(r)?r[t]:r(e,t),wt=e=>{let t=W.default.paths.bars({size:[.6,100],radius:0,gap:0}),r=W.default.paths.linear({alignGaps:0}),n=W.default.paths.spline({alignGaps:1}),o=W.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 n;default:return r}},Pt=(e,t,r,n)=>{switch(n){case"area":return fe(e,t,r);case"bar":return fe(e,t,r);default:return}},Ut=e=>{switch(e){case"bar":return 1;case"line":return 2;case"area":return 2;case"step":return 1.5;default:return 1}},Qe=(e,t,r,n,o,l,s,i,a,u,p,c,d)=>{let m=e?.clientWidth??1050,g=e?.clientHeight??250,x=typeof r=="string"?String(r).toLowerCase().replaceAll("by","bytes"):r,v=(0,je.getValueFormat)(x==="1"?null:x),U=Ut(o),P={width:m,height:g,scales:{y:{range:{min:{mode:1,soft:0},max:{pad:2}}}},plugins:[$e(f=>{let b=v(f,2);return b.text+(b.suffix?.trim()||"")},l,t,u,p,n,d)],padding:c?[10,15,10,15]:[8,15,8,15],cursor:{y:!1,sync:{key:"_"},drag:{setScale:!0,x:!0,y:!1},move:(f,b,C)=>{let T=f.posToVal(b,"x"),y=f.data[0];if(!y||y.length===0)return[b,C];let w=0,R=0,E=y.length-1;for(;E-R>1;){let D=Math.floor((R+E)/2),_=y[D];_!=null&&_<T?R=D:E=D}let O=y[R],M=y[E];O!=null&&M!=null?w=Math.abs(O-T)<Math.abs(M-T)?R:E:O!=null?w=R:M!=null&&(w=E);let S=w;for(let D=w;D>=0;D--){let _=!1;for(let se=1;se<f.data.length;se++){let be=f.data[se];if(be&&be[D]!=null){_=!0;break}}if(_){S=D;break}}let ge=y[S];return ge==null?[b,C]:[f.valToPos(ge,"x"),C]}},series:[{},...n.map((f,b)=>({label:f.metric,stroke:fe(f,b,i),width:U,points:{show:!1},spanGaps:!0,paths:wt(o),fill:Pt(f,b,i,o)}))],axes:[De(a,u,c),_e(v,a)],legend:{show:!1}};if(s){let f=P.axes?.[0],b=P.axes?.[1];f&&(f.stroke="#dadada",f.grid&&(f.grid.stroke="#2c3235")),b&&(b.stroke="#dadada",b.grid&&(b.grid.stroke="#2c3235"))}else{let f=P.axes?.[0],b=P.axes?.[1];f&&(f.stroke="#45556c"),b&&(b.stroke="#45556c")}return P};var kt=(e,t,r,n)=>{let o=e.axes[r];if(n>1)return o?._size;let l=(o?.ticks?.size||0)+(o?.gap||0),s=(t??[]).reduce((i,a)=>a.length>i.length?a:i,"");return s!=""&&(e.ctx.font=o?.font?.[0]??e.ctx.font,l+=e.ctx.measureText(s).width/devicePixelRatio),Math.ceil(l)};function _e(e,t){return{gap:0,font:q(t),labelFont:q(t),grid:{show:!0,width:.5},ticks:{width:.5},values:(r,n)=>n.map(o=>{let l=e(o);return l.text+(l.suffix?.trim()||"")}),size:kt}}function We(e,t){let r=[],n=e[0],o=n.length,l=Array(o).fill(0),s=[n];return e.forEach((i,a)=>{a!==0&&(t?s.push(i):s.push(i.map((u,p)=>l[p]=l[p]+(u||0))))}),e.forEach((i,a)=>{a===0||t||r.push({series:[e.findIndex((u,p)=>p>a),a]})}),{data:s,bands:r.filter(i=>i.series[1]>-1)}}var Xe=require("react/jsx-runtime");function ie(e){let{times:t,series:r,metadata:n,type:o,className:l,timeZone:s,options:i,tooltipAppearance:a,colors:u,orderByValues:p}=e,c=(0,ne.useRef)(null),d=oe(),m=H(),g=u||m.appearance.colors;return(0,ne.useEffect)(()=>{if(!r||r.length===0){console.warn("No series provided");return}let x=[t],v;r.forEach(C=>{let T=n[C.metric];v=Ge(v,T),x.push(C.values)});let U=o==="bar"||o==="area",P=We(x,!U),f=c.current,b=null;if(f){let T=window.getComputedStyle(f).fontFamily,y=Qe(f,n,v,r,o,U,d,g,T,s,a,p);y.bands=P.bands,b=new Ke.default({...y,...i},P.data,f);let w=new ResizeObserver(()=>{b?.setSize({width:f.clientWidth,height:f.clientHeight})});return w.observe(f),()=>{b?.destroy(),w.disconnect()}}},[r,t,o,d,n,s,a,g,p]),(0,Xe.jsx)("div",{ref:c,className:l})}var V=require("react/jsx-runtime");function Ye({metrics:e,operator:t,attributes:r,groupBy:n,timeRange:o,startTime:l,endTime:s,interval:i,type:a="line",className:u,appearance:p}){let c=H(),d=o??c.timeRange,m=l??c.startTime,g=s??c.endTime,x=i??c.interval,v=r??c.attributes,U=n??c.groupBy,P=t??c.operator,f=p?.colors??c.appearance.colors,b=p?.orderByValues??c.appearance.orderByValues,{isLoading:C,data:T,hasError:y}=te({queries:e.map(S=>({metrics:[S],operator:P,attributes:v,groupBy:U})),timeRange:d,startTime:m,endTime:g,interval:x}),{series:w,times:R,metadata:E}=T,O=w.every(S=>S.isEmpty),M=`ub-chart-container ${u}`;if(C){let S=p?.components?.Loading??c.appearance.components.Loading;return(0,V.jsx)("div",{className:M,children:(0,V.jsx)(S,{})})}if(O){let S=p?.components?.Empty??c.appearance.components.Empty;return(0,V.jsx)("div",{className:M,children:(0,V.jsx)(S,{})})}if(y){let S=p?.components?.Error??c.appearance.components.Error;return(0,V.jsx)("div",{className:M,children:(0,V.jsx)(S,{})})}return(0,V.jsx)(ie,{times:R,series:w,metadata:E,type:a,className:M,tooltipAppearance:p?.components?.Tooltip??c.appearance.components.Tooltip,colors:f,orderByValues:b})}0&&(module.exports={Chart,Empty,Error,Loading,TimeseriesChart,UnblindProvider,UnblindScope,useLogs,useMetrics,useRefresh,useScope,useTheme,useTimeseries,useUsage});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|