SceneSolo: Minor fixes (#82289)

* SceneSolo: Minor fixes

* remove logging
This commit is contained in:
Torkel Ödegaard 2024-02-12 16:23:12 +01:00 committed by GitHub
parent cd09c36448
commit 8f36f905ee
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 15 additions and 5 deletions

View File

@ -74,6 +74,7 @@ func (l *loggerImpl) Middleware() web.Middleware {
duration := time.Since(start) duration := time.Since(start)
timeTaken := duration / time.Millisecond timeTaken := duration / time.Millisecond
ctx := contexthandler.FromContext(r.Context()) ctx := contexthandler.FromContext(r.Context())
if ctx != nil && ctx.PerfmonTimer != nil { if ctx != nil && ctx.PerfmonTimer != nil {
ctx.PerfmonTimer.Observe(float64(timeTaken)) ctx.PerfmonTimer.Observe(float64(timeTaken))
} }

View File

@ -80,7 +80,7 @@ describe('ShareLinkTab', () => {
await screen.findByRole('link', { name: selectors.pages.SharePanelModal.linkToRenderedImage }) await screen.findByRole('link', { name: selectors.pages.SharePanelModal.linkToRenderedImage })
).toHaveAttribute( ).toHaveAttribute(
'href', 'href',
'http://dashboards.grafana.com/grafana/render/d-solo/dash-1?from=2019-02-11T13:00:00.000Z&to=2019-02-11T19:00:00.000Z&viewPanel=panel-12&width=1000&height=500&tz=Pacific%2FEaster' 'http://dashboards.grafana.com/grafana/render/d-solo/dash-1?from=2019-02-11T13:00:00.000Z&to=2019-02-11T19:00:00.000Z&panelId=panel-12&__feature.dashboardSceneSolo&width=1000&height=500&tz=Pacific%2FEaster'
); );
}); });
}); });

View File

@ -83,12 +83,20 @@ export class ShareLinkTab extends SceneObjectBase<ShareLinkTabState> {
shareUrl = await createShortLink(shareUrl); shareUrl = await createShortLink(shareUrl);
} }
// the image panel solo route uses panelId instead of viewPanel
let imageQueryParams = urlParamsUpdate;
if (panel) {
delete imageQueryParams.viewPanel;
imageQueryParams.panelId = panel.state.key;
// force solo route to use scenes
imageQueryParams['__feature.dashboardSceneSolo'] = true;
}
const imageUrl = getDashboardUrl({ const imageUrl = getDashboardUrl({
uid: dashboard.state.uid, uid: dashboard.state.uid,
currentQueryParams: location.search, currentQueryParams: location.search,
updateQuery: urlParamsUpdate, updateQuery: { ...urlParamsUpdate, panelId: panel?.state.key },
absolute: true, absolute: true,
soloRoute: true, soloRoute: true,
render: true, render: true,
timeZone: getRenderTimeZone(timeRange.getTimeZone()), timeZone: getRenderTimeZone(timeRange.getTimeZone()),

View File

@ -69,6 +69,7 @@ const getIframeBuilder =
params.set('panelId', panelId); params.set('panelId', panelId);
params.delete('editPanel'); params.delete('editPanel');
params.delete('viewPanel'); params.delete('viewPanel');
params.set('__feature.dashboardSceneSolo', 'true');
const soloUrl = getDashboardUrl({ const soloUrl = getDashboardUrl({
absolute: true, absolute: true,

View File

@ -81,14 +81,14 @@ export function getAppRoutes(): RouteDescriptor[] {
), ),
}, },
{ {
path: '/d-solo/:uid/:slug', path: '/d-solo/:uid/:slug?',
pageClass: 'dashboard-solo', pageClass: 'dashboard-solo',
routeName: DashboardRoutes.Normal, routeName: DashboardRoutes.Normal,
chromeless: true, chromeless: true,
component: SafeDynamicImport(() => component: SafeDynamicImport(() =>
config.featureToggles.dashboardSceneSolo config.featureToggles.dashboardSceneSolo
? import(/* webpackChunkName: "SoloPanelPage" */ '../features/dashboard-scene/solo/SoloPanelPage') ? import(/* webpackChunkName: "SoloPanelPage" */ '../features/dashboard-scene/solo/SoloPanelPage')
: import(/* webpackChunkName: "SoloPanelPage" */ '../features/dashboard/containers/SoloPanelPage') : import(/* webpackChunkName: "SoloPanelPageOld" */ '../features/dashboard/containers/SoloPanelPage')
), ),
}, },
// This route handles embedding of snapshot/scripted dashboard panels // This route handles embedding of snapshot/scripted dashboard panels