@mapcomponents/react-maplibre 0.1.84 → 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.
Files changed (24) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/components/MlFeatureEditor/MlFeatureEditor.d.ts +1 -1
  3. package/dist/components/MlFeatureEditor/MlFeatureEditor.stories.d.ts +14 -14
  4. package/dist/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.d.ts +3 -2
  5. package/dist/components/MlNavigationTools/MlNavigationTools.d.ts +1 -1
  6. package/dist/components/MlNavigationTools/MlNavigationTools.stories.d.ts +27 -19
  7. package/dist/components/MlScaleReference/MlScaleReference.stories.d.ts +13 -13
  8. package/dist/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.stories.d.ts +1 -1
  9. package/dist/components/MlWmsLoader/utils/WMSLinks.d.ts +1 -0
  10. package/dist/decorators/GeoJsonMapDecorator.d.ts +2 -0
  11. package/dist/hooks/useFeatureEditor/utils/FeatureEditorStyle.d.ts +88 -0
  12. package/dist/index.d.ts +1 -1
  13. package/dist/index.esm.js +432 -149
  14. package/dist/index.esm.js.map +1 -1
  15. package/dist/ui_components/LayerList/LayerList.d.ts +3 -3
  16. package/dist/ui_components/LayerList/LayerListFolder.d.ts +4 -4
  17. package/dist/ui_components/LayerList/LayerListItem.d.ts +3 -3
  18. package/dist/ui_components/LayerList/LayerListItemFactory.d.ts +1 -1
  19. package/dist/ui_components/LayerList/util/LayerListItemVectorLayer.d.ts +24 -4
  20. package/dist/ui_components/LayerList/util/LayerPropertyForm.d.ts +4 -4
  21. package/dist/ui_components/LayerList/util/input/ColorPicker.d.ts +4 -4
  22. package/dist/ui_components/UploadButton.d.ts +1 -0
  23. package/package.json +2 -2
  24. /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 GpsFixedIcon = require('@mui/icons-material/GpsFixed');
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 ArrowCircleDownIcon = require('@mui/icons-material/ArrowCircleDown');
53
- var ArrowCircleUpIcon = require('@mui/icons-material/ArrowCircleUp');
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 GpsFixedIcon__default = /*#__PURE__*/_interopDefaultLegacy(GpsFixedIcon);
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);
@@ -1357,7 +1355,7 @@ var MlCenterPosition = function (props) {
1357
1355
  zIndex: 1002,
1358
1356
  color: !locationAccessDenied ? props.onColor : props.offColor,
1359
1357
  }, onClick: centerCurrentLocation, disabled: locationAccessDenied },
1360
- React__default["default"].createElement(GpsFixedIcon__default["default"], { sx: { fontSize: { xs: '1.4em', md: '1em' } } }))));
1358
+ React__default["default"].createElement(FilterCenterFocusIcon__default["default"], { sx: { fontSize: { xs: '1.4em', md: '1em' } } }))));
1361
1359
  };
1362
1360
  MlCenterPosition.defaultProps = {
1363
1361
  mapId: undefined,
@@ -2035,10 +2033,238 @@ MlCreatePdfForm.defaultProps = {
2035
2033
  mapId: undefined,
2036
2034
  };
2037
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
+
2038
2263
  /**
2039
2264
  * GeoJson Feature editor that allows to create or manipulate GeoJson data
2040
2265
  */
2041
2266
  var useFeatureEditor = function (props) {
2267
+ console.log(featureEditorStyle());
2042
2268
  var draw = React.useRef();
2043
2269
  var mapHook = useMap({
2044
2270
  mapId: props.mapId,
@@ -2047,11 +2273,11 @@ var useFeatureEditor = function (props) {
2047
2273
  var drawToolsInitialized = React.useRef(false);
2048
2274
  var _a = React.useState(false), drawToolsReady = _a[0], setDrawToolsReady = _a[1];
2049
2275
  var _b = React.useState(), feature = _b[0], setFeature = _b[1];
2276
+ var style = featureEditorStyle();
2050
2277
  var modeChangeHandler = React.useCallback(function (e) {
2051
2278
  console.log('MlFeatureEditor mode change to ' + e.mode);
2052
2279
  //setDrawMode(e.mode);
2053
- if (typeof props.onFinish === 'function' &&
2054
- (e.mode === 'simple_select')) {
2280
+ if (typeof props.onFinish === 'function' && e.mode === 'simple_select') {
2055
2281
  props.onFinish();
2056
2282
  }
2057
2283
  }, [props.onFinish]);
@@ -2073,6 +2299,8 @@ var useFeatureEditor = function (props) {
2073
2299
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2074
2300
  // @ts-ignore
2075
2301
  modes: Object.assign({}, MapboxDraw__default["default"].modes),
2302
+ userProperties: true,
2303
+ styles: style,
2076
2304
  });
2077
2305
  mapHook.map.addControl(draw.current, 'top-left', mapHook.componentId);
2078
2306
  mapHook.map.on('draw.modechange', modeChangeHandler, mapHook.componentId);
@@ -2124,7 +2352,7 @@ var useFeatureEditor = function (props) {
2124
2352
  return {
2125
2353
  feature: feature,
2126
2354
  drawToolsReady: drawToolsReady,
2127
- draw: draw.current
2355
+ draw: draw.current,
2128
2356
  };
2129
2357
  };
2130
2358
 
@@ -2510,6 +2738,25 @@ var MlFollowGps = function (props) {
2510
2738
  }
2511
2739
  return;
2512
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]);
2513
2760
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
2514
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 })),
2515
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 })),
@@ -2660,7 +2907,7 @@ var SvgCompassBackground = function SvgCompassBackground(props) {
2660
2907
  })));
2661
2908
  };
2662
2909
 
2663
- var StyleBox = material.styled('div')(function (_a) {
2910
+ var BoxStyled$2 = material.styled(material.Box)(function (_a) {
2664
2911
  var _b;
2665
2912
  var theme = _a.theme;
2666
2913
  return (_b = {
@@ -2673,7 +2920,7 @@ var StyleBox = material.styled('div')(function (_a) {
2673
2920
  },
2674
2921
  _b);
2675
2922
  });
2676
- var CompassBox = material.styled('div')(function (_a) {
2923
+ var CompassBox = material.styled(material.Box)(function (_a) {
2677
2924
  var _b;
2678
2925
  var theme = _a.theme;
2679
2926
  return (_b = {
@@ -2693,7 +2940,7 @@ var CompassBox = material.styled('div')(function (_a) {
2693
2940
  },
2694
2941
  _b);
2695
2942
  });
2696
- var NeedleBox = material.styled('div')({
2943
+ var NeedleBox = material.styled(material.Box)({
2697
2944
  position: 'absolute',
2698
2945
  right: '21.4px',
2699
2946
  top: '6px',
@@ -2743,7 +2990,7 @@ var MlNavigationCompass = function (props) {
2743
2990
  }
2744
2991
  };
2745
2992
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
2746
- React__default["default"].createElement(StyleBox, { sx: __assign({}, props.style) },
2993
+ React__default["default"].createElement(BoxStyled$2, { sx: __assign({}, props.style) },
2747
2994
  React__default["default"].createElement(CompassBox, { onClick: rotate, sx: __assign({}, props.backgroundStyle) },
2748
2995
  React__default["default"].createElement(SvgCompassBackground, null),
2749
2996
  React__default["default"].createElement(NeedleBox, { onClick: rotate, sx: __assign({}, props.needleStyle) },
@@ -2768,36 +3015,34 @@ var MlNavigationTools = function (props) {
2768
3015
  mapHook.map.on('pitchend', function () {
2769
3016
  if (!mapHook.map)
2770
3017
  return;
2771
- setPitch(mapHook.map.map.getPitch());
3018
+ setPitch(mapHook.map.getPitch());
2772
3019
  }, mapHook.componentId);
2773
- setPitch(mapHook.map.map.getPitch());
3020
+ setPitch(mapHook.map.getPitch());
2774
3021
  }, [mapHook.map, props.mapId]);
2775
3022
  var zoomIn = React.useCallback(function () {
2776
3023
  if (!mapHook.map)
2777
3024
  return;
2778
- if (mapHook.map.map.transform._zoom + 0.5 <= mapHook.map.map.transform._maxZoom) {
2779
- mapHook.map.map.easeTo({ zoom: mapHook.map.map.transform._zoom + 0.5 });
3025
+ if (mapHook.map.transform._zoom + 0.5 <= mapHook.map.transform._maxZoom) {
3026
+ mapHook.map.easeTo({ zoom: mapHook.map.transform._zoom + 0.5 });
2780
3027
  }
2781
3028
  }, [mapHook.map]);
2782
3029
  var zoomOut = React.useCallback(function () {
2783
3030
  if (!mapHook.map)
2784
3031
  return;
2785
- if (mapHook.map.map.transform._zoom - 0.5 >= mapHook.map.map.transform._minZoom) {
2786
- mapHook.map.map.easeTo({ zoom: mapHook.map.map.transform._zoom - 0.5 });
3032
+ if (mapHook.map.transform._zoom - 0.5 >= mapHook.map.transform._minZoom) {
3033
+ mapHook.map.easeTo({ zoom: mapHook.map.transform._zoom - 0.5 });
2787
3034
  }
2788
3035
  }, [mapHook.map]);
2789
3036
  var adjustPitch = React.useCallback(function () {
2790
3037
  if (!mapHook.map)
2791
3038
  return;
2792
- var targetPitch = 60;
2793
- if (mapHook.map.map.getPitch() !== 0) {
2794
- targetPitch = 0;
2795
- }
2796
- 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 });
2797
3042
  }, [mapHook.map]);
2798
- 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 20px 10px' } : { marginTop: '50px' })), props.sx) },
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) },
2799
3044
  React__default["default"].createElement(MlNavigationCompass, null),
2800
- props.show3DButton && (React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: adjustPitch }, pitch ? '2D' : '3D')),
3045
+ props.show3DButton && (React__default["default"].createElement(Button__default["default"], { variant: "navtools", onClick: adjustPitch }, pitch < 59 ? '2D' : '3D')),
2801
3046
  props.showFollowGpsButton && React__default["default"].createElement(MlFollowGps, null),
2802
3047
  props.showCenterLocationButton && React__default["default"].createElement(MlCenterPosition, null),
2803
3048
  React__default["default"].createElement(ButtonGroup__default["default"], { orientation: "vertical", sx: {
@@ -3134,6 +3379,25 @@ var MlLayerSwipe = function (props) {
3134
3379
  document.removeEventListener('mousemove', onMove);
3135
3380
  document.removeEventListener('mouseup', onMouseUp);
3136
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]);
3137
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 }));
3138
3402
  };
3139
3403
  MlLayerSwipe.defaultProps = {
@@ -6216,8 +6480,79 @@ SimpleDataProvider.propTypes = {
6216
6480
  children: PropTypes__default["default"].node.isRequired
6217
6481
  };
6218
6482
 
6483
+ var ListStyled$1 = material.styled(material.List)({
6484
+ marginTop: '15px',
6485
+ });
6219
6486
  function LayerList(props) {
6220
- return (React__default["default"].createElement(material.List, { sx: { marginTop: '15px' } }, props === null || props === void 0 ? void 0 : props.children));
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))));
6221
6556
  }
6222
6557
 
6223
6558
  var converters = {
@@ -6279,6 +6614,15 @@ function PaintPropsColorPicker(_a) {
6279
6614
  } }));
6280
6615
  }
6281
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
+ });
6282
6626
  var mapPropKeyToFormInputType = {
6283
6627
  'circle-color': 'colorpicker',
6284
6628
  'circle-radius': 'slider',
@@ -6316,7 +6660,6 @@ var inputPropsByPropKey = {
6316
6660
  function LayerPropertyForm(_a) {
6317
6661
  var _b = _a.paintProps, paintProps = _b === void 0 ? {} : _b, setPaintProps = _a.setPaintProps;
6318
6662
  var key = React.useRef(Math.round(Math.random() * 10000000000));
6319
- //const onChange = (event) => {};
6320
6663
  var getFormInputByType = React.useCallback(function (key) {
6321
6664
  if (mapPropKeyToFormInputTypeKeys.indexOf(key) !== -1 &&
6322
6665
  (typeof paintProps[key] === 'number' || typeof paintProps[key] === 'string')) {
@@ -6355,68 +6698,27 @@ function LayerPropertyForm(_a) {
6355
6698
  return null;
6356
6699
  }, [paintProps]);
6357
6700
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
6358
- React__default["default"].createElement(material.Paper, { sx: {
6359
- marginLeft: '-100px',
6360
- marginRight: '-21px',
6361
- paddingLeft: '81px',
6362
- borderRadius: '0px',
6363
- } },
6701
+ React__default["default"].createElement(PaperStyled, null,
6364
6702
  React__default["default"].createElement(material.ListItem, { key: key + '_paintPropForm' },
6365
- React__default["default"].createElement(material.Box, { sx: {
6366
- marginLeft: '61px',
6367
- } }, Object.keys(paintProps).map(function (el) { return getFormInputByType(el); }))))));
6368
- }
6369
-
6370
- function LayerListFolder(_a) {
6371
- var _b = _a.visible, visible = _b === void 0 ? true : _b, name = _a.name, children = _a.children, setVisible = _a.setVisible;
6372
- var _c = React.useState(false), open = _c[0], setOpen = _c[1];
6373
- var _d = React.useState(true), localVisible = _d[0], setLocalVisible = _d[1];
6374
- var _visible = React.useMemo(function () {
6375
- if (!visible) {
6376
- return false;
6377
- }
6378
- return localVisible;
6379
- }, [visible, localVisible]);
6380
- var _children = React.useMemo(function () {
6381
- if (children) {
6382
- if (Array.isArray(children)) {
6383
- return children.map(function (element) {
6384
- return React__default["default"].cloneElement(element, {
6385
- visible: _visible,
6386
- });
6387
- });
6388
- }
6389
- return React__default["default"].cloneElement(children, {
6390
- visible: _visible,
6391
- });
6392
- }
6393
- return React__default["default"].createElement(React__default["default"].Fragment, null);
6394
- }, [_visible]);
6395
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
6396
- React__default["default"].createElement(material.ListItem, { className: 'listItemFolder', sx: {
6397
- paddingRight: 0,
6398
- paddingLeft: 0,
6399
- paddingTop: 0,
6400
- paddingBottom: '4px',
6401
- } },
6402
- React__default["default"].createElement(material.ListItemIcon, { sx: { minWidth: '30px' } },
6403
- React__default["default"].createElement(material.IconButton, { sx: {
6404
- marginRight: '0px',
6405
- padding: '0px',
6406
- }, 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)),
6407
- React__default["default"].createElement(material.Checkbox, { disabled: setVisible ? false : !visible, checked: setVisible ? visible : localVisible, sx: { padding: 0, marginRight: '5px' }, onClick: function () {
6408
- if (setVisible) {
6409
- setVisible(function (val) { return !val; });
6410
- }
6411
- else {
6412
- setLocalVisible(function (val) { return !val; });
6413
- }
6414
- } })),
6415
- React__default["default"].createElement(material.ListItemText, { primary: name, variant: "layerlist" })),
6416
- React__default["default"].createElement(system.Box, { sx: { display: open ? 'block' : 'none' } },
6417
- 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); }))))));
6418
6704
  }
6419
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
+ });
6420
6722
  function LayerListItemVectorLayer(_a) {
6421
6723
  var configurable = _a.configurable, vtProps = _a.vtProps, setVtProps = _a.setVtProps, id = _a.id, props = __rest(_a, ["configurable", "vtProps", "setVtProps", "id"]);
6422
6724
  var _b = React.useState(false), paintPropsFormVisible = _b[0], setPaintPropsFormVisible = _b[1];
@@ -6452,19 +6754,14 @@ function LayerListItemVectorLayer(_a) {
6452
6754
  }
6453
6755
  }, [paintProps, id, setVtProps, vtProps]);
6454
6756
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
6455
- React__default["default"].createElement(material.ListItem, { key: id, sx: {
6456
- paddingRight: configurable ? '56px' : 0,
6457
- paddingLeft: 0,
6458
- paddingTop: 0,
6459
- paddingBottom: '4px',
6460
- }, 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 () {
6461
6758
  setPaintPropsFormVisible(function (current) {
6462
6759
  return !current;
6463
6760
  });
6464
- }, sx: { padding: '4px', marginTop: '-3px' } },
6761
+ } },
6465
6762
  React__default["default"].createElement(TuneIcon__default["default"], null))) : undefined },
6466
- React__default["default"].createElement(material.ListItemIcon, { sx: { minWidth: '30px' } },
6467
- React__default["default"].createElement(material.Checkbox, { checked: visible, onClick: function () {
6763
+ React__default["default"].createElement(CheckboxListItemIcon, null,
6764
+ React__default["default"].createElement(CheckboxStyled, { checked: visible, onClick: function () {
6468
6765
  setVisible(function (val) { return !val; });
6469
6766
  } })),
6470
6767
  React__default["default"].createElement(material.ListItemText, { primary: vtProps.layers[id].id, variant: "layerlist" })),
@@ -6474,6 +6771,15 @@ LayerListItemVectorLayer.defaultProps = {
6474
6771
  configurable: true,
6475
6772
  };
6476
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
+ });
6477
6783
  function LayerListItem(_a) {
6478
6784
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
6479
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"]);
@@ -6553,24 +6859,21 @@ function LayerListItem(_a) {
6553
6859
  return undefined;
6554
6860
  }, [layerComponent]);
6555
6861
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
6556
- !((_f = layerComponent === null || layerComponent === void 0 ? void 0 : layerComponent.props) === null || _f === void 0 ? void 0 : _f.layers) && (React__default["default"].createElement(material.ListItem, { sx: __assign({ paddingRight: configurable ? '56px' : 0, paddingLeft: '25px', paddingTop: 0, paddingBottom: '4px' }, 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 :
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 :
6557
6863
  props.buttons,
6558
- React__default["default"].createElement(material.IconButton, { edge: props.showDeleteButton ? false : 'end', "aria-label": "settings", onClick: function () {
6864
+ React__default["default"].createElement(TuneIconButton, { edge: props.showDeleteButton ? false : 'end', "aria-label": "settings", onClick: function () {
6559
6865
  setPaintPropsFormVisible(function (current) {
6560
6866
  return !current;
6561
6867
  });
6562
- }, sx: __assign({ marginRight: '0px', padding: '4px', marginTop: '-3px' }, (props.showDeleteButton ? { marginRight: '4px' } : {})) },
6563
- React__default["default"].createElement(TuneIcon__default["default"], null)),
6868
+ } },
6869
+ React__default["default"].createElement(iconsMaterial.Tune, null)),
6564
6870
  props.showDeleteButton && (React__default["default"].createElement(React__default["default"].Fragment, null,
6565
- React__default["default"].createElement(material.IconButton, { edge: "end", "aria-label": "delete", onClick: function () {
6871
+ React__default["default"].createElement(DeleteIconButton, { edge: "end", "aria-label": "delete", onClick: function () {
6566
6872
  if (typeof setLayerState === 'function') {
6567
6873
  setShowDeletionConfirmationDialog(true);
6568
6874
  }
6569
- }, sx: {
6570
- padding: '4px',
6571
- marginTop: '-3px',
6572
6875
  } },
6573
- React__default["default"].createElement(DeleteIcon__default["default"], null)),
6876
+ React__default["default"].createElement(iconsMaterial.Delete, null)),
6574
6877
  showDeletionConfirmationDialog && (React__default["default"].createElement(ConfirmDialog, { open: showDeletionConfirmationDialog, onConfirm: function () {
6575
6878
  if (typeof setLayerState === 'function') {
6576
6879
  deletedRef.current = true;
@@ -6580,8 +6883,8 @@ function LayerListItem(_a) {
6580
6883
  }, onCancel: function () {
6581
6884
  setShowDeletionConfirmationDialog(false);
6582
6885
  }, title: "Delete layer", text: "Are you sure you want to delete this layer?" })))))) : undefined },
6583
- React__default["default"].createElement(material.ListItemIcon, { sx: { minWidth: '30px' } },
6584
- React__default["default"].createElement(material.Checkbox, { disabled: !visible, checked: localVisible, sx: { padding: 0 }, onClick: function () {
6886
+ React__default["default"].createElement(CheckboxListItemIcon, null,
6887
+ React__default["default"].createElement(CheckboxStyled, { disabled: !visible, checked: localVisible, onClick: function () {
6585
6888
  setLocalVisible(function (val) { return !val; });
6586
6889
  } })),
6587
6890
  React__default["default"].createElement(material.ListItemText, { variant: "layerlist", primary: name, secondary: description, primaryTypographyProps: { overflow: 'hidden' } }))),
@@ -6599,6 +6902,14 @@ LayerListItem.defaultProps = {
6599
6902
  buttons: React__default["default"].createElement(React__default["default"].Fragment, null),
6600
6903
  };
6601
6904
 
6905
+ var IconButtonStyled = material.styled(material.IconButton)({
6906
+ padding: '4px',
6907
+ marginTop: '-3px',
6908
+ background: 'none',
6909
+ '&:hover': {
6910
+ background: 'none',
6911
+ },
6912
+ });
6602
6913
  function LayerListItemFactory(props) {
6603
6914
  var _a, _b;
6604
6915
  var layerContext = useLayerContext();
@@ -6623,7 +6934,7 @@ function LayerListItemFactory(props) {
6623
6934
  return layerContext.setLayers;
6624
6935
  }, [props.setLayers, layerContext.setLayers]);
6625
6936
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
6626
- React__default["default"].createElement(MlOrderLayers, { layerIds: orderLayers, insertBeforeLayer: '_background' }),
6937
+ React__default["default"].createElement(MlOrderLayers, { layerIds: orderLayers, insertBeforeLayer: "_background" }),
6627
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) {
6628
6939
  return layerContext.setSymbolLayers(state === null || state === void 0 ? void 0 : state.layers);
6629
6940
  }, visible: true, configurable: true, type: "layer", name: "Labels" })),
@@ -6635,28 +6946,14 @@ function LayerListItemFactory(props) {
6635
6946
  case 'geojson':
6636
6947
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
6637
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,
6638
- React__default["default"].createElement(material.IconButton, { disabled: idx === layers.length - 1, onClick: function () {
6949
+ React__default["default"].createElement(IconButtonStyled, { disabled: idx === layers.length - 1, onClick: function () {
6639
6950
  layerContext.moveDown(layer.id || '');
6640
- }, sx: {
6641
- padding: '4px',
6642
- marginTop: '-3px',
6643
- background: 'none',
6644
- "&:hover": {
6645
- background: "none"
6646
- }
6647
6951
  } },
6648
- React__default["default"].createElement(ArrowCircleDownIcon__default["default"], null)),
6649
- React__default["default"].createElement(material.IconButton, { disabled: idx === 0, onClick: function () {
6952
+ React__default["default"].createElement(iconsMaterial.ArrowCircleDown, null)),
6953
+ React__default["default"].createElement(IconButtonStyled, { disabled: idx === 0, onClick: function () {
6650
6954
  layerContext.moveUp(layer.id || '');
6651
- }, sx: {
6652
- padding: '4px',
6653
- marginTop: '-3px',
6654
- background: 'none',
6655
- "&:hover": {
6656
- background: "none"
6657
- }
6658
6955
  } },
6659
- React__default["default"].createElement(ArrowCircleUpIcon__default["default"], null))), setLayerState: function (layerConfig) {
6956
+ React__default["default"].createElement(iconsMaterial.ArrowCircleUp, null))), setLayerState: function (layerConfig) {
6660
6957
  return setLayers === null || setLayers === void 0 ? void 0 : setLayers(function (current) {
6661
6958
  var _layers = __spreadArray([], current, true);
6662
6959
  if (layerConfig === false) {
@@ -6692,28 +6989,14 @@ function LayerListItemFactory(props) {
6692
6989
  return _layers;
6693
6990
  });
6694
6991
  }, showDeleteButton: true, buttons: React__default["default"].createElement(React__default["default"].Fragment, null,
6695
- React__default["default"].createElement(material.IconButton, { disabled: idx === layers.length - 1, onClick: function () {
6992
+ React__default["default"].createElement(IconButtonStyled, { disabled: idx === layers.length - 1, onClick: function () {
6696
6993
  layerContext.moveDown(layer.id || '');
6697
- }, sx: {
6698
- padding: '4px',
6699
- marginTop: '-3px',
6700
- background: 'none',
6701
- "&:hover": {
6702
- background: "none"
6703
- }
6704
6994
  } },
6705
- React__default["default"].createElement(ArrowCircleDownIcon__default["default"], null)),
6706
- React__default["default"].createElement(material.IconButton, { disabled: idx === 0, onClick: function () {
6995
+ React__default["default"].createElement(iconsMaterial.ArrowCircleDown, null)),
6996
+ React__default["default"].createElement(IconButtonStyled, { disabled: idx === 0, onClick: function () {
6707
6997
  layerContext.moveUp(layer.id || '');
6708
- }, sx: {
6709
- padding: '4px',
6710
- marginTop: '-3px',
6711
- background: 'none',
6712
- "&:hover": {
6713
- background: "none"
6714
- }
6715
6998
  } },
6716
- React__default["default"].createElement(ArrowCircleUpIcon__default["default"], null))) }))));
6999
+ React__default["default"].createElement(iconsMaterial.ArrowCircleUp, null))) }))));
6717
7000
  default:
6718
7001
  return null;
6719
7002
  }
@@ -6877,7 +7160,7 @@ function TopToolbar(props) {
6877
7160
  }, sx: {
6878
7161
  display: { xs: 'block', sm: 'none' },
6879
7162
  } },
6880
- 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)))) : (''),
6881
7164
  React__namespace.createElement(Box__default["default"], { sx: { marginRight: '25px', display: { xs: 'none', sm: 'flex' } } }, props.buttons))));
6882
7165
  }
6883
7166
 
@@ -6999,7 +7282,7 @@ function UploadButton(props) {
6999
7282
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
7000
7283
  props.buttonComponent ? (React__default["default"].cloneElement(props.buttonComponent, { onClick: upload })) : (React__default["default"].createElement(material.Button, { onClick: upload },
7001
7284
  React__default["default"].createElement(FileCopy__default["default"], null))),
7002
- 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' } })));
7003
7286
  }
7004
7287
 
7005
7288
  var SelectStylePopup = function (props) {