@grafana/scenes 6.7.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 +13 -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,134 @@
|
|
|
1
|
+
import { getDisplayProcessor, formattedValueToString, FieldType, getFieldDisplayValuesProxy, getFrameDisplayName } from '@grafana/data';
|
|
2
|
+
import { getFieldAccessor } from '../interpolation/fieldAccessorCache.js';
|
|
3
|
+
import { getTemplateProxyForField } from './templateProxies.js';
|
|
4
|
+
|
|
5
|
+
class ValueMacro {
|
|
6
|
+
constructor(name, sceneObject, _match, _scopedVars) {
|
|
7
|
+
this._match = _match;
|
|
8
|
+
this._scopedVars = _scopedVars;
|
|
9
|
+
this.state = { name, type: "__value" };
|
|
10
|
+
}
|
|
11
|
+
getValue(fieldPath) {
|
|
12
|
+
var _a, _b;
|
|
13
|
+
const dataContext = (_a = this._scopedVars) == null ? void 0 : _a.__dataContext;
|
|
14
|
+
if (!dataContext) {
|
|
15
|
+
return this._match;
|
|
16
|
+
}
|
|
17
|
+
const { frame, rowIndex, field, calculatedValue } = dataContext.value;
|
|
18
|
+
if (calculatedValue) {
|
|
19
|
+
switch (fieldPath) {
|
|
20
|
+
case "numeric":
|
|
21
|
+
return calculatedValue.numeric;
|
|
22
|
+
case "raw":
|
|
23
|
+
return calculatedValue.numeric;
|
|
24
|
+
case "time":
|
|
25
|
+
return "";
|
|
26
|
+
case "text":
|
|
27
|
+
default:
|
|
28
|
+
return formattedValueToString(calculatedValue);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
if (rowIndex == null) {
|
|
32
|
+
return this._match;
|
|
33
|
+
}
|
|
34
|
+
if (fieldPath === "time") {
|
|
35
|
+
const timeField = frame.fields.find((f) => f.type === FieldType.time);
|
|
36
|
+
return timeField ? timeField.values.get(rowIndex) : void 0;
|
|
37
|
+
}
|
|
38
|
+
if (!field) {
|
|
39
|
+
return this._match;
|
|
40
|
+
}
|
|
41
|
+
const value = field.values.get(rowIndex);
|
|
42
|
+
if (fieldPath === "raw") {
|
|
43
|
+
return value;
|
|
44
|
+
}
|
|
45
|
+
const displayProcessor = (_b = field.display) != null ? _b : fallbackDisplayProcessor;
|
|
46
|
+
const result = displayProcessor(value);
|
|
47
|
+
switch (fieldPath) {
|
|
48
|
+
case "numeric":
|
|
49
|
+
return result.numeric;
|
|
50
|
+
case "text":
|
|
51
|
+
default:
|
|
52
|
+
return formattedValueToString(result);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
getValueText() {
|
|
56
|
+
return "";
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
const fallbackDisplayProcessor = getDisplayProcessor();
|
|
60
|
+
class DataMacro {
|
|
61
|
+
constructor(name, sceneObject, _match, _scopedVars) {
|
|
62
|
+
this._match = _match;
|
|
63
|
+
this._scopedVars = _scopedVars;
|
|
64
|
+
this.state = { name, type: "__data" };
|
|
65
|
+
}
|
|
66
|
+
getValue(fieldPath) {
|
|
67
|
+
var _a, _b;
|
|
68
|
+
const dataContext = (_a = this._scopedVars) == null ? void 0 : _a.__dataContext;
|
|
69
|
+
if (!dataContext || !fieldPath) {
|
|
70
|
+
return this._match;
|
|
71
|
+
}
|
|
72
|
+
const { frame, rowIndex } = dataContext.value;
|
|
73
|
+
if (rowIndex === void 0 || fieldPath === void 0) {
|
|
74
|
+
return this._match;
|
|
75
|
+
}
|
|
76
|
+
const obj = {
|
|
77
|
+
name: frame.name,
|
|
78
|
+
refId: frame.refId,
|
|
79
|
+
fields: getFieldDisplayValuesProxy({ frame, rowIndex })
|
|
80
|
+
};
|
|
81
|
+
return (_b = getFieldAccessor(fieldPath)(obj)) != null ? _b : "";
|
|
82
|
+
}
|
|
83
|
+
getValueText() {
|
|
84
|
+
return "";
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
class SeriesMacro {
|
|
88
|
+
constructor(name, sceneObject, _match, _scopedVars) {
|
|
89
|
+
this._match = _match;
|
|
90
|
+
this._scopedVars = _scopedVars;
|
|
91
|
+
this.state = { name, type: "__series" };
|
|
92
|
+
}
|
|
93
|
+
getValue(fieldPath) {
|
|
94
|
+
var _a;
|
|
95
|
+
const dataContext = (_a = this._scopedVars) == null ? void 0 : _a.__dataContext;
|
|
96
|
+
if (!dataContext || !fieldPath) {
|
|
97
|
+
return this._match;
|
|
98
|
+
}
|
|
99
|
+
if (fieldPath !== "name") {
|
|
100
|
+
return this._match;
|
|
101
|
+
}
|
|
102
|
+
const { frame, frameIndex } = dataContext.value;
|
|
103
|
+
return getFrameDisplayName(frame, frameIndex);
|
|
104
|
+
}
|
|
105
|
+
getValueText() {
|
|
106
|
+
return "";
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
class FieldMacro {
|
|
110
|
+
constructor(name, sceneObject, _match, _scopedVars) {
|
|
111
|
+
this._match = _match;
|
|
112
|
+
this._scopedVars = _scopedVars;
|
|
113
|
+
this.state = { name, type: "__field" };
|
|
114
|
+
}
|
|
115
|
+
getValue(fieldPath) {
|
|
116
|
+
var _a, _b;
|
|
117
|
+
const dataContext = (_a = this._scopedVars) == null ? void 0 : _a.__dataContext;
|
|
118
|
+
if (!dataContext || !fieldPath) {
|
|
119
|
+
return this._match;
|
|
120
|
+
}
|
|
121
|
+
if (fieldPath === void 0 || fieldPath === "") {
|
|
122
|
+
return this._match;
|
|
123
|
+
}
|
|
124
|
+
const { frame, field, data } = dataContext.value;
|
|
125
|
+
const obj = getTemplateProxyForField(field, frame, data);
|
|
126
|
+
return (_b = getFieldAccessor(fieldPath)(obj)) != null ? _b : "";
|
|
127
|
+
}
|
|
128
|
+
getValueText() {
|
|
129
|
+
return "";
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export { DataMacro, FieldMacro, SeriesMacro, ValueMacro };
|
|
134
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YU1hY3Jvcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3ZhcmlhYmxlcy9tYWNyb3MvZGF0YU1hY3Jvcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaWVsZFR5cGUsXG4gIGZvcm1hdHRlZFZhbHVlVG9TdHJpbmcsXG4gIGdldERpc3BsYXlQcm9jZXNzb3IsXG4gIFNjb3BlZFZhcnMsXG4gIERhdGFDb250ZXh0U2NvcGVkVmFyLFxuICBnZXRGaWVsZERpc3BsYXlWYWx1ZXNQcm94eSxcbiAgZ2V0RnJhbWVEaXNwbGF5TmFtZSxcbn0gZnJvbSAnQGdyYWZhbmEvZGF0YSc7XG5pbXBvcnQgeyBTY2VuZU9iamVjdCB9IGZyb20gJy4uLy4uL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0RmllbGRBY2Nlc3NvciB9IGZyb20gJy4uL2ludGVycG9sYXRpb24vZmllbGRBY2Nlc3NvckNhY2hlJztcbmltcG9ydCB7IEZvcm1hdFZhcmlhYmxlIH0gZnJvbSAnLi4vaW50ZXJwb2xhdGlvbi9mb3JtYXRSZWdpc3RyeSc7XG5pbXBvcnQgeyBWYXJpYWJsZVZhbHVlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0VGVtcGxhdGVQcm94eUZvckZpZWxkIH0gZnJvbSAnLi90ZW1wbGF0ZVByb3hpZXMnO1xuXG4vKipcbiAqIFRoaXMgbWFjcm8gaGFuZGxlcyB0aGUgJHtfX3ZhbHVlLip9IGludGVycG9sYXRpb25cbiAqIG1hdGNoIHJlcHJlc2VudHMgdGhlIHJlZ2V4IG1hdGNoIGFuZCBpcyB0aGUgZnVsbCBleHByZXNzaW9uLCBleGFtcGxlIGAke3Zhcm5hbWUuZmllbGRwYXRofWBcbiAqIE1hY3JvcyBjYW4gcmV0dXJuIHRoZSBtYXRjaCB3aGVuIHRoZXkgaWRlbnRpZnkgdGhhdCB0aGVyZSByZXF1aXJlZCBkYXRhIGNvbnRleHQgaXMgbm90IHByb3ZpZGVkLlxuICogVGhpcyBsZWF2ZXMgdGhlIGV4cHJlc3Npb24gaW50YWN0IHNvIHRoYXQgaXQgY2FuIGJlIGludGVycG9sYXRlZCBsYXRlciB3aGVuIHRoZSBkYXRhIGNvbnRleHQgaXMgYXZhaWxhYmxlLlxuICovXG5leHBvcnQgY2xhc3MgVmFsdWVNYWNybyBpbXBsZW1lbnRzIEZvcm1hdFZhcmlhYmxlIHtcbiAgcHVibGljIHN0YXRlOiB7IG5hbWU6IHN0cmluZzsgdHlwZTogc3RyaW5nIH07XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0LCBwcml2YXRlIF9tYXRjaDogc3RyaW5nLCBwcml2YXRlIF9zY29wZWRWYXJzPzogU2NvcGVkVmFycykge1xuICAgIHRoaXMuc3RhdGUgPSB7IG5hbWUsIHR5cGU6ICdfX3ZhbHVlJyB9O1xuICB9XG5cbiAgcHVibGljIGdldFZhbHVlKGZpZWxkUGF0aD86IHN0cmluZyk6IFZhcmlhYmxlVmFsdWUge1xuICAgIGNvbnN0IGRhdGFDb250ZXh0OiBEYXRhQ29udGV4dFNjb3BlZFZhciB8IHVuZGVmaW5lZCA9IHRoaXMuX3Njb3BlZFZhcnM/Ll9fZGF0YUNvbnRleHQ7XG4gICAgaWYgKCFkYXRhQ29udGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGNvbnN0IHsgZnJhbWUsIHJvd0luZGV4LCBmaWVsZCwgY2FsY3VsYXRlZFZhbHVlIH0gPSBkYXRhQ29udGV4dC52YWx1ZTtcblxuICAgIGlmIChjYWxjdWxhdGVkVmFsdWUpIHtcbiAgICAgIHN3aXRjaCAoZmllbGRQYXRoKSB7XG4gICAgICAgIGNhc2UgJ251bWVyaWMnOlxuICAgICAgICAgIHJldHVybiBjYWxjdWxhdGVkVmFsdWUubnVtZXJpYztcbiAgICAgICAgY2FzZSAncmF3JzpcbiAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlZFZhbHVlLm51bWVyaWM7XG4gICAgICAgIGNhc2UgJ3RpbWUnOlxuICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIGZvcm1hdHRlZFZhbHVlVG9TdHJpbmcoY2FsY3VsYXRlZFZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocm93SW5kZXggPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGlmIChmaWVsZFBhdGggPT09ICd0aW1lJykge1xuICAgICAgY29uc3QgdGltZUZpZWxkID0gZnJhbWUuZmllbGRzLmZpbmQoKGYpID0+IGYudHlwZSA9PT0gRmllbGRUeXBlLnRpbWUpO1xuICAgICAgcmV0dXJuIHRpbWVGaWVsZCA/IHRpbWVGaWVsZC52YWx1ZXMuZ2V0KHJvd0luZGV4KSA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAoIWZpZWxkKSB7XG4gICAgICByZXR1cm4gdGhpcy5fbWF0Y2g7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBmaWVsZC52YWx1ZXMuZ2V0KHJvd0luZGV4KTtcbiAgICBpZiAoZmllbGRQYXRoID09PSAncmF3Jykge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGRpc3BsYXlQcm9jZXNzb3IgPSBmaWVsZC5kaXNwbGF5ID8/IGZhbGxiYWNrRGlzcGxheVByb2Nlc3NvcjtcbiAgICBjb25zdCByZXN1bHQgPSBkaXNwbGF5UHJvY2Vzc29yKHZhbHVlKTtcblxuICAgIHN3aXRjaCAoZmllbGRQYXRoKSB7XG4gICAgICBjYXNlICdudW1lcmljJzpcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5udW1lcmljO1xuICAgICAgY2FzZSAndGV4dCc6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZm9ybWF0dGVkVmFsdWVUb1N0cmluZyhyZXN1bHQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZVRleHQ/KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG5cbmNvbnN0IGZhbGxiYWNrRGlzcGxheVByb2Nlc3NvciA9IGdldERpc3BsYXlQcm9jZXNzb3IoKTtcblxuLyoqXG4gKiBUaGlzIG1hY3JvIGhhbmRsZXMgdGhlICR7X19kYXRhLip9IGludGVycG9sYXRpb24uIFRoaXMgaXMgYSBiaXQgcG9vcmx5IG5hbWVkIGFzIG1vc3Qgb2YgdGhlXG4gKiBleHByZXNzaW9ucyB0aGF0IHRoaXMgbWFjcm8gZXZhbHVhdGVzIGFyZSByZWFsbHkgXCJyb3dcIiBiYXNlZCB2YWx1ZXMgZW5hYmxpbmcgeW91IHRvIGFjY2Vzc1xuICogdmFsdWVzIGluIG90aGVyIGZpZWxkcyBvbiB0aGUgc2FtZSByb3cuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhTWFjcm8gaW1wbGVtZW50cyBGb3JtYXRWYXJpYWJsZSB7XG4gIHB1YmxpYyBzdGF0ZTogeyBuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZyB9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHNjZW5lT2JqZWN0OiBTY2VuZU9iamVjdCwgcHJpdmF0ZSBfbWF0Y2g6IHN0cmluZywgcHJpdmF0ZSBfc2NvcGVkVmFycz86IFNjb3BlZFZhcnMpIHtcbiAgICB0aGlzLnN0YXRlID0geyBuYW1lLCB0eXBlOiAnX19kYXRhJyB9O1xuICB9XG5cbiAgcHVibGljIGdldFZhbHVlKGZpZWxkUGF0aD86IHN0cmluZyk6IFZhcmlhYmxlVmFsdWUge1xuICAgIGNvbnN0IGRhdGFDb250ZXh0ID0gdGhpcy5fc2NvcGVkVmFycz8uX19kYXRhQ29udGV4dDtcbiAgICBpZiAoIWRhdGFDb250ZXh0IHx8ICFmaWVsZFBhdGgpIHtcbiAgICAgIHJldHVybiB0aGlzLl9tYXRjaDtcbiAgICB9XG5cbiAgICBjb25zdCB7IGZyYW1lLCByb3dJbmRleCB9ID0gZGF0YUNvbnRleHQudmFsdWU7XG5cbiAgICBpZiAocm93SW5kZXggPT09IHVuZGVmaW5lZCB8fCBmaWVsZFBhdGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGNvbnN0IG9iaiA9IHtcbiAgICAgIG5hbWU6IGZyYW1lLm5hbWUsXG4gICAgICByZWZJZDogZnJhbWUucmVmSWQsXG4gICAgICBmaWVsZHM6IGdldEZpZWxkRGlzcGxheVZhbHVlc1Byb3h5KHsgZnJhbWUsIHJvd0luZGV4IH0pLFxuICAgIH07XG5cbiAgICByZXR1cm4gZ2V0RmllbGRBY2Nlc3NvcihmaWVsZFBhdGgpKG9iaikgPz8gJyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWVUZXh0PygpOiBzdHJpbmcge1xuICAgIHJldHVybiAnJztcbiAgfVxufVxuXG4vKipcbiAqIFRoaXMgbWFjcm8gaGFuZGxlcyB0aGUgJHtfX3Nlcmllcy5uYW1lfSBpbnRlcnBvbGF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgU2VyaWVzTWFjcm8gaW1wbGVtZW50cyBGb3JtYXRWYXJpYWJsZSB7XG4gIHB1YmxpYyBzdGF0ZTogeyBuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZyB9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHNjZW5lT2JqZWN0OiBTY2VuZU9iamVjdCwgcHJpdmF0ZSBfbWF0Y2g6IHN0cmluZywgcHJpdmF0ZSBfc2NvcGVkVmFycz86IFNjb3BlZFZhcnMpIHtcbiAgICB0aGlzLnN0YXRlID0geyBuYW1lLCB0eXBlOiAnX19zZXJpZXMnIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWUoZmllbGRQYXRoPzogc3RyaW5nKTogVmFyaWFibGVWYWx1ZSB7XG4gICAgY29uc3QgZGF0YUNvbnRleHQgPSB0aGlzLl9zY29wZWRWYXJzPy5fX2RhdGFDb250ZXh0O1xuICAgIGlmICghZGF0YUNvbnRleHQgfHwgIWZpZWxkUGF0aCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGlmIChmaWVsZFBhdGggIT09ICduYW1lJykge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGNvbnN0IHsgZnJhbWUsIGZyYW1lSW5kZXggfSA9IGRhdGFDb250ZXh0LnZhbHVlO1xuICAgIHJldHVybiBnZXRGcmFtZURpc3BsYXlOYW1lKGZyYW1lLCBmcmFtZUluZGV4KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZVRleHQ/KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG5cbi8qKlxuICogVGhpcyBtYWNybyBoYW5kbGVzIHRoZSAke19fZmllbGQuKn0gaW50ZXJwb2xhdGlvbi4gVGhlc2UgZG8gbm90IHJlcXVpcmUgYSBkYXRhIGNvbnRleHQuXG4gKiBBbmQgY2FuIGJlIGVhc2lseSB1c2VkIGluIGZpZWxkIGNvbmZpZyBvcHRpb25zIGxpa2UgZGlzcGxheU5hbWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWVsZE1hY3JvIGltcGxlbWVudHMgRm9ybWF0VmFyaWFibGUge1xuICBwdWJsaWMgc3RhdGU6IHsgbmFtZTogc3RyaW5nOyB0eXBlOiBzdHJpbmcgfTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBzY2VuZU9iamVjdDogU2NlbmVPYmplY3QsIHByaXZhdGUgX21hdGNoOiBzdHJpbmcsIHByaXZhdGUgX3Njb3BlZFZhcnM/OiBTY29wZWRWYXJzKSB7XG4gICAgdGhpcy5zdGF0ZSA9IHsgbmFtZSwgdHlwZTogJ19fZmllbGQnIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWUoZmllbGRQYXRoPzogc3RyaW5nKTogVmFyaWFibGVWYWx1ZSB7XG4gICAgY29uc3QgZGF0YUNvbnRleHQgPSB0aGlzLl9zY29wZWRWYXJzPy5fX2RhdGFDb250ZXh0O1xuICAgIGlmICghZGF0YUNvbnRleHQgfHwgIWZpZWxkUGF0aCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hdGNoO1xuICAgIH1cblxuICAgIGlmIChmaWVsZFBhdGggPT09IHVuZGVmaW5lZCB8fCBmaWVsZFBhdGggPT09ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5fbWF0Y2g7XG4gICAgfVxuXG4gICAgY29uc3QgeyBmcmFtZSwgZmllbGQsIGRhdGEgfSA9IGRhdGFDb250ZXh0LnZhbHVlO1xuICAgIGNvbnN0IG9iaiA9IGdldFRlbXBsYXRlUHJveHlGb3JGaWVsZChmaWVsZCwgZnJhbWUsIGRhdGEpO1xuXG4gICAgcmV0dXJuIGdldEZpZWxkQWNjZXNzb3IoZmllbGRQYXRoKShvYmopID8/ICcnO1xuICB9XG5cbiAgcHVibGljIGdldFZhbHVlVGV4dD8oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBcUJPLE1BQU0sVUFBcUMsQ0FBQTtBQUFBLEVBR3pDLFdBQVksQ0FBQSxJQUFBLEVBQWMsV0FBa0MsRUFBQSxNQUFBLEVBQXdCLFdBQTBCLEVBQUE7QUFBbEQsSUFBQSxJQUFBLENBQUEsTUFBQSxHQUFBLE1BQUEsQ0FBQTtBQUF3QixJQUFBLElBQUEsQ0FBQSxXQUFBLEdBQUEsV0FBQSxDQUFBO0FBQ3pGLElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxFQUFFLElBQU0sRUFBQSxJQUFBLEVBQU0sU0FBVSxFQUFBLENBQUE7QUFBQSxHQUN2QztBQUFBLEVBRU8sU0FBUyxTQUFtQyxFQUFBO0FBNUJyRCxJQUFBLElBQUEsRUFBQSxFQUFBLEVBQUEsQ0FBQTtBQTZCSSxJQUFNLE1BQUEsV0FBQSxHQUFBLENBQWdELEVBQUssR0FBQSxJQUFBLENBQUEsV0FBQSxLQUFMLElBQWtCLEdBQUEsS0FBQSxDQUFBLEdBQUEsRUFBQSxDQUFBLGFBQUEsQ0FBQTtBQUN4RSxJQUFBLElBQUksQ0FBQyxXQUFhLEVBQUE7QUFDaEIsTUFBQSxPQUFPLElBQUssQ0FBQSxNQUFBLENBQUE7QUFBQSxLQUNkO0FBRUEsSUFBQSxNQUFNLEVBQUUsS0FBTyxFQUFBLFFBQUEsRUFBVSxLQUFPLEVBQUEsZUFBQSxLQUFvQixXQUFZLENBQUEsS0FBQSxDQUFBO0FBRWhFLElBQUEsSUFBSSxlQUFpQixFQUFBO0FBQ25CLE1BQVEsUUFBQSxTQUFBO0FBQUEsUUFDRCxLQUFBLFNBQUE7QUFDSCxV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
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { DataLinkBuiltInVars } from '@grafana/data';
|
|
2
|
+
import { UrlTimeRangeMacro, TimeFromAndToMacro, TimezoneMacro, IntervalMacro } from './timeMacros.js';
|
|
3
|
+
import { AllVariablesMacro } from './AllVariablesMacro.js';
|
|
4
|
+
import { ValueMacro, DataMacro, SeriesMacro, FieldMacro } from './dataMacros.js';
|
|
5
|
+
import { UrlMacro } from './urlMacros.js';
|
|
6
|
+
import { UserMacro, OrgMacro } from './contextMacros.js';
|
|
7
|
+
|
|
8
|
+
const macrosIndex = /* @__PURE__ */ new Map([
|
|
9
|
+
[DataLinkBuiltInVars.includeVars, AllVariablesMacro],
|
|
10
|
+
[DataLinkBuiltInVars.keepTime, UrlTimeRangeMacro],
|
|
11
|
+
["__value", ValueMacro],
|
|
12
|
+
["__data", DataMacro],
|
|
13
|
+
["__series", SeriesMacro],
|
|
14
|
+
["__field", FieldMacro],
|
|
15
|
+
["__url", UrlMacro],
|
|
16
|
+
["__from", TimeFromAndToMacro],
|
|
17
|
+
["__to", TimeFromAndToMacro],
|
|
18
|
+
["__timezone", TimezoneMacro],
|
|
19
|
+
["__user", UserMacro],
|
|
20
|
+
["__org", OrgMacro],
|
|
21
|
+
["__interval", IntervalMacro],
|
|
22
|
+
["__interval_ms", IntervalMacro]
|
|
23
|
+
]);
|
|
24
|
+
function registerVariableMacro(name, macro) {
|
|
25
|
+
if (macrosIndex.get(name)) {
|
|
26
|
+
throw new Error(`Macro already registered ${name}`);
|
|
27
|
+
}
|
|
28
|
+
macrosIndex.set(name, macro);
|
|
29
|
+
return () => {
|
|
30
|
+
macrosIndex.delete(name);
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { macrosIndex, registerVariableMacro };
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy92YXJpYWJsZXMvbWFjcm9zL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFMaW5rQnVpbHRJblZhcnMgfSBmcm9tICdAZ3JhZmFuYS9kYXRhJztcbmltcG9ydCB7IE1hY3JvVmFyaWFibGVDb25zdHJ1Y3RvciB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgSW50ZXJ2YWxNYWNybywgVGltZUZyb21BbmRUb01hY3JvLCBUaW1lem9uZU1hY3JvLCBVcmxUaW1lUmFuZ2VNYWNybyB9IGZyb20gJy4vdGltZU1hY3Jvcyc7XG5pbXBvcnQgeyBBbGxWYXJpYWJsZXNNYWNybyB9IGZyb20gJy4vQWxsVmFyaWFibGVzTWFjcm8nO1xuaW1wb3J0IHsgRGF0YU1hY3JvLCBGaWVsZE1hY3JvLCBTZXJpZXNNYWNybywgVmFsdWVNYWNybyB9IGZyb20gJy4vZGF0YU1hY3Jvcyc7XG5pbXBvcnQgeyBVcmxNYWNybyB9IGZyb20gJy4vdXJsTWFjcm9zJztcbmltcG9ydCB7IE9yZ01hY3JvLCBVc2VyTWFjcm8gfSBmcm9tICcuL2NvbnRleHRNYWNyb3MnO1xuXG5leHBvcnQgY29uc3QgbWFjcm9zSW5kZXggPSBuZXcgTWFwPHN0cmluZywgTWFjcm9WYXJpYWJsZUNvbnN0cnVjdG9yPihbXG4gIFtEYXRhTGlua0J1aWx0SW5WYXJzLmluY2x1ZGVWYXJzLCBBbGxWYXJpYWJsZXNNYWNyb10sXG4gIFtEYXRhTGlua0J1aWx0SW5WYXJzLmtlZXBUaW1lLCBVcmxUaW1lUmFuZ2VNYWNyb10sXG4gIFsnX192YWx1ZScsIFZhbHVlTWFjcm9dLFxuICBbJ19fZGF0YScsIERhdGFNYWNyb10sXG4gIFsnX19zZXJpZXMnLCBTZXJpZXNNYWNyb10sXG4gIFsnX19maWVsZCcsIEZpZWxkTWFjcm9dLFxuICBbJ19fdXJsJywgVXJsTWFjcm9dLFxuICBbJ19fZnJvbScsIFRpbWVGcm9tQW5kVG9NYWNyb10sXG4gIFsnX190bycsIFRpbWVGcm9tQW5kVG9NYWNyb10sXG4gIFsnX190aW1lem9uZScsIFRpbWV6b25lTWFjcm9dLFxuICBbJ19fdXNlcicsIFVzZXJNYWNyb10sXG4gIFsnX19vcmcnLCBPcmdNYWNyb10sXG4gIFsnX19pbnRlcnZhbCcsIEludGVydmFsTWFjcm9dLFxuICBbJ19faW50ZXJ2YWxfbXMnLCBJbnRlcnZhbE1hY3JvXSxcbl0pO1xuXG4vKipcbiAqIEFsbG93cyB5b3UgdG8gcmVnaXN0ZXIgYSB2YXJpYWJsZSBleHByZXNzaW9uIG1hY3JvIHRoYXQgY2FuIHRoZW4gYmUgdXNlZCBpbiBzdHJpbmdzIHdpdGggc3ludGF4ICR7PG1hY3JvX25hbWU+LjxmaWVsZFBhdGg+fVxuICogQ2FsbCB0aGlzIG9uIGFwcCBhY3RpdmF0aW9uIGFuZCB1bnJlZ2lzdGVyIHRoZSBtYWNybyBvbiBkZWFjdGl2YXRpb24uXG4gKiBAcmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgdW5yZWdpc3RlcnMgdGhlIG1hY3JvXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclZhcmlhYmxlTWFjcm8obmFtZTogc3RyaW5nLCBtYWNybzogTWFjcm9WYXJpYWJsZUNvbnN0cnVjdG9yKTogKCkgPT4gdm9pZCB7XG4gIGlmIChtYWNyb3NJbmRleC5nZXQobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1hY3JvIGFscmVhZHkgcmVnaXN0ZXJlZCAke25hbWV9YCk7XG4gIH1cblxuICBtYWNyb3NJbmRleC5zZXQobmFtZSwgbWFjcm8pO1xuXG4gIHJldHVybiAoKSA9PiB7XG4gICAgbWFjcm9zSW5kZXguZGVsZXRlKG5hbWUpO1xuICB9O1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFRYSxNQUFBLFdBQUEsdUJBQWtCLEdBQXNDLENBQUE7QUFBQSxFQUNuRSxDQUFDLG1CQUFvQixDQUFBLFdBQUEsRUFBYSxpQkFBaUIsQ0FBQTtBQUFBLEVBQ25ELENBQUMsbUJBQW9CLENBQUEsUUFBQSxFQUFVLGlCQUFpQixDQUFBO0FBQUEsRUFDaEQsQ0FBQyxXQUFXLFVBQVUsQ0FBQTtBQUFBLEVBQ3RCLENBQUMsVUFBVSxTQUFTLENBQUE7QUFBQSxFQUNwQixDQUFDLFlBQVksV0FBVyxDQUFBO0FBQUEsRUFDeEIsQ0FBQyxXQUFXLFVBQVUsQ0FBQTtBQUFBLEVBQ3RCLENBQUMsU0FBUyxRQUFRLENBQUE7QUFBQSxFQUNsQixDQUFDLFVBQVUsa0JBQWtCLENBQUE7QUFBQSxFQUM3QixDQUFDLFFBQVEsa0JBQWtCLENBQUE7QUFBQSxFQUMzQixDQUFDLGNBQWMsYUFBYSxDQUFBO0FBQUEsRUFDNUIsQ0FBQyxVQUFVLFNBQVMsQ0FBQTtBQUFBLEVBQ3BCLENBQUMsU0FBUyxRQUFRLENBQUE7QUFBQSxFQUNsQixDQUFDLGNBQWMsYUFBYSxDQUFBO0FBQUEsRUFDNUIsQ0FBQyxpQkFBaUIsYUFBYSxDQUFBO0FBQ2pDLENBQUMsRUFBQTtBQU9lLFNBQUEscUJBQUEsQ0FBc0IsTUFBYyxLQUE2QyxFQUFBO0FBQy9GLEVBQUksSUFBQSxXQUFBLENBQVksR0FBSSxDQUFBLElBQUksQ0FBRyxFQUFBO0FBQ3pCLElBQU0sTUFBQSxJQUFJLEtBQU0sQ0FBQSxDQUFBLHlCQUFBLEVBQTRCLElBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUFBLEdBQ3BEO0FBRUEsRUFBWSxXQUFBLENBQUEsR0FBQSxDQUFJLE1BQU0sS0FBSyxDQUFBLENBQUE7QUFFM0IsRUFBQSxPQUFPLE1BQU07QUFDWCxJQUFBLFdBQUEsQ0FBWSxPQUFPLElBQUksQ0FBQSxDQUFBO0FBQUEsR0FDekIsQ0FBQTtBQUNGOzs7OyJ9
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { getFieldDisplayName, formatLabels } from '@grafana/data';
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __defProps = Object.defineProperties;
|
|
5
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __spreadValues = (a, b) => {
|
|
11
|
+
for (var prop in b || (b = {}))
|
|
12
|
+
if (__hasOwnProp.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
if (__getOwnPropSymbols)
|
|
15
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
+
if (__propIsEnum.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
}
|
|
19
|
+
return a;
|
|
20
|
+
};
|
|
21
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
+
function getTemplateProxyForField(field, frame, frames) {
|
|
23
|
+
return new Proxy(
|
|
24
|
+
{},
|
|
25
|
+
{
|
|
26
|
+
get: (obj, key) => {
|
|
27
|
+
if (key === "name") {
|
|
28
|
+
return field.name;
|
|
29
|
+
}
|
|
30
|
+
if (key === "displayName") {
|
|
31
|
+
return getFieldDisplayName(field, frame, frames);
|
|
32
|
+
}
|
|
33
|
+
if (key === "labels" || key === "formattedLabels") {
|
|
34
|
+
if (!field.labels) {
|
|
35
|
+
return "";
|
|
36
|
+
}
|
|
37
|
+
return __spreadProps(__spreadValues({}, field.labels), {
|
|
38
|
+
__values: Object.values(field.labels).sort().join(", "),
|
|
39
|
+
toString: () => {
|
|
40
|
+
return formatLabels(field.labels, "", true);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
return void 0;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export { getTemplateProxyForField };
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVQcm94aWVzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdmFyaWFibGVzL21hY3Jvcy90ZW1wbGF0ZVByb3hpZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmllbGQsIERhdGFGcmFtZSwgZ2V0RmllbGREaXNwbGF5TmFtZSwgZm9ybWF0TGFiZWxzIH0gZnJvbSAnQGdyYWZhbmEvZGF0YSc7XG5cbi8qKlxuICogVGhpcyBvYmplY3QgaXMgY3JlYXRlZCBvZnRlbiwgYW5kIG9ubHkgdXNlZCB3aGVuIHRtcGxhdGVzIGV4aXN0LiAgVXNpbmcgYSBwcm94eSBsZXRzIHVzIGRlbGF5XG4gKiBjYWxjdWxhdGlvbnMgb2YgdGhlIG1vcmUgY29tcGxleCBzdHJ1Y3R1cmVzIChsYWJlbCBuYW1lcykgdW50aWwgdGhleSBhcmUgYWN0dWFsbHkgdXNlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGVtcGxhdGVQcm94eUZvckZpZWxkKGZpZWxkOiBGaWVsZCwgZnJhbWU/OiBEYXRhRnJhbWUsIGZyYW1lcz86IERhdGFGcmFtZVtdKTogYW55IHtcbiAgcmV0dXJuIG5ldyBQcm94eShcbiAgICB7fSwgLy8gVGhpcyBvYmplY3Qgc2hvd3MgdXAgaW4gdGVzdCBzbmFwc2hvdHNcbiAgICB7XG4gICAgICBnZXQ6IChvYmosIGtleSkgPT4ge1xuICAgICAgICBpZiAoa2V5ID09PSAnbmFtZScpIHtcbiAgICAgICAgICByZXR1cm4gZmllbGQubmFtZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChrZXkgPT09ICdkaXNwbGF5TmFtZScpIHtcbiAgICAgICAgICByZXR1cm4gZ2V0RmllbGREaXNwbGF5TmFtZShmaWVsZCwgZnJhbWUsIGZyYW1lcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoa2V5ID09PSAnbGFiZWxzJyB8fCBrZXkgPT09ICdmb3JtYXR0ZWRMYWJlbHMnKSB7XG4gICAgICAgICAgLy8gZm9ybWF0dGVkTGFiZWxzIGRlcHJlY2F0ZWRcbiAgICAgICAgICBpZiAoIWZpZWxkLmxhYmVscykge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uZmllbGQubGFiZWxzLFxuICAgICAgICAgICAgX192YWx1ZXM6IE9iamVjdC52YWx1ZXMoZmllbGQubGFiZWxzKS5zb3J0KCkuam9pbignLCAnKSxcbiAgICAgICAgICAgIHRvU3RyaW5nOiAoKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBmb3JtYXRMYWJlbHMoZmllbGQubGFiZWxzISwgJycsIHRydWUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9LFxuICAgIH1cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNZ0IsU0FBQSx3QkFBQSxDQUF5QixLQUFjLEVBQUEsS0FBQSxFQUFtQixNQUEyQixFQUFBO0FBQ25HLEVBQUEsT0FBTyxJQUFJLEtBQUE7QUFBQSxJQUNULEVBQUM7QUFBQSxJQUNEO0FBQUEsTUFDRSxHQUFBLEVBQUssQ0FBQyxHQUFBLEVBQUssR0FBUSxLQUFBO0FBQ2pCLFFBQUEsSUFBSSxRQUFRLE1BQVEsRUFBQTtBQUNsQixVQUFBLE9BQU8sS0FBTSxDQUFBLElBQUEsQ0FBQTtBQUFBLFNBQ2Y7QUFFQSxRQUFBLElBQUksUUFBUSxhQUFlLEVBQUE7QUFDekIsVUFBTyxPQUFBLG1CQUFBLENBQW9CLEtBQU8sRUFBQSxLQUFBLEVBQU8sTUFBTSxDQUFBLENBQUE7QUFBQSxTQUNqRDtBQUVBLFFBQUksSUFBQSxHQUFBLEtBQVEsUUFBWSxJQUFBLEdBQUEsS0FBUSxpQkFBbUIsRUFBQTtBQUVqRCxVQUFJLElBQUEsQ0FBQyxNQUFNLE1BQVEsRUFBQTtBQUNqQixZQUFPLE9BQUEsRUFBQSxDQUFBO0FBQUEsV0FDVDtBQUNBLFVBQU8sT0FBQSxhQUFBLENBQUEsY0FBQSxDQUFBLEVBQUEsRUFDRixNQUFNLE1BREosQ0FBQSxFQUFBO0FBQUEsWUFFTCxRQUFBLEVBQVUsT0FBTyxNQUFPLENBQUEsS0FBQSxDQUFNLE1BQU0sQ0FBRSxDQUFBLElBQUEsRUFBTyxDQUFBLElBQUEsQ0FBSyxJQUFJLENBQUE7QUFBQSxZQUN0RCxVQUFVLE1BQU07QUFDZCxjQUFBLE9BQU8sWUFBYSxDQUFBLEtBQUEsQ0FBTSxNQUFTLEVBQUEsRUFBQSxFQUFJLElBQUksQ0FBQSxDQUFBO0FBQUEsYUFDN0M7QUFBQSxXQUNGLENBQUEsQ0FBQTtBQUFBLFNBQ0Y7QUFDQSxRQUFPLE9BQUEsS0FBQSxDQUFBLENBQUE7QUFBQSxPQUNUO0FBQUEsS0FDRjtBQUFBLEdBQ0YsQ0FBQTtBQUNGOzs7OyJ9
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { urlUtil, dateTimeFormat } from '@grafana/data';
|
|
2
|
+
import { getTimeRange } from '../../core/sceneGraph/getTimeRange.js';
|
|
3
|
+
import { getData } from '../../core/sceneGraph/sceneGraph.js';
|
|
4
|
+
import { SkipFormattingValue } from './types.js';
|
|
5
|
+
|
|
6
|
+
class UrlTimeRangeMacro {
|
|
7
|
+
constructor(name, sceneObject) {
|
|
8
|
+
this.state = { name, type: "url_variable" };
|
|
9
|
+
this._sceneObject = sceneObject;
|
|
10
|
+
}
|
|
11
|
+
getValue() {
|
|
12
|
+
var _a;
|
|
13
|
+
const timeRange = getTimeRange(this._sceneObject);
|
|
14
|
+
const urlState = (_a = timeRange.urlSync) == null ? void 0 : _a.getUrlState();
|
|
15
|
+
if ((urlState == null ? void 0 : urlState.timezone) === "browser") {
|
|
16
|
+
urlState.timezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
17
|
+
}
|
|
18
|
+
return new SkipFormattingValue(urlUtil.toUrlParams(urlState));
|
|
19
|
+
}
|
|
20
|
+
getValueText() {
|
|
21
|
+
return "";
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
class TimeFromAndToMacro {
|
|
25
|
+
constructor(name, sceneObject) {
|
|
26
|
+
this.state = { name, type: "time_macro" };
|
|
27
|
+
this._sceneObject = sceneObject;
|
|
28
|
+
}
|
|
29
|
+
getValue() {
|
|
30
|
+
const timeRange = getTimeRange(this._sceneObject);
|
|
31
|
+
if (this.state.name === "__from") {
|
|
32
|
+
return timeRange.state.value.from.valueOf();
|
|
33
|
+
} else {
|
|
34
|
+
return timeRange.state.value.to.valueOf();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
getValueText() {
|
|
38
|
+
const timeRange = getTimeRange(this._sceneObject);
|
|
39
|
+
if (this.state.name === "__from") {
|
|
40
|
+
return dateTimeFormat(timeRange.state.value.from, { timeZone: timeRange.getTimeZone() });
|
|
41
|
+
} else {
|
|
42
|
+
return dateTimeFormat(timeRange.state.value.to, { timeZone: timeRange.getTimeZone() });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
class TimezoneMacro {
|
|
47
|
+
constructor(name, sceneObject) {
|
|
48
|
+
this.state = { name, type: "time_macro" };
|
|
49
|
+
this._sceneObject = sceneObject;
|
|
50
|
+
}
|
|
51
|
+
getValue() {
|
|
52
|
+
const timeRange = getTimeRange(this._sceneObject);
|
|
53
|
+
const timeZone = timeRange.getTimeZone();
|
|
54
|
+
if (timeZone === "browser") {
|
|
55
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
56
|
+
}
|
|
57
|
+
return timeZone;
|
|
58
|
+
}
|
|
59
|
+
getValueText() {
|
|
60
|
+
return this.getValue();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
class IntervalMacro {
|
|
64
|
+
constructor(name, sceneObject, match) {
|
|
65
|
+
this.state = { name, type: "time_macro", match };
|
|
66
|
+
this._sceneObject = sceneObject;
|
|
67
|
+
}
|
|
68
|
+
getValue() {
|
|
69
|
+
var _a;
|
|
70
|
+
const data = getData(this._sceneObject);
|
|
71
|
+
if (data) {
|
|
72
|
+
const request = (_a = data.state.data) == null ? void 0 : _a.request;
|
|
73
|
+
if (!request) {
|
|
74
|
+
return this.state.match;
|
|
75
|
+
}
|
|
76
|
+
if (this.state.name === "__interval_ms") {
|
|
77
|
+
return request.intervalMs;
|
|
78
|
+
}
|
|
79
|
+
return request.interval;
|
|
80
|
+
}
|
|
81
|
+
return this.state.match;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export { IntervalMacro, TimeFromAndToMacro, TimezoneMacro, UrlTimeRangeMacro };
|
|
86
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZU1hY3Jvcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3ZhcmlhYmxlcy9tYWNyb3MvdGltZU1hY3Jvcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkYXRlVGltZUZvcm1hdCwgdXJsVXRpbCB9IGZyb20gJ0BncmFmYW5hL2RhdGEnO1xuaW1wb3J0IHsgZ2V0VGltZVJhbmdlIH0gZnJvbSAnLi4vLi4vY29yZS9zY2VuZUdyYXBoL2dldFRpbWVSYW5nZSc7XG5pbXBvcnQgeyBnZXREYXRhIH0gZnJvbSAnLi4vLi4vY29yZS9zY2VuZUdyYXBoL3NjZW5lR3JhcGgnO1xuaW1wb3J0IHsgU2NlbmVPYmplY3QgfSBmcm9tICcuLi8uLi9jb3JlL3R5cGVzJztcbmltcG9ydCB7IEZvcm1hdFZhcmlhYmxlIH0gZnJvbSAnLi4vaW50ZXJwb2xhdGlvbi9mb3JtYXRSZWdpc3RyeSc7XG5pbXBvcnQgeyBTa2lwRm9ybWF0dGluZ1ZhbHVlIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogSGFuZGxlcyBleHByZXNzaW9ucyBsaWtlICRfX3VybF90aW1lX3JhbmdlLlxuICovXG5leHBvcnQgY2xhc3MgVXJsVGltZVJhbmdlTWFjcm8gaW1wbGVtZW50cyBGb3JtYXRWYXJpYWJsZSB7XG4gIHB1YmxpYyBzdGF0ZTogeyBuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZyB9O1xuICBwcml2YXRlIF9zY2VuZU9iamVjdDogU2NlbmVPYmplY3Q7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0KSB7XG4gICAgdGhpcy5zdGF0ZSA9IHsgbmFtZTogbmFtZSwgdHlwZTogJ3VybF92YXJpYWJsZScgfTtcbiAgICB0aGlzLl9zY2VuZU9iamVjdCA9IHNjZW5lT2JqZWN0O1xuICB9XG5cbiAgcHVibGljIGdldFZhbHVlKCk6IFNraXBGb3JtYXR0aW5nVmFsdWUge1xuICAgIGNvbnN0IHRpbWVSYW5nZSA9IGdldFRpbWVSYW5nZSh0aGlzLl9zY2VuZU9iamVjdCk7XG4gICAgY29uc3QgdXJsU3RhdGUgPSB0aW1lUmFuZ2UudXJsU3luYz8uZ2V0VXJsU3RhdGUoKTtcbiAgICBpZiAodXJsU3RhdGU/LnRpbWV6b25lID09PSAnYnJvd3NlcicpIHtcbiAgICAgIHVybFN0YXRlLnRpbWV6b25lID0gSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFNraXBGb3JtYXR0aW5nVmFsdWUodXJsVXRpbC50b1VybFBhcmFtcyh1cmxTdGF0ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldFZhbHVlVGV4dD8oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cblxuLyoqXG4gKiBIYW5kbGVzIGV4cHJlc3Npb25zIGxpa2UgJF9fZnJvbSBhbmQgJF9fdG8uXG4gKi9cbmV4cG9ydCBjbGFzcyBUaW1lRnJvbUFuZFRvTWFjcm8gaW1wbGVtZW50cyBGb3JtYXRWYXJpYWJsZSB7XG4gIHB1YmxpYyBzdGF0ZTogeyBuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZyB9O1xuICBwcml2YXRlIF9zY2VuZU9iamVjdDogU2NlbmVPYmplY3Q7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0KSB7XG4gICAgdGhpcy5zdGF0ZSA9IHsgbmFtZTogbmFtZSwgdHlwZTogJ3RpbWVfbWFjcm8nIH07XG4gICAgdGhpcy5fc2NlbmVPYmplY3QgPSBzY2VuZU9iamVjdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZSgpIHtcbiAgICBjb25zdCB0aW1lUmFuZ2UgPSBnZXRUaW1lUmFuZ2UodGhpcy5fc2NlbmVPYmplY3QpO1xuICAgIGlmICh0aGlzLnN0YXRlLm5hbWUgPT09ICdfX2Zyb20nKSB7XG4gICAgICByZXR1cm4gdGltZVJhbmdlLnN0YXRlLnZhbHVlLmZyb20udmFsdWVPZigpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGltZVJhbmdlLnN0YXRlLnZhbHVlLnRvLnZhbHVlT2YoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWVUZXh0PygpOiBzdHJpbmcge1xuICAgIGNvbnN0IHRpbWVSYW5nZSA9IGdldFRpbWVSYW5nZSh0aGlzLl9zY2VuZU9iamVjdCk7XG4gICAgaWYgKHRoaXMuc3RhdGUubmFtZSA9PT0gJ19fZnJvbScpIHtcbiAgICAgIHJldHVybiBkYXRlVGltZUZvcm1hdCh0aW1lUmFuZ2Uuc3RhdGUudmFsdWUuZnJvbSwgeyB0aW1lWm9uZTogdGltZVJhbmdlLmdldFRpbWVab25lKCkgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBkYXRlVGltZUZvcm1hdCh0aW1lUmFuZ2Uuc3RhdGUudmFsdWUudG8sIHsgdGltZVpvbmU6IHRpbWVSYW5nZS5nZXRUaW1lWm9uZSgpIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEhhbmRsZXMgJF9fdGltZXpvbmUgZXhwcmVzc2lvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFRpbWV6b25lTWFjcm8gaW1wbGVtZW50cyBGb3JtYXRWYXJpYWJsZSB7XG4gIHB1YmxpYyBzdGF0ZTogeyBuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZyB9O1xuICBwcml2YXRlIF9zY2VuZU9iamVjdDogU2NlbmVPYmplY3Q7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0KSB7XG4gICAgdGhpcy5zdGF0ZSA9IHsgbmFtZTogbmFtZSwgdHlwZTogJ3RpbWVfbWFjcm8nIH07XG4gICAgdGhpcy5fc2NlbmVPYmplY3QgPSBzY2VuZU9iamVjdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZSgpIHtcbiAgICBjb25zdCB0aW1lUmFuZ2UgPSBnZXRUaW1lUmFuZ2UodGhpcy5fc2NlbmVPYmplY3QpO1xuICAgIGNvbnN0IHRpbWVab25lID0gdGltZVJhbmdlLmdldFRpbWVab25lKCk7XG5cbiAgICBpZiAodGltZVpvbmUgPT09ICdicm93c2VyJykge1xuICAgICAgcmV0dXJuIEludGwuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKS50aW1lWm9uZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGltZVpvbmU7XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWVUZXh0PygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldFZhbHVlKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBIYW5kbGVzICRfX2ludGVydmFsIGFuZCAkX19pbnRlcnZhbE1zIGV4cHJlc3Npb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlcnZhbE1hY3JvIGltcGxlbWVudHMgRm9ybWF0VmFyaWFibGUge1xuICBwdWJsaWMgc3RhdGU6IHsgbmFtZTogc3RyaW5nOyB0eXBlOiBzdHJpbmc7IG1hdGNoOiBzdHJpbmcgfTtcbiAgcHJpdmF0ZSBfc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHNjZW5lT2JqZWN0OiBTY2VuZU9iamVjdCwgbWF0Y2g6IHN0cmluZykge1xuICAgIHRoaXMuc3RhdGUgPSB7IG5hbWU6IG5hbWUsIHR5cGU6ICd0aW1lX21hY3JvJywgbWF0Y2g6IG1hdGNoIH07XG4gICAgdGhpcy5fc2NlbmVPYmplY3QgPSBzY2VuZU9iamVjdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZSgpIHtcbiAgICBjb25zdCBkYXRhID0gZ2V0RGF0YSh0aGlzLl9zY2VuZU9iamVjdCk7XG5cbiAgICBpZiAoZGF0YSkge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IGRhdGEuc3RhdGUuZGF0YT8ucmVxdWVzdDtcbiAgICAgIGlmICghcmVxdWVzdCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZS5tYXRjaDtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnN0YXRlLm5hbWUgPT09ICdfX2ludGVydmFsX21zJykge1xuICAgICAgICByZXR1cm4gcmVxdWVzdC5pbnRlcnZhbE1zO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlcXVlc3QuaW50ZXJ2YWw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUubWF0Y2g7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVVPLE1BQU0saUJBQTRDLENBQUE7QUFBQSxFQUloRCxXQUFBLENBQVksTUFBYyxXQUEwQixFQUFBO0FBQ3pELElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxFQUFFLElBQVksRUFBQSxJQUFBLEVBQU0sY0FBZSxFQUFBLENBQUE7QUFDaEQsSUFBQSxJQUFBLENBQUssWUFBZSxHQUFBLFdBQUEsQ0FBQTtBQUFBLEdBQ3RCO0FBQUEsRUFFTyxRQUFnQyxHQUFBO0FBbkJ6QyxJQUFBLElBQUEsRUFBQSxDQUFBO0FBb0JJLElBQU0sTUFBQSxTQUFBLEdBQVksWUFBYSxDQUFBLElBQUEsQ0FBSyxZQUFZLENBQUEsQ0FBQTtBQUNoRCxJQUFNLE1BQUEsUUFBQSxHQUFBLENBQVcsRUFBVSxHQUFBLFNBQUEsQ0FBQSxPQUFBLEtBQVYsSUFBbUIsR0FBQSxLQUFBLENBQUEsR0FBQSxFQUFBLENBQUEsV0FBQSxFQUFBLENBQUE7QUFDcEMsSUFBSSxJQUFBLENBQUEsUUFBQSxJQUFBLElBQUEsR0FBQSxLQUFBLENBQUEsR0FBQSxRQUFBLENBQVUsY0FBYSxTQUFXLEVBQUE7QUFDcEMsTUFBQSxRQUFBLENBQVMsUUFBVyxHQUFBLElBQUEsQ0FBSyxjQUFlLEVBQUEsQ0FBRSxpQkFBa0IsQ0FBQSxRQUFBLENBQUE7QUFBQSxLQUM5RDtBQUNBLElBQUEsT0FBTyxJQUFJLG1CQUFBLENBQW9CLE9BQVEsQ0FBQSxXQUFBLENBQVksUUFBUSxDQUFDLENBQUEsQ0FBQTtBQUFBLEdBQzlEO0FBQUEsRUFFTyxZQUF3QixHQUFBO0FBQzdCLElBQU8sT0FBQSxFQUFBLENBQUE7QUFBQSxHQUNUO0FBQ0YsQ0FBQTtBQUtPLE1BQU0sa0JBQTZD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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
class SkipFormattingValue {
|
|
2
|
+
constructor(_value) {
|
|
3
|
+
this._value = _value;
|
|
4
|
+
}
|
|
5
|
+
formatter() {
|
|
6
|
+
return this._value;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { SkipFormattingValue };
|
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy92YXJpYWJsZXMvbWFjcm9zL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNjb3BlZFZhcnMgfSBmcm9tICdAZ3JhZmFuYS9kYXRhJztcbmltcG9ydCB7IFNjZW5lT2JqZWN0IH0gZnJvbSAnLi4vLi4vY29yZS90eXBlcyc7XG5pbXBvcnQgeyBGb3JtYXRWYXJpYWJsZSB9IGZyb20gJy4uL2ludGVycG9sYXRpb24vZm9ybWF0UmVnaXN0cnknO1xuaW1wb3J0IHsgQ3VzdG9tVmFyaWFibGVWYWx1ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBNYWNyb1ZhcmlhYmxlQ29uc3RydWN0b3Ige1xuICBuZXcgKG5hbWU6IHN0cmluZywgc2NlbmVPYmplY3Q6IFNjZW5lT2JqZWN0LCBmdWxsTWF0Y2g6IHN0cmluZywgc2NvcGVkVmFycz86IFNjb3BlZFZhcnMpOiBGb3JtYXRWYXJpYWJsZTtcbn1cblxuLyoqXG4gKiBUaGUgc2NlbmVJbnRlcnBvbGF0b3Igd2lsbCBkZXRlY3QgaWYgZ2V0VmFsdWUgcmV0dXJucyBWYXJpYWJsZVZhbHVlQ3VzdG9tIGFuZCB3aWxsIHNraXAgdGhlIG5vcm1hbCBmb3JtYXR0aW5nXG4gKiBUaGlzIGlzIHVzZWZ1bCBhcyBvdGhlcndpc2Ugd2Ugd291bGQgdXJsIGVuY29kZSBtYWNyb3MgbGlrZSAkX19hbGxfdmFyaWFibGVzIHR3aWNlLlxuICovXG5leHBvcnQgY2xhc3MgU2tpcEZvcm1hdHRpbmdWYWx1ZSBpbXBsZW1lbnRzIEN1c3RvbVZhcmlhYmxlVmFsdWUge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBfdmFsdWU6IHN0cmluZykge31cblxuICBwdWJsaWMgZm9ybWF0dGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYU8sTUFBTSxtQkFBbUQsQ0FBQTtBQUFBLEVBQ3ZELFlBQW9CLE1BQWdCLEVBQUE7QUFBaEIsSUFBQSxJQUFBLENBQUEsTUFBQSxHQUFBLE1BQUEsQ0FBQTtBQUFBLEdBQWlCO0FBQUEsRUFFckMsU0FBb0IsR0FBQTtBQUN6QixJQUFBLE9BQU8sSUFBSyxDQUFBLE1BQUEsQ0FBQTtBQUFBLEdBQ2Q7QUFDRjs7OzsifQ==
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { locationService, config } from '@grafana/runtime';
|
|
2
|
+
|
|
3
|
+
class UrlMacro {
|
|
4
|
+
constructor(name, _) {
|
|
5
|
+
this.state = { name, type: "url_macro" };
|
|
6
|
+
}
|
|
7
|
+
getValue(fieldPath) {
|
|
8
|
+
var _a;
|
|
9
|
+
const location = locationService.getLocation();
|
|
10
|
+
const subUrl = (_a = config.appSubUrl) != null ? _a : "";
|
|
11
|
+
switch (fieldPath != null ? fieldPath : "") {
|
|
12
|
+
case "params":
|
|
13
|
+
return new UrlStateFormatter(location.search);
|
|
14
|
+
case "path":
|
|
15
|
+
return subUrl + location.pathname;
|
|
16
|
+
case "":
|
|
17
|
+
default:
|
|
18
|
+
return subUrl + location.pathname + location.search;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
getValueText() {
|
|
22
|
+
return "";
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
class UrlStateFormatter {
|
|
26
|
+
constructor(_urlQueryParams) {
|
|
27
|
+
this._urlQueryParams = _urlQueryParams;
|
|
28
|
+
}
|
|
29
|
+
formatter(options) {
|
|
30
|
+
if (!options) {
|
|
31
|
+
return this._urlQueryParams;
|
|
32
|
+
}
|
|
33
|
+
const params = options.split(":");
|
|
34
|
+
if (params[0] === "exclude" && params.length > 1) {
|
|
35
|
+
const allParams = new URLSearchParams(this._urlQueryParams);
|
|
36
|
+
for (const param of params[1].split(",")) {
|
|
37
|
+
allParams.delete(param);
|
|
38
|
+
}
|
|
39
|
+
return `?${allParams}`;
|
|
40
|
+
}
|
|
41
|
+
if (params[0] === "include" && params.length > 1) {
|
|
42
|
+
const allParams = new URLSearchParams(this._urlQueryParams);
|
|
43
|
+
const includeOnly = params[1].split(",");
|
|
44
|
+
for (const param of allParams.keys()) {
|
|
45
|
+
if (!includeOnly.includes(param)) {
|
|
46
|
+
allParams.delete(param);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return `?${allParams}`;
|
|
50
|
+
}
|
|
51
|
+
return this._urlQueryParams;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { UrlMacro };
|
|
56
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsTWFjcm9zLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdmFyaWFibGVzL21hY3Jvcy91cmxNYWNyb3MudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29uZmlnLCBsb2NhdGlvblNlcnZpY2UgfSBmcm9tICdAZ3JhZmFuYS9ydW50aW1lJztcbmltcG9ydCB7IFNjZW5lT2JqZWN0IH0gZnJvbSAnLi4vLi4vY29yZS90eXBlcyc7XG5pbXBvcnQgeyBGb3JtYXRWYXJpYWJsZSB9IGZyb20gJy4uL2ludGVycG9sYXRpb24vZm9ybWF0UmVnaXN0cnknO1xuaW1wb3J0IHsgQ3VzdG9tVmFyaWFibGVWYWx1ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIFVybE1hY3JvIGltcGxlbWVudHMgRm9ybWF0VmFyaWFibGUge1xuICBwdWJsaWMgc3RhdGU6IHsgbmFtZTogc3RyaW5nOyB0eXBlOiBzdHJpbmcgfTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBfOiBTY2VuZU9iamVjdCkge1xuICAgIHRoaXMuc3RhdGUgPSB7IG5hbWU6IG5hbWUsIHR5cGU6ICd1cmxfbWFjcm8nIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWUoZmllbGRQYXRoPzogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9jYXRpb24gPSBsb2NhdGlvblNlcnZpY2UuZ2V0TG9jYXRpb24oKTtcbiAgICBjb25zdCBzdWJVcmwgPSBjb25maWcuYXBwU3ViVXJsID8/ICcnO1xuXG4gICAgc3dpdGNoIChmaWVsZFBhdGggPz8gJycpIHtcbiAgICAgIGNhc2UgJ3BhcmFtcyc6XG4gICAgICAgIHJldHVybiBuZXcgVXJsU3RhdGVGb3JtYXR0ZXIobG9jYXRpb24uc2VhcmNoKTtcbiAgICAgIGNhc2UgJ3BhdGgnOlxuICAgICAgICByZXR1cm4gc3ViVXJsICsgbG9jYXRpb24ucGF0aG5hbWU7XG4gICAgICBjYXNlICcnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHN1YlVybCArIGxvY2F0aW9uLnBhdGhuYW1lICsgbG9jYXRpb24uc2VhcmNoO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRWYWx1ZVRleHQ/KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG5cbmNsYXNzIFVybFN0YXRlRm9ybWF0dGVyIGltcGxlbWVudHMgQ3VzdG9tVmFyaWFibGVWYWx1ZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIF91cmxRdWVyeVBhcmFtczogc3RyaW5nKSB7fVxuXG4gIHB1YmxpYyBmb3JtYXR0ZXIob3B0aW9uczogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIW9wdGlvbnMpIHtcbiAgICAgIHJldHVybiB0aGlzLl91cmxRdWVyeVBhcmFtcztcbiAgICB9XG5cbiAgICBjb25zdCBwYXJhbXMgPSBvcHRpb25zLnNwbGl0KCc6Jyk7XG4gICAgaWYgKHBhcmFtc1swXSA9PT0gJ2V4Y2x1ZGUnICYmIHBhcmFtcy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBhbGxQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHRoaXMuX3VybFF1ZXJ5UGFyYW1zKTtcbiAgICAgIGZvciAoY29uc3QgcGFyYW0gb2YgcGFyYW1zWzFdLnNwbGl0KCcsJykpIHtcbiAgICAgICAgYWxsUGFyYW1zLmRlbGV0ZShwYXJhbSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBgPyR7YWxsUGFyYW1zfWA7XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtc1swXSA9PT0gJ2luY2x1ZGUnICYmIHBhcmFtcy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBhbGxQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHRoaXMuX3VybFF1ZXJ5UGFyYW1zKTtcbiAgICAgIGNvbnN0IGluY2x1ZGVPbmx5ID0gcGFyYW1zWzFdLnNwbGl0KCcsJyk7XG5cbiAgICAgIGZvciAoY29uc3QgcGFyYW0gb2YgYWxsUGFyYW1zLmtleXMoKSkge1xuICAgICAgICBpZiAoIWluY2x1ZGVPbmx5LmluY2x1ZGVzKHBhcmFtKSkge1xuICAgICAgICAgIGFsbFBhcmFtcy5kZWxldGUocGFyYW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBgPyR7YWxsUGFyYW1zfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3VybFF1ZXJ5UGFyYW1zO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLTyxNQUFNLFFBQW1DLENBQUE7QUFBQSxFQUd2QyxXQUFBLENBQVksTUFBYyxDQUFnQixFQUFBO0FBQy9DLElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxFQUFFLElBQVksRUFBQSxJQUFBLEVBQU0sV0FBWSxFQUFBLENBQUE7QUFBQSxHQUMvQztBQUFBLEVBRU8sU0FBUyxTQUFvQixFQUFBO0FBWnRDLElBQUEsSUFBQSxFQUFBLENBQUE7QUFhSSxJQUFNLE1BQUEsUUFBQSxHQUFXLGdCQUFnQixXQUFZLEVBQUEsQ0FBQTtBQUM3QyxJQUFNLE1BQUEsTUFBQSxHQUFBLENBQVMsRUFBTyxHQUFBLE1BQUEsQ0FBQSxTQUFBLEtBQVAsSUFBb0IsR0FBQSxFQUFBLEdBQUEsRUFBQSxDQUFBO0FBRW5DLElBQUEsUUFBUSxTQUFhLElBQUEsSUFBQSxHQUFBLFNBQUEsR0FBQSxFQUFBO0FBQUEsTUFDZCxLQUFBLFFBQUE7QUFDSCxRQUFPLE9BQUEsSUFBSSxpQkFBa0IsQ0FBQSxRQUFBLENBQVMsTUFBTSxDQUFBLENBQUE7QUFBQSxNQUN6QyxLQUFBLE1BQUE7QUFDSCxRQUFBLE9BQU8sU0FBUyxRQUFTLENBQUEsUUFBQSxDQUFBO0FBQUEsTUFDdEIsS0FBQSxFQUFBLENBQUE7QUFBQSxNQUFBO0FBRUgsUUFBTyxPQUFBLE1BQUEsR0FBUyxRQUFTLENBQUEsUUFBQSxHQUFXLFFBQVMsQ0FBQSxNQUFBLENBQUE7QUFBQSxLQUFBO0FBQUEsR0FFbkQ7QUFBQSxFQUVPLFlBQXdCLEdBQUE7QUFDN0IsSUFBTyxPQUFBLEVBQUEsQ0FBQTtBQUFBLEdBQ1Q7QUFDRixDQUFBO0FBRUEsTUFBTSxpQkFBaUQsQ0FBQTtBQUFBLEVBQzlDLFlBQW9CLGVBQXlCLEVBQUE7QUFBekIsSUFBQSxJQUFBLENBQUEsZUFBQSxHQUFBLGVBQUEsQ0FBQTtBQUFBLEdBQTBCO0FBQUEsRUFFOUMsVUFBVSxPQUF5QixFQUFBO0FBQ3hDLElBQUEsSUFBSSxDQUFDLE9BQVMsRUFBQTtBQUNaLE1BQUEsT0FBTyxJQUFLLENBQUEsZUFBQSxDQUFBO0FBQUEsS0FDZDtBQUVBLElBQU0sTUFBQSxNQUFBLEdBQVMsT0FBUSxDQUFBLEtBQUEsQ0FBTSxHQUFHLENBQUEsQ0FBQTtBQUNoQyxJQUFBLElBQUksTUFBTyxDQUFBLENBQUEsQ0FBQSxLQUFPLFNBQWEsSUFBQSxNQUFBLENBQU8sU0FBUyxDQUFHLEVBQUE7QUFDaEQsTUFBQSxNQUFNLFNBQVksR0FBQSxJQUFJLGVBQWdCLENBQUEsSUFBQSxDQUFLLGVBQWUsQ0FBQSxDQUFBO0FBQzFELE1BQUEsS0FBQSxNQUFXLEtBQVMsSUFBQSxNQUFBLENBQU8sQ0FBRyxDQUFBLENBQUEsS0FBQSxDQUFNLEdBQUcsQ0FBRyxFQUFBO0FBQ3hDLFFBQUEsU0FBQSxDQUFVLE9BQU8sS0FBSyxDQUFBLENBQUE7QUFBQSxPQUN4QjtBQUVBLE1BQUEsT0FBTyxDQUFJLENBQUEsRUFBQSxTQUFBLENBQUEsQ0FBQSxDQUFBO0FBQUEsS0FDYjtBQUVBLElBQUEsSUFBSSxNQUFPLENBQUEsQ0FBQSxDQUFBLEtBQU8sU0FBYSxJQUFBLE1BQUEsQ0FBTyxTQUFTLENBQUcsRUFBQTtBQUNoRCxNQUFBLE1BQU0sU0FBWSxHQUFBLElBQUksZUFBZ0IsQ0FBQSxJQUFBLENBQUssZUFBZSxDQUFBLENBQUE7QUFDMUQsTUFBQSxNQUFNLFdBQWMsR0FBQSxNQUFBLENBQU8sQ0FBRyxDQUFBLENBQUEsS0FBQSxDQUFNLEdBQUcsQ0FBQSxDQUFBO0FBRXZDLE1BQVcsS0FBQSxNQUFBLEtBQUEsSUFBUyxTQUFVLENBQUEsSUFBQSxFQUFRLEVBQUE7QUFDcEMsUUFBQSxJQUFJLENBQUMsV0FBQSxDQUFZLFFBQVMsQ0FBQSxLQUFLLENBQUcsRUFBQTtBQUNoQyxVQUFBLFNBQUEsQ0FBVSxPQUFPLEtBQUssQ0FBQSxDQUFBO0FBQUEsU0FDeEI7QUFBQSxPQUNGO0FBRUEsTUFBQSxPQUFPLENBQUksQ0FBQSxFQUFBLFNBQUEsQ0FBQSxDQUFBLENBQUE7QUFBQSxLQUNiO0FBRUEsSUFBQSxPQUFPLElBQUssQ0FBQSxlQUFBLENBQUE7QUFBQSxHQUNkO0FBQ0Y7Ozs7In0=
|