@splunk/react-visualizations 26.0.0 → 26.1.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.
- package/.loki/reference/chrome_docker_Area_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Label_Rotation_45.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Label_Rotation_90.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Label_Rotation_negative_45.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Label_Rotation_negative_90.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Major_Tick_Labels_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_hide.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_X_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Extend_Axis_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Extend_Axis_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Major_Grid_false_Axis_X_Major_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Major_Tick_Labels_hide.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Major_and_Minor_Ticks_show_Axis_X_Major_Ticks_hide.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Maximum_Number_100000_Axis_X_Major_Tick_Labels_hide.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Minimum_Number_50000.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_major_tick_size_15_and_minor_tick_size_10_Axis_X_major_tick_size_15.png +0 -0
- package/.loki/reference/chrome_docker_Area_Axis_Y_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_Annotation.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_Annotation_with_timezone_context.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_Annotation_with_timezone_context_custom_utcOffset.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_Annotation_with_timezone_context_ianaTimezone.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Label_show_Major_Ticks_show_Minor_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Major_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Major_Unit_200.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Major_and_Minor_Grid_show.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Min_Number_250_Axis_Y2_Max_Number_500.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_Title_specified.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_enabled_and_Title_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Axis_Y2_label_show_Major_Ticks_Size_15_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Line_Width_5.png +0 -0
- package/.loki/reference/chrome_docker_Area_Chart_overlay_on_Y2_mapped_to_specified_field.png +0 -0
- package/.loki/reference/chrome_docker_Area_Data_Labels_all.png +0 -0
- package/.loki/reference/chrome_docker_Area_Data_Labels_minmax.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Colors_Count_green_Percent_orange.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Colors_Count_green_Percent_orange_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Hide_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Hide_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Show_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Area_Field_Show_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Area_Fill_Opacity_0_3.png +0 -0
- package/.loki/reference/chrome_docker_Area_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Area_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Area_Legend_Mode_seriesCompare.png +0 -0
- package/.loki/reference/chrome_docker_Area_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Area_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Area_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Area_Multi_Series.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_Legend_Label_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_Legend_Label_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_very_long_legend_Label_Legend_Style_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_very_long_legend_Label_Legend_Style_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_very_long_legend_Label_Legend_Style_Mode_none.png +0 -0
- package/.loki/reference/chrome_docker_Area_New_very_long_legend_Label_Legend_Style_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Area_Null_Value_Mode_connect.png +0 -0
- package/.loki/reference/chrome_docker_Area_Null_Value_Mode_gaps.png +0 -0
- package/.loki/reference/chrome_docker_Area_Null_Value_Mode_zero.png +0 -0
- package/.loki/reference/chrome_docker_Area_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Area_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Area_Series_Colors_red_and_blue.png +0 -0
- package/.loki/reference/chrome_docker_Area_Series_Colors_red_and_blue_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Area_Show_Lines_false.png +0 -0
- package/.loki/reference/chrome_docker_Area_Split_Series_Independent_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Split_Series_true.png +0 -0
- package/.loki/reference/chrome_docker_Area_Stack_Mode_stacked.png +0 -0
- package/.loki/reference/chrome_docker_Area_Stack_Mode_stacked100.png +0 -0
- package/.loki/reference/chrome_docker_Area_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Area_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Area_Y2_mapped_to_specified_field.png +0 -0
- package/.loki/reference/chrome_docker_Area_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Area_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Area_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Area_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Area_fixed_height_400_width_600.png +0 -0
- package/.loki/reference/chrome_docker_Area_multi_series_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bar_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Label_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Major_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Major_Ticks_Size_15.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_X_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Extend_Axis_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Extend_Axis_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Label_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Major_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Major_Minor_Ticks_show_Axis_X_Major_Ticks_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Major_Unit_10000.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Major_and_Minor_Ticks_Visibility_show_Axis_Y_Major_Ticks_Size_15_Axis_Y_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Maximum_Number_100000.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Minimum_Number_50000.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Minor_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Axis_Y_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Bar_Spacing_10.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Label_Visibility_Major_Ticks_Size_15_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Major_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Major_Unit_200.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Major_and_Minor_Grid_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Min_Number_250_Axis_Y2_Max_Number_500.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_Visibility_show_Major_Ticks_show_Minor_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_and_Abbriviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_and_Title_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_and_Title_specified.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Axis_Y2_enabled_and_Title_visible.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Line_Width_5.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Chart_overlay_on_Y2_mapped_field_specified.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Data_Labels_all.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Data_Labels_minmax.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Colors_Count_green_Percent_orange.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Colors_Count_green_Percent_orange_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Hide_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Hide_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Show_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Field_Show_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Multi_Series.png +0 -0
- package/.loki/reference/chrome_docker_Bar_New_Legend_Label_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Bar_New_Legend_Label_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bar_New_very_long_Legend_Label_Legend_Style_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Bar_New_very_long_legend_label_Legend_Style_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Bar_New_very_long_legend_label_Legend_Style_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Bar_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Series_Colors_red_and_blue.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Series_Colors_red_and_blue_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Series_Spacing_5.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Split_Series_Independent_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Split_Series_true.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Stack_Mode_stacked.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Stack_Mode_stacked100.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Bar_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Bar_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bar_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bar_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bar_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Bar_multi_series_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Extend_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Extend_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Integer_Unit_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Integer_Unit_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Label_Rotation_45.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Label_Rotation_90.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Label_Rotation_negative_45.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Label_Rotation_negative_90.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Label_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Tick_Size_15_Axis_X_Minor_Tick_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Tick_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Unit_10.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Major_Unit_5.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Maximum_Number_20.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Minimum_Number_10.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Minor_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Minor_Tick_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Minor_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_X_Visibility_show_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Extend_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Extend_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Label_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Tick_Size_15_Axis_Y_Minor_Tick_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Tick_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Major_Unit_100.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Maximum_Number_1000.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Minimum_Number_1000.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Minor_Tick_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Minor_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Axis_Y_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Bubble_Maximum_Size_75.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Bubble_Minimum_Size_25.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Bubble_Size_By_area.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Bubble_Size_By_diameter.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Field_Colors_200_green_201_brown.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Field_Colors_200_green_201_brown_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Overflow_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Overflow_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Overflow_Mode_none.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Overflow_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Series_Colors_red_and_blue.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Series_Colors_red_and_blue_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Bubble_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Column_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_Rotation_45.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_Rotation_90.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_Rotation_negative_45.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_Rotation_negative_90.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Label_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Major_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Major_Ticks_Size_15.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Major_Ticks_hide.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_Major_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_hide.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_X_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Extend_Axis_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Extend_Axis_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Label_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Major_Unit_1000.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Major_and_Minor_Ticks_Visibility_show_Axis_Y_Major_Ticks_Size_15_Axis_Y_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Major_and_Minor_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Maximum_Number_100000.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Minimum_Number_50000.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Column_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_Annotation.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Label_show_Major_Ticks_show_Minor_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Major_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Major_Unit_200.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Major_and_Minor_Grid_show.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Min_Number_250_Axis_Y2_Max_Number_500.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_enabled_Title_specified.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_enabled_and_Abbriviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_enabled_and_Title_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Axis_Y2_label_show_Major_Ticks_Size_15_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Line_Width_5.png +0 -0
- package/.loki/reference/chrome_docker_Column_Chart_overlay_on_Y2_mapped_field_specified.png +0 -0
- package/.loki/reference/chrome_docker_Column_Column_Grouping_overlay.png +0 -0
- package/.loki/reference/chrome_docker_Column_Column_Spacing_10.png +0 -0
- package/.loki/reference/chrome_docker_Column_Data_Labels_all.png +0 -0
- package/.loki/reference/chrome_docker_Column_Data_Labels_minmax.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Colors_Count_green_Percent_orange.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Colors_Count_green_Percent_orange_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Hide_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Hide_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Show_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Column_Field_Show_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Column_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Column_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Column_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Column_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Column_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Column_Multi_Series.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_Legend_Label_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_Legend_Label_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_very_long_legend_Label_Legend_Style_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_very_long_legend_Label_Legend_Style_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_very_long_legend_Label_Legend_Style_Mode_none.png +0 -0
- package/.loki/reference/chrome_docker_Column_New_very_long_legend_Label_Legend_Style_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Column_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Column_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Column_Series_Colors_red_and_blue.png +0 -0
- package/.loki/reference/chrome_docker_Column_Series_Colors_red_and_blue_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Column_Series_Spacing_5.png +0 -0
- package/.loki/reference/chrome_docker_Column_Split_Series_Independent_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Split_Series_true.png +0 -0
- package/.loki/reference/chrome_docker_Column_Stack_Mode_stacked.png +0 -0
- package/.loki/reference/chrome_docker_Column_Stack_Mode_stacked100.png +0 -0
- package/.loki/reference/chrome_docker_Column_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Column_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Column_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Column_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Column_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Column_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Column_fixed_height_400_width_600.png +0 -0
- package/.loki/reference/chrome_docker_Column_multi_series_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Line_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_Label_Rotation_45.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_Label_Rotation_90.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_Label_Rotation_negative_45.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_Label_Rotation_negative_90.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_Major_Tick_Labels_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_X_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Extend_Axis_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Extend_Axis_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Major_Grid_false_Axis_X_Major_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Major_Tick_Labels_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Major_Tick_Labels_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Major_and_Minor_Ticks_show_Axis_X_Major_Ticks_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Maximum_Number_100000_Axis_X_Major_Tick_Labels_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Minimum_Number_50000.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_major_tick_size_15_and_minor_tick_size_10_Axis_X_major_tick_size_15.png +0 -0
- package/.loki/reference/chrome_docker_Line_Axis_Y_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_Annotation.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Label_show_Major_Ticks_show_Minor_Ticks_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Major_Label_hide.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Major_Unit_200.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Major_and_Minor_Grid_show.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Min_Number_250_Axis_Y2_Max_Number_500.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_enabled_Axis_Y2_Integer_Units_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_enabled_Title_specified.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_enabled_and_Title_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Axis_Y2_label_show_Major_Ticks_Size_15_Minor_Ticks_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Line_Chart_overlay_on_Y2_mapped_to_specified_field.png +0 -0
- package/.loki/reference/chrome_docker_Line_Data_Labels_all.png +0 -0
- package/.loki/reference/chrome_docker_Line_Data_Labels_minmax.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Colors_Count_green_Percent_orange.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Colors_Count_green_Percent_orange_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_dot_Percent_dash.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_longDashDot_Percent_longDashDotDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_longDash_Percent_dashDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_shortDashDot_Percent_shortDashDotDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_shortDash_Percent_shortDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Dash_Style_Count_shortDash_Percent_shortDot_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Hide_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Hide_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Show_List_percent.png +0 -0
- package/.loki/reference/chrome_docker_Line_Field_Show_List_percent_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Line_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Line_Legend_Mode_seriesCompare.png +0 -0
- package/.loki/reference/chrome_docker_Line_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Line_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Line_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_dash.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_dashDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_dot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_longDash.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_longDashDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_longDashDotDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_shortDash.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_shortDashDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_shortDashDotDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Dash_Style_shortDot.png +0 -0
- package/.loki/reference/chrome_docker_Line_Line_Width_5.png +0 -0
- package/.loki/reference/chrome_docker_Line_Multi_Series.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_Legend_Label_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_Legend_Label_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_very_long_legend_Label_Legend_Style_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_very_long_legend_Label_Legend_Style_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_very_long_legend_Label_Legend_Style_Mode_none.png +0 -0
- package/.loki/reference/chrome_docker_Line_New_very_long_legend_Label_Legend_Style_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Line_Null_Value_Mode_connect.png +0 -0
- package/.loki/reference/chrome_docker_Line_Null_Value_Mode_gaps.png +0 -0
- package/.loki/reference/chrome_docker_Line_Null_Value_Mode_zero.png +0 -0
- package/.loki/reference/chrome_docker_Line_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Line_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Line_Series_Colors_red_and_blue.png +0 -0
- package/.loki/reference/chrome_docker_Line_Series_Colors_red_and_blue_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Line_Show_Markers_false.png +0 -0
- package/.loki/reference/chrome_docker_Line_Split_Series_Independent_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Split_Series_true.png +0 -0
- package/.loki/reference/chrome_docker_Line_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Line_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Line_Y2_mapped_to_specified_field.png +0 -0
- package/.loki/reference/chrome_docker_Line_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Line_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Line_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Line_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Line_fixed_height_400_width_600.png +0 -0
- package/.loki/reference/chrome_docker_Line_multi_series_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Pie_100_height_and_width.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Background_Color_orange.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Label_Overflow_Mode_end.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Label_Overflow_Mode_middle.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Label_Overflow_Mode_none.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Label_Overflow_Mode_start.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_InnerSize_0_70_Show_Labels_false_Show_Legend_true_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_Inner_Size_0_70.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Donut_Inner_Size_0_70_Show_Labels_false_Show_Legend_true.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Field_Color_December_green_May_red.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Field_Color_December_green_May_red_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Font_Color_purple.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Label_and_Value_Titles_specified.png +0 -0
- package/.loki/reference/chrome_docker_Pie_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Series_Colors_yellow_blue_green.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Series_Colors_yellow_blue_green_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Show_Legend_true.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Show_Percent_true.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Slice_Collapsing_Label_newCollapsingLabel.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Slice_Collapsing_Threshold_0.png +0 -0
- package/.loki/reference/chrome_docker_Pie_Slice_Collapsing_Threshold_40.png +0 -0
- package/.loki/reference/chrome_docker_Pie_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Pie_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Pie_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Pie_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Pie_fixed_height_300_width_300.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Extend_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Extend_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Integer_Unit_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Integer_Unit_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Label_Rotation_45.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Label_Rotation_90.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Label_Rotation_negative_45.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Label_Rotation_negative_90.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Major_Label_Visibility_hide_Axis_Y_Major_Label_Visibility_hide.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Major_Tick_Size_15_Axis_X_Minor_Tick_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Major_Unit_5.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Maximum_Number_20.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Minimum_Number_10.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Minor_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Visibility_hide_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_X_Visibility_show_Axis_Y_Major_Grid_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Abbreviation_on.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Extend_Range_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Extend_Range_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Include_Zero_false.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Include_Zero_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Major_Grid_false_Axis_Y_Minor_Grid_true.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Major_Tick_Size_15_Axis_Y_Minor_Tick_Size_10.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Major_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Major_Unit_100.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Maximum_Number_1000.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Minimum_Number_1000.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Minor_Tick_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Scale_log.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Axis_Y_Visibility_show.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Background_Color_green.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Field_Colors_200_green_201_orange.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Field_Colors_200_green_201_orange_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Font_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Foreground_Color_red.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Overflow_Mode_ellipsisEnd.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Overflow_Mode_ellipsisMiddle.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Overflow_Mode_ellipsisNone.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Overflow_Mode_ellipsisStart.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Placement_bottom.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Placement_left.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Placement_none.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Legend_Placement_top.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Marker_Size_6.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_SCP_categorical_color_palette.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Scaled_wrapper.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Series_Colors_red_blue_and_green.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Series_Colors_red_blue_and_green_deprecated_option_type_string.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Title_of_Axis_Y_and_Axis_X_collapsed.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_Title_of_Axis_Y_and_Axis_X_specified.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_Scatter_default_height_width.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_100_height_and_width.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Background_color_white.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Delta_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_Opacity_0_3.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_Position_after.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_Position_below.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_Position_top.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_activity.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Icon_clock.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Major_Color_blue.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_ShowTrendIndicator_disabled.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_Show_Icon_false.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_basic.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_fixed_height_300_width_300.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueIcon_no_props.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_100_height_and_width.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Background_color_flamenco.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Background_color_is_white.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Radial_Background_Color_pink.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Radial_Stroke_Color_valencia.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Thousand_Separators_disabled.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Thousand_Separators_enabled_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Display_Mode_absolute_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Display_Mode_percent.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_Position_below.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_Position_outside.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_Position_pushed_below_value_does_not_feet_inside_of_radial.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_Position_standard_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_disabled.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Trend_Indicator_enabled_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Under_label_specified.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Unit_specified_Unit_Position_after_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_Unit_specified_Unit_Position_before.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_basic_dark_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_basic_default_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_basic_scp_theme.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_fixed_height_300_width_300.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_fixed_height_35_width_35.png +0 -0
- package/.loki/reference/chrome_docker_SingleValueRadial_no_props.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_100_height_width.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Automatic_font_sizing_should_not_overflow.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Medium_card_250_width_686.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Number_Precision_2.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Small_card_width_250.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Position_after.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Position_before.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Use_Trend_Units_enabled_billions.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Use_Trend_Units_enabled_hundreds.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Use_Trend_Units_enabled_thousands.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Sparkline_Use_Trend_Units_enabled_trillions.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Thousand_Separators_disabled.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Thousand_Separators_enabled_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Trend_Display_Mode_Delta_Color_specified.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Trend_Display_Mode_percent.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Trend_Display_Mode_percent_value_equals_deltaValue.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_Unit_specified_Unit_Position_after_default.png +0 -0
- package/.loki/reference/chrome_docker_SingleValue_fixed_height_300_width_300.png +0 -0
- package/Area.js +56 -30
- package/Area.js.map +1 -1
- package/Bar.js +52 -26
- package/Bar.js.map +1 -1
- package/Bubble.js +54 -28
- package/Bubble.js.map +1 -1
- package/Column.js +62 -35
- package/Column.js.map +1 -1
- package/FillerGauge.js +2 -0
- package/FillerGauge.js.map +1 -1
- package/GeoJsonChoropleth.js +451 -89
- package/GeoJsonChoropleth.js.map +1 -1
- package/Line.js +56 -30
- package/Line.js.map +1 -1
- package/MarkerGauge.js +2 -0
- package/MarkerGauge.js.map +1 -1
- package/Pie.js +43 -23
- package/Pie.js.map +1 -1
- package/Punchcard.js +6 -3
- package/Punchcard.js.map +1 -1
- package/Scatter.js +52 -26
- package/Scatter.js.map +1 -1
- package/SingleValue.js +29 -13
- package/SingleValue.js.map +1 -1
- package/SingleValueIcon.js +30 -13
- package/SingleValueIcon.js.map +1 -1
- package/SingleValueRadial.js +182 -134
- package/SingleValueRadial.js.map +1 -1
- package/SvgChoropleth.js +69 -21
- package/SvgChoropleth.js.map +1 -1
- package/SvgChoroplethDynamic.js +11 -2
- package/SvgChoroplethDynamic.js.map +1 -1
- package/common/Charting.js +119 -36
- package/common/Charting.js.map +1 -1
- package/common/ChartingApi.js +15 -5
- package/common/ChartingApi.js.map +1 -1
- package/common/EventsDoc.js +64 -21
- package/common/EventsDoc.js.map +1 -1
- package/common/OptionsDoc.js +17 -6
- package/common/OptionsDoc.js.map +1 -1
- package/common/props.js +3 -0
- package/common/props.js.map +1 -1
- package/package.json +16 -18
- package/utils/numberUtils.js +4 -4
- package/utils/numberUtils.js.map +1 -1
- package/utils/propUtils.js +2 -2
- package/utils/propUtils.js.map +1 -1
- package/utils/seriesUtils.js +1 -0
- package/utils/seriesUtils.js.map +1 -1
package/SingleValueRadial.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"prop-types\"","webpack:///external \"react\"","webpack:///external \"@splunk/visualizations-shared/SanitizeProps\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"styled-components\"","webpack:///external \"lodash/omit\"","webpack:///external \"lodash/isEmpty\"","webpack:///external \"@splunk/visualizations/common/utils/singleValueUtils\"","webpack:///./src/utils/propUtils.js","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@splunk/visualizations-shared/Message\"","webpack:///external \"@splunk/visualizations/SingleValueBasic\"","webpack:///external \"lodash/pick\"","webpack:///external \"@splunk/visualizations-shared/style\"","webpack:///external \"@splunk/visualizations-shared/SizeAwareWrapper\"","webpack:///./src/visualizations/SingleValueRadial/src/components/RadialGraph.jsx","webpack:///./src/visualizations/SingleValueRadial/src/utils/displayUtils.js","webpack:///./src/visualizations/SingleValueRadial/src/components/RadialLayout.jsx","webpack:///./src/visualizations/SingleValueRadial/src/components/SingleValueRadial.jsx","webpack:///./src/visualizations/SingleValueRadial/SingleValueRadial.jsx"],"names":["propsConvert","oldProps","propsMapping","newProps","Object","keys","forEach","propKey","key","propsDeprecate","props","deprecatedProps","omit","RadialGraph","_ref","progress","_ref$size","size","strokeWidth","_ref$backgroundColor","backgroundColor","RADIAL_BACKGROUND_COLOR","_ref$progressColor","progressColor","RADIAL_STROKE_COLOR","normalizedSize","normalizedRadius","circumference","Math","PI","bgCircleOffset","progress80","progressWidth","strokeDashoffset","React","createElement","height","width","stroke","fill","strokeDasharray","concat","style","r","cx","cy","propTypes","T","number","string","defaultProps","VALID_TREND_POSITIONS","MAJOR_FONT_THRESHOLD","TREND_FONT_THRESHOLD","DEFAULT_RADIAL_STROKE_WIDTH","SMALL_RADIAL_STROKE_WIDTH","getRadialColors","backgroundEnabled","getGraphColors","defaultColors","RADIAL_SEVERITY_COLORS","customColorFormatter","color","background","lighten","darken","getGraphSize","_ref2","underLabel","min","DEFAULT_FONT","getValueContentSize","_ref3","graphSize","radialStrokeWidth","diameter","floor","sqrt","pow","getRadialStrokeWidth","isValidPosition","position","indexOf","computeTrendIndicatorPosition","_ref4","trendIndicatorPosition","majorTextFontSize","trendTextFontSize","showTrendPositionStandard","_ref5","showTrendIndicator","showTrendPositionBelow","_ref6","showTrendPositionOutside","_ref7","getRadialProgress","majorValue","Number","isNaN","max","PositionDiv","styled","div","withConfig","displayName","componentId","bottom","align","Column","Row","Square","UnderLabelContainer","renderIsolateTrend","trendText","trendColor","contentSize","getTrendFontSize","spaceRatio","SingleValueTrendValue","fontSize","value","text","RadialContent","_extends","majorColor","majorText","majorValueTitle","trendPosition","unit","unitPosition","underLabelColor","underLabelFontSize","onValueClick","showRadialGraph","radialBackgroundColor","radialStrokeColor","trendComponent","basicSingleValues","SingleValueBasic","radialGraph","underLabelComponent","outsideComponent","belowTrendComponent","textAlign","_objectSpread","bool","Container","toDimension","pick","VizStyleWrapper","attrs","dataTestKey","SingleValueRadial","_props$height","majorFontSize","majorValueField","trendValue","trendFontSize","numberPrecision","shouldUseThousandSeparators","shouldAbbreviateTrendValue","_props$trendIndicator","defaultFontColor","pickFromTheme","enterprise","dark","variables","textColor","light","gray20","prisma","contentColorActive","defaultBlockFontColor","white","_computeColors","computeColors","radialColors","handleValueClick","useCallback","ev","handleValueClickCallback","renderVisualization","containerWidth","containerHeight","Message","message","_","level","trendDisplay","valueContentSize","getUnderLabelHeight","toRemoveList","_computeSingleValueCo","computeSingleValueContent","contentWidth","contentHeight","smallVizProps","isEmpty","RadialLayout","shouldShowTrend","SizeAwareWrapper","containerDimension","oneOfType","object","oneOf","func","withTheme","deltaValue","deltaColor","deltaFontSize","useTrendUnits","useThousandSeparators","ReactSingleValueRadial","trendDisplayMode","PureSingleValueRadial","withSanitizedProps"],"mappings":"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","file":"SingleValueRadial.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 71);\n","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"@splunk/visualizations-shared/SanitizeProps\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash/omit\");","module.exports = require(\"lodash/isEmpty\");","module.exports = require(\"@splunk/visualizations/common/utils/singleValueUtils\");","import omit from 'lodash/omit';\n\n/**\n * convert the old props to new props for pure visualization based on propsMapping\n * @param {Object} oldProps props used by react visualizations\n * @param {Object} propsMapping\n * @return {Object} newprops props used by pure visualizations\n */\nexport const propsConvert = (oldProps, propsMapping) => {\n const newProps = {};\n Object.keys(oldProps).forEach(propKey => {\n const key = propsMapping[propKey] || propKey;\n newProps[key] = oldProps[propKey];\n });\n return newProps;\n};\n\n/**\n * omit the deprecated props for pure visualization\n * @param {Object} props props used by react visualizations\n * @param {Array} deprecatedProps\n * @return {Object} newprops props used by pure visualizations\n */\nexport const propsDeprecate = (props, deprecatedProps) => omit(props, deprecatedProps);\n","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualizations-shared/Message\");","module.exports = require(\"@splunk/visualizations/SingleValueBasic\");","module.exports = require(\"lodash/pick\");","module.exports = require(\"@splunk/visualizations-shared/style\");","module.exports = require(\"@splunk/visualizations-shared/SizeAwareWrapper\");","// this is a copy of RadialGraph.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React from 'react';\nimport T from 'prop-types';\nimport { RADIAL_BACKGROUND_COLOR, RADIAL_STROKE_COLOR } from '@splunk/visualizations-shared/colorConstants';\n\nconst RadialGraph = ({\n progress,\n size = 200,\n strokeWidth,\n backgroundColor = RADIAL_BACKGROUND_COLOR,\n progressColor = RADIAL_STROKE_COLOR,\n}) => {\n const normalizedSize = size / 2;\n const normalizedRadius = normalizedSize - strokeWidth * 2;\n const circumference = normalizedRadius * 2 * Math.PI;\n const bgCircleOffset = 0.8 * circumference;\n\n const progress80 = (progress / 100) * 80;\n\n const progressWidth = (progress80 / 100) * circumference;\n\n // Offset the start of the circle to a position that makes the arc look evenly spaced\n // with the opening at the bottom\n // We use 80% of a circle (288deg), half on each side of \"0\" (144deg)\n // SVG starts drawing (0deg) at the 3 o'clock position, so add another 90 to offset this (234deg)\n // This means the arc length that we offset is 2 * PI * r * 234/360 or ...\n const strokeDashoffset = circumference * 0.65;\n\n return (\n <svg height={normalizedSize * 2} width={normalizedSize * 2}>\n <g>\n <circle\n data-test=\"background-radial\"\n stroke={backgroundColor}\n fill=\"transparent\"\n strokeWidth={strokeWidth}\n strokeDasharray={`${bgCircleOffset} ${circumference - bgCircleOffset}`}\n style={{ strokeDashoffset }}\n r={normalizedRadius}\n cx={normalizedSize}\n cy={normalizedSize}\n />\n <circle\n data-test=\"progress-radial\"\n stroke={progressColor}\n fill=\"transparent\"\n strokeWidth={strokeWidth}\n strokeDasharray={`${progressWidth} ${circumference - progressWidth}`}\n style={{ strokeDashoffset }}\n r={normalizedRadius}\n cx={normalizedSize}\n cy={normalizedSize}\n />\n </g>\n </svg>\n );\n};\n\nRadialGraph.propTypes = {\n progress: T.number,\n size: T.number,\n strokeWidth: T.number,\n backgroundColor: T.string,\n progressColor: T.string,\n};\n\nRadialGraph.defaultProps = {\n progress: 0,\n strokeWidth: 12,\n};\n\nexport default RadialGraph;\n","// this is a copy of displayUtils.js @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport { RADIAL_SEVERITY_COLORS } from '@splunk/visualizations-shared/colorConstants';\nimport {\n DEFAULT_FONT,\n getGraphColors,\n lighten,\n darken,\n} from '@splunk/visualizations/common/utils/singleValueUtils';\n\nexport const VALID_TREND_POSITIONS = ['standard', 'below', 'outside'];\nexport const MAJOR_FONT_THRESHOLD = 25;\nexport const TREND_FONT_THRESHOLD = 12;\nexport const DEFAULT_RADIAL_STROKE_WIDTH = 12;\nexport const SMALL_RADIAL_STROKE_WIDTH = 6;\n\n/**\n * Get the colors for a radial graph based on severity\n * @method getRadialColors\n * @param {Object} props\n * @param {Bool} props.backgroundEnabled\n * @param {String} props.backgroundColor\n * @returns {Object} { background, stroke } colors\n */\nexport const getRadialColors = ({ backgroundEnabled, backgroundColor }) =>\n getGraphColors({\n backgroundEnabled,\n backgroundColor,\n defaultColors: RADIAL_SEVERITY_COLORS,\n customColorFormatter: color => ({ background: lighten(color), stroke: darken(color) }),\n });\n\n/**\n * Figure out the diameter of the graph\n * @method getGraphSize\n * @param {Object} props\n * @param {Number} props.width // Width of the container\n * @param {Number} props.height // Height of the container\n * @param {Number} props.underLabel // Underlabel if present\n * @returns {Number} diameter of the graph\n */\nexport const getGraphSize = ({ width, height, underLabel }) => {\n let size = Math.min(width, height);\n\n if (underLabel) {\n size -= DEFAULT_FONT;\n }\n\n return size;\n};\n\n/**\n * Get the maximum size of the container that holds the graph text\n * @method getValueContentSize\n * @param {Object} props\n * @param {Number} props.graphSize\n * @param {Number} props.radialStrokeWidth // Stroke width of the graph\n * @returns {Number} content size for showing major and trend values in radial graph\n */\nexport const getValueContentSize = ({ graphSize, radialStrokeWidth }) => {\n // Account for the graph's stroke width\n const diameter = graphSize - radialStrokeWidth;\n // Use pythagoreum theorum with circle diameter\n // to calculate the size of the sides of the square inside the circle\n return Math.floor(Math.sqrt(diameter ** 2 / 2));\n};\n\n/*\n * @method getRadialStrokeWidth\n * @param {Number} graphSize\n * @returns {Number} radial stroke width\n */\nexport const getRadialStrokeWidth = graphSize =>\n graphSize >= 90 ? DEFAULT_RADIAL_STROKE_WIDTH : SMALL_RADIAL_STROKE_WIDTH;\n\n/*\n * @method isValidPosition\n * @param {String} position\n * @returns {Bool}\n */\nexport const isValidPosition = position => VALID_TREND_POSITIONS.indexOf(position) > -1;\n\n/**\n * Compute the trend indicator position based on font size of major and trend value\n * @method computeTrendIndicatorPosition\n * @param {Object} props\n * @param {String} props.trendIndicatorPosition\n * @param {Number} props.majorTextFontSize\n * @param {Number} props.trendTextFontSize\n * @returns {String} trend indicator position in radial graph\n */\nexport const computeTrendIndicatorPosition = ({\n trendIndicatorPosition,\n majorTextFontSize,\n trendTextFontSize,\n}) => {\n let position = trendIndicatorPosition;\n\n if (!isValidPosition(position)) {\n position = 'standard';\n }\n\n if (\n position !== 'outside' &&\n (trendTextFontSize < TREND_FONT_THRESHOLD || majorTextFontSize < MAJOR_FONT_THRESHOLD)\n ) {\n position = 'below';\n }\n return position;\n};\n\n/*\n * @method showTrendPositionStandard\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionStandard = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'standard';\n\n/*\n * @method showTrendPositionBelow\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionBelow = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'below';\n\n/*\n * @method showTrendPositionOutside\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionOutside = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'outside';\n\n/*\n * todo: need handle max and min\n * @method getRadialProgress\n * @param {Number} majorValue\n * @returns {Number} progress bar in radial graph\n */\nexport const getRadialProgress = majorValue =>\n Number.isNaN(Number(majorValue)) ? 0 : (majorValue / Math.max(majorValue, 100)) * 100;\n","// this is a copy of RadialLayout.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport SingleValueBasic, { SingleValueTrendValue } from '@splunk/visualizations/SingleValueBasic';\nimport { getTrendFontSize } from '@splunk/visualizations/common/utils/singleValueUtils';\nimport RadialGraph from './RadialGraph';\nimport {\n showTrendPositionStandard,\n showTrendPositionBelow,\n showTrendPositionOutside,\n} from '../utils/displayUtils';\n\nconst PositionDiv = styled.div`\n position: absolute;\n ${props => (props.bottom ? '' : 'top: 0')};\n bottom: ${props => props.bottom || 0}px;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: ${props => props.align || 'center'};\n justify-content: center;\n`;\n\nconst Column = styled.div`\n display: flex;\n flex-direction: column;\n align-items: ${props => props.align || 'center'};\n justify-content: ${props => props.align || 'center'};\n`;\nconst Row = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n`;\n\nconst Square = styled.div`\n position: relative;\n margin: 0 auto;\n width: ${props => props.size}px;\n height: ${props => props.size}px;\n`;\n\nconst UnderLabelContainer = styled.div`\n color: ${props => props.color};\n margin-top: ${props => (props.size && `-${props.size * 0.1}px`) || 0};\n font-size: ${props => props.size || 12}px;\n`;\n\n/**\n * Render the trend indicator\n * @method renderTrendValue\n * @returns {Object}\n * @private\n */\n\nconst renderIsolateTrend = ({ trendText, trendColor, contentSize }) => {\n const trendTextFontSize = getTrendFontSize({\n width: contentSize / 2,\n height: contentSize / 4,\n trendText,\n spaceRatio: 1,\n });\n\n return (\n <SingleValueTrendValue\n fontSize={trendTextFontSize}\n color={trendColor}\n value={trendText}\n text={trendText}\n />\n );\n};\n\nrenderIsolateTrend.propTypes = {\n trendText: T.string,\n trendColor: T.string,\n contentSize: T.number,\n};\n\nconst RadialContent = ({ ...props }) => {\n const {\n majorColor,\n majorText,\n majorTextFontSize,\n majorValueTitle,\n trendColor,\n trendText,\n trendTextFontSize,\n showTrendIndicator,\n trendPosition,\n unit,\n unitPosition,\n underLabelColor,\n underLabelFontSize,\n underLabel,\n onValueClick,\n contentSize,\n showRadialGraph,\n graphSize,\n progress,\n radialBackgroundColor,\n radialStrokeColor,\n radialStrokeWidth,\n } = props;\n\n // for trend position below and outside\n const trendComponent = renderIsolateTrend({ trendText, trendColor, contentSize });\n\n const basicSingleValues = (\n <SingleValueBasic\n majorColor={majorColor}\n majorText={majorText}\n majorTextFontSize={majorTextFontSize}\n majorValueTitle={majorValueTitle}\n trendColor={trendColor}\n trendText={trendText}\n trendTextFontSize={trendTextFontSize}\n showTrendIndicator={showTrendPositionStandard({ showTrendIndicator, position: trendPosition })}\n unit={unit}\n unitPosition={unitPosition}\n onValueClick={onValueClick}\n />\n );\n const radialGraph = showRadialGraph ? (\n <RadialGraph\n size={graphSize}\n progress={progress}\n backgroundColor={radialBackgroundColor}\n progressColor={radialStrokeColor}\n strokeWidth={radialStrokeWidth}\n />\n ) : null;\n\n const underLabelComponent = underLabel ? (\n <UnderLabelContainer data-test=\"underLabel\" color={underLabelColor} size={underLabelFontSize}>\n {underLabel}\n </UnderLabelContainer>\n ) : null;\n\n const outsideComponent = showTrendPositionOutside({ showTrendIndicator, position: trendPosition }) ? (\n <Column align=\"end\" data-test=\"trend-position-outside\">\n {trendComponent}\n {underLabelComponent}\n </Column>\n ) : null;\n\n const belowTrendComponent = showTrendPositionBelow({ showTrendIndicator, position: trendPosition }) ? (\n <PositionDiv\n data-test=\"trend-position-below\"\n align=\"flex-end\"\n bottom={graphSize * 0.1}\n style={{ textAlign: 'center' }}\n >\n {trendComponent}\n </PositionDiv>\n ) : null;\n\n return (\n <Row>\n <Column>\n <Square size={graphSize}>\n {radialGraph}\n {belowTrendComponent}\n <PositionDiv>{basicSingleValues}</PositionDiv>\n </Square>\n {trendPosition !== 'outside' && underLabelComponent}\n </Column>\n {outsideComponent}\n </Row>\n );\n};\n\nRadialContent.propTypes = {\n ...SingleValueBasic.propTypes,\n trendPosition: T.string,\n contentSize: T.number,\n showRadialGraph: T.bool,\n graphSize: T.number,\n progress: T.number,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n radialStrokeWidth: T.number,\n};\n\nexport default RadialContent;\n","// this is a copy of SingleValueRadial.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React, { useCallback } from 'react';\nimport T from 'prop-types';\nimport pickFromTheme from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport styled, { withTheme } from 'styled-components';\nimport pick from 'lodash/pick';\nimport isEmpty from 'lodash/isEmpty';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { toDimension } from '@splunk/visualizations-shared/style';\nimport SizeAwareWrapper from '@splunk/visualizations-shared/SizeAwareWrapper';\nimport Message from '@splunk/visualizations-shared/Message';\nimport {\n computeColors,\n computeSingleValueContent,\n getUnderLabelHeight,\n shouldShowTrend,\n handleValueClickCallback,\n} from '@splunk/visualizations/common/utils/singleValueUtils';\nimport RadialLayout from './RadialLayout';\nimport {\n getGraphSize,\n getValueContentSize,\n getRadialProgress,\n getRadialStrokeWidth,\n computeTrendIndicatorPosition,\n getRadialColors,\n} from '../utils/displayUtils';\n\nconst Container = styled.div`\n overflow: hidden;\n ${props => toDimension(pick(props, ['width', 'height']))};\n`;\n\nconst VizStyleWrapper = styled.div.attrs(({ dataTestKey }) => ({\n 'data-test': dataTestKey,\n}))`\n display: flex;\n justify-content: center;\n flex-direction: column;\n width: 100%;\n height: 100%;\n background-color: ${props => props.backgroundColor};\n`;\n\nVizStyleWrapper.displayName = 'VizStyleWrapper';\n\nconst SingleValueRadial = ({ ...props }) => {\n const {\n width,\n height = 250,\n style,\n majorFontSize,\n majorValue,\n majorValueField,\n trendValue,\n trendFontSize,\n unitPosition,\n numberPrecision,\n shouldUseThousandSeparators,\n shouldAbbreviateTrendValue,\n trendIndicatorPosition = 'standard',\n onValueClick,\n } = props;\n\n // calculate colors\n const defaultColors = {\n defaultFontColor: pickFromTheme({\n enterprise: {\n dark: variables.textColor(props),\n light: variables.gray20(props),\n },\n prisma: variables.contentColorActive(props),\n })(props),\n defaultBlockFontColor: pickFromTheme({\n enterprise: variables.white(props),\n prisma: variables.contentColorActive(props),\n })(props),\n };\n const { backgroundEnabled, backgroundColor, majorColor, trendColor, underLabelColor } = computeColors(\n props,\n defaultColors\n );\n\n const radialColors = getRadialColors({ backgroundEnabled, backgroundColor });\n const radialBackgroundColor = props.radialBackgroundColor || radialColors.background;\n const radialStrokeColor = props.radialStrokeColor || radialColors.stroke;\n\n const handleValueClick = useCallback(\n ev => handleValueClickCallback(ev, majorValue, majorValueField, trendValue, onValueClick),\n [onValueClick, majorValue, majorValueField, trendValue]\n );\n\n const renderVisualization = ({ width: containerWidth, height: containerHeight }) => {\n if (containerWidth < 35 || containerHeight < 35) {\n return (\n <Message\n width={containerWidth}\n height={containerHeight}\n message={_('Too small to render content')}\n level=\"info\"\n />\n );\n }\n\n // will update later based on text size\n let { trendDisplay, unit, underLabel } = props;\n let showRadialGraph = true;\n\n // calculate radial graph, major and trend content, and underlabel size\n const graphSize = getGraphSize({ width: containerWidth, height: containerHeight, underLabel });\n const radialStrokeWidth = getRadialStrokeWidth(graphSize);\n const valueContentSize = getValueContentSize({ graphSize, radialStrokeWidth });\n const underLabelFontSize = getUnderLabelHeight(graphSize * 0.1);\n\n // calculate major and trend text\n const toRemoveList = [\n { key: 'underLabel', value: '' },\n { key: 'showRadialGraph', value: false },\n { key: 'trendDisplay', value: 'off' },\n { key: 'unit', value: '' },\n ];\n const {\n majorText,\n trendText,\n majorTextFontSize,\n trendTextFontSize,\n majorValueTitle,\n smallVizProps,\n } = computeSingleValueContent({\n majorValue,\n trendValue,\n majorFontSize,\n trendFontSize,\n trendDisplay,\n contentWidth: valueContentSize,\n contentHeight: valueContentSize,\n containerWidth,\n containerHeight,\n unit,\n numberPrecision,\n shouldUseThousandSeparators,\n shouldAbbreviateTrendValue,\n toRemoveList,\n });\n if (!isEmpty(smallVizProps)) {\n ({ underLabel, showRadialGraph, trendDisplay, unit } = smallVizProps);\n }\n\n // calculate trend position\n const position = computeTrendIndicatorPosition({\n trendIndicatorPosition,\n majorTextFontSize,\n trendTextFontSize,\n });\n\n // calculate radial\n const progress = getRadialProgress(majorValue);\n\n return (\n <VizStyleWrapper\n backgroundColor={backgroundColor}\n style={style}\n dataTestKey=\"SingleValueRadialWrapper\"\n >\n <RadialLayout\n data-test=\"RadialLayout\"\n majorColor={majorColor}\n majorText={majorText}\n majorTextFontSize={majorTextFontSize}\n majorValueTitle={majorValueTitle}\n trendColor={trendColor}\n trendText={trendText}\n trendTextFontSize={trendTextFontSize}\n showTrendIndicator={shouldShowTrend(trendDisplay)}\n trendPosition={position}\n unit={unit}\n unitPosition={unitPosition}\n underLabelColor={underLabelColor}\n underLabelFontSize={underLabelFontSize}\n underLabel={underLabel}\n onValueClick={handleValueClick}\n contentSize={valueContentSize * 0.7}\n showRadialGraph={showRadialGraph}\n graphSize={graphSize}\n progress={progress}\n radialBackgroundColor={radialBackgroundColor}\n radialStrokeColor={radialStrokeColor}\n radialStrokeWidth={radialStrokeWidth}\n />\n </VizStyleWrapper>\n );\n };\n\n return (\n <Container width={width} height={height}>\n <SizeAwareWrapper>\n {containerDimension => renderVisualization(containerDimension)}\n </SizeAwareWrapper>\n </Container>\n );\n};\n\nSingleValueRadial.propTypes = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n style: T.object,\n majorValue: T.oneOfType([T.string, T.number]),\n majorValueField: T.string,\n majorColor: T.string,\n majorFontSize: T.number,\n trendValue: T.oneOfType([T.string, T.number]),\n trendColor: T.string,\n trendFontSize: T.number,\n trendDisplay: T.string,\n trendIndicatorPosition: T.oneOf(['standard', 'below', 'outside']),\n shouldAbbreviateTrendValue: T.bool,\n backgroundColor: T.string,\n unit: T.string,\n unitPosition: T.string,\n underLabel: T.string,\n numberPrecision: T.number,\n shouldUseThousandSeparators: T.bool,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n onValueClick: T.func,\n};\n\nSingleValueRadial.defaultProps = {\n width: '100%',\n height: 250,\n majorValue: 'N/A',\n majorValueField: '',\n trendDisplay: 'absolute',\n trendIndicatorPosition: 'standard',\n shouldAbbreviateTrendValue: false,\n unitPosition: 'after',\n numberPrecision: 0,\n shouldUseThousandSeparators: true,\n onValueClick: () => {},\n};\n\nexport default withTheme(SingleValueRadial);\n","import React from 'react';\nimport T from 'prop-types';\nimport { withSanitizedProps } from '@splunk/visualizations-shared/SanitizeProps';\nimport PureSingleValueRadial from './src/components/SingleValueRadial';\nimport { propsConvert, propsDeprecate } from '../../utils/propUtils';\n\n// This propsMapping is for React SingleValue to use PureSingleValue.\nconst propsMapping = {\n value: 'majorValue',\n deltaValue: 'trendValue',\n deltaColor: 'trendColor',\n deltaFontSize: 'trendFontSize',\n useTrendUnits: 'shouldAbbreviateTrendValue',\n useThousandSeparators: 'shouldUseThousandSeparators',\n};\n\nconst deprecatedProps = ['showTrendIndicator', 'trendDisplayMode'];\n\nconst ReactSingleValueRadial = ({ ...props }) => {\n let newProps = propsConvert(props, propsMapping);\n // change props\n const trendDisplay = newProps.showTrendIndicator ? newProps.trendDisplayMode : 'off';\n newProps = {\n ...propsDeprecate(newProps, deprecatedProps),\n trendDisplay,\n };\n return <PureSingleValueRadial {...newProps} />;\n};\n\nReactSingleValueRadial.propTypes = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n style: T.object,\n value: T.oneOfType([T.string, T.number]),\n majorColor: T.string,\n majorFontSize: T.number,\n deltaValue: T.oneOfType([T.string, T.number]),\n deltaColor: T.string,\n deltaFontSize: T.number,\n trendDisplayMode: T.string,\n trendIndicatorPosition: T.oneOf(['standard', 'below', 'outside']),\n useTrendUnits: T.bool,\n showTrendIndicator: T.bool,\n backgroundColor: T.string,\n unit: T.string,\n unitPosition: T.string,\n underLabel: T.string,\n numberPrecision: T.number,\n useThousandSeparators: T.bool,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n onValueClick: T.func,\n};\n\nReactSingleValueRadial.defaultProps = {\n width: '100%',\n height: 250,\n trendDisplayMode: 'absolute',\n trendIndicatorPosition: 'standard',\n useTrendUnits: false,\n showTrendIndicator: true,\n unitPosition: 'after',\n numberPrecision: 0,\n useThousandSeparators: true,\n onValueClick: () => {},\n};\n\nexport default withSanitizedProps(ReactSingleValueRadial);\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"prop-types\"","webpack:///external \"react\"","webpack:///external \"@splunk/visualizations-shared/SanitizeProps\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"styled-components\"","webpack:///external \"lodash/omit\"","webpack:///external \"lodash/isEmpty\"","webpack:///external \"@splunk/visualizations/common/utils/singleValueUtils\"","webpack:///./src/utils/propUtils.js","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@splunk/visualizations-shared/Message\"","webpack:///external \"@splunk/visualizations/SingleValueBasic\"","webpack:///external \"lodash/pick\"","webpack:///external \"@splunk/visualizations-shared/style\"","webpack:///external \"@splunk/visualizations-shared/SizeAwareWrapper\"","webpack:///./src/visualizations/SingleValueRadial/src/components/RadialGraph.jsx","webpack:///./src/visualizations/SingleValueRadial/src/utils/displayUtils.js","webpack:///./src/visualizations/SingleValueRadial/src/components/RadialLayout.jsx","webpack:///./src/visualizations/SingleValueRadial/src/components/SingleValueRadial.jsx","webpack:///./src/visualizations/SingleValueRadial/SingleValueRadial.jsx"],"names":["propsConvert","newProps","Object","key","propsMapping","oldProps","propsDeprecate","omit","RadialGraph","progress","size","strokeWidth","backgroundColor","RADIAL_BACKGROUND_COLOR","progressColor","RADIAL_STROKE_COLOR","normalizedSize","normalizedRadius","circumference","Math","bgCircleOffset","progress80","progressWidth","strokeDashoffset","T","string","VALID_TREND_POSITIONS","MAJOR_FONT_THRESHOLD","TREND_FONT_THRESHOLD","DEFAULT_RADIAL_STROKE_WIDTH","SMALL_RADIAL_STROKE_WIDTH","getRadialColors","backgroundEnabled","getGraphColors","defaultColors","customColorFormatter","background","lighten","stroke","darken","getGraphSize","width","height","underLabel","getValueContentSize","graphSize","radialStrokeWidth","diameter","getRadialStrokeWidth","isValidPosition","computeTrendIndicatorPosition","trendIndicatorPosition","majorTextFontSize","trendTextFontSize","position","showTrendPositionStandard","showTrendIndicator","showTrendPositionBelow","showTrendPositionOutside","getRadialProgress","Number","majorValue","PositionDiv","styled","props","Column","Row","Square","UnderLabelContainer","renderIsolateTrend","trendText","trendColor","contentSize","getTrendFontSize","spaceRatio","number","RadialContent","majorColor","majorText","majorValueTitle","trendPosition","unit","unitPosition","underLabelColor","underLabelFontSize","onValueClick","showRadialGraph","radialBackgroundColor","radialStrokeColor","trendComponent","basicSingleValues","radialGraph","underLabelComponent","outsideComponent","belowTrendComponent","textAlign","SingleValueBasic","Container","toDimension","pick","VizStyleWrapper","dataTestKey","SingleValueRadial","style","majorFontSize","majorValueField","trendValue","trendFontSize","numberPrecision","shouldUseThousandSeparators","shouldAbbreviateTrendValue","defaultFontColor","enterprise","dark","variables","light","prisma","defaultBlockFontColor","computeColors","radialColors","handleValueClick","useCallback","handleValueClickCallback","renderVisualization","containerWidth","containerHeight","_","trendDisplay","valueContentSize","getUnderLabelHeight","toRemoveList","value","computeSingleValueContent","contentWidth","contentHeight","smallVizProps","isEmpty","shouldShowTrend","func","withTheme","deltaValue","deltaColor","deltaFontSize","useTrendUnits","useThousandSeparators","deprecatedProps","ReactSingleValueRadial","trendDisplayMode","withSanitizedProps"],"mappings":"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","file":"SingleValueRadial.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 71);\n","module.exports = require(\"prop-types\");","module.exports = require(\"react\");","module.exports = require(\"@splunk/visualizations-shared/SanitizeProps\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash/omit\");","module.exports = require(\"lodash/isEmpty\");","module.exports = require(\"@splunk/visualizations/common/utils/singleValueUtils\");","import omit from 'lodash/omit';\n\n/**\n * convert the old props to new props for pure visualization based on propsMapping\n * @param {Object} oldProps props used by react visualizations\n * @param {Object} propsMapping\n * @return {Object} newprops props used by pure visualizations\n */\nexport const propsConvert = (oldProps, propsMapping) => {\n const newProps = {};\n Object.keys(oldProps).forEach(propKey => {\n const key = propsMapping[propKey] || propKey;\n newProps[key] = oldProps[propKey];\n });\n return newProps;\n};\n\n/**\n * omit the deprecated props for pure visualization\n * @param {Object} props props used by react visualizations\n * @param {Array} deprecatedProps\n * @return {Object} newprops props used by pure visualizations\n */\nexport const propsDeprecate = (props, deprecatedProps) => omit(props, deprecatedProps);\n","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualizations-shared/Message\");","module.exports = require(\"@splunk/visualizations/SingleValueBasic\");","module.exports = require(\"lodash/pick\");","module.exports = require(\"@splunk/visualizations-shared/style\");","module.exports = require(\"@splunk/visualizations-shared/SizeAwareWrapper\");","// this is a copy of RadialGraph.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React from 'react';\nimport T from 'prop-types';\nimport { RADIAL_BACKGROUND_COLOR, RADIAL_STROKE_COLOR } from '@splunk/visualizations-shared/colorConstants';\n\nconst RadialGraph = ({\n progress,\n size = 200,\n strokeWidth,\n backgroundColor = RADIAL_BACKGROUND_COLOR,\n progressColor = RADIAL_STROKE_COLOR,\n}) => {\n const normalizedSize = size / 2;\n const normalizedRadius = normalizedSize - strokeWidth * 2;\n const circumference = normalizedRadius * 2 * Math.PI;\n const bgCircleOffset = 0.8 * circumference;\n\n const progress80 = (progress / 100) * 80;\n\n const progressWidth = (progress80 / 100) * circumference;\n\n // Offset the start of the circle to a position that makes the arc look evenly spaced\n // with the opening at the bottom\n // We use 80% of a circle (288deg), half on each side of \"0\" (144deg)\n // SVG starts drawing (0deg) at the 3 o'clock position, so add another 90 to offset this (234deg)\n // This means the arc length that we offset is 2 * PI * r * 234/360 or ...\n const strokeDashoffset = circumference * 0.65;\n\n return (\n <svg height={normalizedSize * 2} width={normalizedSize * 2}>\n <g>\n <circle\n data-test=\"background-radial\"\n stroke={backgroundColor}\n fill=\"transparent\"\n strokeWidth={strokeWidth}\n strokeDasharray={`${bgCircleOffset} ${circumference - bgCircleOffset}`}\n style={{ strokeDashoffset }}\n r={normalizedRadius}\n cx={normalizedSize}\n cy={normalizedSize}\n />\n <circle\n data-test=\"progress-radial\"\n stroke={progressColor}\n fill=\"transparent\"\n strokeWidth={strokeWidth}\n strokeDasharray={`${progressWidth} ${circumference - progressWidth}`}\n style={{ strokeDashoffset }}\n r={normalizedRadius}\n cx={normalizedSize}\n cy={normalizedSize}\n />\n </g>\n </svg>\n );\n};\n\nRadialGraph.propTypes = {\n progress: T.number,\n size: T.number,\n strokeWidth: T.number,\n backgroundColor: T.string,\n progressColor: T.string,\n};\n\nRadialGraph.defaultProps = {\n progress: 0,\n strokeWidth: 12,\n};\n\nexport default RadialGraph;\n","// this is a copy of displayUtils.js @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport { RADIAL_SEVERITY_COLORS } from '@splunk/visualizations-shared/colorConstants';\nimport {\n DEFAULT_FONT,\n getGraphColors,\n lighten,\n darken,\n} from '@splunk/visualizations/common/utils/singleValueUtils';\n\nexport const VALID_TREND_POSITIONS = ['standard', 'below', 'outside'];\nexport const MAJOR_FONT_THRESHOLD = 25;\nexport const TREND_FONT_THRESHOLD = 12;\nexport const DEFAULT_RADIAL_STROKE_WIDTH = 12;\nexport const SMALL_RADIAL_STROKE_WIDTH = 6;\n\n/**\n * Get the colors for a radial graph based on severity\n * @method getRadialColors\n * @param {Object} props\n * @param {Bool} props.backgroundEnabled\n * @param {String} props.backgroundColor\n * @returns {Object} { background, stroke } colors\n */\nexport const getRadialColors = ({ backgroundEnabled, backgroundColor }) =>\n getGraphColors({\n backgroundEnabled,\n backgroundColor,\n defaultColors: RADIAL_SEVERITY_COLORS,\n customColorFormatter: color => ({ background: lighten(color), stroke: darken(color) }),\n });\n\n/**\n * Figure out the diameter of the graph\n * @method getGraphSize\n * @param {Object} props\n * @param {Number} props.width // Width of the container\n * @param {Number} props.height // Height of the container\n * @param {Number} props.underLabel // Underlabel if present\n * @returns {Number} diameter of the graph\n */\nexport const getGraphSize = ({ width, height, underLabel }) => {\n let size = Math.min(width, height);\n\n if (underLabel) {\n size -= DEFAULT_FONT;\n }\n\n return size;\n};\n\n/**\n * Get the maximum size of the container that holds the graph text\n * @method getValueContentSize\n * @param {Object} props\n * @param {Number} props.graphSize\n * @param {Number} props.radialStrokeWidth // Stroke width of the graph\n * @returns {Number} content size for showing major and trend values in radial graph\n */\nexport const getValueContentSize = ({ graphSize, radialStrokeWidth }) => {\n // Account for the graph's stroke width\n const diameter = graphSize - radialStrokeWidth;\n // Use pythagoreum theorum with circle diameter\n // to calculate the size of the sides of the square inside the circle\n return Math.floor(Math.sqrt(diameter ** 2 / 2));\n};\n\n/*\n * @method getRadialStrokeWidth\n * @param {Number} graphSize\n * @returns {Number} radial stroke width\n */\nexport const getRadialStrokeWidth = graphSize =>\n graphSize >= 90 ? DEFAULT_RADIAL_STROKE_WIDTH : SMALL_RADIAL_STROKE_WIDTH;\n\n/*\n * @method isValidPosition\n * @param {String} position\n * @returns {Bool}\n */\nexport const isValidPosition = position => VALID_TREND_POSITIONS.indexOf(position) > -1;\n\n/**\n * Compute the trend indicator position based on font size of major and trend value\n * @method computeTrendIndicatorPosition\n * @param {Object} props\n * @param {String} props.trendIndicatorPosition\n * @param {Number} props.majorTextFontSize\n * @param {Number} props.trendTextFontSize\n * @returns {String} trend indicator position in radial graph\n */\nexport const computeTrendIndicatorPosition = ({\n trendIndicatorPosition,\n majorTextFontSize,\n trendTextFontSize,\n}) => {\n let position = trendIndicatorPosition;\n\n if (!isValidPosition(position)) {\n position = 'standard';\n }\n\n if (\n position !== 'outside' &&\n (trendTextFontSize < TREND_FONT_THRESHOLD || majorTextFontSize < MAJOR_FONT_THRESHOLD)\n ) {\n position = 'below';\n }\n return position;\n};\n\n/*\n * @method showTrendPositionStandard\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionStandard = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'standard';\n\n/*\n * @method showTrendPositionBelow\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionBelow = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'below';\n\n/*\n * @method showTrendPositionOutside\n * @param {Object} props\n * @param {Bool} props.showTrendIndicator\n * @param {String} props.position\n * @returns {Bool}\n */\nexport const showTrendPositionOutside = ({ showTrendIndicator, position }) =>\n showTrendIndicator && position === 'outside';\n\n/*\n * todo: need handle max and min\n * @method getRadialProgress\n * @param {Number} majorValue\n * @returns {Number} progress bar in radial graph\n */\nexport const getRadialProgress = majorValue =>\n Number.isNaN(Number(majorValue)) ? 0 : (majorValue / Math.max(majorValue, 100)) * 100;\n","// this is a copy of RadialLayout.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport SingleValueBasic, { SingleValueTrendValue } from '@splunk/visualizations/SingleValueBasic';\nimport { getTrendFontSize } from '@splunk/visualizations/common/utils/singleValueUtils';\nimport RadialGraph from './RadialGraph';\nimport {\n showTrendPositionStandard,\n showTrendPositionBelow,\n showTrendPositionOutside,\n} from '../utils/displayUtils';\n\nconst PositionDiv = styled.div`\n position: absolute;\n ${props => (props.bottom ? '' : 'top: 0')};\n bottom: ${props => props.bottom || 0}px;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: ${props => props.align || 'center'};\n justify-content: center;\n`;\n\nconst Column = styled.div`\n display: flex;\n flex-direction: column;\n align-items: ${props => props.align || 'center'};\n justify-content: ${props => props.align || 'center'};\n`;\nconst Row = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n`;\n\nconst Square = styled.div`\n position: relative;\n margin: 0 auto;\n width: ${props => props.size}px;\n height: ${props => props.size}px;\n`;\n\nconst UnderLabelContainer = styled.div`\n color: ${props => props.color};\n margin-top: ${props => (props.size && `-${props.size * 0.1}px`) || 0};\n font-size: ${props => props.size || 12}px;\n`;\n\n/**\n * Render the trend indicator\n * @method renderTrendValue\n * @returns {Object}\n * @private\n */\n\nconst renderIsolateTrend = ({ trendText, trendColor, contentSize }) => {\n const trendTextFontSize = getTrendFontSize({\n width: contentSize / 2,\n height: contentSize / 4,\n trendText,\n spaceRatio: 1,\n });\n\n return (\n <SingleValueTrendValue\n fontSize={trendTextFontSize}\n color={trendColor}\n value={trendText}\n text={trendText}\n />\n );\n};\n\nrenderIsolateTrend.propTypes = {\n trendText: T.string,\n trendColor: T.string,\n contentSize: T.number,\n};\n\nconst RadialContent = ({ ...props }) => {\n const {\n majorColor,\n majorText,\n majorTextFontSize,\n majorValueTitle,\n trendColor,\n trendText,\n trendTextFontSize,\n showTrendIndicator,\n trendPosition,\n unit,\n unitPosition,\n underLabelColor,\n underLabelFontSize,\n underLabel,\n onValueClick,\n contentSize,\n showRadialGraph,\n graphSize,\n progress,\n radialBackgroundColor,\n radialStrokeColor,\n radialStrokeWidth,\n } = props;\n\n // for trend position below and outside\n const trendComponent = renderIsolateTrend({ trendText, trendColor, contentSize });\n\n const basicSingleValues = (\n <SingleValueBasic\n majorColor={majorColor}\n majorText={majorText}\n majorTextFontSize={majorTextFontSize}\n majorValueTitle={majorValueTitle}\n trendColor={trendColor}\n trendText={trendText}\n trendTextFontSize={trendTextFontSize}\n showTrendIndicator={showTrendPositionStandard({ showTrendIndicator, position: trendPosition })}\n unit={unit}\n unitPosition={unitPosition}\n onValueClick={onValueClick}\n />\n );\n const radialGraph = showRadialGraph ? (\n <RadialGraph\n size={graphSize}\n progress={progress}\n backgroundColor={radialBackgroundColor}\n progressColor={radialStrokeColor}\n strokeWidth={radialStrokeWidth}\n />\n ) : null;\n\n const underLabelComponent = underLabel ? (\n <UnderLabelContainer data-test=\"underLabel\" color={underLabelColor} size={underLabelFontSize}>\n {underLabel}\n </UnderLabelContainer>\n ) : null;\n\n const outsideComponent = showTrendPositionOutside({ showTrendIndicator, position: trendPosition }) ? (\n <Column align=\"end\" data-test=\"trend-position-outside\">\n {trendComponent}\n {underLabelComponent}\n </Column>\n ) : null;\n\n const belowTrendComponent = showTrendPositionBelow({ showTrendIndicator, position: trendPosition }) ? (\n <PositionDiv\n data-test=\"trend-position-below\"\n align=\"flex-end\"\n bottom={graphSize * 0.1}\n style={{ textAlign: 'center' }}\n >\n {trendComponent}\n </PositionDiv>\n ) : null;\n\n return (\n <Row>\n <Column>\n <Square size={graphSize}>\n {radialGraph}\n {belowTrendComponent}\n <PositionDiv>{basicSingleValues}</PositionDiv>\n </Square>\n {trendPosition !== 'outside' && underLabelComponent}\n </Column>\n {outsideComponent}\n </Row>\n );\n};\n\nRadialContent.propTypes = {\n ...SingleValueBasic.propTypes,\n trendPosition: T.string,\n contentSize: T.number,\n showRadialGraph: T.bool,\n graphSize: T.number,\n progress: T.number,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n radialStrokeWidth: T.number,\n};\n\nexport default RadialContent;\n","// this is a copy of SingleValueRadial.jsx @ 23.5.0 before the design changes to PureSingleValueRadial were rolled out\nimport React, { useCallback } from 'react';\nimport T from 'prop-types';\nimport pickFromTheme from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport styled, { withTheme } from 'styled-components';\nimport pick from 'lodash/pick';\nimport isEmpty from 'lodash/isEmpty';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { toDimension } from '@splunk/visualizations-shared/style';\nimport SizeAwareWrapper from '@splunk/visualizations-shared/SizeAwareWrapper';\nimport Message from '@splunk/visualizations-shared/Message';\nimport {\n computeColors,\n computeSingleValueContent,\n getUnderLabelHeight,\n shouldShowTrend,\n handleValueClickCallback,\n} from '@splunk/visualizations/common/utils/singleValueUtils';\nimport RadialLayout from './RadialLayout';\nimport {\n getGraphSize,\n getValueContentSize,\n getRadialProgress,\n getRadialStrokeWidth,\n computeTrendIndicatorPosition,\n getRadialColors,\n} from '../utils/displayUtils';\n\nconst Container = styled.div`\n overflow: hidden;\n ${props => toDimension(pick(props, ['width', 'height']))};\n`;\n\nconst VizStyleWrapper = styled.div.attrs(({ dataTestKey }) => ({\n 'data-test': dataTestKey,\n}))`\n display: flex;\n justify-content: center;\n flex-direction: column;\n width: 100%;\n height: 100%;\n background-color: ${props => props.backgroundColor};\n`;\n\nVizStyleWrapper.displayName = 'VizStyleWrapper';\n\nconst SingleValueRadial = ({ ...props }) => {\n const {\n width,\n height = 250,\n style,\n majorFontSize,\n majorValue,\n majorValueField,\n trendValue,\n trendFontSize,\n unitPosition,\n numberPrecision,\n shouldUseThousandSeparators,\n shouldAbbreviateTrendValue,\n trendIndicatorPosition = 'standard',\n onValueClick,\n } = props;\n\n // calculate colors\n const defaultColors = {\n defaultFontColor: pickFromTheme({\n enterprise: {\n dark: variables.textColor(props),\n light: variables.gray20(props),\n },\n prisma: variables.contentColorActive(props),\n })(props),\n defaultBlockFontColor: pickFromTheme({\n enterprise: variables.white(props),\n prisma: variables.contentColorActive(props),\n })(props),\n };\n const { backgroundEnabled, backgroundColor, majorColor, trendColor, underLabelColor } = computeColors(\n props,\n defaultColors\n );\n\n const radialColors = getRadialColors({ backgroundEnabled, backgroundColor });\n const radialBackgroundColor = props.radialBackgroundColor || radialColors.background;\n const radialStrokeColor = props.radialStrokeColor || radialColors.stroke;\n\n const handleValueClick = useCallback(\n ev => handleValueClickCallback(ev, majorValue, majorValueField, trendValue, onValueClick),\n [onValueClick, majorValue, majorValueField, trendValue]\n );\n\n const renderVisualization = ({ width: containerWidth, height: containerHeight }) => {\n if (containerWidth < 35 || containerHeight < 35) {\n return (\n <Message\n width={containerWidth}\n height={containerHeight}\n message={_('Too small to render content')}\n level=\"info\"\n />\n );\n }\n\n // will update later based on text size\n let { trendDisplay, unit, underLabel } = props;\n let showRadialGraph = true;\n\n // calculate radial graph, major and trend content, and underlabel size\n const graphSize = getGraphSize({ width: containerWidth, height: containerHeight, underLabel });\n const radialStrokeWidth = getRadialStrokeWidth(graphSize);\n const valueContentSize = getValueContentSize({ graphSize, radialStrokeWidth });\n const underLabelFontSize = getUnderLabelHeight(graphSize * 0.1);\n\n // calculate major and trend text\n const toRemoveList = [\n { key: 'underLabel', value: '' },\n { key: 'showRadialGraph', value: false },\n { key: 'trendDisplay', value: 'off' },\n { key: 'unit', value: '' },\n ];\n const {\n majorText,\n trendText,\n majorTextFontSize,\n trendTextFontSize,\n majorValueTitle,\n smallVizProps,\n } = computeSingleValueContent({\n majorValue,\n trendValue,\n majorFontSize,\n trendFontSize,\n trendDisplay,\n contentWidth: valueContentSize,\n contentHeight: valueContentSize,\n containerWidth,\n containerHeight,\n unit,\n numberPrecision,\n shouldUseThousandSeparators,\n shouldAbbreviateTrendValue,\n toRemoveList,\n });\n if (!isEmpty(smallVizProps)) {\n ({ underLabel, showRadialGraph, trendDisplay, unit } = smallVizProps);\n }\n\n // calculate trend position\n const position = computeTrendIndicatorPosition({\n trendIndicatorPosition,\n majorTextFontSize,\n trendTextFontSize,\n });\n\n // calculate radial\n const progress = getRadialProgress(majorValue);\n\n return (\n <VizStyleWrapper\n backgroundColor={backgroundColor}\n style={style}\n dataTestKey=\"SingleValueRadialWrapper\"\n >\n <RadialLayout\n data-test=\"RadialLayout\"\n majorColor={majorColor}\n majorText={majorText}\n majorTextFontSize={majorTextFontSize}\n majorValueTitle={majorValueTitle}\n trendColor={trendColor}\n trendText={trendText}\n trendTextFontSize={trendTextFontSize}\n showTrendIndicator={shouldShowTrend(trendDisplay)}\n trendPosition={position}\n unit={unit}\n unitPosition={unitPosition}\n underLabelColor={underLabelColor}\n underLabelFontSize={underLabelFontSize}\n underLabel={underLabel}\n onValueClick={handleValueClick}\n contentSize={valueContentSize * 0.7}\n showRadialGraph={showRadialGraph}\n graphSize={graphSize}\n progress={progress}\n radialBackgroundColor={radialBackgroundColor}\n radialStrokeColor={radialStrokeColor}\n radialStrokeWidth={radialStrokeWidth}\n />\n </VizStyleWrapper>\n );\n };\n\n return (\n <Container width={width} height={height}>\n <SizeAwareWrapper>\n {containerDimension => renderVisualization(containerDimension)}\n </SizeAwareWrapper>\n </Container>\n );\n};\n\nSingleValueRadial.propTypes = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n style: T.object,\n majorValue: T.oneOfType([T.string, T.number]),\n majorValueField: T.string,\n majorColor: T.string,\n majorFontSize: T.number,\n trendValue: T.oneOfType([T.string, T.number]),\n trendColor: T.string,\n trendFontSize: T.number,\n trendDisplay: T.string,\n trendIndicatorPosition: T.oneOf(['standard', 'below', 'outside']),\n shouldAbbreviateTrendValue: T.bool,\n backgroundColor: T.string,\n unit: T.string,\n unitPosition: T.string,\n underLabel: T.string,\n numberPrecision: T.number,\n shouldUseThousandSeparators: T.bool,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n onValueClick: T.func,\n};\n\nSingleValueRadial.defaultProps = {\n width: '100%',\n height: 250,\n majorValue: 'N/A',\n majorValueField: '',\n trendDisplay: 'absolute',\n trendIndicatorPosition: 'standard',\n shouldAbbreviateTrendValue: false,\n unitPosition: 'after',\n numberPrecision: 0,\n shouldUseThousandSeparators: true,\n onValueClick: () => {},\n};\n\nexport default withTheme(SingleValueRadial);\n","import React from 'react';\nimport T from 'prop-types';\nimport { withSanitizedProps } from '@splunk/visualizations-shared/SanitizeProps';\nimport PureSingleValueRadial from './src/components/SingleValueRadial';\nimport { propsConvert, propsDeprecate } from '../../utils/propUtils';\n\n// This propsMapping is for React SingleValue to use PureSingleValue.\nconst propsMapping = {\n value: 'majorValue',\n deltaValue: 'trendValue',\n deltaColor: 'trendColor',\n deltaFontSize: 'trendFontSize',\n useTrendUnits: 'shouldAbbreviateTrendValue',\n useThousandSeparators: 'shouldUseThousandSeparators',\n};\n\nconst deprecatedProps = ['showTrendIndicator', 'trendDisplayMode'];\n\nconst ReactSingleValueRadial = ({ ...props }) => {\n let newProps = propsConvert(props, propsMapping);\n // change props\n const trendDisplay = newProps.showTrendIndicator ? newProps.trendDisplayMode : 'off';\n newProps = {\n ...propsDeprecate(newProps, deprecatedProps),\n trendDisplay,\n };\n return <PureSingleValueRadial {...newProps} />;\n};\n\nReactSingleValueRadial.propTypes = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n style: T.object,\n value: T.oneOfType([T.string, T.number]),\n majorColor: T.string,\n majorFontSize: T.number,\n deltaValue: T.oneOfType([T.string, T.number]),\n deltaColor: T.string,\n deltaFontSize: T.number,\n trendDisplayMode: T.string,\n trendIndicatorPosition: T.oneOf(['standard', 'below', 'outside']),\n useTrendUnits: T.bool,\n showTrendIndicator: T.bool,\n backgroundColor: T.string,\n unit: T.string,\n unitPosition: T.string,\n underLabel: T.string,\n numberPrecision: T.number,\n useThousandSeparators: T.bool,\n radialBackgroundColor: T.string,\n radialStrokeColor: T.string,\n onValueClick: T.func,\n};\n\nReactSingleValueRadial.defaultProps = {\n width: '100%',\n height: 250,\n trendDisplayMode: 'absolute',\n trendIndicatorPosition: 'standard',\n useTrendUnits: false,\n showTrendIndicator: true,\n unitPosition: 'after',\n numberPrecision: 0,\n useThousandSeparators: true,\n onValueClick: () => {},\n};\n\nexport default withSanitizedProps(ReactSingleValueRadial);\n"],"sourceRoot":""}
|
package/SvgChoropleth.js
CHANGED
|
@@ -148,20 +148,31 @@ module.exports = require("@babel/runtime/helpers/getPrototypeOf");
|
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
var _classCallCheck = __webpack_require__(17);
|
|
151
|
+
|
|
151
152
|
var _createClass = __webpack_require__(16);
|
|
153
|
+
|
|
152
154
|
var _inherits = __webpack_require__(23);
|
|
155
|
+
|
|
153
156
|
var _possibleConstructorReturn = __webpack_require__(24);
|
|
157
|
+
|
|
154
158
|
var _getPrototypeOf = __webpack_require__(25);
|
|
159
|
+
|
|
155
160
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
161
|
+
|
|
156
162
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
163
|
+
|
|
157
164
|
Object.defineProperty(exports, "__esModule", {
|
|
158
165
|
value: true
|
|
159
166
|
});
|
|
160
167
|
exports.DATA_ATTRIBUTE = void 0;
|
|
161
168
|
/* eslint-disable no-param-reassign */
|
|
169
|
+
|
|
162
170
|
var React = __webpack_require__(1);
|
|
171
|
+
|
|
163
172
|
var lodash_1 = __webpack_require__(21);
|
|
173
|
+
|
|
164
174
|
var styled_components_1 = __webpack_require__(7);
|
|
175
|
+
|
|
165
176
|
exports.DATA_ATTRIBUTE = 'data-value';
|
|
166
177
|
var StyledSvgChoropleth = styled_components_1.default.div.withConfig({
|
|
167
178
|
displayName: "SvgChoropleth__StyledSvgChoropleth",
|
|
@@ -169,17 +180,24 @@ var StyledSvgChoropleth = styled_components_1.default.div.withConfig({
|
|
|
169
180
|
})(["display:flex;flex-direction:column;position:relative;background-color:", ";"], function (props) {
|
|
170
181
|
return props.backgroundColor;
|
|
171
182
|
});
|
|
183
|
+
|
|
172
184
|
var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
173
185
|
_inherits(SvgChoropleth, _React$Component);
|
|
186
|
+
|
|
174
187
|
var _super = _createSuper(SvgChoropleth);
|
|
188
|
+
|
|
175
189
|
function SvgChoropleth(props) {
|
|
176
190
|
var _this;
|
|
191
|
+
|
|
177
192
|
_classCallCheck(this, SvgChoropleth);
|
|
193
|
+
|
|
178
194
|
_this = _super.call(this, props);
|
|
179
195
|
_this.containerRef = React.createRef();
|
|
180
196
|
_this.highlightedCountry = null;
|
|
197
|
+
|
|
181
198
|
_this.getLocalCoords = function (clientX, clientY) {
|
|
182
199
|
var rect = _this.containerRef.current.getBoundingClientRect();
|
|
200
|
+
|
|
183
201
|
var physX = rect.left;
|
|
184
202
|
var physY = rect.top;
|
|
185
203
|
return {
|
|
@@ -187,31 +205,40 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
187
205
|
y: clientY - physY
|
|
188
206
|
};
|
|
189
207
|
};
|
|
208
|
+
|
|
190
209
|
_this.handleMapClick = function (event) {
|
|
191
210
|
var clientX = event.clientX,
|
|
192
|
-
|
|
211
|
+
clientY = event.clientY;
|
|
212
|
+
|
|
193
213
|
var pos = _this.getLocalCoords(clientX, clientY);
|
|
214
|
+
|
|
194
215
|
var _this$props = _this.props,
|
|
195
|
-
|
|
196
|
-
|
|
216
|
+
featureCollection = _this$props.featureCollection,
|
|
217
|
+
onClick = _this$props.onClick;
|
|
197
218
|
var clickedCoords = featureCollection.transformation.transformBack(pos);
|
|
198
219
|
var feature = event.target;
|
|
199
220
|
var wholeFeature = feature.id ? feature : feature.parentNode;
|
|
221
|
+
|
|
200
222
|
if (onClick) {
|
|
201
223
|
onClick(clickedCoords, wholeFeature.id);
|
|
202
224
|
}
|
|
203
225
|
};
|
|
226
|
+
|
|
204
227
|
_this.handleFeatureEnter = function (ev) {
|
|
205
228
|
var feature = ev.target;
|
|
229
|
+
|
|
206
230
|
if (!feature.id && !feature.ownerSVGElement) {
|
|
207
231
|
return;
|
|
208
232
|
}
|
|
209
|
-
|
|
210
|
-
// remove the highlighted country IF we are entering a different country
|
|
233
|
+
|
|
234
|
+
var wholeFeature = feature.id ? feature : feature.parentNode; // remove the highlighted country IF we are entering a different country
|
|
235
|
+
|
|
211
236
|
if (_this.highlightedCountry && wholeFeature.id !== _this.highlightedCountry.id) {
|
|
212
237
|
_this.unHighlightCountry();
|
|
213
238
|
}
|
|
239
|
+
|
|
214
240
|
_this.highlightCountry(wholeFeature);
|
|
241
|
+
|
|
215
242
|
if (_this.props.onFeatureHover) {
|
|
216
243
|
_this.props.onFeatureHover({
|
|
217
244
|
featureId: wholeFeature.id,
|
|
@@ -220,19 +247,24 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
220
247
|
});
|
|
221
248
|
}
|
|
222
249
|
};
|
|
250
|
+
|
|
223
251
|
_this.handleFeatureLeave = function (ev) {
|
|
224
252
|
var feature = ev.target;
|
|
253
|
+
|
|
225
254
|
if (!feature.id && !feature.ownerSVGElement) {
|
|
226
255
|
return;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
// handling feature leaving should always only deal with the highlighted feature
|
|
256
|
+
} // 'wholeFeature' means the SVG <g> (group) of multipolygon features
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
var wholeFeature = feature.id ? feature : feature.parentNode; // handling feature leaving should always only deal with the highlighted feature
|
|
260
|
+
|
|
231
261
|
if (wholeFeature !== _this.highlightedCountry) {
|
|
232
262
|
return;
|
|
233
263
|
}
|
|
234
|
-
|
|
235
|
-
// wholeFeature.style.stroke = this.lastFeatureStroke;
|
|
264
|
+
|
|
265
|
+
_this.unHighlightCountry(); // wholeFeature.style.stroke = this.lastFeatureStroke;
|
|
266
|
+
|
|
267
|
+
|
|
236
268
|
if (_this.props.onFeatureHover) {
|
|
237
269
|
_this.props.onFeatureHover({
|
|
238
270
|
featureId: null,
|
|
@@ -241,28 +273,33 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
241
273
|
});
|
|
242
274
|
}
|
|
243
275
|
};
|
|
276
|
+
|
|
244
277
|
_this.registerSvg = function (el) {
|
|
245
278
|
if (!el) return;
|
|
246
279
|
_this.svgDom = el;
|
|
247
280
|
var _this$props2 = _this.props,
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
281
|
+
_this$props2$selector = _this$props2.selector,
|
|
282
|
+
selector = _this$props2$selector === void 0 ? '.feature' : _this$props2$selector,
|
|
283
|
+
strokeColor = _this$props2.strokeColor,
|
|
284
|
+
fillColor = _this$props2.fillColor;
|
|
252
285
|
_this.svgDom.onmouseover = _this.handleFeatureEnter;
|
|
253
286
|
_this.svgDom.onmouseout = _this.handleFeatureLeave;
|
|
287
|
+
|
|
254
288
|
_this.svgDom.querySelectorAll(selector).forEach(function (node) {
|
|
255
289
|
node.style.stroke = strokeColor;
|
|
256
290
|
node.style.fill = fillColor;
|
|
257
291
|
});
|
|
292
|
+
|
|
258
293
|
_this.updateSvg(_this.props);
|
|
259
294
|
};
|
|
295
|
+
|
|
260
296
|
var featureCollection = props.featureCollection;
|
|
261
297
|
_this.state = {
|
|
262
298
|
svgNode: featureCollection.getSvgNode(_this.registerSvg)
|
|
263
299
|
};
|
|
264
300
|
return _this;
|
|
265
301
|
}
|
|
302
|
+
|
|
266
303
|
_createClass(SvgChoropleth, [{
|
|
267
304
|
key: "shouldComponentUpdate",
|
|
268
305
|
value: function shouldComponentUpdate(nextProps, nextState) {
|
|
@@ -282,8 +319,8 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
282
319
|
this.updateSvg(this.props);
|
|
283
320
|
}
|
|
284
321
|
}
|
|
285
|
-
}
|
|
286
|
-
|
|
322
|
+
} // allows a provided alias like 'US-CA' to get mapped to 'California' which is the element id for the SVG shape
|
|
323
|
+
|
|
287
324
|
}, {
|
|
288
325
|
key: "getFeatureId",
|
|
289
326
|
value: function getFeatureId(alias) {
|
|
@@ -297,6 +334,7 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
297
334
|
* So the highlight for South Africa will not cover up Lesotho.
|
|
298
335
|
* @param {SVGElement} el
|
|
299
336
|
*/
|
|
337
|
+
|
|
300
338
|
}, {
|
|
301
339
|
key: "highlightCountry",
|
|
302
340
|
value: function highlightCountry(el) {
|
|
@@ -318,25 +356,31 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
318
356
|
if (this.highlightedCountry) {
|
|
319
357
|
this.svgDom.removeChild(this.highlightedCountry);
|
|
320
358
|
}
|
|
359
|
+
|
|
321
360
|
this.highlightedCountry = null;
|
|
322
361
|
}
|
|
323
362
|
}, {
|
|
324
363
|
key: "updateSvg",
|
|
325
364
|
value: function updateSvg(props) {
|
|
326
365
|
var _this2 = this;
|
|
366
|
+
|
|
327
367
|
if (!this.svgDom) {
|
|
328
368
|
return;
|
|
329
369
|
}
|
|
370
|
+
|
|
330
371
|
var _props$selector = props.selector,
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
372
|
+
selector = _props$selector === void 0 ? '.feature' : _props$selector,
|
|
373
|
+
fillColor = props.fillColor,
|
|
374
|
+
data = props.data;
|
|
375
|
+
|
|
334
376
|
if (!data) {
|
|
335
377
|
return;
|
|
336
378
|
}
|
|
379
|
+
|
|
337
380
|
var dataHashMap = {};
|
|
338
381
|
data.featureIDs.forEach(function (alias, index) {
|
|
339
382
|
var featureId = _this2.getFeatureId(alias);
|
|
383
|
+
|
|
340
384
|
dataHashMap[featureId] = {
|
|
341
385
|
fill: data.fill[index],
|
|
342
386
|
value: data.values[index]
|
|
@@ -346,6 +390,7 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
346
390
|
var nodeData = dataHashMap[node.id];
|
|
347
391
|
node.style.fill = (0, lodash_1.get)(nodeData, 'fill') || fillColor;
|
|
348
392
|
var value = (0, lodash_1.get)(nodeData, 'value');
|
|
393
|
+
|
|
349
394
|
if (value) {
|
|
350
395
|
node.setAttribute(exports.DATA_ATTRIBUTE, value);
|
|
351
396
|
} else {
|
|
@@ -357,7 +402,8 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
357
402
|
key: "render",
|
|
358
403
|
value: function render() {
|
|
359
404
|
var _this$props$backgroun = this.props.backgroundColor,
|
|
360
|
-
|
|
405
|
+
backgroundColor = _this$props$backgroun === void 0 ? 'transparent' : _this$props$backgroun; // note: for some reason, onclick event can't be triggered on dashboard. So change it to onMouseDown
|
|
406
|
+
|
|
361
407
|
return React.createElement(StyledSvgChoropleth, {
|
|
362
408
|
"data-test": "styled-svg-choropleth",
|
|
363
409
|
backgroundColor: backgroundColor,
|
|
@@ -366,8 +412,10 @@ var SvgChoropleth = /*#__PURE__*/function (_React$Component) {
|
|
|
366
412
|
}, this.state.svgNode);
|
|
367
413
|
}
|
|
368
414
|
}]);
|
|
415
|
+
|
|
369
416
|
return SvgChoropleth;
|
|
370
417
|
}(React.Component);
|
|
418
|
+
|
|
371
419
|
exports.default = SvgChoropleth;
|
|
372
420
|
|
|
373
421
|
/***/ }),
|
package/SvgChoropleth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///./src/visualizations/SvgChoropleth/SvgChoropleth.tsx","webpack:///external \"styled-components\""],"names":["React","require","lodash_1","styled_components_1","exports","DATA_ATTRIBUTE","StyledSvgChoropleth","default","div","withConfig","displayName","componentId","props","backgroundColor","SvgChoropleth","_React$Component","_inherits","_super","_createSuper","_this","_classCallCheck","call","containerRef","createRef","highlightedCountry","getLocalCoords","clientX","clientY","rect","current","getBoundingClientRect","physX","left","physY","top","x","y","handleMapClick","event","pos","_this$props","featureCollection","onClick","clickedCoords","transformation","transformBack","feature","target","wholeFeature","id","parentNode","handleFeatureEnter","ev","ownerSVGElement","unHighlightCountry","highlightCountry","onFeatureHover","featureId","label","getAttribute","value","handleFeatureLeave","registerSvg","el","svgDom","_this$props2","_this$props2$selector","selector","strokeColor","fillColor","onmouseover","onmouseout","querySelectorAll","forEach","node","style","stroke","fill","updateSvg","state","svgNode","getSvgNode","_createClass","key","shouldComponentUpdate","nextProps","nextState","shouldUpdate","isEqual","componentDidUpdate","prevProps","setState","getFeatureId","alias","resolveAlias","firstLandlockedCountry","querySelector","parent","clone","cloneNode","strokeHighlightColor","insertBefore","removeChild","_this2","_props$selector","data","dataHashMap","featureIDs","index","values","nodeData","get","setAttribute","removeAttribute","render","_this$props$backgroun","createElement","onMouseDown","ref","Component"],"mappings":"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","file":"SvgChoropleth.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 36);\n","module.exports = require(\"react\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","/* eslint-disable no-param-reassign */\nimport * as React from 'react';\nimport { get, isEqual } from 'lodash';\nimport styled from 'styled-components';\nimport { ISvgFeatureCollection } from './src/utils/ISvgFeatureCollection';\nimport { DataPoint } from './src/utils/ICoordinateTransformation';\n\nexport const DATA_ATTRIBUTE = 'data-value';\n\nexport interface SvgChoroplethProps {\n featureCollection: ISvgFeatureCollection;\n data: { featureIDs: string[]; fill: string[]; values: any[] };\n fillColor: string;\n strokeColor: string;\n strokeHighlightColor?: string;\n backgroundColor?: string;\n selector: string;\n onFeatureHover: (params: { featureId: string; value: any; label?: string }) => void;\n onClick?: (sourceCoordinates: DataPoint, featureId: string) => void;\n}\n\nexport interface SvgChoroplethState {\n svgNode: React.ReactNode;\n}\n\nexport { GeoFeatureGroup } from './src/utils/GeoTypes';\n\ninterface StyledSvgChoroplethProps {\n readonly backgroundColor: string;\n}\n\nconst StyledSvgChoropleth = styled.div<StyledSvgChoroplethProps>`\n display: flex;\n flex-direction: column;\n position: relative;\n background-color: ${(props): string => props.backgroundColor};\n`;\n\nexport default class SvgChoropleth extends React.Component<SvgChoroplethProps, SvgChoroplethState> {\n containerRef: React.RefObject<HTMLDivElement> = React.createRef();\n\n // lastFeatureStroke: string;\n svgDom: SVGElement;\n\n highlightedCountry: SVGElement = null;\n\n constructor(props: SvgChoroplethProps) {\n super(props);\n const { featureCollection } = props;\n this.state = { svgNode: featureCollection.getSvgNode(this.registerSvg) };\n }\n\n shouldComponentUpdate(nextProps: Readonly<SvgChoroplethProps>, nextState: SvgChoroplethState): boolean {\n const shouldUpdate =\n !isEqual(nextState.svgNode, this.state.svgNode) || !isEqual(nextProps, this.props);\n return shouldUpdate;\n }\n\n componentDidUpdate(prevProps): void {\n if (this.props !== prevProps) {\n if (prevProps.featureCollection !== this.props.featureCollection) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n svgNode: this.props.featureCollection.getSvgNode(this.registerSvg),\n });\n } else {\n this.updateSvg(this.props);\n }\n }\n }\n\n getLocalCoords = (clientX: number, clientY: number): { x: number; y: number } => {\n const rect = this.containerRef.current.getBoundingClientRect();\n const physX = rect.left;\n const physY = rect.top;\n return { x: clientX - physX, y: clientY - physY };\n };\n\n handleMapClick = (event: React.MouseEvent<HTMLInputElement>): void => {\n const { clientX, clientY } = event;\n const pos = this.getLocalCoords(clientX, clientY);\n const { featureCollection, onClick } = this.props;\n const clickedCoords: DataPoint = featureCollection.transformation.transformBack(pos);\n const feature: SVGSVGElement = event.target as SVGSVGElement;\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n if (onClick) {\n onClick(clickedCoords, wholeFeature.id);\n }\n };\n\n handleFeatureEnter = (ev: MouseEvent): void => {\n const feature: SVGSVGElement = ev.target as SVGSVGElement;\n\n if (!feature.id && !feature.ownerSVGElement) {\n return;\n }\n\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n // remove the highlighted country IF we are entering a different country\n if (this.highlightedCountry && wholeFeature.id !== this.highlightedCountry.id) {\n this.unHighlightCountry();\n }\n this.highlightCountry(wholeFeature);\n\n if (this.props.onFeatureHover) {\n this.props.onFeatureHover({\n featureId: wholeFeature.id,\n label: wholeFeature.getAttribute('label_en'),\n value: wholeFeature.getAttribute(DATA_ATTRIBUTE),\n });\n }\n };\n\n handleFeatureLeave = (ev: MouseEvent): void => {\n const feature: SVGSVGElement = ev.target as SVGSVGElement;\n\n if (!feature.id && !feature.ownerSVGElement) {\n return;\n }\n\n // 'wholeFeature' means the SVG <g> (group) of multipolygon features\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n // handling feature leaving should always only deal with the highlighted feature\n if (wholeFeature !== this.highlightedCountry) {\n return;\n }\n this.unHighlightCountry();\n // wholeFeature.style.stroke = this.lastFeatureStroke;\n\n if (this.props.onFeatureHover) {\n this.props.onFeatureHover({ featureId: null, value: null, label: null });\n }\n };\n\n // allows a provided alias like 'US-CA' to get mapped to 'California' which is the element id for the SVG shape\n private getFeatureId(alias: string): string {\n return this.props.featureCollection.resolveAlias(alias);\n }\n\n registerSvg = (el: SVGSVGElement): void => {\n if (!el) return;\n\n this.svgDom = el;\n\n const { selector = '.feature', strokeColor, fillColor } = this.props;\n\n this.svgDom.onmouseover = this.handleFeatureEnter;\n this.svgDom.onmouseout = this.handleFeatureLeave;\n\n this.svgDom.querySelectorAll(selector).forEach((node: HTMLElement): void => {\n node.style.stroke = strokeColor;\n node.style.fill = fillColor;\n });\n\n this.updateSvg(this.props);\n };\n\n /**\n * this method renders a copy of the polygon on top of all the others, with a highlighted boundary.\n * Technically we don't render in on top of ALL the others. There are three totally landlocked countries,\n * the first of which in our geojson file is Lesotho. These are also the last three countries in the geojson\n * file. So when we insert the highlight shape into the dom, we inert it *before* these three countries.\n * So the highlight for South Africa will not cover up Lesotho.\n * @param {SVGElement} el\n */\n highlightCountry(el: SVGElement): void {\n if (this.highlightedCountry) {\n return; // do not add more than one hovered element at a time\n }\n\n const firstLandlockedCountry = this.svgDom.querySelector(`#Lesotho`);\n const parent = el.parentNode;\n const clone: SVGElement = el.cloneNode(true) as SVGElement;\n const strokeColor = this.props.strokeHighlightColor || '#000';\n clone.style.stroke = strokeColor;\n this.highlightedCountry = clone;\n\n parent.insertBefore(clone, firstLandlockedCountry);\n }\n\n unHighlightCountry(): void {\n if (this.highlightedCountry) {\n this.svgDom.removeChild(this.highlightedCountry);\n }\n this.highlightedCountry = null;\n }\n\n updateSvg(props: SvgChoroplethProps): void {\n if (!this.svgDom) {\n return;\n }\n\n const { selector = '.feature', fillColor, data } = props;\n\n if (!data) {\n return;\n }\n const dataHashMap = {};\n\n data.featureIDs.forEach((alias, index): void => {\n const featureId = this.getFeatureId(alias);\n dataHashMap[featureId] = { fill: data.fill[index], value: data.values[index] };\n });\n this.svgDom.querySelectorAll(selector).forEach((node: HTMLElement): void => {\n const nodeData = dataHashMap[node.id];\n node.style.fill = get(nodeData, 'fill') || fillColor;\n const value = get(nodeData, 'value');\n if (value) {\n node.setAttribute(DATA_ATTRIBUTE, value);\n } else {\n node.removeAttribute(DATA_ATTRIBUTE);\n }\n });\n }\n\n render(): JSX.Element {\n const { backgroundColor = 'transparent' } = this.props;\n // note: for some reason, onclick event can't be triggered on dashboard. So change it to onMouseDown\n return (\n <StyledSvgChoropleth\n data-test=\"styled-svg-choropleth\"\n backgroundColor={backgroundColor}\n onMouseDown={this.handleMapClick}\n ref={this.containerRef}\n >\n {this.state.svgNode}\n </StyledSvgChoropleth>\n );\n }\n}\n","module.exports = require(\"styled-components\");"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///./src/visualizations/SvgChoropleth/SvgChoropleth.tsx","webpack:///external \"styled-components\""],"names":[],"mappings":"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","file":"SvgChoropleth.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 36);\n","module.exports = require(\"react\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","/* eslint-disable no-param-reassign */\nimport * as React from 'react';\nimport { get, isEqual } from 'lodash';\nimport styled from 'styled-components';\nimport { ISvgFeatureCollection } from './src/utils/ISvgFeatureCollection';\nimport { DataPoint } from './src/utils/ICoordinateTransformation';\n\nexport const DATA_ATTRIBUTE = 'data-value';\n\nexport interface SvgChoroplethProps {\n featureCollection: ISvgFeatureCollection;\n data: { featureIDs: string[]; fill: string[]; values: any[] };\n fillColor: string;\n strokeColor: string;\n strokeHighlightColor?: string;\n backgroundColor?: string;\n selector: string;\n onFeatureHover: (params: { featureId: string; value: any; label?: string }) => void;\n onClick?: (sourceCoordinates: DataPoint, featureId: string) => void;\n}\n\nexport interface SvgChoroplethState {\n svgNode: React.ReactNode;\n}\n\nexport { GeoFeatureGroup } from './src/utils/GeoTypes';\n\ninterface StyledSvgChoroplethProps {\n readonly backgroundColor: string;\n}\n\nconst StyledSvgChoropleth = styled.div<StyledSvgChoroplethProps>`\n display: flex;\n flex-direction: column;\n position: relative;\n background-color: ${(props): string => props.backgroundColor};\n`;\n\nexport default class SvgChoropleth extends React.Component<SvgChoroplethProps, SvgChoroplethState> {\n containerRef: React.RefObject<HTMLDivElement> = React.createRef();\n\n // lastFeatureStroke: string;\n svgDom: SVGElement;\n\n highlightedCountry: SVGElement = null;\n\n constructor(props: SvgChoroplethProps) {\n super(props);\n const { featureCollection } = props;\n this.state = { svgNode: featureCollection.getSvgNode(this.registerSvg) };\n }\n\n shouldComponentUpdate(nextProps: Readonly<SvgChoroplethProps>, nextState: SvgChoroplethState): boolean {\n const shouldUpdate =\n !isEqual(nextState.svgNode, this.state.svgNode) || !isEqual(nextProps, this.props);\n return shouldUpdate;\n }\n\n componentDidUpdate(prevProps): void {\n if (this.props !== prevProps) {\n if (prevProps.featureCollection !== this.props.featureCollection) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n svgNode: this.props.featureCollection.getSvgNode(this.registerSvg),\n });\n } else {\n this.updateSvg(this.props);\n }\n }\n }\n\n getLocalCoords = (clientX: number, clientY: number): { x: number; y: number } => {\n const rect = this.containerRef.current.getBoundingClientRect();\n const physX = rect.left;\n const physY = rect.top;\n return { x: clientX - physX, y: clientY - physY };\n };\n\n handleMapClick = (event: React.MouseEvent<HTMLInputElement>): void => {\n const { clientX, clientY } = event;\n const pos = this.getLocalCoords(clientX, clientY);\n const { featureCollection, onClick } = this.props;\n const clickedCoords: DataPoint = featureCollection.transformation.transformBack(pos);\n const feature: SVGSVGElement = event.target as SVGSVGElement;\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n if (onClick) {\n onClick(clickedCoords, wholeFeature.id);\n }\n };\n\n handleFeatureEnter = (ev: MouseEvent): void => {\n const feature: SVGSVGElement = ev.target as SVGSVGElement;\n\n if (!feature.id && !feature.ownerSVGElement) {\n return;\n }\n\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n // remove the highlighted country IF we are entering a different country\n if (this.highlightedCountry && wholeFeature.id !== this.highlightedCountry.id) {\n this.unHighlightCountry();\n }\n this.highlightCountry(wholeFeature);\n\n if (this.props.onFeatureHover) {\n this.props.onFeatureHover({\n featureId: wholeFeature.id,\n label: wholeFeature.getAttribute('label_en'),\n value: wholeFeature.getAttribute(DATA_ATTRIBUTE),\n });\n }\n };\n\n handleFeatureLeave = (ev: MouseEvent): void => {\n const feature: SVGSVGElement = ev.target as SVGSVGElement;\n\n if (!feature.id && !feature.ownerSVGElement) {\n return;\n }\n\n // 'wholeFeature' means the SVG <g> (group) of multipolygon features\n const wholeFeature: SVGElement = feature.id ? feature : (feature.parentNode as SVGElement);\n // handling feature leaving should always only deal with the highlighted feature\n if (wholeFeature !== this.highlightedCountry) {\n return;\n }\n this.unHighlightCountry();\n // wholeFeature.style.stroke = this.lastFeatureStroke;\n\n if (this.props.onFeatureHover) {\n this.props.onFeatureHover({ featureId: null, value: null, label: null });\n }\n };\n\n // allows a provided alias like 'US-CA' to get mapped to 'California' which is the element id for the SVG shape\n private getFeatureId(alias: string): string {\n return this.props.featureCollection.resolveAlias(alias);\n }\n\n registerSvg = (el: SVGSVGElement): void => {\n if (!el) return;\n\n this.svgDom = el;\n\n const { selector = '.feature', strokeColor, fillColor } = this.props;\n\n this.svgDom.onmouseover = this.handleFeatureEnter;\n this.svgDom.onmouseout = this.handleFeatureLeave;\n\n this.svgDom.querySelectorAll(selector).forEach((node: HTMLElement): void => {\n node.style.stroke = strokeColor;\n node.style.fill = fillColor;\n });\n\n this.updateSvg(this.props);\n };\n\n /**\n * this method renders a copy of the polygon on top of all the others, with a highlighted boundary.\n * Technically we don't render in on top of ALL the others. There are three totally landlocked countries,\n * the first of which in our geojson file is Lesotho. These are also the last three countries in the geojson\n * file. So when we insert the highlight shape into the dom, we inert it *before* these three countries.\n * So the highlight for South Africa will not cover up Lesotho.\n * @param {SVGElement} el\n */\n highlightCountry(el: SVGElement): void {\n if (this.highlightedCountry) {\n return; // do not add more than one hovered element at a time\n }\n\n const firstLandlockedCountry = this.svgDom.querySelector(`#Lesotho`);\n const parent = el.parentNode;\n const clone: SVGElement = el.cloneNode(true) as SVGElement;\n const strokeColor = this.props.strokeHighlightColor || '#000';\n clone.style.stroke = strokeColor;\n this.highlightedCountry = clone;\n\n parent.insertBefore(clone, firstLandlockedCountry);\n }\n\n unHighlightCountry(): void {\n if (this.highlightedCountry) {\n this.svgDom.removeChild(this.highlightedCountry);\n }\n this.highlightedCountry = null;\n }\n\n updateSvg(props: SvgChoroplethProps): void {\n if (!this.svgDom) {\n return;\n }\n\n const { selector = '.feature', fillColor, data } = props;\n\n if (!data) {\n return;\n }\n const dataHashMap = {};\n\n data.featureIDs.forEach((alias, index): void => {\n const featureId = this.getFeatureId(alias);\n dataHashMap[featureId] = { fill: data.fill[index], value: data.values[index] };\n });\n this.svgDom.querySelectorAll(selector).forEach((node: HTMLElement): void => {\n const nodeData = dataHashMap[node.id];\n node.style.fill = get(nodeData, 'fill') || fillColor;\n const value = get(nodeData, 'value');\n if (value) {\n node.setAttribute(DATA_ATTRIBUTE, value);\n } else {\n node.removeAttribute(DATA_ATTRIBUTE);\n }\n });\n }\n\n render(): JSX.Element {\n const { backgroundColor = 'transparent' } = this.props;\n // note: for some reason, onclick event can't be triggered on dashboard. So change it to onMouseDown\n return (\n <StyledSvgChoropleth\n data-test=\"styled-svg-choropleth\"\n backgroundColor={backgroundColor}\n onMouseDown={this.handleMapClick}\n ref={this.containerRef}\n >\n {this.state.svgNode}\n </StyledSvgChoropleth>\n );\n }\n}\n","module.exports = require(\"styled-components\");"],"sourceRoot":""}
|