@evergis/react 2.0.190 → 2.0.192
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/components/Legend/Legend.d.ts +2 -2
- package/dist/components/Legend/components/ClusterSymbolPreview.d.ts +7 -0
- package/dist/components/Legend/components/LegendChildren.d.ts +3 -0
- package/dist/components/Legend/components/LegendSection.d.ts +2 -2
- package/dist/components/Legend/components/LegendSymbolRenderer.d.ts +2 -2
- package/dist/components/Legend/components/MaximizedLegend.d.ts +2 -2
- package/dist/components/Legend/components/SvgSymbol.d.ts +2 -2
- package/dist/components/Legend/constants.d.ts +4 -3
- package/dist/components/Legend/styled.d.ts +3 -2
- package/dist/components/Legend/types.d.ts +23 -20
- package/dist/components/Legend/utils/getConditionAttribute.d.ts +2 -0
- package/dist/components/Legend/utils/getLegendText.d.ts +5 -0
- package/dist/components/Legend/utils/isHiddenLegend.d.ts +1 -0
- package/dist/core/classification/getClassifications.d.ts +2 -2
- package/dist/core/classification/parameterValue.d.ts +4 -4
- package/dist/core/classification/types.d.ts +1 -1
- package/dist/core/style/types/parameterValue.d.ts +2 -2
- package/dist/react.cjs.development.js +372 -246
- package/dist/react.cjs.development.js.map +1 -1
- package/dist/react.cjs.production.min.js +1 -1
- package/dist/react.cjs.production.min.js.map +1 -1
- package/dist/react.esm.js +369 -247
- package/dist/react.esm.js.map +1 -1
- package/dist/utils/legend.d.ts +15 -13
- package/package.json +2 -2
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
|
|
|
@@ -720,6 +719,73 @@ const isParameterValueSymbol = parameterValue => !isParameterValueSimple(paramet
|
|
|
720
719
|
|
|
721
720
|
const isStyle = value => 'symbol' in value;
|
|
722
721
|
|
|
722
|
+
let EvergisStyle = /*#__PURE__*/function () {
|
|
723
|
+
function EvergisStyle(style) {
|
|
724
|
+
_classCallCheck(this, EvergisStyle);
|
|
725
|
+
|
|
726
|
+
this.style = extractStyle(style);
|
|
727
|
+
this.classificationManager = new ClassificationManager(this.style);
|
|
728
|
+
}
|
|
729
|
+
|
|
730
|
+
_createClass(EvergisStyle, [{
|
|
731
|
+
key: "serialize",
|
|
732
|
+
value: function serialize() {
|
|
733
|
+
return packStyle(this.style);
|
|
734
|
+
}
|
|
735
|
+
}, {
|
|
736
|
+
key: "hasRasters",
|
|
737
|
+
value: function hasRasters() {
|
|
738
|
+
return !!(this.style.raster || (this.style.children || []).some(style => style.raster));
|
|
739
|
+
}
|
|
740
|
+
}, {
|
|
741
|
+
key: "symbol",
|
|
742
|
+
get: function get() {
|
|
743
|
+
return this.style.symbol;
|
|
744
|
+
}
|
|
745
|
+
}, {
|
|
746
|
+
key: "raster",
|
|
747
|
+
get: function get() {
|
|
748
|
+
return this.style.raster;
|
|
749
|
+
}
|
|
750
|
+
}, {
|
|
751
|
+
key: "label",
|
|
752
|
+
get: function get() {
|
|
753
|
+
return this.style.label;
|
|
754
|
+
}
|
|
755
|
+
}, {
|
|
756
|
+
key: "children",
|
|
757
|
+
get: function get() {
|
|
758
|
+
return this.style.children;
|
|
759
|
+
}
|
|
760
|
+
}, {
|
|
761
|
+
key: "title",
|
|
762
|
+
get: function get() {
|
|
763
|
+
return this.style.title;
|
|
764
|
+
}
|
|
765
|
+
}, {
|
|
766
|
+
key: "condition",
|
|
767
|
+
get: function get() {
|
|
768
|
+
return this.style.condition;
|
|
769
|
+
}
|
|
770
|
+
}, {
|
|
771
|
+
key: "ignoreLabel",
|
|
772
|
+
get: function get() {
|
|
773
|
+
return this.style.ignoreLabel;
|
|
774
|
+
}
|
|
775
|
+
}, {
|
|
776
|
+
key: "resolution",
|
|
777
|
+
get: function get() {
|
|
778
|
+
const {
|
|
779
|
+
minResolution,
|
|
780
|
+
maxResolution
|
|
781
|
+
} = this.style;
|
|
782
|
+
return minResolution === void 0 || maxResolution === void 0 ? null : [minResolution, maxResolution];
|
|
783
|
+
}
|
|
784
|
+
}]);
|
|
785
|
+
|
|
786
|
+
return EvergisStyle;
|
|
787
|
+
}();
|
|
788
|
+
|
|
723
789
|
const toClassificationClass = (parameterValue, title, condition) => _extends({
|
|
724
790
|
parameterValue,
|
|
725
791
|
title
|
|
@@ -895,73 +961,6 @@ function getRangeValues(_ref, isDouble, isDate, index) {
|
|
|
895
961
|
};
|
|
896
962
|
}
|
|
897
963
|
|
|
898
|
-
let EvergisStyle = /*#__PURE__*/function () {
|
|
899
|
-
function EvergisStyle(style) {
|
|
900
|
-
_classCallCheck(this, EvergisStyle);
|
|
901
|
-
|
|
902
|
-
this.style = extractStyle(style);
|
|
903
|
-
this.classificationManager = new ClassificationManager(this.style);
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
_createClass(EvergisStyle, [{
|
|
907
|
-
key: "serialize",
|
|
908
|
-
value: function serialize() {
|
|
909
|
-
return packStyle(this.style);
|
|
910
|
-
}
|
|
911
|
-
}, {
|
|
912
|
-
key: "hasRasters",
|
|
913
|
-
value: function hasRasters() {
|
|
914
|
-
return !!(this.style.raster || (this.style.children || []).some(style => style.raster));
|
|
915
|
-
}
|
|
916
|
-
}, {
|
|
917
|
-
key: "symbol",
|
|
918
|
-
get: function get() {
|
|
919
|
-
return this.style.symbol;
|
|
920
|
-
}
|
|
921
|
-
}, {
|
|
922
|
-
key: "raster",
|
|
923
|
-
get: function get() {
|
|
924
|
-
return this.style.raster;
|
|
925
|
-
}
|
|
926
|
-
}, {
|
|
927
|
-
key: "label",
|
|
928
|
-
get: function get() {
|
|
929
|
-
return this.style.label;
|
|
930
|
-
}
|
|
931
|
-
}, {
|
|
932
|
-
key: "children",
|
|
933
|
-
get: function get() {
|
|
934
|
-
return this.style.children;
|
|
935
|
-
}
|
|
936
|
-
}, {
|
|
937
|
-
key: "title",
|
|
938
|
-
get: function get() {
|
|
939
|
-
return this.style.title;
|
|
940
|
-
}
|
|
941
|
-
}, {
|
|
942
|
-
key: "condition",
|
|
943
|
-
get: function get() {
|
|
944
|
-
return this.style.condition;
|
|
945
|
-
}
|
|
946
|
-
}, {
|
|
947
|
-
key: "ignoreLabel",
|
|
948
|
-
get: function get() {
|
|
949
|
-
return this.style.ignoreLabel;
|
|
950
|
-
}
|
|
951
|
-
}, {
|
|
952
|
-
key: "resolution",
|
|
953
|
-
get: function get() {
|
|
954
|
-
const {
|
|
955
|
-
minResolution,
|
|
956
|
-
maxResolution
|
|
957
|
-
} = this.style;
|
|
958
|
-
return minResolution === void 0 || maxResolution === void 0 ? null : [minResolution, maxResolution];
|
|
959
|
-
}
|
|
960
|
-
}]);
|
|
961
|
-
|
|
962
|
-
return EvergisStyle;
|
|
963
|
-
}();
|
|
964
|
-
|
|
965
964
|
const getHexColor = colorString => colorString ? new Color(colorString).toString('hex') : undefined;
|
|
966
965
|
|
|
967
966
|
// TODO reduce
|
|
@@ -2502,10 +2501,10 @@ let FilterCondition = /*#__PURE__*/function () {
|
|
|
2502
2501
|
return FilterCondition;
|
|
2503
2502
|
}();
|
|
2504
2503
|
|
|
2505
|
-
const isLayerService = value => isObject(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(
|
|
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(
|
|
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 == null ? void 0 : condition.includes('(')) || false;
|
|
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) ===
|
|
2559
|
-
const isDate = ((_value$attribute2 = value.attribute) == null ? void 0 : _value$attribute2.type) ===
|
|
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 ?
|
|
2571
|
+
return "" + (!isDate ? 'более ' : '') + formattedFrom;
|
|
2573
2572
|
}
|
|
2574
2573
|
|
|
2575
2574
|
return from === to ? "" + formattedFrom : formattedFrom + " - " + formattedTo;
|
|
@@ -2581,69 +2580,68 @@ 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) ===
|
|
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(
|
|
2591
|
-
return (_parts$ = parts[1]) == null ? void 0 : _parts$.slice(1, -1);
|
|
2589
|
+
const parts = condition == null ? void 0 : condition.split(' == ');
|
|
2590
|
+
return (parts == null ? void 0 : (_parts$ = parts[1]) == null ? void 0 : _parts$.slice(1, -1)) || '';
|
|
2592
2591
|
};
|
|
2593
|
-
|
|
2594
|
-
|
|
2592
|
+
function createValueTitleFromCondition(paramValue, attribute, formatValue, index) {
|
|
2593
|
+
if (!attribute) return '';
|
|
2595
2594
|
if (paramValue.title) return paramValue.title;
|
|
2596
2595
|
const value = {
|
|
2597
2596
|
parameterValue: getParameterValue(paramValue.value),
|
|
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(
|
|
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
|
|
2610
2609
|
|
|
2611
|
-
|
|
2612
2610
|
const DEFAULT_LEGEND_STYLES = {
|
|
2613
2611
|
[0
|
|
2614
2612
|
/* Point */
|
|
2615
2613
|
]: {
|
|
2616
|
-
fillColor:
|
|
2614
|
+
fillColor: '#00000047',
|
|
2617
2615
|
strokeWidth: 1,
|
|
2618
|
-
strokeColor:
|
|
2616
|
+
strokeColor: '#0000001f'
|
|
2619
2617
|
},
|
|
2620
2618
|
[1
|
|
2621
2619
|
/* ImagePoint */
|
|
2622
2620
|
]: {
|
|
2623
|
-
maskedColor:
|
|
2621
|
+
maskedColor: '#00000047'
|
|
2624
2622
|
},
|
|
2625
2623
|
[2
|
|
2626
2624
|
/* Line */
|
|
2627
2625
|
]: {
|
|
2628
2626
|
stroke: {
|
|
2629
2627
|
width: 2,
|
|
2630
|
-
color:
|
|
2628
|
+
color: '#00000047'
|
|
2631
2629
|
}
|
|
2632
2630
|
},
|
|
2633
2631
|
[3
|
|
2634
2632
|
/* Polygon */
|
|
2635
2633
|
]: {
|
|
2636
2634
|
fill: {
|
|
2637
|
-
color:
|
|
2638
|
-
hatchColor:
|
|
2635
|
+
color: '#00000000',
|
|
2636
|
+
hatchColor: '#00000000'
|
|
2639
2637
|
},
|
|
2640
2638
|
stroke: {
|
|
2641
2639
|
width: 1,
|
|
2642
|
-
color:
|
|
2640
|
+
color: '#0000001f'
|
|
2643
2641
|
}
|
|
2644
2642
|
}
|
|
2645
2643
|
};
|
|
2646
|
-
const SYMBOL_SIZE_PARAMETERS = [
|
|
2644
|
+
const SYMBOL_SIZE_PARAMETERS = ['size', 'width', 'height']; // Основывается на http://cf.everpoint.ru/pages/viewpage.action?pageId=45024217 -> пункт "Библиотека символов"
|
|
2647
2645
|
|
|
2648
2646
|
const DEFAULT_LEGEND_SIZES = {
|
|
2649
2647
|
circlePointSymbol: 8,
|
|
@@ -2673,16 +2671,16 @@ const updateSymbolParameter = (symbol, path, value) => symbolParameterWalker(()
|
|
|
2673
2671
|
|
|
2674
2672
|
const createPointSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
|
|
2675
2673
|
return updateSymbolParameter(_extends({}, baseSymbol, {
|
|
2676
|
-
fillColor: getNonClassifiedParamValue(baseSymbol,
|
|
2674
|
+
fillColor: getNonClassifiedParamValue(baseSymbol, 'fillColor', classificationsParams, 0
|
|
2677
2675
|
/* Point */
|
|
2678
2676
|
),
|
|
2679
|
-
strokeColor: getNonClassifiedParamValue(baseSymbol,
|
|
2677
|
+
strokeColor: getNonClassifiedParamValue(baseSymbol, 'strokeColor', classificationsParams, 0
|
|
2680
2678
|
/* Point */
|
|
2681
2679
|
),
|
|
2682
|
-
strokeWidth: getNonClassifiedParamValue(baseSymbol,
|
|
2680
|
+
strokeWidth: getNonClassifiedParamValue(baseSymbol, 'strokeWidth', classificationsParams, 0
|
|
2683
2681
|
/* Point */
|
|
2684
2682
|
),
|
|
2685
|
-
size: getNonClassifiedParamValue(baseSymbol,
|
|
2683
|
+
size: getNonClassifiedParamValue(baseSymbol, 'size', classificationsParams, 0
|
|
2686
2684
|
/* Point */
|
|
2687
2685
|
),
|
|
2688
2686
|
offset: [0, 0]
|
|
@@ -2719,12 +2717,12 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
|
|
|
2719
2717
|
let symbol = _extends({}, baseSymbol);
|
|
2720
2718
|
|
|
2721
2719
|
if (isMaskedImageSymbol(symbol)) {
|
|
2722
|
-
symbol.maskedColor = getNonClassifiedParamValue(baseSymbol,
|
|
2720
|
+
symbol.maskedColor = getNonClassifiedParamValue(baseSymbol, 'maskedColor', classificationsParams, 1
|
|
2723
2721
|
/* ImagePoint */
|
|
2724
2722
|
);
|
|
2725
2723
|
}
|
|
2726
2724
|
|
|
2727
|
-
if (parameter ===
|
|
2725
|
+
if (parameter === 'height' || parameter === 'width') {
|
|
2728
2726
|
const {
|
|
2729
2727
|
height,
|
|
2730
2728
|
width
|
|
@@ -2732,7 +2730,7 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
|
|
|
2732
2730
|
symbol.height = height;
|
|
2733
2731
|
symbol.width = width;
|
|
2734
2732
|
} else {
|
|
2735
|
-
symbol.width = getNonClassifiedParamValue(baseSymbol,
|
|
2733
|
+
symbol.width = getNonClassifiedParamValue(baseSymbol, 'width', classificationsParams, 1
|
|
2736
2734
|
/* ImagePoint */
|
|
2737
2735
|
);
|
|
2738
2736
|
symbol.height = symbol.width;
|
|
@@ -2745,12 +2743,12 @@ const createImagePointSymbol = (baseSymbol, parameter, classificationsParams, pa
|
|
|
2745
2743
|
|
|
2746
2744
|
const createLineSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
|
|
2747
2745
|
return updateSymbolParameter(_extends({}, baseSymbol, {
|
|
2748
|
-
type:
|
|
2746
|
+
type: 'polylineSymbol',
|
|
2749
2747
|
stroke: {
|
|
2750
|
-
color: getNonClassifiedParamValue(baseSymbol,
|
|
2748
|
+
color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 2
|
|
2751
2749
|
/* Line */
|
|
2752
2750
|
),
|
|
2753
|
-
width: getNonClassifiedParamValue(baseSymbol,
|
|
2751
|
+
width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 2
|
|
2754
2752
|
/* Line */
|
|
2755
2753
|
)
|
|
2756
2754
|
}
|
|
@@ -2760,18 +2758,18 @@ const createLineSymbol = (baseSymbol, parameter, classificationsParams, paramete
|
|
|
2760
2758
|
const createPolygonSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
|
|
2761
2759
|
return updateSymbolParameter(_extends({}, baseSymbol, {
|
|
2762
2760
|
fill: {
|
|
2763
|
-
color: getNonClassifiedParamValue(baseSymbol,
|
|
2761
|
+
color: getNonClassifiedParamValue(baseSymbol, 'fill.color', classificationsParams, 3
|
|
2764
2762
|
/* Polygon */
|
|
2765
2763
|
),
|
|
2766
|
-
hatchColor: getNonClassifiedParamValue(baseSymbol,
|
|
2764
|
+
hatchColor: getNonClassifiedParamValue(baseSymbol, 'fill.hatchColor', classificationsParams, 3
|
|
2767
2765
|
/* Polygon */
|
|
2768
2766
|
)
|
|
2769
2767
|
},
|
|
2770
2768
|
stroke: {
|
|
2771
|
-
color: getNonClassifiedParamValue(baseSymbol,
|
|
2769
|
+
color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 3
|
|
2772
2770
|
/* Polygon */
|
|
2773
2771
|
),
|
|
2774
|
-
width: getNonClassifiedParamValue(baseSymbol,
|
|
2772
|
+
width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 3
|
|
2775
2773
|
/* Polygon */
|
|
2776
2774
|
)
|
|
2777
2775
|
}
|
|
@@ -2781,29 +2779,37 @@ const createPolygonSymbol = (baseSymbol, parameter, classificationsParams, param
|
|
|
2781
2779
|
const createH3Symbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
|
|
2782
2780
|
return updateSymbolParameter(_extends({}, baseSymbol, {
|
|
2783
2781
|
fill: {
|
|
2784
|
-
color: getNonClassifiedParamValue(baseSymbol,
|
|
2782
|
+
color: getNonClassifiedParamValue(baseSymbol, 'fill.color', classificationsParams, 3
|
|
2785
2783
|
/* Polygon */
|
|
2786
2784
|
)
|
|
2787
2785
|
},
|
|
2788
2786
|
stroke: {
|
|
2789
|
-
color: getNonClassifiedParamValue(baseSymbol,
|
|
2787
|
+
color: getNonClassifiedParamValue(baseSymbol, 'stroke.color', classificationsParams, 3
|
|
2790
2788
|
/* Polygon */
|
|
2791
2789
|
),
|
|
2792
|
-
width: getNonClassifiedParamValue(baseSymbol,
|
|
2790
|
+
width: getNonClassifiedParamValue(baseSymbol, 'stroke.width', classificationsParams, 3
|
|
2793
2791
|
/* Polygon */
|
|
2794
2792
|
)
|
|
2795
2793
|
}
|
|
2796
2794
|
}), parameter, parameterValue);
|
|
2797
2795
|
};
|
|
2798
2796
|
|
|
2797
|
+
const createClusterSymbol = (baseSymbol, parameter, classificationsParams, parameterValue) => {
|
|
2798
|
+
return updateSymbolParameter(_extends({}, baseSymbol, {
|
|
2799
|
+
fillColor: getNonClassifiedParamValue(baseSymbol, 'fillColor', classificationsParams, 0
|
|
2800
|
+
/* Point */
|
|
2801
|
+
)
|
|
2802
|
+
}), parameter, parameterValue);
|
|
2803
|
+
};
|
|
2804
|
+
|
|
2799
2805
|
const createLegendSymbol = (parameterValue, parameter, classificationsParams, baseSymbol) => {
|
|
2800
2806
|
if (isParameterValueSymbol(parameterValue)) {
|
|
2801
2807
|
return parameterValue;
|
|
2802
2808
|
}
|
|
2803
|
-
/* if (isClusterSymbol(baseSymbol)) {
|
|
2804
|
-
return createClusterSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
|
|
2805
|
-
}*/
|
|
2806
2809
|
|
|
2810
|
+
if (isClusterSymbol(baseSymbol)) {
|
|
2811
|
+
return createClusterSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
|
|
2812
|
+
}
|
|
2807
2813
|
|
|
2808
2814
|
if (isSizableSymbol(baseSymbol)) {
|
|
2809
2815
|
return createPointSymbol(baseSymbol, parameter, classificationsParams, parameterValue);
|
|
@@ -2895,7 +2901,7 @@ const getMinimizedLegendValues = (attribute, classified, formatValue, index, oth
|
|
|
2895
2901
|
const to = getValueFromConditionPart(paramValue.condition, 2);
|
|
2896
2902
|
result.from = from ? isNumeric(from) ? +from : formatDate(from) : null;
|
|
2897
2903
|
result.to = to ? isNumeric(to) ? +to : formatDate(to) : null;
|
|
2898
|
-
result.title =
|
|
2904
|
+
result.title = createValueTitleFromCondition(paramValue, attribute, formatValue, index);
|
|
2899
2905
|
return result;
|
|
2900
2906
|
}
|
|
2901
2907
|
|
|
@@ -2921,7 +2927,7 @@ const getMaximizedLegendValues = (attribute, param, params, classified, symbol,
|
|
|
2921
2927
|
const result = {
|
|
2922
2928
|
symbol: createLegendSymbol(paramValue.value, param, params, symbol)
|
|
2923
2929
|
};
|
|
2924
|
-
result.title = isRangeCondition(paramValue.condition) ?
|
|
2930
|
+
result.title = isRangeCondition(paramValue.condition) ? createValueTitleFromCondition(paramValue, attribute, formatValue, sectionIndex) : getTitleFromCondition(paramValue.condition);
|
|
2925
2931
|
result.hiddenCondition = createHiddenCondition(attribute.name, attribute.type, getClassificationValue(paramValue.value, result.title, new ClassificationCondition(classified.values[index].condition)));
|
|
2926
2932
|
return result;
|
|
2927
2933
|
});
|
|
@@ -2933,12 +2939,27 @@ const getMaximizedLegendValues = (attribute, param, params, classified, symbol,
|
|
|
2933
2939
|
return [...items, other];
|
|
2934
2940
|
};
|
|
2935
2941
|
const getClassified = layerInfo => {
|
|
2942
|
+
var _layerInfo$style2, _layerInfo$style2$chi;
|
|
2943
|
+
|
|
2944
|
+
if ((_layerInfo$style2 = layerInfo.style) != null && (_layerInfo$style2$chi = _layerInfo$style2.children) != null && _layerInfo$style2$chi.length) {
|
|
2945
|
+
var _layerInfo$style3;
|
|
2946
|
+
|
|
2947
|
+
return {
|
|
2948
|
+
symbol: {
|
|
2949
|
+
type: 'byAttribute',
|
|
2950
|
+
defaultValue: layerInfo.style.symbol,
|
|
2951
|
+
title: null,
|
|
2952
|
+
values: (_layerInfo$style3 = layerInfo.style) == null ? void 0 : _layerInfo$style3.children
|
|
2953
|
+
}
|
|
2954
|
+
};
|
|
2955
|
+
}
|
|
2956
|
+
|
|
2936
2957
|
const classifyParams = SYMBOL_CLASSIFICATION[layerInfo.geometryType];
|
|
2937
2958
|
return classifyParams == null ? void 0 : classifyParams.reduce((result, classified) => {
|
|
2938
|
-
var _layerInfo$
|
|
2959
|
+
var _layerInfo$style4;
|
|
2939
2960
|
|
|
2940
|
-
const param = get((_layerInfo$
|
|
2941
|
-
return (param == null ? void 0 : param.type) ===
|
|
2961
|
+
const param = get((_layerInfo$style4 = layerInfo.style) == null ? void 0 : _layerInfo$style4.symbol, classified);
|
|
2962
|
+
return (param == null ? void 0 : param.type) === 'byAttribute' ? _extends({}, result, {
|
|
2942
2963
|
[classified]: param
|
|
2943
2964
|
}) : result;
|
|
2944
2965
|
}, {});
|
|
@@ -2976,7 +2997,7 @@ const getLegendSymbolSize = symbol => {
|
|
|
2976
2997
|
}
|
|
2977
2998
|
|
|
2978
2999
|
if (isPolylineSymbols(symbol)) {
|
|
2979
|
-
size = getParameterValue(getParameterFromSymbol(symbol,
|
|
3000
|
+
size = getParameterValue(getParameterFromSymbol(symbol, 'stroke.width'));
|
|
2980
3001
|
}
|
|
2981
3002
|
|
|
2982
3003
|
return Math.max(DEFAULT_LEGEND_SYMBOL_SIZE, size);
|
|
@@ -2988,13 +3009,13 @@ const serializeSvgPointSymbol = symbol => {
|
|
|
2988
3009
|
const figureFillColor = ((_symbol$figure = symbol.figure) == null ? void 0 : _symbol$figure.fillColor) || null;
|
|
2989
3010
|
const bgFillColor = ((_symbol$background2 = symbol.background) == null ? void 0 : _symbol$background2.fillColor) || null;
|
|
2990
3011
|
return _extends({
|
|
2991
|
-
type:
|
|
3012
|
+
type: 'svgPointSymbol',
|
|
2992
3013
|
size: symbol.size,
|
|
2993
3014
|
offset: symbol.offset,
|
|
2994
3015
|
angle: symbol.angle
|
|
2995
3016
|
}, bgFillColor ? {
|
|
2996
3017
|
background: {
|
|
2997
|
-
id:
|
|
3018
|
+
id: 'symbol-bg',
|
|
2998
3019
|
fillColor: bgFillColor,
|
|
2999
3020
|
strokeColor: ((_symbol$background3 = symbol.background) == null ? void 0 : _symbol$background3.strokeColor) || null,
|
|
3000
3021
|
strokeWidth: ((_symbol$background4 = symbol.background) == null ? void 0 : _symbol$background4.strokeWidth) || null,
|
|
@@ -3002,35 +3023,35 @@ const serializeSvgPointSymbol = symbol => {
|
|
|
3002
3023
|
}
|
|
3003
3024
|
} : {}, figureFillColor ? {
|
|
3004
3025
|
figure: {
|
|
3005
|
-
id:
|
|
3026
|
+
id: 'symbol-figure',
|
|
3006
3027
|
fillColor: figureFillColor
|
|
3007
3028
|
}
|
|
3008
3029
|
} : {});
|
|
3009
3030
|
};
|
|
3010
|
-
const SIZE_PARAMETERS = [
|
|
3031
|
+
const SIZE_PARAMETERS = ['size', 'height', 'strokeWidth', 'stroke.width'];
|
|
3011
3032
|
const isSizeClassification = parameter => SIZE_PARAMETERS.includes(parameter);
|
|
3012
3033
|
const getServiceConfiguration = layer => {
|
|
3013
3034
|
const emptyServiceConfiguration = {
|
|
3014
|
-
name:
|
|
3035
|
+
name: ''
|
|
3015
3036
|
};
|
|
3016
|
-
if (!isLayerService(layer) || !(
|
|
3037
|
+
if (!isLayerService(layer) || !('configuration' in layer)) return emptyServiceConfiguration;
|
|
3017
3038
|
return _extends({}, emptyServiceConfiguration, layer.configuration || {});
|
|
3018
3039
|
};
|
|
3019
3040
|
/** default attribute name which use for geometry info */
|
|
3020
3041
|
|
|
3021
|
-
const GEOMETRY_ATTRIBUTE =
|
|
3042
|
+
const GEOMETRY_ATTRIBUTE = 'geometry';
|
|
3022
3043
|
/** default attribute name which contains unique id info */
|
|
3023
3044
|
|
|
3024
|
-
const DEFAULT_ID_ATTRIBUTE_NAME =
|
|
3045
|
+
const DEFAULT_ID_ATTRIBUTE_NAME = 'gid';
|
|
3025
3046
|
const getAttributesConfiguration = layer => {
|
|
3026
3047
|
const serviceConfiguration = getServiceConfiguration(layer);
|
|
3027
3048
|
const emptyAttributesConfiguration = {
|
|
3028
3049
|
geometryAttribute: GEOMETRY_ATTRIBUTE,
|
|
3029
3050
|
idAttribute: DEFAULT_ID_ATTRIBUTE_NAME,
|
|
3030
|
-
tableName:
|
|
3051
|
+
tableName: ''
|
|
3031
3052
|
};
|
|
3032
3053
|
|
|
3033
|
-
if (!serviceConfiguration || !(
|
|
3054
|
+
if (!serviceConfiguration || !('attributesConfiguration' in serviceConfiguration)) {
|
|
3034
3055
|
return emptyAttributesConfiguration;
|
|
3035
3056
|
}
|
|
3036
3057
|
|
|
@@ -3046,10 +3067,10 @@ const getLayerDefinition = layer => {
|
|
|
3046
3067
|
geometryAttribute: geometryAttribute,
|
|
3047
3068
|
idAttribute,
|
|
3048
3069
|
geometryType: GeometryType.Unknown,
|
|
3049
|
-
titleAttribute:
|
|
3070
|
+
titleAttribute: ''
|
|
3050
3071
|
};
|
|
3051
3072
|
|
|
3052
|
-
if (!isLayerService(layer) || !(
|
|
3073
|
+
if (!isLayerService(layer) || !('layerDefinition' in layer)) {
|
|
3053
3074
|
return emptyLayerDefinition;
|
|
3054
3075
|
}
|
|
3055
3076
|
|
|
@@ -3064,7 +3085,6 @@ function getAttributeType(layer, attributeName) {
|
|
|
3064
3085
|
const attribute = attributes[attributeName];
|
|
3065
3086
|
return attribute ? attribute.type : AttributeType.Unknown;
|
|
3066
3087
|
}
|
|
3067
|
-
|
|
3068
3088
|
const getClassificationValue = (parameterValue, title, condition) => _extends({
|
|
3069
3089
|
parameterValue,
|
|
3070
3090
|
title
|
|
@@ -3109,13 +3129,14 @@ const DEFAULT_LEGEND_SYMBOL_SIZE = 26;
|
|
|
3109
3129
|
const EXTRA_BORDER_SIZE = 4;
|
|
3110
3130
|
const DEFAULT_SYMBOL_SIZE = 20;
|
|
3111
3131
|
const DEFAULT_SYMBOL_WITH_BG_SIZE = 24;
|
|
3112
|
-
const DEFAULT_SYMBOL_FILL_COLOR =
|
|
3113
|
-
const DEFAULT_SYMBOL_STROKE_COLOR =
|
|
3132
|
+
const DEFAULT_SYMBOL_FILL_COLOR = 'rgba(0, 163, 245, 1)';
|
|
3133
|
+
const DEFAULT_SYMBOL_STROKE_COLOR = 'rgb(255, 255, 255)';
|
|
3114
3134
|
const DEFAULT_SYMBOL_OFFSET = [0, 0];
|
|
3135
|
+
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
3136
|
const SYMBOL_CLASSIFICATION = {
|
|
3116
|
-
[GeometryType.Polygon]: [
|
|
3117
|
-
[GeometryType.Polyline]: [
|
|
3118
|
-
[GeometryType.Point]: [
|
|
3137
|
+
[GeometryType.Polygon]: ['fill.color', 'stroke.color', 'stroke.width'],
|
|
3138
|
+
[GeometryType.Polyline]: ['stroke.color', 'stroke.width'],
|
|
3139
|
+
[GeometryType.Point]: ['angle', 'size', 'fill.color', 'fillColor', 'background.fillColor', 'background.strokeColor', 'background.strokeWidth', 'figure.fillColor', 'singleObjectSymbol.figure.fillColor', 'singleObjectSymbol.background.fillColor']
|
|
3119
3140
|
};
|
|
3120
3141
|
const SYMBOL_LIMITS = {
|
|
3121
3142
|
SIZE_MIN: 1,
|
|
@@ -3158,22 +3179,22 @@ const PARAMETER_INFOS = {
|
|
|
3158
3179
|
})
|
|
3159
3180
|
};
|
|
3160
3181
|
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]:
|
|
3176
|
-
[ComparisonOperator.Outside]:
|
|
3182
|
+
[ComparisonOperator.Equals]: '==',
|
|
3183
|
+
[ComparisonOperator.NotEquals]: '!=',
|
|
3184
|
+
[ComparisonOperator.GreaterThan]: '>',
|
|
3185
|
+
[ComparisonOperator.GreaterOrEquals]: '>=',
|
|
3186
|
+
[ComparisonOperator.LessThan]: '<',
|
|
3187
|
+
[ComparisonOperator.LessOrEquals]: '<=',
|
|
3188
|
+
[ComparisonOperator.Filled]: '!=',
|
|
3189
|
+
[ComparisonOperator.Empty]: '==',
|
|
3190
|
+
[ComparisonOperator.Contains]: '==',
|
|
3191
|
+
[ComparisonOperator.NotContains]: '!=',
|
|
3192
|
+
[ComparisonOperator.StartsWith]: '==',
|
|
3193
|
+
[ComparisonOperator.NotStartsWith]: '!=',
|
|
3194
|
+
[ComparisonOperator.EndsWith]: '==',
|
|
3195
|
+
[ComparisonOperator.NotEndsWith]: '!=',
|
|
3196
|
+
[ComparisonOperator.Between]: 'between',
|
|
3197
|
+
[ComparisonOperator.Outside]: '!between'
|
|
3177
3198
|
};
|
|
3178
3199
|
const BASE_OPERATORS = [ComparisonOperator.Equals, ComparisonOperator.NotEquals];
|
|
3179
3200
|
const CONTAINS_OPERATORS = [ComparisonOperator.Contains, ComparisonOperator.NotContains];
|
|
@@ -5793,7 +5814,7 @@ const Fullscreen = () => {
|
|
|
5793
5814
|
}));
|
|
5794
5815
|
};
|
|
5795
5816
|
|
|
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;
|
|
5817
|
+
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
5818
|
const MapLegendDescription = /*#__PURE__*/styled.div(_templateObject$4 || (_templateObject$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: 0.75rem;\n"])));
|
|
5798
5819
|
const ItemText = /*#__PURE__*/styled.div(_templateObject2$4 || (_templateObject2$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n max-width: calc(100% - 2rem);\n font: ", ";\n"])), _ref => {
|
|
5799
5820
|
let {
|
|
@@ -5803,18 +5824,18 @@ const ItemText = /*#__PURE__*/styled.div(_templateObject2$4 || (_templateObject2
|
|
|
5803
5824
|
} = _ref;
|
|
5804
5825
|
return fonts.description;
|
|
5805
5826
|
});
|
|
5806
|
-
const ItemSeparator = /*#__PURE__*/styled.div(_templateObject3$3 || (_templateObject3$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n :after {\n content:
|
|
5807
|
-
const SymbolContainer = /*#__PURE__*/styled(
|
|
5827
|
+
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"])));
|
|
5828
|
+
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
5829
|
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
5830
|
let {
|
|
5810
5831
|
isClusterFillColor
|
|
5811
5832
|
} = _ref2;
|
|
5812
|
-
return isClusterFillColor ?
|
|
5833
|
+
return isClusterFillColor ? 'default' : 'pointer';
|
|
5813
5834
|
}, _ref3 => {
|
|
5814
5835
|
let {
|
|
5815
5836
|
isClusterFillColor
|
|
5816
5837
|
} = _ref3;
|
|
5817
|
-
return isClusterFillColor ?
|
|
5838
|
+
return isClusterFillColor ? 'none' : 'auto';
|
|
5818
5839
|
}, ItemText, SymbolContainer, ItemText, _ref4 => {
|
|
5819
5840
|
let {
|
|
5820
5841
|
isHidden
|
|
@@ -5848,7 +5869,7 @@ const MaximizedLegendContainer = /*#__PURE__*/styled.div(_templateObject12$1 ||
|
|
|
5848
5869
|
let {
|
|
5849
5870
|
isShown
|
|
5850
5871
|
} = _ref8;
|
|
5851
|
-
return isShown ?
|
|
5872
|
+
return isShown ? 'relative' : 'absolute';
|
|
5852
5873
|
}, _ref9 => {
|
|
5853
5874
|
let {
|
|
5854
5875
|
isShown
|
|
@@ -5858,7 +5879,7 @@ const MaximizedLegendContainer = /*#__PURE__*/styled.div(_templateObject12$1 ||
|
|
|
5858
5879
|
let {
|
|
5859
5880
|
isShown
|
|
5860
5881
|
} = _ref10;
|
|
5861
|
-
return isShown ?
|
|
5882
|
+
return isShown ? 'visible' : 'hidden';
|
|
5862
5883
|
});
|
|
5863
5884
|
const MinimizedLegendContainer = /*#__PURE__*/styled(MaximizedLegendContainer)(_templateObject13$1 || (_templateObject13$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: calc(100% - 1.5rem);\n padding-right: 1.5rem;\n"])));
|
|
5864
5885
|
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 +5894,7 @@ const MapLegendSectionItems = /*#__PURE__*/styled.div(_templateObject15$1 || (_t
|
|
|
5873
5894
|
let {
|
|
5874
5895
|
isExpanded
|
|
5875
5896
|
} = _ref12;
|
|
5876
|
-
return isExpanded ?
|
|
5897
|
+
return isExpanded ? 'none' : 'hidden';
|
|
5877
5898
|
});
|
|
5878
5899
|
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
5900
|
|
|
@@ -5882,7 +5903,7 @@ const SizeLegendItemMixin = function SizeLegendItemMixin(value) {
|
|
|
5882
5903
|
value = 0;
|
|
5883
5904
|
}
|
|
5884
5905
|
|
|
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:
|
|
5906
|
+
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
5907
|
};
|
|
5887
5908
|
|
|
5888
5909
|
const StrokeWidthLegendItemMixin = function StrokeWidthLegendItemMixin(value) {
|
|
@@ -5890,7 +5911,7 @@ const StrokeWidthLegendItemMixin = function StrokeWidthLegendItemMixin(value) {
|
|
|
5890
5911
|
value = 0;
|
|
5891
5912
|
}
|
|
5892
5913
|
|
|
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
|
|
5914
|
+
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
5915
|
};
|
|
5895
5916
|
|
|
5896
5917
|
const StrokeColorLegendItemMixin = /*#__PURE__*/css(_templateObject19 || (_templateObject19 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-right: 0.5rem;\n width: 1.5rem;\n"])));
|
|
@@ -5898,12 +5919,12 @@ const MapLegendItem = /*#__PURE__*/styled.div(_templateObject20 || (_templateObj
|
|
|
5898
5919
|
let {
|
|
5899
5920
|
parameter
|
|
5900
5921
|
} = _ref13;
|
|
5901
|
-
return isParameterType([
|
|
5922
|
+
return isParameterType(['strokeColor', 'stroke.color'], parameter) ? 0.25 : 1;
|
|
5902
5923
|
}, _ref14 => {
|
|
5903
5924
|
let {
|
|
5904
5925
|
value
|
|
5905
5926
|
} = _ref14;
|
|
5906
|
-
return typeof value ===
|
|
5927
|
+
return typeof value === 'number' ? 'none' : value;
|
|
5907
5928
|
}, _ref15 => {
|
|
5908
5929
|
let {
|
|
5909
5930
|
isHidden
|
|
@@ -5914,13 +5935,13 @@ const MapLegendItem = /*#__PURE__*/styled.div(_templateObject20 || (_templateObj
|
|
|
5914
5935
|
value,
|
|
5915
5936
|
parameter
|
|
5916
5937
|
} = _ref16;
|
|
5917
|
-
return isParameterType(
|
|
5938
|
+
return isParameterType('size', parameter) && SizeLegendItemMixin(value);
|
|
5918
5939
|
}, _ref17 => {
|
|
5919
5940
|
let {
|
|
5920
5941
|
value,
|
|
5921
5942
|
parameter
|
|
5922
5943
|
} = _ref17;
|
|
5923
|
-
return isParameterType([
|
|
5944
|
+
return isParameterType(['strokeWidth', 'stroke.width'], parameter) && StrokeWidthLegendItemMixin(value);
|
|
5924
5945
|
});
|
|
5925
5946
|
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
5947
|
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 +5961,7 @@ const SingleLegendItemsMixin = /*#__PURE__*/css(_templateObject30 || (_templateO
|
|
|
5940
5961
|
let {
|
|
5941
5962
|
parameter
|
|
5942
5963
|
} = _ref19;
|
|
5943
|
-
return isParameterType([
|
|
5964
|
+
return isParameterType(['strokeColor', 'stroke.color'], parameter) && StrokeColorLegendItemMixin;
|
|
5944
5965
|
});
|
|
5945
5966
|
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
5967
|
let {
|
|
@@ -5962,7 +5983,8 @@ const MapLegendItemsContainer = /*#__PURE__*/styled.div(_templateObject32 || (_t
|
|
|
5962
5983
|
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
5984
|
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
5985
|
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: #
|
|
5986
|
+
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"])));
|
|
5987
|
+
const ClusterLegendContainer = /*#__PURE__*/styled.div(_templateObject37 || (_templateObject37 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin: -0.9rem;\n transform: scale(0.5);\n"])));
|
|
5966
5988
|
|
|
5967
5989
|
const getValueFromLegendTitle = (title, minOrMax) => {
|
|
5968
5990
|
if (title.includes(" - ")) {
|
|
@@ -6115,7 +6137,7 @@ const useSvgSymbol = (symbol, skipOffset) => {
|
|
|
6115
6137
|
|
|
6116
6138
|
var _templateObject$5, _templateObject2$5;
|
|
6117
6139
|
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 => {
|
|
6140
|
+
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
6141
|
let {
|
|
6120
6142
|
fontSettings
|
|
6121
6143
|
} = _ref;
|
|
@@ -6139,7 +6161,7 @@ const SvgSymbolLabel = /*#__PURE__*/styled.div(_templateObject2$5 || (_templateO
|
|
|
6139
6161
|
let {
|
|
6140
6162
|
fontSettings
|
|
6141
6163
|
} = _ref5;
|
|
6142
|
-
return !!(fontSettings != null && fontSettings.fontSize) && "font-size: " + (typeof fontSettings.fontSize ===
|
|
6164
|
+
return !!(fontSettings != null && fontSettings.fontSize) && "font-size: " + (typeof fontSettings.fontSize === 'string' ? fontSettings.fontSize : fontSettings.fontSize + "px");
|
|
6143
6165
|
}, _ref6 => {
|
|
6144
6166
|
let {
|
|
6145
6167
|
fontSettings
|
|
@@ -6222,24 +6244,48 @@ const SymbolByType = _ref => {
|
|
|
6222
6244
|
}
|
|
6223
6245
|
};
|
|
6224
6246
|
|
|
6247
|
+
const ClusterSymbolPreview = _ref => {
|
|
6248
|
+
var _symbol$labelSymbol;
|
|
6249
|
+
|
|
6250
|
+
let {
|
|
6251
|
+
symbol,
|
|
6252
|
+
size = 56,
|
|
6253
|
+
fontSize = '1.25rem'
|
|
6254
|
+
} = _ref;
|
|
6255
|
+
const svgSymbol = {
|
|
6256
|
+
type: 'svgPointSymbol',
|
|
6257
|
+
size,
|
|
6258
|
+
offset: [0, 0],
|
|
6259
|
+
angle: 0,
|
|
6260
|
+
background: {
|
|
6261
|
+
id: 'symbol-bg',
|
|
6262
|
+
fillColor: getParameterValue(symbol.fillColor),
|
|
6263
|
+
strokeColor: symbol.strokeColor,
|
|
6264
|
+
strokeWidth: 6,
|
|
6265
|
+
type: 'circle'
|
|
6266
|
+
}
|
|
6267
|
+
};
|
|
6268
|
+
return React.createElement(SvgSymbol, {
|
|
6269
|
+
svg: DEFAULT_CLUSTER_SVG,
|
|
6270
|
+
symbol: svgSymbol,
|
|
6271
|
+
text: '99',
|
|
6272
|
+
fontSettings: _extends({}, symbol.labelSymbol, {
|
|
6273
|
+
fontSize: fontSize || ((_symbol$labelSymbol = symbol.labelSymbol) == null ? void 0 : _symbol$labelSymbol.fontSize)
|
|
6274
|
+
})
|
|
6275
|
+
});
|
|
6276
|
+
};
|
|
6277
|
+
|
|
6225
6278
|
const LegendSymbolRenderer = /*#__PURE__*/memo(_ref => {
|
|
6226
6279
|
let {
|
|
6227
6280
|
symbol
|
|
6228
6281
|
} = _ref;
|
|
6229
6282
|
|
|
6230
|
-
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
|
|
6234
|
-
|
|
6235
|
-
|
|
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
|
-
);*/
|
|
6283
|
+
if (isClusterSymbol(symbol)) {
|
|
6284
|
+
return React.createElement(ClusterLegendContainer, null, React.createElement(ClusterSymbolPreview, {
|
|
6285
|
+
symbol: symbol
|
|
6286
|
+
}));
|
|
6287
|
+
}
|
|
6288
|
+
|
|
6243
6289
|
return React.createElement(SymbolByType, {
|
|
6244
6290
|
symbol: deserializeSymbol(symbol),
|
|
6245
6291
|
size: getLegendSymbolSize(symbol) || DEFAULT_LEGEND_SYMBOL_SIZE,
|
|
@@ -6249,6 +6295,46 @@ const LegendSymbolRenderer = /*#__PURE__*/memo(_ref => {
|
|
|
6249
6295
|
});
|
|
6250
6296
|
});
|
|
6251
6297
|
|
|
6298
|
+
const isHiddenLegend = (hiddenCondition, hiddenLegends) => !!(hiddenLegends != null && hiddenLegends.includes(hiddenCondition));
|
|
6299
|
+
|
|
6300
|
+
const renderColumn = (column, index) => {
|
|
6301
|
+
const dateTime = column.split(' ');
|
|
6302
|
+
return React.createElement(Fragment, {
|
|
6303
|
+
key: index
|
|
6304
|
+
}, React.createElement(ItemText, {
|
|
6305
|
+
title: column
|
|
6306
|
+
}, dateTime[0], React.createElement(MapLegendDescription, null, dateTime[1])), index === 0 && React.createElement(ItemSeparator, null));
|
|
6307
|
+
};
|
|
6308
|
+
|
|
6309
|
+
const getLegendText = _ref => {
|
|
6310
|
+
let {
|
|
6311
|
+
title,
|
|
6312
|
+
index,
|
|
6313
|
+
isDate
|
|
6314
|
+
} = _ref;
|
|
6315
|
+
|
|
6316
|
+
if (!title) {
|
|
6317
|
+
return React.createElement(ItemText, null, "\u0414\u0440\u0443\u0433\u043E\u0435");
|
|
6318
|
+
}
|
|
6319
|
+
|
|
6320
|
+
const columns = title == null ? void 0 : title.split(' - ');
|
|
6321
|
+
const isSingleColumn = (columns == null ? void 0 : columns.length) === 1;
|
|
6322
|
+
|
|
6323
|
+
if (!isDate || index && isSingleColumn) {
|
|
6324
|
+
return React.createElement(ItemText, {
|
|
6325
|
+
title: title
|
|
6326
|
+
}, title);
|
|
6327
|
+
}
|
|
6328
|
+
|
|
6329
|
+
if (!index && isSingleColumn) {
|
|
6330
|
+
return React.createElement(React.Fragment, null, React.createElement(ItemText, {
|
|
6331
|
+
title: "\u221E"
|
|
6332
|
+
}, "\u221E"), React.createElement(ItemSeparator, null), renderColumn(title));
|
|
6333
|
+
}
|
|
6334
|
+
|
|
6335
|
+
return React.createElement(React.Fragment, null, columns.map(renderColumn));
|
|
6336
|
+
};
|
|
6337
|
+
|
|
6252
6338
|
const MaximizedLegend = _ref => {
|
|
6253
6339
|
let {
|
|
6254
6340
|
innerRef,
|
|
@@ -6262,45 +6348,11 @@ const MaximizedLegend = _ref => {
|
|
|
6262
6348
|
hiddenLegends,
|
|
6263
6349
|
toggleHiddenLegend
|
|
6264
6350
|
} = _ref;
|
|
6265
|
-
const
|
|
6266
|
-
|
|
6267
|
-
|
|
6268
|
-
const
|
|
6269
|
-
const isSize = isParameterType("size", parameter);
|
|
6270
|
-
const isStrokeWidth = isParameterType(["strokeWidth", "stroke.width"], parameter);
|
|
6271
|
-
const isStrokeColor = isParameterType(["strokeColor", "stroke.color"], parameter);
|
|
6351
|
+
const isDate = attributeType === 'DateTime';
|
|
6352
|
+
const isSize = isParameterType('size', parameter);
|
|
6353
|
+
const isStrokeWidth = isParameterType(['strokeWidth', 'stroke.width'], parameter);
|
|
6354
|
+
const isStrokeColor = isParameterType(['strokeColor', 'stroke.color'], parameter);
|
|
6272
6355
|
const parameterValue = useMemo(() => get(sectionSymbol, parameter), [sectionSymbol, parameter]);
|
|
6273
|
-
const renderColumn = useCallback((column, index) => {
|
|
6274
|
-
const dateTime = column.split(" ");
|
|
6275
|
-
return React.createElement(Fragment, {
|
|
6276
|
-
key: index
|
|
6277
|
-
}, React.createElement(ItemText, {
|
|
6278
|
-
title: column
|
|
6279
|
-
}, dateTime[0], React.createElement(MapLegendDescription, null, dateTime[1])), index === 0 && React.createElement(ItemSeparator, null));
|
|
6280
|
-
}, []);
|
|
6281
|
-
const renderItemText = useCallback((title, index) => {
|
|
6282
|
-
if (!title) {
|
|
6283
|
-
return React.createElement(ItemText, null, t("classification.other"));
|
|
6284
|
-
}
|
|
6285
|
-
|
|
6286
|
-
const columns = title == null ? void 0 : title.split(" - ");
|
|
6287
|
-
const isSingleColumn = (columns == null ? void 0 : columns.length) === 1;
|
|
6288
|
-
|
|
6289
|
-
if (!isDate || index && isSingleColumn) {
|
|
6290
|
-
return React.createElement(ItemText, {
|
|
6291
|
-
title: title
|
|
6292
|
-
}, title);
|
|
6293
|
-
}
|
|
6294
|
-
|
|
6295
|
-
if (!index && isSingleColumn) {
|
|
6296
|
-
return React.createElement(React.Fragment, null, React.createElement(ItemText, {
|
|
6297
|
-
title: "\u221E"
|
|
6298
|
-
}, "\u221E"), React.createElement(ItemSeparator, null), renderColumn(title));
|
|
6299
|
-
}
|
|
6300
|
-
|
|
6301
|
-
return React.createElement(React.Fragment, null, columns.map(renderColumn));
|
|
6302
|
-
}, [isDate, renderColumn, t]);
|
|
6303
|
-
const isHidden = useCallback(hiddenCondition => !!(hiddenLegends != null && hiddenLegends.includes(hiddenCondition)), [hiddenLegends]);
|
|
6304
6356
|
const renderLegend = useCallback((_ref2, index) => {
|
|
6305
6357
|
var _parameterValue$value;
|
|
6306
6358
|
|
|
@@ -6313,7 +6365,7 @@ const MaximizedLegend = _ref => {
|
|
|
6313
6365
|
const isClusterFillColor$1 = isClusterFillColor(symbol, parameter);
|
|
6314
6366
|
return React.createElement(ClassifiedItem, {
|
|
6315
6367
|
key: sectionIndex + title + index,
|
|
6316
|
-
isHidden:
|
|
6368
|
+
isHidden: isHiddenLegend(hiddenCondition, hiddenLegends),
|
|
6317
6369
|
isClusterFillColor: isClusterFillColor$1,
|
|
6318
6370
|
onClick: () => toggleHiddenLegend == null ? void 0 : toggleHiddenLegend(layerName, hiddenCondition)
|
|
6319
6371
|
}, isSize || isStrokeWidth || isStrokeColor ? React.createElement(MapLegendItems, {
|
|
@@ -6329,8 +6381,12 @@ const MaximizedLegend = _ref => {
|
|
|
6329
6381
|
parameter: parameter
|
|
6330
6382
|
})) : React.createElement(SymbolContainer, null, React.createElement(LegendSymbolRenderer, {
|
|
6331
6383
|
symbol: isClusterFillColor$1 ? symbol : getExtractedSymbol(symbol, true)
|
|
6332
|
-
})),
|
|
6333
|
-
|
|
6384
|
+
})), getLegendText({
|
|
6385
|
+
title,
|
|
6386
|
+
index,
|
|
6387
|
+
isDate
|
|
6388
|
+
}));
|
|
6389
|
+
}, [parameter, sectionIndex, hiddenLegends, isSize, isStrokeWidth, isStrokeColor, parameterValue, isDate, toggleHiddenLegend, layerName]);
|
|
6334
6390
|
return React.createElement(MaximizedLegendContainer, {
|
|
6335
6391
|
ref: innerRef,
|
|
6336
6392
|
isShown: isShown
|
|
@@ -6360,12 +6416,10 @@ const LegendSection = _ref => {
|
|
|
6360
6416
|
formatValue,
|
|
6361
6417
|
index
|
|
6362
6418
|
} = _ref;
|
|
6363
|
-
const {
|
|
6364
|
-
t
|
|
6365
|
-
} = useTranslation("common");
|
|
6366
6419
|
const [isExpanded, toggleExpanded] = useToggle();
|
|
6367
6420
|
const [maxRef, maxNode] = useNode();
|
|
6368
6421
|
const [minRef, minNode] = useNode();
|
|
6422
|
+
if (!attribute) return null;
|
|
6369
6423
|
return React.createElement(MapLegendSectionContainer, null, React.createElement(MapLegendHeader, null, attribute.alias || attribute.name), React.createElement(LegendParameterDescription, {
|
|
6370
6424
|
parameter: parameter
|
|
6371
6425
|
}), React.createElement(MapLegendSectionItems, {
|
|
@@ -6382,47 +6436,115 @@ const LegendSection = _ref => {
|
|
|
6382
6436
|
parameter: parameter,
|
|
6383
6437
|
attributeType: attribute.type,
|
|
6384
6438
|
index: index,
|
|
6385
|
-
values: getMaximizedLegendValues(attribute, parameter, parameters, classified, symbol, formatValue, index,
|
|
6439
|
+
values: getMaximizedLegendValues(attribute, parameter, parameters, classified, symbol, formatValue, index, 'Другое')
|
|
6386
6440
|
}), React.createElement(MinimizedLegend, {
|
|
6387
6441
|
innerRef: minRef,
|
|
6388
6442
|
isShown: !isExpanded,
|
|
6389
6443
|
hiddenLegends: hiddenLegends == null ? void 0 : hiddenLegends[layerName],
|
|
6390
6444
|
parameter: parameter,
|
|
6391
|
-
values: getMinimizedLegendValues(attribute, classified, formatValue, index,
|
|
6445
|
+
values: getMinimizedLegendValues(attribute, classified, formatValue, index, 'Другое')
|
|
6392
6446
|
})), React.createElement(MapLegendExpandButton, {
|
|
6393
6447
|
onClick: toggleExpanded
|
|
6394
|
-
},
|
|
6448
|
+
}, isExpanded ? 'Свернуть' : 'Развернуть'));
|
|
6449
|
+
};
|
|
6450
|
+
|
|
6451
|
+
const getConditionAttribute = (attributes, condition) => {
|
|
6452
|
+
if (!condition) return null;
|
|
6453
|
+
const attributeName = getAttributeNameFromCondition(condition);
|
|
6454
|
+
let attribute = attributes.find(_ref => {
|
|
6455
|
+
let {
|
|
6456
|
+
name
|
|
6457
|
+
} = _ref;
|
|
6458
|
+
return name === attributeName;
|
|
6459
|
+
});
|
|
6460
|
+
|
|
6461
|
+
if (!attribute) {
|
|
6462
|
+
if (attributeName === 'count') {
|
|
6463
|
+
attribute = {
|
|
6464
|
+
name: 'count',
|
|
6465
|
+
alias: 'Количество',
|
|
6466
|
+
type: AttributeType.Int32
|
|
6467
|
+
};
|
|
6468
|
+
} else {
|
|
6469
|
+
return null;
|
|
6470
|
+
}
|
|
6471
|
+
}
|
|
6472
|
+
|
|
6473
|
+
return attribute;
|
|
6395
6474
|
};
|
|
6396
6475
|
|
|
6397
|
-
const
|
|
6476
|
+
const LegendChildren = _ref => {
|
|
6477
|
+
var _layerInfo$style, _layerInfo$style$chil;
|
|
6478
|
+
|
|
6479
|
+
let {
|
|
6480
|
+
layerInfo,
|
|
6481
|
+
hiddenLegends,
|
|
6482
|
+
toggleHiddenLegend,
|
|
6483
|
+
formatValue
|
|
6484
|
+
} = _ref;
|
|
6485
|
+
if (!((_layerInfo$style = layerInfo.style) != null && (_layerInfo$style$chil = _layerInfo$style.children) != null && _layerInfo$style$chil.length)) return null;
|
|
6486
|
+
const attributes = getLayerAttributes(layerInfo.layerDefinition);
|
|
6487
|
+
return React.createElement(MapLegendContainer, null, layerInfo.style.children.map((paramValue, index) => {
|
|
6488
|
+
var _getConditionAttribut;
|
|
6489
|
+
|
|
6490
|
+
const attribute = getConditionAttribute(attributes, paramValue.condition);
|
|
6491
|
+
if (!attribute) return null;
|
|
6492
|
+
const hiddenCondition = createHiddenCondition(attribute.name, attribute.type, getClassificationValue(paramValue.symbol, paramValue.title, new ClassificationCondition(paramValue.condition)));
|
|
6493
|
+
const legendText = getLegendText({
|
|
6494
|
+
title: isRangeCondition(paramValue.condition) ? createValueTitleFromCondition(paramValue, attribute, formatValue, index) : getTitleFromCondition(paramValue.condition),
|
|
6495
|
+
index,
|
|
6496
|
+
isDate: ((_getConditionAttribut = getConditionAttribute(attributes, paramValue.condition)) == null ? void 0 : _getConditionAttribut.type) === 'DateTime'
|
|
6497
|
+
});
|
|
6498
|
+
return React.createElement(ClassifiedItem, {
|
|
6499
|
+
key: index,
|
|
6500
|
+
isHidden: isHiddenLegend(hiddenCondition, hiddenLegends == null ? void 0 : hiddenLegends[layerInfo.name]),
|
|
6501
|
+
onClick: () => toggleHiddenLegend == null ? void 0 : toggleHiddenLegend(layerInfo.name, hiddenCondition)
|
|
6502
|
+
}, React.createElement(SymbolContainer, null, React.createElement(LegendSymbolRenderer, {
|
|
6503
|
+
symbol: paramValue.symbol
|
|
6504
|
+
})), legendText);
|
|
6505
|
+
}));
|
|
6506
|
+
};
|
|
6507
|
+
|
|
6508
|
+
const _excluded$3 = ["layerInfo", "formatValue", "hiddenLegends", "toggleHiddenLegend"];
|
|
6398
6509
|
const Legend = /*#__PURE__*/memo(_ref => {
|
|
6510
|
+
var _layerInfo$style, _layerInfo$style$chil;
|
|
6511
|
+
|
|
6399
6512
|
let {
|
|
6400
|
-
layerInfo
|
|
6513
|
+
layerInfo,
|
|
6514
|
+
formatValue,
|
|
6515
|
+
hiddenLegends,
|
|
6516
|
+
toggleHiddenLegend
|
|
6401
6517
|
} = _ref,
|
|
6402
6518
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
6403
6519
|
|
|
6520
|
+
if ((_layerInfo$style = layerInfo.style) != null && (_layerInfo$style$chil = _layerInfo$style.children) != null && _layerInfo$style$chil.length) {
|
|
6521
|
+
return React.createElement(LegendChildren, {
|
|
6522
|
+
layerInfo: layerInfo,
|
|
6523
|
+
formatValue: formatValue,
|
|
6524
|
+
hiddenLegends: hiddenLegends,
|
|
6525
|
+
toggleHiddenLegend: toggleHiddenLegend
|
|
6526
|
+
});
|
|
6527
|
+
}
|
|
6528
|
+
|
|
6529
|
+
const attributes = getLayerAttributes(layerInfo.layerDefinition);
|
|
6404
6530
|
const classified = getClassified(layerInfo);
|
|
6405
6531
|
if (!classified) return null;
|
|
6406
6532
|
const parameters = Object.keys(classified);
|
|
6407
|
-
const attributes = getLayerAttributes(layerInfo.layerDefinition);
|
|
6408
6533
|
return React.createElement(MapLegendContainer, null, Object.keys(classified).map((param, index) => {
|
|
6409
|
-
var _classified$param
|
|
6534
|
+
var _layerInfo$style2, _classified$param, _classified$param$val;
|
|
6410
6535
|
|
|
6411
|
-
const attributeName = getAttributeNameFromCondition((_classified$param$val = classified[param].values[0]) == null ? void 0 : _classified$param$val.condition);
|
|
6412
6536
|
return React.createElement(LegendSection, Object.assign({
|
|
6413
6537
|
key: index,
|
|
6414
6538
|
layerName: layerInfo.name,
|
|
6415
|
-
symbol: (_layerInfo$
|
|
6416
|
-
attribute: attributes
|
|
6417
|
-
let {
|
|
6418
|
-
name
|
|
6419
|
-
} = _ref2;
|
|
6420
|
-
return name === attributeName;
|
|
6421
|
-
}),
|
|
6539
|
+
symbol: (_layerInfo$style2 = layerInfo.style) == null ? void 0 : _layerInfo$style2.symbol,
|
|
6540
|
+
attribute: getConditionAttribute(attributes, (_classified$param = classified[param]) == null ? void 0 : (_classified$param$val = _classified$param.values[0]) == null ? void 0 : _classified$param$val.condition),
|
|
6422
6541
|
classified: classified[param],
|
|
6423
6542
|
parameter: param,
|
|
6424
6543
|
parameters: parameters,
|
|
6425
|
-
index: index
|
|
6544
|
+
index: index,
|
|
6545
|
+
formatValue: formatValue,
|
|
6546
|
+
hiddenLegends: hiddenLegends,
|
|
6547
|
+
toggleHiddenLegend: toggleHiddenLegend
|
|
6426
6548
|
}, rest));
|
|
6427
6549
|
}));
|
|
6428
6550
|
});
|
|
@@ -6829,5 +6951,5 @@ const DraggableMarker = _ref => {
|
|
|
6829
6951
|
return React.createElement(Fragment, null);
|
|
6830
6952
|
};
|
|
6831
6953
|
|
|
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 };
|
|
6954
|
+
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, createValueTitleFromCondition, dateComparisonOperators, defaultOffset, defineStrokeStylePreset, deserializeSymbol, evaluateFeature, extractStyle, extractSymbol, findChildFeatureStyle, findChildFeatureSymbol, formatArea, formatAttributeValue, formatDate, formatLength, formatPolygonMeasure, formatRangeClassValue, formatUniqueClassValue, getAttributeFromCondition, getAttributeNameFromClassified, getAttributeNameFromCondition, getAttributeType, getAttributesConfiguration, getChildSymbols, getClassificationValue, 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
6955
|
//# sourceMappingURL=react.esm.js.map
|