@meshmakers/octo-meshboard 3.4.170 → 3.4.190

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
@@ -1,27 +1,27 @@
1
1
  {
2
2
  "name": "@meshmakers/octo-meshboard",
3
- "version": "3.4.170",
3
+ "version": "3.4.190",
4
4
  "peerDependencies": {
5
- "@angular/common": "^21.2.0",
6
- "@angular/core": "^21.2.0",
7
- "@angular/forms": "^21.2.0",
8
- "@angular/router": "^21.2.0",
5
+ "@angular/common": "^22.0.0",
6
+ "@angular/core": "^22.0.0",
7
+ "@angular/forms": "^22.0.0",
8
+ "@angular/router": "^22.0.0",
9
9
  "@meshmakers/octo-process-diagrams": "*",
10
10
  "@meshmakers/octo-services": "*",
11
11
  "@meshmakers/octo-ui": "*",
12
12
  "@meshmakers/shared-services": "*",
13
13
  "@meshmakers/shared-ui": "*",
14
- "@progress/kendo-angular-buttons": "^23.2.0",
15
- "@progress/kendo-angular-charts": "^23.2.0",
16
- "@progress/kendo-angular-dialog": "^23.2.0",
17
- "@progress/kendo-angular-dropdowns": "^23.2.0",
18
- "@progress/kendo-angular-gauges": "^23.2.0",
19
- "@progress/kendo-angular-grid": "^23.2.0",
20
- "@progress/kendo-angular-icons": "^23.2.0",
21
- "@progress/kendo-angular-inputs": "^23.2.0",
22
- "@progress/kendo-angular-label": "^23.2.0",
23
- "@progress/kendo-angular-layout": "^23.2.0",
24
- "apollo-angular": "^13.0.0"
14
+ "@progress/kendo-angular-buttons": "^24.1.0",
15
+ "@progress/kendo-angular-charts": "^24.1.0",
16
+ "@progress/kendo-angular-dialog": "^24.1.0",
17
+ "@progress/kendo-angular-dropdowns": "^24.1.0",
18
+ "@progress/kendo-angular-gauges": "^24.1.0",
19
+ "@progress/kendo-angular-grid": "^24.1.0",
20
+ "@progress/kendo-angular-icons": "^24.1.0",
21
+ "@progress/kendo-angular-inputs": "^24.1.0",
22
+ "@progress/kendo-angular-label": "^24.1.0",
23
+ "@progress/kendo-angular-layout": "^24.1.0",
24
+ "apollo-angular": "^14.0.0"
25
25
  },
26
26
  "dependencies": {
27
27
  "tslib": "^2.8.1"
@@ -1,6 +1,6 @@
1
1
  import { ProcessWidgetSpecificConfig } from '@meshmakers/octo-process-diagrams';
2
2
  import * as _angular_core from '@angular/core';
3
- import { Signal, AfterViewInit, OnChanges, EventEmitter, SimpleChanges, Type, OnInit, OnDestroy, EnvironmentProviders, InjectionToken } from '@angular/core';
3
+ import { Signal, AfterViewInit, OnChanges, EventEmitter, SimpleChanges, Type, OnDestroy, OnInit, EnvironmentProviders, InjectionToken } from '@angular/core';
4
4
  import { ControlValueAccessor } from '@angular/forms';
5
5
  import * as i1 from '@meshmakers/shared-ui';
6
6
  import { EntitySelectDialogDataSource, ColumnDefinition, DialogFetchOptions, DialogFetchResult, EntitySelectInputComponent, TimeRange, FetchDataOptions, FetchResultTyped, TableColumn as TableColumn$1, HasUnsavedChanges, TimeRangePickerLabels, TimeRangeSelection as TimeRangeSelection$1 } from '@meshmakers/shared-ui';
@@ -231,6 +231,13 @@ interface PersistentQueryDataSource extends WidgetDataSource {
231
231
  queryName?: string;
232
232
  /** Query family: 'runtime' or 'streamData'. Derived from queryCkTypeId when absent. */
233
233
  queryFamily?: QueryFamily;
234
+ /**
235
+ * Stream-data opt-out: when `true`, the MeshBoard time filter is NOT bound to
236
+ * the query's `streamDataArgs.from/.to`, so the persistent query's intrinsic
237
+ * time bounds win. Default (`false`/absent) auto-binds the active time filter.
238
+ * Ignored for runtime queries (they don't consume `streamDataArgs`).
239
+ */
240
+ ignoreTimeFilter?: boolean;
234
241
  }
235
242
  /**
236
243
  * Aggregation types supported
@@ -1759,6 +1766,19 @@ declare class MeshBoardStateService {
1759
1766
  * this helper currently returns UTC boundaries derived from the picker.
1760
1767
  */
1761
1768
  resolveCurrentTimeRange(): TimeRange | null;
1769
+ /**
1770
+ * Resolves the active time filter into stream-data `{from, to}` arguments for
1771
+ * a persistent-query widget. Centralizes the per-widget binding so every
1772
+ * stream-data consumer shares one implementation.
1773
+ *
1774
+ * Returns `undefined` (so the query's intrinsic bounds apply) when either:
1775
+ * - the widget opted out via `ignoreTimeFilter`, or
1776
+ * - no time filter is active / the selection is incomplete.
1777
+ */
1778
+ resolveStreamDataTimeArgs(ignoreTimeFilter?: boolean): {
1779
+ from: Date;
1780
+ to: Date;
1781
+ } | undefined;
1762
1782
  /**
1763
1783
  * Updates the time filter configuration.
1764
1784
  */
@@ -2358,15 +2378,32 @@ declare const DashboardGridService: typeof MeshBoardGridService;
2358
2378
  /**
2359
2379
  * Time-range and downsampling arguments for stream-data persistent queries.
2360
2380
  * Mirrors the GraphQL input `StreamDataArguments` so widgets can build it
2361
- * without importing generated DTO types directly. `queryMode` defaults to
2362
- * `DEFAULT` when not supplied — the backend resolver requires the field but
2363
- * the persistent query carries its own intrinsic mode that `arg` overrides.
2381
+ * without importing generated DTO types directly.
2382
+ *
2383
+ * Backend semantics (verified against StreamDataQueryDtoType.cs and
2384
+ * StreamDataVariantExecutor.cs as of 2026-06-24):
2385
+ * - `from` / `to` / `limit` override the persisted query's intrinsic values
2386
+ * when set (`execOverride?.From ?? simple.From` pattern in the resolver).
2387
+ * - `interval` is currently ignored by every variant; the downsampling path
2388
+ * derives `(to - from) / limit` itself.
2389
+ * - `queryMode` is **ignored on both persistent and transient dispatch** —
2390
+ * the variant (Simple / Aggregation / GroupingAggregation / Downsampling)
2391
+ * comes from the persisted entity's CK subtype or the transient query's
2392
+ * GraphQL sub-connection URL. We still emit it because the schema declares
2393
+ * `queryMode: QueryMode!` (NonNull); see backend cleanup issue.
2394
+ *
2395
+ * Don't pretend to override the mode from here — even if `queryMode: DOWNSAMPLING`
2396
+ * is set on a `SimpleSdQuery`, the backend still runs the simple variant.
2364
2397
  */
2365
2398
  interface StreamDataExecutionArgs {
2366
2399
  from?: Date | null;
2367
2400
  to?: Date | null;
2368
2401
  interval?: number | null;
2369
2402
  limit?: number | null;
2403
+ /**
2404
+ * Currently a no-op on the dispatch side; kept because the GraphQL input
2405
+ * schema marks `queryMode` non-null. Defaults to `Default`.
2406
+ */
2370
2407
  queryMode?: QueryModeDto;
2371
2408
  }
2372
2409
  interface QueryExecutionOptions {
@@ -2458,6 +2495,46 @@ declare class QueryExecutorService {
2458
2495
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<QueryExecutorService>;
2459
2496
  }
2460
2497
 
2498
+ /**
2499
+ * Manages a `setInterval` lifecycle for MeshBoard auto-refresh.
2500
+ *
2501
+ * Encapsulates the three things the consumer otherwise has to track manually:
2502
+ * - clearing the previous interval before starting a new one,
2503
+ * - skipping the restart when the same interval is already active, and
2504
+ * - pausing the timer on tab-hidden / resuming on visible.
2505
+ *
2506
+ * The service has no Angular signal or component dependency — it's a thin
2507
+ * stateful wrapper around `setInterval`, which lets it be unit-tested with
2508
+ * `jasmine.clock()` without standing up a TestBed.
2509
+ *
2510
+ * Provide at the component level (`providers: [AutoRefreshTimerService]`) so
2511
+ * each MeshBoard view gets its own timer instance; `ngOnDestroy` clears the
2512
+ * underlying interval automatically.
2513
+ */
2514
+ declare class AutoRefreshTimerService implements OnDestroy {
2515
+ private timerId;
2516
+ private activeSeconds;
2517
+ /**
2518
+ * Reconcile the timer to the requested state.
2519
+ *
2520
+ * - `seconds <= 0` OR `!isVisible` → stop any active timer.
2521
+ * - Timer already running at the requested interval → no-op (avoids a
2522
+ * stop/start ping that would reset the countdown to the next tick).
2523
+ * - Otherwise → stop the old timer, start a new one that calls `onTick`
2524
+ * every `seconds` seconds.
2525
+ */
2526
+ update(seconds: number, isVisible: boolean, onTick: () => void): void;
2527
+ /** Stops the active timer, if any. Safe to call when no timer is running. */
2528
+ stop(): void;
2529
+ /** True while an interval is active. */
2530
+ get isRunning(): boolean;
2531
+ /** The interval in seconds for the currently active timer (0 when stopped). */
2532
+ get intervalSeconds(): number;
2533
+ ngOnDestroy(): void;
2534
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AutoRefreshTimerService, never>;
2535
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AutoRefreshTimerService>;
2536
+ }
2537
+
2461
2538
  declare class EntityCardWidgetComponent implements DashboardWidget<EntityCardWidgetConfig, RuntimeEntityData>, OnInit, OnChanges {
2462
2539
  private readonly dataService;
2463
2540
  config: EntityCardWidgetConfig;
@@ -2613,6 +2690,7 @@ interface KpiConfigResult extends WidgetConfigResult {
2613
2690
  queryRtId?: string;
2614
2691
  queryName?: string;
2615
2692
  queryFamily?: QueryFamily;
2693
+ ignoreTimeFilter?: boolean;
2616
2694
  queryMode?: KpiQueryMode;
2617
2695
  queryValueField?: string;
2618
2696
  queryCategoryField?: string;
@@ -2660,6 +2738,7 @@ declare class KpiConfigDialogComponent implements OnInit {
2660
2738
  initialQueryRtId?: string;
2661
2739
  initialQueryName?: string;
2662
2740
  initialQueryFamily?: QueryFamily;
2741
+ initialIgnoreTimeFilter?: boolean;
2663
2742
  initialQueryMode?: KpiQueryMode;
2664
2743
  initialQueryValueField?: string;
2665
2744
  initialQueryCategoryField?: string;
@@ -2674,9 +2753,13 @@ declare class KpiConfigDialogComponent implements OnInit {
2674
2753
  isLoadingInitial: boolean;
2675
2754
  isCountMode: boolean;
2676
2755
  selectedPersistentQuery: PersistentQueryItem | null;
2756
+ /** Stream-data opt-out: when true the MeshBoard time filter is not bound to the query. */
2757
+ ignoreTimeFilter: boolean;
2677
2758
  queryColumns: QueryColumnItem[];
2678
2759
  categoryValues: CategoryValueItem[];
2679
2760
  queryMode: KpiQueryMode;
2761
+ /** Family of the currently selected query; drives the time-filter toggle's visibility. */
2762
+ get selectedQueryFamily(): QueryFamily | null;
2680
2763
  isLoadingQueryColumns: boolean;
2681
2764
  isLoadingCategoryValues: boolean;
2682
2765
  readonly isLoadingAttributes: _angular_core.WritableSignal<boolean>;
@@ -2732,7 +2815,7 @@ declare class KpiConfigDialogComponent implements OnInit {
2732
2815
  private loadCategoryValuesForField;
2733
2816
  onFiltersChange(updatedFilters: FieldFilterItem[]): void;
2734
2817
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<KpiConfigDialogComponent, never>;
2735
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<KpiConfigDialogComponent, "mm-kpi-config-dialog", never, { "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialRtId": { "alias": "initialRtId"; "required": false; }; "initialValueAttribute": { "alias": "initialValueAttribute"; "required": false; }; "initialLabelAttribute": { "alias": "initialLabelAttribute"; "required": false; }; "initialPrefix": { "alias": "initialPrefix"; "required": false; }; "initialSuffix": { "alias": "initialSuffix"; "required": false; }; "initialTrend": { "alias": "initialTrend"; "required": false; }; "initialComparisonText": { "alias": "initialComparisonText"; "required": false; }; "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialQueryMode": { "alias": "initialQueryMode"; "required": false; }; "initialQueryValueField": { "alias": "initialQueryValueField"; "required": false; }; "initialQueryCategoryField": { "alias": "initialQueryCategoryField"; "required": false; }; "initialQueryCategoryValue": { "alias": "initialQueryCategoryValue"; "required": false; }; "initialStaticValue": { "alias": "initialStaticValue"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
2818
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<KpiConfigDialogComponent, "mm-kpi-config-dialog", never, { "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialRtId": { "alias": "initialRtId"; "required": false; }; "initialValueAttribute": { "alias": "initialValueAttribute"; "required": false; }; "initialLabelAttribute": { "alias": "initialLabelAttribute"; "required": false; }; "initialPrefix": { "alias": "initialPrefix"; "required": false; }; "initialSuffix": { "alias": "initialSuffix"; "required": false; }; "initialTrend": { "alias": "initialTrend"; "required": false; }; "initialComparisonText": { "alias": "initialComparisonText"; "required": false; }; "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialQueryMode": { "alias": "initialQueryMode"; "required": false; }; "initialQueryValueField": { "alias": "initialQueryValueField"; "required": false; }; "initialQueryCategoryField": { "alias": "initialQueryCategoryField"; "required": false; }; "initialQueryCategoryValue": { "alias": "initialQueryCategoryValue"; "required": false; }; "initialStaticValue": { "alias": "initialStaticValue"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
2736
2819
  }
2737
2820
 
2738
2821
  interface GroupedAssociation {
@@ -3070,8 +3153,8 @@ declare class TableWidgetDataSourceDirective extends OctoGraphQlDataSource<Recor
3070
3153
  private convertFiltersToDto;
3071
3154
  /**
3072
3155
  * Builds `StreamDataExecutionArgs` from the MeshBoard's current time filter.
3073
- * Returns `undefined` when no filter is active so the persistent query's
3074
- * own bounds apply.
3156
+ * Returns `undefined` when no filter is active, or when the widget opted out
3157
+ * via `ignoreTimeFilter`, so the persistent query's own bounds apply.
3075
3158
  */
3076
3159
  private buildStreamDataArgs;
3077
3160
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableWidgetDataSourceDirective, never>;
@@ -3134,6 +3217,8 @@ interface TableConfigResult {
3134
3217
  queryName?: string;
3135
3218
  /** Family of the selected persistent query — 'runtime' or 'streamData'. */
3136
3219
  queryFamily?: QueryFamily;
3220
+ /** Stream-data opt-out: keep the query's own time bounds, ignore the MeshBoard time filter. */
3221
+ ignoreTimeFilter?: boolean;
3137
3222
  pageSize: number;
3138
3223
  sortable: boolean;
3139
3224
  }
@@ -3169,6 +3254,7 @@ declare class TableConfigDialogComponent implements OnInit {
3169
3254
  initialQueryRtId?: string;
3170
3255
  initialQueryName?: string;
3171
3256
  initialQueryFamily?: QueryFamily;
3257
+ initialIgnoreTimeFilter?: boolean;
3172
3258
  protected readonly columnsIcon: _progress_kendo_svg_icons.SVGIcon;
3173
3259
  protected readonly sortIcon: _progress_kendo_svg_icons.SVGIcon;
3174
3260
  protected readonly filterIcon: _progress_kendo_svg_icons.SVGIcon;
@@ -3181,12 +3267,14 @@ declare class TableConfigDialogComponent implements OnInit {
3181
3267
  filters: FieldFilterItem[];
3182
3268
  availableAttributes: AttributeItem[];
3183
3269
  selectedPersistentQuery: PersistentQueryItem | null;
3270
+ ignoreTimeFilter: boolean;
3184
3271
  filterVariables: FilterVariable[];
3185
3272
  form: {
3186
3273
  pageSize: number;
3187
3274
  sortable: boolean;
3188
3275
  };
3189
3276
  get isValid(): boolean;
3277
+ get selectedQueryFamily(): QueryFamily | null;
3190
3278
  ngOnInit(): Promise<void>;
3191
3279
  private loadInitialValues;
3192
3280
  private loadAvailableAttributes;
@@ -3203,7 +3291,7 @@ declare class TableConfigDialogComponent implements OnInit {
3203
3291
  private formatColumnTitle;
3204
3292
  onCancel(): void;
3205
3293
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableConfigDialogComponent, never>;
3206
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableConfigDialogComponent, "mm-table-config-dialog", never, { "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialColumns": { "alias": "initialColumns"; "required": false; }; "initialSorting": { "alias": "initialSorting"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; "initialPageSize": { "alias": "initialPageSize"; "required": false; }; "initialSortable": { "alias": "initialSortable"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; }, {}, never, never, true, never>;
3294
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableConfigDialogComponent, "mm-table-config-dialog", never, { "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialColumns": { "alias": "initialColumns"; "required": false; }; "initialSorting": { "alias": "initialSorting"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; "initialPageSize": { "alias": "initialPageSize"; "required": false; }; "initialSortable": { "alias": "initialSortable"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; }, {}, never, never, true, never>;
3207
3295
  }
3208
3296
 
3209
3297
  declare class GaugeWidgetComponent implements DashboardWidget<GaugeWidgetConfig, RuntimeEntityData>, OnInit, OnChanges {
@@ -3265,6 +3353,7 @@ interface GaugeConfigResult extends WidgetConfigResult {
3265
3353
  queryRtId?: string;
3266
3354
  queryName?: string;
3267
3355
  queryFamily?: QueryFamily;
3356
+ ignoreTimeFilter?: boolean;
3268
3357
  queryMode?: KpiQueryMode;
3269
3358
  queryValueField?: string;
3270
3359
  queryCategoryField?: string;
@@ -3320,6 +3409,7 @@ declare class GaugeConfigDialogComponent implements OnInit {
3320
3409
  initialQueryRtId?: string;
3321
3410
  initialQueryName?: string;
3322
3411
  initialQueryFamily?: QueryFamily;
3412
+ initialIgnoreTimeFilter?: boolean;
3323
3413
  initialQueryMode?: KpiQueryMode;
3324
3414
  initialQueryValueField?: string;
3325
3415
  initialQueryCategoryField?: string;
@@ -3332,9 +3422,13 @@ declare class GaugeConfigDialogComponent implements OnInit {
3332
3422
  entityDialogDataSource?: RuntimeEntityDialogDataSource$1;
3333
3423
  isLoadingInitial: boolean;
3334
3424
  selectedPersistentQuery: PersistentQueryItem | null;
3425
+ /** Stream-data opt-out: when true the MeshBoard time filter is not bound to the query. */
3426
+ ignoreTimeFilter: boolean;
3335
3427
  queryColumns: QueryColumnItem[];
3336
3428
  categoryValues: CategoryValueItem[];
3337
3429
  queryMode: KpiQueryMode;
3430
+ /** Family of the currently selected query; drives the time-filter toggle's visibility. */
3431
+ get selectedQueryFamily(): QueryFamily | null;
3338
3432
  isLoadingQueryColumns: boolean;
3339
3433
  isLoadingCategoryValues: boolean;
3340
3434
  readonly isLoadingAttributes: _angular_core.WritableSignal<boolean>;
@@ -3393,7 +3487,7 @@ declare class GaugeConfigDialogComponent implements OnInit {
3393
3487
  private loadCategoryValuesForField;
3394
3488
  onFiltersChange(updatedFilters: FieldFilterItem[]): void;
3395
3489
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<GaugeConfigDialogComponent, never>;
3396
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<GaugeConfigDialogComponent, "mm-gauge-config-dialog", never, { "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialRtId": { "alias": "initialRtId"; "required": false; }; "initialGaugeType": { "alias": "initialGaugeType"; "required": false; }; "initialValueAttribute": { "alias": "initialValueAttribute"; "required": false; }; "initialLabelAttribute": { "alias": "initialLabelAttribute"; "required": false; }; "initialMin": { "alias": "initialMin"; "required": false; }; "initialMax": { "alias": "initialMax"; "required": false; }; "initialRanges": { "alias": "initialRanges"; "required": false; }; "initialShowLabel": { "alias": "initialShowLabel"; "required": false; }; "initialPrefix": { "alias": "initialPrefix"; "required": false; }; "initialSuffix": { "alias": "initialSuffix"; "required": false; }; "initialReverse": { "alias": "initialReverse"; "required": false; }; "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialQueryMode": { "alias": "initialQueryMode"; "required": false; }; "initialQueryValueField": { "alias": "initialQueryValueField"; "required": false; }; "initialQueryCategoryField": { "alias": "initialQueryCategoryField"; "required": false; }; "initialQueryCategoryValue": { "alias": "initialQueryCategoryValue"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3490
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<GaugeConfigDialogComponent, "mm-gauge-config-dialog", never, { "initialCkTypeId": { "alias": "initialCkTypeId"; "required": false; }; "initialRtId": { "alias": "initialRtId"; "required": false; }; "initialGaugeType": { "alias": "initialGaugeType"; "required": false; }; "initialValueAttribute": { "alias": "initialValueAttribute"; "required": false; }; "initialLabelAttribute": { "alias": "initialLabelAttribute"; "required": false; }; "initialMin": { "alias": "initialMin"; "required": false; }; "initialMax": { "alias": "initialMax"; "required": false; }; "initialRanges": { "alias": "initialRanges"; "required": false; }; "initialShowLabel": { "alias": "initialShowLabel"; "required": false; }; "initialPrefix": { "alias": "initialPrefix"; "required": false; }; "initialSuffix": { "alias": "initialSuffix"; "required": false; }; "initialReverse": { "alias": "initialReverse"; "required": false; }; "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialQueryMode": { "alias": "initialQueryMode"; "required": false; }; "initialQueryValueField": { "alias": "initialQueryValueField"; "required": false; }; "initialQueryCategoryField": { "alias": "initialQueryCategoryField"; "required": false; }; "initialQueryCategoryValue": { "alias": "initialQueryCategoryValue"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3397
3491
  }
3398
3492
 
3399
3493
  /**
@@ -3471,6 +3565,7 @@ interface PieChartConfigResult extends WidgetConfigResult {
3471
3565
  queryRtId?: string;
3472
3566
  queryName?: string;
3473
3567
  queryFamily?: QueryFamily;
3568
+ ignoreTimeFilter?: boolean;
3474
3569
  categoryField: string;
3475
3570
  valueField: string;
3476
3571
  ckQueryTarget?: CkQueryTarget;
@@ -3494,6 +3589,7 @@ declare class PieChartConfigDialogComponent implements OnInit, AfterViewInit {
3494
3589
  initialQueryRtId?: string;
3495
3590
  initialQueryName?: string;
3496
3591
  initialQueryFamily?: QueryFamily;
3592
+ initialIgnoreTimeFilter?: boolean;
3497
3593
  initialChartType?: PieChartType;
3498
3594
  initialCategoryField?: string;
3499
3595
  initialValueField?: string;
@@ -3520,6 +3616,8 @@ declare class PieChartConfigDialogComponent implements OnInit, AfterViewInit {
3520
3616
  label: string;
3521
3617
  }[];
3522
3618
  selectedPersistentQuery: PersistentQueryItem | null;
3619
+ /** Stream-data opt-out: when true the MeshBoard time filter is not bound to the query. */
3620
+ ignoreTimeFilter: boolean;
3523
3621
  queryColumns: QueryColumnItem[];
3524
3622
  filters: FieldFilterItem[];
3525
3623
  filterVariables: FilterVariable[];
@@ -3538,6 +3636,8 @@ declare class PieChartConfigDialogComponent implements OnInit, AfterViewInit {
3538
3636
  ckGroupBy: string;
3539
3637
  };
3540
3638
  get isValid(): boolean;
3639
+ /** Family of the currently selected query; drives the time-filter toggle's visibility. */
3640
+ get selectedQueryFamily(): QueryFamily | null;
3541
3641
  ngOnInit(): Promise<void>;
3542
3642
  ngAfterViewInit(): Promise<void>;
3543
3643
  onDataSourceTypeChange(dataSourceType: DataSourceType): void;
@@ -3555,7 +3655,7 @@ declare class PieChartConfigDialogComponent implements OnInit, AfterViewInit {
3555
3655
  onSave(): void;
3556
3656
  onCancel(): void;
3557
3657
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<PieChartConfigDialogComponent, never>;
3558
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<PieChartConfigDialogComponent, "mm-pie-chart-config-dialog", never, { "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialShowLabels": { "alias": "initialShowLabels"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialCkQueryTarget": { "alias": "initialCkQueryTarget"; "required": false; }; "initialCkGroupBy": { "alias": "initialCkGroupBy"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3658
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PieChartConfigDialogComponent, "mm-pie-chart-config-dialog", never, { "initialDataSourceType": { "alias": "initialDataSourceType"; "required": false; }; "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialShowLabels": { "alias": "initialShowLabels"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialCkQueryTarget": { "alias": "initialCkQueryTarget"; "required": false; }; "initialCkGroupBy": { "alias": "initialCkGroupBy"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3559
3659
  }
3560
3660
 
3561
3661
  /**
@@ -3661,6 +3761,7 @@ interface BarChartConfigResult extends WidgetConfigResult {
3661
3761
  queryRtId: string;
3662
3762
  queryName?: string;
3663
3763
  queryFamily?: QueryFamily;
3764
+ ignoreTimeFilter?: boolean;
3664
3765
  chartType: BarChartType;
3665
3766
  categoryField: string;
3666
3767
  series: BarChartSeries[];
@@ -3688,6 +3789,7 @@ declare class BarChartConfigDialogComponent implements OnInit {
3688
3789
  initialQueryRtId?: string;
3689
3790
  initialQueryName?: string;
3690
3791
  initialQueryFamily?: QueryFamily;
3792
+ initialIgnoreTimeFilter?: boolean;
3691
3793
  initialChartType?: BarChartType;
3692
3794
  initialCategoryField?: string;
3693
3795
  initialSeries?: BarChartSeries[];
@@ -3704,6 +3806,10 @@ declare class BarChartConfigDialogComponent implements OnInit {
3704
3806
  selectedPersistentQuery: PersistentQueryItem | null;
3705
3807
  queryColumns: QueryColumnItem[];
3706
3808
  numericColumns: QueryColumnItem[];
3809
+ /** Per-widget opt-out of the MeshBoard time-filter → stream-data binding. */
3810
+ ignoreTimeFilter: boolean;
3811
+ /** Family of the currently selected query — gates the time-filter opt-out toggle. */
3812
+ get selectedQueryFamily(): QueryFamily | null;
3707
3813
  filters: FieldFilterItem[];
3708
3814
  filterVariables: FilterVariable[];
3709
3815
  seriesMode: SeriesMode;
@@ -3745,7 +3851,7 @@ declare class BarChartConfigDialogComponent implements OnInit {
3745
3851
  removeColorThreshold(index: number): void;
3746
3852
  onCancel(): void;
3747
3853
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<BarChartConfigDialogComponent, never>;
3748
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<BarChartConfigDialogComponent, "mm-bar-chart-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialSeries": { "alias": "initialSeries"; "required": false; }; "initialSeriesGroupField": { "alias": "initialSeriesGroupField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialShowDataLabels": { "alias": "initialShowDataLabels"; "required": false; }; "initialColorThresholds": { "alias": "initialColorThresholds"; "required": false; }; "initialDefaultBarColor": { "alias": "initialDefaultBarColor"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3854
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BarChartConfigDialogComponent, "mm-bar-chart-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialSeries": { "alias": "initialSeries"; "required": false; }; "initialSeriesGroupField": { "alias": "initialSeriesGroupField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialShowDataLabels": { "alias": "initialShowDataLabels"; "required": false; }; "initialColorThresholds": { "alias": "initialColorThresholds"; "required": false; }; "initialDefaultBarColor": { "alias": "initialDefaultBarColor"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3749
3855
  }
3750
3856
 
3751
3857
  /**
@@ -3847,6 +3953,7 @@ interface LineChartConfigResult extends WidgetConfigResult {
3847
3953
  queryRtId: string;
3848
3954
  queryName?: string;
3849
3955
  queryFamily?: QueryFamily;
3956
+ ignoreTimeFilter?: boolean;
3850
3957
  chartType: LineChartType;
3851
3958
  categoryField: string;
3852
3959
  seriesGroupField: string;
@@ -3871,6 +3978,7 @@ declare class LineChartConfigDialogComponent implements OnInit {
3871
3978
  initialQueryRtId?: string;
3872
3979
  initialQueryName?: string;
3873
3980
  initialQueryFamily?: QueryFamily;
3981
+ initialIgnoreTimeFilter?: boolean;
3874
3982
  initialChartType?: LineChartType;
3875
3983
  initialCategoryField?: string;
3876
3984
  initialSeriesGroupField?: string;
@@ -3887,6 +3995,10 @@ declare class LineChartConfigDialogComponent implements OnInit {
3887
3995
  queryColumns: QueryColumnItem[];
3888
3996
  numericColumns: QueryColumnItem[];
3889
3997
  nonNumericColumns: QueryColumnItem[];
3998
+ /** Per-widget opt-out of the MeshBoard time-filter → stream-data binding. */
3999
+ ignoreTimeFilter: boolean;
4000
+ /** Family of the currently selected query — gates the time-filter opt-out toggle. */
4001
+ get selectedQueryFamily(): QueryFamily | null;
3890
4002
  filters: FieldFilterItem[];
3891
4003
  filterVariables: FilterVariable[];
3892
4004
  legendPositions: {
@@ -3920,7 +4032,7 @@ declare class LineChartConfigDialogComponent implements OnInit {
3920
4032
  removeReferenceLine(index: number): void;
3921
4033
  onCancel(): void;
3922
4034
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<LineChartConfigDialogComponent, never>;
3923
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<LineChartConfigDialogComponent, "mm-line-chart-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialSeriesGroupField": { "alias": "initialSeriesGroupField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialUnitField": { "alias": "initialUnitField"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialShowMarkers": { "alias": "initialShowMarkers"; "required": false; }; "initialReferenceLines": { "alias": "initialReferenceLines"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
4035
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LineChartConfigDialogComponent, "mm-line-chart-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialChartType": { "alias": "initialChartType"; "required": false; }; "initialCategoryField": { "alias": "initialCategoryField"; "required": false; }; "initialSeriesGroupField": { "alias": "initialSeriesGroupField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialUnitField": { "alias": "initialUnitField"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialShowMarkers": { "alias": "initialShowMarkers"; "required": false; }; "initialReferenceLines": { "alias": "initialReferenceLines"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
3924
4036
  }
3925
4037
 
3926
4038
  /**
@@ -4016,6 +4128,7 @@ interface HeatmapConfigResult extends WidgetConfigResult {
4016
4128
  queryRtId: string;
4017
4129
  queryName?: string;
4018
4130
  queryFamily?: QueryFamily;
4131
+ ignoreTimeFilter?: boolean;
4019
4132
  dateField: string;
4020
4133
  dateEndField?: string;
4021
4134
  valueField?: string;
@@ -4037,6 +4150,7 @@ declare class HeatmapConfigDialogComponent implements OnInit {
4037
4150
  initialQueryRtId?: string;
4038
4151
  initialQueryName?: string;
4039
4152
  initialQueryFamily?: QueryFamily;
4153
+ initialIgnoreTimeFilter?: boolean;
4040
4154
  initialDateField?: string;
4041
4155
  initialDateEndField?: string;
4042
4156
  initialValueField?: string;
@@ -4051,6 +4165,7 @@ declare class HeatmapConfigDialogComponent implements OnInit {
4051
4165
  isLoadingInitial: boolean;
4052
4166
  isLoadingColumns: boolean;
4053
4167
  selectedPersistentQuery: PersistentQueryItem | null;
4168
+ ignoreTimeFilter: boolean;
4054
4169
  queryColumns: QueryColumnItem[];
4055
4170
  numericColumns: QueryColumnItem[];
4056
4171
  dateTimeColumns: QueryColumnItem[];
@@ -4086,6 +4201,7 @@ declare class HeatmapConfigDialogComponent implements OnInit {
4086
4201
  valueMultiplier: number;
4087
4202
  };
4088
4203
  get isValid(): boolean;
4204
+ get selectedQueryFamily(): QueryFamily | null;
4089
4205
  ngOnInit(): Promise<void>;
4090
4206
  onQuerySelected(query: PersistentQueryItem | null): Promise<void>;
4091
4207
  private loadQueryColumns;
@@ -4099,7 +4215,7 @@ declare class HeatmapConfigDialogComponent implements OnInit {
4099
4215
  onSave(): void;
4100
4216
  onCancel(): void;
4101
4217
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<HeatmapConfigDialogComponent, never>;
4102
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeatmapConfigDialogComponent, "mm-heatmap-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialDateField": { "alias": "initialDateField"; "required": false; }; "initialDateEndField": { "alias": "initialDateEndField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialAggregation": { "alias": "initialAggregation"; "required": false; }; "initialColorScheme": { "alias": "initialColorScheme"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialDecimalPlaces": { "alias": "initialDecimalPlaces"; "required": false; }; "initialCompactNumbers": { "alias": "initialCompactNumbers"; "required": false; }; "initialValueMultiplier": { "alias": "initialValueMultiplier"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
4218
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeatmapConfigDialogComponent, "mm-heatmap-config-dialog", never, { "initialQueryRtId": { "alias": "initialQueryRtId"; "required": false; }; "initialQueryName": { "alias": "initialQueryName"; "required": false; }; "initialQueryFamily": { "alias": "initialQueryFamily"; "required": false; }; "initialIgnoreTimeFilter": { "alias": "initialIgnoreTimeFilter"; "required": false; }; "initialDateField": { "alias": "initialDateField"; "required": false; }; "initialDateEndField": { "alias": "initialDateEndField"; "required": false; }; "initialValueField": { "alias": "initialValueField"; "required": false; }; "initialAggregation": { "alias": "initialAggregation"; "required": false; }; "initialColorScheme": { "alias": "initialColorScheme"; "required": false; }; "initialShowLegend": { "alias": "initialShowLegend"; "required": false; }; "initialLegendPosition": { "alias": "initialLegendPosition"; "required": false; }; "initialDecimalPlaces": { "alias": "initialDecimalPlaces"; "required": false; }; "initialCompactNumbers": { "alias": "initialCompactNumbers"; "required": false; }; "initialValueMultiplier": { "alias": "initialValueMultiplier"; "required": false; }; "initialFilters": { "alias": "initialFilters"; "required": false; }; }, {}, never, never, true, never>;
4103
4219
  }
4104
4220
 
4105
4221
  interface StatValue {
@@ -5235,6 +5351,7 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
5235
5351
  private readonly router;
5236
5352
  private readonly route;
5237
5353
  protected readonly gridService: MeshBoardGridService;
5354
+ private readonly autoRefreshTimer;
5238
5355
  private readonly tenantIdProvider;
5239
5356
  private readonly breadCrumbService;
5240
5357
  private lastNavigatedRtId;
@@ -5258,8 +5375,6 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
5258
5375
  protected editingWidget: AnyWidgetConfig | null;
5259
5376
  private configDialogSubscription;
5260
5377
  private navigationSubscription;
5261
- private autoRefreshTimerId;
5262
- private autoRefreshActiveSeconds;
5263
5378
  private readonly visibilityListener;
5264
5379
  protected readonly config: _angular_core.Signal<MeshBoardConfig>;
5265
5380
  protected readonly isEditMode: _angular_core.Signal<boolean>;
@@ -5310,15 +5425,14 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
5310
5425
  private loadMeshBoardById;
5311
5426
  ngOnDestroy(): void;
5312
5427
  /**
5313
- * Starts, restarts, or stops the auto-refresh timer based on the MeshBoard
5314
- * config and document visibility. Called on init, whenever config changes,
5315
- * and whenever the tab visibility changes.
5428
+ * Reconciles the auto-refresh timer to the current MeshBoard config and
5429
+ * document visibility. Called on init, whenever config changes (via the
5430
+ * constructor effect), and whenever tab visibility changes.
5316
5431
  *
5317
5432
  * Pause-on-hidden saves bandwidth and avoids Apollo cache thrashing when
5318
5433
  * the user has the tab in the background.
5319
5434
  */
5320
5435
  private evaluateAutoRefresh;
5321
- private stopAutoRefresh;
5322
5436
  /**
5323
5437
  * Preloads data for all widgets to improve initial rendering performance.
5324
5438
  */
@@ -5789,5 +5903,5 @@ declare class MeshBoardManagerDialogComponent implements OnInit {
5789
5903
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<MeshBoardManagerDialogComponent, "mm-meshboard-manager-dialog", never, {}, {}, never, never, true, never>;
5790
5904
  }
5791
5905
 
5792
- export { AddWidgetDialogComponent, AiInsightsConfigDialogComponent, AiInsightsService, AiInsightsWidgetComponent, AlertBannerConfigDialogComponent, AlertBannerWidgetComponent, AlertListConfigDialogComponent, AlertListWidgetComponent, AssociationsConfigDialogComponent, BarChartConfigDialogComponent, BarChartWidgetComponent, DashboardDataService, DashboardGridService, EditModeStateService, EditWidgetDialogComponent, EntityAssociationsWidgetComponent, EntityCardConfigDialogComponent, EntityCardWidgetComponent, EntityDetailDialogComponent, EntitySelectorEditorComponent, EntitySelectorToolbarComponent, GaugeConfigDialogComponent, GaugeWidgetComponent, HeatmapConfigDialogComponent, HeatmapWidgetComponent, KpiConfigDialogComponent, KpiWidgetComponent, LineChartConfigDialogComponent, LineChartWidgetComponent, MESHBOARD_OPTIONS, MESHBOARD_TENANT_ID_PROVIDER, MarkdownConfigDialogComponent, MarkdownWidgetComponent, MeshBoardDataService, MeshBoardGridService, MeshBoardManagerDialogComponent, MeshBoardPersistenceService, MeshBoardSettingsDialogComponent, MeshBoardSettingsResult, MeshBoardStateService, MeshBoardViewComponent, PieChartConfigDialogComponent, PieChartWidgetComponent, QueryExecutorService, QuerySelectorComponent, RuntimeEntitySelectorComponent, ServiceHealthConfigDialogComponent, ServiceHealthWidgetComponent, StatsGridConfigDialogComponent, StatsGridWidgetComponent, StatusIndicatorConfigDialogComponent, StatusIndicatorWidgetComponent, StatusListConfigDialogComponent, StatusListWidgetComponent, SummaryCardConfigDialogComponent, SummaryCardWidgetComponent, TableConfigDialogComponent, TableWidgetComponent, TableWidgetDataSourceDirective, WidgetFactoryService, WidgetGroupComponent, WidgetGroupConfigDialogComponent, WidgetNotConfiguredComponent, WidgetRegistryService, classifyQuery, provideDefaultWidgets, provideMeshBoard, provideProcessWidget, provideWidgetRegistrations, queryFamily, registerDefaultWidgets, registerProcessWidget };
5906
+ export { AddWidgetDialogComponent, AiInsightsConfigDialogComponent, AiInsightsService, AiInsightsWidgetComponent, AlertBannerConfigDialogComponent, AlertBannerWidgetComponent, AlertListConfigDialogComponent, AlertListWidgetComponent, AssociationsConfigDialogComponent, AutoRefreshTimerService, BarChartConfigDialogComponent, BarChartWidgetComponent, DashboardDataService, DashboardGridService, EditModeStateService, EditWidgetDialogComponent, EntityAssociationsWidgetComponent, EntityCardConfigDialogComponent, EntityCardWidgetComponent, EntityDetailDialogComponent, EntitySelectorEditorComponent, EntitySelectorToolbarComponent, GaugeConfigDialogComponent, GaugeWidgetComponent, HeatmapConfigDialogComponent, HeatmapWidgetComponent, KpiConfigDialogComponent, KpiWidgetComponent, LineChartConfigDialogComponent, LineChartWidgetComponent, MESHBOARD_OPTIONS, MESHBOARD_TENANT_ID_PROVIDER, MarkdownConfigDialogComponent, MarkdownWidgetComponent, MeshBoardDataService, MeshBoardGridService, MeshBoardManagerDialogComponent, MeshBoardPersistenceService, MeshBoardSettingsDialogComponent, MeshBoardSettingsResult, MeshBoardStateService, MeshBoardViewComponent, PieChartConfigDialogComponent, PieChartWidgetComponent, QueryExecutorService, QuerySelectorComponent, RuntimeEntitySelectorComponent, ServiceHealthConfigDialogComponent, ServiceHealthWidgetComponent, StatsGridConfigDialogComponent, StatsGridWidgetComponent, StatusIndicatorConfigDialogComponent, StatusIndicatorWidgetComponent, StatusListConfigDialogComponent, StatusListWidgetComponent, SummaryCardConfigDialogComponent, SummaryCardWidgetComponent, TableConfigDialogComponent, TableWidgetComponent, TableWidgetDataSourceDirective, WidgetFactoryService, WidgetGroupComponent, WidgetGroupConfigDialogComponent, WidgetNotConfiguredComponent, WidgetRegistryService, classifyQuery, provideDefaultWidgets, provideMeshBoard, provideProcessWidget, provideWidgetRegistrations, queryFamily, registerDefaultWidgets, registerProcessWidget };
5793
5907
  export type { AggregationDataSource, AggregationQuery, AggregationType, AiInsightsConfigResult, AiInsightsWidgetConfig, AlertBannerConfigResult, AlertBannerWidgetConfig, AlertListConfigResult, AlertListWidgetConfig, AnyWidgetConfig, AssociationsConfigResult, BarChartColorThreshold, BarChartConfigResult, BarChartSeries, BarChartType, BarChartWidgetConfig, BaseWidgetConfig, CategoryValueItem, ChartReferenceLine, CkQueryResult, CkQueryTarget, CkTypeAttributeInfo, ConfigDialogResult, ConfigResultApplier, ConstructionKitQueryDataSource, DashboardConfig, DashboardWidget, DataSource, DataSourceType, DiagramPropertyMapping, EntityAssociation, EntityAttribute, EntityCardConfigResult, EntityCardWidgetConfig, EntityListWidget, EntitySelectorAttributeMapping, EntitySelectorClearEvent, EntitySelectorConfig, EntitySelectorEvent, EntityWidget, EntityWithAssociationsWidgetConfig, GaugeConfigResult, GaugeRange, GaugeType, GaugeWidgetConfig, GridCell, GridPosition, GroupChildWidgetType, GroupedDataItem, HeatmapAggregation, HeatmapColorScheme, HeatmapConfigResult, HeatmapWidgetConfig, KpiConfigResult, KpiDataSourceType, KpiQueryMode, KpiWidgetConfig, LineChartConfigResult, LineChartType, LineChartWidgetConfig, MarkdownConfigResult, MarkdownTextAlign, MarkdownWidgetConfig, MeshBoardConfig, MeshBoardOptions, MeshBoardTimeFilterConfig, MeshBoardVariable, MeshBoardVariableSource, MeshBoardVariableType, ParentAssociationMode, PersistedDashboard, PersistedMeshBoard, PersistedWidget, PersistedWidgetData, PersistentQueryDataSource, PersistentQueryItem, PieChartConfigResult, PieChartType, PieChartWidgetConfig, ProcessWidgetConfig, Quarter, QueryCell, QueryClassification, QueryColumn, QueryColumnInfo, QueryColumnItem, QueryExecutionOptions, QueryExecutionResult, QueryFamily, QueryKind, QueryResultRow, RelativeTimeUnit, RepeaterDataItem, RepeaterQueryDataSource, RuntimeEntityData, RuntimeEntityDataSource, RuntimeEntitySelectorValue, ServiceCallDataSource, ServiceCallType, ServiceHealthConfigResult, ServiceHealthWidgetConfig, StatColor, StatItem, StaticDataSource, StatsGridConfigResult, StatsGridWidgetConfig, StatusIndicatorConfigResult, StatusIndicatorWidgetConfig, StatusListConfigResult, StatusListWidgetConfig, StreamDataExecutionArgs, SummaryCardConfigResult, SummaryCardTile, SummaryCardWidgetConfig, TableColumn, TableColumnStatusIconMapping, TableConfigResult, TableFilterConfig, TableSortConfig, TableWidgetConfig, TargetEntityWithAttributes, TimeRangePickerConfig, TimeRangeSelection, TimeRangeType, UpdateDashboardResult, VariableResolutionError, WidgetConfig, WidgetConfigDialog, WidgetConfigDialogSize, WidgetConfigResult, WidgetCreationOptions, WidgetDataSource, WidgetFilterConfig, WidgetGroupAttributeMappings, WidgetGroupChildTemplate, WidgetGroupConfig, WidgetGroupConfigResult, WidgetGroupLayout, WidgetPersistenceData, WidgetPositionUpdate, WidgetRegistration, WidgetType, WidgetZone };