@texturehq/edges 1.13.2 → 1.14.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/dist/components.manifest.json +104 -5
- package/dist/index.cjs +8 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +383 -11
- package/dist/index.d.ts +383 -11
- package/dist/index.js +8 -8
- package/dist/index.js.map +1 -1
- package/dist/{server-BV15KAF4.d.cts → server-v2FT_HvE.d.cts} +40 -4
- package/dist/{server-BV15KAF4.d.ts → server-v2FT_HvE.d.ts} +40 -4
- package/dist/server.cjs +1 -1
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/styles.css +91 -5
- package/dist/utilities.manifest.json +16 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { Key, ValidationResult, BreadcrumbProps, BreadcrumbsProps, ButtonProps a
|
|
|
2
2
|
export { BreadcrumbProps, BreadcrumbsProps, DialogTrigger } from 'react-aria-components';
|
|
3
3
|
import * as React$1 from 'react';
|
|
4
4
|
import React__default, { RefObject, HTMLAttributes, ReactNode, ComponentProps, CSSProperties, ComponentType, Component, ErrorInfo } from 'react';
|
|
5
|
-
import { F as FieldValue, B as BooleanFormat, a as FormattedValue, C as CurrentFormat, D as DateFormat, b as DistanceFormat, E as EnergyFormat, c as CurrencyFormat, N as NumberFormat, P as PhoneFormat, d as PowerFormat, e as FormatterFunction, R as ResistanceFormat, T as TemperatureUnitString, f as TemperatureUnit, g as TemperatureFormat, h as TextFormat, V as VoltageFormat, i as FieldFormat, j as BaseDataPoint, I as Icon, Y as YFormatType,
|
|
6
|
-
export { A as ActionItem,
|
|
5
|
+
import { F as FieldValue, B as BooleanFormat, a as FormattedValue, C as CurrentFormat, D as DateFormat, b as DistanceFormat, E as EnergyFormat, c as CurrencyFormat, N as NumberFormat, P as PhoneFormat, d as PowerFormat, e as FormatterFunction, R as ResistanceFormat, T as TemperatureUnitString, f as TemperatureUnit, g as TemperatureFormat, h as TextFormat, V as VoltageFormat, i as FieldFormat, j as BaseDataPoint, I as Icon, k as BadgeProps, Y as YFormatType, l as TooltipData, m as IconName$2, n as DeviceState, G as GridState, o as ComponentFormatter, L as LayerSpec, p as CustomPinsSpec, q as GeoJsonLayerSpec, r as RasterLayerSpec, s as VectorLayerSpec, t as ClusteredVectorLayerSpec } from './server-v2FT_HvE.js';
|
|
6
|
+
export { A as ActionItem, v as ActionMenu, u as ActionMenuProps, x as AppShell, w as AppShellProps, z as Avatar, y as AvatarProps, H as Badge, aH as BaseFormat, ao as ChartContext, aq as ChartMargin, O as CodeEditor, J as CodeEditorProps, K as CodeLanguage, M as CodeTheme, $ as ColorSpec, aE as ComponentFormatOptions, aO as CurrentUnit, aR as CustomFormat, S as DateField, Q as DateFieldProps, aK as DateFormatStyle, aQ as DistanceUnit, aL as EnergyUnit, W as FileUpload, U as FileUploadProps, X as Heading, a7 as InteractiveMap, a0 as InteractiveMapProps, a1 as LayerFeature, a2 as LayerStyle, Z as Loader, _ as Logo, a8 as MAP_TYPES, a3 as MapPoint, ab as Meter, aa as MeterProps, aS as MetricFormat, aM as PowerUnit, a4 as RenderType, aP as ResistanceUnit, ad as RichTextEditor, ac as RichTextEditorProps, af as SegmentOption, ag as SegmentedControl, ae as SegmentedControlProps, aj as SideNav, ah as SideNavItem, ai as SideNavProps, a9 as StaticMap, a5 as StaticMapProps, ak as TextLink, aI as TextTransform, aJ as TextTruncatePosition, an as TooltipSeries, am as TopNav, al as TopNavProps, aN as VoltageUnit, av as YFormatSettings, a6 as ZoomStops, aU as activeDeviceStates, aw as clearColorCache, ax as createCategoryColorMap, ar as createXScale, as as createYScale, at as defaultMargin, aV as deviceStateLabels, aT as deviceStateMetricFormats, aF as formatComponentValue, ay as getContrastingTextColor, az as getDefaultChartColor, aA as getDefaultColors, aX as getDeviceStateDisplayLabel, aX as getDeviceStateLabel, aZ as getGridStateLabel, aB as getResolvedColor, aC as getThemeCategoricalColors, au as getYFormatSettings, aY as gridStateLabels, aW as isActiveDeviceState, aW as isActiveState, aD as isLightColor, ap as useChartContext, aG as useComponentFormatter } from './server-v2FT_HvE.js';
|
|
7
7
|
import { Virtualizer } from '@tanstack/react-virtual';
|
|
8
8
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
9
9
|
import { ScaleTime, ScaleLinear } from 'd3-scale';
|
|
@@ -109,6 +109,43 @@ declare const parseBoolean: (value: FieldValue) => boolean | null;
|
|
|
109
109
|
*/
|
|
110
110
|
declare const formatBoolean: (value: FieldValue, format: BooleanFormat) => FormattedValue;
|
|
111
111
|
|
|
112
|
+
/**
|
|
113
|
+
* Capacity formatting utilities for batteries and energy storage
|
|
114
|
+
*
|
|
115
|
+
* Domain-specific formatters for energy capacity (kWh) and power ratings (kW).
|
|
116
|
+
* Auto-scales to appropriate units (MWh, MW for large values).
|
|
117
|
+
*/
|
|
118
|
+
/**
|
|
119
|
+
* Format battery capacity (kWh)
|
|
120
|
+
*
|
|
121
|
+
* @param value - Capacity in kWh
|
|
122
|
+
* @param decimals - Number of decimal places (default: 1)
|
|
123
|
+
* @returns Formatted capacity string or null
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```typescript
|
|
127
|
+
* formatCapacity(13.5); // "13.5 kWh"
|
|
128
|
+
* formatCapacity(1500); // "1.5 MWh"
|
|
129
|
+
* formatCapacity(null); // null
|
|
130
|
+
* ```
|
|
131
|
+
*/
|
|
132
|
+
declare function formatCapacity(value: number | null | undefined, decimals?: number): string | null;
|
|
133
|
+
/**
|
|
134
|
+
* Format power rating (kW)
|
|
135
|
+
*
|
|
136
|
+
* @param value - Power rating in kW
|
|
137
|
+
* @param decimals - Number of decimal places (default: 1)
|
|
138
|
+
* @returns Formatted power rating string or null
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```typescript
|
|
142
|
+
* formatPowerRating(5.2); // "5.2 kW"
|
|
143
|
+
* formatPowerRating(2500); // "2.5 MW"
|
|
144
|
+
* formatPowerRating(null); // null
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
declare function formatPowerRating(value: number | null | undefined, decimals?: number): string | null;
|
|
148
|
+
|
|
112
149
|
/**
|
|
113
150
|
* Electrical current formatting utilities (flow of electric charge)
|
|
114
151
|
*/
|
|
@@ -1801,6 +1838,35 @@ interface ConfirmProps {
|
|
|
1801
1838
|
*/
|
|
1802
1839
|
declare function Confirm({ isOpen, onClose, onConfirm, title, message, confirmLabel, cancelLabel, confirmVariant, isDestructive, isLoading, maxWidth, minWidth, }: ConfirmProps): react_jsx_runtime.JSX.Element;
|
|
1803
1840
|
|
|
1841
|
+
interface ConnectionStatusBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
1842
|
+
/** Whether the device is currently connected */
|
|
1843
|
+
isConnected: boolean;
|
|
1844
|
+
/** Timestamp when the device last connected */
|
|
1845
|
+
connectedAt?: Date | string | null;
|
|
1846
|
+
/** Timestamp when the device disconnected */
|
|
1847
|
+
disconnectedAt?: Date | string | null;
|
|
1848
|
+
/** Show timestamp below the status */
|
|
1849
|
+
showTimestamp?: boolean;
|
|
1850
|
+
/** Loading state */
|
|
1851
|
+
isLoading?: boolean;
|
|
1852
|
+
}
|
|
1853
|
+
/**
|
|
1854
|
+
* ConnectionStatusBadge
|
|
1855
|
+
*
|
|
1856
|
+
* Displays device connection status with optional timestamps.
|
|
1857
|
+
* - Green "Connected" badge with pulsing dot
|
|
1858
|
+
* - Gray "Disconnected" badge with duration offline
|
|
1859
|
+
* - Auto-calculates "offline for 2 hours" type strings
|
|
1860
|
+
*
|
|
1861
|
+
* @example
|
|
1862
|
+
* ```tsx
|
|
1863
|
+
* <ConnectionStatusBadge isConnected={true} />
|
|
1864
|
+
* <ConnectionStatusBadge isConnected={false} disconnectedAt={new Date()} showTimestamp />
|
|
1865
|
+
* <ConnectionStatusBadge isConnected={true} connectedAt={new Date()} />
|
|
1866
|
+
* ```
|
|
1867
|
+
*/
|
|
1868
|
+
declare function ConnectionStatusBadge({ isConnected, connectedAt, disconnectedAt, showTimestamp, isLoading, size, shape, ...badgeProps }: ConnectionStatusBadgeProps): react_jsx_runtime.JSX.Element;
|
|
1869
|
+
|
|
1804
1870
|
interface CopyToClipboardProps {
|
|
1805
1871
|
/**
|
|
1806
1872
|
* The value to copy to clipboard. If not provided, will use the text content of children
|
|
@@ -2259,7 +2325,7 @@ declare function SearchControl({ value, onChange, onClear, placeholder, size, cl
|
|
|
2259
2325
|
type SortDirection = "asc" | "desc";
|
|
2260
2326
|
type CellAlignment = "left" | "center" | "right";
|
|
2261
2327
|
type TableDensity = "compact" | "default" | "relaxed";
|
|
2262
|
-
type CellEmphasis = "high" | "normal" | "low";
|
|
2328
|
+
type CellEmphasis = "strong" | "high" | "normal" | "low";
|
|
2263
2329
|
type LinkBehavior = "none" | "hover" | "visible";
|
|
2264
2330
|
type TableLayout = "auto" | "fixed" | "responsive";
|
|
2265
2331
|
type TableWidth = "full" | "auto" | "contained";
|
|
@@ -2367,6 +2433,7 @@ interface BooleanCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2367
2433
|
showFalse?: boolean;
|
|
2368
2434
|
align?: "left" | "center" | "right";
|
|
2369
2435
|
emphasis?: CellEmphasis;
|
|
2436
|
+
className?: string;
|
|
2370
2437
|
}
|
|
2371
2438
|
/**
|
|
2372
2439
|
* BooleanCell
|
|
@@ -2374,7 +2441,7 @@ interface BooleanCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2374
2441
|
* DataTable cell component for displaying boolean values.
|
|
2375
2442
|
* Supports multiple display formats including icons, text, or badges with customizable true/false representations.
|
|
2376
2443
|
*/
|
|
2377
|
-
declare function BooleanCell<T = any>({ value, context, format, trueText, falseText, trueIcon, falseIcon, showFalse, align, emphasis, }: BooleanCellProps<T>): react_jsx_runtime.JSX.Element | null;
|
|
2444
|
+
declare function BooleanCell<T = any>({ value, context, format, trueText, falseText, trueIcon, falseIcon, showFalse, align, emphasis, className, }: BooleanCellProps<T>): react_jsx_runtime.JSX.Element | null;
|
|
2378
2445
|
|
|
2379
2446
|
/**
|
|
2380
2447
|
* Get alignment classes for cell content
|
|
@@ -2431,6 +2498,7 @@ interface DateCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2431
2498
|
emphasis?: CellEmphasis;
|
|
2432
2499
|
href?: string | ((row: T) => string);
|
|
2433
2500
|
linkBehavior?: LinkBehavior;
|
|
2501
|
+
className?: string;
|
|
2434
2502
|
}
|
|
2435
2503
|
/**
|
|
2436
2504
|
* DateCell
|
|
@@ -2438,7 +2506,7 @@ interface DateCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2438
2506
|
* DataTable cell component for displaying date and time values.
|
|
2439
2507
|
* Supports multiple formats including relative time, with optional linking capabilities.
|
|
2440
2508
|
*/
|
|
2441
|
-
declare function DateCell<T = any>({ value, row, context, format, customFormat, emptyText, align, emphasis, href, linkBehavior, }: DateCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2509
|
+
declare function DateCell<T = any>({ value, row, context, format, customFormat, emptyText, align, emphasis, href, linkBehavior, className, }: DateCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2442
2510
|
|
|
2443
2511
|
interface NumberCellProps<T = any> extends CellComponentProps<T> {
|
|
2444
2512
|
format?: "number" | "currency" | "percent" | "compact";
|
|
@@ -2452,6 +2520,7 @@ interface NumberCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2452
2520
|
linkBehavior?: LinkBehavior;
|
|
2453
2521
|
showPositiveSign?: boolean;
|
|
2454
2522
|
colorCode?: boolean;
|
|
2523
|
+
className?: string;
|
|
2455
2524
|
}
|
|
2456
2525
|
/**
|
|
2457
2526
|
* NumberCell
|
|
@@ -2459,7 +2528,7 @@ interface NumberCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2459
2528
|
* DataTable cell component for displaying numeric values.
|
|
2460
2529
|
* Supports currency, percentage, and compact formatting with optional color coding for positive/negative values.
|
|
2461
2530
|
*/
|
|
2462
|
-
declare function NumberCell<T = any>({ value, row, context, format, decimals, prefix, suffix, emptyText, align, emphasis, href, linkBehavior, showPositiveSign, colorCode, }: NumberCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2531
|
+
declare function NumberCell<T = any>({ value, row, context, format, decimals, prefix, suffix, emptyText, align, emphasis, href, linkBehavior, showPositiveSign, colorCode, className, }: NumberCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2463
2532
|
|
|
2464
2533
|
interface SelectCellProps<T = any> extends CellComponentProps<T> {
|
|
2465
2534
|
isSelected?: boolean;
|
|
@@ -2481,9 +2550,13 @@ interface TextCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2481
2550
|
emptyText?: string;
|
|
2482
2551
|
href?: string | ((row: T) => string);
|
|
2483
2552
|
linkBehavior?: LinkBehavior;
|
|
2553
|
+
/** Color variant for links (matches TextLink variants) */
|
|
2554
|
+
linkVariant?: "default" | "brand" | "muted" | "unstyled";
|
|
2555
|
+
/** Text emphasis (use "strong" for bold) */
|
|
2484
2556
|
emphasis?: CellEmphasis;
|
|
2485
2557
|
truncate?: boolean;
|
|
2486
2558
|
align?: "left" | "center" | "right";
|
|
2559
|
+
className?: string;
|
|
2487
2560
|
}
|
|
2488
2561
|
/**
|
|
2489
2562
|
* TextCell
|
|
@@ -2491,7 +2564,7 @@ interface TextCellProps<T = any> extends CellComponentProps<T> {
|
|
|
2491
2564
|
* DataTable cell component for displaying text content.
|
|
2492
2565
|
* Supports prefixes, suffixes, truncation, and optional linking with customizable emphasis levels.
|
|
2493
2566
|
*/
|
|
2494
|
-
declare function TextCell<T = any>({ value, row, context, prefix, suffix, emptyText, href, linkBehavior, emphasis, truncate, align, }: TextCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2567
|
+
declare function TextCell<T = any>({ value, row, context, prefix, suffix, emptyText, href, linkBehavior, linkVariant, emphasis, truncate, align, className, }: TextCellProps<T>): react_jsx_runtime.JSX.Element;
|
|
2495
2568
|
|
|
2496
2569
|
/**
|
|
2497
2570
|
* DataTable
|
|
@@ -2531,6 +2604,196 @@ interface DateRangePickerProps<T extends DateValue> extends DateRangePickerProps
|
|
|
2531
2604
|
}
|
|
2532
2605
|
declare function DateRangePicker<T extends DateValue>({ label, description, errorMessage, ...props }: DateRangePickerProps<T>): react_jsx_runtime.JSX.Element;
|
|
2533
2606
|
|
|
2607
|
+
type HealthStatus = "healthy" | "warning" | "error" | "unknown";
|
|
2608
|
+
interface DeviceHealthBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
2609
|
+
/** Health status of the device */
|
|
2610
|
+
status: HealthStatus;
|
|
2611
|
+
/** Number of active alerts */
|
|
2612
|
+
alertCount?: number;
|
|
2613
|
+
/** Show alert count in the badge */
|
|
2614
|
+
showCount?: boolean;
|
|
2615
|
+
/** Loading state */
|
|
2616
|
+
isLoading?: boolean;
|
|
2617
|
+
}
|
|
2618
|
+
/**
|
|
2619
|
+
* DeviceHealthBadge
|
|
2620
|
+
*
|
|
2621
|
+
* Displays device health status with optional alert counts.
|
|
2622
|
+
* Maps health status to feedback colors (success/warning/error).
|
|
2623
|
+
* Pulsing dot for warning/error states.
|
|
2624
|
+
*
|
|
2625
|
+
* @example
|
|
2626
|
+
* ```tsx
|
|
2627
|
+
* <DeviceHealthBadge status="healthy" />
|
|
2628
|
+
* <DeviceHealthBadge status="warning" alertCount={2} showCount />
|
|
2629
|
+
* <DeviceHealthBadge status="error" alertCount={5} showCount />
|
|
2630
|
+
* ```
|
|
2631
|
+
*/
|
|
2632
|
+
declare function DeviceHealthBadge({ status, alertCount, showCount, isLoading, size, shape, ...badgeProps }: DeviceHealthBadgeProps): react_jsx_runtime.JSX.Element;
|
|
2633
|
+
|
|
2634
|
+
/**
|
|
2635
|
+
* Device type classification
|
|
2636
|
+
*/
|
|
2637
|
+
type DeviceType = "battery" | "charger" | "thermostat" | "inverter" | "vehicle" | "meter" | "gateway" | "other" | "unknown";
|
|
2638
|
+
|
|
2639
|
+
interface DeviceMetaDisplayProps {
|
|
2640
|
+
/** Device manufacturer name */
|
|
2641
|
+
manufacturer: string;
|
|
2642
|
+
/** Device model */
|
|
2643
|
+
model: string;
|
|
2644
|
+
/** Device serial number (optional) */
|
|
2645
|
+
serialNumber?: string;
|
|
2646
|
+
/** URL to manufacturer logo */
|
|
2647
|
+
logoUrl?: string;
|
|
2648
|
+
/** Device type (for fallback icon) */
|
|
2649
|
+
deviceType: DeviceType;
|
|
2650
|
+
/** Layout mode */
|
|
2651
|
+
layout?: "compact" | "full";
|
|
2652
|
+
/** Show manufacturer logo */
|
|
2653
|
+
showLogo?: boolean;
|
|
2654
|
+
/** Show device type icon */
|
|
2655
|
+
showDeviceTypeIcon?: boolean;
|
|
2656
|
+
/** Loading state */
|
|
2657
|
+
isLoading?: boolean;
|
|
2658
|
+
/** Additional CSS classes */
|
|
2659
|
+
className?: string;
|
|
2660
|
+
}
|
|
2661
|
+
/**
|
|
2662
|
+
* DeviceMetaDisplay
|
|
2663
|
+
*
|
|
2664
|
+
* Displays device metadata (manufacturer, model, serial number) with optional logo.
|
|
2665
|
+
* Supports compact layout for tables and full layout for headers/cards.
|
|
2666
|
+
* Falls back to device type icon if logo fails to load.
|
|
2667
|
+
*
|
|
2668
|
+
* @example
|
|
2669
|
+
* ```tsx
|
|
2670
|
+
* // Table cell
|
|
2671
|
+
* <DeviceMetaDisplay
|
|
2672
|
+
* manufacturer="Tesla"
|
|
2673
|
+
* model="Powerwall 2"
|
|
2674
|
+
* logoUrl="https://..."
|
|
2675
|
+
* deviceType="battery"
|
|
2676
|
+
* layout="compact"
|
|
2677
|
+
* />
|
|
2678
|
+
*
|
|
2679
|
+
* // Page header
|
|
2680
|
+
* <DeviceMetaDisplay
|
|
2681
|
+
* manufacturer="Tesla"
|
|
2682
|
+
* model="Powerwall 2"
|
|
2683
|
+
* serialNumber="TG123456789"
|
|
2684
|
+
* logoUrl="https://..."
|
|
2685
|
+
* deviceType="battery"
|
|
2686
|
+
* layout="full"
|
|
2687
|
+
* showDeviceTypeIcon
|
|
2688
|
+
* />
|
|
2689
|
+
* ```
|
|
2690
|
+
*/
|
|
2691
|
+
declare function DeviceMetaDisplay({ manufacturer, model, serialNumber, logoUrl, deviceType, layout, showLogo, showDeviceTypeIcon, isLoading, className, }: DeviceMetaDisplayProps): react_jsx_runtime.JSX.Element;
|
|
2692
|
+
|
|
2693
|
+
interface DeviceStateBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
2694
|
+
/** The device state to display */
|
|
2695
|
+
state: DeviceState;
|
|
2696
|
+
/** Custom label override (defaults to auto-capitalized state name) */
|
|
2697
|
+
label?: string;
|
|
2698
|
+
/** Optional icon to display before the label */
|
|
2699
|
+
icon?: IconName$2;
|
|
2700
|
+
/** Loading state */
|
|
2701
|
+
isLoading?: boolean;
|
|
2702
|
+
/** Fixed width for column alignment (useful in tables) */
|
|
2703
|
+
fixedWidth?: boolean;
|
|
2704
|
+
}
|
|
2705
|
+
/**
|
|
2706
|
+
* DeviceStateBadge
|
|
2707
|
+
*
|
|
2708
|
+
* A specialized badge component for displaying device states with smart defaults.
|
|
2709
|
+
* Auto-enables pulsing dot for active states (charging, discharging, heat, cool, on).
|
|
2710
|
+
* Uses semantic device state colors from the theme.
|
|
2711
|
+
*
|
|
2712
|
+
* @example
|
|
2713
|
+
* ```tsx
|
|
2714
|
+
* <DeviceStateBadge state="charging" />
|
|
2715
|
+
* <DeviceStateBadge state="heat" label="Heating Mode" />
|
|
2716
|
+
* <DeviceStateBadge state="on" icon="Lightning" />
|
|
2717
|
+
* ```
|
|
2718
|
+
*/
|
|
2719
|
+
declare function DeviceStateBadge({ state, label, icon, isLoading, size, shape, dot, dotPulse, fixedWidth, className, ...badgeProps }: DeviceStateBadgeProps): react_jsx_runtime.JSX.Element;
|
|
2720
|
+
|
|
2721
|
+
interface DeviceStateWithMetricProps extends Pick<DeviceStateBadgeProps, "state" | "size" | "shape" | "icon"> {
|
|
2722
|
+
/** Custom label for the state badge */
|
|
2723
|
+
stateLabel?: string;
|
|
2724
|
+
/** The metric value to display */
|
|
2725
|
+
metric?: number | null;
|
|
2726
|
+
/** Formatter for the metric (uses FieldFormat system) */
|
|
2727
|
+
metricFormatter?: FieldFormat;
|
|
2728
|
+
/** Optional secondary state badge (e.g., grid status) */
|
|
2729
|
+
secondaryState?: DeviceState | GridState;
|
|
2730
|
+
/** Layout orientation */
|
|
2731
|
+
layout?: "horizontal" | "vertical";
|
|
2732
|
+
/** Loading state */
|
|
2733
|
+
isLoading?: boolean;
|
|
2734
|
+
/** Fixed width for column alignment (useful in tables) */
|
|
2735
|
+
fixedWidth?: boolean;
|
|
2736
|
+
/** Additional CSS classes */
|
|
2737
|
+
className?: string;
|
|
2738
|
+
}
|
|
2739
|
+
/**
|
|
2740
|
+
* DeviceStateWithMetric
|
|
2741
|
+
*
|
|
2742
|
+
* Combines a device state badge with a formatted metric display.
|
|
2743
|
+
* Uses the existing FieldFormat system for flexible metric formatting.
|
|
2744
|
+
* Supports horizontal layout (for tables) and vertical layout (for cards/detail views).
|
|
2745
|
+
*
|
|
2746
|
+
* @example
|
|
2747
|
+
* ```tsx
|
|
2748
|
+
* // Battery: "Charging | 75%"
|
|
2749
|
+
* <DeviceStateWithMetric
|
|
2750
|
+
* state="charging"
|
|
2751
|
+
* metric={75}
|
|
2752
|
+
* metricFormatter={{ type: "number", decimals: 0, suffix: "%" }}
|
|
2753
|
+
* />
|
|
2754
|
+
*
|
|
2755
|
+
* // Inverter: "On | 5.2 kW"
|
|
2756
|
+
* <DeviceStateWithMetric
|
|
2757
|
+
* state="on"
|
|
2758
|
+
* metric={5200}
|
|
2759
|
+
* metricFormatter={{ type: "power", unit: "kW" }}
|
|
2760
|
+
* />
|
|
2761
|
+
*
|
|
2762
|
+
* // Thermostat: "Cool | 72°F"
|
|
2763
|
+
* <DeviceStateWithMetric
|
|
2764
|
+
* state="cool"
|
|
2765
|
+
* metric={72}
|
|
2766
|
+
* metricFormatter={{ type: "temperature", unit: "F" }}
|
|
2767
|
+
* />
|
|
2768
|
+
* ```
|
|
2769
|
+
*/
|
|
2770
|
+
declare function DeviceStateWithMetric({ state, stateLabel, metric, metricFormatter, secondaryState, layout, isLoading, size, shape, icon, fixedWidth, className, }: DeviceStateWithMetricProps): react_jsx_runtime.JSX.Element;
|
|
2771
|
+
|
|
2772
|
+
interface DeviceTypeIconProps {
|
|
2773
|
+
/** The device type to display */
|
|
2774
|
+
deviceType: DeviceType;
|
|
2775
|
+
/** Size of the icon (preset or custom pixel size) */
|
|
2776
|
+
size?: number | "sm" | "md" | "lg" | "xl";
|
|
2777
|
+
/** Show label below the icon */
|
|
2778
|
+
showLabel?: boolean;
|
|
2779
|
+
/** Additional CSS classes */
|
|
2780
|
+
className?: string;
|
|
2781
|
+
}
|
|
2782
|
+
/**
|
|
2783
|
+
* DeviceTypeIcon
|
|
2784
|
+
*
|
|
2785
|
+
* Displays a consistent icon for device types across the platform.
|
|
2786
|
+
* Maps device types to appropriate Phosphor icons with optional labels.
|
|
2787
|
+
*
|
|
2788
|
+
* @example
|
|
2789
|
+
* ```tsx
|
|
2790
|
+
* <DeviceTypeIcon deviceType="battery" size="md" />
|
|
2791
|
+
* <DeviceTypeIcon deviceType="thermostat" showLabel />
|
|
2792
|
+
* <DeviceTypeIcon deviceType="charger" size={32} />
|
|
2793
|
+
* ```
|
|
2794
|
+
*/
|
|
2795
|
+
declare function DeviceTypeIcon({ deviceType, size, showLabel, className, }: DeviceTypeIconProps): react_jsx_runtime.JSX.Element;
|
|
2796
|
+
|
|
2534
2797
|
type BaseDialogHeaderProps = {
|
|
2535
2798
|
title?: string;
|
|
2536
2799
|
onClose: () => void;
|
|
@@ -2649,6 +2912,37 @@ interface EmptyStateProps {
|
|
|
2649
2912
|
*/
|
|
2650
2913
|
declare function EmptyState({ icon, title, description, primaryAction, secondaryAction, actions, size, alignment, fullHeight, className, }: EmptyStateProps): react_jsx_runtime.JSX.Element;
|
|
2651
2914
|
|
|
2915
|
+
type EnrollmentStatus = "enrolled" | "eligible" | "not_eligible" | "pending" | "opted_out";
|
|
2916
|
+
interface EnrollmentStatusBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
2917
|
+
/** Enrollment status */
|
|
2918
|
+
status: EnrollmentStatus;
|
|
2919
|
+
/** Program name (shown in tooltip) */
|
|
2920
|
+
programName?: string;
|
|
2921
|
+
/** Loading state */
|
|
2922
|
+
isLoading?: boolean;
|
|
2923
|
+
}
|
|
2924
|
+
/**
|
|
2925
|
+
* EnrollmentStatusBadge
|
|
2926
|
+
*
|
|
2927
|
+
* Displays device enrollment status for programs.
|
|
2928
|
+
* Color-coded status with optional program name in tooltip.
|
|
2929
|
+
*
|
|
2930
|
+
* Status mapping:
|
|
2931
|
+
* - enrolled → success (green)
|
|
2932
|
+
* - eligible → info (blue)
|
|
2933
|
+
* - pending → warning (yellow)
|
|
2934
|
+
* - not_eligible → neutral (gray)
|
|
2935
|
+
* - opted_out → neutral (gray)
|
|
2936
|
+
*
|
|
2937
|
+
* @example
|
|
2938
|
+
* ```tsx
|
|
2939
|
+
* <EnrollmentStatusBadge status="enrolled" programName="Demand Response Q4" />
|
|
2940
|
+
* <EnrollmentStatusBadge status="eligible" />
|
|
2941
|
+
* <EnrollmentStatusBadge status="pending" />
|
|
2942
|
+
* ```
|
|
2943
|
+
*/
|
|
2944
|
+
declare function EnrollmentStatusBadge({ status, programName, isLoading, size, shape, ...badgeProps }: EnrollmentStatusBadgeProps): react_jsx_runtime.JSX.Element;
|
|
2945
|
+
|
|
2652
2946
|
interface Props {
|
|
2653
2947
|
children: ReactNode;
|
|
2654
2948
|
fallback?: ReactNode;
|
|
@@ -2871,6 +3165,32 @@ declare function Input({ size, isInvalid, isDisabled, isFocused, transparent, cl
|
|
|
2871
3165
|
*/
|
|
2872
3166
|
declare function FieldGroup(props: FieldGroupProps): react_jsx_runtime.JSX.Element;
|
|
2873
3167
|
|
|
3168
|
+
interface FirmwareVersionBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
3169
|
+
/** Firmware version string */
|
|
3170
|
+
version: string;
|
|
3171
|
+
/** Whether this is the latest version */
|
|
3172
|
+
isLatest?: boolean;
|
|
3173
|
+
/** Whether an update is available */
|
|
3174
|
+
updateAvailable?: boolean;
|
|
3175
|
+
/** Loading state */
|
|
3176
|
+
isLoading?: boolean;
|
|
3177
|
+
}
|
|
3178
|
+
/**
|
|
3179
|
+
* FirmwareVersionBadge
|
|
3180
|
+
*
|
|
3181
|
+
* Displays firmware version with update status indicators.
|
|
3182
|
+
* Green indicator if latest, orange if update available.
|
|
3183
|
+
* Compact display suitable for tables.
|
|
3184
|
+
*
|
|
3185
|
+
* @example
|
|
3186
|
+
* ```tsx
|
|
3187
|
+
* <FirmwareVersionBadge version="1.2.3" isLatest />
|
|
3188
|
+
* <FirmwareVersionBadge version="1.1.0" updateAvailable />
|
|
3189
|
+
* <FirmwareVersionBadge version="2.0.0-beta" />
|
|
3190
|
+
* ```
|
|
3191
|
+
*/
|
|
3192
|
+
declare function FirmwareVersionBadge({ version, isLatest, updateAvailable, isLoading, size, shape, ...badgeProps }: FirmwareVersionBadgeProps): react_jsx_runtime.JSX.Element;
|
|
3193
|
+
|
|
2874
3194
|
/**
|
|
2875
3195
|
* Form
|
|
2876
3196
|
*
|
|
@@ -2958,6 +3278,34 @@ declare namespace Grid {
|
|
|
2958
3278
|
}
|
|
2959
3279
|
declare function GridItem({ span, className, children, }: GridItemProps): react_jsx_runtime.JSX.Element;
|
|
2960
3280
|
|
|
3281
|
+
interface GridStateBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
|
|
3282
|
+
/** The grid state to display */
|
|
3283
|
+
state: GridState;
|
|
3284
|
+
/** Custom label override (defaults to auto-capitalized state name) */
|
|
3285
|
+
label?: string;
|
|
3286
|
+
/** Show directional icon (arrow up for exporting, arrow down for importing) */
|
|
3287
|
+
showIcon?: boolean;
|
|
3288
|
+
/** Loading state */
|
|
3289
|
+
isLoading?: boolean;
|
|
3290
|
+
/** Fixed width for column alignment (useful in tables) */
|
|
3291
|
+
fixedWidth?: boolean;
|
|
3292
|
+
}
|
|
3293
|
+
/**
|
|
3294
|
+
* GridStateBadge
|
|
3295
|
+
*
|
|
3296
|
+
* A specialized badge component for displaying grid states (importing, exporting).
|
|
3297
|
+
* Optionally shows directional icons to indicate power flow direction.
|
|
3298
|
+
* Uses semantic grid state colors from the theme.
|
|
3299
|
+
*
|
|
3300
|
+
* @example
|
|
3301
|
+
* ```tsx
|
|
3302
|
+
* <GridStateBadge state="importing" />
|
|
3303
|
+
* <GridStateBadge state="exporting" showIcon />
|
|
3304
|
+
* <GridStateBadge state="importing" label="Grid Import" />
|
|
3305
|
+
* ```
|
|
3306
|
+
*/
|
|
3307
|
+
declare function GridStateBadge({ state, label, showIcon, isLoading, size, shape, fixedWidth, className, ...badgeProps }: GridStateBadgeProps): react_jsx_runtime.JSX.Element;
|
|
3308
|
+
|
|
2961
3309
|
interface InfiniteScrollIndicatorProps {
|
|
2962
3310
|
/** Current loading state - determines which indicator to show */
|
|
2963
3311
|
state: "loading-more";
|
|
@@ -4168,14 +4516,14 @@ declare function Aside({ className, children }: SplitPanePanelProps): react_jsx_
|
|
|
4168
4516
|
* Displays formatted statistics with status indicators and optional copy functionality.
|
|
4169
4517
|
* Uses the unified formatting system for consistent data presentation.
|
|
4170
4518
|
*/
|
|
4171
|
-
type StatTone = "neutral" | "success" | "warning" | "error" | "info";
|
|
4519
|
+
type StatTone$1 = "neutral" | "success" | "warning" | "error" | "info";
|
|
4172
4520
|
type StatAlign = "start" | "end";
|
|
4173
4521
|
type StatLayout = "one-column" | "two-column";
|
|
4174
4522
|
type StatValue = FieldValue;
|
|
4175
4523
|
type StatFormatter = ComponentFormatter;
|
|
4176
4524
|
interface StatThreshold {
|
|
4177
4525
|
when: (value: StatValue) => boolean;
|
|
4178
|
-
tone: StatTone;
|
|
4526
|
+
tone: StatTone$1;
|
|
4179
4527
|
}
|
|
4180
4528
|
interface StatItem {
|
|
4181
4529
|
/** Unique identifier */
|
|
@@ -4189,7 +4537,7 @@ interface StatItem {
|
|
|
4189
4537
|
/** Additional metadata below value */
|
|
4190
4538
|
meta?: React__default.ReactNode;
|
|
4191
4539
|
/** Explicit tone/status color */
|
|
4192
|
-
tone?: StatTone;
|
|
4540
|
+
tone?: StatTone$1;
|
|
4193
4541
|
/** Data-driven tone based on value */
|
|
4194
4542
|
thresholds?: StatThreshold[];
|
|
4195
4543
|
/** Enable copy to clipboard */
|
|
@@ -4506,4 +4854,28 @@ interface ColorModeProviderProps {
|
|
|
4506
4854
|
}
|
|
4507
4855
|
declare const ColorModeProvider: React.FC<ColorModeProviderProps>;
|
|
4508
4856
|
|
|
4509
|
-
|
|
4857
|
+
/**
|
|
4858
|
+
* Device state helper utilities
|
|
4859
|
+
*
|
|
4860
|
+
* Pure utility functions for working with device states.
|
|
4861
|
+
* These help Layer 2 & 3 without adding business logic to components.
|
|
4862
|
+
*/
|
|
4863
|
+
/**
|
|
4864
|
+
* Stat tone type (matches StatList component)
|
|
4865
|
+
*/
|
|
4866
|
+
type StatTone = "success" | "warning" | "error" | "info" | "neutral";
|
|
4867
|
+
/**
|
|
4868
|
+
* Map device state to StatList tone for conditional styling
|
|
4869
|
+
*
|
|
4870
|
+
* @param state - Device state
|
|
4871
|
+
* @returns Appropriate tone for StatList component
|
|
4872
|
+
*
|
|
4873
|
+
* @example
|
|
4874
|
+
* ```tsx
|
|
4875
|
+
* const tone = getStateTone("charging"); // "success"
|
|
4876
|
+
* <StatList items={[...]} tone={tone} />
|
|
4877
|
+
* ```
|
|
4878
|
+
*/
|
|
4879
|
+
declare function getStateTone(state: DeviceState): StatTone;
|
|
4880
|
+
|
|
4881
|
+
export { type Action, ActionCell, type ActionCellProps, ActivityFeed, ActivityFeedGroup, type ActivityFeedGroupProps, type ActivityFeedProps, type ActivityFeedSize, type ActivityFeedVariant, ActivityItem, type ActivityItemProps, type ActivityItemSurface, type ActivityItemTone, Alert, type AlertProps, AreaSeries, AutoMobileRenderer, Autocomplete, BREAKPOINTS, BadgeProps, BarSeries, BaseDataPoint, type BaseInputProps, type BaseProps, BooleanCell, type BooleanCellProps, BooleanFormat, BreadcrumbItem, type BreadcrumbItemProps, Breadcrumbs, type Breakpoint, type BreakpointState, Button, Calendar, Card, CardContent, type CardContentProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, CardMedia, type CardMediaProps, CardMobileRenderer, type CardProps, type CardVariant, type CellAlignment, type CellComponent, type CellComponentProps, type CellContext, type CellEmphasis, ChartAxis, ChartBottomBar, ChartContainer, type ChartExportMetadata, ChartTooltip, Checkbox, CheckboxGroup, Chip, ClearButton, Collapse, CollapseContent, type CollapseContentProps, type CollapseDensity, CollapseHeader, type CollapseHeaderProps, CollapseItem, type CollapseItemProps, type CollapseProps, type CollapseVariant, ColorModeProvider, type Column, ComponentFormatter, Confirm, type ConfirmProps, ConnectionStatusBadge, type ConnectionStatusBadgeProps, CopyToClipboard, CurrencyFormat, CurrentFormat, CustomPinsSpec, DataControls, type Filter as DataControlsFilter, type DataControlsProps, type SortOption as DataControlsSortOption, DataTable, type DataTableProps, DateCell, type DateCellProps, DateFormat, DateRangePicker, Description, type DescriptionProps, DeviceHealthBadge, type DeviceHealthBadgeProps, DeviceMetaDisplay, type DeviceMetaDisplayProps, DeviceState, DeviceStateBadge, type DeviceStateBadgeProps, DeviceStateWithMetric, type DeviceStateWithMetricProps, type DeviceType, DeviceTypeIcon, type DeviceTypeIconProps, Dialog, type DialogAction, type DialogFooterConfig, DialogHeader, type DialogHeaderConfig, type DialogHeaderProps, type DialogProps, DistanceFormat, Drawer, type DrawerProps, EmptyState, type EmptyStateAction, type EmptyStateAlignment, type EmptyStateProps, type EmptyStateSize, EnergyFormat, type EnrollmentStatus, EnrollmentStatusBadge, type EnrollmentStatusBadgeProps, ErrorBoundary, type ExportType, type FacetConfig, type FacetCounts, type FacetType, FieldError, type FieldErrorProps, FieldFormat, FieldGroup, type FieldGroupProps, FieldValue, type FilterChip, FilterChips, type FilterChipsProps, type FilterCondition, FilterDialog, type FilterDialogProps, type FilterGroup, type FilterOperator, type FilterState, FirmwareVersionBadge, type FirmwareVersionBadgeProps, Form, FormatRegistry, FormattedValue, FormatterFunction, GeoJsonLayerSpec, Grid, type GridAlign, type GridCols, type GridFlow, type GridGap, type GridItemProps, type GridJustify, type GridProps, type GridSpan, GridState, GridStateBadge, type GridStateBadgeProps, type HealthStatus, Icon, InfiniteScrollIndicator, type InfiniteScrollIndicatorProps, Input, type InputProps, type InputStyleProps, InputWrapper, Kpi, KpiGroup, type KpiGroupAlign, type KpiGroupCols, type KpiGroupGap, type KpiGroupProps, type KpiOrientation, type KpiProps, type KpiSize, type KpiStatus, Label, type LabelProps, LayerSpec, LineSeries, type LinkBehavior, List, ListBox, ListBoxItem, ListItem, type ListItemProps, ListPane, type ListPaneProps, type ListProps, type LoadingState, type MobileBreakpoint, type MobileConfig, type MobileRenderer, ModalBackdrop, type ModalBackdropProps, Notice, NoticeContainer, type NoticeContainerProps, type NoticeOptions, type NoticeProps, NoticeProvider, type NoticeProviderProps, type NoticeVariant, NumberCell, type NumberCellProps, NumberField, NumberFormat, type PageAsideProps, type PageBreadcrumbItem, type PageContentProps, type PageHeaderProps, PageLayout, type PageLayoutProps, type PageScrollableContentProps, PhoneFormat, PlaceSearch, Popover, PowerFormat, ProgressBar, Radio, RadioCard, RadioCardGroup, type RadioCardGroupProps, type RadioCardProps, RadioGroup, RangeCalendar, RasterLayerSpec, ResistanceFormat, type ResponsiveValue, ResultsCount, type ResultsCountProps, SKELETON_SIZES, type SearchConfig, SearchControl, type SearchControlProps, Section, SectionNav, type SectionNavItem, type SectionNavOrientation, type SectionNavProps, type SectionProps, type SectionSpacing, type SectionVariant, Select, SelectCell, type SelectCellProps, Skeleton, Slider, type SortConfig, SortControl, type SortControlProps, type SortDirection, type SortState, SplitPane, type SplitPaneOrientation, type SplitPanePanelProps, type SplitPaneProps, type StatAlign, type StatFormatter, type StatItem, type StatLayout, StatList, type StatListProps, type StatThreshold, type StatTone$1 as StatTone, type StatValue, Switch, Tab, TabList, TabPanel, type TableDensity, type TableLayout, type TableWidth, Tabs, type TabsProps$1 as TabsProps, TemperatureFormat, TemperatureUnit, TemperatureUnitString, TextArea, TextAreaWithChips, TextCell, type TextCellProps, TextField, TextFormat, TimeField, ToggleButton, Tooltip, TooltipData, Tray, type TrayProps, type TrendPoint, type UseBreakpointReturn, type UseClientDataControlsOptions, type UseClientDataControlsResult, type UseDataControlsClientOptions, type UseDataControlsOptions, type UseDataControlsResult, type UseDataControlsServerOptions, type UseInfiniteScrollOptions, type UseInfiniteScrollReturn, type UseServerDataControlsOptions, VectorLayerSpec, VoltageFormat, YFormatType, addFilterCondition, autoScaleCurrent, autoScaleDistance, autoScaleEnergy, autoScalePower, autoScaleResistance, autoScaleVoltage, camelCaseToWords, capitalize, celsiusToFahrenheit, celsiusToKelvin, centimetersToInches, createEmptyFilter, createFilter, createFilters, createFormat, enumToSentenceCase, exportChart, fahrenheitToCelsius, fahrenheitToKelvin, feetToMeters, feetToMiles, filterToChips, formatBoolean, formatCapacity, formatCurrency, formatCurrent, formatDate, formatDistance, formatEmptyValue, formatEnergy, formatFieldValue, formatInternationalPhone, formatNumber, formatPhone, formatPhoneNumber, formatPower, formatPowerRating, formatResistance, formatTemperature, formatText, formatUSPhone, formatVoltage, getBadgeClasses, getBooleanBadgeVariant, getCellAlignmentClasses, getCellContainerClasses, getCellTextClasses, getDateParts, getExportFormatName, getFieldGroupStyles, getFilterFields, getInputBackgroundStyles, getInputBaseStyles, getInputStateStyles, getNumericColorClasses, getSkeletonSize, getStateTone, inchesToCentimeters, isCustomPinsLayer, isExportSupported, isFilterEmpty, isGeoJsonLayer, isNil, isRasterLayer, isVectorLayer, kelvinToCelsius, kelvinToFahrenheit, kilometersToMiles, layer, metersToFeet, metersToMiles, metersToYards, milesToFeet, milesToKilometers, milesToMeters, parseBoolean, removeFilterCondition, resolveValue, snakeCaseToWords, temperatureStringToSymbol, toA, toActiveInactive, toAmps, toBoolean, toCelsius, toCentimeters, toCheckmark, toCompactNumber, toCurrency, toCustomDateFormat, toDateString, toEnabledDisabled, toFahrenheit, toFeet, toFloat, toFormattedNumber, toFullDateTime, toGW, toGWh, toGigawatts, toISOString, toInches, toInteger, toKA, toKV, toKW, toKelvin, toKiloamps, toKilohms, toKilometers, toKilovolts, toKilowatts, toLowerCase, toMA, toMV, toMW, toMWh, toMegawatts, toMegohms, toMeters, toMiles, toMilliamps, toMillimeters, toMilliohms, toMillivolts, toNauticalMiles, toOhms, toOnOff, toPercentage, toRelativeTime, toScientificNotation, toSecret, toSentenceCase, toTemperature, toTitleCase, toTrueFalse, toUpperCase, toV, toVolts, toW, toWatts, toWh, toYards, tokWh, truncateEnd, truncateMiddle, truncateStart, ucFirst, useBreakpoint, useClientDataControls, useColorMode, useDataControls, useDebounce, useInfiniteScroll, useInputFocus, useLocalStorage, useMediaQuery, useNotice, useServerDataControls, yardsToMeters };
|