@mtdt/observeops-ds-spec 0.1.0
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/AGENTS.md +102 -0
- package/README.md +73 -0
- package/components/index.json +1270 -0
- package/components/recipes/README.md +41 -0
- package/components/recipes/recipes.json +922 -0
- package/components/registry/README.md +44 -0
- package/components/registry/_schema.json +47 -0
- package/components/registry/button.json +368 -0
- package/components/registry/checkbox.json +177 -0
- package/components/registry/data-viz-tooltips.json +409 -0
- package/components/registry/date-time-pickers.json +296 -0
- package/components/registry/drawer.json +222 -0
- package/components/registry/dropdown-picker.json +388 -0
- package/components/registry/filters.json +155 -0
- package/components/registry/form-item.json +281 -0
- package/components/registry/input.json +277 -0
- package/components/registry/link.json +186 -0
- package/components/registry/loose-tags.json +196 -0
- package/components/registry/menu.json +145 -0
- package/components/registry/modal.json +265 -0
- package/components/registry/navigation.json +425 -0
- package/components/registry/popover.json +216 -0
- package/components/registry/radio.json +238 -0
- package/components/registry/scheduler.json +188 -0
- package/components/registry/select.json +247 -0
- package/components/registry/severity.json +179 -0
- package/components/registry/switch.json +177 -0
- package/components/registry/table.json +275 -0
- package/components/registry/tabs.json +264 -0
- package/components/registry/tag.json +345 -0
- package/components/registry/tags-list.json +115 -0
- package/components/registry/toolbars.json +240 -0
- package/components/registry/tooltip.json +175 -0
- package/components/specs/README.md +72 -0
- package/components/specs/button.md +230 -0
- package/components/specs/checkbox.md +162 -0
- package/components/specs/data-viz-tooltips.md +93 -0
- package/components/specs/date-time-pickers.md +161 -0
- package/components/specs/drawer.md +162 -0
- package/components/specs/dropdown-picker.md +161 -0
- package/components/specs/filters.md +118 -0
- package/components/specs/form-item.md +130 -0
- package/components/specs/input.md +130 -0
- package/components/specs/link.md +131 -0
- package/components/specs/loose-tags.md +139 -0
- package/components/specs/menu.md +88 -0
- package/components/specs/modal.md +176 -0
- package/components/specs/navigation.md +181 -0
- package/components/specs/popover.md +118 -0
- package/components/specs/radio.md +144 -0
- package/components/specs/scheduler.md +133 -0
- package/components/specs/select.md +118 -0
- package/components/specs/switch.md +124 -0
- package/components/specs/table.md +115 -0
- package/components/specs/tabs.md +136 -0
- package/components/specs/tag.md +196 -0
- package/components/specs/tags-list.md +105 -0
- package/components/specs/toolbars.md +108 -0
- package/components/specs/tooltip.md +112 -0
- package/foundation/README.md +39 -0
- package/foundation/layout-shells.md +67 -0
- package/foundation/page-templates.md +69 -0
- package/foundation/panel-behaviours.md +61 -0
- package/foundation/screen-regions.md +62 -0
- package/index.js +75 -0
- package/layout/grid.json +34 -0
- package/layout/layouts.json +310 -0
- package/llms.txt +60 -0
- package/package.json +42 -0
- package/spec.manifest.json +407 -0
- package/tokens/README.md +125 -0
- package/tokens/component.json +34 -0
- package/tokens/kit-accents.json +14 -0
- package/tokens/primitive.json +130 -0
- package/tokens/purpose-map.json +67 -0
- package/tokens/semantic.dark.json +90 -0
- package/tokens/semantic.light.json +90 -0
- package/tokens/structural.json +35 -0
- package/tokens/variables.json +2018 -0
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "data-viz-tooltips",
|
|
3
|
+
"display": "Data-Viz Tooltips",
|
|
4
|
+
"tier": "molecule",
|
|
5
|
+
"family": "Popover & Tooltip",
|
|
6
|
+
"status": "stable",
|
|
7
|
+
"summary": "The product's chart & widget hover tooltips — a distinct family from MTooltip, owned by the chart layer (Highcharts TooltipBuilder, graph canvases, widget Vue components), not DS components. ~28 reference reproductions cover every mechanism.",
|
|
8
|
+
"variants": [
|
|
9
|
+
{
|
|
10
|
+
"name": "bar-series",
|
|
11
|
+
"what": "Highcharts series",
|
|
12
|
+
"usage": ""
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "donut-pie",
|
|
16
|
+
"what": "donut/pie",
|
|
17
|
+
"usage": ""
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"name": "bubble",
|
|
21
|
+
"what": "packed-bubble",
|
|
22
|
+
"usage": ""
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "map-geo",
|
|
26
|
+
"what": "geo map",
|
|
27
|
+
"usage": ""
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"name": "radar",
|
|
31
|
+
"what": "radar",
|
|
32
|
+
"usage": ""
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "timeline-xrange",
|
|
36
|
+
"what": "SLO timeline",
|
|
37
|
+
"usage": ""
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "gauge",
|
|
41
|
+
"what": "gauge",
|
|
42
|
+
"usage": ""
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"name": "sankey",
|
|
46
|
+
"what": "sankey",
|
|
47
|
+
"usage": ""
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"name": "treemap",
|
|
51
|
+
"what": "treemap",
|
|
52
|
+
"usage": ""
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "scatter",
|
|
56
|
+
"what": "scatter",
|
|
57
|
+
"usage": ""
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"name": "anomaly-band",
|
|
61
|
+
"what": "actual vs expected",
|
|
62
|
+
"usage": ""
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "rum-waterfall",
|
|
66
|
+
"what": "RUM resource timing",
|
|
67
|
+
"usage": ""
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name": "geo-marker",
|
|
71
|
+
"what": "RUM apdex marker",
|
|
72
|
+
"usage": ""
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"name": "log-pattern",
|
|
76
|
+
"what": "log distribution",
|
|
77
|
+
"usage": ""
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"name": "sparkline",
|
|
81
|
+
"what": "inline mini-trend",
|
|
82
|
+
"usage": ""
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "heatmap",
|
|
86
|
+
"what": "heatmap cell",
|
|
87
|
+
"usage": ""
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"name": "availability-segment",
|
|
91
|
+
"what": "segmented cell",
|
|
92
|
+
"usage": ""
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"name": "availability-bar",
|
|
96
|
+
"what": "Up/Down bar",
|
|
97
|
+
"usage": ""
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"name": "live-graph-node",
|
|
101
|
+
"what": "topology node",
|
|
102
|
+
"usage": ""
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "live-graph-edge",
|
|
106
|
+
"what": "link/interface edge",
|
|
107
|
+
"usage": ""
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "apm-service-node",
|
|
111
|
+
"what": "APM service map node",
|
|
112
|
+
"usage": ""
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name": "sdn-tunnel-edge",
|
|
116
|
+
"what": "SD-WAN tunnel",
|
|
117
|
+
"usage": ""
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"name": "cisco-aci-endpoint",
|
|
121
|
+
"what": "ACI endpoint",
|
|
122
|
+
"usage": ""
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "cisco-aci-link",
|
|
126
|
+
"what": "ACI fabric link",
|
|
127
|
+
"usage": ""
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"name": "network-interface-edge",
|
|
131
|
+
"what": "interface edge",
|
|
132
|
+
"usage": ""
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"name": "netroute-node",
|
|
136
|
+
"what": "netroute hop",
|
|
137
|
+
"usage": ""
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"name": "netroute-edge",
|
|
141
|
+
"what": "netroute transit",
|
|
142
|
+
"usage": ""
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"name": "flame-graph-span",
|
|
146
|
+
"what": "trace flame span",
|
|
147
|
+
"usage": ""
|
|
148
|
+
}
|
|
149
|
+
],
|
|
150
|
+
"sizes": [],
|
|
151
|
+
"states": [
|
|
152
|
+
{
|
|
153
|
+
"name": "visible",
|
|
154
|
+
"what": "on hover (canvas/SVG)"
|
|
155
|
+
}
|
|
156
|
+
],
|
|
157
|
+
"renders": "REFERENCE REPRODUCTIONS — styling is owned by Highcharts / vis-network / d3 / widget components, not a DS Vue component. Built with real tokens (--chart-tooltip-background, --topology-graph-tooltip-bg, --severity-*).",
|
|
158
|
+
"mechanisms": {
|
|
159
|
+
"HighchartsTooltipBuilder": {
|
|
160
|
+
"source": "src/components/chart/options/tooltip-builder.js + .hc-tooltip-bg / .highcharts-tooltip-container-class",
|
|
161
|
+
"surface": "--chart-tooltip-background + blur(15px)",
|
|
162
|
+
"tooltips": [
|
|
163
|
+
"bar/series",
|
|
164
|
+
"donut/pie",
|
|
165
|
+
"bubble",
|
|
166
|
+
"map/geo",
|
|
167
|
+
"radar",
|
|
168
|
+
"timeline/x-range (SLO)",
|
|
169
|
+
"gauge",
|
|
170
|
+
"sankey",
|
|
171
|
+
"treemap",
|
|
172
|
+
"scatter",
|
|
173
|
+
"anomaly/forecast band",
|
|
174
|
+
"RUM resource waterfall",
|
|
175
|
+
"geo map marker (RUM apdex)",
|
|
176
|
+
"log pattern distribution",
|
|
177
|
+
"sparkline"
|
|
178
|
+
]
|
|
179
|
+
},
|
|
180
|
+
"VueWidget": {
|
|
181
|
+
"source": "heatmap-tooltip.vue + segmented-cell + availability bar",
|
|
182
|
+
"tooltips": [
|
|
183
|
+
"heatmap",
|
|
184
|
+
"alert/availability segment",
|
|
185
|
+
"availability bar segment"
|
|
186
|
+
]
|
|
187
|
+
},
|
|
188
|
+
"GraphCanvas": {
|
|
189
|
+
"source": "vis-network / d3 graph canvases",
|
|
190
|
+
"surface": "--topology-graph-tooltip-bg (fixed-dark both themes), --tooltip-text-color",
|
|
191
|
+
"tooltips": [
|
|
192
|
+
"live graph node (topology/netroute)",
|
|
193
|
+
"live graph edge",
|
|
194
|
+
"APM service-map node",
|
|
195
|
+
"SDN tunnel edge",
|
|
196
|
+
"Cisco ACI endpoint",
|
|
197
|
+
"Cisco ACI fabric link",
|
|
198
|
+
"network interface edge",
|
|
199
|
+
"netroute hop node",
|
|
200
|
+
"netroute edge (transit)"
|
|
201
|
+
]
|
|
202
|
+
},
|
|
203
|
+
"FlameGraph": {
|
|
204
|
+
"source": "d3 flame graph (APM / RUM traces)",
|
|
205
|
+
"surface": "hc-tooltip-bg",
|
|
206
|
+
"tooltips": [
|
|
207
|
+
"flame graph span"
|
|
208
|
+
]
|
|
209
|
+
}
|
|
210
|
+
},
|
|
211
|
+
"whichTooltipWhere": [
|
|
212
|
+
{
|
|
213
|
+
"tooltip": "Bar / series",
|
|
214
|
+
"where": "severity/metric stacked columns & line charts",
|
|
215
|
+
"renderer": "Highcharts TooltipBuilder"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"tooltip": "Donut / pie",
|
|
219
|
+
"where": "status/distribution donuts",
|
|
220
|
+
"renderer": "Highcharts"
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"tooltip": "Bubble",
|
|
224
|
+
"where": "grouped-count packed-bubble widgets",
|
|
225
|
+
"renderer": "Highcharts"
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"tooltip": "Map / geo",
|
|
229
|
+
"where": "geo-distribution maps",
|
|
230
|
+
"renderer": "Highcharts"
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"tooltip": "Radar",
|
|
234
|
+
"where": "multi-axis comparison",
|
|
235
|
+
"renderer": "Highcharts"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"tooltip": "Timeline / x-range",
|
|
239
|
+
"where": "SLO / availability timelines",
|
|
240
|
+
"renderer": "Highcharts"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"tooltip": "Gauge",
|
|
244
|
+
"where": "KPI gauges / circular progress",
|
|
245
|
+
"renderer": "Highcharts"
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"tooltip": "Sankey",
|
|
249
|
+
"where": "flow / traffic sankey",
|
|
250
|
+
"renderer": "Highcharts"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"tooltip": "Treemap",
|
|
254
|
+
"where": "capacity / hierarchy treemaps",
|
|
255
|
+
"renderer": "Highcharts"
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"tooltip": "Scatter",
|
|
259
|
+
"where": "correlation scatter (x/y)",
|
|
260
|
+
"renderer": "Highcharts"
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"tooltip": "Anomaly / forecast band",
|
|
264
|
+
"where": "anomaly & forecast charts (actual vs expected)",
|
|
265
|
+
"renderer": "Highcharts"
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"tooltip": "RUM resource waterfall",
|
|
269
|
+
"where": "RUM page resource timing",
|
|
270
|
+
"renderer": "Highcharts"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"tooltip": "Geo map marker",
|
|
274
|
+
"where": "RUM geo apdex map",
|
|
275
|
+
"renderer": "Highcharts"
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"tooltip": "Log pattern distribution",
|
|
279
|
+
"where": "log pattern value distribution",
|
|
280
|
+
"renderer": "Highcharts"
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
"tooltip": "Sparkline",
|
|
284
|
+
"where": "inline mini-trends (grid cells, KPIs)",
|
|
285
|
+
"renderer": "Highcharts (mini)"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"tooltip": "Heatmap",
|
|
289
|
+
"where": "heatmap widgets",
|
|
290
|
+
"renderer": "heatmap-tooltip.vue"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"tooltip": "Alert / availability segment",
|
|
294
|
+
"where": "segmented availability cells",
|
|
295
|
+
"renderer": "Vue (segmented-cell)"
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"tooltip": "Availability bar segment",
|
|
299
|
+
"where": "Up/Down % bars",
|
|
300
|
+
"renderer": "Vue"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"tooltip": "Live graph node",
|
|
304
|
+
"where": "topology / netroute maps",
|
|
305
|
+
"renderer": "graph canvas"
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"tooltip": "Live graph edge",
|
|
309
|
+
"where": "link / interface edges",
|
|
310
|
+
"renderer": "graph canvas"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"tooltip": "APM service-map node",
|
|
314
|
+
"where": "APM service map",
|
|
315
|
+
"renderer": "graph canvas"
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
"tooltip": "SDN tunnel edge",
|
|
319
|
+
"where": "SD-WAN tunnels",
|
|
320
|
+
"renderer": "graph canvas"
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"tooltip": "Cisco ACI endpoint",
|
|
324
|
+
"where": "ACI endpoint edges",
|
|
325
|
+
"renderer": "graph canvas"
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"tooltip": "Cisco ACI fabric link",
|
|
329
|
+
"where": "ACI fabric links",
|
|
330
|
+
"renderer": "graph canvas"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"tooltip": "Network interface edge",
|
|
334
|
+
"where": "interface topology",
|
|
335
|
+
"renderer": "graph canvas"
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
"tooltip": "Netroute hop node",
|
|
339
|
+
"where": "netroute path hops",
|
|
340
|
+
"renderer": "graph canvas"
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
"tooltip": "Netroute edge",
|
|
344
|
+
"where": "netroute transit edges",
|
|
345
|
+
"renderer": "graph canvas"
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
"tooltip": "Flame graph span",
|
|
349
|
+
"where": "APM / RUM trace flame graphs",
|
|
350
|
+
"renderer": "d3 flame graph"
|
|
351
|
+
}
|
|
352
|
+
],
|
|
353
|
+
"knownIssues": {
|
|
354
|
+
"F1": {
|
|
355
|
+
"severity": "Low",
|
|
356
|
+
"issue": "Owned by the chart layer, not DS components -> catalogued as reference reproductions (real tokens)."
|
|
357
|
+
},
|
|
358
|
+
"F2": {
|
|
359
|
+
"severity": "Low",
|
|
360
|
+
"a11y": true,
|
|
361
|
+
"issue": "Hover-only, canvas/SVG-rendered -> not keyboard-reachable / not in the a11y tree; ensure data also exists in a table/legend."
|
|
362
|
+
}
|
|
363
|
+
},
|
|
364
|
+
"tokensUsed": [
|
|
365
|
+
"--chart-tooltip-background",
|
|
366
|
+
"--topology-graph-tooltip-bg",
|
|
367
|
+
"--tooltip-text-color",
|
|
368
|
+
"--severity-down",
|
|
369
|
+
"--severity-unreachable",
|
|
370
|
+
"--severity-critical",
|
|
371
|
+
"--severity-major",
|
|
372
|
+
"--severity-warning",
|
|
373
|
+
"--severity-up",
|
|
374
|
+
"--page-text-color",
|
|
375
|
+
"--border-color"
|
|
376
|
+
],
|
|
377
|
+
"storybook": "Molecules/Data-Viz Tooltips",
|
|
378
|
+
"related": [
|
|
379
|
+
"tooltip",
|
|
380
|
+
"table"
|
|
381
|
+
],
|
|
382
|
+
"figma": {
|
|
383
|
+
"status": "todo"
|
|
384
|
+
},
|
|
385
|
+
"decisionFlow": [
|
|
386
|
+
"Hover detail on a CHART/graph/canvas mark? -> data-viz tooltip (owned by the chart layer, not MTooltip).",
|
|
387
|
+
"A UI element/text hint? -> MTooltip (Molecules/Tooltip).",
|
|
388
|
+
"Which one: match the chart/widget type in whichTooltipWhere."
|
|
389
|
+
],
|
|
390
|
+
"do": [
|
|
391
|
+
"Use the chart layer's TooltipBuilder / widget tooltip; don't build a DS component.",
|
|
392
|
+
"Convey severity by token + label, not colour alone.",
|
|
393
|
+
"Provide the same data in a table/legend (a11y F2)."
|
|
394
|
+
],
|
|
395
|
+
"dont": [
|
|
396
|
+
"Don't reach for MTooltip on a chart mark.",
|
|
397
|
+
"Don't rely on hover-only data for accessibility.",
|
|
398
|
+
"Don't hardcode tooltip colours — use --chart-tooltip-background / --severity-*."
|
|
399
|
+
],
|
|
400
|
+
"a11y": {
|
|
401
|
+
"summary": "Hover-only over SVG/canvas marks — not keyboard-reachable, not in the a11y tree (canvas tooltips). Colour isn't the only signal (swatch + label).",
|
|
402
|
+
"issues": [
|
|
403
|
+
"Not keyboard-reachable / not in the a11y tree.",
|
|
404
|
+
"Verify translucent tooltip-bg contrast."
|
|
405
|
+
],
|
|
406
|
+
"doc": "Molecules/Data-Viz Tooltips/Accessibility",
|
|
407
|
+
"$note": "Catalogue-wide gap SF-001 = no visible :focus-visible ring; tracked in findings/."
|
|
408
|
+
}
|
|
409
|
+
}
|