@splunk/visualizations 24.3.5 → 24.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.loki/reference/chrome_docker_PureVisualizations_PureSingleValueRadial_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Area_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bar_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bubble_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_ChoroplethSvg_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Column_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Ellipse_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_FillerGauge_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Image_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Line_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_LinkGraph_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Markdown_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_MarkerGauge_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Parallel_Coordinates_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Pie_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Punchcard_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Rectangle_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Sankey_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Scatter_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Icon_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Radial_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Table_Editor.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Area_Area_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Area_Area_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Bar_Bar_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Bar_Bar_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Click.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Missing_Props_Message_When_No_Svg.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Placeholder_If_No_Svg_And_No_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Set_the_color_of_multiple_areas_in_an_Svg_based_on_a_rangeValue_threshold.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Set_the_color_of_multiple_areas_in_an_Svg_based_on_areaIds.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Set_the_color_using_multiMap_formatter.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Svg_Shows_Even_When_No_Datasources.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Use_Local_To_Download_Svg.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Column_Column_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Column_Column_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Background_Color_orange.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Basic_Filler_Gauge.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Gauge_Color_computed_using_rangeValue_formatter.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Gauge_Color_yellow.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Label_Display_number_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Label_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Label_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Major_Tick_Interval_10.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Major_Tick_Interval_auto_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Orientation_horizontal.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Orientation_horizontal_height_100_no_placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Orientation_vertical_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Value_Display_number_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Value_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Value_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Filler_Gauge_Filler_Gauge_Value_Display_percentage_Label_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Image_Image_No_image_src_present_in_options.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Image_Image_No_options_present.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Line_Line_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Line_Line_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Basic_LinkGraph.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Field_Order_First_and_Last_Fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Field_Order_From_the_First_to_the_Last_Fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Field_Order_From_the_Last_to_the_First_Fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Node_Text_Highlight_Color.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Result_Limit_3.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_LinkGraph_LinkGraph_Show_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Basic_Map.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Additional_Cases.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_GET.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_GET_Dynamic_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Internal_Fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Mostly_null.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Static_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_Dynamic_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Dynamic_coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Result_Limit_Set_To_3.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_with_geostats_data_No_render.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Restricted_Zoom.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Set_Map_tiles.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Background_Color_af575a.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Basic_Markdown.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Begin_with_Text_Instead_of_Header.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Color_purple.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Size_extraLarge.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Markdown_with_number_as_DSL.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Background_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Basic_Marker_Gauge.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Gauge_Ranges_0_to_30_purple_30_to_90_blue_90_to_100_pink.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Gauge_Ranges_negative_10_to_50_blue.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Label_Display_number_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Label_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Label_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Major_Tick_Interval_7.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Orientation_horizontal.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Orientation_vertical_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Value_Display_number_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Value_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Value_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Marker_Gauge_Marker_Gauge_Value_Display_percentage_Label_Display_percentage.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Array_column_values.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Background_Color_yellow.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Basic_Parallel_Coordinates.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Categorical_dataSources_excessive_categorical_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Larger_Dimensions_width_800_height_500.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Line_Color_pink.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Line_Opacity_0_3.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Numerical_dataSources.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Show_Null_Axis_false.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Show_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Parallel_Coordinates_Parallel_Coordinates_Stringified_Numerical_dataSources.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_empty_columns_and_fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_invalid_label_data_specified.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_invalid_value_data_specified.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_missing_column.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_values_in_datasource_are_all_invalid.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Basic_Punchcard.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Label_Display_all_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Label_Display_max.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Label_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Row_Scale_global_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Row_Scale_row.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Max_50.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Max_75_Bubble_Size_Min_15_Bubble_Size_Method_radius_Bubble_Row_Scale_row.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Max_75_Bubble_Size_Min_15_Color_Mode_categorical.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Method_area_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Method_radius.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Bubble_Size_Min_10.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Color_Mode_categorical.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Color_Mode_categorical_Legend_Display_off.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Color_Mode_categorical_Legend_Display_right_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Color_Mode_categorical_Series_Color_red_blue_green_orange_cyan.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Color_Mode_dynamic_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Multi_Series.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Default_Sort_false_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Default_Sort_true.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_false.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_false_Bubble_Radius_Max_25.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_false_Bubble_Radius_Min_5.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_false_Bubble_Radius_Min_5_Bubble_Radius_Max_30_Bubble_Row_Scale_row.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_false_Bubble_Radius_Min_5_Bubble_Radius_Max_30_Color_Mode_categorical_Bubble_Size_Method_radius.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Punchcard_Punchcard_Show_Dynamic_Bubble_Size_true_default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Background_Color_pink.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Backward_Link_Self_Loop.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Basic_Sankey.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Color_Mode_dynamic.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Larger_Dimension.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Link_Opacity_0_8.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Link_Opacity_Changed.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Link_Values_Not_Default.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Sankey_Sankey_Show_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Change_Icon_Color_For_A_Remote_Icon.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_The_Icon_As_A_Remote_Icon.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_backgroundColor_based_on_the_majorValue.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_icon_color_based_on_the_majorValue.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_majorColor_based_on_the_majorValue.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Mixed_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Numerical_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_String_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_The_First_Series_Data_If_No_Matched_Type.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Time_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Background_From_Major_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Background_From_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Major_Value_Color.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Major_Value_Color_By_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Max_Value_1000.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Radial_Color_By_Major_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Show_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Use_String_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Change_The_Color_Of_Major_Value_Based_On_Its_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_No_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Background_Color_Based_On_The_Major_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Background_Color_Based_On_The_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Color_Of_Major_Value_Based_On_The_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Color_Of_The_Trend_Indicators_And_Number_Based_On_The_Trend_Value.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Show_Gaps_For_Null_Value_In_Sparkline.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Show_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Trend_Index_Out_Of_Range.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Trend_Value_Is_Zero.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Mixed_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Numerical_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_String_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_The_First_Series_Data_If_No_Matched_Type.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Time_Type_Series_Data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Cell_Types.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Dark_Background_No_Stripe.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Dark_Background_Stripe.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Header_Visibility_fixed.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Placeholder.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Show_Internal_Fields_false.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline_Custom.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparklines_Adv.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Table_Table_Time_Zone_Time_Formatting.png +0 -0
- package/Area.config.js +40 -31
- package/Area.config.js.map +1 -1
- package/Area.js +324 -276
- package/Area.js.map +1 -1
- package/Bar.config.js +33 -24
- package/Bar.config.js.map +1 -1
- package/Bar.js +315 -267
- package/Bar.js.map +1 -1
- package/Bubble.config.js +26 -17
- package/Bubble.config.js.map +1 -1
- package/Bubble.js +307 -259
- package/Bubble.js.map +1 -1
- package/ChoroplethSvg.config.js +24 -15
- package/ChoroplethSvg.config.js.map +1 -1
- package/ChoroplethSvg.js +309 -256
- package/ChoroplethSvg.js.map +1 -1
- package/Column.config.js +33 -24
- package/Column.config.js.map +1 -1
- package/Column.js +315 -267
- package/Column.js.map +1 -1
- package/Ellipse.config.js +20 -19
- package/Ellipse.config.js.map +1 -1
- package/Ellipse.js +272 -227
- package/Ellipse.js.map +1 -1
- package/FillerGauge.config.js +31 -22
- package/FillerGauge.config.js.map +1 -1
- package/FillerGauge.js +293 -240
- package/FillerGauge.js.map +1 -1
- package/Image.config.js +10 -10
- package/Image.config.js.map +1 -1
- package/Image.js +261 -211
- package/Image.js.map +1 -1
- package/Line.config.js +33 -24
- package/Line.config.js.map +1 -1
- package/Line.js +316 -268
- package/Line.js.map +1 -1
- package/LinkGraph.config.js +52 -42
- package/LinkGraph.config.js.map +1 -1
- package/LinkGraph.js +339 -278
- package/LinkGraph.js.map +1 -1
- package/Map.config.js +67 -37
- package/Map.config.js.map +1 -1
- package/Map.js +1887 -1304
- package/Map.js.map +1 -1
- package/Markdown.config.js +37 -9
- package/Markdown.config.js.map +1 -1
- package/Markdown.js +499 -238
- package/Markdown.js.map +1 -1
- package/MarkerGauge.config.js +21 -11
- package/MarkerGauge.config.js.map +1 -1
- package/MarkerGauge.js +1154 -1101
- package/MarkerGauge.js.map +1 -1
- package/ParallelCoordinates.config.js +21 -11
- package/ParallelCoordinates.config.js.map +1 -1
- package/ParallelCoordinates.js +306 -252
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.config.js +21 -11
- package/Pie.config.js.map +1 -1
- package/Pie.js +405 -261
- package/Pie.js.map +1 -1
- package/Punchcard.config.js +21 -11
- package/Punchcard.config.js.map +1 -1
- package/Punchcard.js +345 -291
- package/Punchcard.js.map +1 -1
- package/Rectangle.config.js +22 -22
- package/Rectangle.config.js.map +1 -1
- package/Rectangle.js +311 -268
- package/Rectangle.js.map +1 -1
- package/Sankey.config.js +31 -21
- package/Sankey.config.js.map +1 -1
- package/Sankey.js +3135 -2948
- package/Sankey.js.map +1 -1
- package/Scatter.config.js +25 -15
- package/Scatter.config.js.map +1 -1
- package/Scatter.js +383 -337
- package/Scatter.js.map +1 -1
- package/SingleValue.config.js +41 -32
- package/SingleValue.config.js.map +1 -1
- package/SingleValue.js +441 -388
- package/SingleValue.js.map +1 -1
- package/SingleValueBasic.js +27 -27
- package/SingleValueBasic.js.map +1 -1
- package/SingleValueIcon.config.js +38 -37
- package/SingleValueIcon.config.js.map +1 -1
- package/SingleValueIcon.js +350 -309
- package/SingleValueIcon.js.map +1 -1
- package/SingleValueRadial.config.js +174 -136
- package/SingleValueRadial.config.js.map +1 -1
- package/SingleValueRadial.js +455 -402
- package/SingleValueRadial.js.map +1 -1
- package/Table.config.js +32 -21
- package/Table.config.js.map +1 -1
- package/Table.js +727 -449
- package/Table.js.map +1 -1
- package/common/Charting.js +26 -25
- package/common/Charting.js.map +1 -1
- package/common/ChartingApi.js +2 -2
- package/common/ChartingApi.js.map +1 -1
- package/common/EventsDoc.js +23 -22
- package/common/EventsDoc.js.map +1 -1
- package/common/GaugeMajorTicks.js +12 -12
- package/common/GaugeMajorTicks.js.map +1 -1
- package/common/GaugeValueMarker.js +12 -12
- package/common/GaugeValueMarker.js.map +1 -1
- package/common/OptionsDoc.js +225 -181
- package/common/OptionsDoc.js.map +1 -1
- package/common/OverviewDoc.js +22 -22
- package/common/OverviewDoc.js.map +1 -1
- package/common/SplunkVisualization.js +4 -4
- package/common/SplunkVisualization.js.map +1 -1
- package/common/SplunkVisualizationApi.js +2 -2
- package/common/SplunkVisualizationApi.js.map +1 -1
- package/common/ThemesDoc.js +28 -28
- package/common/ThemesDoc.js.map +1 -1
- package/common/chartingUtils.js +5 -5
- package/common/chartingUtils.js.map +1 -1
- package/common/docUtils.js +4 -4
- package/common/docUtils.js.map +1 -1
- package/common/gaugeUtils.js +13 -13
- package/common/gaugeUtils.js.map +1 -1
- package/common/shapeUtils.js +12 -12
- package/common/shapeUtils.js.map +1 -1
- package/common/withDashboardViz.js +99 -54
- package/common/withDashboardViz.js.map +1 -1
- package/package.json +16 -13
package/Map.js
CHANGED
|
@@ -87,7 +87,7 @@ module.exports =
|
|
|
87
87
|
/******/
|
|
88
88
|
/******/
|
|
89
89
|
/******/ // Load entry module and return exports
|
|
90
|
-
/******/ return __webpack_require__(__webpack_require__.s =
|
|
90
|
+
/******/ return __webpack_require__(__webpack_require__.s = 194);
|
|
91
91
|
/******/ })
|
|
92
92
|
/************************************************************************/
|
|
93
93
|
/******/ ([
|
|
@@ -164,7 +164,7 @@ var VizBehavior;
|
|
|
164
164
|
"use strict";
|
|
165
165
|
|
|
166
166
|
|
|
167
|
-
var _defineProperty = __webpack_require__(
|
|
167
|
+
var _defineProperty = __webpack_require__(7);
|
|
168
168
|
|
|
169
169
|
var __rest = this && this.__rest || function (s, e) {
|
|
170
170
|
var t = {};
|
|
@@ -186,7 +186,7 @@ exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOp
|
|
|
186
186
|
|
|
187
187
|
var lodash_1 = __webpack_require__(2);
|
|
188
188
|
|
|
189
|
-
var schemaUtils_1 = __webpack_require__(
|
|
189
|
+
var schemaUtils_1 = __webpack_require__(15);
|
|
190
190
|
|
|
191
191
|
var VizBehavior_1 = __webpack_require__(5);
|
|
192
192
|
|
|
@@ -350,12 +350,18 @@ exports.generatePrecisionValues = generatePrecisionValues;
|
|
|
350
350
|
|
|
351
351
|
/***/ }),
|
|
352
352
|
/* 7 */
|
|
353
|
+
/***/ (function(module, exports) {
|
|
354
|
+
|
|
355
|
+
module.exports = require("@babel/runtime/helpers/defineProperty");
|
|
356
|
+
|
|
357
|
+
/***/ }),
|
|
358
|
+
/* 8 */
|
|
353
359
|
/***/ (function(module, exports, __webpack_require__) {
|
|
354
360
|
|
|
355
361
|
"use strict";
|
|
356
362
|
|
|
357
363
|
|
|
358
|
-
var _typeof = __webpack_require__(
|
|
364
|
+
var _typeof = __webpack_require__(21);
|
|
359
365
|
|
|
360
366
|
Object.defineProperty(exports, "__esModule", {
|
|
361
367
|
value: true
|
|
@@ -476,12 +482,6 @@ var findClosestMatchFromDefaultList = function findClosestMatchFromDefaultList(s
|
|
|
476
482
|
|
|
477
483
|
exports.findClosestMatchFromDefaultList = findClosestMatchFromDefaultList;
|
|
478
484
|
|
|
479
|
-
/***/ }),
|
|
480
|
-
/* 8 */
|
|
481
|
-
/***/ (function(module, exports) {
|
|
482
|
-
|
|
483
|
-
module.exports = require("@babel/runtime/helpers/defineProperty");
|
|
484
|
-
|
|
485
485
|
/***/ }),
|
|
486
486
|
/* 9 */
|
|
487
487
|
/***/ (function(module, exports) {
|
|
@@ -498,10 +498,16 @@ module.exports = require("@babel/runtime/helpers/classCallCheck");
|
|
|
498
498
|
/* 11 */
|
|
499
499
|
/***/ (function(module, exports) {
|
|
500
500
|
|
|
501
|
-
module.exports = require("@splunk/
|
|
501
|
+
module.exports = require("@splunk/themes/variables");
|
|
502
502
|
|
|
503
503
|
/***/ }),
|
|
504
504
|
/* 12 */
|
|
505
|
+
/***/ (function(module, exports) {
|
|
506
|
+
|
|
507
|
+
module.exports = require("@splunk/visualizations-shared/colorUtils");
|
|
508
|
+
|
|
509
|
+
/***/ }),
|
|
510
|
+
/* 13 */
|
|
505
511
|
/***/ (function(module, exports, __webpack_require__) {
|
|
506
512
|
|
|
507
513
|
"use strict";
|
|
@@ -515,11 +521,11 @@ var React = __webpack_require__(1);
|
|
|
515
521
|
|
|
516
522
|
var styled_components_1 = __webpack_require__(4);
|
|
517
523
|
|
|
518
|
-
var SizeAwareWrapper_1 = __webpack_require__(
|
|
524
|
+
var SizeAwareWrapper_1 = __webpack_require__(17);
|
|
519
525
|
|
|
520
|
-
var style_1 = __webpack_require__(
|
|
526
|
+
var style_1 = __webpack_require__(14);
|
|
521
527
|
|
|
522
|
-
var colorUtils_1 = __webpack_require__(
|
|
528
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
523
529
|
|
|
524
530
|
var Item = styled_components_1.default.div.attrs(function (_ref) {
|
|
525
531
|
var width = _ref.width;
|
|
@@ -576,7 +582,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
|
|
|
576
582
|
|
|
577
583
|
return React.createElement(FixSizeItem, {
|
|
578
584
|
"data-test": "fix-size-item",
|
|
579
|
-
"data-splunk-visualization-version": "24.
|
|
585
|
+
"data-splunk-visualization-version": "24.5.1 - edc4c958c",
|
|
580
586
|
width: width,
|
|
581
587
|
height: height,
|
|
582
588
|
backgroundColor: backgroundColor
|
|
@@ -597,48 +603,177 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
|
|
|
597
603
|
exports.default = withFixedSizeContainer;
|
|
598
604
|
|
|
599
605
|
/***/ }),
|
|
600
|
-
/*
|
|
606
|
+
/* 14 */
|
|
601
607
|
/***/ (function(module, exports) {
|
|
602
608
|
|
|
603
609
|
module.exports = require("@splunk/visualizations-shared/style");
|
|
604
610
|
|
|
605
611
|
/***/ }),
|
|
606
|
-
/*
|
|
612
|
+
/* 15 */
|
|
607
613
|
/***/ (function(module, exports) {
|
|
608
614
|
|
|
609
615
|
module.exports = require("@splunk/visualizations-shared/schemaUtils");
|
|
610
616
|
|
|
611
617
|
/***/ }),
|
|
612
|
-
/*
|
|
618
|
+
/* 16 */
|
|
613
619
|
/***/ (function(module, exports) {
|
|
614
620
|
|
|
615
621
|
module.exports = require("@babel/runtime/helpers/createClass");
|
|
616
622
|
|
|
617
623
|
/***/ }),
|
|
618
|
-
/*
|
|
624
|
+
/* 17 */
|
|
619
625
|
/***/ (function(module, exports) {
|
|
620
626
|
|
|
621
627
|
module.exports = require("@splunk/visualizations-shared/SizeAwareWrapper");
|
|
622
628
|
|
|
623
629
|
/***/ }),
|
|
624
|
-
/* 17 */,
|
|
625
630
|
/* 18 */,
|
|
626
|
-
/* 19
|
|
627
|
-
|
|
631
|
+
/* 19 */
|
|
632
|
+
/***/ (function(module, exports) {
|
|
633
|
+
|
|
634
|
+
module.exports = require("@splunk/visualization-context/TimezoneContext");
|
|
635
|
+
|
|
636
|
+
/***/ }),
|
|
637
|
+
/* 20 */,
|
|
638
|
+
/* 21 */
|
|
628
639
|
/***/ (function(module, exports) {
|
|
629
640
|
|
|
630
641
|
module.exports = require("@babel/runtime/helpers/typeof");
|
|
631
642
|
|
|
632
643
|
/***/ }),
|
|
633
|
-
/* 21 */,
|
|
634
644
|
/* 22 */,
|
|
635
|
-
/* 23
|
|
645
|
+
/* 23 */,
|
|
646
|
+
/* 24 */
|
|
647
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
648
|
+
|
|
649
|
+
"use strict";
|
|
650
|
+
|
|
651
|
+
|
|
652
|
+
Object.defineProperty(exports, "__esModule", {
|
|
653
|
+
value: true
|
|
654
|
+
});
|
|
655
|
+
exports.pickFieldFromJSONSchema = void 0;
|
|
656
|
+
|
|
657
|
+
var lodash_1 = __webpack_require__(2);
|
|
658
|
+
|
|
659
|
+
var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
|
|
660
|
+
var fieldName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
|
|
661
|
+
return Object.keys(optionsSchema).reduce(function (accum, k) {
|
|
662
|
+
if (lodash_1.has(optionsSchema[k], fieldName)) {
|
|
663
|
+
accum[k] = optionsSchema[k][fieldName];
|
|
664
|
+
} else if (lodash_1.get(optionsSchema, [k, 'type']) === 'object' && lodash_1.has(optionsSchema[k], 'properties')) {
|
|
665
|
+
var nestedSchema = exports.pickFieldFromJSONSchema(optionsSchema[k].properties, fieldName);
|
|
666
|
+
|
|
667
|
+
if (!lodash_1.isEmpty(nestedSchema)) {
|
|
668
|
+
accum[k] = nestedSchema;
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
return accum;
|
|
673
|
+
}, {});
|
|
674
|
+
};
|
|
675
|
+
|
|
676
|
+
exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
|
|
677
|
+
|
|
678
|
+
/***/ }),
|
|
679
|
+
/* 25 */
|
|
680
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
681
|
+
|
|
682
|
+
"use strict";
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
Object.defineProperty(exports, "__esModule", {
|
|
686
|
+
value: true
|
|
687
|
+
});
|
|
688
|
+
exports.shouldShowIconPlaceholder = void 0;
|
|
689
|
+
|
|
690
|
+
var React = __webpack_require__(1);
|
|
691
|
+
|
|
692
|
+
var T = __webpack_require__(0);
|
|
693
|
+
|
|
694
|
+
var lodash_1 = __webpack_require__(2);
|
|
695
|
+
|
|
696
|
+
var i18n_1 = __webpack_require__(3);
|
|
697
|
+
|
|
698
|
+
var Message_1 = __webpack_require__(9);
|
|
699
|
+
|
|
700
|
+
var FixedSizeContainer_1 = __webpack_require__(13);
|
|
701
|
+
/**
|
|
702
|
+
* @method shouldShowIconPlaceholder
|
|
703
|
+
* @param {object} dataSources
|
|
704
|
+
* @param {boolean} loading
|
|
705
|
+
* @returns {boolean}
|
|
706
|
+
*/
|
|
707
|
+
|
|
708
|
+
|
|
709
|
+
var shouldShowIconPlaceholder = function shouldShowIconPlaceholder(dataSources) {
|
|
710
|
+
var loading = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
711
|
+
var data = lodash_1.get(dataSources, 'primary.data.columns[0]', undefined);
|
|
712
|
+
var noData = data === undefined;
|
|
713
|
+
var fields = lodash_1.get(dataSources, 'primary.data.fields[0]', undefined);
|
|
714
|
+
var noFields = fields === undefined;
|
|
715
|
+
return loading || noData || noFields;
|
|
716
|
+
};
|
|
717
|
+
|
|
718
|
+
exports.shouldShowIconPlaceholder = shouldShowIconPlaceholder;
|
|
719
|
+
var propTypes = {
|
|
720
|
+
icon: T.func,
|
|
721
|
+
width: T.oneOfType([T.string, T.number]),
|
|
722
|
+
height: T.oneOfType([T.string, T.number]),
|
|
723
|
+
// eslint-disable-next-line react/no-unused-prop-types
|
|
724
|
+
backgroundColor: T.string,
|
|
725
|
+
iconColor: T.string
|
|
726
|
+
};
|
|
727
|
+
/**
|
|
728
|
+
* @method IconPlaceholder
|
|
729
|
+
* @param {IconPlaceholderProps} props
|
|
730
|
+
* @returns {React.ReactElement}
|
|
731
|
+
*/
|
|
732
|
+
|
|
733
|
+
var IconPlaceholder = function IconPlaceholder(props) {
|
|
734
|
+
var width = props.width,
|
|
735
|
+
height = props.height,
|
|
736
|
+
icon = props.icon,
|
|
737
|
+
iconColor = props.iconColor;
|
|
738
|
+
|
|
739
|
+
if (icon) {
|
|
740
|
+
return React.createElement(icon, {
|
|
741
|
+
style: {
|
|
742
|
+
left: '50%',
|
|
743
|
+
top: '50%',
|
|
744
|
+
color: iconColor,
|
|
745
|
+
opacity: 0.15,
|
|
746
|
+
position: 'absolute',
|
|
747
|
+
transform: 'translate(-50%, -50%)'
|
|
748
|
+
},
|
|
749
|
+
width: '50%',
|
|
750
|
+
height: '50%'
|
|
751
|
+
});
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
return React.createElement(Message_1.default, {
|
|
755
|
+
width: width,
|
|
756
|
+
height: height,
|
|
757
|
+
level: "warning",
|
|
758
|
+
message: i18n_1._('No DataSource Connected')
|
|
759
|
+
});
|
|
760
|
+
};
|
|
761
|
+
|
|
762
|
+
IconPlaceholder.propTypes = propTypes;
|
|
763
|
+
IconPlaceholder.defaultProps = {
|
|
764
|
+
width: '100%',
|
|
765
|
+
height: 250
|
|
766
|
+
};
|
|
767
|
+
exports.default = FixedSizeContainer_1.default(IconPlaceholder);
|
|
768
|
+
|
|
769
|
+
/***/ }),
|
|
770
|
+
/* 26 */
|
|
636
771
|
/***/ (function(module, exports, __webpack_require__) {
|
|
637
772
|
|
|
638
773
|
"use strict";
|
|
639
774
|
|
|
640
775
|
|
|
641
|
-
var _defineProperty = __webpack_require__(
|
|
776
|
+
var _defineProperty = __webpack_require__(7);
|
|
642
777
|
|
|
643
778
|
Object.defineProperty(exports, "__esModule", {
|
|
644
779
|
value: true
|
|
@@ -649,7 +784,7 @@ var T = __webpack_require__(0);
|
|
|
649
784
|
|
|
650
785
|
var lodash_1 = __webpack_require__(2);
|
|
651
786
|
|
|
652
|
-
var DataSource_1 = __webpack_require__(
|
|
787
|
+
var DataSource_1 = __webpack_require__(36);
|
|
653
788
|
|
|
654
789
|
exports.SortParamsPropTypes = T.shape({
|
|
655
790
|
currentSortKey: T.string,
|
|
@@ -702,7 +837,7 @@ var getSortingParams = function getSortingParams(_ref) {
|
|
|
702
837
|
exports.getSortingParams = getSortingParams;
|
|
703
838
|
|
|
704
839
|
/***/ }),
|
|
705
|
-
/*
|
|
840
|
+
/* 27 */
|
|
706
841
|
/***/ (function(module, exports, __webpack_require__) {
|
|
707
842
|
|
|
708
843
|
"use strict";
|
|
@@ -766,7 +901,7 @@ var getPaginationParams = function getPaginationParams(_ref) {
|
|
|
766
901
|
exports.getPaginationParams = getPaginationParams;
|
|
767
902
|
|
|
768
903
|
/***/ }),
|
|
769
|
-
/*
|
|
904
|
+
/* 28 */
|
|
770
905
|
/***/ (function(module, exports, __webpack_require__) {
|
|
771
906
|
|
|
772
907
|
"use strict";
|
|
@@ -775,31 +910,26 @@ exports.getPaginationParams = getPaginationParams;
|
|
|
775
910
|
Object.defineProperty(exports, "__esModule", {
|
|
776
911
|
value: true
|
|
777
912
|
});
|
|
778
|
-
exports.
|
|
779
|
-
|
|
780
|
-
var lodash_1 = __webpack_require__(2);
|
|
781
|
-
|
|
782
|
-
var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
|
|
783
|
-
var fieldName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
|
|
784
|
-
return Object.keys(optionsSchema).reduce(function (accum, k) {
|
|
785
|
-
if (lodash_1.has(optionsSchema[k], fieldName)) {
|
|
786
|
-
accum[k] = optionsSchema[k][fieldName];
|
|
787
|
-
} else if (lodash_1.get(optionsSchema, [k, 'type']) === 'object' && lodash_1.has(optionsSchema[k], 'properties')) {
|
|
788
|
-
var nestedSchema = exports.pickFieldFromJSONSchema(optionsSchema[k].properties, fieldName);
|
|
789
|
-
|
|
790
|
-
if (!lodash_1.isEmpty(nestedSchema)) {
|
|
791
|
-
accum[k] = nestedSchema;
|
|
792
|
-
}
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
return accum;
|
|
796
|
-
}, {});
|
|
797
|
-
};
|
|
913
|
+
exports.VizCategory = void 0;
|
|
914
|
+
var VizCategory;
|
|
798
915
|
|
|
799
|
-
|
|
916
|
+
(function (VizCategory) {
|
|
917
|
+
VizCategory["SINGLE_VALUE"] = "Single Value";
|
|
918
|
+
VizCategory["TRENDS"] = "Trends";
|
|
919
|
+
VizCategory["COMPARISONS"] = "Comparisons";
|
|
920
|
+
VizCategory["TABLE"] = "Table";
|
|
921
|
+
VizCategory["GAUGE"] = "Gauge";
|
|
922
|
+
VizCategory["DISTRIBUTIONS"] = "Distributions";
|
|
923
|
+
VizCategory["CHOROPLETH"] = "Choropleth Maps";
|
|
924
|
+
VizCategory["SHAPES"] = "Shapes";
|
|
925
|
+
VizCategory["MISC"] = "misc";
|
|
926
|
+
VizCategory["FLOW"] = "Flow";
|
|
927
|
+
VizCategory["CORRELATION"] = "Correlation";
|
|
928
|
+
VizCategory["SPATIAL"] = "Spatial";
|
|
929
|
+
})(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
|
|
800
930
|
|
|
801
931
|
/***/ }),
|
|
802
|
-
/*
|
|
932
|
+
/* 29 */
|
|
803
933
|
/***/ (function(module, exports, __webpack_require__) {
|
|
804
934
|
|
|
805
935
|
"use strict";
|
|
@@ -808,154 +938,42 @@ exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
|
|
|
808
938
|
Object.defineProperty(exports, "__esModule", {
|
|
809
939
|
value: true
|
|
810
940
|
});
|
|
811
|
-
exports.shouldShowIconPlaceholder = void 0;
|
|
812
941
|
|
|
813
942
|
var React = __webpack_require__(1);
|
|
814
943
|
|
|
815
|
-
var T = __webpack_require__(0);
|
|
816
|
-
|
|
817
944
|
var lodash_1 = __webpack_require__(2);
|
|
818
945
|
|
|
819
|
-
var
|
|
946
|
+
var getSettingsFromThemedProps_1 = __webpack_require__(30);
|
|
820
947
|
|
|
821
|
-
var
|
|
948
|
+
var Options_1 = __webpack_require__(31);
|
|
822
949
|
|
|
823
|
-
var
|
|
824
|
-
/**
|
|
825
|
-
* @method shouldShowIconPlaceholder
|
|
826
|
-
* @param {object} dataSources
|
|
827
|
-
* @param {boolean} loading
|
|
828
|
-
* @returns {boolean}
|
|
829
|
-
*/
|
|
950
|
+
var SanitizeProps_1 = __webpack_require__(32);
|
|
830
951
|
|
|
952
|
+
var TimezoneContext_1 = __webpack_require__(19);
|
|
831
953
|
|
|
832
|
-
var
|
|
833
|
-
var loading = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
834
|
-
var data = lodash_1.get(dataSources, 'primary.data.columns[0]', undefined);
|
|
835
|
-
var noData = data === undefined;
|
|
836
|
-
var fields = lodash_1.get(dataSources, 'primary.data.fields[0]', undefined);
|
|
837
|
-
var noFields = fields === undefined;
|
|
838
|
-
return loading || noData || noFields;
|
|
839
|
-
};
|
|
954
|
+
var moment_1 = __webpack_require__(33);
|
|
840
955
|
|
|
841
|
-
|
|
842
|
-
var propTypes = {
|
|
843
|
-
icon: T.func,
|
|
844
|
-
width: T.oneOfType([T.string, T.number]),
|
|
845
|
-
height: T.oneOfType([T.string, T.number]),
|
|
846
|
-
// eslint-disable-next-line react/no-unused-prop-types
|
|
847
|
-
backgroundColor: T.string
|
|
848
|
-
};
|
|
849
|
-
/**
|
|
850
|
-
* @method IconPlaceholder
|
|
851
|
-
* @param {IconPlaceholderProps} props
|
|
852
|
-
* @returns {React.ReactElement}
|
|
853
|
-
*/
|
|
956
|
+
var styled_components_1 = __webpack_require__(4);
|
|
854
957
|
|
|
855
|
-
var
|
|
856
|
-
var width = props.width,
|
|
857
|
-
height = props.height,
|
|
858
|
-
icon = props.icon;
|
|
958
|
+
var SplunkVisualization_1 = __webpack_require__(34);
|
|
859
959
|
|
|
860
|
-
|
|
861
|
-
return React.createElement(icon, {
|
|
862
|
-
style: {
|
|
863
|
-
left: '50%',
|
|
864
|
-
top: '50%',
|
|
865
|
-
color: 'grey',
|
|
866
|
-
position: 'absolute',
|
|
867
|
-
transform: 'translate(-50%, -50%)'
|
|
868
|
-
},
|
|
869
|
-
width: '50%',
|
|
870
|
-
height: '50%'
|
|
871
|
-
});
|
|
872
|
-
}
|
|
960
|
+
var VizBehavior_1 = __webpack_require__(5);
|
|
873
961
|
|
|
874
|
-
|
|
875
|
-
width: width,
|
|
876
|
-
height: height,
|
|
877
|
-
level: "warning",
|
|
878
|
-
message: i18n_1._('No DataSource Connected')
|
|
879
|
-
});
|
|
880
|
-
};
|
|
962
|
+
var getSorting_1 = __webpack_require__(26);
|
|
881
963
|
|
|
882
|
-
|
|
883
|
-
IconPlaceholder.defaultProps = {
|
|
884
|
-
width: '100%',
|
|
885
|
-
height: 250
|
|
886
|
-
};
|
|
887
|
-
exports.default = FixedSizeContainer_1.default(IconPlaceholder);
|
|
964
|
+
var getPagination_1 = __webpack_require__(27);
|
|
888
965
|
|
|
889
|
-
|
|
890
|
-
/* 27 */
|
|
891
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
966
|
+
var useDeepMemo_1 = __webpack_require__(37);
|
|
892
967
|
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
Object.defineProperty(exports, "__esModule", {
|
|
897
|
-
value: true
|
|
898
|
-
});
|
|
899
|
-
exports.VizCategory = void 0;
|
|
900
|
-
var VizCategory;
|
|
901
|
-
|
|
902
|
-
(function (VizCategory) {
|
|
903
|
-
VizCategory["SINGLE_VALUE"] = "Single Value";
|
|
904
|
-
VizCategory["TRENDS"] = "Trends";
|
|
905
|
-
VizCategory["COMPARISONS"] = "Comparisons";
|
|
906
|
-
VizCategory["TABLE"] = "Table";
|
|
907
|
-
VizCategory["GAUGE"] = "Gauge";
|
|
908
|
-
VizCategory["DISTRIBUTIONS"] = "Distributions";
|
|
909
|
-
VizCategory["CHOROPLETH"] = "Choropleth Maps";
|
|
910
|
-
VizCategory["SHAPES"] = "Shapes";
|
|
911
|
-
VizCategory["MISC"] = "misc";
|
|
912
|
-
VizCategory["FLOW"] = "Flow";
|
|
913
|
-
VizCategory["CORRELATION"] = "Correlation";
|
|
914
|
-
VizCategory["SPATIAL"] = "Spatial";
|
|
915
|
-
})(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
|
|
916
|
-
|
|
917
|
-
/***/ }),
|
|
918
|
-
/* 28 */
|
|
919
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
920
|
-
|
|
921
|
-
"use strict";
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
Object.defineProperty(exports, "__esModule", {
|
|
925
|
-
value: true
|
|
926
|
-
});
|
|
927
|
-
|
|
928
|
-
var React = __webpack_require__(1);
|
|
929
|
-
|
|
930
|
-
var lodash_1 = __webpack_require__(2);
|
|
931
|
-
|
|
932
|
-
var getSettingsFromThemedProps_1 = __webpack_require__(29);
|
|
933
|
-
|
|
934
|
-
var Options_1 = __webpack_require__(30);
|
|
935
|
-
|
|
936
|
-
var SanitizeProps_1 = __webpack_require__(31);
|
|
937
|
-
|
|
938
|
-
var styled_components_1 = __webpack_require__(4);
|
|
939
|
-
|
|
940
|
-
var SplunkVisualization_1 = __webpack_require__(32);
|
|
941
|
-
|
|
942
|
-
var VizBehavior_1 = __webpack_require__(5);
|
|
943
|
-
|
|
944
|
-
var getSorting_1 = __webpack_require__(23);
|
|
945
|
-
|
|
946
|
-
var getPagination_1 = __webpack_require__(24);
|
|
968
|
+
var JSONSchemaUtils_1 = __webpack_require__(24);
|
|
947
969
|
|
|
948
|
-
var
|
|
970
|
+
var MissingPropsMessage_1 = __webpack_require__(38);
|
|
949
971
|
|
|
950
|
-
var
|
|
972
|
+
var withEditModeCover_1 = __webpack_require__(39);
|
|
951
973
|
|
|
952
|
-
var
|
|
974
|
+
var withPlaceholder_1 = __webpack_require__(40);
|
|
953
975
|
|
|
954
|
-
var
|
|
955
|
-
|
|
956
|
-
var withPlaceholder_1 = __webpack_require__(38);
|
|
957
|
-
|
|
958
|
-
var hocUtils_1 = __webpack_require__(7);
|
|
976
|
+
var hocUtils_1 = __webpack_require__(8);
|
|
959
977
|
/**
|
|
960
978
|
* hoc that wraps a pure react visualization in a Dashboard visualization
|
|
961
979
|
* @param {DashboardVizOpts} opts
|
|
@@ -988,6 +1006,23 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
988
1006
|
theme = props.theme,
|
|
989
1007
|
onRequestParamsChange = props.onRequestParamsChange;
|
|
990
1008
|
|
|
1009
|
+
var _React$useContext = React.useContext(TimezoneContext_1.default),
|
|
1010
|
+
serializedTimezone = _React$useContext.serializedTimezone;
|
|
1011
|
+
|
|
1012
|
+
if (serializedTimezone) {
|
|
1013
|
+
/*
|
|
1014
|
+
@splunk/moment currently does not allow us to customize the timezone on a per visualization basis.
|
|
1015
|
+
This ensures that if a timezone was provided via TimezoneContext @splunk/moment time formatting
|
|
1016
|
+
will use it.
|
|
1017
|
+
@TODO(pwied):
|
|
1018
|
+
- remove when we moved away from @splunk/moment
|
|
1019
|
+
- provide timezone context to dynamic option evaluation phase
|
|
1020
|
+
*/
|
|
1021
|
+
if (!moment_1.default.getDefaultSplunkTimezone()) {
|
|
1022
|
+
moment_1.default.setDefaultSplunkTimezone(serializedTimezone);
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
|
|
991
1026
|
var themeFunc = function themeFunc(themeVar) {
|
|
992
1027
|
var _a, _b;
|
|
993
1028
|
|
|
@@ -1016,7 +1051,7 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1016
1051
|
console.error("unexpected error evaluating options: + ".concat(e.message));
|
|
1017
1052
|
return {};
|
|
1018
1053
|
}
|
|
1019
|
-
}, [currentThemeFamily, currentThemeColorScheme, currentThemeDensity, options, context, dataSources]); // useEffect hook needs to be initialized before any early returns
|
|
1054
|
+
}, [currentThemeFamily, currentThemeColorScheme, currentThemeDensity, options, context, dataSources, serializedTimezone]); // useEffect hook needs to be initialized before any early returns
|
|
1020
1055
|
// this is in accordance with the order of hook calls being the same on each render https://reactjs.org/docs/hooks-rules.html#explanation
|
|
1021
1056
|
|
|
1022
1057
|
React.useEffect(function () {
|
|
@@ -1139,25 +1174,31 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1139
1174
|
exports.default = withDashboardViz;
|
|
1140
1175
|
|
|
1141
1176
|
/***/ }),
|
|
1142
|
-
/*
|
|
1177
|
+
/* 30 */
|
|
1143
1178
|
/***/ (function(module, exports) {
|
|
1144
1179
|
|
|
1145
1180
|
module.exports = require("@splunk/themes/getSettingsFromThemedProps");
|
|
1146
1181
|
|
|
1147
1182
|
/***/ }),
|
|
1148
|
-
/*
|
|
1183
|
+
/* 31 */
|
|
1149
1184
|
/***/ (function(module, exports) {
|
|
1150
1185
|
|
|
1151
1186
|
module.exports = require("@splunk/visualization-encoding/Options");
|
|
1152
1187
|
|
|
1153
1188
|
/***/ }),
|
|
1154
|
-
/*
|
|
1189
|
+
/* 32 */
|
|
1155
1190
|
/***/ (function(module, exports) {
|
|
1156
1191
|
|
|
1157
1192
|
module.exports = require("@splunk/visualizations-shared/SanitizeProps");
|
|
1158
1193
|
|
|
1159
1194
|
/***/ }),
|
|
1160
|
-
/*
|
|
1195
|
+
/* 33 */
|
|
1196
|
+
/***/ (function(module, exports) {
|
|
1197
|
+
|
|
1198
|
+
module.exports = require("@splunk/moment");
|
|
1199
|
+
|
|
1200
|
+
/***/ }),
|
|
1201
|
+
/* 34 */
|
|
1161
1202
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1162
1203
|
|
|
1163
1204
|
"use strict";
|
|
@@ -1175,7 +1216,7 @@ var T = __webpack_require__(0);
|
|
|
1175
1216
|
|
|
1176
1217
|
var lodash_1 = __webpack_require__(2);
|
|
1177
1218
|
|
|
1178
|
-
var VizActionHandler_1 = __webpack_require__(
|
|
1219
|
+
var VizActionHandler_1 = __webpack_require__(35); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
|
|
1179
1220
|
|
|
1180
1221
|
|
|
1181
1222
|
exports.INITIAL_WIDTH = 250;
|
|
@@ -1308,7 +1349,7 @@ SplunkVisualization.defaultProps = {
|
|
|
1308
1349
|
exports.default = SplunkVisualization;
|
|
1309
1350
|
|
|
1310
1351
|
/***/ }),
|
|
1311
|
-
/*
|
|
1352
|
+
/* 35 */
|
|
1312
1353
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1313
1354
|
|
|
1314
1355
|
"use strict";
|
|
@@ -1316,7 +1357,7 @@ exports.default = SplunkVisualization;
|
|
|
1316
1357
|
|
|
1317
1358
|
var _classCallCheck = __webpack_require__(10);
|
|
1318
1359
|
|
|
1319
|
-
var _createClass = __webpack_require__(
|
|
1360
|
+
var _createClass = __webpack_require__(16);
|
|
1320
1361
|
|
|
1321
1362
|
Object.defineProperty(exports, "__esModule", {
|
|
1322
1363
|
value: true
|
|
@@ -1345,7 +1386,7 @@ var DefaultVizActionHandler = /*#__PURE__*/function () {
|
|
|
1345
1386
|
exports.DefaultVizActionHandler = DefaultVizActionHandler;
|
|
1346
1387
|
|
|
1347
1388
|
/***/ }),
|
|
1348
|
-
/*
|
|
1389
|
+
/* 36 */
|
|
1349
1390
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1350
1391
|
|
|
1351
1392
|
"use strict";
|
|
@@ -1358,7 +1399,7 @@ exports.validSortDirs = void 0;
|
|
|
1358
1399
|
exports.validSortDirs = ['asc', 'desc', 'none'];
|
|
1359
1400
|
|
|
1360
1401
|
/***/ }),
|
|
1361
|
-
/*
|
|
1402
|
+
/* 37 */
|
|
1362
1403
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1363
1404
|
|
|
1364
1405
|
"use strict";
|
|
@@ -1403,7 +1444,7 @@ var useDeepMemo = function useDeepMemo(fn, dependencies) {
|
|
|
1403
1444
|
exports.useDeepMemo = useDeepMemo;
|
|
1404
1445
|
|
|
1405
1446
|
/***/ }),
|
|
1406
|
-
/*
|
|
1447
|
+
/* 38 */
|
|
1407
1448
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1408
1449
|
|
|
1409
1450
|
"use strict";
|
|
@@ -1422,7 +1463,7 @@ var i18n_1 = __webpack_require__(3);
|
|
|
1422
1463
|
|
|
1423
1464
|
var Message_1 = __webpack_require__(9);
|
|
1424
1465
|
|
|
1425
|
-
var FixedSizeContainer_1 = __webpack_require__(
|
|
1466
|
+
var FixedSizeContainer_1 = __webpack_require__(13);
|
|
1426
1467
|
/**
|
|
1427
1468
|
* @method isMissing
|
|
1428
1469
|
* @param {any} v
|
|
@@ -1483,7 +1524,7 @@ exports.MissingPropsMessage.defaultProps = {
|
|
|
1483
1524
|
exports.default = FixedSizeContainer_1.default(exports.MissingPropsMessage);
|
|
1484
1525
|
|
|
1485
1526
|
/***/ }),
|
|
1486
|
-
/*
|
|
1527
|
+
/* 39 */
|
|
1487
1528
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1488
1529
|
|
|
1489
1530
|
"use strict";
|
|
@@ -1497,14 +1538,14 @@ var React = __webpack_require__(1);
|
|
|
1497
1538
|
|
|
1498
1539
|
var styled_components_1 = __webpack_require__(4);
|
|
1499
1540
|
|
|
1500
|
-
var hocUtils_1 = __webpack_require__(
|
|
1541
|
+
var hocUtils_1 = __webpack_require__(8);
|
|
1501
1542
|
|
|
1502
1543
|
var Cover = styled_components_1.default.div.withConfig({
|
|
1503
1544
|
displayName: "withEditModeCover__Cover",
|
|
1504
1545
|
componentId: "sc-1gsbnxb-0"
|
|
1505
1546
|
})(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
|
|
1506
1547
|
var Blocker = styled_components_1.default.div.attrs({
|
|
1507
|
-
'data-splunk-visualization-version': "24.
|
|
1548
|
+
'data-splunk-visualization-version': "24.5.1 - edc4c958c"
|
|
1508
1549
|
}).withConfig({
|
|
1509
1550
|
displayName: "withEditModeCover__Blocker",
|
|
1510
1551
|
componentId: "sc-1gsbnxb-1"
|
|
@@ -1535,7 +1576,7 @@ var withEditModeCover = function withEditModeCover(Visualization, disableEditMod
|
|
|
1535
1576
|
exports.default = withEditModeCover;
|
|
1536
1577
|
|
|
1537
1578
|
/***/ }),
|
|
1538
|
-
/*
|
|
1579
|
+
/* 40 */
|
|
1539
1580
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1540
1581
|
|
|
1541
1582
|
"use strict";
|
|
@@ -1547,13 +1588,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
1547
1588
|
|
|
1548
1589
|
var React = __webpack_require__(1);
|
|
1549
1590
|
|
|
1550
|
-
var colorUtils_1 = __webpack_require__(
|
|
1591
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
1592
|
+
|
|
1593
|
+
var variables_1 = __webpack_require__(11);
|
|
1551
1594
|
|
|
1552
|
-
var IconPlaceholder_1 = __webpack_require__(
|
|
1595
|
+
var IconPlaceholder_1 = __webpack_require__(25);
|
|
1553
1596
|
|
|
1554
1597
|
var VizBehavior_1 = __webpack_require__(5);
|
|
1555
1598
|
|
|
1556
|
-
var hocUtils_1 = __webpack_require__(
|
|
1599
|
+
var hocUtils_1 = __webpack_require__(8);
|
|
1557
1600
|
|
|
1558
1601
|
var withPlaceholder = function withPlaceholder(Visualization) {
|
|
1559
1602
|
var useIconPlaceholder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : IconPlaceholder_1.shouldShowIconPlaceholder;
|
|
@@ -1561,7 +1604,7 @@ var withPlaceholder = function withPlaceholder(Visualization) {
|
|
|
1561
1604
|
var themes = config.themes;
|
|
1562
1605
|
|
|
1563
1606
|
var Wrapper = function Wrapper(props) {
|
|
1564
|
-
var _a;
|
|
1607
|
+
var _a, _b;
|
|
1565
1608
|
|
|
1566
1609
|
var dataSources = props.dataSources,
|
|
1567
1610
|
loading = props.loading,
|
|
@@ -1570,14 +1613,17 @@ var withPlaceholder = function withPlaceholder(Visualization) {
|
|
|
1570
1613
|
width = props.width;
|
|
1571
1614
|
var showPlaceholder = useIconPlaceholder(dataSources, loading, options);
|
|
1572
1615
|
var bgColorFromTheme = colorUtils_1.isColor(options === null || options === void 0 ? void 0 : options.backgroundColor) ? options === null || options === void 0 ? void 0 : options.backgroundColor : (_a = themes === null || themes === void 0 ? void 0 : themes.defaultBackgroundColor) === null || _a === void 0 ? void 0 : _a.call(themes, props);
|
|
1616
|
+
var icon = (_b = config.placeholderIcon) !== null && _b !== void 0 ? _b : config.icon;
|
|
1617
|
+
var iconColor = variables_1.default.contentColorActive(props);
|
|
1573
1618
|
|
|
1574
1619
|
if (config.supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && showPlaceholder) {
|
|
1575
1620
|
return React.createElement(IconPlaceholder_1.default, {
|
|
1576
1621
|
"data-test": "icon-placeholder",
|
|
1577
|
-
icon:
|
|
1622
|
+
icon: icon,
|
|
1578
1623
|
width: width,
|
|
1579
1624
|
height: height,
|
|
1580
|
-
backgroundColor: bgColorFromTheme
|
|
1625
|
+
backgroundColor: bgColorFromTheme,
|
|
1626
|
+
iconColor: iconColor
|
|
1581
1627
|
});
|
|
1582
1628
|
}
|
|
1583
1629
|
|
|
@@ -1594,39 +1640,42 @@ var withPlaceholder = function withPlaceholder(Visualization) {
|
|
|
1594
1640
|
exports.default = withPlaceholder;
|
|
1595
1641
|
|
|
1596
1642
|
/***/ }),
|
|
1597
|
-
/*
|
|
1643
|
+
/* 41 */
|
|
1598
1644
|
/***/ (function(module, exports) {
|
|
1599
1645
|
|
|
1600
1646
|
module.exports = require("@babel/runtime/helpers/toConsumableArray");
|
|
1601
1647
|
|
|
1602
1648
|
/***/ }),
|
|
1603
|
-
/*
|
|
1604
|
-
/*
|
|
1649
|
+
/* 42 */,
|
|
1650
|
+
/* 43 */
|
|
1605
1651
|
/***/ (function(module, exports) {
|
|
1606
1652
|
|
|
1607
1653
|
module.exports = require("@splunk/visualization-color-palettes");
|
|
1608
1654
|
|
|
1609
1655
|
/***/ }),
|
|
1610
|
-
/*
|
|
1656
|
+
/* 44 */
|
|
1657
|
+
/***/ (function(module, exports) {
|
|
1658
|
+
|
|
1659
|
+
module.exports = require("@splunk/visualization-icons/placeholders");
|
|
1660
|
+
|
|
1661
|
+
/***/ }),
|
|
1662
|
+
/* 45 */
|
|
1611
1663
|
/***/ (function(module, exports) {
|
|
1612
1664
|
|
|
1613
1665
|
module.exports = require("@splunk/visualization-icons");
|
|
1614
1666
|
|
|
1615
1667
|
/***/ }),
|
|
1616
|
-
/* 43 */,
|
|
1617
|
-
/* 44 */,
|
|
1618
|
-
/* 45 */,
|
|
1619
1668
|
/* 46 */,
|
|
1620
1669
|
/* 47 */,
|
|
1621
1670
|
/* 48 */,
|
|
1622
|
-
/* 49
|
|
1671
|
+
/* 49 */,
|
|
1672
|
+
/* 50 */,
|
|
1673
|
+
/* 51 */
|
|
1623
1674
|
/***/ (function(module, exports) {
|
|
1624
1675
|
|
|
1625
1676
|
module.exports = require("@babel/runtime/helpers/slicedToArray");
|
|
1626
1677
|
|
|
1627
1678
|
/***/ }),
|
|
1628
|
-
/* 50 */,
|
|
1629
|
-
/* 51 */,
|
|
1630
1679
|
/* 52 */,
|
|
1631
1680
|
/* 53 */,
|
|
1632
1681
|
/* 54 */,
|
|
@@ -1640,24 +1689,24 @@ module.exports = require("@babel/runtime/helpers/slicedToArray");
|
|
|
1640
1689
|
/* 62 */,
|
|
1641
1690
|
/* 63 */,
|
|
1642
1691
|
/* 64 */,
|
|
1643
|
-
/* 65
|
|
1644
|
-
/* 66 */,
|
|
1645
|
-
/* 67 */,
|
|
1646
|
-
/* 68 */,
|
|
1647
|
-
/* 69 */
|
|
1692
|
+
/* 65 */
|
|
1648
1693
|
/***/ (function(module, exports) {
|
|
1649
1694
|
|
|
1650
|
-
module.exports = require("
|
|
1695
|
+
module.exports = require("@splunk/themes");
|
|
1651
1696
|
|
|
1652
1697
|
/***/ }),
|
|
1653
|
-
/*
|
|
1698
|
+
/* 66 */,
|
|
1699
|
+
/* 67 */,
|
|
1700
|
+
/* 68 */,
|
|
1701
|
+
/* 69 */,
|
|
1702
|
+
/* 70 */,
|
|
1703
|
+
/* 71 */,
|
|
1704
|
+
/* 72 */
|
|
1654
1705
|
/***/ (function(module, exports) {
|
|
1655
1706
|
|
|
1656
|
-
module.exports = require("
|
|
1707
|
+
module.exports = require("d3-scale");
|
|
1657
1708
|
|
|
1658
1709
|
/***/ }),
|
|
1659
|
-
/* 71 */,
|
|
1660
|
-
/* 72 */,
|
|
1661
1710
|
/* 73 */,
|
|
1662
1711
|
/* 74 */,
|
|
1663
1712
|
/* 75 */,
|
|
@@ -1685,1269 +1734,1442 @@ module.exports = require("@splunk/themes");
|
|
|
1685
1734
|
/* 97 */,
|
|
1686
1735
|
/* 98 */,
|
|
1687
1736
|
/* 99 */,
|
|
1688
|
-
/* 100
|
|
1689
|
-
/***/ (function(module, exports) {
|
|
1690
|
-
|
|
1691
|
-
module.exports = require("@splunk/react-ui/Popover");
|
|
1692
|
-
|
|
1693
|
-
/***/ }),
|
|
1737
|
+
/* 100 */,
|
|
1694
1738
|
/* 101 */,
|
|
1695
1739
|
/* 102 */,
|
|
1696
1740
|
/* 103 */,
|
|
1697
|
-
/* 104
|
|
1698
|
-
/* 105 */,
|
|
1699
|
-
/* 106 */,
|
|
1700
|
-
/* 107 */,
|
|
1701
|
-
/* 108 */,
|
|
1702
|
-
/* 109 */,
|
|
1703
|
-
/* 110 */,
|
|
1704
|
-
/* 111 */,
|
|
1705
|
-
/* 112 */,
|
|
1706
|
-
/* 113 */,
|
|
1707
|
-
/* 114 */,
|
|
1708
|
-
/* 115 */,
|
|
1709
|
-
/* 116 */,
|
|
1710
|
-
/* 117 */,
|
|
1711
|
-
/* 118 */,
|
|
1712
|
-
/* 119 */,
|
|
1713
|
-
/* 120 */,
|
|
1714
|
-
/* 121 */,
|
|
1715
|
-
/* 122 */,
|
|
1716
|
-
/* 123 */
|
|
1741
|
+
/* 104 */
|
|
1717
1742
|
/***/ (function(module, exports) {
|
|
1718
1743
|
|
|
1719
|
-
module.exports = require("
|
|
1744
|
+
module.exports = require("@splunk/visualization-encoding/utils/dsl");
|
|
1720
1745
|
|
|
1721
1746
|
/***/ }),
|
|
1722
|
-
/*
|
|
1723
|
-
/* 125 */,
|
|
1724
|
-
/* 126 */,
|
|
1725
|
-
/* 127 */,
|
|
1726
|
-
/* 128 */,
|
|
1727
|
-
/* 129 */,
|
|
1728
|
-
/* 130 */,
|
|
1729
|
-
/* 131 */,
|
|
1730
|
-
/* 132 */,
|
|
1731
|
-
/* 133 */,
|
|
1732
|
-
/* 134 */,
|
|
1733
|
-
/* 135 */,
|
|
1734
|
-
/* 136 */,
|
|
1735
|
-
/* 137 */,
|
|
1736
|
-
/* 138 */,
|
|
1737
|
-
/* 139 */,
|
|
1738
|
-
/* 140 */,
|
|
1739
|
-
/* 141 */,
|
|
1740
|
-
/* 142 */,
|
|
1741
|
-
/* 143 */,
|
|
1742
|
-
/* 144 */,
|
|
1743
|
-
/* 145 */,
|
|
1744
|
-
/* 146 */,
|
|
1745
|
-
/* 147 */,
|
|
1746
|
-
/* 148 */,
|
|
1747
|
-
/* 149 */,
|
|
1748
|
-
/* 150 */,
|
|
1749
|
-
/* 151 */,
|
|
1750
|
-
/* 152 */,
|
|
1751
|
-
/* 153 */,
|
|
1752
|
-
/* 154 */,
|
|
1753
|
-
/* 155 */,
|
|
1754
|
-
/* 156 */,
|
|
1755
|
-
/* 157 */,
|
|
1756
|
-
/* 158 */,
|
|
1757
|
-
/* 159 */,
|
|
1758
|
-
/* 160 */,
|
|
1759
|
-
/* 161 */,
|
|
1760
|
-
/* 162 */,
|
|
1761
|
-
/* 163 */,
|
|
1762
|
-
/* 164 */,
|
|
1763
|
-
/* 165 */,
|
|
1764
|
-
/* 166 */,
|
|
1765
|
-
/* 167 */,
|
|
1766
|
-
/* 168 */,
|
|
1767
|
-
/* 169 */,
|
|
1768
|
-
/* 170 */,
|
|
1769
|
-
/* 171 */,
|
|
1770
|
-
/* 172 */,
|
|
1771
|
-
/* 173 */,
|
|
1772
|
-
/* 174 */,
|
|
1773
|
-
/* 175 */,
|
|
1774
|
-
/* 176 */,
|
|
1775
|
-
/* 177 */,
|
|
1776
|
-
/* 178 */,
|
|
1777
|
-
/* 179 */,
|
|
1778
|
-
/* 180 */,
|
|
1779
|
-
/* 181 */,
|
|
1780
|
-
/* 182 */,
|
|
1781
|
-
/* 183 */,
|
|
1782
|
-
/* 184 */,
|
|
1783
|
-
/* 185 */,
|
|
1784
|
-
/* 186 */,
|
|
1785
|
-
/* 187 */,
|
|
1786
|
-
/* 188 */,
|
|
1787
|
-
/* 189 */
|
|
1747
|
+
/* 105 */
|
|
1788
1748
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1789
1749
|
|
|
1790
1750
|
"use strict";
|
|
1791
1751
|
|
|
1792
1752
|
|
|
1793
|
-
var
|
|
1794
|
-
var t = {};
|
|
1795
|
-
|
|
1796
|
-
for (var p in s) {
|
|
1797
|
-
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
1798
|
-
}
|
|
1753
|
+
var _slicedToArray = __webpack_require__(51);
|
|
1799
1754
|
|
|
1800
|
-
|
|
1801
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
1802
|
-
}
|
|
1803
|
-
return t;
|
|
1804
|
-
};
|
|
1755
|
+
var _toConsumableArray = __webpack_require__(41);
|
|
1805
1756
|
|
|
1806
1757
|
Object.defineProperty(exports, "__esModule", {
|
|
1807
1758
|
value: true
|
|
1808
1759
|
});
|
|
1809
|
-
exports.
|
|
1810
|
-
/* eslint-disable no-sequences */
|
|
1811
|
-
|
|
1812
|
-
var React = __webpack_require__(1);
|
|
1760
|
+
exports.getGlobalLayerBoundaries = exports.isValidLatLon = exports.bakeBubbleData = exports.sanitizeValues = exports.transposeArray = exports.matchBubbleSize = exports.getStaticColors = exports.getZoomLevelFromGeobin = exports.getZoomConstraintsFromTileConfig = exports.getMapStyle = exports.getTilePreset = exports.MAX_BUBBLE_RADIUS = exports.MIN_BUBBLE_RADIUS = exports.MAP_STYLE_VERSION_NUMBER = exports.DEFAULT_SERIES_COLORS = exports.DEFAULT_CLUSTER_COLOR = exports.DEFAULT_RESULT_LIMIT = exports.MIN_LONGITUDE = exports.MAX_LONGITUDE = exports.MIN_LATITUDE = exports.MAX_LATITUDE = void 0;
|
|
1813
1761
|
|
|
1814
|
-
var
|
|
1762
|
+
var lodash_1 = __webpack_require__(2);
|
|
1815
1763
|
|
|
1816
|
-
var
|
|
1764
|
+
var d3_scale_1 = __webpack_require__(72);
|
|
1817
1765
|
|
|
1818
|
-
var
|
|
1766
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
1819
1767
|
|
|
1820
|
-
var
|
|
1768
|
+
var visualization_color_palettes_1 = __webpack_require__(43);
|
|
1821
1769
|
|
|
1822
|
-
|
|
1770
|
+
exports.MAX_LATITUDE = 90;
|
|
1771
|
+
exports.MIN_LATITUDE = -90;
|
|
1772
|
+
exports.MAX_LONGITUDE = 180;
|
|
1773
|
+
exports.MIN_LONGITUDE = -180;
|
|
1774
|
+
exports.DEFAULT_RESULT_LIMIT = 1000;
|
|
1775
|
+
exports.DEFAULT_CLUSTER_COLOR = '#909090';
|
|
1776
|
+
exports.DEFAULT_SERIES_COLORS = visualization_color_palettes_1.VIZ_CATEGORICAL; // MapLibre requires a map style specification number which is always 8
|
|
1823
1777
|
|
|
1824
|
-
|
|
1778
|
+
exports.MAP_STYLE_VERSION_NUMBER = 8; // currently using one [min, max] value set for bubbles across all zoom levels
|
|
1779
|
+
// TODO: design choices on [min, max] bubble size for different zoom levels
|
|
1825
1780
|
|
|
1826
|
-
exports.
|
|
1781
|
+
exports.MIN_BUBBLE_RADIUS = 4;
|
|
1782
|
+
exports.MAX_BUBBLE_RADIUS = 50;
|
|
1783
|
+
/**
|
|
1784
|
+
* Construct a tile preset {key: config} by combining the default + custom tile configs
|
|
1785
|
+
* Also returns the default tile config for each theme - light/dark
|
|
1786
|
+
* @param {MapContextInterface} args
|
|
1787
|
+
* @param {BaseTileConfig[]} args.defaultTileConfig
|
|
1788
|
+
* @param {BaseTileConfig[]} args.customTileConfig
|
|
1789
|
+
* @returns {Object} tile preset
|
|
1790
|
+
*/
|
|
1827
1791
|
|
|
1828
|
-
var
|
|
1792
|
+
var getTilePreset = function getTilePreset(_ref) {
|
|
1793
|
+
var _ref$defaultTileConfi = _ref.defaultTileConfig,
|
|
1794
|
+
defaultTileConfig = _ref$defaultTileConfi === void 0 ? [] : _ref$defaultTileConfi,
|
|
1795
|
+
_ref$customTileConfig = _ref.customTileConfig,
|
|
1796
|
+
customTileConfig = _ref$customTileConfig === void 0 ? [] : _ref$customTileConfig;
|
|
1829
1797
|
|
|
1830
|
-
|
|
1798
|
+
var _a, _b;
|
|
1831
1799
|
|
|
1832
|
-
var
|
|
1800
|
+
var tilePreset = {};
|
|
1801
|
+
var defaultTileLight = {};
|
|
1802
|
+
var defaultTileDark = {};
|
|
1803
|
+
var tileConfigs = [].concat(defaultTileConfig).concat(customTileConfig);
|
|
1804
|
+
lodash_1.forEach(tileConfigs, function (tileConfig) {
|
|
1805
|
+
var key = tileConfig === null || tileConfig === void 0 ? void 0 : tileConfig.key;
|
|
1806
|
+
var updatedConfig = Object.assign(Object.assign({
|
|
1807
|
+
theme: 'all'
|
|
1808
|
+
}, tileConfig), {
|
|
1809
|
+
version: exports.MAP_STYLE_VERSION_NUMBER
|
|
1810
|
+
});
|
|
1811
|
+
tilePreset[key] = updatedConfig;
|
|
1812
|
+
});
|
|
1833
1813
|
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
theme
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1814
|
+
if (defaultTileConfig.length > 0) {
|
|
1815
|
+
defaultTileLight = (_a = defaultTileConfig.find(function (config) {
|
|
1816
|
+
return config.theme === 'light';
|
|
1817
|
+
})) !== null && _a !== void 0 ? _a : defaultTileConfig.find(function (config) {
|
|
1818
|
+
return config.theme === undefined;
|
|
1819
|
+
});
|
|
1820
|
+
defaultTileDark = (_b = defaultTileConfig.find(function (config) {
|
|
1821
|
+
return config.theme === 'dark';
|
|
1822
|
+
})) !== null && _b !== void 0 ? _b : defaultTileConfig.find(function (config) {
|
|
1823
|
+
return config.theme === undefined;
|
|
1824
|
+
});
|
|
1825
|
+
}
|
|
1845
1826
|
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1827
|
+
return {
|
|
1828
|
+
tilePreset: tilePreset,
|
|
1829
|
+
defaultTileLight: defaultTileLight,
|
|
1830
|
+
defaultTileDark: defaultTileDark
|
|
1831
|
+
};
|
|
1832
|
+
};
|
|
1850
1833
|
|
|
1834
|
+
exports.getTilePreset = getTilePreset;
|
|
1835
|
+
/**
|
|
1836
|
+
* Check if baseLayerTileServer is in tilePreset and config matches current theme, if yes, return.
|
|
1837
|
+
* If no, construct a mapStyle with baseLayerTilerServer and baseLayerTileServerType
|
|
1838
|
+
* Else return default tile config based on current theme
|
|
1839
|
+
* @param {Object} args
|
|
1840
|
+
* @param {BaseTileConfig[]} args.tilePreset
|
|
1841
|
+
* @param {String} args.baseLayerTilerServer
|
|
1842
|
+
* @param {String} args.baseLayerTileServerType
|
|
1843
|
+
* @param {String} args.colorScheme
|
|
1844
|
+
* @param {BaseTileConfig} args.defaultTileDark
|
|
1845
|
+
* @param {BaseTileConfig} args.defaultTileLight
|
|
1846
|
+
* @returns {BaseTileConfig} mapStyle
|
|
1847
|
+
*/
|
|
1851
1848
|
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1849
|
+
var getMapStyle = function getMapStyle(_ref2) {
|
|
1850
|
+
var _ref2$baseLayerTileSe = _ref2.baseLayerTileServer,
|
|
1851
|
+
baseLayerTileServer = _ref2$baseLayerTileSe === void 0 ? '' : _ref2$baseLayerTileSe,
|
|
1852
|
+
_ref2$baseLayerTileSe2 = _ref2.baseLayerTileServerType,
|
|
1853
|
+
baseLayerTileServerType = _ref2$baseLayerTileSe2 === void 0 ? '' : _ref2$baseLayerTileSe2,
|
|
1854
|
+
_ref2$tilePreset = _ref2.tilePreset,
|
|
1855
|
+
tilePreset = _ref2$tilePreset === void 0 ? {} : _ref2$tilePreset,
|
|
1856
|
+
_ref2$colorScheme = _ref2.colorScheme,
|
|
1857
|
+
colorScheme = _ref2$colorScheme === void 0 ? 'light' : _ref2$colorScheme,
|
|
1858
|
+
_ref2$defaultTileLigh = _ref2.defaultTileLight,
|
|
1859
|
+
defaultTileLight = _ref2$defaultTileLigh === void 0 ? {} : _ref2$defaultTileLigh,
|
|
1860
|
+
_ref2$defaultTileDark = _ref2.defaultTileDark,
|
|
1861
|
+
defaultTileDark = _ref2$defaultTileDark === void 0 ? {} : _ref2$defaultTileDark;
|
|
1857
1862
|
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1863
|
+
if (baseLayerTileServer && tilePreset[baseLayerTileServer] && (tilePreset[baseLayerTileServer].theme === colorScheme || tilePreset[baseLayerTileServer].theme === 'all')) {
|
|
1864
|
+
return tilePreset[baseLayerTileServer];
|
|
1865
|
+
}
|
|
1861
1866
|
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1867
|
+
if (baseLayerTileServer && baseLayerTileServerType) {
|
|
1868
|
+
var tiles = [];
|
|
1869
|
+
/**
|
|
1870
|
+
* Tile Server URLs (eg: http://{s}.somedomain.com/blabla/{z}/{x}/{y}{r}.png) can specify the variable {s} which refers to a subdomain
|
|
1871
|
+
* Subdomains are used to help with browser parallel requests per domain limitation. These subdomains are typically single letters 'a', 'b' and 'c'
|
|
1872
|
+
* Refer to https://leafletjs.com/SlavaUkraini/reference.html#tilelayer and https://wiki.openstreetmap.org/wiki/Tile_servers
|
|
1873
|
+
*/
|
|
1874
|
+
|
|
1875
|
+
if (baseLayerTileServer.match(/^(https?):\/\/{(s|S)}\../)) {
|
|
1876
|
+
/**
|
|
1877
|
+
* sXML (Leaflet) allows users to define their own tile server URLs + list of available subdomains
|
|
1878
|
+
* In order to preserve this behavior during conversion to splunk.map,
|
|
1879
|
+
* if the variable {s} or {S} is detected, replace it with 'a', 'b' and 'c' - default values for subdomains
|
|
1880
|
+
* TODO: in the future, add an additional prop - baseLayerTileServerSubdomains: ['x', 'y', 'z'], default being ['a', 'b', 'c']
|
|
1881
|
+
*/
|
|
1882
|
+
tiles = [baseLayerTileServer.replace(/{(s|S)}/, 'a'), baseLayerTileServer.replace(/{(s|S)}/, 'b'), baseLayerTileServer.replace(/{(s|S)}/, 'c')];
|
|
1883
|
+
} else {
|
|
1884
|
+
tiles = [baseLayerTileServer];
|
|
1885
|
+
} // TODO: remove hardcoded style when we allow users to pass in layer style through Viz options
|
|
1866
1886
|
|
|
1867
|
-
return !['latitude', 'longitude', 'geobin'].includes(field) && types_1.inferDataTypeFromData((_b = (_a = dataSourceData.columns) === null || _a === void 0 ? void 0 : _a[index]) !== null && _b !== void 0 ? _b : []) === 'number';
|
|
1868
|
-
}); // Sanitize colors within layers
|
|
1869
1887
|
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1888
|
+
var mapStyle = {
|
|
1889
|
+
version: exports.MAP_STYLE_VERSION_NUMBER,
|
|
1890
|
+
sources: {
|
|
1891
|
+
'base-tiles': {
|
|
1892
|
+
type: baseLayerTileServerType,
|
|
1893
|
+
tiles: tiles,
|
|
1894
|
+
tileSize: 256
|
|
1895
|
+
}
|
|
1896
|
+
},
|
|
1897
|
+
layers: [{
|
|
1898
|
+
id: 'base-layer',
|
|
1899
|
+
type: 'raster',
|
|
1900
|
+
source: 'base-tiles',
|
|
1901
|
+
minzoom: 0,
|
|
1902
|
+
maxzoom: 10
|
|
1903
|
+
}]
|
|
1904
|
+
};
|
|
1905
|
+
return mapStyle;
|
|
1906
|
+
} // if tile server is not present in the preset AND we can't construct a mapStyle, fall back on defaults
|
|
1907
|
+
|
|
1908
|
+
|
|
1909
|
+
return colorScheme === 'light' ? defaultTileLight : defaultTileDark;
|
|
1876
1910
|
};
|
|
1877
1911
|
|
|
1878
|
-
exports.
|
|
1912
|
+
exports.getMapStyle = getMapStyle;
|
|
1879
1913
|
|
|
1880
|
-
var
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
var dataSources = _a.dataSources,
|
|
1884
|
-
otherProps = __rest(_a, ["dataSources"]);
|
|
1914
|
+
var getZoomConstraintsFromTileConfig = function getZoomConstraintsFromTileConfig(tileConfig) {
|
|
1915
|
+
var sources = tileConfig.sources,
|
|
1916
|
+
layers = tileConfig.layers; // check sources for minzoom maxzoom first
|
|
1885
1917
|
|
|
1886
|
-
|
|
1887
|
-
|
|
1918
|
+
var sourceKeys = Object.keys(sources);
|
|
1919
|
+
|
|
1920
|
+
for (var i = 0; i < sourceKeys.length; i += 1) {
|
|
1921
|
+
var _sources$sourceKeys$i = sources[sourceKeys[i]],
|
|
1922
|
+
minzoom = _sources$sourceKeys$i.minzoom,
|
|
1923
|
+
maxzoom = _sources$sourceKeys$i.maxzoom;
|
|
1924
|
+
|
|
1925
|
+
if (lodash_1.isNumber(minzoom) && lodash_1.isNumber(maxzoom)) {
|
|
1926
|
+
return {
|
|
1927
|
+
minZoom: minzoom,
|
|
1928
|
+
maxZoom: maxzoom
|
|
1929
|
+
};
|
|
1888
1930
|
}
|
|
1931
|
+
} // then check layers
|
|
1889
1932
|
|
|
1890
|
-
var primary = dataSources.primary;
|
|
1891
|
-
var _primary$data = primary.data,
|
|
1892
|
-
columns = _primary$data.columns,
|
|
1893
|
-
fields = _primary$data.fields;
|
|
1894
|
-
var newColumns = [];
|
|
1895
|
-
var newFields = [];
|
|
1896
1933
|
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
});
|
|
1934
|
+
for (var _i = 0; _i < layers.length; _i += 1) {
|
|
1935
|
+
var _layers$_i = layers[_i],
|
|
1936
|
+
_minzoom = _layers$_i.minzoom,
|
|
1937
|
+
_maxzoom = _layers$_i.maxzoom;
|
|
1938
|
+
|
|
1939
|
+
if (lodash_1.isNumber(_minzoom) && lodash_1.isNumber(_maxzoom)) {
|
|
1940
|
+
return {
|
|
1941
|
+
minZoom: _minzoom,
|
|
1942
|
+
maxZoom: _maxzoom
|
|
1943
|
+
};
|
|
1908
1944
|
}
|
|
1945
|
+
} // Maplibre default - would reset previous min/maxZoom
|
|
1909
1946
|
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1947
|
+
|
|
1948
|
+
return {
|
|
1949
|
+
minZoom: 0,
|
|
1950
|
+
maxZoom: 22
|
|
1951
|
+
};
|
|
1952
|
+
};
|
|
1953
|
+
|
|
1954
|
+
exports.getZoomConstraintsFromTileConfig = getZoomConstraintsFromTileConfig;
|
|
1955
|
+
|
|
1956
|
+
var getZoomLevelFromGeobin = function getZoomLevelFromGeobin(geobinStr) {
|
|
1957
|
+
var _a;
|
|
1958
|
+
|
|
1959
|
+
if (!geobinStr) {
|
|
1960
|
+
return null;
|
|
1961
|
+
} // geostats cmds return geobin with zoom level 0-18, 0-99 in the geobinPattern covers the range
|
|
1962
|
+
|
|
1963
|
+
|
|
1964
|
+
var geobinPattern = /bin_id_zl_([0-9]{0,2})?_y_/g;
|
|
1965
|
+
var match = geobinPattern.exec(geobinStr);
|
|
1966
|
+
return (_a = (match === null || match === void 0 ? void 0 : match.length) && parseInt(match[1], 10)) !== null && _a !== void 0 ? _a : null;
|
|
1967
|
+
};
|
|
1968
|
+
|
|
1969
|
+
exports.getZoomLevelFromGeobin = getZoomLevelFromGeobin; // Bubble colors - static
|
|
1970
|
+
|
|
1971
|
+
var getStaticColors = function getStaticColors(colorCount, colorArray) {
|
|
1972
|
+
if (colorCount < 0 || !colorCount) {
|
|
1973
|
+
return [exports.DEFAULT_CLUSTER_COLOR];
|
|
1974
|
+
}
|
|
1975
|
+
|
|
1976
|
+
if (!colorArray || !colorArray.length) {
|
|
1977
|
+
return _toConsumableArray(Array(colorCount).keys()).map(function (i) {
|
|
1978
|
+
return exports.DEFAULT_SERIES_COLORS[i];
|
|
1917
1979
|
});
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1980
|
+
} // loop through colorArray to pick the first $colorCount colors
|
|
1981
|
+
// start from begining again if colorCount > colorArray.length
|
|
1982
|
+
|
|
1983
|
+
|
|
1984
|
+
return _toConsumableArray(Array(colorCount).keys()).map(function (i) {
|
|
1985
|
+
return colorUtils_1.isColor(colorArray[i % colorArray.length]) ? colorArray[i % colorArray.length] : exports.DEFAULT_CLUSTER_COLOR;
|
|
1986
|
+
});
|
|
1987
|
+
};
|
|
1988
|
+
|
|
1989
|
+
exports.getStaticColors = getStaticColors; // Bubble size
|
|
1990
|
+
|
|
1991
|
+
var matchBubbleSize = function matchBubbleSize(dataRange, data) {
|
|
1992
|
+
var size = d3_scale_1.scalePow().exponent(0.2).domain(dataRange).range([exports.MIN_BUBBLE_RADIUS, exports.MAX_BUBBLE_RADIUS])(data);
|
|
1993
|
+
|
|
1994
|
+
if (size > exports.MAX_BUBBLE_RADIUS) {
|
|
1995
|
+
return exports.MAX_BUBBLE_RADIUS;
|
|
1996
|
+
}
|
|
1997
|
+
|
|
1998
|
+
if (size < exports.MIN_BUBBLE_RADIUS) {
|
|
1999
|
+
return exports.MIN_BUBBLE_RADIUS;
|
|
2000
|
+
}
|
|
2001
|
+
|
|
2002
|
+
return size;
|
|
2003
|
+
};
|
|
2004
|
+
|
|
2005
|
+
exports.matchBubbleSize = matchBubbleSize;
|
|
2006
|
+
|
|
2007
|
+
var transposeArray = function transposeArray(array) {
|
|
2008
|
+
if (!array || !array.length || !array[0] || !array[0].length) {
|
|
2009
|
+
return [];
|
|
2010
|
+
}
|
|
2011
|
+
|
|
2012
|
+
return array[0].map(function (_, i) {
|
|
2013
|
+
return array.map(function (row) {
|
|
2014
|
+
return row[i];
|
|
2015
|
+
});
|
|
2016
|
+
});
|
|
2017
|
+
};
|
|
2018
|
+
|
|
2019
|
+
exports.transposeArray = transposeArray; // sanitize values: update all null, undefined, or negative values to 0
|
|
2020
|
+
|
|
2021
|
+
var sanitizeValues = function sanitizeValues(values) {
|
|
2022
|
+
// null / undefined
|
|
2023
|
+
if (!values) {
|
|
2024
|
+
return 0;
|
|
2025
|
+
} // number
|
|
2026
|
+
|
|
2027
|
+
|
|
2028
|
+
if (!Array.isArray(values)) {
|
|
2029
|
+
return values > 0 ? values : 0;
|
|
2030
|
+
} // array
|
|
2031
|
+
|
|
2032
|
+
|
|
2033
|
+
return values.map(function (arr) {
|
|
2034
|
+
return exports.sanitizeValues(arr);
|
|
2035
|
+
});
|
|
2036
|
+
};
|
|
2037
|
+
|
|
2038
|
+
exports.sanitizeValues = sanitizeValues;
|
|
2039
|
+
|
|
2040
|
+
var bakeBubbleData = function bakeBubbleData(layer) {
|
|
2041
|
+
var _a;
|
|
2042
|
+
|
|
2043
|
+
if (!layer || !((_a = layer.bubbleSize) === null || _a === void 0 ? void 0 : _a.length) || !layer.geobin || !layer.geobin.length || !layer.latitude || !layer.latitude.length || !layer.longitude || !layer.longitude.length) {
|
|
2044
|
+
return null;
|
|
2045
|
+
} // if bubbleSize is passed as an array of single number array (data series)
|
|
2046
|
+
// e.g. [value0, value1, ...]
|
|
2047
|
+
// format each value as an array to unify data operations for data series and frames
|
|
2048
|
+
|
|
2049
|
+
|
|
2050
|
+
var sanitizedBubbleSize = exports.sanitizeValues(layer.bubbleSize);
|
|
2051
|
+
var transposedBubbleSize;
|
|
2052
|
+
var transposedSanitizedBubbleSize;
|
|
2053
|
+
var isPie = false; // format array if bubbleSize is passed as an array of array (data frame)
|
|
2054
|
+
|
|
2055
|
+
if (Array.isArray(layer.bubbleSize[0])) {
|
|
2056
|
+
// one-time array transpose,
|
|
2057
|
+
// e.g. from [column0data, column0data] (multi series)
|
|
2058
|
+
// to [[column0datum0, column1datum0], [column0datum1, column1data1], ...]
|
|
2059
|
+
// or e.g. from [column0data] (single series)
|
|
2060
|
+
// to [[column0data]]
|
|
2061
|
+
// for easy access of values at each geo location,
|
|
2062
|
+
// and min max pie size computation
|
|
2063
|
+
transposedBubbleSize = exports.transposeArray(layer.bubbleSize);
|
|
2064
|
+
transposedSanitizedBubbleSize = exports.transposeArray(sanitizedBubbleSize); // if multiple series in the dataframe, set isPie to true
|
|
2065
|
+
|
|
2066
|
+
if (layer.bubbleSize.length > 1) {
|
|
2067
|
+
isPie = true;
|
|
2068
|
+
}
|
|
2069
|
+
} else {
|
|
2070
|
+
transposedBubbleSize = layer.bubbleSize.map(function (n) {
|
|
2071
|
+
return [n];
|
|
2072
|
+
});
|
|
2073
|
+
transposedSanitizedBubbleSize = sanitizedBubbleSize.map(function (n) {
|
|
2074
|
+
return [n];
|
|
2075
|
+
});
|
|
2076
|
+
}
|
|
2077
|
+
|
|
2078
|
+
if (!transposedBubbleSize || !transposedBubbleSize.length) {
|
|
2079
|
+
return null;
|
|
2080
|
+
}
|
|
2081
|
+
|
|
2082
|
+
var data = layer.latitude.map(function (lat, i) {
|
|
2083
|
+
return {
|
|
2084
|
+
zoom: exports.getZoomLevelFromGeobin(layer.geobin[i]),
|
|
2085
|
+
values: transposedBubbleSize[i],
|
|
2086
|
+
sanitizedValues: transposedSanitizedBubbleSize[i],
|
|
2087
|
+
coordinates: [layer.longitude[i], lat],
|
|
2088
|
+
metadata: layer.metadata ? layer.metadata[i] : {}
|
|
2089
|
+
};
|
|
2090
|
+
}).filter(function (d) {
|
|
2091
|
+
return Boolean(d.values);
|
|
2092
|
+
}); // compute the min/max value to encode min/max pie or bubble size
|
|
2093
|
+
|
|
2094
|
+
var min = lodash_1.sum(transposedSanitizedBubbleSize[0]);
|
|
2095
|
+
var max = lodash_1.sum(transposedSanitizedBubbleSize[1]);
|
|
2096
|
+
transposedSanitizedBubbleSize.forEach(function (row) {
|
|
2097
|
+
var bubbleSize = lodash_1.sum(row);
|
|
2098
|
+
max = bubbleSize > max ? bubbleSize : max;
|
|
2099
|
+
min = bubbleSize < min ? bubbleSize : min;
|
|
2100
|
+
});
|
|
2101
|
+
return {
|
|
2102
|
+
data: data,
|
|
2103
|
+
dataRange: [min, max],
|
|
2104
|
+
isPie: isPie,
|
|
2105
|
+
resultLimit: layer.resultLimit,
|
|
2106
|
+
bubbleSizeFields: layer.bubbleSizeFields
|
|
1921
2107
|
};
|
|
2108
|
+
};
|
|
1922
2109
|
|
|
1923
|
-
|
|
1924
|
-
VizWithoutInternalFields.defaultProps = Viz.defaultProps;
|
|
1925
|
-
VizWithoutInternalFields.config = Viz.config;
|
|
1926
|
-
return VizWithoutInternalFields;
|
|
1927
|
-
}; // HOC for updating all null values in data columns to zeros
|
|
1928
|
-
// excluding 'latitude', 'longitude' and 'geobin'
|
|
2110
|
+
exports.bakeBubbleData = bakeBubbleData;
|
|
1929
2111
|
|
|
2112
|
+
var isValidLatLon = function isValidLatLon(latlon) {
|
|
2113
|
+
if (!latlon || !Array.isArray(latlon) || latlon.length !== 2) {
|
|
2114
|
+
return false;
|
|
2115
|
+
}
|
|
1930
2116
|
|
|
1931
|
-
var
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
2117
|
+
var _latlon = _slicedToArray(latlon, 2),
|
|
2118
|
+
lat = _latlon[0],
|
|
2119
|
+
lon = _latlon[1];
|
|
2120
|
+
|
|
2121
|
+
if (typeof lat !== 'number' || !(lat >= exports.MIN_LATITUDE && lat <= exports.MAX_LATITUDE)) {
|
|
2122
|
+
return false;
|
|
2123
|
+
}
|
|
2124
|
+
|
|
2125
|
+
if (typeof lon !== 'number' || !(lon >= exports.MIN_LONGITUDE && lon <= exports.MAX_LONGITUDE)) {
|
|
2126
|
+
return false;
|
|
2127
|
+
}
|
|
1937
2128
|
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
}
|
|
2129
|
+
return true;
|
|
2130
|
+
};
|
|
1941
2131
|
|
|
1942
|
-
|
|
1943
|
-
var _primary$data2 = primary.data,
|
|
1944
|
-
columns = _primary$data2.columns,
|
|
1945
|
-
fields = _primary$data2.fields;
|
|
1946
|
-
var newColumns = columns;
|
|
1947
|
-
var mergedOptions = hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, JSONSchemaUtils_1.pickFieldFromJSONSchema(config_1.default.optionsSchema, 'default'));
|
|
2132
|
+
exports.isValidLatLon = isValidLatLon; // Returns the min and max LongLat pairs to determine the layer boundaries to fit all markers/bubbles
|
|
1948
2133
|
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
var indicesToEvaluate = new Set(fields.reduce(function (arr, e, i) {
|
|
1954
|
-
var field = typeof e === 'string' ? e : e.name.toString();
|
|
2134
|
+
var getGlobalLayerBoundaries = function getGlobalLayerBoundaries(layers) {
|
|
2135
|
+
if (!layers || !Array.isArray(layers) || !layers.length) {
|
|
2136
|
+
return null;
|
|
2137
|
+
}
|
|
1955
2138
|
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
}
|
|
2139
|
+
var LONGITUDE = 'longitude';
|
|
2140
|
+
var LATITUDE = 'latitude';
|
|
1959
2141
|
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
});
|
|
1967
|
-
}
|
|
2142
|
+
var getMin = function getMin(field) {
|
|
2143
|
+
if (!layers.every(function (layer) {
|
|
2144
|
+
return layer[field];
|
|
2145
|
+
})) {
|
|
2146
|
+
return field === LONGITUDE ? exports.MIN_LONGITUDE : exports.MIN_LATITUDE;
|
|
2147
|
+
}
|
|
1968
2148
|
|
|
1969
|
-
|
|
1970
|
-
|
|
2149
|
+
return layers.reduce(function (prevVal, layer) {
|
|
2150
|
+
var _a;
|
|
2151
|
+
|
|
2152
|
+
return lodash_1.min([prevVal].concat(_toConsumableArray(((_a = lodash_1.get(layer, field)) !== null && _a !== void 0 ? _a : []).slice(0, layer.type === 'marker' && layer.resultLimit ? layer.resultLimit : exports.DEFAULT_RESULT_LIMIT))));
|
|
2153
|
+
}, field === LONGITUDE ? exports.MAX_LONGITUDE : exports.MAX_LATITUDE);
|
|
2154
|
+
};
|
|
2155
|
+
|
|
2156
|
+
var getMax = function getMax(field) {
|
|
2157
|
+
if (!layers.every(function (layer) {
|
|
2158
|
+
return layer[field];
|
|
2159
|
+
})) {
|
|
2160
|
+
return field === LONGITUDE ? exports.MAX_LONGITUDE : exports.MAX_LATITUDE;
|
|
1971
2161
|
}
|
|
1972
2162
|
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
})
|
|
1979
|
-
});
|
|
1980
|
-
return React.createElement(Viz, Object.assign({
|
|
1981
|
-
dataSources: modifiedDatasources,
|
|
1982
|
-
options: options
|
|
1983
|
-
}, otherProps));
|
|
2163
|
+
return layers.reduce(function (prevVal, layer) {
|
|
2164
|
+
var _a;
|
|
2165
|
+
|
|
2166
|
+
return lodash_1.max([prevVal].concat(_toConsumableArray(((_a = lodash_1.get(layer, field)) !== null && _a !== void 0 ? _a : []).slice(0, layer.type === 'marker' && layer.resultLimit ? layer.resultLimit : exports.DEFAULT_RESULT_LIMIT))));
|
|
2167
|
+
}, field === LONGITUDE ? exports.MIN_LONGITUDE : exports.MIN_LATITUDE);
|
|
1984
2168
|
};
|
|
1985
2169
|
|
|
1986
|
-
|
|
1987
|
-
VizWithColumnsNullToZeros.defaultProps = Viz.defaultProps;
|
|
1988
|
-
VizWithColumnsNullToZeros.config = Viz.config;
|
|
1989
|
-
return VizWithColumnsNullToZeros;
|
|
2170
|
+
return [[getMin(LONGITUDE), getMin(LATITUDE)], [getMax(LONGITUDE), getMax(LATITUDE)]];
|
|
1990
2171
|
};
|
|
1991
2172
|
|
|
1992
|
-
|
|
1993
|
-
ReactViz: PureMap_1.default,
|
|
1994
|
-
vizConfig: config_1.default,
|
|
1995
|
-
computeVizProps: exports.computeVizProps,
|
|
1996
|
-
disableEditModeCover: true,
|
|
1997
|
-
useIconPlaceholder: function useIconPlaceholder() {
|
|
1998
|
-
return false;
|
|
1999
|
-
}
|
|
2000
|
-
})));
|
|
2001
|
-
var themes = config_1.default.themes;
|
|
2002
|
-
exports.themes = themes;
|
|
2003
|
-
exports.default = Map;
|
|
2173
|
+
exports.getGlobalLayerBoundaries = getGlobalLayerBoundaries;
|
|
2004
2174
|
|
|
2005
2175
|
/***/ }),
|
|
2006
|
-
/*
|
|
2176
|
+
/* 106 */
|
|
2007
2177
|
/***/ (function(module, exports) {
|
|
2008
2178
|
|
|
2009
|
-
module.exports = require("@splunk/
|
|
2179
|
+
module.exports = require("@splunk/react-ui/Popover");
|
|
2010
2180
|
|
|
2011
2181
|
/***/ }),
|
|
2012
|
-
/*
|
|
2182
|
+
/* 107 */,
|
|
2183
|
+
/* 108 */,
|
|
2184
|
+
/* 109 */,
|
|
2185
|
+
/* 110 */,
|
|
2186
|
+
/* 111 */,
|
|
2187
|
+
/* 112 */,
|
|
2188
|
+
/* 113 */,
|
|
2189
|
+
/* 114 */,
|
|
2190
|
+
/* 115 */,
|
|
2191
|
+
/* 116 */,
|
|
2192
|
+
/* 117 */,
|
|
2193
|
+
/* 118 */,
|
|
2194
|
+
/* 119 */,
|
|
2195
|
+
/* 120 */,
|
|
2196
|
+
/* 121 */,
|
|
2197
|
+
/* 122 */,
|
|
2198
|
+
/* 123 */,
|
|
2199
|
+
/* 124 */,
|
|
2200
|
+
/* 125 */,
|
|
2201
|
+
/* 126 */,
|
|
2202
|
+
/* 127 */,
|
|
2203
|
+
/* 128 */
|
|
2013
2204
|
/***/ (function(module, exports) {
|
|
2014
2205
|
|
|
2015
|
-
module.exports = require("
|
|
2206
|
+
module.exports = require("maplibre-gl");
|
|
2016
2207
|
|
|
2017
2208
|
/***/ }),
|
|
2018
|
-
/*
|
|
2209
|
+
/* 129 */
|
|
2019
2210
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2020
2211
|
|
|
2021
2212
|
"use strict";
|
|
2022
2213
|
|
|
2023
2214
|
|
|
2024
|
-
var _slicedToArray = __webpack_require__(
|
|
2215
|
+
var _slicedToArray = __webpack_require__(51);
|
|
2216
|
+
|
|
2217
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
2218
|
+
var t = {};
|
|
2219
|
+
|
|
2220
|
+
for (var p in s) {
|
|
2221
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
2222
|
+
}
|
|
2223
|
+
|
|
2224
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
2225
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
2226
|
+
}
|
|
2227
|
+
return t;
|
|
2228
|
+
};
|
|
2025
2229
|
|
|
2026
2230
|
Object.defineProperty(exports, "__esModule", {
|
|
2027
2231
|
value: true
|
|
2028
2232
|
});
|
|
2029
|
-
exports.isLatLng = exports.formatColor = exports.DEFAULT_ZOOM = exports.DEFAULT_SHOW_SCALE = exports.DEFAULT_SCALE_UNIT = exports.DEFAULT_CONTROL_FOREGROUND_COLOR = exports.DEFAULT_CONTROL_BACKGROUND_COLOR = exports.DEFAULT_CENTER = void 0;
|
|
2030
2233
|
|
|
2031
|
-
var
|
|
2234
|
+
var maplibre_gl_1 = __webpack_require__(128);
|
|
2032
2235
|
|
|
2033
|
-
var
|
|
2236
|
+
var React = __webpack_require__(1);
|
|
2034
2237
|
|
|
2035
|
-
var
|
|
2238
|
+
var Tooltip_1 = __webpack_require__(202);
|
|
2036
2239
|
|
|
2037
|
-
var
|
|
2240
|
+
var MarkerWrapper = function MarkerWrapper(_a) {
|
|
2241
|
+
var longitude = _a.longitude,
|
|
2242
|
+
latitude = _a.latitude,
|
|
2243
|
+
_a$additionalFields = _a.additionalFields,
|
|
2244
|
+
additionalFields = _a$additionalFields === void 0 ? [] : _a$additionalFields,
|
|
2245
|
+
map = _a.map,
|
|
2246
|
+
children = _a.children,
|
|
2247
|
+
otherProps = __rest(_a, ["longitude", "latitude", "additionalFields", "map", "children"]);
|
|
2038
2248
|
|
|
2039
|
-
var
|
|
2249
|
+
var container = React.useRef();
|
|
2250
|
+
var marker = React.useRef();
|
|
2040
2251
|
|
|
2041
|
-
var
|
|
2252
|
+
var _React$useState = React.useState(false),
|
|
2253
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
2254
|
+
isTooltipOpen = _React$useState2[0],
|
|
2255
|
+
setTooltipOpenStatus = _React$useState2[1];
|
|
2256
|
+
|
|
2257
|
+
var openTooltip = React.useCallback(function () {
|
|
2258
|
+
return setTooltipOpenStatus(true);
|
|
2259
|
+
}, []);
|
|
2260
|
+
var closeTooltip = React.useCallback(function () {
|
|
2261
|
+
return setTooltipOpenStatus(false);
|
|
2262
|
+
}, []);
|
|
2263
|
+
var cleanupMarker = React.useCallback(function () {
|
|
2264
|
+
if (marker.current) {
|
|
2265
|
+
marker.current.remove();
|
|
2266
|
+
marker.current = undefined;
|
|
2267
|
+
}
|
|
2268
|
+
}, []);
|
|
2269
|
+
React.useEffect(function () {
|
|
2270
|
+
try {
|
|
2271
|
+
if (marker.current) {
|
|
2272
|
+
marker.current.setLngLat([longitude, latitude]);
|
|
2273
|
+
} else {
|
|
2274
|
+
marker.current = new maplibre_gl_1.Marker(container.current);
|
|
2275
|
+
marker.current.setLngLat([longitude, latitude]);
|
|
2276
|
+
marker.current.addTo(map.current);
|
|
2277
|
+
}
|
|
2278
|
+
} catch (error) {
|
|
2279
|
+
console.error(error);
|
|
2280
|
+
cleanupMarker();
|
|
2281
|
+
}
|
|
2282
|
+
}, [latitude, longitude, map]);
|
|
2283
|
+
React.useEffect(function () {
|
|
2284
|
+
return cleanupMarker;
|
|
2285
|
+
}, []);
|
|
2286
|
+
return React.createElement("div", null, React.createElement("div", Object.assign({
|
|
2287
|
+
ref: container,
|
|
2288
|
+
"data-test": "map-marker",
|
|
2289
|
+
onMouseOver: openTooltip,
|
|
2290
|
+
onMouseLeave: closeTooltip,
|
|
2291
|
+
onFocus: openTooltip,
|
|
2292
|
+
onBlur: closeTooltip
|
|
2293
|
+
}, otherProps), children), React.createElement(Tooltip_1.default, {
|
|
2294
|
+
open: isTooltipOpen,
|
|
2295
|
+
anchor: container.current,
|
|
2296
|
+
latitude: latitude,
|
|
2297
|
+
longitude: longitude,
|
|
2298
|
+
additionalFields: additionalFields
|
|
2299
|
+
}));
|
|
2300
|
+
};
|
|
2042
2301
|
|
|
2043
|
-
|
|
2302
|
+
exports.default = MarkerWrapper;
|
|
2044
2303
|
|
|
2045
|
-
|
|
2304
|
+
/***/ }),
|
|
2305
|
+
/* 130 */,
|
|
2306
|
+
/* 131 */,
|
|
2307
|
+
/* 132 */,
|
|
2308
|
+
/* 133 */,
|
|
2309
|
+
/* 134 */,
|
|
2310
|
+
/* 135 */,
|
|
2311
|
+
/* 136 */,
|
|
2312
|
+
/* 137 */,
|
|
2313
|
+
/* 138 */,
|
|
2314
|
+
/* 139 */,
|
|
2315
|
+
/* 140 */,
|
|
2316
|
+
/* 141 */,
|
|
2317
|
+
/* 142 */,
|
|
2318
|
+
/* 143 */,
|
|
2319
|
+
/* 144 */,
|
|
2320
|
+
/* 145 */,
|
|
2321
|
+
/* 146 */,
|
|
2322
|
+
/* 147 */,
|
|
2323
|
+
/* 148 */,
|
|
2324
|
+
/* 149 */,
|
|
2325
|
+
/* 150 */,
|
|
2326
|
+
/* 151 */,
|
|
2327
|
+
/* 152 */,
|
|
2328
|
+
/* 153 */,
|
|
2329
|
+
/* 154 */,
|
|
2330
|
+
/* 155 */,
|
|
2331
|
+
/* 156 */,
|
|
2332
|
+
/* 157 */,
|
|
2333
|
+
/* 158 */,
|
|
2334
|
+
/* 159 */,
|
|
2335
|
+
/* 160 */,
|
|
2336
|
+
/* 161 */,
|
|
2337
|
+
/* 162 */,
|
|
2338
|
+
/* 163 */,
|
|
2339
|
+
/* 164 */,
|
|
2340
|
+
/* 165 */,
|
|
2341
|
+
/* 166 */,
|
|
2342
|
+
/* 167 */,
|
|
2343
|
+
/* 168 */,
|
|
2344
|
+
/* 169 */,
|
|
2345
|
+
/* 170 */,
|
|
2346
|
+
/* 171 */,
|
|
2347
|
+
/* 172 */,
|
|
2348
|
+
/* 173 */,
|
|
2349
|
+
/* 174 */,
|
|
2350
|
+
/* 175 */,
|
|
2351
|
+
/* 176 */,
|
|
2352
|
+
/* 177 */,
|
|
2353
|
+
/* 178 */,
|
|
2354
|
+
/* 179 */,
|
|
2355
|
+
/* 180 */,
|
|
2356
|
+
/* 181 */,
|
|
2357
|
+
/* 182 */,
|
|
2358
|
+
/* 183 */,
|
|
2359
|
+
/* 184 */,
|
|
2360
|
+
/* 185 */,
|
|
2361
|
+
/* 186 */,
|
|
2362
|
+
/* 187 */,
|
|
2363
|
+
/* 188 */,
|
|
2364
|
+
/* 189 */,
|
|
2365
|
+
/* 190 */,
|
|
2366
|
+
/* 191 */,
|
|
2367
|
+
/* 192 */,
|
|
2368
|
+
/* 193 */,
|
|
2369
|
+
/* 194 */
|
|
2370
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
2046
2371
|
|
|
2047
|
-
|
|
2372
|
+
"use strict";
|
|
2048
2373
|
|
|
2049
|
-
var MapUtils_1 = __webpack_require__(197);
|
|
2050
2374
|
|
|
2051
|
-
var
|
|
2375
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
2376
|
+
var t = {};
|
|
2052
2377
|
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
exports.DEFAULT_SCALE_UNIT = 'imperial';
|
|
2057
|
-
exports.DEFAULT_SHOW_SCALE = true;
|
|
2058
|
-
exports.DEFAULT_ZOOM = 0; // convert rgb/rgba/hex color to encoded color & opacity for SVG strings
|
|
2378
|
+
for (var p in s) {
|
|
2379
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
2380
|
+
}
|
|
2059
2381
|
|
|
2060
|
-
var
|
|
2061
|
-
|
|
2062
|
-
|
|
2063
|
-
|
|
2064
|
-
opacity: chromaColor.alpha()
|
|
2065
|
-
};
|
|
2382
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
2383
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
2384
|
+
}
|
|
2385
|
+
return t;
|
|
2066
2386
|
};
|
|
2067
2387
|
|
|
2068
|
-
exports
|
|
2069
|
-
|
|
2388
|
+
Object.defineProperty(exports, "__esModule", {
|
|
2389
|
+
value: true
|
|
2390
|
+
});
|
|
2391
|
+
exports.PureMap = exports.config = exports.themes = exports.computeVizProps = exports.convertToArrOfObjects = void 0;
|
|
2392
|
+
/* eslint-disable no-sequences */
|
|
2070
2393
|
|
|
2071
|
-
var
|
|
2072
|
-
var width = props.width,
|
|
2073
|
-
height = props.height,
|
|
2074
|
-
backgroundColor = props.backgroundColor,
|
|
2075
|
-
baseLayerTileServer = props.baseLayerTileServer,
|
|
2076
|
-
baseLayerTileServerType = props.baseLayerTileServerType,
|
|
2077
|
-
center = props.center,
|
|
2078
|
-
controlBackgroundColor = props.controlBackgroundColor,
|
|
2079
|
-
controlForegroundColor = props.controlForegroundColor,
|
|
2080
|
-
layers = props.layers,
|
|
2081
|
-
scaleUnit = props.scaleUnit,
|
|
2082
|
-
showScale = props.showScale,
|
|
2083
|
-
themeColorScheme = props.themeColorScheme,
|
|
2084
|
-
zoom = props.zoom,
|
|
2085
|
-
onMapLoad = props.onMapLoad;
|
|
2394
|
+
var React = __webpack_require__(1);
|
|
2086
2395
|
|
|
2087
|
-
|
|
2088
|
-
defaultTileConfig = _react_1$useContext.defaultTileConfig,
|
|
2089
|
-
customTileConfig = _react_1$useContext.customTileConfig;
|
|
2396
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
2090
2397
|
|
|
2091
|
-
|
|
2092
|
-
var map = react_1.useRef(null);
|
|
2093
|
-
var scaleControl = react_1.useRef(null);
|
|
2094
|
-
var zoomControl = react_1.useRef(null);
|
|
2398
|
+
var dsl_1 = __webpack_require__(104);
|
|
2095
2399
|
|
|
2096
|
-
|
|
2097
|
-
return MapUtils_1.getTilePreset({
|
|
2098
|
-
defaultTileConfig: defaultTileConfig,
|
|
2099
|
-
customTileConfig: customTileConfig
|
|
2100
|
-
});
|
|
2101
|
-
}, [defaultTileConfig, customTileConfig]),
|
|
2102
|
-
tilePreset = _react_1$useMemo.tilePreset,
|
|
2103
|
-
defaultTileLight = _react_1$useMemo.defaultTileLight,
|
|
2104
|
-
defaultTileDark = _react_1$useMemo.defaultTileDark;
|
|
2400
|
+
var JSONSchemaUtils_1 = __webpack_require__(24);
|
|
2105
2401
|
|
|
2106
|
-
|
|
2107
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
2108
|
-
tooltipProps = _React$useState2[0],
|
|
2109
|
-
setTooltipProps = _React$useState2[1];
|
|
2402
|
+
var hocUtils_1 = __webpack_require__(8);
|
|
2110
2403
|
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
|
|
2404
|
+
var PureMap_1 = __webpack_require__(195);
|
|
2405
|
+
|
|
2406
|
+
exports.PureMap = PureMap_1.default;
|
|
2407
|
+
|
|
2408
|
+
var config_1 = __webpack_require__(204);
|
|
2409
|
+
|
|
2410
|
+
exports.config = config_1.default;
|
|
2411
|
+
|
|
2412
|
+
var withDashboardViz_1 = __webpack_require__(29); // util fn extracted from PureParallelCoordinates that transforms data structure to array of objects
|
|
2413
|
+
// TODO: pull this fn into common utils and utilize this fn in ParallelCoordinates
|
|
2414
|
+
|
|
2415
|
+
|
|
2416
|
+
var convertToArrOfObjects = function convertToArrOfObjects(columns, fields) {
|
|
2417
|
+
if (!columns || !columns[0].length) return [];
|
|
2418
|
+
var data = [];
|
|
2419
|
+
|
|
2420
|
+
var _loop = function _loop(i) {
|
|
2421
|
+
var newObj = {};
|
|
2422
|
+
fields.forEach(function (field, index) {
|
|
2423
|
+
var fieldName = typeof field === 'string' ? field : field.name;
|
|
2424
|
+
|
|
2425
|
+
if (columns[index][i] === '') {
|
|
2426
|
+
newObj[fieldName] = null;
|
|
2427
|
+
} else {
|
|
2428
|
+
newObj[fieldName] = columns[index][i];
|
|
2429
|
+
}
|
|
2430
|
+
});
|
|
2431
|
+
data.push(newObj);
|
|
2432
|
+
};
|
|
2122
2433
|
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2434
|
+
for (var i = 0; i < columns[0].length; i += 1) {
|
|
2435
|
+
_loop(i);
|
|
2436
|
+
}
|
|
2126
2437
|
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
});
|
|
2130
|
-
map.current.addControl(zoomControl.current, 'top-left');
|
|
2131
|
-
}, [lngLatCenter, zoom]);
|
|
2132
|
-
var initializeScale = react_1.useCallback(function () {
|
|
2133
|
-
scaleControl.current = new maplibre_gl_1.ScaleControl({
|
|
2134
|
-
maxWidth: 70,
|
|
2135
|
-
unit: scaleUnit
|
|
2136
|
-
});
|
|
2137
|
-
map.current.addControl(scaleControl.current);
|
|
2138
|
-
}, [scaleUnit]);
|
|
2139
|
-
var updateScale = react_1.useCallback(function () {
|
|
2140
|
-
var _a;
|
|
2438
|
+
return data;
|
|
2439
|
+
};
|
|
2141
2440
|
|
|
2142
|
-
|
|
2143
|
-
(_a = scaleControl === null || scaleControl === void 0 ? void 0 : scaleControl.current) === null || _a === void 0 ? void 0 : _a.setUnit(scaleUnit);
|
|
2144
|
-
}
|
|
2145
|
-
}, [scaleUnit, showScale]);
|
|
2146
|
-
react_1.useEffect(function () {
|
|
2147
|
-
if (map.current) {
|
|
2148
|
-
map.current.resize();
|
|
2149
|
-
}
|
|
2150
|
-
}, [width, height]);
|
|
2151
|
-
react_1.useEffect(function () {
|
|
2152
|
-
// do not render when defaultTileConfig, customTileConfig and tileset are not configured
|
|
2153
|
-
if (Object.keys(tilePreset).length === 0 && (!baseLayerTileServer || !baseLayerTileServerType)) {
|
|
2154
|
-
// eslint-disable-next-line no-console
|
|
2155
|
-
console.warn('Map Tile Server configuration is missing or invalid. Please provide a valid configuration');
|
|
2156
|
-
return;
|
|
2157
|
-
}
|
|
2441
|
+
exports.convertToArrOfObjects = convertToArrOfObjects;
|
|
2158
2442
|
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
baseLayerTileServerType: baseLayerTileServerType,
|
|
2162
|
-
tilePreset: tilePreset,
|
|
2163
|
-
colorScheme: themeColorScheme,
|
|
2164
|
-
defaultTileLight: defaultTileLight,
|
|
2165
|
-
defaultTileDark: defaultTileDark
|
|
2166
|
-
});
|
|
2167
|
-
mapStyle.version = MapUtils_1.MAP_STYLE_VERSION_NUMBER; // If the map has already been initialized, we update the styles
|
|
2443
|
+
var computeVizProps = function computeVizProps(props) {
|
|
2444
|
+
var _a, _b;
|
|
2168
2445
|
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2446
|
+
var themeFunc = props.themeFunc,
|
|
2447
|
+
theme = props.theme,
|
|
2448
|
+
layers = props.layers,
|
|
2449
|
+
dataSources = props.dataSources,
|
|
2450
|
+
onOptionsChange = props.onOptionsChange;
|
|
2451
|
+
var themeColorVariables = ['controlBackgroundColor', 'controlForegroundColor'];
|
|
2452
|
+
var themeColors = {};
|
|
2453
|
+
themeColorVariables.forEach(function (variable) {
|
|
2454
|
+
themeColors[variable] = themeFunc(variable);
|
|
2455
|
+
}); // Markers use different icons, Bubbles has different styles for light and dark theme
|
|
2456
|
+
// this prop is passed for that
|
|
2172
2457
|
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2458
|
+
var themeColorScheme = (theme === null || theme === void 0 ? void 0 : theme.splunkThemeV1) ? theme === null || theme === void 0 ? void 0 : theme.splunkThemeV1.colorScheme : 'dark';
|
|
2459
|
+
var dataSourceData = (_b = (_a = dataSources === null || dataSources === void 0 ? void 0 : dataSources.primary) === null || _a === void 0 ? void 0 : _a.data) !== null && _b !== void 0 ? _b : {}; // transforms data structure into array of objects to allow for indexing metadata at layer level
|
|
2460
|
+
// TODO: explore any potential changes when multiple layers are supported
|
|
2176
2461
|
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
// initialize the map only once with a constructed style from user configured options
|
|
2182
|
-
// or default configs from the map context
|
|
2183
|
-
initializeMap(lodash_1.omit(mapStyle, ['theme', 'name', 'key']));
|
|
2184
|
-
initializeScale();
|
|
2185
|
-
return;
|
|
2186
|
-
} // eslint-disable-next-line consistent-return
|
|
2462
|
+
var transformedData = exports.convertToArrOfObjects(dataSourceData.columns, dataSourceData.fields);
|
|
2463
|
+
layers.forEach(function (l) {
|
|
2464
|
+
var _a; // add key `geobin` to the layer object if the data is returned from geostats commands
|
|
2465
|
+
// to distinguish geostats commands from table commands
|
|
2187
2466
|
|
|
2188
2467
|
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
};
|
|
2194
|
-
}, [tilePreset, initializeMap, initializeScale, updateScale, defaultTileLight, defaultTileDark, baseLayerTileServer, baseLayerTileServerType, themeColorScheme]);
|
|
2195
|
-
react_1.useEffect(function () {
|
|
2196
|
-
if (map.current) {
|
|
2197
|
-
map.current.flyTo({
|
|
2198
|
-
center: lngLatCenter,
|
|
2199
|
-
zoom: zoom
|
|
2200
|
-
});
|
|
2201
|
-
}
|
|
2202
|
-
}, [lngLatCenter, zoom]);
|
|
2203
|
-
react_1.useEffect(function () {
|
|
2204
|
-
var cleanupLayer = function cleanupLayer() {};
|
|
2468
|
+
var geobinIdx = ((_a = dataSourceData.fields) !== null && _a !== void 0 ? _a : []).map(function (field) {
|
|
2469
|
+
return typeof field === 'string' ? field : field.name;
|
|
2470
|
+
}).indexOf('geobin');
|
|
2471
|
+
var layer = l;
|
|
2205
2472
|
|
|
2206
|
-
|
|
2207
|
-
|
|
2473
|
+
if (geobinIdx > -1) {
|
|
2474
|
+
layer.geobin = dataSourceData.columns[geobinIdx];
|
|
2475
|
+
} // Sanitize colors within layers
|
|
2208
2476
|
|
|
2209
|
-
if (map.current && layers && layers.length && map.current.isStyleLoaded) {
|
|
2210
|
-
try {
|
|
2211
|
-
if (layers[0].type === 'marker' && !('geobin' in layers[0])) {
|
|
2212
|
-
// support for only single layer
|
|
2213
|
-
var markerLayer = layers[0];
|
|
2214
|
-
markerLayer.seriesColors = markerLayer.seriesColors ? markerLayer.seriesColors : MapUtils_1.DEFAULT_SERIES_COLORS;
|
|
2215
|
-
|
|
2216
|
-
cleanupLayer = function cleanupLayer() {
|
|
2217
|
-
if (markers) {
|
|
2218
|
-
markers.forEach(function (marker) {
|
|
2219
|
-
return marker === null || marker === void 0 ? void 0 : marker.remove();
|
|
2220
|
-
});
|
|
2221
|
-
markers = [];
|
|
2222
|
-
}
|
|
2223
|
-
};
|
|
2224
2477
|
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2478
|
+
layer.seriesColors = Array.isArray(layer.seriesColors) ? colorUtils_1.sanitizeArrayOfColors(layer.seriesColors) : undefined;
|
|
2479
|
+
layer.dataColors = Array.isArray(layer.dataColors) ? colorUtils_1.sanitizeArrayOfColors(layer.dataColors) : undefined;
|
|
2480
|
+
layer.metadata = transformedData;
|
|
2481
|
+
});
|
|
2482
|
+
return Object.assign(Object.assign(Object.assign(Object.assign({}, themeColors), {
|
|
2483
|
+
themeColorScheme: themeColorScheme
|
|
2484
|
+
}), layers), {
|
|
2485
|
+
onOptionsChange: onOptionsChange
|
|
2486
|
+
});
|
|
2487
|
+
};
|
|
2232
2488
|
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
});
|
|
2243
|
-
bubbles = [];
|
|
2244
|
-
}
|
|
2245
|
-
}; // render bubbles with data returned from geostats cmds
|
|
2489
|
+
exports.computeVizProps = computeVizProps;
|
|
2490
|
+
|
|
2491
|
+
var withTooltipFields = function withTooltipFields(Viz) {
|
|
2492
|
+
var VizWithTooltipFields = function VizWithTooltipFields(_a) {
|
|
2493
|
+
var _b, _c, _d, _e;
|
|
2494
|
+
|
|
2495
|
+
var dataSources = _a.dataSources,
|
|
2496
|
+
options = _a.options,
|
|
2497
|
+
otherProps = __rest(_a, ["dataSources", "options"]);
|
|
2246
2498
|
|
|
2499
|
+
if (!dataSources || !dataSources.primary || !dataSources.primary.data) {
|
|
2500
|
+
return React.createElement(Viz, Object.assign({}, otherProps, {
|
|
2501
|
+
options: options
|
|
2502
|
+
}));
|
|
2503
|
+
}
|
|
2247
2504
|
|
|
2248
|
-
|
|
2249
|
-
bubbleLayer.seriesColors = bubbleLayer.seriesColors ? bubbleLayer.seriesColors : MapUtils_1.DEFAULT_SERIES_COLORS;
|
|
2250
|
-
var data = MapUtils_1.bakeBubbleData(bubbleLayer);
|
|
2251
|
-
var staticColors = MapUtils_1.getStaticColors(bubbleLayer.bubbleSize.length, bubbleLayer.seriesColors);
|
|
2505
|
+
var mergedOptions = hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, JSONSchemaUtils_1.pickFieldFromJSONSchema(config_1.default.optionsSchema, 'default'));
|
|
2252
2506
|
|
|
2253
|
-
|
|
2254
|
-
|
|
2507
|
+
if ((_b = mergedOptions.layers) === null || _b === void 0 ? void 0 : _b[0]) {
|
|
2508
|
+
if (((_d = (_c = mergedOptions.layers) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.type) === 'bubble') {
|
|
2509
|
+
mergedOptions.layers[0].bubbleSizeFields = dsl_1.getFieldsFromDSL((_e = mergedOptions.layers[0].bubbleSize) !== null && _e !== void 0 ? _e : mergedOptions.layers[0].bubbleSize, dataSources);
|
|
2510
|
+
}
|
|
2255
2511
|
|
|
2256
|
-
|
|
2512
|
+
var fields = dataSources.primary.data.fields;
|
|
2257
2513
|
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
console.error(err);
|
|
2514
|
+
if (Array.isArray(mergedOptions.layers[0].additionalTooltipFields) && Array.isArray(fields) && fields.length) {
|
|
2515
|
+
var _mergedOptions$layers = mergedOptions.layers[0].bubbleSizeFields,
|
|
2516
|
+
bubbleSizeFields = _mergedOptions$layers === void 0 ? [] : _mergedOptions$layers;
|
|
2517
|
+
mergedOptions.layers[0].additionalTooltipFields = mergedOptions.layers[0].additionalTooltipFields.filter(function (field) {
|
|
2518
|
+
return (typeof fields[0] === 'string' ? fields.includes(field) : fields.map(function (f) {
|
|
2519
|
+
return f.name;
|
|
2520
|
+
}).includes(field)) && !bubbleSizeFields.includes(field);
|
|
2521
|
+
});
|
|
2267
2522
|
}
|
|
2268
2523
|
}
|
|
2269
2524
|
|
|
2270
|
-
return
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
className: "puremap",
|
|
2276
|
-
width: width,
|
|
2277
|
-
height: height,
|
|
2278
|
-
backgroundColor: backgroundColor,
|
|
2279
|
-
controlBackgroundColor: controlBackgroundColor,
|
|
2280
|
-
controlForegroundColor: controlForegroundColor,
|
|
2281
|
-
controlIconColorEncoded: exports.formatColor(controlForegroundColor),
|
|
2282
|
-
ref: basemapContainer,
|
|
2283
|
-
showScale: showScale
|
|
2284
|
-
}), React.createElement(Tooltip_1.default, Object.assign({}, tooltipProps)));
|
|
2285
|
-
return baseMapLayer;
|
|
2286
|
-
};
|
|
2525
|
+
return React.createElement(Viz, Object.assign({
|
|
2526
|
+
dataSources: dataSources,
|
|
2527
|
+
options: mergedOptions
|
|
2528
|
+
}, otherProps));
|
|
2529
|
+
};
|
|
2287
2530
|
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2531
|
+
VizWithTooltipFields.propTypes = Viz.propTypes;
|
|
2532
|
+
VizWithTooltipFields.defaultProps = Viz.defaultProps;
|
|
2533
|
+
VizWithTooltipFields.config = Viz.config;
|
|
2534
|
+
return VizWithTooltipFields;
|
|
2535
|
+
}; // HOC for stripping the internal fields for Maps
|
|
2292
2536
|
|
|
2293
|
-
if (props[propName][0] < -90 || props[propName][0] > 90 || props[propName][1] < -180 || props[propName][1] > 180) {
|
|
2294
|
-
throw new Error("".concat(componentName, " ").concat(propName, " incorrect [lat, lon] ranges."));
|
|
2295
|
-
}
|
|
2296
2537
|
|
|
2297
|
-
|
|
2298
|
-
|
|
2538
|
+
var withoutInternalFields = function withoutInternalFields(Viz) {
|
|
2539
|
+
// eslint-disable-next-line react/display-name
|
|
2540
|
+
var VizWithoutInternalFields = function VizWithoutInternalFields(_a) {
|
|
2541
|
+
var dataSources = _a.dataSources,
|
|
2542
|
+
otherProps = __rest(_a, ["dataSources"]);
|
|
2299
2543
|
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
mode: T.string,
|
|
2304
|
-
width: T.oneOfType([T.string, T.number]),
|
|
2305
|
-
height: T.oneOfType([T.string, T.number]),
|
|
2306
|
-
backgroundColor: T.string,
|
|
2307
|
-
baseLayerTileServer: T.string,
|
|
2308
|
-
baseLayerTileServerType: T.string,
|
|
2309
|
-
center: exports.isLatLng,
|
|
2310
|
-
controlBackgroundColor: T.string,
|
|
2311
|
-
controlForegroundColor: T.string,
|
|
2312
|
-
layers: T.arrayOf(T.shape({
|
|
2313
|
-
type: T.string,
|
|
2314
|
-
latitude: T.arrayOf(T.number),
|
|
2315
|
-
longitude: T.arrayOf(T.number),
|
|
2316
|
-
label: T.string,
|
|
2317
|
-
showInLegend: T.bool,
|
|
2318
|
-
dataColors: T.oneOfType([T.string, T.arrayOf(T.string)]),
|
|
2319
|
-
seriesColors: T.arrayOf(T.string),
|
|
2320
|
-
tooltipFields: T.arrayOf(T.string),
|
|
2321
|
-
resultLimit: T.number
|
|
2322
|
-
})),
|
|
2323
|
-
scaleUnit: T.string,
|
|
2324
|
-
showScale: T.bool,
|
|
2325
|
-
themeColorScheme: T.string,
|
|
2326
|
-
zoom: T.number,
|
|
2327
|
-
onMapLoad: T.func
|
|
2328
|
-
};
|
|
2329
|
-
PureMap.defaultProps = {
|
|
2330
|
-
mode: 'view',
|
|
2331
|
-
width: 800,
|
|
2332
|
-
height: 500,
|
|
2333
|
-
backgroundColor: '#0b0c0e',
|
|
2334
|
-
center: exports.DEFAULT_CENTER,
|
|
2335
|
-
controlBackgroundColor: exports.DEFAULT_CONTROL_BACKGROUND_COLOR,
|
|
2336
|
-
controlForegroundColor: exports.DEFAULT_CONTROL_FOREGROUND_COLOR,
|
|
2337
|
-
scaleUnit: exports.DEFAULT_SCALE_UNIT,
|
|
2338
|
-
showScale: exports.DEFAULT_SHOW_SCALE,
|
|
2339
|
-
layers: [],
|
|
2340
|
-
themeColorScheme: 'dark',
|
|
2341
|
-
zoom: exports.DEFAULT_ZOOM,
|
|
2342
|
-
onMapLoad: lodash_1.noop
|
|
2343
|
-
};
|
|
2344
|
-
exports.default = PureMap;
|
|
2544
|
+
if (!dataSources || !dataSources.primary || !dataSources.primary.data) {
|
|
2545
|
+
return React.createElement(Viz, Object.assign({}, otherProps));
|
|
2546
|
+
}
|
|
2345
2547
|
|
|
2346
|
-
|
|
2347
|
-
|
|
2348
|
-
|
|
2548
|
+
var primary = dataSources.primary;
|
|
2549
|
+
var _primary$data = primary.data,
|
|
2550
|
+
columns = _primary$data.columns,
|
|
2551
|
+
fields = _primary$data.fields;
|
|
2552
|
+
var newColumns = [];
|
|
2553
|
+
var newFields = [];
|
|
2349
2554
|
|
|
2350
|
-
|
|
2555
|
+
if (fields && columns && fields.length === columns.length) {
|
|
2556
|
+
// computed sorted index for removal
|
|
2557
|
+
var indicesToRemove = new Set(fields.reduce(function (arr, e, i) {
|
|
2558
|
+
return (typeof e === 'string' ? e.startsWith('_') : e.name.toString().startsWith('_')) && arr.push(i), arr;
|
|
2559
|
+
}, []));
|
|
2560
|
+
newFields = fields.filter(function (d, i) {
|
|
2561
|
+
return !indicesToRemove.has(i);
|
|
2562
|
+
});
|
|
2563
|
+
newColumns = columns.filter(function (d, i) {
|
|
2564
|
+
return !indicesToRemove.has(i);
|
|
2565
|
+
});
|
|
2566
|
+
}
|
|
2351
2567
|
|
|
2352
|
-
|
|
2353
|
-
|
|
2354
|
-
|
|
2568
|
+
var modifiedDatasources = Object.assign(Object.assign({}, dataSources), {
|
|
2569
|
+
primary: Object.assign(Object.assign({}, primary), {
|
|
2570
|
+
data: Object.assign(Object.assign({}, primary.data), {
|
|
2571
|
+
columns: newColumns,
|
|
2572
|
+
fields: newFields
|
|
2573
|
+
})
|
|
2574
|
+
})
|
|
2575
|
+
});
|
|
2576
|
+
return React.createElement(Viz, Object.assign({
|
|
2577
|
+
dataSources: modifiedDatasources
|
|
2578
|
+
}, otherProps));
|
|
2579
|
+
};
|
|
2355
2580
|
|
|
2356
|
-
|
|
2581
|
+
VizWithoutInternalFields.propTypes = Viz.propTypes;
|
|
2582
|
+
VizWithoutInternalFields.defaultProps = Viz.defaultProps;
|
|
2583
|
+
VizWithoutInternalFields.config = Viz.config;
|
|
2584
|
+
return VizWithoutInternalFields;
|
|
2585
|
+
}; // HOC for updating all null values in data columns to zeros
|
|
2586
|
+
// excluding 'latitude', 'longitude' and 'geobin'
|
|
2357
2587
|
|
|
2358
|
-
/***/ }),
|
|
2359
|
-
/* 195 */
|
|
2360
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
2361
2588
|
|
|
2362
|
-
|
|
2589
|
+
var withNullToZeros = function withNullToZeros(Viz) {
|
|
2590
|
+
// eslint-disable-next-line react/display-name
|
|
2591
|
+
var VizWithColumnsNullToZeros = function VizWithColumnsNullToZeros(_a) {
|
|
2592
|
+
var _b, _c;
|
|
2363
2593
|
|
|
2594
|
+
var dataSources = _a.dataSources,
|
|
2595
|
+
options = _a.options,
|
|
2596
|
+
otherProps = __rest(_a, ["dataSources", "options"]);
|
|
2364
2597
|
|
|
2365
|
-
|
|
2366
|
-
|
|
2367
|
-
}
|
|
2598
|
+
if (!dataSources || !dataSources.primary || !dataSources.primary.data) {
|
|
2599
|
+
return React.createElement(Viz, Object.assign({}, otherProps));
|
|
2600
|
+
}
|
|
2368
2601
|
|
|
2369
|
-
var
|
|
2602
|
+
var primary = dataSources.primary;
|
|
2603
|
+
var _primary$data2 = primary.data,
|
|
2604
|
+
columns = _primary$data2.columns,
|
|
2605
|
+
fields = _primary$data2.fields;
|
|
2606
|
+
var newColumns = columns;
|
|
2607
|
+
var mergedOptions = hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, JSONSchemaUtils_1.pickFieldFromJSONSchema(config_1.default.optionsSchema, 'default'));
|
|
2608
|
+
|
|
2609
|
+
if (((_c = (_b = mergedOptions.layers) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.type) === 'bubble') {
|
|
2610
|
+
var latitudeField = dsl_1.getFieldsFromDSL(mergedOptions.layers[0].latitude, dataSources)[0] || '';
|
|
2611
|
+
var longitudeField = dsl_1.getFieldsFromDSL(mergedOptions.layers[0].longitude, dataSources)[0] || '';
|
|
2612
|
+
var excludedFields = [latitudeField, longitudeField, 'geobin'];
|
|
2613
|
+
var indicesToEvaluate = new Set(fields.reduce(function (arr, e, i) {
|
|
2614
|
+
var field = typeof e === 'string' ? e : e.name.toString();
|
|
2615
|
+
|
|
2616
|
+
if (!excludedFields.includes(field)) {
|
|
2617
|
+
arr.push(i);
|
|
2618
|
+
}
|
|
2370
2619
|
|
|
2371
|
-
|
|
2620
|
+
return arr;
|
|
2621
|
+
}, []));
|
|
2622
|
+
newColumns = columns.map(function (column, i) {
|
|
2623
|
+
if (indicesToEvaluate.has(i)) {
|
|
2624
|
+
return column.map(function (value) {
|
|
2625
|
+
return !value ? 0 : value;
|
|
2626
|
+
});
|
|
2627
|
+
}
|
|
2372
2628
|
|
|
2373
|
-
|
|
2629
|
+
return column;
|
|
2630
|
+
});
|
|
2631
|
+
}
|
|
2374
2632
|
|
|
2375
|
-
var
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
}
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
}
|
|
2387
|
-
return props.controlIconColorEncoded.opacity;
|
|
2388
|
-
}, function (props) {
|
|
2389
|
-
return props.controlIconColorEncoded.color;
|
|
2390
|
-
}, function (props) {
|
|
2391
|
-
return props.controlIconColorEncoded.opacity;
|
|
2392
|
-
}, function (props) {
|
|
2393
|
-
return props.showScale ? 'inline' : 'none';
|
|
2394
|
-
}, function (props) {
|
|
2395
|
-
return props.controlBackgroundColor;
|
|
2396
|
-
}, function (props) {
|
|
2397
|
-
return props.controlBackgroundColor;
|
|
2398
|
-
}, function (props) {
|
|
2399
|
-
return props.controlForegroundColor;
|
|
2400
|
-
}, function (props) {
|
|
2401
|
-
return props.controlForegroundColor;
|
|
2402
|
-
});
|
|
2403
|
-
exports.default = PureMapContainer;
|
|
2633
|
+
var modifiedDatasources = Object.assign(Object.assign({}, dataSources), {
|
|
2634
|
+
primary: Object.assign(Object.assign({}, primary), {
|
|
2635
|
+
data: Object.assign(Object.assign({}, primary.data), {
|
|
2636
|
+
columns: newColumns
|
|
2637
|
+
})
|
|
2638
|
+
})
|
|
2639
|
+
});
|
|
2640
|
+
return React.createElement(Viz, Object.assign({
|
|
2641
|
+
dataSources: modifiedDatasources,
|
|
2642
|
+
options: options
|
|
2643
|
+
}, otherProps));
|
|
2644
|
+
};
|
|
2404
2645
|
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2646
|
+
VizWithColumnsNullToZeros.propTypes = Viz.propTypes;
|
|
2647
|
+
VizWithColumnsNullToZeros.defaultProps = Viz.defaultProps;
|
|
2648
|
+
VizWithColumnsNullToZeros.config = Viz.config;
|
|
2649
|
+
return VizWithColumnsNullToZeros;
|
|
2650
|
+
};
|
|
2408
2651
|
|
|
2409
|
-
|
|
2652
|
+
var Map = withoutInternalFields(withTooltipFields(withNullToZeros(withDashboardViz_1.default({
|
|
2653
|
+
ReactViz: PureMap_1.default,
|
|
2654
|
+
vizConfig: config_1.default,
|
|
2655
|
+
computeVizProps: exports.computeVizProps,
|
|
2656
|
+
disableEditModeCover: true,
|
|
2657
|
+
useIconPlaceholder: function useIconPlaceholder() {
|
|
2658
|
+
return false;
|
|
2659
|
+
}
|
|
2660
|
+
}))));
|
|
2661
|
+
var themes = config_1.default.themes;
|
|
2662
|
+
exports.themes = themes;
|
|
2663
|
+
exports.default = Map;
|
|
2410
2664
|
|
|
2411
2665
|
/***/ }),
|
|
2412
|
-
/*
|
|
2666
|
+
/* 195 */
|
|
2413
2667
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2414
2668
|
|
|
2415
2669
|
"use strict";
|
|
2416
2670
|
|
|
2417
2671
|
|
|
2418
|
-
var _slicedToArray = __webpack_require__(
|
|
2419
|
-
|
|
2420
|
-
var _toConsumableArray = __webpack_require__(39);
|
|
2672
|
+
var _slicedToArray = __webpack_require__(51);
|
|
2421
2673
|
|
|
2422
2674
|
Object.defineProperty(exports, "__esModule", {
|
|
2423
2675
|
value: true
|
|
2424
2676
|
});
|
|
2425
|
-
exports.
|
|
2677
|
+
exports.isLatLng = exports.formatColor = exports.DEFAULT_ZOOM = exports.DEFAULT_SHOW_SCALE = exports.DEFAULT_SCALE_UNIT = exports.DEFAULT_CONTROL_FOREGROUND_COLOR = exports.DEFAULT_CONTROL_BACKGROUND_COLOR = exports.DEFAULT_CENTER = void 0;
|
|
2426
2678
|
|
|
2427
|
-
var
|
|
2679
|
+
var React = __webpack_require__(1);
|
|
2428
2680
|
|
|
2429
2681
|
var lodash_1 = __webpack_require__(2);
|
|
2430
2682
|
|
|
2431
|
-
var
|
|
2432
|
-
|
|
2433
|
-
var colorUtils_1 = __webpack_require__(11);
|
|
2434
|
-
|
|
2435
|
-
var visualization_color_palettes_1 = __webpack_require__(41);
|
|
2436
|
-
|
|
2437
|
-
var MarkerIcons_1 = __webpack_require__(198);
|
|
2438
|
-
|
|
2439
|
-
exports.DEFAULT_RESULT_LIMIT = 1000;
|
|
2440
|
-
exports.DEFAULT_CLUSTER_COLOR = '#909090';
|
|
2441
|
-
exports.DEFAULT_SERIES_COLORS = visualization_color_palettes_1.VIZ_CATEGORICAL; // MapLibre requires a map style specification number which is always 8
|
|
2442
|
-
|
|
2443
|
-
exports.MAP_STYLE_VERSION_NUMBER = 8; // currently using one [min, max] value set for bubbles across all zoom levels
|
|
2444
|
-
// TODO: design choices on [min, max] bubble size for different zoom levels
|
|
2683
|
+
var react_1 = __webpack_require__(1);
|
|
2445
2684
|
|
|
2446
|
-
|
|
2447
|
-
exports.MAX_BUBBLE_RADIUS = 50; // Returns marker background img with the requiref fillColor based on the theme
|
|
2685
|
+
var T = __webpack_require__(0);
|
|
2448
2686
|
|
|
2449
|
-
var
|
|
2450
|
-
var fillColor = color.replace('#', '%23');
|
|
2451
|
-
return theme === 'light' ? MarkerIcons_1.defaultMarkerLightTheme(fillColor) : MarkerIcons_1.defaultMarkerDarkTheme(fillColor);
|
|
2452
|
-
};
|
|
2687
|
+
var chroma = __webpack_require__(196);
|
|
2453
2688
|
|
|
2454
|
-
|
|
2455
|
-
// Note :- Separated this as a util function for better testability
|
|
2689
|
+
var maplibre_gl_1 = __webpack_require__(128);
|
|
2456
2690
|
|
|
2457
|
-
var
|
|
2458
|
-
if (!markerLayer || !map || !map.current || !Array.isArray(markerLayer.latitude) || !Array.isArray(markerLayer.longitude)) {
|
|
2459
|
-
return null;
|
|
2460
|
-
}
|
|
2691
|
+
var MapContext_1 = __webpack_require__(197);
|
|
2461
2692
|
|
|
2462
|
-
|
|
2463
|
-
var lon = markerLayer.longitude;
|
|
2464
|
-
var isStaticColor = !markerLayer.dataColors;
|
|
2465
|
-
var limit = Math.min(lat.length, lon.length, markerLayer.resultLimit ? markerLayer.resultLimit : exports.DEFAULT_RESULT_LIMIT);
|
|
2466
|
-
var markers = [];
|
|
2467
|
-
var colors = [];
|
|
2693
|
+
var PureMapContainer_1 = __webpack_require__(198);
|
|
2468
2694
|
|
|
2469
|
-
|
|
2470
|
-
var staticColor = markerLayer.seriesColors && colorUtils_1.isColor(markerLayer.seriesColors[0]) ? markerLayer.seriesColors[0] : exports.DEFAULT_CLUSTER_COLOR;
|
|
2471
|
-
var dynamicColor = markerLayer.dataColors && colorUtils_1.isColor(markerLayer.dataColors[i]) ? markerLayer.dataColors[i] : exports.DEFAULT_CLUSTER_COLOR;
|
|
2472
|
-
var color = isStaticColor ? staticColor : dynamicColor;
|
|
2473
|
-
colors.push(color); // create a HTML element for each marker
|
|
2474
|
-
|
|
2475
|
-
var el = document.createElement('div');
|
|
2476
|
-
el.className = 'custom-marker';
|
|
2477
|
-
el.style.backgroundImage = "url('data:image/svg+xml;charset=UTF-8,".concat(exports.getMarkerSVGBackgroundImg(color, themeColorScheme), "')");
|
|
2478
|
-
el.addEventListener('mouseover', function () {
|
|
2479
|
-
setTooltipProps({
|
|
2480
|
-
anchor: el,
|
|
2481
|
-
longitude: lon[i],
|
|
2482
|
-
latitude: lat[i]
|
|
2483
|
-
});
|
|
2484
|
-
});
|
|
2485
|
-
el.addEventListener('mouseleave', function () {
|
|
2486
|
-
setTooltipProps({
|
|
2487
|
-
longitude: lon[i],
|
|
2488
|
-
latitude: lat[i]
|
|
2489
|
-
});
|
|
2490
|
-
}); // make a marker for each [lon,lat] and add to the map
|
|
2695
|
+
var MapUtils_1 = __webpack_require__(105);
|
|
2491
2696
|
|
|
2492
|
-
|
|
2493
|
-
};
|
|
2697
|
+
var ClusterLayer_1 = __webpack_require__(200);
|
|
2494
2698
|
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2699
|
+
exports.DEFAULT_CENTER = [0, 0];
|
|
2700
|
+
exports.DEFAULT_CONTROL_BACKGROUND_COLOR = '#2b3033';
|
|
2701
|
+
exports.DEFAULT_CONTROL_FOREGROUND_COLOR = '#B5B5B5';
|
|
2702
|
+
exports.DEFAULT_SCALE_UNIT = 'imperial';
|
|
2703
|
+
exports.DEFAULT_SHOW_SCALE = true;
|
|
2704
|
+
exports.DEFAULT_ZOOM = 0; // convert rgb/rgba/hex color to encoded color & opacity for SVG strings
|
|
2498
2705
|
|
|
2706
|
+
var formatColor = function formatColor(color) {
|
|
2707
|
+
var chromaColor = chroma(color);
|
|
2499
2708
|
return {
|
|
2500
|
-
|
|
2501
|
-
|
|
2709
|
+
color: chroma(chromaColor.rgb()).hex().replace('#', '%23'),
|
|
2710
|
+
opacity: chromaColor.alpha()
|
|
2502
2711
|
};
|
|
2503
2712
|
};
|
|
2504
2713
|
|
|
2505
|
-
exports.
|
|
2506
|
-
|
|
2507
|
-
* Construct a tile preset {key: config} by combining the default + custom tile configs
|
|
2508
|
-
* Also returns the default tile config for each theme - light/dark
|
|
2509
|
-
* @param {MapContextInterface} args
|
|
2510
|
-
* @param {BaseTileConfig[]} args.defaultTileConfig
|
|
2511
|
-
* @param {BaseTileConfig[]} args.customTileConfig
|
|
2512
|
-
* @returns {Object} tile preset
|
|
2513
|
-
*/
|
|
2714
|
+
exports.formatColor = formatColor;
|
|
2715
|
+
PureMapContainer_1.default.displayName = 'PureMapContainer';
|
|
2514
2716
|
|
|
2515
|
-
var
|
|
2516
|
-
var
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2717
|
+
var PureMap = function PureMap(props) {
|
|
2718
|
+
var width = props.width,
|
|
2719
|
+
height = props.height,
|
|
2720
|
+
backgroundColor = props.backgroundColor,
|
|
2721
|
+
baseLayerTileServer = props.baseLayerTileServer,
|
|
2722
|
+
baseLayerTileServerType = props.baseLayerTileServerType,
|
|
2723
|
+
center = props.center,
|
|
2724
|
+
controlBackgroundColor = props.controlBackgroundColor,
|
|
2725
|
+
controlForegroundColor = props.controlForegroundColor,
|
|
2726
|
+
_props$layers = props.layers,
|
|
2727
|
+
layers = _props$layers === void 0 ? [] : _props$layers,
|
|
2728
|
+
scaleUnit = props.scaleUnit,
|
|
2729
|
+
showScale = props.showScale,
|
|
2730
|
+
themeColorScheme = props.themeColorScheme,
|
|
2731
|
+
zoom = props.zoom,
|
|
2732
|
+
onMapLoad = props.onMapLoad,
|
|
2733
|
+
onMapClick = props.onMapClick,
|
|
2734
|
+
onOptionsChange = props.onOptionsChange;
|
|
2520
2735
|
|
|
2521
|
-
var
|
|
2736
|
+
var _react_1$useContext = react_1.useContext(MapContext_1.default),
|
|
2737
|
+
defaultTileConfig = _react_1$useContext.defaultTileConfig,
|
|
2738
|
+
customTileConfig = _react_1$useContext.customTileConfig;
|
|
2522
2739
|
|
|
2523
|
-
var
|
|
2524
|
-
var
|
|
2525
|
-
var
|
|
2526
|
-
var
|
|
2527
|
-
lodash_1.forEach(tileConfigs, function (tileConfig) {
|
|
2528
|
-
var key = tileConfig === null || tileConfig === void 0 ? void 0 : tileConfig.key;
|
|
2529
|
-
var updatedConfig = Object.assign(Object.assign({
|
|
2530
|
-
theme: 'all'
|
|
2531
|
-
}, tileConfig), {
|
|
2532
|
-
version: exports.MAP_STYLE_VERSION_NUMBER
|
|
2533
|
-
});
|
|
2534
|
-
tilePreset[key] = updatedConfig;
|
|
2535
|
-
});
|
|
2740
|
+
var basemapContainer = react_1.useRef(null);
|
|
2741
|
+
var map = react_1.useRef(null);
|
|
2742
|
+
var scaleControl = react_1.useRef(null);
|
|
2743
|
+
var zoomControl = react_1.useRef(null);
|
|
2536
2744
|
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
return config.theme === undefined;
|
|
2542
|
-
});
|
|
2543
|
-
defaultTileDark = (_b = defaultTileConfig.find(function (config) {
|
|
2544
|
-
return config.theme === 'dark';
|
|
2545
|
-
})) !== null && _b !== void 0 ? _b : defaultTileConfig.find(function (config) {
|
|
2546
|
-
return config.theme === undefined;
|
|
2745
|
+
var _react_1$useMemo = react_1.useMemo(function () {
|
|
2746
|
+
return MapUtils_1.getTilePreset({
|
|
2747
|
+
defaultTileConfig: defaultTileConfig,
|
|
2748
|
+
customTileConfig: customTileConfig
|
|
2547
2749
|
});
|
|
2548
|
-
}
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
defaultTileLight: defaultTileLight,
|
|
2553
|
-
defaultTileDark: defaultTileDark
|
|
2554
|
-
};
|
|
2555
|
-
};
|
|
2556
|
-
|
|
2557
|
-
exports.getTilePreset = getTilePreset;
|
|
2558
|
-
/**
|
|
2559
|
-
* Check if baseLayerTileServer is in tilePreset and config matches current theme, if yes, return.
|
|
2560
|
-
* If no, construct a mapStyle with baseLayerTilerServer and baseLayerTileServerType
|
|
2561
|
-
* Else return default tile config based on current theme
|
|
2562
|
-
* @param {Object} args
|
|
2563
|
-
* @param {BaseTileConfig[]} args.tilePreset
|
|
2564
|
-
* @param {String} args.baseLayerTilerServer
|
|
2565
|
-
* @param {String} args.baseLayerTileServerType
|
|
2566
|
-
* @param {String} args.colorScheme
|
|
2567
|
-
* @param {BaseTileConfig} args.defaultTileDark
|
|
2568
|
-
* @param {BaseTileConfig} args.defaultTileLight
|
|
2569
|
-
* @returns {BaseTileConfig} mapStyle
|
|
2570
|
-
*/
|
|
2571
|
-
|
|
2572
|
-
var getMapStyle = function getMapStyle(_ref2) {
|
|
2573
|
-
var _ref2$baseLayerTileSe = _ref2.baseLayerTileServer,
|
|
2574
|
-
baseLayerTileServer = _ref2$baseLayerTileSe === void 0 ? '' : _ref2$baseLayerTileSe,
|
|
2575
|
-
_ref2$baseLayerTileSe2 = _ref2.baseLayerTileServerType,
|
|
2576
|
-
baseLayerTileServerType = _ref2$baseLayerTileSe2 === void 0 ? '' : _ref2$baseLayerTileSe2,
|
|
2577
|
-
_ref2$tilePreset = _ref2.tilePreset,
|
|
2578
|
-
tilePreset = _ref2$tilePreset === void 0 ? {} : _ref2$tilePreset,
|
|
2579
|
-
_ref2$colorScheme = _ref2.colorScheme,
|
|
2580
|
-
colorScheme = _ref2$colorScheme === void 0 ? 'light' : _ref2$colorScheme,
|
|
2581
|
-
_ref2$defaultTileLigh = _ref2.defaultTileLight,
|
|
2582
|
-
defaultTileLight = _ref2$defaultTileLigh === void 0 ? {} : _ref2$defaultTileLigh,
|
|
2583
|
-
_ref2$defaultTileDark = _ref2.defaultTileDark,
|
|
2584
|
-
defaultTileDark = _ref2$defaultTileDark === void 0 ? {} : _ref2$defaultTileDark;
|
|
2585
|
-
|
|
2586
|
-
if (baseLayerTileServer && tilePreset[baseLayerTileServer] && (tilePreset[baseLayerTileServer].theme === colorScheme || tilePreset[baseLayerTileServer].theme === 'all')) {
|
|
2587
|
-
return tilePreset[baseLayerTileServer];
|
|
2588
|
-
}
|
|
2589
|
-
|
|
2590
|
-
if (baseLayerTileServer && baseLayerTileServerType) {
|
|
2591
|
-
var tiles = [];
|
|
2592
|
-
/**
|
|
2593
|
-
* Tile Server URLs (eg: http://{s}.somedomain.com/blabla/{z}/{x}/{y}{r}.png) can specify the variable {s} which refers to a subdomain
|
|
2594
|
-
* Subdomains are used to help with browser parallel requests per domain limitation. These subdomains are typically single letters 'a', 'b' and 'c'
|
|
2595
|
-
* Refer to https://leafletjs.com/SlavaUkraini/reference.html#tilelayer and https://wiki.openstreetmap.org/wiki/Tile_servers
|
|
2596
|
-
*/
|
|
2750
|
+
}, [defaultTileConfig, customTileConfig]),
|
|
2751
|
+
tilePreset = _react_1$useMemo.tilePreset,
|
|
2752
|
+
defaultTileLight = _react_1$useMemo.defaultTileLight,
|
|
2753
|
+
defaultTileDark = _react_1$useMemo.defaultTileDark;
|
|
2597
2754
|
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
* if the variable {s} or {S} is detected, replace it with 'a', 'b' and 'c' - default values for subdomains
|
|
2603
|
-
* TODO: in the future, add an additional prop - baseLayerTileServerSubdomains: ['x', 'y', 'z'], default being ['a', 'b', 'c']
|
|
2604
|
-
*/
|
|
2605
|
-
tiles = [baseLayerTileServer.replace(/{(s|S)}/, 'a'), baseLayerTileServer.replace(/{(s|S)}/, 'b'), baseLayerTileServer.replace(/{(s|S)}/, 'c')];
|
|
2606
|
-
} else {
|
|
2607
|
-
tiles = [baseLayerTileServer];
|
|
2608
|
-
} // TODO: remove hardcoded style when we allow users to pass in layer style through Viz options
|
|
2755
|
+
var _React$useState = React.useState(zoom !== null && zoom !== void 0 ? zoom : exports.DEFAULT_ZOOM),
|
|
2756
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
2757
|
+
currentZoomLevel = _React$useState2[0],
|
|
2758
|
+
setCurrentZoomLevel = _React$useState2[1];
|
|
2609
2759
|
|
|
2760
|
+
var _React$useState3 = React.useState(false),
|
|
2761
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
2762
|
+
isMapLoaded = _React$useState4[0],
|
|
2763
|
+
setMapIsLoaded = _React$useState4[1]; // Assign default center when no center is defined
|
|
2610
2764
|
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
|
-
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
|
|
2765
|
+
|
|
2766
|
+
var lngLatCenter = react_1.useMemo(function () {
|
|
2767
|
+
if (!MapUtils_1.isValidLatLon(center)) {
|
|
2768
|
+
return exports.DEFAULT_CENTER;
|
|
2769
|
+
}
|
|
2770
|
+
|
|
2771
|
+
return [center[1], center[0]];
|
|
2772
|
+
}, [center]); // Assign default zoom when no zoom is defined
|
|
2773
|
+
|
|
2774
|
+
var zoomLevel = react_1.useMemo(function () {
|
|
2775
|
+
if (zoom === undefined) {
|
|
2776
|
+
return exports.DEFAULT_ZOOM;
|
|
2777
|
+
}
|
|
2778
|
+
|
|
2779
|
+
return zoom;
|
|
2780
|
+
}, [zoom]);
|
|
2781
|
+
var initializeMap = react_1.useCallback(function (mapStyle) {
|
|
2782
|
+
var fitMapToContent = function fitMapToContent() {
|
|
2783
|
+
var lngLatBounds = MapUtils_1.getGlobalLayerBoundaries([layers[0]]);
|
|
2784
|
+
map.current.fitBounds(lngLatBounds, {
|
|
2785
|
+
padding: MapUtils_1.MAX_BUBBLE_RADIUS + 5,
|
|
2786
|
+
animate: false
|
|
2787
|
+
});
|
|
2627
2788
|
};
|
|
2628
|
-
return mapStyle;
|
|
2629
|
-
} // if tile server is not present in the preset AND we can't construct a mapStyle, fall back on defaults
|
|
2630
2789
|
|
|
2790
|
+
map.current = new maplibre_gl_1.Map(Object.assign({
|
|
2791
|
+
container: basemapContainer.current,
|
|
2792
|
+
preserveDrawingBuffer: true,
|
|
2793
|
+
style: mapStyle,
|
|
2794
|
+
center: lngLatCenter,
|
|
2795
|
+
zoom: zoomLevel
|
|
2796
|
+
}, MapUtils_1.getZoomConstraintsFromTileConfig(mapStyle))); // Fired immediately after all necessary resources have been downloaded
|
|
2797
|
+
// and the first visually complete rendering of the map has occurred.
|
|
2631
2798
|
|
|
2632
|
-
|
|
2633
|
-
|
|
2799
|
+
map.current.on('load', function () {
|
|
2800
|
+
if (layers.length > 0 && center === undefined && zoom === undefined) {
|
|
2801
|
+
fitMapToContent();
|
|
2802
|
+
}
|
|
2634
2803
|
|
|
2635
|
-
|
|
2804
|
+
setMapIsLoaded(true); // TODO :- Temp timeout added for onMapLoad event to avoid flaky screenshots caused by
|
|
2805
|
+
// https://maplibre.org/maplibre-gl-js-docs/api/map/#map#fitbounds. Need alternate approach to handle the same.
|
|
2636
2806
|
|
|
2637
|
-
|
|
2638
|
-
|
|
2639
|
-
|
|
2807
|
+
setTimeout(function () {
|
|
2808
|
+
return onMapLoad();
|
|
2809
|
+
}, 500);
|
|
2810
|
+
});
|
|
2811
|
+
map.current.on('zoomend', function () {
|
|
2812
|
+
setCurrentZoomLevel(map.current.getZoom());
|
|
2813
|
+
}); // drag
|
|
2814
|
+
|
|
2815
|
+
map.current.on('dragend', function () {
|
|
2816
|
+
var newCenter = map.current.getCenter();
|
|
2817
|
+
onOptionsChange({
|
|
2818
|
+
center: [newCenter.lat, newCenter.lng]
|
|
2819
|
+
});
|
|
2820
|
+
}); // zoom
|
|
2640
2821
|
|
|
2641
|
-
|
|
2822
|
+
map.current.on('zoomend', function () {
|
|
2823
|
+
onOptionsChange({
|
|
2824
|
+
zoom: map.current.getZoom()
|
|
2825
|
+
});
|
|
2826
|
+
}); // zoom
|
|
2642
2827
|
|
|
2643
|
-
|
|
2644
|
-
|
|
2645
|
-
|
|
2646
|
-
|
|
2828
|
+
zoomControl.current = new maplibre_gl_1.NavigationControl({
|
|
2829
|
+
showCompass: false
|
|
2830
|
+
});
|
|
2831
|
+
map.current.addControl(zoomControl.current, 'top-left');
|
|
2832
|
+
}, [lngLatCenter, zoomLevel, layers.length]);
|
|
2833
|
+
var initializeScale = react_1.useCallback(function () {
|
|
2834
|
+
scaleControl.current = new maplibre_gl_1.ScaleControl({
|
|
2835
|
+
maxWidth: 70,
|
|
2836
|
+
unit: scaleUnit
|
|
2837
|
+
});
|
|
2838
|
+
map.current.addControl(scaleControl.current);
|
|
2839
|
+
}, [scaleUnit]);
|
|
2840
|
+
var updateScale = react_1.useCallback(function () {
|
|
2841
|
+
var _a;
|
|
2647
2842
|
|
|
2648
|
-
if (
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2843
|
+
if (showScale) {
|
|
2844
|
+
(_a = scaleControl === null || scaleControl === void 0 ? void 0 : scaleControl.current) === null || _a === void 0 ? void 0 : _a.setUnit(scaleUnit);
|
|
2845
|
+
}
|
|
2846
|
+
}, [scaleUnit, showScale]);
|
|
2847
|
+
react_1.useEffect(function () {
|
|
2848
|
+
if (map.current) {
|
|
2849
|
+
map.current.resize();
|
|
2850
|
+
}
|
|
2851
|
+
}, [width, height]);
|
|
2852
|
+
react_1.useEffect(function () {
|
|
2853
|
+
// do not render when defaultTileConfig, customTileConfig and tileset are not configured
|
|
2854
|
+
if (Object.keys(tilePreset).length === 0 && (!baseLayerTileServer || !baseLayerTileServerType)) {
|
|
2855
|
+
// eslint-disable-next-line no-console
|
|
2856
|
+
console.warn('Map Tile Server configuration is missing or invalid. Please provide a valid configuration');
|
|
2857
|
+
return;
|
|
2653
2858
|
}
|
|
2654
|
-
} // then check layers
|
|
2655
2859
|
|
|
2860
|
+
var mapStyle = MapUtils_1.getMapStyle({
|
|
2861
|
+
baseLayerTileServer: baseLayerTileServer,
|
|
2862
|
+
baseLayerTileServerType: baseLayerTileServerType,
|
|
2863
|
+
tilePreset: tilePreset,
|
|
2864
|
+
colorScheme: themeColorScheme,
|
|
2865
|
+
defaultTileLight: defaultTileLight,
|
|
2866
|
+
defaultTileDark: defaultTileDark
|
|
2867
|
+
});
|
|
2868
|
+
mapStyle.version = MapUtils_1.MAP_STYLE_VERSION_NUMBER; // If the map has already been initialized, we update the styles
|
|
2656
2869
|
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
|
|
2660
|
-
_maxzoom = _layers$_i.maxzoom;
|
|
2870
|
+
if (map.current) {
|
|
2871
|
+
// Refer to https://maplibre.org/maplibre-gl-js-docs/api/map/#setstyle-example for options.diff (default is true)
|
|
2872
|
+
map.current.setStyle(lodash_1.omit(mapStyle, ['theme', 'name', 'key']));
|
|
2661
2873
|
|
|
2662
|
-
|
|
2663
|
-
|
|
2664
|
-
|
|
2665
|
-
|
|
2666
|
-
|
|
2874
|
+
var _MapUtils_1$getZoomCo = MapUtils_1.getZoomConstraintsFromTileConfig(mapStyle),
|
|
2875
|
+
minZoom = _MapUtils_1$getZoomCo.minZoom,
|
|
2876
|
+
maxZoom = _MapUtils_1$getZoomCo.maxZoom;
|
|
2877
|
+
|
|
2878
|
+
map.current.setMinZoom(minZoom);
|
|
2879
|
+
map.current.setMaxZoom(maxZoom);
|
|
2880
|
+
updateScale();
|
|
2881
|
+
} else {
|
|
2882
|
+
// initialize the map only once with a constructed style from user configured options
|
|
2883
|
+
// or default configs from the map context
|
|
2884
|
+
initializeMap(lodash_1.omit(mapStyle, ['theme', 'name', 'key']));
|
|
2885
|
+
initializeScale();
|
|
2667
2886
|
}
|
|
2668
|
-
}
|
|
2887
|
+
}, [tilePreset, initializeMap, initializeScale, updateScale, defaultTileLight, defaultTileDark, baseLayerTileServer, baseLayerTileServerType, themeColorScheme]);
|
|
2888
|
+
react_1.useEffect(function () {
|
|
2889
|
+
if (map.current) {
|
|
2890
|
+
map.current.flyTo({
|
|
2891
|
+
center: lngLatCenter,
|
|
2892
|
+
zoom: zoomLevel
|
|
2893
|
+
});
|
|
2894
|
+
}
|
|
2895
|
+
}, [lngLatCenter, zoom]);
|
|
2896
|
+
react_1.useEffect(function () {
|
|
2897
|
+
return function () {
|
|
2898
|
+
if (map.current) {
|
|
2899
|
+
map.current.remove();
|
|
2900
|
+
}
|
|
2901
|
+
};
|
|
2902
|
+
}, []);
|
|
2669
2903
|
|
|
2904
|
+
var _layers = _slicedToArray(layers, 1),
|
|
2905
|
+
clusterLayer = _layers[0];
|
|
2670
2906
|
|
|
2671
|
-
return {
|
|
2672
|
-
|
|
2673
|
-
|
|
2674
|
-
|
|
2907
|
+
return React.createElement(React.Fragment, null, React.createElement(PureMapContainer_1.default, {
|
|
2908
|
+
className: "puremap",
|
|
2909
|
+
width: width,
|
|
2910
|
+
height: height,
|
|
2911
|
+
backgroundColor: backgroundColor,
|
|
2912
|
+
controlBackgroundColor: controlBackgroundColor,
|
|
2913
|
+
controlForegroundColor: controlForegroundColor,
|
|
2914
|
+
controlIconColorEncoded: exports.formatColor(controlForegroundColor),
|
|
2915
|
+
ref: basemapContainer,
|
|
2916
|
+
showScale: showScale
|
|
2917
|
+
}, isMapLoaded && clusterLayer && React.createElement(ClusterLayer_1.default, {
|
|
2918
|
+
clusterLayer: clusterLayer,
|
|
2919
|
+
themeColorScheme: themeColorScheme,
|
|
2920
|
+
map: map,
|
|
2921
|
+
zoom: currentZoomLevel,
|
|
2922
|
+
onMapClick: onMapClick
|
|
2923
|
+
})));
|
|
2675
2924
|
};
|
|
2676
2925
|
|
|
2677
|
-
|
|
2926
|
+
var isLatLng = function isLatLng(props, propName, componentName) {
|
|
2927
|
+
if (!props[propName]) {
|
|
2928
|
+
return null;
|
|
2929
|
+
}
|
|
2678
2930
|
|
|
2679
|
-
var
|
|
2680
|
-
var
|
|
2931
|
+
var latAbs = Math.abs(props[propName][0]);
|
|
2932
|
+
var lonAbs = Math.abs(props[propName][1]);
|
|
2933
|
+
var latlon = props[propName];
|
|
2681
2934
|
|
|
2682
|
-
if (
|
|
2683
|
-
|
|
2684
|
-
}
|
|
2935
|
+
if (latAbs > MapUtils_1.MAX_LATITUDE && lonAbs <= MapUtils_1.MAX_LATITUDE) {
|
|
2936
|
+
throw new Error("".concat(componentName, " ").concat(propName, " may have reversed [lat, lon] ranges."));
|
|
2937
|
+
}
|
|
2685
2938
|
|
|
2939
|
+
if (!MapUtils_1.isValidLatLon(latlon)) {
|
|
2940
|
+
throw new Error("".concat(componentName, " ").concat(propName, " incorrect [lat, lon] ranges."));
|
|
2941
|
+
}
|
|
2686
2942
|
|
|
2687
|
-
|
|
2688
|
-
var match = geobinPattern.exec(geobinStr);
|
|
2689
|
-
return (_a = (match === null || match === void 0 ? void 0 : match.length) && parseInt(match[1], 10)) !== null && _a !== void 0 ? _a : null;
|
|
2943
|
+
return null;
|
|
2690
2944
|
};
|
|
2691
2945
|
|
|
2692
|
-
exports.
|
|
2946
|
+
exports.isLatLng = isLatLng;
|
|
2947
|
+
PureMap.propTypes = {
|
|
2948
|
+
// eslint-disable-next-line react/no-unused-prop-types
|
|
2949
|
+
mode: T.string,
|
|
2950
|
+
width: T.oneOfType([T.string, T.number]),
|
|
2951
|
+
height: T.oneOfType([T.string, T.number]),
|
|
2952
|
+
backgroundColor: T.string,
|
|
2953
|
+
baseLayerTileServer: T.string,
|
|
2954
|
+
baseLayerTileServerType: T.string,
|
|
2955
|
+
center: exports.isLatLng,
|
|
2956
|
+
controlBackgroundColor: T.string,
|
|
2957
|
+
controlForegroundColor: T.string,
|
|
2958
|
+
layers: T.arrayOf(T.shape({
|
|
2959
|
+
type: T.string,
|
|
2960
|
+
latitude: T.arrayOf(T.number),
|
|
2961
|
+
longitude: T.arrayOf(T.number),
|
|
2962
|
+
label: T.string,
|
|
2963
|
+
showInLegend: T.bool,
|
|
2964
|
+
dataColors: T.oneOfType([T.string, T.arrayOf(T.string)]),
|
|
2965
|
+
seriesColors: T.arrayOf(T.string),
|
|
2966
|
+
additionalTooltipFields: T.arrayOf(T.string),
|
|
2967
|
+
resultLimit: T.number
|
|
2968
|
+
})),
|
|
2969
|
+
scaleUnit: T.string,
|
|
2970
|
+
showScale: T.bool,
|
|
2971
|
+
themeColorScheme: T.string,
|
|
2972
|
+
zoom: T.number,
|
|
2973
|
+
onMapLoad: T.func,
|
|
2974
|
+
onMapClick: T.func,
|
|
2975
|
+
onOptionsChange: T.func
|
|
2976
|
+
};
|
|
2977
|
+
PureMap.defaultProps = {
|
|
2978
|
+
mode: 'view',
|
|
2979
|
+
width: 800,
|
|
2980
|
+
height: 500,
|
|
2981
|
+
backgroundColor: '#0b0c0e',
|
|
2982
|
+
controlBackgroundColor: exports.DEFAULT_CONTROL_BACKGROUND_COLOR,
|
|
2983
|
+
controlForegroundColor: exports.DEFAULT_CONTROL_FOREGROUND_COLOR,
|
|
2984
|
+
scaleUnit: exports.DEFAULT_SCALE_UNIT,
|
|
2985
|
+
showScale: exports.DEFAULT_SHOW_SCALE,
|
|
2986
|
+
layers: [],
|
|
2987
|
+
themeColorScheme: 'dark',
|
|
2988
|
+
onMapLoad: lodash_1.noop,
|
|
2989
|
+
onMapClick: lodash_1.noop,
|
|
2990
|
+
onOptionsChange: lodash_1.noop
|
|
2991
|
+
};
|
|
2992
|
+
exports.default = PureMap;
|
|
2693
2993
|
|
|
2694
|
-
|
|
2695
|
-
|
|
2696
|
-
|
|
2697
|
-
}
|
|
2994
|
+
/***/ }),
|
|
2995
|
+
/* 196 */
|
|
2996
|
+
/***/ (function(module, exports) {
|
|
2698
2997
|
|
|
2699
|
-
|
|
2700
|
-
return _toConsumableArray(Array(colorCount).keys()).map(function (i) {
|
|
2701
|
-
return exports.DEFAULT_SERIES_COLORS[i];
|
|
2702
|
-
});
|
|
2703
|
-
} // loop through colorArray to pick the first $colorCount colors
|
|
2704
|
-
// start from begining again if colorCount > colorArray.length
|
|
2998
|
+
module.exports = require("chroma-js");
|
|
2705
2999
|
|
|
3000
|
+
/***/ }),
|
|
3001
|
+
/* 197 */
|
|
3002
|
+
/***/ (function(module, exports) {
|
|
2706
3003
|
|
|
2707
|
-
|
|
2708
|
-
return colorUtils_1.isColor(colorArray[i % colorArray.length]) ? colorArray[i % colorArray.length] : exports.DEFAULT_CLUSTER_COLOR;
|
|
2709
|
-
});
|
|
2710
|
-
};
|
|
3004
|
+
module.exports = require("@splunk/visualization-context/MapContext");
|
|
2711
3005
|
|
|
2712
|
-
|
|
3006
|
+
/***/ }),
|
|
3007
|
+
/* 198 */
|
|
3008
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
2713
3009
|
|
|
2714
|
-
|
|
2715
|
-
var size = d3_scale_1.scalePow().exponent(0.2).domain(dataRange).range([exports.MIN_BUBBLE_RADIUS, exports.MAX_BUBBLE_RADIUS])(data);
|
|
3010
|
+
"use strict";
|
|
2716
3011
|
|
|
2717
|
-
if (size > exports.MAX_BUBBLE_RADIUS) {
|
|
2718
|
-
return exports.MAX_BUBBLE_RADIUS;
|
|
2719
|
-
}
|
|
2720
3012
|
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
3013
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3014
|
+
value: true
|
|
3015
|
+
});
|
|
2724
3016
|
|
|
2725
|
-
|
|
2726
|
-
};
|
|
3017
|
+
var styled_components_1 = __webpack_require__(4);
|
|
2727
3018
|
|
|
2728
|
-
|
|
3019
|
+
var lodash_1 = __webpack_require__(2);
|
|
2729
3020
|
|
|
2730
|
-
var
|
|
2731
|
-
if (!array || !array.length || !array[0] || !array[0].length) {
|
|
2732
|
-
return [];
|
|
2733
|
-
}
|
|
3021
|
+
var style_1 = __webpack_require__(14);
|
|
2734
3022
|
|
|
2735
|
-
|
|
2736
|
-
return array.map(function (row) {
|
|
2737
|
-
return row[i];
|
|
2738
|
-
});
|
|
2739
|
-
});
|
|
2740
|
-
};
|
|
3023
|
+
var maplibre_gl_css_1 = __webpack_require__(199);
|
|
2741
3024
|
|
|
2742
|
-
|
|
3025
|
+
var PureMapContainer = styled_components_1.default.div.withConfig({
|
|
3026
|
+
displayName: "PureMapContainer",
|
|
3027
|
+
componentId: "sc-1gjwxfv-0"
|
|
3028
|
+
})(["", " overflow:hidden;position:relative;z-index:0;background-color:", ";", ";.maplibregl-ctrl-top-left{position:absolute;top:12px;left:16px;.maplibregl-ctrl-group{width:40px !important;height:87px !important;border-radius:4px;margin:8px 0px;background-color:", ";box-shadow:0px 26px 103px rgba(0,0,0,0.64),0px 11px 18px rgba(0,0,0,0.32),0px 3px 6px rgba(0,0,0,0.3);& button{width:40px;height:43px;border-top:0;}.mapboxgl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url('data:image/svg+xml;charset=UTF-8,<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 1C9 0.447715 8.55229 0 8 0C7.44772 0 7 0.447715 7 1V7H1C0.447715 7 0 7.44772 0 8C0 8.55229 0.447715 9 1 9H7V15C7 15.5523 7.44772 16 8 16C8.55229 16 9 15.5523 9 15V9H15C15.5523 9 16 8.55229 16 8C16 7.44772 15.5523 7 15 7H9V1Z\" fill=\"", "\" fill-opacity=\"", "\" /></svg>');}.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url('data:image/svg+xml;charset=UTF-8,<svg width=\"14\" height=\"3\" viewBox=\"0 0 14 3\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 1.99707C0 1.44479 0.447715 0.99707 1 0.99707H13C13.5523 0.99707 14 1.44479 14 1.99707C14 2.54936 13.5523 2.99707 13 2.99707H1C0.447715 2.99707 0 2.54936 0 1.99707Z\" fill=\"", "\" fill-opacity=\"", "\" /></svg>');}}}.maplibregl-ctrl-bottom-left{display:", ";position:absolute;z-index:0;bottom:16px;left:12px;width:86px;height:29px;border-radius:4px;margin:0;background-color:", ";box-shadow:0px 26px 103px rgba(0,0,0,0.13),0px 11px 18px rgba(0,0,0,0.06),0px 3px 6px rgba(0,0,0,0.06);.maplibregl-ctrl-scale{background-color:", ";color:", ";border:2px solid ", ";border-top:0;border-left:0;border-right:0;padding:0;margin:6px 8px 8px 8px;line-height:13px;letter-spacing:0.02em;font-family:sans-serif;font-size:10px;}}"], maplibre_gl_css_1.default, function (props) {
|
|
3029
|
+
return props.backgroundColor;
|
|
3030
|
+
}, function (props) {
|
|
3031
|
+
return style_1.toDimension(lodash_1.pick(props, ['width', 'height']));
|
|
3032
|
+
}, function (props) {
|
|
3033
|
+
return props.controlBackgroundColor;
|
|
3034
|
+
}, function (props) {
|
|
3035
|
+
return props.controlIconColorEncoded.color;
|
|
3036
|
+
}, function (props) {
|
|
3037
|
+
return props.controlIconColorEncoded.opacity;
|
|
3038
|
+
}, function (props) {
|
|
3039
|
+
return props.controlIconColorEncoded.color;
|
|
3040
|
+
}, function (props) {
|
|
3041
|
+
return props.controlIconColorEncoded.opacity;
|
|
3042
|
+
}, function (props) {
|
|
3043
|
+
return props.showScale ? 'inline' : 'none';
|
|
3044
|
+
}, function (props) {
|
|
3045
|
+
return props.controlBackgroundColor;
|
|
3046
|
+
}, function (props) {
|
|
3047
|
+
return props.controlBackgroundColor;
|
|
3048
|
+
}, function (props) {
|
|
3049
|
+
return props.controlForegroundColor;
|
|
3050
|
+
}, function (props) {
|
|
3051
|
+
return props.controlForegroundColor;
|
|
3052
|
+
});
|
|
3053
|
+
exports.default = PureMapContainer;
|
|
2743
3054
|
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
|
|
2747
|
-
return 0;
|
|
2748
|
-
} // number
|
|
3055
|
+
/***/ }),
|
|
3056
|
+
/* 199 */
|
|
3057
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
2749
3058
|
|
|
3059
|
+
"use strict";
|
|
3060
|
+
__webpack_require__.r(__webpack_exports__);
|
|
3061
|
+
/* harmony default export */ __webpack_exports__["default"] = (".mapboxgl-map,.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mapboxgl-canvas,.maplibregl-canvas{position:absolute;left:0;top:0}.mapboxgl-map:-webkit-full-screen,.maplibregl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass,.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer,.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active,.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas,.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right,.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.mapboxgl-ctrl-top-left,.maplibregl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top-right,.maplibregl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-bottom-left,.maplibregl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right,.maplibregl-ctrl-bottom-right{right:0;bottom:0}.mapboxgl-ctrl,.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl,.maplibregl-ctrl-top-left .maplibregl-ctrl{margin:10px 0 0 10px;float:left}.mapboxgl-ctrl-top-right .mapboxgl-ctrl,.maplibregl-ctrl-top-right .maplibregl-ctrl{margin:10px 10px 0 0;float:right}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.maplibregl-ctrl-bottom-left .maplibregl-ctrl{margin:0 0 10px 10px;float:left}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin:0 10px 10px 0;float:right}.mapboxgl-ctrl-group,.maplibregl-ctrl-group{border-radius:4px;background:#fff}.mapboxgl-ctrl-group:not(:empty),.maplibregl-ctrl-group:not(:empty){-moz-box-shadow:0 0 2px rgba(0,0,0,.1);-webkit-box-shadow:0 0 2px rgba(0,0,0,.1);box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty),.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button,.maplibregl-ctrl-group button{width:29px;height:29px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:transparent;cursor:pointer}.mapboxgl-ctrl-group button+button,.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon,.maplibregl-ctrl button .maplibregl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon,.maplibregl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button,.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl button::-moz-focus-inner,.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus,.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled,.maplibregl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon,.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.mapboxgl-ctrl button:not(:disabled):hover,.maplibregl-ctrl button:not(:disabled):hover{background-color:rgba(0,0,0,.05)}.mapboxgl-ctrl-group button:focus:focus-visible,.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible),.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl-group button:focus:first-child,.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:focus:last-child,.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:focus:only-child,.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{-webkit-animation:maplibregl-spin 2s linear infinite;-moz-animation:maplibregl-spin 2s infinite linear;-o-animation:maplibregl-spin 2s infinite linear;-ms-animation:maplibregl-spin 2s infinite linear;animation:maplibregl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon,.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}}@-webkit-keyframes maplibregl-spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@-moz-keyframes maplibregl-spin{0%{-moz-transform:rotate(0deg)}to{-moz-transform:rotate(1turn)}}@-o-keyframes maplibregl-spin{0%{-o-transform:rotate(0deg)}to{-o-transform:rotate(1turn)}}@-ms-keyframes maplibregl-spin{0%{-ms-transform:rotate(0deg)}to{-ms-transform:rotate(1turn)}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo,a.maplibregl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42l-.726 3.663a1.255 1.255 0 01-1.232 1.011h-1.827a1.255 1.255 0 01-1.229-1.509l2.501-12.095a1.255 1.255 0 011.23-1.001h.197a1.255 1.255 0 011.12.685l3.19 6.273 3.125-6.263a1.255 1.255 0 011.123-.695h.181a1.255 1.255 0 011.227.991l1.443 6.71a5.11 5.11 0 01.314-.787l.009-.016a4.623 4.623 0 011.777-1.887c.782-.46 1.668-.667 2.611-.667a4.548 4.548 0 011.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 011.212.925 1.255 1.255 0 011.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4.314.319.566.676.763 1.064V4.701a1.255 1.255 0 011.255-1.255h1.86A1.255 1.255 0 0154.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.416 2.416 0 01-.682-1.71c0-.665.267-1.253.735-1.7a2.448 2.448 0 011.722-.674 2.43 2.43 0 011.705.675c.211.2.381.43.504.683V4.7a1.255 1.255 0 011.255-1.255h1.744A1.255 1.255 0 0165.812 4.7v3.335a4.76 4.76 0 011.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 011.67 1.743v-.98a1.255 1.255 0 011.256-1.256h1.777c.233 0 .451.064.639.174a3.407 3.407 0 011.567-.372c.346 0 .861.02 1.285.232a1.255 1.255 0 01.689 1.004 4.73 4.73 0 01.853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528 0 .343-.02.694-.056 1.051a1.255 1.255 0 01-.947 1.09l.408.952a1.255 1.255 0 01-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.815 5.815 0 01-.548-2.512c0-.286.017-.567.053-.843a1.255 1.255 0 01-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 01-1.256 1.256h-1.777a1.255 1.255 0 01-1.256-1.256V15.69l-.032.057a4.778 4.778 0 01-1.86 1.833 5.04 5.04 0 01-2.484.634 4.47 4.47 0 01-1.935-.424 1.252 1.252 0 01-.764.258h-1.71a1.255 1.255 0 01-1.256-1.255V7.687a2.402 2.402 0 01-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 01-1.256 1.255h-1.843a1.25 1.25 0 01-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 01-1.256-1.255v-1.251l-.061.117a4.703 4.703 0 01-1.782 1.884 4.767 4.767 0 01-2.485.67 5.6 5.6 0 01-1.485-.188l.009 2.764a1.255 1.255 0 01-1.255 1.259h-1.729a1.255 1.255 0 01-1.255-1.255v-3.537a1.255 1.255 0 01-1.167.793h-1.679a1.25 1.25 0 01-.77-.263 4.47 4.47 0 01-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a4.983 4.983 0 01-1.081-.836 1.255 1.255 0 01-1.254 1.312h-1.81a1.255 1.255 0 01-1.228-.99l-.782-3.625-2.044 3.939a1.255 1.255 0 01-1.115.676h-.098a1.255 1.255 0 01-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15c.329-.237.574-.499.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267c-.088-.22-.264-.438-.526-.658l-.032-.028a3.16 3.16 0 00-.668-.428l-.27-.12a3.293 3.293 0 00-1.235-.23c-.757 0-1.415.163-1.974.493a3.36 3.36 0 00-1.3 1.382c-.297.593-.444 1.284-.444 2.074 0 .8.17 1.503.51 2.107a3.795 3.795 0 001.382 1.381 3.883 3.883 0 001.893.477c.53 0 1.015-.11 1.455-.33zm-2.789-5.38c-.384.45-.575 1.038-.575 1.762 0 .735.186 1.332.559 1.794.384.45.933.675 1.645.675a2.25 2.25 0 00.934-.19 2.17 2.17 0 00.468-.29l.178-.161a2.163 2.163 0 00.397-.561c.163-.333.244-.717.244-1.15v-.115c0-.472-.098-.894-.296-1.267l-.043-.077a2.211 2.211 0 00-.633-.709l-.13-.086-.047-.028a2.099 2.099 0 00-1.073-.285c-.702 0-1.244.231-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.958.958 0 00-.353-.389.851.851 0 00-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.626 2.626 0 00.331.423c.213.22.464.402.755.548l.173.074c.433.17.93.255 1.49.255.68 0 1.295-.165 1.844-.493a3.447 3.447 0 001.316-1.4c.329-.603.493-1.299.493-2.089 0-1.273-.33-2.243-.988-2.913-.658-.68-1.52-1.02-2.584-1.02-.598 0-1.124.115-1.575.347a2.807 2.807 0 00-.415.262l-.199.166a3.35 3.35 0 00-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138c.137.193.297.36.48.5l.155.11.053.034c.34.197.713.297 1.119.297.714 0 1.262-.225 1.645-.675.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.29 0-.569.053-.835.16a2.366 2.366 0 00-.284.136 1.99 1.99 0 00-.363.254 2.237 2.237 0 00-.46.569l-.082.162a2.56 2.56 0 00-.213 1.072v.115c0 .471.098.894.296 1.267l.135.211zm.964-.818a1.11 1.11 0 00.367.385.937.937 0 00.476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a.995.995 0 00-.503.135l-.012.007a.859.859 0 00-.335.343c-.073.133-.132.324-.132.614v.115a1.43 1.43 0 00.14.66zm15.7-6.222c.232-.23.346-.516.346-.856a1.053 1.053 0 00-.345-.79 1.175 1.175 0 00-.84-.329c-.34 0-.625.11-.855.33a1.053 1.053 0 00-.346.79c0 .34.115.625.346.855.23.23.516.346.856.346.34 0 .62-.115.839-.346zm4.337 9.314l.033-1.332c.128.269.324.518.59.747l.098.081a3.727 3.727 0 00.316.224l.223.122a3.21 3.21 0 001.44.322 3.785 3.785 0 001.875-.477 3.52 3.52 0 001.382-1.366c.352-.593.526-1.29.526-2.09 0-.79-.147-1.48-.444-2.073a3.235 3.235 0 00-1.283-1.399c-.549-.34-1.195-.51-1.942-.51a3.476 3.476 0 00-1.527.344l-.086.043-.165.09a3.412 3.412 0 00-.33.214c-.288.21-.507.446-.656.707a1.893 1.893 0 00-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.482 2.482 0 00.566.7c.078.065.159.125.245.18l.144.08a2.105 2.105 0 00.975.232c.713 0 1.262-.225 1.645-.675.384-.46.576-1.053.576-1.778 0-.734-.192-1.327-.576-1.777-.373-.46-.921-.692-1.645-.692a2.18 2.18 0 00-1.015.235c-.147.075-.285.17-.415.282l-.15.142a2.086 2.086 0 00-.42.594c-.149.32-.223.685-.223 1.1v.115c0 .47.097.89.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.868.868 0 00-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.13 1.13 0 00.367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013c.23-.087.472-.134.724-.14l.069-.002c.329 0 .542.033.642.099l.247-1.794c-.13-.066-.37-.099-.717-.099a2.3 2.3 0 00-.545.063 2.086 2.086 0 00-.411.148 2.18 2.18 0 00-.4.249 2.482 2.482 0 00-.485.499 2.659 2.659 0 00-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884c0-.364.053-.678.159-.943a1.49 1.49 0 01.466-.636 2.52 2.52 0 01.399-.253 2.19 2.19 0 01.224-.099zm9.784 2.656l.05-.922c0-1.162-.285-2.062-.856-2.698-.559-.647-1.42-.97-2.584-.97-.746 0-1.415.163-2.007.493a3.462 3.462 0 00-1.4 1.382c-.329.604-.493 1.306-.493 2.106 0 .714.143 1.371.428 1.975.285.593.73 1.07 1.332 1.432.604.351 1.355.526 2.255.526.649 0 1.204-.062 1.668-.185l.044-.012.135-.04c.409-.122.736-.263.984-.421l-.542-1.267c-.2.108-.415.199-.642.274l-.297.087c-.34.088-.773.131-1.3.131-.636 0-1.135-.147-1.497-.444a1.573 1.573 0 01-.192-.193c-.244-.294-.415-.705-.512-1.234l-.004-.021h5.43zm-5.427-1.256l-.003.022h3.752v-.138c-.007-.485-.104-.857-.288-1.118a1.056 1.056 0 00-.156-.176c-.307-.285-.746-.428-1.316-.428-.657 0-1.155.202-1.494.604-.253.3-.417.712-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z' fill='%23000' fill-opacity='.4' fill-rule='evenodd'/%3E%3Cpath d='M19.63 11.151l-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81c-.68 0-1.311-.16-1.893-.478a3.795 3.795 0 01-1.381-1.382c-.34-.604-.51-1.306-.51-2.106 0-.79.147-1.482.444-2.074a3.364 3.364 0 011.3-1.382c.559-.33 1.217-.494 1.974-.494a3.293 3.293 0 011.234.231 3.341 3.341 0 01.97.575c.264.22.44.439.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332c-.186.395-.526.746-1.02 1.053a3.167 3.167 0 01-1.662.444zm.296-1.482c.626 0 1.152-.214 1.58-.642.428-.44.642-1.01.642-1.711v-.115c0-.472-.098-.894-.296-1.267a2.211 2.211 0 00-.807-.872 2.098 2.098 0 00-1.119-.313c-.702 0-1.245.231-1.629.692-.384.45-.575 1.037-.575 1.76 0 .736.186 1.333.559 1.795.384.45.933.675 1.645.675zm6.521-6.237h1.711v1.4c.604-1.065 1.547-1.597 2.83-1.597 1.064 0 1.926.34 2.584 1.02.659.67.988 1.641.988 2.914 0 .79-.164 1.487-.493 2.09a3.456 3.456 0 01-1.316 1.399 3.51 3.51 0 01-1.844.493c-.636 0-1.19-.11-1.662-.329a2.665 2.665 0 01-1.086-.97l.017 5.134h-1.728V9.242zm4.048 6.22c.714 0 1.262-.224 1.645-.674.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.395 0-.768.098-1.12.296-.34.187-.613.46-.822.823-.197.351-.296.763-.296 1.234v.115c0 .472.098.894.296 1.267.209.362.483.647.823.855.34.197.713.297 1.119.297z' fill='%23fff'/%3E%3Cpath d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.159 1.159 0 01-.856-.346 1.165 1.165 0 01-.346-.856 1.053 1.053 0 01.346-.79c.23-.219.516-.329.856-.329.329 0 .609.11.839.33a1.053 1.053 0 01.345.79 1.159 1.159 0 01-.345.855c-.22.23-.5.346-.84.346zm7.875 9.133a3.167 3.167 0 01-1.662-.444c-.482-.307-.817-.658-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283c.186-.438.548-.812 1.086-1.119a3.486 3.486 0 011.778-.477c.746 0 1.393.17 1.942.51a3.235 3.235 0 011.283 1.4c.297.592.444 1.282.444 2.072 0 .8-.175 1.498-.526 2.09a3.52 3.52 0 01-1.382 1.366 3.785 3.785 0 01-1.876.477zm-.296-1.481c.713 0 1.26-.225 1.645-.675.384-.46.577-1.053.577-1.778 0-.734-.193-1.327-.577-1.776-.373-.46-.921-.692-1.645-.692a2.115 2.115 0 00-1.58.659c-.428.428-.642.992-.642 1.694v.115c0 .473.098.895.296 1.267a2.385 2.385 0 00.807.872 2.1 2.1 0 001.119.313zm5.927-6.237h1.777v1.481c.176-.505.46-.91.856-1.217a2.14 2.14 0 011.349-.46c.351 0 .593.032.724.098l-.247 1.794c-.099-.066-.313-.099-.642-.099-.516 0-.988.164-1.416.494-.417.329-.626.855-.626 1.58v3.883h-1.777V9.242zm9.534 7.718c-.9 0-1.651-.175-2.255-.526-.603-.362-1.047-.84-1.332-1.432a4.567 4.567 0 01-.428-1.975c0-.8.164-1.502.493-2.106a3.462 3.462 0 011.4-1.382c.592-.33 1.262-.494 2.007-.494 1.163 0 2.024.324 2.584.97.57.637.856 1.537.856 2.7 0 .296-.017.603-.05.92h-5.43c.12.67.356 1.153.708 1.45.362.296.86.443 1.497.443.526 0 .96-.044 1.3-.131a4.123 4.123 0 00.938-.362l.542 1.267c-.274.175-.647.329-1.119.46-.472.132-1.042.197-1.711.197zm1.596-4.558c.01-.68-.137-1.158-.444-1.432-.307-.285-.746-.428-1.316-.428-1.152 0-1.815.62-1.991 1.86h3.752z' fill='%23e1e3e9'/%3E%3Cg fill-rule='evenodd' stroke-width='1.036'%3E%3Cpath d='M8.166 16.146l-.002.002a1.54 1.54 0 01-2.009 0l-.002-.002-.043-.034-.002-.002-.199-.162H4.377a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659H8.411l-.202.164zm-1.121-.905a.29.29 0 00.113.023.286.286 0 00.189-.07l.077-.063c.634-.508 4.672-3.743 4.672-7.575 0-2.55-2.215-4.625-4.938-4.625S2.221 5.006 2.221 7.556c0 3.225 2.86 6.027 4.144 7.137h.004l.04.038.484.4.077.063a.628.628 0 00.074.047zm-2.52-.548a16.898 16.898 0 01-1.183-1.315C2.187 11.942.967 9.897.967 7.555c0-3.319 2.855-5.88 6.192-5.88 3.338 0 6.193 2.561 6.193 5.881 0 2.34-1.22 4.387-2.376 5.822a16.898 16.898 0 01-1.182 1.315h.15a1.912 1.912 0 011.914 1.914v1.84a1.912 1.912 0 01-1.914 1.914H4.377a1.912 1.912 0 01-1.914-1.914v-1.84a1.912 1.912 0 011.914-1.914zm3.82-6.935c0 .692-.55 1.222-1.187 1.222s-1.185-.529-1.185-1.222.548-1.222 1.185-1.222c.638 0 1.186.529 1.186 1.222zm-1.186 2.477c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477zm2.048 7.71H5.114v-.838h4.093z' fill='%23000' fill-opacity='.4'/%3E%3Cpath d='M2.222 7.555c0-2.55 2.214-4.625 4.937-4.625 2.723 0 4.938 2.075 4.938 4.625 0 3.832-4.038 7.068-4.672 7.575l-.077.063a.286.286 0 01-.189.07.286.286 0 01-.188-.07l-.077-.063c-.634-.507-4.672-3.743-4.672-7.575zm4.937 2.68c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477z' fill='%23e1e3e9'/%3E%3Cpath d='M4.377 15.948a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659zm4.83 1.16H5.114v.838h4.093z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E\")}a.mapboxgl-ctrl-logo.mapboxgl-compact,a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo,a.maplibregl-ctrl-logo{background-color:transparent;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42l-.726 3.663a1.255 1.255 0 01-1.232 1.011h-1.827a1.255 1.255 0 01-1.229-1.509l2.501-12.095a1.255 1.255 0 011.23-1.001h.197a1.255 1.255 0 011.12.685l3.19 6.273 3.125-6.263a1.255 1.255 0 011.123-.695h.181a1.255 1.255 0 011.227.991l1.443 6.71a5.11 5.11 0 01.314-.787l.009-.016a4.623 4.623 0 011.777-1.887c.782-.46 1.668-.667 2.611-.667a4.548 4.548 0 011.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 011.212.925 1.255 1.255 0 011.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4.314.319.566.676.763 1.064V4.701a1.255 1.255 0 011.255-1.255h1.86A1.255 1.255 0 0154.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.416 2.416 0 01-.682-1.71c0-.665.267-1.253.735-1.7a2.448 2.448 0 011.722-.674 2.43 2.43 0 011.705.675c.211.2.381.43.504.683V4.7a1.255 1.255 0 011.255-1.255h1.744A1.255 1.255 0 0165.812 4.7v3.335a4.76 4.76 0 011.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 011.67 1.743v-.98a1.255 1.255 0 011.256-1.256h1.777c.233 0 .451.064.639.174a3.407 3.407 0 011.567-.372c.346 0 .861.02 1.285.232a1.255 1.255 0 01.689 1.004 4.73 4.73 0 01.853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528 0 .343-.02.694-.056 1.051a1.255 1.255 0 01-.947 1.09l.408.952a1.255 1.255 0 01-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.815 5.815 0 01-.548-2.512c0-.286.017-.567.053-.843a1.255 1.255 0 01-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 01-1.256 1.256h-1.777a1.255 1.255 0 01-1.256-1.256V15.69l-.032.057a4.778 4.778 0 01-1.86 1.833 5.04 5.04 0 01-2.484.634 4.47 4.47 0 01-1.935-.424 1.252 1.252 0 01-.764.258h-1.71a1.255 1.255 0 01-1.256-1.255V7.687a2.402 2.402 0 01-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 01-1.256 1.255h-1.843a1.25 1.25 0 01-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 01-1.256-1.255v-1.251l-.061.117a4.703 4.703 0 01-1.782 1.884 4.767 4.767 0 01-2.485.67 5.6 5.6 0 01-1.485-.188l.009 2.764a1.255 1.255 0 01-1.255 1.259h-1.729a1.255 1.255 0 01-1.255-1.255v-3.537a1.255 1.255 0 01-1.167.793h-1.679a1.25 1.25 0 01-.77-.263 4.47 4.47 0 01-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a4.983 4.983 0 01-1.081-.836 1.255 1.255 0 01-1.254 1.312h-1.81a1.255 1.255 0 01-1.228-.99l-.782-3.625-2.044 3.939a1.255 1.255 0 01-1.115.676h-.098a1.255 1.255 0 01-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15c.329-.237.574-.499.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267c-.088-.22-.264-.438-.526-.658l-.032-.028a3.16 3.16 0 00-.668-.428l-.27-.12a3.293 3.293 0 00-1.235-.23c-.757 0-1.415.163-1.974.493a3.36 3.36 0 00-1.3 1.382c-.297.593-.444 1.284-.444 2.074 0 .8.17 1.503.51 2.107a3.795 3.795 0 001.382 1.381 3.883 3.883 0 001.893.477c.53 0 1.015-.11 1.455-.33zm-2.789-5.38c-.384.45-.575 1.038-.575 1.762 0 .735.186 1.332.559 1.794.384.45.933.675 1.645.675a2.25 2.25 0 00.934-.19 2.17 2.17 0 00.468-.29l.178-.161a2.163 2.163 0 00.397-.561c.163-.333.244-.717.244-1.15v-.115c0-.472-.098-.894-.296-1.267l-.043-.077a2.211 2.211 0 00-.633-.709l-.13-.086-.047-.028a2.099 2.099 0 00-1.073-.285c-.702 0-1.244.231-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.958.958 0 00-.353-.389.851.851 0 00-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.626 2.626 0 00.331.423c.213.22.464.402.755.548l.173.074c.433.17.93.255 1.49.255.68 0 1.295-.165 1.844-.493a3.447 3.447 0 001.316-1.4c.329-.603.493-1.299.493-2.089 0-1.273-.33-2.243-.988-2.913-.658-.68-1.52-1.02-2.584-1.02-.598 0-1.124.115-1.575.347a2.807 2.807 0 00-.415.262l-.199.166a3.35 3.35 0 00-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138c.137.193.297.36.48.5l.155.11.053.034c.34.197.713.297 1.119.297.714 0 1.262-.225 1.645-.675.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.29 0-.569.053-.835.16a2.366 2.366 0 00-.284.136 1.99 1.99 0 00-.363.254 2.237 2.237 0 00-.46.569l-.082.162a2.56 2.56 0 00-.213 1.072v.115c0 .471.098.894.296 1.267l.135.211zm.964-.818a1.11 1.11 0 00.367.385.937.937 0 00.476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a.995.995 0 00-.503.135l-.012.007a.859.859 0 00-.335.343c-.073.133-.132.324-.132.614v.115a1.43 1.43 0 00.14.66zm15.7-6.222c.232-.23.346-.516.346-.856a1.053 1.053 0 00-.345-.79 1.175 1.175 0 00-.84-.329c-.34 0-.625.11-.855.33a1.053 1.053 0 00-.346.79c0 .34.115.625.346.855.23.23.516.346.856.346.34 0 .62-.115.839-.346zm4.337 9.314l.033-1.332c.128.269.324.518.59.747l.098.081a3.727 3.727 0 00.316.224l.223.122a3.21 3.21 0 001.44.322 3.785 3.785 0 001.875-.477 3.52 3.52 0 001.382-1.366c.352-.593.526-1.29.526-2.09 0-.79-.147-1.48-.444-2.073a3.235 3.235 0 00-1.283-1.399c-.549-.34-1.195-.51-1.942-.51a3.476 3.476 0 00-1.527.344l-.086.043-.165.09a3.412 3.412 0 00-.33.214c-.288.21-.507.446-.656.707a1.893 1.893 0 00-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.482 2.482 0 00.566.7c.078.065.159.125.245.18l.144.08a2.105 2.105 0 00.975.232c.713 0 1.262-.225 1.645-.675.384-.46.576-1.053.576-1.778 0-.734-.192-1.327-.576-1.777-.373-.46-.921-.692-1.645-.692a2.18 2.18 0 00-1.015.235c-.147.075-.285.17-.415.282l-.15.142a2.086 2.086 0 00-.42.594c-.149.32-.223.685-.223 1.1v.115c0 .47.097.89.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.868.868 0 00-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.13 1.13 0 00.367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013c.23-.087.472-.134.724-.14l.069-.002c.329 0 .542.033.642.099l.247-1.794c-.13-.066-.37-.099-.717-.099a2.3 2.3 0 00-.545.063 2.086 2.086 0 00-.411.148 2.18 2.18 0 00-.4.249 2.482 2.482 0 00-.485.499 2.659 2.659 0 00-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884c0-.364.053-.678.159-.943a1.49 1.49 0 01.466-.636 2.52 2.52 0 01.399-.253 2.19 2.19 0 01.224-.099zm9.784 2.656l.05-.922c0-1.162-.285-2.062-.856-2.698-.559-.647-1.42-.97-2.584-.97-.746 0-1.415.163-2.007.493a3.462 3.462 0 00-1.4 1.382c-.329.604-.493 1.306-.493 2.106 0 .714.143 1.371.428 1.975.285.593.73 1.07 1.332 1.432.604.351 1.355.526 2.255.526.649 0 1.204-.062 1.668-.185l.044-.012.135-.04c.409-.122.736-.263.984-.421l-.542-1.267c-.2.108-.415.199-.642.274l-.297.087c-.34.088-.773.131-1.3.131-.636 0-1.135-.147-1.497-.444a1.573 1.573 0 01-.192-.193c-.244-.294-.415-.705-.512-1.234l-.004-.021h5.43zm-5.427-1.256l-.003.022h3.752v-.138c-.007-.485-.104-.857-.288-1.118a1.056 1.056 0 00-.156-.176c-.307-.285-.746-.428-1.316-.428-.657 0-1.155.202-1.494.604-.253.3-.417.712-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z' fill='%23000' fill-opacity='.4' fill-rule='evenodd'/%3E%3Cpath d='M19.63 11.151l-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81c-.68 0-1.311-.16-1.893-.478a3.795 3.795 0 01-1.381-1.382c-.34-.604-.51-1.306-.51-2.106 0-.79.147-1.482.444-2.074a3.364 3.364 0 011.3-1.382c.559-.33 1.217-.494 1.974-.494a3.293 3.293 0 011.234.231 3.341 3.341 0 01.97.575c.264.22.44.439.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332c-.186.395-.526.746-1.02 1.053a3.167 3.167 0 01-1.662.444zm.296-1.482c.626 0 1.152-.214 1.58-.642.428-.44.642-1.01.642-1.711v-.115c0-.472-.098-.894-.296-1.267a2.211 2.211 0 00-.807-.872 2.098 2.098 0 00-1.119-.313c-.702 0-1.245.231-1.629.692-.384.45-.575 1.037-.575 1.76 0 .736.186 1.333.559 1.795.384.45.933.675 1.645.675zm6.521-6.237h1.711v1.4c.604-1.065 1.547-1.597 2.83-1.597 1.064 0 1.926.34 2.584 1.02.659.67.988 1.641.988 2.914 0 .79-.164 1.487-.493 2.09a3.456 3.456 0 01-1.316 1.399 3.51 3.51 0 01-1.844.493c-.636 0-1.19-.11-1.662-.329a2.665 2.665 0 01-1.086-.97l.017 5.134h-1.728V9.242zm4.048 6.22c.714 0 1.262-.224 1.645-.674.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.395 0-.768.098-1.12.296-.34.187-.613.46-.822.823-.197.351-.296.763-.296 1.234v.115c0 .472.098.894.296 1.267.209.362.483.647.823.855.34.197.713.297 1.119.297z' fill='%23fff'/%3E%3Cpath d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.159 1.159 0 01-.856-.346 1.165 1.165 0 01-.346-.856 1.053 1.053 0 01.346-.79c.23-.219.516-.329.856-.329.329 0 .609.11.839.33a1.053 1.053 0 01.345.79 1.159 1.159 0 01-.345.855c-.22.23-.5.346-.84.346zm7.875 9.133a3.167 3.167 0 01-1.662-.444c-.482-.307-.817-.658-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283c.186-.438.548-.812 1.086-1.119a3.486 3.486 0 011.778-.477c.746 0 1.393.17 1.942.51a3.235 3.235 0 011.283 1.4c.297.592.444 1.282.444 2.072 0 .8-.175 1.498-.526 2.09a3.52 3.52 0 01-1.382 1.366 3.785 3.785 0 01-1.876.477zm-.296-1.481c.713 0 1.26-.225 1.645-.675.384-.46.577-1.053.577-1.778 0-.734-.193-1.327-.577-1.776-.373-.46-.921-.692-1.645-.692a2.115 2.115 0 00-1.58.659c-.428.428-.642.992-.642 1.694v.115c0 .473.098.895.296 1.267a2.385 2.385 0 00.807.872 2.1 2.1 0 001.119.313zm5.927-6.237h1.777v1.481c.176-.505.46-.91.856-1.217a2.14 2.14 0 011.349-.46c.351 0 .593.032.724.098l-.247 1.794c-.099-.066-.313-.099-.642-.099-.516 0-.988.164-1.416.494-.417.329-.626.855-.626 1.58v3.883h-1.777V9.242zm9.534 7.718c-.9 0-1.651-.175-2.255-.526-.603-.362-1.047-.84-1.332-1.432a4.567 4.567 0 01-.428-1.975c0-.8.164-1.502.493-2.106a3.462 3.462 0 011.4-1.382c.592-.33 1.262-.494 2.007-.494 1.163 0 2.024.324 2.584.97.57.637.856 1.537.856 2.7 0 .296-.017.603-.05.92h-5.43c.12.67.356 1.153.708 1.45.362.296.86.443 1.497.443.526 0 .96-.044 1.3-.131a4.123 4.123 0 00.938-.362l.542 1.267c-.274.175-.647.329-1.119.46-.472.132-1.042.197-1.711.197zm1.596-4.558c.01-.68-.137-1.158-.444-1.432-.307-.285-.746-.428-1.316-.428-1.152 0-1.815.62-1.991 1.86h3.752z' fill='%23e1e3e9'/%3E%3Cg fill-rule='evenodd' stroke-width='1.036'%3E%3Cpath d='M8.166 16.146l-.002.002a1.54 1.54 0 01-2.009 0l-.002-.002-.043-.034-.002-.002-.199-.162H4.377a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659H8.411l-.202.164zm-1.121-.905a.29.29 0 00.113.023.286.286 0 00.189-.07l.077-.063c.634-.508 4.672-3.743 4.672-7.575 0-2.55-2.215-4.625-4.938-4.625S2.221 5.006 2.221 7.556c0 3.225 2.86 6.027 4.144 7.137h.004l.04.038.484.4.077.063a.628.628 0 00.074.047zm-2.52-.548a16.898 16.898 0 01-1.183-1.315C2.187 11.942.967 9.897.967 7.555c0-3.319 2.855-5.88 6.192-5.88 3.338 0 6.193 2.561 6.193 5.881 0 2.34-1.22 4.387-2.376 5.822a16.898 16.898 0 01-1.182 1.315h.15a1.912 1.912 0 011.914 1.914v1.84a1.912 1.912 0 01-1.914 1.914H4.377a1.912 1.912 0 01-1.914-1.914v-1.84a1.912 1.912 0 011.914-1.914zm3.82-6.935c0 .692-.55 1.222-1.187 1.222s-1.185-.529-1.185-1.222.548-1.222 1.185-1.222c.638 0 1.186.529 1.186 1.222zm-1.186 2.477c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477zm2.048 7.71H5.114v-.838h4.093z' fill='%23000' fill-opacity='.4'/%3E%3Cpath d='M2.222 7.555c0-2.55 2.214-4.625 4.937-4.625 2.723 0 4.938 2.075 4.938 4.625 0 3.832-4.038 7.068-4.672 7.575l-.077.063a.286.286 0 01-.189.07.286.286 0 01-.188-.07l-.077-.063c-.634-.507-4.672-3.743-4.672-7.575zm4.937 2.68c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477z' fill='%23e1e3e9'/%3E%3Cpath d='M4.377 15.948a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659zm4.83 1.16H5.114v.838h4.093z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo,a.maplibregl-ctrl-logo{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42l-.726 3.663a1.255 1.255 0 01-1.232 1.011h-1.827a1.255 1.255 0 01-1.229-1.509l2.501-12.095a1.255 1.255 0 011.23-1.001h.197a1.255 1.255 0 011.12.685l3.19 6.273 3.125-6.263a1.255 1.255 0 011.123-.695h.181a1.255 1.255 0 011.227.991l1.443 6.71a5.11 5.11 0 01.314-.787l.009-.016a4.623 4.623 0 011.777-1.887c.782-.46 1.668-.667 2.611-.667a4.548 4.548 0 011.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 011.212.925 1.255 1.255 0 011.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4.314.319.566.676.763 1.064V4.701a1.255 1.255 0 011.255-1.255h1.86A1.255 1.255 0 0154.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.416 2.416 0 01-.682-1.71c0-.665.267-1.253.735-1.7a2.448 2.448 0 011.722-.674 2.43 2.43 0 011.705.675c.211.2.381.43.504.683V4.7a1.255 1.255 0 011.255-1.255h1.744A1.255 1.255 0 0165.812 4.7v3.335a4.76 4.76 0 011.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 011.67 1.743v-.98a1.255 1.255 0 011.256-1.256h1.777c.233 0 .451.064.639.174a3.407 3.407 0 011.567-.372c.346 0 .861.02 1.285.232a1.255 1.255 0 01.689 1.004 4.73 4.73 0 01.853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528 0 .343-.02.694-.056 1.051a1.255 1.255 0 01-.947 1.09l.408.952a1.255 1.255 0 01-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.815 5.815 0 01-.548-2.512c0-.286.017-.567.053-.843a1.255 1.255 0 01-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 01-1.256 1.256h-1.777a1.255 1.255 0 01-1.256-1.256V15.69l-.032.057a4.778 4.778 0 01-1.86 1.833 5.04 5.04 0 01-2.484.634 4.47 4.47 0 01-1.935-.424 1.252 1.252 0 01-.764.258h-1.71a1.255 1.255 0 01-1.256-1.255V7.687a2.402 2.402 0 01-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 01-1.256 1.255h-1.843a1.25 1.25 0 01-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 01-1.256-1.255v-1.251l-.061.117a4.703 4.703 0 01-1.782 1.884 4.767 4.767 0 01-2.485.67 5.6 5.6 0 01-1.485-.188l.009 2.764a1.255 1.255 0 01-1.255 1.259h-1.729a1.255 1.255 0 01-1.255-1.255v-3.537a1.255 1.255 0 01-1.167.793h-1.679a1.25 1.25 0 01-.77-.263 4.47 4.47 0 01-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a4.983 4.983 0 01-1.081-.836 1.255 1.255 0 01-1.254 1.312h-1.81a1.255 1.255 0 01-1.228-.99l-.782-3.625-2.044 3.939a1.255 1.255 0 01-1.115.676h-.098a1.255 1.255 0 01-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15c.329-.237.574-.499.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267c-.088-.22-.264-.438-.526-.658l-.032-.028a3.16 3.16 0 00-.668-.428l-.27-.12a3.293 3.293 0 00-1.235-.23c-.757 0-1.415.163-1.974.493a3.36 3.36 0 00-1.3 1.382c-.297.593-.444 1.284-.444 2.074 0 .8.17 1.503.51 2.107a3.795 3.795 0 001.382 1.381 3.883 3.883 0 001.893.477c.53 0 1.015-.11 1.455-.33zm-2.789-5.38c-.384.45-.575 1.038-.575 1.762 0 .735.186 1.332.559 1.794.384.45.933.675 1.645.675a2.25 2.25 0 00.934-.19 2.17 2.17 0 00.468-.29l.178-.161a2.163 2.163 0 00.397-.561c.163-.333.244-.717.244-1.15v-.115c0-.472-.098-.894-.296-1.267l-.043-.077a2.211 2.211 0 00-.633-.709l-.13-.086-.047-.028a2.099 2.099 0 00-1.073-.285c-.702 0-1.244.231-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.958.958 0 00-.353-.389.851.851 0 00-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.626 2.626 0 00.331.423c.213.22.464.402.755.548l.173.074c.433.17.93.255 1.49.255.68 0 1.295-.165 1.844-.493a3.447 3.447 0 001.316-1.4c.329-.603.493-1.299.493-2.089 0-1.273-.33-2.243-.988-2.913-.658-.68-1.52-1.02-2.584-1.02-.598 0-1.124.115-1.575.347a2.807 2.807 0 00-.415.262l-.199.166a3.35 3.35 0 00-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138c.137.193.297.36.48.5l.155.11.053.034c.34.197.713.297 1.119.297.714 0 1.262-.225 1.645-.675.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.29 0-.569.053-.835.16a2.366 2.366 0 00-.284.136 1.99 1.99 0 00-.363.254 2.237 2.237 0 00-.46.569l-.082.162a2.56 2.56 0 00-.213 1.072v.115c0 .471.098.894.296 1.267l.135.211zm.964-.818a1.11 1.11 0 00.367.385.937.937 0 00.476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a.995.995 0 00-.503.135l-.012.007a.859.859 0 00-.335.343c-.073.133-.132.324-.132.614v.115a1.43 1.43 0 00.14.66zm15.7-6.222c.232-.23.346-.516.346-.856a1.053 1.053 0 00-.345-.79 1.175 1.175 0 00-.84-.329c-.34 0-.625.11-.855.33a1.053 1.053 0 00-.346.79c0 .34.115.625.346.855.23.23.516.346.856.346.34 0 .62-.115.839-.346zm4.337 9.314l.033-1.332c.128.269.324.518.59.747l.098.081a3.727 3.727 0 00.316.224l.223.122a3.21 3.21 0 001.44.322 3.785 3.785 0 001.875-.477 3.52 3.52 0 001.382-1.366c.352-.593.526-1.29.526-2.09 0-.79-.147-1.48-.444-2.073a3.235 3.235 0 00-1.283-1.399c-.549-.34-1.195-.51-1.942-.51a3.476 3.476 0 00-1.527.344l-.086.043-.165.09a3.412 3.412 0 00-.33.214c-.288.21-.507.446-.656.707a1.893 1.893 0 00-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.482 2.482 0 00.566.7c.078.065.159.125.245.18l.144.08a2.105 2.105 0 00.975.232c.713 0 1.262-.225 1.645-.675.384-.46.576-1.053.576-1.778 0-.734-.192-1.327-.576-1.777-.373-.46-.921-.692-1.645-.692a2.18 2.18 0 00-1.015.235c-.147.075-.285.17-.415.282l-.15.142a2.086 2.086 0 00-.42.594c-.149.32-.223.685-.223 1.1v.115c0 .47.097.89.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.868.868 0 00-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.13 1.13 0 00.367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013c.23-.087.472-.134.724-.14l.069-.002c.329 0 .542.033.642.099l.247-1.794c-.13-.066-.37-.099-.717-.099a2.3 2.3 0 00-.545.063 2.086 2.086 0 00-.411.148 2.18 2.18 0 00-.4.249 2.482 2.482 0 00-.485.499 2.659 2.659 0 00-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884c0-.364.053-.678.159-.943a1.49 1.49 0 01.466-.636 2.52 2.52 0 01.399-.253 2.19 2.19 0 01.224-.099zm9.784 2.656l.05-.922c0-1.162-.285-2.062-.856-2.698-.559-.647-1.42-.97-2.584-.97-.746 0-1.415.163-2.007.493a3.462 3.462 0 00-1.4 1.382c-.329.604-.493 1.306-.493 2.106 0 .714.143 1.371.428 1.975.285.593.73 1.07 1.332 1.432.604.351 1.355.526 2.255.526.649 0 1.204-.062 1.668-.185l.044-.012.135-.04c.409-.122.736-.263.984-.421l-.542-1.267c-.2.108-.415.199-.642.274l-.297.087c-.34.088-.773.131-1.3.131-.636 0-1.135-.147-1.497-.444a1.573 1.573 0 01-.192-.193c-.244-.294-.415-.705-.512-1.234l-.004-.021h5.43zm-5.427-1.256l-.003.022h3.752v-.138c-.007-.485-.104-.857-.288-1.118a1.056 1.056 0 00-.156-.176c-.307-.285-.746-.428-1.316-.428-.657 0-1.155.202-1.494.604-.253.3-.417.712-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z' fill='%23000' fill-opacity='.4' fill-rule='evenodd'/%3E%3Cpath d='M19.63 11.151l-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81c-.68 0-1.311-.16-1.893-.478a3.795 3.795 0 01-1.381-1.382c-.34-.604-.51-1.306-.51-2.106 0-.79.147-1.482.444-2.074a3.364 3.364 0 011.3-1.382c.559-.33 1.217-.494 1.974-.494a3.293 3.293 0 011.234.231 3.341 3.341 0 01.97.575c.264.22.44.439.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332c-.186.395-.526.746-1.02 1.053a3.167 3.167 0 01-1.662.444zm.296-1.482c.626 0 1.152-.214 1.58-.642.428-.44.642-1.01.642-1.711v-.115c0-.472-.098-.894-.296-1.267a2.211 2.211 0 00-.807-.872 2.098 2.098 0 00-1.119-.313c-.702 0-1.245.231-1.629.692-.384.45-.575 1.037-.575 1.76 0 .736.186 1.333.559 1.795.384.45.933.675 1.645.675zm6.521-6.237h1.711v1.4c.604-1.065 1.547-1.597 2.83-1.597 1.064 0 1.926.34 2.584 1.02.659.67.988 1.641.988 2.914 0 .79-.164 1.487-.493 2.09a3.456 3.456 0 01-1.316 1.399 3.51 3.51 0 01-1.844.493c-.636 0-1.19-.11-1.662-.329a2.665 2.665 0 01-1.086-.97l.017 5.134h-1.728V9.242zm4.048 6.22c.714 0 1.262-.224 1.645-.674.385-.46.576-1.048.576-1.762 0-.746-.192-1.338-.576-1.777-.372-.45-.92-.675-1.645-.675-.395 0-.768.098-1.12.296-.34.187-.613.46-.822.823-.197.351-.296.763-.296 1.234v.115c0 .472.098.894.296 1.267.209.362.483.647.823.855.34.197.713.297 1.119.297z' fill='%23fff'/%3E%3Cpath d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.159 1.159 0 01-.856-.346 1.165 1.165 0 01-.346-.856 1.053 1.053 0 01.346-.79c.23-.219.516-.329.856-.329.329 0 .609.11.839.33a1.053 1.053 0 01.345.79 1.159 1.159 0 01-.345.855c-.22.23-.5.346-.84.346zm7.875 9.133a3.167 3.167 0 01-1.662-.444c-.482-.307-.817-.658-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283c.186-.438.548-.812 1.086-1.119a3.486 3.486 0 011.778-.477c.746 0 1.393.17 1.942.51a3.235 3.235 0 011.283 1.4c.297.592.444 1.282.444 2.072 0 .8-.175 1.498-.526 2.09a3.52 3.52 0 01-1.382 1.366 3.785 3.785 0 01-1.876.477zm-.296-1.481c.713 0 1.26-.225 1.645-.675.384-.46.577-1.053.577-1.778 0-.734-.193-1.327-.577-1.776-.373-.46-.921-.692-1.645-.692a2.115 2.115 0 00-1.58.659c-.428.428-.642.992-.642 1.694v.115c0 .473.098.895.296 1.267a2.385 2.385 0 00.807.872 2.1 2.1 0 001.119.313zm5.927-6.237h1.777v1.481c.176-.505.46-.91.856-1.217a2.14 2.14 0 011.349-.46c.351 0 .593.032.724.098l-.247 1.794c-.099-.066-.313-.099-.642-.099-.516 0-.988.164-1.416.494-.417.329-.626.855-.626 1.58v3.883h-1.777V9.242zm9.534 7.718c-.9 0-1.651-.175-2.255-.526-.603-.362-1.047-.84-1.332-1.432a4.567 4.567 0 01-.428-1.975c0-.8.164-1.502.493-2.106a3.462 3.462 0 011.4-1.382c.592-.33 1.262-.494 2.007-.494 1.163 0 2.024.324 2.584.97.57.637.856 1.537.856 2.7 0 .296-.017.603-.05.92h-5.43c.12.67.356 1.153.708 1.45.362.296.86.443 1.497.443.526 0 .96-.044 1.3-.131a4.123 4.123 0 00.938-.362l.542 1.267c-.274.175-.647.329-1.119.46-.472.132-1.042.197-1.711.197zm1.596-4.558c.01-.68-.137-1.158-.444-1.432-.307-.285-.746-.428-1.316-.428-1.152 0-1.815.62-1.991 1.86h3.752z' fill='%23e1e3e9'/%3E%3Cg fill-rule='evenodd' stroke-width='1.036'%3E%3Cpath d='M8.166 16.146l-.002.002a1.54 1.54 0 01-2.009 0l-.002-.002-.043-.034-.002-.002-.199-.162H4.377a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659H8.411l-.202.164zm-1.121-.905a.29.29 0 00.113.023.286.286 0 00.189-.07l.077-.063c.634-.508 4.672-3.743 4.672-7.575 0-2.55-2.215-4.625-4.938-4.625S2.221 5.006 2.221 7.556c0 3.225 2.86 6.027 4.144 7.137h.004l.04.038.484.4.077.063a.628.628 0 00.074.047zm-2.52-.548a16.898 16.898 0 01-1.183-1.315C2.187 11.942.967 9.897.967 7.555c0-3.319 2.855-5.88 6.192-5.88 3.338 0 6.193 2.561 6.193 5.881 0 2.34-1.22 4.387-2.376 5.822a16.898 16.898 0 01-1.182 1.315h.15a1.912 1.912 0 011.914 1.914v1.84a1.912 1.912 0 01-1.914 1.914H4.377a1.912 1.912 0 01-1.914-1.914v-1.84a1.912 1.912 0 011.914-1.914zm3.82-6.935c0 .692-.55 1.222-1.187 1.222s-1.185-.529-1.185-1.222.548-1.222 1.185-1.222c.638 0 1.186.529 1.186 1.222zm-1.186 2.477c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477zm2.048 7.71H5.114v-.838h4.093z' fill='%23000' fill-opacity='.4'/%3E%3Cpath d='M2.222 7.555c0-2.55 2.214-4.625 4.937-4.625 2.723 0 4.938 2.075 4.938 4.625 0 3.832-4.038 7.068-4.672 7.575l-.077.063a.286.286 0 01-.189.07.286.286 0 01-.188-.07l-.077-.063c-.634-.507-4.672-3.743-4.672-7.575zm4.937 2.68c1.348 0 2.442-1.11 2.442-2.478S8.507 5.28 7.159 5.28 4.72 6.39 4.72 7.758s1.092 2.477 2.44 2.477z' fill='%23e1e3e9'/%3E%3Cpath d='M4.377 15.948a.657.657 0 00-.659.659v1.84a.657.657 0 00.659.659h5.565a.657.657 0 00.659-.659v-1.84a.657.657 0 00-.659-.659zm4.83 1.16H5.114v.838h4.093z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E\")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib,.maplibregl-ctrl.maplibregl-ctrl-attrib{padding:0 5px;background-color:hsla(0,0%,100%,.5);margin:0}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact,.maplibregl-ctrl-attrib.maplibregl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner,.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E\");background-color:hsla(0,0%,100%,.5);width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner,.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner,.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgba(0,0,0,.05)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E\")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl-attrib a,.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.mapboxgl-ctrl-attrib a:hover,.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map,.maplibregl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty,.maplibregl-attrib-empty{display:none}.mapboxgl-ctrl-scale,.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box}.mapboxgl-popup,.maplibregl-popup{position:absolute;top:0;left:0;display:-webkit-flex;display:flex;will-change:transform;pointer-events:none}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right,.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{-webkit-flex-direction:column;flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right,.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{-webkit-flex-direction:column-reverse;flex-direction:column-reverse}.mapboxgl-popup-anchor-left,.maplibregl-popup-anchor-left{-webkit-flex-direction:row;flex-direction:row}.mapboxgl-popup-anchor-right,.maplibregl-popup-anchor-right{-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.mapboxgl-popup-tip,.maplibregl-popup-tip{width:0;height:0;border:10px solid transparent;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip,.maplibregl-popup-anchor-top .maplibregl-popup-tip{-webkit-align-self:center;align-self:center;border-top:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{-webkit-align-self:flex-start;align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{-webkit-align-self:flex-end;align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{-webkit-align-self:center;align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{-webkit-align-self:flex-start;align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{-webkit-align-self:flex-end;align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-left .maplibregl-popup-tip{-webkit-align-self:center;align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-right .maplibregl-popup-tip{-webkit-align-self:center;align-self:center;border-right:none;border-left-color:#fff}.mapboxgl-popup-close-button,.maplibregl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:transparent}.mapboxgl-popup-close-button:hover,.maplibregl-popup-close-button:hover{background-color:rgba(0,0,0,.05)}.mapboxgl-popup-content,.maplibregl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:10px 10px 15px;pointer-events:auto}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content,.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content,.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content,.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content,.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer,.maplibregl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *,.maplibregl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer,.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer,.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.mapboxgl-marker,.maplibregl-marker{position:absolute;top:0;left:0;will-change:transform}.mapboxgl-user-location-dot,.maplibregl-user-location-dot{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.mapboxgl-user-location-dot:before,.maplibregl-user-location-dot:before{background-color:#1da1f2;content:\"\";width:15px;height:15px;border-radius:50%;position:absolute;-webkit-animation:maplibregl-user-location-dot-pulse 2s infinite;-moz-animation:maplibregl-user-location-dot-pulse 2s infinite;-ms-animation:maplibregl-user-location-dot-pulse 2s infinite;animation:maplibregl-user-location-dot-pulse 2s infinite}.mapboxgl-user-location-dot:after,.maplibregl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:\"\";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px rgba(0,0,0,.35)}@-webkit-keyframes maplibregl-user-location-dot-pulse{0%{-webkit-transform:scale(1);opacity:1}70%{-webkit-transform:scale(3);opacity:0}to{-webkit-transform:scale(1);opacity:0}}@-ms-keyframes maplibregl-user-location-dot-pulse{0%{-ms-transform:scale(1);opacity:1}70%{-ms-transform:scale(3);opacity:0}to{-ms-transform:scale(1);opacity:0}}@keyframes maplibregl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.mapboxgl-user-location-dot-stale,.maplibregl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after,.maplibregl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle,.maplibregl-user-location-accuracy-circle{background-color:rgba(29,161,242,.2);width:1px;height:1px;border-radius:100%}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active,.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom,.maplibregl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}@media print{.mapbox-improve-map{display:none}}");
|
|
2750
3062
|
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
3063
|
+
/***/ }),
|
|
3064
|
+
/* 200 */
|
|
3065
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
2754
3066
|
|
|
3067
|
+
"use strict";
|
|
2755
3068
|
|
|
2756
|
-
return values.map(function (arr) {
|
|
2757
|
-
return exports.sanitizeValues(arr);
|
|
2758
|
-
});
|
|
2759
|
-
};
|
|
2760
3069
|
|
|
2761
|
-
exports
|
|
3070
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3071
|
+
value: true
|
|
3072
|
+
});
|
|
2762
3073
|
|
|
2763
|
-
var
|
|
2764
|
-
var _a;
|
|
3074
|
+
var React = __webpack_require__(1);
|
|
2765
3075
|
|
|
2766
|
-
|
|
2767
|
-
return null;
|
|
2768
|
-
} // if bubbleSize is passed as an array of single number array (data series)
|
|
2769
|
-
// e.g. [value0, value1, ...]
|
|
2770
|
-
// format each value as an array to unify data operations for data series and frames
|
|
3076
|
+
var BubbleLayer_1 = __webpack_require__(201);
|
|
2771
3077
|
|
|
3078
|
+
var MarkerLayer_1 = __webpack_require__(203);
|
|
2772
3079
|
|
|
2773
|
-
|
|
2774
|
-
var
|
|
2775
|
-
|
|
2776
|
-
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
});
|
|
2780
|
-
var isPie = false; // format array if bubbleSize is passed as an array of array (data frame)
|
|
3080
|
+
var ClusterLayer = function ClusterLayer(_ref) {
|
|
3081
|
+
var clusterLayer = _ref.clusterLayer,
|
|
3082
|
+
themeColorScheme = _ref.themeColorScheme,
|
|
3083
|
+
zoom = _ref.zoom,
|
|
3084
|
+
map = _ref.map,
|
|
3085
|
+
onMapClick = _ref.onMapClick;
|
|
2781
3086
|
|
|
2782
|
-
|
|
2783
|
-
// one-time array transpose,
|
|
2784
|
-
// e.g. from [column0data, column0data] (multi series)
|
|
2785
|
-
// to [[column0datum0, column1datum0], [column0datum1, column1data1], ...]
|
|
2786
|
-
// or e.g. from [column0data] (single series)
|
|
2787
|
-
// to [[column0data]]
|
|
2788
|
-
// for easy access of values at each geo location,
|
|
2789
|
-
// and min max pie size computation
|
|
2790
|
-
transposedBubbleSize = exports.transposeArray(layer.bubbleSize);
|
|
2791
|
-
transposedSanitizedBubbleSize = exports.transposeArray(sanitizedBubbleSize); // if multiple series in the dataframe, set isPie to true
|
|
3087
|
+
var _a;
|
|
2792
3088
|
|
|
2793
|
-
|
|
2794
|
-
|
|
3089
|
+
if (((_a = map === null || map === void 0 ? void 0 : map.current) === null || _a === void 0 ? void 0 : _a.isStyleLoaded) && [clusterLayer.longitude, clusterLayer.latitude].every(Array.isArray)) {
|
|
3090
|
+
if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === 'marker' && !('geobin' in clusterLayer)) {
|
|
3091
|
+
return React.createElement(MarkerLayer_1.default, {
|
|
3092
|
+
markerLayer: clusterLayer,
|
|
3093
|
+
themeColorScheme: themeColorScheme,
|
|
3094
|
+
map: map,
|
|
3095
|
+
onMapClick: onMapClick
|
|
3096
|
+
});
|
|
2795
3097
|
}
|
|
2796
|
-
}
|
|
2797
3098
|
|
|
2798
|
-
|
|
2799
|
-
|
|
3099
|
+
if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === 'bubble' && 'geobin' in clusterLayer && 'bubbleSize' in clusterLayer) {
|
|
3100
|
+
return React.createElement(BubbleLayer_1.default, {
|
|
3101
|
+
bubbleLayer: clusterLayer,
|
|
3102
|
+
themeColorScheme: themeColorScheme,
|
|
3103
|
+
map: map,
|
|
3104
|
+
zoom: zoom,
|
|
3105
|
+
onMapClick: onMapClick
|
|
3106
|
+
});
|
|
3107
|
+
}
|
|
2800
3108
|
}
|
|
2801
3109
|
|
|
2802
|
-
|
|
2803
|
-
return {
|
|
2804
|
-
zoom: exports.getZoomLevelFromGeobin(layer.geobin[i]),
|
|
2805
|
-
values: transposedBubbleSize[i],
|
|
2806
|
-
sanitizedValues: transposedSanitizedBubbleSize[i],
|
|
2807
|
-
coordinates: [layer.longitude[i], lat]
|
|
2808
|
-
};
|
|
2809
|
-
}).filter(function (d) {
|
|
2810
|
-
return Boolean(d.values);
|
|
2811
|
-
}); // compute the min/max value to encode min/max pie or bubble size
|
|
2812
|
-
|
|
2813
|
-
var min = lodash_1.sum(transposedSanitizedBubbleSize[0]);
|
|
2814
|
-
var max = lodash_1.sum(transposedSanitizedBubbleSize[1]);
|
|
2815
|
-
transposedSanitizedBubbleSize.forEach(function (row) {
|
|
2816
|
-
var bubbleSize = lodash_1.sum(row);
|
|
2817
|
-
max = bubbleSize > max ? bubbleSize : max;
|
|
2818
|
-
min = bubbleSize < min ? bubbleSize : min;
|
|
2819
|
-
});
|
|
2820
|
-
return {
|
|
2821
|
-
data: data,
|
|
2822
|
-
dataRange: [min, max],
|
|
2823
|
-
isPie: isPie,
|
|
2824
|
-
resultLimit: layer.resultLimit,
|
|
2825
|
-
bubbleSizeFields: layer.bubbleSizeFields
|
|
2826
|
-
};
|
|
3110
|
+
return null;
|
|
2827
3111
|
};
|
|
2828
3112
|
|
|
2829
|
-
exports.
|
|
2830
|
-
|
|
2831
|
-
var updateBubbles = function updateBubbles(dataObj, zoomLevel, staticColors, dynamicColors, theme, map, setTooltipProps) {
|
|
2832
|
-
if (!dataObj || !dataObj.data.length || !map || !map.current) {
|
|
2833
|
-
return null;
|
|
2834
|
-
}
|
|
2835
|
-
|
|
2836
|
-
var data = dataObj.data,
|
|
2837
|
-
dataRange = dataObj.dataRange,
|
|
2838
|
-
resultLimit = dataObj.resultLimit,
|
|
2839
|
-
bubbleSizeFields = dataObj.bubbleSizeFields,
|
|
2840
|
-
isPie = dataObj.isPie;
|
|
2841
|
-
|
|
2842
|
-
if (!data || !data.length || !dataRange || !dataRange.length) {
|
|
2843
|
-
return null;
|
|
2844
|
-
}
|
|
3113
|
+
exports.default = ClusterLayer;
|
|
2845
3114
|
|
|
2846
|
-
|
|
2847
|
-
|
|
3115
|
+
/***/ }),
|
|
3116
|
+
/* 201 */
|
|
3117
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
2848
3118
|
|
|
2849
|
-
|
|
2850
|
-
if (datum.zoom === roundedZoom) {
|
|
2851
|
-
acc.push({
|
|
2852
|
-
data: datum,
|
|
2853
|
-
idx: i
|
|
2854
|
-
});
|
|
2855
|
-
}
|
|
3119
|
+
"use strict";
|
|
2856
3120
|
|
|
2857
|
-
return acc;
|
|
2858
|
-
}, []).slice(0, resultLimit || exports.DEFAULT_RESULT_LIMIT).sort(function (a, b) {
|
|
2859
|
-
return lodash_1.sum(b.data.values) - lodash_1.sum(a.data.values);
|
|
2860
|
-
});
|
|
2861
|
-
return dataToRender.map(function (datum, i) {
|
|
2862
|
-
// create an HTML element for each bubble
|
|
2863
|
-
var colors = dynamicColors ? [dataToRender.map(function (obj) {
|
|
2864
|
-
return colorUtils_1.isColor(dynamicColors[obj.idx]) ? dynamicColors[obj.idx] : exports.DEFAULT_CLUSTER_COLOR;
|
|
2865
|
-
})[i]] : staticColors;
|
|
2866
|
-
var el = exports.createPieChart(datum.data.sanitizedValues, dataRange, colors, themeColor, isPie);
|
|
2867
3121
|
|
|
2868
|
-
|
|
2869
|
-
longitude = _datum$data$coordinat[0],
|
|
2870
|
-
latitude = _datum$data$coordinat[1];
|
|
3122
|
+
var _slicedToArray = __webpack_require__(51);
|
|
2871
3123
|
|
|
2872
|
-
|
|
2873
|
-
return {
|
|
2874
|
-
name: bubbleSizeFields[index],
|
|
2875
|
-
count: count,
|
|
2876
|
-
color: colors[index]
|
|
2877
|
-
};
|
|
2878
|
-
});
|
|
2879
|
-
el.addEventListener('mouseover', function () {
|
|
2880
|
-
setTooltipProps({
|
|
2881
|
-
anchor: el,
|
|
2882
|
-
longitude: longitude,
|
|
2883
|
-
latitude: latitude,
|
|
2884
|
-
bubbleSize: bubbleSize
|
|
2885
|
-
});
|
|
2886
|
-
});
|
|
2887
|
-
el.addEventListener('mouseleave', function () {
|
|
2888
|
-
setTooltipProps({
|
|
2889
|
-
longitude: longitude,
|
|
2890
|
-
latitude: latitude,
|
|
2891
|
-
bubbleSize: bubbleSize
|
|
2892
|
-
});
|
|
2893
|
-
});
|
|
2894
|
-
return new maplibre_gl_1.Marker({
|
|
2895
|
-
element: el
|
|
2896
|
-
}).setLngLat(datum.data.coordinates).addTo(map.current);
|
|
2897
|
-
});
|
|
2898
|
-
};
|
|
3124
|
+
var _defineProperty = __webpack_require__(7);
|
|
2899
3125
|
|
|
2900
|
-
|
|
3126
|
+
var _toConsumableArray = __webpack_require__(41);
|
|
2901
3127
|
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
|
|
2905
|
-
|
|
2906
|
-
orginalValues.forEach(function (v) {
|
|
2907
|
-
if (v !== 0) {
|
|
2908
|
-
allZeros = false;
|
|
2909
|
-
}
|
|
2910
|
-
});
|
|
3128
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3129
|
+
value: true
|
|
3130
|
+
});
|
|
3131
|
+
exports.Bubble = exports.PieSegment = void 0;
|
|
2911
3132
|
|
|
2912
|
-
|
|
2913
|
-
return el;
|
|
2914
|
-
} // sanitize values
|
|
3133
|
+
var React = __webpack_require__(1);
|
|
2915
3134
|
|
|
3135
|
+
var styled_components_1 = __webpack_require__(4);
|
|
2916
3136
|
|
|
2917
|
-
|
|
2918
|
-
return v > 0 ? v : 0;
|
|
2919
|
-
}); // compute offsets for pie segments
|
|
3137
|
+
var lodash_1 = __webpack_require__(2);
|
|
2920
3138
|
|
|
2921
|
-
|
|
2922
|
-
var total = 0;
|
|
2923
|
-
values.forEach(function (count) {
|
|
2924
|
-
offsets.push(total);
|
|
2925
|
-
total += count;
|
|
2926
|
-
});
|
|
2927
|
-
var radius = exports.matchSize(valueRange, total);
|
|
2928
|
-
var width = radius * 2; // create bubble svg
|
|
3139
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
2929
3140
|
|
|
2930
|
-
|
|
3141
|
+
var MapUtils_1 = __webpack_require__(105);
|
|
2931
3142
|
|
|
2932
|
-
|
|
2933
|
-
html += "<circle cx=".concat(radius, " cy=").concat(radius, " r=").concat(radius, " fill='none' stroke-width=\"2\" stroke=").concat(themeColor, " stroke-opacity=\"0.3\"/>");
|
|
2934
|
-
} // create pie segments
|
|
3143
|
+
var MarkerWrapper_1 = __webpack_require__(129);
|
|
2935
3144
|
|
|
3145
|
+
exports.PieSegment = React.memo(function (_ref) {
|
|
3146
|
+
var start = _ref.start,
|
|
3147
|
+
end = _ref.end,
|
|
3148
|
+
radius = _ref.radius,
|
|
3149
|
+
color = _ref.color,
|
|
3150
|
+
themeColor = _ref.themeColor,
|
|
3151
|
+
segmentMetadata = _ref.segmentMetadata,
|
|
3152
|
+
handleBubbleClick = _ref.handleBubbleClick;
|
|
2936
3153
|
|
|
2937
|
-
|
|
2938
|
-
|
|
2939
|
-
|
|
2940
|
-
html += "</svg>\n </div>";
|
|
2941
|
-
el.className = 'custom-bubble';
|
|
2942
|
-
el.innerHTML = html;
|
|
2943
|
-
return el;
|
|
2944
|
-
};
|
|
3154
|
+
var _ref2 = segmentMetadata !== null && segmentMetadata !== void 0 ? segmentMetadata : {},
|
|
3155
|
+
name = _ref2.name,
|
|
3156
|
+
value = _ref2.value;
|
|
2945
3157
|
|
|
2946
|
-
|
|
3158
|
+
var handleSegmentClick = React.useCallback(function (e) {
|
|
3159
|
+
handleBubbleClick(e, name, value);
|
|
3160
|
+
}, [name, value, handleBubbleClick]);
|
|
2947
3161
|
|
|
2948
|
-
var pieSegment = function pieSegment(start, end, radius, color, themeColor) {
|
|
2949
3162
|
if (end - start === 1) {
|
|
2950
|
-
return
|
|
3163
|
+
return React.createElement("circle", {
|
|
3164
|
+
onClick: handleSegmentClick,
|
|
3165
|
+
cx: radius,
|
|
3166
|
+
cy: radius,
|
|
3167
|
+
r: radius - 1,
|
|
3168
|
+
fill: color,
|
|
3169
|
+
fillOpacity: 0.5,
|
|
3170
|
+
strokeWidth: 1.5,
|
|
3171
|
+
stroke: color
|
|
3172
|
+
});
|
|
2951
3173
|
}
|
|
2952
3174
|
|
|
2953
3175
|
var a0 = 2 * Math.PI * (start - 0.25);
|
|
@@ -2957,37 +3179,209 @@ var pieSegment = function pieSegment(start, end, radius, color, themeColor) {
|
|
|
2957
3179
|
var x1 = Math.cos(a1);
|
|
2958
3180
|
var y1 = Math.sin(a1);
|
|
2959
3181
|
var arc = end - start > 0.5 ? 1 : 0;
|
|
2960
|
-
return
|
|
2961
|
-
|
|
3182
|
+
return React.createElement("path", {
|
|
3183
|
+
onClick: handleSegmentClick,
|
|
3184
|
+
d: "M ".concat(radius, " ").concat(radius, " L ").concat(radius + radius * x0, " ").concat(radius + radius * y0, " A ").concat(radius, " ").concat(radius, " 0 ").concat(arc, " 1 ").concat(radius + radius * x1, " ").concat(radius + radius * y1, " L ").concat(radius, " ").concat(radius, " A 0 0 0 ").concat(arc, " 0 ").concat(radius, " ").concat(radius),
|
|
3185
|
+
fill: color,
|
|
3186
|
+
fillOpacity: 0.8,
|
|
3187
|
+
stroke: themeColor,
|
|
3188
|
+
strokeWidth: 2,
|
|
3189
|
+
strokeOpacity: 0.3
|
|
3190
|
+
});
|
|
3191
|
+
});
|
|
3192
|
+
exports.PieSegment.displayName = 'MapBubblePieSegment';
|
|
3193
|
+
var StyledMarkerWrapper = styled_components_1.default(MarkerWrapper_1.default).withConfig({
|
|
3194
|
+
displayName: "BubbleLayer__StyledMarkerWrapper",
|
|
3195
|
+
componentId: "sc-8aqbb-0"
|
|
3196
|
+
})(["cursor:pointer;"]);
|
|
3197
|
+
exports.Bubble = React.memo(function (_ref3) {
|
|
3198
|
+
var originalValues = _ref3.originalValues,
|
|
3199
|
+
valueRange = _ref3.valueRange,
|
|
3200
|
+
colors = _ref3.colors,
|
|
3201
|
+
themeColor = _ref3.themeColor,
|
|
3202
|
+
isPie = _ref3.isPie,
|
|
3203
|
+
latitude = _ref3.latitude,
|
|
3204
|
+
longitude = _ref3.longitude,
|
|
3205
|
+
bubbleSize = _ref3.bubbleSize,
|
|
3206
|
+
_ref3$additionalField = _ref3.additionalFields,
|
|
3207
|
+
additionalFields = _ref3$additionalField === void 0 ? [] : _ref3$additionalField,
|
|
3208
|
+
map = _ref3.map,
|
|
3209
|
+
handleMapClick = _ref3.handleMapClick;
|
|
3210
|
+
var onBubbleClick = React.useCallback(function (e, name, value) {
|
|
3211
|
+
handleMapClick(e, name, value);
|
|
3212
|
+
e.stopPropagation();
|
|
3213
|
+
}, [bubbleSize]);
|
|
3214
|
+
var bubble = React.useMemo(function () {
|
|
3215
|
+
var allZeros = originalValues.every(function (v) {
|
|
3216
|
+
return v === 0;
|
|
3217
|
+
});
|
|
2962
3218
|
|
|
2963
|
-
|
|
3219
|
+
if (allZeros || !originalValues.length) {
|
|
3220
|
+
return null;
|
|
3221
|
+
} // sanitize values
|
|
2964
3222
|
|
|
2965
|
-
/***/ }),
|
|
2966
|
-
/* 198 */
|
|
2967
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
2968
3223
|
|
|
2969
|
-
|
|
3224
|
+
var values = originalValues.map(function (v) {
|
|
3225
|
+
return v > 0 ? v : 0;
|
|
3226
|
+
}); // compute offsets for pie segments
|
|
2970
3227
|
|
|
3228
|
+
var offsets = [];
|
|
3229
|
+
var total = 0;
|
|
3230
|
+
values.forEach(function (count) {
|
|
3231
|
+
offsets.push(total);
|
|
3232
|
+
total += count;
|
|
3233
|
+
});
|
|
3234
|
+
var radius = MapUtils_1.matchBubbleSize(valueRange, total);
|
|
3235
|
+
var width = radius * 2;
|
|
3236
|
+
return React.createElement("svg", {
|
|
3237
|
+
width: width,
|
|
3238
|
+
height: width,
|
|
3239
|
+
viewBox: "-3 -3 ".concat(width + 6, " ").concat(width + 6)
|
|
3240
|
+
}, isPie ? React.createElement("circle", {
|
|
3241
|
+
cx: radius,
|
|
3242
|
+
cy: radius,
|
|
3243
|
+
r: radius,
|
|
3244
|
+
fill: "none",
|
|
3245
|
+
strokeWidth: 2,
|
|
3246
|
+
stroke: themeColor,
|
|
3247
|
+
strokeOpacity: 0.3
|
|
3248
|
+
}) : null, values.map(function (v, i) {
|
|
3249
|
+
return React.createElement(exports.PieSegment, {
|
|
3250
|
+
key: String(i),
|
|
3251
|
+
start: offsets[i] / total,
|
|
3252
|
+
end: (offsets[i] + v) / total,
|
|
3253
|
+
radius: radius,
|
|
3254
|
+
color: colors[i],
|
|
3255
|
+
themeColor: themeColor,
|
|
3256
|
+
segmentMetadata: bubbleSize[i],
|
|
3257
|
+
handleBubbleClick: onBubbleClick
|
|
3258
|
+
});
|
|
3259
|
+
}));
|
|
3260
|
+
}, [colors, isPie, originalValues, themeColor, valueRange]);
|
|
2971
3261
|
|
|
2972
|
-
|
|
2973
|
-
|
|
3262
|
+
if (!bubble) {
|
|
3263
|
+
return null;
|
|
3264
|
+
}
|
|
3265
|
+
|
|
3266
|
+
return React.createElement(StyledMarkerWrapper, {
|
|
3267
|
+
longitude: longitude,
|
|
3268
|
+
latitude: latitude,
|
|
3269
|
+
additionalFields: [].concat(_toConsumableArray(bubbleSize), _toConsumableArray(additionalFields)),
|
|
3270
|
+
map: map,
|
|
3271
|
+
"data-test-type": "bubble"
|
|
3272
|
+
}, bubble);
|
|
2974
3273
|
});
|
|
2975
|
-
exports.
|
|
3274
|
+
exports.Bubble.displayName = 'MapBubble';
|
|
2976
3275
|
|
|
2977
|
-
var
|
|
2978
|
-
|
|
2979
|
-
|
|
3276
|
+
var BubbleLayer = function BubbleLayer(props) {
|
|
3277
|
+
var bubbleLayer = props.bubbleLayer,
|
|
3278
|
+
themeColorScheme = props.themeColorScheme,
|
|
3279
|
+
map = props.map,
|
|
3280
|
+
zoom = props.zoom,
|
|
3281
|
+
onMapClick = props.onMapClick;
|
|
3282
|
+
bubbleLayer.seriesColors = bubbleLayer.seriesColors || MapUtils_1.DEFAULT_SERIES_COLORS;
|
|
3283
|
+
bubbleLayer.bubbleSize = bubbleLayer.bubbleSize || [];
|
|
3284
|
+
var bakedData = React.useMemo(function () {
|
|
3285
|
+
return MapUtils_1.bakeBubbleData(bubbleLayer);
|
|
3286
|
+
}, [bubbleLayer]);
|
|
3287
|
+
var staticColors = React.useMemo(function () {
|
|
3288
|
+
return MapUtils_1.getStaticColors(bubbleLayer.bubbleSize.length, bubbleLayer.seriesColors);
|
|
3289
|
+
}, [bubbleLayer.bubbleSize.length, bubbleLayer.seriesColors]);
|
|
3290
|
+
|
|
3291
|
+
var _ref4 = bakedData !== null && bakedData !== void 0 ? bakedData : {},
|
|
3292
|
+
_ref4$data = _ref4.data,
|
|
3293
|
+
data = _ref4$data === void 0 ? [] : _ref4$data,
|
|
3294
|
+
_ref4$dataRange = _ref4.dataRange,
|
|
3295
|
+
dataRange = _ref4$dataRange === void 0 ? [] : _ref4$dataRange,
|
|
3296
|
+
resultLimit = _ref4.resultLimit,
|
|
3297
|
+
bubbleSizeFields = _ref4.bubbleSizeFields,
|
|
3298
|
+
isPie = _ref4.isPie;
|
|
3299
|
+
|
|
3300
|
+
var _bubbleLayer$addition = bubbleLayer.additionalTooltipFields,
|
|
3301
|
+
additionalTooltipFields = _bubbleLayer$addition === void 0 ? [] : _bubbleLayer$addition;
|
|
3302
|
+
var roundedZoom = Math.round(zoom);
|
|
3303
|
+
var themeColor = themeColorScheme === 'light' ? '#ffffff' : '#1a1c20';
|
|
3304
|
+
var dynamicColors = bubbleLayer.dataColors; // filter data for the current zoom level and sort base on values
|
|
3305
|
+
|
|
3306
|
+
var dataToRender = React.useMemo(function () {
|
|
3307
|
+
return data.reduce(function (acc, datum, i) {
|
|
3308
|
+
if (datum.zoom === roundedZoom) {
|
|
3309
|
+
acc.push({
|
|
3310
|
+
data: datum,
|
|
3311
|
+
idx: i
|
|
3312
|
+
});
|
|
3313
|
+
}
|
|
3314
|
+
|
|
3315
|
+
return acc;
|
|
3316
|
+
}, []).slice(0, resultLimit || MapUtils_1.DEFAULT_RESULT_LIMIT).sort(function (a, b) {
|
|
3317
|
+
return lodash_1.sum(b.data.values) - lodash_1.sum(a.data.values);
|
|
3318
|
+
});
|
|
3319
|
+
}, [data, resultLimit, roundedZoom]);
|
|
3320
|
+
|
|
3321
|
+
var _handleMapClick = React.useCallback(function (e, name, value, i) {
|
|
3322
|
+
var _a, _b, _c; // retrieve metadata from the appropriate datum, indexed by i
|
|
3323
|
+
|
|
3324
|
+
|
|
3325
|
+
var metadata = (_c = (_b = (_a = dataToRender[i]) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.metadata) !== null && _c !== void 0 ? _c : {};
|
|
3326
|
+
var payload = Object.keys(metadata).reduce(function (acc, curr) {
|
|
3327
|
+
var key = "row.".concat(curr, ".value");
|
|
3328
|
+
var val = String(metadata[curr]);
|
|
3329
|
+
return Object.assign(Object.assign({}, acc), _defineProperty({}, key, val));
|
|
3330
|
+
}, {
|
|
3331
|
+
name: name,
|
|
3332
|
+
value: String(value)
|
|
3333
|
+
});
|
|
3334
|
+
onMapClick({
|
|
3335
|
+
e: e,
|
|
3336
|
+
payload: payload
|
|
3337
|
+
});
|
|
3338
|
+
}, [dataToRender]);
|
|
2980
3339
|
|
|
2981
|
-
|
|
3340
|
+
return React.createElement(React.Fragment, null, dataToRender.map(function (datum, i) {
|
|
3341
|
+
var colors = dynamicColors ? [dataToRender.map(function (obj) {
|
|
3342
|
+
return colorUtils_1.isColor(dynamicColors[obj.idx]) ? dynamicColors[obj.idx] : MapUtils_1.DEFAULT_CLUSTER_COLOR;
|
|
3343
|
+
})[i]] : staticColors;
|
|
3344
|
+
|
|
3345
|
+
var _datum$data$coordinat = _slicedToArray(datum.data.coordinates, 2),
|
|
3346
|
+
longitude = _datum$data$coordinat[0],
|
|
3347
|
+
latitude = _datum$data$coordinat[1];
|
|
2982
3348
|
|
|
2983
|
-
var
|
|
2984
|
-
|
|
3349
|
+
var bubbleSize = datum.data.values.map(function (value, index) {
|
|
3350
|
+
return {
|
|
3351
|
+
name: bubbleSizeFields[index],
|
|
3352
|
+
value: value,
|
|
3353
|
+
color: colors[index]
|
|
3354
|
+
};
|
|
3355
|
+
});
|
|
3356
|
+
var additionalFields = bubbleLayer.metadata ? additionalTooltipFields.map(function (field) {
|
|
3357
|
+
return {
|
|
3358
|
+
name: field,
|
|
3359
|
+
value: datum.data.metadata[field]
|
|
3360
|
+
};
|
|
3361
|
+
}) : [];
|
|
3362
|
+
return React.createElement(exports.Bubble, {
|
|
3363
|
+
key: String(i),
|
|
3364
|
+
originalValues: datum.data.values,
|
|
3365
|
+
valueRange: dataRange,
|
|
3366
|
+
colors: colors,
|
|
3367
|
+
themeColor: themeColor,
|
|
3368
|
+
isPie: isPie,
|
|
3369
|
+
longitude: longitude,
|
|
3370
|
+
latitude: latitude,
|
|
3371
|
+
bubbleSize: bubbleSize,
|
|
3372
|
+
additionalFields: additionalFields,
|
|
3373
|
+
map: map,
|
|
3374
|
+
handleMapClick: function handleMapClick(e, name, value) {
|
|
3375
|
+
return _handleMapClick(e, name, value, i);
|
|
3376
|
+
}
|
|
3377
|
+
});
|
|
3378
|
+
}));
|
|
2985
3379
|
};
|
|
2986
3380
|
|
|
2987
|
-
exports.
|
|
3381
|
+
exports.default = BubbleLayer;
|
|
2988
3382
|
|
|
2989
3383
|
/***/ }),
|
|
2990
|
-
/*
|
|
3384
|
+
/* 202 */
|
|
2991
3385
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2992
3386
|
|
|
2993
3387
|
"use strict";
|
|
@@ -3002,7 +3396,7 @@ var React = __webpack_require__(1);
|
|
|
3002
3396
|
|
|
3003
3397
|
var styled_components_1 = __webpack_require__(4);
|
|
3004
3398
|
|
|
3005
|
-
var Popover_1 = __webpack_require__(
|
|
3399
|
+
var Popover_1 = __webpack_require__(106);
|
|
3006
3400
|
|
|
3007
3401
|
var i18n_1 = __webpack_require__(3);
|
|
3008
3402
|
|
|
@@ -3013,7 +3407,7 @@ var StyledPopover = styled_components_1.default(Popover_1.default).withConfig({
|
|
|
3013
3407
|
var StyledTable = styled_components_1.default.table.withConfig({
|
|
3014
3408
|
displayName: "Tooltip__StyledTable",
|
|
3015
3409
|
componentId: "xwewsa-1"
|
|
3016
|
-
})(["
|
|
3410
|
+
})(["margin:2px 6px 2px 6px;width:calc(100% - 12px);"]);
|
|
3017
3411
|
var StyledTitleColumn = styled_components_1.default.td.withConfig({
|
|
3018
3412
|
displayName: "Tooltip__StyledTitleColumn",
|
|
3019
3413
|
componentId: "xwewsa-2"
|
|
@@ -3022,8 +3416,8 @@ var StyledValueColumn = styled_components_1.default.td.withConfig({
|
|
|
3022
3416
|
displayName: "Tooltip__StyledValueColumn",
|
|
3023
3417
|
componentId: "xwewsa-3"
|
|
3024
3418
|
})(["text-align:right;"]);
|
|
3025
|
-
var
|
|
3026
|
-
displayName: "
|
|
3419
|
+
var StyledColorBlock = styled_components_1.default.div.withConfig({
|
|
3420
|
+
displayName: "Tooltip__StyledColorBlock",
|
|
3027
3421
|
componentId: "xwewsa-4"
|
|
3028
3422
|
})(["background-color:", ";display:inline-block;margin-right:4px;border-radius:2px;width:6px;height:11px;transform:translateY(1px);"], function (props) {
|
|
3029
3423
|
return props.color;
|
|
@@ -3063,13 +3457,14 @@ var convertDegToDMS = function convertDegToDMS(decimalDegree, type) {
|
|
|
3063
3457
|
exports.convertDegToDMS = convertDegToDMS;
|
|
3064
3458
|
|
|
3065
3459
|
var Tooltip = function Tooltip(_ref) {
|
|
3066
|
-
var
|
|
3460
|
+
var open = _ref.open,
|
|
3461
|
+
anchor = _ref.anchor,
|
|
3067
3462
|
latitude = _ref.latitude,
|
|
3068
3463
|
longitude = _ref.longitude,
|
|
3069
|
-
_ref$
|
|
3070
|
-
|
|
3464
|
+
_ref$additionalFields = _ref.additionalFields,
|
|
3465
|
+
additionalFields = _ref$additionalFields === void 0 ? [] : _ref$additionalFields;
|
|
3071
3466
|
return React.createElement(StyledPopover, {
|
|
3072
|
-
open:
|
|
3467
|
+
open: open,
|
|
3073
3468
|
anchor: anchor,
|
|
3074
3469
|
"data-test": "map-marker-tooltip",
|
|
3075
3470
|
defaultPlacement: "above"
|
|
@@ -3077,26 +3472,191 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
3077
3472
|
"data-test": "latitude"
|
|
3078
3473
|
}, exports.convertDegToDMS(latitude, 'latitude'))), React.createElement("tr", null, React.createElement(StyledTitleColumn, null, i18n_1._('Longitude')), React.createElement(StyledValueColumn, {
|
|
3079
3474
|
"data-test": "longitude"
|
|
3080
|
-
}, exports.convertDegToDMS(longitude, 'longitude'))),
|
|
3475
|
+
}, exports.convertDegToDMS(longitude, 'longitude'))), additionalFields.map(function (_ref2, index) {
|
|
3081
3476
|
var name = _ref2.name,
|
|
3082
|
-
|
|
3477
|
+
value = _ref2.value,
|
|
3083
3478
|
color = _ref2.color;
|
|
3084
3479
|
return React.createElement("tr", {
|
|
3085
|
-
key:
|
|
3480
|
+
key: String(index)
|
|
3086
3481
|
}, React.createElement(StyledTitleColumn, {
|
|
3087
|
-
"data-test": "
|
|
3088
|
-
}, React.createElement(
|
|
3482
|
+
"data-test": "field-title"
|
|
3483
|
+
}, color ? React.createElement(StyledColorBlock, {
|
|
3484
|
+
"data-test": "field-color",
|
|
3089
3485
|
color: color
|
|
3090
|
-
}), name), React.createElement(StyledValueColumn, {
|
|
3091
|
-
"data-test": "
|
|
3092
|
-
},
|
|
3486
|
+
}) : null, name), React.createElement(StyledValueColumn, {
|
|
3487
|
+
"data-test": "field-value"
|
|
3488
|
+
}, value));
|
|
3093
3489
|
}))));
|
|
3094
3490
|
};
|
|
3095
3491
|
|
|
3096
3492
|
exports.default = Tooltip;
|
|
3097
3493
|
|
|
3098
3494
|
/***/ }),
|
|
3099
|
-
/*
|
|
3495
|
+
/* 203 */
|
|
3496
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3497
|
+
|
|
3498
|
+
"use strict";
|
|
3499
|
+
|
|
3500
|
+
|
|
3501
|
+
var _defineProperty = __webpack_require__(7);
|
|
3502
|
+
|
|
3503
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
3504
|
+
var t = {};
|
|
3505
|
+
|
|
3506
|
+
for (var p in s) {
|
|
3507
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
3508
|
+
}
|
|
3509
|
+
|
|
3510
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
3511
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
3512
|
+
}
|
|
3513
|
+
return t;
|
|
3514
|
+
};
|
|
3515
|
+
|
|
3516
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3517
|
+
value: true
|
|
3518
|
+
});
|
|
3519
|
+
exports.generateMarkerWrapperProps = exports.MarkerIcon = void 0;
|
|
3520
|
+
|
|
3521
|
+
var styled_components_1 = __webpack_require__(4);
|
|
3522
|
+
|
|
3523
|
+
var React = __webpack_require__(1);
|
|
3524
|
+
|
|
3525
|
+
var colorUtils_1 = __webpack_require__(12);
|
|
3526
|
+
|
|
3527
|
+
var lodash_1 = __webpack_require__(2);
|
|
3528
|
+
|
|
3529
|
+
var MapUtils_1 = __webpack_require__(105);
|
|
3530
|
+
|
|
3531
|
+
var MarkerWrapper_1 = __webpack_require__(129);
|
|
3532
|
+
|
|
3533
|
+
var MarkerIcon = function MarkerIcon(_a) {
|
|
3534
|
+
var theme = _a.theme,
|
|
3535
|
+
color = _a.color,
|
|
3536
|
+
otherProps = __rest(_a, ["theme", "color"]);
|
|
3537
|
+
|
|
3538
|
+
var strokeOpacity = theme === 'light' ? 0.7 : 0.15;
|
|
3539
|
+
return React.createElement("svg", Object.assign({
|
|
3540
|
+
width: 22,
|
|
3541
|
+
height: 28,
|
|
3542
|
+
fill: "none"
|
|
3543
|
+
}, otherProps), React.createElement("path", {
|
|
3544
|
+
d: "M11 .5C5.201.5.5 5.201.5 11c0 3.136 1.376 5.952 3.555 7.875 2.839 2.506 4.144 4.58 4.893 6.02.183.35.334.665.469.946l.014.03c.136.285.263.548.387.766.235.412.571.863 1.182.863.61 0 .947-.45 1.182-.863.124-.218.25-.48.387-.765l.014-.03c.135-.282.286-.597.469-.947.75-1.44 2.054-3.514 4.893-6.02A10.476 10.476 0 0 0 21.5 11C21.5 5.201 16.799.5 11 .5Z",
|
|
3545
|
+
fill: color
|
|
3546
|
+
}), React.createElement("path", {
|
|
3547
|
+
d: "M11 .5C5.201.5.5 5.201.5 11c0 3.136 1.376 5.952 3.555 7.875 2.839 2.506 4.144 4.58 4.893 6.02.183.35.334.665.469.946l.014.03c.136.285.263.548.387.766.235.412.571.863 1.182.863.61 0 .947-.45 1.182-.863.124-.218.25-.48.387-.765l.014-.03c.135-.282.286-.597.469-.947.75-1.44 2.054-3.514 4.893-6.02A10.476 10.476 0 0 0 21.5 11C21.5 5.201 16.799.5 11 .5Z",
|
|
3548
|
+
stroke: "#08090A"
|
|
3549
|
+
}), React.createElement("path", {
|
|
3550
|
+
d: "M11 .5C5.201.5.5 5.201.5 11c0 3.136 1.376 5.952 3.555 7.875 2.839 2.506 4.144 4.58 4.893 6.02.183.35.334.665.469.946l.014.03c.136.285.263.548.387.766.235.412.571.863 1.182.863.61 0 .947-.45 1.182-.863.124-.218.25-.48.387-.765l.014-.03c.135-.282.286-.597.469-.947.75-1.44 2.054-3.514 4.893-6.02A10.476 10.476 0 0 0 21.5 11C21.5 5.201 16.799.5 11 .5Z",
|
|
3551
|
+
stroke: color,
|
|
3552
|
+
strokeOpacity: strokeOpacity
|
|
3553
|
+
}));
|
|
3554
|
+
};
|
|
3555
|
+
|
|
3556
|
+
exports.MarkerIcon = MarkerIcon;
|
|
3557
|
+
var Marker = React.memo(function (_ref) {
|
|
3558
|
+
var latitude = _ref.latitude,
|
|
3559
|
+
longitude = _ref.longitude,
|
|
3560
|
+
color = _ref.color,
|
|
3561
|
+
themeColorScheme = _ref.themeColorScheme,
|
|
3562
|
+
map = _ref.map,
|
|
3563
|
+
additionalFields = _ref.additionalFields,
|
|
3564
|
+
handleLayerClick = _ref.handleLayerClick;
|
|
3565
|
+
var icon = React.useMemo(function () {
|
|
3566
|
+
return React.createElement(exports.MarkerIcon, {
|
|
3567
|
+
color: color,
|
|
3568
|
+
theme: themeColorScheme,
|
|
3569
|
+
onClick: handleLayerClick
|
|
3570
|
+
});
|
|
3571
|
+
}, [color, handleLayerClick, themeColorScheme]);
|
|
3572
|
+
return React.createElement(StyledMarkerWrapper, {
|
|
3573
|
+
latitude: latitude,
|
|
3574
|
+
longitude: longitude,
|
|
3575
|
+
map: map,
|
|
3576
|
+
additionalFields: additionalFields,
|
|
3577
|
+
"data-test-type": "marker"
|
|
3578
|
+
}, icon);
|
|
3579
|
+
});
|
|
3580
|
+
Marker.displayName = 'MapMarker';
|
|
3581
|
+
var StyledMarkerWrapper = styled_components_1.default(MarkerWrapper_1.default).withConfig({
|
|
3582
|
+
displayName: "MarkerLayer__StyledMarkerWrapper",
|
|
3583
|
+
componentId: "ej9u2l-0"
|
|
3584
|
+
})(["width:22px;height:28px;cursor:pointer;"]);
|
|
3585
|
+
|
|
3586
|
+
var generateMarkerWrapperProps = function generateMarkerWrapperProps(markerLayer) {
|
|
3587
|
+
var onMapClick = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : lodash_1.noop;
|
|
3588
|
+
var latArray = markerLayer.latitude;
|
|
3589
|
+
var lonArray = markerLayer.longitude;
|
|
3590
|
+
var isStaticColor = !markerLayer.dataColors;
|
|
3591
|
+
var limit = Math.min(latArray.length, lonArray.length, markerLayer.resultLimit ? markerLayer.resultLimit : MapUtils_1.DEFAULT_RESULT_LIMIT);
|
|
3592
|
+
var markerProps = [];
|
|
3593
|
+
|
|
3594
|
+
var _loop = function _loop(i) {
|
|
3595
|
+
var staticColor = markerLayer.seriesColors && colorUtils_1.isColor(markerLayer.seriesColors[0]) ? markerLayer.seriesColors[0] : MapUtils_1.DEFAULT_CLUSTER_COLOR;
|
|
3596
|
+
var dynamicColor = markerLayer.dataColors && colorUtils_1.isColor(markerLayer.dataColors[i]) ? markerLayer.dataColors[i] : MapUtils_1.DEFAULT_CLUSTER_COLOR;
|
|
3597
|
+
var color = isStaticColor ? staticColor : dynamicColor;
|
|
3598
|
+
var additionalFields = markerLayer.metadata ? markerLayer.additionalTooltipFields.map(function (field) {
|
|
3599
|
+
return {
|
|
3600
|
+
name: field,
|
|
3601
|
+
value: markerLayer.metadata[i][field]
|
|
3602
|
+
};
|
|
3603
|
+
}) : [];
|
|
3604
|
+
|
|
3605
|
+
var handleLayerClick = function handleLayerClick(e) {
|
|
3606
|
+
var _a;
|
|
3607
|
+
|
|
3608
|
+
var metadata = (_a = markerLayer === null || markerLayer === void 0 ? void 0 : markerLayer.metadata[i]) !== null && _a !== void 0 ? _a : {};
|
|
3609
|
+
var payload = Object.keys(metadata).reduce(function (acc, curr) {
|
|
3610
|
+
var key = "row.".concat(curr, ".value");
|
|
3611
|
+
var value = String(metadata[curr]);
|
|
3612
|
+
return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value));
|
|
3613
|
+
}, {});
|
|
3614
|
+
onMapClick({
|
|
3615
|
+
e: e,
|
|
3616
|
+
payload: payload
|
|
3617
|
+
});
|
|
3618
|
+
};
|
|
3619
|
+
|
|
3620
|
+
markerProps.push({
|
|
3621
|
+
latitude: latArray[i],
|
|
3622
|
+
longitude: lonArray[i],
|
|
3623
|
+
color: color,
|
|
3624
|
+
additionalFields: additionalFields,
|
|
3625
|
+
handleLayerClick: handleLayerClick
|
|
3626
|
+
});
|
|
3627
|
+
};
|
|
3628
|
+
|
|
3629
|
+
for (var i = 0; i < limit; i += 1) {
|
|
3630
|
+
_loop(i);
|
|
3631
|
+
}
|
|
3632
|
+
|
|
3633
|
+
return markerProps;
|
|
3634
|
+
};
|
|
3635
|
+
|
|
3636
|
+
exports.generateMarkerWrapperProps = generateMarkerWrapperProps;
|
|
3637
|
+
|
|
3638
|
+
var MarkerLayer = function MarkerLayer(props) {
|
|
3639
|
+
var map = props.map,
|
|
3640
|
+
themeColorScheme = props.themeColorScheme,
|
|
3641
|
+
markerLayer = props.markerLayer,
|
|
3642
|
+
onMapClick = props.onMapClick;
|
|
3643
|
+
markerLayer.seriesColors = markerLayer.seriesColors || MapUtils_1.DEFAULT_SERIES_COLORS;
|
|
3644
|
+
var markerPropsList = React.useMemo(function () {
|
|
3645
|
+
return exports.generateMarkerWrapperProps(markerLayer, onMapClick);
|
|
3646
|
+
}, [markerLayer, onMapClick]);
|
|
3647
|
+
return React.createElement(React.Fragment, null, markerPropsList.map(function (markerProps, i) {
|
|
3648
|
+
return React.createElement(Marker, Object.assign({
|
|
3649
|
+
key: String(i),
|
|
3650
|
+
themeColorScheme: themeColorScheme,
|
|
3651
|
+
map: map
|
|
3652
|
+
}, markerProps));
|
|
3653
|
+
}));
|
|
3654
|
+
};
|
|
3655
|
+
|
|
3656
|
+
exports.default = MarkerLayer;
|
|
3657
|
+
|
|
3658
|
+
/***/ }),
|
|
3659
|
+
/* 204 */
|
|
3100
3660
|
/***/ (function(module, exports, __webpack_require__) {
|
|
3101
3661
|
|
|
3102
3662
|
"use strict";
|
|
@@ -3106,19 +3666,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
3106
3666
|
value: true
|
|
3107
3667
|
});
|
|
3108
3668
|
|
|
3109
|
-
var visualization_icons_1 = __webpack_require__(
|
|
3669
|
+
var visualization_icons_1 = __webpack_require__(45);
|
|
3110
3670
|
|
|
3111
|
-
var
|
|
3671
|
+
var placeholders_1 = __webpack_require__(44);
|
|
3112
3672
|
|
|
3113
|
-
var
|
|
3673
|
+
var schemaUtils_1 = __webpack_require__(15);
|
|
3114
3674
|
|
|
3115
|
-
var
|
|
3675
|
+
var visualization_color_palettes_1 = __webpack_require__(43);
|
|
3676
|
+
|
|
3677
|
+
var themes_1 = __webpack_require__(65);
|
|
3116
3678
|
|
|
3117
3679
|
var i18n_1 = __webpack_require__(3);
|
|
3118
3680
|
|
|
3119
3681
|
var VizBehavior_1 = __webpack_require__(5);
|
|
3120
3682
|
|
|
3121
|
-
var VizCategory_1 = __webpack_require__(
|
|
3683
|
+
var VizCategory_1 = __webpack_require__(28);
|
|
3122
3684
|
|
|
3123
3685
|
var configUtils_1 = __webpack_require__(6);
|
|
3124
3686
|
|
|
@@ -3163,14 +3725,13 @@ var size = {
|
|
|
3163
3725
|
var optionsSchema = {
|
|
3164
3726
|
backgroundColor: {
|
|
3165
3727
|
default: '> themes.defaultBackgroundColor',
|
|
3166
|
-
description: 'Specify
|
|
3728
|
+
description: 'Specify a color for the background. You might use a dataSource to apply the color. The default for enterprise light is "#FFFFFF". The default for enterprise dark is "#000000". The default for prisma dark is "#0B0C0E".',
|
|
3167
3729
|
pattern: schemaUtils_1.COLOR_OR_TOKEN_PATTERN_WITH_RGBA,
|
|
3168
3730
|
type: 'string'
|
|
3169
3731
|
},
|
|
3170
3732
|
center: {
|
|
3171
|
-
default: [37.7749, -122.4194],
|
|
3172
3733
|
type: 'array',
|
|
3173
|
-
description: 'Specify the center of the map in coordinates, in the form of [latitude, longitude].
|
|
3734
|
+
description: 'Specify the center of the map in coordinates, in the form of [latitude, longitude]. If you don’t provide coordinates, the map automatically centers, based on available location data. If there is no available location data, the center of the map defaults to [37.7749, -122.4194].',
|
|
3174
3735
|
items: {
|
|
3175
3736
|
type: 'number'
|
|
3176
3737
|
}
|
|
@@ -3184,18 +3745,18 @@ var optionsSchema = {
|
|
|
3184
3745
|
longitude: '> primary | seriesByName("longitude")',
|
|
3185
3746
|
seriesColors: visualization_color_palettes_1.VIZ_CATEGORICAL,
|
|
3186
3747
|
bubbleSize: '> primary | frameWithoutSeriesNames("geobin", "latitude", "longitude") | frameBySeriesTypes("number")',
|
|
3187
|
-
|
|
3748
|
+
additionalTooltipFields: [],
|
|
3188
3749
|
resultLimit: 1000
|
|
3189
3750
|
}, {
|
|
3190
3751
|
type: 'marker',
|
|
3191
3752
|
latitude: '> primary | seriesByName("latitude")',
|
|
3192
3753
|
longitude: '> primary | seriesByName("longitude")',
|
|
3193
3754
|
seriesColors: visualization_color_palettes_1.VIZ_CATEGORICAL,
|
|
3194
|
-
|
|
3755
|
+
additionalTooltipFields: [],
|
|
3195
3756
|
resultLimit: 1000
|
|
3196
3757
|
}],
|
|
3197
3758
|
type: 'array',
|
|
3198
|
-
description: 'Specify the data visualization layers
|
|
3759
|
+
description: 'Specify the optional data visualization layers over the base map. If empty, only the base map appears.',
|
|
3199
3760
|
items: {
|
|
3200
3761
|
anyOf: [{
|
|
3201
3762
|
type: 'object',
|
|
@@ -3203,25 +3764,34 @@ var optionsSchema = {
|
|
|
3203
3764
|
type: {
|
|
3204
3765
|
description: 'Specify the type of data layer method to display points on the map. For example, “bubble” or “marker”.',
|
|
3205
3766
|
type: 'string',
|
|
3206
|
-
pattern: schemaUtils_1.getPattern(['marker']),
|
|
3767
|
+
pattern: schemaUtils_1.getPattern(['marker', 'bubble']),
|
|
3207
3768
|
default: 'marker'
|
|
3208
3769
|
},
|
|
3209
3770
|
latitude: {
|
|
3210
3771
|
description: 'Specify a dataSource series to apply latitude coordinates for data points displayed on the map.',
|
|
3211
3772
|
type: ['string', 'array'],
|
|
3773
|
+
items: {
|
|
3774
|
+
type: 'number'
|
|
3775
|
+
},
|
|
3212
3776
|
default: '> primary | seriesByName("latitude")'
|
|
3213
3777
|
},
|
|
3214
3778
|
longitude: {
|
|
3215
3779
|
description: 'Specify a dataSource series to apply longitude coordinates for data points displayed on the map.',
|
|
3216
3780
|
type: ['string', 'array'],
|
|
3781
|
+
items: {
|
|
3782
|
+
type: 'number'
|
|
3783
|
+
},
|
|
3217
3784
|
default: '> primary | seriesByName("longitude")'
|
|
3218
3785
|
},
|
|
3219
3786
|
dataColors: {
|
|
3220
|
-
description: 'Specify the colors used for data points. You may use an array of colors to be picked from, or you may use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. ',
|
|
3221
|
-
type: ['string', 'array']
|
|
3787
|
+
description: 'Specify the colors used for data points. If specified, this option overrides the seriesColors option. You may use an array of colors to be picked from, or you may use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. ',
|
|
3788
|
+
type: ['string', 'array'],
|
|
3789
|
+
items: {
|
|
3790
|
+
type: 'string'
|
|
3791
|
+
}
|
|
3222
3792
|
},
|
|
3223
3793
|
seriesColors: {
|
|
3224
|
-
description: 'Specify the colors used for data points.',
|
|
3794
|
+
description: 'Specify the colors used for data points. If the dataColors option is specified, the seriesColors option is ignored.',
|
|
3225
3795
|
type: 'array',
|
|
3226
3796
|
items: {
|
|
3227
3797
|
type: 'string',
|
|
@@ -3229,8 +3799,8 @@ var optionsSchema = {
|
|
|
3229
3799
|
},
|
|
3230
3800
|
default: visualization_color_palettes_1.VIZ_CATEGORICAL
|
|
3231
3801
|
},
|
|
3232
|
-
|
|
3233
|
-
description: 'Specify the fields to add to tooltips
|
|
3802
|
+
additionalTooltipFields: {
|
|
3803
|
+
description: 'Specify the fields to add to the default set of tooltips. Tooltips appear when you hover over data points. These fields and their corresponding values will be shown in addition to the ones displayed by default.',
|
|
3234
3804
|
type: 'array',
|
|
3235
3805
|
items: {
|
|
3236
3806
|
type: 'string'
|
|
@@ -3238,7 +3808,7 @@ var optionsSchema = {
|
|
|
3238
3808
|
default: []
|
|
3239
3809
|
},
|
|
3240
3810
|
resultLimit: {
|
|
3241
|
-
description: 'Specify the maximum number of data points
|
|
3811
|
+
description: 'Specify the maximum number of data points to render on the map. Adjust the value to improve performance.',
|
|
3242
3812
|
type: 'number',
|
|
3243
3813
|
default: 1000
|
|
3244
3814
|
}
|
|
@@ -3249,12 +3819,15 @@ var optionsSchema = {
|
|
|
3249
3819
|
type: {
|
|
3250
3820
|
description: 'Specify the type of data layer method to display points on the map. For example, “bubble” or “marker”.',
|
|
3251
3821
|
type: 'string',
|
|
3252
|
-
pattern: schemaUtils_1.getPattern(['bubble']),
|
|
3822
|
+
pattern: schemaUtils_1.getPattern(['marker', 'bubble']),
|
|
3253
3823
|
default: 'bubble'
|
|
3254
3824
|
},
|
|
3255
3825
|
bubbleSize: {
|
|
3256
|
-
description: 'Specify the data column to encode bubble size',
|
|
3826
|
+
description: 'Specify the data column to encode bubble size. This applies to layers where type: "bubble".',
|
|
3257
3827
|
type: ['string', 'array'],
|
|
3828
|
+
items: {
|
|
3829
|
+
type: 'number'
|
|
3830
|
+
},
|
|
3258
3831
|
default: '> primary | frameWithoutSeriesNames("geobin", "latitude", "longitude") | frameBySeriesTypes("number")'
|
|
3259
3832
|
},
|
|
3260
3833
|
latitude: {
|
|
@@ -3274,11 +3847,14 @@ var optionsSchema = {
|
|
|
3274
3847
|
default: '> primary | seriesByName("longitude")'
|
|
3275
3848
|
},
|
|
3276
3849
|
dataColors: {
|
|
3277
|
-
description: 'Specify the colors used for data points. You may use an array of colors to be picked from, or you may use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. ',
|
|
3278
|
-
type: ['string', 'array']
|
|
3850
|
+
description: 'Specify the colors used for data points. If specified, this option overrides the seriesColors option. You may use an array of colors to be picked from, or you may use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. ',
|
|
3851
|
+
type: ['string', 'array'],
|
|
3852
|
+
items: {
|
|
3853
|
+
type: 'string'
|
|
3854
|
+
}
|
|
3279
3855
|
},
|
|
3280
3856
|
seriesColors: {
|
|
3281
|
-
description:
|
|
3857
|
+
description: 'Specify the colors used for data points. If the dataColors option is specified, the seriesColors option is ignored.',
|
|
3282
3858
|
type: 'array',
|
|
3283
3859
|
items: {
|
|
3284
3860
|
type: 'string',
|
|
@@ -3286,8 +3862,8 @@ var optionsSchema = {
|
|
|
3286
3862
|
},
|
|
3287
3863
|
default: visualization_color_palettes_1.VIZ_CATEGORICAL
|
|
3288
3864
|
},
|
|
3289
|
-
|
|
3290
|
-
description: 'Specify the fields to add to tooltips
|
|
3865
|
+
additionalTooltipFields: {
|
|
3866
|
+
description: 'Specify the fields to add to the default set of tooltips. Tooltips appear when you hover over data points. These fields and their corresponding values will be shown in addition to the ones displayed by default.',
|
|
3291
3867
|
type: 'array',
|
|
3292
3868
|
items: {
|
|
3293
3869
|
type: 'string'
|
|
@@ -3295,7 +3871,7 @@ var optionsSchema = {
|
|
|
3295
3871
|
default: []
|
|
3296
3872
|
},
|
|
3297
3873
|
resultLimit: {
|
|
3298
|
-
description: 'Specify the maximum number of data points
|
|
3874
|
+
description: 'Specify the maximum number of data points to render on the map. Adjust the value to improve performance.',
|
|
3299
3875
|
type: 'number',
|
|
3300
3876
|
default: 1000
|
|
3301
3877
|
}
|
|
@@ -3306,7 +3882,7 @@ var optionsSchema = {
|
|
|
3306
3882
|
scaleUnit: {
|
|
3307
3883
|
default: 'metric',
|
|
3308
3884
|
type: 'string',
|
|
3309
|
-
description: 'Specify
|
|
3885
|
+
description: 'Specify the scale unit to use.',
|
|
3310
3886
|
pattern: schemaUtils_1.getPattern(['metric', 'imperial'])
|
|
3311
3887
|
},
|
|
3312
3888
|
// TODO: choropleth map retain old design
|
|
@@ -3318,11 +3894,11 @@ var optionsSchema = {
|
|
|
3318
3894
|
showScale: {
|
|
3319
3895
|
default: true,
|
|
3320
3896
|
type: 'boolean',
|
|
3321
|
-
description: 'Specify whether the scale on the bottom left
|
|
3897
|
+
description: 'Specify whether to display the scale on the bottom left.'
|
|
3322
3898
|
},
|
|
3323
3899
|
baseLayerTileServer: {
|
|
3324
3900
|
type: 'string',
|
|
3325
|
-
description: 'Specify the
|
|
3901
|
+
description: 'Specify the URL for the set of tiles that make up the base map.'
|
|
3326
3902
|
},
|
|
3327
3903
|
baseLayerTileServerType: {
|
|
3328
3904
|
type: 'string',
|
|
@@ -3330,7 +3906,6 @@ var optionsSchema = {
|
|
|
3330
3906
|
pattern: schemaUtils_1.getPattern(['vector', 'raster'])
|
|
3331
3907
|
},
|
|
3332
3908
|
zoom: {
|
|
3333
|
-
default: 5,
|
|
3334
3909
|
description: 'Specify the zoom level of the map.',
|
|
3335
3910
|
type: 'number'
|
|
3336
3911
|
}
|
|
@@ -3381,25 +3956,29 @@ var editorConfig = [{
|
|
|
3381
3956
|
option: 'layers[0].latitude',
|
|
3382
3957
|
editor: 'editor.columnSelector',
|
|
3383
3958
|
editorProps: {
|
|
3384
|
-
dataSourceKey: 'primary'
|
|
3959
|
+
dataSourceKey: 'primary',
|
|
3960
|
+
shouldShowInternalFields: false
|
|
3385
3961
|
}
|
|
3386
3962
|
}], [{
|
|
3387
3963
|
label: i18n_1._('Longitude'),
|
|
3388
3964
|
option: 'layers[0].longitude',
|
|
3389
3965
|
editor: 'editor.columnSelector',
|
|
3390
3966
|
editorProps: {
|
|
3391
|
-
dataSourceKey: 'primary'
|
|
3967
|
+
dataSourceKey: 'primary',
|
|
3968
|
+
shouldShowInternalFields: false
|
|
3392
3969
|
}
|
|
3393
3970
|
}], [{
|
|
3394
3971
|
label: i18n_1._('Size'),
|
|
3395
3972
|
option: 'layers[0].bubbleSize',
|
|
3396
|
-
editor: 'editor.
|
|
3973
|
+
editor: 'editor.columnMultiSelector',
|
|
3397
3974
|
showEditor: function showEditor(_ref) {
|
|
3398
3975
|
var options = _ref.options;
|
|
3399
3976
|
return !(options.layers && options.layers.length && options.layers[0].type === 'marker');
|
|
3400
3977
|
},
|
|
3401
3978
|
editorProps: {
|
|
3402
|
-
dataSourceKey: 'primary'
|
|
3979
|
+
dataSourceKey: 'primary',
|
|
3980
|
+
shouldShowInternalFields: false,
|
|
3981
|
+
excludeByNames: ['latitude', 'longitude', 'geobin']
|
|
3403
3982
|
}
|
|
3404
3983
|
}]]
|
|
3405
3984
|
}];
|
|
@@ -3424,6 +4003,7 @@ var config = {
|
|
|
3424
4003
|
* viz icon
|
|
3425
4004
|
*/
|
|
3426
4005
|
icon: visualization_icons_1.Map,
|
|
4006
|
+
placeholderIcon: placeholders_1.Map,
|
|
3427
4007
|
dataContract: dataContract,
|
|
3428
4008
|
size: size,
|
|
3429
4009
|
defaultContext: defaultContext,
|
|
@@ -3432,6 +4012,9 @@ var config = {
|
|
|
3432
4012
|
events: {
|
|
3433
4013
|
'map.load': {
|
|
3434
4014
|
description: 'triggered when map is fully loaded'
|
|
4015
|
+
},
|
|
4016
|
+
'map.click': {
|
|
4017
|
+
description: 'trigger when user clicks map layer'
|
|
3435
4018
|
}
|
|
3436
4019
|
},
|
|
3437
4020
|
supports: [VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS, VizBehavior_1.VizBehavior.EVENTS, VizBehavior_1.VizBehavior.PLACEHOLDER],
|