@splunk/visualizations 24.7.0 → 25.0.0

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.
Files changed (285) hide show
  1. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_Tooltip_ChoroplethTooltip.png +0 -0
  2. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_Tooltip_ChoroplethTooltip_with_additional_fields.png +0 -0
  3. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_choropleth_layer.png +0 -0
  4. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Area_Editor.png +0 -0
  5. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bar_Editor.png +0 -0
  6. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bubble_Editor.png +0 -0
  7. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_ChoroplethSvg_Editor.png +0 -0
  8. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Column_Editor.png +0 -0
  9. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Ellipse_Editor.png +0 -0
  10. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_FillerGauge_Editor.png +0 -0
  11. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Image_Editor.png +0 -0
  12. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Line_Editor.png +0 -0
  13. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_LinkGraph_Editor.png +0 -0
  14. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
  15. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Markdown_Editor.png +0 -0
  16. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_MarkerGauge_Editor.png +0 -0
  17. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Parallel_Coordinates_Editor.png +0 -0
  18. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Pie_Editor.png +0 -0
  19. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Punchcard_Editor.png +0 -0
  20. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Rectangle_Editor.png +0 -0
  21. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Sankey_Editor.png +0 -0
  22. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Scatter_Editor.png +0 -0
  23. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Editor.png +0 -0
  24. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Icon_Editor.png +0 -0
  25. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Radial_Editor.png +0 -0
  26. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Table_Editor.png +0 -0
  27. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Background_Color_grey.png +0 -0
  28. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Basic_Bubble.png +0 -0
  29. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Bubble_Size_Max_90.png +0 -0
  30. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Bubble_Size_Method_area_default.png +0 -0
  31. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Bubble_Size_Method_diameter.png +0 -0
  32. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Bubble_Size_Min_40.png +0 -0
  33. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Result_Limit_0_Number_of_Results_30.png +0 -0
  34. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Result_Limit_10_Number_of_Results_30.png +0 -0
  35. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Result_Limit_3a_invalid_Number_of_Results_30.png +0 -0
  36. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Result_Limit_50_Number_of_Results_30.png +0 -0
  37. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_X_Axis_Extend_Range_false.png +0 -0
  38. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_X_Axis_Extend_Range_true_default.png +0 -0
  39. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_X_Axis_Minor_Grid_true.png +0 -0
  40. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_X_Axis_With_Zero_false_default.png +0 -0
  41. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_X_Axis_With_Zero_true.png +0 -0
  42. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_Extend_Range_false.png +0 -0
  43. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_Extend_Range_true_default.png +0 -0
  44. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_Major_Grid_false.png +0 -0
  45. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_Minor_Grid_true.png +0 -0
  46. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_With_Zero_false_default.png +0 -0
  47. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Show_Y_Axis_With_Zero_true.png +0 -0
  48. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Label_Rotation_45.png +0 -0
  49. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Label_Rotation_90.png +0 -0
  50. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Label_Rotation_negative_45.png +0 -0
  51. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Label_Rotation_negative_90.png +0 -0
  52. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Label_Visibility_and_Y_Axis_Label_Visibility_hide.png +0 -0
  53. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Line_Visibility_hide_default.png +0 -0
  54. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Line_Visibility_show.png +0 -0
  55. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Major_Tick_Interval_6.png +0 -0
  56. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Major_Tick_Size_15_Minor_Tick_Size_10.png +0 -0
  57. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Major_Tick_Visibility_hide.png +0 -0
  58. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Major_Tick_Visibility_show.png +0 -0
  59. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Maximum_Number_14.png +0 -0
  60. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Minimum_Number_10.png +0 -0
  61. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Minor_Tick_Visibility_hide.png +0 -0
  62. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Minor_Tick_Visibility_show.png +0 -0
  63. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_X_Axis_Scale_log.png +0 -0
  64. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Abbreviation_auto_default.png +0 -0
  65. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Abbreviation_off.png +0 -0
  66. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Line_Visibility_show.png +0 -0
  67. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Major_Tick_Interval_150.png +0 -0
  68. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Major_Tick_Size_15_Minor_Tick_Size_10.png +0 -0
  69. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Major_Tick_Visibility_hide.png +0 -0
  70. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Major_Tick_Visibility_show.png +0 -0
  71. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Maximum_Number_1500.png +0 -0
  72. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Minimum_Number_500.png +0 -0
  73. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Minor_Tick_Visibility_hide.png +0 -0
  74. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Minor_Tick_Visibility_show.png +0 -0
  75. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Scale_log.png +0 -0
  76. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_and_X_Axis_Title_Text_hide.png +0 -0
  77. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_and_X_Axis_Title_Text_specified.png +0 -0
  78. package/.loki/reference/chrome_docker_Visualizations_Column_Column_Chart_Overlay_on_Multiple_Overlay_Fields_with_space_specified.png +0 -0
  79. package/.loki/reference/chrome_docker_Visualizations_Column_Column_Chart_Overlay_on_Overlay_Field_with_space_specified.png +0 -0
  80. package/.loki/reference/chrome_docker_Visualizations_Column_Column_Y2_Axis_Mapped_Field_With_Space_specified.png +0 -0
  81. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Choropleth_Layer.png +0 -0
  82. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Choropleth_Layer_Opacities_scaled_to_be_less_than_max_of_0_8.png +0 -0
  83. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Choropleth_Layer_Result_Limit_Set_To_1.png +0 -0
  84. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Choropleth_Layer_String_GeoJson_Data.png +0 -0
  85. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Choropleth_Layer_With_additional_fields.png +0 -0
  86. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Background_Color_af575a.png +0 -0
  87. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Basic_Markdown.png +0 -0
  88. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Begin_with_Text_Instead_of_Header.png +0 -0
  89. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Color_purple.png +0 -0
  90. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Size_extraLarge.png +0 -0
  91. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Background_Color_grey.png +0 -0
  92. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Basic_Scatter.png +0 -0
  93. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Marker_Size_7.png +0 -0
  94. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_X_Axis_Extend_Range_false.png +0 -0
  95. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_X_Axis_Extend_Range_true_default.png +0 -0
  96. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_X_Axis_Minor_Grid_true.png +0 -0
  97. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_X_Axis_With_Zero_false_default.png +0 -0
  98. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_X_Axis_With_Zero_true.png +0 -0
  99. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_Extend_Range_false.png +0 -0
  100. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_Extend_Range_true_default.png +0 -0
  101. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_Major_Grid_false.png +0 -0
  102. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_Minor_Grid_true.png +0 -0
  103. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_With_Zero_false_default.png +0 -0
  104. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Show_Y_Axis_With_Zero_true.png +0 -0
  105. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Label_Rotation_45.png +0 -0
  106. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Label_Rotation_90.png +0 -0
  107. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Label_Rotation_negative_45.png +0 -0
  108. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Label_Rotation_negative_90.png +0 -0
  109. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Label_Visibility_and_Y_Axis_Label_Visibility_hide.png +0 -0
  110. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Line_Visibility_hide_default.png +0 -0
  111. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Line_Visibility_show.png +0 -0
  112. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Major_Tick_Interval_6.png +0 -0
  113. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Major_Tick_Size_15_X_Axis_Minor_Tick_Size_10.png +0 -0
  114. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Major_Tick_Visibility_hide.png +0 -0
  115. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Major_Tick_Visibility_show.png +0 -0
  116. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Maximum_Number_14.png +0 -0
  117. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Minimum_Number_10.png +0 -0
  118. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Minor_Tick_Visibility_hide.png +0 -0
  119. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Minor_Tick_Visibility_show.png +0 -0
  120. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Scale_log.png +0 -0
  121. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Title_Text_and_Y_Axis_Title_Text_hide.png +0 -0
  122. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_X_Axis_Title_Text_and_Y_Axis_Title_Text_specified.png +0 -0
  123. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Line_Visibility_show.png +0 -0
  124. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Major_Tick_Interval_150.png +0 -0
  125. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Major_Tick_Size_15_Y_Axis_Minor_Tick_Size_10.png +0 -0
  126. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Major_Tick_Visibility_hide.png +0 -0
  127. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Major_Tick_Visibility_show.png +0 -0
  128. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Maximum_Number_1000.png +0 -0
  129. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Minimum_Number_500.png +0 -0
  130. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Minor_Tick_Visibility_hide.png +0 -0
  131. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Minor_Tick_Visibility_show.png +0 -0
  132. package/.loki/reference/chrome_docker_Visualizations_Scatter_Scatter_Y_Axis_Scale_log.png +0 -0
  133. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Basic_Single_Value_Icon.png +0 -0
  134. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Change_Icon_Color_For_A_Remote_Icon.png +0 -0
  135. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_The_Icon_As_A_Remote_Icon.png +0 -0
  136. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_backgroundColor_based_on_the_majorValue.png +0 -0
  137. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_icon_color_based_on_the_majorValue.png +0 -0
  138. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Set_the_majorColor_based_on_the_majorValue.png +0 -0
  139. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Mixed_Type_Series_Data.png +0 -0
  140. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Time_Type_Series_Data.png +0 -0
  141. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Background_From_Major_Value.png +0 -0
  142. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Background_From_Trend_Value.png +0 -0
  143. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Basic_Single_Value_Radial.png +0 -0
  144. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Major_Value_Color.png +0 -0
  145. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Major_Value_Color_By_Trend_Value.png +0 -0
  146. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Max_Value_1000.png +0 -0
  147. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Radial_Single_Value_Radial_Radial_Color_By_Major_Value.png +0 -0
  148. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Basic_Single_Value.png +0 -0
  149. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Change_The_Color_Of_Major_Value_Based_On_Its_Value.png +0 -0
  150. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Background_Color_Based_On_The_Major_Value.png +0 -0
  151. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Background_Color_Based_On_The_Trend_Value.png +0 -0
  152. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Color_Of_Major_Value_Based_On_The_Trend_Value.png +0 -0
  153. 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
  154. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Set_The_Major_Value_Based_On_String_Type_Data.png +0 -0
  155. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Trend_Index_Out_Of_Range.png +0 -0
  156. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Mixed_Type_Series_Data.png +0 -0
  157. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Time_Type_Series_Data.png +0 -0
  158. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Align_Right.png +0 -0
  159. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Column_Width_Auto_Expand_Last_Column.png +0 -0
  160. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Font_Monospace.png +0 -0
  161. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Format_Number_Adv.png +0 -0
  162. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Show_Internal_Fields_false.png +0 -0
  163. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Show_Internal_Fields_true_default.png +0 -0
  164. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Time_Formatting.png +0 -0
  165. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Time_Zone_Time_Formatting.png +0 -0
  166. package/Area.config.js +1119 -241
  167. package/Area.config.js.map +1 -1
  168. package/Area.js +1241 -402
  169. package/Area.js.map +1 -1
  170. package/Bar.config.js +1089 -153
  171. package/Bar.config.js.map +1 -1
  172. package/Bar.js +1262 -365
  173. package/Bar.js.map +1 -1
  174. package/Bubble.config.js +702 -60
  175. package/Bubble.config.js.map +1 -1
  176. package/Bubble.js +806 -203
  177. package/Bubble.js.map +1 -1
  178. package/ChoroplethSvg.config.js +62 -38
  179. package/ChoroplethSvg.config.js.map +1 -1
  180. package/ChoroplethSvg.js +168 -178
  181. package/ChoroplethSvg.js.map +1 -1
  182. package/Column.config.js +1059 -170
  183. package/Column.config.js.map +1 -1
  184. package/Column.js +1234 -384
  185. package/Column.js.map +1 -1
  186. package/Ellipse.config.js +55 -31
  187. package/Ellipse.config.js.map +1 -1
  188. package/Ellipse.js +135 -145
  189. package/Ellipse.js.map +1 -1
  190. package/FillerGauge.config.js +67 -43
  191. package/FillerGauge.config.js.map +1 -1
  192. package/FillerGauge.js +157 -172
  193. package/FillerGauge.js.map +1 -1
  194. package/Image.config.js +52 -25
  195. package/Image.config.js.map +1 -1
  196. package/Image.js +132 -140
  197. package/Image.js.map +1 -1
  198. package/Line.config.js +1035 -108
  199. package/Line.config.js.map +1 -1
  200. package/Line.js +1199 -311
  201. package/Line.js.map +1 -1
  202. package/LinkGraph.config.js +78 -58
  203. package/LinkGraph.config.js.map +1 -1
  204. package/LinkGraph.js +179 -194
  205. package/LinkGraph.js.map +1 -1
  206. package/Map.config.js +787 -78
  207. package/Map.config.js.map +1 -1
  208. package/Map.js +846 -352
  209. package/Map.js.map +1 -1
  210. package/Markdown.config.js +73 -48
  211. package/Markdown.config.js.map +1 -1
  212. package/Markdown.js +271 -259
  213. package/Markdown.js.map +1 -1
  214. package/MarkerGauge.config.js +77 -50
  215. package/MarkerGauge.config.js.map +1 -1
  216. package/MarkerGauge.js +2079 -1987
  217. package/MarkerGauge.js.map +1 -1
  218. package/ParallelCoordinates.config.js +75 -48
  219. package/ParallelCoordinates.config.js.map +1 -1
  220. package/ParallelCoordinates.js +166 -181
  221. package/ParallelCoordinates.js.map +1 -1
  222. package/Pie.config.js +77 -50
  223. package/Pie.config.js.map +1 -1
  224. package/Pie.js +1139 -1042
  225. package/Pie.js.map +1 -1
  226. package/Punchcard.config.js +76 -49
  227. package/Punchcard.config.js.map +1 -1
  228. package/Punchcard.js +196 -211
  229. package/Punchcard.js.map +1 -1
  230. package/Rectangle.config.js +83 -56
  231. package/Rectangle.config.js.map +1 -1
  232. package/Rectangle.js +256 -264
  233. package/Rectangle.js.map +1 -1
  234. package/Sankey.config.js +82 -55
  235. package/Sankey.config.js.map +1 -1
  236. package/Sankey.js +190 -205
  237. package/Sankey.js.map +1 -1
  238. package/Scatter.config.js +790 -135
  239. package/Scatter.config.js.map +1 -1
  240. package/Scatter.js +1072 -485
  241. package/Scatter.js.map +1 -1
  242. package/SingleValue.config.js +85 -56
  243. package/SingleValue.config.js.map +1 -1
  244. package/SingleValue.js +415 -411
  245. package/SingleValue.js.map +1 -1
  246. package/SingleValueBasic.js +37 -25
  247. package/SingleValueBasic.js.map +1 -1
  248. package/SingleValueIcon.config.js +81 -57
  249. package/SingleValueIcon.config.js.map +1 -1
  250. package/SingleValueIcon.js +195 -211
  251. package/SingleValueIcon.js.map +1 -1
  252. package/SingleValueRadial.config.js +80 -51
  253. package/SingleValueRadial.config.js.map +1 -1
  254. package/SingleValueRadial.js +342 -338
  255. package/SingleValueRadial.js.map +1 -1
  256. package/Table.config.js +56 -36
  257. package/Table.config.js.map +1 -1
  258. package/Table.js +1610 -1553
  259. package/Table.js.map +1 -1
  260. package/common/Charting.js +10 -10
  261. package/common/Charting.js.map +1 -1
  262. package/common/ChartingApi.js +2 -2
  263. package/common/ChartingApi.js.map +1 -1
  264. package/common/EventsDoc.js +3 -3
  265. package/common/EventsDoc.js.map +1 -1
  266. package/common/OptionsDoc.js +49 -21
  267. package/common/OptionsDoc.js.map +1 -1
  268. package/common/SplunkVisualization.js +4 -4
  269. package/common/SplunkVisualization.js.map +1 -1
  270. package/common/ThemesDoc.js +2 -2
  271. package/common/chartingUtils.js +2 -2
  272. package/common/gaugeUtils.js +2 -2
  273. package/common/utils/configUtils.js +30 -4
  274. package/common/utils/configUtils.js.map +1 -1
  275. package/common/utils/hocUtils.js +26 -56
  276. package/common/utils/hocUtils.js.map +1 -1
  277. package/common/utils/singleValueUtils.js +4 -2
  278. package/common/utils/singleValueUtils.js.map +1 -1
  279. package/common/utils/testHelper.js +8 -8
  280. package/common/utils/testHelper.js.map +1 -1
  281. package/common/withDashboardViz.js +32 -68
  282. package/common/withDashboardViz.js.map +1 -1
  283. package/package.json +11 -11
  284. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Maximum_Number_800.png +0 -0
  285. package/.loki/reference/chrome_docker_Visualizations_Bubble_Bubble_Y_Axis_Minimum_Number_300.png +0 -0
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 = 194);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 196);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ([
@@ -164,6 +164,8 @@ var VizBehavior;
164
164
  "use strict";
165
165
 
166
166
 
167
+ var _toConsumableArray = __webpack_require__(9);
168
+
167
169
  var _defineProperty = __webpack_require__(7);
168
170
 
169
171
  var __rest = this && this.__rest || function (s, e) {
@@ -182,11 +184,11 @@ var __rest = this && this.__rest || function (s, e) {
182
184
  Object.defineProperty(exports, "__esModule", {
183
185
  value: true
184
186
  });
185
- exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
187
+ exports.insertLayout = exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
186
188
 
187
189
  var lodash_1 = __webpack_require__(2);
188
190
 
189
- var schemaUtils_1 = __webpack_require__(15);
191
+ var schemaUtils_1 = __webpack_require__(16);
190
192
 
191
193
  var VizBehavior_1 = __webpack_require__(5);
192
194
 
@@ -347,6 +349,24 @@ function generatePrecisionValues(numPrecisionValues) {
347
349
  }
348
350
 
349
351
  exports.generatePrecisionValues = generatePrecisionValues;
352
+ /**
353
+ * insert layout in layout array, return a new layout array instead of updating the original
354
+ *
355
+ * @param {EditorLayoutConfig[][]} layout - editor layout
356
+ * @param {Number} index - the index to insert layout item(s)
357
+ * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert
358
+ * @returns {EditorLayoutConfig[][]} new editor layout with insertion
359
+ */
360
+
361
+ var insertLayout = function insertLayout(layout, index) {
362
+ for (var _len = arguments.length, layoutItems = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
363
+ layoutItems[_key - 2] = arguments[_key];
364
+ }
365
+
366
+ return [].concat(_toConsumableArray(layout.slice(0, index)), layoutItems, _toConsumableArray(layout.slice(index)));
367
+ };
368
+
369
+ exports.insertLayout = insertLayout;
350
370
 
351
371
  /***/ }),
352
372
  /* 7 */
@@ -361,14 +381,16 @@ module.exports = require("@babel/runtime/helpers/defineProperty");
361
381
  "use strict";
362
382
 
363
383
 
364
- var _typeof = __webpack_require__(21);
384
+ var _typeof = __webpack_require__(23);
365
385
 
366
386
  Object.defineProperty(exports, "__esModule", {
367
387
  value: true
368
388
  });
369
- exports.findClosestMatchFromDefaultList = exports.deepMergeWithArrayPrimitiveOverrides = exports.extendStaticWrapperProps = void 0;
389
+ exports.deepMergeWithArrayPrimitiveOverrides = exports.extendStaticWrapperProps = void 0;
370
390
 
371
391
  var lodash_1 = __webpack_require__(2);
392
+
393
+ var mapUtils_1 = __webpack_require__(41);
372
394
  /**
373
395
  * @method extendStaticWrapperProps
374
396
  * @param {Object} props
@@ -423,7 +445,7 @@ var deepMergeWithArrayPrimitiveOverrides = function deepMergeWithArrayPrimitiveO
423
445
  // If option is an array of objects
424
446
  for (var i = 0; i < clone[sourceKey].length; i += 1) {
425
447
  if (_typeof(clone[sourceKey][i]) === 'object') {
426
- var closestMatchIdx = exports.findClosestMatchFromDefaultList(sourceToApply[sourceKey], clone[sourceKey][i]);
448
+ var closestMatchIdx = mapUtils_1.findClosestMatchFromDefaultList(sourceToApply[sourceKey], clone[sourceKey][i]);
427
449
 
428
450
  if (closestMatchIdx > -1) {
429
451
  clone[sourceKey][i] = exports.deepMergeWithArrayPrimitiveOverrides(clone[sourceKey][i], sourceToApply[sourceKey][closestMatchIdx]);
@@ -437,77 +459,39 @@ var deepMergeWithArrayPrimitiveOverrides = function deepMergeWithArrayPrimitiveO
437
459
  };
438
460
 
439
461
  exports.deepMergeWithArrayPrimitiveOverrides = deepMergeWithArrayPrimitiveOverrides;
440
- /**
441
- * Finds the closest matching object from the list, which has the max same key value pairs.
442
- * Returns the index of match if found, or -1
443
- * For eg :-
444
- const list = [{
445
- type: "marker",
446
- lat: "value1"
447
- }, {
448
- type: "bubble",
449
- size: "value2"
450
- }];
451
-
452
- const obj = {
453
- type: 'bubble'
454
- };
455
-
456
- findClosestMatch(list, obj) -> returns index 1.
457
- */
458
-
459
- var findClosestMatchFromDefaultList = function findClosestMatchFromDefaultList(searchList, inputObj) {
460
- if (!Array.isArray(searchList) || searchList.length === 0) {
461
- return -1;
462
- }
463
-
464
- var keys = Object.keys(inputObj);
465
- var maxMatchCnt = 0;
466
- var maxMatchIdx = 0;
467
- searchList.forEach(function (item, idx) {
468
- var matchCnt = 0;
469
- keys.forEach(function (key) {
470
- if (item[key] === inputObj[key]) {
471
- matchCnt += 1;
472
- }
473
- });
474
-
475
- if (Math.max(maxMatchCnt, matchCnt) > maxMatchCnt) {
476
- maxMatchCnt = matchCnt;
477
- maxMatchIdx = idx;
478
- }
479
- });
480
- return maxMatchIdx;
481
- };
482
-
483
- exports.findClosestMatchFromDefaultList = findClosestMatchFromDefaultList;
484
462
 
485
463
  /***/ }),
486
464
  /* 9 */
487
465
  /***/ (function(module, exports) {
488
466
 
489
- module.exports = require("@splunk/visualizations-shared/Message");
467
+ module.exports = require("@babel/runtime/helpers/toConsumableArray");
490
468
 
491
469
  /***/ }),
492
470
  /* 10 */
493
471
  /***/ (function(module, exports) {
494
472
 
495
- module.exports = require("@babel/runtime/helpers/classCallCheck");
473
+ module.exports = require("@splunk/themes/variables");
496
474
 
497
475
  /***/ }),
498
476
  /* 11 */
499
477
  /***/ (function(module, exports) {
500
478
 
501
- module.exports = require("@splunk/themes/variables");
479
+ module.exports = require("@splunk/visualizations-shared/Message");
502
480
 
503
481
  /***/ }),
504
482
  /* 12 */
505
483
  /***/ (function(module, exports) {
506
484
 
507
- module.exports = require("@splunk/visualizations-shared/colorUtils");
485
+ module.exports = require("@babel/runtime/helpers/classCallCheck");
508
486
 
509
487
  /***/ }),
510
488
  /* 13 */
489
+ /***/ (function(module, exports) {
490
+
491
+ module.exports = require("@splunk/visualizations-shared/colorUtils");
492
+
493
+ /***/ }),
494
+ /* 14 */
511
495
  /***/ (function(module, exports, __webpack_require__) {
512
496
 
513
497
  "use strict";
@@ -521,11 +505,11 @@ var React = __webpack_require__(1);
521
505
 
522
506
  var styled_components_1 = __webpack_require__(4);
523
507
 
524
- var SizeAwareWrapper_1 = __webpack_require__(17);
508
+ var SizeAwareWrapper_1 = __webpack_require__(18);
525
509
 
526
- var style_1 = __webpack_require__(14);
510
+ var style_1 = __webpack_require__(15);
527
511
 
528
- var colorUtils_1 = __webpack_require__(12);
512
+ var colorUtils_1 = __webpack_require__(13);
529
513
 
530
514
  var Item = styled_components_1.default.div.attrs(function (_ref) {
531
515
  var width = _ref.width;
@@ -582,7 +566,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
582
566
 
583
567
  return React.createElement(FixSizeItem, {
584
568
  "data-test": "fix-size-item",
585
- "data-splunk-visualization-version": "24.7.0 - c7389a161",
569
+ "data-splunk-visualization-version": "25.0.0 - 5e0f30e5a",
586
570
  width: width,
587
571
  height: height,
588
572
  backgroundColor: backgroundColor
@@ -603,47 +587,47 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
603
587
  exports.default = withFixedSizeContainer;
604
588
 
605
589
  /***/ }),
606
- /* 14 */
590
+ /* 15 */
607
591
  /***/ (function(module, exports) {
608
592
 
609
593
  module.exports = require("@splunk/visualizations-shared/style");
610
594
 
611
595
  /***/ }),
612
- /* 15 */
596
+ /* 16 */
613
597
  /***/ (function(module, exports) {
614
598
 
615
599
  module.exports = require("@splunk/visualizations-shared/schemaUtils");
616
600
 
617
601
  /***/ }),
618
- /* 16 */
602
+ /* 17 */
619
603
  /***/ (function(module, exports) {
620
604
 
621
605
  module.exports = require("@babel/runtime/helpers/createClass");
622
606
 
623
607
  /***/ }),
624
- /* 17 */
608
+ /* 18 */
625
609
  /***/ (function(module, exports) {
626
610
 
627
611
  module.exports = require("@splunk/visualizations-shared/SizeAwareWrapper");
628
612
 
629
613
  /***/ }),
630
- /* 18 */,
631
- /* 19 */
614
+ /* 19 */,
615
+ /* 20 */,
616
+ /* 21 */
632
617
  /***/ (function(module, exports) {
633
618
 
634
619
  module.exports = require("@splunk/visualization-context/TimezoneContext");
635
620
 
636
621
  /***/ }),
637
- /* 20 */,
638
- /* 21 */
622
+ /* 22 */,
623
+ /* 23 */
639
624
  /***/ (function(module, exports) {
640
625
 
641
626
  module.exports = require("@babel/runtime/helpers/typeof");
642
627
 
643
628
  /***/ }),
644
- /* 22 */,
645
- /* 23 */,
646
- /* 24 */
629
+ /* 24 */,
630
+ /* 25 */
647
631
  /***/ (function(module, exports, __webpack_require__) {
648
632
 
649
633
  "use strict";
@@ -676,7 +660,7 @@ var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
676
660
  exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
677
661
 
678
662
  /***/ }),
679
- /* 25 */
663
+ /* 26 */
680
664
  /***/ (function(module, exports, __webpack_require__) {
681
665
 
682
666
  "use strict";
@@ -695,9 +679,9 @@ var lodash_1 = __webpack_require__(2);
695
679
 
696
680
  var i18n_1 = __webpack_require__(3);
697
681
 
698
- var Message_1 = __webpack_require__(9);
682
+ var Message_1 = __webpack_require__(11);
699
683
 
700
- var FixedSizeContainer_1 = __webpack_require__(13);
684
+ var FixedSizeContainer_1 = __webpack_require__(14);
701
685
  /**
702
686
  * @method shouldShowIconPlaceholder
703
687
  * @param {object} dataSources
@@ -767,7 +751,7 @@ IconPlaceholder.defaultProps = {
767
751
  exports.default = FixedSizeContainer_1.default(IconPlaceholder);
768
752
 
769
753
  /***/ }),
770
- /* 26 */
754
+ /* 27 */
771
755
  /***/ (function(module, exports, __webpack_require__) {
772
756
 
773
757
  "use strict";
@@ -784,7 +768,7 @@ var T = __webpack_require__(0);
784
768
 
785
769
  var lodash_1 = __webpack_require__(2);
786
770
 
787
- var DataSource_1 = __webpack_require__(36);
771
+ var DataSource_1 = __webpack_require__(37);
788
772
 
789
773
  exports.SortParamsPropTypes = T.shape({
790
774
  currentSortKey: T.string,
@@ -837,7 +821,7 @@ var getSortingParams = function getSortingParams(_ref) {
837
821
  exports.getSortingParams = getSortingParams;
838
822
 
839
823
  /***/ }),
840
- /* 27 */
824
+ /* 28 */
841
825
  /***/ (function(module, exports, __webpack_require__) {
842
826
 
843
827
  "use strict";
@@ -901,7 +885,7 @@ var getPaginationParams = function getPaginationParams(_ref) {
901
885
  exports.getPaginationParams = getPaginationParams;
902
886
 
903
887
  /***/ }),
904
- /* 28 */
888
+ /* 29 */
905
889
  /***/ (function(module, exports, __webpack_require__) {
906
890
 
907
891
  "use strict";
@@ -929,7 +913,7 @@ var VizCategory;
929
913
  })(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
930
914
 
931
915
  /***/ }),
932
- /* 29 */
916
+ /* 30 */
933
917
  /***/ (function(module, exports, __webpack_require__) {
934
918
 
935
919
  "use strict";
@@ -943,35 +927,35 @@ var React = __webpack_require__(1);
943
927
 
944
928
  var lodash_1 = __webpack_require__(2);
945
929
 
946
- var getSettingsFromThemedProps_1 = __webpack_require__(30);
930
+ var getSettingsFromThemedProps_1 = __webpack_require__(31);
947
931
 
948
- var Options_1 = __webpack_require__(31);
932
+ var Options_1 = __webpack_require__(32);
949
933
 
950
- var SanitizeProps_1 = __webpack_require__(32);
934
+ var SanitizeProps_1 = __webpack_require__(33);
951
935
 
952
- var TimezoneContext_1 = __webpack_require__(19);
936
+ var TimezoneContext_1 = __webpack_require__(21);
953
937
 
954
- var moment_1 = __webpack_require__(33);
938
+ var moment_1 = __webpack_require__(34);
955
939
 
956
940
  var styled_components_1 = __webpack_require__(4);
957
941
 
958
- var SplunkVisualization_1 = __webpack_require__(34);
942
+ var SplunkVisualization_1 = __webpack_require__(35);
959
943
 
960
944
  var VizBehavior_1 = __webpack_require__(5);
961
945
 
962
- var getSorting_1 = __webpack_require__(26);
946
+ var getSorting_1 = __webpack_require__(27);
963
947
 
964
- var getPagination_1 = __webpack_require__(27);
948
+ var getPagination_1 = __webpack_require__(28);
965
949
 
966
- var useDeepMemo_1 = __webpack_require__(37);
950
+ var useDeepMemo_1 = __webpack_require__(38);
967
951
 
968
- var JSONSchemaUtils_1 = __webpack_require__(24);
952
+ var JSONSchemaUtils_1 = __webpack_require__(25);
969
953
 
970
- var MissingPropsMessage_1 = __webpack_require__(38);
954
+ var MissingPropsMessage_1 = __webpack_require__(39);
971
955
 
972
- var withEditModeCover_1 = __webpack_require__(39);
956
+ var withEditModeCover_1 = __webpack_require__(40);
973
957
 
974
- var withPlaceholder_1 = __webpack_require__(40);
958
+ var withPlaceholder_1 = __webpack_require__(42);
975
959
 
976
960
  var hocUtils_1 = __webpack_require__(8);
977
961
  /**
@@ -1174,37 +1158,37 @@ var withDashboardViz = function withDashboardViz(opts) {
1174
1158
  exports.default = withDashboardViz;
1175
1159
 
1176
1160
  /***/ }),
1177
- /* 30 */
1161
+ /* 31 */
1178
1162
  /***/ (function(module, exports) {
1179
1163
 
1180
1164
  module.exports = require("@splunk/themes/getSettingsFromThemedProps");
1181
1165
 
1182
1166
  /***/ }),
1183
- /* 31 */
1167
+ /* 32 */
1184
1168
  /***/ (function(module, exports) {
1185
1169
 
1186
1170
  module.exports = require("@splunk/visualization-encoding/Options");
1187
1171
 
1188
1172
  /***/ }),
1189
- /* 32 */
1173
+ /* 33 */
1190
1174
  /***/ (function(module, exports) {
1191
1175
 
1192
1176
  module.exports = require("@splunk/visualizations-shared/SanitizeProps");
1193
1177
 
1194
1178
  /***/ }),
1195
- /* 33 */
1179
+ /* 34 */
1196
1180
  /***/ (function(module, exports) {
1197
1181
 
1198
1182
  module.exports = require("@splunk/moment");
1199
1183
 
1200
1184
  /***/ }),
1201
- /* 34 */
1185
+ /* 35 */
1202
1186
  /***/ (function(module, exports, __webpack_require__) {
1203
1187
 
1204
1188
  "use strict";
1205
1189
 
1206
1190
 
1207
- var _classCallCheck = __webpack_require__(10);
1191
+ var _classCallCheck = __webpack_require__(12);
1208
1192
 
1209
1193
  Object.defineProperty(exports, "__esModule", {
1210
1194
  value: true
@@ -1216,7 +1200,7 @@ var T = __webpack_require__(0);
1216
1200
 
1217
1201
  var lodash_1 = __webpack_require__(2);
1218
1202
 
1219
- var VizActionHandler_1 = __webpack_require__(35); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
1203
+ var VizActionHandler_1 = __webpack_require__(36); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
1220
1204
 
1221
1205
 
1222
1206
  exports.INITIAL_WIDTH = 250;
@@ -1349,15 +1333,15 @@ SplunkVisualization.defaultProps = {
1349
1333
  exports.default = SplunkVisualization;
1350
1334
 
1351
1335
  /***/ }),
1352
- /* 35 */
1336
+ /* 36 */
1353
1337
  /***/ (function(module, exports, __webpack_require__) {
1354
1338
 
1355
1339
  "use strict";
1356
1340
 
1357
1341
 
1358
- var _classCallCheck = __webpack_require__(10);
1342
+ var _classCallCheck = __webpack_require__(12);
1359
1343
 
1360
- var _createClass = __webpack_require__(16);
1344
+ var _createClass = __webpack_require__(17);
1361
1345
 
1362
1346
  Object.defineProperty(exports, "__esModule", {
1363
1347
  value: true
@@ -1386,7 +1370,7 @@ var DefaultVizActionHandler = /*#__PURE__*/function () {
1386
1370
  exports.DefaultVizActionHandler = DefaultVizActionHandler;
1387
1371
 
1388
1372
  /***/ }),
1389
- /* 36 */
1373
+ /* 37 */
1390
1374
  /***/ (function(module, exports, __webpack_require__) {
1391
1375
 
1392
1376
  "use strict";
@@ -1399,7 +1383,7 @@ exports.validSortDirs = void 0;
1399
1383
  exports.validSortDirs = ['asc', 'desc', 'none'];
1400
1384
 
1401
1385
  /***/ }),
1402
- /* 37 */
1386
+ /* 38 */
1403
1387
  /***/ (function(module, exports, __webpack_require__) {
1404
1388
 
1405
1389
  "use strict";
@@ -1444,7 +1428,7 @@ var useDeepMemo = function useDeepMemo(fn, dependencies) {
1444
1428
  exports.useDeepMemo = useDeepMemo;
1445
1429
 
1446
1430
  /***/ }),
1447
- /* 38 */
1431
+ /* 39 */
1448
1432
  /***/ (function(module, exports, __webpack_require__) {
1449
1433
 
1450
1434
  "use strict";
@@ -1461,9 +1445,9 @@ var T = __webpack_require__(0);
1461
1445
 
1462
1446
  var i18n_1 = __webpack_require__(3);
1463
1447
 
1464
- var Message_1 = __webpack_require__(9);
1448
+ var Message_1 = __webpack_require__(11);
1465
1449
 
1466
- var FixedSizeContainer_1 = __webpack_require__(13);
1450
+ var FixedSizeContainer_1 = __webpack_require__(14);
1467
1451
  /**
1468
1452
  * @method isMissing
1469
1453
  * @param {any} v
@@ -1524,7 +1508,7 @@ exports.MissingPropsMessage.defaultProps = {
1524
1508
  exports.default = FixedSizeContainer_1.default(exports.MissingPropsMessage);
1525
1509
 
1526
1510
  /***/ }),
1527
- /* 39 */
1511
+ /* 40 */
1528
1512
  /***/ (function(module, exports, __webpack_require__) {
1529
1513
 
1530
1514
  "use strict";
@@ -1545,7 +1529,7 @@ var Cover = styled_components_1.default.div.withConfig({
1545
1529
  componentId: "sc-1gsbnxb-0"
1546
1530
  })(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
1547
1531
  var Blocker = styled_components_1.default.div.attrs({
1548
- 'data-splunk-visualization-version': "24.7.0 - c7389a161"
1532
+ 'data-splunk-visualization-version': "25.0.0 - 5e0f30e5a"
1549
1533
  }).withConfig({
1550
1534
  displayName: "withEditModeCover__Blocker",
1551
1535
  componentId: "sc-1gsbnxb-1"
@@ -1576,7 +1560,13 @@ var withEditModeCover = function withEditModeCover(Visualization, disableEditMod
1576
1560
  exports.default = withEditModeCover;
1577
1561
 
1578
1562
  /***/ }),
1579
- /* 40 */
1563
+ /* 41 */
1564
+ /***/ (function(module, exports) {
1565
+
1566
+ module.exports = require("@splunk/visualizations-shared/mapUtils");
1567
+
1568
+ /***/ }),
1569
+ /* 42 */
1580
1570
  /***/ (function(module, exports, __webpack_require__) {
1581
1571
 
1582
1572
  "use strict";
@@ -1588,11 +1578,11 @@ Object.defineProperty(exports, "__esModule", {
1588
1578
 
1589
1579
  var React = __webpack_require__(1);
1590
1580
 
1591
- var colorUtils_1 = __webpack_require__(12);
1581
+ var colorUtils_1 = __webpack_require__(13);
1592
1582
 
1593
- var variables_1 = __webpack_require__(11);
1583
+ var variables_1 = __webpack_require__(10);
1594
1584
 
1595
- var IconPlaceholder_1 = __webpack_require__(25);
1585
+ var IconPlaceholder_1 = __webpack_require__(26);
1596
1586
 
1597
1587
  var VizBehavior_1 = __webpack_require__(5);
1598
1588
 
@@ -1640,43 +1630,36 @@ var withPlaceholder = function withPlaceholder(Visualization) {
1640
1630
  exports.default = withPlaceholder;
1641
1631
 
1642
1632
  /***/ }),
1643
- /* 41 */
1644
- /***/ (function(module, exports) {
1645
-
1646
- module.exports = require("@babel/runtime/helpers/toConsumableArray");
1647
-
1648
- /***/ }),
1649
- /* 42 */,
1650
- /* 43 */
1633
+ /* 43 */,
1634
+ /* 44 */
1651
1635
  /***/ (function(module, exports) {
1652
1636
 
1653
1637
  module.exports = require("@splunk/visualization-color-palettes");
1654
1638
 
1655
1639
  /***/ }),
1656
- /* 44 */
1640
+ /* 45 */
1657
1641
  /***/ (function(module, exports) {
1658
1642
 
1659
1643
  module.exports = require("@splunk/visualization-icons/placeholders");
1660
1644
 
1661
1645
  /***/ }),
1662
- /* 45 */
1646
+ /* 46 */
1663
1647
  /***/ (function(module, exports) {
1664
1648
 
1665
1649
  module.exports = require("@splunk/visualization-icons");
1666
1650
 
1667
1651
  /***/ }),
1668
- /* 46 */,
1669
1652
  /* 47 */,
1670
1653
  /* 48 */,
1671
1654
  /* 49 */,
1672
1655
  /* 50 */,
1673
- /* 51 */
1656
+ /* 51 */,
1657
+ /* 52 */
1674
1658
  /***/ (function(module, exports) {
1675
1659
 
1676
1660
  module.exports = require("@babel/runtime/helpers/slicedToArray");
1677
1661
 
1678
1662
  /***/ }),
1679
- /* 52 */,
1680
1663
  /* 53 */,
1681
1664
  /* 54 */,
1682
1665
  /* 55 */,
@@ -1689,83 +1672,56 @@ module.exports = require("@babel/runtime/helpers/slicedToArray");
1689
1672
  /* 62 */,
1690
1673
  /* 63 */,
1691
1674
  /* 64 */,
1692
- /* 65 */
1693
- /***/ (function(module, exports) {
1694
-
1695
- module.exports = require("@splunk/themes");
1696
-
1697
- /***/ }),
1675
+ /* 65 */,
1698
1676
  /* 66 */,
1699
1677
  /* 67 */,
1700
1678
  /* 68 */,
1701
- /* 69 */,
1702
- /* 70 */,
1703
- /* 71 */,
1704
- /* 72 */
1679
+ /* 69 */
1705
1680
  /***/ (function(module, exports) {
1706
1681
 
1707
- module.exports = require("d3-scale");
1682
+ module.exports = require("@splunk/themes");
1708
1683
 
1709
1684
  /***/ }),
1685
+ /* 70 */,
1686
+ /* 71 */,
1687
+ /* 72 */,
1710
1688
  /* 73 */,
1711
1689
  /* 74 */,
1712
1690
  /* 75 */,
1713
1691
  /* 76 */,
1714
1692
  /* 77 */,
1715
- /* 78 */,
1716
- /* 79 */,
1717
- /* 80 */,
1718
- /* 81 */,
1719
- /* 82 */,
1720
- /* 83 */,
1721
- /* 84 */,
1722
- /* 85 */,
1723
- /* 86 */,
1724
- /* 87 */,
1725
- /* 88 */,
1726
- /* 89 */,
1727
- /* 90 */,
1728
- /* 91 */,
1729
- /* 92 */,
1730
- /* 93 */,
1731
- /* 94 */,
1732
- /* 95 */,
1733
- /* 96 */,
1734
- /* 97 */,
1735
- /* 98 */,
1736
- /* 99 */,
1737
- /* 100 */,
1738
- /* 101 */,
1739
- /* 102 */,
1740
- /* 103 */,
1741
- /* 104 */
1693
+ /* 78 */
1742
1694
  /***/ (function(module, exports) {
1743
1695
 
1744
- module.exports = require("@splunk/visualization-encoding/utils/dsl");
1696
+ module.exports = require("d3-scale");
1745
1697
 
1746
1698
  /***/ }),
1747
- /* 105 */
1699
+ /* 79 */
1748
1700
  /***/ (function(module, exports, __webpack_require__) {
1749
1701
 
1750
1702
  "use strict";
1751
1703
 
1752
1704
 
1753
- var _slicedToArray = __webpack_require__(51);
1705
+ var _defineProperty = __webpack_require__(7);
1706
+
1707
+ var _slicedToArray = __webpack_require__(52);
1754
1708
 
1755
- var _toConsumableArray = __webpack_require__(41);
1709
+ var _toConsumableArray = __webpack_require__(9);
1756
1710
 
1757
1711
  Object.defineProperty(exports, "__esModule", {
1758
1712
  value: true
1759
1713
  });
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;
1714
+ exports.formatMetadata = exports.compareBaseStyles = exports.getScaledOpacities = exports.getGlobalLayerBoundaries = exports.isValidLatLon = exports.bakeBubbleData = exports.sanitizeValues = exports.transposeArray = exports.matchBubbleSize = exports.getStaticColors = exports.getZoomLevelFromGeobin = exports.getZoomConstraintsFromTileConfig = exports.getMapStyle = exports.getTilePreset = exports.LAYER_TYPE = exports.DEFAULT_OPACITY = 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;
1761
1715
 
1762
1716
  var lodash_1 = __webpack_require__(2);
1763
1717
 
1764
- var d3_scale_1 = __webpack_require__(72);
1718
+ var d3_scale_1 = __webpack_require__(78);
1765
1719
 
1766
- var colorUtils_1 = __webpack_require__(12);
1720
+ var chroma = __webpack_require__(129);
1767
1721
 
1768
- var visualization_color_palettes_1 = __webpack_require__(43);
1722
+ var colorUtils_1 = __webpack_require__(13);
1723
+
1724
+ var visualization_color_palettes_1 = __webpack_require__(44);
1769
1725
 
1770
1726
  exports.MAX_LATITUDE = 90;
1771
1727
  exports.MIN_LATITUDE = -90;
@@ -1782,6 +1738,16 @@ exports.MIN_BUBBLE_RADIUS = 7.11; // 10px
1782
1738
 
1783
1739
  exports.MAX_BUBBLE_RADIUS = 45.26; // 85px
1784
1740
 
1741
+ exports.DEFAULT_OPACITY = 0.8;
1742
+ var LONGITUDE = 'longitude';
1743
+ var LATITUDE = 'latitude';
1744
+ var LAYER_TYPE;
1745
+
1746
+ (function (LAYER_TYPE) {
1747
+ LAYER_TYPE["Marker"] = "marker";
1748
+ LAYER_TYPE["Bubble"] = "bubble";
1749
+ LAYER_TYPE["Choropleth"] = "choropleth";
1750
+ })(LAYER_TYPE = exports.LAYER_TYPE || (exports.LAYER_TYPE = {}));
1785
1751
  /**
1786
1752
  * Construct a tile preset {key: config} by combining the default + custom tile configs
1787
1753
  * Also returns the default tile config for each theme - light/dark
@@ -1791,6 +1757,7 @@ exports.MAX_BUBBLE_RADIUS = 45.26; // 85px
1791
1757
  * @returns {Object} tile preset
1792
1758
  */
1793
1759
 
1760
+
1794
1761
  var getTilePreset = function getTilePreset(_ref) {
1795
1762
  var _ref$defaultTileConfi = _ref.defaultTileConfig,
1796
1763
  defaultTileConfig = _ref$defaultTileConfi === void 0 ? [] : _ref$defaultTileConfi,
@@ -2131,42 +2098,75 @@ var isValidLatLon = function isValidLatLon(latlon) {
2131
2098
  return true;
2132
2099
  };
2133
2100
 
2134
- exports.isValidLatLon = isValidLatLon; // Returns the min and max LongLat pairs to determine the layer boundaries to fit all markers/bubbles
2101
+ exports.isValidLatLon = isValidLatLon;
2102
+ /**
2103
+ * Returns a list of all lat or lon coordinates used in a specified layer
2104
+ * @param {LayerType[]} layer
2105
+ * @param {string} field
2106
+ * @returns {number[]} list of lat coordinates or lon coordinates
2107
+ */
2108
+
2109
+ var getLatOrLonCoordinates = function getLatOrLonCoordinates(layer, field) {
2110
+ var getClusterValues = function getClusterValues(clusterLayer) {
2111
+ return lodash_1.get(clusterLayer, field, []).slice(0, clusterLayer.type === LAYER_TYPE.Marker && clusterLayer.resultLimit ? clusterLayer.resultLimit : exports.DEFAULT_RESULT_LIMIT);
2112
+ };
2113
+
2114
+ var getChoroplethValues = function getChoroplethValues(choroplethLayer) {
2115
+ var slicedGeomList = choroplethLayer.geom.slice(0, choroplethLayer.resultLimit);
2116
+ var flatCoordinates = slicedGeomList.flatMap(function (geomObject) {
2117
+ return geomObject.coordinates.flat(2);
2118
+ });
2119
+ return flatCoordinates.map(function (coord) {
2120
+ return coord[field === LONGITUDE ? 0 : 1];
2121
+ });
2122
+ };
2123
+
2124
+ return layer.type === LAYER_TYPE.Choropleth ? getChoroplethValues(layer) : getClusterValues(layer);
2125
+ };
2126
+ /**
2127
+ * Returns the min and max LongLat pairs to determine the layer boundaries to fit all markers/bubbles
2128
+ * @param {LayerType[]} layers
2129
+ * @returns {LngLatBoundsLike}
2130
+ */
2131
+
2135
2132
 
2136
2133
  var getGlobalLayerBoundaries = function getGlobalLayerBoundaries(layers) {
2134
+ var isLayerValid = function isLayerValid(field) {
2135
+ return layers.every(function (layer) {
2136
+ return layer[field] || layer.geom;
2137
+ });
2138
+ };
2139
+
2140
+ var getDefaultMax = function getDefaultMax(field) {
2141
+ return field === LONGITUDE ? exports.MAX_LONGITUDE : exports.MAX_LATITUDE;
2142
+ };
2143
+
2144
+ var getDefaultMin = function getDefaultMin(field) {
2145
+ return field === LONGITUDE ? exports.MIN_LONGITUDE : exports.MIN_LATITUDE;
2146
+ };
2147
+
2137
2148
  if (!layers || !Array.isArray(layers) || !layers.length) {
2138
2149
  return null;
2139
2150
  }
2140
2151
 
2141
- var LONGITUDE = 'longitude';
2142
- var LATITUDE = 'latitude';
2143
-
2144
2152
  var getMin = function getMin(field) {
2145
- if (!layers.every(function (layer) {
2146
- return layer[field];
2147
- })) {
2148
- return field === LONGITUDE ? exports.MIN_LONGITUDE : exports.MIN_LATITUDE;
2153
+ if (!isLayerValid(field)) {
2154
+ return getDefaultMin(field);
2149
2155
  }
2150
2156
 
2151
2157
  return layers.reduce(function (prevVal, layer) {
2152
- var _a;
2153
-
2154
- 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))));
2155
- }, field === LONGITUDE ? exports.MAX_LONGITUDE : exports.MAX_LATITUDE);
2158
+ return lodash_1.min([prevVal].concat(_toConsumableArray(getLatOrLonCoordinates(layer, field))));
2159
+ }, getDefaultMax(field));
2156
2160
  };
2157
2161
 
2158
2162
  var getMax = function getMax(field) {
2159
- if (!layers.every(function (layer) {
2160
- return layer[field];
2161
- })) {
2162
- return field === LONGITUDE ? exports.MAX_LONGITUDE : exports.MAX_LATITUDE;
2163
+ if (!isLayerValid(field)) {
2164
+ return getDefaultMax(field);
2163
2165
  }
2164
2166
 
2165
2167
  return layers.reduce(function (prevVal, layer) {
2166
- var _a;
2167
-
2168
- 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))));
2169
- }, field === LONGITUDE ? exports.MIN_LONGITUDE : exports.MIN_LATITUDE);
2168
+ return lodash_1.max([prevVal].concat(_toConsumableArray(getLatOrLonCoordinates(layer, field))));
2169
+ }, getDefaultMin(field));
2170
2170
  };
2171
2171
 
2172
2172
  return [[getMin(LONGITUDE), getMin(LATITUDE)], [getMax(LONGITUDE), getMax(LATITUDE)]];
@@ -2174,47 +2174,102 @@ var getGlobalLayerBoundaries = function getGlobalLayerBoundaries(layers) {
2174
2174
 
2175
2175
  exports.getGlobalLayerBoundaries = getGlobalLayerBoundaries;
2176
2176
 
2177
- /***/ }),
2178
- /* 106 */
2179
- /***/ (function(module, exports) {
2177
+ var getScaledOpacities = function getScaledOpacities(colors) {
2178
+ // extract opacity information from 8 digit hex codes
2179
+ var opacities = colors === null || colors === void 0 ? void 0 : colors.map(function (color) {
2180
+ var _a;
2180
2181
 
2181
- module.exports = require("@splunk/react-ui/Popover");
2182
+ return (color === null || color === void 0 ? void 0 : color.length) === 9 ? (_a = chroma(color).alpha()) !== null && _a !== void 0 ? _a : exports.DEFAULT_OPACITY : exports.DEFAULT_OPACITY;
2183
+ }); // opacity cannot be greater than 0.8, otherwise it will block map labels
2184
+
2185
+ return (opacities === null || opacities === void 0 ? void 0 : opacities.filter(function (opacity) {
2186
+ return opacity > exports.DEFAULT_OPACITY;
2187
+ }).length) > 0 ? opacities.map(function (opacity) {
2188
+ return opacity * exports.DEFAULT_OPACITY;
2189
+ }) : opacities;
2190
+ };
2191
+
2192
+ exports.getScaledOpacities = getScaledOpacities;
2193
+
2194
+ var compareBaseStyles = function compareBaseStyles(curr, next) {
2195
+ var _a, _b, _c, _d, _e, _f;
2196
+
2197
+ var currBaseLayer = (_a = curr === null || curr === void 0 ? void 0 : curr.layers) === null || _a === void 0 ? void 0 : _a.find(function (layer) {
2198
+ return (layer === null || layer === void 0 ? void 0 : layer.id) === 'base-layer';
2199
+ });
2200
+ var nextBaseLayer = (_b = next === null || next === void 0 ? void 0 : next.layers) === null || _b === void 0 ? void 0 : _b.find(function (layer) {
2201
+ return (layer === null || layer === void 0 ? void 0 : layer.id) === 'base-layer';
2202
+ });
2203
+ var currBaseSource = lodash_1.get(curr === null || curr === void 0 ? void 0 : curr.sources, (_d = (_c = currBaseLayer) === null || _c === void 0 ? void 0 : _c.source) !== null && _d !== void 0 ? _d : '');
2204
+ var nextBaseSource = lodash_1.get(next === null || next === void 0 ? void 0 : next.sources, (_f = (_e = nextBaseLayer) === null || _e === void 0 ? void 0 : _e.source) !== null && _f !== void 0 ? _f : '');
2205
+
2206
+ if (!currBaseLayer || !nextBaseLayer || !currBaseSource || !nextBaseSource) {
2207
+ return false;
2208
+ }
2209
+
2210
+ return lodash_1.isEqual(currBaseLayer, nextBaseLayer) && lodash_1.isEqual(currBaseSource, nextBaseSource);
2211
+ };
2212
+
2213
+ exports.compareBaseStyles = compareBaseStyles;
2214
+
2215
+ var formatMetadata = function formatMetadata(choroplethLayer, i) {
2216
+ if (!choroplethLayer || !choroplethLayer.areaIds || !choroplethLayer.areaValues) return {};
2217
+ if (i >= choroplethLayer.areaIds.length) return {};
2218
+ var metadata = choroplethLayer.metadata ? choroplethLayer.metadata[i] : {};
2219
+ var name = choroplethLayer.areaIds[i];
2220
+ var value = choroplethLayer.areaValues[i];
2221
+ var base = {
2222
+ name: name,
2223
+ value: String(value)
2224
+ };
2225
+ return Object.keys(metadata).reduce(function (result, curr) {
2226
+ var key = "row.".concat(curr, ".value");
2227
+ var val = lodash_1.isObject(metadata[curr]) ? JSON.stringify(metadata[curr]) : String(metadata[curr]);
2228
+ return Object.assign(Object.assign({}, result), _defineProperty({}, key, val));
2229
+ }, base);
2230
+ };
2231
+
2232
+ exports.formatMetadata = formatMetadata;
2182
2233
 
2183
2234
  /***/ }),
2184
- /* 107 */,
2185
- /* 108 */,
2186
- /* 109 */,
2187
- /* 110 */,
2188
- /* 111 */,
2189
- /* 112 */,
2190
- /* 113 */,
2191
- /* 114 */,
2192
- /* 115 */,
2193
- /* 116 */,
2194
- /* 117 */,
2195
- /* 118 */,
2196
- /* 119 */,
2197
- /* 120 */,
2198
- /* 121 */,
2199
- /* 122 */,
2200
- /* 123 */,
2201
- /* 124 */,
2202
- /* 125 */,
2203
- /* 126 */,
2204
- /* 127 */,
2205
- /* 128 */
2235
+ /* 80 */,
2236
+ /* 81 */,
2237
+ /* 82 */,
2238
+ /* 83 */,
2239
+ /* 84 */,
2240
+ /* 85 */,
2241
+ /* 86 */,
2242
+ /* 87 */,
2243
+ /* 88 */,
2244
+ /* 89 */,
2245
+ /* 90 */,
2246
+ /* 91 */,
2247
+ /* 92 */,
2248
+ /* 93 */,
2249
+ /* 94 */,
2250
+ /* 95 */,
2251
+ /* 96 */,
2252
+ /* 97 */,
2253
+ /* 98 */,
2254
+ /* 99 */,
2255
+ /* 100 */,
2256
+ /* 101 */,
2257
+ /* 102 */,
2258
+ /* 103 */,
2259
+ /* 104 */,
2260
+ /* 105 */
2206
2261
  /***/ (function(module, exports) {
2207
2262
 
2208
- module.exports = require("maplibre-gl");
2263
+ module.exports = require("@splunk/visualization-encoding/utils/dsl");
2209
2264
 
2210
2265
  /***/ }),
2211
- /* 129 */
2266
+ /* 106 */
2212
2267
  /***/ (function(module, exports, __webpack_require__) {
2213
2268
 
2214
2269
  "use strict";
2215
2270
 
2216
2271
 
2217
- var _slicedToArray = __webpack_require__(51);
2272
+ var _slicedToArray = __webpack_require__(52);
2218
2273
 
2219
2274
  var __rest = this && this.__rest || function (s, e) {
2220
2275
  var t = {};
@@ -2233,20 +2288,23 @@ Object.defineProperty(exports, "__esModule", {
2233
2288
  value: true
2234
2289
  });
2235
2290
 
2236
- var maplibre_gl_1 = __webpack_require__(128);
2291
+ var maplibre_gl_1 = __webpack_require__(130);
2237
2292
 
2238
2293
  var React = __webpack_require__(1);
2239
2294
 
2240
- var Tooltip_1 = __webpack_require__(202);
2295
+ var Tooltip_1 = __webpack_require__(203);
2241
2296
 
2242
2297
  var MarkerWrapper = function MarkerWrapper(_a) {
2243
2298
  var longitude = _a.longitude,
2244
2299
  latitude = _a.latitude,
2300
+ areaId = _a.areaId,
2301
+ areaValue = _a.areaValue,
2245
2302
  _a$additionalFields = _a.additionalFields,
2246
2303
  additionalFields = _a$additionalFields === void 0 ? [] : _a$additionalFields,
2247
2304
  map = _a.map,
2305
+ isChoroplethTooltipOpen = _a.isChoroplethTooltipOpen,
2248
2306
  children = _a.children,
2249
- otherProps = __rest(_a, ["longitude", "latitude", "additionalFields", "map", "children"]);
2307
+ otherProps = __rest(_a, ["longitude", "latitude", "areaId", "areaValue", "additionalFields", "map", "isChoroplethTooltipOpen", "children"]);
2250
2308
 
2251
2309
  var container = React.useRef();
2252
2310
  var marker = React.useRef();
@@ -2256,6 +2314,9 @@ var MarkerWrapper = function MarkerWrapper(_a) {
2256
2314
  isTooltipOpen = _React$useState2[0],
2257
2315
  setTooltipOpenStatus = _React$useState2[1];
2258
2316
 
2317
+ var isChoroplethTooltip = React.useCallback(function () {
2318
+ return isChoroplethTooltipOpen !== undefined;
2319
+ }, [isChoroplethTooltipOpen]);
2259
2320
  var openTooltip = React.useCallback(function () {
2260
2321
  return setTooltipOpenStatus(true);
2261
2322
  }, []);
@@ -2285,36 +2346,83 @@ var MarkerWrapper = function MarkerWrapper(_a) {
2285
2346
  React.useEffect(function () {
2286
2347
  return cleanupMarker;
2287
2348
  }, []);
2288
- return React.createElement("div", null, React.createElement("div", Object.assign({
2349
+ return React.createElement("div", {
2350
+ style: {
2351
+ visibility: isChoroplethTooltip() ? 'hidden' : 'visible'
2352
+ }
2353
+ }, React.createElement("div", Object.assign({
2354
+ style: {
2355
+ visibility: isChoroplethTooltip() ? 'hidden' : 'visible'
2356
+ },
2289
2357
  ref: container,
2290
2358
  "data-test": "map-marker",
2291
2359
  onMouseOver: openTooltip,
2292
2360
  onMouseLeave: closeTooltip,
2293
2361
  onFocus: openTooltip,
2294
2362
  onBlur: closeTooltip
2295
- }, otherProps), children), React.createElement(Tooltip_1.default, {
2296
- open: isTooltipOpen,
2363
+ }, otherProps), children), React.createElement("div", null, React.createElement(Tooltip_1.default, {
2364
+ open: isChoroplethTooltip() ? isChoroplethTooltipOpen : isTooltipOpen,
2297
2365
  anchor: container.current,
2298
- latitude: latitude,
2299
- longitude: longitude,
2366
+ latitude: isChoroplethTooltip() ? null : latitude,
2367
+ longitude: isChoroplethTooltip() ? null : longitude,
2368
+ areaId: areaId,
2369
+ areaValue: areaValue,
2300
2370
  additionalFields: additionalFields
2301
- }));
2371
+ })));
2302
2372
  };
2303
2373
 
2304
2374
  exports.default = MarkerWrapper;
2305
2375
 
2306
2376
  /***/ }),
2307
- /* 130 */,
2308
- /* 131 */,
2309
- /* 132 */,
2310
- /* 133 */,
2311
- /* 134 */,
2312
- /* 135 */,
2313
- /* 136 */,
2314
- /* 137 */,
2315
- /* 138 */,
2316
- /* 139 */,
2317
- /* 140 */,
2377
+ /* 107 */
2378
+ /***/ (function(module, exports) {
2379
+
2380
+ module.exports = require("@splunk/react-ui/Popover");
2381
+
2382
+ /***/ }),
2383
+ /* 108 */,
2384
+ /* 109 */,
2385
+ /* 110 */,
2386
+ /* 111 */,
2387
+ /* 112 */,
2388
+ /* 113 */,
2389
+ /* 114 */,
2390
+ /* 115 */,
2391
+ /* 116 */,
2392
+ /* 117 */,
2393
+ /* 118 */,
2394
+ /* 119 */,
2395
+ /* 120 */,
2396
+ /* 121 */,
2397
+ /* 122 */,
2398
+ /* 123 */,
2399
+ /* 124 */,
2400
+ /* 125 */,
2401
+ /* 126 */,
2402
+ /* 127 */,
2403
+ /* 128 */,
2404
+ /* 129 */
2405
+ /***/ (function(module, exports) {
2406
+
2407
+ module.exports = require("chroma-js");
2408
+
2409
+ /***/ }),
2410
+ /* 130 */
2411
+ /***/ (function(module, exports) {
2412
+
2413
+ module.exports = require("maplibre-gl");
2414
+
2415
+ /***/ }),
2416
+ /* 131 */,
2417
+ /* 132 */,
2418
+ /* 133 */,
2419
+ /* 134 */,
2420
+ /* 135 */,
2421
+ /* 136 */,
2422
+ /* 137 */,
2423
+ /* 138 */,
2424
+ /* 139 */,
2425
+ /* 140 */,
2318
2426
  /* 141 */,
2319
2427
  /* 142 */,
2320
2428
  /* 143 */,
@@ -2368,7 +2476,9 @@ exports.default = MarkerWrapper;
2368
2476
  /* 191 */,
2369
2477
  /* 192 */,
2370
2478
  /* 193 */,
2371
- /* 194 */
2479
+ /* 194 */,
2480
+ /* 195 */,
2481
+ /* 196 */
2372
2482
  /***/ (function(module, exports, __webpack_require__) {
2373
2483
 
2374
2484
  "use strict";
@@ -2395,23 +2505,23 @@ exports.PureMap = exports.config = exports.themes = exports.useIconPlaceholder =
2395
2505
 
2396
2506
  var React = __webpack_require__(1);
2397
2507
 
2398
- var colorUtils_1 = __webpack_require__(12);
2508
+ var colorUtils_1 = __webpack_require__(13);
2399
2509
 
2400
- var dsl_1 = __webpack_require__(104);
2510
+ var dsl_1 = __webpack_require__(105);
2401
2511
 
2402
- var JSONSchemaUtils_1 = __webpack_require__(24);
2512
+ var JSONSchemaUtils_1 = __webpack_require__(25);
2403
2513
 
2404
2514
  var hocUtils_1 = __webpack_require__(8);
2405
2515
 
2406
- var PureMap_1 = __webpack_require__(195);
2516
+ var PureMap_1 = __webpack_require__(197);
2407
2517
 
2408
2518
  exports.PureMap = PureMap_1.default;
2409
2519
 
2410
- var config_1 = __webpack_require__(204);
2520
+ var config_1 = __webpack_require__(206);
2411
2521
 
2412
2522
  exports.config = config_1.default;
2413
2523
 
2414
- var withDashboardViz_1 = __webpack_require__(29); // util fn extracted from PureParallelCoordinates that transforms data structure to array of objects
2524
+ var withDashboardViz_1 = __webpack_require__(30); // util fn extracted from PureParallelCoordinates that transforms data structure to array of objects
2415
2525
  // TODO: pull this fn into common utils and utilize this fn in ParallelCoordinates
2416
2526
 
2417
2527
 
@@ -2442,8 +2552,39 @@ var convertToArrOfObjects = function convertToArrOfObjects(columns, fields) {
2442
2552
 
2443
2553
  exports.convertToArrOfObjects = convertToArrOfObjects;
2444
2554
 
2555
+ var formatLayer = function formatLayer(l, dataFields, dataSourceData, transformedData) {
2556
+ // add key `geobin` to the layer object if the data is returned from geostats commands
2557
+ // to distinguish geostats commands from table commands
2558
+ var geobinIdx = dataFields.indexOf('geobin');
2559
+ var layer = l;
2560
+
2561
+ if (geobinIdx > -1) {
2562
+ layer.geobin = dataSourceData.columns[geobinIdx];
2563
+ } // similarly add key `geom` to layer object for choropleths
2564
+
2565
+
2566
+ var geomIdx = dataFields.indexOf('geom');
2567
+
2568
+ if (geomIdx > -1) {
2569
+ layer.geom = dataSourceData.columns[geomIdx].map(function (geomItem) {
2570
+ return typeof geomItem === 'string' ? JSON.parse(geomItem) : geomItem;
2571
+ });
2572
+ } // Sanitize colors within layers
2573
+
2574
+
2575
+ if (Object.prototype.hasOwnProperty.call(layer, 'seriesColors')) {
2576
+ layer.seriesColors = Array.isArray(layer.seriesColors) ? colorUtils_1.sanitizeArrayOfColors(layer.seriesColors) : undefined;
2577
+ }
2578
+
2579
+ if (Object.prototype.hasOwnProperty.call(layer, 'dataColors')) {
2580
+ layer.dataColors = Array.isArray(layer.dataColors) ? colorUtils_1.sanitizeArrayOfColors(layer.dataColors) : undefined;
2581
+ }
2582
+
2583
+ layer.metadata = transformedData;
2584
+ };
2585
+
2445
2586
  var computeVizProps = function computeVizProps(props) {
2446
- var _a, _b;
2587
+ var _a, _b, _c;
2447
2588
 
2448
2589
  var themeFunc = props.themeFunc,
2449
2590
  theme = props.theme,
@@ -2462,24 +2603,11 @@ var computeVizProps = function computeVizProps(props) {
2462
2603
  // TODO: explore any potential changes when multiple layers are supported
2463
2604
 
2464
2605
  var transformedData = exports.convertToArrOfObjects(dataSourceData.columns, dataSourceData.fields);
2465
- layers.forEach(function (l) {
2466
- var _a; // add key `geobin` to the layer object if the data is returned from geostats commands
2467
- // to distinguish geostats commands from table commands
2468
-
2469
-
2470
- var geobinIdx = ((_a = dataSourceData.fields) !== null && _a !== void 0 ? _a : []).map(function (field) {
2471
- return typeof field === 'string' ? field : field.name;
2472
- }).indexOf('geobin');
2473
- var layer = l;
2474
-
2475
- if (geobinIdx > -1) {
2476
- layer.geobin = dataSourceData.columns[geobinIdx];
2477
- } // Sanitize colors within layers
2478
-
2479
-
2480
- layer.seriesColors = Array.isArray(layer.seriesColors) ? colorUtils_1.sanitizeArrayOfColors(layer.seriesColors) : undefined;
2481
- layer.dataColors = Array.isArray(layer.dataColors) ? colorUtils_1.sanitizeArrayOfColors(layer.dataColors) : undefined;
2482
- layer.metadata = transformedData;
2606
+ var dataFields = ((_c = dataSourceData.fields) !== null && _c !== void 0 ? _c : []).map(function (field) {
2607
+ return typeof field === 'string' ? field : field.name;
2608
+ });
2609
+ layers === null || layers === void 0 ? void 0 : layers.forEach(function (l) {
2610
+ return formatLayer(l, dataFields, dataSourceData, transformedData);
2483
2611
  });
2484
2612
  return Object.assign(Object.assign(Object.assign(Object.assign({}, themeColors), {
2485
2613
  themeColorScheme: themeColorScheme
@@ -2668,13 +2796,13 @@ exports.themes = themes;
2668
2796
  exports.default = Map;
2669
2797
 
2670
2798
  /***/ }),
2671
- /* 195 */
2799
+ /* 197 */
2672
2800
  /***/ (function(module, exports, __webpack_require__) {
2673
2801
 
2674
2802
  "use strict";
2675
2803
 
2676
2804
 
2677
- var _slicedToArray = __webpack_require__(51);
2805
+ var _slicedToArray = __webpack_require__(52);
2678
2806
 
2679
2807
  Object.defineProperty(exports, "__esModule", {
2680
2808
  value: true
@@ -2689,17 +2817,19 @@ var react_1 = __webpack_require__(1);
2689
2817
 
2690
2818
  var T = __webpack_require__(0);
2691
2819
 
2692
- var chroma = __webpack_require__(196);
2820
+ var chroma = __webpack_require__(129);
2693
2821
 
2694
- var maplibre_gl_1 = __webpack_require__(128);
2822
+ var maplibre_gl_1 = __webpack_require__(130);
2695
2823
 
2696
- var MapContext_1 = __webpack_require__(197);
2824
+ var MapContext_1 = __webpack_require__(198);
2697
2825
 
2698
- var PureMapContainer_1 = __webpack_require__(198);
2826
+ var PureMapContainer_1 = __webpack_require__(199);
2699
2827
 
2700
- var MapUtils_1 = __webpack_require__(105);
2828
+ var MapUtils_1 = __webpack_require__(79);
2701
2829
 
2702
- var ClusterLayer_1 = __webpack_require__(200);
2830
+ var ClusterLayer_1 = __webpack_require__(201);
2831
+
2832
+ var ChoroplethLayer_1 = __webpack_require__(205);
2703
2833
 
2704
2834
  exports.DEFAULT_CENTER = [0, 0];
2705
2835
  exports.DEFAULT_CONTROL_BACKGROUND_COLOR = '#2b3033';
@@ -2765,7 +2895,12 @@ var PureMap = function PureMap(props) {
2765
2895
  var _React$useState3 = React.useState(false),
2766
2896
  _React$useState4 = _slicedToArray(_React$useState3, 2),
2767
2897
  isMapLoaded = _React$useState4[0],
2768
- setMapIsLoaded = _React$useState4[1]; // Assign default center when no center is defined
2898
+ setMapIsLoaded = _React$useState4[1];
2899
+
2900
+ var _React$useState5 = React.useState(false),
2901
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
2902
+ isThemeChanged = _React$useState6[0],
2903
+ setIsThemeChanged = _React$useState6[1]; // Assign default center when no center is defined
2769
2904
 
2770
2905
 
2771
2906
  var lngLatCenter = react_1.useMemo(function () {
@@ -2784,6 +2919,11 @@ var PureMap = function PureMap(props) {
2784
2919
 
2785
2920
  return zoom;
2786
2921
  }, [zoom]);
2922
+
2923
+ var setIsThemeChangedCallback = function setIsThemeChangedCallback(isMyThemeChanged) {
2924
+ setIsThemeChanged(isMyThemeChanged);
2925
+ };
2926
+
2787
2927
  var initializeMap = react_1.useCallback(function (mapStyle) {
2788
2928
  var fitMapToContent = function fitMapToContent() {
2789
2929
  var lngLatBounds = MapUtils_1.getGlobalLayerBoundaries([layers[0]]);
@@ -2803,7 +2943,7 @@ var PureMap = function PureMap(props) {
2803
2943
  // and the first visually complete rendering of the map has occurred.
2804
2944
 
2805
2945
  map.current.on('load', function () {
2806
- if (layers.length > 0 && center === undefined && zoom === undefined) {
2946
+ if ((layers === null || layers === void 0 ? void 0 : layers.length) > 0 && center === undefined && zoom === undefined) {
2807
2947
  fitMapToContent();
2808
2948
  }
2809
2949
 
@@ -2837,7 +2977,7 @@ var PureMap = function PureMap(props) {
2837
2977
  showCompass: false
2838
2978
  });
2839
2979
  map.current.addControl(zoomControl.current, 'top-left');
2840
- }, [lngLatCenter, zoomLevel, layers.length]);
2980
+ }, [lngLatCenter, zoomLevel, layers === null || layers === void 0 ? void 0 : layers.length]);
2841
2981
  var initializeScale = react_1.useCallback(function () {
2842
2982
  scaleControl.current = new maplibre_gl_1.ScaleControl({
2843
2983
  maxWidth: 70,
@@ -2876,8 +3016,16 @@ var PureMap = function PureMap(props) {
2876
3016
  mapStyle.version = MapUtils_1.MAP_STYLE_VERSION_NUMBER; // If the map has already been initialized, we update the styles
2877
3017
 
2878
3018
  if (map.current) {
2879
- // Refer to https://maplibre.org/maplibre-gl-js-docs/api/map/#setstyle-example for options.diff (default is true)
2880
- map.current.setStyle(lodash_1.omit(mapStyle, ['theme', 'name', 'key']));
3019
+ var curr = map.current.getStyle();
3020
+ var next = lodash_1.omit(mapStyle, ['theme', 'name', 'key']); // In dashboard studio this setStyle function is triggered by zoom changes as well
3021
+ // Since setStyle will reset all style layers on the map including choropleth,
3022
+ // we ONLY want to this to be called when there are style changes
3023
+
3024
+ if (!MapUtils_1.compareBaseStyles(curr, next)) {
3025
+ // Refer to https://maplibre.org/maplibre-gl-js-docs/api/map/#setstyle-example for options.diff (default is true)
3026
+ map.current.setStyle(lodash_1.omit(mapStyle, ['theme', 'name', 'key']));
3027
+ setIsThemeChanged(true);
3028
+ }
2881
3029
 
2882
3030
  var _MapUtils_1$getZoomCo = MapUtils_1.getZoomConstraintsFromTileConfig(mapStyle),
2883
3031
  minZoom = _MapUtils_1$getZoomCo.minZoom,
@@ -2910,7 +3058,7 @@ var PureMap = function PureMap(props) {
2910
3058
  }, []);
2911
3059
 
2912
3060
  var _layers = _slicedToArray(layers, 1),
2913
- clusterLayer = _layers[0];
3061
+ layer = _layers[0];
2914
3062
 
2915
3063
  return React.createElement(React.Fragment, null, React.createElement(PureMapContainer_1.default, {
2916
3064
  className: "puremap",
@@ -2922,12 +3070,18 @@ var PureMap = function PureMap(props) {
2922
3070
  controlIconColorEncoded: exports.formatColor(controlForegroundColor),
2923
3071
  ref: basemapContainer,
2924
3072
  showScale: showScale
2925
- }, isMapLoaded && clusterLayer && React.createElement(ClusterLayer_1.default, {
2926
- clusterLayer: clusterLayer,
3073
+ }, isMapLoaded && layer && (layer.type === MapUtils_1.LAYER_TYPE.Bubble || layer.type === MapUtils_1.LAYER_TYPE.Marker) && React.createElement(ClusterLayer_1.default, {
3074
+ clusterLayer: layer,
2927
3075
  themeColorScheme: themeColorScheme,
2928
3076
  map: map,
2929
3077
  zoom: currentZoomLevel,
2930
3078
  onMapClick: onMapClick
3079
+ }), isMapLoaded && layer && layer.type === MapUtils_1.LAYER_TYPE.Choropleth && React.createElement(ChoroplethLayer_1.default, {
3080
+ map: map,
3081
+ choroplethLayer: layer,
3082
+ isThemeChanged: isThemeChanged,
3083
+ setIsThemeChanged: setIsThemeChangedCallback,
3084
+ onMapClick: onMapClick
2931
3085
  })));
2932
3086
  };
2933
3087
 
@@ -3000,19 +3154,13 @@ PureMap.defaultProps = {
3000
3154
  exports.default = PureMap;
3001
3155
 
3002
3156
  /***/ }),
3003
- /* 196 */
3004
- /***/ (function(module, exports) {
3005
-
3006
- module.exports = require("chroma-js");
3007
-
3008
- /***/ }),
3009
- /* 197 */
3157
+ /* 198 */
3010
3158
  /***/ (function(module, exports) {
3011
3159
 
3012
3160
  module.exports = require("@splunk/visualization-context/MapContext");
3013
3161
 
3014
3162
  /***/ }),
3015
- /* 198 */
3163
+ /* 199 */
3016
3164
  /***/ (function(module, exports, __webpack_require__) {
3017
3165
 
3018
3166
  "use strict";
@@ -3026,9 +3174,9 @@ var styled_components_1 = __webpack_require__(4);
3026
3174
 
3027
3175
  var lodash_1 = __webpack_require__(2);
3028
3176
 
3029
- var style_1 = __webpack_require__(14);
3177
+ var style_1 = __webpack_require__(15);
3030
3178
 
3031
- var maplibre_gl_css_1 = __webpack_require__(199);
3179
+ var maplibre_gl_css_1 = __webpack_require__(200);
3032
3180
 
3033
3181
  var PureMapContainer = styled_components_1.default.div.withConfig({
3034
3182
  displayName: "PureMapContainer",
@@ -3061,7 +3209,7 @@ var PureMapContainer = styled_components_1.default.div.withConfig({
3061
3209
  exports.default = PureMapContainer;
3062
3210
 
3063
3211
  /***/ }),
3064
- /* 199 */
3212
+ /* 200 */
3065
3213
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
3066
3214
 
3067
3215
  "use strict";
@@ -3069,7 +3217,7 @@ __webpack_require__.r(__webpack_exports__);
3069
3217
  /* 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}}");
3070
3218
 
3071
3219
  /***/ }),
3072
- /* 200 */
3220
+ /* 201 */
3073
3221
  /***/ (function(module, exports, __webpack_require__) {
3074
3222
 
3075
3223
  "use strict";
@@ -3081,9 +3229,11 @@ Object.defineProperty(exports, "__esModule", {
3081
3229
 
3082
3230
  var React = __webpack_require__(1);
3083
3231
 
3084
- var BubbleLayer_1 = __webpack_require__(201);
3232
+ var BubbleLayer_1 = __webpack_require__(202);
3233
+
3234
+ var MarkerLayer_1 = __webpack_require__(204);
3085
3235
 
3086
- var MarkerLayer_1 = __webpack_require__(203);
3236
+ var MapUtils_1 = __webpack_require__(79);
3087
3237
 
3088
3238
  var ClusterLayer = function ClusterLayer(_ref) {
3089
3239
  var clusterLayer = _ref.clusterLayer,
@@ -3095,7 +3245,7 @@ var ClusterLayer = function ClusterLayer(_ref) {
3095
3245
  var _a;
3096
3246
 
3097
3247
  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)) {
3098
- if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === 'marker' && !('geobin' in clusterLayer)) {
3248
+ if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === MapUtils_1.LAYER_TYPE.Marker && !('geobin' in clusterLayer)) {
3099
3249
  return React.createElement(MarkerLayer_1.default, {
3100
3250
  markerLayer: clusterLayer,
3101
3251
  themeColorScheme: themeColorScheme,
@@ -3104,7 +3254,7 @@ var ClusterLayer = function ClusterLayer(_ref) {
3104
3254
  });
3105
3255
  }
3106
3256
 
3107
- if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === 'bubble' && 'geobin' in clusterLayer && 'bubbleSize' in clusterLayer) {
3257
+ if ((clusterLayer === null || clusterLayer === void 0 ? void 0 : clusterLayer.type) === MapUtils_1.LAYER_TYPE.Bubble && 'geobin' in clusterLayer && 'bubbleSize' in clusterLayer) {
3108
3258
  return React.createElement(BubbleLayer_1.default, {
3109
3259
  bubbleLayer: clusterLayer,
3110
3260
  themeColorScheme: themeColorScheme,
@@ -3121,17 +3271,17 @@ var ClusterLayer = function ClusterLayer(_ref) {
3121
3271
  exports.default = ClusterLayer;
3122
3272
 
3123
3273
  /***/ }),
3124
- /* 201 */
3274
+ /* 202 */
3125
3275
  /***/ (function(module, exports, __webpack_require__) {
3126
3276
 
3127
3277
  "use strict";
3128
3278
 
3129
3279
 
3130
- var _slicedToArray = __webpack_require__(51);
3280
+ var _slicedToArray = __webpack_require__(52);
3131
3281
 
3132
3282
  var _defineProperty = __webpack_require__(7);
3133
3283
 
3134
- var _toConsumableArray = __webpack_require__(41);
3284
+ var _toConsumableArray = __webpack_require__(9);
3135
3285
 
3136
3286
  Object.defineProperty(exports, "__esModule", {
3137
3287
  value: true
@@ -3144,11 +3294,11 @@ var styled_components_1 = __webpack_require__(4);
3144
3294
 
3145
3295
  var lodash_1 = __webpack_require__(2);
3146
3296
 
3147
- var colorUtils_1 = __webpack_require__(12);
3297
+ var colorUtils_1 = __webpack_require__(13);
3148
3298
 
3149
- var MapUtils_1 = __webpack_require__(105);
3299
+ var MapUtils_1 = __webpack_require__(79);
3150
3300
 
3151
- var MarkerWrapper_1 = __webpack_require__(129);
3301
+ var MarkerWrapper_1 = __webpack_require__(106);
3152
3302
 
3153
3303
  exports.PieSegment = React.memo(function (_ref) {
3154
3304
  var start = _ref.start,
@@ -3389,7 +3539,7 @@ var BubbleLayer = function BubbleLayer(props) {
3389
3539
  exports.default = BubbleLayer;
3390
3540
 
3391
3541
  /***/ }),
3392
- /* 202 */
3542
+ /* 203 */
3393
3543
  /***/ (function(module, exports, __webpack_require__) {
3394
3544
 
3395
3545
  "use strict";
@@ -3404,7 +3554,7 @@ var React = __webpack_require__(1);
3404
3554
 
3405
3555
  var styled_components_1 = __webpack_require__(4);
3406
3556
 
3407
- var Popover_1 = __webpack_require__(106);
3557
+ var Popover_1 = __webpack_require__(107);
3408
3558
 
3409
3559
  var i18n_1 = __webpack_require__(3);
3410
3560
 
@@ -3462,13 +3612,16 @@ var convertDegToDMS = function convertDegToDMS(decimalDegree, type) {
3462
3612
  return "".concat(degrees, "\xB0 ").concat(minutes, "' ").concat(seconds, "\" ").concat(direction);
3463
3613
  };
3464
3614
 
3465
- exports.convertDegToDMS = convertDegToDMS;
3615
+ exports.convertDegToDMS = convertDegToDMS; // only want latitude/longitude for marker and bubble
3616
+ // omit for choropleth, and put areaid, areavalue instead
3466
3617
 
3467
3618
  var Tooltip = function Tooltip(_ref) {
3468
3619
  var open = _ref.open,
3469
3620
  anchor = _ref.anchor,
3470
3621
  latitude = _ref.latitude,
3471
3622
  longitude = _ref.longitude,
3623
+ areaId = _ref.areaId,
3624
+ areaValue = _ref.areaValue,
3472
3625
  _ref$additionalFields = _ref.additionalFields,
3473
3626
  additionalFields = _ref$additionalFields === void 0 ? [] : _ref$additionalFields;
3474
3627
  return React.createElement(StyledPopover, {
@@ -3476,9 +3629,13 @@ var Tooltip = function Tooltip(_ref) {
3476
3629
  anchor: anchor,
3477
3630
  "data-test": "map-marker-tooltip",
3478
3631
  defaultPlacement: "above"
3479
- }, React.createElement(StyledTable, null, React.createElement("tbody", null, React.createElement("tr", null, React.createElement(StyledTitleColumn, null, i18n_1._('Latitude')), React.createElement(StyledValueColumn, {
3632
+ }, React.createElement(StyledTable, null, React.createElement("tbody", null, areaId && areaValue && React.createElement("tr", null, React.createElement(StyledTitleColumn, {
3633
+ "data-test": "area-id"
3634
+ }, areaId), React.createElement(StyledValueColumn, {
3635
+ "data-test": "area-value"
3636
+ }, areaValue)), latitude && React.createElement("tr", null, React.createElement(StyledTitleColumn, null, i18n_1._('Latitude')), React.createElement(StyledValueColumn, {
3480
3637
  "data-test": "latitude"
3481
- }, exports.convertDegToDMS(latitude, 'latitude'))), React.createElement("tr", null, React.createElement(StyledTitleColumn, null, i18n_1._('Longitude')), React.createElement(StyledValueColumn, {
3638
+ }, exports.convertDegToDMS(latitude, 'latitude'))), longitude && React.createElement("tr", null, React.createElement(StyledTitleColumn, null, i18n_1._('Longitude')), React.createElement(StyledValueColumn, {
3482
3639
  "data-test": "longitude"
3483
3640
  }, exports.convertDegToDMS(longitude, 'longitude'))), additionalFields.map(function (_ref2, index) {
3484
3641
  var name = _ref2.name,
@@ -3500,7 +3657,7 @@ var Tooltip = function Tooltip(_ref) {
3500
3657
  exports.default = Tooltip;
3501
3658
 
3502
3659
  /***/ }),
3503
- /* 203 */
3660
+ /* 204 */
3504
3661
  /***/ (function(module, exports, __webpack_require__) {
3505
3662
 
3506
3663
  "use strict";
@@ -3530,13 +3687,13 @@ var styled_components_1 = __webpack_require__(4);
3530
3687
 
3531
3688
  var React = __webpack_require__(1);
3532
3689
 
3533
- var colorUtils_1 = __webpack_require__(12);
3690
+ var colorUtils_1 = __webpack_require__(13);
3534
3691
 
3535
3692
  var lodash_1 = __webpack_require__(2);
3536
3693
 
3537
- var MapUtils_1 = __webpack_require__(105);
3694
+ var MapUtils_1 = __webpack_require__(79);
3538
3695
 
3539
- var MarkerWrapper_1 = __webpack_require__(129);
3696
+ var MarkerWrapper_1 = __webpack_require__(106);
3540
3697
 
3541
3698
  var MarkerIcon = function MarkerIcon(_a) {
3542
3699
  var theme = _a.theme,
@@ -3664,34 +3821,275 @@ var MarkerLayer = function MarkerLayer(props) {
3664
3821
  exports.default = MarkerLayer;
3665
3822
 
3666
3823
  /***/ }),
3667
- /* 204 */
3824
+ /* 205 */
3668
3825
  /***/ (function(module, exports, __webpack_require__) {
3669
3826
 
3670
3827
  "use strict";
3671
3828
 
3672
3829
 
3830
+ var _slicedToArray = __webpack_require__(52);
3831
+
3673
3832
  Object.defineProperty(exports, "__esModule", {
3674
3833
  value: true
3675
3834
  });
3835
+ exports.cleanupChoropleth = exports.compareChoropleth = void 0;
3676
3836
 
3677
- var visualization_icons_1 = __webpack_require__(45);
3837
+ var React = __webpack_require__(1);
3678
3838
 
3679
- var placeholders_1 = __webpack_require__(44);
3839
+ var lodash_1 = __webpack_require__(2);
3840
+
3841
+ var MapUtils_1 = __webpack_require__(79);
3680
3842
 
3681
- var schemaUtils_1 = __webpack_require__(15);
3843
+ var MarkerWrapper_1 = __webpack_require__(106);
3682
3844
 
3683
- var visualization_color_palettes_1 = __webpack_require__(43);
3845
+ var getShapeId = function getShapeId(id) {
3846
+ return "shape-".concat(id);
3847
+ };
3684
3848
 
3685
- var themes_1 = __webpack_require__(65);
3849
+ var getSourceId = function getSourceId(id) {
3850
+ return "source-".concat(id);
3851
+ };
3852
+
3853
+ var compareGeom = function compareGeom(prev, next) {
3854
+ return prev.type === next.type && lodash_1.isEqual(prev.coordinates, next.coordinates);
3855
+ };
3856
+
3857
+ var compareChoropleth = function compareChoropleth(prevProps, nextProps) {
3858
+ return compareGeom(prevProps.geomData, nextProps.geomData) && prevProps.id === nextProps.id && prevProps.map === nextProps.map && prevProps.areaId === nextProps.areaId && prevProps.areaValue === nextProps.areaValue && prevProps.color === nextProps.color && prevProps.opacity === nextProps.opacity && prevProps.isThemeChanged === nextProps.isThemeChanged && lodash_1.isEqual(prevProps.additionalFields, nextProps.additionalFields) && prevProps.handleMapClick.toString() === nextProps.handleMapClick.toString();
3859
+ };
3860
+
3861
+ exports.compareChoropleth = compareChoropleth;
3862
+
3863
+ var cleanupChoropleth = function cleanupChoropleth(shapeId, sourceId, map) {
3864
+ var _a, _b; // catch errors where map is undefined
3865
+
3866
+
3867
+ var currLayer;
3868
+ var currSource;
3869
+
3870
+ try {
3871
+ currLayer = (_a = map === null || map === void 0 ? void 0 : map.current) === null || _a === void 0 ? void 0 : _a.getLayer(shapeId);
3872
+ currSource = (_b = map === null || map === void 0 ? void 0 : map.current) === null || _b === void 0 ? void 0 : _b.getSource(sourceId);
3873
+ } catch (_c) {
3874
+ return;
3875
+ }
3876
+
3877
+ if (currLayer) {
3878
+ map.current.removeLayer(shapeId);
3879
+ }
3880
+
3881
+ if (currSource) {
3882
+ map.current.removeSource(sourceId);
3883
+ }
3884
+ };
3885
+
3886
+ exports.cleanupChoropleth = cleanupChoropleth;
3887
+ var Choropleth = React.memo(function (_ref) {
3888
+ var id = _ref.id,
3889
+ areaId = _ref.areaId,
3890
+ areaValue = _ref.areaValue,
3891
+ geomData = _ref.geomData,
3892
+ map = _ref.map,
3893
+ color = _ref.color,
3894
+ opacity = _ref.opacity,
3895
+ isThemeChanged = _ref.isThemeChanged,
3896
+ additionalFields = _ref.additionalFields,
3897
+ handleMapClick = _ref.handleMapClick;
3898
+ var sourceId = getSourceId(id);
3899
+ var shapeId = getShapeId(id);
3900
+ var validOpacity = opacity && opacity < MapUtils_1.DEFAULT_OPACITY ? opacity : MapUtils_1.DEFAULT_OPACITY;
3901
+ var formattedGeomData = {
3902
+ type: 'Feature',
3903
+ geometry: geomData
3904
+ };
3905
+
3906
+ var _React$useState = React.useState(false),
3907
+ _React$useState2 = _slicedToArray(_React$useState, 2),
3908
+ isTooltipOpen = _React$useState2[0],
3909
+ setTooltipOpenStatus = _React$useState2[1];
3910
+
3911
+ var _React$useState3 = React.useState(0),
3912
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
3913
+ mouseLat = _React$useState4[0],
3914
+ setmouseLat = _React$useState4[1];
3915
+
3916
+ var _React$useState5 = React.useState(0),
3917
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
3918
+ mouseLng = _React$useState6[0],
3919
+ setmouseLng = _React$useState6[1];
3920
+
3921
+ var openTooltip = React.useCallback(function () {
3922
+ setTooltipOpenStatus(true);
3923
+ }, []);
3924
+ var closeTooltip = React.useCallback(function () {
3925
+ setTooltipOpenStatus(false);
3926
+ }, []);
3927
+ var updateChoropleth = React.useCallback(function () {
3928
+ // Apply changes by removing the existing choropleth and creating a new one
3929
+ // instead of mutating the current
3930
+ exports.cleanupChoropleth(shapeId, sourceId, map); // In order to set a different color and opacity to each choropleth region
3931
+ // we are creating a different layer for each region, and each layer requires a source
3932
+
3933
+ map.current.addSource(sourceId, {
3934
+ type: 'geojson',
3935
+ data: formattedGeomData
3936
+ });
3937
+ map.current.addLayer({
3938
+ id: shapeId,
3939
+ type: 'fill',
3940
+ source: sourceId,
3941
+ layout: {},
3942
+ paint: {
3943
+ 'fill-opacity': validOpacity,
3944
+ 'fill-color': color
3945
+ }
3946
+ });
3947
+ map.current.on('mousemove', shapeId, function (e) {
3948
+ var mouseLngLat = e.lngLat;
3949
+ setmouseLat(mouseLngLat.lat);
3950
+ setmouseLng(mouseLngLat.lng);
3951
+ openTooltip();
3952
+ map.current.getCanvas().style.cursor = 'pointer'; // eslint-disable-line no-param-reassign
3953
+ });
3954
+ map.current.on('mouseleave', shapeId, function () {
3955
+ closeTooltip();
3956
+ map.current.getCanvas().style.cursor = ''; // eslint-disable-line no-param-reassign
3957
+ });
3958
+ map.current.on('click', shapeId, function (e) {
3959
+ handleMapClick(e);
3960
+ });
3961
+ }, [shapeId, sourceId, map, color, validOpacity, formattedGeomData]);
3962
+ React.useEffect(function () {
3963
+ updateChoropleth();
3964
+ }, [map, geomData, color, opacity, id]); // Clean up on unmount
3965
+
3966
+ React.useEffect(function () {
3967
+ return function () {
3968
+ return exports.cleanupChoropleth(shapeId, sourceId, map);
3969
+ };
3970
+ }, []);
3971
+
3972
+ if (isThemeChanged) {
3973
+ // Theme changes will reset the style layers of the entire map
3974
+ // so we need to rerender the choropleths
3975
+ updateChoropleth();
3976
+ }
3977
+
3978
+ return React.createElement(MarkerWrapper_1.default, {
3979
+ isChoroplethTooltipOpen: isTooltipOpen,
3980
+ additionalFields: additionalFields,
3981
+ latitude: mouseLat,
3982
+ longitude: mouseLng,
3983
+ map: map,
3984
+ areaId: areaId,
3985
+ areaValue: areaValue
3986
+ }, React.createElement("div", {
3987
+ "data-test": "choropleth-anchor",
3988
+ style: {
3989
+ padding: '24px',
3990
+ visibility: 'hidden'
3991
+ }
3992
+ }));
3993
+ }, exports.compareChoropleth);
3994
+ Choropleth.displayName = 'MapChoropleth';
3995
+
3996
+ var ChoroplethLayer = function ChoroplethLayer(props) {
3997
+ var _a, _b, _c, _d, _e, _f, _g, _h;
3998
+
3999
+ var map = props.map,
4000
+ choroplethLayer = props.choroplethLayer,
4001
+ isThemeChanged = props.isThemeChanged,
4002
+ setIsThemeChanged = props.setIsThemeChanged,
4003
+ onMapClick = props.onMapClick;
4004
+ var scaledOpacities = (_a = MapUtils_1.getScaledOpacities(choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.dataColors)) !== null && _a !== void 0 ? _a : [];
4005
+ var colors = (_b = choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.dataColors) === null || _b === void 0 ? void 0 : _b.map(function (color) {
4006
+ return (color === null || color === void 0 ? void 0 : color.length) > 7 ? color.slice(0, 7) : color;
4007
+ });
4008
+ var limit = Math.min((_c = choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.areaIds) === null || _c === void 0 ? void 0 : _c.length, (_d = choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.areaValues) === null || _d === void 0 ? void 0 : _d.length, (_f = (_e = choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.geom) === null || _e === void 0 ? void 0 : _e.length) !== null && _f !== void 0 ? _f : 0, (choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.resultLimit) ? choroplethLayer.resultLimit : MapUtils_1.DEFAULT_RESULT_LIMIT);
4009
+ var areaIdSliced = (_h = (_g = choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.areaIds) === null || _g === void 0 ? void 0 : _g.slice(0, limit)) !== null && _h !== void 0 ? _h : []; // generate a unique id if areaIds are not unique
4010
+
4011
+ var uniqueAreaIdSliced = lodash_1.uniq(areaIdSliced).length !== areaIdSliced.length ? areaIdSliced.map(function (id, i) {
4012
+ return "".concat(id).concat(i);
4013
+ }) : areaIdSliced;
4014
+ var additionalFields = (choroplethLayer === null || choroplethLayer === void 0 ? void 0 : choroplethLayer.metadata) ? choroplethLayer.metadata.map(function (choroplethMetadata) {
4015
+ return choroplethLayer.additionalTooltipFields.map(function (field) {
4016
+ return {
4017
+ name: field,
4018
+ value: choroplethMetadata[field]
4019
+ };
4020
+ });
4021
+ }) : [];
4022
+
4023
+ var _handleMapClick = function handleMapClick(e, i) {
4024
+ var payload = MapUtils_1.formatMetadata(choroplethLayer, i);
4025
+ onMapClick({
4026
+ e: e,
4027
+ payload: payload
4028
+ });
4029
+ };
4030
+
4031
+ if (!map || !choroplethLayer || !choroplethLayer.geom) {
4032
+ return React.createElement(React.Fragment, null);
4033
+ }
4034
+
4035
+ if (isThemeChanged) {
4036
+ setIsThemeChanged(false);
4037
+ }
4038
+
4039
+ return React.createElement("div", null, uniqueAreaIdSliced.map(function (id, i) {
4040
+ var areaId = areaIdSliced[i];
4041
+ var areaValue = choroplethLayer.areaValues[i];
4042
+ return React.createElement(Choropleth, {
4043
+ key: id,
4044
+ id: id,
4045
+ geomData: choroplethLayer.geom[i],
4046
+ map: map,
4047
+ color: colors[i],
4048
+ opacity: scaledOpacities[i],
4049
+ isThemeChanged: isThemeChanged,
4050
+ areaId: areaId,
4051
+ areaValue: areaValue,
4052
+ additionalFields: additionalFields[i],
4053
+ handleMapClick: function handleMapClick(e) {
4054
+ return _handleMapClick(e, i);
4055
+ }
4056
+ });
4057
+ }));
4058
+ };
4059
+
4060
+ exports.default = ChoroplethLayer;
4061
+
4062
+ /***/ }),
4063
+ /* 206 */
4064
+ /***/ (function(module, exports, __webpack_require__) {
4065
+
4066
+ "use strict";
4067
+
4068
+
4069
+ Object.defineProperty(exports, "__esModule", {
4070
+ value: true
4071
+ });
4072
+
4073
+ var visualization_icons_1 = __webpack_require__(46);
4074
+
4075
+ var placeholders_1 = __webpack_require__(45);
4076
+
4077
+ var schemaUtils_1 = __webpack_require__(16);
4078
+
4079
+ var visualization_color_palettes_1 = __webpack_require__(44);
4080
+
4081
+ var themes_1 = __webpack_require__(69);
3686
4082
 
3687
4083
  var i18n_1 = __webpack_require__(3);
3688
4084
 
3689
4085
  var VizBehavior_1 = __webpack_require__(5);
3690
4086
 
3691
- var VizCategory_1 = __webpack_require__(28);
4087
+ var VizCategory_1 = __webpack_require__(29);
3692
4088
 
3693
4089
  var configUtils_1 = __webpack_require__(6);
3694
4090
 
4091
+ var MapUtils_1 = __webpack_require__(79);
4092
+
3695
4093
  var defaultContext = {
3696
4094
  colorRangeConfig: [{
3697
4095
  to: 20,
@@ -3748,7 +4146,7 @@ var optionsSchema = {
3748
4146
  // The option merging of defaults and data binding with editing UI happens with the default defined below.
3749
4147
  // The inner defaults for properties within anyOf objects is used only for code intellisense in UDF to populate options.
3750
4148
  default: [{
3751
- type: 'bubble',
4149
+ type: MapUtils_1.LAYER_TYPE.Bubble,
3752
4150
  latitude: '> primary | seriesByName("latitude")',
3753
4151
  longitude: '> primary | seriesByName("longitude")',
3754
4152
  seriesColors: visualization_color_palettes_1.VIZ_CATEGORICAL,
@@ -3756,12 +4154,19 @@ var optionsSchema = {
3756
4154
  additionalTooltipFields: [],
3757
4155
  resultLimit: 1000
3758
4156
  }, {
3759
- type: 'marker',
4157
+ type: MapUtils_1.LAYER_TYPE.Marker,
3760
4158
  latitude: '> primary | seriesByName("latitude")',
3761
4159
  longitude: '> primary | seriesByName("longitude")',
3762
4160
  seriesColors: visualization_color_palettes_1.VIZ_CATEGORICAL,
3763
4161
  additionalTooltipFields: [],
3764
4162
  resultLimit: 1000
4163
+ }, {
4164
+ type: MapUtils_1.LAYER_TYPE.Choropleth,
4165
+ areaIds: '> primary | seriesByType("string")',
4166
+ areaValues: '> primary | seriesByType("number")',
4167
+ dataColors: '> areaValues | gradient()',
4168
+ additionalTooltipFields: [],
4169
+ resultLimit: 1000
3765
4170
  }],
3766
4171
  type: 'array',
3767
4172
  description: 'Specify the optional data visualization layers over the base map. If empty, only the base map appears.',
@@ -3770,13 +4175,13 @@ var optionsSchema = {
3770
4175
  type: 'object',
3771
4176
  properties: {
3772
4177
  type: {
3773
- description: 'Specify the type of data layer method to display points on the map. For example, “bubble” or “marker”.',
4178
+ description: 'Specify the type of data layer method to display points on the map. For example, “bubble”, “marker”, or "choropleth".',
3774
4179
  type: 'string',
3775
- pattern: schemaUtils_1.getPattern(['marker', 'bubble']),
3776
- default: 'marker'
4180
+ pattern: schemaUtils_1.getPattern([MapUtils_1.LAYER_TYPE.Marker, MapUtils_1.LAYER_TYPE.Bubble, MapUtils_1.LAYER_TYPE.Choropleth]),
4181
+ default: MapUtils_1.LAYER_TYPE.Marker
3777
4182
  },
3778
4183
  latitude: {
3779
- description: 'Specify a dataSource series to apply latitude coordinates for data points displayed on the map.',
4184
+ description: 'Specify a dataSource series to apply latitude coordinates for data points displayed on the map. This applies to layers where type: "bubble" or type: "marker".',
3780
4185
  type: ['string', 'array'],
3781
4186
  items: {
3782
4187
  type: 'number'
@@ -3784,31 +4189,78 @@ var optionsSchema = {
3784
4189
  default: '> primary | seriesByName("latitude")'
3785
4190
  },
3786
4191
  longitude: {
3787
- description: 'Specify a dataSource series to apply longitude coordinates for data points displayed on the map.',
4192
+ description: 'Specify a dataSource series to apply longitude coordinates for data points displayed on the map. This applies to layers where type: "bubble" or type: "marker".',
3788
4193
  type: ['string', 'array'],
3789
4194
  items: {
3790
4195
  type: 'number'
3791
4196
  },
3792
4197
  default: '> primary | seriesByName("longitude")'
3793
4198
  },
4199
+ seriesColors: {
4200
+ description: 'Specify the colors to use for data points. If the dataColors option is specified, the seriesColors option is ignored. The seriesColors option applies to layers where type: "bubble" or type: "marker".',
4201
+ type: 'array',
4202
+ items: {
4203
+ type: 'string',
4204
+ pattern: schemaUtils_1.COLOR_OR_TOKEN_PATTERN_WITH_RGBA
4205
+ },
4206
+ default: visualization_color_palettes_1.VIZ_CATEGORICAL
4207
+ },
3794
4208
  dataColors: {
3795
- 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)”. ',
4209
+ description: 'Specify the colors to use for data points. You can use an array of colors to be picked from, or you can use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. When type: "choropleth", dataColors is defined by default, and the opacities are shown at 80% of maximum to allow textual information to be visible in the map. By default, the dataColors option is not defined for type "bubble" or "marker".',
3796
4210
  type: ['string', 'array'],
3797
4211
  items: {
3798
4212
  type: 'string'
3799
4213
  }
3800
4214
  },
3801
- seriesColors: {
3802
- description: 'Specify the colors used for data points. If the dataColors option is specified, the seriesColors option is ignored.',
4215
+ additionalTooltipFields: {
4216
+ 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 are shown in addition to the ones displayed by default.',
3803
4217
  type: 'array',
3804
4218
  items: {
3805
- type: 'string',
3806
- pattern: schemaUtils_1.COLOR_OR_TOKEN_PATTERN_WITH_RGBA
4219
+ type: 'string'
3807
4220
  },
3808
- default: visualization_color_palettes_1.VIZ_CATEGORICAL
4221
+ default: []
4222
+ },
4223
+ resultLimit: {
4224
+ description: 'Specify the maximum number of data points to render on the map. Adjust the value to improve performance.',
4225
+ type: 'number',
4226
+ default: 1000
4227
+ }
4228
+ }
4229
+ }, {
4230
+ type: 'object',
4231
+ properties: {
4232
+ type: {
4233
+ description: 'Specify the type of data layer method to display points on the map. For example, “bubble”, “marker”, or "choropleth".',
4234
+ type: 'string',
4235
+ pattern: schemaUtils_1.getPattern([MapUtils_1.LAYER_TYPE.Marker, MapUtils_1.LAYER_TYPE.Bubble, MapUtils_1.LAYER_TYPE.Choropleth]),
4236
+ default: MapUtils_1.LAYER_TYPE.Choropleth
4237
+ },
4238
+ areaIds: {
4239
+ description: 'Specify a dataSource series to identify each area in the choropleth map layer. This applies to layers where type: "choropleth".',
4240
+ type: 'array',
4241
+ items: {
4242
+ type: 'string'
4243
+ },
4244
+ default: '> primary | seriesByType("string")'
4245
+ },
4246
+ areaValues: {
4247
+ description: 'Specify a dataSource series that indicates the values for the choropleth map areas. This applies to layers where type: "choropleth".',
4248
+ type: 'array',
4249
+ items: {
4250
+ type: 'number'
4251
+ },
4252
+ default: '> primary | seriesByType("number")'
4253
+ },
4254
+ dataColors: {
4255
+ description: 'Specify the colors to use for data points. You can use an array of colors to be picked from, or you can use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. When type: "choropleth", dataColors is defined by default, and the opacities are shown at 80% of maximum to allow textual information to be visible in the map. By default, the dataColors option is not defined for type "bubble" or "marker".',
4256
+ type: ['string', 'array'],
4257
+ items: {
4258
+ type: 'string'
4259
+ },
4260
+ default: '> areaValues | gradient()'
3809
4261
  },
3810
4262
  additionalTooltipFields: {
3811
- 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.',
4263
+ 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 are shown in addition to the ones displayed by default.',
3812
4264
  type: 'array',
3813
4265
  items: {
3814
4266
  type: 'string'
@@ -3825,10 +4277,10 @@ var optionsSchema = {
3825
4277
  type: 'object',
3826
4278
  properties: {
3827
4279
  type: {
3828
- description: 'Specify the type of data layer method to display points on the map. For example, “bubble” or “marker”.',
4280
+ description: 'Specify the type of data layer method to display points on the map. For example, “bubble”, “marker”, or "choropleth".',
3829
4281
  type: 'string',
3830
- pattern: schemaUtils_1.getPattern(['marker', 'bubble']),
3831
- default: 'bubble'
4282
+ pattern: schemaUtils_1.getPattern([MapUtils_1.LAYER_TYPE.Marker, MapUtils_1.LAYER_TYPE.Bubble, MapUtils_1.LAYER_TYPE.Choropleth]),
4283
+ default: MapUtils_1.LAYER_TYPE.Bubble
3832
4284
  },
3833
4285
  bubbleSize: {
3834
4286
  description: 'Specify the data column to encode bubble size. This applies to layers where type: "bubble".',
@@ -3839,7 +4291,7 @@ var optionsSchema = {
3839
4291
  default: '> primary | frameWithoutSeriesNames("geobin", "latitude", "longitude") | frameBySeriesTypes("number")'
3840
4292
  },
3841
4293
  latitude: {
3842
- description: 'Specify a dataSource series to apply latitude coordinates for data points displayed on the map.',
4294
+ description: 'Specify a dataSource series to apply latitude coordinates for data points displayed on the map. This applies to layers where type: "bubble" or type: "marker".',
3843
4295
  type: ['string', 'array'],
3844
4296
  items: {
3845
4297
  type: 'number'
@@ -3847,22 +4299,15 @@ var optionsSchema = {
3847
4299
  default: '> primary | seriesByName("latitude")'
3848
4300
  },
3849
4301
  longitude: {
3850
- description: 'Specify a dataSource series to apply longitude coordinates for data points displayed on the map.',
4302
+ description: 'Specify a dataSource series to apply longitude coordinates for data points displayed on the map. This applies to layers where type: "bubble" or type: "marker".',
3851
4303
  type: ['string', 'array'],
3852
4304
  items: {
3853
4305
  type: 'number'
3854
4306
  },
3855
4307
  default: '> primary | seriesByName("longitude")'
3856
4308
  },
3857
- dataColors: {
3858
- 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)”. ',
3859
- type: ['string', 'array'],
3860
- items: {
3861
- type: 'string'
3862
- }
3863
- },
3864
4309
  seriesColors: {
3865
- description: 'Specify the colors used for data points. If the dataColors option is specified, the seriesColors option is ignored.',
4310
+ description: 'Specify the colors to use for data points. If the dataColors option is specified, the seriesColors option is ignored. The seriesColors option applies to layers where type: "bubble" or type: "marker".',
3866
4311
  type: 'array',
3867
4312
  items: {
3868
4313
  type: 'string',
@@ -3870,8 +4315,15 @@ var optionsSchema = {
3870
4315
  },
3871
4316
  default: visualization_color_palettes_1.VIZ_CATEGORICAL
3872
4317
  },
4318
+ dataColors: {
4319
+ description: 'Specify the colors to use for data points. You can use an array of colors to be picked from, or you can use a dataSource to apply dynamic coloring. For example, “> primary | seriesByName("status") | matchValue(colorMatchConfig)”. When type: "choropleth", dataColors is defined by default, and the opacities are shown at 80% of maximum to allow textual information to be visible in the map. By default, the dataColors option is not defined for type "bubble" or "marker".',
4320
+ type: ['string', 'array'],
4321
+ items: {
4322
+ type: 'string'
4323
+ }
4324
+ },
3873
4325
  additionalTooltipFields: {
3874
- 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.',
4326
+ 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 are shown in addition to the ones displayed by default.',
3875
4327
  type: 'array',
3876
4328
  items: {
3877
4329
  type: 'string'
@@ -3944,6 +4396,11 @@ var themes = {
3944
4396
  })(props);
3945
4397
  }
3946
4398
  };
4399
+
4400
+ var checkTypeIsChoropleth = function checkTypeIsChoropleth(options) {
4401
+ return options.layers && options.layers.length && options.layers[0].type === MapUtils_1.LAYER_TYPE.Choropleth;
4402
+ };
4403
+
3947
4404
  var editorConfig = [{
3948
4405
  label: i18n_1._('Data Layer Formatting'),
3949
4406
  layout: [[{
@@ -3953,16 +4410,49 @@ var editorConfig = [{
3953
4410
  editorProps: {
3954
4411
  values: [{
3955
4412
  label: i18n_1._('Marker'),
3956
- value: 'marker'
4413
+ value: MapUtils_1.LAYER_TYPE.Marker
3957
4414
  }, {
3958
4415
  label: i18n_1._('Bubble'),
3959
- value: 'bubble'
4416
+ value: MapUtils_1.LAYER_TYPE.Bubble
4417
+ }, {
4418
+ label: i18n_1._('Choropleth'),
4419
+ value: MapUtils_1.LAYER_TYPE.Choropleth
3960
4420
  }]
3961
4421
  }
4422
+ }], [{
4423
+ label: i18n_1._('Region Area IDs'),
4424
+ option: 'layers[0].areaIds',
4425
+ editor: 'editor.columnSelector',
4426
+ showEditor: function showEditor(_ref) {
4427
+ var options = _ref.options;
4428
+ return checkTypeIsChoropleth(options);
4429
+ },
4430
+ editorProps: {
4431
+ dataSourceKey: 'primary',
4432
+ shouldShowInternalFields: false,
4433
+ filterByTypes: ['string']
4434
+ }
4435
+ }], [{
4436
+ label: i18n_1._('Values'),
4437
+ option: 'layers[0].areaValues',
4438
+ editor: 'editor.columnSelector',
4439
+ showEditor: function showEditor(_ref2) {
4440
+ var options = _ref2.options;
4441
+ return checkTypeIsChoropleth(options);
4442
+ },
4443
+ editorProps: {
4444
+ dataSourceKey: 'primary',
4445
+ shouldShowInternalFields: false,
4446
+ filterByTypes: ['number']
4447
+ }
3962
4448
  }], [{
3963
4449
  label: i18n_1._('Latitude'),
3964
4450
  option: 'layers[0].latitude',
3965
4451
  editor: 'editor.columnSelector',
4452
+ showEditor: function showEditor(_ref3) {
4453
+ var options = _ref3.options;
4454
+ return !(options.layers && options.layers.length && options.layers[0].type === 'choropleth');
4455
+ },
3966
4456
  editorProps: {
3967
4457
  dataSourceKey: 'primary',
3968
4458
  shouldShowInternalFields: false
@@ -3971,6 +4461,10 @@ var editorConfig = [{
3971
4461
  label: i18n_1._('Longitude'),
3972
4462
  option: 'layers[0].longitude',
3973
4463
  editor: 'editor.columnSelector',
4464
+ showEditor: function showEditor(_ref4) {
4465
+ var options = _ref4.options;
4466
+ return !(options.layers && options.layers.length && options.layers[0].type === 'choropleth');
4467
+ },
3974
4468
  editorProps: {
3975
4469
  dataSourceKey: 'primary',
3976
4470
  shouldShowInternalFields: false
@@ -3979,9 +4473,9 @@ var editorConfig = [{
3979
4473
  label: i18n_1._('Size'),
3980
4474
  option: 'layers[0].bubbleSize',
3981
4475
  editor: 'editor.columnMultiSelector',
3982
- showEditor: function showEditor(_ref) {
3983
- var options = _ref.options;
3984
- return !(options.layers && options.layers.length && options.layers[0].type === 'marker');
4476
+ showEditor: function showEditor(_ref5) {
4477
+ var options = _ref5.options;
4478
+ return !(options.layers && options.layers.length && (options.layers[0].type === 'marker' || options.layers[0].type === 'choropleth'));
3985
4479
  },
3986
4480
  editorProps: {
3987
4481
  dataSourceKey: 'primary',