Skip to content

Commit b3363fb

Browse files
[maps] convert VectorStyleEditor to TS (#83582) (#83755)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
1 parent b79f5fa commit b3363fb

File tree

23 files changed

+297
-197
lines changed

23 files changed

+297
-197
lines changed

x-pack/plugins/maps/common/descriptor_types/style_property_descriptor_types.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -174,18 +174,18 @@ export type SizeStylePropertyDescriptor =
174174
};
175175

176176
export type VectorStylePropertiesDescriptor = {
177-
[VECTOR_STYLES.SYMBOLIZE_AS]?: SymbolizeAsStylePropertyDescriptor;
178-
[VECTOR_STYLES.FILL_COLOR]?: ColorStylePropertyDescriptor;
179-
[VECTOR_STYLES.LINE_COLOR]?: ColorStylePropertyDescriptor;
180-
[VECTOR_STYLES.LINE_WIDTH]?: SizeStylePropertyDescriptor;
181-
[VECTOR_STYLES.ICON]?: IconStylePropertyDescriptor;
182-
[VECTOR_STYLES.ICON_SIZE]?: SizeStylePropertyDescriptor;
183-
[VECTOR_STYLES.ICON_ORIENTATION]?: OrientationStylePropertyDescriptor;
184-
[VECTOR_STYLES.LABEL_TEXT]?: LabelStylePropertyDescriptor;
185-
[VECTOR_STYLES.LABEL_COLOR]?: ColorStylePropertyDescriptor;
186-
[VECTOR_STYLES.LABEL_SIZE]?: SizeStylePropertyDescriptor;
187-
[VECTOR_STYLES.LABEL_BORDER_COLOR]?: ColorStylePropertyDescriptor;
188-
[VECTOR_STYLES.LABEL_BORDER_SIZE]?: LabelBorderSizeStylePropertyDescriptor;
177+
[VECTOR_STYLES.SYMBOLIZE_AS]: SymbolizeAsStylePropertyDescriptor;
178+
[VECTOR_STYLES.FILL_COLOR]: ColorStylePropertyDescriptor;
179+
[VECTOR_STYLES.LINE_COLOR]: ColorStylePropertyDescriptor;
180+
[VECTOR_STYLES.LINE_WIDTH]: SizeStylePropertyDescriptor;
181+
[VECTOR_STYLES.ICON]: IconStylePropertyDescriptor;
182+
[VECTOR_STYLES.ICON_SIZE]: SizeStylePropertyDescriptor;
183+
[VECTOR_STYLES.ICON_ORIENTATION]: OrientationStylePropertyDescriptor;
184+
[VECTOR_STYLES.LABEL_TEXT]: LabelStylePropertyDescriptor;
185+
[VECTOR_STYLES.LABEL_COLOR]: ColorStylePropertyDescriptor;
186+
[VECTOR_STYLES.LABEL_SIZE]: SizeStylePropertyDescriptor;
187+
[VECTOR_STYLES.LABEL_BORDER_COLOR]: ColorStylePropertyDescriptor;
188+
[VECTOR_STYLES.LABEL_BORDER_SIZE]: LabelBorderSizeStylePropertyDescriptor;
189189
};
190190

191191
export type StyleDescriptor = {

x-pack/plugins/maps/public/classes/layers/blended_vector_layer/blended_vector_layer.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import {
3636
LayerDescriptor,
3737
VectorLayerDescriptor,
3838
VectorSourceRequestMeta,
39+
VectorStylePropertiesDescriptor,
3940
} from '../../../../common/descriptor_types';
4041
import { IVectorSource } from '../../sources/vector_source';
4142
import { LICENSED_FEATURES } from '../../../licensed_features';
@@ -79,13 +80,15 @@ function getClusterStyleDescriptor(
7980
clusterSource: ESGeoGridSource
8081
): VectorStyleDescriptor {
8182
const defaultDynamicProperties = getDefaultDynamicProperties();
82-
const clusterStyleDescriptor: VectorStyleDescriptor = {
83+
const clusterStyleDescriptor: Omit<VectorStyleDescriptor, 'properties'> & {
84+
properties: Partial<VectorStylePropertiesDescriptor>;
85+
} = {
8386
type: LAYER_STYLE_TYPE.VECTOR,
8487
properties: {
8588
[VECTOR_STYLES.LABEL_TEXT]: {
8689
type: STYLE_TYPE.DYNAMIC,
8790
options: {
88-
...defaultDynamicProperties[VECTOR_STYLES.LABEL_TEXT]!.options,
91+
...defaultDynamicProperties[VECTOR_STYLES.LABEL_TEXT].options,
8992
field: {
9093
name: COUNT_PROP_NAME,
9194
origin: FIELD_ORIGIN.SOURCE,
@@ -95,7 +98,7 @@ function getClusterStyleDescriptor(
9598
[VECTOR_STYLES.ICON_SIZE]: {
9699
type: STYLE_TYPE.DYNAMIC,
97100
options: {
98-
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE]!.options as SizeDynamicOptions),
101+
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE].options as SizeDynamicOptions),
99102
field: {
100103
name: COUNT_PROP_NAME,
101104
origin: FIELD_ORIGIN.SOURCE,
@@ -157,7 +160,7 @@ function getClusterStyleDescriptor(
157160
}
158161
});
159162

160-
return clusterStyleDescriptor;
163+
return clusterStyleDescriptor as VectorStyleDescriptor;
161164
}
162165

163166
export interface BlendedVectorLayerArguments {

x-pack/plugins/maps/public/classes/layers/choropleth_layer_wizard/create_choropleth_layer_descriptor.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ function createChoroplethLayerDescriptor({
7171
[VECTOR_STYLES.FILL_COLOR]: {
7272
type: STYLE_TYPE.DYNAMIC,
7373
options: {
74-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions),
74+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions),
7575
field: {
7676
name: joinKey,
7777
origin: FIELD_ORIGIN.JOIN,

x-pack/plugins/maps/public/classes/layers/create_region_map_layer_descriptor.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,15 +100,15 @@ export function createRegionMapLayerDescriptor({
100100
[VECTOR_STYLES.FILL_COLOR]: {
101101
type: STYLE_TYPE.DYNAMIC,
102102
options: {
103-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions),
103+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions),
104104
field: {
105105
name: joinKey,
106106
origin: FIELD_ORIGIN.JOIN,
107107
},
108108
color: colorPallette ? colorPallette.value : 'Yellow to Red',
109109
type: COLOR_MAP_TYPE.ORDINAL,
110110
fieldMetaOptions: {
111-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions)
111+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions)
112112
.fieldMetaOptions,
113113
isEnabled: false,
114114
},

x-pack/plugins/maps/public/classes/layers/create_tile_map_layer_descriptor.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -113,16 +113,16 @@ export function createTileMapLayerDescriptor({
113113
const colorPallette = NUMERICAL_COLOR_PALETTES.find((pallette) => {
114114
return pallette.value.toLowerCase() === colorSchema.toLowerCase();
115115
});
116-
const styleProperties: VectorStylePropertiesDescriptor = {
116+
const styleProperties: Partial<VectorStylePropertiesDescriptor> = {
117117
[VECTOR_STYLES.FILL_COLOR]: {
118118
type: STYLE_TYPE.DYNAMIC,
119119
options: {
120-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions),
120+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions),
121121
field: metricStyleField,
122122
color: colorPallette ? colorPallette.value : 'Yellow to Red',
123123
type: COLOR_MAP_TYPE.ORDINAL,
124124
fieldMetaOptions: {
125-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions)
125+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions)
126126
.fieldMetaOptions,
127127
isEnabled: false,
128128
},
@@ -139,11 +139,11 @@ export function createTileMapLayerDescriptor({
139139
styleProperties[VECTOR_STYLES.ICON_SIZE] = {
140140
type: STYLE_TYPE.DYNAMIC,
141141
options: {
142-
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE]!.options as SizeDynamicOptions),
142+
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE].options as SizeDynamicOptions),
143143
maxSize: 18,
144144
field: metricStyleField,
145145
fieldMetaOptions: {
146-
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE]!.options as SizeDynamicOptions)
146+
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE].options as SizeDynamicOptions)
147147
.fieldMetaOptions,
148148
isEnabled: false,
149149
},

x-pack/plugins/maps/public/classes/layers/layer.tsx

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,9 @@ export interface ILayer {
7676
getType(): string | undefined;
7777
isVisible(): boolean;
7878
cloneDescriptor(): Promise<LayerDescriptor>;
79-
renderStyleEditor({
80-
onStyleDescriptorChange,
81-
}: {
82-
onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void;
83-
}): ReactElement<any> | null;
79+
renderStyleEditor(
80+
onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void
81+
): ReactElement<any> | null;
8482
getInFlightRequestTokens(): symbol[];
8583
getPrevRequestToken(dataId: string): symbol | undefined;
8684
destroy: () => void;
@@ -437,16 +435,14 @@ export class AbstractLayer implements ILayer {
437435
return null;
438436
}
439437

440-
renderStyleEditor({
441-
onStyleDescriptorChange,
442-
}: {
443-
onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void;
444-
}): ReactElement<any> | null {
438+
renderStyleEditor(
439+
onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void
440+
): ReactElement<any> | null {
445441
const style = this.getStyleForEditing();
446442
if (!style) {
447443
return null;
448444
}
449-
return style.renderEditor({ layer: this, onStyleDescriptorChange });
445+
return style.renderEditor(onStyleDescriptorChange);
450446
}
451447

452448
getIndexPatternIds(): string[] {

x-pack/plugins/maps/public/classes/layers/solution_layers/observability/create_layer_descriptor.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ function createDynamicFillColorDescriptor(
5050
return {
5151
type: STYLE_TYPE.DYNAMIC,
5252
options: {
53-
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR]!.options as ColorDynamicOptions),
53+
...(defaultDynamicProperties[VECTOR_STYLES.FILL_COLOR].options as ColorDynamicOptions),
5454
field,
5555
color:
5656
layer === OBSERVABILITY_LAYER_TYPE.APM_RUM_PERFORMANCE ? 'Green to Red' : 'Yellow to Red',
@@ -226,12 +226,12 @@ export function createLayerDescriptor({
226226
origin: FIELD_ORIGIN.SOURCE,
227227
};
228228

229-
const styleProperties: VectorStylePropertiesDescriptor = {
229+
const styleProperties: Partial<VectorStylePropertiesDescriptor> = {
230230
[VECTOR_STYLES.FILL_COLOR]: createDynamicFillColorDescriptor(layer, metricStyleField),
231231
[VECTOR_STYLES.ICON_SIZE]: {
232232
type: STYLE_TYPE.DYNAMIC,
233233
options: {
234-
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE]!.options as SizeDynamicOptions),
234+
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE].options as SizeDynamicOptions),
235235
field: metricStyleField,
236236
},
237237
},

x-pack/plugins/maps/public/classes/layers/solution_layers/security/create_layer_descriptors.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ function createSourceLayerDescriptor(indexPatternId: string, indexPatternTitle:
6868
],
6969
});
7070

71-
const styleProperties: VectorStylePropertiesDescriptor = {
71+
const styleProperties: Partial<VectorStylePropertiesDescriptor> = {
7272
[VECTOR_STYLES.FILL_COLOR]: {
7373
type: STYLE_TYPE.STATIC,
7474
options: { color: euiVisColorPalette[1] },
@@ -121,7 +121,7 @@ function createDestinationLayerDescriptor(indexPatternId: string, indexPatternTi
121121
],
122122
});
123123

124-
const styleProperties: VectorStylePropertiesDescriptor = {
124+
const styleProperties: Partial<VectorStylePropertiesDescriptor> = {
125125
[VECTOR_STYLES.FILL_COLOR]: {
126126
type: STYLE_TYPE.STATIC,
127127
options: { color: euiVisColorPalette[2] },
@@ -168,15 +168,15 @@ function createLineLayerDescriptor(indexPatternId: string, indexPatternTitle: st
168168
],
169169
});
170170

171-
const styleProperties: VectorStylePropertiesDescriptor = {
171+
const styleProperties: Partial<VectorStylePropertiesDescriptor> = {
172172
[VECTOR_STYLES.LINE_COLOR]: {
173173
type: STYLE_TYPE.STATIC,
174174
options: { color: euiVisColorPalette[1] },
175175
},
176176
[VECTOR_STYLES.LINE_WIDTH]: {
177177
type: STYLE_TYPE.DYNAMIC,
178178
options: {
179-
...(defaultDynamicProperties[VECTOR_STYLES.LINE_WIDTH]!.options as SizeDynamicOptions),
179+
...(defaultDynamicProperties[VECTOR_STYLES.LINE_WIDTH].options as SizeDynamicOptions),
180180
field: {
181181
name: COUNT_PROP_NAME,
182182
origin: FIELD_ORIGIN.SOURCE,

x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/clusters_layer_wizard.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export const clustersLayerWizardConfig: LayerWizard = {
7777
[VECTOR_STYLES.ICON_SIZE]: {
7878
type: STYLE_TYPE.DYNAMIC,
7979
options: {
80-
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE]!.options as SizeDynamicOptions),
80+
...(defaultDynamicProperties[VECTOR_STYLES.ICON_SIZE].options as SizeDynamicOptions),
8181
field: {
8282
name: COUNT_PROP_NAME,
8383
origin: FIELD_ORIGIN.SOURCE,
@@ -87,7 +87,7 @@ export const clustersLayerWizardConfig: LayerWizard = {
8787
[VECTOR_STYLES.LABEL_TEXT]: {
8888
type: STYLE_TYPE.DYNAMIC,
8989
options: {
90-
...defaultDynamicProperties[VECTOR_STYLES.LABEL_TEXT]!.options,
90+
...defaultDynamicProperties[VECTOR_STYLES.LABEL_TEXT].options,
9191
field: {
9292
name: COUNT_PROP_NAME,
9393
origin: FIELD_ORIGIN.SOURCE,

x-pack/plugins/maps/public/classes/styles/heatmap/heatmap_style.tsx

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,7 @@ export class HeatmapStyle implements IStyle {
4141
return LAYER_STYLE_TYPE.HEATMAP;
4242
}
4343

44-
renderEditor({
45-
onStyleDescriptorChange,
46-
}: {
47-
onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void;
48-
}) {
44+
renderEditor(onStyleDescriptorChange: (styleDescriptor: StyleDescriptor) => void) {
4945
const onHeatmapColorChange = ({ colorRampName }: { colorRampName: string }) => {
5046
const styleDescriptor = HeatmapStyle.createDescriptor(colorRampName);
5147
onStyleDescriptorChange(styleDescriptor);

0 commit comments

Comments
 (0)