| 123456789101112131415161718192021222324252627282930313233343536373839 |
- import $ from 'jquery';
- import _ from 'lodash';
- import coreModule from '../core_module';
- /** @ngInject */
- function dashClass($timeout) {
- return {
- link: ($scope, elem) => {
- const body = $('body');
- $scope.ctrl.dashboard.events.on('view-mode-changed', panel => {
- console.log('view-mode-changed', panel.fullscreen);
- if (panel.fullscreen) {
- body.addClass('panel-in-fullscreen');
- } else {
- $timeout(() => {
- body.removeClass('panel-in-fullscreen');
- });
- }
- });
- body.toggleClass('panel-in-fullscreen', $scope.ctrl.dashboard.meta.fullscreen === true);
- $scope.$watch('ctrl.dashboardViewState.state.editview', newValue => {
- if (newValue) {
- elem.toggleClass('dashboard-page--settings-opening', _.isString(newValue));
- setTimeout(() => {
- elem.toggleClass('dashboard-page--settings-open', _.isString(newValue));
- }, 10);
- } else {
- elem.removeClass('dashboard-page--settings-opening');
- elem.removeClass('dashboard-page--settings-open');
- }
- });
- },
- };
- }
- coreModule.directive('dashClass', dashClass);
|