@meshmakers/octo-meshboard 3.5.490 → 3.5.500
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.
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { ProcessWidgetSpecificConfig } from '@meshmakers/octo-process-diagrams';
|
|
2
2
|
import * as _angular_core from '@angular/core';
|
|
3
3
|
import { Signal, AfterViewInit, OnChanges, EventEmitter, SimpleChanges, Type, OnDestroy, OnInit, EnvironmentProviders, InjectionToken, Provider } from '@angular/core';
|
|
4
|
+
import { Observable, Subject } from 'rxjs';
|
|
5
|
+
import * as Types from '@meshmakers/octo-services';
|
|
6
|
+
import { SortDto, FieldFilterDto, QueryModeDto, ResolveSeriesQueryInputDto, CkRollupFunctionDto, SeriesResolutionSignalDto, CkTypeSelectorItem, RuntimeEntityItem, RuntimeEntitySelectDataSource, RuntimeEntityDialogDataSource, AttributeItem, TenantIdProvider, TenantFeaturesStatus, HealthCheck } from '@meshmakers/octo-services';
|
|
7
|
+
export { RuntimeEntityDialogDataSource, RuntimeEntityItem, RuntimeEntitySelectDataSource, TENANT_ID_PROVIDER, TenantIdProvider } from '@meshmakers/octo-services';
|
|
4
8
|
import { ControlValueAccessor } from '@angular/forms';
|
|
5
9
|
import * as i1 from '@meshmakers/shared-ui';
|
|
6
10
|
import { EntitySelectDialogDataSource, ColumnDefinition, DialogFetchOptions, DialogFetchResult, EntitySelectInputComponent, TimeRange, FetchDataOptions, FetchResultTyped, TableColumn as TableColumn$1, ListViewMessages, HasUnsavedChanges, TimeRangePickerLabels, TimeRangeSelection as TimeRangeSelection$1 } from '@meshmakers/shared-ui';
|
|
7
|
-
import { Observable, Subject } from 'rxjs';
|
|
8
11
|
import { EntitySelectDataSource, EntitySelectResult } from '@meshmakers/shared-services';
|
|
9
|
-
import * as Types from '@meshmakers/octo-services';
|
|
10
|
-
import { CkTypeSelectorItem, RuntimeEntityItem, RuntimeEntitySelectDataSource, RuntimeEntityDialogDataSource, SortDto, FieldFilterDto, QueryModeDto, ResolveSeriesQueryInputDto, CkRollupFunctionDto, SeriesResolutionSignalDto, AttributeItem, TenantIdProvider, TenantFeaturesStatus, HealthCheck } from '@meshmakers/octo-services';
|
|
11
|
-
export { RuntimeEntityDialogDataSource, RuntimeEntityItem, RuntimeEntitySelectDataSource, TENANT_ID_PROVIDER, TenantIdProvider } from '@meshmakers/octo-services';
|
|
12
12
|
import * as Apollo from 'apollo-angular';
|
|
13
13
|
import { CkTypeSelectorInputComponent, AttributeValueTypeDto, FieldFilterItem, FilterVariable, PropertyGridItem, PropertyGridConfig, OctoGraphQlDataSource, FieldFilterEditorComponent } from '@meshmakers/octo-ui';
|
|
14
14
|
import * as _meshmakers_octo_meshboard from '@meshmakers/octo-meshboard';
|
|
@@ -1420,6 +1420,17 @@ interface EntitySelectorConfig {
|
|
|
1420
1420
|
* own rtId is the scope. See {@link EntitySelectorChildScope}.
|
|
1421
1421
|
*/
|
|
1422
1422
|
childScope?: EntitySelectorChildScope;
|
|
1423
|
+
/**
|
|
1424
|
+
* Optional id of the selector this one follows (AB#7722). A follower has no
|
|
1425
|
+
* picker of its own and is never written to or read from the URL: it takes
|
|
1426
|
+
* the leader's current pick as its picked entity (its `ckTypeId` is the
|
|
1427
|
+
* leader's) and resolves its own `childScope` and `attributeMappings` from it.
|
|
1428
|
+
* Its `defaultRtId` is used only while the leader has no pick. One level only:
|
|
1429
|
+
* a leader cannot itself be a follower. An unknown or chained leader is
|
|
1430
|
+
* treated as "leader has no pick" (plus a console warning).
|
|
1431
|
+
* See `utils/entity-selector-follow.ts`.
|
|
1432
|
+
*/
|
|
1433
|
+
followsSelectorId?: string;
|
|
1423
1434
|
/** Current selection (transient, not persisted) */
|
|
1424
1435
|
selectedRtId?: string;
|
|
1425
1436
|
/** Display name of the currently selected entity */
|
|
@@ -1760,6 +1771,284 @@ declare function isMeshBoardChrome(value: unknown): value is MeshBoardChrome;
|
|
|
1760
1771
|
*/
|
|
1761
1772
|
declare function resolveMeshBoardChrome(inputChrome: unknown, routeDataChrome: unknown): MeshBoardChrome;
|
|
1762
1773
|
|
|
1774
|
+
/**
|
|
1775
|
+
* Result of resolution-aware series routing (AB#4290). The caller runs the existing
|
|
1776
|
+
* stream-data downsampling query against {@link archiveRtId} with `limit = points`
|
|
1777
|
+
* and the column aggregation set to {@link reducingFunction}. `signal` is a truthful
|
|
1778
|
+
* outcome the widget can surface (e.g. a "resolution-limited" hint).
|
|
1779
|
+
*
|
|
1780
|
+
* The coverage signal (AB#5157) rides the same fields: `signal` is `CoverageLimited` when the
|
|
1781
|
+
* resolver's coverage filter skipped a finer rung because it holds no measured data over the
|
|
1782
|
+
* requested window, `actualPoints` / `diagnostic` carry the deliverable count and the rung that
|
|
1783
|
+
* was excluded, and {@link finerRungAvailableFrom} says from when that finer rung could serve.
|
|
1784
|
+
*/
|
|
1785
|
+
interface SeriesResolutionResult {
|
|
1786
|
+
archiveRtId: string;
|
|
1787
|
+
effectiveBucketMs: number;
|
|
1788
|
+
points: number;
|
|
1789
|
+
reducingFunction: CkRollupFunctionDto;
|
|
1790
|
+
signal: SeriesResolutionSignalDto;
|
|
1791
|
+
actualPoints: number | null;
|
|
1792
|
+
diagnostic: string | null;
|
|
1793
|
+
/**
|
|
1794
|
+
* Earliest instant from which the coverage-excluded finer rung would be usable (AB#5157).
|
|
1795
|
+
* Set only on `CoverageLimited`, null otherwise. Passed through as the wire delivers it —
|
|
1796
|
+
* a `DateTime` scalar arrives as an ISO string unless a scalar parser turns it into a `Date` —
|
|
1797
|
+
* so read it through `toInstant` / `formatInstant` rather than assuming either shape.
|
|
1798
|
+
* Optional so that code constructing a result (mocks, adapters) written before AB#5157 keeps
|
|
1799
|
+
* compiling; a missing value means the same as `null`.
|
|
1800
|
+
*/
|
|
1801
|
+
finerRungAvailableFrom?: Date | string | null;
|
|
1802
|
+
}
|
|
1803
|
+
/**
|
|
1804
|
+
* Time-range and downsampling arguments for stream-data persistent queries.
|
|
1805
|
+
* Mirrors the GraphQL input `StreamDataArguments` so widgets can build it
|
|
1806
|
+
* without importing generated DTO types directly.
|
|
1807
|
+
*
|
|
1808
|
+
* Backend semantics (verified against StreamDataQueryDtoType.cs and
|
|
1809
|
+
* StreamDataVariantExecutor.cs; `queryMode` override added in AB#4233):
|
|
1810
|
+
* - `from` / `to` / `limit` override the persisted query's intrinsic values
|
|
1811
|
+
* when set (`execOverride?.From ?? simple.From` pattern in the resolver).
|
|
1812
|
+
* - `interval` is currently ignored by every variant; the downsampling path
|
|
1813
|
+
* derives `(to - from) / limit` itself.
|
|
1814
|
+
* - `queryMode: DOWNSAMPLING` on a `SimpleSdQuery` (persisted) or the transient
|
|
1815
|
+
* `simple` sub-connection now drives the downsampling execution path: with a
|
|
1816
|
+
* full from/to/limit contract the backend reduces to `limit` buckets per series
|
|
1817
|
+
* (per-type reducers + group-by source rtId). Without all three it falls back
|
|
1818
|
+
* to raw rows. For the other variants the execution shape still comes from the
|
|
1819
|
+
* CK subtype / sub-connection; `queryMode` is a no-op there.
|
|
1820
|
+
*/
|
|
1821
|
+
interface StreamDataExecutionArgs {
|
|
1822
|
+
from?: Date | null;
|
|
1823
|
+
to?: Date | null;
|
|
1824
|
+
interval?: number | null;
|
|
1825
|
+
limit?: number | null;
|
|
1826
|
+
/**
|
|
1827
|
+
* `DOWNSAMPLING` switches a SimpleSdQuery / transient `simple` query to the
|
|
1828
|
+
* downsampling path (with from/to/limit); a no-op for the other variants.
|
|
1829
|
+
* Defaults to `Default` (raw rows).
|
|
1830
|
+
*/
|
|
1831
|
+
queryMode?: QueryModeDto;
|
|
1832
|
+
/**
|
|
1833
|
+
* Source runtime ids to scope the query to. When set, replaces the persisted
|
|
1834
|
+
* RtIds on the query at execution time — used to scope a stream-data widget to
|
|
1835
|
+
* the entities resolved from a selected asset (e.g. the EnergyMeasurement rtIds
|
|
1836
|
+
* under a picked MeteringPoint). An empty array is treated as "no scope".
|
|
1837
|
+
*/
|
|
1838
|
+
rtIds?: string[] | null;
|
|
1839
|
+
}
|
|
1840
|
+
interface QueryExecutionOptions {
|
|
1841
|
+
/** Page size — passed to the GraphQL `first` variable. */
|
|
1842
|
+
first?: number | null;
|
|
1843
|
+
/** Cursor — passed to the GraphQL `after` variable. */
|
|
1844
|
+
after?: string | null;
|
|
1845
|
+
/** Optional column / row sort definitions. */
|
|
1846
|
+
sortOrder?: SortDto[] | null;
|
|
1847
|
+
/** Field filters applied to the query rows. */
|
|
1848
|
+
fieldFilter?: FieldFilterDto[] | null;
|
|
1849
|
+
/** Stream-data-only: time-range, interval, limit, queryMode. Ignored for runtime queries. */
|
|
1850
|
+
streamDataArgs?: StreamDataExecutionArgs | null;
|
|
1851
|
+
/** Force a network round-trip instead of using the Apollo cache. */
|
|
1852
|
+
forceRefresh?: boolean;
|
|
1853
|
+
}
|
|
1854
|
+
interface QueryColumnInfo {
|
|
1855
|
+
attributePath: string;
|
|
1856
|
+
attributeValueType?: string | null;
|
|
1857
|
+
aggregationType?: string | null;
|
|
1858
|
+
}
|
|
1859
|
+
interface QueryCell {
|
|
1860
|
+
attributePath: string;
|
|
1861
|
+
value: unknown;
|
|
1862
|
+
}
|
|
1863
|
+
/**
|
|
1864
|
+
* Unified result-row shape across runtime and stream-data queries.
|
|
1865
|
+
* `__typename` lets callers distinguish row kinds when needed
|
|
1866
|
+
* (`RtSimpleQueryRow`, `RtAggregationQueryRow`, `RtGroupingAggregationQueryRow`,
|
|
1867
|
+
* `StreamDataQueryRow`).
|
|
1868
|
+
*
|
|
1869
|
+
* Stream-data rows surface `timestamp`, `rtWellKnownName`,
|
|
1870
|
+
* `rtCreationDateTime`, and `rtChangedDateTime` directly on the row — useful
|
|
1871
|
+
* for time-series x-axes. Runtime rows leave those fields undefined.
|
|
1872
|
+
*/
|
|
1873
|
+
interface QueryResultRow {
|
|
1874
|
+
__typename?: string;
|
|
1875
|
+
rtId?: string | null;
|
|
1876
|
+
ckTypeId?: string | null;
|
|
1877
|
+
timestamp?: Date | null;
|
|
1878
|
+
rtWellKnownName?: string | null;
|
|
1879
|
+
rtCreationDateTime?: Date | null;
|
|
1880
|
+
rtChangedDateTime?: Date | null;
|
|
1881
|
+
cells: QueryCell[];
|
|
1882
|
+
}
|
|
1883
|
+
interface QueryExecutionResult {
|
|
1884
|
+
family: QueryFamily;
|
|
1885
|
+
queryRtId?: string | null;
|
|
1886
|
+
associatedCkTypeId?: string | null;
|
|
1887
|
+
columns: QueryColumnInfo[];
|
|
1888
|
+
rows: QueryResultRow[];
|
|
1889
|
+
totalCount: number;
|
|
1890
|
+
hasNextPage: boolean;
|
|
1891
|
+
endCursor?: string | null;
|
|
1892
|
+
}
|
|
1893
|
+
/**
|
|
1894
|
+
* Executes persistent queries by rtId and returns a unified result shape
|
|
1895
|
+
* regardless of whether the underlying query is runtime-data or stream-data.
|
|
1896
|
+
*
|
|
1897
|
+
* Widgets consume `QueryExecutionResult` and stay agnostic about which family
|
|
1898
|
+
* the saved query belongs to — switching a widget's data source between
|
|
1899
|
+
* runtime and stream-data is purely a configuration change.
|
|
1900
|
+
*/
|
|
1901
|
+
declare class QueryExecutorService {
|
|
1902
|
+
private readonly runtimeGql;
|
|
1903
|
+
private readonly streamDataGql;
|
|
1904
|
+
private readonly persistentQueriesGql;
|
|
1905
|
+
private readonly resolveSeriesGql;
|
|
1906
|
+
private readonly queryArchiveGql;
|
|
1907
|
+
private readonly downsampleGql;
|
|
1908
|
+
private readonly entitiesGql;
|
|
1909
|
+
private readonly secretSafeNames;
|
|
1910
|
+
/**
|
|
1911
|
+
* Cache of resolved query families, keyed by query rtId. Filled lazily for
|
|
1912
|
+
* legacy widget configs that pre-date the `queryFamily` field — saves a
|
|
1913
|
+
* round-trip on every refresh.
|
|
1914
|
+
*/
|
|
1915
|
+
private readonly familyCache;
|
|
1916
|
+
execute(family: QueryFamily | undefined, queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
1917
|
+
/**
|
|
1918
|
+
* Resolves the family of a persistent query by rtId. Falls back to
|
|
1919
|
+
* `'runtime'` when the query type cannot be classified — this matches the
|
|
1920
|
+
* pre-Phase-1 behavior.
|
|
1921
|
+
*/
|
|
1922
|
+
resolveFamily(queryRtId: string): Promise<QueryFamily>;
|
|
1923
|
+
executeRuntime(queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
1924
|
+
executeStreamData(queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
1925
|
+
/**
|
|
1926
|
+
* Resolution-aware series routing (AB#4290): asks the backend which archive/rollup to
|
|
1927
|
+
* query for a base archive family, time window and target point count — so a widget can
|
|
1928
|
+
* render ~`targetPoints` points without knowing which physical archive holds the data at a
|
|
1929
|
+
* usable grain. The caller then runs {@link executeStreamData} (downsampling) against the
|
|
1930
|
+
* returned `archiveRtId` with `limit = points`. Returns null when StreamData is not enabled.
|
|
1931
|
+
*/
|
|
1932
|
+
resolveSeriesQuery(input: ResolveSeriesQueryInputDto): Promise<SeriesResolutionResult | null>;
|
|
1933
|
+
/**
|
|
1934
|
+
* Resolution-aware routing (AB#4290): reads a persisted stream-data query's base archive rtId
|
|
1935
|
+
* and target CK type WITHOUT executing the query (the `rows` sub-connection is not selected), so
|
|
1936
|
+
* a widget can feed the archive to {@link resolveSeriesQuery} and use the CK type to resolve
|
|
1937
|
+
* per-series labels. Also reads the query's persisted RtIds pin
|
|
1938
|
+
* (`System/StreamDataQuery.RtIds`) from the runtime entity — the transient downsampling path
|
|
1939
|
+
* bypasses the persisted query execution, so widgets must re-apply the pin themselves
|
|
1940
|
+
* (AB#4818). `rtIds` is null when the query has no pin (or is not a SimpleSdQuery).
|
|
1941
|
+
* Returns null when the query is missing or has no archive.
|
|
1942
|
+
*/
|
|
1943
|
+
fetchQueryArchive(queryRtId: string): Promise<{
|
|
1944
|
+
archiveRtId: string;
|
|
1945
|
+
ckTypeId: string | null;
|
|
1946
|
+
rtIds: string[] | null;
|
|
1947
|
+
} | null>;
|
|
1948
|
+
/**
|
|
1949
|
+
* Resolution-aware routing (AB#4290): runs the AB#4233 downsampling query against an explicit
|
|
1950
|
+
* archive rtId (the rollup/base chosen by {@link resolveSeriesQuery}), reducing `sourcePath`
|
|
1951
|
+
* with `aggregation` to at most `limit` buckets. The transient downsampling groups by bin
|
|
1952
|
+
* (not by source rtId), so callers that need per-series lines scope `rtIds` to one source
|
|
1953
|
+
* entity per call. Returns the unified rows; each row's single value cell carries the reduced
|
|
1954
|
+
* value under its wire column name (e.g. `amountvalue_sum`) alongside the bin `timestamp`.
|
|
1955
|
+
*/
|
|
1956
|
+
downsampleByArchive(params: {
|
|
1957
|
+
archiveRtId: string;
|
|
1958
|
+
from: Date;
|
|
1959
|
+
to: Date;
|
|
1960
|
+
limit: number;
|
|
1961
|
+
sourcePath: string;
|
|
1962
|
+
aggregation: string;
|
|
1963
|
+
rtIds?: string[] | null;
|
|
1964
|
+
fieldFilter?: FieldFilterDto[] | null;
|
|
1965
|
+
}): Promise<QueryResultRow[]>;
|
|
1966
|
+
/**
|
|
1967
|
+
* Best-effort per-series labels for resolution-aware fan-out (AB#4290): reads each source
|
|
1968
|
+
* entity's attribute matching `labelField` (canonical, case/underscore-insensitive so an archive
|
|
1969
|
+
* column name maps to its CK attribute). Entities that fail to load or lack the attribute are
|
|
1970
|
+
* simply omitted; the caller falls back to the rtId. Returns a `rtId → label` map.
|
|
1971
|
+
*/
|
|
1972
|
+
fetchSeriesLabels(ckTypeId: string, rtIds: string[], labelField: string): Promise<Map<string, string>>;
|
|
1973
|
+
/**
|
|
1974
|
+
* The non-secret attribute names of `ckTypeId` whose canonical form matches `wanted`
|
|
1975
|
+
* (SECRET-safe explicit list, AB#5542). Empty when nothing matches — the caller then falls back
|
|
1976
|
+
* as for a missing attribute.
|
|
1977
|
+
*/
|
|
1978
|
+
private matchingAttributeNames;
|
|
1979
|
+
/** Cap on the source-entity population read for group-aggregation (AB#4714). A truncated read is
|
|
1980
|
+
* logged, never silent. */
|
|
1981
|
+
private static readonly ENTITY_GROUP_FETCH_CAP;
|
|
1982
|
+
/**
|
|
1983
|
+
* Group-aggregation source resolution (AB#4714): fetches the source entities of `ckTypeId` in a
|
|
1984
|
+
* single bulk read and buckets their rtIds by the value of `groupField` (canonical match — case
|
|
1985
|
+
* and non-alphanumerics are ignored, so an archive column name maps to its CK attribute). Returns
|
|
1986
|
+
* `groupValue → rtIds`. Optionally restricted to `restrictRtIds` (an entity-selector scope) —
|
|
1987
|
+
* entities outside that set are dropped. Entities whose group attribute is missing/null are
|
|
1988
|
+
* omitted (they cannot be attributed to a line). The population is bounded to
|
|
1989
|
+
* {@link ENTITY_GROUP_FETCH_CAP}; a truncated read is logged (never silently capped).
|
|
1990
|
+
*/
|
|
1991
|
+
fetchEntityGroups(ckTypeId: string, groupField: string, restrictRtIds?: string[]): Promise<Map<string, string[]>>;
|
|
1992
|
+
private buildStreamDataArg;
|
|
1993
|
+
private mapColumns;
|
|
1994
|
+
private mapRuntimeRows;
|
|
1995
|
+
private mapStreamDataRows;
|
|
1996
|
+
private mapCells;
|
|
1997
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<QueryExecutorService, never>;
|
|
1998
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<QueryExecutorService>;
|
|
1999
|
+
}
|
|
2000
|
+
|
|
2001
|
+
/**
|
|
2002
|
+
* Resolution state of one entity selector's stream-data scope (AB#7721). Kept
|
|
2003
|
+
* transiently by `MeshBoardStateService`, written by the view while a pick is
|
|
2004
|
+
* resolved to its source rtIds.
|
|
2005
|
+
*
|
|
2006
|
+
* - `pending`: the pick is being resolved (one-hop childScope traversal).
|
|
2007
|
+
* - `resolved`: the pick resolved to `rtIds` — possibly none.
|
|
2008
|
+
* - `failed`: the resolution threw (e.g. the association fetch failed).
|
|
2009
|
+
*
|
|
2010
|
+
* A selector without an entry has no active pick: bound widgets keep the
|
|
2011
|
+
* query's persisted scope.
|
|
2012
|
+
*/
|
|
2013
|
+
type EntitySelectorScopeState = {
|
|
2014
|
+
status: 'pending';
|
|
2015
|
+
} | {
|
|
2016
|
+
status: 'resolved';
|
|
2017
|
+
rtIds: string[];
|
|
2018
|
+
} | {
|
|
2019
|
+
status: 'failed';
|
|
2020
|
+
};
|
|
2021
|
+
/**
|
|
2022
|
+
* What a widget bound to an entity selector does with its stream-data query
|
|
2023
|
+
* (AB#7721). Returned by `MeshBoardStateService.resolveStreamDataScope`.
|
|
2024
|
+
*
|
|
2025
|
+
* - `unscoped`: no binding, a runtime query, or no active pick — query with the
|
|
2026
|
+
* persisted scope (unchanged behaviour).
|
|
2027
|
+
* - `pending`: the scope is still resolving — show the loading state and send
|
|
2028
|
+
* NO query; the view triggers a refresh once the scope is known.
|
|
2029
|
+
* - `scoped`: query with `rtIds` as `streamDataArgs.rtIds`.
|
|
2030
|
+
* - `empty`: the pick has nothing in scope (`noTargets`) or the lookup failed
|
|
2031
|
+
* (`failed`) — show the no-data state and send NO query. Never fall back to
|
|
2032
|
+
* the persisted scope: that would show rows of other entities.
|
|
2033
|
+
*/
|
|
2034
|
+
type StreamDataScope = {
|
|
2035
|
+
kind: 'unscoped';
|
|
2036
|
+
} | {
|
|
2037
|
+
kind: 'pending';
|
|
2038
|
+
} | {
|
|
2039
|
+
kind: 'scoped';
|
|
2040
|
+
rtIds: string[];
|
|
2041
|
+
} | {
|
|
2042
|
+
kind: 'empty';
|
|
2043
|
+
reason: 'noTargets' | 'failed';
|
|
2044
|
+
};
|
|
2045
|
+
/**
|
|
2046
|
+
* The result a widget renders instead of executing its query when its scope is
|
|
2047
|
+
* `empty` (AB#7721). Shape-compatible with a real empty response, so each
|
|
2048
|
+
* widget's existing no-data rendering applies unchanged.
|
|
2049
|
+
*/
|
|
2050
|
+
declare function emptyQueryExecutionResult(family: QueryFamily | undefined): QueryExecutionResult;
|
|
2051
|
+
|
|
1763
2052
|
type GetSystemPersistentQueriesQueryVariablesDto = Types.Exact<{
|
|
1764
2053
|
after?: Types.InputMaybe<Types.Scalars['String']['input']>;
|
|
1765
2054
|
first?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
@@ -2154,12 +2443,14 @@ declare class MeshBoardStateService {
|
|
|
2154
2443
|
private readonly _isModelAvailable;
|
|
2155
2444
|
private readonly _variableResolutionErrors;
|
|
2156
2445
|
/**
|
|
2157
|
-
* Transient
|
|
2158
|
-
*
|
|
2159
|
-
*
|
|
2160
|
-
*
|
|
2446
|
+
* Transient scope state of each entity selector's current selection (keyed
|
|
2447
|
+
* by selector id): `pending` while the view resolves the pick, `resolved`
|
|
2448
|
+
* with the source rtIds (one-hop childScope traversal, or the picked entity's
|
|
2449
|
+
* own rtId; possibly none), or `failed`. No entry = no active pick. Not
|
|
2450
|
+
* persisted — derived fresh from each selection, cleared on board switch
|
|
2451
|
+
* (AB#7721).
|
|
2161
2452
|
*/
|
|
2162
|
-
private readonly
|
|
2453
|
+
private readonly _entitySelectorScopes;
|
|
2163
2454
|
/**
|
|
2164
2455
|
* Transient variables published by widgets (KPI output variables, AB#5364).
|
|
2165
2456
|
* Kept apart from `_meshBoardConfig` so publishing triggers no persistence and
|
|
@@ -2441,25 +2732,66 @@ declare class MeshBoardStateService {
|
|
|
2441
2732
|
* for (AB#5157 review). `undefined` now only means the browser named no zone at all.
|
|
2442
2733
|
*/
|
|
2443
2734
|
resolveStreamDataTimeZone(): string | undefined;
|
|
2735
|
+
/**
|
|
2736
|
+
* Marks an entity selector's scope as being resolved (AB#7721). Bound
|
|
2737
|
+
* stream-data widgets show their loading state and send no query until the
|
|
2738
|
+
* scope is resolved, failed or cleared — so they never flash rows of the
|
|
2739
|
+
* query's persisted (unscoped) scope while a pick is resolving.
|
|
2740
|
+
*/
|
|
2741
|
+
setEntitySelectorScopePending(selectorId: string): void;
|
|
2444
2742
|
/**
|
|
2445
2743
|
* Stores the source rtIds resolved from an entity selector's current
|
|
2446
2744
|
* selection. Called by the view component after a selection resolves (the
|
|
2447
2745
|
* one-hop childScope traversal, or the picked entity's own rtId when the
|
|
2448
|
-
* selector has no childScope).
|
|
2746
|
+
* selector has no childScope). An empty array is a resolved EMPTY scope:
|
|
2747
|
+
* bound widgets show no data and send no query (AB#7721). Transient — not
|
|
2748
|
+
* persisted.
|
|
2749
|
+
*/
|
|
2750
|
+
setEntitySelectorRtIds(selectorId: string, rtIds: string[]): void;
|
|
2751
|
+
/**
|
|
2752
|
+
* Marks an entity selector's scope resolution as failed (e.g. the association
|
|
2753
|
+
* fetch threw). Bound widgets treat it like an empty scope — no data, no
|
|
2754
|
+
* query — and the view tells the user the scope could not be resolved
|
|
2755
|
+
* (AB#7721).
|
|
2756
|
+
*/
|
|
2757
|
+
setEntitySelectorScopeFailed(selectorId: string): void;
|
|
2758
|
+
/**
|
|
2759
|
+
* Clears the scope state for an entity selector (its selection was cleared).
|
|
2760
|
+
* Bound widgets then query with the persisted scope again.
|
|
2761
|
+
*/
|
|
2762
|
+
clearEntitySelectorRtIds(selectorId: string): void;
|
|
2763
|
+
/** The raw scope state of a selector, or `undefined` when it has no active pick. */
|
|
2764
|
+
getEntitySelectorScopeState(selectorId: string): EntitySelectorScopeState | undefined;
|
|
2765
|
+
/**
|
|
2766
|
+
* Ids of the selectors whose scope resolution failed (for the view's
|
|
2767
|
+
* "could not resolve the scope" notice, AB#7721).
|
|
2449
2768
|
*/
|
|
2450
|
-
|
|
2769
|
+
readonly failedEntitySelectorScopeIds: _angular_core.Signal<string[]>;
|
|
2451
2770
|
/**
|
|
2452
|
-
*
|
|
2453
|
-
*
|
|
2771
|
+
* Decides how a widget bound to an entity selector runs its stream-data query
|
|
2772
|
+
* (AB#7721):
|
|
2773
|
+
*
|
|
2774
|
+
* - `unscoped` — no binding, a runtime query (`family === 'runtime'`, the
|
|
2775
|
+
* binding is ignored there), or no active pick: keep the persisted scope.
|
|
2776
|
+
* - `pending` — the pick is still resolving: show loading, send no query.
|
|
2777
|
+
* - `scoped` — query with the resolved source rtIds.
|
|
2778
|
+
* - `empty` — the pick has nothing in scope or the lookup failed: show the
|
|
2779
|
+
* no-data state and send no query. Never fall back to the persisted scope.
|
|
2780
|
+
*
|
|
2781
|
+
* A legacy config without `queryFamily` is treated as stream data.
|
|
2454
2782
|
*/
|
|
2455
|
-
|
|
2783
|
+
resolveStreamDataScope(entitySelectorId?: string, family?: QueryFamily): StreamDataScope;
|
|
2456
2784
|
/**
|
|
2457
|
-
* Resolves the stream-data `rtIds`
|
|
2458
|
-
*
|
|
2459
|
-
*
|
|
2460
|
-
*
|
|
2785
|
+
* Resolves the stream-data `rtIds` for a persistent-query widget bound to an
|
|
2786
|
+
* entity selector: the resolved source rtIds when the scope is `scoped`,
|
|
2787
|
+
* otherwise `undefined`.
|
|
2788
|
+
*
|
|
2789
|
+
* `undefined` does NOT mean "query with the persisted scope" for a pending or
|
|
2790
|
+
* empty scope — callers must check {@link resolveStreamDataScope} first and
|
|
2791
|
+
* skip the query for `pending` / `empty` (AB#7721).
|
|
2461
2792
|
*/
|
|
2462
2793
|
resolveStreamDataRtIds(entitySelectorId?: string): string[] | undefined;
|
|
2794
|
+
private setEntitySelectorScope;
|
|
2463
2795
|
/**
|
|
2464
2796
|
* Updates the time filter configuration.
|
|
2465
2797
|
*/
|
|
@@ -3069,233 +3401,6 @@ declare class MeshBoardGridService {
|
|
|
3069
3401
|
/** @deprecated Use MeshBoardGridService instead */
|
|
3070
3402
|
declare const DashboardGridService: typeof MeshBoardGridService;
|
|
3071
3403
|
|
|
3072
|
-
/**
|
|
3073
|
-
* Result of resolution-aware series routing (AB#4290). The caller runs the existing
|
|
3074
|
-
* stream-data downsampling query against {@link archiveRtId} with `limit = points`
|
|
3075
|
-
* and the column aggregation set to {@link reducingFunction}. `signal` is a truthful
|
|
3076
|
-
* outcome the widget can surface (e.g. a "resolution-limited" hint).
|
|
3077
|
-
*
|
|
3078
|
-
* The coverage signal (AB#5157) rides the same fields: `signal` is `CoverageLimited` when the
|
|
3079
|
-
* resolver's coverage filter skipped a finer rung because it holds no measured data over the
|
|
3080
|
-
* requested window, `actualPoints` / `diagnostic` carry the deliverable count and the rung that
|
|
3081
|
-
* was excluded, and {@link finerRungAvailableFrom} says from when that finer rung could serve.
|
|
3082
|
-
*/
|
|
3083
|
-
interface SeriesResolutionResult {
|
|
3084
|
-
archiveRtId: string;
|
|
3085
|
-
effectiveBucketMs: number;
|
|
3086
|
-
points: number;
|
|
3087
|
-
reducingFunction: CkRollupFunctionDto;
|
|
3088
|
-
signal: SeriesResolutionSignalDto;
|
|
3089
|
-
actualPoints: number | null;
|
|
3090
|
-
diagnostic: string | null;
|
|
3091
|
-
/**
|
|
3092
|
-
* Earliest instant from which the coverage-excluded finer rung would be usable (AB#5157).
|
|
3093
|
-
* Set only on `CoverageLimited`, null otherwise. Passed through as the wire delivers it —
|
|
3094
|
-
* a `DateTime` scalar arrives as an ISO string unless a scalar parser turns it into a `Date` —
|
|
3095
|
-
* so read it through `toInstant` / `formatInstant` rather than assuming either shape.
|
|
3096
|
-
* Optional so that code constructing a result (mocks, adapters) written before AB#5157 keeps
|
|
3097
|
-
* compiling; a missing value means the same as `null`.
|
|
3098
|
-
*/
|
|
3099
|
-
finerRungAvailableFrom?: Date | string | null;
|
|
3100
|
-
}
|
|
3101
|
-
/**
|
|
3102
|
-
* Time-range and downsampling arguments for stream-data persistent queries.
|
|
3103
|
-
* Mirrors the GraphQL input `StreamDataArguments` so widgets can build it
|
|
3104
|
-
* without importing generated DTO types directly.
|
|
3105
|
-
*
|
|
3106
|
-
* Backend semantics (verified against StreamDataQueryDtoType.cs and
|
|
3107
|
-
* StreamDataVariantExecutor.cs; `queryMode` override added in AB#4233):
|
|
3108
|
-
* - `from` / `to` / `limit` override the persisted query's intrinsic values
|
|
3109
|
-
* when set (`execOverride?.From ?? simple.From` pattern in the resolver).
|
|
3110
|
-
* - `interval` is currently ignored by every variant; the downsampling path
|
|
3111
|
-
* derives `(to - from) / limit` itself.
|
|
3112
|
-
* - `queryMode: DOWNSAMPLING` on a `SimpleSdQuery` (persisted) or the transient
|
|
3113
|
-
* `simple` sub-connection now drives the downsampling execution path: with a
|
|
3114
|
-
* full from/to/limit contract the backend reduces to `limit` buckets per series
|
|
3115
|
-
* (per-type reducers + group-by source rtId). Without all three it falls back
|
|
3116
|
-
* to raw rows. For the other variants the execution shape still comes from the
|
|
3117
|
-
* CK subtype / sub-connection; `queryMode` is a no-op there.
|
|
3118
|
-
*/
|
|
3119
|
-
interface StreamDataExecutionArgs {
|
|
3120
|
-
from?: Date | null;
|
|
3121
|
-
to?: Date | null;
|
|
3122
|
-
interval?: number | null;
|
|
3123
|
-
limit?: number | null;
|
|
3124
|
-
/**
|
|
3125
|
-
* `DOWNSAMPLING` switches a SimpleSdQuery / transient `simple` query to the
|
|
3126
|
-
* downsampling path (with from/to/limit); a no-op for the other variants.
|
|
3127
|
-
* Defaults to `Default` (raw rows).
|
|
3128
|
-
*/
|
|
3129
|
-
queryMode?: QueryModeDto;
|
|
3130
|
-
/**
|
|
3131
|
-
* Source runtime ids to scope the query to. When set, replaces the persisted
|
|
3132
|
-
* RtIds on the query at execution time — used to scope a stream-data widget to
|
|
3133
|
-
* the entities resolved from a selected asset (e.g. the EnergyMeasurement rtIds
|
|
3134
|
-
* under a picked MeteringPoint). An empty array is treated as "no scope".
|
|
3135
|
-
*/
|
|
3136
|
-
rtIds?: string[] | null;
|
|
3137
|
-
}
|
|
3138
|
-
interface QueryExecutionOptions {
|
|
3139
|
-
/** Page size — passed to the GraphQL `first` variable. */
|
|
3140
|
-
first?: number | null;
|
|
3141
|
-
/** Cursor — passed to the GraphQL `after` variable. */
|
|
3142
|
-
after?: string | null;
|
|
3143
|
-
/** Optional column / row sort definitions. */
|
|
3144
|
-
sortOrder?: SortDto[] | null;
|
|
3145
|
-
/** Field filters applied to the query rows. */
|
|
3146
|
-
fieldFilter?: FieldFilterDto[] | null;
|
|
3147
|
-
/** Stream-data-only: time-range, interval, limit, queryMode. Ignored for runtime queries. */
|
|
3148
|
-
streamDataArgs?: StreamDataExecutionArgs | null;
|
|
3149
|
-
/** Force a network round-trip instead of using the Apollo cache. */
|
|
3150
|
-
forceRefresh?: boolean;
|
|
3151
|
-
}
|
|
3152
|
-
interface QueryColumnInfo {
|
|
3153
|
-
attributePath: string;
|
|
3154
|
-
attributeValueType?: string | null;
|
|
3155
|
-
aggregationType?: string | null;
|
|
3156
|
-
}
|
|
3157
|
-
interface QueryCell {
|
|
3158
|
-
attributePath: string;
|
|
3159
|
-
value: unknown;
|
|
3160
|
-
}
|
|
3161
|
-
/**
|
|
3162
|
-
* Unified result-row shape across runtime and stream-data queries.
|
|
3163
|
-
* `__typename` lets callers distinguish row kinds when needed
|
|
3164
|
-
* (`RtSimpleQueryRow`, `RtAggregationQueryRow`, `RtGroupingAggregationQueryRow`,
|
|
3165
|
-
* `StreamDataQueryRow`).
|
|
3166
|
-
*
|
|
3167
|
-
* Stream-data rows surface `timestamp`, `rtWellKnownName`,
|
|
3168
|
-
* `rtCreationDateTime`, and `rtChangedDateTime` directly on the row — useful
|
|
3169
|
-
* for time-series x-axes. Runtime rows leave those fields undefined.
|
|
3170
|
-
*/
|
|
3171
|
-
interface QueryResultRow {
|
|
3172
|
-
__typename?: string;
|
|
3173
|
-
rtId?: string | null;
|
|
3174
|
-
ckTypeId?: string | null;
|
|
3175
|
-
timestamp?: Date | null;
|
|
3176
|
-
rtWellKnownName?: string | null;
|
|
3177
|
-
rtCreationDateTime?: Date | null;
|
|
3178
|
-
rtChangedDateTime?: Date | null;
|
|
3179
|
-
cells: QueryCell[];
|
|
3180
|
-
}
|
|
3181
|
-
interface QueryExecutionResult {
|
|
3182
|
-
family: QueryFamily;
|
|
3183
|
-
queryRtId?: string | null;
|
|
3184
|
-
associatedCkTypeId?: string | null;
|
|
3185
|
-
columns: QueryColumnInfo[];
|
|
3186
|
-
rows: QueryResultRow[];
|
|
3187
|
-
totalCount: number;
|
|
3188
|
-
hasNextPage: boolean;
|
|
3189
|
-
endCursor?: string | null;
|
|
3190
|
-
}
|
|
3191
|
-
/**
|
|
3192
|
-
* Executes persistent queries by rtId and returns a unified result shape
|
|
3193
|
-
* regardless of whether the underlying query is runtime-data or stream-data.
|
|
3194
|
-
*
|
|
3195
|
-
* Widgets consume `QueryExecutionResult` and stay agnostic about which family
|
|
3196
|
-
* the saved query belongs to — switching a widget's data source between
|
|
3197
|
-
* runtime and stream-data is purely a configuration change.
|
|
3198
|
-
*/
|
|
3199
|
-
declare class QueryExecutorService {
|
|
3200
|
-
private readonly runtimeGql;
|
|
3201
|
-
private readonly streamDataGql;
|
|
3202
|
-
private readonly persistentQueriesGql;
|
|
3203
|
-
private readonly resolveSeriesGql;
|
|
3204
|
-
private readonly queryArchiveGql;
|
|
3205
|
-
private readonly downsampleGql;
|
|
3206
|
-
private readonly entitiesGql;
|
|
3207
|
-
private readonly secretSafeNames;
|
|
3208
|
-
/**
|
|
3209
|
-
* Cache of resolved query families, keyed by query rtId. Filled lazily for
|
|
3210
|
-
* legacy widget configs that pre-date the `queryFamily` field — saves a
|
|
3211
|
-
* round-trip on every refresh.
|
|
3212
|
-
*/
|
|
3213
|
-
private readonly familyCache;
|
|
3214
|
-
execute(family: QueryFamily | undefined, queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
3215
|
-
/**
|
|
3216
|
-
* Resolves the family of a persistent query by rtId. Falls back to
|
|
3217
|
-
* `'runtime'` when the query type cannot be classified — this matches the
|
|
3218
|
-
* pre-Phase-1 behavior.
|
|
3219
|
-
*/
|
|
3220
|
-
resolveFamily(queryRtId: string): Promise<QueryFamily>;
|
|
3221
|
-
executeRuntime(queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
3222
|
-
executeStreamData(queryRtId: string, options?: QueryExecutionOptions): Observable<QueryExecutionResult>;
|
|
3223
|
-
/**
|
|
3224
|
-
* Resolution-aware series routing (AB#4290): asks the backend which archive/rollup to
|
|
3225
|
-
* query for a base archive family, time window and target point count — so a widget can
|
|
3226
|
-
* render ~`targetPoints` points without knowing which physical archive holds the data at a
|
|
3227
|
-
* usable grain. The caller then runs {@link executeStreamData} (downsampling) against the
|
|
3228
|
-
* returned `archiveRtId` with `limit = points`. Returns null when StreamData is not enabled.
|
|
3229
|
-
*/
|
|
3230
|
-
resolveSeriesQuery(input: ResolveSeriesQueryInputDto): Promise<SeriesResolutionResult | null>;
|
|
3231
|
-
/**
|
|
3232
|
-
* Resolution-aware routing (AB#4290): reads a persisted stream-data query's base archive rtId
|
|
3233
|
-
* and target CK type WITHOUT executing the query (the `rows` sub-connection is not selected), so
|
|
3234
|
-
* a widget can feed the archive to {@link resolveSeriesQuery} and use the CK type to resolve
|
|
3235
|
-
* per-series labels. Also reads the query's persisted RtIds pin
|
|
3236
|
-
* (`System/StreamDataQuery.RtIds`) from the runtime entity — the transient downsampling path
|
|
3237
|
-
* bypasses the persisted query execution, so widgets must re-apply the pin themselves
|
|
3238
|
-
* (AB#4818). `rtIds` is null when the query has no pin (or is not a SimpleSdQuery).
|
|
3239
|
-
* Returns null when the query is missing or has no archive.
|
|
3240
|
-
*/
|
|
3241
|
-
fetchQueryArchive(queryRtId: string): Promise<{
|
|
3242
|
-
archiveRtId: string;
|
|
3243
|
-
ckTypeId: string | null;
|
|
3244
|
-
rtIds: string[] | null;
|
|
3245
|
-
} | null>;
|
|
3246
|
-
/**
|
|
3247
|
-
* Resolution-aware routing (AB#4290): runs the AB#4233 downsampling query against an explicit
|
|
3248
|
-
* archive rtId (the rollup/base chosen by {@link resolveSeriesQuery}), reducing `sourcePath`
|
|
3249
|
-
* with `aggregation` to at most `limit` buckets. The transient downsampling groups by bin
|
|
3250
|
-
* (not by source rtId), so callers that need per-series lines scope `rtIds` to one source
|
|
3251
|
-
* entity per call. Returns the unified rows; each row's single value cell carries the reduced
|
|
3252
|
-
* value under its wire column name (e.g. `amountvalue_sum`) alongside the bin `timestamp`.
|
|
3253
|
-
*/
|
|
3254
|
-
downsampleByArchive(params: {
|
|
3255
|
-
archiveRtId: string;
|
|
3256
|
-
from: Date;
|
|
3257
|
-
to: Date;
|
|
3258
|
-
limit: number;
|
|
3259
|
-
sourcePath: string;
|
|
3260
|
-
aggregation: string;
|
|
3261
|
-
rtIds?: string[] | null;
|
|
3262
|
-
fieldFilter?: FieldFilterDto[] | null;
|
|
3263
|
-
}): Promise<QueryResultRow[]>;
|
|
3264
|
-
/**
|
|
3265
|
-
* Best-effort per-series labels for resolution-aware fan-out (AB#4290): reads each source
|
|
3266
|
-
* entity's attribute matching `labelField` (canonical, case/underscore-insensitive so an archive
|
|
3267
|
-
* column name maps to its CK attribute). Entities that fail to load or lack the attribute are
|
|
3268
|
-
* simply omitted; the caller falls back to the rtId. Returns a `rtId → label` map.
|
|
3269
|
-
*/
|
|
3270
|
-
fetchSeriesLabels(ckTypeId: string, rtIds: string[], labelField: string): Promise<Map<string, string>>;
|
|
3271
|
-
/**
|
|
3272
|
-
* The non-secret attribute names of `ckTypeId` whose canonical form matches `wanted`
|
|
3273
|
-
* (SECRET-safe explicit list, AB#5542). Empty when nothing matches — the caller then falls back
|
|
3274
|
-
* as for a missing attribute.
|
|
3275
|
-
*/
|
|
3276
|
-
private matchingAttributeNames;
|
|
3277
|
-
/** Cap on the source-entity population read for group-aggregation (AB#4714). A truncated read is
|
|
3278
|
-
* logged, never silent. */
|
|
3279
|
-
private static readonly ENTITY_GROUP_FETCH_CAP;
|
|
3280
|
-
/**
|
|
3281
|
-
* Group-aggregation source resolution (AB#4714): fetches the source entities of `ckTypeId` in a
|
|
3282
|
-
* single bulk read and buckets their rtIds by the value of `groupField` (canonical match — case
|
|
3283
|
-
* and non-alphanumerics are ignored, so an archive column name maps to its CK attribute). Returns
|
|
3284
|
-
* `groupValue → rtIds`. Optionally restricted to `restrictRtIds` (an entity-selector scope) —
|
|
3285
|
-
* entities outside that set are dropped. Entities whose group attribute is missing/null are
|
|
3286
|
-
* omitted (they cannot be attributed to a line). The population is bounded to
|
|
3287
|
-
* {@link ENTITY_GROUP_FETCH_CAP}; a truncated read is logged (never silently capped).
|
|
3288
|
-
*/
|
|
3289
|
-
fetchEntityGroups(ckTypeId: string, groupField: string, restrictRtIds?: string[]): Promise<Map<string, string[]>>;
|
|
3290
|
-
private buildStreamDataArg;
|
|
3291
|
-
private mapColumns;
|
|
3292
|
-
private mapRuntimeRows;
|
|
3293
|
-
private mapStreamDataRows;
|
|
3294
|
-
private mapCells;
|
|
3295
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<QueryExecutorService, never>;
|
|
3296
|
-
static ɵprov: _angular_core.ɵɵInjectableDeclaration<QueryExecutorService>;
|
|
3297
|
-
}
|
|
3298
|
-
|
|
3299
3404
|
/**
|
|
3300
3405
|
* Manages a `setInterval` lifecycle for MeshBoard auto-refresh.
|
|
3301
3406
|
*
|
|
@@ -5393,6 +5498,7 @@ declare class StatsGridWidgetComponent implements OnInit, OnChanges {
|
|
|
5393
5498
|
*/
|
|
5394
5499
|
private resolveStatValue;
|
|
5395
5500
|
private loadPersistentQueryValue;
|
|
5501
|
+
private scopeOf;
|
|
5396
5502
|
private buildStreamDataArgs;
|
|
5397
5503
|
private convertFiltersToDto;
|
|
5398
5504
|
private getColorClass;
|
|
@@ -5985,6 +6091,7 @@ declare class SummaryCardWidgetComponent implements DashboardWidget<SummaryCardW
|
|
|
5985
6091
|
private loadData;
|
|
5986
6092
|
private fetchTileValue;
|
|
5987
6093
|
private fetchPersistentQueryValue;
|
|
6094
|
+
private scopeOf;
|
|
5988
6095
|
private buildStreamDataArgs;
|
|
5989
6096
|
private convertFiltersToDto;
|
|
5990
6097
|
private fetchEntityAttributes;
|
|
@@ -6278,6 +6385,12 @@ interface MeshBoardMessages {
|
|
|
6278
6385
|
tableList?: Partial<ListViewMessages>;
|
|
6279
6386
|
/** Placeholder of a table widget without data source / columns. Default: "Table not configured" */
|
|
6280
6387
|
tableNotConfigured?: string;
|
|
6388
|
+
/**
|
|
6389
|
+
* Board notice when an entity selector's stream-data scope could not be resolved (AB#7721);
|
|
6390
|
+
* `{label}` is replaced by the selector label. Default:
|
|
6391
|
+
* 'Could not resolve the scope of "{label}" - widgets bound to it show no data.'
|
|
6392
|
+
*/
|
|
6393
|
+
scopeResolutionFailed?: string;
|
|
6281
6394
|
}
|
|
6282
6395
|
/** Default texts of {@link MeshBoardMessages} (the list texts default inside `mm-list-view`). */
|
|
6283
6396
|
declare const DEFAULT_MESHBOARD_MESSAGES: Required<Omit<MeshBoardMessages, 'tableList'>>;
|
|
@@ -6446,6 +6559,7 @@ declare class EntitySelectorEditorComponent {
|
|
|
6446
6559
|
private readonly attributeSelectorService;
|
|
6447
6560
|
private readonly variableService;
|
|
6448
6561
|
private readonly getEntitiesByCkTypeGQL;
|
|
6562
|
+
private readonly confirmationService;
|
|
6449
6563
|
entitySelectors: EntitySelectorConfig[];
|
|
6450
6564
|
/** Existing variable names from other sources (static variables, other selectors) for duplicate detection */
|
|
6451
6565
|
existingVariableNames: string[];
|
|
@@ -6468,6 +6582,9 @@ declare class EntitySelectorEditorComponent {
|
|
|
6468
6582
|
protected editChildScopeTargetCkTypeItem: CkTypeSelectorItem | null;
|
|
6469
6583
|
protected editChildScopeRoleId: string;
|
|
6470
6584
|
protected editChildScopeDirection: 'in' | 'out';
|
|
6585
|
+
protected editFollowsSelectorId: string;
|
|
6586
|
+
/** Why choosing the leader changed the form (CK type fixed, mappings/default cleared). */
|
|
6587
|
+
protected followNotice: string;
|
|
6471
6588
|
protected defaultEntityDataSource: RuntimeEntitySelectDataSource | null;
|
|
6472
6589
|
protected defaultEntityDialogDataSource: RuntimeEntityDialogDataSource | null;
|
|
6473
6590
|
/**
|
|
@@ -6481,7 +6598,29 @@ declare class EntitySelectorEditorComponent {
|
|
|
6481
6598
|
/**
|
|
6482
6599
|
* Removes an entity selector at the given index.
|
|
6483
6600
|
*/
|
|
6484
|
-
removeSelector(index: number): void
|
|
6601
|
+
removeSelector(index: number): Promise<void>;
|
|
6602
|
+
/** Selectors the edited selector may follow (non-followers, never itself). */
|
|
6603
|
+
get leaderOptions(): EntitySelectorConfig[];
|
|
6604
|
+
/** Selectors that follow the edited selector (it then cannot follow one itself). */
|
|
6605
|
+
get followedBy(): EntitySelectorConfig[];
|
|
6606
|
+
/** True when the stored leader is not among the selectable leaders (deleted or a follower). */
|
|
6607
|
+
get isLeaderUnavailable(): boolean;
|
|
6608
|
+
/** "A, B and C" of the selectors following the edited one. */
|
|
6609
|
+
get followedByLabels(): string;
|
|
6610
|
+
/** Validation message of the "Follows" choice, or '' when it is valid. */
|
|
6611
|
+
get followError(): string;
|
|
6612
|
+
/** True while the edited selector follows another one. */
|
|
6613
|
+
get isFollower(): boolean;
|
|
6614
|
+
/**
|
|
6615
|
+
* Handles a change of the "Follows" choice. Choosing a leader fixes the CK type
|
|
6616
|
+
* to the leader's (clearing default entity and mappings with a notice when the
|
|
6617
|
+
* type changes) and hides the toolbar option; back to none makes the CK type
|
|
6618
|
+
* editable again with "Show in Toolbar" unchecked.
|
|
6619
|
+
*/
|
|
6620
|
+
onFollowsChanged(leaderId: string): void;
|
|
6621
|
+
/** True when the selector names a leader that does not exist or is itself a follower. */
|
|
6622
|
+
isOrphanFollower(selector: EntitySelectorConfig): boolean;
|
|
6623
|
+
private applyLeaderCkType;
|
|
6485
6624
|
/**
|
|
6486
6625
|
* Handles CK type selection in the editor form.
|
|
6487
6626
|
*/
|
|
@@ -6581,6 +6720,11 @@ declare class EntitySelectorToolbarComponent implements OnChanges {
|
|
|
6581
6720
|
protected selectorDataSources: Map<string, RuntimeEntitySelectDataSource>;
|
|
6582
6721
|
protected selectorDialogDataSources: Map<string, RuntimeEntityDialogDataSource>;
|
|
6583
6722
|
ngOnChanges(changes: SimpleChanges): void;
|
|
6723
|
+
/**
|
|
6724
|
+
* True when the selector renders a picker. Hidden selectors and followers
|
|
6725
|
+
* (AB#7722) never do; a follower's pick is derived from its leader.
|
|
6726
|
+
*/
|
|
6727
|
+
showsInToolbar(selector: EntitySelectorConfig): boolean;
|
|
6584
6728
|
/**
|
|
6585
6729
|
* Returns the data source for a selector.
|
|
6586
6730
|
*/
|
|
@@ -6869,8 +7013,35 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
|
|
|
6869
7013
|
* Programmatically clears an entity selector value from outside the component.
|
|
6870
7014
|
*/
|
|
6871
7015
|
clearEntitySelector(selectorId: string): void;
|
|
7016
|
+
/**
|
|
7017
|
+
* Clears one selector's pick, variables and scope state. Without a pick bound
|
|
7018
|
+
* widgets fall back to the persisted scope (AB#7721).
|
|
7019
|
+
*/
|
|
7020
|
+
private clearSelectorPick;
|
|
7021
|
+
/**
|
|
7022
|
+
* The leader `leaderId` has no pick any more: each of its followers resolves
|
|
7023
|
+
* its own `defaultRtId`, or — without one — has no pick and no scope
|
|
7024
|
+
* (AB#7722). Followers with a default are marked pending synchronously.
|
|
7025
|
+
* Returns a promise for the default resolutions, or `null` when there are none.
|
|
7026
|
+
*/
|
|
7027
|
+
private resetFollowersOf;
|
|
6872
7028
|
/** Resolution errors for runtime entity variables */
|
|
6873
7029
|
readonly variableResolutionErrors: _angular_core.Signal<_meshmakers_octo_meshboard.VariableResolutionError[]>;
|
|
7030
|
+
private readonly messages;
|
|
7031
|
+
/**
|
|
7032
|
+
* One notice per entity selector whose stream-data scope could not be
|
|
7033
|
+
* resolved (AB#7721), so "nothing in scope" (empty widgets, no notice) and
|
|
7034
|
+
* "lookup failed" (empty widgets plus this notice) are distinguishable.
|
|
7035
|
+
*/
|
|
7036
|
+
protected readonly scopeResolutionErrors: _angular_core.Signal<{
|
|
7037
|
+
selectorId: string;
|
|
7038
|
+
message: string;
|
|
7039
|
+
}[]>;
|
|
7040
|
+
/**
|
|
7041
|
+
* Per-selector sequence number of the latest scope resolution, so a slower
|
|
7042
|
+
* resolution of an earlier pick never overwrites the scope of a newer pick.
|
|
7043
|
+
*/
|
|
7044
|
+
private readonly scopeRequestSeq;
|
|
6874
7045
|
/**
|
|
6875
7046
|
* Handles time range change from the time range picker.
|
|
6876
7047
|
* No-op: refresh is triggered by onTimeSelectionChange to ensure variables are updated first.
|
|
@@ -6992,9 +7163,40 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
|
|
|
6992
7163
|
*/
|
|
6993
7164
|
private initializeEntitySelectors;
|
|
6994
7165
|
/**
|
|
6995
|
-
*
|
|
7166
|
+
* The initial pick of each entity selector. Priority: route data > URL
|
|
7167
|
+
* params > defaultRtId. Selectors without a pick are left out.
|
|
7168
|
+
*
|
|
7169
|
+
* Followers (AB#7722) never read route data or the URL: a follower takes its
|
|
7170
|
+
* leader's initial pick (`viaLeader: true`, resolved together with the
|
|
7171
|
+
* leader) and falls back to its own `defaultRtId` only when the leader has
|
|
7172
|
+
* none. An unknown or chained leader counts as "leader has no pick"; with
|
|
7173
|
+
* `warn` set this logs a console warning.
|
|
7174
|
+
*/
|
|
7175
|
+
private initialEntitySelectorPicks;
|
|
7176
|
+
/**
|
|
7177
|
+
* Marks the scope of every selector that has an initial pick as pending
|
|
7178
|
+
* (AB#7721). Called synchronously right after a board is loaded, before
|
|
7179
|
+
* change detection renders its widgets, so a bound stream-data widget starts
|
|
7180
|
+
* in its loading state instead of querying the persisted (unscoped) scope.
|
|
7181
|
+
* Selectors without a pick stay without scope state (persisted scope).
|
|
7182
|
+
*/
|
|
7183
|
+
private primeEntitySelectorScopes;
|
|
7184
|
+
/**
|
|
7185
|
+
* Resolves variables for an entity selector by fetching entity attributes,
|
|
7186
|
+
* then its stream-data scope.
|
|
7187
|
+
*
|
|
7188
|
+
* A leader's pick is also the pick of all its followers (AB#7722): they are
|
|
7189
|
+
* marked pending together with the leader, the picked entity is fetched
|
|
7190
|
+
* once, and each follower gets its own variables (its attribute mappings,
|
|
7191
|
+
* `<id>_rtId`, `<id>_rtCkTypeId`), its own scope (its `childScope`) and the
|
|
7192
|
+
* leader's selection. Returns the picked entity's display name.
|
|
6996
7193
|
*/
|
|
6997
7194
|
private resolveEntitySelectorVariables;
|
|
7195
|
+
/**
|
|
7196
|
+
* The variables one selector derives from the picked entity: its attribute
|
|
7197
|
+
* mappings plus the auto-exposed `<id>_rtId` and `<id>_rtCkTypeId`.
|
|
7198
|
+
*/
|
|
7199
|
+
private selectorVariables;
|
|
6998
7200
|
/**
|
|
6999
7201
|
* Resolves the set of source rtIds that a stream-data widget bound to this
|
|
7000
7202
|
* selector should be scoped to, and caches them on the state service.
|
|
@@ -7005,6 +7207,13 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
|
|
|
7005
7207
|
* no childScope, the picked entity's own rtId is the scope (direct keying).
|
|
7006
7208
|
*/
|
|
7007
7209
|
private resolveEntitySelectorScopeRtIds;
|
|
7210
|
+
/**
|
|
7211
|
+
* Starts the scope resolution of a new pick: marks the scope pending and
|
|
7212
|
+
* returns the sequence number that identifies this resolution (AB#7721).
|
|
7213
|
+
*/
|
|
7214
|
+
private beginScopeResolution;
|
|
7215
|
+
/** Marks the scope failed — unless a newer pick has started resolving meanwhile. */
|
|
7216
|
+
private failScopeResolution;
|
|
7008
7217
|
/**
|
|
7009
7218
|
* Writes entity selector selections to URL query parameters.
|
|
7010
7219
|
* Format: es_<selectorId>=<rtId>
|
|
@@ -8888,5 +9097,5 @@ declare function pipelineExecutionInputs(children: (unknown | null)[] | null | u
|
|
|
8888
9097
|
*/
|
|
8889
9098
|
declare function countPipelineExecutions(pipelines: PipelineExecutionInput[], now?: number): PipelineExecutionCounts;
|
|
8890
9099
|
|
|
8891
|
-
export { ADAPTER_OFFLINE_GRACE_MS, ATTENTION_SEVERITY_ORDER, AdaptersAttentionProvider, AddWidgetDialogComponent, AiInsightsConfigDialogComponent, AiInsightsService, AiInsightsWidgetComponent, AlertBannerConfigDialogComponent, AlertBannerWidgetComponent, AlertListConfigDialogComponent, AlertListWidgetComponent, AssociationsConfigDialogComponent, AttentionListConfigDialogComponent, AttentionListWidgetComponent, AutoRefreshTimerService, BUILT_IN_ATTENTION_PROVIDERS, BarChartConfigDialogComponent, BarChartWidgetComponent, BlueprintUpdatesAttentionProvider, COCKPIT_ADAPTER_LIMIT, COCKPIT_ATTENTION_PROVIDERS, COCKPIT_BLUEPRINT_CATALOG_LIMIT, COCKPIT_CHILD_TENANT_IDS, COCKPIT_DATA_FLOW_LIMIT, COCKPIT_EXPLAIN_HANDLER, COCKPIT_FAILED_EXECUTIONS_OPTIONS, COCKPIT_KPI_GATES, COCKPIT_KPI_SLOW_LOADING_MS, COCKPIT_LINK_RESOLVER, COCKPIT_RECENT_ITEMS, COCKPIT_ROLES, COCKPIT_SERVICE_NAMES, COCKPIT_VERSION_SOURCE, COCKPIT_VIEWER_ACCESS, COCKPIT_WIDGET_MESSAGES, COCKPIT_WIDGET_TYPES, CkModelsResolveFailedAttentionProvider, CockpitAdapterStatesService, CockpitAttentionService, CockpitBlueprintStatusService, CockpitChildTenantsService, CockpitCkModelStatesService, CockpitContextService, CockpitDataFlowExecutionsService, CockpitKpiConfigDialogComponent, CockpitKpiService, CockpitKpiWidgetComponent, CockpitServiceHealthService, DAY_MS, DEFAULT_ATTENTION_MAX_ITEMS, DEFAULT_COCKPIT_WIDGET_MESSAGES, DEFAULT_FAILED_EXECUTIONS_OPTIONS, DEFAULT_MESHBOARD_MESSAGES, DEFAULT_RECENT_ITEMS_MAX, DEFAULT_TIME_ZONE_MODE, DashboardDataService, DashboardGridService, EditModeStateService, EditWidgetDialogComponent, EntityAssociationsWidgetComponent, EntityCardConfigDialogComponent, EntityCardWidgetComponent, EntityDetailDialogComponent, EntitySelectorEditorComponent, EntitySelectorToolbarComponent, FALLBACK_SERIES_COLORS, FailedExecutionsAttentionProvider, FeaturesNotInstalledAttentionProvider, GaugeConfigDialogComponent, GaugeWidgetComponent, HISTOGRAM_HOURS, HOUR_MS, HeatmapConfigDialogComponent, HeatmapWidgetComponent, KPI_ERROR_TEXT, KpiConfigDialogComponent, KpiWidgetComponent, LazyMarkdownComponent, LineChartConfigDialogComponent, LineChartWidgetComponent, MAX_RECENT_ITEMS, MESHBOARD_CHROME_ROUTE_DATA, MESHBOARD_DESCRIPTION_MARKER, MESHBOARD_EDIT_QUERY_PARAM, MESHBOARD_HEADER_MODE_ROUTE_DATA, MESHBOARD_LABEL_RESOLVER, MESHBOARD_MESSAGES, MESHBOARD_OPTIONS, MESHBOARD_TENANT_ID_PROVIDER, MarkdownConfigDialogComponent, MarkdownWidgetComponent, MeshBoardDataService, MeshBoardGridService, MeshBoardManagerDialogComponent, MeshBoardPersistenceService, MeshBoardSettingsDialogComponent, MeshBoardSettingsResult, MeshBoardStateService, MeshBoardViewComponent, NOT_AVAILABLE_TEXT, PieChartConfigDialogComponent, PieChartWidgetComponent, QueryExecutorService, QuerySelectorComponent, RecentItemsConfigDialogComponent, RecentItemsWidgetComponent, RuntimeEntitySelectorComponent, SERVICE_MANAGED_BLUEPRINT_PREFIX, STATE_STATUS_BY_KEY, ServiceHealthConfigDialogComponent, ServiceHealthWidgetComponent, ServicesHealthAttentionProvider, StatsGridConfigDialogComponent, StatsGridWidgetComponent, StatusIndicatorConfigDialogComponent, StatusIndicatorWidgetComponent, StatusListConfigDialogComponent, StatusListWidgetComponent, SummaryCardConfigDialogComponent, SummaryCardWidgetComponent, TableConfigDialogComponent, TableWidgetComponent, TableWidgetDataSourceDirective, UnregisteredPoolsAttentionProvider, WidgetFactoryService, WidgetGroupComponent, WidgetGroupConfigDialogComponent, WidgetNotConfiguredComponent, WidgetRegistryService, adapterKpi, adaptersInError, adaptersOffline, blueprintUpdatesKpi, buildHourlyHistogram, categoryStatus, chartSeriesColors, ckModelKpi, classifyQuery, compareBlueprintVersions, compareMeshBoardNavigation, countFlowExecutions, countLabel, countPipelineExecutions, enabledButNotInstalled, executionKpi, failedExecutionsSeverity, formatCockpitMessage, formatCount, humanizeCategory, isAdapterAtRest, isAdapterExpectedToRun, isAdapterOnline, isCockpitWidgetType, isMeshBoardChrome, isMeshBoardHeaderMode, isServiceConfigured, joinEncodedDescription, kpiKindOf, latestStatisticsUpdate, legacyCockpitLinkTarget, loadNgxMarkdown, nameList, newMeshBoardConfig, normalizeNavigation, observeThemeChanges, pipelineExecutionInputs, plural, provideCockpitWidgetHost, provideCockpitWidgets, provideDefaultWidgets, provideMeshBoard, provideMeshBoardMessages, provideProcessWidget, provideWidgetRegistrations, queryFamily, readMeshBoardNavigation, recentRelativeTime, registerCockpitWidgets, registerDefaultWidgets, registerProcessWidget, resolveChartColor, resolveCockpitWidgetMessages, resolveMeshBoardChrome, resolveMeshBoardHeaderMode, resolveMeshBoardLabel, resolveMeshBoardMessages, selectProviders, serviceStateText, servicesHealthKpi, sortAttentionFindings, sparklineGeometry, splitBlueprintId, splitEncodedDescription, statusColor, summarizeAdapterOnline, tenantCountKpi, toBlueprintStatus, toServiceHealthStatus, truncationNote, versionKpi, withMeshBoardNavigation };
|
|
8892
|
-
export type { AdapterOnlineFields, AdapterOnlineSummary, AdapterStatusWidgetConfig, AggregationDataSource, AggregationQuery, AggregationType, AiInsightsConfigResult, AiInsightsWidgetConfig, AlertBannerConfigResult, AlertBannerWidgetConfig, AlertListConfigResult, AlertListWidgetConfig, AnyWidgetConfig, AssociationsConfigResult, AttentionContext, AttentionFinding, AttentionLink, AttentionListConfigResult, AttentionListWidgetConfig, AttentionProvider, AttentionProviderInfo, AttentionSeverity, AttentionState, BarChartColorThreshold, BarChartConfigResult, BarChartSeries, BarChartType, BarChartWidgetConfig, BaseWidgetConfig, BlueprintUpdatesWidgetConfig, CategoryStatus, CategoryValueItem, ChartReferenceLine, CkModelStateWidgetConfig, CkQueryResult, CkQueryTarget, CkTypeAttributeInfo, CockpitAdapterState, CockpitAdapterStates, CockpitBlueprintStatus, CockpitBlueprintUpdate, CockpitChildTenants, CockpitCkModelCounts, CockpitDataFlowExecutions, CockpitDataFlowRow, CockpitExecutionCounts, CockpitExplainHandler, CockpitExplainTarget, CockpitKpi, CockpitKpiConfigResult, CockpitKpiKind, CockpitKpiResult, CockpitKpiStatus, CockpitKpiWidgetConfig, CockpitKpiWidgetOptions, CockpitLinkQueryParams, CockpitLinkResolver, CockpitLinkTarget, CockpitRecentItem, CockpitRecentItemKind, CockpitRecentItemsSource, CockpitResolvedLink, CockpitRouteLinkTarget, CockpitServiceHealth, CockpitServiceHealthStatus, CockpitServiceKey, CockpitVersionEntry, CockpitVersionSource, CockpitViewerAccess, CockpitWidgetHost, CockpitWidgetMessages, CockpitWidgetMessagesSource, CockpitWidgetType, ConfigDialogResult, ConfigResultApplier, ConstructionKitQueryDataSource, DashboardConfig, DashboardWidget, DataSource, DataSourceType, DiagramPropertyMapping, EncodedDescription, EntityAssociation, EntityAttribute, EntityCardConfigResult, EntityCardWidgetConfig, EntityListWidget, EntitySelectorAttributeMapping, EntitySelectorChildScope, EntitySelectorClearEvent, EntitySelectorConfig, EntitySelectorEvent, EntityWidget, EntityWithAssociationsWidgetConfig, FailedExecutionsAttentionOptions, GaugeConfigResult, GaugeRange, GaugeType, GaugeWidgetConfig, GridCell, GridPosition, GroupChildWidgetType, GroupedDataItem, HeatmapAggregation, HeatmapColorMode, HeatmapColorScheme, HeatmapConfigResult, HeatmapWidgetConfig, HourlyExecutionBucket, HourlyHistogramOptions, KpiConfigResult, KpiDataSourceType, KpiQueryMode, KpiValueMode, KpiWidgetConfig, LatestExecutionInput, LineChartConfigResult, LineChartType, LineChartWidgetConfig, MarkdownConfigResult, MarkdownTextAlign, MarkdownWidgetConfig, MeshBoardChrome, MeshBoardConfig, MeshBoardHeaderMode, MeshBoardLabelKind, MeshBoardLabelRequest, MeshBoardLabelResolver, MeshBoardMessages, MeshBoardMessagesSource, MeshBoardNavigationConfig, MeshBoardOptions, MeshBoardTimeFilterConfig, MeshBoardTimeZoneMode, MeshBoardVariable, MeshBoardVariableSource, MeshBoardVariableType, ParentAssociationMode, PersistedDashboard, PersistedMeshBoard, PersistedWidget, PersistedWidgetData, PersistentQueryCellMode, PersistentQueryCellSource, PersistentQueryDataSource, PersistentQueryItem, PieChartConfigResult, PieChartLabelPosition, PieChartType, PieChartWidgetConfig, PipelineExecutionCounts, PipelineExecutionInput, PipelineExecutionsWidgetConfig, PipelineStatisticsInput, ProcessWidgetConfig, Quarter, QueryCell, QueryClassification, QueryColumn, QueryColumnInfo, QueryColumnItem, QueryExecutionOptions, QueryExecutionResult, QueryFamily, QueryKind, QueryResultRow, RawHourBucket, RecentItemsConfigResult, RecentItemsWidgetConfig, RelativeTimeUnit, RepeaterDataItem, RepeaterQueryDataSource, RuntimeEntityData, RuntimeEntityDataSource, RuntimeEntitySelectorValue, SeriesAggregationFunction, SeriesResolutionResult, ServiceCallDataSource, ServiceCallType, ServiceHealthConfigResult, ServiceHealthWidgetConfig, ServicesHealthWidgetConfig, SparklineGeometry, StatColor, StatItem, StaticDataSource, StatsGridConfigResult, StatsGridWidgetConfig, StatusIndicatorConfigResult, StatusIndicatorWidgetConfig, StatusListConfigResult, StatusListWidgetConfig, StreamDataExecutionArgs, SummaryCardConfigResult, SummaryCardTile, SummaryCardWidgetConfig, TableColumn, TableColumnStatusIconMapping, TableConfigResult, TableFilterConfig, TableSortConfig, TableWidgetConfig, TargetEntityWithAttributes, TenantCountWidgetConfig, TimeRangePickerConfig, TimeRangeSelection, TimeRangeType, UpdateDashboardResult, VariableResolutionError, VersionInfoWidgetConfig, WidgetConfig, WidgetConfigDialog, WidgetConfigDialogSize, WidgetConfigResult, WidgetCreationOptions, WidgetDataSource, WidgetFilterConfig, WidgetGroupAttributeMappings, WidgetGroupChildTemplate, WidgetGroupConfig, WidgetGroupConfigResult, WidgetGroupLayout, WidgetPersistenceData, WidgetPositionUpdate, WidgetRegistration, WidgetType, WidgetZone };
|
|
9100
|
+
export { ADAPTER_OFFLINE_GRACE_MS, ATTENTION_SEVERITY_ORDER, AdaptersAttentionProvider, AddWidgetDialogComponent, AiInsightsConfigDialogComponent, AiInsightsService, AiInsightsWidgetComponent, AlertBannerConfigDialogComponent, AlertBannerWidgetComponent, AlertListConfigDialogComponent, AlertListWidgetComponent, AssociationsConfigDialogComponent, AttentionListConfigDialogComponent, AttentionListWidgetComponent, AutoRefreshTimerService, BUILT_IN_ATTENTION_PROVIDERS, BarChartConfigDialogComponent, BarChartWidgetComponent, BlueprintUpdatesAttentionProvider, COCKPIT_ADAPTER_LIMIT, COCKPIT_ATTENTION_PROVIDERS, COCKPIT_BLUEPRINT_CATALOG_LIMIT, COCKPIT_CHILD_TENANT_IDS, COCKPIT_DATA_FLOW_LIMIT, COCKPIT_EXPLAIN_HANDLER, COCKPIT_FAILED_EXECUTIONS_OPTIONS, COCKPIT_KPI_GATES, COCKPIT_KPI_SLOW_LOADING_MS, COCKPIT_LINK_RESOLVER, COCKPIT_RECENT_ITEMS, COCKPIT_ROLES, COCKPIT_SERVICE_NAMES, COCKPIT_VERSION_SOURCE, COCKPIT_VIEWER_ACCESS, COCKPIT_WIDGET_MESSAGES, COCKPIT_WIDGET_TYPES, CkModelsResolveFailedAttentionProvider, CockpitAdapterStatesService, CockpitAttentionService, CockpitBlueprintStatusService, CockpitChildTenantsService, CockpitCkModelStatesService, CockpitContextService, CockpitDataFlowExecutionsService, CockpitKpiConfigDialogComponent, CockpitKpiService, CockpitKpiWidgetComponent, CockpitServiceHealthService, DAY_MS, DEFAULT_ATTENTION_MAX_ITEMS, DEFAULT_COCKPIT_WIDGET_MESSAGES, DEFAULT_FAILED_EXECUTIONS_OPTIONS, DEFAULT_MESHBOARD_MESSAGES, DEFAULT_RECENT_ITEMS_MAX, DEFAULT_TIME_ZONE_MODE, DashboardDataService, DashboardGridService, EditModeStateService, EditWidgetDialogComponent, EntityAssociationsWidgetComponent, EntityCardConfigDialogComponent, EntityCardWidgetComponent, EntityDetailDialogComponent, EntitySelectorEditorComponent, EntitySelectorToolbarComponent, FALLBACK_SERIES_COLORS, FailedExecutionsAttentionProvider, FeaturesNotInstalledAttentionProvider, GaugeConfigDialogComponent, GaugeWidgetComponent, HISTOGRAM_HOURS, HOUR_MS, HeatmapConfigDialogComponent, HeatmapWidgetComponent, KPI_ERROR_TEXT, KpiConfigDialogComponent, KpiWidgetComponent, LazyMarkdownComponent, LineChartConfigDialogComponent, LineChartWidgetComponent, MAX_RECENT_ITEMS, MESHBOARD_CHROME_ROUTE_DATA, MESHBOARD_DESCRIPTION_MARKER, MESHBOARD_EDIT_QUERY_PARAM, MESHBOARD_HEADER_MODE_ROUTE_DATA, MESHBOARD_LABEL_RESOLVER, MESHBOARD_MESSAGES, MESHBOARD_OPTIONS, MESHBOARD_TENANT_ID_PROVIDER, MarkdownConfigDialogComponent, MarkdownWidgetComponent, MeshBoardDataService, MeshBoardGridService, MeshBoardManagerDialogComponent, MeshBoardPersistenceService, MeshBoardSettingsDialogComponent, MeshBoardSettingsResult, MeshBoardStateService, MeshBoardViewComponent, NOT_AVAILABLE_TEXT, PieChartConfigDialogComponent, PieChartWidgetComponent, QueryExecutorService, QuerySelectorComponent, RecentItemsConfigDialogComponent, RecentItemsWidgetComponent, RuntimeEntitySelectorComponent, SERVICE_MANAGED_BLUEPRINT_PREFIX, STATE_STATUS_BY_KEY, ServiceHealthConfigDialogComponent, ServiceHealthWidgetComponent, ServicesHealthAttentionProvider, StatsGridConfigDialogComponent, StatsGridWidgetComponent, StatusIndicatorConfigDialogComponent, StatusIndicatorWidgetComponent, StatusListConfigDialogComponent, StatusListWidgetComponent, SummaryCardConfigDialogComponent, SummaryCardWidgetComponent, TableConfigDialogComponent, TableWidgetComponent, TableWidgetDataSourceDirective, UnregisteredPoolsAttentionProvider, WidgetFactoryService, WidgetGroupComponent, WidgetGroupConfigDialogComponent, WidgetNotConfiguredComponent, WidgetRegistryService, adapterKpi, adaptersInError, adaptersOffline, blueprintUpdatesKpi, buildHourlyHistogram, categoryStatus, chartSeriesColors, ckModelKpi, classifyQuery, compareBlueprintVersions, compareMeshBoardNavigation, countFlowExecutions, countLabel, countPipelineExecutions, emptyQueryExecutionResult, enabledButNotInstalled, executionKpi, failedExecutionsSeverity, formatCockpitMessage, formatCount, humanizeCategory, isAdapterAtRest, isAdapterExpectedToRun, isAdapterOnline, isCockpitWidgetType, isMeshBoardChrome, isMeshBoardHeaderMode, isServiceConfigured, joinEncodedDescription, kpiKindOf, latestStatisticsUpdate, legacyCockpitLinkTarget, loadNgxMarkdown, nameList, newMeshBoardConfig, normalizeNavigation, observeThemeChanges, pipelineExecutionInputs, plural, provideCockpitWidgetHost, provideCockpitWidgets, provideDefaultWidgets, provideMeshBoard, provideMeshBoardMessages, provideProcessWidget, provideWidgetRegistrations, queryFamily, readMeshBoardNavigation, recentRelativeTime, registerCockpitWidgets, registerDefaultWidgets, registerProcessWidget, resolveChartColor, resolveCockpitWidgetMessages, resolveMeshBoardChrome, resolveMeshBoardHeaderMode, resolveMeshBoardLabel, resolveMeshBoardMessages, selectProviders, serviceStateText, servicesHealthKpi, sortAttentionFindings, sparklineGeometry, splitBlueprintId, splitEncodedDescription, statusColor, summarizeAdapterOnline, tenantCountKpi, toBlueprintStatus, toServiceHealthStatus, truncationNote, versionKpi, withMeshBoardNavigation };
|
|
9101
|
+
export type { AdapterOnlineFields, AdapterOnlineSummary, AdapterStatusWidgetConfig, AggregationDataSource, AggregationQuery, AggregationType, AiInsightsConfigResult, AiInsightsWidgetConfig, AlertBannerConfigResult, AlertBannerWidgetConfig, AlertListConfigResult, AlertListWidgetConfig, AnyWidgetConfig, AssociationsConfigResult, AttentionContext, AttentionFinding, AttentionLink, AttentionListConfigResult, AttentionListWidgetConfig, AttentionProvider, AttentionProviderInfo, AttentionSeverity, AttentionState, BarChartColorThreshold, BarChartConfigResult, BarChartSeries, BarChartType, BarChartWidgetConfig, BaseWidgetConfig, BlueprintUpdatesWidgetConfig, CategoryStatus, CategoryValueItem, ChartReferenceLine, CkModelStateWidgetConfig, CkQueryResult, CkQueryTarget, CkTypeAttributeInfo, CockpitAdapterState, CockpitAdapterStates, CockpitBlueprintStatus, CockpitBlueprintUpdate, CockpitChildTenants, CockpitCkModelCounts, CockpitDataFlowExecutions, CockpitDataFlowRow, CockpitExecutionCounts, CockpitExplainHandler, CockpitExplainTarget, CockpitKpi, CockpitKpiConfigResult, CockpitKpiKind, CockpitKpiResult, CockpitKpiStatus, CockpitKpiWidgetConfig, CockpitKpiWidgetOptions, CockpitLinkQueryParams, CockpitLinkResolver, CockpitLinkTarget, CockpitRecentItem, CockpitRecentItemKind, CockpitRecentItemsSource, CockpitResolvedLink, CockpitRouteLinkTarget, CockpitServiceHealth, CockpitServiceHealthStatus, CockpitServiceKey, CockpitVersionEntry, CockpitVersionSource, CockpitViewerAccess, CockpitWidgetHost, CockpitWidgetMessages, CockpitWidgetMessagesSource, CockpitWidgetType, ConfigDialogResult, ConfigResultApplier, ConstructionKitQueryDataSource, DashboardConfig, DashboardWidget, DataSource, DataSourceType, DiagramPropertyMapping, EncodedDescription, EntityAssociation, EntityAttribute, EntityCardConfigResult, EntityCardWidgetConfig, EntityListWidget, EntitySelectorAttributeMapping, EntitySelectorChildScope, EntitySelectorClearEvent, EntitySelectorConfig, EntitySelectorEvent, EntitySelectorScopeState, EntityWidget, EntityWithAssociationsWidgetConfig, FailedExecutionsAttentionOptions, GaugeConfigResult, GaugeRange, GaugeType, GaugeWidgetConfig, GridCell, GridPosition, GroupChildWidgetType, GroupedDataItem, HeatmapAggregation, HeatmapColorMode, HeatmapColorScheme, HeatmapConfigResult, HeatmapWidgetConfig, HourlyExecutionBucket, HourlyHistogramOptions, KpiConfigResult, KpiDataSourceType, KpiQueryMode, KpiValueMode, KpiWidgetConfig, LatestExecutionInput, LineChartConfigResult, LineChartType, LineChartWidgetConfig, MarkdownConfigResult, MarkdownTextAlign, MarkdownWidgetConfig, MeshBoardChrome, MeshBoardConfig, MeshBoardHeaderMode, MeshBoardLabelKind, MeshBoardLabelRequest, MeshBoardLabelResolver, MeshBoardMessages, MeshBoardMessagesSource, MeshBoardNavigationConfig, MeshBoardOptions, MeshBoardTimeFilterConfig, MeshBoardTimeZoneMode, MeshBoardVariable, MeshBoardVariableSource, MeshBoardVariableType, ParentAssociationMode, PersistedDashboard, PersistedMeshBoard, PersistedWidget, PersistedWidgetData, PersistentQueryCellMode, PersistentQueryCellSource, PersistentQueryDataSource, PersistentQueryItem, PieChartConfigResult, PieChartLabelPosition, PieChartType, PieChartWidgetConfig, PipelineExecutionCounts, PipelineExecutionInput, PipelineExecutionsWidgetConfig, PipelineStatisticsInput, ProcessWidgetConfig, Quarter, QueryCell, QueryClassification, QueryColumn, QueryColumnInfo, QueryColumnItem, QueryExecutionOptions, QueryExecutionResult, QueryFamily, QueryKind, QueryResultRow, RawHourBucket, RecentItemsConfigResult, RecentItemsWidgetConfig, RelativeTimeUnit, RepeaterDataItem, RepeaterQueryDataSource, RuntimeEntityData, RuntimeEntityDataSource, RuntimeEntitySelectorValue, SeriesAggregationFunction, SeriesResolutionResult, ServiceCallDataSource, ServiceCallType, ServiceHealthConfigResult, ServiceHealthWidgetConfig, ServicesHealthWidgetConfig, SparklineGeometry, StatColor, StatItem, StaticDataSource, StatsGridConfigResult, StatsGridWidgetConfig, StatusIndicatorConfigResult, StatusIndicatorWidgetConfig, StatusListConfigResult, StatusListWidgetConfig, StreamDataExecutionArgs, StreamDataScope, SummaryCardConfigResult, SummaryCardTile, SummaryCardWidgetConfig, TableColumn, TableColumnStatusIconMapping, TableConfigResult, TableFilterConfig, TableSortConfig, TableWidgetConfig, TargetEntityWithAttributes, TenantCountWidgetConfig, TimeRangePickerConfig, TimeRangeSelection, TimeRangeType, UpdateDashboardResult, VariableResolutionError, VersionInfoWidgetConfig, WidgetConfig, WidgetConfigDialog, WidgetConfigDialogSize, WidgetConfigResult, WidgetCreationOptions, WidgetDataSource, WidgetFilterConfig, WidgetGroupAttributeMappings, WidgetGroupChildTemplate, WidgetGroupConfig, WidgetGroupConfigResult, WidgetGroupLayout, WidgetPersistenceData, WidgetPositionUpdate, WidgetRegistration, WidgetType, WidgetZone };
|