@watt-ui/react 0.1.4 → 0.2.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/NOTICE +4 -0
- package/README.md +9 -9
- package/dist/chart/category-engine.d.ts +2 -0
- package/dist/chart/category-engine.d.ts.map +1 -0
- package/dist/chart/category-engine.js +9 -0
- package/dist/chart/category-engine.js.map +1 -0
- package/dist/chart/category-options.d.ts +23 -0
- package/dist/chart/category-options.d.ts.map +1 -0
- package/dist/chart/category-options.js +120 -0
- package/dist/chart/category-options.js.map +1 -0
- package/dist/components/asset-tree.d.ts.map +1 -1
- package/dist/components/asset-tree.js +16 -2
- package/dist/components/asset-tree.js.map +1 -1
- package/dist/components/battery-soc.d.ts.map +1 -1
- package/dist/components/battery-soc.js +5 -1
- package/dist/components/battery-soc.js.map +1 -1
- package/dist/components/category-chart.d.ts +37 -0
- package/dist/components/category-chart.d.ts.map +1 -0
- package/dist/components/category-chart.js +251 -0
- package/dist/components/category-chart.js.map +1 -0
- package/dist/components/energy-flow.d.ts +2 -1
- package/dist/components/energy-flow.d.ts.map +1 -1
- package/dist/components/energy-flow.js +2 -2
- package/dist/components/energy-flow.js.map +1 -1
- package/dist/components/equipment-card.d.ts +12 -0
- package/dist/components/equipment-card.d.ts.map +1 -0
- package/dist/components/equipment-card.js +18 -0
- package/dist/components/equipment-card.js.map +1 -0
- package/dist/components/equipment-heatmap.d.ts +33 -0
- package/dist/components/equipment-heatmap.d.ts.map +1 -0
- package/dist/components/equipment-heatmap.js +161 -0
- package/dist/components/equipment-heatmap.js.map +1 -0
- package/dist/components/equipment-table.d.ts +34 -0
- package/dist/components/equipment-table.d.ts.map +1 -0
- package/dist/components/equipment-table.js +141 -0
- package/dist/components/equipment-table.js.map +1 -0
- package/dist/components/metric-trend.d.ts +13 -0
- package/dist/components/metric-trend.d.ts.map +1 -0
- package/dist/components/metric-trend.js +30 -0
- package/dist/components/metric-trend.js.map +1 -0
- package/dist/components/operating-timeline.d.ts +31 -0
- package/dist/components/operating-timeline.d.ts.map +1 -0
- package/dist/components/operating-timeline.js +61 -0
- package/dist/components/operating-timeline.js.map +1 -0
- package/dist/components/plant-fleet-map.d.ts +32 -0
- package/dist/components/plant-fleet-map.d.ts.map +1 -0
- package/dist/components/plant-fleet-map.js +56 -0
- package/dist/components/plant-fleet-map.js.map +1 -0
- package/dist/components/threshold-gauge.d.ts +19 -0
- package/dist/components/threshold-gauge.d.ts.map +1 -0
- package/dist/components/threshold-gauge.js +54 -0
- package/dist/components/threshold-gauge.js.map +1 -0
- package/dist/components/time-range-selector.d.ts +16 -0
- package/dist/components/time-range-selector.d.ts.map +1 -0
- package/dist/components/time-range-selector.js +47 -0
- package/dist/components/time-range-selector.js.map +1 -0
- package/dist/icons/index.d.ts +17 -1
- package/dist/icons/index.d.ts.map +1 -1
- package/dist/icons/index.js +98 -1
- package/dist/icons/index.js.map +1 -1
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/map/land.d.ts +2 -0
- package/dist/map/land.d.ts.map +1 -0
- package/dist/map/land.js +3 -0
- package/dist/map/land.js.map +1 -0
- package/dist/server.d.ts +5 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +21 -1
- package/dist/server.js.map +1 -1
- package/dist/styles.css +133 -4
- package/dist/virtual-focus.d.ts +3 -0
- package/dist/virtual-focus.d.ts.map +1 -0
- package/dist/virtual-focus.js +23 -0
- package/dist/virtual-focus.js.map +1 -0
- package/package.json +37 -1
- package/src/chart/category-engine.ts +8 -0
- package/src/chart/category-options.ts +158 -0
- package/src/components/asset-tree.tsx +21 -5
- package/src/components/battery-soc.tsx +8 -0
- package/src/components/category-chart.tsx +452 -0
- package/src/components/energy-flow.tsx +3 -1
- package/src/components/equipment-card.tsx +46 -0
- package/src/components/equipment-heatmap.tsx +298 -0
- package/src/components/equipment-table.tsx +302 -0
- package/src/components/metric-trend.tsx +87 -0
- package/src/components/operating-timeline.tsx +182 -0
- package/src/components/plant-fleet-map.tsx +173 -0
- package/src/components/threshold-gauge.tsx +152 -0
- package/src/components/time-range-selector.tsx +126 -0
- package/src/icons/index.tsx +107 -0
- package/src/index.ts +44 -0
- package/src/map/land.ts +2 -0
- package/src/server.ts +28 -1
- package/src/styles.css +133 -4
- package/src/virtual-focus.ts +27 -0
package/NOTICE
CHANGED
|
@@ -41,3 +41,7 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
41
41
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
42
42
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
43
43
|
SOFTWARE.
|
|
44
|
+
|
|
45
|
+
World land geometry: Natural Earth, public domain.
|
|
46
|
+
Source: https://github.com/nvkelso/natural-earth-vector/blob/master/geojson/ne_110m_land.geojson
|
|
47
|
+
Terms: https://www.naturalearthdata.com/about/terms-of-use/
|
package/README.md
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# Watt UI
|
|
2
2
|
React components for energy & power dashboards. React 18/19, Tailwind CSS v4, TypeScript, MIT.
|
|
3
|
-
[Component playground](https://watt-ui.pages.dev) · [Icon gallery](https://watt-ui.pages.dev/icons)
|
|
4
|
-
|
|
3
|
+
[Component playground](https://watt-ui.pages.dev) · [Icon gallery](https://watt-ui.pages.dev/icons) · [Measurements](https://watt-ui.pages.dev/benchmark.json)
|
|
5
4
|
## Install
|
|
6
5
|
```sh
|
|
7
6
|
npm install @watt-ui/react react react-dom tailwindcss
|
|
@@ -17,7 +16,6 @@ In your Tailwind v4 CSS entry (configure Tailwind's Vite/PostCSS integration in
|
|
|
17
16
|
/* @import "@watt-ui/react/theme/shadcn.css"; */
|
|
18
17
|
```
|
|
19
18
|
Use `.dark` or `data-theme="dark"` on a shared ancestor. Watt does not reset global styles.
|
|
20
|
-
|
|
21
19
|
## Compose
|
|
22
20
|
```tsx
|
|
23
21
|
'use client'; // Next.js App Router: put compound component usage in a client module.
|
|
@@ -28,23 +26,25 @@ import { PowerMetric } from '@watt-ui/react';
|
|
|
28
26
|
<PowerMetric.Unit>kW</PowerMetric.Unit>
|
|
29
27
|
</PowerMetric.Root>
|
|
30
28
|
```
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
17 families: `PowerMetric`, `StatusIndicator`, `DataFreshness`, `BatterySOC`, `TelemetryChart`, `EnergyFlow`, `AlarmFeed`, `AssetTree`, `EquipmentCard`, `MetricTrend`, `ThresholdGauge`, `TimeRangeSelector`, `EquipmentHeatmap`, `EquipmentTable`, `OperatingTimeline`, `CategoryChart`, `PlantFleetMap`. Individual imports use kebab-case subpaths such as `@watt-ui/react/equipment-table`. The 40 outline icons live in `@watt-ui/react/icons`.
|
|
30
|
+
All 50 roadmap use cases are working Playground compositions, including PV, battery, grid, operations and commercial/EV scenes. Source: `demo/recipes.tsx` and `demo/extra-recipes.tsx`; scene names are not additional fixed-widget exports.
|
|
34
31
|
## Contracts
|
|
35
32
|
- Component roots support `motion={false}` or `motion={{duration: 240, easing: 'ease-out'}}`: metric-value/quality/status change feedback, SOC fill continuity, new-alarm feedback, tree selection/`AssetTree.Indicator expanded={expanded}`, and chart legend/inspection feedback. Duration is milliseconds (0 disables); `--watt-motion-duration` and `--watt-motion-easing` are CSS overrides. No initial entrance or numeric interpolation; Reduced Motion cancels these effects. EnergyFlow keeps its separate `animation` API below; chart data animation stays off by default.
|
|
36
|
-
- Content and translation belong to children/render functions. DOM parts support refs
|
|
33
|
+
- Content and translation belong to children/render functions. DOM parts support refs; presentation parts support `asChild`. Canvas, map, timeline, native radio and virtualized collection wrappers keep their required DOM structure.
|
|
37
34
|
- Measurements, units, quality, equipment status, direction and business calculations come from your app. There is no automatic stale detection, transport, integration or conversion. Invalid SOC (outside 0–100) displays an empty track without a false numeric reading.
|
|
38
35
|
- Charts require sorted timestamps: ISO 8601 with timezone or Unix milliseconds. Use explicit `null` for gaps. Series IDs must be unique; each axis has one unit, with at most two axes. Inputs are immutable snapshots; keep references stable when unchanged.
|
|
39
36
|
- `TelemetryChart.Root` takes `series`, `timeZone`, optional `range/onRangeChange`, `sampling`, `options`, `events`, `onReady`, `onError`. It composes `Canvas`, `Legend`, `Tooltip`, `Description`. Sampling preserves explicit gaps and spikes; tooltip inspection looks up original samples. Heavy alternating-null input can exceed the display-point budget to preserve gaps.
|
|
40
37
|
- Explicit Watt fields own axes, series, zoom, legend and tooltip; other ECharts options pass through. Data quality is inspection metadata; use `null` yourself to omit a point. Arrow/Home/End inspect original samples. Inside zoom uses Ctrl+wheel; range synchronization belongs to your app.
|
|
41
|
-
- SSR emits a deterministic chart shell. Optional server-only `renderTelemetrySVG({series,timeZone,width,height})` from `@watt-ui/react/server` generates trusted `previewSvg` for `Canvas`. Canvas replaces it after its first render; this is not SVG hydration. Do not pass untrusted HTML as `previewSvg`.
|
|
38
|
+
- SSR emits a deterministic chart shell. Optional server-only `renderTelemetrySVG({series,timeZone,width,height})` or `renderCategorySVG({categories,series,width,height})` from `@watt-ui/react/server` generates trusted `previewSvg` for `Canvas`. Canvas replaces it after its first render; this is not SVG hydration. Do not pass untrusted HTML as `previewSvg`.
|
|
42
39
|
- `EnergyFlow.Root` measures your CSS layout after mount; nodes SSR-render, edges appear after measurement. Connect Node IDs or explicit Port IDs with Edge source/target. Layout changes caused by CSS transforms need a resize or class/style mutation; graph editing and automatic graph layout are not included. Labels are your content; add an accessible diagram description. Missing endpoints remain unrendered until registered.
|
|
43
40
|
- Flow animation: `particles/dash/pulse/none`, nonnegative speed (0 pauses), particleSize/count (maximum 100), strokeWidth, color and `straight/step/bezier`. Root defaults can be overridden per Edge. Motion pauses offscreen or in a hidden tab; Reduced Motion retains static arrows.
|
|
44
41
|
- `AssetTree.Root` takes immutable `items`, a row render function, `expandedIds/onExpandedChange`, `selectedIds/onSelectionChange`, optional defaults and `onActivate`. Give it an `aria-label`. Virtual rows use a fixed `rowHeight` (36 compact / 48 comfortable); keep content within that height. No built-in fetching, editing or drag/drop.
|
|
45
42
|
- `AlarmFeed.Root` renders supplied order and exposes a row function; optional virtualization uses `height/rowHeight`. Your app owns acknowledgement, filtering, sorting and actions. Live announcements are opt-in through your wrapper's ARIA props.
|
|
46
43
|
|
|
44
|
+
- `EquipmentTable` requests sort/selection changes and preserves supplied order; selectable rows expose grid semantics. `EquipmentHeatmap` accepts externally colored cells with native keyboard selection. Both virtualize fixed-size rows and support density changes.
|
|
45
|
+
- `CategoryChart` displays externally supplied categorical values sharing one unit; it composes Canvas/Legend/Tooltip/Description, with raw-value keyboard inspection and reusable ECharts instances. `OperatingTimeline` uses supplied lanes/intervals and an explicit range/time zone; provide separate tracks for overlapping events.
|
|
46
|
+
- `ThresholdGauge` validates min/max/value; `TimeRangeSelector` returns supplied absolute ranges. `PlantFleetMap` uses an offline Natural Earth land basemap with non-wrapping equirectangular bounds, supplied coordinates, native site selection and an optional custom background. No geocoding, tiles, automatic fitting or clustering.
|
|
47
47
|
## Develop and verify
|
|
48
48
|
`npm run dev` opens the single-component Playground. `npm run typecheck`, `npm test`, `npm run test:browser`, `npm run check:package` verify types, behavior, accessibility and packed React 18/Vite + React 19/Next consumers. `node scripts/benchmark.mjs` measures 4×100k desktop, 4×10k throttled mobile simulation, and 1m stress input against the running Playground; results include initial rendering, update p95, frame times and heap usage. Set `WATT_BENCH_URL` to a production preview for release measurements. Physical mobile results must be verified separately.
|
|
49
49
|
|
|
50
|
-
Measured 2026-10-
|
|
50
|
+
Measured 2026-10-24, production build, Apple M2 Pro / macOS arm64 / Chromium 156.0.8078.4: desktop 4×100k at 1Hz + pointer inspection averaged 60.01fps (update p95 38.8ms); 390px / 4× CPU-throttled 4×10k averaged 57.77fps (84.9ms); 1×1m stress averaged 59.98fps (32.4ms). Initial chart rendering: 120/364/146ms after fixture generation. Desktop and mobile-simulation windows ran 60s after 10s warmup; stress ran 15s. GC heap before→after: 85.6→85.2MB, 15.0→16.7MB, 201.0→197.8MB. These are bounded synthetic browser measurements, not physical-phone or indefinite-memory guarantees.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-engine.d.ts","sourceRoot":"","sources":["../../src/chart/category-engine.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,kCAGtD"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { init, use } from "echarts/core";
|
|
2
|
+
import { BarChart } from "echarts/charts";
|
|
3
|
+
import { GridComponent, TooltipComponent } from "echarts/components";
|
|
4
|
+
import { CanvasRenderer } from "echarts/renderers";
|
|
5
|
+
export function initCategoryCanvas(element) {
|
|
6
|
+
use([BarChart, GridComponent, TooltipComponent, CanvasRenderer]);
|
|
7
|
+
return init(element, undefined, { renderer: "canvas" });
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=category-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-engine.js","sourceRoot":"","sources":["../../src/chart/category-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,MAAM,UAAU,kBAAkB,CAAC,OAAoB;IACrD,GAAG,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { EChartsCoreOption } from "echarts/core";
|
|
2
|
+
export interface CategorySeries {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
unit: string;
|
|
6
|
+
values: readonly (number | null)[];
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface CategoryChartConfig {
|
|
10
|
+
categories: readonly string[];
|
|
11
|
+
series: readonly CategorySeries[];
|
|
12
|
+
orientation?: "horizontal" | "vertical";
|
|
13
|
+
stacked?: boolean;
|
|
14
|
+
options?: EChartsCoreOption;
|
|
15
|
+
}
|
|
16
|
+
export declare function hasCategoryConflict(config: CategoryChartConfig): boolean;
|
|
17
|
+
export declare function validateCategories(config: CategoryChartConfig): void;
|
|
18
|
+
export declare function categoryOption(config: CategoryChartConfig, colors?: {
|
|
19
|
+
text: string;
|
|
20
|
+
border: string;
|
|
21
|
+
accent: string;
|
|
22
|
+
}): EChartsCoreOption;
|
|
23
|
+
//# sourceMappingURL=category-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-options.d.ts","sourceRoot":"","sources":["../../src/chart/category-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAMD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,WA0B9D;AACD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,QAiB7D;AACD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,mBAAmB,EAC3B,MAAM;;;;CAA4D,GACjE,iBAAiB,CAyFnB"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
const record = (value) => value && typeof value === "object" && !Array.isArray(value)
|
|
2
|
+
? value
|
|
3
|
+
: {};
|
|
4
|
+
const at = (value) => record(Array.isArray(value) ? value[0] : value);
|
|
5
|
+
export function hasCategoryConflict(config) {
|
|
6
|
+
const options = config.options;
|
|
7
|
+
if (!options)
|
|
8
|
+
return false;
|
|
9
|
+
const category = at(config.orientation === "horizontal" ? options.yAxis : options.xAxis);
|
|
10
|
+
const value = at(config.orientation === "horizontal" ? options.xAxis : options.yAxis);
|
|
11
|
+
return ("data" in category ||
|
|
12
|
+
(category.type !== undefined && category.type !== "category") ||
|
|
13
|
+
(value.type !== undefined && value.type !== "value") ||
|
|
14
|
+
(value.name !== undefined && value.name !== config.series[0]?.unit) ||
|
|
15
|
+
at(options.legend).show === true ||
|
|
16
|
+
at(options.tooltip).showContent === true ||
|
|
17
|
+
(Array.isArray(options.series)
|
|
18
|
+
? options.series
|
|
19
|
+
: options.series
|
|
20
|
+
? [options.series]
|
|
21
|
+
: []).some((series) => {
|
|
22
|
+
const item = record(series);
|
|
23
|
+
return "data" in item || (item.type !== undefined && item.type !== "bar");
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
26
|
+
export function validateCategories(config) {
|
|
27
|
+
const ids = new Set();
|
|
28
|
+
let unit;
|
|
29
|
+
for (const series of config.series) {
|
|
30
|
+
if (!series.id ||
|
|
31
|
+
ids.has(series.id) ||
|
|
32
|
+
series.values.length !== config.categories.length)
|
|
33
|
+
throw new Error("CategoryChart needs unique series IDs and one value per category");
|
|
34
|
+
if (unit !== undefined && unit !== series.unit)
|
|
35
|
+
throw new Error("CategoryChart series must share one unit");
|
|
36
|
+
ids.add(series.id);
|
|
37
|
+
unit = series.unit;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export function categoryOption(config, colors = { text: "#626b7b", border: "#e3e6ec", accent: "#355dff" }) {
|
|
41
|
+
const horizontal = config.orientation === "horizontal";
|
|
42
|
+
const customCategory = at(horizontal ? config.options?.yAxis : config.options?.xAxis);
|
|
43
|
+
const customValue = at(horizontal ? config.options?.xAxis : config.options?.yAxis);
|
|
44
|
+
const category = {
|
|
45
|
+
...customCategory,
|
|
46
|
+
type: "category",
|
|
47
|
+
data: config.categories,
|
|
48
|
+
axisLabel: {
|
|
49
|
+
color: colors.text,
|
|
50
|
+
hideOverlap: true,
|
|
51
|
+
...record(customCategory.axisLabel),
|
|
52
|
+
},
|
|
53
|
+
axisLine: {
|
|
54
|
+
lineStyle: { color: colors.border },
|
|
55
|
+
...record(customCategory.axisLine),
|
|
56
|
+
},
|
|
57
|
+
axisTick: { show: false, ...record(customCategory.axisTick) },
|
|
58
|
+
};
|
|
59
|
+
const value = {
|
|
60
|
+
...customValue,
|
|
61
|
+
type: "value",
|
|
62
|
+
name: config.series[0]?.unit ?? "",
|
|
63
|
+
splitNumber: customValue.splitNumber ?? 4,
|
|
64
|
+
nameTextStyle: { color: colors.text, ...record(customValue.nameTextStyle) },
|
|
65
|
+
axisLabel: {
|
|
66
|
+
color: colors.text,
|
|
67
|
+
hideOverlap: true,
|
|
68
|
+
...record(customValue.axisLabel),
|
|
69
|
+
},
|
|
70
|
+
splitLine: {
|
|
71
|
+
lineStyle: { color: colors.border },
|
|
72
|
+
...record(customValue.splitLine),
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
const passthrough = { ...config.options };
|
|
76
|
+
delete passthrough.legend;
|
|
77
|
+
return {
|
|
78
|
+
...passthrough,
|
|
79
|
+
animation: false,
|
|
80
|
+
grid: {
|
|
81
|
+
left: 12,
|
|
82
|
+
right: 20,
|
|
83
|
+
top: 30,
|
|
84
|
+
bottom: 40,
|
|
85
|
+
containLabel: true,
|
|
86
|
+
...config.options?.grid,
|
|
87
|
+
},
|
|
88
|
+
tooltip: {
|
|
89
|
+
...at(config.options?.tooltip),
|
|
90
|
+
trigger: "axis",
|
|
91
|
+
showContent: false,
|
|
92
|
+
axisPointer: {
|
|
93
|
+
type: "shadow",
|
|
94
|
+
...record(at(config.options?.tooltip).axisPointer),
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
xAxis: horizontal ? value : category,
|
|
98
|
+
yAxis: horizontal ? category : value,
|
|
99
|
+
series: config.series.map((series, index) => {
|
|
100
|
+
const custom = record(Array.isArray(config.options?.series)
|
|
101
|
+
? (config.options.series.find((item) => record(item).id === series.id) ?? config.options.series[index])
|
|
102
|
+
: config.options?.series);
|
|
103
|
+
return {
|
|
104
|
+
...custom,
|
|
105
|
+
id: series.id,
|
|
106
|
+
name: series.label,
|
|
107
|
+
type: "bar",
|
|
108
|
+
stack: config.stacked ? "total" : undefined,
|
|
109
|
+
data: series.values.map((value) => value !== null && Number.isFinite(value) ? value : null),
|
|
110
|
+
itemStyle: {
|
|
111
|
+
...record(custom.itemStyle),
|
|
112
|
+
color: series.color ?? colors.accent,
|
|
113
|
+
},
|
|
114
|
+
barMaxWidth: custom.barMaxWidth ?? 36,
|
|
115
|
+
emphasis: { focus: "series", ...record(custom.emphasis) },
|
|
116
|
+
};
|
|
117
|
+
}),
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=category-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-options.js","sourceRoot":"","sources":["../../src/chart/category-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-tree.d.ts","sourceRoot":"","sources":["../../src/components/asset-tree.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAgB,aAAa,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/E,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,IAC1C,CAAC,GACD,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,UAAU,CAAC,EAAE,CAAA;CAAE,GAC7D,CAAC,SAAS,CAAC,GACT,KAAK,GACL,aAAa,CAAC,CAAC,CAAC,GAClB,KAAK,CAAC,CAAC;AACf,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAC/D,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"asset-tree.d.ts","sourceRoot":"","sources":["../../src/components/asset-tree.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAgB,aAAa,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/E,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,IAC1C,CAAC,GACD,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,UAAU,CAAC,EAAE,CAAA;CAAE,GAC7D,CAAC,SAAS,CAAC,GACT,KAAK,GACL,aAAa,CAAC,CAAC,CAAC,GAClB,KAAK,CAAC,CAAC;AACf,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAC/D,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,EAAE,WAAW;IAC3E,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACnE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AAiOD,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,QAAQ,EAAE,OAAO,CAAC;CACnB;AAiBD,eAAO,MAAM,SAAS;;UAEM,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAC1D,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,cAAc,CAAC,KACrD,YAAY;CAClB,CAAC"}
|
|
@@ -119,12 +119,22 @@ function Root({ items, children, expandedIds, defaultExpandedIds = [], onExpande
|
|
|
119
119
|
initialRect: { width: 0, height },
|
|
120
120
|
getItemKey: (index) => visible[index].getId(),
|
|
121
121
|
});
|
|
122
|
+
useEffect(() => {
|
|
123
|
+
virtualizer.measure();
|
|
124
|
+
}, [virtualizer, rowHeight]);
|
|
122
125
|
virtualRef.current = virtualizer;
|
|
126
|
+
const virtualRows = virtualizer.getVirtualItems();
|
|
127
|
+
const focusIndex = virtualRows.find((row) => visible[row.index]?.isFocused())?.index ??
|
|
128
|
+
virtualRows[0]?.index;
|
|
123
129
|
const containerProps = tree.getContainerProps(props["aria-label"]);
|
|
124
130
|
const hostRef = useComposedRefs(host, tree.registerElement, forwardedRef);
|
|
125
131
|
const renderRow = (item, index, start) => {
|
|
126
132
|
const rowProps = item.getProps();
|
|
127
|
-
return (_createElement("div", { ...rowProps,
|
|
133
|
+
return (_createElement("div", { ...rowProps, tabIndex: index === focusIndex ? 0 : -1, onFocus: (event) => {
|
|
134
|
+
rowProps.onFocus?.(event);
|
|
135
|
+
if (event.target === event.currentTarget && !item.isFocused())
|
|
136
|
+
item.setFocused();
|
|
137
|
+
}, "aria-label": undefined, key: item.getId(), "data-slot": "asset-tree-row", "data-index": index, "data-selected": item.isSelected() || undefined, "data-expanded": item.isExpanded(), className: "watt-motion absolute top-0 left-0 flex w-full items-center border-b border-[var(--watt-border)] outline-offset-[-2px] data-[selected]:bg-[var(--watt-subtle)] focus-visible:outline-2 focus-visible:outline-[var(--watt-accent)]", style: {
|
|
128
138
|
height: rowHeight,
|
|
129
139
|
paddingInlineStart: item.getItemMeta().level * 20,
|
|
130
140
|
transform: `translateY(${start}px)`,
|
|
@@ -138,7 +148,11 @@ function Root({ items, children, expandedIds, defaultExpandedIds = [], onExpande
|
|
|
138
148
|
toggleExpanded: () => item.isExpanded() ? item.collapse() : item.expand(),
|
|
139
149
|
})));
|
|
140
150
|
};
|
|
141
|
-
return (_jsx(MotionProvider, { motion: motion, children: _jsx("div", { ...containerProps, ...props, ref: hostRef, "data-slot": "asset-tree", "data-density": density, className: cx("watt-root overflow-auto text-sm", className), style: {
|
|
151
|
+
return (_jsx(MotionProvider, { motion: motion, children: _jsx("div", { ...(items.length ? containerProps : { role: "group" }), ...props, ref: hostRef, "data-slot": "asset-tree", "data-density": density, className: cx("watt-root overflow-auto text-sm", className), style: {
|
|
152
|
+
height: items.length ? height : undefined,
|
|
153
|
+
...style,
|
|
154
|
+
...motionStyle(motion),
|
|
155
|
+
}, children: !items.length ? (empty) : (_jsx("div", { role: "presentation", style: { height: virtualizer.getTotalSize(), position: "relative" }, children: virtualRows.map((row) => {
|
|
142
156
|
const item = visible[row.index];
|
|
143
157
|
return item && indexed.has(item.getId())
|
|
144
158
|
? renderRow(item, row.index, row.start)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-tree.js","sourceRoot":"","sources":["../../src/components/asset-tree.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,GAGnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"asset-tree.js","sourceRoot":"","sources":["../../src/components/asset-tree.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"battery-soc.d.ts","sourceRoot":"","sources":["../../src/components/battery-soc.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAW,WAAW,EAAE,MAAM,aAAa,CAAC;AAY9E,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,WAAW;IAC7D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"battery-soc.d.ts","sourceRoot":"","sources":["../../src/components/battery-soc.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAW,WAAW,EAAE,MAAM,aAAa,CAAC;AAY9E,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,WAAW;IAC7D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAmFD,eAAO,MAAM,UAAU;;;;;CAKtB,CAAC"}
|
|
@@ -19,7 +19,11 @@ const Root = forwardRef(({ value, asChild, density = "comfortable", motion, clas
|
|
|
19
19
|
const Track = forwardRef(({ asChild, className, ...props }, ref) => {
|
|
20
20
|
const { value, density } = useSOC();
|
|
21
21
|
const Component = asChild ? Slot : "div";
|
|
22
|
-
return (_jsx(Component, { ...props, ref: ref, role: value === null ? "img" : "meter", "aria-valuemin": value === null ? undefined : 0, "aria-valuemax": value === null ? undefined : 100, "aria-valuenow": value ?? undefined, "
|
|
22
|
+
return (_jsx(Component, { ...props, ref: ref, role: value === null ? "img" : "meter", "aria-valuemin": value === null ? undefined : 0, "aria-valuemax": value === null ? undefined : 100, "aria-valuenow": value ?? undefined, "aria-valuetext": value === null ? undefined : props["aria-valuetext"], "aria-description": value === null
|
|
23
|
+
? (props["aria-valuetext"] ??
|
|
24
|
+
props["aria-description"] ??
|
|
25
|
+
"Unavailable")
|
|
26
|
+
: props["aria-description"], "data-slot": "battery-soc-track", className: cx(density === "compact" ? "h-2" : "h-4", "overflow-hidden rounded-sm bg-[var(--watt-subtle)]", className) }));
|
|
23
27
|
});
|
|
24
28
|
const Fill = forwardRef(({ asChild, className, style, ...props }, ref) => {
|
|
25
29
|
const { value } = useSOC();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"battery-soc.js","sourceRoot":"","sources":["../../src/components/battery-soc.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3D,MAAM,OAAO,GAAG,aAAa,CAGnB,IAAI,CAAC,CAAC;AAChB,SAAS,MAAM;IACb,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,IAAI;QAChB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC;AAID,MAAM,IAAI,GAAG,UAAU,CACrB,CACE,EACE,KAAK,EACL,OAAO,EACP,OAAO,GAAG,aAAa,EACvB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,MAAM,KAAK,GACT,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC;IACzE,OAAO,CACL,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,YAC5B,KAAC,OAAO,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,YAC/D,KAAC,SAAS,OACJ,KAAK,EACT,GAAG,EAAE,GAAY,eACP,aAAa,kBACT,CAAC,KAAK,IAAI,SAAS,kBACnB,OAAO,EACrB,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,EAC3C,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,GACzD,GACe,GACJ,CAClB,CAAC;AACJ,CAAC,CACF,CAAC;AACF,MAAM,KAAK,GAAG,UAAU,CACtB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,OAAO,CACL,KAAC,SAAS,OACJ,KAAK,EACT,GAAG,EAAE,GAAY,EACjB,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,mBACvB,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,mBAC9B,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,mBAChC,KAAK,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"battery-soc.js","sourceRoot":"","sources":["../../src/components/battery-soc.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3D,MAAM,OAAO,GAAG,aAAa,CAGnB,IAAI,CAAC,CAAC;AAChB,SAAS,MAAM;IACb,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,IAAI;QAChB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC;AAID,MAAM,IAAI,GAAG,UAAU,CACrB,CACE,EACE,KAAK,EACL,OAAO,EACP,OAAO,GAAG,aAAa,EACvB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,MAAM,KAAK,GACT,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC;IACzE,OAAO,CACL,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,YAC5B,KAAC,OAAO,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,YAC/D,KAAC,SAAS,OACJ,KAAK,EACT,GAAG,EAAE,GAAY,eACP,aAAa,kBACT,CAAC,KAAK,IAAI,SAAS,kBACnB,OAAO,EACrB,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,EAC3C,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,GACzD,GACe,GACJ,CAClB,CAAC;AACJ,CAAC,CACF,CAAC;AACF,MAAM,KAAK,GAAG,UAAU,CACtB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,OAAO,CACL,KAAC,SAAS,OACJ,KAAK,EACT,GAAG,EAAE,GAAY,EACjB,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,mBACvB,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,mBAC9B,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,mBAChC,KAAK,IAAI,SAAS,oBACjB,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,sBAElE,KAAK,KAAK,IAAI;YACZ,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;gBACxB,KAAK,CAAC,kBAAkB,CAAC;gBACzB,aAAa,CAAC;YAChB,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,eAErB,mBAAmB,EAC7B,SAAS,EAAE,EAAE,CACX,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EACrC,oDAAoD,EACpD,SAAS,CACV,GACD,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AACF,MAAM,IAAI,GAAG,UAAU,CACrB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACzC,OAAO,CACL,KAAC,SAAS,OACJ,KAAK,EACT,GAAG,EAAE,GAAY,iBACL,MAAM,eACR,kBAAkB,EAC5B,SAAS,EAAE,EAAE,CACX,0DAA0D,EAC1D,SAAS,CACV,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,GAC5C,CACH,CAAC;AACJ,CAAC,CACF,CAAC;AACF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,MAAM,CAAC;CACpD,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { EChartsType } from "echarts/core";
|
|
2
|
+
import { type CategoryChartConfig, type CategorySeries } from "../chart/category-options.js";
|
|
3
|
+
import type { RootProps, MotionProps } from "../types.js";
|
|
4
|
+
export interface CategoryInspection {
|
|
5
|
+
index: number;
|
|
6
|
+
category: string;
|
|
7
|
+
values: {
|
|
8
|
+
id: string;
|
|
9
|
+
label: string;
|
|
10
|
+
unit: string;
|
|
11
|
+
value: number | null;
|
|
12
|
+
}[];
|
|
13
|
+
}
|
|
14
|
+
export interface CategoryChartProps extends Omit<RootProps, "asChild" | "onError">, MotionProps, CategoryChartConfig {
|
|
15
|
+
onReady?: (chart: EChartsType) => void;
|
|
16
|
+
onError?: (error: Error) => void;
|
|
17
|
+
events?: Readonly<Record<string, (event: unknown, chart: EChartsType) => void>>;
|
|
18
|
+
}
|
|
19
|
+
export interface CategoryCanvasProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children"> {
|
|
20
|
+
height?: number;
|
|
21
|
+
previewSvg?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const CategoryChart: {
|
|
24
|
+
Root: import("react").ForwardRefExoticComponent<CategoryChartProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
25
|
+
Canvas: import("react").ForwardRefExoticComponent<CategoryCanvasProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
26
|
+
Legend: import("react").ForwardRefExoticComponent<Omit<import("react").HTMLAttributes<HTMLDivElement>, "children"> & {
|
|
27
|
+
children?: (series: CategorySeries & {
|
|
28
|
+
hidden: boolean;
|
|
29
|
+
toggle: () => void;
|
|
30
|
+
}) => React.ReactNode;
|
|
31
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
32
|
+
Tooltip: import("react").ForwardRefExoticComponent<Omit<import("react").HTMLAttributes<HTMLDivElement>, "children"> & {
|
|
33
|
+
children: (point: CategoryInspection | null) => React.ReactNode;
|
|
34
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
35
|
+
Description: import("react").ForwardRefExoticComponent<import("../types.js").PartProps & import("react").RefAttributes<HTMLElement>>;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=category-chart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"category-chart.d.ts","sourceRoot":"","sources":["../../src/components/category-chart.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1D,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EAAE,CAAC;CAC7E;AACD,MAAM,WAAW,kBACf,SACE,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC,EACtC,WAAW,EACX,mBAAmB;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,QAAQ,CACf,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC,CAC7D,CAAC;CACH;AAuGD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAC/C,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EACpC,UAAU,CACX;IACC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAwSD,eAAO,MAAM,aAAa;;;;mBArEX,CACT,MAAM,EAAE,cAAc,GAAG;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,MAAM,IAAI,CAAA;SAAE,KAC7D,KAAK,CAAC,SAAS;;;kBA+CV,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,KAAK,KAAK,CAAC,SAAS;;;CA6BlE,CAAC"}
|