@meshmakers/octo-meshboard 3.4.360 → 3.4.380
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/package.json
CHANGED
|
@@ -312,8 +312,10 @@ interface PersistentQueryDataSource extends WidgetDataSource {
|
|
|
312
312
|
/**
|
|
313
313
|
* The canonical aggregation functions a resolution-aware series can be reduced with
|
|
314
314
|
* (AB#4290). Values match the backend `CkRollupFunction` / `AggregationType` GraphQL enums.
|
|
315
|
+
* `TIME_WEIGHTED_AVG` (AB#4336) reduces an event-based rollup to its LOCF-weighted duty cycle;
|
|
316
|
+
* the series resolver matches TWA rollups (incl. cascades) the same way it matches the others.
|
|
315
317
|
*/
|
|
316
|
-
type SeriesAggregationFunction = 'AVG' | 'MIN' | 'MAX' | 'SUM' | 'COUNT';
|
|
318
|
+
type SeriesAggregationFunction = 'AVG' | 'MIN' | 'MAX' | 'SUM' | 'COUNT' | 'TIME_WEIGHTED_AVG';
|
|
317
319
|
/**
|
|
318
320
|
* Aggregation types supported
|
|
319
321
|
*/
|
|
@@ -687,6 +689,12 @@ interface BarChartWidgetConfig extends WidgetConfig {
|
|
|
687
689
|
filters?: WidgetFilterConfig[];
|
|
688
690
|
/** Suffix appended to data labels (e.g. ' kW') */
|
|
689
691
|
dataLabelSuffix?: string;
|
|
692
|
+
/**
|
|
693
|
+
* Factor every raw value is multiplied with before charting (default 1). Lets a widget render
|
|
694
|
+
* engine units in display units without a second query — e.g. 1/3600000 turns the
|
|
695
|
+
* millisecond StateDuration aggregation (AB#4336) into hours, 0.001 turns Wh into kWh.
|
|
696
|
+
*/
|
|
697
|
+
valueScale?: number;
|
|
690
698
|
/** Threshold-based per-bar coloring. Thresholds sorted ascending by value. */
|
|
691
699
|
colorThresholds?: BarChartColorThreshold[];
|
|
692
700
|
/** Default bar color when value exceeds all thresholds */
|
|
@@ -5882,6 +5890,27 @@ declare class EntitySelectorToolbarComponent implements OnChanges {
|
|
|
5882
5890
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntitySelectorToolbarComponent, "mm-entity-selector-toolbar", never, { "entitySelectors": { "alias": "entitySelectors"; "required": false; }; }, { "entitySelected": "entitySelected"; "entityCleared": "entityCleared"; }, never, never, true, never>;
|
|
5883
5891
|
}
|
|
5884
5892
|
|
|
5893
|
+
/**
|
|
5894
|
+
* Presentation-side compact layout for the MeshBoard grid (AB#4353).
|
|
5895
|
+
*
|
|
5896
|
+
* The Kendo TileLayout renders its configured column count at any container
|
|
5897
|
+
* width — on a 390px phone a 6-column board yields ~42px columns and crushes
|
|
5898
|
+
* every widget. Below the breakpoints the board therefore re-renders with a
|
|
5899
|
+
* reduced column count and drops the persisted col/row anchors so CSS grid
|
|
5900
|
+
* auto-flow re-packs the widgets in the reading order of the configured
|
|
5901
|
+
* layout. The persisted board config is never modified; editing (drag/resize)
|
|
5902
|
+
* is only offered in the native tier.
|
|
5903
|
+
*/
|
|
5904
|
+
type MeshBoardCompactTier = 'none' | 'tablet' | 'phone';
|
|
5905
|
+
/** Display placement for one grid widget; col/row are undefined in compact tiers (auto-flow). */
|
|
5906
|
+
interface WidgetPlacement {
|
|
5907
|
+
widget: AnyWidgetConfig;
|
|
5908
|
+
col?: number;
|
|
5909
|
+
row?: number;
|
|
5910
|
+
colSpan: number;
|
|
5911
|
+
rowSpan: number;
|
|
5912
|
+
}
|
|
5913
|
+
|
|
5885
5914
|
interface WidgetPositionUpdate {
|
|
5886
5915
|
id: string;
|
|
5887
5916
|
title: string;
|
|
@@ -5977,6 +6006,15 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
|
|
|
5977
6006
|
protected readonly gridWidgets: _angular_core.Signal<AnyWidgetConfig[]>;
|
|
5978
6007
|
protected readonly hasGridWidgets: _angular_core.Signal<boolean>;
|
|
5979
6008
|
protected readonly canSave: _angular_core.Signal<boolean>;
|
|
6009
|
+
private readonly hostElement;
|
|
6010
|
+
private readonly ngZone;
|
|
6011
|
+
private resizeObserver?;
|
|
6012
|
+
private readonly containerWidth;
|
|
6013
|
+
protected readonly compactTier: _angular_core.Signal<MeshBoardCompactTier>;
|
|
6014
|
+
protected readonly displayColumns: _angular_core.Signal<number>;
|
|
6015
|
+
protected readonly displayAutoFlow: _angular_core.Signal<"column" | "row">;
|
|
6016
|
+
protected readonly canEditLayout: _angular_core.Signal<boolean>;
|
|
6017
|
+
protected readonly displayGridWidgets: _angular_core.Signal<WidgetPlacement[]>;
|
|
5980
6018
|
protected readonly isTimeFilterEnabled: _angular_core.Signal<boolean>;
|
|
5981
6019
|
protected readonly timeFilterConfig: _angular_core.Signal<_meshmakers_octo_meshboard.MeshBoardTimeFilterConfig | undefined>;
|
|
5982
6020
|
private readonly _urlTimeSelection;
|