@xeonr/platform-ui 1.9.0 → 1.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/kit/ChartFrame.d.ts +86 -0
- package/dist/kit/ChartFrame.d.ts.map +1 -0
- package/dist/kit/ChartFrame.js +176 -0
- package/dist/kit/ChartFrame.js.map +1 -0
- package/dist/kit/ChartTypes.d.ts +163 -0
- package/dist/kit/ChartTypes.d.ts.map +1 -0
- package/dist/kit/ChartTypes.js +327 -0
- package/dist/kit/ChartTypes.js.map +1 -0
- package/dist/kit/Charts.d.ts +173 -65
- package/dist/kit/Charts.d.ts.map +1 -1
- package/dist/kit/Charts.js +667 -308
- package/dist/kit/Charts.js.map +1 -1
- package/dist/kit/Sparkline.d.ts +8 -1
- package/dist/kit/Sparkline.d.ts.map +1 -1
- package/dist/kit/Sparkline.js +6 -4
- package/dist/kit/Sparkline.js.map +1 -1
- package/dist/kit/chartScale.d.ts +79 -0
- package/dist/kit/chartScale.d.ts.map +1 -0
- package/dist/kit/chartScale.js +214 -0
- package/dist/kit/chartScale.js.map +1 -0
- package/dist/theme/tokens.d.ts +16 -0
- package/dist/theme/tokens.d.ts.map +1 -1
- package/dist/theme/tokens.js +49 -0
- package/dist/theme/tokens.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -30,7 +30,10 @@ export { FacetSelect, RankList, fmtCount, fmtShare, type FacetOption } from "./k
|
|
|
30
30
|
export { FacetRail, FacetValueList, FacetValueRow, FacetedListLayout, facetMeta, type FacetRailProps, type FacetRailFacet, type FacetValueState, type FacetValueListProps, type FacetValueRowProps, type FacetedListLayoutProps, } from "./kit/FacetRail.tsx";
|
|
31
31
|
export { SearchBox } from "./kit/Search.tsx";
|
|
32
32
|
export { RangePicker, RANGE_PRESETS, DEFAULT_RANGE, presetMinutes, rangeBounds, rangeMinutes, describeRange, type TimeRange, type RangePreset } from "./kit/Range.tsx";
|
|
33
|
-
export { Histogram, LineChart, StackedAreaChart,
|
|
33
|
+
export { BarChart, Histogram, LineChart, StackedAreaChart, stackSeries, formatUnit, formatDelta, type BarChartProps, type LineChartProps, type HistogramBucket, type ChartSeries, type ChartUnit, type LinePoint, type LineSeries, type ChartMarker, type ChartThreshold, type ChartBand, type ChartPoint, type StackedMoment, } from "./kit/Charts.tsx";
|
|
34
|
+
export { CHART_SIZES, CHART_RAMP, TONE_COLOUR, ChartSizeContext, niceStep, niceTicks, percentileToken, rampToken, spaced, stepLabel, timeDetail, timeTick, timeTicks, useChartSize, type ChartSize, type ChartSizeSpec, type ChartTone, type TimeTickMark, } from "./kit/chartScale.ts";
|
|
35
|
+
export { ChartFrame, LegendChips, LegendNote, Swatch, type ChartFrameProps, type ChartState, type LegendItem } from "./kit/ChartFrame.tsx";
|
|
36
|
+
export { DistributionChart, Heatmap, SingleValue, StateTimeline, TopList, type DistributionBucket, type DistributionChartProps, type DistributionPercentile, type HeatmapColumn, type SingleValueDelta, type StateSegment, type TopListRow, } from "./kit/ChartTypes.tsx";
|
|
34
37
|
export { CardGrid, ListCard, type ListCardProps } from "./kit/Card.tsx";
|
|
35
38
|
export { Stack, Row, Grid } from "./kit/Layout.tsx";
|
|
36
39
|
export { Menu, MenuItem, MenuLabel, MenuDivider } from "./kit/Menu.tsx";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -55,7 +55,10 @@ export { FacetSelect, RankList, fmtCount, fmtShare } from "./kit/Facet.js";
|
|
|
55
55
|
export { FacetRail, FacetValueList, FacetValueRow, FacetedListLayout, facetMeta, } from "./kit/FacetRail.js";
|
|
56
56
|
export { SearchBox } from "./kit/Search.js";
|
|
57
57
|
export { RangePicker, RANGE_PRESETS, DEFAULT_RANGE, presetMinutes, rangeBounds, rangeMinutes, describeRange } from "./kit/Range.js";
|
|
58
|
-
export { Histogram, LineChart, StackedAreaChart,
|
|
58
|
+
export { BarChart, Histogram, LineChart, StackedAreaChart, stackSeries, formatUnit, formatDelta, } from "./kit/Charts.js";
|
|
59
|
+
export { CHART_SIZES, CHART_RAMP, TONE_COLOUR, ChartSizeContext, niceStep, niceTicks, percentileToken, rampToken, spaced, stepLabel, timeDetail, timeTick, timeTicks, useChartSize, } from "./kit/chartScale.js";
|
|
60
|
+
export { ChartFrame, LegendChips, LegendNote, Swatch } from "./kit/ChartFrame.js";
|
|
61
|
+
export { DistributionChart, Heatmap, SingleValue, StateTimeline, TopList, } from "./kit/ChartTypes.js";
|
|
59
62
|
// Added for the Dev adoption (2026-09-26): the card list three consoles had
|
|
60
63
|
// each grown their own Grid+Card pair for.
|
|
61
64
|
export { CardGrid, ListCard } from "./kit/Card.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { type ChartSize } from "./chartScale.ts";
|
|
3
|
+
/** What the frame shows in place of the chart, when it is not simply drawn. */
|
|
4
|
+
export type ChartState = "ready" | "loading" | "empty" | "error";
|
|
5
|
+
export interface ChartFrameProps {
|
|
6
|
+
/** the chart's name ("latency") */
|
|
7
|
+
title?: ReactNode;
|
|
8
|
+
/** what the values are ("ms", "req/s") */
|
|
9
|
+
unit?: ReactNode;
|
|
10
|
+
/** scope, window, bucket ("checkout · prod · last 6 h · 1 m buckets") */
|
|
11
|
+
meta?: ReactNode;
|
|
12
|
+
/** the title row's right end: ⤢ open in explorer, ⋯ (dashboard, monitor, CSV, link) */
|
|
13
|
+
menu?: ReactNode;
|
|
14
|
+
/** sets the chart's height, ticks, legend and marker labels; `m` by default */
|
|
15
|
+
size?: ChartSize | undefined;
|
|
16
|
+
/** a height other than the size's, for a chart filling a fixed cell */
|
|
17
|
+
height?: number | undefined;
|
|
18
|
+
state?: ChartState | undefined;
|
|
19
|
+
/** the empty state's words; "No samples in range" */
|
|
20
|
+
empty?: ReactNode;
|
|
21
|
+
/** the error state's message */
|
|
22
|
+
error?: ReactNode;
|
|
23
|
+
/** offered beside an error */
|
|
24
|
+
onRetry?: (() => void) | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* The known range is drawn and the rest is not in yet: says so in the title
|
|
27
|
+
* row. Pass the unknown window to the chart as a `hatch` band.
|
|
28
|
+
*/
|
|
29
|
+
partial?: ReactNode;
|
|
30
|
+
/** drop the card surface, for a frame inside a panel or widget that has its own */
|
|
31
|
+
bare?: boolean | undefined;
|
|
32
|
+
children?: ReactNode;
|
|
33
|
+
className?: string | undefined;
|
|
34
|
+
"data-testid"?: string | undefined;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* ChartFrame: the title row, the plot, the legend (the chart draws it) and the
|
|
38
|
+
* states — loading (skeleton axes), empty ("No samples in range" in the
|
|
39
|
+
* plot), error (the message and a retry), partial (the known range drawn, the
|
|
40
|
+
* rest hatched). Every chart type renders inside it and takes its `size`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function ChartFrame({ title, unit, meta, menu, size, height, state, empty, error, onRetry, partial, bare, children, className, "data-testid": testId, }: ChartFrameProps): import("react").JSX.Element;
|
|
43
|
+
export interface LegendItem {
|
|
44
|
+
/** stable key; a series' name */
|
|
45
|
+
key: string;
|
|
46
|
+
name: ReactNode;
|
|
47
|
+
/** a colour token */
|
|
48
|
+
colour: string;
|
|
49
|
+
/** the last value, formatted */
|
|
50
|
+
value?: ReactNode;
|
|
51
|
+
/** a dashed swatch: a compare, a reference */
|
|
52
|
+
dashed?: boolean | undefined;
|
|
53
|
+
/** a faded swatch: a compare */
|
|
54
|
+
faded?: boolean | undefined;
|
|
55
|
+
off?: boolean | undefined;
|
|
56
|
+
}
|
|
57
|
+
/** A legend swatch: a short bar in the series' colour, dashed for a compare or a reference. */
|
|
58
|
+
export declare const Swatch: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "style"> & {
|
|
59
|
+
style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
|
|
60
|
+
}, {
|
|
61
|
+
$c: string;
|
|
62
|
+
$dashed?: boolean | undefined;
|
|
63
|
+
$faded?: boolean | undefined;
|
|
64
|
+
}>> & string;
|
|
65
|
+
/**
|
|
66
|
+
* LegendChips: a chip per series under the chart with its last value. Click
|
|
67
|
+
* mutes a series, shift-click solos it (again to show every one). Above
|
|
68
|
+
* `collapseAt` (8) series the chips fold into an "n series" chip that opens
|
|
69
|
+
* them with a search. `notes` are keys that are not series — a threshold, a
|
|
70
|
+
* firing band — and do nothing on click.
|
|
71
|
+
*/
|
|
72
|
+
export declare function LegendChips({ items, onToggle, notes, collapseAt, label }: {
|
|
73
|
+
items: LegendItem[];
|
|
74
|
+
/** `solo` when shift was held */
|
|
75
|
+
onToggle?: ((key: string, solo: boolean) => void) | undefined;
|
|
76
|
+
notes?: ReactNode;
|
|
77
|
+
collapseAt?: number | undefined;
|
|
78
|
+
label?: string | undefined;
|
|
79
|
+
}): import("react").JSX.Element | null;
|
|
80
|
+
/** A legend key that is not a series: a threshold, a band, a marker kind. */
|
|
81
|
+
export declare function LegendNote({ colour, dashed, children }: {
|
|
82
|
+
colour: string;
|
|
83
|
+
dashed?: boolean | undefined;
|
|
84
|
+
children: ReactNode;
|
|
85
|
+
}): import("react").JSX.Element;
|
|
86
|
+
//# sourceMappingURL=ChartFrame.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartFrame.d.ts","sourceRoot":"","sources":["../../src/kit/ChartFrame.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo, useState } from "react";
|
|
3
|
+
import styled from "styled-components";
|
|
4
|
+
import { v } from "../theme/tokens.js";
|
|
5
|
+
import { AppButton } from "./Button.js";
|
|
6
|
+
import { Skeleton } from "./Skeleton.js";
|
|
7
|
+
import { CHART_SIZES, ChartSizeContext } from "./chartScale.js";
|
|
8
|
+
// ChartFrame — the anatomy every chart shares (board 32): a title row (name ·
|
|
9
|
+
// unit · meta · a menu slot), the plot, the legend, and the four states. The
|
|
10
|
+
// chart inside reads its size from the frame, so a widget, an explorer
|
|
11
|
+
// visualisation and a service-page card are one component at a different size.
|
|
12
|
+
const Card = styled.section `
|
|
13
|
+
min-width: 0;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
${(p) => (p.$bare ? "" : `
|
|
17
|
+
background: ${v.surface};
|
|
18
|
+
border: 1px solid ${v.line};
|
|
19
|
+
border-radius: ${v.rPanel};
|
|
20
|
+
`)}
|
|
21
|
+
`;
|
|
22
|
+
const Head = styled.header `
|
|
23
|
+
display: flex;
|
|
24
|
+
align-items: center;
|
|
25
|
+
gap: 8px;
|
|
26
|
+
min-height: 30px;
|
|
27
|
+
padding: ${(p) => (p.$bare ? "0 0 4px" : "8px 10px 2px 12px")};
|
|
28
|
+
min-width: 0;
|
|
29
|
+
.name { font-size: 12.5px; font-weight: 600; color: ${v.text}; white-space: nowrap; }
|
|
30
|
+
.unit { font-family: ${v.mono}; font-size: 11px; color: ${v.faint}; white-space: nowrap; }
|
|
31
|
+
.meta {
|
|
32
|
+
flex: 1 1 auto; min-width: 0; font-size: 11px; color: ${v.faint};
|
|
33
|
+
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
|
|
34
|
+
}
|
|
35
|
+
.menu { flex: none; display: inline-flex; align-items: center; gap: 2px; margin-left: auto; }
|
|
36
|
+
`;
|
|
37
|
+
const Body = styled.div `
|
|
38
|
+
padding: ${(p) => (p.$bare ? "0" : "0 8px 8px")};
|
|
39
|
+
min-width: 0;
|
|
40
|
+
`;
|
|
41
|
+
const StateBox = styled.div `
|
|
42
|
+
position: relative;
|
|
43
|
+
height: ${(p) => p.$h}px;
|
|
44
|
+
display: grid;
|
|
45
|
+
place-items: center;
|
|
46
|
+
font-size: 12px;
|
|
47
|
+
color: ${v.faint};
|
|
48
|
+
text-align: center;
|
|
49
|
+
.msg { display: grid; gap: 8px; justify-items: center; max-width: 80%; }
|
|
50
|
+
.err { color: ${v.danger}; }
|
|
51
|
+
`;
|
|
52
|
+
const SkeletonAxes = styled.div `
|
|
53
|
+
position: relative;
|
|
54
|
+
height: ${(p) => p.$h}px;
|
|
55
|
+
display: grid;
|
|
56
|
+
grid-template-columns: 34px 1fr;
|
|
57
|
+
gap: 8px;
|
|
58
|
+
.ys { display: flex; flex-direction: column; justify-content: space-between; padding: 4px 0 22px; }
|
|
59
|
+
.plot {
|
|
60
|
+
position: relative;
|
|
61
|
+
margin-bottom: 18px;
|
|
62
|
+
background: repeating-linear-gradient(to bottom, transparent 0 calc(25% - 1px), ${v.line} calc(25% - 1px) 25%);
|
|
63
|
+
border-bottom: 1px solid ${v.line2};
|
|
64
|
+
}
|
|
65
|
+
`;
|
|
66
|
+
/**
|
|
67
|
+
* ChartFrame: the title row, the plot, the legend (the chart draws it) and the
|
|
68
|
+
* states — loading (skeleton axes), empty ("No samples in range" in the
|
|
69
|
+
* plot), error (the message and a retry), partial (the known range drawn, the
|
|
70
|
+
* rest hatched). Every chart type renders inside it and takes its `size`.
|
|
71
|
+
*/
|
|
72
|
+
export function ChartFrame({ title, unit, meta, menu, size = "m", height, state = "ready", empty = "No samples in range", error, onRetry, partial, bare = false, children, className, "data-testid": testId, }) {
|
|
73
|
+
const h = height ?? CHART_SIZES[size].height;
|
|
74
|
+
const head = title !== undefined || unit !== undefined || meta !== undefined || menu !== undefined || partial !== undefined;
|
|
75
|
+
let body = children;
|
|
76
|
+
if (state === "loading") {
|
|
77
|
+
body = size === "s" ? _jsx(Skeleton, { "$h": `${h}px`, "aria-label": "Loading" }) : (_jsxs(SkeletonAxes, { "$h": h, "aria-busy": "true", "aria-label": "Loading chart", children: [_jsx("div", { className: "ys", children: [0, 1, 2, 3].map((i) => _jsx(Skeleton, { "$w": "26px", "$h": "8px" }, i)) }), _jsx("div", { className: "plot" })] }));
|
|
78
|
+
}
|
|
79
|
+
else if (state === "empty") {
|
|
80
|
+
body = _jsx(StateBox, { "$h": h, role: "status", children: empty });
|
|
81
|
+
}
|
|
82
|
+
else if (state === "error") {
|
|
83
|
+
body = (_jsx(StateBox, { "$h": h, role: "alert", children: _jsxs("div", { className: "msg", children: [_jsx("span", { className: "err", children: error ?? "This chart could not be loaded." }), onRetry ? _jsx(AppButton, { size: "sm", onClick: onRetry, children: "Retry" }) : null] }) }));
|
|
84
|
+
}
|
|
85
|
+
return (_jsx(ChartSizeContext.Provider, { value: size, children: _jsxs(Card, { "$bare": bare, className: className, "data-testid": testId, "data-size": size, children: [head && size !== "s" ? (_jsxs(Head, { "$bare": bare, children: [title !== undefined ? _jsx("span", { className: "name", children: title }) : null, unit !== undefined ? _jsx("span", { className: "unit", children: unit }) : null, _jsxs("span", { className: "meta", children: [meta, partial !== undefined ? _jsxs(_Fragment, { children: [meta !== undefined ? " · " : null, partial] }) : null] }), menu !== undefined ? _jsx("span", { className: "menu", children: menu }) : null] })) : null, _jsx(Body, { "$bare": bare || size === "s", children: body })] }) }));
|
|
86
|
+
}
|
|
87
|
+
const Chips = styled.div `
|
|
88
|
+
display: flex;
|
|
89
|
+
flex-wrap: wrap;
|
|
90
|
+
align-items: center;
|
|
91
|
+
gap: 2px 4px;
|
|
92
|
+
padding-top: 4px;
|
|
93
|
+
min-width: 0;
|
|
94
|
+
`;
|
|
95
|
+
const Chip = styled.button `
|
|
96
|
+
display: inline-flex;
|
|
97
|
+
align-items: center;
|
|
98
|
+
gap: 6px;
|
|
99
|
+
max-width: 280px;
|
|
100
|
+
min-width: 0;
|
|
101
|
+
padding: 2px 6px;
|
|
102
|
+
border: 0;
|
|
103
|
+
border-radius: 6px;
|
|
104
|
+
background: none;
|
|
105
|
+
cursor: pointer;
|
|
106
|
+
font: inherit;
|
|
107
|
+
font-family: ${v.mono};
|
|
108
|
+
font-size: 11px;
|
|
109
|
+
color: ${(p) => (p.$off ? v.faint : v.muted)};
|
|
110
|
+
opacity: ${(p) => (p.$off ? 0.55 : 1)};
|
|
111
|
+
.n { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-decoration: ${(p) => (p.$off ? "line-through" : "none")}; }
|
|
112
|
+
.lv { color: ${(p) => (p.$off ? v.faint : v.text)}; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
|
|
113
|
+
&:hover { background: ${v.hover}; color: ${v.text}; }
|
|
114
|
+
&:focus-visible { outline: none; box-shadow: ${v.ring}; }
|
|
115
|
+
`;
|
|
116
|
+
const Note = styled.span `
|
|
117
|
+
display: inline-flex;
|
|
118
|
+
align-items: center;
|
|
119
|
+
gap: 6px;
|
|
120
|
+
padding: 2px 6px;
|
|
121
|
+
font-family: ${v.mono};
|
|
122
|
+
font-size: 11px;
|
|
123
|
+
color: ${v.faint};
|
|
124
|
+
`;
|
|
125
|
+
/** A legend swatch: a short bar in the series' colour, dashed for a compare or a reference. */
|
|
126
|
+
export const Swatch = styled.i `
|
|
127
|
+
flex: none;
|
|
128
|
+
display: inline-block;
|
|
129
|
+
width: 12px;
|
|
130
|
+
height: ${(p) => (p.$dashed ? 0 : 3)}px;
|
|
131
|
+
border-radius: 2px;
|
|
132
|
+
background: ${(p) => (p.$dashed ? "none" : p.$c)};
|
|
133
|
+
border-top: ${(p) => (p.$dashed ? `2px dashed ${p.$c}` : "0")};
|
|
134
|
+
opacity: ${(p) => (p.$faded ? 0.45 : 1)};
|
|
135
|
+
`;
|
|
136
|
+
const Find = styled.input `
|
|
137
|
+
height: 24px;
|
|
138
|
+
width: 160px;
|
|
139
|
+
padding: 0 8px;
|
|
140
|
+
border: 1px solid ${v.fieldLine};
|
|
141
|
+
border-radius: ${v.rCtl};
|
|
142
|
+
background: ${v.field};
|
|
143
|
+
color: ${v.text};
|
|
144
|
+
font: inherit;
|
|
145
|
+
font-size: 11.5px;
|
|
146
|
+
&:focus { outline: none; box-shadow: ${v.ring}; }
|
|
147
|
+
`;
|
|
148
|
+
/**
|
|
149
|
+
* LegendChips: a chip per series under the chart with its last value. Click
|
|
150
|
+
* mutes a series, shift-click solos it (again to show every one). Above
|
|
151
|
+
* `collapseAt` (8) series the chips fold into an "n series" chip that opens
|
|
152
|
+
* them with a search. `notes` are keys that are not series — a threshold, a
|
|
153
|
+
* firing band — and do nothing on click.
|
|
154
|
+
*/
|
|
155
|
+
export function LegendChips({ items, onToggle, notes, collapseAt = 8, label = "Series" }) {
|
|
156
|
+
const [open, setOpen] = useState(false);
|
|
157
|
+
const [q, setQ] = useState("");
|
|
158
|
+
const collapsed = items.length > collapseAt;
|
|
159
|
+
const shown = useMemo(() => {
|
|
160
|
+
if (!collapsed)
|
|
161
|
+
return items;
|
|
162
|
+
if (!open)
|
|
163
|
+
return [];
|
|
164
|
+
const needle = q.trim().toLowerCase();
|
|
165
|
+
return needle ? items.filter((it) => it.key.toLowerCase().includes(needle)) : items;
|
|
166
|
+
}, [items, collapsed, open, q]);
|
|
167
|
+
const muted = items.filter((it) => it.off).length;
|
|
168
|
+
if (items.length === 0 && !notes)
|
|
169
|
+
return null;
|
|
170
|
+
return (_jsxs(Chips, { role: "group", "aria-label": label, children: [collapsed ? (_jsxs(Chip, { type: "button", "$off": false, "aria-expanded": open, onClick: () => setOpen((o) => !o), children: [_jsxs("span", { className: "n", children: [items.length, " series", muted ? ` · ${muted} hidden` : ""] }), _jsx("span", { "aria-hidden": true, children: open ? "▴" : "▾" })] })) : null, collapsed && open ? (_jsx(Find, { type: "search", placeholder: "Find a series", "aria-label": "Find a series", value: q, onChange: (e) => setQ(e.target.value), autoFocus: true })) : null, shown.map((it) => (_jsxs(Chip, { type: "button", "$off": !!it.off, "aria-label": it.key, "aria-pressed": !it.off, title: `${it.key} — click to hide, shift-click to show only this`, onClick: (e) => onToggle?.(it.key, e.shiftKey), children: [_jsx(Swatch, { "$c": it.colour, "$dashed": it.dashed, "$faded": it.faded }), _jsx("span", { className: "n", children: it.name }), it.value !== undefined ? _jsx("span", { className: "lv", children: it.value }) : null] }, it.key))), notes] }));
|
|
171
|
+
}
|
|
172
|
+
/** A legend key that is not a series: a threshold, a band, a marker kind. */
|
|
173
|
+
export function LegendNote({ colour, dashed, children }) {
|
|
174
|
+
return _jsxs(Note, { children: [_jsx(Swatch, { "$c": colour, "$dashed": dashed }), children] });
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=ChartFrame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartFrame.js","sourceRoot":"","sources":["../../src/kit/ChartFrame.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { type ChartSize, type ChartTone } from "./chartScale.ts";
|
|
3
|
+
export interface DistributionBucket {
|
|
4
|
+
/** the bucket's lower bound, in the value's unit */
|
|
5
|
+
lower: number;
|
|
6
|
+
upper: number;
|
|
7
|
+
count: number;
|
|
8
|
+
}
|
|
9
|
+
export interface DistributionPercentile {
|
|
10
|
+
/** 50, 90, 99 … */
|
|
11
|
+
p: number;
|
|
12
|
+
value: number;
|
|
13
|
+
}
|
|
14
|
+
export interface DistributionChartProps {
|
|
15
|
+
/** pre-binned, ascending, contiguous */
|
|
16
|
+
buckets: DistributionBucket[];
|
|
17
|
+
percentiles?: DistributionPercentile[] | undefined;
|
|
18
|
+
/** how a bound or a percentile reads ("38 ms") */
|
|
19
|
+
formatValue?: ((value: number) => string) | undefined;
|
|
20
|
+
formatCount?: ((count: number) => string) | undefined;
|
|
21
|
+
size?: ChartSize | undefined;
|
|
22
|
+
height?: number | undefined;
|
|
23
|
+
label?: string | undefined;
|
|
24
|
+
empty?: ReactNode;
|
|
25
|
+
/** a click on a bar: the traces in it */
|
|
26
|
+
onBucketClick?: ((bucket: DistributionBucket, index: number) => void) | undefined;
|
|
27
|
+
/** a drag across the value axis: narrow to that range */
|
|
28
|
+
onSelectRange?: ((lower: number, upper: number) => void) | undefined;
|
|
29
|
+
/** the percentile chips under the plot; on from M up */
|
|
30
|
+
legend?: boolean | undefined;
|
|
31
|
+
testId?: string | undefined;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* DistributionChart: a histogram of values (latency over a window) with the
|
|
35
|
+
* percentiles marked — p50 light to p99 hot. The point of this shape over
|
|
36
|
+
* percentile lines is the bimodal case: two humps, a fast path and a slow one,
|
|
37
|
+
* that a p99 line renders as one number halfway between two behaviours nothing
|
|
38
|
+
* actually exhibits.
|
|
39
|
+
*
|
|
40
|
+
* Buckets arrive pre-binned and are drawn one bar each, so exponential buckets
|
|
41
|
+
* give a log axis without saying so; the value ticks (1 · 3 · 10 …) and the
|
|
42
|
+
* percentile lines are placed within their bucket on the same scale. A click
|
|
43
|
+
* on a bar is `onBucketClick` (its traces); a drag is `onSelectRange`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function DistributionChart({ buckets, percentiles, formatValue, formatCount, size: sizeProp, height, label, empty, onBucketClick, onSelectRange, legend, testId, }: DistributionChartProps): import("react").JSX.Element;
|
|
46
|
+
export interface TopListRow {
|
|
47
|
+
key: string;
|
|
48
|
+
label: ReactNode;
|
|
49
|
+
value: number;
|
|
50
|
+
/** the value as read; `formatValue(value)` when omitted */
|
|
51
|
+
display?: ReactNode;
|
|
52
|
+
/** a router link: the row opens the thing */
|
|
53
|
+
to?: string | undefined;
|
|
54
|
+
onSelect?: (() => void) | undefined;
|
|
55
|
+
/** a tone for the bar; the brand's ramp step otherwise */
|
|
56
|
+
tone?: ChartTone | undefined;
|
|
57
|
+
/** a colour token for the bar */
|
|
58
|
+
colour?: string | undefined;
|
|
59
|
+
title?: string | undefined;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* TopList: ranked horizontal bars with the value — p99 by endpoint, errors by
|
|
63
|
+
* route. Rows are sorted by value, highest first (`order="asc"` for a list
|
|
64
|
+
* that reads worst-lowest, a coverage list), and cut at `max`; a row with `to`
|
|
65
|
+
* or `onSelect` opens the thing it ranks.
|
|
66
|
+
*/
|
|
67
|
+
export declare function TopList({ rows, formatValue, max, order, label, empty, testId }: {
|
|
68
|
+
rows: TopListRow[];
|
|
69
|
+
formatValue?: ((v: number) => string) | undefined;
|
|
70
|
+
/** rows kept; Infinity for all of them (the list scrolls) */
|
|
71
|
+
max?: number | undefined;
|
|
72
|
+
order?: "desc" | "asc" | undefined;
|
|
73
|
+
label?: string | undefined;
|
|
74
|
+
empty?: ReactNode;
|
|
75
|
+
testId?: string | undefined;
|
|
76
|
+
}): import("react").JSX.Element;
|
|
77
|
+
export interface HeatmapColumn {
|
|
78
|
+
/** the time bucket's start, epoch ms */
|
|
79
|
+
t: number;
|
|
80
|
+
/** a count per value bucket, bottom up, matching `bounds` */
|
|
81
|
+
counts: number[];
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Heatmap: value buckets × time, intensity = count — the shape of a latency
|
|
85
|
+
* tail without a line per percentile. `bounds` are the value buckets' edges,
|
|
86
|
+
* bottom up (one more than each column's counts). Intensity is on a log scale
|
|
87
|
+
* so one busy cell does not wash out the rest.
|
|
88
|
+
*/
|
|
89
|
+
export declare function Heatmap({ columns, bounds, formatValue, formatTime, size: sizeProp, height, label, empty, onCellClick, testId }: {
|
|
90
|
+
columns: HeatmapColumn[];
|
|
91
|
+
bounds: number[];
|
|
92
|
+
formatValue?: ((v: number) => string) | undefined;
|
|
93
|
+
formatTime?: ((t: number) => string) | undefined;
|
|
94
|
+
size?: ChartSize | undefined;
|
|
95
|
+
height?: number | undefined;
|
|
96
|
+
label?: string | undefined;
|
|
97
|
+
empty?: ReactNode;
|
|
98
|
+
onCellClick?: ((cell: {
|
|
99
|
+
t: number;
|
|
100
|
+
lower: number;
|
|
101
|
+
upper: number;
|
|
102
|
+
count: number;
|
|
103
|
+
}) => void) | undefined;
|
|
104
|
+
testId?: string | undefined;
|
|
105
|
+
}): import("react").JSX.Element;
|
|
106
|
+
export interface SingleValueDelta {
|
|
107
|
+
/** "0.3 pt vs prior" */
|
|
108
|
+
text: ReactNode;
|
|
109
|
+
direction?: "up" | "down" | "flat" | undefined;
|
|
110
|
+
/** whether the change is good or bad news; neutral when omitted */
|
|
111
|
+
tone?: "ok" | "warn" | "crit" | undefined;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* SingleValue: one number, its delta and an S sparkline — the stat tile's
|
|
115
|
+
* chart form ("98.4 % · availability · 30 d · ↑ 0.3 pt vs prior"). At `s` it
|
|
116
|
+
* is a tile's body; at M and up it fills a widget cell.
|
|
117
|
+
*/
|
|
118
|
+
export declare function SingleValue({ value, unit, label, delta, points, tone, size: sizeProp, testId }: {
|
|
119
|
+
value: ReactNode;
|
|
120
|
+
unit?: ReactNode;
|
|
121
|
+
/** what and over when ("availability · 30 d") */
|
|
122
|
+
label?: ReactNode;
|
|
123
|
+
delta?: SingleValueDelta | undefined;
|
|
124
|
+
/** the sparkline: `[t, value]` pairs */
|
|
125
|
+
points?: [number, number][] | undefined;
|
|
126
|
+
/** the number's tone, when it is a verdict */
|
|
127
|
+
tone?: ChartTone | undefined;
|
|
128
|
+
size?: ChartSize | undefined;
|
|
129
|
+
testId?: string | undefined;
|
|
130
|
+
}): import("react").JSX.Element;
|
|
131
|
+
export interface StateSegment {
|
|
132
|
+
from: number;
|
|
133
|
+
to: number;
|
|
134
|
+
/** what the state is called ("alert", "ok", "no data") */
|
|
135
|
+
state: string;
|
|
136
|
+
/** ok · warn · crit · info · mut (no data) */
|
|
137
|
+
tone?: ChartTone | undefined;
|
|
138
|
+
/** a colour token, overriding the tone */
|
|
139
|
+
colour?: string | undefined;
|
|
140
|
+
/** the tooltip; "<state> · <from> → <to>" when omitted */
|
|
141
|
+
label?: string | undefined;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* StateTimeline: a monitor's state (ok · warn · alert · no data) over a
|
|
145
|
+
* window, as proportional segments — the band under an alert chart and in
|
|
146
|
+
* monitor rows. Each segment's tooltip says what it was and when. `axis`
|
|
147
|
+
* draws the time ticks under it (at L, under a chart it does not sit beside).
|
|
148
|
+
*/
|
|
149
|
+
export declare function StateTimeline({ segments, range, height, width, label, axis, formatTime, testId }: {
|
|
150
|
+
segments: StateSegment[];
|
|
151
|
+
range: {
|
|
152
|
+
from: number;
|
|
153
|
+
to: number;
|
|
154
|
+
};
|
|
155
|
+
height?: number | undefined;
|
|
156
|
+
/** px; absent fills the container */
|
|
157
|
+
width?: number | undefined;
|
|
158
|
+
label?: string | undefined;
|
|
159
|
+
axis?: boolean | undefined;
|
|
160
|
+
formatTime?: ((t: number) => string) | undefined;
|
|
161
|
+
testId?: string | undefined;
|
|
162
|
+
}): import("react").JSX.Element;
|
|
163
|
+
//# sourceMappingURL=ChartTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartTypes.d.ts","sourceRoot":"","sources":["../../src/kit/ChartTypes.tsx"],"names":[],"mappings":"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"}
|