@evergis/react 2.0.190 → 2.0.191

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/dist/react.esm.js CHANGED
@@ -50,7 +50,6 @@ import { debounce } from '@evergis/sgis/es/utils/utils';
50
50
  import styled, { css } from 'styled-components';
51
51
  import punycode from 'punycode';
52
52
  import { TileLayer as TileLayer$1 } from '@evergis/sgis/es/layers/TileLayer';
53
- import { useTranslation } from 'react-i18next';
54
53
  import { SVG } from '@svgdotjs/svg.js';
55
54
  import { Color as Color$1 } from '@evergis/color/es/Color';
56
55
 
@@ -2502,10 +2501,10 @@ let FilterCondition = /*#__PURE__*/function () {
2502
2501
  return FilterCondition;
2503
2502
  }();
2504
2503
 
2505
- const isLayerService = value => isObject(value) && "name" in value;
2504
+ const isLayerService = value => isObject(value) && 'name' in value;
2506
2505
  const getAttributeFromCondition = condition => {
2507
- const parts = condition.split(" ");
2508
- return parts[0].startsWith("(") ? parts[0].slice(1) : parts[0];
2506
+ const parts = condition.split(' ');
2507
+ return parts[0].startsWith('(') ? parts[0].slice(1) : parts[0];
2509
2508
  };
2510
2509
  const getExprFromCondition = (condition, partIndex) => {
2511
2510
  var _expr;
@@ -2513,13 +2512,13 @@ const getExprFromCondition = (condition, partIndex) => {
2513
2512
  let expr;
2514
2513
 
2515
2514
  if (partIndex) {
2516
- const parts = condition.split(" && ").map(part => part.slice(1, -1));
2515
+ const parts = condition.split(' && ').map(part => part.slice(1, -1));
2517
2516
  expr = parts[partIndex - 1];
2518
2517
  } else {
2519
2518
  expr = condition;
2520
2519
  }
2521
2520
 
2522
- return (_expr = expr) == null ? void 0 : _expr.split(" ");
2521
+ return (_expr = expr) == null ? void 0 : _expr.split(' ');
2523
2522
  };
2524
2523
  const getSignFromConditionPart = (condition, partIndex) => {
2525
2524
  var _getExprFromCondition;
@@ -2531,7 +2530,7 @@ const getValueFromConditionPart = (condition, partIndex) => {
2531
2530
 
2532
2531
  return (_getExprFromCondition2 = getExprFromCondition(condition, partIndex)) == null ? void 0 : _getExprFromCondition2[2];
2533
2532
  };
2534
- const isRangeCondition = condition => condition.includes("(");
2533
+ const isRangeCondition = condition => condition.includes('(');
2535
2534
  const getSymbolParameterInfo = parameter => {
2536
2535
  return PARAMETER_INFOS[parameter] || DEFAULT_PARAMETER_INFO;
2537
2536
  };
@@ -2555,8 +2554,8 @@ const getRangeValues$1 = (_ref, isDouble, isDate, index) => {
2555
2554
  const formatRangeClassValue = (value, formatValue, index) => {
2556
2555
  var _value$attribute, _value$attribute2, _value$attribute3, _value$attribute4, _value$attribute5, _value$attribute6;
2557
2556
 
2558
- const isDouble = ((_value$attribute = value.attribute) == null ? void 0 : _value$attribute.type) === "Double";
2559
- const isDate = ((_value$attribute2 = value.attribute) == null ? void 0 : _value$attribute2.type) === "DateTime";
2557
+ const isDouble = ((_value$attribute = value.attribute) == null ? void 0 : _value$attribute.type) === 'Double';
2558
+ const isDate = ((_value$attribute2 = value.attribute) == null ? void 0 : _value$attribute2.type) === 'DateTime';
2560
2559
  const {
2561
2560
  from,
2562
2561
  to
@@ -2565,11 +2564,11 @@ const formatRangeClassValue = (value, formatValue, index) => {
2565
2564
  const formattedTo = formatValue ? formatValue((_value$attribute5 = value.attribute) == null ? void 0 : _value$attribute5.type, to, (_value$attribute6 = value.attribute) == null ? void 0 : _value$attribute6.stringFormat) : to;
2566
2565
 
2567
2566
  if (from === null) {
2568
- return "" + formattedTo + (!isDate ? " и менее" : "");
2567
+ return "" + formattedTo + (!isDate ? ' и менее' : '');
2569
2568
  }
2570
2569
 
2571
2570
  if (to === null) {
2572
- return "" + (!isDate ? "более " : "") + formattedFrom;
2571
+ return "" + (!isDate ? 'более ' : '') + formattedFrom;
2573
2572
  }
2574
2573
 
2575
2574
  return from === to ? "" + formattedFrom : formattedFrom + " - " + formattedTo;
@@ -2581,13 +2580,13 @@ const checkLayerHasLegend = layerInfo => {
2581
2580
  var _layerInfo$style;
2582
2581
 
2583
2582
  const paramValue = get((_layerInfo$style = layerInfo.style) == null ? void 0 : _layerInfo$style.symbol, param);
2584
- return (paramValue == null ? void 0 : paramValue.type) === "byAttribute";
2583
+ return (paramValue == null ? void 0 : paramValue.type) === 'byAttribute';
2585
2584
  })) || false;
2586
2585
  };
2587
2586
  const getTitleFromCondition = condition => {
2588
2587
  var _parts$;
2589
2588
 
2590
- const parts = condition.split(" == ");
2589
+ const parts = condition.split(' == ');
2591
2590
  return (_parts$ = parts[1]) == null ? void 0 : _parts$.slice(1, -1);
2592
2591
  };
2593
2592
 
@@ -2598,12 +2597,12 @@ function createValueTitle$1(paramValue, attribute, formatValue, index) {
2598
2597
  attribute
2599
2598
  };
2600
2599
  const sign = getSignFromConditionPart(paramValue.condition, 1);
2601
- const isFirstFrom = sign.includes(">");
2600
+ const isFirstFrom = sign.includes('>');
2602
2601
  value.from = isFirstFrom ? getValueFromConditionPart(paramValue.condition, 1) : null;
2603
- value.to = paramValue.condition.includes(" && ") && isFirstFrom ? getValueFromConditionPart(paramValue.condition, 2) : !isFirstFrom ? getValueFromConditionPart(paramValue.condition, 1) : null;
2602
+ value.to = paramValue.condition.includes(' && ') && isFirstFrom ? getValueFromConditionPart(paramValue.condition, 2) : !isFirstFrom ? getValueFromConditionPart(paramValue.condition, 1) : null;
2604
2603
  if (isRangeClass(value)) return formatRangeClassValue(value, formatValue, index);
2605
2604
  if (isUniqueClass(value)) return formatUniqueClassValue(value, formatValue);
2606
- return "";
2605
+ return '';
2607
2606
  } // Основывается на http://cf.everpoint.ru/pages/viewpage.action?pageId=45024217 ->
2608
2607
  // пункт "Настраиваемые значения параметров символики в системе"
2609
2608
  // Для добавления подготовленных значений размеров символов нужно использовать константу PREPARED_SYMBOL_SIZES
@@ -2613,37 +2612,37 @@ const DEFAULT_LEGEND_STYLES = {
2613
2612
  [0
2614
2613
  /* Point */
2615
2614
  ]: {
2616
- fillColor: "#00000047",
2615
+ fillColor: '#00000047',
2617
2616
  strokeWidth: 1,
2618
- strokeColor: "#0000001f"
2617
+ strokeColor: '#0000001f'
2619
2618
  },
2620
2619
  [1
2621
2620
  /* ImagePoint */
2622
2621
  ]: {
2623
- maskedColor: "#00000047"
2622
+ maskedColor: '#00000047'
2624
2623
  },
2625
2624
  [2
2626
2625
  /* Line */
2627
2626
  ]: {
2628
2627
  stroke: {
2629
2628
  width: 2,
2630
- color: "#00000047"
2629
+ color: '#00000047'
2631
2630
  }
2632
2631
  },
2633
2632
  [3
2634
2633
  /* Polygon */
2635
2634
  ]: {
2636
2635
  fill: {
2637
- color: "#00000000",
2638
- hatchColor: "#00000000"
2636
+ color: '#00000000',
2637
+ hatchColor: '#00000000'
2639
2638
  },
2640
2639
  stroke: {
2641
2640
  width: 1,
2642
- color: "#0000001f"
2641
+ color: '#0000001f'
2643
2642
  }
2644
2643
  }
2645
2644
  };
2646
- const SYMBOL_SIZE_PARAMETERS = ["size", "width", "height"]; // Основывается на http://cf.everpoint.ru/pages/viewpage.action?pageId=45024217 -> пункт "Библиотека символов"
2645
+ const SYMBOL_SIZE_PARAMETERS = ['size', 'width', 'height']; // Основывается на http://cf.everpoint.ru/pages/viewpage.action?pageId=45024217 -> пункт "Библиотека символов"
2647
2646
 
2648
2647
  const DEFAULT_LEGEND_SIZES = {
2649
2648
  circlePointSymbol: 8,
@@ -2673,16 +2672,16 @@ const updateSymbolParameter = (symbol, path, value) => symbolParameterWalker(()
2673
2672
 
2674
2673
  const createPointSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
2675
2674
  return updateSymbolParameter(_extends({}, baseSymbol, {
2676
- fillColor: getNonClassifiedParamValue(baseSymbol, "fillColor", classificationsParams, 0
2675
+ fillColor: getNonClassifiedParamValue(baseSymbol, 'fillColor', classificationsParams, 0
2677
2676
  /* Point */
2678
2677
  ),
2679
- strokeColor: getNonClassifiedParamValue(baseSymbol, "strokeColor", classificationsParams, 0
2678
+ strokeColor: getNonClassifiedParamValue(baseSymbol, 'strokeColor', classificationsParams, 0
2680
2679
  /* Point */
2681
2680
  ),
2682
- strokeWidth: getNonClassifiedParamValue(baseSymbol, "strokeWidth", classificationsParams, 0
2681
+ strokeWidth: getNonClassifiedParamValue(baseSymbol, 'strokeWidth', classificationsParams, 0
2683
2682
  /* Point */
2684
2683
  ),
2685
- size: getNonClassifiedParamValue(baseSymbol, "size", classificationsParams, 0
2684
+ size: getNonClassifiedParamValue(baseSymbol, 'size', classificationsParams, 0
2686
2685
  /* Point */
2687
2686
  ),
2688
2687
  offset: [0, 0]
@@ -2719,12 +2718,12 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
2719
2718
  let symbol = _extends({}, baseSymbol);
2720
2719
 
2721
2720
  if (isMaskedImageSymbol(symbol)) {
2722
- symbol.maskedColor = getNonClassifiedParamValue(baseSymbol, "maskedColor", classificationsParams, 1
2721
+ symbol.maskedColor = getNonClassifiedParamValue(baseSymbol, 'maskedColor', classificationsParams, 1
2723
2722
  /* ImagePoint */
2724
2723
  );
2725
2724
  }
2726
2725
 
2727
- if (parameter === "height" || parameter === "width") {
2726
+ if (parameter === 'height' || parameter === 'width') {
2728
2727
  const {
2729
2728
  height,
2730
2729
  width
@@ -2732,7 +2731,7 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
2732
2731
  symbol.height = height;
2733
2732
  symbol.width = width;
2734
2733
  } else {
2735
- symbol.width = getNonClassifiedParamValue(baseSymbol, "width", classificationsParams, 1
2734
+ symbol.width = getNonClassifiedParamValue(baseSymbol, 'width', classificationsParams, 1
2736
2735
  /* ImagePoint */
2737
2736
  );
2738
2737
  symbol.height = symbol.width;
@@ -2745,12 +2744,12 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
2745
2744
 
2746
2745
  const createLineSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
2747
2746
  return updateSymbolParameter(_extends({}, baseSymbol, {
2748
- type: "polylineSymbol",
2747
+ type: 'polylineSymbol',
2749
2748
  stroke: {
2750
- color: getNonClassifiedParamValue(baseSymbol, "stroke.color", classificationsParams, 2
2749
+ color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 2
2751
2750
  /* Line */
2752
2751
  ),
2753
- width: getNonClassifiedParamValue(baseSymbol, "stroke.width", classificationsParams, 2
2752
+ width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 2
2754
2753
  /* Line */
2755
2754
  )
2756
2755
  }
@@ -2760,18 +2759,18 @@ const createLineSymbol = (baseSymbol, parameter, classificationsParams, paramete
2760
2759
  const createPolygonSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
2761
2760
  return updateSymbolParameter(_extends({}, baseSymbol, {
2762
2761
  fill: {
2763
- color: getNonClassifiedParamValue(baseSymbol, "fill.color", classificationsParams, 3
2762
+ color: getNonClassifiedParamValue(baseSymbol, 'fill.color', classificationsParams, 3
2764
2763
  /* Polygon */
2765
2764
  ),
2766
- hatchColor: getNonClassifiedParamValue(baseSymbol, "fill.hatchColor", classificationsParams, 3
2765
+ hatchColor: getNonClassifiedParamValue(baseSymbol, 'fill.hatchColor', classificationsParams, 3
2767
2766
  /* Polygon */
2768
2767
  )
2769
2768
  },
2770
2769
  stroke: {
2771
- color: getNonClassifiedParamValue(baseSymbol, "stroke.color", classificationsParams, 3
2770
+ color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 3
2772
2771
  /* Polygon */
2773
2772
  ),
2774
- width: getNonClassifiedParamValue(baseSymbol, "stroke.width", classificationsParams, 3
2773
+ width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 3
2775
2774
  /* Polygon */
2776
2775
  )
2777
2776
  }
@@ -2781,29 +2780,37 @@ const createPolygonSymbol = (baseSymbol, parameter, classificationsParams, param
2781
2780
  const createH3Symbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
2782
2781
  return updateSymbolParameter(_extends({}, baseSymbol, {
2783
2782
  fill: {
2784
- color: getNonClassifiedParamValue(baseSymbol, "fill.color", classificationsParams, 3
2783
+ color: getNonClassifiedParamValue(baseSymbol, 'fill.color', classificationsParams, 3
2785
2784
  /* Polygon */
2786
2785
  )
2787
2786
  },
2788
2787
  stroke: {
2789
- color: getNonClassifiedParamValue(baseSymbol, "stroke.color", classificationsParams, 3
2788
+ color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 3
2790
2789
  /* Polygon */
2791
2790
  ),
2792
- width: getNonClassifiedParamValue(baseSymbol, "stroke.width", classificationsParams, 3
2791
+ width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 3
2793
2792
  /* Polygon */
2794
2793
  )
2795
2794
  }
2796
2795
  }), parameter, parameterValue);
2797
2796
  };
2798
2797
 
2798
+ const createClusterSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
2799
+ return updateSymbolParameter(_extends({}, baseSymbol, {
2800
+ fillColor: getNonClassifiedParamValue(baseSymbol, 'fillColor', classificationsParams, 0
2801
+ /* Point */
2802
+ )
2803
+ }), parameter, parameterValue);
2804
+ };
2805
+
2799
2806
  const createLegendSymbol = (parameterValue, parameter, classificationsParams, baseSymbol) => {
2800
2807
  if (isParameterValueSymbol(parameterValue)) {
2801
2808
  return parameterValue;
2802
2809
  }
2803
- /* if (isClusterSymbol(baseSymbol)) {
2804
- return createClusterSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
2805
- }*/
2806
2810
 
2811
+ if (isClusterSymbol(baseSymbol)) {
2812
+ return createClusterSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
2813
+ }
2807
2814
 
2808
2815
  if (isSizableSymbol(baseSymbol)) {
2809
2816
  return createPointSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
@@ -2938,7 +2945,7 @@ const getClassified = layerInfo => {
2938
2945
  var _layerInfo$style2;
2939
2946
 
2940
2947
  const param = get((_layerInfo$style2 = layerInfo.style) == null ? void 0 : _layerInfo$style2.symbol, classified);
2941
- return (param == null ? void 0 : param.type) === "byAttribute" ? _extends({}, result, {
2948
+ return (param == null ? void 0 : param.type) === 'byAttribute' ? _extends({}, result, {
2942
2949
  [classified]: param
2943
2950
  }) : result;
2944
2951
  }, {});
@@ -2976,7 +2983,7 @@ const getLegendSymbolSize = symbol => {
2976
2983
  }
2977
2984
 
2978
2985
  if (isPolylineSymbols(symbol)) {
2979
- size = getParameterValue(getParameterFromSymbol(symbol, "stroke.width"));
2986
+ size = getParameterValue(getParameterFromSymbol(symbol, 'stroke.width'));
2980
2987
  }
2981
2988
 
2982
2989
  return Math.max(DEFAULT_LEGEND_SYMBOL_SIZE, size);
@@ -2988,13 +2995,13 @@ const serializeSvgPointSymbol = symbol => {
2988
2995
  const figureFillColor = ((_symbol$figure = symbol.figure) == null ? void 0 : _symbol$figure.fillColor) || null;
2989
2996
  const bgFillColor = ((_symbol$background2 = symbol.background) == null ? void 0 : _symbol$background2.fillColor) || null;
2990
2997
  return _extends({
2991
- type: "svgPointSymbol",
2998
+ type: 'svgPointSymbol',
2992
2999
  size: symbol.size,
2993
3000
  offset: symbol.offset,
2994
3001
  angle: symbol.angle
2995
3002
  }, bgFillColor ? {
2996
3003
  background: {
2997
- id: "symbol-bg",
3004
+ id: 'symbol-bg',
2998
3005
  fillColor: bgFillColor,
2999
3006
  strokeColor: ((_symbol$background3 = symbol.background) == null ? void 0 : _symbol$background3.strokeColor) || null,
3000
3007
  strokeWidth: ((_symbol$background4 = symbol.background) == null ? void 0 : _symbol$background4.strokeWidth) || null,
@@ -3002,35 +3009,35 @@ const serializeSvgPointSymbol = symbol => {
3002
3009
  }
3003
3010
  } : {}, figureFillColor ? {
3004
3011
  figure: {
3005
- id: "symbol-figure",
3012
+ id: 'symbol-figure',
3006
3013
  fillColor: figureFillColor
3007
3014
  }
3008
3015
  } : {});
3009
3016
  };
3010
- const SIZE_PARAMETERS = ["size", "height", "strokeWidth", "stroke.width"];
3017
+ const SIZE_PARAMETERS = ['size', 'height', 'strokeWidth', 'stroke.width'];
3011
3018
  const isSizeClassification = parameter => SIZE_PARAMETERS.includes(parameter);
3012
3019
  const getServiceConfiguration = layer => {
3013
3020
  const emptyServiceConfiguration = {
3014
- name: ""
3021
+ name: ''
3015
3022
  };
3016
- if (!isLayerService(layer) || !("configuration" in layer)) return emptyServiceConfiguration;
3023
+ if (!isLayerService(layer) || !('configuration' in layer)) return emptyServiceConfiguration;
3017
3024
  return _extends({}, emptyServiceConfiguration, layer.configuration || {});
3018
3025
  };
3019
3026
  /** default attribute name which use for geometry info */
3020
3027
 
3021
- const GEOMETRY_ATTRIBUTE = "geometry";
3028
+ const GEOMETRY_ATTRIBUTE = 'geometry';
3022
3029
  /** default attribute name which contains unique id info */
3023
3030
 
3024
- const DEFAULT_ID_ATTRIBUTE_NAME = "gid";
3031
+ const DEFAULT_ID_ATTRIBUTE_NAME = 'gid';
3025
3032
  const getAttributesConfiguration = layer => {
3026
3033
  const serviceConfiguration = getServiceConfiguration(layer);
3027
3034
  const emptyAttributesConfiguration = {
3028
3035
  geometryAttribute: GEOMETRY_ATTRIBUTE,
3029
3036
  idAttribute: DEFAULT_ID_ATTRIBUTE_NAME,
3030
- tableName: ""
3037
+ tableName: ''
3031
3038
  };
3032
3039
 
3033
- if (!serviceConfiguration || !("attributesConfiguration" in serviceConfiguration)) {
3040
+ if (!serviceConfiguration || !('attributesConfiguration' in serviceConfiguration)) {
3034
3041
  return emptyAttributesConfiguration;
3035
3042
  }
3036
3043
 
@@ -3046,10 +3053,10 @@ const getLayerDefinition = layer => {
3046
3053
  geometryAttribute: geometryAttribute,
3047
3054
  idAttribute,
3048
3055
  geometryType: GeometryType.Unknown,
3049
- titleAttribute: ""
3056
+ titleAttribute: ''
3050
3057
  };
3051
3058
 
3052
- if (!isLayerService(layer) || !("layerDefinition" in layer)) {
3059
+ if (!isLayerService(layer) || !('layerDefinition' in layer)) {
3053
3060
  return emptyLayerDefinition;
3054
3061
  }
3055
3062
 
@@ -3109,13 +3116,14 @@ const DEFAULT_LEGEND_SYMBOL_SIZE = 26;
3109
3116
  const EXTRA_BORDER_SIZE = 4;
3110
3117
  const DEFAULT_SYMBOL_SIZE = 20;
3111
3118
  const DEFAULT_SYMBOL_WITH_BG_SIZE = 24;
3112
- const DEFAULT_SYMBOL_FILL_COLOR = "rgba(0, 163, 245, 1)";
3113
- const DEFAULT_SYMBOL_STROKE_COLOR = "rgb(255, 255, 255)";
3119
+ const DEFAULT_SYMBOL_FILL_COLOR = 'rgba(0, 163, 245, 1)';
3120
+ const DEFAULT_SYMBOL_STROKE_COLOR = 'rgb(255, 255, 255)';
3114
3121
  const DEFAULT_SYMBOL_OFFSET = [0, 0];
3122
+ const DEFAULT_CLUSTER_SVG = "\n<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 56 56\" width=\"56px\" height=\"56px\">\n <circle cx=\"28\" cy=\"28\" r=\"22\" fill=\"#00AAFF\" stroke=\"#00AAFF\" stroke-opacity=\"0.28\" stroke-width=\"12\" id=\"symbol-bg\" />\n</svg>\n";
3115
3123
  const SYMBOL_CLASSIFICATION = {
3116
- [GeometryType.Polygon]: ["fill.color", "stroke.color", "stroke.width"],
3117
- [GeometryType.Polyline]: ["stroke.color", "stroke.width"],
3118
- [GeometryType.Point]: ["angle", "background.fillColor", "background.strokeColor", "background.strokeWidth", "figure.fillColor", "size"]
3124
+ [GeometryType.Polygon]: ['fill.color', 'stroke.color', 'stroke.width'],
3125
+ [GeometryType.Polyline]: ['stroke.color', 'stroke.width'],
3126
+ [GeometryType.Point]: ['angle', 'size', 'fill.color', 'fillColor', 'background.fillColor', 'background.strokeColor', 'background.strokeWidth', 'figure.fillColor', 'singleObjectSymbol.figure.fillColor', 'singleObjectSymbol.background.fillColor']
3119
3127
  };
3120
3128
  const SYMBOL_LIMITS = {
3121
3129
  SIZE_MIN: 1,
@@ -3158,22 +3166,22 @@ const PARAMETER_INFOS = {
3158
3166
  })
3159
3167
  };
3160
3168
  const OPERATOR_CONDITION_REMAP = {
3161
- [ComparisonOperator.Equals]: "==",
3162
- [ComparisonOperator.NotEquals]: "!=",
3163
- [ComparisonOperator.GreaterThan]: ">",
3164
- [ComparisonOperator.GreaterOrEquals]: ">=",
3165
- [ComparisonOperator.LessThan]: "<",
3166
- [ComparisonOperator.LessOrEquals]: "<=",
3167
- [ComparisonOperator.Filled]: "!=",
3168
- [ComparisonOperator.Empty]: "==",
3169
- [ComparisonOperator.Contains]: "==",
3170
- [ComparisonOperator.NotContains]: "!=",
3171
- [ComparisonOperator.StartsWith]: "==",
3172
- [ComparisonOperator.NotStartsWith]: "!=",
3173
- [ComparisonOperator.EndsWith]: "==",
3174
- [ComparisonOperator.NotEndsWith]: "!=",
3175
- [ComparisonOperator.Between]: "between",
3176
- [ComparisonOperator.Outside]: "!between"
3169
+ [ComparisonOperator.Equals]: '==',
3170
+ [ComparisonOperator.NotEquals]: '!=',
3171
+ [ComparisonOperator.GreaterThan]: '>',
3172
+ [ComparisonOperator.GreaterOrEquals]: '>=',
3173
+ [ComparisonOperator.LessThan]: '<',
3174
+ [ComparisonOperator.LessOrEquals]: '<=',
3175
+ [ComparisonOperator.Filled]: '!=',
3176
+ [ComparisonOperator.Empty]: '==',
3177
+ [ComparisonOperator.Contains]: '==',
3178
+ [ComparisonOperator.NotContains]: '!=',
3179
+ [ComparisonOperator.StartsWith]: '==',
3180
+ [ComparisonOperator.NotStartsWith]: '!=',
3181
+ [ComparisonOperator.EndsWith]: '==',
3182
+ [ComparisonOperator.NotEndsWith]: '!=',
3183
+ [ComparisonOperator.Between]: 'between',
3184
+ [ComparisonOperator.Outside]: '!between'
3177
3185
  };
3178
3186
  const BASE_OPERATORS = [ComparisonOperator.Equals, ComparisonOperator.NotEquals];
3179
3187
  const CONTAINS_OPERATORS = [ComparisonOperator.Contains, ComparisonOperator.NotContains];
@@ -5793,7 +5801,7 @@ const Fullscreen = () => {
5793
5801
  }));
5794
5802
  };
5795
5803
 
5796
- var _templateObject$4, _templateObject2$4, _templateObject3$3, _templateObject4$3, _templateObject5$3, _templateObject6$2, _templateObject7$2, _templateObject8$2, _templateObject9$1, _templateObject10$1, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16$1, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36;
5804
+ var _templateObject$4, _templateObject2$4, _templateObject3$3, _templateObject4$3, _templateObject5$3, _templateObject6$2, _templateObject7$2, _templateObject8$2, _templateObject9$1, _templateObject10$1, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16$1, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37;
5797
5805
  const MapLegendDescription = /*#__PURE__*/styled.div(_templateObject$4 || (_templateObject$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: 0.75rem;\n"])));
5798
5806
  const ItemText = /*#__PURE__*/styled.div(_templateObject2$4 || (_templateObject2$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n max-width: calc(100% - 2rem);\n font: ", ";\n"])), _ref => {
5799
5807
  let {
@@ -5803,18 +5811,18 @@ const ItemText = /*#__PURE__*/styled.div(_templateObject2$4 || (_templateObject2
5803
5811
  } = _ref;
5804
5812
  return fonts.description;
5805
5813
  });
5806
- const ItemSeparator = /*#__PURE__*/styled.div(_templateObject3$3 || (_templateObject3$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n :after {\n content: \"-\";\n margin: 0 0.5rem;\n font-size: 0.75rem;\n }\n"])));
5807
- const SymbolContainer = /*#__PURE__*/styled("span")(_templateObject4$3 || (_templateObject4$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n min-width: 16px;\n margin-right: 0.5rem;\n"])));
5814
+ const ItemSeparator = /*#__PURE__*/styled.div(_templateObject3$3 || (_templateObject3$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n :after {\n content: '-';\n margin: 0 0.5rem;\n font-size: 0.75rem;\n }\n"])));
5815
+ const SymbolContainer = /*#__PURE__*/styled('span')(_templateObject4$3 || (_templateObject4$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n min-width: 16px;\n margin-right: 0.5rem;\n"])));
5808
5816
  const ClassifiedItem = /*#__PURE__*/styled.div(_templateObject5$3 || (_templateObject5$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: center;\n cursor: ", ";\n pointer-events: ", ";\n\n :not(:last-of-type) {\n margin-bottom: 0.25rem;\n }\n\n ", ", ", " {\n transition: opacity 150ms;\n }\n\n ", " {\n opacity: ", ";\n }\n\n ", " {\n opacity: ", ";\n }\n\n :hover {\n ", ", ", " {\n opacity: 1;\n }\n }\n"])), _ref2 => {
5809
5817
  let {
5810
5818
  isClusterFillColor
5811
5819
  } = _ref2;
5812
- return isClusterFillColor ? "default" : "pointer";
5820
+ return isClusterFillColor ? 'default' : 'pointer';
5813
5821
  }, _ref3 => {
5814
5822
  let {
5815
5823
  isClusterFillColor
5816
5824
  } = _ref3;
5817
- return isClusterFillColor ? "none" : "auto";
5825
+ return isClusterFillColor ? 'none' : 'auto';
5818
5826
  }, ItemText, SymbolContainer, ItemText, _ref4 => {
5819
5827
  let {
5820
5828
  isHidden
@@ -5848,7 +5856,7 @@ const MaximizedLegendContainer = /*#__PURE__*/styled.div(_templateObject12$1 ||
5848
5856
  let {
5849
5857
  isShown
5850
5858
  } = _ref8;
5851
- return isShown ? "relative" : "absolute";
5859
+ return isShown ? 'relative' : 'absolute';
5852
5860
  }, _ref9 => {
5853
5861
  let {
5854
5862
  isShown
@@ -5858,7 +5866,7 @@ const MaximizedLegendContainer = /*#__PURE__*/styled.div(_templateObject12$1 ||
5858
5866
  let {
5859
5867
  isShown
5860
5868
  } = _ref10;
5861
- return isShown ? "visible" : "hidden";
5869
+ return isShown ? 'visible' : 'hidden';
5862
5870
  });
5863
5871
  const MinimizedLegendContainer = /*#__PURE__*/styled(MaximizedLegendContainer)(_templateObject13$1 || (_templateObject13$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: calc(100% - 1.5rem);\n padding-right: 1.5rem;\n"])));
5864
5872
  const MapLegendSectionContainer = /*#__PURE__*/styled.div(_templateObject14$1 || (_templateObject14$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n\n :not(:last-child) {\n margin-bottom: 1rem;\n }\n"])));
@@ -5873,7 +5881,7 @@ const MapLegendSectionItems = /*#__PURE__*/styled.div(_templateObject15$1 || (_t
5873
5881
  let {
5874
5882
  isExpanded
5875
5883
  } = _ref12;
5876
- return isExpanded ? "none" : "hidden";
5884
+ return isExpanded ? 'none' : 'hidden';
5877
5885
  });
5878
5886
  const MapLegendValueDescr = /*#__PURE__*/styled.div(_templateObject16$1 || (_templateObject16$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n min-height: 1rem;\n margin-bottom: 0.25rem;\n font-size: 0.75rem;\n font-weight: 600;\n line-height: 1rem;\n"])));
5879
5887
 
@@ -5882,7 +5890,7 @@ const SizeLegendItemMixin = function SizeLegendItemMixin(value) {
5882
5890
  value = 0;
5883
5891
  }
5884
5892
 
5885
- return css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteralLoose(["\n position: absolute;\n bottom: 0;\n left: 50%;\n display: flex;\n align-items: flex-end;\n flex: none;\n height: inherit;\n width: inherit;\n margin: 0 auto;\n background: none;\n border: none;\n\n :after {\n content: \"\";\n display: flex;\n border: 1px rgba(48, 69, 79, 0.28) solid;\n border-radius: 50%;\n margin: 0 0 0 -", "px;\n width: ", "px;\n height: ", "px;\n }\n"])), value / 2, value, value);
5893
+ return css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteralLoose(["\n position: absolute;\n bottom: 0;\n left: 50%;\n display: flex;\n align-items: flex-end;\n flex: none;\n height: inherit;\n width: inherit;\n margin: 0 auto;\n background: none;\n border: none;\n\n :after {\n content: '';\n display: flex;\n border: 1px rgba(48, 69, 79, 0.28) solid;\n border-radius: 50%;\n margin: 0 0 0 -", "px;\n width: ", "px;\n height: ", "px;\n }\n"])), value / 2, value, value);
5886
5894
  };
5887
5895
 
5888
5896
  const StrokeWidthLegendItemMixin = function StrokeWidthLegendItemMixin(value) {
@@ -5890,7 +5898,7 @@ const StrokeWidthLegendItemMixin = function StrokeWidthLegendItemMixin(value) {
5890
5898
  value = 0;
5891
5899
  }
5892
5900
 
5893
- return css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteralLoose(["\n position: relative;\n background: none;\n border: none;\n display: flex;\n align-items: center;\n flex: none;\n width: calc(100% - 2rem);\n height: ", "px;\n margin: 0 0 0.25rem 0;\n padding-left: 2rem;\n font-size: 0.75rem;\n \n :first-child, :last-child {\n height: auto;\n }\n\n :after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 0;\n width: 1.5rem;\n height: ", "px;\n margin-top: -", "px;\n background: rgb(224, 224, 224);\n }\n"])), value, value, Math.round(value / 2));
5901
+ return css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteralLoose(["\n position: relative;\n background: none;\n border: none;\n display: flex;\n align-items: center;\n flex: none;\n width: calc(100% - 2rem);\n height: ", "px;\n margin: 0 0 0.25rem 0;\n padding-left: 2rem;\n font-size: 0.75rem;\n\n :first-child,\n :last-child {\n height: auto;\n }\n\n :after {\n content: '';\n position: absolute;\n top: 50%;\n left: 0;\n width: 1.5rem;\n height: ", "px;\n margin-top: -", "px;\n background: rgb(224, 224, 224);\n }\n"])), value, value, Math.round(value / 2));
5894
5902
  };
5895
5903
 
5896
5904
  const StrokeColorLegendItemMixin = /*#__PURE__*/css(_templateObject19 || (_templateObject19 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-right: 0.5rem;\n width: 1.5rem;\n"])));
@@ -5898,12 +5906,12 @@ const MapLegendItem = /*#__PURE__*/styled.div(_templateObject20 || (_templateObj
5898
5906
  let {
5899
5907
  parameter
5900
5908
  } = _ref13;
5901
- return isParameterType(["strokeColor", "stroke.color"], parameter) ? 0.25 : 1;
5909
+ return isParameterType(['strokeColor', 'stroke.color'], parameter) ? 0.25 : 1;
5902
5910
  }, _ref14 => {
5903
5911
  let {
5904
5912
  value
5905
5913
  } = _ref14;
5906
- return typeof value === "number" ? "none" : value;
5914
+ return typeof value === 'number' ? 'none' : value;
5907
5915
  }, _ref15 => {
5908
5916
  let {
5909
5917
  isHidden
@@ -5914,13 +5922,13 @@ const MapLegendItem = /*#__PURE__*/styled.div(_templateObject20 || (_templateObj
5914
5922
  value,
5915
5923
  parameter
5916
5924
  } = _ref16;
5917
- return isParameterType("size", parameter) && SizeLegendItemMixin(value);
5925
+ return isParameterType('size', parameter) && SizeLegendItemMixin(value);
5918
5926
  }, _ref17 => {
5919
5927
  let {
5920
5928
  value,
5921
5929
  parameter
5922
5930
  } = _ref17;
5923
- return isParameterType(["strokeWidth", "stroke.width"], parameter) && StrokeWidthLegendItemMixin(value);
5931
+ return isParameterType(['strokeWidth', 'stroke.width'], parameter) && StrokeWidthLegendItemMixin(value);
5924
5932
  });
5925
5933
  const MapLegendOther = /*#__PURE__*/styled(MapLegendItem)(_templateObject21 || (_templateObject21 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n flex: none;\n position: relative;\n width: 1rem;\n margin-left: 0.25rem;\n border-radius: 0.125rem;\n"])));
5926
5934
  const SizeLegendItemsMixin = /*#__PURE__*/css(_templateObject22 || (_templateObject22 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n width: 2rem;\n height: 2rem;\n margin: 0 auto;\n\n ", " {\n width: auto;\n margin-left: 0;\n }\n"])), MapLegendOther);
@@ -5940,7 +5948,7 @@ const SingleLegendItemsMixin = /*#__PURE__*/css(_templateObject30 || (_templateO
5940
5948
  let {
5941
5949
  parameter
5942
5950
  } = _ref19;
5943
- return isParameterType(["strokeColor", "stroke.color"], parameter) && StrokeColorLegendItemMixin;
5951
+ return isParameterType(['strokeColor', 'stroke.color'], parameter) && StrokeColorLegendItemMixin;
5944
5952
  });
5945
5953
  const MapLegendItems = /*#__PURE__*/styled.div(_templateObject31 || (_templateObject31 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n width: 100%;\n border-radius: 0.125rem;\n\n ", ";\n ", ";\n ", ";\n"])), _ref20 => {
5946
5954
  let {
@@ -5962,7 +5970,8 @@ const MapLegendItemsContainer = /*#__PURE__*/styled.div(_templateObject32 || (_t
5962
5970
  const MapLegendValues = /*#__PURE__*/styled.div(_templateObject33 || (_templateObject33 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n width: 100%;\n margin-top: 0.5rem;\n font-size: 0.75rem;\n color: rgba(48, 69, 79, 0.65);\n"])));
5963
5971
  const MapLegendValuesRange = /*#__PURE__*/styled.div(_templateObject34 || (_templateObject34 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: space-between;\n width: calc(100% - 1.25rem);\n\n div {\n flex: 1;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n\n :first-child {\n margin-right: 0.5rem;\n }\n\n :last-child {\n margin-left: 0.5rem;\n text-align: right;\n }\n }\n"])));
5964
5972
  const MapLegendValuesOther = /*#__PURE__*/styled(MapLegendOther)(_templateObject35 || (_templateObject35 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n justify-content: center;\n border: 0;\n overflow: visible;\n"])));
5965
- const MapLegendExpandButton = /*#__PURE__*/styled.div(_templateObject36 || (_templateObject36 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n cursor: pointer;\n margin-top: 0.1rem;\n font-size: 0.625rem;\n color: #1FB3AA;\n"])));
5973
+ const MapLegendExpandButton = /*#__PURE__*/styled.div(_templateObject36 || (_templateObject36 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n cursor: pointer;\n margin-top: 0.1rem;\n font-size: 0.625rem;\n color: #1fb3aa;\n"])));
5974
+ const ClusterLegendContainer = /*#__PURE__*/styled.div(_templateObject37 || (_templateObject37 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: -0.9rem;\n transform: scale(0.5);\n"])));
5966
5975
 
5967
5976
  const getValueFromLegendTitle = (title, minOrMax) => {
5968
5977
  if (title.includes(" - ")) {
@@ -6115,7 +6124,7 @@ const useSvgSymbol = (symbol, skipOffset) => {
6115
6124
 
6116
6125
  var _templateObject$5, _templateObject2$5;
6117
6126
  const SvgSymbolContainer = /*#__PURE__*/styled.div(_templateObject$5 || (_templateObject$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n"])));
6118
- const SvgSymbolLabel = /*#__PURE__*/styled.div(_templateObject2$5 || (_templateObject2$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n color: #fff;\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n"])), _ref => {
6127
+ const SvgSymbolLabel = /*#__PURE__*/styled.div(_templateObject2$5 || (_templateObject2$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n color: #fff;\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n line-height: 0;\n"])), _ref => {
6119
6128
  let {
6120
6129
  fontSettings
6121
6130
  } = _ref;
@@ -6139,7 +6148,7 @@ const SvgSymbolLabel = /*#__PURE__*/styled.div(_templateObject2$5 || (_templateO
6139
6148
  let {
6140
6149
  fontSettings
6141
6150
  } = _ref5;
6142
- return !!(fontSettings != null && fontSettings.fontSize) && "font-size: " + (typeof fontSettings.fontSize === "string" ? fontSettings.fontSize : fontSettings.fontSize + "px");
6151
+ return !!(fontSettings != null && fontSettings.fontSize) && "font-size: " + (typeof fontSettings.fontSize === 'string' ? fontSettings.fontSize : fontSettings.fontSize + "px");
6143
6152
  }, _ref6 => {
6144
6153
  let {
6145
6154
  fontSettings
@@ -6222,24 +6231,48 @@ const SymbolByType = _ref => {
6222
6231
  }
6223
6232
  };
6224
6233
 
6234
+ const ClusterSymbolPreview = _ref => {
6235
+ var _symbol$labelSymbol;
6236
+
6237
+ let {
6238
+ symbol,
6239
+ size = 56,
6240
+ fontSize = '1.25rem'
6241
+ } = _ref;
6242
+ const svgSymbol = {
6243
+ type: 'svgPointSymbol',
6244
+ size,
6245
+ offset: [0, 0],
6246
+ angle: 0,
6247
+ background: {
6248
+ id: 'symbol-bg',
6249
+ fillColor: getParameterValue(symbol.fillColor),
6250
+ strokeColor: symbol.strokeColor,
6251
+ strokeWidth: 6,
6252
+ type: 'circle'
6253
+ }
6254
+ };
6255
+ return React.createElement(SvgSymbol, {
6256
+ svg: DEFAULT_CLUSTER_SVG,
6257
+ symbol: svgSymbol,
6258
+ text: '99',
6259
+ fontSettings: _extends({}, symbol.labelSymbol, {
6260
+ fontSize: fontSize || ((_symbol$labelSymbol = symbol.labelSymbol) == null ? void 0 : _symbol$labelSymbol.fontSize)
6261
+ })
6262
+ });
6263
+ };
6264
+
6225
6265
  const LegendSymbolRenderer = /*#__PURE__*/memo(_ref => {
6226
6266
  let {
6227
6267
  symbol
6228
6268
  } = _ref;
6229
6269
 
6230
- /* return isClusterSymbol(symbol) ? (
6231
- <ClusterLegendContainer>
6232
- <ClusterSymbolPreview symbol={symbol as ClusterSymbolDc} />
6233
- </ClusterLegendContainer>
6234
- ) : (
6235
- <SymbolByType
6236
- symbol={deserializeSymbol(symbol)}
6237
- size={getLegendSymbolSize(symbol) || DEFAULT_LEGEND_SYMBOL_SIZE}
6238
- type={symbol.type}
6239
- svg={(symbol as SvgPointSymbol).data}
6240
- skipOffset
6241
- />
6242
- );*/
6270
+ if (isClusterSymbol(symbol)) {
6271
+ return React.createElement(ClusterLegendContainer, null, React.createElement(ClusterSymbolPreview, {
6272
+ symbol: symbol
6273
+ }));
6274
+ }
6275
+
6243
6276
  return React.createElement(SymbolByType, {
6244
6277
  symbol: deserializeSymbol(symbol),
6245
6278
  size: getLegendSymbolSize(symbol) || DEFAULT_LEGEND_SYMBOL_SIZE,
@@ -6262,16 +6295,13 @@ const MaximizedLegend = _ref => {
6262
6295
  hiddenLegends,
6263
6296
  toggleHiddenLegend
6264
6297
  } = _ref;
6265
- const {
6266
- t
6267
- } = useTranslation("common");
6268
- const isDate = attributeType === "DateTime";
6269
- const isSize = isParameterType("size", parameter);
6270
- const isStrokeWidth = isParameterType(["strokeWidth", "stroke.width"], parameter);
6271
- const isStrokeColor = isParameterType(["strokeColor", "stroke.color"], parameter);
6298
+ const isDate = attributeType === 'DateTime';
6299
+ const isSize = isParameterType('size', parameter);
6300
+ const isStrokeWidth = isParameterType(['strokeWidth', 'stroke.width'], parameter);
6301
+ const isStrokeColor = isParameterType(['strokeColor', 'stroke.color'], parameter);
6272
6302
  const parameterValue = useMemo(() => get(sectionSymbol, parameter), [sectionSymbol, parameter]);
6273
6303
  const renderColumn = useCallback((column, index) => {
6274
- const dateTime = column.split(" ");
6304
+ const dateTime = column.split(' ');
6275
6305
  return React.createElement(Fragment, {
6276
6306
  key: index
6277
6307
  }, React.createElement(ItemText, {
@@ -6280,10 +6310,10 @@ const MaximizedLegend = _ref => {
6280
6310
  }, []);
6281
6311
  const renderItemText = useCallback((title, index) => {
6282
6312
  if (!title) {
6283
- return React.createElement(ItemText, null, t("classification.other"));
6313
+ return React.createElement(ItemText, null, "\u0414\u0440\u0443\u0433\u043E\u0435");
6284
6314
  }
6285
6315
 
6286
- const columns = title == null ? void 0 : title.split(" - ");
6316
+ const columns = title == null ? void 0 : title.split(' - ');
6287
6317
  const isSingleColumn = (columns == null ? void 0 : columns.length) === 1;
6288
6318
 
6289
6319
  if (!isDate || index && isSingleColumn) {
@@ -6299,7 +6329,7 @@ const MaximizedLegend = _ref => {
6299
6329
  }
6300
6330
 
6301
6331
  return React.createElement(React.Fragment, null, columns.map(renderColumn));
6302
- }, [isDate, renderColumn, t]);
6332
+ }, [isDate, renderColumn]);
6303
6333
  const isHidden = useCallback(hiddenCondition => !!(hiddenLegends != null && hiddenLegends.includes(hiddenCondition)), [hiddenLegends]);
6304
6334
  const renderLegend = useCallback((_ref2, index) => {
6305
6335
  var _parameterValue$value;
@@ -6330,7 +6360,7 @@ const MaximizedLegend = _ref => {
6330
6360
  })) : React.createElement(SymbolContainer, null, React.createElement(LegendSymbolRenderer, {
6331
6361
  symbol: isClusterFillColor$1 ? symbol : getExtractedSymbol(symbol, true)
6332
6362
  })), renderItemText(title, index));
6333
- }, [isSize, isStrokeColor, isStrokeWidth, parameter, parameterValue == null ? void 0 : parameterValue.defaultValue, parameterValue == null ? void 0 : parameterValue.values, renderItemText, sectionIndex, hiddenLegends, toggleHiddenLegend]);
6363
+ }, [parameter, sectionIndex, isHidden, isSize, isStrokeWidth, isStrokeColor, parameterValue, renderItemText, toggleHiddenLegend, layerName]);
6334
6364
  return React.createElement(MaximizedLegendContainer, {
6335
6365
  ref: innerRef,
6336
6366
  isShown: isShown
@@ -6360,9 +6390,6 @@ const LegendSection = _ref => {
6360
6390
  formatValue,
6361
6391
  index
6362
6392
  } = _ref;
6363
- const {
6364
- t
6365
- } = useTranslation("common");
6366
6393
  const [isExpanded, toggleExpanded] = useToggle();
6367
6394
  const [maxRef, maxNode] = useNode();
6368
6395
  const [minRef, minNode] = useNode();
@@ -6382,16 +6409,16 @@ const LegendSection = _ref => {
6382
6409
  parameter: parameter,
6383
6410
  attributeType: attribute.type,
6384
6411
  index: index,
6385
- values: getMaximizedLegendValues(attribute, parameter, parameters, classified, symbol, formatValue, index, t("classification.other"))
6412
+ values: getMaximizedLegendValues(attribute, parameter, parameters, classified, symbol, formatValue, index, 'Другое')
6386
6413
  }), React.createElement(MinimizedLegend, {
6387
6414
  innerRef: minRef,
6388
6415
  isShown: !isExpanded,
6389
6416
  hiddenLegends: hiddenLegends == null ? void 0 : hiddenLegends[layerName],
6390
6417
  parameter: parameter,
6391
- values: getMinimizedLegendValues(attribute, classified, formatValue, index, t("classification.other"))
6418
+ values: getMinimizedLegendValues(attribute, classified, formatValue, index, 'Другое')
6392
6419
  })), React.createElement(MapLegendExpandButton, {
6393
6420
  onClick: toggleExpanded
6394
- }, t(isExpanded ? "toggleMenu" : "Развернуть")));
6421
+ }, isExpanded ? 'Свернуть' : 'Развернуть'));
6395
6422
  };
6396
6423
 
6397
6424
  const _excluded$3 = ["layerInfo"];
@@ -6409,16 +6436,30 @@ const Legend = /*#__PURE__*/memo(_ref => {
6409
6436
  var _classified$param$val, _layerInfo$style;
6410
6437
 
6411
6438
  const attributeName = getAttributeNameFromCondition((_classified$param$val = classified[param].values[0]) == null ? void 0 : _classified$param$val.condition);
6439
+ let attribute = attributes.find(_ref2 => {
6440
+ let {
6441
+ name
6442
+ } = _ref2;
6443
+ return name === attributeName;
6444
+ });
6445
+
6446
+ if (!attribute) {
6447
+ if (attributeName === 'count') {
6448
+ attribute = {
6449
+ name: 'count',
6450
+ alias: 'Количество',
6451
+ type: AttributeType.Int32
6452
+ };
6453
+ } else {
6454
+ return null;
6455
+ }
6456
+ }
6457
+
6412
6458
  return React.createElement(LegendSection, Object.assign({
6413
6459
  key: index,
6414
6460
  layerName: layerInfo.name,
6415
6461
  symbol: (_layerInfo$style = layerInfo.style) == null ? void 0 : _layerInfo$style.symbol,
6416
- attribute: attributes.find(_ref2 => {
6417
- let {
6418
- name
6419
- } = _ref2;
6420
- return name === attributeName;
6421
- }),
6462
+ attribute: attribute,
6422
6463
  classified: classified[param],
6423
6464
  parameter: param,
6424
6465
  parameters: parameters,
@@ -6829,5 +6870,5 @@ const DraggableMarker = _ref => {
6829
6870
  return React.createElement(Fragment, null);
6830
6871
  };
6831
6872
 
6832
- export { ArrowLineMiterRender, BASE_OPERATORS, BETWEEN_OPERATORS, BaseMeasureToolCreator, BaseMeasureToolEditor, CONTAINS_OPERATORS, CRS_MAP, CardAttributes, CardHeader, CircleLineMiterRender, ClassificationCondition, ClassificationManager, ClassifiedItem, ClusterLayer, ClusterSymbol, ComparisonOperator, CompoundIcon, DEFAULT_CRS, DEFAULT_ID_ATTRIBUTE_NAME, DEFAULT_LEGEND_SIZES, DEFAULT_LEGEND_STYLES, DEFAULT_LEGEND_SYMBOL_SIZE, DEFAULT_PARAMETER_INFO, DEFAULT_SRID, DEFAULT_SYMBOL_FILL_COLOR, DEFAULT_SYMBOL_OFFSET, DEFAULT_SYMBOL_SIZE, DEFAULT_SYMBOL_STROKE_COLOR, DEFAULT_SYMBOL_WITH_BG_SIZE, DateFormat, DraggableMarker, ENDS_WITH_OPERATORS, EXTRA_BORDER_SIZE, EvergisCard, EvergisCardAttribute, AttributeContainer as EvergisCardAttributeContainer, AttributeTitle as EvergisCardAttributeTitle, AttributeValueContainer as EvergisCardAttributeValueContainer, CardControls as EvergisCardCardControls, CardTitle as EvergisCardCardTitle, EvergisCardContainer, CurrentFeatureIndex as EvergisCardCurrentFeatureIndex, FeatureName as EvergisCardFeatureName, LayerName as EvergisCardLayerName, CardPagination as EvergisCardPagination, PaginationDescription as EvergisCardPaginationDescription, SimpleAttribute as EvergisCardSimpleValue, StickyHeader as EvergisCardStickyHeader, ValueLink as EvergisCardValueLink, EvergisDynamicLayer, EvergisFeature, EvergisLayer, EvergisProvider, EvergisSelect, EvergisSelectLayer, EvergisSelectProvider, EvergisStyle, EvergisTileLayer, FILLED_OPERATORS, FeatureLayer, FilterConditionOperation, Fullscreen, GEOMETRY_ATTRIBUTE, ItemSeparator, ItemText, LabelSymbol, Legend, LegendParameterDescription, LegendProvider, LegendSection, LegendSymbolRenderer, LineMiterRender, Map, MapControl, MapControls, MapLegendContainer, MapLegendControl, MapLegendDescription, MapLegendDescriptionContainer, MapLegendExpandButton, MapLegendHeader, MapLegendItem, MapLegendItems, MapLegendItemsContainer, MapLegendOther, MapLegendSectionContainer, MapLegendSectionItems, MapLegendValueDescr, MapLegendValues, MapLegendValuesOther, MapLegendValuesRange, MapProvider, MaximizedLegend, MaximizedLegendContainer, Measure, MeasureTool, Measurer, MinimizedLegend, MinimizedLegendContainer, NO_CONTENT_VALUE, Noop, OPERATOR_CONDITION_REMAP, PARAMETER_INFOS, PREVIEW_LIMITS, RANGE_OPERATORS, SGisBrushFill, SGisImageFill, SGisPolygonSymbol, SGisPolylineSymbol, SOLID_INTERVALS, STARTS_WITH_OPERATORS, SVGPoly, SYMBOL_CLASSIFICATION, SYMBOL_LIMITS, SYMBOL_SIZE_PARAMETERS, ScaleRuler, ScaleRulerBlock, ScaleRulerContainer, Search, SelectedPointSymbol, SelectedPolySymbol, ShadowedPointSymbol, ShadowedPolySymbol, SizeMinimizedLegend, SizeMinimizedLegendDown, SizeMinimizedLegendLabel, SizeMinimizedLegendSymbol, SizeMinimizedLegendUp, SquareLineMiterRender, SrId, StyleSymbol, SvgSymbol, SvgSymbolBg, Symbol, SymbolButton, SymbolByType, SymbolContainer, TextContainer, TileLayer, Tooltip, TooltipComponent, TooltipProvider, Zoom, ZoomLevel, adjustSymbol, applyParameterValue, checkLayerHasLegend, clamp, convertSvgToBase64, copyRings, createCompositeSymbol, createHiddenCondition, createLabelSymbol, createLegendSymbol, createOtherHiddenCondition, createSvgGradient, createValueTitle, dateComparisonOperators, defaultOffset, defineStrokeStylePreset, deserializeSymbol, evaluateFeature, extractStyle, extractSymbol, findChildFeatureStyle, findChildFeatureSymbol, formatArea, formatAttributeValue, formatDate, formatLength, formatPolygonMeasure, formatRangeClassValue, formatUniqueClassValue, getAttributeFromCondition, getAttributeNameFromClassified, getAttributeNameFromCondition, getAttributeType, getAttributesConfiguration, getChildSymbols, getClassified, getCrs, getDashStylePreset, getDate, getDimensions, getExprFromCondition, getExtractedSymbol, getFeatureSymbol, getHexColor, getLayerDefinition, getLegendSymbolRenders, getLegendSymbolSize, getLineDash, getMapLegendSymbolRenders, getMapState, getMaximizedLegendValues, getMinimizedLegendValues, getOffsetParameterValue, getParameterFromSymbol, getParameterValue, getRangeValues$1 as getRangeValues, getScale, getServiceConfiguration, getSignFromConditionPart, getSymbolParameterInfo, getSymbolRenders, getSymbolStrokeWidth, getTitleFromCondition, getValueFromConditionPart, isArrowLineMiter, isCalculatedParameter, isCircleLineMiter, isClusterFillColor, isClusterSymbol, isCompositeSymbol, isDashedBrush, isFilledLineMitter, isH3GridSymbol, isHatchBrush, isImageSymbol, isLabelSymbol, isLayerService, isMaskedImageSymbol, isMiterExist, isNumeric, isObject, isParameterByAttribute, isParameterType, isParameterValueSimple, isParameterValueSymbol, isPatternBrush, isPointLabelSymbol, isPointSymbol, isPolygonHasHatchBrush, isPolygonHasPatternBrush, isPolygonLabelSymbol, isPolygonSymbol, isPolylineLabelSymbol, isPolylineLikePolygon, isPolylineSymbol, isPolylineSymbols, isRangeClass, isRangeCondition, isRasterSymbol, isRequisiteNumbers, isSGisClusterSymbol, isSGisCombinedPolylineSymbol, isSGisH3Symbol, isSGisImageSymbol, isSGisPointSymbol, isSGisPolygonSymbol, isSGisPolylineSymbol, isScalablePolylineSymbol, isSimpleOffset, isSimplePolylineSymbol, isSimpleSymbol, isSizableSymbol, isSizeClassification, isSolidBrush, isSquareLineMiter, isSquareSymbol, isStaticImageSymbol, isStringAsInn, isStringAsKpp, isStringAsMail, isStringAsOgrn, isStringAsPhone, isStringAsUrl, isStringContainsDate, isStringParameterValue, isStrokeStyledSymbol, isStyle, isSvgPointSymbol, isSymbolWithOffset, isTwoDimensionalSymbol, isUniqueClass, isValidParameter, isValidUrl, mailHref, manipulateSvgSymbol, matchPhone, measureAreaSymbol, measureLengthSymbol, measurePolygonSnapSymbol, metersToPixels, numberComparisonOperators, numberWithSpaces, packStyle, phoneHref, polygonCircleFromPoint, printRangeClass, renderSymbolToCanvas, selectedPoint, selectedPolygon, selectedPolyline, serializeSvgPointSymbol, setDefaultParameterValue, setParameterValue, shouldUpdateMapState, solidStrokeStylePreset, strokeStylePresets, symbolParameterWalker, symbolTypeGuard, textComparisonOperators, toIntervals, toLineDash, unClassify, updateMapResolution, updateSymbolParameter, urlHref, useCanvas, useClusterLayer, useCrs, useDebouncedCallback, useDraggableMarker, useEventPoint, useEvergisContext, useEvergisDynamicLayer, useEvergisSelect, useEvergisSelectContext, useEvergisTileLayer, useFeatureLayer, useLayerOrder, useLayerVisibility, useLegendContext, useMapBboxChange, useMapContext, useMapLevel, useMapPick, useMapResize, useMapState, useMapView, useMapViewActions, useMapWrapper, useMaxMinScale, useMetersToPixels, useMetersToPixelsCb, useMount, useNode, useProperty, useScale, useSvgSymbol, useSymbol, useToggle, useTooltip, useTooltipContext, useUpdate, useUpdateMapView };
6873
+ export { ArrowLineMiterRender, BASE_OPERATORS, BETWEEN_OPERATORS, BaseMeasureToolCreator, BaseMeasureToolEditor, CONTAINS_OPERATORS, CRS_MAP, CardAttributes, CardHeader, CircleLineMiterRender, ClassificationCondition, ClassificationManager, ClassifiedItem, ClusterLayer, ClusterLegendContainer, ClusterSymbol, ComparisonOperator, CompoundIcon, DEFAULT_CLUSTER_SVG, DEFAULT_CRS, DEFAULT_ID_ATTRIBUTE_NAME, DEFAULT_LEGEND_SIZES, DEFAULT_LEGEND_STYLES, DEFAULT_LEGEND_SYMBOL_SIZE, DEFAULT_PARAMETER_INFO, DEFAULT_SRID, DEFAULT_SYMBOL_FILL_COLOR, DEFAULT_SYMBOL_OFFSET, DEFAULT_SYMBOL_SIZE, DEFAULT_SYMBOL_STROKE_COLOR, DEFAULT_SYMBOL_WITH_BG_SIZE, DateFormat, DraggableMarker, ENDS_WITH_OPERATORS, EXTRA_BORDER_SIZE, EvergisCard, EvergisCardAttribute, AttributeContainer as EvergisCardAttributeContainer, AttributeTitle as EvergisCardAttributeTitle, AttributeValueContainer as EvergisCardAttributeValueContainer, CardControls as EvergisCardCardControls, CardTitle as EvergisCardCardTitle, EvergisCardContainer, CurrentFeatureIndex as EvergisCardCurrentFeatureIndex, FeatureName as EvergisCardFeatureName, LayerName as EvergisCardLayerName, CardPagination as EvergisCardPagination, PaginationDescription as EvergisCardPaginationDescription, SimpleAttribute as EvergisCardSimpleValue, StickyHeader as EvergisCardStickyHeader, ValueLink as EvergisCardValueLink, EvergisDynamicLayer, EvergisFeature, EvergisLayer, EvergisProvider, EvergisSelect, EvergisSelectLayer, EvergisSelectProvider, EvergisStyle, EvergisTileLayer, FILLED_OPERATORS, FeatureLayer, FilterConditionOperation, Fullscreen, GEOMETRY_ATTRIBUTE, ItemSeparator, ItemText, LabelSymbol, Legend, LegendParameterDescription, LegendProvider, LegendSection, LegendSymbolRenderer, LineMiterRender, Map, MapControl, MapControls, MapLegendContainer, MapLegendControl, MapLegendDescription, MapLegendDescriptionContainer, MapLegendExpandButton, MapLegendHeader, MapLegendItem, MapLegendItems, MapLegendItemsContainer, MapLegendOther, MapLegendSectionContainer, MapLegendSectionItems, MapLegendValueDescr, MapLegendValues, MapLegendValuesOther, MapLegendValuesRange, MapProvider, MaximizedLegend, MaximizedLegendContainer, Measure, MeasureTool, Measurer, MinimizedLegend, MinimizedLegendContainer, NO_CONTENT_VALUE, Noop, OPERATOR_CONDITION_REMAP, PARAMETER_INFOS, PREVIEW_LIMITS, RANGE_OPERATORS, SGisBrushFill, SGisImageFill, SGisPolygonSymbol, SGisPolylineSymbol, SOLID_INTERVALS, STARTS_WITH_OPERATORS, SVGPoly, SYMBOL_CLASSIFICATION, SYMBOL_LIMITS, SYMBOL_SIZE_PARAMETERS, ScaleRuler, ScaleRulerBlock, ScaleRulerContainer, Search, SelectedPointSymbol, SelectedPolySymbol, ShadowedPointSymbol, ShadowedPolySymbol, SizeMinimizedLegend, SizeMinimizedLegendDown, SizeMinimizedLegendLabel, SizeMinimizedLegendSymbol, SizeMinimizedLegendUp, SquareLineMiterRender, SrId, StyleSymbol, SvgSymbol, SvgSymbolBg, Symbol, SymbolButton, SymbolByType, SymbolContainer, TextContainer, TileLayer, Tooltip, TooltipComponent, TooltipProvider, Zoom, ZoomLevel, adjustSymbol, applyParameterValue, checkLayerHasLegend, clamp, convertSvgToBase64, copyRings, createCompositeSymbol, createHiddenCondition, createLabelSymbol, createLegendSymbol, createOtherHiddenCondition, createSvgGradient, createValueTitle, dateComparisonOperators, defaultOffset, defineStrokeStylePreset, deserializeSymbol, evaluateFeature, extractStyle, extractSymbol, findChildFeatureStyle, findChildFeatureSymbol, formatArea, formatAttributeValue, formatDate, formatLength, formatPolygonMeasure, formatRangeClassValue, formatUniqueClassValue, getAttributeFromCondition, getAttributeNameFromClassified, getAttributeNameFromCondition, getAttributeType, getAttributesConfiguration, getChildSymbols, getClassified, getCrs, getDashStylePreset, getDate, getDimensions, getExprFromCondition, getExtractedSymbol, getFeatureSymbol, getHexColor, getLayerDefinition, getLegendSymbolRenders, getLegendSymbolSize, getLineDash, getMapLegendSymbolRenders, getMapState, getMaximizedLegendValues, getMinimizedLegendValues, getOffsetParameterValue, getParameterFromSymbol, getParameterValue, getRangeValues$1 as getRangeValues, getScale, getServiceConfiguration, getSignFromConditionPart, getSymbolParameterInfo, getSymbolRenders, getSymbolStrokeWidth, getTitleFromCondition, getValueFromConditionPart, isArrowLineMiter, isCalculatedParameter, isCircleLineMiter, isClusterFillColor, isClusterSymbol, isCompositeSymbol, isDashedBrush, isFilledLineMitter, isH3GridSymbol, isHatchBrush, isImageSymbol, isLabelSymbol, isLayerService, isMaskedImageSymbol, isMiterExist, isNumeric, isObject, isParameterByAttribute, isParameterType, isParameterValueSimple, isParameterValueSymbol, isPatternBrush, isPointLabelSymbol, isPointSymbol, isPolygonHasHatchBrush, isPolygonHasPatternBrush, isPolygonLabelSymbol, isPolygonSymbol, isPolylineLabelSymbol, isPolylineLikePolygon, isPolylineSymbol, isPolylineSymbols, isRangeClass, isRangeCondition, isRasterSymbol, isRequisiteNumbers, isSGisClusterSymbol, isSGisCombinedPolylineSymbol, isSGisH3Symbol, isSGisImageSymbol, isSGisPointSymbol, isSGisPolygonSymbol, isSGisPolylineSymbol, isScalablePolylineSymbol, isSimpleOffset, isSimplePolylineSymbol, isSimpleSymbol, isSizableSymbol, isSizeClassification, isSolidBrush, isSquareLineMiter, isSquareSymbol, isStaticImageSymbol, isStringAsInn, isStringAsKpp, isStringAsMail, isStringAsOgrn, isStringAsPhone, isStringAsUrl, isStringContainsDate, isStringParameterValue, isStrokeStyledSymbol, isStyle, isSvgPointSymbol, isSymbolWithOffset, isTwoDimensionalSymbol, isUniqueClass, isValidParameter, isValidUrl, mailHref, manipulateSvgSymbol, matchPhone, measureAreaSymbol, measureLengthSymbol, measurePolygonSnapSymbol, metersToPixels, numberComparisonOperators, numberWithSpaces, packStyle, phoneHref, polygonCircleFromPoint, printRangeClass, renderSymbolToCanvas, selectedPoint, selectedPolygon, selectedPolyline, serializeSvgPointSymbol, setDefaultParameterValue, setParameterValue, shouldUpdateMapState, solidStrokeStylePreset, strokeStylePresets, symbolParameterWalker, symbolTypeGuard, textComparisonOperators, toIntervals, toLineDash, unClassify, updateMapResolution, updateSymbolParameter, urlHref, useCanvas, useClusterLayer, useCrs, useDebouncedCallback, useDraggableMarker, useEventPoint, useEvergisContext, useEvergisDynamicLayer, useEvergisSelect, useEvergisSelectContext, useEvergisTileLayer, useFeatureLayer, useLayerOrder, useLayerVisibility, useLegendContext, useMapBboxChange, useMapContext, useMapLevel, useMapPick, useMapResize, useMapState, useMapView, useMapViewActions, useMapWrapper, useMaxMinScale, useMetersToPixels, useMetersToPixelsCb, useMount, useNode, useProperty, useScale, useSvgSymbol, useSymbol, useToggle, useTooltip, useTooltipContext, useUpdate, useUpdateMapView };
6833
6874
  //# sourceMappingURL=react.esm.js.map