@grafana/scenes 6.8.0 → 6.8.1
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 +20 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/esm/components/layout/CSSGrid/SceneCSSGridItem.js +0 -33
- package/dist/esm/dist/esm/behaviors/CursorSync.js +0 -76
- package/dist/esm/dist/esm/behaviors/LiveNowTimer.js +0 -44
- package/dist/esm/dist/esm/behaviors/SceneQueryController.js +0 -14
- package/dist/esm/dist/esm/components/EmbeddedScene.js +0 -59
- package/dist/esm/dist/esm/components/NestedScene.js +0 -95
- package/dist/esm/dist/esm/components/SceneApp/SceneApp.js +0 -27
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPage.js +0 -176
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPageView.js +0 -104
- package/dist/esm/dist/esm/components/SceneApp/utils.js +0 -42
- package/dist/esm/dist/esm/components/SceneByFrameRepeater.js +0 -41
- package/dist/esm/dist/esm/components/SceneByVariableRepeater.js +0 -55
- package/dist/esm/dist/esm/components/SceneCanvasText.js +0 -32
- package/dist/esm/dist/esm/components/SceneControlsSpacer.js +0 -17
- package/dist/esm/dist/esm/components/SceneDebugger/DebugDetails.js +0 -82
- package/dist/esm/dist/esm/components/SceneDebugger/DebugTreeNode.js +0 -72
- package/dist/esm/dist/esm/components/SceneDebugger/SceneDebugger.js +0 -77
- package/dist/esm/dist/esm/components/SceneReactObject.js +0 -34
- package/dist/esm/dist/esm/components/SceneRefreshPicker.js +0 -205
- package/dist/esm/dist/esm/components/SceneTimePicker.js +0 -139
- package/dist/esm/dist/esm/components/SceneTimeRangeCompare.js +0 -240
- package/dist/esm/dist/esm/components/SceneToolbarButton.js +0 -33
- package/dist/esm/dist/esm/components/VizPanel/VizPanel.js +0 -406
- package/dist/esm/dist/esm/components/VizPanel/VizPanelExploreButton.js +0 -44
- package/dist/esm/dist/esm/components/VizPanel/VizPanelMenu.js +0 -59
- package/dist/esm/dist/esm/components/VizPanel/VizPanelRenderer.js +0 -285
- package/dist/esm/dist/esm/components/VizPanel/VizPanelSeriesLimit.js +0 -45
- package/dist/esm/dist/esm/components/VizPanel/colorSeriesConfigFactory.js +0 -72
- package/dist/esm/dist/esm/components/VizPanel/registerRuntimePanelPlugin.js +0 -11
- package/dist/esm/dist/esm/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
- package/dist/esm/dist/esm/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
- package/dist/esm/dist/esm/components/layout/LazyLoader.js +0 -103
- package/dist/esm/dist/esm/components/layout/SceneFlexLayout.js +0 -135
- package/dist/esm/dist/esm/components/layout/grid/SceneGridItem.js +0 -30
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayout.js +0 -283
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
- package/dist/esm/dist/esm/components/layout/grid/SceneGridRow.js +0 -190
- package/dist/esm/dist/esm/components/layout/grid/constants.js +0 -7
- package/dist/esm/dist/esm/components/layout/grid/utils.js +0 -36
- package/dist/esm/dist/esm/components/layout/split/SplitLayout.js +0 -17
- package/dist/esm/dist/esm/components/layout/split/SplitLayoutRenderer.js +0 -29
- package/dist/esm/dist/esm/components/layout/split/Splitter.js +0 -386
- package/dist/esm/dist/esm/core/SceneComponentWrapper.js +0 -57
- package/dist/esm/dist/esm/core/SceneDataNode.js +0 -43
- package/dist/esm/dist/esm/core/SceneObjectBase.js +0 -286
- package/dist/esm/dist/esm/core/SceneObjectRef.js +0 -32
- package/dist/esm/dist/esm/core/SceneTimeRange.js +0 -231
- package/dist/esm/dist/esm/core/events.js +0 -11
- package/dist/esm/dist/esm/core/sceneGraph/getTimeRange.js +0 -10
- package/dist/esm/dist/esm/core/sceneGraph/index.js +0 -25
- package/dist/esm/dist/esm/core/sceneGraph/sceneGraph.js +0 -178
- package/dist/esm/dist/esm/core/sceneGraph/utils.js +0 -64
- package/dist/esm/dist/esm/core/types.js +0 -15
- package/dist/esm/dist/esm/querying/DataLayersMerger.js +0 -46
- package/dist/esm/dist/esm/querying/ExtraQueryProvider.js +0 -6
- package/dist/esm/dist/esm/querying/RuntimeDataSource.js +0 -6
- package/dist/esm/dist/esm/querying/SceneDataLayerSet.js +0 -100
- package/dist/esm/dist/esm/querying/SceneQueryRunner.js +0 -468
- package/dist/esm/dist/esm/querying/extraQueryProcessingOperator.js +0 -46
- package/dist/esm/dist/esm/querying/getEnrichedDataRequest.js +0 -12
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerBase.js +0 -112
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerControls.js +0 -51
- package/dist/esm/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
- package/dist/esm/dist/esm/querying/layers/annotations/filterAnnotations.js +0 -85
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationQuery.js +0 -121
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
- package/dist/esm/dist/esm/querying/layers/annotations/utils.js +0 -77
- package/dist/esm/dist/esm/querying/registerQueryWithController.js +0 -41
- package/dist/esm/dist/esm/services/SceneObjectUrlSyncConfig.js +0 -30
- package/dist/esm/dist/esm/services/UniqueUrlKeyMapper.js +0 -45
- package/dist/esm/dist/esm/services/UrlSyncManager.js +0 -167
- package/dist/esm/dist/esm/services/useUrlSync.js +0 -29
- package/dist/esm/dist/esm/services/utils.js +0 -71
- package/dist/esm/dist/esm/utils/ControlsLabel.js +0 -107
- package/dist/esm/dist/esm/utils/LoadingIndicator.js +0 -19
- package/dist/esm/dist/esm/utils/SafeSerializableSceneObject.js +0 -39
- package/dist/esm/dist/esm/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
- package/dist/esm/dist/esm/utils/date.js +0 -15
- package/dist/esm/dist/esm/utils/evaluateTimeRange.js +0 -16
- package/dist/esm/dist/esm/utils/explore.js +0 -47
- package/dist/esm/dist/esm/utils/getCompareSeriesRefId.js +0 -4
- package/dist/esm/dist/esm/utils/getDataSource.js +0 -18
- package/dist/esm/dist/esm/utils/getMessageFromError.js +0 -24
- package/dist/esm/dist/esm/utils/metricTree.js +0 -53
- package/dist/esm/dist/esm/utils/parseUrlParam.js +0 -41
- package/dist/esm/dist/esm/utils/utils.js +0 -11
- package/dist/esm/dist/esm/utils/wrapInSafeSerializableSceneObject.js +0 -30
- package/dist/esm/dist/esm/utils/writeSceneLog.js +0 -12
- package/dist/esm/dist/esm/variables/VariableDependencyConfig.js +0 -150
- package/dist/esm/dist/esm/variables/VariableValueRecorder.js +0 -71
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterBuilder.js +0 -24
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterRenderer.js +0 -303
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariable.js +0 -289
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
- package/dist/esm/dist/esm/variables/adhoc/getAdhocOptionSearcher.js +0 -13
- package/dist/esm/dist/esm/variables/adhoc/patchGetAdhocFilters.js +0 -47
- package/dist/esm/dist/esm/variables/components/VariableValueControl.js +0 -23
- package/dist/esm/dist/esm/variables/components/VariableValueInput.js +0 -33
- package/dist/esm/dist/esm/variables/components/VariableValueSelect.js +0 -228
- package/dist/esm/dist/esm/variables/components/VariableValueSelectors.js +0 -72
- package/dist/esm/dist/esm/variables/components/getOptionSearcher.js +0 -15
- package/dist/esm/dist/esm/variables/constants.js +0 -9
- package/dist/esm/dist/esm/variables/getEnrichedFiltersRequest.js +0 -12
- package/dist/esm/dist/esm/variables/groupby/GroupByVariable.js +0 -259
- package/dist/esm/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
- package/dist/esm/dist/esm/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
- package/dist/esm/dist/esm/variables/interpolation/ScopedVarsVariable.js +0 -40
- package/dist/esm/dist/esm/variables/interpolation/defaults.js +0 -21
- package/dist/esm/dist/esm/variables/interpolation/fieldAccessorCache.js +0 -13
- package/dist/esm/dist/esm/variables/interpolation/formatRegistry.js +0 -296
- package/dist/esm/dist/esm/variables/interpolation/sceneInterpolator.js +0 -87
- package/dist/esm/dist/esm/variables/lookupVariable.js +0 -20
- package/dist/esm/dist/esm/variables/macros/AllVariablesMacro.js +0 -57
- package/dist/esm/dist/esm/variables/macros/contextMacros.js +0 -43
- package/dist/esm/dist/esm/variables/macros/dataMacros.js +0 -134
- package/dist/esm/dist/esm/variables/macros/index.js +0 -26
- package/dist/esm/dist/esm/variables/macros/templateProxies.js +0 -51
- package/dist/esm/dist/esm/variables/macros/timeMacros.js +0 -86
- package/dist/esm/dist/esm/variables/macros/types.js +0 -11
- package/dist/esm/dist/esm/variables/macros/urlMacros.js +0 -56
- package/dist/esm/dist/esm/variables/sets/SceneVariableSet.js +0 -254
- package/dist/esm/dist/esm/variables/types.js +0 -11
- package/dist/esm/dist/esm/variables/utils.js +0 -172
- package/dist/esm/dist/esm/variables/variants/ConstantVariable.js +0 -38
- package/dist/esm/dist/esm/variables/variants/CustomVariable.js +0 -60
- package/dist/esm/dist/esm/variables/variants/DataSourceVariable.js +0 -88
- package/dist/esm/dist/esm/variables/variants/IntervalVariable.js +0 -117
- package/dist/esm/dist/esm/variables/variants/MultiValueVariable.js +0 -295
- package/dist/esm/dist/esm/variables/variants/TestVariable.js +0 -117
- package/dist/esm/dist/esm/variables/variants/TextBoxVariable.js +0 -61
- package/dist/esm/dist/esm/variables/variants/query/QueryVariable.js +0 -139
- package/dist/esm/dist/esm/variables/variants/query/createQueryVariableRunner.js +0 -129
- package/dist/esm/dist/esm/variables/variants/query/guards.js +0 -28
- package/dist/esm/dist/esm/variables/variants/query/toMetricFindValues.js +0 -96
- package/dist/esm/dist/esm/variables/variants/query/utils.js +0 -124
- package/dist/esm/querying/DataProviderSharer.js +0 -39
- package/dist/esm/src/behaviors/ActWhenVariableChanged.js +0 -27
- package/dist/esm/src/behaviors/CursorSync.js +0 -76
- package/dist/esm/src/behaviors/LiveNowTimer.js +0 -44
- package/dist/esm/src/behaviors/SceneQueryController.js +0 -60
- package/dist/esm/src/behaviors/index.js +0 -5
- package/dist/esm/src/components/EmbeddedScene.js +0 -59
- package/dist/esm/src/components/NestedScene.js +0 -95
- package/dist/esm/src/components/SceneApp/SceneApp.js +0 -37
- package/dist/esm/src/components/SceneApp/SceneAppPage.js +0 -176
- package/dist/esm/src/components/SceneApp/SceneAppPageView.js +0 -104
- package/dist/esm/src/components/SceneApp/utils.js +0 -42
- package/dist/esm/src/components/SceneByFrameRepeater.js +0 -41
- package/dist/esm/src/components/SceneByVariableRepeater.js +0 -55
- package/dist/esm/src/components/SceneCanvasText.js +0 -32
- package/dist/esm/src/components/SceneControlsSpacer.js +0 -17
- package/dist/esm/src/components/SceneDebugger/DebugDetails.js +0 -82
- package/dist/esm/src/components/SceneDebugger/DebugTreeNode.js +0 -72
- package/dist/esm/src/components/SceneDebugger/SceneDebugger.js +0 -77
- package/dist/esm/src/components/SceneReactObject.js +0 -34
- package/dist/esm/src/components/SceneRefreshPicker.js +0 -205
- package/dist/esm/src/components/SceneTimePicker.js +0 -139
- package/dist/esm/src/components/SceneTimeRangeCompare.js +0 -240
- package/dist/esm/src/components/SceneToolbarButton.js +0 -33
- package/dist/esm/src/components/VizPanel/VizPanel.js +0 -406
- package/dist/esm/src/components/VizPanel/VizPanelExploreButton.js +0 -44
- package/dist/esm/src/components/VizPanel/VizPanelMenu.js +0 -59
- package/dist/esm/src/components/VizPanel/VizPanelRenderer.js +0 -285
- package/dist/esm/src/components/VizPanel/VizPanelSeriesLimit.js +0 -45
- package/dist/esm/src/components/VizPanel/colorSeriesConfigFactory.js +0 -72
- package/dist/esm/src/components/VizPanel/registerRuntimePanelPlugin.js +0 -56
- package/dist/esm/src/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
- package/dist/esm/src/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
- package/dist/esm/src/components/layout/LazyLoader.js +0 -103
- package/dist/esm/src/components/layout/SceneFlexLayout.js +0 -135
- package/dist/esm/src/components/layout/grid/SceneGridItem.js +0 -30
- package/dist/esm/src/components/layout/grid/SceneGridLayout.js +0 -283
- package/dist/esm/src/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
- package/dist/esm/src/components/layout/grid/SceneGridRow.js +0 -190
- package/dist/esm/src/components/layout/grid/constants.js +0 -7
- package/dist/esm/src/components/layout/grid/utils.js +0 -36
- package/dist/esm/src/components/layout/split/SplitLayout.js +0 -17
- package/dist/esm/src/components/layout/split/SplitLayoutRenderer.js +0 -29
- package/dist/esm/src/components/layout/split/Splitter.js +0 -386
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilder.js +0 -100
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilders.js +0 -75
- package/dist/esm/src/core/PanelBuilders/FieldConfigOverridesBuilder.js +0 -75
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilder.js +0 -22
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilders.js +0 -85
- package/dist/esm/src/core/PanelBuilders/StandardFieldConfigBuilders.js +0 -52
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilder.js +0 -78
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilders.js +0 -114
- package/dist/esm/src/core/PanelBuilders/VizPanelBuilder.js +0 -162
- package/dist/esm/src/core/PanelBuilders/index.js +0 -116
- package/dist/esm/src/core/SceneComponentWrapper.js +0 -57
- package/dist/esm/src/core/SceneDataNode.js +0 -43
- package/dist/esm/src/core/SceneObjectBase.js +0 -286
- package/dist/esm/src/core/SceneObjectRef.js +0 -32
- package/dist/esm/src/core/SceneTimeRange.js +0 -231
- package/dist/esm/src/core/SceneTimeRangeTransformerBase.js +0 -35
- package/dist/esm/src/core/SceneTimeZoneOverride.js +0 -63
- package/dist/esm/src/core/events.js +0 -11
- package/dist/esm/src/core/sceneGraph/getTimeRange.js +0 -10
- package/dist/esm/src/core/sceneGraph/index.js +0 -25
- package/dist/esm/src/core/sceneGraph/sceneGraph.js +0 -178
- package/dist/esm/src/core/sceneGraph/utils.js +0 -64
- package/dist/esm/src/core/types.js +0 -15
- package/dist/esm/src/index.js +0 -108
- package/dist/esm/src/querying/DataLayersMerger.js +0 -46
- package/dist/esm/src/querying/DataProviderProxy.js +0 -37
- package/dist/esm/src/querying/DataProviderSharer.js +0 -108
- package/dist/esm/src/querying/ExtraQueryProvider.js +0 -6
- package/dist/esm/src/querying/RuntimeDataSource.js +0 -49
- package/dist/esm/src/querying/SceneDataLayerSet.js +0 -100
- package/dist/esm/src/querying/SceneDataTransformer.js +0 -178
- package/dist/esm/src/querying/SceneQueryRunner.js +0 -468
- package/dist/esm/src/querying/extraQueryProcessingOperator.js +0 -46
- package/dist/esm/src/querying/getEnrichedDataRequest.js +0 -12
- package/dist/esm/src/querying/layers/SceneDataLayerBase.js +0 -112
- package/dist/esm/src/querying/layers/SceneDataLayerControls.js +0 -51
- package/dist/esm/src/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
- package/dist/esm/src/querying/layers/annotations/filterAnnotations.js +0 -85
- package/dist/esm/src/querying/layers/annotations/standardAnnotationQuery.js +0 -121
- package/dist/esm/src/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
- package/dist/esm/src/querying/layers/annotations/utils.js +0 -77
- package/dist/esm/src/querying/layers/index.js +0 -2
- package/dist/esm/src/querying/registerQueryWithController.js +0 -41
- package/dist/esm/src/services/SceneObjectUrlSyncConfig.js +0 -30
- package/dist/esm/src/services/UniqueUrlKeyMapper.js +0 -45
- package/dist/esm/src/services/UrlSyncContextProvider.js +0 -17
- package/dist/esm/src/services/UrlSyncManager.js +0 -167
- package/dist/esm/src/services/useUrlSync.js +0 -29
- package/dist/esm/src/services/utils.js +0 -75
- package/dist/esm/src/utils/ControlsLabel.js +0 -107
- package/dist/esm/src/utils/LoadingIndicator.js +0 -19
- package/dist/esm/src/utils/SafeSerializableSceneObject.js +0 -39
- package/dist/esm/src/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
- package/dist/esm/src/utils/date.js +0 -15
- package/dist/esm/src/utils/evaluateTimeRange.js +0 -16
- package/dist/esm/src/utils/explore.js +0 -47
- package/dist/esm/src/utils/getCompareSeriesRefId.js +0 -4
- package/dist/esm/src/utils/getDataSource.js +0 -18
- package/dist/esm/src/utils/getMessageFromError.js +0 -24
- package/dist/esm/src/utils/metricTree.js +0 -53
- package/dist/esm/src/utils/parseUrlParam.js +0 -41
- package/dist/esm/src/utils/utils.js +0 -11
- package/dist/esm/src/utils/wrapInSafeSerializableSceneObject.js +0 -30
- package/dist/esm/src/utils/writeSceneLog.js +0 -12
- package/dist/esm/src/variables/VariableDependencyConfig.js +0 -150
- package/dist/esm/src/variables/VariableValueRecorder.js +0 -71
- package/dist/esm/src/variables/adhoc/AdHocFilterBuilder.js +0 -24
- package/dist/esm/src/variables/adhoc/AdHocFilterRenderer.js +0 -303
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariable.js +0 -289
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
- package/dist/esm/src/variables/adhoc/getAdhocOptionSearcher.js +0 -13
- package/dist/esm/src/variables/adhoc/patchGetAdhocFilters.js +0 -47
- package/dist/esm/src/variables/components/VariableValueControl.js +0 -23
- package/dist/esm/src/variables/components/VariableValueInput.js +0 -33
- package/dist/esm/src/variables/components/VariableValueSelect.js +0 -228
- package/dist/esm/src/variables/components/VariableValueSelectors.js +0 -72
- package/dist/esm/src/variables/components/getOptionSearcher.js +0 -15
- package/dist/esm/src/variables/constants.js +0 -9
- package/dist/esm/src/variables/getEnrichedFiltersRequest.js +0 -12
- package/dist/esm/src/variables/groupby/GroupByVariable.js +0 -259
- package/dist/esm/src/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
- package/dist/esm/src/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
- package/dist/esm/src/variables/interpolation/ScopedVarsVariable.js +0 -40
- package/dist/esm/src/variables/interpolation/defaults.js +0 -21
- package/dist/esm/src/variables/interpolation/fieldAccessorCache.js +0 -13
- package/dist/esm/src/variables/interpolation/formatRegistry.js +0 -296
- package/dist/esm/src/variables/interpolation/sceneInterpolator.js +0 -87
- package/dist/esm/src/variables/lookupVariable.js +0 -20
- package/dist/esm/src/variables/macros/AllVariablesMacro.js +0 -57
- package/dist/esm/src/variables/macros/contextMacros.js +0 -43
- package/dist/esm/src/variables/macros/dataMacros.js +0 -134
- package/dist/esm/src/variables/macros/index.js +0 -35
- package/dist/esm/src/variables/macros/templateProxies.js +0 -51
- package/dist/esm/src/variables/macros/timeMacros.js +0 -86
- package/dist/esm/src/variables/macros/types.js +0 -11
- package/dist/esm/src/variables/macros/urlMacros.js +0 -56
- package/dist/esm/src/variables/sets/SceneVariableSet.js +0 -254
- package/dist/esm/src/variables/types.js +0 -11
- package/dist/esm/src/variables/utils.js +0 -172
- package/dist/esm/src/variables/variants/ConstantVariable.js +0 -38
- package/dist/esm/src/variables/variants/CustomVariable.js +0 -60
- package/dist/esm/src/variables/variants/DataSourceVariable.js +0 -88
- package/dist/esm/src/variables/variants/IntervalVariable.js +0 -117
- package/dist/esm/src/variables/variants/JsonVariable.js +0 -193
- package/dist/esm/src/variables/variants/LocalValueVariable.js +0 -56
- package/dist/esm/src/variables/variants/MultiValueVariable.js +0 -295
- package/dist/esm/src/variables/variants/TestVariable.js +0 -117
- package/dist/esm/src/variables/variants/TextBoxVariable.js +0 -61
- package/dist/esm/src/variables/variants/guards.js +0 -27
- package/dist/esm/src/variables/variants/query/QueryVariable.js +0 -139
- package/dist/esm/src/variables/variants/query/createQueryVariableRunner.js +0 -129
- package/dist/esm/src/variables/variants/query/guards.js +0 -28
- package/dist/esm/src/variables/variants/query/toMetricFindValues.js +0 -96
- package/dist/esm/src/variables/variants/query/utils.js +0 -124
- package/dist/esm/variables/variants/JsonVariable.js +0 -96
- package/dist/esm/variables/variants/json/JsonVariable.js +0 -95
- package/dist/esm/variables/variants/json/JsonVariableOptionProviders.js +0 -70
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { SceneObjectBase } from '../core/SceneObjectBase.js';
|
|
2
|
-
|
|
3
|
-
var __accessCheck = (obj, member, msg) => {
|
|
4
|
-
if (!member.has(obj))
|
|
5
|
-
throw TypeError("Cannot " + msg);
|
|
6
|
-
};
|
|
7
|
-
var __privateGet = (obj, member, getter) => {
|
|
8
|
-
__accessCheck(obj, member, "read from private field");
|
|
9
|
-
return getter ? getter.call(obj) : member.get(obj);
|
|
10
|
-
};
|
|
11
|
-
var __privateAdd = (obj, member, value) => {
|
|
12
|
-
if (member.has(obj))
|
|
13
|
-
throw TypeError("Cannot add the same private member more than once");
|
|
14
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
15
|
-
};
|
|
16
|
-
var _running;
|
|
17
|
-
function isQueryController(s) {
|
|
18
|
-
return "isQueryController" in s;
|
|
19
|
-
}
|
|
20
|
-
class SceneQueryController extends SceneObjectBase {
|
|
21
|
-
constructor() {
|
|
22
|
-
super({ isRunning: false });
|
|
23
|
-
this.isQueryController = true;
|
|
24
|
-
__privateAdd(this, _running, /* @__PURE__ */ new Set());
|
|
25
|
-
this.addActivationHandler(() => {
|
|
26
|
-
return () => __privateGet(this, _running).clear();
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
queryStarted(entry) {
|
|
30
|
-
__privateGet(this, _running).add(entry);
|
|
31
|
-
this.changeRunningQueryCount(1);
|
|
32
|
-
if (!this.state.isRunning) {
|
|
33
|
-
this.setState({ isRunning: true });
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
queryCompleted(entry) {
|
|
37
|
-
if (!__privateGet(this, _running).has(entry)) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
__privateGet(this, _running).delete(entry);
|
|
41
|
-
this.changeRunningQueryCount(-1);
|
|
42
|
-
if (__privateGet(this, _running).size === 0) {
|
|
43
|
-
this.setState({ isRunning: false });
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
changeRunningQueryCount(dir) {
|
|
47
|
-
var _a;
|
|
48
|
-
window.__grafanaRunningQueryCount = ((_a = window.__grafanaRunningQueryCount) != null ? _a : 0) + dir;
|
|
49
|
-
}
|
|
50
|
-
cancelAll() {
|
|
51
|
-
var _a;
|
|
52
|
-
for (const entry of __privateGet(this, _running).values()) {
|
|
53
|
-
(_a = entry.cancel) == null ? void 0 : _a.call(entry);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
_running = new WeakMap();
|
|
58
|
-
|
|
59
|
-
export { SceneQueryController, isQueryController };
|
|
60
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NlbmVRdWVyeUNvbnRyb2xsZXIuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZWhhdmlvcnMvU2NlbmVRdWVyeUNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2NlbmVPYmplY3RCYXNlIH0gZnJvbSAnLi4vY29yZS9TY2VuZU9iamVjdEJhc2UnO1xuaW1wb3J0IHsgU2NlbmVPYmplY3QsIFNjZW5lT2JqZWN0U3RhdGUsIFNjZW5lU3RhdGVsZXNzQmVoYXZpb3IgfSBmcm9tICcuLi9jb3JlL3R5cGVzJztcbmltcG9ydCB7IERhdGFRdWVyeVJlcXVlc3QgfSBmcm9tICdAZ3JhZmFuYS9kYXRhJztcbmltcG9ydCB7IExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BncmFmYW5hL3NjaGVtYSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NlbmVRdWVyeVN0YXRlQ29udHJvbGxlclN0YXRlIGV4dGVuZHMgU2NlbmVPYmplY3RTdGF0ZSB7XG4gIGlzUnVubmluZzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY2VuZVF1ZXJ5Q29udHJvbGxlckxpa2UgZXh0ZW5kcyBTY2VuZU9iamVjdDxTY2VuZVF1ZXJ5U3RhdGVDb250cm9sbGVyU3RhdGU+IHtcbiAgaXNRdWVyeUNvbnRyb2xsZXI6IHRydWU7XG4gIGNhbmNlbEFsbCgpOiB2b2lkO1xuXG4gIHF1ZXJ5U3RhcnRlZChlbnRyeTogU2NlbmVRdWVyeUNvbnRyb2xsZXJFbnRyeSk6IHZvaWQ7XG4gIHF1ZXJ5Q29tcGxldGVkKGVudHJ5OiBTY2VuZVF1ZXJ5Q29udHJvbGxlckVudHJ5KTogdm9pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzUXVlcnlDb250cm9sbGVyKHM6IFNjZW5lT2JqZWN0IHwgU2NlbmVTdGF0ZWxlc3NCZWhhdmlvcik6IHMgaXMgU2NlbmVRdWVyeUNvbnRyb2xsZXJMaWtlIHtcbiAgcmV0dXJuICdpc1F1ZXJ5Q29udHJvbGxlcicgaW4gcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWVyeVJlc3VsdFdpdGhTdGF0ZSB7XG4gIHN0YXRlOiBMb2FkaW5nU3RhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NlbmVRdWVyeUNvbnRyb2xsZXJFbnRyeSB7XG4gIHJlcXVlc3Q/OiBEYXRhUXVlcnlSZXF1ZXN0O1xuICB0eXBlOiBTY2VuZVF1ZXJ5Q29udHJvbGxlckVudHJ5VHlwZTtcbiAgb3JpZ2luOiBTY2VuZU9iamVjdDtcbiAgY2FuY2VsPzogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgU2NlbmVRdWVyeUNvbnRyb2xsZXJFbnRyeVR5cGUgPSAnZGF0YScgfCAnYW5ub3RhdGlvbnMnIHwgJ3ZhcmlhYmxlJyB8ICdhbGVydHMnO1xuXG5leHBvcnQgY2xhc3MgU2NlbmVRdWVyeUNvbnRyb2xsZXJcbiAgZXh0ZW5kcyBTY2VuZU9iamVjdEJhc2U8U2NlbmVRdWVyeVN0YXRlQ29udHJvbGxlclN0YXRlPlxuICBpbXBsZW1lbnRzIFNjZW5lUXVlcnlDb250cm9sbGVyTGlrZVxue1xuICBwdWJsaWMgaXNRdWVyeUNvbnRyb2xsZXI6IHRydWUgPSB0cnVlO1xuXG4gICNydW5uaW5nID0gbmV3IFNldDxTY2VuZVF1ZXJ5Q29udHJvbGxlckVudHJ5PigpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7IGlzUnVubmluZzogZmFsc2UgfSk7XG5cbiAgICAvLyBDbGVhciBydW5uaW5nIHN0YXRlIG9uIGRlYWN0aXZhdGVcbiAgICB0aGlzLmFkZEFjdGl2YXRpb25IYW5kbGVyKCgpID0+IHtcbiAgICAgIHJldHVybiAoKSA9PiB0aGlzLiNydW5uaW5nLmNsZWFyKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlTdGFydGVkKGVudHJ5OiBTY2VuZVF1ZXJ5Q29udHJvbGxlckVudHJ5KSB7XG4gICAgdGhpcy4jcnVubmluZy5hZGQoZW50cnkpO1xuXG4gICAgdGhpcy5jaGFuZ2VSdW5uaW5nUXVlcnlDb3VudCgxKTtcblxuICAgIGlmICghdGhpcy5zdGF0ZS5pc1J1bm5pbmcpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBpc1J1bm5pbmc6IHRydWUgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHF1ZXJ5Q29tcGxldGVkKGVudHJ5OiBTY2VuZVF1ZXJ5Q29udHJvbGxlckVudHJ5KSB7XG4gICAgaWYgKCF0aGlzLiNydW5uaW5nLmhhcyhlbnRyeSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLiNydW5uaW5nLmRlbGV0ZShlbnRyeSk7XG5cbiAgICB0aGlzLmNoYW5nZVJ1bm5pbmdRdWVyeUNvdW50KC0xKTtcblxuICAgIGlmICh0aGlzLiNydW5uaW5nLnNpemUgPT09IDApIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBpc1J1bm5pbmc6IGZhbHNlIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2hhbmdlUnVubmluZ1F1ZXJ5Q291bnQoZGlyOiAxIHwgLTEpIHtcbiAgICAvKipcbiAgICAgKiBVc2VkIGJ5IGdyYWZhbmEtaW1hZ2UtcmVuZGVyZXIgdG8ga25vdyB3aGVuIGFsbCBxdWVyaWVzIGFyZSBjb21wbGV0ZWQuXG4gICAgICovXG4gICAgKHdpbmRvdyBhcyBhbnkpLl9fZ3JhZmFuYVJ1bm5pbmdRdWVyeUNvdW50ID0gKCh3aW5kb3cgYXMgYW55KS5fX2dyYWZhbmFSdW5uaW5nUXVlcnlDb3VudCA/PyAwKSArIGRpcjtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWxBbGwoKSB7XG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiB0aGlzLiNydW5uaW5nLnZhbHVlcygpKSB7XG4gICAgICBlbnRyeS5jYW5jZWw/LigpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUEsUUFBQSxDQUFBO0FBaUJPLFNBQVMsa0JBQWtCLENBQXdFLEVBQUE7QUFDeEcsRUFBQSxPQUFPLG1CQUF1QixJQUFBLENBQUEsQ0FBQTtBQUNoQyxDQUFBO0FBZU8sTUFBTSw2QkFDSCxlQUVWLENBQUE7QUFBQSxFQUtTLFdBQWMsR0FBQTtBQUNuQixJQUFNLEtBQUEsQ0FBQSxFQUFFLFNBQVcsRUFBQSxLQUFBLEVBQU8sQ0FBQSxDQUFBO0FBTDVCLElBQUEsSUFBQSxDQUFPLGlCQUEwQixHQUFBLElBQUEsQ0FBQTtBQUVqQyxJQUFBLFlBQUEsQ0FBQSxJQUFBLEVBQUEsUUFBQSxzQkFBZSxHQUErQixFQUFBLENBQUEsQ0FBQTtBQU01QyxJQUFBLElBQUEsQ0FBSyxxQkFBcUIsTUFBTTtBQUM5QixNQUFPLE9BQUEsTUFBTSxZQUFLLENBQUEsSUFBQSxFQUFBLFFBQUEsQ0FBQSxDQUFTLEtBQU0sRUFBQSxDQUFBO0FBQUEsS0FDbEMsQ0FBQSxDQUFBO0FBQUEsR0FDSDtBQUFBLEVBRU8sYUFBYSxLQUFrQyxFQUFBO0FBQ3BELElBQUssWUFBQSxDQUFBLElBQUEsRUFBQSxRQUFBLENBQUEsQ0FBUyxJQUFJLEtBQUssQ0FBQSxDQUFBO0FBRXZCLElBQUEsSUFBQSxDQUFLLHdCQUF3QixDQUFDLENBQUEsQ0FBQTtBQUU5QixJQUFJLElBQUEsQ0FBQyxJQUFLLENBQUEsS0FBQSxDQUFNLFNBQVcsRUFBQTtBQUN6QixNQUFBLElBQUEsQ0FBSyxRQUFTLENBQUEsRUFBRSxTQUFXLEVBQUEsSUFBQSxFQUFNLENBQUEsQ0FBQTtBQUFBLEtBQ25DO0FBQUEsR0FDRjtBQUFBLEVBRU8sZUFBZSxLQUFrQyxFQUFBO0FBQ3RELElBQUEsSUFBSSxDQUFDLFlBQUEsQ0FBQSxJQUFBLEVBQUssUUFBUyxDQUFBLENBQUEsR0FBQSxDQUFJLEtBQUssQ0FBRyxFQUFBO0FBQzdCLE1BQUEsT0FBQTtBQUFBLEtBQ0Y7QUFFQSxJQUFLLFlBQUEsQ0FBQSxJQUFBLEVBQUEsUUFBQSxDQUFBLENBQVMsT0FBTyxLQUFLLENBQUEsQ0FBQTtBQUUxQixJQUFBLElBQUEsQ0FBSyx3QkFBd0IsQ0FBRSxDQUFBLENBQUEsQ0FBQTtBQUUvQixJQUFJLElBQUEsWUFBQSxDQUFBLElBQUEsRUFBSyxRQUFTLENBQUEsQ0FBQSxJQUFBLEtBQVMsQ0FBRyxFQUFBO0FBQzVCLE1BQUEsSUFBQSxDQUFLLFFBQVMsQ0FBQSxFQUFFLFNBQVcsRUFBQSxLQUFBLEVBQU8sQ0FBQSxDQUFBO0FBQUEsS0FDcEM7QUFBQSxHQUNGO0FBQUEsRUFFUSx3QkFBd0IsR0FBYSxFQUFBO0FBM0UvQyxJQUFBLElBQUEsRUFBQSxDQUFBO0FBK0VJLElBQUMsTUFBZSxDQUFBLDBCQUFBLEdBQUEsQ0FBQSxDQUErQixFQUFlLEdBQUEsTUFBQSxDQUFBLDBCQUFBLEtBQWYsWUFBNkMsQ0FBSyxJQUFBLEdBQUEsQ0FBQTtBQUFBLEdBQ25HO0FBQUEsRUFFTyxTQUFZLEdBQUE7QUFsRnJCLElBQUEsSUFBQSxFQUFBLENBQUE7QUFtRkksSUFBQSxLQUFBLE1BQVcsS0FBUyxJQUFBLFlBQUEsQ0FBQSxJQUFBLEVBQUssUUFBUyxDQUFBLENBQUEsTUFBQSxFQUFVLEVBQUE7QUFDMUMsTUFBQSxDQUFBLEVBQUEsR0FBQSxLQUFBLENBQU0sTUFBTixLQUFBLElBQUEsR0FBQSxLQUFBLENBQUEsR0FBQSxFQUFBLENBQUEsSUFBQSxDQUFBLEtBQUEsQ0FBQSxDQUFBO0FBQUEsS0FDRjtBQUFBLEdBQ0Y7QUFDRixDQUFBO0FBL0NFLFFBQUEsR0FBQSxJQUFBLE9BQUEsRUFBQTs7OzsifQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { ActWhenVariableChanged } from './ActWhenVariableChanged.js';
|
|
2
|
-
export { CursorSync } from './CursorSync.js';
|
|
3
|
-
export { SceneQueryController } from './SceneQueryController.js';
|
|
4
|
-
export { LiveNowTimer } from './LiveNowTimer.js';
|
|
5
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7In0=
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { css } from '@emotion/css';
|
|
2
|
-
import { useStyles2 } from '@grafana/ui';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
import { SceneObjectBase } from '../core/SceneObjectBase.js';
|
|
5
|
-
import { setWindowGrafanaSceneContext } from '../utils/compatibility/setWindowGrafanaSceneContext.js';
|
|
6
|
-
|
|
7
|
-
class EmbeddedScene extends SceneObjectBase {
|
|
8
|
-
constructor(state) {
|
|
9
|
-
super(state);
|
|
10
|
-
this.addActivationHandler(() => {
|
|
11
|
-
const unsetGlobalScene = setWindowGrafanaSceneContext(this);
|
|
12
|
-
return () => {
|
|
13
|
-
unsetGlobalScene();
|
|
14
|
-
};
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
EmbeddedScene.Component = EmbeddedSceneRenderer;
|
|
19
|
-
function EmbeddedSceneRenderer({ model }) {
|
|
20
|
-
const { body, controls } = model.useState();
|
|
21
|
-
const styles = useStyles2(getStyles);
|
|
22
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
23
|
-
className: styles.container
|
|
24
|
-
}, controls && /* @__PURE__ */ React.createElement("div", {
|
|
25
|
-
className: styles.controls
|
|
26
|
-
}, controls.map((control) => /* @__PURE__ */ React.createElement(control.Component, {
|
|
27
|
-
key: control.state.key,
|
|
28
|
-
model: control
|
|
29
|
-
}))), /* @__PURE__ */ React.createElement("div", {
|
|
30
|
-
className: styles.body
|
|
31
|
-
}, /* @__PURE__ */ React.createElement(body.Component, {
|
|
32
|
-
model: body
|
|
33
|
-
})));
|
|
34
|
-
}
|
|
35
|
-
const getStyles = (theme) => {
|
|
36
|
-
return {
|
|
37
|
-
container: css({
|
|
38
|
-
flexGrow: 1,
|
|
39
|
-
display: "flex",
|
|
40
|
-
gap: theme.spacing(2),
|
|
41
|
-
minHeight: "100%",
|
|
42
|
-
flexDirection: "column"
|
|
43
|
-
}),
|
|
44
|
-
body: css({
|
|
45
|
-
flexGrow: 1,
|
|
46
|
-
display: "flex",
|
|
47
|
-
gap: theme.spacing(1)
|
|
48
|
-
}),
|
|
49
|
-
controls: css({
|
|
50
|
-
display: "flex",
|
|
51
|
-
gap: theme.spacing(2),
|
|
52
|
-
alignItems: "flex-end",
|
|
53
|
-
flexWrap: "wrap"
|
|
54
|
-
})
|
|
55
|
-
};
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export { EmbeddedScene };
|
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW1iZWRkZWRTY2VuZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRW1iZWRkZWRTY2VuZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcbmltcG9ydCB7IEdyYWZhbmFUaGVtZTIgfSBmcm9tICdAZ3JhZmFuYS9kYXRhJztcbmltcG9ydCB7IHVzZVN0eWxlczIgfSBmcm9tICdAZ3JhZmFuYS91aSc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBTY2VuZU9iamVjdEJhc2UgfSBmcm9tICcuLi9jb3JlL1NjZW5lT2JqZWN0QmFzZSc7XG5pbXBvcnQgeyBTY2VuZUNvbXBvbmVudFByb3BzLCBTY2VuZU9iamVjdFN0YXRlLCBTY2VuZU9iamVjdCB9IGZyb20gJy4uL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgc2V0V2luZG93R3JhZmFuYVNjZW5lQ29udGV4dCB9IGZyb20gJy4uL3V0aWxzL2NvbXBhdGliaWxpdHkvc2V0V2luZG93R3JhZmFuYVNjZW5lQ29udGV4dCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1iZWRkZWRTY2VuZVN0YXRlIGV4dGVuZHMgU2NlbmVPYmplY3RTdGF0ZSB7XG4gIC8qKlxuICAgKiBUaGUgbWFpbiBjb250ZW50IG9mIHRoZSBzY2VuZSAodXN1YWxseSBhIFNjZW5lRmxleExheW91dClcbiAgICovXG4gIGJvZHk6IFNjZW5lT2JqZWN0O1xuICAvKipcbiAgICogVG9wIHJvdyBvZiB2YXJpYWJsZSBzZWxlY3RvcnMsIGZpbHRlcnMsIHRpbWUgcGlja2VycyBhbmQgY3VzdG9tIGFjdGlvbnMuXG4gICAqL1xuICBjb250cm9scz86IFNjZW5lT2JqZWN0W107XG4gIC8qKlxuICAgKiBGb3IgaW50ZXJvcGVyYWJpbGl0eSAodXNlZCBmcm9tIEVtYmVkZGVkU2NlbmVXaXRoQ29udGV4dClcbiAgICovXG4gIGNvbnRleHQ/OiBTY2VuZU9iamVjdDtcbn1cblxuZXhwb3J0IGNsYXNzIEVtYmVkZGVkU2NlbmUgZXh0ZW5kcyBTY2VuZU9iamVjdEJhc2U8RW1iZWRkZWRTY2VuZVN0YXRlPiB7XG4gIHB1YmxpYyBzdGF0aWMgQ29tcG9uZW50ID0gRW1iZWRkZWRTY2VuZVJlbmRlcmVyO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzdGF0ZTogRW1iZWRkZWRTY2VuZVN0YXRlKSB7XG4gICAgc3VwZXIoc3RhdGUpO1xuXG4gICAgdGhpcy5hZGRBY3RpdmF0aW9uSGFuZGxlcigoKSA9PiB7XG4gICAgICAvLyBUaGlzIGZ1bmN0aW9uIGlzIHNldHRpbmcgd2luZG93Ll9fZ3JhZmFuYVNjZW5lQ29udGV4dCB3aGljaCBpcyB1c2VkIGZyb20gR3JhZmFuYSBjb3JlIGluIHRoZSBvbGQgc2VydmljZXMgVGltZVNydiBhbmQgVGVtcGxhdGVTcnYuXG4gICAgICAvLyBUaGlzIHdvcmtzIGFzIGEgYmFja3dhcmQgY29tcGF0YWJpbGl0eSBtZXRob2QgdG8gc3VwcG9ydCBhY2Nlc3Npbmcgc2NlbmUgdGltZSByYW5nZSBhbmQgdmFyaWFibGVzIGZyb20gdGhvc2Ugb2xkIHNlcnZpY2VzLlxuICAgICAgY29uc3QgdW5zZXRHbG9iYWxTY2VuZSA9IHNldFdpbmRvd0dyYWZhbmFTY2VuZUNvbnRleHQodGhpcyk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICB1bnNldEdsb2JhbFNjZW5lKCk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIEVtYmVkZGVkU2NlbmVSZW5kZXJlcih7IG1vZGVsIH06IFNjZW5lQ29tcG9uZW50UHJvcHM8RW1iZWRkZWRTY2VuZT4pIHtcbiAgY29uc3QgeyBib2R5LCBjb250cm9scyB9ID0gbW9kZWwudXNlU3RhdGUoKTtcbiAgY29uc3Qgc3R5bGVzID0gdXNlU3R5bGVzMihnZXRTdHlsZXMpO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5jb250YWluZXJ9PlxuICAgICAge2NvbnRyb2xzICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5jb250cm9sc30+XG4gICAgICAgICAge2NvbnRyb2xzLm1hcCgoY29udHJvbCkgPT4gKFxuICAgICAgICAgICAgPGNvbnRyb2wuQ29tcG9uZW50IGtleT17Y29udHJvbC5zdGF0ZS5rZXl9IG1vZGVsPXtjb250cm9sfSAvPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmJvZHl9PlxuICAgICAgICA8Ym9keS5Db21wb25lbnQgbW9kZWw9e2JvZHl9IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgZ2V0U3R5bGVzID0gKHRoZW1lOiBHcmFmYW5hVGhlbWUyKSA9PiB7XG4gIHJldHVybiB7XG4gICAgY29udGFpbmVyOiBjc3Moe1xuICAgICAgZmxleEdyb3c6IDEsXG4gICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICBnYXA6IHRoZW1lLnNwYWNpbmcoMiksXG4gICAgICBtaW5IZWlnaHQ6ICcxMDAlJyxcbiAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgIH0pLFxuICAgIGJvZHk6IGNzcyh7XG4gICAgICBmbGV4R3JvdzogMSxcbiAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgIGdhcDogdGhlbWUuc3BhY2luZygxKSxcbiAgICB9KSxcbiAgICBjb250cm9sczogY3NzKHtcbiAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgIGdhcDogdGhlbWUuc3BhY2luZygyKSxcbiAgICAgIGFsaWduSXRlbXM6ICdmbGV4LWVuZCcsXG4gICAgICBmbGV4V3JhcDogJ3dyYXAnLFxuICAgIH0pLFxuICB9O1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUF3Qk8sTUFBTSxzQkFBc0IsZUFBb0MsQ0FBQTtBQUFBLEVBRzlELFlBQVksS0FBMkIsRUFBQTtB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
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { cx, css } from '@emotion/css';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import { useStyles2, ToolbarButton, Icon } from '@grafana/ui';
|
|
4
|
-
import { SceneObjectBase } from '../core/SceneObjectBase.js';
|
|
5
|
-
import { getSceneGridRowStyles } from './layout/grid/SceneGridRow.js';
|
|
6
|
-
import { sceneGraph } from '../core/sceneGraph/index.js';
|
|
7
|
-
|
|
8
|
-
class NestedScene extends SceneObjectBase {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.onToggle = () => {
|
|
12
|
-
this.setState({
|
|
13
|
-
isCollapsed: !this.state.isCollapsed
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
this.onRemove = () => {
|
|
17
|
-
const parent = this.parent;
|
|
18
|
-
if (isSceneLayoutItem(parent)) {
|
|
19
|
-
parent.setState({
|
|
20
|
-
body: void 0
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
NestedScene.Component = NestedSceneRenderer;
|
|
27
|
-
function NestedSceneRenderer({ model }) {
|
|
28
|
-
const { title, isCollapsed, canCollapse, canRemove, body, controls } = model.useState();
|
|
29
|
-
const gridRow = useStyles2(getSceneGridRowStyles);
|
|
30
|
-
const styles = useStyles2(getStyles);
|
|
31
|
-
const toolbarControls = (controls != null ? controls : []).map((action) => /* @__PURE__ */ React.createElement(action.Component, {
|
|
32
|
-
key: action.state.key,
|
|
33
|
-
model: action
|
|
34
|
-
}));
|
|
35
|
-
if (canRemove) {
|
|
36
|
-
toolbarControls.push(
|
|
37
|
-
/* @__PURE__ */ React.createElement(ToolbarButton, {
|
|
38
|
-
icon: "times",
|
|
39
|
-
variant: "default",
|
|
40
|
-
onClick: model.onRemove,
|
|
41
|
-
key: "remove-button",
|
|
42
|
-
"aria-label": "Remove scene"
|
|
43
|
-
})
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
47
|
-
className: styles.wrapper
|
|
48
|
-
}, /* @__PURE__ */ React.createElement("div", {
|
|
49
|
-
className: cx(styles.row, isCollapsed && styles.rowCollapsed)
|
|
50
|
-
}, /* @__PURE__ */ React.createElement("button", {
|
|
51
|
-
onClick: model.onToggle,
|
|
52
|
-
className: gridRow.rowTitleButton,
|
|
53
|
-
"aria-label": isCollapsed ? "Expand scene" : "Collapse scene"
|
|
54
|
-
}, canCollapse && /* @__PURE__ */ React.createElement(Icon, {
|
|
55
|
-
name: isCollapsed ? "angle-right" : "angle-down"
|
|
56
|
-
}), /* @__PURE__ */ React.createElement("span", {
|
|
57
|
-
className: gridRow.rowTitle,
|
|
58
|
-
role: "heading"
|
|
59
|
-
}, sceneGraph.interpolate(model, title, void 0, "text"))), /* @__PURE__ */ React.createElement("div", {
|
|
60
|
-
className: styles.actions
|
|
61
|
-
}, toolbarControls)), !isCollapsed && /* @__PURE__ */ React.createElement(body.Component, {
|
|
62
|
-
model: body
|
|
63
|
-
}));
|
|
64
|
-
}
|
|
65
|
-
const getStyles = (theme) => ({
|
|
66
|
-
wrapper: css({
|
|
67
|
-
display: "flex",
|
|
68
|
-
flexDirection: "column",
|
|
69
|
-
flexGrow: 1,
|
|
70
|
-
gap: theme.spacing(1)
|
|
71
|
-
}),
|
|
72
|
-
row: css({
|
|
73
|
-
width: "100%",
|
|
74
|
-
display: "flex",
|
|
75
|
-
justifyContent: "space-between",
|
|
76
|
-
gap: theme.spacing(1)
|
|
77
|
-
}),
|
|
78
|
-
rowCollapsed: css({
|
|
79
|
-
borderBottom: `1px solid ${theme.colors.border.weak}`,
|
|
80
|
-
paddingBottom: theme.spacing(1)
|
|
81
|
-
}),
|
|
82
|
-
actions: css({
|
|
83
|
-
display: "flex",
|
|
84
|
-
alignItems: "center",
|
|
85
|
-
gap: theme.spacing(1),
|
|
86
|
-
justifyContent: "flex-end",
|
|
87
|
-
flexGrow: 1
|
|
88
|
-
})
|
|
89
|
-
});
|
|
90
|
-
function isSceneLayoutItem(x) {
|
|
91
|
-
return "body" in x.state;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
export { NestedScene, NestedSceneRenderer };
|
|
95
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmVzdGVkU2NlbmUuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL05lc3RlZFNjZW5lLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIGN4IH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IEdyYWZhbmFUaGVtZTIgfSBmcm9tICdAZ3JhZmFuYS9kYXRhJztcbmltcG9ydCB7IEljb24sIFRvb2xiYXJCdXR0b24sIHVzZVN0eWxlczIgfSBmcm9tICdAZ3JhZmFuYS91aSc7XG5cbmltcG9ydCB7IFNjZW5lT2JqZWN0QmFzZSB9IGZyb20gJy4uL2NvcmUvU2NlbmVPYmplY3RCYXNlJztcbmltcG9ydCB7IFNjZW5lT2JqZWN0LCBTY2VuZUNvbXBvbmVudFByb3BzLCBTY2VuZUxheW91dCwgU2NlbmVPYmplY3RTdGF0ZSB9IGZyb20gJy4uL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0U2NlbmVHcmlkUm93U3R5bGVzIH0gZnJvbSAnLi9sYXlvdXQvZ3JpZC9TY2VuZUdyaWRSb3cnO1xuaW1wb3J0IHsgc2NlbmVHcmFwaCB9IGZyb20gJy4uL2NvcmUvc2NlbmVHcmFwaCc7XG5cbmludGVyZmFjZSBOZXN0ZWRTY2VuZVN0YXRlIGV4dGVuZHMgU2NlbmVPYmplY3RTdGF0ZSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGlzQ29sbGFwc2VkPzogYm9vbGVhbjtcbiAgY2FuQ29sbGFwc2U/OiBib29sZWFuO1xuICBjYW5SZW1vdmU/OiBib29sZWFuO1xuICBib2R5OiBTY2VuZUxheW91dDtcbiAgY29udHJvbHM/OiBTY2VuZU9iamVjdFtdO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICogUE9DIHN0YXR1cywgZG9uJ3QgdXNlIHRoaXMgeWV0XG4gKi9cbmV4cG9ydCBjbGFzcyBOZXN0ZWRTY2VuZSBleHRlbmRzIFNjZW5lT2JqZWN0QmFzZTxOZXN0ZWRTY2VuZVN0YXRlPiB7XG4gIHB1YmxpYyBzdGF0aWMgQ29tcG9uZW50ID0gTmVzdGVkU2NlbmVSZW5kZXJlcjtcblxuICBwdWJsaWMgb25Ub2dnbGUgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBpc0NvbGxhcHNlZDogIXRoaXMuc3RhdGUuaXNDb2xsYXBzZWQsXG4gICAgfSk7XG4gIH07XG5cbiAgLyoqIFJlbW92ZXMgaXRzZWxmIGZyb20gaXRzIHBhcmVudCdzIGNoaWxkcmVuIGFycmF5ICovXG4gIHB1YmxpYyBvblJlbW92ZSA9ICgpID0+IHtcbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLnBhcmVudCE7XG5cbiAgICBpZiAoaXNTY2VuZUxheW91dEl0ZW0ocGFyZW50KSkge1xuICAgICAgcGFyZW50LnNldFN0YXRlKHtcbiAgICAgICAgYm9keTogdW5kZWZpbmVkLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gTmVzdGVkU2NlbmVSZW5kZXJlcih7IG1vZGVsIH06IFNjZW5lQ29tcG9uZW50UHJvcHM8TmVzdGVkU2NlbmU+KSB7XG4gIGNvbnN0IHsgdGl0bGUsIGlzQ29sbGFwc2VkLCBjYW5Db2xsYXBzZSwgY2FuUmVtb3ZlLCBib2R5LCBjb250cm9scyB9ID0gbW9kZWwudXNlU3RhdGUoKTtcbiAgY29uc3QgZ3JpZFJvdyA9IHVzZVN0eWxlczIoZ2V0U2NlbmVHcmlkUm93U3R5bGVzKTtcbiAgY29uc3Qgc3R5bGVzID0gdXNlU3R5bGVzMihnZXRTdHlsZXMpO1xuXG4gIGNvbnN0IHRvb2xiYXJDb250cm9scyA9IChjb250cm9scyA/PyBbXSkubWFwKChhY3Rpb24pID0+IDxhY3Rpb24uQ29tcG9uZW50IGtleT17YWN0aW9uLnN0YXRlLmtleX0gbW9kZWw9e2FjdGlvbn0gLz4pO1xuXG4gIGlmIChjYW5SZW1vdmUpIHtcbiAgICB0b29sYmFyQ29udHJvbHMucHVzaChcbiAgICAgIDxUb29sYmFyQnV0dG9uXG4gICAgICAgIGljb249XCJ0aW1lc1wiXG4gICAgICAgIHZhcmlhbnQ9eydkZWZhdWx0J31cbiAgICAgICAgb25DbGljaz17bW9kZWwub25SZW1vdmV9XG4gICAgICAgIGtleT1cInJlbW92ZS1idXR0b25cIlxuICAgICAgICBhcmlhLWxhYmVsPVwiUmVtb3ZlIHNjZW5lXCJcbiAgICAgIC8+XG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy53cmFwcGVyfT5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjeChzdHlsZXMucm93LCBpc0NvbGxhcHNlZCAmJiBzdHlsZXMucm93Q29sbGFwc2VkKX0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBvbkNsaWNrPXttb2RlbC5vblRvZ2dsZX1cbiAgICAgICAgICBjbGFzc05hbWU9e2dyaWRSb3cucm93VGl0bGVCdXR0b259XG4gICAgICAgICAgYXJpYS1sYWJlbD17aXNDb2xsYXBzZWQgPyAnRXhwYW5kIHNjZW5lJyA6ICdDb2xsYXBzZSBzY2VuZSd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2FuQ29sbGFwc2UgJiYgPEljb24gbmFtZT17aXNDb2xsYXBzZWQgPyAnYW5nbGUtcmlnaHQnIDogJ2FuZ2xlLWRvd24nfSAvPn1cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dyaWRSb3cucm93VGl0bGV9IHJvbGU9XCJoZWFkaW5nXCI+XG4gICAgICAgICAgICB7c2NlbmVHcmFwaC5pbnRlcnBvbGF0ZShtb2RlbCwgdGl0bGUsIHVuZGVmaW5lZCwgJ3RleHQnKX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmFjdGlvbnN9Pnt0b29sYmFyQ29udHJvbHN9PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIHshaXNDb2xsYXBzZWQgJiYgPGJvZHkuQ29tcG9uZW50IG1vZGVsPXtib2R5fSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgZ2V0U3R5bGVzID0gKHRoZW1lOiBHcmFmYW5hVGhlbWUyKSA9PiAoe1xuICB3cmFwcGVyOiBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICBmbGV4R3JvdzogMSxcbiAgICBnYXA6IHRoZW1lLnNwYWNpbmcoMSksXG4gIH0pLFxuICByb3c6IGNzcyh7XG4gICAgd2lkdGg6ICcxMDAlJyxcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcbiAgICBnYXA6IHRoZW1lLnNwYWNpbmcoMSksXG4gIH0pLFxuICByb3dDb2xsYXBzZWQ6IGNzcyh7XG4gICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUuY29sb3JzLmJvcmRlci53ZWFrfWAsXG4gICAgcGFkZGluZ0JvdHRvbTogdGhlbWUuc3BhY2luZygxKSxcbiAgfSksXG4gIGFjdGlvbnM6IGNzcyh7XG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIGdhcDogdGhlbWUuc3BhY2luZygxKSxcbiAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtZW5kJyxcbiAgICBmbGV4R3JvdzogMSxcbiAgfSksXG59KTtcblxuZnVuY3Rpb24gaXNTY2VuZUxheW91dEl0ZW0oeDogU2NlbmVPYmplY3QpOiB4IGlzIFNjZW5lT2JqZWN0PFNjZW5lT2JqZWN0U3RhdGUgJiB7IGJvZHk6IFNjZW5lT2JqZWN0IHwgdW5kZWZpbmVkIH0+IHtcbiAgcmV0dXJuICdib2R5JyBpbiB4LnN0YXRlO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUF3Qk8sTUFBTSxvQkFBb0IsZUFBa0MsQ0FBQTtBQUFBLEVBQTVELFdBQUEsR0FBQTtBQUFBLElBQUEsS0FBQSxDQUFBLEdBQUEsU0FBQSxDQUFBLENBQUE7QUFHTCxJQUFBLElBQUEsQ0FBTyxXQUFXLE1BQU07QUFDdEIsTUFBQSxJQUFBLENBQUss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
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import React, { createContext } from 'react';
|
|
2
|
-
import { Switch, Route } from 'react-router-dom';
|
|
3
|
-
import { SceneObjectBase } from '../../core/SceneObjectBase.js';
|
|
4
|
-
import { renderSceneComponentWithRouteProps } from './utils.js';
|
|
5
|
-
|
|
6
|
-
class SceneApp extends SceneObjectBase {
|
|
7
|
-
enrichDataRequest() {
|
|
8
|
-
return {
|
|
9
|
-
app: this.state.name || "app"
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
SceneApp.Component = ({ model }) => {
|
|
14
|
-
const { pages } = model.useState();
|
|
15
|
-
return /* @__PURE__ */ React.createElement(SceneAppContext.Provider, {
|
|
16
|
-
value: model
|
|
17
|
-
}, /* @__PURE__ */ React.createElement(Switch, null, pages.map((page) => /* @__PURE__ */ React.createElement(Route, {
|
|
18
|
-
key: page.state.url,
|
|
19
|
-
exact: false,
|
|
20
|
-
path: page.state.url,
|
|
21
|
-
render: (props) => renderSceneComponentWithRouteProps(page, props)
|
|
22
|
-
}))));
|
|
23
|
-
};
|
|
24
|
-
const SceneAppContext = createContext(null);
|
|
25
|
-
const sceneAppCache = /* @__PURE__ */ new Map();
|
|
26
|
-
function useSceneApp(factory) {
|
|
27
|
-
const cachedApp = sceneAppCache.get(factory);
|
|
28
|
-
if (cachedApp) {
|
|
29
|
-
return cachedApp;
|
|
30
|
-
}
|
|
31
|
-
const newApp = factory();
|
|
32
|
-
sceneAppCache.set(factory, newApp);
|
|
33
|
-
return newApp;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export { SceneApp, SceneAppContext, useSceneApp };
|
|
37
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NlbmVBcHAuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1NjZW5lQXBwL1NjZW5lQXBwLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgY3JlYXRlQ29udGV4dCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFJvdXRlLCBTd2l0Y2ggfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcblxuaW1wb3J0IHsgRGF0YVJlcXVlc3RFbnJpY2hlciwgU2NlbmVDb21wb25lbnRQcm9wcyB9IGZyb20gJy4uLy4uL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgU2NlbmVPYmplY3RCYXNlIH0gZnJvbSAnLi4vLi4vY29yZS9TY2VuZU9iamVjdEJhc2UnO1xuaW1wb3J0IHsgU2NlbmVBcHBTdGF0ZSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgcmVuZGVyU2NlbmVDb21wb25lbnRXaXRoUm91dGVQcm9wcyB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFJlc3BvbnNpYmxlIGZvciB0b3AgbGV2ZWwgcGFnZXMgcm91dGluZ1xuICovXG5leHBvcnQgY2xhc3MgU2NlbmVBcHAgZXh0ZW5kcyBTY2VuZU9iamVjdEJhc2U8U2NlbmVBcHBTdGF0ZT4gaW1wbGVtZW50cyBEYXRhUmVxdWVzdEVucmljaGVyIHtcbiAgcHVibGljIGVucmljaERhdGFSZXF1ZXN0KCkge1xuICAgIHJldHVybiB7XG4gICAgICBhcHA6IHRoaXMuc3RhdGUubmFtZSB8fCAnYXBwJyxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBDb21wb25lbnQgPSAoeyBtb2RlbCB9OiBTY2VuZUNvbXBvbmVudFByb3BzPFNjZW5lQXBwPikgPT4ge1xuICAgIGNvbnN0IHsgcGFnZXMgfSA9IG1vZGVsLnVzZVN0YXRlKCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFNjZW5lQXBwQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17bW9kZWx9PlxuICAgICAgICA8U3dpdGNoPlxuICAgICAgICAgIHtwYWdlcy5tYXAoKHBhZ2UpID0+IChcbiAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICBrZXk9e3BhZ2Uuc3RhdGUudXJsfVxuICAgICAgICAgICAgICBleGFjdD17ZmFsc2V9XG4gICAgICAgICAgICAgIHBhdGg9e3BhZ2Uuc3RhdGUudXJsfVxuICAgICAgICAgICAgICByZW5kZXI9eyhwcm9wcykgPT4gcmVuZGVyU2NlbmVDb21wb25lbnRXaXRoUm91dGVQcm9wcyhwYWdlLCBwcm9wcyl9XG4gICAgICAgICAgICA+PC9Sb3V0ZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Td2l0Y2g+XG4gICAgICA8L1NjZW5lQXBwQ29udGV4dC5Qcm92aWRlcj5cbiAgICApO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgU2NlbmVBcHBDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxTY2VuZUFwcCB8IG51bGw+KG51bGwpO1xuXG5jb25zdCBzY2VuZUFwcENhY2hlID0gbmV3IE1hcDxvYmplY3QsIFNjZW5lQXBwPigpO1xuXG4vKipcbiAqIENhY2hlcyB0aGUgdGhlIHJlc3VsdGluZyBTY2VuZUFwcCByZXR1cm5lZCBieSB0aGUgZmFjdG9yeSBmdW5jdGlvbiBzbyB0aGF0IGl0J3Mgb25seSBjYWxsZWQgb25jZSBkdXJpbmcgdGhlIGxpZmV0aW1lIG9mIHRoZSBicm93c2VyIHRhYlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlU2NlbmVBcHAoZmFjdG9yeTogKCkgPT4gU2NlbmVBcHApIHtcbiAgY29uc3QgY2FjaGVkQXBwID0gc2NlbmVBcHBDYWNoZS5nZXQoZmFjdG9yeSk7XG5cbiAgaWYgKGNhY2hlZEFwcCkge1xuICAgIHJldHVybiBjYWNoZWRBcHA7XG4gIH1cblxuICBjb25zdCBuZXdBcHAgPSBmYWN0b3J5KCk7XG4gIHNjZW5lQXBwQ2FjaGUuc2V0KGZhY3RvcnksIG5ld0FwcCk7XG5cbiAgcmV0dXJuIG5ld0FwcDtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVdPLE1BQU0saUJBQWlCLGVBQThELENBQUE7QUFBQSxFQUNuRixpQkFBb0IsR0FBQTtBQUN6QixJQUFPLE9BQUE7QUFBQSxNQUNMLEdBQUEsRUFBSyxJQUFLLENBQUEsS0FBQSxDQUFNLElBQVEsSUFBQSxLQUFBO0FBQUEsS0FDMUIsQ0FBQTtBQUFBLEdBQ0Y7QUFvQkYsQ0FBQTtBQXpCYSxRQUFBLENBT0csU0FBWSxHQUFBLENBQUMsRUFBRSxLQUFBLEVBQTJDLEtBQUE7QUFDdEUsRUFBQSxNQUFNLEVBQUUsS0FBQSxFQUFVLEdBQUEsS0FBQSxDQUFNLFFBQVMsRUFBQSxDQUFBO0FBRWpDLEVBQ0UsdUJBQUEsS0FBQSxDQUFBLGFBQUEsQ0FBQyxnQkFBZ0IsUUFBaEIsRUFBQTtBQUFBLElBQXlCLEtBQU8sRUFBQSxLQUFBO0FBQUEsR0FBQSxzQ0FDOUIsTUFDRSxFQUFBLElBQUEsRUFBQSxLQUFBLENBQU0sR0FBSSxDQUFBLENBQUMseUJBQ1QsS0FBQSxDQUFBLGFBQUEsQ0FBQSxLQUFBLEVBQUE7QUFBQSxJQUNDLEdBQUEsRUFBSyxLQUFLLEtBQU0sQ0FBQSxHQUFBO0FBQUEsSUFDaEIsS0FBTyxFQUFBLEtBQUE7QUFBQSxJQUNQLElBQUEsRUFBTSxLQUFLLEtBQU0sQ0FBQSxHQUFBO0FBQUEsSUFDakIsTUFBUSxFQUFBLENBQUMsS0FBVSxLQUFBLGtDQUFBLENBQW1DLE1BQU0sS0FBSyxDQUFBO0FBQUEsR0FDbEUsQ0FDRixDQUNILENBQ0YsQ0FBQSxDQUFBO0FBRUosQ0FBQSxDQUFBO0FBR1csTUFBQSxlQUFBLEdBQWtCLGNBQStCLElBQUksRUFBQTtBQUVsRSxNQUFNLGFBQUEsdUJBQW9CLEdBQXNCLEVBQUEsQ0FBQTtBQUt6QyxTQUFTLFlBQVksT0FBeUIsRUFBQTtBQUNuRCxFQUFNLE1BQUEsU0FBQSxHQUFZLGFBQWMsQ0FBQSxHQUFBLENBQUksT0FBTyxDQUFBLENBQUE7QUFFM0MsRUFBQSxJQUFJLFNBQVcsRUFBQTtBQUNiLElBQU8sT0FBQSxTQUFBLENBQUE7QUFBQSxHQUNUO0FBRUEsRUFBQSxNQUFNLFNBQVMsT0FBUSxFQUFBLENBQUE7QUFDdkIsRUFBYyxhQUFBLENBQUEsR0FBQSxDQUFJLFNBQVMsTUFBTSxDQUFBLENBQUE7QUFFakMsRUFBTyxPQUFBLE1BQUEsQ0FBQTtBQUNUOzs7OyJ9
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Route, Switch } from 'react-router-dom';
|
|
3
|
-
import { SceneObjectBase } from '../../core/SceneObjectBase.js';
|
|
4
|
-
import { isDataRequestEnricher } from '../../core/types.js';
|
|
5
|
-
import { EmbeddedScene } from '../EmbeddedScene.js';
|
|
6
|
-
import { SceneFlexLayout, SceneFlexItem } from '../layout/SceneFlexLayout.js';
|
|
7
|
-
import { SceneReactObject } from '../SceneReactObject.js';
|
|
8
|
-
import { SceneAppDrilldownViewRender, SceneAppPageView } from './SceneAppPageView.js';
|
|
9
|
-
import { renderSceneComponentWithRouteProps } from './utils.js';
|
|
10
|
-
|
|
11
|
-
class SceneAppPage extends SceneObjectBase {
|
|
12
|
-
constructor(state) {
|
|
13
|
-
super(state);
|
|
14
|
-
this._sceneCache = /* @__PURE__ */ new Map();
|
|
15
|
-
this._drilldownCache = /* @__PURE__ */ new Map();
|
|
16
|
-
}
|
|
17
|
-
initializeScene(scene) {
|
|
18
|
-
this.setState({ initializedScene: scene });
|
|
19
|
-
}
|
|
20
|
-
getScene(routeMatch) {
|
|
21
|
-
let scene = this._sceneCache.get(routeMatch.url);
|
|
22
|
-
if (scene) {
|
|
23
|
-
return scene;
|
|
24
|
-
}
|
|
25
|
-
if (!this.state.getScene) {
|
|
26
|
-
throw new Error("Missing getScene on SceneAppPage " + this.state.title);
|
|
27
|
-
}
|
|
28
|
-
scene = this.state.getScene(routeMatch);
|
|
29
|
-
this._sceneCache.set(routeMatch.url, scene);
|
|
30
|
-
return scene;
|
|
31
|
-
}
|
|
32
|
-
getDrilldownPage(drilldown, routeMatch) {
|
|
33
|
-
let page = this._drilldownCache.get(routeMatch.url);
|
|
34
|
-
if (page) {
|
|
35
|
-
return page;
|
|
36
|
-
}
|
|
37
|
-
page = drilldown.getPage(routeMatch, this);
|
|
38
|
-
this._drilldownCache.set(routeMatch.url, page);
|
|
39
|
-
return page;
|
|
40
|
-
}
|
|
41
|
-
enrichDataRequest(source) {
|
|
42
|
-
if (this.state.getParentPage) {
|
|
43
|
-
return this.state.getParentPage().enrichDataRequest(source);
|
|
44
|
-
}
|
|
45
|
-
if (!this.parent) {
|
|
46
|
-
return null;
|
|
47
|
-
}
|
|
48
|
-
const root = this.getRoot();
|
|
49
|
-
if (isDataRequestEnricher(root)) {
|
|
50
|
-
return root.enrichDataRequest(source);
|
|
51
|
-
}
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
SceneAppPage.Component = SceneAppPageRenderer;
|
|
56
|
-
function SceneAppPageRenderer({ model, routeProps }) {
|
|
57
|
-
var _a, _b;
|
|
58
|
-
const { tabs, drilldowns } = model.useState();
|
|
59
|
-
const routes = [];
|
|
60
|
-
if (tabs && tabs.length > 0) {
|
|
61
|
-
for (let tabIndex = 0; tabIndex < tabs.length; tabIndex++) {
|
|
62
|
-
const tab = tabs[tabIndex];
|
|
63
|
-
if (tabIndex === 0) {
|
|
64
|
-
routes.push(
|
|
65
|
-
/* @__PURE__ */ React.createElement(Route, {
|
|
66
|
-
exact: true,
|
|
67
|
-
key: model.state.url,
|
|
68
|
-
path: (_a = model.state.routePath) != null ? _a : model.state.url,
|
|
69
|
-
render: (props) => renderSceneComponentWithRouteProps(tab, props)
|
|
70
|
-
})
|
|
71
|
-
);
|
|
72
|
-
}
|
|
73
|
-
routes.push(
|
|
74
|
-
/* @__PURE__ */ React.createElement(Route, {
|
|
75
|
-
exact: true,
|
|
76
|
-
key: tab.state.url,
|
|
77
|
-
path: (_b = tab.state.routePath) != null ? _b : tab.state.url,
|
|
78
|
-
render: (props) => renderSceneComponentWithRouteProps(tab, props)
|
|
79
|
-
})
|
|
80
|
-
);
|
|
81
|
-
if (tab.state.drilldowns) {
|
|
82
|
-
for (const drilldown of tab.state.drilldowns) {
|
|
83
|
-
routes.push(
|
|
84
|
-
/* @__PURE__ */ React.createElement(Route, {
|
|
85
|
-
exact: false,
|
|
86
|
-
key: drilldown.routePath,
|
|
87
|
-
path: drilldown.routePath,
|
|
88
|
-
render: (props) => /* @__PURE__ */ React.createElement(SceneAppDrilldownViewRender, {
|
|
89
|
-
drilldown,
|
|
90
|
-
parent: tab,
|
|
91
|
-
routeProps: props
|
|
92
|
-
})
|
|
93
|
-
})
|
|
94
|
-
);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
if (drilldowns) {
|
|
100
|
-
for (const drilldown of drilldowns) {
|
|
101
|
-
routes.push(
|
|
102
|
-
/* @__PURE__ */ React.createElement(Route, {
|
|
103
|
-
key: drilldown.routePath,
|
|
104
|
-
exact: false,
|
|
105
|
-
path: drilldown.routePath,
|
|
106
|
-
render: (props) => /* @__PURE__ */ React.createElement(SceneAppDrilldownViewRender, {
|
|
107
|
-
drilldown,
|
|
108
|
-
parent: model,
|
|
109
|
-
routeProps: props
|
|
110
|
-
})
|
|
111
|
-
})
|
|
112
|
-
);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
if (!tabs && isCurrentPageRouteMatch(model, routeProps.match)) {
|
|
116
|
-
return /* @__PURE__ */ React.createElement(SceneAppPageView, {
|
|
117
|
-
page: model,
|
|
118
|
-
routeProps
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
routes.push(getFallbackRoute(model, routeProps));
|
|
122
|
-
return /* @__PURE__ */ React.createElement(Switch, null, routes);
|
|
123
|
-
}
|
|
124
|
-
function getFallbackRoute(page, routeProps) {
|
|
125
|
-
return /* @__PURE__ */ React.createElement(Route, {
|
|
126
|
-
key: "fallback route",
|
|
127
|
-
render: (props) => {
|
|
128
|
-
var _a, _b, _c;
|
|
129
|
-
const fallbackPage = (_c = (_b = (_a = page.state).getFallbackPage) == null ? void 0 : _b.call(_a)) != null ? _c : getDefaultFallbackPage();
|
|
130
|
-
return /* @__PURE__ */ React.createElement(SceneAppPageView, {
|
|
131
|
-
page: fallbackPage,
|
|
132
|
-
routeProps
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
function isCurrentPageRouteMatch(page, match) {
|
|
138
|
-
if (!match.isExact) {
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
|
-
if (match.url === page.state.url) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
if (page.parent instanceof SceneAppPage && page.parent.state.tabs[0] === page && page.parent.state.url === match.url) {
|
|
145
|
-
return true;
|
|
146
|
-
}
|
|
147
|
-
return false;
|
|
148
|
-
}
|
|
149
|
-
function getDefaultFallbackPage() {
|
|
150
|
-
return new SceneAppPage({
|
|
151
|
-
url: "",
|
|
152
|
-
title: "Not found",
|
|
153
|
-
subTitle: "The url did not match any page",
|
|
154
|
-
getScene: () => {
|
|
155
|
-
return new EmbeddedScene({
|
|
156
|
-
body: new SceneFlexLayout({
|
|
157
|
-
direction: "column",
|
|
158
|
-
children: [
|
|
159
|
-
new SceneFlexItem({
|
|
160
|
-
body: new SceneReactObject({
|
|
161
|
-
component: () => {
|
|
162
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
163
|
-
"data-testid": "default-fallback-content"
|
|
164
|
-
}, "If you found your way here using a link then there might be a bug in this application.");
|
|
165
|
-
}
|
|
166
|
-
})
|
|
167
|
-
})
|
|
168
|
-
]
|
|
169
|
-
})
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
export { SceneAppPage };
|
|
176
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NlbmVBcHBQYWdlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9TY2VuZUFwcC9TY2VuZUFwcFBhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBSb3V0ZSwgUm91dGVDb21wb25lbnRQcm9wcywgU3dpdGNoIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBTY2VuZU9iamVjdEJhc2UgfSBmcm9tICcuLi8uLi9jb3JlL1NjZW5lT2JqZWN0QmFzZSc7XG5pbXBvcnQgeyBTY2VuZUNvbXBvbmVudFByb3BzLCBTY2VuZU9iamVjdCwgaXNEYXRhUmVxdWVzdEVucmljaGVyIH0gZnJvbSAnLi4vLi4vY29yZS90eXBlcyc7XG5pbXBvcnQgeyBFbWJlZGRlZFNjZW5lIH0gZnJvbSAnLi4vRW1iZWRkZWRTY2VuZSc7XG5pbXBvcnQgeyBTY2VuZUZsZXhJdGVtLCBTY2VuZUZsZXhMYXlvdXQgfSBmcm9tICcuLi9sYXlvdXQvU2NlbmVGbGV4TGF5b3V0JztcbmltcG9ydCB7IFNjZW5lUmVhY3RPYmplY3QgfSBmcm9tICcuLi9TY2VuZVJlYWN0T2JqZWN0JztcbmltcG9ydCB7IFNjZW5lQXBwRHJpbGxkb3duVmlld1JlbmRlciwgU2NlbmVBcHBQYWdlVmlldyB9IGZyb20gJy4vU2NlbmVBcHBQYWdlVmlldyc7XG5pbXBvcnQgeyBTY2VuZUFwcERyaWxsZG93blZpZXcsIFNjZW5lQXBwUGFnZUxpa2UsIFNjZW5lQXBwUGFnZVN0YXRlLCBTY2VuZVJvdXRlTWF0Y2ggfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IHJlbmRlclNjZW5lQ29tcG9uZW50V2l0aFJvdXRlUHJvcHMgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBSZXNwb25zaWJsZSBmb3IgcGFnZSdzIGRyaWxsZG93biAmIHRhYnMgcm91dGluZ1xuICovXG5leHBvcnQgY2xhc3MgU2NlbmVBcHBQYWdlIGV4dGVuZHMgU2NlbmVPYmplY3RCYXNlPFNjZW5lQXBwUGFnZVN0YXRlPiBpbXBsZW1lbnRzIFNjZW5lQXBwUGFnZUxpa2Uge1xuICBwdWJsaWMgc3RhdGljIENvbXBvbmVudCA9IFNjZW5lQXBwUGFnZVJlbmRlcmVyO1xuICBwcml2YXRlIF9zY2VuZUNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIEVtYmVkZGVkU2NlbmU+KCk7XG4gIHByaXZhdGUgX2RyaWxsZG93bkNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIFNjZW5lQXBwUGFnZUxpa2U+KCk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHN0YXRlOiBTY2VuZUFwcFBhZ2VTdGF0ZSkge1xuICAgIHN1cGVyKHN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplU2NlbmUoc2NlbmU6IEVtYmVkZGVkU2NlbmUpIHtcbiAgICB0aGlzLnNldFN0YXRlKHsgaW5pdGlhbGl6ZWRTY2VuZTogc2NlbmUgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2NlbmUocm91dGVNYXRjaDogU2NlbmVSb3V0ZU1hdGNoKTogRW1iZWRkZWRTY2VuZSB7XG4gICAgbGV0IHNjZW5lID0gdGhpcy5fc2NlbmVDYWNoZS5nZXQocm91dGVNYXRjaC51cmwpO1xuXG4gICAgaWYgKHNjZW5lKSB7XG4gICAgICByZXR1cm4gc2NlbmU7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnN0YXRlLmdldFNjZW5lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgZ2V0U2NlbmUgb24gU2NlbmVBcHBQYWdlICcgKyB0aGlzLnN0YXRlLnRpdGxlKTtcbiAgICB9XG5cbiAgICBzY2VuZSA9IHRoaXMuc3RhdGUuZ2V0U2NlbmUocm91dGVNYXRjaCk7XG4gICAgdGhpcy5fc2NlbmVDYWNoZS5zZXQocm91dGVNYXRjaC51cmwsIHNjZW5lKTtcblxuICAgIHJldHVybiBzY2VuZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXREcmlsbGRvd25QYWdlKGRyaWxsZG93bjogU2NlbmVBcHBEcmlsbGRvd25WaWV3LCByb3V0ZU1hdGNoOiBTY2VuZVJvdXRlTWF0Y2g8e30+KTogU2NlbmVBcHBQYWdlTGlrZSB7XG4gICAgbGV0IHBhZ2UgPSB0aGlzLl9kcmlsbGRvd25DYWNoZS5nZXQocm91dGVNYXRjaCEudXJsKTtcbiAgICBpZiAocGFnZSkge1xuICAgICAgcmV0dXJuIHBhZ2U7XG4gICAgfVxuXG4gICAgcGFnZSA9IGRyaWxsZG93bi5nZXRQYWdlKHJvdXRlTWF0Y2gsIHRoaXMpO1xuICAgIHRoaXMuX2RyaWxsZG93bkNhY2hlLnNldChyb3V0ZU1hdGNoIS51cmwsIHBhZ2UpO1xuXG4gICAgcmV0dXJuIHBhZ2U7XG4gIH1cblxuICBwdWJsaWMgZW5yaWNoRGF0YVJlcXVlc3Qoc291cmNlOiBTY2VuZU9iamVjdCkge1xuICAgIGlmICh0aGlzLnN0YXRlLmdldFBhcmVudFBhZ2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXRlLmdldFBhcmVudFBhZ2UoKS5lbnJpY2hEYXRhUmVxdWVzdChzb3VyY2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wYXJlbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHJvb3QgPSB0aGlzLmdldFJvb3QoKTtcblxuICAgIGlmIChpc0RhdGFSZXF1ZXN0RW5yaWNoZXIocm9vdCkpIHtcbiAgICAgIHJldHVybiByb290LmVucmljaERhdGFSZXF1ZXN0KHNvdXJjZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY2VuZUFwcFBhZ2VSZW5kZXJlclByb3BzIGV4dGVuZHMgU2NlbmVDb21wb25lbnRQcm9wczxTY2VuZUFwcFBhZ2U+IHtcbiAgcm91dGVQcm9wczogUm91dGVDb21wb25lbnRQcm9wcztcbn1cblxuZnVuY3Rpb24gU2NlbmVBcHBQYWdlUmVuZGVyZXIoeyBtb2RlbCwgcm91dGVQcm9wcyB9OiBTY2VuZUFwcFBhZ2VSZW5kZXJlclByb3BzKSB7XG4gIGNvbnN0IHsgdGFicywgZHJpbGxkb3ducyB9ID0gbW9kZWwudXNlU3RhdGUoKTtcbiAgY29uc3Qgcm91dGVzOiBSZWFjdC5SZWFjdE5vZGVbXSA9IFtdO1xuXG4gIGlmICh0YWJzICYmIHRhYnMubGVuZ3RoID4gMCkge1xuICAgIGZvciAobGV0IHRhYkluZGV4ID0gMDsgdGFiSW5kZXggPCB0YWJzLmxlbmd0aDsgdGFiSW5kZXgrKykge1xuICAgICAgY29uc3QgdGFiID0gdGFic1t0YWJJbmRleF07XG5cbiAgICAgIC8vIEFkZCBmaXJzdCB0YWIgYXMgYSBkZWZhdWx0IHJvdXRlLCB0aGlzIG1ha2VzIGl0IHBvc3NpYmxlIGZvciB0aGUgZmlyc3QgdGFiIHRvIHJlbmRlciB3aXRoIHRoZSB1cmwgb2YgdGhlIHBhcmVudCBwYWdlXG4gICAgICBpZiAodGFiSW5kZXggPT09IDApIHtcbiAgICAgICAgcm91dGVzLnB1c2goXG4gICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICBleGFjdD17dHJ1ZX1cbiAgICAgICAgICAgIGtleT17bW9kZWwuc3RhdGUudXJsfVxuICAgICAgICAgICAgcGF0aD17bW9kZWwuc3RhdGUucm91dGVQYXRoID8/IG1vZGVsLnN0YXRlLnVybH1cbiAgICAgICAgICAgIHJlbmRlcj17KHByb3BzKSA9PiByZW5kZXJTY2VuZUNvbXBvbmVudFdpdGhSb3V0ZVByb3BzKHRhYiwgcHJvcHMpfVxuICAgICAgICAgID48L1JvdXRlPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByb3V0ZXMucHVzaChcbiAgICAgICAgPFJvdXRlXG4gICAgICAgICAgZXhhY3Q9e3RydWV9XG4gICAgICAgICAga2V5PXt0YWIuc3RhdGUudXJsfVxuICAgICAgICAgIHBhdGg9e3RhYi5zdGF0ZS5yb3V0ZVBhdGggPz8gdGFiLnN0YXRlLnVybH1cbiAgICAgICAgICByZW5kZXI9eyhwcm9wcykgPT4gcmVuZGVyU2NlbmVDb21wb25lbnRXaXRoUm91dGVQcm9wcyh0YWIsIHByb3BzKX1cbiAgICAgICAgPjwvUm91dGU+XG4gICAgICApO1xuXG4gICAgICBpZiAodGFiLnN0YXRlLmRyaWxsZG93bnMpIHtcbiAgICAgICAgZm9yIChjb25zdCBkcmlsbGRvd24gb2YgdGFiLnN0YXRlLmRyaWxsZG93bnMpIHtcbiAgICAgICAgICByb3V0ZXMucHVzaChcbiAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICBleGFjdD17ZmFsc2V9XG4gICAgICAgICAgICAgIGtleT17ZHJpbGxkb3duLnJvdXRlUGF0aH1cbiAgICAgICAgICAgICAgcGF0aD17ZHJpbGxkb3duLnJvdXRlUGF0aH1cbiAgICAgICAgICAgICAgcmVuZGVyPXsocHJvcHMpID0+IDxTY2VuZUFwcERyaWxsZG93blZpZXdSZW5kZXIgZHJpbGxkb3duPXtkcmlsbGRvd259IHBhcmVudD17dGFifSByb3V0ZVByb3BzPXtwcm9wc30gLz59XG4gICAgICAgICAgICA+PC9Sb3V0ZT5cbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKGRyaWxsZG93bnMpIHtcbiAgICBmb3IgKGNvbnN0IGRyaWxsZG93biBvZiBkcmlsbGRvd25zKSB7XG4gICAgICByb3V0ZXMucHVzaChcbiAgICAgICAgPFJvdXRlXG4gICAgICAgICAga2V5PXtkcmlsbGRvd24ucm91dGVQYXRofVxuICAgICAgICAgIGV4YWN0PXtmYWxzZX1cbiAgICAgICAgICBwYXRoPXtkcmlsbGRvd24ucm91dGVQYXRofVxuICAgICAgICAgIHJlbmRlcj17KHByb3BzKSA9PiA8U2NlbmVBcHBEcmlsbGRvd25WaWV3UmVuZGVyIGRyaWxsZG93bj17ZHJpbGxkb3dufSBwYXJlbnQ9e21vZGVsfSByb3V0ZVByb3BzPXtwcm9wc30gLz59XG4gICAgICAgID48L1JvdXRlPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBpZiAoIXRhYnMgJiYgaXNDdXJyZW50UGFnZVJvdXRlTWF0Y2gobW9kZWwsIHJvdXRlUHJvcHMubWF0Y2gpKSB7XG4gICAgcmV0dXJuIDxTY2VuZUFwcFBhZ2VWaWV3IHBhZ2U9e21vZGVsfSByb3V0ZVByb3BzPXtyb3V0ZVByb3BzfSAvPjtcbiAgfVxuXG4gIHJvdXRlcy5wdXNoKGdldEZhbGxiYWNrUm91dGUobW9kZWwsIHJvdXRlUHJvcHMpKTtcblxuICByZXR1cm4gPFN3aXRjaD57cm91dGVzfTwvU3dpdGNoPjtcbn1cblxuZnVuY3Rpb24gZ2V0RmFsbGJhY2tSb3V0ZShwYWdlOiBTY2VuZUFwcFBhZ2UsIHJvdXRlUHJvcHM6IFJvdXRlQ29tcG9uZW50UHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8Um91dGVcbiAgICAgIGtleT17J2ZhbGxiYWNrIHJvdXRlJ31cbiAgICAgIHJlbmRlcj17KHByb3BzKSA9PiB7XG4gICAgICAgIGNvbnN0IGZhbGxiYWNrUGFnZSA9IHBhZ2Uuc3RhdGUuZ2V0RmFsbGJhY2tQYWdlPy4oKSA/PyBnZXREZWZhdWx0RmFsbGJhY2tQYWdlKCk7XG4gICAgICAgIHJldHVybiA8U2NlbmVBcHBQYWdlVmlldyBwYWdlPXtmYWxsYmFja1BhZ2V9IHJvdXRlUHJvcHM9e3JvdXRlUHJvcHN9IC8+O1xuICAgICAgfX1cbiAgICA+PC9Sb3V0ZT5cbiAgKTtcbn1cblxuZnVuY3Rpb24gaXNDdXJyZW50UGFnZVJvdXRlTWF0Y2gocGFnZTogU2NlbmVBcHBQYWdlLCBtYXRjaDogU2NlbmVSb3V0ZU1hdGNoKSB7XG4gIGlmICghbWF0Y2guaXNFeGFjdCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8vIGN1cnJlbnQgcGFnZSBtYXRjaGVzIHRoZSByb3V0ZSB1cmxcbiAgaWYgKG1hdGNoLnVybCA9PT0gcGFnZS5zdGF0ZS51cmwpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIGNoZWNrIGlmIHdlIGFyZSBhIHRhYiBhbmQgdGhlIGZpcnN0IHRhYiwgdGhlbiB3ZSBzaG91bGQgYWxzbyByZW5kZXIgb24gdGhlIHBhcmVudCB1cmxcbiAgaWYgKFxuICAgIHBhZ2UucGFyZW50IGluc3RhbmNlb2YgU2NlbmVBcHBQYWdlICYmXG4gICAgcGFnZS5wYXJlbnQuc3RhdGUudGFicyFbMF0gPT09IHBhZ2UgJiZcbiAgICBwYWdlLnBhcmVudC5zdGF0ZS51cmwgPT09IG1hdGNoLnVybFxuICApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cblxuZnVuY3Rpb24gZ2V0RGVmYXVsdEZhbGxiYWNrUGFnZSgpIHtcbiAgcmV0dXJuIG5ldyBTY2VuZUFwcFBhZ2Uoe1xuICAgIHVybDogJycsXG4gICAgdGl0bGU6ICdOb3QgZm91bmQnLFxuICAgIHN1YlRpdGxlOiAnVGhlIHVybCBkaWQgbm90IG1hdGNoIGFueSBwYWdlJyxcbiAgICBnZXRTY2VuZTogKCkgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBFbWJlZGRlZFNjZW5lKHtcbiAgICAgICAgYm9keTogbmV3IFNjZW5lRmxleExheW91dCh7XG4gICAgICAgICAgZGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAgbmV3IFNjZW5lRmxleEl0ZW0oe1xuICAgICAgICAgICAgICBib2R5OiBuZXcgU2NlbmVSZWFjdE9iamVjdCh7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtdGVzdGlkPVwiZGVmYXVsdC1mYWxsYmFjay1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgSWYgeW91IGZvdW5kIHlvdXIgd2F5IGhlcmUgdXNpbmcgYSBsaW5rIHRoZW4gdGhlcmUgbWlnaHQgYmUgYSBidWcgaW4gdGhpcyBhcHBsaWNhdGlvbi5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAg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
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { PluginPage } from '@grafana/runtime';
|
|
2
|
-
import React, { useContext, useLayoutEffect, useEffect } from 'react';
|
|
3
|
-
import { SceneDebugger } from '../SceneDebugger/SceneDebugger.js';
|
|
4
|
-
import { SceneAppPage } from './SceneAppPage.js';
|
|
5
|
-
import { useAppQueryParams, getUrlWithAppState, renderSceneComponentWithRouteProps } from './utils.js';
|
|
6
|
-
import { useUrlSync } from '../../services/useUrlSync.js';
|
|
7
|
-
import { SceneAppContext } from './SceneApp.js';
|
|
8
|
-
import { useLocationServiceSafe } from '../../utils/utils.js';
|
|
9
|
-
|
|
10
|
-
function SceneAppPageView({ page, routeProps }) {
|
|
11
|
-
const containerPage = getParentPageIfTab(page);
|
|
12
|
-
const containerState = containerPage.useState();
|
|
13
|
-
const params = useAppQueryParams();
|
|
14
|
-
const scene = page.getScene(routeProps.match);
|
|
15
|
-
const appContext = useContext(SceneAppContext);
|
|
16
|
-
const isInitialized = containerState.initializedScene === scene;
|
|
17
|
-
const { layout } = page.state;
|
|
18
|
-
const locationService = useLocationServiceSafe();
|
|
19
|
-
useLayoutEffect(() => {
|
|
20
|
-
if (!isInitialized) {
|
|
21
|
-
containerPage.initializeScene(scene);
|
|
22
|
-
}
|
|
23
|
-
}, [scene, containerPage, isInitialized]);
|
|
24
|
-
useEffect(() => {
|
|
25
|
-
return () => containerPage.setState({ initializedScene: void 0 });
|
|
26
|
-
}, [containerPage]);
|
|
27
|
-
const urlSyncInitialized = useUrlSync(containerPage, appContext == null ? void 0 : appContext.state.urlSyncOptions);
|
|
28
|
-
if (!isInitialized && !urlSyncInitialized) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
const pageNav = {
|
|
32
|
-
text: containerState.title,
|
|
33
|
-
img: containerState.titleImg,
|
|
34
|
-
icon: containerState.titleIcon,
|
|
35
|
-
url: getUrlWithAppState(containerState.url, locationService.getSearchObject(), containerState.preserveUrlKeys),
|
|
36
|
-
hideFromBreadcrumbs: containerState.hideFromBreadcrumbs,
|
|
37
|
-
parentItem: getParentBreadcrumbs(
|
|
38
|
-
containerState.getParentPage ? containerState.getParentPage() : containerPage.parent,
|
|
39
|
-
params,
|
|
40
|
-
locationService.getSearchObject()
|
|
41
|
-
)
|
|
42
|
-
};
|
|
43
|
-
if (containerState.tabs) {
|
|
44
|
-
pageNav.children = containerState.tabs.map((tab) => {
|
|
45
|
-
return {
|
|
46
|
-
text: tab.state.title,
|
|
47
|
-
icon: tab.state.titleIcon,
|
|
48
|
-
tabSuffix: tab.state.tabSuffix,
|
|
49
|
-
active: page === tab,
|
|
50
|
-
url: getUrlWithAppState(tab.state.url, locationService.getSearchObject(), tab.state.preserveUrlKeys),
|
|
51
|
-
parentItem: pageNav
|
|
52
|
-
};
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
let pageActions = [];
|
|
56
|
-
if (containerState.controls) {
|
|
57
|
-
pageActions = containerState.controls.map((control) => /* @__PURE__ */ React.createElement(control.Component, {
|
|
58
|
-
model: control,
|
|
59
|
-
key: control.state.key
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
if (params["scene-debugger"]) {
|
|
63
|
-
pageActions.push(/* @__PURE__ */ React.createElement(SceneDebugger, {
|
|
64
|
-
scene: containerPage,
|
|
65
|
-
key: "scene-debugger"
|
|
66
|
-
}));
|
|
67
|
-
}
|
|
68
|
-
return /* @__PURE__ */ React.createElement(PluginPage, {
|
|
69
|
-
layout,
|
|
70
|
-
pageNav,
|
|
71
|
-
actions: pageActions,
|
|
72
|
-
renderTitle: containerState.renderTitle,
|
|
73
|
-
subTitle: containerState.subTitle
|
|
74
|
-
}, /* @__PURE__ */ React.createElement(scene.Component, {
|
|
75
|
-
model: scene
|
|
76
|
-
}));
|
|
77
|
-
}
|
|
78
|
-
function getParentPageIfTab(page) {
|
|
79
|
-
if (page.parent instanceof SceneAppPage) {
|
|
80
|
-
return page.parent;
|
|
81
|
-
}
|
|
82
|
-
return page;
|
|
83
|
-
}
|
|
84
|
-
function getParentBreadcrumbs(parent, params, searchObject) {
|
|
85
|
-
if (parent instanceof SceneAppPage) {
|
|
86
|
-
return {
|
|
87
|
-
text: parent.state.title,
|
|
88
|
-
url: getUrlWithAppState(parent.state.url, searchObject, parent.state.preserveUrlKeys),
|
|
89
|
-
hideFromBreadcrumbs: parent.state.hideFromBreadcrumbs,
|
|
90
|
-
parentItem: getParentBreadcrumbs(
|
|
91
|
-
parent.state.getParentPage ? parent.state.getParentPage() : parent.parent,
|
|
92
|
-
params,
|
|
93
|
-
searchObject
|
|
94
|
-
)
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
return void 0;
|
|
98
|
-
}
|
|
99
|
-
function SceneAppDrilldownViewRender({ drilldown, parent, routeProps }) {
|
|
100
|
-
return renderSceneComponentWithRouteProps(parent.getDrilldownPage(drilldown, routeProps.match), routeProps);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export { SceneAppDrilldownViewRender, SceneAppPageView };
|
|
104
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NlbmVBcHBQYWdlVmlldy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvU2NlbmVBcHAvU2NlbmVBcHBQYWdlVmlldy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmF2TW9kZWxJdGVtLCBVcmxRdWVyeU1hcCB9IGZyb20gJ0BncmFmYW5hL2RhdGEnO1xuaW1wb3J0IHsgUGx1Z2luUGFnZSB9IGZyb20gJ0BncmFmYW5hL3J1bnRpbWUnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUNvbnRleHQsIHVzZUVmZmVjdCwgdXNlTGF5b3V0RWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBSb3V0ZUNvbXBvbmVudFByb3BzIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBTY2VuZU9iamVjdCB9IGZyb20gJy4uLy4uL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHsgU2NlbmVEZWJ1Z2dlciB9IGZyb20gJy4uL1NjZW5lRGVidWdnZXIvU2NlbmVEZWJ1Z2dlcic7XG5pbXBvcnQgeyBTY2VuZUFwcFBhZ2UgfSBmcm9tICcuL1NjZW5lQXBwUGFnZSc7XG5pbXBvcnQgeyBTY2VuZUFwcERyaWxsZG93blZpZXcsIFNjZW5lQXBwUGFnZUxpa2UgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldFVybFdpdGhBcHBTdGF0ZSwgcmVuZGVyU2NlbmVDb21wb25lbnRXaXRoUm91dGVQcm9wcywgdXNlQXBwUXVlcnlQYXJhbXMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IHVzZVVybFN5bmMgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91c2VVcmxTeW5jJztcbmltcG9ydCB7IFNjZW5lQXBwQ29udGV4dCB9IGZyb20gJy4vU2NlbmVBcHAnO1xuaW1wb3J0IHsgdXNlTG9jYXRpb25TZXJ2aWNlU2FmZSB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBQcm9wcyB7XG4gIHBhZ2U6IFNjZW5lQXBwUGFnZUxpa2U7XG4gIHJvdXRlUHJvcHM6IFJvdXRlQ29tcG9uZW50UHJvcHM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBTY2VuZUFwcFBhZ2VWaWV3KHsgcGFnZSwgcm91dGVQcm9wcyB9OiBQcm9wcykge1xuICBjb25zdCBjb250YWluZXJQYWdlID0gZ2V0UGFyZW50UGFnZUlmVGFiKHBhZ2UpO1xuICBjb25zdCBjb250YWluZXJTdGF0ZSA9IGNvbnRhaW5lclBhZ2UudXNlU3RhdGUoKTtcbiAgY29uc3QgcGFyYW1zID0gdXNlQXBwUXVlcnlQYXJhbXMoKTtcbiAgY29uc3Qgc2NlbmUgPSBwYWdlLmdldFNjZW5lKHJvdXRlUHJvcHMubWF0Y2gpO1xuICBjb25zdCBhcHBDb250ZXh0ID0gdXNlQ29udGV4dChTY2VuZUFwcENvbnRleHQpO1xuICBjb25zdCBpc0luaXRpYWxpemVkID0gY29udGFpbmVyU3RhdGUuaW5pdGlhbGl6ZWRTY2VuZSA9PT0gc2NlbmU7XG4gIGNvbnN0IHsgbGF5b3V0IH0gPSBwYWdlLnN0YXRlO1xuICBjb25zdCBsb2NhdGlvblNlcnZpY2UgPSB1c2VMb2NhdGlvblNlcnZpY2VTYWZlKCk7XG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAvLyBCZWZvcmUgcmVuZGVyaW5nIHNjZW5lIGNvbXBvbmVudHMsIHdlIGFyZSBtYWtpbmcgc3VyZSB0aGUgVVJMIHN5bmMgaXMgZW5hYmxlZCBmb3IuXG4gICAgaWYgKCFpc0luaXRpYWxpemVkKSB7XG4gICAgICBjb250YWluZXJQYWdlLmluaXRpYWxpemVTY2VuZShzY2VuZSk7XG4gICAgfVxuICB9LCBbc2NlbmUsIGNvbnRhaW5lclBhZ2UsIGlzSW5pdGlhbGl6ZWRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIENsZWFyIGluaXRpYWxpemVkU2NlbmUgd2hlbiB1bm1vdW50aW5nXG4gICAgcmV0dXJuICgpID0+IGNvbnRhaW5lclBhZ2Uuc2V0U3RhdGUoeyBpbml0aWFsaXplZFNjZW5lOiB1bmRlZmluZWQgfSk7XG4gIH0sIFtjb250YWluZXJQYWdlXSk7XG5cbiAgY29uc3QgdXJsU3luY0luaXRpYWxpemVkID0gdXNlVXJsU3luYyhjb250YWluZXJQYWdlLCBhcHBDb250ZXh0Py5zdGF0ZS51cmxTeW5jT3B0aW9ucyk7XG5cbiAgaWYgKCFpc0luaXRpYWxpemVkICYmICF1cmxTeW5jSW5pdGlhbGl6ZWQpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHBhZ2VOYXY6IE5hdk1vZGVsSXRlbSA9IHtcbiAgICB0ZXh0OiBjb250YWluZXJTdGF0ZS50aXRsZSxcbiAgICBpbWc6IGNvbnRhaW5lclN0YXRlLnRpdGxlSW1nLFxuICAgIGljb246IGNvbnRhaW5lclN0YXRlLnRpdGxlSWNvbixcbiAgICB1cmw6IGdldFVybFdpdGhBcHBTdGF0ZShjb250YWluZXJTdGF0ZS51cmwsIGxvY2F0aW9uU2VydmljZS5nZXRTZWFyY2hPYmplY3QoKSwgY29udGFpbmVyU3RhdGUucHJlc2VydmVVcmxLZXlzKSxcbiAgICBoaWRlRnJvbUJyZWFkY3J1bWJzOiBjb250YWluZXJTdGF0ZS5oaWRlRnJvbUJyZWFkY3J1bWJzLFxuICAgIHBhcmVudEl0ZW06IGdldFBhcmVudEJyZWFkY3J1bWJzKFxuICAgICAgY29udGFpbmVyU3RhdGUuZ2V0UGFyZW50UGFnZSA/IGNvbnRhaW5lclN0YXRlLmdldFBhcmVudFBhZ2UoKSA6IGNvbnRhaW5lclBhZ2UucGFyZW50LFxuICAgICAgcGFyYW1zLFxuICAgICAgbG9jYXRpb25TZXJ2aWNlLmdldFNlYXJjaE9iamVjdCgpXG4gICAgKSxcbiAgfTtcblxuICBpZiAoY29udGFpbmVyU3RhdGUudGFicykge1xuICAgIHBhZ2VOYXYuY2hpbGRyZW4gPSBjb250YWluZXJTdGF0ZS50YWJzLm1hcCgodGFiKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0ZXh0OiB0YWIuc3RhdGUudGl0bGUsXG4gICAgICAgIGljb246IHRhYi5zdGF0ZS50aXRsZUljb24sXG4gICAgICAgIHRhYlN1ZmZpeDogdGFiLnN0YXRlLnRhYlN1ZmZpeCxcbiAgICAgICAgYWN0aXZlOiBwYWdlID09PSB0YWIsXG4gICAgICAgIHVybDogZ2V0VXJsV2l0aEFwcFN0YXRlKHRhYi5zdGF0ZS51cmwsIGxvY2F0aW9uU2VydmljZS5nZXRTZWFyY2hPYmplY3QoKSwgdGFiLnN0YXRlLnByZXNlcnZlVXJsS2V5cyksXG4gICAgICAgIHBhcmVudEl0ZW06IHBhZ2VOYXYsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgbGV0IHBhZ2VBY3Rpb25zOiBSZWFjdC5SZWFjdE5vZGVbXSA9IFtdO1xuICBpZiAoY29udGFpbmVyU3RhdGUuY29udHJvbHMpIHtcbiAgICBwYWdlQWN0aW9ucyA9IGNvbnRhaW5lclN0YXRlLmNvbnRyb2xzLm1hcCgoY29udHJvbCkgPT4gKFxuICAgICAgPGNvbnRyb2wuQ29tcG9uZW50IG1vZGVsPXtjb250cm9sfSBrZXk9e2NvbnRyb2wuc3RhdGUua2V5fSAvPlxuICAgICkpO1xuICB9XG5cbiAgaWYgKHBhcmFtc1snc2NlbmUtZGVidWdnZXInXSkge1xuICAgIHBhZ2VBY3Rpb25zLnB1c2goPFNjZW5lRGVidWdnZXIgc2NlbmU9e2NvbnRhaW5lclBhZ2V9IGtleT17J3NjZW5lLWRlYnVnZ2VyJ30gLz4pO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8UGx1Z2luUGFnZVxuICAgICAgbGF5b3V0PXtsYXlvdXR9XG4gICAgICBwYWdlTmF2PXtwYWdlTmF2fVxuICAgICAgYWN0aW9ucz17cGFnZUFjdGlvbnN9XG4gICAgICByZW5kZXJUaXRsZT17Y29udGFpbmVyU3RhdGUucmVuZGVyVGl0bGV9XG4gICAgICBzdWJUaXRsZT17Y29udGFpbmVyU3RhdGUuc3ViVGl0bGV9XG4gICAgPlxuICAgICAgPHNjZW5lLkNvbXBvbmVudCBtb2RlbD17c2NlbmV9IC8+XG4gICAgPC9QbHVnaW5QYWdlPlxuICApO1xufVxuXG4vKipcbiAqIEZvciBwYWdlcyB0aGF0IGFyZSBcInRhYnNcIiB0aGlzIHdpbGwgcmV0dXJuIHRoZSBwYXJlbnQgcGFnZVxuICovXG5mdW5jdGlvbiBnZXRQYXJlbnRQYWdlSWZUYWIocGFnZTogU2NlbmVBcHBQYWdlTGlrZSkge1xuICBpZiAocGFnZS5wYXJlbnQgaW5zdGFuY2VvZiBTY2VuZUFwcFBhZ2UpIHtcbiAgICByZXR1cm4gcGFnZS5wYXJlbnQ7XG4gIH1cblxuICByZXR1cm4gcGFnZTtcbn1cblxuZnVuY3Rpb24gZ2V0UGFyZW50QnJlYWRjcnVtYnMoXG4gIHBhcmVudDogU2NlbmVPYmplY3QgfCB1bmRlZmluZWQsXG4gIHBhcmFtczogVXJsUXVlcnlNYXAsXG4gIHNlYXJjaE9iamVjdDogVXJsUXVlcnlNYXBcbik6IE5hdk1vZGVsSXRlbSB8IHVuZGVmaW5lZCB7XG4gIGlmIChwYXJlbnQgaW5zdGFuY2VvZiBTY2VuZUFwcFBhZ2UpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGV4dDogcGFyZW50LnN0YXRlLnRpdGxlLFxuICAgICAgdXJsOiBnZXRVcmxXaXRoQXBwU3RhdGUocGFyZW50LnN0YXRlLnVybCwgc2VhcmNoT2JqZWN0LCBwYXJlbnQuc3RhdGUucHJlc2VydmVVcmxLZXlzKSxcbiAgICAgIGhpZGVGcm9tQnJlYWRjcnVtYnM6IHBhcmVudC5zdGF0ZS5oaWRlRnJvbUJyZWFkY3J1bWJzLFxuICAgICAgcGFyZW50SXRlbTogZ2V0UGFyZW50QnJlYWRjcnVtYnMoXG4gICAgICAgIHBhcmVudC5zdGF0ZS5nZXRQYXJlbnRQYWdlID8gcGFyZW50LnN0YXRlLmdldFBhcmVudFBhZ2UoKSA6IHBhcmVudC5wYXJlbnQsXG4gICAgICAgIHBhcmFtcyxcbiAgICAgICAgc2VhcmNoT2JqZWN0XG4gICAgICApLFxuICAgIH07XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjZW5lQXBwRHJpbGxkb3duVmlld1JlbmRlclByb3BzIHtcbiAgZHJpbGxkb3duOiBTY2VuZUFwcERyaWxsZG93blZpZXc7XG4gIHBhcmVudDogU2NlbmVBcHBQYWdlTGlrZTtcbiAgcm91dGVQcm9wczogUm91dGVDb21wb25lbnRQcm9wcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNjZW5lQXBwRHJpbGxkb3duVmlld1JlbmRlcih7IGRyaWxsZG93biwgcGFyZW50LCByb3V0ZVByb3BzIH06IFNjZW5lQXBwRHJpbGxkb3duVmlld1JlbmRlclByb3BzKSB7XG4gIHJldHVybiByZW5kZXJTY2VuZUNvbXBvbmVudFdpdGhSb3V0ZVByb3BzKHBhcmVudC5nZXREcmlsbGRvd25QYWdlKGRyaWxsZG93biwgcm91dGVQcm9wcy5tYXRjaCksIHJvdXRlUHJvcHMpO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQW1CTyxTQUFTLGdCQUFpQixDQUFBLEVBQUUsSUFBTSxFQUFBLFVBQUEsRUFBcUIsRUFBQTtBQUM1RCxFQUFNLE1BQUEsYUFBQSxHQUFnQixtQkFBbUIsSUFBSSxDQUFBLENBQUE7QUFDN0MsRUFBTSxNQUFBLGNBQUEsR0FBaUIsY0FBYyxRQUFTLEVBQUEsQ0FBQTtBQUM5QyxFQUFBLE1BQU0sU0FBUyxpQkFBa0IsRUFBQSxDQUFBO0FBQ2pDLEVBQUEsTUFBTSxLQUFRLEdBQUEsSUFBQSxDQUFLLFFBQVMsQ0FBQSxVQUFBLENBQVcsS0FBSyxDQUFBLENBQUE7QUFDNUMsRUFBTSxNQUFBLFVBQUEsR0FBYSxXQUFXLGVBQWUsQ0FBQSxDQUFBO0FBQzdDLEVBQU0sTUFBQSxhQUFBLEdBQWdCLGVBQWUsZ0JBQXFCLEtBQUEsS0FBQSxDQUFBO0FBQzFELEVBQU0sTUFBQSxFQUFFLE1BQU8sRUFBQSxHQUFJLElBQUssQ0FBQSxLQUFBLENBQUE7QUFDeEIsRUFBQSxNQUFNLGtCQUFrQixzQkFBdUIsRUFBQSxDQUFBO0FBRS9DLEVBQUEsZUFBQSxDQUFnQixNQUFNO0FBRXBCLElBQUEsSUFBSSxDQUFDLGFBQWUsRUFBQTtBQUNsQixNQUFBLGFBQUEsQ0FBYyxnQkFBZ0IsS0FBSyxDQUFBLENBQUE7QUFB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
|