qwc2 2025.12.19 → 2025.12.25
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/actions/display.js +6 -6
- package/actions/theme.js +4 -19
- package/components/AppMenu.js +1 -1
- package/components/AttributeForm.js +7 -7
- package/components/AttributeTableWidget.js +2 -2
- package/components/AutoEditForm.js +6 -3
- package/components/EditComboField.js +1 -4
- package/components/IdentifyViewer.js +33 -34
- package/components/ImportLayer.js +78 -79
- package/components/PluginsContainer.js +2 -2
- package/components/ResizeableWindow.js +8 -1
- package/components/SearchBox.js +2 -2
- package/components/SideBar.js +1 -0
- package/components/StandardApp.js +1 -2
- package/components/ThemeLayersListWindow.js +10 -1
- package/components/{map3d/View3DSwitcher.js → ViewSwitcher.js} +74 -29
- package/components/map/OlMap.js +1 -1
- package/components/map3d/Map3D.js +50 -48
- package/components/map3d/MapControls3D.js +4 -1
- package/components/map3d/drawtool/EditTool3D.js +1 -1
- package/components/map3d/layers/WFSLayer3D.js +1 -1
- package/components/share/ShareQRCode.js +1 -1
- package/components/style/ViewSwitcher.css +36 -0
- package/components/widgets/ColorButton.js +2 -2
- package/components/widgets/CopyButton.js +1 -1
- package/components/widgets/LayerCatalogWidget.js +4 -4
- package/libs/openlayers.js +11 -11
- package/package.json +54 -55
- package/plugins/API.js +4 -4
- package/plugins/FeatureForm.js +2 -2
- package/plugins/FeatureSearch.js +12 -12
- package/plugins/GeometryDigitizer.js +2 -3
- package/plugins/Map.js +11 -4
- package/plugins/MapFilter.js +12 -12
- package/plugins/MapTip.js +1 -1
- package/plugins/ObliqueView.js +31 -12
- package/plugins/Print.js +79 -91
- package/plugins/Routing.js +1 -1
- package/plugins/Share.js +5 -5
- package/plugins/TimeManager.js +1 -2
- package/plugins/View3D.js +135 -123
- package/plugins/map/RedliningSupport.js +1 -1
- package/plugins/map3d/Draw3D.js +4 -4
- package/plugins/map3d/ExportObjects3D.js +1 -1
- package/plugins/map3d/HideObjects3D.js +7 -7
- package/plugins/map3d/Identify3D.js +1 -1
- package/plugins/map3d/LayerTree3D.js +1 -1
- package/plugins/map3d/MapExport3D.js +25 -25
- package/plugins/map3d/Measure3D.js +1 -1
- package/plugins/map3d/TopBar3D.js +7 -7
- package/plugins/style/ObliqueView.css +21 -9
- package/reducers/display.js +2 -2
- package/reducers/layers.js +11 -11
- package/scripts/gen-plugin-docs.js +11 -4
- package/scripts/makeIconkit.js +2 -2
- package/scripts/themesConfig.js +5 -5
- package/scripts/updateTranslations.js +2 -2
- package/utils/CoordinatesUtils.js +1 -1
- package/utils/EditingUtils.js +4 -4
- package/utils/FeatureStyles.js +1 -1
- package/utils/LayerUtils.js +73 -74
- package/utils/MiscUtils.js +10 -3
- package/utils/PermaLinkUtils.js +68 -71
- package/utils/SearchProviders.js +2 -2
- package/utils/ServiceLayerUtils.js +12 -12
- package/utils/ThemeUtils.js +2 -2
- package/utils/VectorLayerUtils.js +3 -3
- package/components/map3d/style/View3DSwitcher.css +0 -19
package/plugins/FeatureForm.js
CHANGED
|
@@ -259,7 +259,7 @@ var FeatureForm = /*#__PURE__*/function (_React$Component) {
|
|
|
259
259
|
},
|
|
260
260
|
value: this.state.selectedFeature
|
|
261
261
|
}, Object.entries(this.state.pickedFeatures).map(function (_ref7) {
|
|
262
|
-
var _ref9,
|
|
262
|
+
var _ref9, _ref0, _match$layer$translat, _match$layer$translat2, _match$sublayer;
|
|
263
263
|
var _ref8 = _slicedToArray(_ref7, 2),
|
|
264
264
|
id = _ref8[0],
|
|
265
265
|
feature = _ref8[1];
|
|
@@ -270,7 +270,7 @@ var FeatureForm = /*#__PURE__*/function (_React$Component) {
|
|
|
270
270
|
featureId = _id$split2[2];
|
|
271
271
|
var editConfig = _this2.props.editConfigs[mapName][layerName];
|
|
272
272
|
var match = LayerUtils.searchLayer(_this2.props.layers, 'wms_name', mapName, 'name', layerName);
|
|
273
|
-
var layerTitle = (_ref9 = (
|
|
273
|
+
var layerTitle = (_ref9 = (_ref0 = (_match$layer$translat = (_match$layer$translat2 = match.layer.translations) === null || _match$layer$translat2 === void 0 || (_match$layer$translat2 = _match$layer$translat2.layertree) === null || _match$layer$translat2 === void 0 ? void 0 : _match$layer$translat2[layerName]) !== null && _match$layer$translat !== void 0 ? _match$layer$translat : editConfig.layerTitle) !== null && _ref0 !== void 0 ? _ref0 : match === null || match === void 0 || (_match$sublayer = match.sublayer) === null || _match$sublayer === void 0 ? void 0 : _match$sublayer.title) !== null && _ref9 !== void 0 ? _ref9 : layerName;
|
|
274
274
|
var featureName = editConfig.displayField ? feature.properties[editConfig.displayField] : featureText + " " + featureId;
|
|
275
275
|
return /*#__PURE__*/React.createElement("option", {
|
|
276
276
|
key: id,
|
package/plugins/FeatureSearch.js
CHANGED
|
@@ -294,18 +294,18 @@ var FeatureSearch = /*#__PURE__*/function (_React$Component) {
|
|
|
294
294
|
});
|
|
295
295
|
_defineProperty(_this, "reloadSelectOptions", function () {
|
|
296
296
|
var _this$state$searchPro, _this$state$searchPro2;
|
|
297
|
-
Object.entries((_this$state$searchPro = (_this$state$searchPro2 = _this.state.searchProviders[_this.state.selectedProvider]) === null || _this$state$searchPro2 === void 0 || (_this$state$searchPro2 = _this$state$searchPro2.params) === null || _this$state$searchPro2 === void 0 ? void 0 : _this$state$searchPro2.fields) !== null && _this$state$searchPro !== void 0 ? _this$state$searchPro : {}).forEach(function (
|
|
298
|
-
var
|
|
299
|
-
name =
|
|
300
|
-
fieldcfg =
|
|
297
|
+
Object.entries((_this$state$searchPro = (_this$state$searchPro2 = _this.state.searchProviders[_this.state.selectedProvider]) === null || _this$state$searchPro2 === void 0 || (_this$state$searchPro2 = _this$state$searchPro2.params) === null || _this$state$searchPro2 === void 0 ? void 0 : _this$state$searchPro2.fields) !== null && _this$state$searchPro !== void 0 ? _this$state$searchPro : {}).forEach(function (_ref0) {
|
|
298
|
+
var _ref1 = _slicedToArray(_ref0, 2),
|
|
299
|
+
name = _ref1[0],
|
|
300
|
+
fieldcfg = _ref1[1];
|
|
301
301
|
if (fieldcfg.type === "select") {
|
|
302
302
|
if (fieldcfg.options_query) {
|
|
303
303
|
var _this$state$providerS3;
|
|
304
304
|
var url = fieldcfg.options_query;
|
|
305
|
-
Object.entries(_this.state.formValues).forEach(function (
|
|
306
|
-
var
|
|
307
|
-
key =
|
|
308
|
-
value =
|
|
305
|
+
Object.entries(_this.state.formValues).forEach(function (_ref10) {
|
|
306
|
+
var _ref11 = _slicedToArray(_ref10, 2),
|
|
307
|
+
key = _ref11[0],
|
|
308
|
+
value = _ref11[1];
|
|
309
309
|
url = url.replace("$".concat(key, "$"), value);
|
|
310
310
|
});
|
|
311
311
|
if (((_this$state$providerS3 = _this.state.providerSelectOptions[name]) === null || _this$state$providerS3 === void 0 ? void 0 : _this$state$providerS3.source) !== url) {
|
|
@@ -415,10 +415,10 @@ var FeatureSearch = /*#__PURE__*/function (_React$Component) {
|
|
|
415
415
|
this.setState(function (state) {
|
|
416
416
|
var _state$searchProvider;
|
|
417
417
|
return {
|
|
418
|
-
formValues: Object.entries(((_state$searchProvider = state.searchProviders[state.selectedProvider]) === null || _state$searchProvider === void 0 || (_state$searchProvider = _state$searchProvider.params) === null || _state$searchProvider === void 0 ? void 0 : _state$searchProvider.fields) || []).reduce(function (res,
|
|
419
|
-
var
|
|
420
|
-
field =
|
|
421
|
-
cfg =
|
|
418
|
+
formValues: Object.entries(((_state$searchProvider = state.searchProviders[state.selectedProvider]) === null || _state$searchProvider === void 0 || (_state$searchProvider = _state$searchProvider.params) === null || _state$searchProvider === void 0 ? void 0 : _state$searchProvider.fields) || []).reduce(function (res, _ref12) {
|
|
419
|
+
var _ref13 = _slicedToArray(_ref12, 2),
|
|
420
|
+
field = _ref13[0],
|
|
421
|
+
cfg = _ref13[1];
|
|
422
422
|
return _objectSpread(_objectSpread({}, res), {}, _defineProperty({}, field, ""));
|
|
423
423
|
}, {})
|
|
424
424
|
};
|
|
@@ -32,7 +32,6 @@ import React from 'react';
|
|
|
32
32
|
import { connect } from 'react-redux';
|
|
33
33
|
import polySelfIntersections from 'geojson-polygon-self-intersections';
|
|
34
34
|
import isEmpty from 'lodash.isempty';
|
|
35
|
-
import omit from 'lodash.omit';
|
|
36
35
|
import PropTypes from 'prop-types';
|
|
37
36
|
import { LayerRole, removeLayer, addLayerFeatures, removeLayerFeatures, clearLayer } from '../actions/layers';
|
|
38
37
|
import { changeRedliningState, resetRedliningState } from '../actions/redlining';
|
|
@@ -511,8 +510,8 @@ var GeometryDigitizer = /*#__PURE__*/function (_React$Component) {
|
|
|
511
510
|
}).join(";") : JSON.stringify({
|
|
512
511
|
type: "FeatureCollection",
|
|
513
512
|
features: supportedFeatures.map(function (feature) {
|
|
514
|
-
var newFeature =
|
|
515
|
-
newFeature.properties =
|
|
513
|
+
var newFeature = MiscUtils.objectOmit(feature, EXCLUDE_PROPS);
|
|
514
|
+
newFeature.properties = MiscUtils.objectOmit(newFeature.properties, EXCLUDE_ATTRS);
|
|
516
515
|
return newFeature;
|
|
517
516
|
})
|
|
518
517
|
});
|
package/plugins/Map.js
CHANGED
|
@@ -36,9 +36,10 @@ import { connect } from 'react-redux';
|
|
|
36
36
|
import isEmpty from 'lodash.isempty';
|
|
37
37
|
import PropTypes from 'prop-types';
|
|
38
38
|
import { LayerRole } from '../actions/layers';
|
|
39
|
-
import { MapContainerPortalContext } from '../components/PluginsContainer';
|
|
40
39
|
import OlLayer from '../components/map/OlLayer';
|
|
41
40
|
import OlMap from '../components/map/OlMap';
|
|
41
|
+
import { MapContainerPortalContext } from '../components/PluginsContainer';
|
|
42
|
+
import ViewSwitcher from '../components/ViewSwitcher';
|
|
42
43
|
import Spinner from '../components/widgets/Spinner';
|
|
43
44
|
import LayerUtils from '../utils/LayerUtils';
|
|
44
45
|
import LocaleUtils from '../utils/LocaleUtils';
|
|
@@ -273,7 +274,10 @@ var Map = /*#__PURE__*/function (_React$Component) {
|
|
|
273
274
|
mapOptions: this.props.mapOptions
|
|
274
275
|
}, this.props.map, {
|
|
275
276
|
fullExtent: (_this$props$theme = this.props.theme) === null || _this$props$theme === void 0 ? void 0 : _this$props$theme.bbox
|
|
276
|
-
}), this.renderLayers(), this.renderSupportTools())),
|
|
277
|
+
}), this.renderLayers(), this.renderSupportTools())), /*#__PURE__*/React.createElement(ViewSwitcher, {
|
|
278
|
+
key: "ViewSwitcher",
|
|
279
|
+
position: this.props.viewSwitcherPosition
|
|
280
|
+
}), loadingIndicator], this.context);
|
|
277
281
|
}
|
|
278
282
|
}]);
|
|
279
283
|
}(React.Component);
|
|
@@ -303,7 +307,9 @@ _defineProperty(Map, "propTypes", {
|
|
|
303
307
|
tools: PropTypes.object,
|
|
304
308
|
/** Options to pass to the map support plugins, in the form `{"<Name>": {<options>}}`.
|
|
305
309
|
* Refer to the documentation of the <a href="#mapSupportPlugins">Map support plugins</a> for settable options. */
|
|
306
|
-
toolsOptions: PropTypes.object
|
|
310
|
+
toolsOptions: PropTypes.object,
|
|
311
|
+
/** Position of the view switcher button. */
|
|
312
|
+
viewSwitcherPosition: PropTypes.number
|
|
307
313
|
});
|
|
308
314
|
_defineProperty(Map, "defaultProps", {
|
|
309
315
|
mapOptions: {},
|
|
@@ -311,7 +317,8 @@ _defineProperty(Map, "defaultProps", {
|
|
|
311
317
|
swipeGeometryTypeBlacklist: [],
|
|
312
318
|
swipeLayerNameBlacklist: [],
|
|
313
319
|
tools: {},
|
|
314
|
-
toolsOptions: {}
|
|
320
|
+
toolsOptions: {},
|
|
321
|
+
viewSwitcherPosition: 6
|
|
315
322
|
});
|
|
316
323
|
export default (function (tools) {
|
|
317
324
|
return connect(function (state) {
|
package/plugins/MapFilter.js
CHANGED
|
@@ -145,7 +145,7 @@ var MapFilter = /*#__PURE__*/function (_React$Component) {
|
|
|
145
145
|
var expr = '';
|
|
146
146
|
try {
|
|
147
147
|
expr = JSON.parse(entry.expr);
|
|
148
|
-
} catch (
|
|
148
|
+
} catch (_unused) {
|
|
149
149
|
return;
|
|
150
150
|
}
|
|
151
151
|
if (layerExpressions[entry.layer]) {
|
|
@@ -225,7 +225,7 @@ var MapFilter = /*#__PURE__*/function (_React$Component) {
|
|
|
225
225
|
var expr = null;
|
|
226
226
|
try {
|
|
227
227
|
expr = JSON.parse(entry.expr);
|
|
228
|
-
} catch (
|
|
228
|
+
} catch (_unused2) {
|
|
229
229
|
return null;
|
|
230
230
|
}
|
|
231
231
|
return {
|
|
@@ -339,7 +339,7 @@ var MapFilter = /*#__PURE__*/function (_React$Component) {
|
|
|
339
339
|
var filterexpr = null;
|
|
340
340
|
try {
|
|
341
341
|
filterexpr = JSON.parse(_this.state.filterEditor.value);
|
|
342
|
-
} catch (
|
|
342
|
+
} catch (_unused3) {
|
|
343
343
|
// Pass
|
|
344
344
|
}
|
|
345
345
|
if (!Array.isArray(filterexpr) || !_validateExpression(filterexpr)) {
|
|
@@ -704,16 +704,16 @@ var MapFilter = /*#__PURE__*/function (_React$Component) {
|
|
|
704
704
|
if (!prevProps.theme && (_this$props$startupPa = this.props.startupParams) !== null && _this$props$startupPa !== void 0 && _this$props$startupPa.f) {
|
|
705
705
|
try {
|
|
706
706
|
var startupConfig = JSON.parse(this.props.startupParams.f);
|
|
707
|
-
Object.entries(startupConfig).forEach(function (
|
|
708
|
-
var
|
|
709
|
-
filterId =
|
|
710
|
-
values =
|
|
707
|
+
Object.entries(startupConfig).forEach(function (_ref0) {
|
|
708
|
+
var _ref1 = _slicedToArray(_ref0, 2),
|
|
709
|
+
filterId = _ref1[0],
|
|
710
|
+
values = _ref1[1];
|
|
711
711
|
if (filterId in filters) {
|
|
712
712
|
filters[filterId].active = true;
|
|
713
|
-
Object.entries(values).forEach(function (
|
|
714
|
-
var
|
|
715
|
-
fieldId =
|
|
716
|
-
value =
|
|
713
|
+
Object.entries(values).forEach(function (_ref10) {
|
|
714
|
+
var _ref11 = _slicedToArray(_ref10, 2),
|
|
715
|
+
fieldId = _ref11[0],
|
|
716
|
+
value = _ref11[1];
|
|
717
717
|
filters[filterId].values[fieldId] = value;
|
|
718
718
|
});
|
|
719
719
|
}
|
|
@@ -737,7 +737,7 @@ var MapFilter = /*#__PURE__*/function (_React$Component) {
|
|
|
737
737
|
}));
|
|
738
738
|
}, {});
|
|
739
739
|
}
|
|
740
|
-
} catch (
|
|
740
|
+
} catch (_unused4) {
|
|
741
741
|
/* eslint-disable-next-line */
|
|
742
742
|
console.log("Error while parsing startup filter");
|
|
743
743
|
}
|
package/plugins/MapTip.js
CHANGED
|
@@ -29,11 +29,11 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
29
29
|
* LICENSE file in the root directory of this source tree.
|
|
30
30
|
*/
|
|
31
31
|
|
|
32
|
+
import htmlReactParser, { domToReact } from 'html-react-parser';
|
|
32
33
|
import React from 'react';
|
|
33
34
|
import ReactDOM from 'react-dom';
|
|
34
35
|
import { connect } from 'react-redux';
|
|
35
36
|
import DOMPurify from 'dompurify';
|
|
36
|
-
import htmlReactParser, { domToReact } from 'html-react-parser';
|
|
37
37
|
import isEmpty from 'lodash.isempty';
|
|
38
38
|
import PropTypes from 'prop-types';
|
|
39
39
|
import { v4 as uuidv4 } from 'uuid';
|
package/plugins/ObliqueView.js
CHANGED
|
@@ -28,12 +28,13 @@ import axios from 'axios';
|
|
|
28
28
|
import isEqual from 'lodash.isequal';
|
|
29
29
|
import ol from 'openlayers';
|
|
30
30
|
import PropTypes from 'prop-types';
|
|
31
|
+
import { setViewMode, ViewMode } from '../actions/display';
|
|
31
32
|
import { zoomToExtent } from '../actions/map';
|
|
32
33
|
import { setCurrentTask } from '../actions/task';
|
|
33
34
|
import Icon from '../components/Icon';
|
|
35
|
+
import OlLayer from '../components/map/OlLayer';
|
|
34
36
|
import OverviewMapButton from '../components/OverviewMapButton';
|
|
35
37
|
import ResizeableWindow from '../components/ResizeableWindow';
|
|
36
|
-
import OlLayer from '../components/map/OlLayer';
|
|
37
38
|
import InputContainer from '../components/widgets/InputContainer';
|
|
38
39
|
import ConfigUtils from '../utils/ConfigUtils';
|
|
39
40
|
import CoordinatesUtils from '../utils/CoordinatesUtils';
|
|
@@ -72,6 +73,7 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
72
73
|
_classCallCheck(this, ObliqueView);
|
|
73
74
|
_this = _callSuper(this, ObliqueView, [props]);
|
|
74
75
|
_defineProperty(_this, "onClose", function () {
|
|
76
|
+
_this.props.setViewMode(ViewMode._2D);
|
|
75
77
|
_this.setState(ObliqueView.defaultState);
|
|
76
78
|
});
|
|
77
79
|
_defineProperty(_this, "renderScaleChooser", function () {
|
|
@@ -264,6 +266,9 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
264
266
|
key: "componentDidMount",
|
|
265
267
|
value: function componentDidMount() {
|
|
266
268
|
window.addEventListener('focus', this.trackFocus, true);
|
|
269
|
+
if (this.props.startupParams.v === "oblique") {
|
|
270
|
+
this.props.setViewMode(ViewMode._Oblique);
|
|
271
|
+
}
|
|
267
272
|
}
|
|
268
273
|
}, {
|
|
269
274
|
key: "componentWillUnmount",
|
|
@@ -274,12 +279,14 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
274
279
|
key: "componentDidUpdate",
|
|
275
280
|
value: function componentDidUpdate(prevProps, prevState) {
|
|
276
281
|
if (this.props.active && !prevProps.active) {
|
|
277
|
-
this.
|
|
278
|
-
active: true
|
|
279
|
-
});
|
|
282
|
+
this.props.setViewMode(ViewMode._Oblique);
|
|
280
283
|
this.props.setCurrentTask(null);
|
|
281
284
|
}
|
|
282
|
-
|
|
285
|
+
// Honour theme startupView on theme change unless first loaded theme and startupParams.v is set
|
|
286
|
+
if (this.props.theme !== prevProps.theme && this.props.theme.startupView === "oblique" && (prevProps.theme !== null || !this.props.startupParams.v)) {
|
|
287
|
+
this.props.setViewMode(ViewMode._Oblique);
|
|
288
|
+
}
|
|
289
|
+
if (this.props.viewMode === ViewMode._Oblique && this.props.theme && (this.props.theme !== prevProps.theme || prevProps.viewMode !== ViewMode._Oblique)) {
|
|
283
290
|
var _datasets$find$name, _datasets$find, _datasets$;
|
|
284
291
|
var datasets = this.props.theme.obliqueDatasets || [];
|
|
285
292
|
var defaultDataset = (_datasets$find$name = (_datasets$find = datasets.find(function (entry) {
|
|
@@ -318,9 +325,14 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
318
325
|
key: "render",
|
|
319
326
|
value: function render() {
|
|
320
327
|
var _this2 = this,
|
|
328
|
+
_this$props$theme,
|
|
329
|
+
_this$props$theme$fin,
|
|
330
|
+
_this$props$themes,
|
|
331
|
+
_this$props$themes$fi,
|
|
321
332
|
_obliqueConfig$backgr,
|
|
322
|
-
_this$state$selectedD
|
|
323
|
-
|
|
333
|
+
_this$state$selectedD,
|
|
334
|
+
_this$props$theme2;
|
|
335
|
+
if (this.props.viewMode !== ViewMode._Oblique || !this.props.themes) {
|
|
324
336
|
return null;
|
|
325
337
|
}
|
|
326
338
|
var rot = this.getRotation();
|
|
@@ -340,10 +352,10 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
340
352
|
title: LocaleUtils.tr("common.lock2dview"),
|
|
341
353
|
active: this.state.viewsLocked
|
|
342
354
|
}];
|
|
343
|
-
var obliqueConfig = this.props.theme.obliqueDatasets.find(function (entry) {
|
|
355
|
+
var obliqueConfig = (_this$props$theme = this.props.theme) === null || _this$props$theme === void 0 || (_this$props$theme = _this$props$theme.obliqueDatasets) === null || _this$props$theme === void 0 || (_this$props$theme$fin = _this$props$theme.find) === null || _this$props$theme$fin === void 0 ? void 0 : _this$props$theme$fin.call(_this$props$theme, function (entry) {
|
|
344
356
|
return entry.name === _this2.state.selectedDataset;
|
|
345
357
|
});
|
|
346
|
-
var basemap = this.props.themes.backgroundLayers.find(function (entry) {
|
|
358
|
+
var basemap = (_this$props$themes = this.props.themes) === null || _this$props$themes === void 0 || (_this$props$themes = _this$props$themes.backgroundLayers) === null || _this$props$themes === void 0 || (_this$props$themes$fi = _this$props$themes.find) === null || _this$props$themes$fi === void 0 ? void 0 : _this$props$themes$fi.call(_this$props$themes, function (entry) {
|
|
347
359
|
return entry.name === (obliqueConfig === null || obliqueConfig === void 0 ? void 0 : obliqueConfig.backgroundLayer);
|
|
348
360
|
});
|
|
349
361
|
return /*#__PURE__*/React.createElement(ResizeableWindow, {
|
|
@@ -422,7 +434,9 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
422
434
|
transform: "rotate(".concat(-rot, "deg)")
|
|
423
435
|
},
|
|
424
436
|
tabIndex: 0
|
|
425
|
-
}, "S"), /*#__PURE__*/React.createElement("span", null)
|
|
437
|
+
}, "S"), /*#__PURE__*/React.createElement("span", null), /*#__PURE__*/React.createElement("div", {
|
|
438
|
+
className: "obliqueview-nav-circle"
|
|
439
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
426
440
|
className: "obliqueview-nav-zoom"
|
|
427
441
|
}, /*#__PURE__*/React.createElement(Icon, {
|
|
428
442
|
icon: "plus",
|
|
@@ -450,7 +464,7 @@ var ObliqueView = /*#__PURE__*/function (_React$Component) {
|
|
|
450
464
|
});
|
|
451
465
|
},
|
|
452
466
|
value: (_this$state$selectedD = this.state.selectedDataset) !== null && _this$state$selectedD !== void 0 ? _this$state$selectedD : ""
|
|
453
|
-
}, (this.props.theme.obliqueDatasets || []).map(function (entry) {
|
|
467
|
+
}, (((_this$props$theme2 = this.props.theme) === null || _this$props$theme2 === void 0 ? void 0 : _this$props$theme2.obliqueDatasets) || []).map(function (entry) {
|
|
454
468
|
var _entry$title;
|
|
455
469
|
return /*#__PURE__*/React.createElement("option", {
|
|
456
470
|
key: entry.name,
|
|
@@ -488,8 +502,11 @@ _defineProperty(ObliqueView, "propTypes", {
|
|
|
488
502
|
/** A list of allowed map scales, in decreasing order. */
|
|
489
503
|
scales: PropTypes.arrayOf(PropTypes.number),
|
|
490
504
|
setCurrentTask: PropTypes.func,
|
|
505
|
+
setViewMode: PropTypes.func,
|
|
506
|
+
startupParams: PropTypes.object,
|
|
491
507
|
theme: PropTypes.object,
|
|
492
508
|
themes: PropTypes.object,
|
|
509
|
+
viewMode: PropTypes.number,
|
|
493
510
|
zoomToExtent: PropTypes.func
|
|
494
511
|
});
|
|
495
512
|
_defineProperty(ObliqueView, "defaultProps", {
|
|
@@ -505,7 +522,6 @@ _defineProperty(ObliqueView, "defaultProps", {
|
|
|
505
522
|
scales: [20000, 10000, 5000, 2500, 1000, 500, 250]
|
|
506
523
|
});
|
|
507
524
|
_defineProperty(ObliqueView, "defaultState", {
|
|
508
|
-
active: false,
|
|
509
525
|
selectedDataset: null,
|
|
510
526
|
datasetConfig: null,
|
|
511
527
|
currentDirection: null,
|
|
@@ -517,10 +533,13 @@ export default connect(function (state) {
|
|
|
517
533
|
return {
|
|
518
534
|
active: state.task.id === "ObliqueView",
|
|
519
535
|
map: state.map,
|
|
536
|
+
startupParams: state.localConfig.startupParams,
|
|
537
|
+
viewMode: state.display.viewMode,
|
|
520
538
|
theme: state.theme.current,
|
|
521
539
|
themes: state.theme.themes
|
|
522
540
|
};
|
|
523
541
|
}, {
|
|
524
542
|
setCurrentTask: setCurrentTask,
|
|
543
|
+
setViewMode: setViewMode,
|
|
525
544
|
zoomToExtent: zoomToExtent
|
|
526
545
|
})(ObliqueView);
|