From 40d3072df23e62cbe358c0a846f36f2e67e99187 Mon Sep 17 00:00:00 2001 From: Nathan Marrs Date: Wed, 17 Nov 2021 13:59:41 -0800 Subject: [PATCH] Geomap: Refactor marker style options into reusable component (#41716) --- .../editors/ResourceDimensionEditor.tsx | 29 ++- .../dimensions/editors/ResourcePicker.tsx | 9 +- .../editors/TextDimensionEditor.tsx | 26 ++- public/app/features/dimensions/types.ts | 9 + .../panel/geomap/layers/data/StyleEditor.tsx | 185 ++++++++++++++++++ .../panel/geomap/layers/data/markersLayer.tsx | 111 ++--------- .../plugins/panel/geomap/migrations.test.ts | 2 + .../app/plugins/panel/geomap/style/markers.ts | 18 +- .../app/plugins/panel/geomap/style/types.ts | 2 + 9 files changed, 273 insertions(+), 118 deletions(-) create mode 100644 public/app/plugins/panel/geomap/layers/data/StyleEditor.tsx diff --git a/public/app/features/dimensions/editors/ResourceDimensionEditor.tsx b/public/app/features/dimensions/editors/ResourceDimensionEditor.tsx index b85eadb6323..edd5de0cb1e 100644 --- a/public/app/features/dimensions/editors/ResourceDimensionEditor.tsx +++ b/public/app/features/dimensions/editors/ResourceDimensionEditor.tsx @@ -63,6 +63,11 @@ export const ResourceDimensionEditor: FC< [onChange, value] ); + const onClear = (event: React.MouseEvent) => { + event.stopPropagation(); + onChange({ mode: ResourceDimensionMode.Fixed, fixed: '', field: '' }); + }; + const openModal = useCallback(() => { setOpen(true); }, []); @@ -71,7 +76,14 @@ export const ResourceDimensionEditor: FC< const showSourceRadio = item.settings?.showSourceRadio ?? true; const mediaType = item.settings?.resourceType ?? 'icon'; const folderName = item.settings?.folderName ?? ResourceFolderName.Icon; - const srcPath = mediaType === 'icon' && value ? getPublicOrAbsoluteUrl(value?.fixed) : ''; + let srcPath = ''; + if (mediaType === 'icon') { + if (value?.fixed) { + srcPath = getPublicOrAbsoluteUrl(value.fixed); + } else if (item.settings?.placeholderValue) { + srcPath = getPublicOrAbsoluteUrl(item.settings.placeholderValue); + } + } return ( <> @@ -106,15 +118,14 @@ export const ResourceDimensionEditor: FC< )} {mode === ResourceDimensionMode.Fixed && ( - + } - suffix={