From f13eff42875abc3e5f4962ae2b806439d502dba4 Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Mon, 3 Apr 2023 04:10:06 -0500 Subject: [PATCH] [v9.4.x] Angular: Prevent angular from loading when disabled (#65777) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Angular: Prevent angular from loading when disabled (#65755) * Angular: Prevent angular from loading when disabled * remove stuff (cherry picked from commit 093498a03b12a677827e6816054ac7e3fd68e28d) * Update --------- Co-authored-by: Torkel Ödegaard --- .betterer.results | 5 +--- public/app/angular/services/nav_model_srv.ts | 24 ++----------------- public/app/core/navigation/errorModels.ts | 22 +++++++++++++++++ .../plugins/components/AppRootPage.tsx | 2 +- 4 files changed, 26 insertions(+), 27 deletions(-) create mode 100644 public/app/core/navigation/errorModels.ts diff --git a/.betterer.results b/.betterer.results index a9418f5dcc4..e28a6d35745 100644 --- a/.betterer.results +++ b/.betterer.results @@ -1,5 +1,5 @@ // BETTERER RESULTS V2. -// +// // If this file contains merge conflicts, use `betterer merge` to automatically resolve them: // https://phenomnomnominal.github.io/betterer/docs/results-file/#merge // @@ -2128,9 +2128,6 @@ exports[`better eslint`] = { [0, 0, 0, "Unexpected any. Specify a different type.", "7"], [0, 0, 0, "Unexpected any. Specify a different type.", "8"] ], - "public/app/angular/services/nav_model_srv.ts:5381": [ - [0, 0, 0, "Unexpected any. Specify a different type.", "0"] - ], "public/app/angular/services/ng_react.ts:5381": [ [0, 0, 0, "Do not use any type assertions.", "0"], [0, 0, 0, "Do not use any type assertions.", "1"], diff --git a/public/app/angular/services/nav_model_srv.ts b/public/app/angular/services/nav_model_srv.ts index 38051e4dcd7..5b3bad4c1c2 100644 --- a/public/app/angular/services/nav_model_srv.ts +++ b/public/app/angular/services/nav_model_srv.ts @@ -1,6 +1,7 @@ -import { NavModel, NavModelItem } from '@grafana/data'; +import { NavModelItem } from '@grafana/data'; import coreModule from 'app/angular/core_module'; import config from 'app/core/config'; +import { getNotFoundNav } from 'app/core/navigation/errorModels'; interface Nav { breadcrumbs: NavModelItem[]; @@ -55,25 +56,4 @@ export class NavModelSrv { } } -export function getExceptionNav(error: any): NavModel { - console.error(error); - return getWarningNav('Exception thrown', 'See console for details'); -} - -export function getNotFoundNav(): NavModel { - return getWarningNav('Page not found', '404 Error'); -} - -export function getWarningNav(text: string, subTitle?: string): NavModel { - const node: NavModelItem = { - text, - subTitle, - icon: 'exclamation-triangle', - }; - return { - node: node, - main: node, - }; -} - coreModule.service('navModelSrv', NavModelSrv); diff --git a/public/app/core/navigation/errorModels.ts b/public/app/core/navigation/errorModels.ts new file mode 100644 index 00000000000..68aa937101b --- /dev/null +++ b/public/app/core/navigation/errorModels.ts @@ -0,0 +1,22 @@ +import { NavModel, NavModelItem } from '@grafana/data'; + +export function getExceptionNav(error: unknown): NavModel { + console.error(error); + return getWarningNav('Exception thrown', 'See console for details'); +} + +export function getNotFoundNav(): NavModel { + return getWarningNav('Page not found', '404 Error'); +} + +export function getWarningNav(text: string, subTitle?: string): NavModel { + const node: NavModelItem = { + text, + subTitle, + icon: 'exclamation-triangle', + }; + return { + node: node, + main: node, + }; +} diff --git a/public/app/features/plugins/components/AppRootPage.tsx b/public/app/features/plugins/components/AppRootPage.tsx index d5b18275907..d4ab24d0d80 100644 --- a/public/app/features/plugins/components/AppRootPage.tsx +++ b/public/app/features/plugins/components/AppRootPage.tsx @@ -6,10 +6,10 @@ import { useLocation, useRouteMatch } from 'react-router-dom'; import { AppEvents, AppPlugin, AppPluginMeta, NavModel, NavModelItem, PluginType } from '@grafana/data'; import { config, locationSearchToObject } from '@grafana/runtime'; -import { getNotFoundNav, getWarningNav, getExceptionNav } from 'app/angular/services/nav_model_srv'; import { Page } from 'app/core/components/Page/Page'; import PageLoader from 'app/core/components/PageLoader/PageLoader'; import { appEvents } from 'app/core/core'; +import { getNotFoundNav, getWarningNav, getExceptionNav } from 'app/core/navigation/errorModels'; import { getPluginSettings } from '../pluginSettings'; import { importAppPlugin } from '../plugin_loader';