From 47055561ec92ddb6f4d1d1fdcedb09345cb3b0cf Mon Sep 17 00:00:00 2001 From: Nathan Marrs Date: Thu, 10 Nov 2022 10:56:31 -0800 Subject: [PATCH] Canvas: Fix setting icon from field data #58499 --- .betterer.results | 6 ------ public/app/features/dimensions/resource.ts | 13 +++++++------ 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/.betterer.results b/.betterer.results index 647193c730c..34cafb51e18 100644 --- a/.betterer.results +++ b/.betterer.results @@ -3870,12 +3870,6 @@ exports[`better eslint`] = { [0, 0, 0, "Unexpected any. Specify a different type.", "0"], [0, 0, 0, "Unexpected any. Specify a different type.", "1"] ], - "public/app/features/dimensions/resource.ts:5381": [ - [0, 0, 0, "Do not use any type assertions.", "0"], - [0, 0, 0, "Unexpected any. Specify a different type.", "1"], - [0, 0, 0, "Unexpected any. Specify a different type.", "2"], - [0, 0, 0, "Unexpected any. Specify a different type.", "3"] - ], "public/app/features/dimensions/scale.test.ts:5381": [ [0, 0, 0, "Unexpected any. Specify a different type.", "0"] ], diff --git a/public/app/features/dimensions/resource.ts b/public/app/features/dimensions/resource.ts index d48873a5740..523a044f666 100644 --- a/public/app/features/dimensions/resource.ts +++ b/public/app/features/dimensions/resource.ts @@ -10,7 +10,7 @@ export function getPublicOrAbsoluteUrl(v: string): string { if (!v) { return ''; } - return v.indexOf(':/') > 0 ? v : (window as any).__grafana_public_path__ + v; + return v.indexOf(':/') > 0 ? v : window.__grafana_public_path__ + v; } export function getResourceDimension( @@ -19,7 +19,7 @@ export function getResourceDimension( ): DimensionSupplier { const mode = config.mode ?? ResourceDimensionMode.Fixed; if (mode === ResourceDimensionMode.Fixed) { - const v = getPublicOrAbsoluteUrl(config.fixed!); + const v = getPublicOrAbsoluteUrl(config.fixed); return { isAssumed: !Boolean(v), fixed: v, @@ -40,7 +40,7 @@ export function getResourceDimension( } if (mode === ResourceDimensionMode.Mapping) { - const mapper = (v: any) => getPublicOrAbsoluteUrl(`${v}`); + const mapper = (v: string) => getPublicOrAbsoluteUrl(`${v}`); return { field, get: (i) => mapper(field.values.get(i)), @@ -48,9 +48,10 @@ export function getResourceDimension( }; } - const getIcon = (value: any): string => { - const disp = field.display!; - return getPublicOrAbsoluteUrl(disp(value).icon ?? ''); + // mode === ResourceDimensionMode.Field case + const getIcon = (value: string): string => { + const display = field.display!; + return getPublicOrAbsoluteUrl(display(value).icon ?? value ?? ''); }; return {