openlayers-style-editor 0.1.5 → 0.1.6
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/index.cjs +44 -22
- package/dist/index.js +44 -22
- package/package.json +15 -15
- package/dist/openlayers-style-editor.css +0 -1
package/dist/index.cjs
CHANGED
|
@@ -46,6 +46,10 @@
|
|
|
46
46
|
return GraduatedModes2;
|
|
47
47
|
})(GraduatedModes || {});
|
|
48
48
|
function getCategorizedStyle(attribute, colors, outlineColor, outlineWidth, defaultColor) {
|
|
49
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
50
|
+
outlineColor[3] = 0;
|
|
51
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
52
|
+
outlineColor[3] = 1;
|
|
49
53
|
let aux = [];
|
|
50
54
|
aux.push("match");
|
|
51
55
|
aux.push(["get", attribute]);
|
|
@@ -61,11 +65,15 @@
|
|
|
61
65
|
"white",
|
|
62
66
|
outlineColor || "#000000"
|
|
63
67
|
],
|
|
64
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
68
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
65
69
|
"fill-color": aux
|
|
66
70
|
};
|
|
67
71
|
}
|
|
68
72
|
function singleColorStyle(color, outlineColor, outlineWidth) {
|
|
73
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
74
|
+
outlineColor[3] = 0;
|
|
75
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
76
|
+
outlineColor[3] = 1;
|
|
69
77
|
return {
|
|
70
78
|
"stroke-color": [
|
|
71
79
|
"case",
|
|
@@ -73,7 +81,7 @@
|
|
|
73
81
|
"white",
|
|
74
82
|
outlineColor || "#000000"
|
|
75
83
|
],
|
|
76
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
84
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
77
85
|
"stroke-offset": 0,
|
|
78
86
|
"fill-color": color
|
|
79
87
|
};
|
|
@@ -86,6 +94,10 @@
|
|
|
86
94
|
};
|
|
87
95
|
}
|
|
88
96
|
function getGraduatedStyle(attribute, ramp, outlineColor, outlineWidth) {
|
|
97
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
98
|
+
outlineColor[3] = 0;
|
|
99
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
100
|
+
outlineColor[3] = 1;
|
|
89
101
|
let aux = [];
|
|
90
102
|
aux.push("interpolate");
|
|
91
103
|
aux.push(["linear"]);
|
|
@@ -101,7 +113,7 @@
|
|
|
101
113
|
"white",
|
|
102
114
|
outlineColor || "#000000"
|
|
103
115
|
],
|
|
104
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
116
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
105
117
|
"fill-color": aux
|
|
106
118
|
};
|
|
107
119
|
}
|
|
@@ -260,7 +272,11 @@
|
|
|
260
272
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
261
273
|
MyColorPicker,
|
|
262
274
|
{
|
|
263
|
-
color:
|
|
275
|
+
color: (() => {
|
|
276
|
+
if (borderColor.at(3) < 1)
|
|
277
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
278
|
+
return borderColor;
|
|
279
|
+
})(),
|
|
264
280
|
hideAlpha: true,
|
|
265
281
|
onChange: (e) => setBorderColor(color_js.fromString(e))
|
|
266
282
|
}
|
|
@@ -801,7 +817,7 @@
|
|
|
801
817
|
});
|
|
802
818
|
setTable(tableUpdated);
|
|
803
819
|
} else if (colorRamp.value.length > 0) {
|
|
804
|
-
const style = getCategorizedStyle(selectedAttr
|
|
820
|
+
const style = getCategorizedStyle(selectedAttr?.name, colorRamp.value);
|
|
805
821
|
const colors = getStyleColorsAndValues(style, RenderType.Categorized);
|
|
806
822
|
const tableUpdated = [];
|
|
807
823
|
table.forEach(({ value, visible }) => {
|
|
@@ -908,7 +924,11 @@
|
|
|
908
924
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
909
925
|
MyColorPicker,
|
|
910
926
|
{
|
|
911
|
-
color:
|
|
927
|
+
color: (() => {
|
|
928
|
+
if (borderColor.at(3) < 1)
|
|
929
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
930
|
+
return borderColor;
|
|
931
|
+
})(),
|
|
912
932
|
hideAlpha: true,
|
|
913
933
|
onChange: (e) => setBorderColor(color_js.fromString(e))
|
|
914
934
|
}
|
|
@@ -1009,7 +1029,7 @@
|
|
|
1009
1029
|
datatable_esm_js.DataTable,
|
|
1010
1030
|
{
|
|
1011
1031
|
value: table,
|
|
1012
|
-
selectionMode: rowClick ?
|
|
1032
|
+
selectionMode: rowClick ? null : "checkbox",
|
|
1013
1033
|
tableStyle: { minWidth: "25rem" },
|
|
1014
1034
|
selection: table.filter((tr) => tr.visible),
|
|
1015
1035
|
onSelectionChange: (e) => {
|
|
@@ -1042,8 +1062,8 @@
|
|
|
1042
1062
|
onClick: () => {
|
|
1043
1063
|
applyRenderer({
|
|
1044
1064
|
type: RenderType.Categorized,
|
|
1045
|
-
field: selectedAttr
|
|
1046
|
-
rendererOL: getCategorizedStyle(selectedAttr
|
|
1065
|
+
field: selectedAttr?.name,
|
|
1066
|
+
rendererOL: getCategorizedStyle(selectedAttr?.name, table.filter((row) => row.value != nullText && row.visible).map((tr) => ({
|
|
1047
1067
|
value: tr.value,
|
|
1048
1068
|
color: tr.color
|
|
1049
1069
|
})), borderColor, borderThickness, table.find((row) => row.value == nullText).color)
|
|
@@ -1097,8 +1117,7 @@
|
|
|
1097
1117
|
const locale = numbersLocale;
|
|
1098
1118
|
const toast = react.useRef(null);
|
|
1099
1119
|
const showToast = (message, severity) => {
|
|
1100
|
-
|
|
1101
|
-
(_a = toast.current) == null ? void 0 : _a.show({ severity, summary: "Error", detail: message });
|
|
1120
|
+
toast.current?.show({ severity, summary: "Error", detail: message });
|
|
1102
1121
|
};
|
|
1103
1122
|
const currentRender = layerCurrentRenderer.type != RenderType.Graduated ? [] : layerCurrentRenderer.rendererOL["fill-color"];
|
|
1104
1123
|
const valuesAndColors = [];
|
|
@@ -1239,7 +1258,7 @@
|
|
|
1239
1258
|
}
|
|
1240
1259
|
async function calculateStopsByMode(mode, nClasses, intervalSize2) {
|
|
1241
1260
|
let stops2 = [];
|
|
1242
|
-
let values =
|
|
1261
|
+
let values = selectedAttr?.values.map(Number) || [];
|
|
1243
1262
|
values = values.filter((v) => !isNaN(v) && v != null);
|
|
1244
1263
|
const min = Math.min(...values);
|
|
1245
1264
|
const max = Math.max(...values);
|
|
@@ -1293,7 +1312,7 @@
|
|
|
1293
1312
|
}
|
|
1294
1313
|
react.useEffect(() => {
|
|
1295
1314
|
if (stops.length > 0) {
|
|
1296
|
-
let values =
|
|
1315
|
+
let values = selectedAttr?.values.map(Number) || [];
|
|
1297
1316
|
values = values.filter((v) => !isNaN(v) && v != null);
|
|
1298
1317
|
setIntervals(countNumbers(values || []));
|
|
1299
1318
|
}
|
|
@@ -1336,7 +1355,7 @@
|
|
|
1336
1355
|
if (context.tick) {
|
|
1337
1356
|
const value = Number.parseInt(context.tick.label);
|
|
1338
1357
|
const interval = stops.map((stop) => intervals.find((i) => i.min <= stop.value && stop.value < i.max));
|
|
1339
|
-
return interval.find((i) =>
|
|
1358
|
+
return interval.find((i) => i?.min <= value && value < i.max) ? "#ea1010" : "rgba(0,0,0,0)";
|
|
1340
1359
|
} else
|
|
1341
1360
|
return "rgba(0,0,0,0)";
|
|
1342
1361
|
},
|
|
@@ -1535,7 +1554,6 @@
|
|
|
1535
1554
|
] }),
|
|
1536
1555
|
stops.map(
|
|
1537
1556
|
(value, index) => {
|
|
1538
|
-
var _a, _b;
|
|
1539
1557
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-row-small-small-gap", children: [
|
|
1540
1558
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1541
1559
|
inputnumber_esm_js.InputNumber,
|
|
@@ -1544,7 +1562,7 @@
|
|
|
1544
1562
|
allowEmpty: false,
|
|
1545
1563
|
locale,
|
|
1546
1564
|
min: stops[0].value,
|
|
1547
|
-
max: index < stops.length - 1 ?
|
|
1565
|
+
max: index < stops.length - 1 ? stops[index + 1]?.value - 1e-3 : stops[stops.length]?.value,
|
|
1548
1566
|
disabled: index === 0 || selectedMode != GraduatedModes.Manual || index === stops.length - 1,
|
|
1549
1567
|
onChange: (e) => {
|
|
1550
1568
|
const aux = [...stops];
|
|
@@ -1579,7 +1597,11 @@
|
|
|
1579
1597
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1580
1598
|
MyColorPicker,
|
|
1581
1599
|
{
|
|
1582
|
-
color:
|
|
1600
|
+
color: (() => {
|
|
1601
|
+
if (borderColor.at(3) < 1)
|
|
1602
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
1603
|
+
return borderColor;
|
|
1604
|
+
})(),
|
|
1583
1605
|
hideAlpha: true,
|
|
1584
1606
|
onChange: (e) => setBorderColor(color_js.fromString(e))
|
|
1585
1607
|
}
|
|
@@ -1666,8 +1688,8 @@
|
|
|
1666
1688
|
applyRenderer({
|
|
1667
1689
|
type: RenderType.Graduated,
|
|
1668
1690
|
graduatedType: selectedMode,
|
|
1669
|
-
field: selectedAttr
|
|
1670
|
-
rendererOL: getGraduatedStyle(selectedAttr
|
|
1691
|
+
field: selectedAttr?.name,
|
|
1692
|
+
rendererOL: getGraduatedStyle(selectedAttr?.name, stops, borderColor, borderThickness)
|
|
1671
1693
|
});
|
|
1672
1694
|
setVisible(false);
|
|
1673
1695
|
}
|
|
@@ -1738,7 +1760,7 @@
|
|
|
1738
1760
|
}
|
|
1739
1761
|
)
|
|
1740
1762
|
] }),
|
|
1741
|
-
|
|
1763
|
+
activeIndex?.code == 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1742
1764
|
UniqueSymbol,
|
|
1743
1765
|
{
|
|
1744
1766
|
layerCurrentRenderer: currentRenderer,
|
|
@@ -1747,7 +1769,7 @@
|
|
|
1747
1769
|
setVisible
|
|
1748
1770
|
}
|
|
1749
1771
|
),
|
|
1750
|
-
|
|
1772
|
+
activeIndex?.code == 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1751
1773
|
Categorized,
|
|
1752
1774
|
{
|
|
1753
1775
|
attr,
|
|
@@ -1760,7 +1782,7 @@
|
|
|
1760
1782
|
showPreDefinedRamps
|
|
1761
1783
|
}
|
|
1762
1784
|
),
|
|
1763
|
-
|
|
1785
|
+
activeIndex?.code == 2 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1764
1786
|
Graduated,
|
|
1765
1787
|
{
|
|
1766
1788
|
attr,
|
package/dist/index.js
CHANGED
|
@@ -60,6 +60,10 @@ var GraduatedModes = /* @__PURE__ */ ((GraduatedModes2) => {
|
|
|
60
60
|
return GraduatedModes2;
|
|
61
61
|
})(GraduatedModes || {});
|
|
62
62
|
function getCategorizedStyle(attribute, colors, outlineColor, outlineWidth, defaultColor) {
|
|
63
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
64
|
+
outlineColor[3] = 0;
|
|
65
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
66
|
+
outlineColor[3] = 1;
|
|
63
67
|
let aux = [];
|
|
64
68
|
aux.push("match");
|
|
65
69
|
aux.push(["get", attribute]);
|
|
@@ -75,11 +79,15 @@ function getCategorizedStyle(attribute, colors, outlineColor, outlineWidth, defa
|
|
|
75
79
|
"white",
|
|
76
80
|
outlineColor || "#000000"
|
|
77
81
|
],
|
|
78
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
82
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
79
83
|
"fill-color": aux
|
|
80
84
|
};
|
|
81
85
|
}
|
|
82
86
|
function singleColorStyle(color, outlineColor, outlineWidth) {
|
|
87
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
88
|
+
outlineColor[3] = 0;
|
|
89
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
90
|
+
outlineColor[3] = 1;
|
|
83
91
|
return {
|
|
84
92
|
"stroke-color": [
|
|
85
93
|
"case",
|
|
@@ -87,7 +95,7 @@ function singleColorStyle(color, outlineColor, outlineWidth) {
|
|
|
87
95
|
"white",
|
|
88
96
|
outlineColor || "#000000"
|
|
89
97
|
],
|
|
90
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
98
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
91
99
|
"stroke-offset": 0,
|
|
92
100
|
"fill-color": color
|
|
93
101
|
};
|
|
@@ -100,6 +108,10 @@ function singleColorStyleForLines(color) {
|
|
|
100
108
|
};
|
|
101
109
|
}
|
|
102
110
|
function getGraduatedStyle(attribute, ramp, outlineColor, outlineWidth) {
|
|
111
|
+
if (outlineWidth == 0 && outlineColor != void 0)
|
|
112
|
+
outlineColor[3] = 0;
|
|
113
|
+
else if (outlineWidth != void 0 && outlineWidth > 0 && outlineColor)
|
|
114
|
+
outlineColor[3] = 1;
|
|
103
115
|
let aux = [];
|
|
104
116
|
aux.push("interpolate");
|
|
105
117
|
aux.push(["linear"]);
|
|
@@ -115,7 +127,7 @@ function getGraduatedStyle(attribute, ramp, outlineColor, outlineWidth) {
|
|
|
115
127
|
"white",
|
|
116
128
|
outlineColor || "#000000"
|
|
117
129
|
],
|
|
118
|
-
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth
|
|
130
|
+
"stroke-width": ["case", ["==", ["var", "highlightedId"], ["id"]], 2, outlineWidth == void 0 ? 1 : outlineWidth],
|
|
119
131
|
"fill-color": aux
|
|
120
132
|
};
|
|
121
133
|
}
|
|
@@ -274,7 +286,11 @@ const UniqueSymbol = (props) => {
|
|
|
274
286
|
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
|
|
275
287
|
MyColorPicker,
|
|
276
288
|
{
|
|
277
|
-
color:
|
|
289
|
+
color: (() => {
|
|
290
|
+
if (borderColor.at(3) < 1)
|
|
291
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
292
|
+
return borderColor;
|
|
293
|
+
})(),
|
|
278
294
|
hideAlpha: true,
|
|
279
295
|
onChange: (e) => setBorderColor(fromString(e))
|
|
280
296
|
}
|
|
@@ -815,7 +831,7 @@ const Categorized = (props) => {
|
|
|
815
831
|
});
|
|
816
832
|
setTable(tableUpdated);
|
|
817
833
|
} else if (colorRamp.value.length > 0) {
|
|
818
|
-
const style = getCategorizedStyle(selectedAttr
|
|
834
|
+
const style = getCategorizedStyle(selectedAttr?.name, colorRamp.value);
|
|
819
835
|
const colors = getStyleColorsAndValues(style, RenderType.Categorized);
|
|
820
836
|
const tableUpdated = [];
|
|
821
837
|
table.forEach(({ value, visible }) => {
|
|
@@ -922,7 +938,11 @@ const Categorized = (props) => {
|
|
|
922
938
|
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
|
|
923
939
|
MyColorPicker,
|
|
924
940
|
{
|
|
925
|
-
color:
|
|
941
|
+
color: (() => {
|
|
942
|
+
if (borderColor.at(3) < 1)
|
|
943
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
944
|
+
return borderColor;
|
|
945
|
+
})(),
|
|
926
946
|
hideAlpha: true,
|
|
927
947
|
onChange: (e) => setBorderColor(fromString(e))
|
|
928
948
|
}
|
|
@@ -1023,7 +1043,7 @@ const Categorized = (props) => {
|
|
|
1023
1043
|
DataTable,
|
|
1024
1044
|
{
|
|
1025
1045
|
value: table,
|
|
1026
|
-
selectionMode: rowClick ?
|
|
1046
|
+
selectionMode: rowClick ? null : "checkbox",
|
|
1027
1047
|
tableStyle: { minWidth: "25rem" },
|
|
1028
1048
|
selection: table.filter((tr) => tr.visible),
|
|
1029
1049
|
onSelectionChange: (e) => {
|
|
@@ -1056,8 +1076,8 @@ const Categorized = (props) => {
|
|
|
1056
1076
|
onClick: () => {
|
|
1057
1077
|
applyRenderer({
|
|
1058
1078
|
type: RenderType.Categorized,
|
|
1059
|
-
field: selectedAttr
|
|
1060
|
-
rendererOL: getCategorizedStyle(selectedAttr
|
|
1079
|
+
field: selectedAttr?.name,
|
|
1080
|
+
rendererOL: getCategorizedStyle(selectedAttr?.name, table.filter((row) => row.value != nullText && row.visible).map((tr) => ({
|
|
1061
1081
|
value: tr.value,
|
|
1062
1082
|
color: tr.color
|
|
1063
1083
|
})), borderColor, borderThickness, table.find((row) => row.value == nullText).color)
|
|
@@ -1111,8 +1131,7 @@ const Graduated = (props) => {
|
|
|
1111
1131
|
const locale = numbersLocale;
|
|
1112
1132
|
const toast = useRef(null);
|
|
1113
1133
|
const showToast = (message, severity) => {
|
|
1114
|
-
|
|
1115
|
-
(_a = toast.current) == null ? void 0 : _a.show({ severity, summary: "Error", detail: message });
|
|
1134
|
+
toast.current?.show({ severity, summary: "Error", detail: message });
|
|
1116
1135
|
};
|
|
1117
1136
|
const currentRender = layerCurrentRenderer.type != RenderType.Graduated ? [] : layerCurrentRenderer.rendererOL["fill-color"];
|
|
1118
1137
|
const valuesAndColors = [];
|
|
@@ -1253,7 +1272,7 @@ const Graduated = (props) => {
|
|
|
1253
1272
|
}
|
|
1254
1273
|
async function calculateStopsByMode(mode, nClasses, intervalSize2) {
|
|
1255
1274
|
let stops2 = [];
|
|
1256
|
-
let values =
|
|
1275
|
+
let values = selectedAttr?.values.map(Number) || [];
|
|
1257
1276
|
values = values.filter((v) => !isNaN(v) && v != null);
|
|
1258
1277
|
const min = Math.min(...values);
|
|
1259
1278
|
const max = Math.max(...values);
|
|
@@ -1307,7 +1326,7 @@ const Graduated = (props) => {
|
|
|
1307
1326
|
}
|
|
1308
1327
|
useEffect(() => {
|
|
1309
1328
|
if (stops.length > 0) {
|
|
1310
|
-
let values =
|
|
1329
|
+
let values = selectedAttr?.values.map(Number) || [];
|
|
1311
1330
|
values = values.filter((v) => !isNaN(v) && v != null);
|
|
1312
1331
|
setIntervals(countNumbers(values || []));
|
|
1313
1332
|
}
|
|
@@ -1350,7 +1369,7 @@ const Graduated = (props) => {
|
|
|
1350
1369
|
if (context.tick) {
|
|
1351
1370
|
const value = Number.parseInt(context.tick.label);
|
|
1352
1371
|
const interval = stops.map((stop) => intervals.find((i) => i.min <= stop.value && stop.value < i.max));
|
|
1353
|
-
return interval.find((i) =>
|
|
1372
|
+
return interval.find((i) => i?.min <= value && value < i.max) ? "#ea1010" : "rgba(0,0,0,0)";
|
|
1354
1373
|
} else
|
|
1355
1374
|
return "rgba(0,0,0,0)";
|
|
1356
1375
|
},
|
|
@@ -1549,7 +1568,6 @@ const Graduated = (props) => {
|
|
|
1549
1568
|
] }),
|
|
1550
1569
|
stops.map(
|
|
1551
1570
|
(value, index) => {
|
|
1552
|
-
var _a, _b;
|
|
1553
1571
|
return /* @__PURE__ */ jsxs("div", { className: "flex-row-small-small-gap", children: [
|
|
1554
1572
|
/* @__PURE__ */ jsx(
|
|
1555
1573
|
InputNumber,
|
|
@@ -1558,7 +1576,7 @@ const Graduated = (props) => {
|
|
|
1558
1576
|
allowEmpty: false,
|
|
1559
1577
|
locale,
|
|
1560
1578
|
min: stops[0].value,
|
|
1561
|
-
max: index < stops.length - 1 ?
|
|
1579
|
+
max: index < stops.length - 1 ? stops[index + 1]?.value - 1e-3 : stops[stops.length]?.value,
|
|
1562
1580
|
disabled: index === 0 || selectedMode != GraduatedModes.Manual || index === stops.length - 1,
|
|
1563
1581
|
onChange: (e) => {
|
|
1564
1582
|
const aux = [...stops];
|
|
@@ -1593,7 +1611,11 @@ const Graduated = (props) => {
|
|
|
1593
1611
|
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
|
|
1594
1612
|
MyColorPicker,
|
|
1595
1613
|
{
|
|
1596
|
-
color:
|
|
1614
|
+
color: (() => {
|
|
1615
|
+
if (borderColor.at(3) < 1)
|
|
1616
|
+
return [borderColor[0], borderColor[1], borderColor[2], 1];
|
|
1617
|
+
return borderColor;
|
|
1618
|
+
})(),
|
|
1597
1619
|
hideAlpha: true,
|
|
1598
1620
|
onChange: (e) => setBorderColor(fromString(e))
|
|
1599
1621
|
}
|
|
@@ -1680,8 +1702,8 @@ const Graduated = (props) => {
|
|
|
1680
1702
|
applyRenderer({
|
|
1681
1703
|
type: RenderType.Graduated,
|
|
1682
1704
|
graduatedType: selectedMode,
|
|
1683
|
-
field: selectedAttr
|
|
1684
|
-
rendererOL: getGraduatedStyle(selectedAttr
|
|
1705
|
+
field: selectedAttr?.name,
|
|
1706
|
+
rendererOL: getGraduatedStyle(selectedAttr?.name, stops, borderColor, borderThickness)
|
|
1685
1707
|
});
|
|
1686
1708
|
setVisible(false);
|
|
1687
1709
|
}
|
|
@@ -1752,7 +1774,7 @@ const GeometryEditor = (props) => {
|
|
|
1752
1774
|
}
|
|
1753
1775
|
)
|
|
1754
1776
|
] }),
|
|
1755
|
-
|
|
1777
|
+
activeIndex?.code == 0 && /* @__PURE__ */ jsx(
|
|
1756
1778
|
UniqueSymbol,
|
|
1757
1779
|
{
|
|
1758
1780
|
layerCurrentRenderer: currentRenderer,
|
|
@@ -1761,7 +1783,7 @@ const GeometryEditor = (props) => {
|
|
|
1761
1783
|
setVisible
|
|
1762
1784
|
}
|
|
1763
1785
|
),
|
|
1764
|
-
|
|
1786
|
+
activeIndex?.code == 1 && /* @__PURE__ */ jsx(
|
|
1765
1787
|
Categorized,
|
|
1766
1788
|
{
|
|
1767
1789
|
attr,
|
|
@@ -1774,7 +1796,7 @@ const GeometryEditor = (props) => {
|
|
|
1774
1796
|
showPreDefinedRamps
|
|
1775
1797
|
}
|
|
1776
1798
|
),
|
|
1777
|
-
|
|
1799
|
+
activeIndex?.code == 2 && /* @__PURE__ */ jsx(
|
|
1778
1800
|
Graduated,
|
|
1779
1801
|
{
|
|
1780
1802
|
attr,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openlayers-style-editor",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A style editor extension for OpenLayers currently working with WebGL Vector Layers",
|
|
6
6
|
"homepage": "https://land-it.github.io/openlayers-style-editor/",
|
|
@@ -34,29 +34,29 @@
|
|
|
34
34
|
"react-dom": ">= 17.0.0"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"chart.js": "4.
|
|
37
|
+
"chart.js": "4.5.1",
|
|
38
38
|
"geobuckets": "0.0.3",
|
|
39
|
-
"i18next": "
|
|
39
|
+
"i18next": "25.6.0",
|
|
40
40
|
"primeicons": "7.0.0",
|
|
41
|
-
"primereact": "10.9.
|
|
41
|
+
"primereact": "10.9.7",
|
|
42
42
|
"react-best-gradient-color-picker": "3.0.14",
|
|
43
|
-
"react-i18next": "
|
|
43
|
+
"react-i18next": "16.2.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@eslint/js": "9.
|
|
47
|
-
"@types/node": "
|
|
46
|
+
"@eslint/js": "9.38.0",
|
|
47
|
+
"@types/node": "24.9.1",
|
|
48
48
|
"@types/react": "18.3.18",
|
|
49
49
|
"@types/react-dom": "18.3.5",
|
|
50
|
-
"@vitejs/plugin-react": "
|
|
50
|
+
"@vitejs/plugin-react": "5.1.0",
|
|
51
51
|
"eslint": "8.57.0",
|
|
52
|
-
"eslint-plugin-react-hooks": "
|
|
53
|
-
"eslint-plugin-react-refresh": "0.4.
|
|
54
|
-
"globals": "16.
|
|
55
|
-
"typescript": "5.
|
|
56
|
-
"typescript-eslint": "8.
|
|
57
|
-
"vite": "
|
|
52
|
+
"eslint-plugin-react-hooks": "7.0.0",
|
|
53
|
+
"eslint-plugin-react-refresh": "0.4.24",
|
|
54
|
+
"globals": "16.4.0",
|
|
55
|
+
"typescript": "5.9.3",
|
|
56
|
+
"typescript-eslint": "8.46.2",
|
|
57
|
+
"vite": "7.1.12",
|
|
58
58
|
"vite-plugin-css-injected-by-js": "3.5.2",
|
|
59
|
-
"vite-plugin-dts": "4.5.
|
|
59
|
+
"vite-plugin-dts": "4.5.4"
|
|
60
60
|
},
|
|
61
61
|
"publishConfig": {
|
|
62
62
|
"access": "public"
|