@grafana/scenes 5.29.1--canary.990.12238644149.0 → 5.30.0

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  import * as _grafana_data from '@grafana/data';
2
- import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeRange, DataQueryRequest, DataSourceGetTagKeysOptions, DataSourceGetTagValuesOptions, DataTransformContext, DataFrame, UrlQueryMap, PanelPlugin, EventBus, DataQuery as DataQuery$1, DataSourceApi, Registry, RegistryItem, ScopedVars, AdHocVariableFilter, SelectableValue, MetricFindValue, GetTagResponse, VariableRefresh as VariableRefresh$1, VariableSort, Scope, EventFilterOptions, AnnotationEvent, AnnotationQuery, DataTransformerConfig, PanelMenuItem, FieldConfigSource, PanelModel, AbsoluteTimeRange, InterpolateFunction, IconName as IconName$1, PageLayoutType, FieldConfig, FieldType, FieldValueMatcherConfig, ScopedVar, RawTimeRange } from '@grafana/data';
2
+ import { BusEventWithPayload, PanelData, BusEvent, BusEventType, BusEventHandler, TimeRange, DataQueryRequest, DataSourceGetTagKeysOptions, DataSourceGetTagValuesOptions, DataTransformContext, DataFrame, UrlQueryMap, PanelPlugin, EventBus, DataQuery as DataQuery$1, DataSourceApi, Registry, RegistryItem, ScopedVars, AdHocVariableFilter, SelectableValue, MetricFindValue, GetTagResponse, VariableRefresh as VariableRefresh$1, VariableSort, EventFilterOptions, AnnotationEvent, AnnotationQuery, DataTransformerConfig, PanelMenuItem, FieldConfigSource, PanelModel, AbsoluteTimeRange, InterpolateFunction, IconName as IconName$1, PageLayoutType, FieldConfig, FieldType, FieldValueMatcherConfig, ScopedVar, RawTimeRange } from '@grafana/data';
3
3
  import * as React$1 from 'react';
4
4
  import React__default, { CSSProperties, ComponentType } from 'react';
5
5
  import * as rxjs from 'rxjs';
6
6
  import { Observable, Unsubscribable, MonoTypeOperatorFunction, Subscription, ReplaySubject } from 'rxjs';
7
7
  import * as _grafana_schema from '@grafana/schema';
8
8
  import { VariableType, VariableHide, TimeZone, DataTopic, DataQuery, DataSourceRef, VariableRefresh, LoadingState, DashboardCursorSync, MatcherConfig, TableFieldOptions } from '@grafana/schema';
9
- import { LocationService, ScopesContextValue, VariableInterpolation } from '@grafana/runtime';
9
+ import { LocationService, VariableInterpolation } from '@grafana/runtime';
10
10
  import { Location } from 'history';
11
11
  import { PanelContext, IconName } from '@grafana/ui';
12
12
  import ReactGridLayout from 'react-grid-layout';
@@ -629,10 +629,8 @@ declare class AdHocFiltersVariable extends SceneObjectBase<AdHocFiltersVariableS
629
629
  static Component: typeof AdHocFiltersVariableRenderer;
630
630
  private _scopedVars;
631
631
  private _dataSourceSrv;
632
- private _scopesBridge;
633
632
  protected _urlSync: AdHocFiltersVariableUrlSyncHandler;
634
633
  constructor(state: Partial<AdHocFiltersVariableState>);
635
- private _activationHandler;
636
634
  setState(update: Partial<AdHocFiltersVariableState>): void;
637
635
  getValue(): VariableValue | undefined;
638
636
  _updateFilter(filter: AdHocFilterWithLabels, update: Partial<AdHocFilterWithLabels>): void;
@@ -919,7 +917,6 @@ declare class GroupByVariable extends MultiValueVariable<GroupByVariableState> {
919
917
  static Component: typeof GroupByVariableRenderer;
920
918
  isLazy: boolean;
921
919
  protected _urlSync: SceneObjectUrlSyncHandler;
922
- private _scopesBridge;
923
920
  validateAndUpdate(): Observable<ValidateAndUpdateResult>;
924
921
  private _updateValueGivenNewOptions;
925
922
  getValueOptions(args: VariableGetOptionsArgs): Observable<VariableValueOption[]>;
@@ -936,7 +933,7 @@ declare class GroupByVariable extends MultiValueVariable<GroupByVariableState> {
936
933
  text: string[];
937
934
  };
938
935
  }
939
- declare function GroupByVariableRenderer({ model }: SceneComponentProps<GroupByVariable>): React__default.JSX.Element;
936
+ declare function GroupByVariableRenderer({ model }: SceneComponentProps<MultiValueVariable>): React__default.JSX.Element;
940
937
 
941
938
  declare function isAdHocVariable(variable: SceneVariable): variable is AdHocFiltersVariable;
942
939
  declare function isConstantVariable(variable: SceneVariable): variable is ConstantVariable;
@@ -1037,41 +1034,6 @@ declare class UrlSyncManager implements UrlSyncManagerLike {
1037
1034
  getUrlState(root: SceneObject): SceneObjectUrlValues;
1038
1035
  }
1039
1036
 
1040
- interface SceneObjectUrlSyncConfigOptions {
1041
- keys: string[] | (() => string[]);
1042
- }
1043
- declare class SceneObjectUrlSyncConfig implements SceneObjectUrlSyncHandler {
1044
- private _sceneObject;
1045
- private _keys;
1046
- private _nextChangeShouldAddHistoryStep;
1047
- constructor(_sceneObject: SceneObjectWithUrlSync, _options: SceneObjectUrlSyncConfigOptions);
1048
- getKeys(): string[];
1049
- getUrlState(): SceneObjectUrlValues;
1050
- updateFromUrl(values: SceneObjectUrlValues): void;
1051
- performBrowserHistoryAction(callback: () => void): void;
1052
- shouldCreateHistoryStep(values: SceneObjectUrlValues): boolean;
1053
- }
1054
-
1055
- declare class SceneScopesBridge extends SceneObjectBase implements SceneObjectWithUrlSync {
1056
- static Component: typeof SceneScopesBridgeRenderer;
1057
- protected _urlSync: SceneObjectUrlSyncConfig;
1058
- protected _renderBeforeActivation: boolean;
1059
- private _contextSubject;
1060
- private _pendingScopes;
1061
- getUrlState(): SceneObjectUrlValues;
1062
- updateFromUrl(values: SceneObjectUrlValues): void;
1063
- getValue(): Scope[];
1064
- subscribeToValue(cb: (newScopes: Scope[], prevScopes: Scope[]) => void): Unsubscribable;
1065
- isLoading(): boolean;
1066
- subscribeToLoading(cb: (loading: boolean) => void): Unsubscribable;
1067
- setEnabled(enabled: boolean): void;
1068
- setReadOnly(readOnly: boolean): void;
1069
- updateContext(newContext: ScopesContextValue | undefined): void;
1070
- private get context();
1071
- private get contextObservable();
1072
- }
1073
- declare function SceneScopesBridgeRenderer({ model }: SceneComponentProps<SceneScopesBridge>): null;
1074
-
1075
1037
  /**
1076
1038
  * Get the closest node with variables
1077
1039
  */
@@ -1150,10 +1112,6 @@ declare function getQueryController(sceneObject: SceneObject): SceneQueryControl
1150
1112
  * name urlSyncManager that is of type UrlSyncManager
1151
1113
  */
1152
1114
  declare function getUrlSyncManager(sceneObject: SceneObject): UrlSyncManagerLike | undefined;
1153
- /**
1154
- * Will walk up the scene object graph to the closest $scopesBridge scene object
1155
- */
1156
- declare function getScopesBridge(sceneObject: SceneObject): SceneScopesBridge | undefined;
1157
1115
 
1158
1116
  declare const sceneGraph: {
1159
1117
  getVariables: typeof getVariables;
@@ -1172,7 +1130,6 @@ declare const sceneGraph: {
1172
1130
  findDescendents: typeof findDescendents;
1173
1131
  getQueryController: typeof getQueryController;
1174
1132
  getUrlSyncManager: typeof getUrlSyncManager;
1175
- getScopesBridge: typeof getScopesBridge;
1176
1133
  };
1177
1134
 
1178
1135
  interface ActWhenVariableChangedState extends SceneObjectState {
@@ -1337,6 +1294,21 @@ declare class SceneDataNode extends SceneObjectBase<SceneDataNodeState> implemen
1337
1294
  getResultsStream(): rxjs.Observable<SceneDataProviderResult>;
1338
1295
  }
1339
1296
 
1297
+ interface SceneObjectUrlSyncConfigOptions {
1298
+ keys: string[] | (() => string[]);
1299
+ }
1300
+ declare class SceneObjectUrlSyncConfig implements SceneObjectUrlSyncHandler {
1301
+ private _sceneObject;
1302
+ private _keys;
1303
+ private _nextChangeShouldAddHistoryStep;
1304
+ constructor(_sceneObject: SceneObjectWithUrlSync, _options: SceneObjectUrlSyncConfigOptions);
1305
+ getKeys(): string[];
1306
+ getUrlState(): SceneObjectUrlValues;
1307
+ updateFromUrl(values: SceneObjectUrlValues): void;
1308
+ performBrowserHistoryAction(callback: () => void): void;
1309
+ shouldCreateHistoryStep(values: SceneObjectUrlValues): boolean;
1310
+ }
1311
+
1340
1312
  declare class SceneTimeRange extends SceneObjectBase<SceneTimeRangeState> implements SceneTimeRangeLike {
1341
1313
  protected _urlSync: SceneObjectUrlSyncConfig;
1342
1314
  constructor(state?: Partial<SceneTimeRangeState>);
@@ -1411,8 +1383,6 @@ declare class SceneQueryRunner extends SceneObjectBase<QueryRunnerState> impleme
1411
1383
  private _dataLayersMerger;
1412
1384
  private _timeSub?;
1413
1385
  private _timeSubRange?;
1414
- private _scopesSub?;
1415
- private _scopesSubBridge?;
1416
1386
  private _containerWidth?;
1417
1387
  private _variableValueRecorder;
1418
1388
  private _results;
@@ -1451,12 +1421,11 @@ declare class SceneQueryRunner extends SceneObjectBase<QueryRunnerState> impleme
1451
1421
  private _onDeactivate;
1452
1422
  setContainerWidth(width: number): void;
1453
1423
  isDataReadyToDisplay(): boolean;
1454
- private subscribeToScopesChanges;
1455
1424
  private subscribeToTimeRangeChanges;
1456
1425
  runQueries(): void;
1457
1426
  private getMaxDataPoints;
1458
1427
  cancelQuery(): void;
1459
- private runWithTimeRangeAndScopes;
1428
+ private runWithTimeRange;
1460
1429
  clone(withState?: Partial<QueryRunnerState>): this;
1461
1430
  private prepareRequests;
1462
1431
  private onDataReceived;
@@ -2298,7 +2267,6 @@ interface SceneAppState extends SceneObjectState {
2298
2267
  pages: SceneAppPageLike[];
2299
2268
  name?: string;
2300
2269
  urlSyncOptions?: SceneUrlSyncOptions;
2301
- scopesBridge?: SceneScopesBridge;
2302
2270
  }
2303
2271
  interface SceneAppRoute {
2304
2272
  path: string;
@@ -2343,7 +2311,6 @@ interface SceneAppPageState extends SceneObjectState {
2343
2311
  */
2344
2312
  getFallbackPage?: () => SceneAppPageLike;
2345
2313
  layout?: PageLayoutType;
2346
- useScopes?: boolean;
2347
2314
  }
2348
2315
  interface SceneAppPageLike extends SceneObject<SceneAppPageState>, DataRequestEnricher {
2349
2316
  initializeScene(scene: SceneObject): void;
@@ -2368,7 +2335,6 @@ interface SceneAppDrilldownView {
2368
2335
  * Responsible for top level pages routing
2369
2336
  */
2370
2337
  declare class SceneApp extends SceneObjectBase<SceneAppState> implements DataRequestEnricher {
2371
- protected _renderBeforeActivation: boolean;
2372
2338
  enrichDataRequest(): {
2373
2339
  app: string;
2374
2340
  };
@@ -2386,9 +2352,7 @@ declare class SceneAppPage extends SceneObjectBase<SceneAppPageState> implements
2386
2352
  static Component: typeof SceneAppPageRenderer;
2387
2353
  private _sceneCache;
2388
2354
  private _drilldownCache;
2389
- private _scopesBridge;
2390
2355
  constructor(state: SceneAppPageState);
2391
- private _activationHandler;
2392
2356
  initializeScene(scene: EmbeddedScene): void;
2393
2357
  getScene(routeMatch: SceneRouteMatch): EmbeddedScene;
2394
2358
  getDrilldownPage(drilldown: SceneAppDrilldownView, routeMatch: SceneRouteMatch<{}>): SceneAppPageLike;
@@ -2889,4 +2853,4 @@ declare const sceneUtils: {
2889
2853
  isGroupByVariable: typeof isGroupByVariable;
2890
2854
  };
2891
2855
 
2892
- export { AdHocFiltersVariable, CancelActivationHandler, ConstantVariable, ControlsLabel, ControlsLayout, CustomFormatterVariable, CustomTransformOperator, CustomTransformerDefinition, CustomVariable, CustomVariableValue, DataLayerFilter, DataProviderProxy, DataRequestEnricher, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, ExtraQueryDataProcessor, ExtraQueryDescriptor, ExtraQueryProvider, FieldConfigBuilder, FieldConfigBuilders, FieldConfigOverridesBuilder, FiltersRequestEnricher, FormatVariable, GroupByVariable, InterpolationFormatParameter, IntervalVariable, LocalValueVariable, MacroVariableConstructor, MultiValueVariable, MultiValueVariableState, NestedScene, NewSceneObjectAddedEvent, PanelBuilders, PanelOptionsBuilders, QueryRunnerState, QueryVariable, RuntimeDataSource, SafeSerializableSceneObject, SceneActivationHandler, SceneApp, SceneAppDrilldownView, SceneAppPage, SceneAppPageLike, SceneAppPageState, SceneAppRoute, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerProvider, SceneDataLayerProviderState, SceneDataLayerSet, SceneDataLayerSetBase, SceneDataNode, SceneDataProvider, SceneDataProviderResult, SceneDataQuery, SceneDataState, SceneDataTransformer, SceneDataTransformerState, 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, SceneRefreshPickerState, SceneRouteMatch, SceneScopesBridge, SceneStateChangedHandler, SceneStatelessBehavior, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeLike, SceneTimeRangeState, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneUrlSyncOptions, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, SplitLayout, TestVariable, TextBoxVariable, UrlSyncContextProvider, UrlSyncManager, UrlSyncManagerLike, UseStateHookOptions, UserActionEvent, ValidateAndUpdateResult, VariableCustomFormatterFn, VariableDependencyConfig, VariableGetOptionsArgs, VariableValue, VariableValueControl, VariableValueOption, VariableValueSelectWrapper, VariableValueSelectors, VariableValueSingle, VizConfig, VizConfigBuilder, VizConfigBuilders, VizPanel, VizPanelBuilder, VizPanelExploreButton, VizPanelMenu, VizPanelState, index$1 as behaviors, index as dataLayers, formatRegistry, getExploreURL, isCustomVariableValue, isDataLayer, isDataRequestEnricher, isFiltersRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, renderSelectForVariable, sceneGraph, sceneUtils, useSceneApp, useSceneObjectState, useUrlSync };
2856
+ export { AdHocFiltersVariable, CancelActivationHandler, ConstantVariable, ControlsLabel, ControlsLayout, CustomFormatterVariable, CustomTransformOperator, CustomTransformerDefinition, CustomVariable, CustomVariableValue, DataLayerFilter, DataProviderProxy, DataRequestEnricher, DataSourceVariable, DeepPartial, EmbeddedScene, EmbeddedSceneState, ExtraQueryDataProcessor, ExtraQueryDescriptor, ExtraQueryProvider, FieldConfigBuilder, FieldConfigBuilders, FieldConfigOverridesBuilder, FiltersRequestEnricher, FormatVariable, GroupByVariable, InterpolationFormatParameter, IntervalVariable, LocalValueVariable, MacroVariableConstructor, MultiValueVariable, MultiValueVariableState, NestedScene, NewSceneObjectAddedEvent, PanelBuilders, PanelOptionsBuilders, QueryRunnerState, QueryVariable, RuntimeDataSource, SafeSerializableSceneObject, SceneActivationHandler, SceneApp, SceneAppDrilldownView, SceneAppPage, SceneAppPageLike, SceneAppPageState, SceneAppRoute, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneComponent, SceneComponentProps, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerProvider, SceneDataLayerProviderState, SceneDataLayerSet, SceneDataLayerSetBase, SceneDataNode, SceneDataProvider, SceneDataProviderResult, SceneDataQuery, SceneDataState, SceneDataTransformer, SceneDataTransformerState, 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, SceneRefreshPickerState, SceneRouteMatch, SceneStateChangedHandler, SceneStatelessBehavior, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeLike, SceneTimeRangeState, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneUrlSyncOptions, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSet, SceneVariableSetState, SceneVariableState, SceneVariableValueChangedEvent, SceneVariables, SplitLayout, TestVariable, TextBoxVariable, UrlSyncContextProvider, UrlSyncManager, UrlSyncManagerLike, UseStateHookOptions, UserActionEvent, ValidateAndUpdateResult, VariableCustomFormatterFn, VariableDependencyConfig, VariableGetOptionsArgs, VariableValue, VariableValueControl, VariableValueOption, VariableValueSelectWrapper, VariableValueSelectors, VariableValueSingle, VizConfig, VizConfigBuilder, VizConfigBuilders, VizPanel, VizPanelBuilder, VizPanelExploreButton, VizPanelMenu, VizPanelState, index$1 as behaviors, index as dataLayers, formatRegistry, getExploreURL, isCustomVariableValue, isDataLayer, isDataRequestEnricher, isFiltersRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, renderSelectForVariable, sceneGraph, sceneUtils, useSceneApp, useSceneObjectState, useUrlSync };
package/dist/index.js CHANGED
@@ -2904,7 +2904,7 @@ class GroupByVariable extends MultiValueVariable {
2904
2904
  this.isLazy = true;
2905
2905
  this._urlSync = new GroupByVariableUrlSyncHandler(this);
2906
2906
  this._getKeys = async (ds) => {
2907
- var _a, _b, _c, _d;
2907
+ var _a, _b, _c;
2908
2908
  const override = await ((_b = (_a = this.state).getTagKeysProvider) == null ? void 0 : _b.call(_a, this, null));
2909
2909
  if (override && override.replace) {
2910
2910
  return override.values;
@@ -2921,8 +2921,7 @@ class GroupByVariable extends MultiValueVariable {
2921
2921
  const response = await ds.getTagKeys(__spreadValues$F({
2922
2922
  filters: otherFilters,
2923
2923
  queries,
2924
- timeRange,
2925
- scopes: (_d = this._scopesBridge) == null ? void 0 : _d.getValue()
2924
+ timeRange
2926
2925
  }, getEnrichedFiltersRequest(this)));
2927
2926
  if (responseHasError(response)) {
2928
2927
  this.setState({ error: response.error.message });
@@ -2938,7 +2937,6 @@ class GroupByVariable extends MultiValueVariable {
2938
2937
  return keys;
2939
2938
  };
2940
2939
  this.addActivationHandler(() => {
2941
- this._scopesBridge = sceneGraph.getScopesBridge(this);
2942
2940
  allActiveGroupByVariables.add(this);
2943
2941
  return () => allActiveGroupByVariables.delete(this);
2944
2942
  });
@@ -4988,13 +4986,9 @@ class AdHocFiltersVariable extends SceneObjectBase {
4988
4986
  this._scopedVars = { __sceneObject: wrapInSafeSerializableSceneObject(this) };
4989
4987
  this._dataSourceSrv = runtime.getDataSourceSrv();
4990
4988
  this._urlSync = new AdHocFiltersVariableUrlSyncHandler(this);
4991
- this._activationHandler = () => {
4992
- this._scopesBridge = sceneGraph.getScopesBridge(this);
4993
- };
4994
4989
  if (this.state.applyMode === "auto") {
4995
4990
  patchGetAdhocFilters(this);
4996
4991
  }
4997
- this.addActivationHandler(this._activationHandler);
4998
4992
  }
4999
4993
  setState(update) {
5000
4994
  let filterExpressionChanged = false;
@@ -5063,7 +5057,7 @@ class AdHocFiltersVariable extends SceneObjectBase {
5063
5057
  }
5064
5058
  }
5065
5059
  async _getKeys(currentKey) {
5066
- var _a, _b, _c, _d;
5060
+ var _a, _b, _c;
5067
5061
  const override = await ((_b = (_a = this.state).getTagKeysProvider) == null ? void 0 : _b.call(_a, this, currentKey));
5068
5062
  if (override && override.replace) {
5069
5063
  return dataFromResponse(override.values).map(toSelectableValue);
@@ -5081,8 +5075,7 @@ class AdHocFiltersVariable extends SceneObjectBase {
5081
5075
  const response = await ds.getTagKeys(__spreadValues$z({
5082
5076
  filters: otherFilters,
5083
5077
  queries,
5084
- timeRange,
5085
- scopes: (_d = this._scopesBridge) == null ? void 0 : _d.getValue()
5078
+ timeRange
5086
5079
  }, getEnrichedFiltersRequest(this)));
5087
5080
  if (responseHasError(response)) {
5088
5081
  this.setState({ error: response.error.message });
@@ -5098,7 +5091,7 @@ class AdHocFiltersVariable extends SceneObjectBase {
5098
5091
  return keys.map(toSelectableValue);
5099
5092
  }
5100
5093
  async _getValuesFor(filter) {
5101
- var _a, _b, _c, _d;
5094
+ var _a, _b, _c;
5102
5095
  const override = await ((_b = (_a = this.state).getTagValuesProvider) == null ? void 0 : _b.call(_a, this, filter));
5103
5096
  if (override && override.replace) {
5104
5097
  return dataFromResponse(override.values).map(toSelectableValue);
@@ -5114,8 +5107,7 @@ class AdHocFiltersVariable extends SceneObjectBase {
5114
5107
  key: filter.key,
5115
5108
  filters: otherFilters,
5116
5109
  timeRange,
5117
- queries,
5118
- scopes: (_d = this._scopesBridge) == null ? void 0 : _d.getValue()
5110
+ queries
5119
5111
  }, getEnrichedFiltersRequest(this)));
5120
5112
  if (responseHasError(response)) {
5121
5113
  this.setState({ error: response.error.message });
@@ -5292,7 +5284,6 @@ class SceneQueryRunner extends SceneObjectBase {
5292
5284
  _onActivate() {
5293
5285
  if (this.isQueryModeAuto()) {
5294
5286
  const timeRange = sceneGraph.getTimeRange(this);
5295
- const scopesBridge = sceneGraph.getScopesBridge(this);
5296
5287
  const providers = this.getClosestExtraQueryProviders();
5297
5288
  for (const provider of providers) {
5298
5289
  this._subs.add(
@@ -5303,7 +5294,6 @@ class SceneQueryRunner extends SceneObjectBase {
5303
5294
  })
5304
5295
  );
5305
5296
  }
5306
- this.subscribeToScopesChanges(scopesBridge);
5307
5297
  this.subscribeToTimeRangeChanges(timeRange);
5308
5298
  if (this.shouldRunQueriesOnActivate()) {
5309
5299
  this.runQueries();
@@ -5449,21 +5439,6 @@ class SceneQueryRunner extends SceneObjectBase {
5449
5439
  isDataReadyToDisplay() {
5450
5440
  return Boolean(this.state._hasFetchedData);
5451
5441
  }
5452
- subscribeToScopesChanges(scopesBridge) {
5453
- if (!scopesBridge) {
5454
- return;
5455
- }
5456
- if (this._scopesSubBridge === scopesBridge) {
5457
- return;
5458
- }
5459
- if (this._scopesSub) {
5460
- this._scopesSub.unsubscribe();
5461
- }
5462
- this._scopesSubBridge = scopesBridge;
5463
- this._scopesSub = scopesBridge.subscribeToValue(() => {
5464
- this.runWithTimeRangeAndScopes(sceneGraph.getTimeRange(this), scopesBridge);
5465
- });
5466
- }
5467
5442
  subscribeToTimeRangeChanges(timeRange) {
5468
5443
  if (this._timeSubRange === timeRange) {
5469
5444
  return;
@@ -5473,17 +5448,15 @@ class SceneQueryRunner extends SceneObjectBase {
5473
5448
  }
5474
5449
  this._timeSubRange = timeRange;
5475
5450
  this._timeSub = timeRange.subscribeToState(() => {
5476
- this.runWithTimeRangeAndScopes(timeRange, sceneGraph.getScopesBridge(this));
5451
+ this.runWithTimeRange(timeRange);
5477
5452
  });
5478
5453
  }
5479
5454
  runQueries() {
5480
5455
  const timeRange = sceneGraph.getTimeRange(this);
5481
- const scopesBridge = sceneGraph.getScopesBridge(this);
5482
5456
  if (this.isQueryModeAuto()) {
5483
5457
  this.subscribeToTimeRangeChanges(timeRange);
5484
- this.subscribeToScopesChanges(scopesBridge);
5485
5458
  }
5486
- this.runWithTimeRangeAndScopes(timeRange, scopesBridge);
5459
+ this.runWithTimeRange(timeRange);
5487
5460
  }
5488
5461
  getMaxDataPoints() {
5489
5462
  var _a;
@@ -5503,8 +5476,8 @@ class SceneQueryRunner extends SceneObjectBase {
5503
5476
  data: __spreadProps$m(__spreadValues$y({}, this.state.data), { state: schema.LoadingState.Done })
5504
5477
  });
5505
5478
  }
5506
- async runWithTimeRangeAndScopes(timeRange, scopesBridge) {
5507
- var _a, _b, _c, _d;
5479
+ async runWithTimeRange(timeRange) {
5480
+ var _a, _b, _c;
5508
5481
  if (!this.state.maxDataPoints && this.state.maxDataPointsFromWidth && !this._containerWidth) {
5509
5482
  return;
5510
5483
  }
@@ -5517,22 +5490,17 @@ class SceneQueryRunner extends SceneObjectBase {
5517
5490
  this.setState({ data: __spreadProps$m(__spreadValues$y({}, (_b = this.state.data) != null ? _b : emptyPanelData), { state: schema.LoadingState.Loading }) });
5518
5491
  return;
5519
5492
  }
5520
- if (scopesBridge == null ? void 0 : scopesBridge.isLoading()) {
5521
- writeSceneLog("SceneQueryRunner", "Scopes are in loading state, skipping query execution");
5522
- this.setState({ data: __spreadProps$m(__spreadValues$y({}, (_c = this.state.data) != null ? _c : emptyPanelData), { state: schema.LoadingState.Loading }) });
5523
- return;
5524
- }
5525
5493
  const { queries } = this.state;
5526
5494
  if (!(queries == null ? void 0 : queries.length)) {
5527
5495
  this._setNoDataState();
5528
5496
  return;
5529
5497
  }
5530
5498
  try {
5531
- const datasource = (_d = this.state.datasource) != null ? _d : findFirstDatasource(queries);
5499
+ const datasource = (_c = this.state.datasource) != null ? _c : findFirstDatasource(queries);
5532
5500
  const ds = await getDataSource(datasource, this._scopedVars);
5533
5501
  this.findAndSubscribeToAdHocFilters(datasource == null ? void 0 : datasource.uid);
5534
5502
  const runRequest = runtime.getRunRequest();
5535
- const { primary, secondaries, processors } = this.prepareRequests(timeRange, ds, scopesBridge);
5503
+ const { primary, secondaries, processors } = this.prepareRequests(timeRange, ds);
5536
5504
  writeSceneLog("SceneQueryRunner", "Starting runRequest", this.state.key);
5537
5505
  let stream = runRequest(ds, primary);
5538
5506
  if (secondaries.length > 0) {
@@ -5571,7 +5539,7 @@ class SceneQueryRunner extends SceneObjectBase {
5571
5539
  clone["_results"].next({ origin: this, data: (_a = this.state.data) != null ? _a : emptyPanelData });
5572
5540
  return clone;
5573
5541
  }
5574
- prepareRequests(timeRange, ds, scopesBridge) {
5542
+ prepareRequests(timeRange, ds) {
5575
5543
  var _a;
5576
5544
  const { minInterval, queries } = this.state;
5577
5545
  let request = __spreadValues$y({
@@ -5591,8 +5559,7 @@ class SceneQueryRunner extends SceneObjectBase {
5591
5559
  to: timeRange.state.to
5592
5560
  },
5593
5561
  cacheTimeout: this.state.cacheTimeout,
5594
- queryCachingTTL: this.state.queryCachingTTL,
5595
- scopes: scopesBridge == null ? void 0 : scopesBridge.getValue()
5562
+ queryCachingTTL: this.state.queryCachingTTL
5596
5563
  }, getEnrichedDataRequest(this));
5597
5564
  if (this._adhocFiltersVar) {
5598
5565
  request.filters = this._adhocFiltersVar.state.filters.filter(isFilterComplete);
@@ -6519,108 +6486,6 @@ function containsSearchFilter(query) {
6519
6486
  return str.indexOf(SEARCH_FILTER_VARIABLE) > -1;
6520
6487
  }
6521
6488
 
6522
- class SceneScopesBridge extends SceneObjectBase {
6523
- constructor() {
6524
- super(...arguments);
6525
- this._urlSync = new SceneObjectUrlSyncConfig(this, { keys: ["scopes"] });
6526
- this._renderBeforeActivation = true;
6527
- this._contextSubject = new rxjs.BehaviorSubject(void 0);
6528
- this._pendingScopes = null;
6529
- }
6530
- getUrlState() {
6531
- var _a, _b, _c;
6532
- return {
6533
- scopes: (_c = this._pendingScopes) != null ? _c : ((_b = (_a = this.context) == null ? void 0 : _a.state.value) != null ? _b : []).map((scope) => scope.metadata.name)
6534
- };
6535
- }
6536
- updateFromUrl(values) {
6537
- var _a, _b;
6538
- let scopes = (_a = values["scopes"]) != null ? _a : [];
6539
- scopes = (Array.isArray(scopes) ? scopes : [scopes]).map(String);
6540
- if (!this.context) {
6541
- this._pendingScopes = scopes;
6542
- return;
6543
- }
6544
- (_b = this.context) == null ? void 0 : _b.changeScopes(scopes);
6545
- }
6546
- getValue() {
6547
- var _a, _b;
6548
- return (_b = (_a = this.context) == null ? void 0 : _a.state.value) != null ? _b : [];
6549
- }
6550
- subscribeToValue(cb) {
6551
- return this.contextObservable.pipe(
6552
- rxjs.filter((context) => !!context && !context.state.loading),
6553
- rxjs.pairwise(),
6554
- rxjs.map(
6555
- ([prevContext, newContext]) => {
6556
- var _a, _b;
6557
- return [(_a = prevContext == null ? void 0 : prevContext.state.value) != null ? _a : [], (_b = newContext == null ? void 0 : newContext.state.value) != null ? _b : []];
6558
- }
6559
- ),
6560
- rxjs.filter(([prevScopes, newScopes]) => !lodash.isEqual(prevScopes, newScopes))
6561
- ).subscribe(([prevScopes, newScopes]) => {
6562
- cb(newScopes, prevScopes);
6563
- });
6564
- }
6565
- isLoading() {
6566
- var _a, _b;
6567
- return (_b = (_a = this.context) == null ? void 0 : _a.state.loading) != null ? _b : false;
6568
- }
6569
- subscribeToLoading(cb) {
6570
- return this.contextObservable.pipe(
6571
- rxjs.filter((context) => !!context),
6572
- rxjs.pairwise(),
6573
- rxjs.map(
6574
- ([prevContext, newContext]) => {
6575
- var _a, _b;
6576
- return [(_a = prevContext == null ? void 0 : prevContext.state.loading) != null ? _a : false, (_b = newContext == null ? void 0 : newContext.state.loading) != null ? _b : false];
6577
- }
6578
- ),
6579
- rxjs.filter(([prevLoading, newLoading]) => prevLoading !== newLoading)
6580
- ).subscribe(([_prevLoading, newLoading]) => {
6581
- cb(newLoading);
6582
- });
6583
- }
6584
- setEnabled(enabled) {
6585
- var _a;
6586
- (_a = this.context) == null ? void 0 : _a.setEnabled(enabled);
6587
- }
6588
- setReadOnly(readOnly) {
6589
- var _a;
6590
- (_a = this.context) == null ? void 0 : _a.setReadOnly(readOnly);
6591
- }
6592
- updateContext(newContext) {
6593
- var _a, _b;
6594
- if (this._pendingScopes && newContext) {
6595
- setTimeout(() => {
6596
- newContext == null ? void 0 : newContext.changeScopes(this._pendingScopes);
6597
- this._pendingScopes = null;
6598
- });
6599
- }
6600
- if (this.context !== newContext || ((_a = this.context) == null ? void 0 : _a.state) !== (newContext == null ? void 0 : newContext.state)) {
6601
- const shouldUpdate = ((_b = this.context) == null ? void 0 : _b.state.value) !== (newContext == null ? void 0 : newContext.state.value);
6602
- this._contextSubject.next(newContext);
6603
- if (shouldUpdate) {
6604
- this.forceRender();
6605
- }
6606
- }
6607
- }
6608
- get context() {
6609
- return this._contextSubject.getValue();
6610
- }
6611
- get contextObservable() {
6612
- return this._contextSubject.asObservable();
6613
- }
6614
- }
6615
- SceneScopesBridge.Component = SceneScopesBridgeRenderer;
6616
- function SceneScopesBridgeRenderer({ model }) {
6617
- const context = runtime.useScopes();
6618
- React.useEffect(() => {
6619
- model.updateContext(context);
6620
- }, [context, model]);
6621
- return null;
6622
- }
6623
-
6624
6489
  function getVariables(sceneObject) {
6625
6490
  var _a;
6626
6491
  return (_a = getClosest(sceneObject, (s) => s.state.$variables)) != null ? _a : EmptyVariableSet;
@@ -6788,10 +6653,6 @@ function getUrlSyncManager(sceneObject) {
6788
6653
  }
6789
6654
  return void 0;
6790
6655
  }
6791
- function getScopesBridge(sceneObject) {
6792
- var _a;
6793
- return (_a = findObject(sceneObject, (s) => s instanceof SceneScopesBridge)) != null ? _a : void 0;
6794
- }
6795
6656
 
6796
6657
  const sceneGraph = {
6797
6658
  getVariables,
@@ -6809,8 +6670,7 @@ const sceneGraph = {
6809
6670
  getAncestor,
6810
6671
  findDescendents,
6811
6672
  getQueryController,
6812
- getUrlSyncManager,
6813
- getScopesBridge
6673
+ getUrlSyncManager
6814
6674
  };
6815
6675
 
6816
6676
  class UniqueUrlKeyMapper {
@@ -7246,6 +7106,7 @@ function VizPanelRenderer({ model }) {
7246
7106
  statusMessageOnClick: model.onStatusMessageClick,
7247
7107
  width,
7248
7108
  height,
7109
+ selectionId: model.state.key,
7249
7110
  displayMode,
7250
7111
  showMenuAlways,
7251
7112
  hoverHeader,
@@ -12495,10 +12356,6 @@ class SplitLayout extends SceneObjectBase {
12495
12356
  SplitLayout.Component = SplitLayoutRenderer;
12496
12357
 
12497
12358
  class SceneApp extends SceneObjectBase {
12498
- constructor() {
12499
- super(...arguments);
12500
- this._renderBeforeActivation = true;
12501
- }
12502
12359
  enrichDataRequest() {
12503
12360
  return {
12504
12361
  app: this.state.name || "app"
@@ -12506,17 +12363,15 @@ class SceneApp extends SceneObjectBase {
12506
12363
  }
12507
12364
  }
12508
12365
  SceneApp.Component = ({ model }) => {
12509
- const { pages, scopesBridge } = model.useState();
12510
- return /* @__PURE__ */ React__default["default"].createElement(React__default["default"].Fragment, null, scopesBridge && /* @__PURE__ */ React__default["default"].createElement(scopesBridge.Component, {
12511
- model: scopesBridge
12512
- }), /* @__PURE__ */ React__default["default"].createElement(SceneAppContext.Provider, {
12366
+ const { pages } = model.useState();
12367
+ return /* @__PURE__ */ React__default["default"].createElement(SceneAppContext.Provider, {
12513
12368
  value: model
12514
12369
  }, /* @__PURE__ */ React__default["default"].createElement(reactRouterDom.Switch, null, pages.map((page) => /* @__PURE__ */ React__default["default"].createElement(reactRouterDom.Route, {
12515
12370
  key: page.state.url,
12516
12371
  exact: false,
12517
12372
  path: page.state.url,
12518
12373
  render: (props) => renderSceneComponentWithRouteProps(page, props)
12519
- })))));
12374
+ }))));
12520
12375
  };
12521
12376
  const SceneAppContext = React.createContext(null);
12522
12377
  const sceneAppCache = /* @__PURE__ */ new Map();
@@ -12866,21 +12721,6 @@ class SceneAppPage extends SceneObjectBase {
12866
12721
  super(state);
12867
12722
  this._sceneCache = /* @__PURE__ */ new Map();
12868
12723
  this._drilldownCache = /* @__PURE__ */ new Map();
12869
- this._activationHandler = () => {
12870
- if (!this.state.useScopes) {
12871
- return;
12872
- }
12873
- this._scopesBridge = sceneGraph.getScopesBridge(this);
12874
- if (!this._scopesBridge) {
12875
- throw new Error("Use of scopes is enabled but no scopes bridge found");
12876
- }
12877
- this._scopesBridge.setEnabled(true);
12878
- return () => {
12879
- var _a;
12880
- (_a = this._scopesBridge) == null ? void 0 : _a.setEnabled(false);
12881
- };
12882
- };
12883
- this.addActivationHandler(this._activationHandler);
12884
12724
  }
12885
12725
  initializeScene(scene) {
12886
12726
  this.setState({ initializedScene: scene });
@@ -13890,7 +13730,6 @@ exports.SceneObjectUrlSyncConfig = SceneObjectUrlSyncConfig;
13890
13730
  exports.SceneQueryRunner = SceneQueryRunner;
13891
13731
  exports.SceneReactObject = SceneReactObject;
13892
13732
  exports.SceneRefreshPicker = SceneRefreshPicker;
13893
- exports.SceneScopesBridge = SceneScopesBridge;
13894
13733
  exports.SceneTimePicker = SceneTimePicker;
13895
13734
  exports.SceneTimeRange = SceneTimeRange;
13896
13735
  exports.SceneTimeRangeCompare = SceneTimeRangeCompare;