mirror of
https://github.com/grafana/grafana.git
synced 2025-02-15 01:53:33 -06:00
* Reuse kiosk module, centralize kiosk query handling * update kiosk tests to set correct kiosk value * fix DashboardPage kiosk test * remove unused UrlQueryValue, revert import change
43 lines
928 B
TypeScript
43 lines
928 B
TypeScript
import { AppEvents } from '@grafana/data';
|
|
import { locationService } from '@grafana/runtime';
|
|
import appEvents from '../app_events';
|
|
import { KioskMode } from '../../types';
|
|
|
|
export function toggleKioskMode() {
|
|
let kiosk = locationService.getSearchObject().kiosk;
|
|
|
|
switch (kiosk) {
|
|
case 'tv':
|
|
kiosk = true;
|
|
appEvents.emit(AppEvents.alertSuccess, ['Press ESC to exit Kiosk mode']);
|
|
break;
|
|
case '1':
|
|
case true:
|
|
kiosk = null;
|
|
break;
|
|
default:
|
|
kiosk = 'tv';
|
|
}
|
|
|
|
locationService.partial({ kiosk });
|
|
}
|
|
|
|
export function getKioskMode(): KioskMode {
|
|
const kiosk = locationService.getSearchObject().kiosk;
|
|
|
|
switch (kiosk) {
|
|
case 'tv':
|
|
return KioskMode.TV;
|
|
// legacy support
|
|
case '1':
|
|
case true:
|
|
return KioskMode.Full;
|
|
default:
|
|
return KioskMode.Off;
|
|
}
|
|
}
|
|
|
|
export function exitKioskMode() {
|
|
locationService.partial({ kiosk: null });
|
|
}
|