@mapcomponents/react-maplibre 0.1.83 → 0.1.85
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/CHANGELOG.md +26 -0
- package/dist/components/MlFeatureEditor/MlFeatureEditor.d.ts +1 -1
- package/dist/components/MlFeatureEditor/MlFeatureEditor.stories.d.ts +14 -14
- package/dist/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.d.ts +3 -2
- package/dist/components/MlNavigationTools/MlNavigationTools.d.ts +1 -1
- package/dist/components/MlNavigationTools/MlNavigationTools.stories.d.ts +27 -19
- package/dist/components/MlScaleReference/MlScaleReference.stories.d.ts +13 -13
- package/dist/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.stories.d.ts +1 -1
- package/dist/components/MlWmsLoader/utils/WMSLinks.d.ts +1 -0
- package/dist/decorators/GeoJsonMapDecorator.d.ts +2 -0
- package/dist/hooks/useFeatureEditor/utils/FeatureEditorStyle.d.ts +88 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +439 -162
- package/dist/index.esm.js.map +1 -1
- package/dist/ui_components/LayerList/LayerList.d.ts +3 -3
- package/dist/ui_components/LayerList/LayerListFolder.d.ts +4 -4
- package/dist/ui_components/LayerList/LayerListItem.d.ts +3 -3
- package/dist/ui_components/LayerList/LayerListItemFactory.d.ts +1 -1
- package/dist/ui_components/LayerList/util/LayerListItemVectorLayer.d.ts +24 -4
- package/dist/ui_components/LayerList/util/LayerPropertyForm.d.ts +4 -4
- package/dist/ui_components/LayerList/util/input/ColorPicker.d.ts +4 -4
- package/dist/ui_components/UploadButton.d.ts +1 -0
- package/package.json +2 -2
- package/dist/components/MlNavigationTools/MlNavigationTools.cy.d.ts +0 -1
- /package/dist/hooks/{useFeatureEditor.d.ts → useFeatureEditor/useFeatureEditor.d.ts} +0 -0
package/dist/index.esm.js
CHANGED
|
@@ -9,7 +9,7 @@ var uuid = require('uuid');
|
|
|
9
9
|
require('maplibre-gl/dist/maplibre-gl.css');
|
|
10
10
|
var PropTypes = require('prop-types');
|
|
11
11
|
var material = require('@mui/material');
|
|
12
|
-
var
|
|
12
|
+
var FilterCenterFocusIcon = require('@mui/icons-material/FilterCenterFocus');
|
|
13
13
|
var PrinterIcon = require('@mui/icons-material/Print');
|
|
14
14
|
var Button = require('@mui/material/Button');
|
|
15
15
|
var jsPDF = require('jspdf');
|
|
@@ -18,6 +18,7 @@ var Moveable = require('react-moveable');
|
|
|
18
18
|
var turf = require('@turf/turf');
|
|
19
19
|
require('@mapbox/mapbox-gl-draw/dist/mapbox-gl-draw.css');
|
|
20
20
|
var MapboxDraw = require('@mapbox/mapbox-gl-draw');
|
|
21
|
+
var GpsFixedIcon = require('@mui/icons-material/GpsFixed');
|
|
21
22
|
var ButtonGroup = require('@mui/material/ButtonGroup');
|
|
22
23
|
var ControlPointIcon = require('@mui/icons-material/ControlPoint');
|
|
23
24
|
var RemoveCircleOutlineIcon = require('@mui/icons-material/RemoveCircleOutline');
|
|
@@ -46,11 +47,9 @@ var StopIcon = require('@mui/icons-material/Stop');
|
|
|
46
47
|
var FastForwardIcon = require('@mui/icons-material/FastForward');
|
|
47
48
|
var FastRewindIcon = require('@mui/icons-material/FastRewind');
|
|
48
49
|
var d3 = require('d3');
|
|
49
|
-
var TuneIcon = require('@mui/icons-material/Tune');
|
|
50
|
-
var reactColor = require('react-color');
|
|
51
50
|
var system = require('@mui/system');
|
|
52
|
-
var
|
|
53
|
-
var
|
|
51
|
+
var reactColor = require('react-color');
|
|
52
|
+
var TuneIcon = require('@mui/icons-material/Tune');
|
|
54
53
|
var PlaylistAddIcon = require('@mui/icons-material/PlaylistAdd');
|
|
55
54
|
var DynamicFeedIcon = require('@mui/icons-material/DynamicFeed');
|
|
56
55
|
var AppBar = require('@mui/material/AppBar');
|
|
@@ -93,7 +92,7 @@ var maplibregl__default = /*#__PURE__*/_interopDefaultLegacy(maplibregl);
|
|
|
93
92
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
94
93
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
95
94
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
96
|
-
var
|
|
95
|
+
var FilterCenterFocusIcon__default = /*#__PURE__*/_interopDefaultLegacy(FilterCenterFocusIcon);
|
|
97
96
|
var PrinterIcon__default = /*#__PURE__*/_interopDefaultLegacy(PrinterIcon);
|
|
98
97
|
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
99
98
|
var jsPDF__default = /*#__PURE__*/_interopDefaultLegacy(jsPDF);
|
|
@@ -101,6 +100,7 @@ var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
|
|
|
101
100
|
var Moveable__default = /*#__PURE__*/_interopDefaultLegacy(Moveable);
|
|
102
101
|
var turf__namespace = /*#__PURE__*/_interopNamespace(turf);
|
|
103
102
|
var MapboxDraw__default = /*#__PURE__*/_interopDefaultLegacy(MapboxDraw);
|
|
103
|
+
var GpsFixedIcon__default = /*#__PURE__*/_interopDefaultLegacy(GpsFixedIcon);
|
|
104
104
|
var ButtonGroup__default = /*#__PURE__*/_interopDefaultLegacy(ButtonGroup);
|
|
105
105
|
var ControlPointIcon__default = /*#__PURE__*/_interopDefaultLegacy(ControlPointIcon);
|
|
106
106
|
var RemoveCircleOutlineIcon__default = /*#__PURE__*/_interopDefaultLegacy(RemoveCircleOutlineIcon);
|
|
@@ -128,8 +128,6 @@ var FastForwardIcon__default = /*#__PURE__*/_interopDefaultLegacy(FastForwardIco
|
|
|
128
128
|
var FastRewindIcon__default = /*#__PURE__*/_interopDefaultLegacy(FastRewindIcon);
|
|
129
129
|
var d3__namespace = /*#__PURE__*/_interopNamespace(d3);
|
|
130
130
|
var TuneIcon__default = /*#__PURE__*/_interopDefaultLegacy(TuneIcon);
|
|
131
|
-
var ArrowCircleDownIcon__default = /*#__PURE__*/_interopDefaultLegacy(ArrowCircleDownIcon);
|
|
132
|
-
var ArrowCircleUpIcon__default = /*#__PURE__*/_interopDefaultLegacy(ArrowCircleUpIcon);
|
|
133
131
|
var PlaylistAddIcon__default = /*#__PURE__*/_interopDefaultLegacy(PlaylistAddIcon);
|
|
134
132
|
var DynamicFeedIcon__default = /*#__PURE__*/_interopDefaultLegacy(DynamicFeedIcon);
|
|
135
133
|
var AppBar__default = /*#__PURE__*/_interopDefaultLegacy(AppBar);
|
|
@@ -775,17 +773,17 @@ var darkDefault = styles.createTheme({
|
|
|
775
773
|
var getDesignTokens = function (mode) { return (__assign(__assign({}, (mode === 'light' ? lightDefault : darkDefault)), { palette: __assign({ mode: mode }, (mode === 'dark'
|
|
776
774
|
? {
|
|
777
775
|
primary: {
|
|
778
|
-
main: '#
|
|
776
|
+
main: '#009EE0',
|
|
779
777
|
},
|
|
780
778
|
secondary: { main: '#747577' },
|
|
781
|
-
background: { paper: '#
|
|
779
|
+
background: { paper: '#313131' },
|
|
782
780
|
text: {
|
|
783
|
-
primary: '#
|
|
781
|
+
primary: '#FFF',
|
|
784
782
|
contrast: '#000',
|
|
785
783
|
},
|
|
786
784
|
topToolbar: { barColor: '#000' },
|
|
787
|
-
navigation: { navColor: '#
|
|
788
|
-
compass: { compColor: '#
|
|
785
|
+
navigation: { navColor: '#313131', navHover: '#747577' },
|
|
786
|
+
compass: { compColor: '#313131', compHover: '#747577' },
|
|
789
787
|
}
|
|
790
788
|
: {
|
|
791
789
|
primary: {
|
|
@@ -820,11 +818,6 @@ var getTheme = function (mode) {
|
|
|
820
818
|
},
|
|
821
819
|
},
|
|
822
820
|
MuiButton: {
|
|
823
|
-
styleOverrides: {
|
|
824
|
-
contained: {
|
|
825
|
-
color: '#fff',
|
|
826
|
-
},
|
|
827
|
-
},
|
|
828
821
|
variants: [
|
|
829
822
|
{
|
|
830
823
|
props: { variant: 'navtools' },
|
|
@@ -849,7 +842,6 @@ var getTheme = function (mode) {
|
|
|
849
842
|
_a.margin = '0.15px',
|
|
850
843
|
_a.marginTop = '4px',
|
|
851
844
|
_a[':hover'] = {
|
|
852
|
-
color: theme.palette.primary.main,
|
|
853
845
|
backgroundColor: theme.palette.navigation.navHover,
|
|
854
846
|
},
|
|
855
847
|
_a),
|
|
@@ -1363,7 +1355,7 @@ var MlCenterPosition = function (props) {
|
|
|
1363
1355
|
zIndex: 1002,
|
|
1364
1356
|
color: !locationAccessDenied ? props.onColor : props.offColor,
|
|
1365
1357
|
}, onClick: centerCurrentLocation, disabled: locationAccessDenied },
|
|
1366
|
-
React__default["default"].createElement(
|
|
1358
|
+
React__default["default"].createElement(FilterCenterFocusIcon__default["default"], { sx: { fontSize: { xs: '1.4em', md: '1em' } } }))));
|
|
1367
1359
|
};
|
|
1368
1360
|
MlCenterPosition.defaultProps = {
|
|
1369
1361
|
mapId: undefined,
|
|
@@ -2041,10 +2033,238 @@ MlCreatePdfForm.defaultProps = {
|
|
|
2041
2033
|
mapId: undefined,
|
|
2042
2034
|
};
|
|
2043
2035
|
|
|
2036
|
+
function featureEditorStyle() {
|
|
2037
|
+
var mediaIsMobile = material.useMediaQuery(function (theme) { return theme.breakpoints.down('md'); });
|
|
2038
|
+
var featureEditorStyle = [
|
|
2039
|
+
{
|
|
2040
|
+
id: 'gl-draw-polygon-fill-inactive',
|
|
2041
|
+
type: 'fill',
|
|
2042
|
+
filter: [
|
|
2043
|
+
'all',
|
|
2044
|
+
['==', 'active', 'false'],
|
|
2045
|
+
['==', '$type', 'Polygon'],
|
|
2046
|
+
['!=', 'mode', 'static'],
|
|
2047
|
+
],
|
|
2048
|
+
paint: {
|
|
2049
|
+
'fill-color': '#3bb2d0',
|
|
2050
|
+
'fill-outline-color': '#3bb2d0',
|
|
2051
|
+
'fill-opacity': 0.1,
|
|
2052
|
+
},
|
|
2053
|
+
},
|
|
2054
|
+
{
|
|
2055
|
+
id: 'gl-draw-polygon-fill-active',
|
|
2056
|
+
type: 'fill',
|
|
2057
|
+
filter: ['all', ['==', 'active', 'true'], ['==', '$type', 'Polygon']],
|
|
2058
|
+
paint: {
|
|
2059
|
+
'fill-color': '#fbb03b',
|
|
2060
|
+
'fill-outline-color': '#fbb03b',
|
|
2061
|
+
'fill-opacity': 0.1,
|
|
2062
|
+
},
|
|
2063
|
+
},
|
|
2064
|
+
{
|
|
2065
|
+
id: 'gl-draw-polygon-midpoint',
|
|
2066
|
+
type: 'circle',
|
|
2067
|
+
filter: ['all', ['==', '$type', 'Point'], ['==', 'meta', 'midpoint']],
|
|
2068
|
+
paint: {
|
|
2069
|
+
'circle-radius': mediaIsMobile ? 7 : 5,
|
|
2070
|
+
'circle-color': '#fbb03b',
|
|
2071
|
+
},
|
|
2072
|
+
},
|
|
2073
|
+
{
|
|
2074
|
+
id: 'gl-draw-polygon-stroke-inactive',
|
|
2075
|
+
type: 'line',
|
|
2076
|
+
filter: [
|
|
2077
|
+
'all',
|
|
2078
|
+
['==', 'active', 'false'],
|
|
2079
|
+
['==', '$type', 'Polygon'],
|
|
2080
|
+
['!=', 'mode', 'static'],
|
|
2081
|
+
],
|
|
2082
|
+
layout: {
|
|
2083
|
+
'line-cap': 'round',
|
|
2084
|
+
'line-join': 'round',
|
|
2085
|
+
},
|
|
2086
|
+
paint: {
|
|
2087
|
+
'line-color': '#3bb2d0',
|
|
2088
|
+
'line-width': 2,
|
|
2089
|
+
},
|
|
2090
|
+
},
|
|
2091
|
+
{
|
|
2092
|
+
id: 'gl-draw-polygon-stroke-active',
|
|
2093
|
+
type: 'line',
|
|
2094
|
+
filter: ['all', ['==', 'active', 'true'], ['==', '$type', 'Polygon']],
|
|
2095
|
+
layout: {
|
|
2096
|
+
'line-cap': 'round',
|
|
2097
|
+
'line-join': 'round',
|
|
2098
|
+
},
|
|
2099
|
+
paint: {
|
|
2100
|
+
'line-color': '#fbb03b',
|
|
2101
|
+
'line-dasharray': [0.2, 2],
|
|
2102
|
+
'line-width': 2,
|
|
2103
|
+
},
|
|
2104
|
+
},
|
|
2105
|
+
{
|
|
2106
|
+
id: 'gl-draw-line-inactive',
|
|
2107
|
+
type: 'line',
|
|
2108
|
+
filter: [
|
|
2109
|
+
'all',
|
|
2110
|
+
['==', 'active', 'false'],
|
|
2111
|
+
['==', '$type', 'LineString'],
|
|
2112
|
+
['!=', 'mode', 'static'],
|
|
2113
|
+
],
|
|
2114
|
+
layout: {
|
|
2115
|
+
'line-cap': 'round',
|
|
2116
|
+
'line-join': 'round',
|
|
2117
|
+
},
|
|
2118
|
+
paint: {
|
|
2119
|
+
'line-color': '#3bb2d0',
|
|
2120
|
+
'line-width': 2,
|
|
2121
|
+
},
|
|
2122
|
+
},
|
|
2123
|
+
{
|
|
2124
|
+
id: 'gl-draw-line-active',
|
|
2125
|
+
type: 'line',
|
|
2126
|
+
filter: ['all', ['==', '$type', 'LineString'], ['==', 'active', 'true']],
|
|
2127
|
+
layout: {
|
|
2128
|
+
'line-cap': 'round',
|
|
2129
|
+
'line-join': 'round',
|
|
2130
|
+
},
|
|
2131
|
+
paint: {
|
|
2132
|
+
'line-color': '#fbb03b',
|
|
2133
|
+
'line-dasharray': [0.2, 2],
|
|
2134
|
+
'line-width': 2,
|
|
2135
|
+
},
|
|
2136
|
+
},
|
|
2137
|
+
{
|
|
2138
|
+
id: 'gl-draw-polygon-and-line-vertex-stroke-inactive',
|
|
2139
|
+
type: 'circle',
|
|
2140
|
+
filter: ['all', ['==', 'meta', 'vertex'], ['==', '$type', 'Point'], ['!=', 'mode', 'static']],
|
|
2141
|
+
paint: {
|
|
2142
|
+
'circle-radius': mediaIsMobile ? 8 : 6,
|
|
2143
|
+
'circle-color': '#fff',
|
|
2144
|
+
},
|
|
2145
|
+
},
|
|
2146
|
+
{
|
|
2147
|
+
id: 'gl-draw-polygon-and-line-vertex-inactive',
|
|
2148
|
+
type: 'circle',
|
|
2149
|
+
filter: ['all', ['==', 'meta', 'vertex'], ['==', '$type', 'Point'], ['!=', 'mode', 'static']],
|
|
2150
|
+
paint: {
|
|
2151
|
+
'circle-radius': mediaIsMobile ? 7 : 5,
|
|
2152
|
+
'circle-color': '#fbb03b',
|
|
2153
|
+
},
|
|
2154
|
+
},
|
|
2155
|
+
{
|
|
2156
|
+
id: 'gl-draw-point-point-stroke-inactive',
|
|
2157
|
+
type: 'circle',
|
|
2158
|
+
filter: [
|
|
2159
|
+
'all',
|
|
2160
|
+
['==', 'active', 'false'],
|
|
2161
|
+
['==', '$type', 'Point'],
|
|
2162
|
+
['==', 'meta', 'feature'],
|
|
2163
|
+
['!=', 'mode', 'static'],
|
|
2164
|
+
],
|
|
2165
|
+
paint: {
|
|
2166
|
+
'circle-radius': mediaIsMobile ? 10 : 9,
|
|
2167
|
+
'circle-opacity': 1,
|
|
2168
|
+
'circle-color': '#fff',
|
|
2169
|
+
},
|
|
2170
|
+
},
|
|
2171
|
+
{
|
|
2172
|
+
id: 'gl-draw-point-inactive',
|
|
2173
|
+
type: 'circle',
|
|
2174
|
+
filter: [
|
|
2175
|
+
'all',
|
|
2176
|
+
['==', 'active', 'false'],
|
|
2177
|
+
['==', '$type', 'Point'],
|
|
2178
|
+
['==', 'meta', 'feature'],
|
|
2179
|
+
['!=', 'mode', 'static'],
|
|
2180
|
+
],
|
|
2181
|
+
paint: {
|
|
2182
|
+
'circle-radius': mediaIsMobile ? 7.5 : 6.5,
|
|
2183
|
+
'circle-color': '#3bb2d0',
|
|
2184
|
+
},
|
|
2185
|
+
},
|
|
2186
|
+
{
|
|
2187
|
+
id: 'gl-draw-point-stroke-active',
|
|
2188
|
+
type: 'circle',
|
|
2189
|
+
filter: [
|
|
2190
|
+
'all',
|
|
2191
|
+
['==', '$type', 'Point'],
|
|
2192
|
+
['==', 'active', 'true'],
|
|
2193
|
+
['!=', 'meta', 'midpoint'],
|
|
2194
|
+
],
|
|
2195
|
+
paint: {
|
|
2196
|
+
'circle-radius': mediaIsMobile ? 11 : 10,
|
|
2197
|
+
'circle-color': '#fff',
|
|
2198
|
+
},
|
|
2199
|
+
},
|
|
2200
|
+
{
|
|
2201
|
+
id: 'gl-draw-point-active',
|
|
2202
|
+
type: 'circle',
|
|
2203
|
+
filter: [
|
|
2204
|
+
'all',
|
|
2205
|
+
['==', '$type', 'Point'],
|
|
2206
|
+
['!=', 'meta', 'midpoint'],
|
|
2207
|
+
['==', 'active', 'true'],
|
|
2208
|
+
],
|
|
2209
|
+
paint: {
|
|
2210
|
+
'circle-radius': mediaIsMobile ? 8.5 : 7.5,
|
|
2211
|
+
'circle-color': '#fbb03b',
|
|
2212
|
+
},
|
|
2213
|
+
},
|
|
2214
|
+
{
|
|
2215
|
+
id: 'gl-draw-polygon-fill-static',
|
|
2216
|
+
type: 'fill',
|
|
2217
|
+
filter: ['all', ['==', 'mode', 'static'], ['==', '$type', 'Polygon']],
|
|
2218
|
+
paint: {
|
|
2219
|
+
'fill-color': '#404040',
|
|
2220
|
+
'fill-outline-color': '#404040',
|
|
2221
|
+
'fill-opacity': 0.1,
|
|
2222
|
+
},
|
|
2223
|
+
},
|
|
2224
|
+
{
|
|
2225
|
+
id: 'gl-draw-polygon-stroke-static',
|
|
2226
|
+
type: 'line',
|
|
2227
|
+
filter: ['all', ['==', 'mode', 'static'], ['==', '$type', 'Polygon']],
|
|
2228
|
+
layout: {
|
|
2229
|
+
'line-cap': 'round',
|
|
2230
|
+
'line-join': 'round',
|
|
2231
|
+
},
|
|
2232
|
+
paint: {
|
|
2233
|
+
'line-color': '#404040',
|
|
2234
|
+
'line-width': 2,
|
|
2235
|
+
},
|
|
2236
|
+
},
|
|
2237
|
+
{
|
|
2238
|
+
id: 'gl-draw-line-static',
|
|
2239
|
+
type: 'line',
|
|
2240
|
+
filter: ['all', ['==', 'mode', 'static'], ['==', '$type', 'LineString']],
|
|
2241
|
+
layout: {
|
|
2242
|
+
'line-cap': 'round',
|
|
2243
|
+
'line-join': 'round',
|
|
2244
|
+
},
|
|
2245
|
+
paint: {
|
|
2246
|
+
'line-color': '#404040',
|
|
2247
|
+
'line-width': 2,
|
|
2248
|
+
},
|
|
2249
|
+
},
|
|
2250
|
+
{
|
|
2251
|
+
id: 'gl-draw-point-static',
|
|
2252
|
+
type: 'circle',
|
|
2253
|
+
filter: ['all', ['==', 'mode', 'static'], ['==', '$type', 'Point']],
|
|
2254
|
+
paint: {
|
|
2255
|
+
'circle-radius': mediaIsMobile ? 8.5 : 6.5,
|
|
2256
|
+
'circle-color': '#404040',
|
|
2257
|
+
},
|
|
2258
|
+
},
|
|
2259
|
+
];
|
|
2260
|
+
return featureEditorStyle;
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2044
2263
|
/**
|
|
2045
2264
|
* GeoJson Feature editor that allows to create or manipulate GeoJson data
|
|
2046
2265
|
*/
|
|
2047
2266
|
var useFeatureEditor = function (props) {
|
|
2267
|
+
console.log(featureEditorStyle());
|
|
2048
2268
|
var draw = React.useRef();
|
|
2049
2269
|
var mapHook = useMap({
|
|
2050
2270
|
mapId: props.mapId,
|
|
@@ -2053,11 +2273,11 @@ var useFeatureEditor = function (props) {
|
|
|
2053
2273
|
var drawToolsInitialized = React.useRef(false);
|
|
2054
2274
|
var _a = React.useState(false), drawToolsReady = _a[0], setDrawToolsReady = _a[1];
|
|
2055
2275
|
var _b = React.useState(), feature = _b[0], setFeature = _b[1];
|
|
2276
|
+
var style = featureEditorStyle();
|
|
2056
2277
|
var modeChangeHandler = React.useCallback(function (e) {
|
|
2057
2278
|
console.log('MlFeatureEditor mode change to ' + e.mode);
|
|
2058
2279
|
//setDrawMode(e.mode);
|
|
2059
|
-
if (typeof props.onFinish === 'function' &&
|
|
2060
|
-
(e.mode === 'simple_select')) {
|
|
2280
|
+
if (typeof props.onFinish === 'function' && e.mode === 'simple_select') {
|
|
2061
2281
|
props.onFinish();
|
|
2062
2282
|
}
|
|
2063
2283
|
}, [props.onFinish]);
|
|
@@ -2079,6 +2299,8 @@ var useFeatureEditor = function (props) {
|
|
|
2079
2299
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
2080
2300
|
// @ts-ignore
|
|
2081
2301
|
modes: Object.assign({}, MapboxDraw__default["default"].modes),
|
|
2302
|
+
userProperties: true,
|
|
2303
|
+
styles: style,
|
|
2082
2304
|
});
|
|
2083
2305
|
mapHook.map.addControl(draw.current, 'top-left', mapHook.componentId);
|
|
2084
2306
|
mapHook.map.on('draw.modechange', modeChangeHandler, mapHook.componentId);
|
|
@@ -2130,7 +2352,7 @@ var useFeatureEditor = function (props) {
|
|
|
2130
2352
|
return {
|
|
2131
2353
|
feature: feature,
|
|
2132
2354
|
drawToolsReady: drawToolsReady,
|
|
2133
|
-
draw: draw.current
|
|
2355
|
+
draw: draw.current,
|
|
2134
2356
|
};
|
|
2135
2357
|
};
|
|
2136
2358
|
|
|
@@ -2516,6 +2738,25 @@ var MlFollowGps = function (props) {
|
|
|
2516
2738
|
}
|
|
2517
2739
|
return;
|
|
2518
2740
|
}, [mapHook.map, isFollowed, getLocationSuccess]);
|
|
2741
|
+
React.useEffect(function () {
|
|
2742
|
+
var _a, _b;
|
|
2743
|
+
if (accuracyGeoJson === null || accuracyGeoJson === void 0 ? void 0 : accuracyGeoJson.type) {
|
|
2744
|
+
var getBounds = (_a = mapHook.map) === null || _a === void 0 ? void 0 : _a.getBounds();
|
|
2745
|
+
var actualBounds = [
|
|
2746
|
+
getBounds === null || getBounds === void 0 ? void 0 : getBounds._ne.lng,
|
|
2747
|
+
getBounds === null || getBounds === void 0 ? void 0 : getBounds._ne.lat,
|
|
2748
|
+
getBounds === null || getBounds === void 0 ? void 0 : getBounds._sw.lng,
|
|
2749
|
+
getBounds === null || getBounds === void 0 ? void 0 : getBounds._sw.lat,
|
|
2750
|
+
];
|
|
2751
|
+
var accurancyBounds = turf.bbox(accuracyGeoJson);
|
|
2752
|
+
var contained = turf.booleanContains(turf.bboxPolygon(actualBounds), turf.bboxPolygon(accurancyBounds));
|
|
2753
|
+
if (contained === false) {
|
|
2754
|
+
(_b = mapHook.map) === null || _b === void 0 ? void 0 : _b.fitBounds(accurancyBounds, {
|
|
2755
|
+
padding: { top: 25, bottom: 25 },
|
|
2756
|
+
});
|
|
2757
|
+
}
|
|
2758
|
+
}
|
|
2759
|
+
}, [accuracyGeoJson]);
|
|
2519
2760
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2520
2761
|
isFollowed && userLocationGeoJson && (React__default["default"].createElement(MlGeoJsonLayer, { geojson: accuracyGeoJson, type: 'fill', paint: __assign({ 'fill-color': '#cbd300', 'fill-opacity': 0.3 }, props.accuracyPaint), insertBeforeLayer: props.insertBeforeLayer })),
|
|
2521
2762
|
isFollowed && orientationCone && (React__default["default"].createElement(MlGeoJsonLayer, { geojson: orientationCone, type: 'fill', paint: __assign({ 'fill-color': '#0000ff', 'fill-antialias': false, 'fill-opacity': 0.3 }, props.orientationConePaint), insertBeforeLayer: props.insertBeforeLayer })),
|
|
@@ -2666,7 +2907,7 @@ var SvgCompassBackground = function SvgCompassBackground(props) {
|
|
|
2666
2907
|
})));
|
|
2667
2908
|
};
|
|
2668
2909
|
|
|
2669
|
-
var
|
|
2910
|
+
var BoxStyled$2 = material.styled(material.Box)(function (_a) {
|
|
2670
2911
|
var _b;
|
|
2671
2912
|
var theme = _a.theme;
|
|
2672
2913
|
return (_b = {
|
|
@@ -2679,7 +2920,7 @@ var StyleBox = material.styled('div')(function (_a) {
|
|
|
2679
2920
|
},
|
|
2680
2921
|
_b);
|
|
2681
2922
|
});
|
|
2682
|
-
var CompassBox = material.styled(
|
|
2923
|
+
var CompassBox = material.styled(material.Box)(function (_a) {
|
|
2683
2924
|
var _b;
|
|
2684
2925
|
var theme = _a.theme;
|
|
2685
2926
|
return (_b = {
|
|
@@ -2699,7 +2940,7 @@ var CompassBox = material.styled('div')(function (_a) {
|
|
|
2699
2940
|
},
|
|
2700
2941
|
_b);
|
|
2701
2942
|
});
|
|
2702
|
-
var NeedleBox = material.styled(
|
|
2943
|
+
var NeedleBox = material.styled(material.Box)({
|
|
2703
2944
|
position: 'absolute',
|
|
2704
2945
|
right: '21.4px',
|
|
2705
2946
|
top: '6px',
|
|
@@ -2749,7 +2990,7 @@ var MlNavigationCompass = function (props) {
|
|
|
2749
2990
|
}
|
|
2750
2991
|
};
|
|
2751
2992
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2752
|
-
React__default["default"].createElement(
|
|
2993
|
+
React__default["default"].createElement(BoxStyled$2, { sx: __assign({}, props.style) },
|
|
2753
2994
|
React__default["default"].createElement(CompassBox, { onClick: rotate, sx: __assign({}, props.backgroundStyle) },
|
|
2754
2995
|
React__default["default"].createElement(SvgCompassBackground, null),
|
|
2755
2996
|
React__default["default"].createElement(NeedleBox, { onClick: rotate, sx: __assign({}, props.needleStyle) },
|
|
@@ -2774,36 +3015,34 @@ var MlNavigationTools = function (props) {
|
|
|
2774
3015
|
mapHook.map.on('pitchend', function () {
|
|
2775
3016
|
if (!mapHook.map)
|
|
2776
3017
|
return;
|
|
2777
|
-
setPitch(mapHook.map.
|
|
3018
|
+
setPitch(mapHook.map.getPitch());
|
|
2778
3019
|
}, mapHook.componentId);
|
|
2779
|
-
setPitch(mapHook.map.
|
|
3020
|
+
setPitch(mapHook.map.getPitch());
|
|
2780
3021
|
}, [mapHook.map, props.mapId]);
|
|
2781
3022
|
var zoomIn = React.useCallback(function () {
|
|
2782
3023
|
if (!mapHook.map)
|
|
2783
3024
|
return;
|
|
2784
|
-
if (mapHook.map.
|
|
2785
|
-
mapHook.map.
|
|
3025
|
+
if (mapHook.map.transform._zoom + 0.5 <= mapHook.map.transform._maxZoom) {
|
|
3026
|
+
mapHook.map.easeTo({ zoom: mapHook.map.transform._zoom + 0.5 });
|
|
2786
3027
|
}
|
|
2787
3028
|
}, [mapHook.map]);
|
|
2788
3029
|
var zoomOut = React.useCallback(function () {
|
|
2789
3030
|
if (!mapHook.map)
|
|
2790
3031
|
return;
|
|
2791
|
-
if (mapHook.map.
|
|
2792
|
-
mapHook.map.
|
|
3032
|
+
if (mapHook.map.transform._zoom - 0.5 >= mapHook.map.transform._minZoom) {
|
|
3033
|
+
mapHook.map.easeTo({ zoom: mapHook.map.transform._zoom - 0.5 });
|
|
2793
3034
|
}
|
|
2794
3035
|
}, [mapHook.map]);
|
|
2795
3036
|
var adjustPitch = React.useCallback(function () {
|
|
2796
3037
|
if (!mapHook.map)
|
|
2797
3038
|
return;
|
|
2798
|
-
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
}
|
|
2802
|
-
mapHook.map.map.easeTo({ pitch: targetPitch });
|
|
3039
|
+
setPitch(mapHook.map.getPitch());
|
|
3040
|
+
var targetPitch = mapHook.map.getPitch() !== 0 ? 0 : 60;
|
|
3041
|
+
mapHook.map.easeTo({ pitch: targetPitch });
|
|
2803
3042
|
}, [mapHook.map]);
|
|
2804
|
-
return (React__default["default"].createElement(Box__default["default"], { sx: __assign(__assign({ zIndex: 501, position: 'absolute', display: 'flex', flexDirection: 'column', right: mediaIsMobile ? '15px' : '25px', bottom: mediaIsMobile ? '20px' : '30px' }, (mediaIsMobile ? { margin: '80px 10px
|
|
3043
|
+
return (React__default["default"].createElement(Box__default["default"], { sx: __assign(__assign({ zIndex: 501, position: 'absolute', display: 'flex', flexDirection: 'column', right: mediaIsMobile ? '15px' : '25px', bottom: mediaIsMobile ? '20px' : '30px' }, (mediaIsMobile ? { margin: '80px 10px 50px 10px' } : { marginTop: '50px' })), props.sx) },
|
|
2805
3044
|
React__default["default"].createElement(MlNavigationCompass, null),
|
|
2806
|
-
props.show3DButton && (React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: adjustPitch
|
|
3045
|
+
props.show3DButton && (React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: adjustPitch }, pitch < 59 ? '2D' : '3D')),
|
|
2807
3046
|
props.showFollowGpsButton && React__default["default"].createElement(MlFollowGps, null),
|
|
2808
3047
|
props.showCenterLocationButton && React__default["default"].createElement(MlCenterPosition, null),
|
|
2809
3048
|
React__default["default"].createElement(ButtonGroup__default["default"], { orientation: "vertical", sx: {
|
|
@@ -2811,10 +3050,10 @@ var MlNavigationTools = function (props) {
|
|
|
2811
3050
|
Button: { minWidth: '20px !important' },
|
|
2812
3051
|
'Button:hover': { border: 'none' },
|
|
2813
3052
|
} }, props.showZoomButtons && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
2814
|
-
React__default["default"].createElement(Button__default["default"], {
|
|
3053
|
+
React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: zoomIn },
|
|
2815
3054
|
React__default["default"].createElement(ControlPointIcon__default["default"], { sx: { fontSize: { xs: '1.4em', md: '1em' } } })),
|
|
2816
3055
|
React__default["default"].createElement(Divider__default["default"], { sx: { zIndex: 500, marginLeft: '7px', marginRight: '7px' } }),
|
|
2817
|
-
React__default["default"].createElement(Button__default["default"], {
|
|
3056
|
+
React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: zoomOut },
|
|
2818
3057
|
React__default["default"].createElement(RemoveCircleOutlineIcon__default["default"], { sx: { fontSize: { xs: '1.4em', md: '1em' } } }))))),
|
|
2819
3058
|
props.children && React__default["default"].cloneElement(props.children, {})));
|
|
2820
3059
|
};
|
|
@@ -3140,6 +3379,25 @@ var MlLayerSwipe = function (props) {
|
|
|
3140
3379
|
document.removeEventListener('mousemove', onMove);
|
|
3141
3380
|
document.removeEventListener('mouseup', onMouseUp);
|
|
3142
3381
|
};
|
|
3382
|
+
function adjustWindowSize() {
|
|
3383
|
+
var clipWidth = mapContext.maps[props.map2Id].getContainer().style.clip.split(',')[1].replace('px', '');
|
|
3384
|
+
var canvasWidth = mapContext.maps[props.map1Id].getCanvas().getBoundingClientRect().width;
|
|
3385
|
+
if (parseFloat(clipWidth) < canvasWidth) {
|
|
3386
|
+
var newPosition = parseFloat(((clipWidth / canvasWidth) * 100).toFixed(2));
|
|
3387
|
+
setSwipeX(newPosition);
|
|
3388
|
+
}
|
|
3389
|
+
else {
|
|
3390
|
+
var newClip = 'rect(0, ' + canvasWidth / 2 + 'px, 999em, 0)';
|
|
3391
|
+
mapContext.maps[props.map2Id].getContainer().style.clip = newClip;
|
|
3392
|
+
setSwipeX(50);
|
|
3393
|
+
}
|
|
3394
|
+
}
|
|
3395
|
+
React.useEffect(function () {
|
|
3396
|
+
window.addEventListener('resize', adjustWindowSize);
|
|
3397
|
+
return function () {
|
|
3398
|
+
window.removeEventListener('resize', adjustWindowSize);
|
|
3399
|
+
};
|
|
3400
|
+
}, [mapContext]);
|
|
3143
3401
|
return (React__default["default"].createElement("div", { style: __assign({ position: 'absolute', left: swipeX + '%', top: '50%', borderRadius: '50%', width: '100px', height: '100px', background: '#0066ff', border: '3px solid #eaebf1', cursor: 'pointer', zIndex: '110', marginLeft: '-50px', marginTop: '-50px', textAlign: 'center', lineHeight: '91px', fontSize: '2em', color: '#fafafa', userSelect: 'none' }, props.buttonStyle), onTouchStart: onDown, onMouseDown: onDown }));
|
|
3144
3402
|
};
|
|
3145
3403
|
MlLayerSwipe.defaultProps = {
|
|
@@ -6222,8 +6480,79 @@ SimpleDataProvider.propTypes = {
|
|
|
6222
6480
|
children: PropTypes__default["default"].node.isRequired
|
|
6223
6481
|
};
|
|
6224
6482
|
|
|
6483
|
+
var ListStyled$1 = material.styled(material.List)({
|
|
6484
|
+
marginTop: '15px',
|
|
6485
|
+
});
|
|
6225
6486
|
function LayerList(props) {
|
|
6226
|
-
return
|
|
6487
|
+
return React__default["default"].createElement(ListStyled$1, null, props === null || props === void 0 ? void 0 : props.children);
|
|
6488
|
+
}
|
|
6489
|
+
|
|
6490
|
+
var ListItemStyled$1 = system.styled(material.ListItem)({
|
|
6491
|
+
paddingRight: 0,
|
|
6492
|
+
paddingLeft: 0,
|
|
6493
|
+
paddingTop: 0,
|
|
6494
|
+
paddingBottom: '4px',
|
|
6495
|
+
});
|
|
6496
|
+
var ListItemIconStyled = system.styled(material.ListItemIcon)({
|
|
6497
|
+
minWidth: '30px',
|
|
6498
|
+
});
|
|
6499
|
+
var IconButtonStyled$1 = system.styled(material.IconButton)({
|
|
6500
|
+
marginRight: '0px',
|
|
6501
|
+
padding: '0px',
|
|
6502
|
+
});
|
|
6503
|
+
var CheckboxStyled$1 = system.styled(material.Checkbox)({
|
|
6504
|
+
padding: 0,
|
|
6505
|
+
marginRight: '5px',
|
|
6506
|
+
});
|
|
6507
|
+
var BoxStyled$1 = system.styled(system.Box)(function (_a) {
|
|
6508
|
+
var open = _a.open;
|
|
6509
|
+
return ({
|
|
6510
|
+
display: open ? 'block' : 'none',
|
|
6511
|
+
});
|
|
6512
|
+
});
|
|
6513
|
+
var ListStyled = system.styled(material.List)({
|
|
6514
|
+
marginLeft: '50px',
|
|
6515
|
+
});
|
|
6516
|
+
function LayerListFolder(_a) {
|
|
6517
|
+
var _b = _a.visible, visible = _b === void 0 ? true : _b, name = _a.name, children = _a.children, setVisible = _a.setVisible;
|
|
6518
|
+
var _c = React.useState(false), open = _c[0], setOpen = _c[1];
|
|
6519
|
+
var _d = React.useState(true), localVisible = _d[0], setLocalVisible = _d[1];
|
|
6520
|
+
var _visible = React.useMemo(function () {
|
|
6521
|
+
if (!visible) {
|
|
6522
|
+
return false;
|
|
6523
|
+
}
|
|
6524
|
+
return localVisible;
|
|
6525
|
+
}, [visible, localVisible]);
|
|
6526
|
+
var _children = React.useMemo(function () {
|
|
6527
|
+
if (children) {
|
|
6528
|
+
if (Array.isArray(children)) {
|
|
6529
|
+
return children.map(function (element) {
|
|
6530
|
+
return React__default["default"].cloneElement(element, {
|
|
6531
|
+
visible: _visible,
|
|
6532
|
+
});
|
|
6533
|
+
});
|
|
6534
|
+
}
|
|
6535
|
+
return React__default["default"].cloneElement(children, {
|
|
6536
|
+
visible: _visible,
|
|
6537
|
+
});
|
|
6538
|
+
}
|
|
6539
|
+
return React__default["default"].createElement(React__default["default"].Fragment, null);
|
|
6540
|
+
}, [_visible]);
|
|
6541
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6542
|
+
React__default["default"].createElement(ListItemStyled$1, null,
|
|
6543
|
+
React__default["default"].createElement(ListItemIconStyled, null,
|
|
6544
|
+
React__default["default"].createElement(IconButtonStyled$1, { edge: "end", "aria-label": "open", onClick: function () { return setOpen(!open); } }, open ? React__default["default"].createElement(iconsMaterial.ExpandMore, null) : React__default["default"].createElement(iconsMaterial.KeyboardArrowRight, null)),
|
|
6545
|
+
React__default["default"].createElement(CheckboxStyled$1, { disabled: setVisible ? false : !visible, checked: setVisible ? visible : localVisible, onClick: function () {
|
|
6546
|
+
if (setVisible) {
|
|
6547
|
+
setVisible(function (val) { return !val; });
|
|
6548
|
+
}
|
|
6549
|
+
else {
|
|
6550
|
+
setLocalVisible(function (val) { return !val; });
|
|
6551
|
+
}
|
|
6552
|
+
} })),
|
|
6553
|
+
React__default["default"].createElement(material.ListItemText, { primary: name, variant: "layerlist" })),
|
|
6554
|
+
React__default["default"].createElement(BoxStyled$1, { open: open },
|
|
6555
|
+
React__default["default"].createElement(ListStyled, { disablePadding: true }, _children))));
|
|
6227
6556
|
}
|
|
6228
6557
|
|
|
6229
6558
|
var converters = {
|
|
@@ -6285,6 +6614,15 @@ function PaintPropsColorPicker(_a) {
|
|
|
6285
6614
|
} }));
|
|
6286
6615
|
}
|
|
6287
6616
|
|
|
6617
|
+
var PaperStyled = material.styled(material.Paper)({
|
|
6618
|
+
marginLeft: '-100px',
|
|
6619
|
+
marginRight: '-21px',
|
|
6620
|
+
paddingLeft: '53px',
|
|
6621
|
+
borderRadius: '0px',
|
|
6622
|
+
});
|
|
6623
|
+
var BoxStyled = material.styled(material.Box)({
|
|
6624
|
+
marginLeft: '61px',
|
|
6625
|
+
});
|
|
6288
6626
|
var mapPropKeyToFormInputType = {
|
|
6289
6627
|
'circle-color': 'colorpicker',
|
|
6290
6628
|
'circle-radius': 'slider',
|
|
@@ -6322,7 +6660,6 @@ var inputPropsByPropKey = {
|
|
|
6322
6660
|
function LayerPropertyForm(_a) {
|
|
6323
6661
|
var _b = _a.paintProps, paintProps = _b === void 0 ? {} : _b, setPaintProps = _a.setPaintProps;
|
|
6324
6662
|
var key = React.useRef(Math.round(Math.random() * 10000000000));
|
|
6325
|
-
//const onChange = (event) => {};
|
|
6326
6663
|
var getFormInputByType = React.useCallback(function (key) {
|
|
6327
6664
|
if (mapPropKeyToFormInputTypeKeys.indexOf(key) !== -1 &&
|
|
6328
6665
|
(typeof paintProps[key] === 'number' || typeof paintProps[key] === 'string')) {
|
|
@@ -6361,68 +6698,27 @@ function LayerPropertyForm(_a) {
|
|
|
6361
6698
|
return null;
|
|
6362
6699
|
}, [paintProps]);
|
|
6363
6700
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6364
|
-
React__default["default"].createElement(
|
|
6365
|
-
marginLeft: '-100px',
|
|
6366
|
-
marginRight: '-21px',
|
|
6367
|
-
paddingLeft: '81px',
|
|
6368
|
-
borderRadius: '0px',
|
|
6369
|
-
} },
|
|
6701
|
+
React__default["default"].createElement(PaperStyled, null,
|
|
6370
6702
|
React__default["default"].createElement(material.ListItem, { key: key + '_paintPropForm' },
|
|
6371
|
-
React__default["default"].createElement(
|
|
6372
|
-
marginLeft: '61px',
|
|
6373
|
-
} }, Object.keys(paintProps).map(function (el) { return getFormInputByType(el); }))))));
|
|
6374
|
-
}
|
|
6375
|
-
|
|
6376
|
-
function LayerListFolder(_a) {
|
|
6377
|
-
var _b = _a.visible, visible = _b === void 0 ? true : _b, name = _a.name, children = _a.children, setVisible = _a.setVisible;
|
|
6378
|
-
var _c = React.useState(false), open = _c[0], setOpen = _c[1];
|
|
6379
|
-
var _d = React.useState(true), localVisible = _d[0], setLocalVisible = _d[1];
|
|
6380
|
-
var _visible = React.useMemo(function () {
|
|
6381
|
-
if (!visible) {
|
|
6382
|
-
return false;
|
|
6383
|
-
}
|
|
6384
|
-
return localVisible;
|
|
6385
|
-
}, [visible, localVisible]);
|
|
6386
|
-
var _children = React.useMemo(function () {
|
|
6387
|
-
if (children) {
|
|
6388
|
-
if (Array.isArray(children)) {
|
|
6389
|
-
return children.map(function (element) {
|
|
6390
|
-
return React__default["default"].cloneElement(element, {
|
|
6391
|
-
visible: _visible,
|
|
6392
|
-
});
|
|
6393
|
-
});
|
|
6394
|
-
}
|
|
6395
|
-
return React__default["default"].cloneElement(children, {
|
|
6396
|
-
visible: _visible,
|
|
6397
|
-
});
|
|
6398
|
-
}
|
|
6399
|
-
return React__default["default"].createElement(React__default["default"].Fragment, null);
|
|
6400
|
-
}, [_visible]);
|
|
6401
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6402
|
-
React__default["default"].createElement(material.ListItem, { className: 'listItemFolder', sx: {
|
|
6403
|
-
paddingRight: 0,
|
|
6404
|
-
paddingLeft: 0,
|
|
6405
|
-
paddingTop: 0,
|
|
6406
|
-
paddingBottom: '4px',
|
|
6407
|
-
} },
|
|
6408
|
-
React__default["default"].createElement(material.ListItemIcon, { sx: { minWidth: '30px' } },
|
|
6409
|
-
React__default["default"].createElement(material.IconButton, { sx: {
|
|
6410
|
-
marginRight: '0px',
|
|
6411
|
-
padding: '0px',
|
|
6412
|
-
}, edge: "end", "aria-label": "open", onClick: function () { return setOpen(!open); } }, open ? React__default["default"].createElement(iconsMaterial.ExpandMore, null) : React__default["default"].createElement(iconsMaterial.KeyboardArrowRight, null)),
|
|
6413
|
-
React__default["default"].createElement(material.Checkbox, { disabled: setVisible ? false : !visible, checked: setVisible ? visible : localVisible, sx: { padding: 0, marginRight: '5px' }, onClick: function () {
|
|
6414
|
-
if (setVisible) {
|
|
6415
|
-
setVisible(function (val) { return !val; });
|
|
6416
|
-
}
|
|
6417
|
-
else {
|
|
6418
|
-
setLocalVisible(function (val) { return !val; });
|
|
6419
|
-
}
|
|
6420
|
-
} })),
|
|
6421
|
-
React__default["default"].createElement(material.ListItemText, { primary: name, variant: "layerlist" })),
|
|
6422
|
-
React__default["default"].createElement(system.Box, { sx: { display: open ? 'block' : 'none' } },
|
|
6423
|
-
React__default["default"].createElement(material.List, { component: "div", disablePadding: true, sx: { marginLeft: '25px' } }, _children))));
|
|
6703
|
+
React__default["default"].createElement(BoxStyled, null, Object.keys(paintProps).map(function (el) { return getFormInputByType(el); }))))));
|
|
6424
6704
|
}
|
|
6425
6705
|
|
|
6706
|
+
var ListItemStyled = material.styled(material.ListItem)(function (configurable) { return ({
|
|
6707
|
+
paddingRight: configurable ? '56px' : 0,
|
|
6708
|
+
paddingLeft: 0,
|
|
6709
|
+
paddingTop: 0,
|
|
6710
|
+
paddingBottom: '4px',
|
|
6711
|
+
}); });
|
|
6712
|
+
var TuneIconButton$1 = material.styled(material.IconButton)({
|
|
6713
|
+
padding: '4px',
|
|
6714
|
+
marginTop: '-3px',
|
|
6715
|
+
});
|
|
6716
|
+
var CheckboxListItemIcon = material.styled(material.ListItemIcon)({
|
|
6717
|
+
minWidth: '30px',
|
|
6718
|
+
});
|
|
6719
|
+
var CheckboxStyled = material.styled(material.Checkbox)({
|
|
6720
|
+
padding: 0,
|
|
6721
|
+
});
|
|
6426
6722
|
function LayerListItemVectorLayer(_a) {
|
|
6427
6723
|
var configurable = _a.configurable, vtProps = _a.vtProps, setVtProps = _a.setVtProps, id = _a.id, props = __rest(_a, ["configurable", "vtProps", "setVtProps", "id"]);
|
|
6428
6724
|
var _b = React.useState(false), paintPropsFormVisible = _b[0], setPaintPropsFormVisible = _b[1];
|
|
@@ -6458,19 +6754,14 @@ function LayerListItemVectorLayer(_a) {
|
|
|
6458
6754
|
}
|
|
6459
6755
|
}, [paintProps, id, setVtProps, vtProps]);
|
|
6460
6756
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6461
|
-
React__default["default"].createElement(
|
|
6462
|
-
paddingRight: configurable ? '56px' : 0,
|
|
6463
|
-
paddingLeft: 0,
|
|
6464
|
-
paddingTop: 0,
|
|
6465
|
-
paddingBottom: '4px',
|
|
6466
|
-
}, secondaryAction: configurable ? (React__default["default"].createElement(material.IconButton, { edge: "end", "aria-label": "comments", onClick: function () {
|
|
6757
|
+
React__default["default"].createElement(ListItemStyled, { key: id, secondaryAction: configurable ? (React__default["default"].createElement(TuneIconButton$1, { edge: "end", "aria-label": "comments", onClick: function () {
|
|
6467
6758
|
setPaintPropsFormVisible(function (current) {
|
|
6468
6759
|
return !current;
|
|
6469
6760
|
});
|
|
6470
|
-
}
|
|
6761
|
+
} },
|
|
6471
6762
|
React__default["default"].createElement(TuneIcon__default["default"], null))) : undefined },
|
|
6472
|
-
React__default["default"].createElement(
|
|
6473
|
-
React__default["default"].createElement(
|
|
6763
|
+
React__default["default"].createElement(CheckboxListItemIcon, null,
|
|
6764
|
+
React__default["default"].createElement(CheckboxStyled, { checked: visible, onClick: function () {
|
|
6474
6765
|
setVisible(function (val) { return !val; });
|
|
6475
6766
|
} })),
|
|
6476
6767
|
React__default["default"].createElement(material.ListItemText, { primary: vtProps.layers[id].id, variant: "layerlist" })),
|
|
@@ -6480,6 +6771,15 @@ LayerListItemVectorLayer.defaultProps = {
|
|
|
6480
6771
|
configurable: true,
|
|
6481
6772
|
};
|
|
6482
6773
|
|
|
6774
|
+
var TuneIconButton = material.styled(material.IconButton)(function (showDeleteButton) { return ({
|
|
6775
|
+
marginRight: showDeleteButton ? '4px' : '1000px',
|
|
6776
|
+
padding: '4px',
|
|
6777
|
+
marginTop: '-3px',
|
|
6778
|
+
}); });
|
|
6779
|
+
var DeleteIconButton = material.styled(material.IconButton)({
|
|
6780
|
+
padding: '4px',
|
|
6781
|
+
marginTop: '-3px',
|
|
6782
|
+
});
|
|
6483
6783
|
function LayerListItem(_a) {
|
|
6484
6784
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
6485
6785
|
var layerComponent = _a.layerComponent, visible = _a.visible, type = _a.type, name = _a.name, description = _a.description, configurable = _a.configurable, setLayerState = _a.setLayerState, props = __rest(_a, ["layerComponent", "visible", "type", "name", "description", "configurable", "setLayerState"]);
|
|
@@ -6559,24 +6859,21 @@ function LayerListItem(_a) {
|
|
|
6559
6859
|
return undefined;
|
|
6560
6860
|
}, [layerComponent]);
|
|
6561
6861
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6562
|
-
!((_f = layerComponent === null || layerComponent === void 0 ? void 0 : layerComponent.props) === null || _f === void 0 ? void 0 : _f.layers) && (React__default["default"].createElement(
|
|
6862
|
+
!((_f = layerComponent === null || layerComponent === void 0 ? void 0 : layerComponent.props) === null || _f === void 0 ? void 0 : _f.layers) && (React__default["default"].createElement(ListItemStyled, { sx: __assign({}, props.listItemSx), secondaryAction: configurable && ((_g = Object.keys(paintProps)) === null || _g === void 0 ? void 0 : _g.length) > 0 ? (React__default["default"].createElement(React__default["default"].Fragment, null, props === null || props === void 0 ? void 0 :
|
|
6563
6863
|
props.buttons,
|
|
6564
|
-
React__default["default"].createElement(
|
|
6864
|
+
React__default["default"].createElement(TuneIconButton, { edge: props.showDeleteButton ? false : 'end', "aria-label": "settings", onClick: function () {
|
|
6565
6865
|
setPaintPropsFormVisible(function (current) {
|
|
6566
6866
|
return !current;
|
|
6567
6867
|
});
|
|
6568
|
-
}
|
|
6569
|
-
React__default["default"].createElement(
|
|
6868
|
+
} },
|
|
6869
|
+
React__default["default"].createElement(iconsMaterial.Tune, null)),
|
|
6570
6870
|
props.showDeleteButton && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6571
|
-
React__default["default"].createElement(
|
|
6871
|
+
React__default["default"].createElement(DeleteIconButton, { edge: "end", "aria-label": "delete", onClick: function () {
|
|
6572
6872
|
if (typeof setLayerState === 'function') {
|
|
6573
6873
|
setShowDeletionConfirmationDialog(true);
|
|
6574
6874
|
}
|
|
6575
|
-
}, sx: {
|
|
6576
|
-
padding: '4px',
|
|
6577
|
-
marginTop: '-3px',
|
|
6578
6875
|
} },
|
|
6579
|
-
React__default["default"].createElement(
|
|
6876
|
+
React__default["default"].createElement(iconsMaterial.Delete, null)),
|
|
6580
6877
|
showDeletionConfirmationDialog && (React__default["default"].createElement(ConfirmDialog, { open: showDeletionConfirmationDialog, onConfirm: function () {
|
|
6581
6878
|
if (typeof setLayerState === 'function') {
|
|
6582
6879
|
deletedRef.current = true;
|
|
@@ -6586,8 +6883,8 @@ function LayerListItem(_a) {
|
|
|
6586
6883
|
}, onCancel: function () {
|
|
6587
6884
|
setShowDeletionConfirmationDialog(false);
|
|
6588
6885
|
}, title: "Delete layer", text: "Are you sure you want to delete this layer?" })))))) : undefined },
|
|
6589
|
-
React__default["default"].createElement(
|
|
6590
|
-
React__default["default"].createElement(
|
|
6886
|
+
React__default["default"].createElement(CheckboxListItemIcon, null,
|
|
6887
|
+
React__default["default"].createElement(CheckboxStyled, { disabled: !visible, checked: localVisible, onClick: function () {
|
|
6591
6888
|
setLocalVisible(function (val) { return !val; });
|
|
6592
6889
|
} })),
|
|
6593
6890
|
React__default["default"].createElement(material.ListItemText, { variant: "layerlist", primary: name, secondary: description, primaryTypographyProps: { overflow: 'hidden' } }))),
|
|
@@ -6605,6 +6902,14 @@ LayerListItem.defaultProps = {
|
|
|
6605
6902
|
buttons: React__default["default"].createElement(React__default["default"].Fragment, null),
|
|
6606
6903
|
};
|
|
6607
6904
|
|
|
6905
|
+
var IconButtonStyled = material.styled(material.IconButton)({
|
|
6906
|
+
padding: '4px',
|
|
6907
|
+
marginTop: '-3px',
|
|
6908
|
+
background: 'none',
|
|
6909
|
+
'&:hover': {
|
|
6910
|
+
background: 'none',
|
|
6911
|
+
},
|
|
6912
|
+
});
|
|
6608
6913
|
function LayerListItemFactory(props) {
|
|
6609
6914
|
var _a, _b;
|
|
6610
6915
|
var layerContext = useLayerContext();
|
|
@@ -6629,7 +6934,7 @@ function LayerListItemFactory(props) {
|
|
|
6629
6934
|
return layerContext.setLayers;
|
|
6630
6935
|
}, [props.setLayers, layerContext.setLayers]);
|
|
6631
6936
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6632
|
-
React__default["default"].createElement(MlOrderLayers, { layerIds: orderLayers, insertBeforeLayer:
|
|
6937
|
+
React__default["default"].createElement(MlOrderLayers, { layerIds: orderLayers, insertBeforeLayer: "_background" }),
|
|
6633
6938
|
((_a = layerContext === null || layerContext === void 0 ? void 0 : layerContext.symbolLayers) === null || _a === void 0 ? void 0 : _a.length) > 0 && (React__default["default"].createElement(LayerListItem, { key: 'background_labels', layerComponent: React__default["default"].createElement(MlVectorTileLayer, __assign({}, layerContext.vtLayerConfig, { layers: layerContext.symbolLayers, mapId: props === null || props === void 0 ? void 0 : props.mapId, insertBeforeLayer: 'order-labels' })), setLayerState: function (state) {
|
|
6634
6939
|
return layerContext.setSymbolLayers(state === null || state === void 0 ? void 0 : state.layers);
|
|
6635
6940
|
}, visible: true, configurable: true, type: "layer", name: "Labels" })),
|
|
@@ -6641,28 +6946,14 @@ function LayerListItemFactory(props) {
|
|
|
6641
6946
|
case 'geojson':
|
|
6642
6947
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6643
6948
|
React__default["default"].createElement(LayerListItem, { key: layer.id, name: (layer === null || layer === void 0 ? void 0 : layer.name) || ((_a = layer === null || layer === void 0 ? void 0 : layer.config) === null || _a === void 0 ? void 0 : _a.type) + ' layer' || 'unnamed layer', layerComponent: React__default["default"].createElement(MlGeoJsonLayer, __assign({}, layer.config, { mapId: props === null || props === void 0 ? void 0 : props.mapId, layerId: layer.id, insertBeforeLayer: 'content_order_' + (layers.length - 1 - idx) })), buttons: React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6644
|
-
React__default["default"].createElement(
|
|
6949
|
+
React__default["default"].createElement(IconButtonStyled, { disabled: idx === layers.length - 1, onClick: function () {
|
|
6645
6950
|
layerContext.moveDown(layer.id || '');
|
|
6646
|
-
}, sx: {
|
|
6647
|
-
padding: '4px',
|
|
6648
|
-
marginTop: '-3px',
|
|
6649
|
-
background: 'none',
|
|
6650
|
-
"&:hover": {
|
|
6651
|
-
background: "none"
|
|
6652
|
-
}
|
|
6653
6951
|
} },
|
|
6654
|
-
React__default["default"].createElement(
|
|
6655
|
-
React__default["default"].createElement(
|
|
6952
|
+
React__default["default"].createElement(iconsMaterial.ArrowCircleDown, null)),
|
|
6953
|
+
React__default["default"].createElement(IconButtonStyled, { disabled: idx === 0, onClick: function () {
|
|
6656
6954
|
layerContext.moveUp(layer.id || '');
|
|
6657
|
-
}, sx: {
|
|
6658
|
-
padding: '4px',
|
|
6659
|
-
marginTop: '-3px',
|
|
6660
|
-
background: 'none',
|
|
6661
|
-
"&:hover": {
|
|
6662
|
-
background: "none"
|
|
6663
|
-
}
|
|
6664
6955
|
} },
|
|
6665
|
-
React__default["default"].createElement(
|
|
6956
|
+
React__default["default"].createElement(iconsMaterial.ArrowCircleUp, null))), setLayerState: function (layerConfig) {
|
|
6666
6957
|
return setLayers === null || setLayers === void 0 ? void 0 : setLayers(function (current) {
|
|
6667
6958
|
var _layers = __spreadArray([], current, true);
|
|
6668
6959
|
if (layerConfig === false) {
|
|
@@ -6698,28 +6989,14 @@ function LayerListItemFactory(props) {
|
|
|
6698
6989
|
return _layers;
|
|
6699
6990
|
});
|
|
6700
6991
|
}, showDeleteButton: true, buttons: React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
6701
|
-
React__default["default"].createElement(
|
|
6992
|
+
React__default["default"].createElement(IconButtonStyled, { disabled: idx === layers.length - 1, onClick: function () {
|
|
6702
6993
|
layerContext.moveDown(layer.id || '');
|
|
6703
|
-
}, sx: {
|
|
6704
|
-
padding: '4px',
|
|
6705
|
-
marginTop: '-3px',
|
|
6706
|
-
background: 'none',
|
|
6707
|
-
"&:hover": {
|
|
6708
|
-
background: "none"
|
|
6709
|
-
}
|
|
6710
6994
|
} },
|
|
6711
|
-
React__default["default"].createElement(
|
|
6712
|
-
React__default["default"].createElement(
|
|
6995
|
+
React__default["default"].createElement(iconsMaterial.ArrowCircleDown, null)),
|
|
6996
|
+
React__default["default"].createElement(IconButtonStyled, { disabled: idx === 0, onClick: function () {
|
|
6713
6997
|
layerContext.moveUp(layer.id || '');
|
|
6714
|
-
}, sx: {
|
|
6715
|
-
padding: '4px',
|
|
6716
|
-
marginTop: '-3px',
|
|
6717
|
-
background: 'none',
|
|
6718
|
-
"&:hover": {
|
|
6719
|
-
background: "none"
|
|
6720
|
-
}
|
|
6721
6998
|
} },
|
|
6722
|
-
React__default["default"].createElement(
|
|
6999
|
+
React__default["default"].createElement(iconsMaterial.ArrowCircleUp, null))) }))));
|
|
6723
7000
|
default:
|
|
6724
7001
|
return null;
|
|
6725
7002
|
}
|
|
@@ -6883,7 +7160,7 @@ function TopToolbar(props) {
|
|
|
6883
7160
|
}, sx: {
|
|
6884
7161
|
display: { xs: 'block', sm: 'none' },
|
|
6885
7162
|
} },
|
|
6886
|
-
React__namespace.createElement(Box__default["default"], { sx: { paddingLeft: '10px', paddingRight: '10px' } }, props.buttons)))) : (''),
|
|
7163
|
+
React__namespace.createElement(Box__default["default"], { sx: { paddingLeft: '10px', paddingRight: '10px' }, onClick: handleCloseNavMenu }, props.buttons)))) : (''),
|
|
6887
7164
|
React__namespace.createElement(Box__default["default"], { sx: { marginRight: '25px', display: { xs: 'none', sm: 'flex' } } }, props.buttons))));
|
|
6888
7165
|
}
|
|
6889
7166
|
|
|
@@ -7005,7 +7282,7 @@ function UploadButton(props) {
|
|
|
7005
7282
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
7006
7283
|
props.buttonComponent ? (React__default["default"].cloneElement(props.buttonComponent, { onClick: upload })) : (React__default["default"].createElement(material.Button, { onClick: upload },
|
|
7007
7284
|
React__default["default"].createElement(FileCopy__default["default"], null))),
|
|
7008
|
-
React__default["default"].createElement("input", { ref: fileupload, onChange: fileUploadOnChange, type: "file", id: "input", multiple: true, style: { display: 'none' } })));
|
|
7285
|
+
React__default["default"].createElement("input", { ref: fileupload, onChange: fileUploadOnChange, type: "file", accept: props.accept, id: "input", multiple: true, style: { display: 'none' } })));
|
|
7009
7286
|
}
|
|
7010
7287
|
|
|
7011
7288
|
var SelectStylePopup = function (props) {
|