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/actions/display.js
CHANGED
|
@@ -11,11 +11,11 @@ import ReducerIndex from '../reducers/index';
|
|
|
11
11
|
ReducerIndex.register("display", displayReducer);
|
|
12
12
|
export var TOGGLE_FULLSCREEN = 'TOGGLE_FULLSCREEN';
|
|
13
13
|
export var SET_VIEW_3D_MODE = 'SET_VIEW_3D_MODE';
|
|
14
|
-
export var
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
export var ViewMode = {
|
|
15
|
+
_2D: 0,
|
|
16
|
+
_3DFullscreen: 1,
|
|
17
|
+
_3DSplitscreen: 2,
|
|
18
|
+
_Oblique: 3
|
|
19
19
|
};
|
|
20
20
|
export function toggleFullscreen(fullscreen) {
|
|
21
21
|
if (fullscreen) {
|
|
@@ -28,7 +28,7 @@ export function toggleFullscreen(fullscreen) {
|
|
|
28
28
|
fullscreen: fullscreen
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
-
export function
|
|
31
|
+
export function setViewMode(mode) {
|
|
32
32
|
return {
|
|
33
33
|
type: SET_VIEW_3D_MODE,
|
|
34
34
|
mode: mode
|
package/actions/theme.js
CHANGED
|
@@ -23,7 +23,7 @@ import ReducerIndex from '../reducers/index';
|
|
|
23
23
|
import themeReducer from '../reducers/theme';
|
|
24
24
|
ReducerIndex.register("theme", themeReducer);
|
|
25
25
|
import isEmpty from 'lodash.isempty';
|
|
26
|
-
import {
|
|
26
|
+
import { ViewMode } from '../actions/display';
|
|
27
27
|
import { setCurrentTask } from '../actions/task';
|
|
28
28
|
import ConfigUtils from '../utils/ConfigUtils';
|
|
29
29
|
import CoordinatesUtils from '../utils/CoordinatesUtils';
|
|
@@ -54,7 +54,6 @@ export function setThemeLayersList(theme) {
|
|
|
54
54
|
}
|
|
55
55
|
export function finishThemeSetup(dispatch, theme, themes, layerConfigs, insertPos, permalinkLayers, externalLayerRestorer, visibleBgLayer, initialTheme) {
|
|
56
56
|
var _theme$config;
|
|
57
|
-
var initialView = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;
|
|
58
57
|
// Create layer
|
|
59
58
|
var themeLayer = ThemeUtils.createThemeLayer(theme, themes);
|
|
60
59
|
var layers = [themeLayer];
|
|
@@ -145,19 +144,6 @@ export function finishThemeSetup(dispatch, theme, themes, layerConfigs, insertPo
|
|
|
145
144
|
type: SET_CURRENT_THEME,
|
|
146
145
|
theme: theme
|
|
147
146
|
});
|
|
148
|
-
if (initialView === null) {
|
|
149
|
-
if (theme.startupView === "2d") {
|
|
150
|
-
dispatch(setView3dMode(View3DMode.DISABLED));
|
|
151
|
-
} else if (theme.startupView === "3d2d") {
|
|
152
|
-
dispatch(setView3dMode(View3DMode.SPLITSCREEN));
|
|
153
|
-
} else if (theme.startupView === "3d") {
|
|
154
|
-
dispatch(setView3dMode(View3DMode.FULLSCREEN));
|
|
155
|
-
}
|
|
156
|
-
} else {
|
|
157
|
-
UrlParams.updateParams({
|
|
158
|
-
v: initialView
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
147
|
dispatch({
|
|
162
148
|
type: SWITCHING_THEME,
|
|
163
149
|
switching: false
|
|
@@ -176,7 +162,6 @@ export function setCurrentTheme(theme, themes) {
|
|
|
176
162
|
var permalinkLayers = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
177
163
|
var themeLayerRestorer = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;
|
|
178
164
|
var externalLayerRestorer = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : null;
|
|
179
|
-
var initialView = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;
|
|
180
165
|
return function (dispatch, getState) {
|
|
181
166
|
var _getState$layers;
|
|
182
167
|
var curLayers = ((_getState$layers = getState().layers) === null || _getState$layers === void 0 ? void 0 : _getState$layers.flat) || [];
|
|
@@ -249,7 +234,7 @@ export function setCurrentTheme(theme, themes) {
|
|
|
249
234
|
});
|
|
250
235
|
|
|
251
236
|
// Preserve extent if desired and possible
|
|
252
|
-
if (getState().display.
|
|
237
|
+
if (getState().display.viewMode !== ViewMode._3DFullscreen) {
|
|
253
238
|
var curCrs = getState().map.projection;
|
|
254
239
|
if (preserve && !initialExtent && curCrs === theme.mapCrs) {
|
|
255
240
|
var curBounds = getState().map.bbox.bounds;
|
|
@@ -332,13 +317,13 @@ export function setCurrentTheme(theme, themes) {
|
|
|
332
317
|
dispatch(showNotification("missinglayers", LocaleUtils.tr("app.missinglayers", diff.join(", ")), NotificationType.WARN, true));
|
|
333
318
|
}
|
|
334
319
|
}
|
|
335
|
-
finishThemeSetup(dispatch, newTheme, themes, layerConfigs, insertPos, permalinkLayers, externalLayerRestorer, visibleBgLayer, initialTheme
|
|
320
|
+
finishThemeSetup(dispatch, newTheme, themes, layerConfigs, insertPos, permalinkLayers, externalLayerRestorer, visibleBgLayer, initialTheme);
|
|
336
321
|
});
|
|
337
322
|
} else {
|
|
338
323
|
if (!isEmpty(missingThemeLayers)) {
|
|
339
324
|
dispatch(showNotification("missinglayers", LocaleUtils.tr("app.missinglayers", Object.keys(missingThemeLayers).join(", ")), NotificationType.WARN, true));
|
|
340
325
|
}
|
|
341
|
-
finishThemeSetup(dispatch, theme, themes, layerConfigs, insertPos, permalinkLayers, externalLayerRestorer, visibleBgLayer, initialTheme
|
|
326
|
+
finishThemeSetup(dispatch, theme, themes, layerConfigs, insertPos, permalinkLayers, externalLayerRestorer, visibleBgLayer, initialTheme);
|
|
342
327
|
}
|
|
343
328
|
};
|
|
344
329
|
}
|
package/components/AppMenu.js
CHANGED
|
@@ -308,7 +308,7 @@ var AppMenu = /*#__PURE__*/function (_React$Component) {
|
|
|
308
308
|
tabIndex: -1
|
|
309
309
|
}, /*#__PURE__*/React.createElement("div", {
|
|
310
310
|
className: "appmenu-menu",
|
|
311
|
-
inert: visible
|
|
311
|
+
inert: !visible,
|
|
312
312
|
onMouseLeave: this.clearFocus,
|
|
313
313
|
ref: function ref(el) {
|
|
314
314
|
_this3.menuEl = el;
|
|
@@ -711,15 +711,15 @@ var AttributeForm = /*#__PURE__*/function (_React$Component) {
|
|
|
711
711
|
var featureData = new FormData();
|
|
712
712
|
featureData.set('feature', JSON.stringify(feature));
|
|
713
713
|
Object.entries(featureUploads).forEach(function (_ref9) {
|
|
714
|
-
var
|
|
715
|
-
key =
|
|
716
|
-
value =
|
|
714
|
+
var _ref0 = _slicedToArray(_ref9, 2),
|
|
715
|
+
key = _ref0[0],
|
|
716
|
+
value = _ref0[1];
|
|
717
717
|
return featureData.set('file:' + key, value);
|
|
718
718
|
});
|
|
719
|
-
Object.entries(relationUploads).forEach(function (
|
|
720
|
-
var
|
|
721
|
-
key =
|
|
722
|
-
value =
|
|
719
|
+
Object.entries(relationUploads).forEach(function (_ref1) {
|
|
720
|
+
var _ref10 = _slicedToArray(_ref1, 2),
|
|
721
|
+
key = _ref10[0],
|
|
722
|
+
value = _ref10[1];
|
|
723
723
|
return featureData.set('relfile:' + _this.props.editContext.mapPrefix + "." + key, value);
|
|
724
724
|
});
|
|
725
725
|
if (_this.state.captchaResponse) {
|
|
@@ -956,12 +956,12 @@ var AttributeTableWidget = /*#__PURE__*/function (_React$Component) {
|
|
|
956
956
|
var _ref8, _ref9, _match$layer$translat, _match$layer$translat2, _match$sublayer;
|
|
957
957
|
layerTitle = (_ref8 = (_ref9 = (_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 && _ref9 !== void 0 ? _ref9 : match === null || match === void 0 || (_match$sublayer = match.sublayer) === null || _match$sublayer === void 0 ? void 0 : _match$sublayer.title) !== null && _ref8 !== void 0 ? _ref8 : layerName;
|
|
958
958
|
} else {
|
|
959
|
-
var _this2$props$layers$f,
|
|
959
|
+
var _this2$props$layers$f, _ref0, _translations$layertr, _translations$layertr2;
|
|
960
960
|
// Note: geometry-less tables are filtered from the theme sublayers
|
|
961
961
|
var translations = (_this2$props$layers$f = _this2.props.layers.find(function (layer) {
|
|
962
962
|
return layer.wms_name === wmsName;
|
|
963
963
|
})) === null || _this2$props$layers$f === void 0 ? void 0 : _this2$props$layers$f.translations;
|
|
964
|
-
layerTitle = (
|
|
964
|
+
layerTitle = (_ref0 = (_translations$layertr = translations === null || translations === void 0 || (_translations$layertr2 = translations.layertree) === null || _translations$layertr2 === void 0 ? void 0 : _translations$layertr2[layerName]) !== null && _translations$layertr !== void 0 ? _translations$layertr : editConfig.layerTitle) !== null && _ref0 !== void 0 ? _ref0 : layerName;
|
|
965
965
|
}
|
|
966
966
|
var value = wmsName + "#" + layerName;
|
|
967
967
|
return /*#__PURE__*/React.createElement("option", {
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
var _excluded = ["multiline"];
|
|
1
2
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
3
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
4
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
5
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
3
6
|
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
4
7
|
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
5
8
|
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
@@ -22,7 +25,6 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
22
25
|
*/
|
|
23
26
|
|
|
24
27
|
import React from 'react';
|
|
25
|
-
import omit from 'lodash.omit';
|
|
26
28
|
import PropTypes from 'prop-types';
|
|
27
29
|
import EditComboField from './EditComboField';
|
|
28
30
|
import EditUploadField from './EditUploadField';
|
|
@@ -38,8 +40,9 @@ var AutoEditForm = /*#__PURE__*/function (_React$Component) {
|
|
|
38
40
|
}
|
|
39
41
|
_this = _callSuper(this, AutoEditForm, [].concat(args));
|
|
40
42
|
_defineProperty(_this, "renderField", function (field) {
|
|
41
|
-
var
|
|
42
|
-
|
|
43
|
+
var _ref = field.constraints || {},
|
|
44
|
+
multiline = _ref.multiline,
|
|
45
|
+
constraints = _objectWithoutProperties(_ref, _excluded);
|
|
43
46
|
var readOnly = _this.props.readOnly || constraints.readOnly;
|
|
44
47
|
var value = (_this.props.values || {})[field.id];
|
|
45
48
|
if (value === undefined || value === null) {
|
|
@@ -59,7 +59,7 @@ var EditComboField = /*#__PURE__*/function (_React$Component) {
|
|
|
59
59
|
var items = new Set();
|
|
60
60
|
try {
|
|
61
61
|
items = new Set(JSON.parse('[' + _this.props.value.slice(1, -1) + ']'));
|
|
62
|
-
} catch (
|
|
62
|
+
} catch (_unused) {
|
|
63
63
|
// pass
|
|
64
64
|
}
|
|
65
65
|
var serializeValue = function serializeValue(value, enabled) {
|
|
@@ -135,7 +135,6 @@ var EditComboField = /*#__PURE__*/function (_React$Component) {
|
|
|
135
135
|
value: function componentDidMount() {
|
|
136
136
|
var _this2 = this;
|
|
137
137
|
if (this.props.values) {
|
|
138
|
-
// eslint-disable-next-line
|
|
139
138
|
this.setState({
|
|
140
139
|
values: this.props.values,
|
|
141
140
|
showPlaceholder: !this.hasEmptyValue(this.props.values)
|
|
@@ -143,7 +142,6 @@ var EditComboField = /*#__PURE__*/function (_React$Component) {
|
|
|
143
142
|
} else if (this.props.keyvalrel) {
|
|
144
143
|
var _this$props$filterExp;
|
|
145
144
|
KeyValCache.get(this.props.editIface, this.props.keyvalrel, (_this$props$filterExp = this.props.filterExpr) !== null && _this$props$filterExp !== void 0 ? _this$props$filterExp : null).then(function (values) {
|
|
146
|
-
// eslint-disable-next-line
|
|
147
145
|
_this2.setState({
|
|
148
146
|
values: values,
|
|
149
147
|
showPlaceholder: !_this2.hasEmptyValue(values)
|
|
@@ -158,7 +156,6 @@ var EditComboField = /*#__PURE__*/function (_React$Component) {
|
|
|
158
156
|
if (this.props.keyvalrel && this.props.filterExpr !== prevProps.filterExpr) {
|
|
159
157
|
var _this$props$filterExp2;
|
|
160
158
|
KeyValCache.get(this.props.editIface, this.props.keyvalrel, (_this$props$filterExp2 = this.props.filterExpr) !== null && _this$props$filterExp2 !== void 0 ? _this$props$filterExp2 : null).then(function (values) {
|
|
161
|
-
// eslint-disable-next-line
|
|
162
159
|
_this3.setState({
|
|
163
160
|
values: values,
|
|
164
161
|
showPlaceholder: !_this3.hasEmptyValue(values)
|
|
@@ -25,6 +25,7 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
|
|
|
25
25
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
26
26
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
27
27
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
28
|
+
import htmlReactParser, { domToReact } from 'html-react-parser';
|
|
28
29
|
/**
|
|
29
30
|
* Copyright 2016-2024 Sourcepole AG
|
|
30
31
|
* All rights reserved.
|
|
@@ -38,10 +39,8 @@ import axios from 'axios';
|
|
|
38
39
|
import clone from 'clone';
|
|
39
40
|
import DOMPurify from 'dompurify';
|
|
40
41
|
import FileSaver from 'file-saver';
|
|
41
|
-
import htmlReactParser, { domToReact } from 'html-react-parser';
|
|
42
42
|
import JSZip from 'jszip';
|
|
43
43
|
import isEmpty from 'lodash.isempty';
|
|
44
|
-
import omit from 'lodash.omit';
|
|
45
44
|
import PropTypes from 'prop-types';
|
|
46
45
|
import { setActiveLayerInfo } from '../actions/layerinfo';
|
|
47
46
|
import { LayerRole, addLayerFeatures, removeLayer, changeLayerProperty } from '../actions/layers';
|
|
@@ -80,8 +79,8 @@ var BuiltinExporters = [{
|
|
|
80
79
|
var featureCollection = {
|
|
81
80
|
type: "FeatureCollection",
|
|
82
81
|
features: Object.values(json).flat().map(function (entry) {
|
|
83
|
-
var feature =
|
|
84
|
-
feature.properties =
|
|
82
|
+
var feature = MiscUtils.objectOmit(entry, EXCLUDE_PROPS);
|
|
83
|
+
feature.properties = MiscUtils.objectOmit(feature.properties, EXCLUDE_ATTRS);
|
|
85
84
|
if (feature.geometry) {
|
|
86
85
|
feature.crs = {
|
|
87
86
|
type: "name",
|
|
@@ -221,7 +220,7 @@ var BuiltinExporters = [{
|
|
|
221
220
|
var geojson = {
|
|
222
221
|
type: "FeatureCollection",
|
|
223
222
|
features: features.map(function (entry) {
|
|
224
|
-
return
|
|
223
|
+
return MiscUtils.objectOmit(entry, EXCLUDE_PROPS);
|
|
225
224
|
})
|
|
226
225
|
};
|
|
227
226
|
var layerOptions = _objectSpread(_objectSpread({}, options), {}, {
|
|
@@ -275,11 +274,11 @@ var BuiltinExporters = [{
|
|
|
275
274
|
"export": function _export(json, callback) {
|
|
276
275
|
import('xlsx').then(function (xlsx) {
|
|
277
276
|
var document = xlsx.utils.book_new();
|
|
278
|
-
Object.entries(json).forEach(function (
|
|
277
|
+
Object.entries(json).forEach(function (_ref0) {
|
|
279
278
|
var _features$0$propertie2, _features$3;
|
|
280
|
-
var
|
|
281
|
-
layerName =
|
|
282
|
-
features =
|
|
279
|
+
var _ref1 = _slicedToArray(_ref0, 2),
|
|
280
|
+
layerName = _ref1[0],
|
|
281
|
+
features = _ref1[1];
|
|
283
282
|
var exportAttrs = Object.keys((_features$0$propertie2 = (_features$3 = features[0]) === null || _features$3 === void 0 ? void 0 : _features$3.properties) !== null && _features$0$propertie2 !== void 0 ? _features$0$propertie2 : {}).filter(function (attr) {
|
|
284
283
|
return !EXCLUDE_ATTRS.includes(attr);
|
|
285
284
|
});
|
|
@@ -460,12 +459,12 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
460
459
|
});
|
|
461
460
|
if (exporter) {
|
|
462
461
|
if (!_this.props.exportGeometry) {
|
|
463
|
-
json = Object.entries(json).reduce(function (res,
|
|
464
|
-
var
|
|
465
|
-
layerId =
|
|
466
|
-
features =
|
|
462
|
+
json = Object.entries(json).reduce(function (res, _ref12) {
|
|
463
|
+
var _ref13 = _slicedToArray(_ref12, 2),
|
|
464
|
+
layerId = _ref13[0],
|
|
465
|
+
features = _ref13[1];
|
|
467
466
|
return _objectSpread(_objectSpread({}, res), {}, _defineProperty({}, layerId, features.map(function (feature) {
|
|
468
|
-
return
|
|
467
|
+
return MiscUtils.objectOmit(feature, ['geometry']);
|
|
469
468
|
})));
|
|
470
469
|
}, {});
|
|
471
470
|
}
|
|
@@ -491,10 +490,10 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
491
490
|
style: {
|
|
492
491
|
maxHeight: _this.state.currentResult ? '10em' : 'initial'
|
|
493
492
|
}
|
|
494
|
-
}, Object.entries(_this.state.resultTree).map(function (
|
|
495
|
-
var
|
|
496
|
-
layerid =
|
|
497
|
-
features =
|
|
493
|
+
}, Object.entries(_this.state.resultTree).map(function (_ref14) {
|
|
494
|
+
var _ref15 = _slicedToArray(_ref14, 2),
|
|
495
|
+
layerid = _ref15[0],
|
|
496
|
+
features = _ref15[1];
|
|
498
497
|
if (features.length === 0) {
|
|
499
498
|
return null;
|
|
500
499
|
}
|
|
@@ -925,10 +924,10 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
925
924
|
}, /*#__PURE__*/React.createElement("option", {
|
|
926
925
|
disabled: true,
|
|
927
926
|
value: ""
|
|
928
|
-
}, LocaleUtils.tr("identify.selectreport")), Object.entries(_this.state.reports).map(function (
|
|
929
|
-
var
|
|
930
|
-
layername =
|
|
931
|
-
reports =
|
|
927
|
+
}, LocaleUtils.tr("identify.selectreport")), Object.entries(_this.state.reports).map(function (_ref17) {
|
|
928
|
+
var _ref18 = _slicedToArray(_ref17, 2),
|
|
929
|
+
layername = _ref18[0],
|
|
930
|
+
reports = _ref18[1];
|
|
932
931
|
return reports.map(function (report, idx) {
|
|
933
932
|
return /*#__PURE__*/React.createElement("option", {
|
|
934
933
|
key: layername + "::" + idx,
|
|
@@ -1221,10 +1220,10 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
1221
1220
|
var _this2 = this;
|
|
1222
1221
|
var body = null;
|
|
1223
1222
|
var resultTree = this.state.selectedLayer !== '' ? _defineProperty({}, this.state.selectedLayer, this.state.resultTree[this.state.selectedLayer]) : this.state.resultTree;
|
|
1224
|
-
var flatResults = Object.entries(resultTree).map(function (
|
|
1225
|
-
var
|
|
1226
|
-
layerid =
|
|
1227
|
-
features =
|
|
1223
|
+
var flatResults = Object.entries(resultTree).map(function (_ref21) {
|
|
1224
|
+
var _ref22 = _slicedToArray(_ref21, 2),
|
|
1225
|
+
layerid = _ref22[0],
|
|
1226
|
+
features = _ref22[1];
|
|
1228
1227
|
return features.map(function (feature) {
|
|
1229
1228
|
return [layerid, feature];
|
|
1230
1229
|
});
|
|
@@ -1252,10 +1251,10 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
1252
1251
|
} else if (this.props.resultDisplayMode === 'flat') {
|
|
1253
1252
|
body = /*#__PURE__*/React.createElement("div", {
|
|
1254
1253
|
className: "identify-flat-results-list"
|
|
1255
|
-
}, Object.entries(resultTree).map(function (
|
|
1256
|
-
var
|
|
1257
|
-
layerid =
|
|
1258
|
-
features =
|
|
1254
|
+
}, Object.entries(resultTree).map(function (_ref23) {
|
|
1255
|
+
var _ref24 = _slicedToArray(_ref23, 2),
|
|
1256
|
+
layerid = _ref24[0],
|
|
1257
|
+
features = _ref24[1];
|
|
1259
1258
|
return features.map(function (feature) {
|
|
1260
1259
|
return _this2.renderResultAttributes(layerid, feature, 'identify-result-frame');
|
|
1261
1260
|
});
|
|
@@ -1269,10 +1268,10 @@ var IdentifyViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
1269
1268
|
body = /*#__PURE__*/React.createElement("div", {
|
|
1270
1269
|
className: "identify-compare-results",
|
|
1271
1270
|
style: _style
|
|
1272
|
-
}, results.map(function (
|
|
1273
|
-
var
|
|
1274
|
-
layerid =
|
|
1275
|
-
feature =
|
|
1271
|
+
}, results.map(function (_ref25) {
|
|
1272
|
+
var _ref26 = _slicedToArray(_ref25, 2),
|
|
1273
|
+
layerid = _ref26[0],
|
|
1274
|
+
feature = _ref26[1];
|
|
1276
1275
|
return _this2.renderResultAttributes(layerid, feature, 'identify-result-frame');
|
|
1277
1276
|
}));
|
|
1278
1277
|
} else if (this.state.currentPage < flatResults.length) {
|