qwc2 2026.6.17 → 2026.6.24
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/theme.js +3 -5
- package/components/AttributeForm.js +7 -3
- package/components/LayerInfoWindow.js +2 -1
- package/components/MapButton.js +4 -0
- package/components/widgets/GroupSelect.js +1 -2
- package/components/widgets/PopupMenu.js +12 -10
- package/package.json +1 -1
- package/plugins/BackgroundSwitcher.js +6 -0
- package/plugins/FeatureForm.js +4 -2
- package/plugins/Identify.js +1 -1
- package/plugins/LayerTree.js +1 -0
- package/plugins/ThemeBrowser.js +2 -2
- package/plugins/map3d/BackgroundSwitcher3D.js +12 -1
- package/scripts/updateTranslations.js +1 -1
package/actions/theme.js
CHANGED
|
@@ -125,11 +125,9 @@ export function finishThemeSetup(dispatch, theme, themes, layerConfigs, preserve
|
|
|
125
125
|
} finally {
|
|
126
126
|
_iterator.f();
|
|
127
127
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
});
|
|
132
|
-
}
|
|
128
|
+
UrlParams.updateParams({
|
|
129
|
+
bl: actuallyVisibleBgLayer !== null && actuallyVisibleBgLayer !== void 0 ? actuallyVisibleBgLayer : ""
|
|
130
|
+
});
|
|
133
131
|
var _iterator2 = _createForOfIteratorHelper(layers.reverse()),
|
|
134
132
|
_step2;
|
|
135
133
|
try {
|
|
@@ -168,9 +168,7 @@ var AttributeForm = /*#__PURE__*/function (_React$Component) {
|
|
|
168
168
|
action: "",
|
|
169
169
|
className: "attrib-form-parent-form",
|
|
170
170
|
onSubmit: _this.onSubmit,
|
|
171
|
-
ref:
|
|
172
|
-
_this.form = el;
|
|
173
|
-
}
|
|
171
|
+
ref: _this.setRef
|
|
174
172
|
}, editConfig.form ? /*#__PURE__*/React.createElement(QtDesignerForm, {
|
|
175
173
|
addRelationRecord: _this.addRelationRecord,
|
|
176
174
|
editConfig: editConfig,
|
|
@@ -199,6 +197,9 @@ var AttributeForm = /*#__PURE__*/function (_React$Component) {
|
|
|
199
197
|
values: _this.props.editContext.feature.properties
|
|
200
198
|
}), captchaButton, commitBar), deleteBar, busyDiv, childAttributeForm);
|
|
201
199
|
});
|
|
200
|
+
_defineProperty(_this, "setRef", function (el) {
|
|
201
|
+
_this.form = el;
|
|
202
|
+
});
|
|
202
203
|
_defineProperty(_this, "setFormBusy", function (busy) {
|
|
203
204
|
_this.setState({
|
|
204
205
|
busy: busy
|
|
@@ -441,6 +442,9 @@ var AttributeForm = /*#__PURE__*/function (_React$Component) {
|
|
|
441
442
|
_defineProperty(_this, "validateForm", function (feature) {
|
|
442
443
|
var validCallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
443
444
|
var invalidCallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
445
|
+
if (!_this.form) {
|
|
446
|
+
return;
|
|
447
|
+
}
|
|
444
448
|
var constraintExpressions = _this.props.editContext.editConfig.fields.reduce(function (res, cur) {
|
|
445
449
|
var _cur$constraints;
|
|
446
450
|
if ((_cur$constraints = cur.constraints) !== null && _cur$constraints !== void 0 && _cur$constraints.expression) {
|
|
@@ -93,7 +93,7 @@ var LayerInfoWindow = /*#__PURE__*/function (_React$Component) {
|
|
|
93
93
|
}
|
|
94
94
|
var legend = null;
|
|
95
95
|
var scale = MapUtils.computeForZoom(this.props.map.scales, this.props.map.zoom);
|
|
96
|
-
var legendUrl = LayerUtils.getLegendUrl(this.props.layer, this.props.sublayer, scale, this.props.map, this.props.bboxDependentLegend, this.props.scaleDependentLegend);
|
|
96
|
+
var legendUrl = LayerUtils.getLegendUrl(this.props.layer, this.props.sublayer, scale, this.props.map, this.props.bboxDependentLegend, this.props.scaleDependentLegend, this.props.extraLegendParameters);
|
|
97
97
|
if (legendUrl) {
|
|
98
98
|
legend = /*#__PURE__*/React.createElement(Image, {
|
|
99
99
|
className: "layer-info-window-legend",
|
|
@@ -130,6 +130,7 @@ var LayerInfoWindow = /*#__PURE__*/function (_React$Component) {
|
|
|
130
130
|
}(React.Component);
|
|
131
131
|
_defineProperty(LayerInfoWindow, "propTypes", {
|
|
132
132
|
bboxDependentLegend: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
|
|
133
|
+
extraLegendParameters: PropTypes.string,
|
|
133
134
|
layer: PropTypes.object,
|
|
134
135
|
layerInfoGeometry: PropTypes.object,
|
|
135
136
|
map: PropTypes.object,
|
package/components/MapButton.js
CHANGED
|
@@ -56,6 +56,8 @@ var MapButton = /*#__PURE__*/function (_React$Component) {
|
|
|
56
56
|
}, /*#__PURE__*/React.createElement("button", {
|
|
57
57
|
className: "".concat(className, " ").concat(this.props.className || ""),
|
|
58
58
|
onClick: this.props.onClick,
|
|
59
|
+
onMouseEnter: this.props.onMouseEnter,
|
|
60
|
+
onMouseLeave: this.props.onMouseLeave,
|
|
59
61
|
ref: this.props.buttonRef,
|
|
60
62
|
title: this.props.tooltip
|
|
61
63
|
}, this.props.busy ? /*#__PURE__*/React.createElement(Spinner, null) : /*#__PURE__*/React.createElement(Icon, {
|
|
@@ -77,6 +79,8 @@ _defineProperty(MapButton, "propTypes", {
|
|
|
77
79
|
icon: PropTypes.string,
|
|
78
80
|
iconSize: PropTypes.string,
|
|
79
81
|
onClick: PropTypes.func,
|
|
82
|
+
onMouseEnter: PropTypes.func,
|
|
83
|
+
onMouseLeave: PropTypes.func,
|
|
80
84
|
position: PropTypes.number,
|
|
81
85
|
tooltip: PropTypes.string
|
|
82
86
|
});
|
|
@@ -55,8 +55,7 @@ var GroupSelect = /*#__PURE__*/function (_Component) {
|
|
|
55
55
|
value: this.props.value
|
|
56
56
|
}, this.props.placeholder !== null ? /*#__PURE__*/React.createElement("option", {
|
|
57
57
|
disabled: true,
|
|
58
|
-
|
|
59
|
-
selected: true
|
|
58
|
+
value: ""
|
|
60
59
|
}, this.props.placeholder) : null, this.props.defaultOption !== null ? /*#__PURE__*/React.createElement("option", {
|
|
61
60
|
key: this.props.defaultOption[0],
|
|
62
61
|
value: this.props.defaultOption[0]
|
|
@@ -29,6 +29,7 @@ import MiscUtils from '../../utils/MiscUtils';
|
|
|
29
29
|
import './style/PopupMenu.css';
|
|
30
30
|
var PopupMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
31
31
|
function PopupMenu(props) {
|
|
32
|
+
var _this$props$anchor$ow, _this$props$anchor5, _this$props$anchor$ow3, _this$props$anchor7;
|
|
32
33
|
var _this;
|
|
33
34
|
_classCallCheck(this, PopupMenu);
|
|
34
35
|
_this = _callSuper(this, PopupMenu, [props]);
|
|
@@ -66,7 +67,7 @@ var PopupMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
66
67
|
var childCount = _this.menuEl.children.length;
|
|
67
68
|
var delta = ev.key === 'ArrowUp' ? -1 : 1;
|
|
68
69
|
var currentIndex = Array.from(_this.menuEl.children).findIndex(function (el) {
|
|
69
|
-
return document.activeElement === el || el.contains(document.activeElement);
|
|
70
|
+
return ev.view.document.activeElement === el || el.contains(ev.view.document.activeElement);
|
|
70
71
|
});
|
|
71
72
|
if (currentIndex === -1) {
|
|
72
73
|
currentIndex = delta === 1 ? childCount - 1 : 0;
|
|
@@ -91,7 +92,7 @@ var PopupMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
91
92
|
(_this$props$anchor4 = _this.props.anchor) === null || _this$props$anchor4 === void 0 || (_this$props$anchor4$f = _this$props$anchor4.focus) === null || _this$props$anchor4$f === void 0 || _this$props$anchor4$f.call(_this$props$anchor4);
|
|
92
93
|
}
|
|
93
94
|
});
|
|
94
|
-
_this.container = document.createElement("div");
|
|
95
|
+
_this.container = ((_this$props$anchor$ow = (_this$props$anchor5 = _this.props.anchor) === null || _this$props$anchor5 === void 0 ? void 0 : _this$props$anchor5.ownerDocument) !== null && _this$props$anchor$ow !== void 0 ? _this$props$anchor$ow : document).createElement("div");
|
|
95
96
|
_this.container.id = 'popup-container';
|
|
96
97
|
_this.container.style.position = 'fixed';
|
|
97
98
|
_this.container.style.left = 0;
|
|
@@ -102,7 +103,8 @@ var PopupMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
102
103
|
if (_this.props.anchor) {
|
|
103
104
|
_this.shields = [];
|
|
104
105
|
var _loop = function _loop(i) {
|
|
105
|
-
_this
|
|
106
|
+
var _this$props$anchor$ow2, _this$props$anchor6;
|
|
107
|
+
_this.shields[i] = ((_this$props$anchor$ow2 = (_this$props$anchor6 = _this.props.anchor) === null || _this$props$anchor6 === void 0 ? void 0 : _this$props$anchor6.ownerDocument) !== null && _this$props$anchor$ow2 !== void 0 ? _this$props$anchor$ow2 : document).createElement("div");
|
|
106
108
|
_this.shields[i].style.position = 'absolute';
|
|
107
109
|
_this.shields[i].style.left = "0px";
|
|
108
110
|
_this.shields[i].style.right = "0px";
|
|
@@ -131,27 +133,27 @@ var PopupMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
131
133
|
}, 0);
|
|
132
134
|
}
|
|
133
135
|
_this.menuEl = null;
|
|
134
|
-
document.body.appendChild(_this.container);
|
|
136
|
+
((_this$props$anchor$ow3 = (_this$props$anchor7 = _this.props.anchor) === null || _this$props$anchor7 === void 0 ? void 0 : _this$props$anchor7.ownerDocument) !== null && _this$props$anchor$ow3 !== void 0 ? _this$props$anchor$ow3 : document).body.appendChild(_this.container);
|
|
135
137
|
return _this;
|
|
136
138
|
}
|
|
137
139
|
_inherits(PopupMenu, _React$PureComponent);
|
|
138
140
|
return _createClass(PopupMenu, [{
|
|
139
141
|
key: "componentDidMount",
|
|
140
142
|
value: function componentDidMount() {
|
|
141
|
-
var _this$props$
|
|
142
|
-
if (((_this$props$
|
|
143
|
+
var _this$props$anchor8;
|
|
144
|
+
if (((_this$props$anchor8 = this.props.anchor) === null || _this$props$anchor8 === void 0 ? void 0 : _this$props$anchor8.nodeName) === "INPUT") {
|
|
143
145
|
this.props.anchor.addEventListener('keydown', this.keyNav);
|
|
144
146
|
}
|
|
145
147
|
}
|
|
146
148
|
}, {
|
|
147
149
|
key: "componentWillUnmount",
|
|
148
150
|
value: function componentWillUnmount() {
|
|
149
|
-
var _this$props$
|
|
150
|
-
document.body.removeChild(this.container);
|
|
151
|
-
if (((_this$props$
|
|
151
|
+
var _this$props$anchor$ow4, _this$props$anchor9, _this$props$anchor0, _this$props$anchor1, _this$props$anchor1$f;
|
|
152
|
+
((_this$props$anchor$ow4 = (_this$props$anchor9 = this.props.anchor) === null || _this$props$anchor9 === void 0 ? void 0 : _this$props$anchor9.ownerDocument) !== null && _this$props$anchor$ow4 !== void 0 ? _this$props$anchor$ow4 : document).body.removeChild(this.container);
|
|
153
|
+
if (((_this$props$anchor0 = this.props.anchor) === null || _this$props$anchor0 === void 0 ? void 0 : _this$props$anchor0.nodeName) === "INPUT") {
|
|
152
154
|
this.props.anchor.removeEventListener('keydown', this.keyNav);
|
|
153
155
|
}
|
|
154
|
-
(_this$props$
|
|
156
|
+
(_this$props$anchor1 = this.props.anchor) === null || _this$props$anchor1 === void 0 || (_this$props$anchor1$f = _this$props$anchor1.focus) === null || _this$props$anchor1$f === void 0 || _this$props$anchor1$f.call(_this$props$anchor1);
|
|
155
157
|
}
|
|
156
158
|
}, {
|
|
157
159
|
key: "render",
|
package/package.json
CHANGED
|
@@ -364,6 +364,12 @@ export var BackgroundSwitcher = /*#__PURE__*/function (_React$Component) {
|
|
|
364
364
|
onClick: function onClick() {
|
|
365
365
|
return _this2.buttonClicked(nextLayer);
|
|
366
366
|
},
|
|
367
|
+
onMouseEnter: this.props.buttonClickAction === "cycle" ? function () {
|
|
368
|
+
return _this2.setSwitcherVisible(true);
|
|
369
|
+
} : null,
|
|
370
|
+
onMouseLeave: this.props.buttonClickAction === "cycle" ? function () {
|
|
371
|
+
return _this2.setSwitcherVisible(false);
|
|
372
|
+
} : null,
|
|
367
373
|
position: this.props.position,
|
|
368
374
|
tooltip: LocaleUtils.tr("tooltip.background")
|
|
369
375
|
}, this.renderSwitcher(backgroundLayers, visibleBgLayer));
|
package/plugins/FeatureForm.js
CHANGED
|
@@ -152,7 +152,7 @@ var FeatureForm = /*#__PURE__*/function (_React$Component) {
|
|
|
152
152
|
_defineProperty(_this, "onWindowClose", function () {
|
|
153
153
|
if (!_this.props.editContext.changed) {
|
|
154
154
|
_this.clearResults();
|
|
155
|
-
if (_this.props.exitTaskOnResultsClose) {
|
|
155
|
+
if (_this.props.exitTaskOnResultsClose && _this.props.currentTask === "FeatureForm") {
|
|
156
156
|
_this.props.setCurrentTask(null);
|
|
157
157
|
}
|
|
158
158
|
}
|
|
@@ -314,6 +314,7 @@ _defineProperty(FeatureForm, "propTypes", {
|
|
|
314
314
|
clearEditContext: PropTypes.func,
|
|
315
315
|
click: PropTypes.object,
|
|
316
316
|
currentEditContext: PropTypes.string,
|
|
317
|
+
currentTask: PropTypes.string,
|
|
317
318
|
editConfigs: PropTypes.object,
|
|
318
319
|
editContext: PropTypes.object,
|
|
319
320
|
enabled: PropTypes.bool,
|
|
@@ -356,8 +357,9 @@ _defineProperty(FeatureForm, "defaultState", {
|
|
|
356
357
|
export default (function () {
|
|
357
358
|
var iface = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : EditingInterface;
|
|
358
359
|
return connect(function (state) {
|
|
359
|
-
var enabled = state.task.id === "FeatureForm" || state.task.identifyEnabled && ConfigUtils.getConfigProp("identifyTool", state.theme.current, "Identify") === "FeatureForm";
|
|
360
|
+
var enabled = state.task.id === "FeatureForm" || (!state.task.id || state.task.identifyEnabled) && ConfigUtils.getConfigProp("identifyTool", state.theme.current, "Identify") === "FeatureForm";
|
|
360
361
|
return {
|
|
362
|
+
currentTask: state.task.id,
|
|
361
363
|
click: state.map.click || {
|
|
362
364
|
modifiers: {}
|
|
363
365
|
},
|
package/plugins/Identify.js
CHANGED
|
@@ -579,7 +579,7 @@ _defineProperty(Identify, "defaultProps", {
|
|
|
579
579
|
});
|
|
580
580
|
export default connect(function (state) {
|
|
581
581
|
var _state$layers$filter;
|
|
582
|
-
var enabled = state.task.id === "Identify" || state.task.identifyEnabled && ConfigUtils.getConfigProp("identifyTool", state.theme.current, "Identify") === "Identify";
|
|
582
|
+
var enabled = state.task.id === "Identify" || (!state.task.id || state.task.identifyEnabled) && ConfigUtils.getConfigProp("identifyTool", state.theme.current, "Identify") === "Identify";
|
|
583
583
|
return {
|
|
584
584
|
click: state.map.click || {
|
|
585
585
|
modifiers: {}
|
package/plugins/LayerTree.js
CHANGED
|
@@ -1139,6 +1139,7 @@ var LayerTree = /*#__PURE__*/function (_React$Component) {
|
|
|
1139
1139
|
};
|
|
1140
1140
|
}), legendTooltip, this.renderLegendPrintWindow(), /*#__PURE__*/React.createElement(LayerInfoWindow, {
|
|
1141
1141
|
bboxDependentLegend: this.props.bboxDependentLegend,
|
|
1142
|
+
extraLegendParameters: this.props.extraLegendParameters,
|
|
1142
1143
|
layerInfoGeometry: this.props.layerInfoGeometry,
|
|
1143
1144
|
scaleDependentLegend: this.props.scaleDependentLegend
|
|
1144
1145
|
}), /*#__PURE__*/React.createElement(ServiceInfoWindow, {
|
package/plugins/ThemeBrowser.js
CHANGED
|
@@ -354,14 +354,14 @@ var ThemeBrowser = /*#__PURE__*/function (_React$Component) {
|
|
|
354
354
|
var resizeOverlay = document.createElement('div');
|
|
355
355
|
resizeOverlay.className = 'themebrowser-resize-overlay';
|
|
356
356
|
ev.view.document.body.appendChild(resizeOverlay);
|
|
357
|
-
|
|
357
|
+
ev.view.document.body.style.userSelect = 'none';
|
|
358
358
|
// ev.view.document.body.style.setProperty('cursor', 'ew-resize', 'important');
|
|
359
359
|
arrowsEl.style.display = 'none';
|
|
360
360
|
opacityEl.innerText = Math.round(startOpacity / 255 * 100) + "%";
|
|
361
361
|
ev.view.addEventListener("pointermove", computeNewOpacity);
|
|
362
362
|
ev.view.addEventListener("pointerup", function () {
|
|
363
363
|
ev.view.document.body.removeChild(resizeOverlay);
|
|
364
|
-
|
|
364
|
+
ev.view.document.body.style.userSelect = '';
|
|
365
365
|
// ev.view.document.body.style.removeProperty('cursor');
|
|
366
366
|
arrowsEl.style.display = '';
|
|
367
367
|
opacityEl.innerText = '';
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
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
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
3
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
5
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
6
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
7
|
+
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; }
|
|
8
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
2
10
|
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
3
11
|
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); } }
|
|
4
12
|
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
@@ -37,8 +45,11 @@ var BackgroundSwitcher3D = /*#__PURE__*/function (_React$Component) {
|
|
|
37
45
|
return _createClass(BackgroundSwitcher3D, [{
|
|
38
46
|
key: "render",
|
|
39
47
|
value: function render() {
|
|
48
|
+
var backgroundLayers = Object.values(this.props.sceneContext.baseLayers.reduce(function (res, l) {
|
|
49
|
+
return _objectSpread(_objectSpread({}, res), {}, _defineProperty({}, "_" + (l.group || l.name), l.group ? [].concat(_toConsumableArray(res["_" + l.group] || []), [l]) : l));
|
|
50
|
+
}, {}));
|
|
40
51
|
return /*#__PURE__*/React.createElement(BackgroundSwitcher, {
|
|
41
|
-
backgroundLayers:
|
|
52
|
+
backgroundLayers: backgroundLayers,
|
|
42
53
|
buttonClickAction: this.props.buttonClickAction,
|
|
43
54
|
buttonDisplayMode: this.props.buttonDisplayMode,
|
|
44
55
|
changeLayerVisibility: this.props.sceneContext.setBaseLayer,
|
|
@@ -89,7 +89,7 @@ var _listDir = function listDir(dir, pattern) {
|
|
|
89
89
|
var updateTsConfig = function updateTsConfig(topdir, tsconfig) {
|
|
90
90
|
var collectedMsgIds = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
91
91
|
var files = _listDir(topdir, /^.*\.[jt]sx?$/);
|
|
92
|
-
var trRegEx = /LocaleUtils\.tr(?:msg)?\((['"])([A-Za-z0-9._]+)\1/g;
|
|
92
|
+
var trRegEx = /LocaleUtils\.tr(?:msg)?\((['"])([A-Za-z0-9._-]+)\1/g;
|
|
93
93
|
var msgIds = new Set();
|
|
94
94
|
var _iterator2 = _createForOfIteratorHelper(files),
|
|
95
95
|
_step2;
|