@grafana/scenes 3.13.4--canary.648.8346644660.0 → 4.0.0--canary.640.8344205533.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/esm/components/VizPanel/VizPanelMenu.js +1 -3
  2. package/dist/esm/components/VizPanel/VizPanelMenu.js.map +1 -1
  3. package/dist/esm/components/layout/grid/SceneGridRow.js +1 -3
  4. package/dist/esm/components/layout/grid/SceneGridRow.js.map +1 -1
  5. package/dist/esm/core/sceneGraph/sceneGraph.js +16 -16
  6. package/dist/esm/core/sceneGraph/sceneGraph.js.map +1 -1
  7. package/dist/esm/core/types.js +4 -1
  8. package/dist/esm/core/types.js.map +1 -1
  9. package/dist/esm/index.js +2 -2
  10. package/dist/esm/index.js.map +1 -1
  11. package/dist/esm/querying/SceneDataLayerSet.js +99 -0
  12. package/dist/esm/querying/SceneDataLayerSet.js.map +1 -0
  13. package/dist/esm/querying/SceneDataTransformer.js +3 -3
  14. package/dist/esm/querying/SceneDataTransformer.js.map +1 -1
  15. package/dist/esm/querying/SceneQueryRunner.js +15 -30
  16. package/dist/esm/querying/SceneQueryRunner.js.map +1 -1
  17. package/dist/esm/querying/layers/SceneDataLayerBase.js +7 -18
  18. package/dist/esm/querying/layers/SceneDataLayerBase.js.map +1 -1
  19. package/dist/esm/querying/layers/SceneDataLayerControls.js +9 -46
  20. package/dist/esm/querying/layers/SceneDataLayerControls.js.map +1 -1
  21. package/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +23 -15
  22. package/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js.map +1 -1
  23. package/dist/esm/querying/mergeMultipleDataLayers.js +23 -0
  24. package/dist/esm/querying/mergeMultipleDataLayers.js.map +1 -0
  25. package/dist/esm/variables/components/VariableValueSelect.js +0 -3
  26. package/dist/esm/variables/components/VariableValueSelect.js.map +1 -1
  27. package/dist/index.d.ts +41 -29
  28. package/dist/index.js +305 -270
  29. package/dist/index.js.map +1 -1
  30. package/package.json +2 -2
  31. package/dist/esm/querying/SceneDataLayers.js +0 -21
  32. package/dist/esm/querying/SceneDataLayers.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _grafana_data from '@grafana/data';
2
- import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeRange, DataQueryRequest, DataTransformContext, DataFrame, DataTopic, PanelPlugin, EventBus, DataQuery, DataSourceApi, Registry, RegistryItem, ScopedVars, AdHocVariableFilter, SelectableValue, MetricFindValue, VariableRefresh as VariableRefresh$1, VariableSort, EventFilterOptions, AnnotationEvent, AnnotationQuery, DataTransformerConfig, PanelMenuItem, FieldConfigSource, PanelModel, AbsoluteTimeRange, InterpolateFunction, IconName as IconName$1, FieldConfig, FieldType, FieldValueMatcherConfig } from '@grafana/data';
2
+ import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeRange, DataQueryRequest, DataTransformContext, DataFrame, PanelPlugin, EventBus, DataQuery, DataSourceApi, Registry, RegistryItem, ScopedVars, AdHocVariableFilter, SelectableValue, MetricFindValue, VariableRefresh as VariableRefresh$1, VariableSort, EventFilterOptions, AnnotationEvent, AnnotationQuery, DataTransformerConfig, PanelMenuItem, FieldConfigSource, PanelModel, AbsoluteTimeRange, InterpolateFunction, IconName as IconName$1, FieldConfig, FieldType, FieldValueMatcherConfig } from '@grafana/data';
3
3
  import React$1, { CSSProperties, ComponentType } from 'react';
4
4
  import * as rxjs from 'rxjs';
5
5
  import { Observable, Unsubscribable, MonoTypeOperatorFunction, Subscription, ReplaySubject } from 'rxjs';
@@ -259,32 +259,26 @@ type SceneStateChangedHandler<TState> = (newState: TState, prevState: TState) =>
259
259
  type DeepPartial<T> = {
260
260
  [K in keyof T]?: T[K] extends object ? DeepPartial<T[K]> : T[K];
261
261
  };
262
- interface SceneDataProviderResultLike<O, T> {
263
- origin: O;
264
- data: T;
262
+ interface SceneDataProviderResult {
263
+ data: PanelData;
264
+ origin: SceneDataProvider;
265
265
  }
266
- type SceneDataProviderResult = SceneDataProviderResultLike<SceneDataProvider, PanelData>;
267
- type SceneDataLayerProviderResult = SceneDataProviderResultLike<SceneDataLayerProvider, PanelData> & {
268
- topic: DataTopic;
269
- };
270
- interface SceneDataProvider extends SceneObject<SceneDataState> {
266
+ interface SceneDataProvider<T extends SceneObjectState = SceneDataState> extends SceneObject<T> {
271
267
  setContainerWidth?: (width: number) => void;
272
268
  isDataReadyToDisplay?: () => boolean;
273
269
  cancelQuery?: () => void;
274
- getResultsStream?(): Observable<SceneDataProviderResult>;
270
+ getResultsStream(): Observable<SceneDataProviderResult>;
275
271
  }
276
- interface SceneDataLayerProviderState extends SceneObjectState {
272
+ interface SceneDataLayerProviderState extends SceneDataState {
277
273
  name: string;
278
274
  description?: string;
279
- data?: PanelData;
280
275
  isEnabled?: boolean;
281
276
  isHidden?: boolean;
282
277
  }
283
- interface SceneDataLayerProvider extends SceneObject<SceneDataLayerProviderState> {
284
- topic: DataTopic;
285
- cancelQuery?: () => void;
286
- getResultsStream(): Observable<SceneDataLayerProviderResult>;
278
+ interface SceneDataLayerProvider extends SceneDataProvider<SceneDataLayerProviderState> {
279
+ isDataLayer: true;
287
280
  }
281
+ declare function isDataLayer(obj: SceneObject): obj is SceneDataLayerProvider;
288
282
  interface DataLayerFilter {
289
283
  panelId: number;
290
284
  }
@@ -1135,9 +1129,9 @@ declare abstract class SceneDataLayerBase<T extends SceneDataLayerProviderState>
1135
1129
  */
1136
1130
  protected abstract runLayer(): void;
1137
1131
  /**
1138
- * Data topic that a given layer is responsible for.
1132
+ * Mark data provider as data layer
1139
1133
  */
1140
- abstract topic: DataTopic;
1134
+ isDataLayer: true;
1141
1135
  private _variableValueRecorder;
1142
1136
  protected _variableDependency: VariableDependencyConfig<T>;
1143
1137
  /**
@@ -1148,8 +1142,8 @@ declare abstract class SceneDataLayerBase<T extends SceneDataLayerProviderState>
1148
1142
  protected onDeactivate(): void;
1149
1143
  protected onVariableUpdateCompleted(): void;
1150
1144
  cancelQuery(): void;
1151
- protected publishResults(data: PanelData, topic: DataTopic): void;
1152
- getResultsStream(): ReplaySubject<SceneDataLayerProviderResult>;
1145
+ protected publishResults(data: PanelData): void;
1146
+ getResultsStream(): ReplaySubject<SceneDataProviderResult>;
1153
1147
  private shouldRunLayerOnActivate;
1154
1148
  /**
1155
1149
  * This helper function is to counter the contravariance of setState
@@ -1166,9 +1160,9 @@ interface AnnotationsDataLayerState extends SceneDataLayerProviderState {
1166
1160
  query: AnnotationQuery;
1167
1161
  }
1168
1162
  declare class AnnotationsDataLayer extends SceneDataLayerBase<AnnotationsDataLayerState> implements SceneDataLayerProvider {
1163
+ static Component: typeof AnnotationsDataLayerRenderer;
1169
1164
  private _scopedVars;
1170
1165
  private _timeRangeSub;
1171
- topic: DataTopic;
1172
1166
  constructor(initialState: AnnotationsDataLayerState);
1173
1167
  onEnable(): void;
1174
1168
  onDisable(): void;
@@ -1189,6 +1183,7 @@ declare class AnnotationsDataLayer extends SceneDataLayerBase<AnnotationsDataLay
1189
1183
  traceIds?: string[] | undefined;
1190
1184
  };
1191
1185
  }
1186
+ declare function AnnotationsDataLayerRenderer({ model }: SceneComponentProps<AnnotationsDataLayer>): JSX.Element | null;
1192
1187
 
1193
1188
  type index_AnnotationsDataLayer = AnnotationsDataLayer;
1194
1189
  declare const index_AnnotationsDataLayer: typeof AnnotationsDataLayer;
@@ -1260,23 +1255,40 @@ declare class SceneTimeZoneOverride extends SceneTimeRangeTransformerBase<SceneT
1260
1255
  onTimeZoneChange(timeZone: string): void;
1261
1256
  }
1262
1257
 
1263
- interface SceneDataLayersState extends SceneObjectState {
1258
+ declare abstract class SceneDataLayerSetBase<T extends SceneDataLayerProviderState> extends SceneObjectBase<T> implements SceneDataLayerProvider {
1259
+ /** Mark it as a data layer */
1260
+ isDataLayer: true;
1261
+ /**
1262
+ * Subscription to query results. Should be set when layer runs a query.
1263
+ */
1264
+ protected querySub?: Unsubscribable;
1265
+ /**
1266
+ * Subject to emit results to.
1267
+ */
1268
+ private _results;
1269
+ protected subscribeToAllLayers(layers: SceneDataLayerProvider[]): void;
1270
+ private _onLayerUpdateReceived;
1271
+ getResultsStream(): Observable<SceneDataProviderResult>;
1272
+ cancelQuery(): void;
1273
+ /**
1274
+ * This helper function is to counter the contravariance of setState
1275
+ */
1276
+ private setStateHelper;
1277
+ }
1278
+ interface SceneDataLayersSetState extends SceneDataLayerProviderState {
1264
1279
  layers: SceneDataLayerProvider[];
1265
- data?: PanelData;
1266
1280
  }
1267
- declare class SceneDataLayers extends SceneObjectBase<SceneDataLayersState> implements SceneDataProvider {
1268
- constructor(state: SceneDataLayersState);
1281
+ declare class SceneDataLayerSet extends SceneDataLayerSetBase<SceneDataLayersSetState> implements SceneDataLayerProvider {
1282
+ constructor(state: Partial<SceneDataLayersSetState>);
1269
1283
  private _onActivate;
1284
+ static Component: ({ model }: SceneComponentProps<SceneDataLayerSet>) => JSX.Element;
1270
1285
  }
1271
1286
 
1272
1287
  interface SceneDataLayerControlsState extends SceneObjectState {
1273
- layersMap: Record<string, boolean>;
1274
1288
  }
1275
1289
  declare class SceneDataLayerControls extends SceneObjectBase<SceneDataLayerControlsState> {
1276
1290
  static Component: typeof SceneDataLayerControlsRenderer;
1277
1291
  constructor();
1278
- private _onActivate;
1279
- toggleLayer(l: SceneDataLayerProvider): void;
1280
1292
  }
1281
1293
  declare function SceneDataLayerControlsRenderer({ model }: SceneComponentProps<SceneDataLayerControls>): JSX.Element | null;
1282
1294
 
@@ -2422,4 +2434,4 @@ declare const sceneUtils: {
2422
2434
  isGroupByVariable: typeof isGroupByVariable;
2423
2435
  };
2424
2436
 
2425
- export { AdHocFiltersVariable, CancelActivationHandler, ConstantVariable, ControlsLayout, CustomFormatterVariable, CustomTransformOperator, CustomVariable, CustomVariableValue, DataLayerFilter, DataRequestEnricher, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, FieldConfigBuilders, FormatVariable, GroupByVariable, InterpolationFormatParameter, IntervalVariable, LocalValueVariable, MacroVariableConstructor, MultiValueVariable, NestedScene, PanelBuilders, PanelOptionsBuilders, QueryRunnerState, QueryVariable, RuntimeDataSource, SceneActivationHandler, SceneApp, SceneAppDrilldownView, SceneAppPage, SceneAppPageLike, SceneAppPageState, SceneAppRoute, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerProvider, SceneDataLayerProviderResult, SceneDataLayerProviderState, SceneDataLayers, SceneDataNode, SceneDataProvider, SceneDataProviderResult, SceneDataProviderResultLike, SceneDataState, SceneDataTransformer, SceneDeactivationHandler, SceneDebugger, SceneFlexItem, SceneFlexItemLike, SceneFlexItemState, SceneFlexLayout, SceneGridItem, SceneGridItemLike, SceneGridItemStateLike, SceneGridLayout, SceneGridRow, SceneLayout, SceneLayoutChildOptions, SceneLayoutState, SceneObject, SceneObjectBase, SceneObjectRef, SceneObjectState, SceneObjectStateChangedEvent, SceneObjectStateChangedPayload, SceneObjectUrlSyncConfig, SceneObjectUrlSyncHandler, SceneObjectUrlValue, SceneObjectUrlValues, SceneObjectWithUrlSync, SceneQueryControllerEntry, SceneQueryControllerEntryType, SceneQueryControllerLike, SceneQueryRunner, SceneReactObject, SceneRefreshPicker, SceneRouteMatch, SceneStateChangedHandler, SceneStatelessBehavior, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeLike, SceneTimeRangeState, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, SplitLayout, TestVariable, TextBoxVariable, UrlSyncManager, UrlSyncManagerLike, UserActionEvent, ValidateAndUpdateResult, VariableCustomFormatterFn, VariableDependencyConfig, VariableValue, VariableValueControl, VariableValueOption, VariableValueSelectors, VariableValueSingle, VizPanel, VizPanelBuilder, VizPanelMenu, VizPanelState, index$1 as behaviors, index as dataLayers, formatRegistry, getUrlSyncManager, isCustomVariableValue, isDataRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, sceneGraph, sceneUtils, useSceneApp };
2437
+ export { AdHocFiltersVariable, CancelActivationHandler, ConstantVariable, ControlsLayout, CustomFormatterVariable, CustomTransformOperator, CustomVariable, CustomVariableValue, DataLayerFilter, DataRequestEnricher, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, FieldConfigBuilders, FormatVariable, GroupByVariable, InterpolationFormatParameter, IntervalVariable, LocalValueVariable, MacroVariableConstructor, MultiValueVariable, NestedScene, PanelBuilders, PanelOptionsBuilders, QueryRunnerState, QueryVariable, RuntimeDataSource, SceneActivationHandler, SceneApp, SceneAppDrilldownView, SceneAppPage, SceneAppPageLike, SceneAppPageState, SceneAppRoute, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerProvider, SceneDataLayerProviderState, SceneDataLayerSet, SceneDataLayerSetBase, SceneDataNode, SceneDataProvider, SceneDataProviderResult, SceneDataState, SceneDataTransformer, SceneDeactivationHandler, SceneDebugger, SceneFlexItem, SceneFlexItemLike, SceneFlexItemState, SceneFlexLayout, SceneGridItem, SceneGridItemLike, SceneGridItemStateLike, SceneGridLayout, SceneGridRow, SceneLayout, SceneLayoutChildOptions, SceneLayoutState, SceneObject, SceneObjectBase, SceneObjectRef, SceneObjectState, SceneObjectStateChangedEvent, SceneObjectStateChangedPayload, SceneObjectUrlSyncConfig, SceneObjectUrlSyncHandler, SceneObjectUrlValue, SceneObjectUrlValues, SceneObjectWithUrlSync, SceneQueryControllerEntry, SceneQueryControllerEntryType, SceneQueryControllerLike, SceneQueryRunner, SceneReactObject, SceneRefreshPicker, SceneRouteMatch, SceneStateChangedHandler, SceneStatelessBehavior, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeLike, SceneTimeRangeState, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, SplitLayout, TestVariable, TextBoxVariable, UrlSyncManager, UrlSyncManagerLike, UserActionEvent, ValidateAndUpdateResult, VariableCustomFormatterFn, VariableDependencyConfig, VariableValue, VariableValueControl, VariableValueOption, VariableValueSelectors, VariableValueSingle, VizPanel, VizPanelBuilder, VizPanelMenu, VizPanelState, index$1 as behaviors, index as dataLayers, formatRegistry, getUrlSyncManager, isCustomVariableValue, isDataLayer, isDataRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, sceneGraph, sceneUtils, useSceneApp };