@grafana/scenes 6.7.0--canary.1091.14350229100.0 → 6.8.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.
- package/CHANGELOG.md +25 -0
- package/dist/esm/components/layout/CSSGrid/SceneCSSGridItem.js +33 -0
- package/dist/esm/dist/esm/behaviors/CursorSync.js +76 -0
- package/dist/esm/dist/esm/behaviors/LiveNowTimer.js +44 -0
- package/dist/esm/dist/esm/behaviors/SceneQueryController.js +14 -0
- package/dist/esm/dist/esm/components/EmbeddedScene.js +59 -0
- package/dist/esm/dist/esm/components/NestedScene.js +95 -0
- package/dist/esm/dist/esm/components/SceneApp/SceneApp.js +27 -0
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPage.js +176 -0
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPageView.js +104 -0
- package/dist/esm/dist/esm/components/SceneApp/utils.js +42 -0
- package/dist/esm/dist/esm/components/SceneByFrameRepeater.js +41 -0
- package/dist/esm/dist/esm/components/SceneByVariableRepeater.js +55 -0
- package/dist/esm/dist/esm/components/SceneCanvasText.js +32 -0
- package/dist/esm/dist/esm/components/SceneControlsSpacer.js +17 -0
- package/dist/esm/dist/esm/components/SceneDebugger/DebugDetails.js +82 -0
- package/dist/esm/dist/esm/components/SceneDebugger/DebugTreeNode.js +72 -0
- package/dist/esm/dist/esm/components/SceneDebugger/SceneDebugger.js +77 -0
- package/dist/esm/dist/esm/components/SceneReactObject.js +34 -0
- package/dist/esm/dist/esm/components/SceneRefreshPicker.js +205 -0
- package/dist/esm/dist/esm/components/SceneTimePicker.js +139 -0
- package/dist/esm/dist/esm/components/SceneTimeRangeCompare.js +240 -0
- package/dist/esm/dist/esm/components/SceneToolbarButton.js +33 -0
- package/dist/esm/dist/esm/components/VizPanel/VizPanel.js +406 -0
- package/dist/esm/dist/esm/components/VizPanel/VizPanelExploreButton.js +44 -0
- package/dist/esm/dist/esm/components/VizPanel/VizPanelMenu.js +59 -0
- package/dist/esm/dist/esm/components/VizPanel/VizPanelRenderer.js +285 -0
- package/dist/esm/dist/esm/components/VizPanel/VizPanelSeriesLimit.js +45 -0
- package/dist/esm/dist/esm/components/VizPanel/colorSeriesConfigFactory.js +72 -0
- package/dist/esm/dist/esm/components/VizPanel/registerRuntimePanelPlugin.js +11 -0
- package/dist/esm/dist/esm/components/VizPanel/seriesVisibilityConfigFactory.js +164 -0
- package/dist/esm/dist/esm/components/layout/CSSGrid/SceneCSSGridLayout.js +124 -0
- package/dist/esm/dist/esm/components/layout/LazyLoader.js +103 -0
- package/dist/esm/dist/esm/components/layout/SceneFlexLayout.js +135 -0
- package/dist/esm/dist/esm/components/layout/grid/SceneGridItem.js +30 -0
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayout.js +283 -0
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayoutRenderer.js +178 -0
- package/dist/esm/dist/esm/components/layout/grid/SceneGridRow.js +190 -0
- package/dist/esm/dist/esm/components/layout/grid/constants.js +7 -0
- package/dist/esm/dist/esm/components/layout/grid/utils.js +36 -0
- package/dist/esm/dist/esm/components/layout/split/SplitLayout.js +17 -0
- package/dist/esm/dist/esm/components/layout/split/SplitLayoutRenderer.js +29 -0
- package/dist/esm/dist/esm/components/layout/split/Splitter.js +386 -0
- package/dist/esm/dist/esm/core/SceneComponentWrapper.js +57 -0
- package/dist/esm/dist/esm/core/SceneDataNode.js +43 -0
- package/dist/esm/dist/esm/core/SceneObjectBase.js +286 -0
- package/dist/esm/dist/esm/core/SceneObjectRef.js +32 -0
- package/dist/esm/dist/esm/core/SceneTimeRange.js +231 -0
- package/dist/esm/dist/esm/core/events.js +11 -0
- package/dist/esm/dist/esm/core/sceneGraph/getTimeRange.js +10 -0
- package/dist/esm/dist/esm/core/sceneGraph/index.js +25 -0
- package/dist/esm/dist/esm/core/sceneGraph/sceneGraph.js +178 -0
- package/dist/esm/dist/esm/core/sceneGraph/utils.js +64 -0
- package/dist/esm/dist/esm/core/types.js +15 -0
- package/dist/esm/dist/esm/querying/DataLayersMerger.js +46 -0
- package/dist/esm/dist/esm/querying/ExtraQueryProvider.js +6 -0
- package/dist/esm/dist/esm/querying/RuntimeDataSource.js +6 -0
- package/dist/esm/dist/esm/querying/SceneDataLayerSet.js +100 -0
- package/dist/esm/dist/esm/querying/SceneQueryRunner.js +468 -0
- package/dist/esm/dist/esm/querying/extraQueryProcessingOperator.js +46 -0
- package/dist/esm/dist/esm/querying/getEnrichedDataRequest.js +12 -0
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerBase.js +112 -0
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerControls.js +51 -0
- package/dist/esm/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +130 -0
- package/dist/esm/dist/esm/querying/layers/annotations/filterAnnotations.js +85 -0
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationQuery.js +121 -0
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationsSupport.js +211 -0
- package/dist/esm/dist/esm/querying/layers/annotations/utils.js +77 -0
- package/dist/esm/dist/esm/querying/registerQueryWithController.js +41 -0
- package/dist/esm/dist/esm/services/SceneObjectUrlSyncConfig.js +30 -0
- package/dist/esm/dist/esm/services/UniqueUrlKeyMapper.js +45 -0
- package/dist/esm/dist/esm/services/UrlSyncManager.js +167 -0
- package/dist/esm/dist/esm/services/useUrlSync.js +29 -0
- package/dist/esm/dist/esm/services/utils.js +71 -0
- package/dist/esm/dist/esm/utils/ControlsLabel.js +107 -0
- package/dist/esm/dist/esm/utils/LoadingIndicator.js +19 -0
- package/dist/esm/dist/esm/utils/SafeSerializableSceneObject.js +39 -0
- package/dist/esm/dist/esm/utils/compatibility/setWindowGrafanaSceneContext.js +16 -0
- package/dist/esm/dist/esm/utils/date.js +15 -0
- package/dist/esm/dist/esm/utils/evaluateTimeRange.js +16 -0
- package/dist/esm/dist/esm/utils/explore.js +47 -0
- package/dist/esm/dist/esm/utils/getCompareSeriesRefId.js +4 -0
- package/dist/esm/dist/esm/utils/getDataSource.js +18 -0
- package/dist/esm/dist/esm/utils/getMessageFromError.js +24 -0
- package/dist/esm/dist/esm/utils/metricTree.js +53 -0
- package/dist/esm/dist/esm/utils/parseUrlParam.js +41 -0
- package/dist/esm/dist/esm/utils/utils.js +11 -0
- package/dist/esm/dist/esm/utils/wrapInSafeSerializableSceneObject.js +30 -0
- package/dist/esm/dist/esm/utils/writeSceneLog.js +12 -0
- package/dist/esm/dist/esm/variables/VariableDependencyConfig.js +150 -0
- package/dist/esm/dist/esm/variables/VariableValueRecorder.js +71 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterBuilder.js +24 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterRenderer.js +303 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +162 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +20 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +640 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +65 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +146 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +114 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +68 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/utils.js +146 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariable.js +289 -0
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +76 -0
- package/dist/esm/dist/esm/variables/adhoc/getAdhocOptionSearcher.js +13 -0
- package/dist/esm/dist/esm/variables/adhoc/patchGetAdhocFilters.js +47 -0
- package/dist/esm/dist/esm/variables/components/VariableValueControl.js +23 -0
- package/dist/esm/dist/esm/variables/components/VariableValueInput.js +33 -0
- package/dist/esm/dist/esm/variables/components/VariableValueSelect.js +228 -0
- package/dist/esm/dist/esm/variables/components/VariableValueSelectors.js +72 -0
- package/dist/esm/dist/esm/variables/components/getOptionSearcher.js +15 -0
- package/dist/esm/dist/esm/variables/constants.js +9 -0
- package/dist/esm/dist/esm/variables/getEnrichedFiltersRequest.js +12 -0
- package/dist/esm/dist/esm/variables/groupby/GroupByVariable.js +259 -0
- package/dist/esm/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +63 -0
- package/dist/esm/dist/esm/variables/groupby/findActiveGroupByVariablesByUid.js +13 -0
- package/dist/esm/dist/esm/variables/interpolation/ScopedVarsVariable.js +40 -0
- package/dist/esm/dist/esm/variables/interpolation/defaults.js +21 -0
- package/dist/esm/dist/esm/variables/interpolation/fieldAccessorCache.js +13 -0
- package/dist/esm/dist/esm/variables/interpolation/formatRegistry.js +296 -0
- package/dist/esm/dist/esm/variables/interpolation/sceneInterpolator.js +87 -0
- package/dist/esm/dist/esm/variables/lookupVariable.js +20 -0
- package/dist/esm/dist/esm/variables/macros/AllVariablesMacro.js +57 -0
- package/dist/esm/dist/esm/variables/macros/contextMacros.js +43 -0
- package/dist/esm/dist/esm/variables/macros/dataMacros.js +134 -0
- package/dist/esm/dist/esm/variables/macros/index.js +26 -0
- package/dist/esm/dist/esm/variables/macros/templateProxies.js +51 -0
- package/dist/esm/dist/esm/variables/macros/timeMacros.js +86 -0
- package/dist/esm/dist/esm/variables/macros/types.js +11 -0
- package/dist/esm/dist/esm/variables/macros/urlMacros.js +56 -0
- package/dist/esm/dist/esm/variables/sets/SceneVariableSet.js +254 -0
- package/dist/esm/dist/esm/variables/types.js +11 -0
- package/dist/esm/dist/esm/variables/utils.js +172 -0
- package/dist/esm/dist/esm/variables/variants/ConstantVariable.js +38 -0
- package/dist/esm/dist/esm/variables/variants/CustomVariable.js +60 -0
- package/dist/esm/dist/esm/variables/variants/DataSourceVariable.js +88 -0
- package/dist/esm/dist/esm/variables/variants/IntervalVariable.js +117 -0
- package/dist/esm/dist/esm/variables/variants/MultiValueVariable.js +295 -0
- package/dist/esm/dist/esm/variables/variants/TestVariable.js +117 -0
- package/dist/esm/dist/esm/variables/variants/TextBoxVariable.js +61 -0
- package/dist/esm/dist/esm/variables/variants/query/QueryVariable.js +139 -0
- package/dist/esm/dist/esm/variables/variants/query/createQueryVariableRunner.js +129 -0
- package/dist/esm/dist/esm/variables/variants/query/guards.js +28 -0
- package/dist/esm/dist/esm/variables/variants/query/toMetricFindValues.js +96 -0
- package/dist/esm/dist/esm/variables/variants/query/utils.js +124 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/querying/DataProviderSharer.js +39 -0
- package/dist/esm/src/behaviors/ActWhenVariableChanged.js +27 -0
- package/dist/esm/src/behaviors/CursorSync.js +76 -0
- package/dist/esm/src/behaviors/LiveNowTimer.js +44 -0
- package/dist/esm/src/behaviors/SceneQueryController.js +60 -0
- package/dist/esm/src/behaviors/index.js +5 -0
- package/dist/esm/src/components/EmbeddedScene.js +59 -0
- package/dist/esm/src/components/NestedScene.js +95 -0
- package/dist/esm/src/components/SceneApp/SceneApp.js +37 -0
- package/dist/esm/src/components/SceneApp/SceneAppPage.js +176 -0
- package/dist/esm/src/components/SceneApp/SceneAppPageView.js +104 -0
- package/dist/esm/src/components/SceneApp/utils.js +42 -0
- package/dist/esm/src/components/SceneByFrameRepeater.js +41 -0
- package/dist/esm/src/components/SceneByVariableRepeater.js +55 -0
- package/dist/esm/src/components/SceneCanvasText.js +32 -0
- package/dist/esm/src/components/SceneControlsSpacer.js +17 -0
- package/dist/esm/src/components/SceneDebugger/DebugDetails.js +82 -0
- package/dist/esm/src/components/SceneDebugger/DebugTreeNode.js +72 -0
- package/dist/esm/src/components/SceneDebugger/SceneDebugger.js +77 -0
- package/dist/esm/src/components/SceneReactObject.js +34 -0
- package/dist/esm/src/components/SceneRefreshPicker.js +205 -0
- package/dist/esm/src/components/SceneTimePicker.js +139 -0
- package/dist/esm/src/components/SceneTimeRangeCompare.js +240 -0
- package/dist/esm/src/components/SceneToolbarButton.js +33 -0
- package/dist/esm/src/components/VizPanel/VizPanel.js +406 -0
- package/dist/esm/src/components/VizPanel/VizPanelExploreButton.js +44 -0
- package/dist/esm/src/components/VizPanel/VizPanelMenu.js +59 -0
- package/dist/esm/src/components/VizPanel/VizPanelRenderer.js +285 -0
- package/dist/esm/src/components/VizPanel/VizPanelSeriesLimit.js +45 -0
- package/dist/esm/src/components/VizPanel/colorSeriesConfigFactory.js +72 -0
- package/dist/esm/src/components/VizPanel/registerRuntimePanelPlugin.js +56 -0
- package/dist/esm/src/components/VizPanel/seriesVisibilityConfigFactory.js +164 -0
- package/dist/esm/src/components/layout/CSSGrid/SceneCSSGridLayout.js +124 -0
- package/dist/esm/src/components/layout/LazyLoader.js +103 -0
- package/dist/esm/src/components/layout/SceneFlexLayout.js +135 -0
- package/dist/esm/src/components/layout/grid/SceneGridItem.js +30 -0
- package/dist/esm/src/components/layout/grid/SceneGridLayout.js +283 -0
- package/dist/esm/src/components/layout/grid/SceneGridLayoutRenderer.js +178 -0
- package/dist/esm/src/components/layout/grid/SceneGridRow.js +190 -0
- package/dist/esm/src/components/layout/grid/constants.js +7 -0
- package/dist/esm/src/components/layout/grid/utils.js +36 -0
- package/dist/esm/src/components/layout/split/SplitLayout.js +17 -0
- package/dist/esm/src/components/layout/split/SplitLayoutRenderer.js +29 -0
- package/dist/esm/src/components/layout/split/Splitter.js +386 -0
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilder.js +100 -0
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilders.js +75 -0
- package/dist/esm/src/core/PanelBuilders/FieldConfigOverridesBuilder.js +75 -0
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilder.js +22 -0
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilders.js +85 -0
- package/dist/esm/src/core/PanelBuilders/StandardFieldConfigBuilders.js +52 -0
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilder.js +78 -0
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilders.js +114 -0
- package/dist/esm/src/core/PanelBuilders/VizPanelBuilder.js +162 -0
- package/dist/esm/src/core/PanelBuilders/index.js +116 -0
- package/dist/esm/src/core/SceneComponentWrapper.js +57 -0
- package/dist/esm/src/core/SceneDataNode.js +43 -0
- package/dist/esm/src/core/SceneObjectBase.js +286 -0
- package/dist/esm/src/core/SceneObjectRef.js +32 -0
- package/dist/esm/src/core/SceneTimeRange.js +231 -0
- package/dist/esm/src/core/SceneTimeRangeTransformerBase.js +35 -0
- package/dist/esm/src/core/SceneTimeZoneOverride.js +63 -0
- package/dist/esm/src/core/events.js +11 -0
- package/dist/esm/src/core/sceneGraph/getTimeRange.js +10 -0
- package/dist/esm/src/core/sceneGraph/index.js +25 -0
- package/dist/esm/src/core/sceneGraph/sceneGraph.js +178 -0
- package/dist/esm/src/core/sceneGraph/utils.js +64 -0
- package/dist/esm/src/core/types.js +15 -0
- package/dist/esm/src/index.js +108 -0
- package/dist/esm/src/querying/DataLayersMerger.js +46 -0
- package/dist/esm/src/querying/DataProviderProxy.js +37 -0
- package/dist/esm/src/querying/DataProviderSharer.js +108 -0
- package/dist/esm/src/querying/ExtraQueryProvider.js +6 -0
- package/dist/esm/src/querying/RuntimeDataSource.js +49 -0
- package/dist/esm/src/querying/SceneDataLayerSet.js +100 -0
- package/dist/esm/src/querying/SceneDataTransformer.js +178 -0
- package/dist/esm/src/querying/SceneQueryRunner.js +468 -0
- package/dist/esm/src/querying/extraQueryProcessingOperator.js +46 -0
- package/dist/esm/src/querying/getEnrichedDataRequest.js +12 -0
- package/dist/esm/src/querying/layers/SceneDataLayerBase.js +112 -0
- package/dist/esm/src/querying/layers/SceneDataLayerControls.js +51 -0
- package/dist/esm/src/querying/layers/annotations/AnnotationsDataLayer.js +130 -0
- package/dist/esm/src/querying/layers/annotations/filterAnnotations.js +85 -0
- package/dist/esm/src/querying/layers/annotations/standardAnnotationQuery.js +121 -0
- package/dist/esm/src/querying/layers/annotations/standardAnnotationsSupport.js +211 -0
- package/dist/esm/src/querying/layers/annotations/utils.js +77 -0
- package/dist/esm/src/querying/layers/index.js +2 -0
- package/dist/esm/src/querying/registerQueryWithController.js +41 -0
- package/dist/esm/src/services/SceneObjectUrlSyncConfig.js +30 -0
- package/dist/esm/src/services/UniqueUrlKeyMapper.js +45 -0
- package/dist/esm/src/services/UrlSyncContextProvider.js +17 -0
- package/dist/esm/src/services/UrlSyncManager.js +167 -0
- package/dist/esm/src/services/useUrlSync.js +29 -0
- package/dist/esm/src/services/utils.js +75 -0
- package/dist/esm/src/utils/ControlsLabel.js +107 -0
- package/dist/esm/src/utils/LoadingIndicator.js +19 -0
- package/dist/esm/src/utils/SafeSerializableSceneObject.js +39 -0
- package/dist/esm/src/utils/compatibility/setWindowGrafanaSceneContext.js +16 -0
- package/dist/esm/src/utils/date.js +15 -0
- package/dist/esm/src/utils/evaluateTimeRange.js +16 -0
- package/dist/esm/src/utils/explore.js +47 -0
- package/dist/esm/src/utils/getCompareSeriesRefId.js +4 -0
- package/dist/esm/src/utils/getDataSource.js +18 -0
- package/dist/esm/src/utils/getMessageFromError.js +24 -0
- package/dist/esm/src/utils/metricTree.js +53 -0
- package/dist/esm/src/utils/parseUrlParam.js +41 -0
- package/dist/esm/src/utils/utils.js +11 -0
- package/dist/esm/src/utils/wrapInSafeSerializableSceneObject.js +30 -0
- package/dist/esm/src/utils/writeSceneLog.js +12 -0
- package/dist/esm/src/variables/VariableDependencyConfig.js +150 -0
- package/dist/esm/src/variables/VariableValueRecorder.js +71 -0
- package/dist/esm/src/variables/adhoc/AdHocFilterBuilder.js +24 -0
- package/dist/esm/src/variables/adhoc/AdHocFilterRenderer.js +303 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +162 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +20 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +640 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +65 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +146 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +114 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +68 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/utils.js +146 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariable.js +289 -0
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +76 -0
- package/dist/esm/src/variables/adhoc/getAdhocOptionSearcher.js +13 -0
- package/dist/esm/src/variables/adhoc/patchGetAdhocFilters.js +47 -0
- package/dist/esm/src/variables/components/VariableValueControl.js +23 -0
- package/dist/esm/src/variables/components/VariableValueInput.js +33 -0
- package/dist/esm/src/variables/components/VariableValueSelect.js +228 -0
- package/dist/esm/src/variables/components/VariableValueSelectors.js +72 -0
- package/dist/esm/src/variables/components/getOptionSearcher.js +15 -0
- package/dist/esm/src/variables/constants.js +9 -0
- package/dist/esm/src/variables/getEnrichedFiltersRequest.js +12 -0
- package/dist/esm/src/variables/groupby/GroupByVariable.js +259 -0
- package/dist/esm/src/variables/groupby/GroupByVariableUrlSyncHandler.js +63 -0
- package/dist/esm/src/variables/groupby/findActiveGroupByVariablesByUid.js +13 -0
- package/dist/esm/src/variables/interpolation/ScopedVarsVariable.js +40 -0
- package/dist/esm/src/variables/interpolation/defaults.js +21 -0
- package/dist/esm/src/variables/interpolation/fieldAccessorCache.js +13 -0
- package/dist/esm/src/variables/interpolation/formatRegistry.js +296 -0
- package/dist/esm/src/variables/interpolation/sceneInterpolator.js +87 -0
- package/dist/esm/src/variables/lookupVariable.js +20 -0
- package/dist/esm/src/variables/macros/AllVariablesMacro.js +57 -0
- package/dist/esm/src/variables/macros/contextMacros.js +43 -0
- package/dist/esm/src/variables/macros/dataMacros.js +134 -0
- package/dist/esm/src/variables/macros/index.js +35 -0
- package/dist/esm/src/variables/macros/templateProxies.js +51 -0
- package/dist/esm/src/variables/macros/timeMacros.js +86 -0
- package/dist/esm/src/variables/macros/types.js +11 -0
- package/dist/esm/src/variables/macros/urlMacros.js +56 -0
- package/dist/esm/src/variables/sets/SceneVariableSet.js +254 -0
- package/dist/esm/src/variables/types.js +11 -0
- package/dist/esm/src/variables/utils.js +172 -0
- package/dist/esm/src/variables/variants/ConstantVariable.js +38 -0
- package/dist/esm/src/variables/variants/CustomVariable.js +60 -0
- package/dist/esm/src/variables/variants/DataSourceVariable.js +88 -0
- package/dist/esm/src/variables/variants/IntervalVariable.js +117 -0
- package/dist/esm/src/variables/variants/JsonVariable.js +193 -0
- package/dist/esm/src/variables/variants/LocalValueVariable.js +56 -0
- package/dist/esm/src/variables/variants/MultiValueVariable.js +295 -0
- package/dist/esm/src/variables/variants/TestVariable.js +117 -0
- package/dist/esm/src/variables/variants/TextBoxVariable.js +61 -0
- package/dist/esm/src/variables/variants/guards.js +27 -0
- package/dist/esm/src/variables/variants/query/QueryVariable.js +139 -0
- package/dist/esm/src/variables/variants/query/createQueryVariableRunner.js +129 -0
- package/dist/esm/src/variables/variants/query/guards.js +28 -0
- package/dist/esm/src/variables/variants/query/toMetricFindValues.js +96 -0
- package/dist/esm/src/variables/variants/query/utils.js +124 -0
- package/dist/esm/variables/components/VariableValueSelect.js +13 -9
- package/dist/esm/variables/components/VariableValueSelect.js.map +1 -1
- package/dist/esm/variables/variants/ConstantVariable.js +22 -0
- package/dist/esm/variables/variants/ConstantVariable.js.map +1 -1
- package/dist/esm/variables/variants/CustomVariable.js +3 -2
- package/dist/esm/variables/variants/CustomVariable.js.map +1 -1
- package/dist/esm/variables/variants/DataSourceVariable.js +3 -2
- package/dist/esm/variables/variants/DataSourceVariable.js.map +1 -1
- package/dist/esm/variables/variants/JsonVariable.js +96 -0
- package/dist/esm/variables/variants/TestVariable.js +3 -2
- package/dist/esm/variables/variants/TestVariable.js.map +1 -1
- package/dist/esm/variables/variants/json/JsonVariable.js +95 -0
- package/dist/esm/variables/variants/json/JsonVariableOptionProviders.js +70 -0
- package/dist/esm/variables/variants/query/QueryVariable.js +3 -2
- package/dist/esm/variables/variants/query/QueryVariable.js.map +1 -1
- package/dist/index.d.ts +14 -6
- package/dist/index.js +35 -13
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
|
|
3
|
+
class JsonStringOptionProvider {
|
|
4
|
+
constructor(options) {
|
|
5
|
+
this.options = options;
|
|
6
|
+
}
|
|
7
|
+
getOptions() {
|
|
8
|
+
return new Observable((subscriber) => {
|
|
9
|
+
try {
|
|
10
|
+
const { json, valueProp = "name" } = this.options;
|
|
11
|
+
const jsonValue = JSON.parse(json);
|
|
12
|
+
if (!Array.isArray(jsonValue)) {
|
|
13
|
+
throw new Error("JSON must be an array");
|
|
14
|
+
}
|
|
15
|
+
const resultOptions = [];
|
|
16
|
+
jsonValue.forEach((option) => {
|
|
17
|
+
if (option[valueProp] == null) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
resultOptions.push({
|
|
21
|
+
value: option[valueProp],
|
|
22
|
+
label: option[valueProp],
|
|
23
|
+
obj: option
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
subscriber.next(resultOptions);
|
|
27
|
+
subscriber.complete();
|
|
28
|
+
} catch (error) {
|
|
29
|
+
subscriber.error(error);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
class ObjectArrayOptionProvider {
|
|
35
|
+
constructor(options) {
|
|
36
|
+
this.options = options;
|
|
37
|
+
}
|
|
38
|
+
getOptions() {
|
|
39
|
+
return new Observable((subscriber) => {
|
|
40
|
+
try {
|
|
41
|
+
const { options, valueProp = "name" } = this.options;
|
|
42
|
+
const resultOptions = [];
|
|
43
|
+
options.forEach((option) => {
|
|
44
|
+
if (typeof option !== "object" || option == null) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (valueProp in option && option[valueProp] == null) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
resultOptions.push({
|
|
51
|
+
value: option[valueProp],
|
|
52
|
+
label: option[valueProp],
|
|
53
|
+
obj: option
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
subscriber.next(resultOptions);
|
|
57
|
+
subscriber.complete();
|
|
58
|
+
} catch (error) {
|
|
59
|
+
subscriber.error(error);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
const JsonVariableOptionProviders = {
|
|
65
|
+
fromString: (options) => new JsonStringOptionProvider(options),
|
|
66
|
+
fromObjectArray: (options) => new ObjectArrayOptionProvider(options)
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
export { JsonStringOptionProvider, JsonVariableOptionProviders, ObjectArrayOptionProvider };
|
|
70
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSnNvblZhcmlhYmxlT3B0aW9uUHJvdmlkZXJzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdmFyaWFibGVzL3ZhcmlhbnRzL2pzb24vSnNvblZhcmlhYmxlT3B0aW9uUHJvdmlkZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEpzb25WYXJpYWJsZU9wdGlvblByb3ZpZGVyLCBKc29uVmFyaWFibGVPcHRpb24gfSBmcm9tICcuL0pzb25WYXJpYWJsZSc7XG5pbXBvcnQgeyBpc09iamVjdCB9IGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSnNvblN0cmluZ09wdGlvblByb3ZpZGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBTdHJpbmcgY29udGF1aW5pbmcgSlNPTiB3aXRoIGFuIGFycmF5IG9mIG9iamVjdHMgb3IgYSBtYXAgb2Ygb2JqZWN0c1xuICAgKi9cbiAganNvbjogc3RyaW5nO1xuICAvKipcbiAgICogRGVmYXVsdHMgdG8gbmFtZSBpZiBub3Qgc3BlY2lmaWVkXG4gICAqL1xuICB2YWx1ZVByb3A/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBKc29uU3RyaW5nT3B0aW9uUHJvdmlkZXIgaW1wbGVtZW50cyBKc29uVmFyaWFibGVPcHRpb25Qcm92aWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIG9wdGlvbnM6IEpzb25TdHJpbmdPcHRpb25Qcm92aWRlck9wdGlvbnMpIHt9XG5cbiAgcHVibGljIGdldE9wdGlvbnMoKTogT2JzZXJ2YWJsZTxKc29uVmFyaWFibGVPcHRpb25bXT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcikgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBqc29uLCB2YWx1ZVByb3AgPSAnbmFtZScgfSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgY29uc3QganNvblZhbHVlID0gSlNPTi5wYXJzZShqc29uKTtcblxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoanNvblZhbHVlKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSlNPTiBtdXN0IGJlIGFuIGFycmF5Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHRPcHRpb25zOiBKc29uVmFyaWFibGVPcHRpb25bXSA9IFtdO1xuXG4gICAgICAgIGpzb25WYWx1ZS5mb3JFYWNoKChvcHRpb24pID0+IHtcbiAgICAgICAgICBpZiAob3B0aW9uW3ZhbHVlUHJvcF0gPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJlc3VsdE9wdGlvbnMucHVzaCh7XG4gICAgICAgICAgICB2YWx1ZTogb3B0aW9uW3ZhbHVlUHJvcF0sXG4gICAgICAgICAgICBsYWJlbDogb3B0aW9uW3ZhbHVlUHJvcF0sXG4gICAgICAgICAgICBvYmo6IG9wdGlvbixcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgc3Vic2NyaWJlci5uZXh0KHJlc3VsdE9wdGlvbnMpO1xuICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycm9yKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9iamVjdEFycmF5T3B0aW9uUHJvdmlkZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFN0cmluZyBjb250YXVpbmluZyBKU09OIHdpdGggYW4gYXJyYXkgb2Ygb2JqZWN0cyBvciBhIG1hcCBvZiBvYmplY3RzXG4gICAqL1xuICBvcHRpb25zOiB1bmtub3duW107XG4gIC8qKlxuICAgKiBEZWZhdWx0cyB0byBuYW1lIGlmIG5vdCBzcGVjaWZpZWRcbiAgICovXG4gIHZhbHVlUHJvcD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIE9iamVjdEFycmF5T3B0aW9uUHJvdmlkZXIgaW1wbGVtZW50cyBKc29uVmFyaWFibGVPcHRpb25Qcm92aWRlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIG9wdGlvbnM6IE9iamVjdEFycmF5T3B0aW9uUHJvdmlkZXJPcHRpb25zKSB7fVxuXG4gIHB1YmxpYyBnZXRPcHRpb25zKCk6IE9ic2VydmFibGU8SnNvblZhcmlhYmxlT3B0aW9uW10+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKHN1YnNjcmliZXIpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgb3B0aW9ucywgdmFsdWVQcm9wID0gJ25hbWUnIH0gPSB0aGlzLm9wdGlvbnM7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0T3B0aW9uczogSnNvblZhcmlhYmxlT3B0aW9uW10gPSBbXTtcblxuICAgICAgICBvcHRpb25zLmZvckVhY2goKG9wdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0eXBlb2Ygb3B0aW9uICE9PSAnb2JqZWN0JyB8fCBvcHRpb24gPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgICAgIGlmICh2YWx1ZVByb3AgaW4gb3B0aW9uICYmIG9wdGlvblt2YWx1ZVByb3BdID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXN1bHRPcHRpb25zLnB1c2goe1xuICAgICAgICAgICAgLy9AdHMtaWdub3JlXG4gICAgICAgICAgICB2YWx1ZTogb3B0aW9uW3ZhbHVlUHJvcF0sXG4gICAgICAgICAgICAvL0B0cy1pZ25vcmVcbiAgICAgICAgICAgIGxhYmVsOiBvcHRpb25bdmFsdWVQcm9wXSxcbiAgICAgICAgICAgIG9iajogb3B0aW9uLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBzdWJzY3JpYmVyLm5leHQocmVzdWx0T3B0aW9ucyk7XG4gICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHN1YnNjcmliZXIuZXJyb3IoZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBKc29uVmFyaWFibGVPcHRpb25Qcm92aWRlcnMgPSB7XG4gIGZyb21TdHJpbmc6IChvcHRpb25zOiBKc29uU3RyaW5nT3B0aW9uUHJvdmlkZXJPcHRpb25zKSA9PiBuZXcgSnNvblN0cmluZ09wdGlvblByb3ZpZGVyKG9wdGlvbnMpLFxuICBmcm9tT2JqZWN0QXJyYXk6IChvcHRpb25zOiBPYmplY3RBcnJheU9wdGlvblByb3ZpZGVyT3B0aW9ucykgPT4gbmV3IE9iamVjdEFycmF5T3B0aW9uUHJvdmlkZXIob3B0aW9ucyksXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBZU8sTUFBTSx3QkFBK0QsQ0FBQTtBQUFBLEVBQ25FLFlBQW9CLE9BQTBDLEVBQUE7QUFBMUMsSUFBQSxJQUFBLENBQUEsT0FBQSxHQUFBLE9BQUEsQ0FBQTtBQUFBLEdBQTJDO0FBQUEsRUFFL0QsVUFBK0MsR0FBQTtBQUNwRCxJQUFPLE9BQUEsSUFBSSxVQUFXLENBQUEsQ0FBQyxVQUFlLEtBQUE7QUFDcEMsTUFBSSxJQUFBO0FBQ0YsUUFBQSxNQUFNLEVBQUUsSUFBQSxFQUFNLFNBQVksR0FBQSxNQUFBLEtBQVcsSUFBSyxDQUFBLE9BQUEsQ0FBQTtBQUMxQyxRQUFNLE1BQUEsU0FBQSxHQUFZLElBQUssQ0FBQSxLQUFBLENBQU0sSUFBSSxDQUFBLENBQUE7QUFFakMsUUFBQSxJQUFJLENBQUMsS0FBQSxDQUFNLE9BQVEsQ0FBQSxTQUFTLENBQUcsRUFBQTtBQUM3QixVQUFNLE1BQUEsSUFBSSxNQUFNLHVCQUF1QixDQUFBLENBQUE7QUFBQSxTQUN6QztBQUVBLFFBQUEsTUFBTSxnQkFBc0MsRUFBQyxDQUFBO0FBRTdDLFFBQVUsU0FBQSxDQUFBLE9BQUEsQ0FBUSxDQUFDLE1BQVcsS0FBQTtBQUM1QixVQUFJLElBQUEsTUFBQSxDQUFPLGNBQWMsSUFBTSxFQUFBO0FBQzdCLFlBQUEsT0FBQTtBQUFBLFdBQ0Y7QUFFQSxVQUFBLGFBQUEsQ0FBYyxJQUFLLENBQUE7QUFBQSxZQUNqQixPQUFPLE1BQU8sQ0FBQSxTQUFBLENBQUE7QUFBQSxZQUNkLE9BQU8sTUFBTyxDQUFBLFNBQUEsQ0FBQTtBQUFBLFlBQ2QsR0FBSyxFQUFBLE1BQUE7QUFBQSxXQUNOLENBQUEsQ0FBQTtBQUFBLFNBQ0YsQ0FBQSxDQUFBO0FBRUQsUUFBQSxVQUFBLENBQVcsS0FBSyxhQUFhLENBQUEsQ0FBQTtBQUM3QixRQUFBLFVBQUEsQ0FBVyxRQUFTLEVBQUEsQ0FBQTtBQUFBLGVBQ2IsS0FBUCxFQUFBO0FBQ0EsUUFBQSxVQUFBLENBQVcsTUFBTSxLQUFLLENBQUEsQ0FBQTtBQUFBLE9BQ3hCO0FBQUEsS0FDRCxDQUFBLENBQUE7QUFBQSxHQUNIO0FBQ0YsQ0FBQTtBQWFPLE1BQU0seUJBQWdFLENBQUE7QUFBQSxFQUNwRSxZQUFvQixPQUEyQyxFQUFBO0FBQTNDLElBQUEsSUFBQSxDQUFBLE9BQUEsR0FBQSxPQUFBLENBQUE7QUFBQSxHQUE0QztBQUFBLEVBRWhFLFVBQStDLEdBQUE7QUFDcEQsSUFBTyxPQUFBLElBQUksVUFBVyxDQUFBLENBQUMsVUFBZSxLQUFBO0FBQ3BDLE1BQUksSUFBQTtBQUNGLFFBQUEsTUFBTSxFQUFFLE9BQUEsRUFBUyxTQUFZLEdBQUEsTUFBQSxLQUFXLElBQUssQ0FBQSxPQUFBLENBQUE7QUFFN0MsUUFBQSxNQUFNLGdCQUFzQyxFQUFDLENBQUE7QUFFN0MsUUFBUSxPQUFBLENBQUEsT0FBQSxDQUFRLENBQUMsTUFBVyxLQUFBO0FBQzFCLFVBQUEsSUFBSSxPQUFPLE1BQUEsS0FBVyxRQUFZLElBQUEsTUFBQSxJQUFVLElBQU0sRUFBQTtBQUNoRCxZQUFBLE9BQUE7QUFBQSxXQUNGO0FBR0EsVUFBQSxJQUFJLFNBQWEsSUFBQSxNQUFBLElBQVUsTUFBTyxDQUFBLFNBQUEsQ0FBQSxJQUFjLElBQU0sRUFBQTtBQUNwRCxZQUFBLE9BQUE7QUFBQSxXQUNGO0FBRUEsVUFBQSxhQUFBLENBQWMsSUFBSyxDQUFBO0FBQUEsWUFFakIsT0FBTyxNQUFPLENBQUEsU0FBQSxDQUFBO0FBQUEsWUFFZCxPQUFPLE1BQU8sQ0FBQSxTQUFBLENBQUE7QUFBQSxZQUNkLEdBQUssRUFBQSxNQUFBO0FBQUEsV0FDTixDQUFBLENBQUE7QUFBQSxTQUNGLENBQUEsQ0FBQTtBQUVELFFBQUEsVUFBQSxDQUFXLEtBQUssYUFBYSxDQUFBLENBQUE7QUFDN0IsUUFBQSxVQUFBLENBQVcsUUFBUyxFQUFBLENBQUE7QUFBQSxlQUNiLEtBQVAsRUFBQTtBQUNBLFFBQUEsVUFBQSxDQUFXLE1BQU0sS0FBSyxDQUFBLENBQUE7QUFBQSxPQUN4QjtBQUFBLEtBQ0QsQ0FBQSxDQUFBO0FBQUEsR0FDSDtBQUNGLENBQUE7QUFFTyxNQUFNLDJCQUE4QixHQUFBO0FBQUEsRUFDekMsVUFBWSxFQUFBLENBQUMsT0FBNkMsS0FBQSxJQUFJLHlCQUF5QixPQUFPLENBQUE7QUFBQSxFQUM5RixlQUFpQixFQUFBLENBQUMsT0FBOEMsS0FBQSxJQUFJLDBCQUEwQixPQUFPLENBQUE7QUFDdkc7Ozs7In0=
|
|
@@ -3,7 +3,7 @@ import { v4 } from 'uuid';
|
|
|
3
3
|
import { VariableSort, VariableRefresh, LoadingState, CoreApp } from '@grafana/data';
|
|
4
4
|
import { sceneGraph } from '../../../core/sceneGraph/index.js';
|
|
5
5
|
import { VariableDependencyConfig } from '../../VariableDependencyConfig.js';
|
|
6
|
-
import {
|
|
6
|
+
import { MultiOrSingleValueSelect } from '../../components/VariableValueSelect.js';
|
|
7
7
|
import { MultiValueVariable } from '../MultiValueVariable.js';
|
|
8
8
|
import { createQueryVariableRunner } from './createQueryVariableRunner.js';
|
|
9
9
|
import { metricNamesToVariableValues } from './utils.js';
|
|
@@ -14,6 +14,7 @@ import { SEARCH_FILTER_VARIABLE } from '../../constants.js';
|
|
|
14
14
|
import { debounce } from 'lodash';
|
|
15
15
|
import { registerQueryWithController } from '../../../querying/registerQueryWithController.js';
|
|
16
16
|
import { wrapInSafeSerializableSceneObject } from '../../../utils/wrapInSafeSerializableSceneObject.js';
|
|
17
|
+
import React from 'react';
|
|
17
18
|
|
|
18
19
|
class QueryVariable extends MultiValueVariable {
|
|
19
20
|
constructor(initialState) {
|
|
@@ -116,7 +117,7 @@ class QueryVariable extends MultiValueVariable {
|
|
|
116
117
|
}
|
|
117
118
|
}
|
|
118
119
|
QueryVariable.Component = ({ model }) => {
|
|
119
|
-
return
|
|
120
|
+
return /* @__PURE__ */ React.createElement(MultiOrSingleValueSelect, { model });
|
|
120
121
|
};
|
|
121
122
|
function containsSearchFilter(query) {
|
|
122
123
|
const str = safeStringifyValue(query);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryVariable.js","sources":["../../../../../src/variables/variants/query/QueryVariable.tsx"],"sourcesContent":["import { Observable, of, filter, take, mergeMap, catchError, throwError, from, lastValueFrom } from 'rxjs';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport {\n CoreApp,\n DataQueryRequest,\n LoadingState,\n PanelData,\n ScopedVars,\n VariableRefresh,\n VariableSort,\n} from '@grafana/data';\n\nimport { sceneGraph } from '../../../core/sceneGraph';\nimport { SceneComponentProps, SceneDataQuery } from '../../../core/types';\nimport { VariableDependencyConfig } from '../../VariableDependencyConfig';\nimport {
|
|
1
|
+
{"version":3,"file":"QueryVariable.js","sources":["../../../../../src/variables/variants/query/QueryVariable.tsx"],"sourcesContent":["import { Observable, of, filter, take, mergeMap, catchError, throwError, from, lastValueFrom } from 'rxjs';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport {\n CoreApp,\n DataQueryRequest,\n LoadingState,\n PanelData,\n ScopedVars,\n VariableRefresh,\n VariableSort,\n} from '@grafana/data';\n\nimport { sceneGraph } from '../../../core/sceneGraph';\nimport { SceneComponentProps, SceneDataQuery } from '../../../core/types';\nimport { VariableDependencyConfig } from '../../VariableDependencyConfig';\nimport { MultiOrSingleValueSelect } from '../../components/VariableValueSelect';\nimport { VariableValueOption } from '../../types';\nimport { MultiValueVariable, MultiValueVariableState, VariableGetOptionsArgs } from '../MultiValueVariable';\n\nimport { createQueryVariableRunner } from './createQueryVariableRunner';\nimport { metricNamesToVariableValues } from './utils';\nimport { toMetricFindValues } from './toMetricFindValues';\nimport { getDataSource } from '../../../utils/getDataSource';\nimport { safeStringifyValue } from '../../utils';\nimport { DataQuery, DataSourceRef } from '@grafana/schema';\nimport { SEARCH_FILTER_VARIABLE } from '../../constants';\nimport { debounce } from 'lodash';\nimport { registerQueryWithController } from '../../../querying/registerQueryWithController';\nimport { wrapInSafeSerializableSceneObject } from '../../../utils/wrapInSafeSerializableSceneObject';\nimport React from 'react';\n\nexport interface QueryVariableState extends MultiValueVariableState {\n type: 'query';\n datasource: DataSourceRef | null;\n query: string | SceneDataQuery;\n regex: string;\n refresh: VariableRefresh;\n sort: VariableSort;\n /** @internal Only for use inside core dashboards */\n definition?: string;\n}\n\nexport class QueryVariable extends MultiValueVariable<QueryVariableState> {\n protected _variableDependency = new VariableDependencyConfig(this, {\n statePaths: ['regex', 'query', 'datasource'],\n });\n\n public constructor(initialState: Partial<QueryVariableState>) {\n super({\n type: 'query',\n name: '',\n value: '',\n text: '',\n options: [],\n datasource: null,\n regex: '',\n query: '',\n refresh: VariableRefresh.onDashboardLoad,\n sort: VariableSort.disabled,\n ...initialState,\n });\n }\n\n public getValueOptions(args: VariableGetOptionsArgs): Observable<VariableValueOption[]> {\n if (!this.state.query) {\n return of([]);\n }\n\n this.setState({ loading: true, error: null });\n\n return from(\n getDataSource(this.state.datasource, {\n __sceneObject: wrapInSafeSerializableSceneObject(this),\n })\n ).pipe(\n mergeMap((ds) => {\n const runner = createQueryVariableRunner(ds);\n const target = runner.getTarget(this);\n const request = this.getRequest(target, args.searchFilter);\n\n return runner.runRequest({ variable: this, searchFilter: args.searchFilter }, request).pipe(\n registerQueryWithController({\n type: 'variable',\n request: request,\n origin: this,\n }),\n filter((data) => data.state === LoadingState.Done || data.state === LoadingState.Error), // we only care about done or error for now\n take(1), // take the first result, using first caused a bug where it in some situations throw an uncaught error because of no results had been received yet\n mergeMap((data: PanelData) => {\n if (data.state === LoadingState.Error) {\n return throwError(() => data.error);\n }\n return of(data);\n }),\n toMetricFindValues(),\n mergeMap((values) => {\n let regex = '';\n if (this.state.regex) {\n regex = sceneGraph.interpolate(this, this.state.regex, undefined, 'regex');\n }\n return of(metricNamesToVariableValues(regex, this.state.sort, values));\n }),\n catchError((error) => {\n if (error.cancelled) {\n return of([]);\n }\n return throwError(() => error);\n })\n );\n })\n );\n }\n\n private getRequest(target: DataQuery | string, searchFilter?: string) {\n const scopedVars: ScopedVars = {\n __sceneObject: wrapInSafeSerializableSceneObject(this),\n };\n\n if (searchFilter) {\n scopedVars.__searchFilter = { value: searchFilter, text: searchFilter };\n }\n\n const range = sceneGraph.getTimeRange(this).state.value;\n\n const request: DataQueryRequest = {\n app: CoreApp.Dashboard,\n requestId: uuidv4(),\n timezone: '',\n range,\n interval: '',\n intervalMs: 0,\n // @ts-ignore\n targets: [target],\n scopedVars,\n startTime: Date.now(),\n };\n\n return request;\n }\n\n onSearchChange = (searchFilter: string) => {\n if (!containsSearchFilter(this.state.query)) {\n return;\n }\n\n this._updateOptionsBasedOnSearchFilter(searchFilter);\n };\n\n private _updateOptionsBasedOnSearchFilter = debounce(async (searchFilter: string) => {\n const result = await lastValueFrom(this.getValueOptions({ searchFilter }));\n this.setState({ options: result, loading: false });\n }, 400);\n\n public static Component = ({ model }: SceneComponentProps<MultiValueVariable>) => {\n return <MultiOrSingleValueSelect model={model} />;\n };\n}\n\nfunction containsSearchFilter(query: string | DataQuery) {\n const str = safeStringifyValue(query);\n return str.indexOf(SEARCH_FILTER_VARIABLE) > -1;\n}\n"],"names":["uuidv4"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1005,7 +1005,13 @@ interface ConstantVariableState extends SceneVariableState {
|
|
|
1005
1005
|
value: VariableValue;
|
|
1006
1006
|
}
|
|
1007
1007
|
declare class ConstantVariable extends SceneObjectBase<ConstantVariableState> implements SceneVariable<ConstantVariableState> {
|
|
1008
|
+
protected _variableDependency: VariableDependencyConfig<ConstantVariableState>;
|
|
1009
|
+
private _prevValue;
|
|
1008
1010
|
constructor(initialState: Partial<ConstantVariableState>);
|
|
1011
|
+
/**
|
|
1012
|
+
* This function is called on when SceneVariableSet is activated or when a dependency changes.
|
|
1013
|
+
*/
|
|
1014
|
+
validateAndUpdate(): Observable<ValidateAndUpdateResult>;
|
|
1009
1015
|
getValue(): VariableValue;
|
|
1010
1016
|
}
|
|
1011
1017
|
|
|
@@ -1090,7 +1096,7 @@ declare class CustomVariable extends MultiValueVariable<CustomVariableState> {
|
|
|
1090
1096
|
protected _variableDependency: VariableDependencyConfig<CustomVariableState>;
|
|
1091
1097
|
constructor(initialState: Partial<CustomVariableState>);
|
|
1092
1098
|
getValueOptions(args: VariableGetOptionsArgs): Observable<VariableValueOption[]>;
|
|
1093
|
-
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) =>
|
|
1099
|
+
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) => React__default.JSX.Element;
|
|
1094
1100
|
}
|
|
1095
1101
|
|
|
1096
1102
|
interface DataSourceVariableState extends MultiValueVariableState {
|
|
@@ -1111,7 +1117,7 @@ declare class DataSourceVariable extends MultiValueVariable<DataSourceVariableSt
|
|
|
1111
1117
|
protected _variableDependency: VariableDependencyConfig<DataSourceVariableState>;
|
|
1112
1118
|
constructor(initialState: Partial<DataSourceVariableState>);
|
|
1113
1119
|
getValueOptions(args: VariableGetOptionsArgs): Observable<VariableValueOption[]>;
|
|
1114
|
-
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) =>
|
|
1120
|
+
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) => React__default.JSX.Element;
|
|
1115
1121
|
}
|
|
1116
1122
|
|
|
1117
1123
|
interface IntervalVariableState extends SceneVariableState {
|
|
@@ -1169,7 +1175,7 @@ declare class QueryVariable extends MultiValueVariable<QueryVariableState> {
|
|
|
1169
1175
|
private getRequest;
|
|
1170
1176
|
onSearchChange: (searchFilter: string) => void;
|
|
1171
1177
|
private _updateOptionsBasedOnSearchFilter;
|
|
1172
|
-
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) =>
|
|
1178
|
+
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) => React__default.JSX.Element;
|
|
1173
1179
|
}
|
|
1174
1180
|
|
|
1175
1181
|
interface GroupByVariableState extends MultiValueVariableState {
|
|
@@ -1993,7 +1999,7 @@ declare class TestVariable extends MultiValueVariable<TestVariableState> {
|
|
|
1993
1999
|
private getOptions;
|
|
1994
2000
|
/** Useful from tests */
|
|
1995
2001
|
signalUpdateCompleted(): void;
|
|
1996
|
-
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) =>
|
|
2002
|
+
static Component: ({ model }: SceneComponentProps<MultiValueVariable>) => React__default.JSX.Element;
|
|
1997
2003
|
}
|
|
1998
2004
|
|
|
1999
2005
|
interface LocalValueVariableState extends SceneVariableState {
|
|
@@ -2866,7 +2872,9 @@ interface ControlsLabelProps {
|
|
|
2866
2872
|
}
|
|
2867
2873
|
declare function ControlsLabel(props: ControlsLabelProps): JSX.Element;
|
|
2868
2874
|
|
|
2869
|
-
declare function
|
|
2875
|
+
declare function MultiOrSingleValueSelect({ model }: {
|
|
2876
|
+
model: MultiValueVariable;
|
|
2877
|
+
}): React__default.JSX.Element;
|
|
2870
2878
|
|
|
2871
2879
|
declare class VizConfigBuilder<TOptions extends {}, TFieldConfig extends {}> implements StandardFieldConfigInterface<StandardFieldConfig, VizConfigBuilder<TOptions, TFieldConfig>, 'set'> {
|
|
2872
2880
|
private _fieldConfigBuilder;
|
|
@@ -3019,5 +3027,5 @@ declare const sceneUtils: {
|
|
|
3019
3027
|
isGroupByVariable: typeof isGroupByVariable;
|
|
3020
3028
|
};
|
|
3021
3029
|
|
|
3022
|
-
export { AdHocFiltersVariable, ConstantVariable, ControlsLabel, CustomVariable, DataProviderProxy, DataSourceVariable, EmbeddedScene, FieldConfigBuilder, FieldConfigBuilders, FieldConfigOverridesBuilder, FilterOrigin, GroupByVariable, IntervalVariable, LazyLoader, LocalValueVariable, MultiValueVariable, NestedScene, NewSceneObjectAddedEvent, PanelBuilders, PanelOptionsBuilders, QueryVariable, RuntimeDataSource, SafeSerializableSceneObject, SceneApp, SceneAppPage, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerSet, SceneDataLayerSetBase, SceneDataNode, SceneDataTransformer, SceneDebugger, SceneFlexItem, SceneFlexLayout, SceneGridItem, SceneGridLayout, SceneGridLayoutDragStartEvent, SceneGridRow, SceneObjectBase, SceneObjectRef, SceneObjectStateChangedEvent, SceneObjectUrlSyncConfig, SceneQueryRunner, SceneReactObject, SceneRefreshPicker, SceneScopesBridge, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneVariableSet, SceneVariableValueChangedEvent, SplitLayout, TestVariable, TextBoxVariable, UrlSyncContextProvider, UrlSyncManager, UserActionEvent, VariableDependencyConfig, VariableValueControl, VariableValueSelectWrapper, VariableValueSelectors, VizConfigBuilder, VizConfigBuilders, VizPanel, VizPanelBuilder, VizPanelExploreButton, VizPanelMenu, index$1 as behaviors, index as dataLayers, formatRegistry, getExploreURL, isCustomVariableValue, isDataLayer, isDataRequestEnricher, isFiltersRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, renderSelectForVariable, sceneGraph, sceneUtils, useSceneApp, useSceneObjectState, useUrlSync };
|
|
3030
|
+
export { AdHocFiltersVariable, ConstantVariable, ControlsLabel, CustomVariable, DataProviderProxy, DataSourceVariable, EmbeddedScene, FieldConfigBuilder, FieldConfigBuilders, FieldConfigOverridesBuilder, FilterOrigin, GroupByVariable, IntervalVariable, LazyLoader, LocalValueVariable, MultiValueVariable, NestedScene, NewSceneObjectAddedEvent, PanelBuilders, PanelOptionsBuilders, QueryVariable, RuntimeDataSource, SafeSerializableSceneObject, SceneApp, SceneAppPage, SceneByFrameRepeater, SceneByVariableRepeater, SceneCSSGridItem, SceneCSSGridLayout, SceneCanvasText, SceneControlsSpacer, SceneDataLayerBase, SceneDataLayerControls, SceneDataLayerSet, SceneDataLayerSetBase, SceneDataNode, SceneDataTransformer, SceneDebugger, SceneFlexItem, SceneFlexLayout, SceneGridItem, SceneGridLayout, SceneGridLayoutDragStartEvent, SceneGridRow, SceneObjectBase, SceneObjectRef, SceneObjectStateChangedEvent, SceneObjectUrlSyncConfig, SceneQueryRunner, SceneReactObject, SceneRefreshPicker, SceneScopesBridge, SceneTimePicker, SceneTimeRange, SceneTimeRangeCompare, SceneTimeRangeTransformerBase, SceneTimeZoneOverride, SceneToolbarButton, SceneToolbarInput, SceneVariableSet, SceneVariableValueChangedEvent, SplitLayout, TestVariable, TextBoxVariable, UrlSyncContextProvider, UrlSyncManager, UserActionEvent, VariableDependencyConfig, VariableValueControl, VariableValueSelectWrapper, VariableValueSelectors, VizConfigBuilder, VizConfigBuilders, VizPanel, VizPanelBuilder, VizPanelExploreButton, VizPanelMenu, index$1 as behaviors, index as dataLayers, formatRegistry, getExploreURL, isCustomVariableValue, isDataLayer, isDataRequestEnricher, isFiltersRequestEnricher, isSceneObject, registerQueryWithController, registerRuntimeDataSource, MultiOrSingleValueSelect as renderSelectForVariable, sceneGraph, sceneUtils, useSceneApp, useSceneObjectState, useUrlSync };
|
|
3023
3031
|
export type { AdHocFilterWithLabels, CancelActivationHandler, ControlsLayout, CustomFormatterVariable, CustomTransformOperator, CustomTransformerDefinition, CustomVariableValue, DataLayerFilter, DataRequestEnricher, DeepPartial, EmbeddedSceneState, ExtraQueryDataProcessor, ExtraQueryDescriptor, ExtraQueryProvider, FiltersRequestEnricher, FormatVariable, InterpolationFormatParameter, MacroVariableConstructor, MultiValueVariableState, QueryRunnerState, SceneActivationHandler, SceneAppDrilldownView, SceneAppPageLike, SceneAppPageState, SceneAppRoute, SceneComponent, SceneComponentProps, SceneDataLayerProvider, SceneDataLayerProviderState, SceneDataProvider, SceneDataProviderResult, SceneDataQuery, SceneDataState, SceneDataTransformerState, SceneDeactivationHandler, SceneFlexItemLike, SceneFlexItemState, SceneGridItemLike, SceneGridItemStateLike, SceneInteractionProfileEvent, SceneLayout, SceneLayoutChildOptions, SceneLayoutState, SceneObject, SceneObjectState, SceneObjectStateChangedPayload, SceneObjectUrlSyncHandler, SceneObjectUrlValue, SceneObjectUrlValues, SceneObjectWithUrlSync, SceneQueryControllerEntry, SceneQueryControllerEntryType, SceneQueryControllerLike, SceneRefreshPickerState, SceneRouteMatch, SceneStateChangedHandler, SceneStatelessBehavior, SceneTimeRangeLike, SceneTimeRangeState, SceneUrlSyncOptions, SceneVariable, SceneVariableDependencyConfigLike, SceneVariableSetState, SceneVariableState, SceneVariables, UrlSyncManagerLike, UseStateHookOptions, ValidateAndUpdateResult, VariableCustomFormatterFn, VariableGetOptionsArgs, VariableValue, VariableValueOption, VariableValueSingle, VizConfig, VizPanelState };
|
package/dist/index.js
CHANGED
|
@@ -2749,8 +2749,8 @@ function toSelectableValue$2(value, label) {
|
|
|
2749
2749
|
label: label != null ? label : String(value)
|
|
2750
2750
|
};
|
|
2751
2751
|
}
|
|
2752
|
-
function VariableValueSelect({ model }) {
|
|
2753
|
-
const { value, text, key, options, includeAll, isReadOnly, allowCustomValue = true } =
|
|
2752
|
+
function VariableValueSelect({ model, state }) {
|
|
2753
|
+
const { value, text, key, options, includeAll, isReadOnly, allowCustomValue = true } = state;
|
|
2754
2754
|
const [inputValue, setInputValue] = React.useState("");
|
|
2755
2755
|
const [hasCustomValue, setHasCustomValue] = React.useState(false);
|
|
2756
2756
|
const selectValue = toSelectableValue$2(value, String(text));
|
|
@@ -2804,7 +2804,10 @@ function VariableValueSelect({ model }) {
|
|
|
2804
2804
|
}
|
|
2805
2805
|
);
|
|
2806
2806
|
}
|
|
2807
|
-
function VariableValueSelectMulti({
|
|
2807
|
+
function VariableValueSelectMulti({
|
|
2808
|
+
model,
|
|
2809
|
+
state
|
|
2810
|
+
}) {
|
|
2808
2811
|
const {
|
|
2809
2812
|
value,
|
|
2810
2813
|
options,
|
|
@@ -2814,7 +2817,7 @@ function VariableValueSelectMulti({ model }) {
|
|
|
2814
2817
|
includeAll,
|
|
2815
2818
|
isReadOnly,
|
|
2816
2819
|
allowCustomValue = true
|
|
2817
|
-
} =
|
|
2820
|
+
} = state;
|
|
2818
2821
|
const arrayValue = React.useMemo(() => lodash.isArray(value) ? value : [value], [value]);
|
|
2819
2822
|
const [uncommittedValue, setUncommittedValue] = React.useState(arrayValue);
|
|
2820
2823
|
const [inputValue, setInputValue] = React.useState("");
|
|
@@ -2922,11 +2925,12 @@ const getOptionStyles = (theme) => ({
|
|
|
2922
2925
|
marginRight: theme.spacing(2)
|
|
2923
2926
|
})
|
|
2924
2927
|
});
|
|
2925
|
-
function
|
|
2926
|
-
|
|
2927
|
-
|
|
2928
|
+
function MultiOrSingleValueSelect({ model }) {
|
|
2929
|
+
const state = model.useState();
|
|
2930
|
+
if (state.isMulti) {
|
|
2931
|
+
return /* @__PURE__ */ React__default.default.createElement(VariableValueSelectMulti, { model, state });
|
|
2928
2932
|
} else {
|
|
2929
|
-
return /* @__PURE__ */ React__default.default.createElement(VariableValueSelect, { model });
|
|
2933
|
+
return /* @__PURE__ */ React__default.default.createElement(VariableValueSelect, { model, state });
|
|
2930
2934
|
}
|
|
2931
2935
|
}
|
|
2932
2936
|
|
|
@@ -6325,8 +6329,26 @@ class ConstantVariable extends SceneObjectBase {
|
|
|
6325
6329
|
...initialState,
|
|
6326
6330
|
skipUrlSync: true
|
|
6327
6331
|
});
|
|
6332
|
+
this._variableDependency = new VariableDependencyConfig(this, {
|
|
6333
|
+
statePaths: ["value"]
|
|
6334
|
+
});
|
|
6335
|
+
this._prevValue = "";
|
|
6336
|
+
}
|
|
6337
|
+
/**
|
|
6338
|
+
* This function is called on when SceneVariableSet is activated or when a dependency changes.
|
|
6339
|
+
*/
|
|
6340
|
+
validateAndUpdate() {
|
|
6341
|
+
const newValue = this.getValue();
|
|
6342
|
+
if (this._prevValue !== newValue) {
|
|
6343
|
+
this._prevValue = newValue;
|
|
6344
|
+
this.publishEvent(new SceneVariableValueChangedEvent(this), true);
|
|
6345
|
+
}
|
|
6346
|
+
return rxjs.of({});
|
|
6328
6347
|
}
|
|
6329
6348
|
getValue() {
|
|
6349
|
+
if (typeof this.state.value === "string") {
|
|
6350
|
+
return sceneGraph.interpolate(this, this.state.value);
|
|
6351
|
+
}
|
|
6330
6352
|
return this.state.value;
|
|
6331
6353
|
}
|
|
6332
6354
|
}
|
|
@@ -6948,7 +6970,7 @@ class QueryVariable extends MultiValueVariable {
|
|
|
6948
6970
|
}
|
|
6949
6971
|
}
|
|
6950
6972
|
QueryVariable.Component = ({ model }) => {
|
|
6951
|
-
return
|
|
6973
|
+
return /* @__PURE__ */ React__default.default.createElement(MultiOrSingleValueSelect, { model });
|
|
6952
6974
|
};
|
|
6953
6975
|
function containsSearchFilter(query) {
|
|
6954
6976
|
const str = safeStringifyValue(query);
|
|
@@ -9682,7 +9704,7 @@ class CustomVariable extends MultiValueVariable {
|
|
|
9682
9704
|
}
|
|
9683
9705
|
}
|
|
9684
9706
|
CustomVariable.Component = ({ model }) => {
|
|
9685
|
-
return
|
|
9707
|
+
return /* @__PURE__ */ React__default.default.createElement(MultiOrSingleValueSelect, { model });
|
|
9686
9708
|
};
|
|
9687
9709
|
|
|
9688
9710
|
class DataSourceVariable extends MultiValueVariable {
|
|
@@ -9730,7 +9752,7 @@ class DataSourceVariable extends MultiValueVariable {
|
|
|
9730
9752
|
}
|
|
9731
9753
|
}
|
|
9732
9754
|
DataSourceVariable.Component = ({ model }) => {
|
|
9733
|
-
return
|
|
9755
|
+
return /* @__PURE__ */ React__default.default.createElement(MultiOrSingleValueSelect, { model });
|
|
9734
9756
|
};
|
|
9735
9757
|
function isValid(source, regex) {
|
|
9736
9758
|
if (!regex) {
|
|
@@ -9887,7 +9909,7 @@ class TestVariable extends MultiValueVariable {
|
|
|
9887
9909
|
}
|
|
9888
9910
|
}
|
|
9889
9911
|
TestVariable.Component = ({ model }) => {
|
|
9890
|
-
return
|
|
9912
|
+
return /* @__PURE__ */ React__default.default.createElement(MultiOrSingleValueSelect, { model });
|
|
9891
9913
|
};
|
|
9892
9914
|
|
|
9893
9915
|
function VariableValueInput({ model }) {
|
|
@@ -13940,7 +13962,7 @@ exports.isFiltersRequestEnricher = isFiltersRequestEnricher;
|
|
|
13940
13962
|
exports.isSceneObject = isSceneObject;
|
|
13941
13963
|
exports.registerQueryWithController = registerQueryWithController;
|
|
13942
13964
|
exports.registerRuntimeDataSource = registerRuntimeDataSource;
|
|
13943
|
-
exports.renderSelectForVariable =
|
|
13965
|
+
exports.renderSelectForVariable = MultiOrSingleValueSelect;
|
|
13944
13966
|
exports.sceneGraph = sceneGraph;
|
|
13945
13967
|
exports.sceneUtils = sceneUtils;
|
|
13946
13968
|
exports.useSceneApp = useSceneApp;
|