@vtx/ol-map 1.0.133 → 1.0.134
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/lib/feature-layer/FeatureLayer.js +51 -47
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +6 -5
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -1
- package/lib/map/getBaseLayers/index.js +11 -7
- package/lib/map/getBaseLayers/index.js.map +1 -1
- package/lib/map/index.js +7 -4
- package/lib/map/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ var _layer = require("ol/layer");
|
|
|
8
8
|
var _ol = require("ol");
|
|
9
9
|
var _source = require("ol/source");
|
|
10
10
|
var _renderer = _interopRequireDefault(require("../renderer"));
|
|
11
|
-
var
|
|
11
|
+
var _style6 = require("ol/style");
|
|
12
12
|
var _isFunction = _interopRequireDefault(require("../_util/isFunction"));
|
|
13
13
|
var _createFeatureCollection = require("./createFeatureCollection");
|
|
14
14
|
var _isObject = _interopRequireDefault(require("../_util/isObject"));
|
|
@@ -146,7 +146,7 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
146
146
|
var style = _objectSpread({
|
|
147
147
|
text: String(size),
|
|
148
148
|
font: '18px Calibri,sans-serif',
|
|
149
|
-
fill: new
|
|
149
|
+
fill: new _style6.Fill({
|
|
150
150
|
color: color || '#fff'
|
|
151
151
|
}),
|
|
152
152
|
padding: [0, 0, 0, 0],
|
|
@@ -157,17 +157,17 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
157
157
|
offsetX: 16
|
|
158
158
|
}, otherVal);
|
|
159
159
|
if (background) {
|
|
160
|
-
style.backgroundFill = new
|
|
160
|
+
style.backgroundFill = new _style6.Fill({
|
|
161
161
|
color: background
|
|
162
162
|
});
|
|
163
163
|
}
|
|
164
164
|
if (backgroundStroke) {
|
|
165
|
-
style.backgroundStroke = new
|
|
165
|
+
style.backgroundStroke = new _style6.Stroke({
|
|
166
166
|
color: '#FFFFFF',
|
|
167
167
|
width: backgroundStrokeWidth || 2
|
|
168
168
|
});
|
|
169
169
|
}
|
|
170
|
-
return new
|
|
170
|
+
return new _style6.Text(style);
|
|
171
171
|
});
|
|
172
172
|
_defineProperty(_assertThisInitialized(_this2), "getLabelStyle", function (feature, color) {
|
|
173
173
|
var labelField = _this2._options.labelField;
|
|
@@ -181,16 +181,16 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
183
|
if (labelField) {
|
|
184
|
-
return new
|
|
184
|
+
return new _style6.Text({
|
|
185
185
|
text: feature.values_[labelField] || '-',
|
|
186
186
|
font: '12px Calibri,sans-serif',
|
|
187
|
-
fill: new
|
|
187
|
+
fill: new _style6.Fill({
|
|
188
188
|
color: color
|
|
189
189
|
}),
|
|
190
|
-
backgroundFill: new
|
|
190
|
+
backgroundFill: new _style6.Fill({
|
|
191
191
|
color: '#fff'
|
|
192
192
|
}),
|
|
193
|
-
backgroundStroke: new
|
|
193
|
+
backgroundStroke: new _style6.Stroke({
|
|
194
194
|
color: color,
|
|
195
195
|
width: 1
|
|
196
196
|
}),
|
|
@@ -394,16 +394,14 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
394
394
|
}
|
|
395
395
|
}, {
|
|
396
396
|
key: "getCustomClusterStyle",
|
|
397
|
-
value: function getCustomClusterStyle(feature) {
|
|
397
|
+
value: function getCustomClusterStyle(feature, clusterStyle) {
|
|
398
398
|
var _feature$get2;
|
|
399
|
-
var
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
scale = _cluster$style$scale === void 0 ? 1 : _cluster$style$scale,
|
|
406
|
-
iconOptions = _objectWithoutProperties(_cluster$style, _excluded3);
|
|
399
|
+
var type = clusterStyle.type,
|
|
400
|
+
iconSrc = clusterStyle.iconSrc,
|
|
401
|
+
color = clusterStyle.color,
|
|
402
|
+
_clusterStyle$scale = clusterStyle.scale,
|
|
403
|
+
scale = _clusterStyle$scale === void 0 ? 1 : _clusterStyle$scale,
|
|
404
|
+
iconOptions = _objectWithoutProperties(clusterStyle, _excluded3);
|
|
407
405
|
var size = ((_feature$get2 = feature.get('features')) === null || _feature$get2 === void 0 ? void 0 : _feature$get2.length) || 0;
|
|
408
406
|
return [new _renderer["default"].Marker({
|
|
409
407
|
image: (0, _Marker.getImgUrl)(type || 'CommonIcon', {
|
|
@@ -460,13 +458,13 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
460
458
|
}
|
|
461
459
|
}
|
|
462
460
|
if (size > 1 && cluster !== null && cluster !== void 0 && cluster.style.iconSrc) {
|
|
463
|
-
return _this4.getCustomClusterStyle(feature);
|
|
461
|
+
return _this4.getCustomClusterStyle(feature, cluster.style);
|
|
464
462
|
}
|
|
465
463
|
if (style) {
|
|
466
464
|
if (typeof style === 'string' || (0, _isFunction["default"])(style) && cluster) {
|
|
467
465
|
styles.push(new _renderer["default"].Marker(_objectSpread({}, _this4.getMarkerOptions(feature, style))));
|
|
468
466
|
return styles;
|
|
469
|
-
} else if (style instanceof
|
|
467
|
+
} else if (style instanceof _style6.Style) {
|
|
470
468
|
// 判断是否为 ol Style
|
|
471
469
|
styles.push(style);
|
|
472
470
|
return styles;
|
|
@@ -517,17 +515,17 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
517
515
|
}
|
|
518
516
|
}
|
|
519
517
|
}
|
|
520
|
-
styles.push(new
|
|
521
|
-
image: new
|
|
518
|
+
styles.push(new _style6.Style({
|
|
519
|
+
image: new _style6.Circle({
|
|
522
520
|
radius: 4,
|
|
523
|
-
fill: new
|
|
521
|
+
fill: new _style6.Fill({
|
|
524
522
|
color: 'rgba(0,155,255, 0.8)'
|
|
525
523
|
})
|
|
526
524
|
}),
|
|
527
|
-
fill: new
|
|
525
|
+
fill: new _style6.Fill({
|
|
528
526
|
color: 'rgba(255, 255, 255, 0.6)'
|
|
529
527
|
}),
|
|
530
|
-
stroke: new
|
|
528
|
+
stroke: new _style6.Stroke({
|
|
531
529
|
color: '#009BFF',
|
|
532
530
|
width: 2
|
|
533
531
|
})
|
|
@@ -684,39 +682,45 @@ var FeatureLayer = /*#__PURE__*/function (_Vector) {
|
|
|
684
682
|
})
|
|
685
683
|
});
|
|
686
684
|
if ((_group = group) !== null && _group !== void 0 && _group.length) {
|
|
687
|
-
var _group2;
|
|
688
|
-
var style;
|
|
685
|
+
var _group2, _groupItem, _groupItem$clusterSty;
|
|
686
|
+
var style, groupItem;
|
|
689
687
|
var f = features[0];
|
|
690
688
|
var size = features.length;
|
|
691
689
|
(_group2 = group) === null || _group2 === void 0 ? void 0 : _group2.map(function (v) {
|
|
692
690
|
var _v$filter2;
|
|
693
691
|
if (v !== null && v !== void 0 && (_v$filter2 = v.filter) !== null && _v$filter2 !== void 0 && _v$filter2.call(v, f.values_)) {
|
|
694
692
|
style = v.style || style;
|
|
693
|
+
groupItem = v;
|
|
695
694
|
}
|
|
696
695
|
});
|
|
697
696
|
var markerStyle = _objectSpread({}, style.style);
|
|
698
|
-
if (size > 1) {
|
|
699
|
-
var
|
|
700
|
-
|
|
701
|
-
|
|
697
|
+
if (size > 1 && (_groupItem = groupItem) !== null && _groupItem !== void 0 && (_groupItem$clusterSty = _groupItem.clusterStyle) !== null && _groupItem$clusterSty !== void 0 && _groupItem$clusterSty.iconSrc) {
|
|
698
|
+
var _style = _this6.getCustomClusterStyle(feature, groupItem.clusterStyle);
|
|
699
|
+
feature.setStyle(_style);
|
|
700
|
+
} else {
|
|
701
|
+
if (size > 1) {
|
|
702
|
+
var _style4, _markerStyle2, _cluster2;
|
|
703
|
+
if ((_style4 = style) !== null && _style4 !== void 0 && _style4.clusterStyle) {
|
|
704
|
+
markerStyle = _objectSpread({}, style.clusterStyle);
|
|
705
|
+
}
|
|
706
|
+
var _markerStyle = markerStyle,
|
|
707
|
+
numberStyle = _markerStyle.numberStyle,
|
|
708
|
+
iconOptions = _markerStyle.iconOptions,
|
|
709
|
+
otherStyle = _objectWithoutProperties(_markerStyle, _excluded4);
|
|
710
|
+
markerStyle = _objectSpread(_objectSpread({}, otherStyle), {}, {
|
|
711
|
+
text: _this6.getClusterTextStyle((_markerStyle2 = markerStyle) !== null && _markerStyle2 !== void 0 && _markerStyle2.image ? size : ' ', numberStyle),
|
|
712
|
+
iconOptions: _objectSpread({
|
|
713
|
+
hideFooter: true,
|
|
714
|
+
info: {
|
|
715
|
+
text: size,
|
|
716
|
+
fontSize: 18
|
|
717
|
+
}
|
|
718
|
+
}, iconOptions || ((_cluster2 = cluster) === null || _cluster2 === void 0 ? void 0 : _cluster2.iconOptions) || {})
|
|
719
|
+
});
|
|
702
720
|
}
|
|
703
|
-
var
|
|
704
|
-
|
|
705
|
-
iconOptions = _markerStyle.iconOptions,
|
|
706
|
-
otherStyle = _objectWithoutProperties(_markerStyle, _excluded4);
|
|
707
|
-
markerStyle = _objectSpread(_objectSpread({}, otherStyle), {}, {
|
|
708
|
-
text: _this6.getClusterTextStyle((_markerStyle2 = markerStyle) !== null && _markerStyle2 !== void 0 && _markerStyle2.image ? size : ' ', numberStyle),
|
|
709
|
-
iconOptions: _objectSpread({
|
|
710
|
-
hideFooter: true,
|
|
711
|
-
info: {
|
|
712
|
-
text: size,
|
|
713
|
-
fontSize: 18
|
|
714
|
-
}
|
|
715
|
-
}, iconOptions || ((_cluster2 = cluster) === null || _cluster2 === void 0 ? void 0 : _cluster2.iconOptions) || {})
|
|
716
|
-
});
|
|
721
|
+
var _style5 = new _renderer["default"].Marker(markerStyle);
|
|
722
|
+
feature.setStyle(_style5);
|
|
717
723
|
}
|
|
718
|
-
var _style = new _renderer["default"].Marker(markerStyle);
|
|
719
|
-
feature.setStyle(_style);
|
|
720
724
|
}
|
|
721
725
|
|
|
722
726
|
// 增加聚合点位标识
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureLayer.js","names":["_layer","require","_ol","_source","_renderer","_interopRequireDefault","_style5","_isFunction","_createFeatureCollection","_isObject","_encryptParams","_stringToFun","_convertCamelToCSS","_MyCluster","_Marker","_excluded","_excluded2","_excluded3","_excluded4","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","_typeof","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","_get","Reflect","get","bind","property","receiver","base","_superPropBase","desc","value","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","set","_set","isStrict","s","hasOwnProperty","getPrototypeOf","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","addOverlay","feature","map","alarmBg","itemVal","find","v","values_","image","style","dom","document","createElement","src","className","cssText","overlay","Overlay","element","positioning","stopEvent","setPosition","getGeometry","getCoordinates","FeatureLayer","_Vector","_super","options","_thisSuper","_this2","url","params","data","dataField","features","sourceOptions","label","labelField","point","cluster","template","autoRefresh","method","layerControl","show","group","iconOptions","afterGetData","legend","viewOnly","encrypt","valueField","tipTemplate","cancelPopup","other","VectorSource","defaultShow","f","stringToFun","size","_ref","color","background","backgroundStroke","backgroundStrokeWidth","otherVal","text","font","fill","Fill","padding","justify","textAlign","textBaseline","offsetY","offsetX","backgroundFill","Stroke","width","Text","_options","isCluster","_feature$get","distance","inited","item","convertCamelToCSS","_features","init","loadUrlData","loadData","setVisible","val","setStyle","getStyleByMode","setClusterMode","setShow","_this3","_ref2","isObject","setClusterSource","destroy","oldZoom","getView","getZoom","moveEnd","on","zoom","_this3$_options$clust","zoomThreshold","getCustomClusterStyle","_feature$get2","_cluster$style","type","iconSrc","_cluster$style$scale","scale","renderer","Marker","getImgUrl","hideFooter","info","fontSize","getClusterTextStyle","anchor","_this4","resolution","_feature$get3","_this4$group","_this4$_options","otherStyle","_v$filter","styles","isFunction","_styles","getMarkerOptions","Style","_style","getSimpleStyle","Simple","_style3","mode","render","getMultipleStyle","UniqueValue","ClassBreaks","Circle","radius","stroke","_render","_render$style","_render$style2","icon","_render$render","_this5","_feature$get4","_this$_options","isFun","_data","_data$style","_data2","_data3","_data3$style","_data4","_data5","_data5$style","_data6","P","marker","marker_cluster","commonStyle","point_cluster","_Object$keys","includes","_data7","customText","getLabelStyle","_this$_features","_this6","_this","_cluster","minDistance","clusterSource","Cluster","clusterChange","setAlarmBgByFeatures","createCluster","_group","Feature","geometry","layerKey","_group2","_v$filter2","markerStyle","_style4","_markerStyle2","_cluster2","clusterStyle","_markerStyle","numberStyle","setProperties","setSource","clearAlarmBg","_this$overlays","_this7","overlays","removeOverlay","_this8","_feature","refresh","_this9","getDataByHttpByParams","field","then","new_features","newFeatures","getFeatureByFieldValue","id","getSource","addFeatures","getFeatures","changed","clear","createGeoJson","_this10","encryptParams","loadFeatures","getFeaturesByFieldValueOpera","_ref3","_this11","_ref3$operation","operation","Promise","resolve","reject","fun","Function","concat","err","_v$values_$field","_v$values_$field2","_v$values_$field3","getMap","setGroup","_this$_features2","_v$filter3","setVisibleByGroup","visible","layers","onChange","clearMoveEnd","un","Vector","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import { Vector } from 'ol/layer';\nimport { Feature, Overlay } from 'ol';\nimport { Vector as VectorSource } from 'ol/source';\nimport renderer from '../renderer';\nimport { Fill, Style, Text, Stroke, Circle } from 'ol/style';\nimport isFunction from '../_util/isFunction';\nimport { getDataByHttpByParams, createGeoJson } from './createFeatureCollection';\nimport isObject from '../_util/isObject';\nimport encryptParams from '../_util/encryptParams';\nimport stringToFun from '../_util/stringToFun';\nimport convertCamelToCSS from '../convertCamelToCSS';\nimport Cluster from './MyCluster';\nimport {getImgUrl} from \"../marker/Marker\";\n\nconst addOverlay = (feature, map, alarmBg) => {\n if (alarmBg) {\n let itemVal = alarmBg.find(v => v.filter(feature.values_));\n if (itemVal) {\n let { image, style } = itemVal;\n let dom;\n if (image) {\n dom = document.createElement('img');\n dom.src = image;\n } else {\n dom = document.createElement('div');\n dom.className = `ol-map-icon-alarm`;\n }\n\n if (style) {\n dom.style.cssText = style;\n }\n\n const overlay = new Overlay({\n element: dom,\n positioning: 'bottom-center',\n stopEvent: true,\n className: 'ol-overlay_container-stop_event',\n });\n\n map.addOverlay(overlay);\n\n overlay.setPosition(feature.getGeometry().getCoordinates());\n\n return overlay;\n }\n }\n};\n\nclass FeatureLayer extends Vector {\n constructor(options) {\n const {\n url,\n params,\n data,\n dataField,\n features,\n sourceOptions,\n key,\n name,\n label,\n labelField,\n point,\n cluster,\n template,\n autoRefresh,\n method,\n layerControl,\n show,\n style,\n group,\n iconOptions,\n afterGetData,\n legend,\n viewOnly,\n encrypt,\n valueField,\n map,\n tipTemplate,\n alarmBg,\n cancelPopup,\n ...other\n } = options;\n\n const props = {\n ...other,\n };\n props.source =\n props.source ||\n new VectorSource({\n features,\n ...sourceOptions,\n });\n\n let defaultShow = show;\n if (group?.length) {\n defaultShow = false;\n\n if (show) {\n group.map(f => {\n if (f.show) {\n defaultShow = true;\n }\n\n // 将字符函数转化为可执行的函数\n f.filter = stringToFun(f.filter);\n });\n }\n }\n\n super(props);\n super.show = show;\n // 参数\n this._options = options;\n\n // 地图\n this.map = map;\n\n // 接口地址\n this.url = url;\n\n // 接口地址请求类型\n this.method = method;\n\n // 接口查询参数\n this.params = params;\n\n // 图层标识\n this.key = key;\n\n // 图层名称\n this.name = name;\n\n // 标签\n this.label = label;\n\n // 标签字段\n this.labelField = labelField;\n\n // 聚合\n this.cluster = cluster;\n\n // 聚合距离\n this.distance = cluster?.distance || 80;\n\n // 海量点\n this.point = point;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 图层控制\n this.layerControl = layerControl;\n\n // 过滤\n this.group = group;\n\n // 处理获取的数据\n this.afterGetData = afterGetData;\n\n // 数据查询字段\n this.valueField = valueField;\n\n // 图例\n this.legend = legend;\n\n // 样式\n this.style = style;\n\n // 数据\n this.data = data;\n\n // 数据取值字段\n this.dataField = dataField || 'geometryInfo';\n\n // 仅展示\n this.viewOnly = viewOnly;\n\n // 是否初始化\n this.inited = false;\n\n // 加密\n this.encrypt = encrypt;\n\n // 气泡模板\n this.tipTemplate = tipTemplate;\n\n // 取消气泡\n this.cancelPopup = cancelPopup;\n\n // 报警背景\n if (alarmBg) {\n this.alarmBg = (Array.isArray(alarmBg) ? alarmBg : [alarmBg]).map(item => {\n let { filter, style } = item;\n filter = stringToFun(filter);\n if (style) {\n style = item.style && typeof item.style === 'object' ? style : { color: style };\n style = convertCamelToCSS(style);\n }\n return {\n ...item,\n filter,\n style,\n };\n });\n }\n\n // 临时数据\n this._features = [];\n\n // 默认是否展示\n if (defaultShow) {\n this.init();\n }\n }\n\n // 初始化数据\n init() {\n // 是否存在地址\n if (this.url) {\n // 执行\n this.loadUrlData(this.url, this.params, this.method);\n }\n\n // 直接加载数据\n if (this.data) {\n // 执行\n this.loadData(this.data);\n }\n\n this.inited = true;\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n set label(val) {\n this._options.label = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set point(val) {\n this._options.point = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set cluster(val) {\n this.setClusterMode(val);\n }\n\n setShow(value) {\n this.show = value;\n this.setVisible(value);\n }\n\n setClusterMode(val) {\n const {show} = isObject(val) ? val : { show: val };\n this.setClusterSource(val);\n this.setStyle(this.getStyleByMode());\n\n if (this.map && show) {\n const map = this.map;\n this.destroy();\n\n // 监听地图缩放大于阈值时取消聚合\n let oldZoom = map.getView().getZoom();\n this.moveEnd = map.on('moveend', () => {\n const zoom = map.getView().getZoom(); //获取当前地图的缩放级别\n if (oldZoom !== zoom) {\n oldZoom = zoom;\n if (zoom >= (this._options.cluster?.zoomThreshold || 14)) {\n this.setClusterSource();\n } else {\n this.setClusterSource(val);\n }\n }\n });\n }\n }\n\n getClusterTextStyle = (size, options) => {\n const { color, background, backgroundStroke, backgroundStrokeWidth, ...otherVal } =\n options && typeof options === 'object' ? options : {};\n const style = {\n text: String(size),\n font: '18px Calibri,sans-serif',\n fill: new Fill({\n color: color || '#fff',\n }),\n padding: [0, 0, 0, 0],\n justify: 'center',\n textAlign: 'center',\n textBaseline: 'middle',\n offsetY: -22,\n offsetX: 16,\n ...otherVal,\n };\n\n if (background) {\n style.backgroundFill = new Fill({\n color: background,\n });\n }\n\n if (backgroundStroke) {\n style.backgroundStroke = new Stroke({\n color: '#FFFFFF',\n width: backgroundStrokeWidth || 2,\n });\n }\n return new Text(style);\n };\n\n getLabelStyle = (feature, color) => {\n let { labelField } = this._options;\n\n // 判断是否是聚合点位\n if (feature.isCluster) {\n const size = feature.get('features')?.length || 0;\n if (size !== 1) {\n return;\n }\n }\n if (labelField) {\n return new Text({\n text: feature.values_[labelField] || '-',\n font: '12px Calibri,sans-serif',\n fill: new Fill({\n color,\n }),\n backgroundFill: new Fill({\n color: '#fff',\n }),\n backgroundStroke: new Stroke({\n color,\n width: 1,\n }),\n padding: [4, 2, 2, 4],\n justify: 'center',\n textBaseline: 'middle',\n offsetY: 12,\n });\n }\n };\n\n getCustomClusterStyle(feature) {\n const { cluster } = this._options;\n const {type, iconSrc, color, scale = 1, ...iconOptions} = cluster.style;\n const size = feature.get('features')?.length || 0;\n\n return [\n new renderer.Marker({\n image: getImgUrl(type || 'CommonIcon', {\n color: color || '#2491fc',\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n }),\n text: this.getClusterTextStyle(size)\n }),\n new renderer.Marker({\n image: iconSrc,\n scale: scale || 1,\n anchor: [1.1, 1.25],\n ...iconOptions\n })\n ];\n }\n\n getStyleByMode() {\n return (feature, resolution) => {\n const size = feature.get('features')?.length || 0;\n let { style, cluster, otherStyle } = this._options;\n let show = true;\n\n this.group?.map(v => {\n if (v?.filter?.(feature.values_)) {\n style = v.style || style;\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n\n if (!show) {\n return null;\n }\n\n const styles = [];\n\n if (otherStyle) {\n if (isFunction(otherStyle)) {\n const _styles = otherStyle(feature, resolution);\n if (_styles) {\n if (Array.isArray(styles)) {\n styles.push(..._styles);\n } else {\n styles.push(_styles);\n }\n }\n }\n }\n\n if (size > 1 && cluster?.style.iconSrc) {\n return this.getCustomClusterStyle(feature)\n }\n if (style) {\n if (typeof style === 'string' || (isFunction(style) && cluster)) {\n styles.push(new renderer.Marker({ ...this.getMarkerOptions(feature, style) }));\n return styles;\n } else if (style instanceof Style) {\n // 判断是否为 ol Style\n styles.push(style);\n return styles;\n } else if (isFunction(style)) {\n // 判断是否为自定义函数渲染\n\n let _style = style(feature);\n if (_style?.type && _style?.style) {\n const options = this.getSimpleStyle(feature, _style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n styles.push(_style);\n return styles;\n } else if (isObject(style)) {\n let { mode } = style;\n if (mode) {\n if (mode === 'Simple') {\n const options = this.getSimpleStyle(feature, style.render);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n if (mode === 'UniqueValue') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.UniqueValue(feature, options));\n return styles;\n }\n\n if (mode === 'ClassBreaks') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.ClassBreaks(feature, options));\n return styles;\n }\n } else if (style.style) {\n const options = this.getSimpleStyle(feature, style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n }\n }\n styles.push(\n new Style({\n image: new Circle({\n radius: 4,\n fill: new Fill({\n color: 'rgba(0,155,255, 0.8)',\n }),\n }),\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.6)',\n }),\n stroke: new Stroke({\n color: '#009BFF',\n width: 2,\n }),\n }),\n );\n return styles;\n };\n }\n\n getSimpleStyle(feature, _render) {\n let { cluster } = this._options;\n const render = { ..._render };\n if (\n render.type === 'Marker' &&\n (render?.style?.icon || (cluster && render?.style?.image))\n ) {\n render.style = {\n ...render.style,\n ...this.getMarkerOptions(feature, render.style),\n };\n }\n\n return render;\n }\n\n getMultipleStyle(feature, _render) {\n const render = { ..._render };\n\n if (render?.render?.length) {\n render.render = render.render.map(v => this.getSimpleStyle(feature, v));\n }\n\n return render;\n }\n\n getMarkerOptions(feature, style) {\n let icon = style?.icon || style;\n let image = style?.image;\n let color = style?.color || '#2491fc';\n let { cluster, point, label } = this._options;\n\n // 判断是否为自定义函数渲染\n let isFun = isFunction(style);\n let data = {};\n if (isFun) {\n data = style(feature) || {};\n icon = data?.style?.icon || data?.icon || icon;\n color = data?.style?.color || data?.color || color;\n image = data?.style?.image || data?.image || image;\n }\n\n const size = feature.get('features')?.length || 0;\n\n let P = {\n marker: {\n // 图标\n icon,\n image,\n },\n point: {\n // 点位\n icon,\n type: 'PointIcon',\n },\n marker_cluster: {\n // 聚合图标\n icon,\n color: size > 1 ? '' : color,\n iconOptions:\n size > 1\n ? {\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n ...(cluster?.iconOptions || {}),\n }\n : {},\n ...(size > 1 ? cluster?.style : cluster?.commonStyle),\n },\n point_cluster: {\n // 聚合点位\n icon,\n type: 'PointIcon',\n iconOptions:\n size > 1\n ? {\n text: size,\n }\n : {},\n ...(size > 1 && cluster?.style),\n },\n };\n\n let type = point ? 'point' : 'marker';\n\n if (cluster) {\n if (isObject(cluster)) {\n if (cluster.show) {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n } else {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n }\n\n let _style = P[type];\n\n if (label) {\n if (Object.keys(data)?.includes('customText')) {\n _style.text = data?.customText;\n } else {\n _style.text = this.getLabelStyle(feature, color);\n }\n }\n\n if (feature.isCluster && size > 1 && type === 'marker_cluster') {\n _style.text = this.getClusterTextStyle(size);\n }\n\n return _style;\n }\n\n setClusterSource(cluster) {\n let _this = this;\n cluster = isObject(cluster) ? cluster : { show: cluster };\n let { show, minDistance, distance, group } = cluster;\n let source = new VectorSource({\n features: this._features?.filter(v => !v.hasOwnProperty('show') || v.show),\n });\n if (show) {\n group = group || this.group;\n let clusterSource = new Cluster({\n distance: distance || 100,\n minDistance: minDistance || 50,\n source,\n group,\n clusterChange: features => {\n this.setAlarmBgByFeatures(features);\n },\n createCluster: (point, features) => {\n let feature = new Feature({\n geometry: point,\n features: features.map(v => {\n v.layerKey = _this.key;\n return v;\n }),\n });\n\n if (group?.length) {\n let style;\n const f = features[0];\n const size = features.length;\n group?.map(v => {\n if (v?.filter?.(f.values_)) {\n style = v.style || style;\n }\n });\n\n let markerStyle = { ...style.style };\n\n if (size > 1) {\n if (style?.clusterStyle) {\n markerStyle = { ...style.clusterStyle };\n }\n\n const { numberStyle, iconOptions, ...otherStyle } = markerStyle;\n markerStyle = {\n ...otherStyle,\n text: this.getClusterTextStyle(\n markerStyle?.image ? size : ' ',\n numberStyle,\n ),\n iconOptions: {\n hideFooter: true,\n info: { text: size, fontSize: 18 },\n ...(iconOptions || cluster?.iconOptions || {}),\n },\n };\n }\n\n let _style = new renderer.Marker(markerStyle);\n feature.setStyle(_style);\n }\n\n // 增加聚合点位标识\n feature.isCluster = true;\n\n if (features.length === 1) {\n feature.setProperties(features[0].values_);\n }\n\n return feature;\n },\n ...cluster,\n });\n\n this.setSource(clusterSource);\n } else {\n this.setSource(source);\n }\n }\n\n // 清除报警背景\n clearAlarmBg() {\n if (this.map && this.overlays?.length) {\n this.overlays.map(overlay => this.map.removeOverlay(overlay));\n this.overlays = null;\n }\n }\n\n // 设置报警背景\n setAlarmBgByFeatures(features) {\n this.clearAlarmBg();\n this.overlays = [];\n\n if (this.map && this.alarmBg && features?.length) {\n features.map(feature => {\n let _feature = feature;\n\n const cluster = feature.get('features');\n if (cluster) {\n _feature = cluster.length < 2 ? cluster[0] : null;\n }\n\n if (_feature && (_feature.hasOwnProperty('show') ? _feature.show : true)) {\n let overlay = addOverlay(_feature, this.map, this.alarmBg);\n if (overlay) {\n this.overlays.push(overlay);\n }\n }\n });\n }\n }\n\n refresh() {\n getDataByHttpByParams({\n url: this.url,\n params: this.params,\n method: this.method,\n afterGetData: this.afterGetData,\n field: this.dataField,\n }).then(features => {\n if (features) {\n let new_features = features;\n this._features = new_features;\n\n let newFeatures = [];\n new_features.map(v => {\n let f = this.getFeatureByFieldValue('id', v.values_.id);\n if (f) {\n f.values_ = v.values_;\n } else {\n newFeatures.push(v);\n }\n });\n\n if (newFeatures.length) {\n this.getSource().addFeatures(newFeatures);\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n\n this.getSource().changed();\n }\n });\n }\n\n loadData(data) {\n this.getSource().clear();\n let features = createGeoJson(data);\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\n this.getSource().clear();\n this._features = [];\n\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n\n getDataByHttpByParams({\n url,\n params,\n method,\n afterGetData,\n field: this.dataField,\n }).then(features => {\n this.getSource().clear();\n this._features = [];\n\n if (features?.length) {\n this._features = features;\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n });\n }\n\n loadFeatures(features) {\n this.getSource().clear();\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n getFeatures() {\n const source = this.getSource().source || this.getSource();\n return source.getFeatures();\n }\n\n getFeatureByFieldValue(field, value) {\n return this.getFeatures().find(v => v.values_[field] === value);\n }\n\n getFeaturesByFieldValueOpera({ field, value, operation = '===', features, filter }) {\n return new Promise((resolve, reject) => {\n let _features = features || this.getFeatures();\n if (filter) {\n _features = _features.filter(feature => filter(feature.values_));\n }\n\n let result = _features;\n\n if (operation && value !== undefined) {\n if (['>', '>=', '<', '<=', '===', '!=='].includes(operation)) {\n try {\n // 通过动态创建方法自动传入操作符\n const fun = new Function(\n 'features',\n 'field',\n 'value',\n `return features.filter(v => v.values_[field] ${operation} value)`,\n );\n result = fun(_features, field, value);\n } catch (err) {\n reject(err);\n }\n } else if (operation === 'like') {\n // 包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n } else if (operation === 'notLike') {\n // 不包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) === -1);\n } else {\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n }\n }\n\n resolve(result);\n });\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 设置过滤条件\n setGroup(group) {\n if (group?.length) {\n if (this._features?.length) {\n this._features.map(feature => {\n let show = true;\n group.map(v => {\n v.filter = stringToFun(v.filter);\n if (v?.filter?.(feature.values_)) {\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n });\n }\n this.group = group;\n this.setVisibleByGroup();\n\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n } else {\n this.setStyle(this.getStyleByMode());\n }\n\n this.setAlarmBgByFeatures(this._features);\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByGroup() {\n const group = this.group;\n if (group?.length) {\n let visible = false;\n\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n });\n\n this.setVisible(visible);\n }\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.setVisible(visible); // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.onChange();\n }\n\n // 判断是否完成过初始化,没有的话就加载一波数据\n if (!this.inited) {\n this.init();\n }\n\n if (!visible) {\n this.clearAlarmBg();\n } else {\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n }\n\n clearMoveEnd() {\n const map = this.map;\n if (map && this.moveEnd) {\n map.un('moveend', this.moveEnd);\n this.moveEnd = null;\n }\n }\n\n destroy() {\n this.clearMoveEnd();\n this.clearAlarmBg();\n }\n}\n\nexport default FeatureLayer;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FeatureLayer.js","names":["_layer","require","_ol","_source","_renderer","_interopRequireDefault","_style6","_isFunction","_createFeatureCollection","_isObject","_encryptParams","_stringToFun","_convertCamelToCSS","_MyCluster","_Marker","_excluded","_excluded2","_excluded3","_excluded4","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","_typeof","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","_get","Reflect","get","bind","property","receiver","base","_superPropBase","desc","value","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","set","_set","isStrict","s","hasOwnProperty","getPrototypeOf","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","addOverlay","feature","map","alarmBg","itemVal","find","v","values_","image","style","dom","document","createElement","src","className","cssText","overlay","Overlay","element","positioning","stopEvent","setPosition","getGeometry","getCoordinates","FeatureLayer","_Vector","_super","options","_thisSuper","_this2","url","params","data","dataField","features","sourceOptions","label","labelField","point","cluster","template","autoRefresh","method","layerControl","show","group","iconOptions","afterGetData","legend","viewOnly","encrypt","valueField","tipTemplate","cancelPopup","other","VectorSource","defaultShow","f","stringToFun","size","_ref","color","background","backgroundStroke","backgroundStrokeWidth","otherVal","text","font","fill","Fill","padding","justify","textAlign","textBaseline","offsetY","offsetX","backgroundFill","Stroke","width","Text","_options","isCluster","_feature$get","distance","inited","item","convertCamelToCSS","_features","init","loadUrlData","loadData","setVisible","val","setStyle","getStyleByMode","setClusterMode","setShow","_this3","_ref2","isObject","setClusterSource","destroy","oldZoom","getView","getZoom","moveEnd","on","zoom","_this3$_options$clust","zoomThreshold","getCustomClusterStyle","clusterStyle","_feature$get2","type","iconSrc","_clusterStyle$scale","scale","renderer","Marker","getImgUrl","hideFooter","info","fontSize","getClusterTextStyle","anchor","_this4","resolution","_feature$get3","_this4$group","_this4$_options","otherStyle","_v$filter","styles","isFunction","_styles","getMarkerOptions","Style","_style","getSimpleStyle","Simple","_style3","mode","render","getMultipleStyle","UniqueValue","ClassBreaks","Circle","radius","stroke","_render","_render$style","_render$style2","icon","_render$render","_this5","_feature$get4","_this$_options","isFun","_data","_data$style","_data2","_data3","_data3$style","_data4","_data5","_data5$style","_data6","P","marker","marker_cluster","commonStyle","point_cluster","_Object$keys","includes","_data7","customText","getLabelStyle","_this$_features","_this6","_this","_cluster","minDistance","clusterSource","Cluster","clusterChange","setAlarmBgByFeatures","createCluster","_group","Feature","geometry","layerKey","_group2","_groupItem","_groupItem$clusterSty","groupItem","_v$filter2","markerStyle","_style4","_markerStyle2","_cluster2","_markerStyle","numberStyle","setProperties","setSource","clearAlarmBg","_this$overlays","_this7","overlays","removeOverlay","_this8","_feature","refresh","_this9","getDataByHttpByParams","field","then","new_features","newFeatures","getFeatureByFieldValue","id","getSource","addFeatures","getFeatures","changed","clear","createGeoJson","_this10","encryptParams","loadFeatures","getFeaturesByFieldValueOpera","_ref3","_this11","_ref3$operation","operation","Promise","resolve","reject","fun","Function","concat","err","_v$values_$field","_v$values_$field2","_v$values_$field3","getMap","setGroup","_this$_features2","_v$filter3","setVisibleByGroup","visible","layers","onChange","clearMoveEnd","un","Vector","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import { Vector } from 'ol/layer';\nimport { Feature, Overlay } from 'ol';\nimport { Vector as VectorSource } from 'ol/source';\nimport renderer from '../renderer';\nimport { Fill, Style, Text, Stroke, Circle } from 'ol/style';\nimport isFunction from '../_util/isFunction';\nimport { getDataByHttpByParams, createGeoJson } from './createFeatureCollection';\nimport isObject from '../_util/isObject';\nimport encryptParams from '../_util/encryptParams';\nimport stringToFun from '../_util/stringToFun';\nimport convertCamelToCSS from '../convertCamelToCSS';\nimport Cluster from './MyCluster';\nimport {getImgUrl} from \"../marker/Marker\";\n\nconst addOverlay = (feature, map, alarmBg) => {\n if (alarmBg) {\n let itemVal = alarmBg.find(v => v.filter(feature.values_));\n if (itemVal) {\n let { image, style } = itemVal;\n let dom;\n if (image) {\n dom = document.createElement('img');\n dom.src = image;\n } else {\n dom = document.createElement('div');\n dom.className = `ol-map-icon-alarm`;\n }\n\n if (style) {\n dom.style.cssText = style;\n }\n\n const overlay = new Overlay({\n element: dom,\n positioning: 'bottom-center',\n stopEvent: true,\n className: 'ol-overlay_container-stop_event',\n });\n\n map.addOverlay(overlay);\n\n overlay.setPosition(feature.getGeometry().getCoordinates());\n\n return overlay;\n }\n }\n};\n\nclass FeatureLayer extends Vector {\n constructor(options) {\n const {\n url,\n params,\n data,\n dataField,\n features,\n sourceOptions,\n key,\n name,\n label,\n labelField,\n point,\n cluster,\n template,\n autoRefresh,\n method,\n layerControl,\n show,\n style,\n group,\n iconOptions,\n afterGetData,\n legend,\n viewOnly,\n encrypt,\n valueField,\n map,\n tipTemplate,\n alarmBg,\n cancelPopup,\n ...other\n } = options;\n\n const props = {\n ...other,\n };\n props.source =\n props.source ||\n new VectorSource({\n features,\n ...sourceOptions,\n });\n\n let defaultShow = show;\n if (group?.length) {\n defaultShow = false;\n\n if (show) {\n group.map(f => {\n if (f.show) {\n defaultShow = true;\n }\n\n // 将字符函数转化为可执行的函数\n f.filter = stringToFun(f.filter);\n });\n }\n }\n\n super(props);\n super.show = show;\n // 参数\n this._options = options;\n\n // 地图\n this.map = map;\n\n // 接口地址\n this.url = url;\n\n // 接口地址请求类型\n this.method = method;\n\n // 接口查询参数\n this.params = params;\n\n // 图层标识\n this.key = key;\n\n // 图层名称\n this.name = name;\n\n // 标签\n this.label = label;\n\n // 标签字段\n this.labelField = labelField;\n\n // 聚合\n this.cluster = cluster;\n\n // 聚合距离\n this.distance = cluster?.distance || 80;\n\n // 海量点\n this.point = point;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 图层控制\n this.layerControl = layerControl;\n\n // 过滤\n this.group = group;\n\n // 处理获取的数据\n this.afterGetData = afterGetData;\n\n // 数据查询字段\n this.valueField = valueField;\n\n // 图例\n this.legend = legend;\n\n // 样式\n this.style = style;\n\n // 数据\n this.data = data;\n\n // 数据取值字段\n this.dataField = dataField || 'geometryInfo';\n\n // 仅展示\n this.viewOnly = viewOnly;\n\n // 是否初始化\n this.inited = false;\n\n // 加密\n this.encrypt = encrypt;\n\n // 气泡模板\n this.tipTemplate = tipTemplate;\n\n // 取消气泡\n this.cancelPopup = cancelPopup;\n\n // 报警背景\n if (alarmBg) {\n this.alarmBg = (Array.isArray(alarmBg) ? alarmBg : [alarmBg]).map(item => {\n let { filter, style } = item;\n filter = stringToFun(filter);\n if (style) {\n style = item.style && typeof item.style === 'object' ? style : { color: style };\n style = convertCamelToCSS(style);\n }\n return {\n ...item,\n filter,\n style,\n };\n });\n }\n\n // 临时数据\n this._features = [];\n\n // 默认是否展示\n if (defaultShow) {\n this.init();\n }\n }\n\n // 初始化数据\n init() {\n // 是否存在地址\n if (this.url) {\n // 执行\n this.loadUrlData(this.url, this.params, this.method);\n }\n\n // 直接加载数据\n if (this.data) {\n // 执行\n this.loadData(this.data);\n }\n\n this.inited = true;\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n set label(val) {\n this._options.label = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set point(val) {\n this._options.point = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set cluster(val) {\n this.setClusterMode(val);\n }\n\n setShow(value) {\n this.show = value;\n this.setVisible(value);\n }\n\n setClusterMode(val) {\n const {show} = isObject(val) ? val : { show: val };\n this.setClusterSource(val);\n this.setStyle(this.getStyleByMode());\n\n if (this.map && show) {\n const map = this.map;\n this.destroy();\n\n // 监听地图缩放大于阈值时取消聚合\n let oldZoom = map.getView().getZoom();\n this.moveEnd = map.on('moveend', () => {\n const zoom = map.getView().getZoom(); //获取当前地图的缩放级别\n if (oldZoom !== zoom) {\n oldZoom = zoom;\n if (zoom >= (this._options.cluster?.zoomThreshold || 14)) {\n this.setClusterSource();\n } else {\n this.setClusterSource(val);\n }\n }\n });\n }\n }\n\n getClusterTextStyle = (size, options) => {\n const { color, background, backgroundStroke, backgroundStrokeWidth, ...otherVal } =\n options && typeof options === 'object' ? options : {};\n const style = {\n text: String(size),\n font: '18px Calibri,sans-serif',\n fill: new Fill({\n color: color || '#fff',\n }),\n padding: [0, 0, 0, 0],\n justify: 'center',\n textAlign: 'center',\n textBaseline: 'middle',\n offsetY: -22,\n offsetX: 16,\n ...otherVal,\n };\n\n if (background) {\n style.backgroundFill = new Fill({\n color: background,\n });\n }\n\n if (backgroundStroke) {\n style.backgroundStroke = new Stroke({\n color: '#FFFFFF',\n width: backgroundStrokeWidth || 2,\n });\n }\n return new Text(style);\n };\n\n getLabelStyle = (feature, color) => {\n let { labelField } = this._options;\n\n // 判断是否是聚合点位\n if (feature.isCluster) {\n const size = feature.get('features')?.length || 0;\n if (size !== 1) {\n return;\n }\n }\n if (labelField) {\n return new Text({\n text: feature.values_[labelField] || '-',\n font: '12px Calibri,sans-serif',\n fill: new Fill({\n color,\n }),\n backgroundFill: new Fill({\n color: '#fff',\n }),\n backgroundStroke: new Stroke({\n color,\n width: 1,\n }),\n padding: [4, 2, 2, 4],\n justify: 'center',\n textBaseline: 'middle',\n offsetY: 12,\n });\n }\n };\n\n getCustomClusterStyle(feature, clusterStyle) {\n const {type, iconSrc, color, scale = 1, ...iconOptions} = clusterStyle;\n const size = feature.get('features')?.length || 0;\n\n return [\n new renderer.Marker({\n image: getImgUrl(type || 'CommonIcon', {\n color: color || '#2491fc',\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n }),\n text: this.getClusterTextStyle(size)\n }),\n new renderer.Marker({\n image: iconSrc,\n scale: scale || 1,\n anchor: [1.1, 1.25],\n ...iconOptions\n })\n ];\n }\n\n getStyleByMode() {\n return (feature, resolution) => {\n const size = feature.get('features')?.length || 0;\n let { style, cluster, otherStyle } = this._options;\n let show = true;\n\n this.group?.map(v => {\n if (v?.filter?.(feature.values_)) {\n style = v.style || style;\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n\n if (!show) {\n return null;\n }\n\n const styles = [];\n\n if (otherStyle) {\n if (isFunction(otherStyle)) {\n const _styles = otherStyle(feature, resolution);\n if (_styles) {\n if (Array.isArray(styles)) {\n styles.push(..._styles);\n } else {\n styles.push(_styles);\n }\n }\n }\n }\n\n if (size > 1 && cluster?.style.iconSrc) {\n return this.getCustomClusterStyle(feature, cluster.style)\n }\n if (style) {\n if (typeof style === 'string' || (isFunction(style) && cluster)) {\n styles.push(new renderer.Marker({ ...this.getMarkerOptions(feature, style) }));\n return styles;\n } else if (style instanceof Style) {\n // 判断是否为 ol Style\n styles.push(style);\n return styles;\n } else if (isFunction(style)) {\n // 判断是否为自定义函数渲染\n\n let _style = style(feature);\n if (_style?.type && _style?.style) {\n const options = this.getSimpleStyle(feature, _style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n styles.push(_style);\n return styles;\n } else if (isObject(style)) {\n let { mode } = style;\n if (mode) {\n if (mode === 'Simple') {\n const options = this.getSimpleStyle(feature, style.render);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n if (mode === 'UniqueValue') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.UniqueValue(feature, options));\n return styles;\n }\n\n if (mode === 'ClassBreaks') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.ClassBreaks(feature, options));\n return styles;\n }\n } else if (style.style) {\n const options = this.getSimpleStyle(feature, style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n }\n }\n styles.push(\n new Style({\n image: new Circle({\n radius: 4,\n fill: new Fill({\n color: 'rgba(0,155,255, 0.8)',\n }),\n }),\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.6)',\n }),\n stroke: new Stroke({\n color: '#009BFF',\n width: 2,\n }),\n }),\n );\n return styles;\n };\n }\n\n getSimpleStyle(feature, _render) {\n let { cluster } = this._options;\n const render = { ..._render };\n if (\n render.type === 'Marker' &&\n (render?.style?.icon || (cluster && render?.style?.image))\n ) {\n render.style = {\n ...render.style,\n ...this.getMarkerOptions(feature, render.style),\n };\n }\n\n return render;\n }\n\n getMultipleStyle(feature, _render) {\n const render = { ..._render };\n\n if (render?.render?.length) {\n render.render = render.render.map(v => this.getSimpleStyle(feature, v));\n }\n\n return render;\n }\n\n getMarkerOptions(feature, style) {\n let icon = style?.icon || style;\n let image = style?.image;\n let color = style?.color || '#2491fc';\n let { cluster, point, label } = this._options;\n\n // 判断是否为自定义函数渲染\n let isFun = isFunction(style);\n let data = {};\n if (isFun) {\n data = style(feature) || {};\n icon = data?.style?.icon || data?.icon || icon;\n color = data?.style?.color || data?.color || color;\n image = data?.style?.image || data?.image || image;\n }\n\n const size = feature.get('features')?.length || 0;\n\n let P = {\n marker: {\n // 图标\n icon,\n image,\n },\n point: {\n // 点位\n icon,\n type: 'PointIcon',\n },\n marker_cluster: {\n // 聚合图标\n icon,\n color: size > 1 ? '' : color,\n iconOptions:\n size > 1\n ? {\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n ...(cluster?.iconOptions || {}),\n }\n : {},\n ...(size > 1 ? cluster?.style : cluster?.commonStyle),\n },\n point_cluster: {\n // 聚合点位\n icon,\n type: 'PointIcon',\n iconOptions:\n size > 1\n ? {\n text: size,\n }\n : {},\n ...(size > 1 && cluster?.style),\n },\n };\n\n let type = point ? 'point' : 'marker';\n\n if (cluster) {\n if (isObject(cluster)) {\n if (cluster.show) {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n } else {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n }\n\n let _style = P[type];\n\n if (label) {\n if (Object.keys(data)?.includes('customText')) {\n _style.text = data?.customText;\n } else {\n _style.text = this.getLabelStyle(feature, color);\n }\n }\n\n if (feature.isCluster && size > 1 && type === 'marker_cluster') {\n _style.text = this.getClusterTextStyle(size);\n }\n\n return _style;\n }\n\n setClusterSource(cluster) {\n let _this = this;\n cluster = isObject(cluster) ? cluster : { show: cluster };\n let { show, minDistance, distance, group } = cluster;\n let source = new VectorSource({\n features: this._features?.filter(v => !v.hasOwnProperty('show') || v.show),\n });\n if (show) {\n group = group || this.group;\n let clusterSource = new Cluster({\n distance: distance || 100,\n minDistance: minDistance || 50,\n source,\n group,\n clusterChange: features => {\n this.setAlarmBgByFeatures(features);\n },\n createCluster: (point, features) => {\n let feature = new Feature({\n geometry: point,\n features: features.map(v => {\n v.layerKey = _this.key;\n return v;\n }),\n });\n\n if (group?.length) {\n let style, groupItem;\n const f = features[0];\n const size = features.length;\n group?.map(v => {\n if (v?.filter?.(f.values_)) {\n style = v.style || style;\n groupItem = v;\n }\n });\n\n let markerStyle = { ...style.style };\n\n if (size > 1 && groupItem?.clusterStyle?.iconSrc) {\n let _style = this.getCustomClusterStyle(feature, groupItem.clusterStyle);\n feature.setStyle(_style);\n } else {\n if (size > 1) {\n if (style?.clusterStyle) {\n markerStyle = { ...style.clusterStyle };\n }\n\n const { numberStyle, iconOptions, ...otherStyle } = markerStyle;\n markerStyle = {\n ...otherStyle,\n text: this.getClusterTextStyle(\n markerStyle?.image ? size : ' ',\n numberStyle,\n ),\n iconOptions: {\n hideFooter: true,\n info: { text: size, fontSize: 18 },\n ...(iconOptions || cluster?.iconOptions || {}),\n },\n };\n }\n let _style = new renderer.Marker(markerStyle);\n feature.setStyle(_style);\n }\n }\n\n // 增加聚合点位标识\n feature.isCluster = true;\n\n if (features.length === 1) {\n feature.setProperties(features[0].values_);\n }\n\n return feature;\n },\n ...cluster,\n });\n\n this.setSource(clusterSource);\n } else {\n this.setSource(source);\n }\n }\n\n // 清除报警背景\n clearAlarmBg() {\n if (this.map && this.overlays?.length) {\n this.overlays.map(overlay => this.map.removeOverlay(overlay));\n this.overlays = null;\n }\n }\n\n // 设置报警背景\n setAlarmBgByFeatures(features) {\n this.clearAlarmBg();\n this.overlays = [];\n\n if (this.map && this.alarmBg && features?.length) {\n features.map(feature => {\n let _feature = feature;\n\n const cluster = feature.get('features');\n if (cluster) {\n _feature = cluster.length < 2 ? cluster[0] : null;\n }\n\n if (_feature && (_feature.hasOwnProperty('show') ? _feature.show : true)) {\n let overlay = addOverlay(_feature, this.map, this.alarmBg);\n if (overlay) {\n this.overlays.push(overlay);\n }\n }\n });\n }\n }\n\n refresh() {\n getDataByHttpByParams({\n url: this.url,\n params: this.params,\n method: this.method,\n afterGetData: this.afterGetData,\n field: this.dataField,\n }).then(features => {\n if (features) {\n let new_features = features;\n this._features = new_features;\n\n let newFeatures = [];\n new_features.map(v => {\n let f = this.getFeatureByFieldValue('id', v.values_.id);\n if (f) {\n f.values_ = v.values_;\n } else {\n newFeatures.push(v);\n }\n });\n\n if (newFeatures.length) {\n this.getSource().addFeatures(newFeatures);\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n\n this.getSource().changed();\n }\n });\n }\n\n loadData(data) {\n this.getSource().clear();\n let features = createGeoJson(data);\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\n this.getSource().clear();\n this._features = [];\n\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n\n getDataByHttpByParams({\n url,\n params,\n method,\n afterGetData,\n field: this.dataField,\n }).then(features => {\n this.getSource().clear();\n this._features = [];\n\n if (features?.length) {\n this._features = features;\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n });\n }\n\n loadFeatures(features) {\n this.getSource().clear();\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n getFeatures() {\n const source = this.getSource().source || this.getSource();\n return source.getFeatures();\n }\n\n getFeatureByFieldValue(field, value) {\n return this.getFeatures().find(v => v.values_[field] === value);\n }\n\n getFeaturesByFieldValueOpera({ field, value, operation = '===', features, filter }) {\n return new Promise((resolve, reject) => {\n let _features = features || this.getFeatures();\n if (filter) {\n _features = _features.filter(feature => filter(feature.values_));\n }\n\n let result = _features;\n\n if (operation && value !== undefined) {\n if (['>', '>=', '<', '<=', '===', '!=='].includes(operation)) {\n try {\n // 通过动态创建方法自动传入操作符\n const fun = new Function(\n 'features',\n 'field',\n 'value',\n `return features.filter(v => v.values_[field] ${operation} value)`,\n );\n result = fun(_features, field, value);\n } catch (err) {\n reject(err);\n }\n } else if (operation === 'like') {\n // 包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n } else if (operation === 'notLike') {\n // 不包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) === -1);\n } else {\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n }\n }\n\n resolve(result);\n });\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 设置过滤条件\n setGroup(group) {\n if (group?.length) {\n if (this._features?.length) {\n this._features.map(feature => {\n let show = true;\n group.map(v => {\n v.filter = stringToFun(v.filter);\n if (v?.filter?.(feature.values_)) {\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n });\n }\n this.group = group;\n this.setVisibleByGroup();\n\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n } else {\n this.setStyle(this.getStyleByMode());\n }\n\n this.setAlarmBgByFeatures(this._features);\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByGroup() {\n const group = this.group;\n if (group?.length) {\n let visible = false;\n\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n });\n\n this.setVisible(visible);\n }\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.setVisible(visible); // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.onChange();\n }\n\n // 判断是否完成过初始化,没有的话就加载一波数据\n if (!this.inited) {\n this.init();\n }\n\n if (!visible) {\n this.clearAlarmBg();\n } else {\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n }\n\n clearMoveEnd() {\n const map = this.map;\n if (map && this.moveEnd) {\n map.un('moveend', this.moveEnd);\n this.moveEnd = null;\n }\n }\n\n destroy() {\n this.clearMoveEnd();\n this.clearAlarmBg();\n }\n}\n\nexport default FeatureLayer;\n"],"mappings":"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"}
|
|
@@ -24,13 +24,14 @@ var bd09Mercator = new _proj.Projection({
|
|
|
24
24
|
// 覆盖默认的转换方法
|
|
25
25
|
(0, _proj.addCoordinateTransforms)('EPSG:4326', bd09Mercator, _projzh["default"].ll2bmerc, _projzh["default"].bmerc2ll);
|
|
26
26
|
(0, _proj.addCoordinateTransforms)('EPSG:3857', bd09Mercator, _projzh["default"].smerc2bmerc, _projzh["default"].bmerc2smerc);
|
|
27
|
-
var getSource = function getSource() {
|
|
27
|
+
var getSource = function getSource(options) {
|
|
28
|
+
var qt = options.qt;
|
|
28
29
|
var bmercResolutions = new Array(19);
|
|
29
30
|
for (var i = 0; i < 19; ++i) {
|
|
30
31
|
bmercResolutions[i] = Math.pow(2, 18 - i);
|
|
31
32
|
}
|
|
32
33
|
var urls = [0, 1, 2, 3].map(function (sub) {
|
|
33
|
-
return
|
|
34
|
+
return "//maponline".concat(sub, ".bdimg.com/tile/?qt=").concat(qt || 'vtile', "&x={x}&y={y}&z={z}&styles=pl&scaler=2&udt=20210506&from=jsapi3_0");
|
|
34
35
|
});
|
|
35
36
|
return new _source.XYZ({
|
|
36
37
|
projection: 'BD-09',
|
|
@@ -60,10 +61,10 @@ var getSource = function getSource() {
|
|
|
60
61
|
};
|
|
61
62
|
|
|
62
63
|
// 获取百度底图
|
|
63
|
-
var getLayer = function getLayer(
|
|
64
|
-
var dark =
|
|
64
|
+
var getLayer = function getLayer(options) {
|
|
65
|
+
var dark = options.dark;
|
|
65
66
|
var mapLayer = new _layer.Tile({
|
|
66
|
-
source: getSource(),
|
|
67
|
+
source: getSource(options),
|
|
67
68
|
className: dark && 'ol-map-dark',
|
|
68
69
|
zIndex: 0
|
|
69
70
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaiduImageryProvider.js","names":["_layer","require","_proj","_projzh","_interopRequireDefault","_source","_TileGrid","obj","__esModule","bd09Mercator","Projection","code","extent","units","addProjection","addCoordinateTransforms","projzh","ll2bmerc","bmerc2ll","smerc2bmerc","bmerc2smerc","getSource","bmercResolutions","Array","i","Math","pow","urls","map","sub","XYZ","projection","maxZoom","crossOrigin","tileUrlFunction","tileCoord","x","y","z","hash","index","length","replace","tilePixelRatio","tileGrid","TileGrid","resolutions","origin","getLayer","
|
|
1
|
+
{"version":3,"file":"BaiduImageryProvider.js","names":["_layer","require","_proj","_projzh","_interopRequireDefault","_source","_TileGrid","obj","__esModule","bd09Mercator","Projection","code","extent","units","addProjection","addCoordinateTransforms","projzh","ll2bmerc","bmerc2ll","smerc2bmerc","bmerc2smerc","getSource","options","qt","bmercResolutions","Array","i","Math","pow","urls","map","sub","concat","XYZ","projection","maxZoom","crossOrigin","tileUrlFunction","tileCoord","x","y","z","hash","index","length","replace","tilePixelRatio","tileGrid","TileGrid","resolutions","origin","getLayer","dark","mapLayer","TileLayer","source","className","zIndex","transform","coordinate","transformProj","_default","mercator","exports"],"sources":["map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js"],"sourcesContent":["import { Tile as TileLayer } from 'ol/layer';\n// 导入proj控件,使用其方法注入gcj02坐标系\nimport {\n Projection,\n addProjection,\n addCoordinateTransforms,\n transform as transformProj,\n} from 'ol/proj';\nimport projzh from '../../../../_util/projzh';\nimport { XYZ } from 'ol/source';\nimport TileGrid from 'ol/tilegrid/TileGrid';\n\nlet bd09Mercator = new Projection({\n code: 'BD-09',\n extent: [-20037726.37, -12474104.17, 20037726.37, 12474104.17],\n units: 'm',\n});\n\n// 将BD09墨卡托投影坐标系注册进OpenLayers\naddProjection(bd09Mercator);\n\n// 覆盖默认的转换方法\naddCoordinateTransforms('EPSG:4326', bd09Mercator, projzh.ll2bmerc, projzh.bmerc2ll);\naddCoordinateTransforms('EPSG:3857', bd09Mercator, projzh.smerc2bmerc, projzh.bmerc2smerc);\n\nconst getSource = (options) => {\n const {qt} = options;\n let bmercResolutions = new Array(19);\n for (let i = 0; i < 19; ++i) {\n bmercResolutions[i] = Math.pow(2, 18 - i);\n }\n let urls = [0, 1, 2, 3].map(function (sub) {\n return (\n `//maponline${sub}.bdimg.com/tile/?qt=${qt || 'vtile'}&x={x}&y={y}&z={z}&styles=pl&scaler=2&udt=20210506&from=jsapi3_0`\n );\n });\n\n return new XYZ({\n projection: 'BD-09',\n maxZoom: 18,\n crossOrigin: 'anonymous',\n tileUrlFunction: function (tileCoord) {\n let x = tileCoord[1];\n let y = -tileCoord[2] - 1;\n let z = tileCoord[0];\n let hash = (x << z) + y;\n let index = hash % urls.length;\n index = index < 0 ? index + urls.length : index;\n if (x < 0) {\n x = 'M' + -x;\n }\n if (y < 0) {\n y = 'M' + -y;\n }\n return urls[index]\n .replace('{x}', x)\n .replace('{y}', y)\n .replace('{z}', z);\n },\n tilePixelRatio: 2,\n tileGrid: new TileGrid({\n resolutions: bmercResolutions,\n origin: [0, 0],\n }),\n });\n};\n\n// 获取百度底图\nconst getLayer = (options) => {\n const { dark } = options;\n let mapLayer = new TileLayer({\n source: getSource(options),\n className: dark && 'ol-map-dark',\n zIndex: 0\n });\n\n return [mapLayer];\n};\n\n// 转换方法\nconst transform = coordinate => {\n return transformProj(coordinate, 'EPSG:4326', 'BD-09');\n};\n\nexport default {\n mercator: bd09Mercator,\n transform,\n getSource,\n getLayer,\n};\n"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ var _AmapImageryProvider = _interopRequireDefault(require("./imagery/amap/AmapIm
|
|
|
8
8
|
var _BaiduImageryProvider = _interopRequireDefault(require("./imagery/baidu/BaiduImageryProvider"));
|
|
9
9
|
var _TdtImageryProvider = _interopRequireDefault(require("./imagery/tdt/TdtImageryProvider"));
|
|
10
10
|
var _GeoQImageryProvider = _interopRequireDefault(require("./imagery/geoq/GeoQImageryProvider"));
|
|
11
|
+
var _excluded = ["mapStyle", "dark", "tk", "baseMapStyle"];
|
|
11
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
13
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
13
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -15,6 +16,8 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
|
15
16
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
16
17
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
17
18
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
19
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
20
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
18
21
|
var Imagery = {
|
|
19
22
|
AmapImageryProvider: _AmapImageryProvider["default"],
|
|
20
23
|
BaiduImageryProvider: _BaiduImageryProvider["default"],
|
|
@@ -22,11 +25,12 @@ var Imagery = {
|
|
|
22
25
|
GeoQImageryProvider: _GeoQImageryProvider["default"]
|
|
23
26
|
};
|
|
24
27
|
exports.Imagery = Imagery;
|
|
25
|
-
var _default = function _default(
|
|
26
|
-
var mapStyle =
|
|
27
|
-
dark =
|
|
28
|
-
tk =
|
|
29
|
-
baseMapStyle =
|
|
28
|
+
var _default = function _default(options) {
|
|
29
|
+
var mapStyle = options.mapStyle,
|
|
30
|
+
dark = options.dark,
|
|
31
|
+
tk = options.tk,
|
|
32
|
+
baseMapStyle = options.baseMapStyle,
|
|
33
|
+
otherOptions = _objectWithoutProperties(options, _excluded);
|
|
30
34
|
var newMapStyle = mapStyle || 'vec';
|
|
31
35
|
var value = baseMapStyle || 'TdtImageryProvider';
|
|
32
36
|
if (baseMapStyle && _typeof(baseMapStyle) === 'object') {
|
|
@@ -34,11 +38,11 @@ var _default = function _default(_ref) {
|
|
|
34
38
|
value = (baseMapStyle === null || baseMapStyle === void 0 ? void 0 : baseMapStyle.imageryProvider) || 'TdtImageryProvider';
|
|
35
39
|
}
|
|
36
40
|
var ImageryProvider = Imagery[value];
|
|
37
|
-
return ImageryProvider.getLayer(_objectSpread({
|
|
41
|
+
return ImageryProvider.getLayer(_objectSpread(_objectSpread({
|
|
38
42
|
tk: tk,
|
|
39
43
|
dark: dark,
|
|
40
44
|
mapStyle: newMapStyle
|
|
41
|
-
}, baseMapStyle && _typeof(baseMapStyle) === 'object' ? baseMapStyle : {}));
|
|
45
|
+
}, otherOptions), baseMapStyle && _typeof(baseMapStyle) === 'object' ? baseMapStyle : {}));
|
|
42
46
|
};
|
|
43
47
|
exports["default"] = _default;
|
|
44
48
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_AmapImageryProvider","_interopRequireDefault","require","_BaiduImageryProvider","_TdtImageryProvider","_GeoQImageryProvider","obj","__esModule","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","iterator","constructor","prototype","Imagery","AmapImageryProvider","BaiduImageryProvider","TdtImageryProvider","GeoQImageryProvider","exports","_default","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_AmapImageryProvider","_interopRequireDefault","require","_BaiduImageryProvider","_TdtImageryProvider","_GeoQImageryProvider","_excluded","obj","__esModule","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","iterator","constructor","prototype","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Imagery","AmapImageryProvider","BaiduImageryProvider","TdtImageryProvider","GeoQImageryProvider","exports","_default","options","mapStyle","dark","tk","baseMapStyle","otherOptions","newMapStyle","style","imageryProvider","ImageryProvider","getLayer"],"sources":["map/getBaseLayers/index.js"],"sourcesContent":["import AmapImageryProvider from './imagery/amap/AmapImageryProvider';\nimport BaiduImageryProvider from './imagery/baidu/BaiduImageryProvider';\nimport TdtImageryProvider from './imagery/tdt/TdtImageryProvider';\nimport GeoQImageryProvider from './imagery/geoq/GeoQImageryProvider';\n\nexport const Imagery = {\n AmapImageryProvider,\n BaiduImageryProvider,\n TdtImageryProvider,\n GeoQImageryProvider,\n};\n\nexport default (options) => {\n const { mapStyle, dark, tk, baseMapStyle, ...otherOptions } = options;\n let newMapStyle = mapStyle || 'vec';\n let value = baseMapStyle || 'TdtImageryProvider';\n\n if (baseMapStyle && typeof baseMapStyle === 'object') {\n newMapStyle = baseMapStyle?.style || mapStyle || 'vec' ;\n value = baseMapStyle?.imageryProvider || 'TdtImageryProvider';\n }\n\n const ImageryProvider = Imagery[value];\n\n return ImageryProvider.getLayer({\n tk,\n dark,\n mapStyle: newMapStyle,\n ...otherOptions,\n ...((baseMapStyle && typeof baseMapStyle === 'object') ? baseMapStyle : {})\n });\n};\n"],"mappings":"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"}
|
package/lib/map/index.js
CHANGED
|
@@ -36,6 +36,7 @@ require("ol/ol.css");
|
|
|
36
36
|
require("./style");
|
|
37
37
|
var _search = require("../_util/search");
|
|
38
38
|
var _lodash = require("lodash");
|
|
39
|
+
var _excluded = ["minZoom", "maxZoom", "defaultZoomLevel", "longitude", "latitude"];
|
|
39
40
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
40
41
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
41
42
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -49,6 +50,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
49
50
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
50
51
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
51
52
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
53
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
54
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
52
55
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
53
56
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
54
57
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
@@ -138,7 +141,7 @@ function Map(props) {
|
|
|
138
141
|
var initMap = /*#__PURE__*/function () {
|
|
139
142
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
|
140
143
|
var _baseLayerRef$current;
|
|
141
|
-
var defaultMapInfo, minZoom, maxZoom, defaultZoomLevel, longitude, latitude, viewDefault, map, baseLayerParams, _baseLayerRef$current2, registerMapEvent, registerEvent, hoverFeature;
|
|
144
|
+
var defaultMapInfo, minZoom, maxZoom, defaultZoomLevel, longitude, latitude, otherDefaultMapInfo, viewDefault, map, baseLayerParams, _baseLayerRef$current2, registerMapEvent, registerEvent, hoverFeature;
|
|
142
145
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
143
146
|
while (1) switch (_context3.prev = _context3.next) {
|
|
144
147
|
case 0:
|
|
@@ -161,7 +164,7 @@ function Map(props) {
|
|
|
161
164
|
}
|
|
162
165
|
};
|
|
163
166
|
defaultMapInfo = (0, _getDefaultMapInfo["default"])();
|
|
164
|
-
minZoom = defaultMapInfo.minZoom, maxZoom = defaultMapInfo.maxZoom, defaultZoomLevel = defaultMapInfo.defaultZoomLevel, longitude = defaultMapInfo.longitude, latitude = defaultMapInfo.latitude; // 全屏
|
|
167
|
+
minZoom = defaultMapInfo.minZoom, maxZoom = defaultMapInfo.maxZoom, defaultZoomLevel = defaultMapInfo.defaultZoomLevel, longitude = defaultMapInfo.longitude, latitude = defaultMapInfo.latitude, otherDefaultMapInfo = _objectWithoutProperties(defaultMapInfo, _excluded); // 全屏
|
|
165
168
|
viewDefault = {
|
|
166
169
|
center: center || longitude && latitude && [longitude, latitude] || [116.397228, 30.9096],
|
|
167
170
|
zoom: zoom || defaultZoomLevel && Number(defaultZoomLevel) || 4,
|
|
@@ -185,12 +188,12 @@ function Map(props) {
|
|
|
185
188
|
smoothResolutionConstraint: false
|
|
186
189
|
}); // 统一加密啊配置
|
|
187
190
|
map.encrypt = encrypt;
|
|
188
|
-
baseLayerParams = {
|
|
191
|
+
baseLayerParams = _objectSpread(_objectSpread({}, otherDefaultMapInfo), {}, {
|
|
189
192
|
mapStyle: mapStyle || defaultMapInfo.mapStyle || 'vec',
|
|
190
193
|
baseMapStyle: baseMapStyle || defaultMapInfo.baseMapStyle || 'TdtImageryProvider',
|
|
191
194
|
dark: dark || defaultMapInfo.dark,
|
|
192
195
|
tk: tk || defaultMapInfo.tk
|
|
193
|
-
};
|
|
196
|
+
});
|
|
194
197
|
if (customBaseLayers) {
|
|
195
198
|
baseLayerRef.current = _toConsumableArray(customBaseLayers(baseLayerParams));
|
|
196
199
|
} else {
|
package/lib/map/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_zh_CN","_interopRequireDefault","_propTypes","_ol","_layer","_source","_control","_util","_classnames","_getDefaultMapInfo","_Popup","_getBaseLayers","_TdtImageryProvider","_HighLayer","_Search","_events","_layer2","_createFeatureCollection","_FeatureLayer","_ImageLayer","_ImageTileLayer","_ahooks","_provider","_Layers","_Analysis","_WmsLayer","_search","_lodash","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_regeneratorRuntime","exports","Op","hasOwn","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","_catch","thrown","delegateYield","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","apply","_objectSpread","target","arguments","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","String","input","hint","prim","toPrimitive","res","Number","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","Map","props","_props$width","width","_props$height","height","children","center","dark","style","zoom","createdMap","mapStyle","baseMapStyle","tk","onCloseTemplateBefore","onZoom","customBaseLayers","positionStyle","_props$autoView","autoView","_props$closePopupAuto","closePopupAutoView","hidePopupTable","fitViewMaxZoom","encrypt","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","setModal","_useState5","_useState6","tipVis","setTipVis","_useState7","_useState8","tip","setTip","_useState9","_useState10","pointTip","setPointTip","mapRef","useRef","timerRef","mapDomRef","highLayerRef","popupRef","timeRef","baseLayerRef","useEffect","initMap","window","removeEventListener","handleResize","current","destroy","setInterval","layers","getLayers","getArray","map","v","autoRefresh","refresh","clearInterval","useUpdateEffect","setMapStyle","_ref","_callee3","_baseLayerRef$current","defaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","baseLayerParams","_baseLayerRef$current2","registerMapEvent","registerEvent","hoverFeature","_callee3$","_context3","_registerEvent","eventTarget","feature","event","_feature$eventTarget","properties","getProperties","layer","getLayerByFeature","_registerMapEvent","e","getDefaultMapInfo","OlMap","controls","defaultControls","extend","pixelRatio","view","View","projection","constrainResolution","smoothResolutionConstraint","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","_mapStyle","_map$getLayerByKey","_map$getLayerByKey2","_TdtImageryProvider$g","TdtImageryProvider","getSource","_TdtImageryProvider$g2","tileLayerSource","markLayerSource","getLayerByKey","setSource","HighLayer","highlightLayer","changeBaseLayer","_baseLayerRef$current3","_baseLayerRef$current4","removeLayer","setHighlightFeature","addHighlightFeature","clearHighlightFeature","clearFeatures","getAllLayers","find","getWmsVisibleLayers","allLayers","includes","Image","ImageTileLayer","ImageLayer","WmsLayer","getWfsVisibleLayers","VectorLayer","getVisibleLayersByKeys","_feature$values_","_feature$values_2","hasFeature","layerKey","values_","getMapFeatureInfoByText","text","poiSearch","params","getLayerHasViewOnlyByFeature","viewOnly","showTip","content","hideTip","showPointTip","hidePointTip","showModal","hideModal","showTemplateByFilter","_ref2","_callee","field","options","_callee$","_context","show","getFeatureByFieldValue","features","showTemplate","_x2","_x3","_x4","_x5","_popupRef$current","_popupRef$current$sho","hideTemplate","_popupRef$current2","_popupRef$current2$hi","setLastView","_popupRef$current3","_popupRef$current3$se","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","getViewOptions","getView","_view$getCenter","getCenter","_view$getCenter2","x","y","getZoom","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","f","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","fit","padding","duration","animate","fitViewByOptions","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","tipTemplate","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features2","_features2$","_features","_callee2$","_context2","_clickObject","isHighLight","getWMSFeatureInfoByLayers","template","_x6","clearTimeout","setTimeout","addEventListener","updateSize","onMouseMove","dom","document","getElementById","left","nativeEvent","offsetX","top","offsetY","rightBound","getViewport","clientWidth","getBoundingClientRect","topBound","clientHeight","concat","createElement","ConfigProvider","locale","zhCN","background","className","classnames","ref","onMouseOver","onMouseOut","id","onPopupClick","_default","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { ConfigProvider } from 'antd';\nimport zhCN from 'antd/es/locale/zh_CN';\nimport PropTypes from 'prop-types';\nimport { Map as OlMap, View, Feature } from 'ol';\nimport { Vector as VectorLayer, Image } from 'ol/layer';\nimport { Vector as VectorSource } from 'ol/source';\nimport { defaults as defaultControls } from 'ol/control';\nimport { getUid } from 'ol/util';\nimport classnames from 'classnames';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport Popup from './Popup';\nimport getBaseLayers from './getBaseLayers';\nimport TdtImageryProvider from './getBaseLayers/imagery/tdt/TdtImageryProvider';\nimport HighLayer from '../tools/Utils/HighLayer';\nimport { getMapFeatureInfoByText } from '../tools/Search';\nimport { registerEventLayer } from '../events';\nimport { getWMSFeatureInfoByLayers } from '../_util/layer';\nimport { createGeoJson } from '../feature-layer/createFeatureCollection';\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport ImageLayer from '../image-layer/ImageLayer';\nimport ImageTileLayer from '../image-layer/ImageTileLayer';\nimport { useUpdateEffect } from 'ahooks';\nimport Provider from '../provider';\nimport Layers from './Layers';\nimport Analysis from './Analysis';\nimport WmsLayer from '../wms-layer/WmsLayer';\nimport 'ol/ol.css';\nimport './style';\nimport { poiSearch } from '../_util/search';\nimport { cloneDeep } from 'lodash';\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n children,\n center,\n dark,\n style,\n zoom,\n createdMap,\n mapStyle,\n // bmap 百度地图 amap 高德地图 tmap 天地图\n baseMapStyle,\n tk,\n onCloseTemplateBefore,\n onZoom,\n customBaseLayers,\n positionStyle,\n autoView = true,\n closePopupAutoView = true,\n hidePopupTable,\n fitViewMaxZoom,\n encrypt\n } = props;\n const [mapLoaded, setMapLoaded] = useState(false);\n const [, setModal] = useState(null);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n const [pointTip, setPointTip] = useState(null);\n const mapRef = useRef(null);\n const timerRef = useRef(null);\n const mapDomRef = useRef(null);\n const highLayerRef = useRef();\n const popupRef = useRef();\n const timeRef = useRef(null);\n\n const baseLayerRef = useRef([]);\n\n useEffect(() => {\n initMap();\n return () => {\n window.removeEventListener('resize', handleResize);\n highLayerRef.current && highLayerRef.current.destroy();\n };\n }, []);\n\n useEffect(() => {\n if (mapRef.current) {\n timerRef.current = setInterval(() => {\n const layers = mapRef.current.getLayers().getArray() || [];\n layers.map(v => {\n if (v.autoRefresh && v.key && v.get('visible') && v.refresh) {\n v.refresh();\n }\n });\n }, 10000);\n }\n return () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n }\n };\n }, []);\n\n useUpdateEffect(() => {\n mapRef.current.setMapStyle(mapStyle);\n }, [mapStyle]);\n\n const initMap = async () => {\n const defaultMapInfo = getDefaultMapInfo();\n const { minZoom, maxZoom, defaultZoomLevel, longitude, latitude } = defaultMapInfo;\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [116.397228, 30.9096],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 4,\n minZoom: (minZoom && Number(minZoom)) || props.minZoom || 4,\n maxZoom: (maxZoom && Number(maxZoom)) || props.maxZoom,\n };\n let map = new OlMap({\n target: mapDomRef.current,\n controls: defaultControls({ zoom: false }).extend([]),\n // layers: [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })],\n pixelRatio: 1,\n view: new View({\n ...viewDefault,\n projection: 'EPSG:4326',\n constrainResolution: true,\n }),\n // 设置缩放级别为整数\n constrainResolution: true,\n // 关闭无级缩放地图\n smoothResolutionConstraint: false,\n });\n\n // 统一加密啊配置\n map.encrypt = encrypt;\n\n const baseLayerParams = {\n mapStyle: mapStyle || defaultMapInfo.mapStyle || 'vec',\n baseMapStyle: baseMapStyle || defaultMapInfo.baseMapStyle || 'TdtImageryProvider',\n dark: dark || defaultMapInfo.dark,\n tk: tk || defaultMapInfo.tk,\n };\n\n if (customBaseLayers) {\n baseLayerRef.current = [...customBaseLayers(baseLayerParams)];\n } else {\n baseLayerRef.current = [...getBaseLayers(baseLayerParams)];\n }\n\n // 用于鹰眼图层\n map.baseLayer = cloneDeep(baseLayerRef.current);\n\n if (baseLayerRef.current?.length) {\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n }\n\n map.tk = tk;\n\n // 隐藏表格弹出框\n map.hidePopupTable = hidePopupTable;\n\n // 自动调整视角\n map.autoView = autoView;\n\n // 关闭气泡自动调整视角\n map.closePopupAutoView = closePopupAutoView;\n\n // 图层管理\n map.layers = new Layers({ map });\n\n // 分析管理\n map.analysis = new Analysis({ map });\n\n mapRef.current = map;\n\n // 地图视角默认配置\n map.viewDefault = viewDefault;\n\n // 设置地图底图样式\n map.setMapStyle = _mapStyle => {\n let [tileLayerSource, markLayerSource] = TdtImageryProvider.getSource({\n mapStyle: _mapStyle,\n tk,\n });\n\n map.getLayerByKey('__TDT_TILE')?.setSource(tileLayerSource);\n map.getLayerByKey('__TDT_MARK')?.setSource(markLayerSource);\n };\n\n // 高亮效果\n highLayerRef.current = new HighLayer({ map });\n map.highlightLayer = highLayerRef.current;\n\n // 切换底图\n map.changeBaseLayer = baseMapStyle => {\n baseLayerRef.current?.map(item => {\n map.removeLayer(item);\n });\n\n baseLayerRef.current = [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })];\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n map.baseLayer = cloneDeep(baseLayerRef.current);\n };\n\n // 获取基础图层\n map.getBaseLayers = getBaseLayers;\n\n // 设置高亮\n map.setHighlightFeature = feature => {\n map.highlightLayer.addHighlightFeature(feature);\n };\n\n // 清除高亮\n map.clearHighlightFeature = () => {\n map.highlightLayer.clearFeatures();\n };\n\n // 根 key 查找图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n if (layer.key === key) {\n return layer;\n }\n });\n };\n\n // 查找展示的绑定key的wms图层\n map.getWmsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (\n layer.key &&\n (layer instanceof Image || layer instanceof ImageTileLayer || layer instanceof ImageLayer || layer instanceof WmsLayer) &&\n layer.get('visible')\n ) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 查找展示的绑定key的wfs图层\n map.getWfsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (layer.key && layer instanceof VectorLayer && layer.get('visible')) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 根据key查找展示的图层,不传keys查所有展示的除底图的带key的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.get('visible');\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.get('visible');\n } else if (layer.key !== \"Highlight\") {\n return layer.get('visible') && layer.key;\n }\n });\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = feature => {\n return map.getAllLayers().find(layer => {\n if (layer.key) {\n if (feature?.key && feature.key === layer.key) {\n return layer;\n } else if (layer instanceof VectorLayer && layer.key !== 'Highlight') {\n const source = layer.getSource();\n if (source.source && source.source.hasFeature(feature)) {\n return layer;\n } else if (source.hasFeature(feature)) {\n return layer;\n }\n } else if (feature?.layerKey && feature?.layerKey === layer.key) {\n return layer;\n } else if (feature?.values_?.key && layer.key === feature?.values_?.key) {\n return layer;\n }\n }\n });\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = text => {\n return getMapFeatureInfoByText(map, text);\n };\n\n // poi查询\n map.poiSearch = (params = {}) => {\n return poiSearch(params);\n };\n\n // 获取图层是否允许点击\n map.getLayerHasViewOnlyByFeature = feature => {\n let layer = map.getLayerByFeature(feature);\n return layer?.viewOnly;\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n map.showPointTip = content => {\n setPointTip(content);\n };\n\n // 隐藏提示\n map.hidePointTip = () => {\n setPointTip(null);\n };\n\n // 展示弹窗\n map.showModal = params => {\n setModal(params);\n };\n\n // 隐藏弹窗\n map.hideModal = () => {\n setModal(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, options) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj?.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(feature.feature || feature, options);\n }\n });\n } else {\n if (obj) {\n map.showTemplate(obj, options);\n }\n }\n }\n };\n\n // 展示看板\n map.showTemplate = (feature, options) => {\n popupRef.current?.showTemplate?.(feature, options);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current?.hideTemplate?.();\n };\n\n map.setLastView = () => {\n popupRef.current?.setLastView?.();\n };\n\n // 下标显隐\n map.setLabelVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.label = visible;\n }\n });\n };\n\n // 聚合显隐\n map.setClusterVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.cluster = visible;\n }\n });\n };\n\n // 海量点显隐\n map.setPointVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.point = visible;\n }\n });\n };\n\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n map.getViewOptions = () => {\n const view = map.getView();\n\n const [x, y] = view.getCenter();\n\n return {\n zoom: view.getZoom(),\n x,\n y,\n };\n };\n\n // 自适应\n map.fitView = (e, options) => {\n if (e) {\n let extent;\n\n if (e instanceof VectorLayer) {\n // 针对图层处理\n extent = e.getSource().getExtent();\n } else if (e instanceof VectorSource) {\n // 针对图层源处理\n extent = e.getExtent();\n } else if (Array.isArray(e) || e.geometryInfo) {\n // 针对数据处理\n let vectorSource = new VectorSource();\n\n if (e.geometryInfo || e?.[0]?.geometryInfo) {\n // 针对数据处理\n let f = createGeoJson(e);\n vectorSource.addFeatures(f);\n } else if (e instanceof Feature || e?.[0] instanceof Feature) {\n // 针对图形处理\n vectorSource.addFeatures(e);\n }\n\n extent = vectorSource.getExtent();\n } else if (e?.values_?.geometry) {\n // 针对单个图形\n extent = e.values_.geometry.getExtent();\n }\n\n if (extent) {\n if (e?.noFitView) {\n return;\n }\n\n let currentZoom = map.getView().getZoom();\n const maxZoom = fitViewMaxZoom || 16;\n map.getView().fit(extent, {\n padding: [100, 400, 100, 400],\n maxZoom: currentZoom > maxZoom ? currentZoom : maxZoom,\n duration: 500,\n ...options,\n });\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n };\n\n map.fitViewByOptions = options => {\n const { x, y, zoom } = options;\n if (x && y) {\n const view = map.getView();\n view.animate({ zoom: zoom || view.getZoom(), center: [Number(x), Number(y)] });\n }\n };\n\n // 鼠标移入展示名称\n map.on('pointermove', event => {\n if (!(map.analysisActive || map.toolboxActive || map.drawActive)) {\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n\n mapDomRef.current.style.cursor = 'pointer'; // 设置手形光标\n\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const { labelField, tipTemplate } = layer;\n let label;\n if (tipTemplate) {\n label = tipTemplate(feature.values_);\n } else {\n label = feature.values_[labelField];\n }\n\n if (label) {\n map.showPointTip(label);\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n\n mapDomRef.current.style.cursor = 'default'; // 恢复默认光标\n }\n }\n });\n\n // 注册事件\n registerEventLayer(map, props);\n\n function registerMapEvent(eventTarget, e) {\n if (map[eventTarget]) {\n map[eventTarget](e);\n }\n }\n\n function registerEvent(eventTarget, feature, event) {\n if (feature) {\n let properties = feature.getProperties();\n\n // 触发自身事件\n feature[eventTarget]?.(properties, event);\n\n let layer = map.getLayerByFeature(feature);\n\n if (layer?.[eventTarget]) {\n layer[eventTarget](properties, event);\n }\n }\n }\n\n // 鼠标事件,点击属性传递\n let hoverFeature;\n map.on('pointermove', event => {\n registerMapEvent('onMouseMove', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n if (feature) {\n registerEvent('onMouseMove', feature, event);\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent('onMouseLeave', hoverFeature, event);\n\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n } else {\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n\n registerEvent('onMouseMove', feature, event);\n } else {\n if (hoverFeature) {\n registerEvent('onMouseLeave', hoverFeature, event);\n }\n\n hoverFeature = null;\n }\n });\n\n // 点击事件,通过属性传递\n map.on('click', async event => {\n registerMapEvent('onClick', event);\n map.hideTip();\n map.hidePointTip();\n map._clickObject = event;\n let features = map.getFeaturesAtPixel(event.pixel) || [];\n\n if (!(map.analysisActive || map.toolboxActive)) {\n // 如果点击了高亮的元素直接结束,不再往下查询\n if (features?.[0]?.isHighLight) {\n return registerEvent('onClick', features[0], event);\n }\n\n if (!features.length) {\n let layers = map.getWmsVisibleLayers().filter(layer => !layer.viewOnly);\n let _features = await getWMSFeatureInfoByLayers(event, map, layers);\n if (_features?.length) {\n features = [_features[0]];\n }\n }\n\n if (features.length) {\n registerEvent('onClick', features[0], event);\n\n // 过滤掉仅展示的图层和没有设置气泡的图层\n features = features.filter(feature => {\n let layer = map.getLayerByFeature(feature);\n return layer && !layer.viewOnly && layer.template;\n });\n\n if (features.length) {\n map.showTemplate(features);\n } else {\n map.hideTemplate();\n }\n } else {\n map.hideTemplate();\n }\n } else if (features.length) {\n registerEvent('onClick', features[0], event);\n }\n });\n\n // 双击事件,通过属性传递\n map.on('dblclick', event => {\n registerMapEvent('onDoubleClick', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n registerEvent('onDoubleClick', feature, event);\n });\n\n // 层级事件\n map.onZoom = zoom => {\n onZoom && onZoom(zoom);\n };\n\n //监测地图zoom改变\n map.getView().on('change:resolution', function() {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n let zoom = map.getView().getZoom();\n map.onZoom(zoom);\n }, 50);\n });\n\n createdMap && createdMap(map);\n\n setMapLoaded(true);\n\n window.addEventListener('resize', handleResize);\n };\n\n const handleResize = () => {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n mapRef.current && mapRef.current.updateSize();\n }, 50);\n };\n\n const onMouseMove = event => {\n if (pointTip || tip) {\n let dom = document.getElementById('TIP');\n\n let left = event.nativeEvent.offsetX + 15;\n let top = event.nativeEvent.offsetY + 15;\n\n // 适配 右边和 上面的情况\n const rightBound =\n mapRef.current.getViewport().clientWidth - dom.getBoundingClientRect().width - 15;\n const topBound =\n mapRef.current.getViewport().clientHeight - dom.getBoundingClientRect().height - 15;\n\n left = left > rightBound ? rightBound : left;\n top = top > topBound ? topBound : top;\n\n dom.style.left = `${left}px`;\n dom.style.top = `${top}px`;\n }\n };\n\n return (\n <ConfigProvider locale={zhCN}>\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...style }}\n className={classnames('ol-map-container', { 'ol-map-container-dark': dark })}\n >\n <div\n ref={mapDomRef}\n className={classnames('ol-map-content')}\n style={{ width, height }}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n >\n {(pointTip || tip) && tipVis && (\n <div\n id=\"TIP\"\n className={classnames('ol-map-custom-tip')}\n style={{ ...positionStyle }}\n >\n {pointTip || tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n onPopupClick: props.onPopupClick,\n dark,\n }}\n >\n <Popup map={mapRef.current} ref={popupRef} />\n {children}\n </Provider>\n )}\n </div>\n </ConfigProvider>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n style: PropTypes.object,\n baseMapStyle: PropTypes.object,\n encrypt: PropTypes.bool,\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,UAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,GAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAP,sBAAA,CAAAH,OAAA;AACA,IAAAW,kBAAA,GAAAR,sBAAA,CAAAH,OAAA;AACA,IAAAY,MAAA,GAAAT,sBAAA,CAAAH,OAAA;AACA,IAAAa,cAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,mBAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,UAAA,GAAAZ,sBAAA,CAAAH,OAAA;AACA,IAAAgB,OAAA,GAAAhB,OAAA;AACA,IAAAiB,OAAA,GAAAjB,OAAA;AACA,IAAAkB,OAAA,GAAAlB,OAAA;AACA,IAAAmB,wBAAA,GAAAnB,OAAA;AACA,IAAAoB,aAAA,GAAAjB,sBAAA,CAAAH,OAAA;AACA,IAAAqB,WAAA,GAAAlB,sBAAA,CAAAH,OAAA;AACA,IAAAsB,eAAA,GAAAnB,sBAAA,CAAAH,OAAA;AACA,IAAAuB,OAAA,GAAAvB,OAAA;AACA,IAAAwB,SAAA,GAAArB,sBAAA,CAAAH,OAAA;AACA,IAAAyB,OAAA,GAAAtB,sBAAA,CAAAH,OAAA;AACA,IAAA0B,SAAA,GAAAvB,sBAAA,CAAAH,OAAA;AACA,IAAA2B,SAAA,GAAAxB,sBAAA,CAAAH,OAAA;AACAA,OAAA;AACAA,OAAA;AACA,IAAA4B,OAAA,GAAA5B,OAAA;AACA,IAAA6B,OAAA,GAAA7B,OAAA;AAAmC,SAAAG,uBAAA2B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAlC,wBAAA+B,GAAA,EAAAG,WAAA,SAAAA,WAAA,IAAAH,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAO,OAAA,CAAAP,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAQ,KAAA,GAAAN,wBAAA,CAAAC,WAAA,OAAAK,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,cAAAX,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,oBAAA,kBA7BnC,qJAAAA,mBAAA,YAAAA,oBAAA,WAAAC,OAAA,SAAAA,OAAA,OAAAC,EAAA,GAAAX,MAAA,CAAAI,SAAA,EAAAQ,MAAA,GAAAD,EAAA,CAAAN,cAAA,EAAAJ,cAAA,GAAAD,MAAA,CAAAC,cAAA,cAAAd,GAAA,EAAAgB,GAAA,EAAAI,IAAA,IAAApB,GAAA,CAAAgB,GAAA,IAAAI,IAAA,CAAAM,KAAA,KAAAC,OAAA,wBAAAC,MAAA,GAAAA,MAAA,OAAAC,cAAA,GAAAF,OAAA,CAAAG,QAAA,kBAAAC,mBAAA,GAAAJ,OAAA,CAAAK,aAAA,uBAAAC,iBAAA,GAAAN,OAAA,CAAAO,WAAA,8BAAAC,OAAAnC,GAAA,EAAAgB,GAAA,EAAAU,KAAA,WAAAb,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAAU,KAAA,EAAAA,KAAA,EAAAU,UAAA,MAAAC,YAAA,MAAAC,QAAA,SAAAtC,GAAA,CAAAgB,GAAA,WAAAmB,MAAA,mBAAAI,GAAA,IAAAJ,MAAA,YAAAA,OAAAnC,GAAA,EAAAgB,GAAA,EAAAU,KAAA,WAAA1B,GAAA,CAAAgB,GAAA,IAAAU,KAAA,gBAAAc,KAAAC,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,QAAAC,cAAA,GAAAH,OAAA,IAAAA,OAAA,CAAAzB,SAAA,YAAA6B,SAAA,GAAAJ,OAAA,GAAAI,SAAA,EAAAC,SAAA,GAAAlC,MAAA,CAAAmC,MAAA,CAAAH,cAAA,CAAA5B,SAAA,GAAAgC,OAAA,OAAAC,OAAA,CAAAN,WAAA,gBAAA9B,cAAA,CAAAiC,SAAA,eAAArB,KAAA,EAAAyB,gBAAA,CAAAV,OAAA,EAAAE,IAAA,EAAAM,OAAA,MAAAF,SAAA,aAAAK,SAAAC,EAAA,EAAArD,GAAA,EAAAsD,GAAA,mBAAAC,IAAA,YAAAD,GAAA,EAAAD,EAAA,CAAAlC,IAAA,CAAAnB,GAAA,EAAAsD,GAAA,cAAAf,GAAA,aAAAgB,IAAA,WAAAD,GAAA,EAAAf,GAAA,QAAAhB,OAAA,CAAAiB,IAAA,GAAAA,IAAA,MAAAgB,gBAAA,gBAAAV,UAAA,cAAAW,kBAAA,cAAAC,2BAAA,SAAAC,iBAAA,OAAAxB,MAAA,CAAAwB,iBAAA,EAAA9B,cAAA,qCAAA+B,QAAA,GAAA/C,MAAA,CAAAgD,cAAA,EAAAC,uBAAA,GAAAF,QAAA,IAAAA,QAAA,CAAAA,QAAA,CAAAG,MAAA,QAAAD,uBAAA,IAAAA,uBAAA,KAAAtC,EAAA,IAAAC,MAAA,CAAAN,IAAA,CAAA2C,uBAAA,EAAAjC,cAAA,MAAA8B,iBAAA,GAAAG,uBAAA,OAAAE,EAAA,GAAAN,0BAAA,CAAAzC,SAAA,GAAA6B,SAAA,CAAA7B,SAAA,GAAAJ,MAAA,CAAAmC,MAAA,CAAAW,iBAAA,YAAAM,sBAAAhD,SAAA,gCAAAiD,OAAA,WAAAC,MAAA,IAAAhC,MAAA,CAAAlB,SAAA,EAAAkD,MAAA,YAAAb,GAAA,gBAAAc,OAAA,CAAAD,MAAA,EAAAb,GAAA,sBAAAe,cAAAtB,SAAA,EAAAuB,WAAA,aAAAC,OAAAJ,MAAA,EAAAb,GAAA,EAAAkB,OAAA,EAAAC,MAAA,QAAAC,MAAA,GAAAtB,QAAA,CAAAL,SAAA,CAAAoB,MAAA,GAAApB,SAAA,EAAAO,GAAA,mBAAAoB,MAAA,CAAAnB,IAAA,QAAAoB,MAAA,GAAAD,MAAA,CAAApB,GAAA,EAAA5B,KAAA,GAAAiD,MAAA,CAAAjD,KAAA,SAAAA,KAAA,gBAAAnB,OAAA,CAAAmB,KAAA,KAAAD,MAAA,CAAAN,IAAA,CAAAO,KAAA,eAAA4C,WAAA,CAAAE,OAAA,CAAA9C,KAAA,CAAAkD,OAAA,EAAAC,IAAA,WAAAnD,KAAA,IAAA6C,MAAA,SAAA7C,KAAA,EAAA8C,OAAA,EAAAC,MAAA,gBAAAlC,GAAA,IAAAgC,MAAA,UAAAhC,GAAA,EAAAiC,OAAA,EAAAC,MAAA,QAAAH,WAAA,CAAAE,OAAA,CAAA9C,KAAA,EAAAmD,IAAA,WAAAC,SAAA,IAAAH,MAAA,CAAAjD,KAAA,GAAAoD,SAAA,EAAAN,OAAA,CAAAG,MAAA,gBAAAI,KAAA,WAAAR,MAAA,UAAAQ,KAAA,EAAAP,OAAA,EAAAC,MAAA,SAAAA,MAAA,CAAAC,MAAA,CAAApB,GAAA,SAAA0B,eAAA,EAAAlE,cAAA,oBAAAY,KAAA,WAAAA,MAAAyC,MAAA,EAAAb,GAAA,aAAA2B,2BAAA,eAAAX,WAAA,WAAAE,OAAA,EAAAC,MAAA,IAAAF,MAAA,CAAAJ,MAAA,EAAAb,GAAA,EAAAkB,OAAA,EAAAC,MAAA,gBAAAO,eAAA,GAAAA,eAAA,GAAAA,eAAA,CAAAH,IAAA,CAAAI,0BAAA,EAAAA,0BAAA,IAAAA,0BAAA,qBAAA9B,iBAAAV,OAAA,EAAAE,IAAA,EAAAM,OAAA,QAAAiC,KAAA,sCAAAf,MAAA,EAAAb,GAAA,wBAAA4B,KAAA,YAAAC,KAAA,sDAAAD,KAAA,oBAAAf,MAAA,QAAAb,GAAA,SAAA8B,UAAA,WAAAnC,OAAA,CAAAkB,MAAA,GAAAA,MAAA,EAAAlB,OAAA,CAAAK,GAAA,GAAAA,GAAA,UAAA+B,QAAA,GAAApC,OAAA,CAAAoC,QAAA,MAAAA,QAAA,QAAAC,cAAA,GAAAC,mBAAA,CAAAF,QAAA,EAAApC,OAAA,OAAAqC,cAAA,QAAAA,cAAA,KAAA9B,gBAAA,mBAAA8B,cAAA,qBAAArC,OAAA,CAAAkB,MAAA,EAAAlB,OAAA,CAAAuC,IAAA,GAAAvC,OAAA,CAAAwC,KAAA,GAAAxC,OAAA,CAAAK,GAAA,sBAAAL,OAAA,CAAAkB,MAAA,6BAAAe,KAAA,QAAAA,KAAA,gBAAAjC,OAAA,CAAAK,GAAA,EAAAL,OAAA,CAAAyC,iBAAA,CAAAzC,OAAA,CAAAK,GAAA,uBAAAL,OAAA,CAAAkB,MAAA,IAAAlB,OAAA,CAAA0C,MAAA,WAAA1C,OAAA,CAAAK,GAAA,GAAA4B,KAAA,oBAAAR,MAAA,GAAAtB,QAAA,CAAAX,OAAA,EAAAE,IAAA,EAAAM,OAAA,oBAAAyB,MAAA,CAAAnB,IAAA,QAAA2B,KAAA,GAAAjC,OAAA,CAAA2C,IAAA,mCAAAlB,MAAA,CAAApB,GAAA,KAAAE,gBAAA,qBAAA9B,KAAA,EAAAgD,MAAA,CAAApB,GAAA,EAAAsC,IAAA,EAAA3C,OAAA,CAAA2C,IAAA,kBAAAlB,MAAA,CAAAnB,IAAA,KAAA2B,KAAA,gBAAAjC,OAAA,CAAAkB,MAAA,YAAAlB,OAAA,CAAAK,GAAA,GAAAoB,MAAA,CAAApB,GAAA,mBAAAiC,oBAAAF,QAAA,EAAApC,OAAA,QAAA4C,UAAA,GAAA5C,OAAA,CAAAkB,MAAA,EAAAA,MAAA,GAAAkB,QAAA,CAAAvD,QAAA,CAAA+D,UAAA,OAAAC,SAAA,KAAA3B,MAAA,SAAAlB,OAAA,CAAAoC,QAAA,qBAAAQ,UAAA,IAAAR,QAAA,CAAAvD,QAAA,eAAAmB,OAAA,CAAAkB,MAAA,aAAAlB,OAAA,CAAAK,GAAA,GAAAwC,SAAA,EAAAP,mBAAA,CAAAF,QAAA,EAAApC,OAAA,eAAAA,OAAA,CAAAkB,MAAA,kBAAA0B,UAAA,KAAA5C,OAAA,CAAAkB,MAAA,YAAAlB,OAAA,CAAAK,GAAA,OAAAyC,SAAA,uCAAAF,UAAA,iBAAArC,gBAAA,MAAAkB,MAAA,GAAAtB,QAAA,CAAAe,MAAA,EAAAkB,QAAA,CAAAvD,QAAA,EAAAmB,OAAA,CAAAK,GAAA,mBAAAoB,MAAA,CAAAnB,IAAA,SAAAN,OAAA,CAAAkB,MAAA,YAAAlB,OAAA,CAAAK,GAAA,GAAAoB,MAAA,CAAApB,GAAA,EAAAL,OAAA,CAAAoC,QAAA,SAAA7B,gBAAA,MAAAwC,IAAA,GAAAtB,MAAA,CAAApB,GAAA,SAAA0C,IAAA,GAAAA,IAAA,CAAAJ,IAAA,IAAA3C,OAAA,CAAAoC,QAAA,CAAAY,UAAA,IAAAD,IAAA,CAAAtE,KAAA,EAAAuB,OAAA,CAAAiD,IAAA,GAAAb,QAAA,CAAAc,OAAA,eAAAlD,OAAA,CAAAkB,MAAA,KAAAlB,OAAA,CAAAkB,MAAA,WAAAlB,OAAA,CAAAK,GAAA,GAAAwC,SAAA,GAAA7C,OAAA,CAAAoC,QAAA,SAAA7B,gBAAA,IAAAwC,IAAA,IAAA/C,OAAA,CAAAkB,MAAA,YAAAlB,OAAA,CAAAK,GAAA,OAAAyC,SAAA,sCAAA9C,OAAA,CAAAoC,QAAA,SAAA7B,gBAAA,cAAA4C,aAAAC,IAAA,QAAAC,KAAA,KAAAC,MAAA,EAAAF,IAAA,YAAAA,IAAA,KAAAC,KAAA,CAAAE,QAAA,GAAAH,IAAA,WAAAA,IAAA,KAAAC,KAAA,CAAAG,UAAA,GAAAJ,IAAA,KAAAC,KAAA,CAAAI,QAAA,GAAAL,IAAA,WAAAM,UAAA,CAAAC,IAAA,CAAAN,KAAA,cAAAO,cAAAP,KAAA,QAAA5B,MAAA,GAAA4B,KAAA,CAAAQ,UAAA,QAAApC,MAAA,CAAAnB,IAAA,oBAAAmB,MAAA,CAAApB,GAAA,EAAAgD,KAAA,CAAAQ,UAAA,GAAApC,MAAA,aAAAxB,QAAAN,WAAA,SAAA+D,UAAA,MAAAJ,MAAA,aAAA3D,WAAA,CAAAsB,OAAA,CAAAkC,YAAA,cAAAW,KAAA,iBAAAhD,OAAAiD,QAAA,QAAAA,QAAA,QAAAC,cAAA,GAAAD,QAAA,CAAAnF,cAAA,OAAAoF,cAAA,SAAAA,cAAA,CAAA9F,IAAA,CAAA6F,QAAA,4BAAAA,QAAA,CAAAd,IAAA,SAAAc,QAAA,OAAAE,KAAA,CAAAF,QAAA,CAAAG,MAAA,SAAAC,CAAA,OAAAlB,IAAA,YAAAA,KAAA,aAAAkB,CAAA,GAAAJ,QAAA,CAAAG,MAAA,OAAA1F,MAAA,CAAAN,IAAA,CAAA6F,QAAA,EAAAI,CAAA,UAAAlB,IAAA,CAAAxE,KAAA,GAAAsF,QAAA,CAAAI,CAAA,GAAAlB,IAAA,CAAAN,IAAA,OAAAM,IAAA,SAAAA,IAAA,CAAAxE,KAAA,GAAAoE,SAAA,EAAAI,IAAA,CAAAN,IAAA,OAAAM,IAAA,YAAAA,IAAA,CAAAA,IAAA,GAAAA,IAAA,eAAAA,IAAA,EAAAd,UAAA,eAAAA,WAAA,aAAA1D,KAAA,EAAAoE,SAAA,EAAAF,IAAA,iBAAAnC,iBAAA,CAAAxC,SAAA,GAAAyC,0BAAA,EAAA5C,cAAA,CAAAkD,EAAA,mBAAAtC,KAAA,EAAAgC,0BAAA,EAAArB,YAAA,SAAAvB,cAAA,CAAA4C,0BAAA,mBAAAhC,KAAA,EAAA+B,iBAAA,EAAApB,YAAA,SAAAoB,iBAAA,CAAA4D,WAAA,GAAAlF,MAAA,CAAAuB,0BAAA,EAAAzB,iBAAA,wBAAAV,OAAA,CAAA+F,mBAAA,aAAAC,MAAA,QAAAC,IAAA,wBAAAD,MAAA,IAAAA,MAAA,CAAAE,WAAA,WAAAD,IAAA,KAAAA,IAAA,KAAA/D,iBAAA,6BAAA+D,IAAA,CAAAH,WAAA,IAAAG,IAAA,CAAAE,IAAA,OAAAnG,OAAA,CAAAoG,IAAA,aAAAJ,MAAA,WAAA1G,MAAA,CAAA+G,cAAA,GAAA/G,MAAA,CAAA+G,cAAA,CAAAL,MAAA,EAAA7D,0BAAA,KAAA6D,MAAA,CAAAM,SAAA,GAAAnE,0BAAA,EAAAvB,MAAA,CAAAoF,MAAA,EAAAtF,iBAAA,yBAAAsF,MAAA,CAAAtG,SAAA,GAAAJ,MAAA,CAAAmC,MAAA,CAAAgB,EAAA,GAAAuD,MAAA,KAAAhG,OAAA,CAAAuG,KAAA,aAAAxE,GAAA,aAAAsB,OAAA,EAAAtB,GAAA,OAAAW,qBAAA,CAAAI,aAAA,CAAApD,SAAA,GAAAkB,MAAA,CAAAkC,aAAA,CAAApD,SAAA,EAAAc,mBAAA,iCAAAR,OAAA,CAAA8C,aAAA,GAAAA,aAAA,EAAA9C,OAAA,CAAAwG,KAAA,aAAAtF,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,EAAA0B,WAAA,eAAAA,WAAA,KAAAA,WAAA,GAAA0D,OAAA,OAAAC,IAAA,OAAA5D,aAAA,CAAA7B,IAAA,CAAAC,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,GAAA0B,WAAA,UAAA/C,OAAA,CAAA+F,mBAAA,CAAA5E,OAAA,IAAAuF,IAAA,GAAAA,IAAA,CAAA/B,IAAA,GAAArB,IAAA,WAAAF,MAAA,WAAAA,MAAA,CAAAiB,IAAA,GAAAjB,MAAA,CAAAjD,KAAA,GAAAuG,IAAA,CAAA/B,IAAA,WAAAjC,qBAAA,CAAAD,EAAA,GAAA7B,MAAA,CAAA6B,EAAA,EAAA/B,iBAAA,gBAAAE,MAAA,CAAA6B,EAAA,EAAAnC,cAAA,iCAAAM,MAAA,CAAA6B,EAAA,6DAAAzC,OAAA,CAAA2G,IAAA,aAAAC,GAAA,QAAAC,MAAA,GAAAvH,MAAA,CAAAsH,GAAA,GAAAD,IAAA,gBAAAlH,GAAA,IAAAoH,MAAA,EAAAF,IAAA,CAAAtB,IAAA,CAAA5F,GAAA,UAAAkH,IAAA,CAAAG,OAAA,aAAAnC,KAAA,WAAAgC,IAAA,CAAAf,MAAA,SAAAnG,GAAA,GAAAkH,IAAA,CAAAI,GAAA,QAAAtH,GAAA,IAAAoH,MAAA,SAAAlC,IAAA,CAAAxE,KAAA,GAAAV,GAAA,EAAAkF,IAAA,CAAAN,IAAA,OAAAM,IAAA,WAAAA,IAAA,CAAAN,IAAA,OAAAM,IAAA,QAAA3E,OAAA,CAAAwC,MAAA,GAAAA,MAAA,EAAAb,OAAA,CAAAjC,SAAA,KAAAwG,WAAA,EAAAvE,OAAA,EAAA6D,KAAA,WAAAA,MAAAwB,aAAA,aAAAC,IAAA,WAAAtC,IAAA,WAAAV,IAAA,QAAAC,KAAA,GAAAK,SAAA,OAAAF,IAAA,YAAAP,QAAA,cAAAlB,MAAA,gBAAAb,GAAA,GAAAwC,SAAA,OAAAa,UAAA,CAAAzC,OAAA,CAAA2C,aAAA,IAAA0B,aAAA,WAAAb,IAAA,kBAAAA,IAAA,CAAAe,MAAA,OAAAhH,MAAA,CAAAN,IAAA,OAAAuG,IAAA,MAAAR,KAAA,EAAAQ,IAAA,CAAAgB,KAAA,cAAAhB,IAAA,IAAA5B,SAAA,MAAA6C,IAAA,WAAAA,KAAA,SAAA/C,IAAA,WAAAgD,UAAA,QAAAjC,UAAA,IAAAG,UAAA,kBAAA8B,UAAA,CAAArF,IAAA,QAAAqF,UAAA,CAAAtF,GAAA,cAAAuF,IAAA,KAAAnD,iBAAA,WAAAA,kBAAAoD,SAAA,aAAAlD,IAAA,QAAAkD,SAAA,MAAA7F,OAAA,kBAAA8F,OAAAC,GAAA,EAAAC,MAAA,WAAAvE,MAAA,CAAAnB,IAAA,YAAAmB,MAAA,CAAApB,GAAA,GAAAwF,SAAA,EAAA7F,OAAA,CAAAiD,IAAA,GAAA8C,GAAA,EAAAC,MAAA,KAAAhG,OAAA,CAAAkB,MAAA,WAAAlB,OAAA,CAAAK,GAAA,GAAAwC,SAAA,KAAAmD,MAAA,aAAA7B,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,GAAA1C,MAAA,GAAA4B,KAAA,CAAAQ,UAAA,iBAAAR,KAAA,CAAAC,MAAA,SAAAwC,MAAA,aAAAzC,KAAA,CAAAC,MAAA,SAAAiC,IAAA,QAAAU,QAAA,GAAAzH,MAAA,CAAAN,IAAA,CAAAmF,KAAA,eAAA6C,UAAA,GAAA1H,MAAA,CAAAN,IAAA,CAAAmF,KAAA,qBAAA4C,QAAA,IAAAC,UAAA,aAAAX,IAAA,GAAAlC,KAAA,CAAAE,QAAA,SAAAuC,MAAA,CAAAzC,KAAA,CAAAE,QAAA,gBAAAgC,IAAA,GAAAlC,KAAA,CAAAG,UAAA,SAAAsC,MAAA,CAAAzC,KAAA,CAAAG,UAAA,cAAAyC,QAAA,aAAAV,IAAA,GAAAlC,KAAA,CAAAE,QAAA,SAAAuC,MAAA,CAAAzC,KAAA,CAAAE,QAAA,qBAAA2C,UAAA,YAAAhE,KAAA,qDAAAqD,IAAA,GAAAlC,KAAA,CAAAG,UAAA,SAAAsC,MAAA,CAAAzC,KAAA,CAAAG,UAAA,YAAAd,MAAA,WAAAA,OAAApC,IAAA,EAAAD,GAAA,aAAA8D,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAC,MAAA,SAAAiC,IAAA,IAAA/G,MAAA,CAAAN,IAAA,CAAAmF,KAAA,wBAAAkC,IAAA,GAAAlC,KAAA,CAAAG,UAAA,QAAA2C,YAAA,GAAA9C,KAAA,aAAA8C,YAAA,iBAAA7F,IAAA,mBAAAA,IAAA,KAAA6F,YAAA,CAAA7C,MAAA,IAAAjD,GAAA,IAAAA,GAAA,IAAA8F,YAAA,CAAA3C,UAAA,KAAA2C,YAAA,cAAA1E,MAAA,GAAA0E,YAAA,GAAAA,YAAA,CAAAtC,UAAA,cAAApC,MAAA,CAAAnB,IAAA,GAAAA,IAAA,EAAAmB,MAAA,CAAApB,GAAA,GAAAA,GAAA,EAAA8F,YAAA,SAAAjF,MAAA,gBAAA+B,IAAA,GAAAkD,YAAA,CAAA3C,UAAA,EAAAjD,gBAAA,SAAA6F,QAAA,CAAA3E,MAAA,MAAA2E,QAAA,WAAAA,SAAA3E,MAAA,EAAAgC,QAAA,oBAAAhC,MAAA,CAAAnB,IAAA,QAAAmB,MAAA,CAAApB,GAAA,qBAAAoB,MAAA,CAAAnB,IAAA,mBAAAmB,MAAA,CAAAnB,IAAA,QAAA2C,IAAA,GAAAxB,MAAA,CAAApB,GAAA,gBAAAoB,MAAA,CAAAnB,IAAA,SAAAsF,IAAA,QAAAvF,GAAA,GAAAoB,MAAA,CAAApB,GAAA,OAAAa,MAAA,kBAAA+B,IAAA,yBAAAxB,MAAA,CAAAnB,IAAA,IAAAmD,QAAA,UAAAR,IAAA,GAAAQ,QAAA,GAAAlD,gBAAA,KAAA8F,MAAA,WAAAA,OAAA7C,UAAA,aAAAW,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAG,UAAA,KAAAA,UAAA,cAAA4C,QAAA,CAAA/C,KAAA,CAAAQ,UAAA,EAAAR,KAAA,CAAAI,QAAA,GAAAG,aAAA,CAAAP,KAAA,GAAA9C,gBAAA,yBAAA+F,OAAAhD,MAAA,aAAAa,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAC,MAAA,KAAAA,MAAA,QAAA7B,MAAA,GAAA4B,KAAA,CAAAQ,UAAA,kBAAApC,MAAA,CAAAnB,IAAA,QAAAiG,MAAA,GAAA9E,MAAA,CAAApB,GAAA,EAAAuD,aAAA,CAAAP,KAAA,YAAAkD,MAAA,gBAAArE,KAAA,8BAAAsE,aAAA,WAAAA,cAAAzC,QAAA,EAAAf,UAAA,EAAAE,OAAA,gBAAAd,QAAA,KAAAvD,QAAA,EAAAiC,MAAA,CAAAiD,QAAA,GAAAf,UAAA,EAAAA,UAAA,EAAAE,OAAA,EAAAA,OAAA,oBAAAhC,MAAA,UAAAb,GAAA,GAAAwC,SAAA,GAAAtC,gBAAA,OAAAjC,OAAA;AAAA,SAAAmI,mBAAAC,GAAA,WAAAC,kBAAA,CAAAD,GAAA,KAAAE,gBAAA,CAAAF,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAhE,SAAA;AAAA,SAAA8D,iBAAA5B,IAAA,eAAArG,MAAA,oBAAAqG,IAAA,CAAArG,MAAA,CAAAE,QAAA,aAAAmG,IAAA,+BAAA+B,KAAA,CAAAC,IAAA,CAAAhC,IAAA;AAAA,SAAA2B,mBAAAD,GAAA,QAAAK,KAAA,CAAAE,OAAA,CAAAP,GAAA,UAAAQ,iBAAA,CAAAR,GAAA;AAAA,SAAAS,QAAAhC,MAAA,EAAAiC,cAAA,QAAAnC,IAAA,GAAArH,MAAA,CAAAqH,IAAA,CAAAE,MAAA,OAAAvH,MAAA,CAAAyJ,qBAAA,QAAAC,OAAA,GAAA1J,MAAA,CAAAyJ,qBAAA,CAAAlC,MAAA,GAAAiC,cAAA,KAAAE,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAA5J,MAAA,CAAAE,wBAAA,CAAAqH,MAAA,EAAAqC,GAAA,EAAArI,UAAA,OAAA8F,IAAA,CAAAtB,IAAA,CAAA8D,KAAA,CAAAxC,IAAA,EAAAqC,OAAA,YAAArC,IAAA;AAAA,SAAAyC,cAAAC,MAAA,aAAAxD,CAAA,MAAAA,CAAA,GAAAyD,SAAA,CAAA1D,MAAA,EAAAC,CAAA,UAAA0D,MAAA,WAAAD,SAAA,CAAAzD,CAAA,IAAAyD,SAAA,CAAAzD,CAAA,QAAAA,CAAA,OAAAgD,OAAA,CAAAvJ,MAAA,CAAAiK,MAAA,OAAA5G,OAAA,WAAAlD,GAAA,IAAA+J,eAAA,CAAAH,MAAA,EAAA5J,GAAA,EAAA8J,MAAA,CAAA9J,GAAA,SAAAH,MAAA,CAAAmK,yBAAA,GAAAnK,MAAA,CAAAoK,gBAAA,CAAAL,MAAA,EAAA/J,MAAA,CAAAmK,yBAAA,CAAAF,MAAA,KAAAV,OAAA,CAAAvJ,MAAA,CAAAiK,MAAA,GAAA5G,OAAA,WAAAlD,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAA8J,MAAA,EAAA5J,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAA+J,MAAA,EAAA9J,GAAA,iBAAA4J,MAAA;AAAA,SAAAG,gBAAA/K,GAAA,EAAAgB,GAAA,EAAAU,KAAA,IAAAV,GAAA,GAAAkK,cAAA,CAAAlK,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAAU,KAAA,EAAAA,KAAA,EAAAU,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAtC,GAAA,CAAAgB,GAAA,IAAAU,KAAA,WAAA1B,GAAA;AAAA,SAAAkL,eAAA5H,GAAA,QAAAtC,GAAA,GAAAmK,YAAA,CAAA7H,GAAA,oBAAA/C,OAAA,CAAAS,GAAA,iBAAAA,GAAA,GAAAoK,MAAA,CAAApK,GAAA;AAAA,SAAAmK,aAAAE,KAAA,EAAAC,IAAA,QAAA/K,OAAA,CAAA8K,KAAA,kBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAzJ,MAAA,CAAA4J,WAAA,OAAAD,IAAA,KAAAzF,SAAA,QAAA2F,GAAA,GAAAF,IAAA,CAAApK,IAAA,CAAAkK,KAAA,EAAAC,IAAA,oBAAA/K,OAAA,CAAAkL,GAAA,uBAAAA,GAAA,YAAA1F,SAAA,4DAAAuF,IAAA,gBAAAF,MAAA,GAAAM,MAAA,EAAAL,KAAA;AAAA,SAAAM,mBAAAC,GAAA,EAAApH,OAAA,EAAAC,MAAA,EAAAoH,KAAA,EAAAC,MAAA,EAAA9K,GAAA,EAAAsC,GAAA,cAAA0C,IAAA,GAAA4F,GAAA,CAAA5K,GAAA,EAAAsC,GAAA,OAAA5B,KAAA,GAAAsE,IAAA,CAAAtE,KAAA,WAAAqD,KAAA,IAAAN,MAAA,CAAAM,KAAA,iBAAAiB,IAAA,CAAAJ,IAAA,IAAApB,OAAA,CAAA9C,KAAA,YAAAsG,OAAA,CAAAxD,OAAA,CAAA9C,KAAA,EAAAmD,IAAA,CAAAgH,KAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAA1I,EAAA,6BAAAV,IAAA,SAAAqJ,IAAA,GAAAnB,SAAA,aAAA7C,OAAA,WAAAxD,OAAA,EAAAC,MAAA,QAAAmH,GAAA,GAAAvI,EAAA,CAAAqH,KAAA,CAAA/H,IAAA,EAAAqJ,IAAA,YAAAH,MAAAnK,KAAA,IAAAiK,kBAAA,CAAAC,GAAA,EAAApH,OAAA,EAAAC,MAAA,EAAAoH,KAAA,EAAAC,MAAA,UAAApK,KAAA,cAAAoK,OAAAvJ,GAAA,IAAAoJ,kBAAA,CAAAC,GAAA,EAAApH,OAAA,EAAAC,MAAA,EAAAoH,KAAA,EAAAC,MAAA,WAAAvJ,GAAA,KAAAsJ,KAAA,CAAA/F,SAAA;AAAA,SAAAmG,eAAAtC,GAAA,EAAAvC,CAAA,WAAA8E,eAAA,CAAAvC,GAAA,KAAAwC,qBAAA,CAAAxC,GAAA,EAAAvC,CAAA,KAAA0C,2BAAA,CAAAH,GAAA,EAAAvC,CAAA,KAAAgF,gBAAA;AAAA,SAAAA,iBAAA,cAAArG,SAAA;AAAA,SAAA+D,4BAAAuC,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAlC,iBAAA,CAAAkC,CAAA,EAAAC,MAAA,OAAAC,CAAA,GAAA1L,MAAA,CAAAI,SAAA,CAAAuL,QAAA,CAAArL,IAAA,CAAAkL,CAAA,EAAA3D,KAAA,aAAA6D,CAAA,iBAAAF,CAAA,CAAA5E,WAAA,EAAA8E,CAAA,GAAAF,CAAA,CAAA5E,WAAA,CAAAC,IAAA,MAAA6E,CAAA,cAAAA,CAAA,mBAAAvC,KAAA,CAAAC,IAAA,CAAAoC,CAAA,OAAAE,CAAA,+DAAAE,IAAA,CAAAF,CAAA,UAAApC,iBAAA,CAAAkC,CAAA,EAAAC,MAAA;AAAA,SAAAnC,kBAAAR,GAAA,EAAA+C,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAA/C,GAAA,CAAAxC,MAAA,EAAAuF,GAAA,GAAA/C,GAAA,CAAAxC,MAAA,WAAAC,CAAA,MAAAuF,IAAA,OAAA3C,KAAA,CAAA0C,GAAA,GAAAtF,CAAA,GAAAsF,GAAA,EAAAtF,CAAA,IAAAuF,IAAA,CAAAvF,CAAA,IAAAuC,GAAA,CAAAvC,CAAA,UAAAuF,IAAA;AAAA,SAAAR,sBAAAxC,GAAA,EAAAvC,CAAA,QAAAwF,EAAA,WAAAjD,GAAA,gCAAA/H,MAAA,IAAA+H,GAAA,CAAA/H,MAAA,CAAAE,QAAA,KAAA6H,GAAA,4BAAAiD,EAAA,QAAAC,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,IAAA,OAAAC,EAAA,OAAAC,EAAA,iBAAAJ,EAAA,IAAAH,EAAA,GAAAA,EAAA,CAAAzL,IAAA,CAAAwI,GAAA,GAAAzD,IAAA,QAAAkB,CAAA,QAAAvG,MAAA,CAAA+L,EAAA,MAAAA,EAAA,UAAAM,EAAA,uBAAAA,EAAA,IAAAL,EAAA,GAAAE,EAAA,CAAA5L,IAAA,CAAAyL,EAAA,GAAAhH,IAAA,MAAAqH,IAAA,CAAArG,IAAA,CAAAiG,EAAA,CAAAnL,KAAA,GAAAuL,IAAA,CAAA9F,MAAA,KAAAC,CAAA,GAAA8F,EAAA,iBAAA3K,GAAA,IAAA4K,EAAA,OAAAL,EAAA,GAAAvK,GAAA,yBAAA2K,EAAA,YAAAN,EAAA,eAAAI,EAAA,GAAAJ,EAAA,cAAA/L,MAAA,CAAAmM,EAAA,MAAAA,EAAA,2BAAAG,EAAA,QAAAL,EAAA,aAAAG,IAAA;AAAA,SAAAf,gBAAAvC,GAAA,QAAAK,KAAA,CAAAE,OAAA,CAAAP,GAAA,UAAAA,GAAA;AA+BA,SAASyD,GAAGA,CAACC,KAAK,EAAE;EAChB,IAAAC,YAAA,GAsBID,KAAK,CArBLE,KAAK;IAALA,KAAK,GAAAD,YAAA,cAAG,MAAM,GAAAA,YAAA;IAAAE,aAAA,GAqBdH,KAAK,CApBLI,MAAM;IAANA,MAAM,GAAAD,aAAA,cAAG,MAAM,GAAAA,aAAA;IACfE,QAAQ,GAmBRL,KAAK,CAnBLK,QAAQ;IACRC,MAAM,GAkBNN,KAAK,CAlBLM,MAAM;IACNC,IAAI,GAiBJP,KAAK,CAjBLO,IAAI;IACJC,KAAK,GAgBLR,KAAK,CAhBLQ,KAAK;IACLC,IAAI,GAeJT,KAAK,CAfLS,IAAI;IACJC,UAAU,GAcVV,KAAK,CAdLU,UAAU;IACVC,QAAQ,GAaRX,KAAK,CAbLW,QAAQ;IAERC,YAAY,GAWZZ,KAAK,CAXLY,YAAY;IACZC,EAAE,GAUFb,KAAK,CAVLa,EAAE;IACFC,qBAAqB,GASrBd,KAAK,CATLc,qBAAqB;IACrBC,MAAM,GAQNf,KAAK,CARLe,MAAM;IACNC,gBAAgB,GAOhBhB,KAAK,CAPLgB,gBAAgB;IAChBC,aAAa,GAMbjB,KAAK,CANLiB,aAAa;IAAAC,eAAA,GAMblB,KAAK,CALLmB,QAAQ;IAARA,QAAQ,GAAAD,eAAA,cAAG,IAAI,GAAAA,eAAA;IAAAE,qBAAA,GAKfpB,KAAK,CAJLqB,kBAAkB;IAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;IACzBE,cAAc,GAGdtB,KAAK,CAHLsB,cAAc;IACdC,cAAc,GAEdvB,KAAK,CAFLuB,cAAc;IACdC,OAAO,GACPxB,KAAK,CADLwB,OAAO;EAEX,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAAC,UAAA,GAAA/C,cAAA,CAAA6C,SAAA;IAA1CG,SAAS,GAAAD,UAAA;IAAEE,YAAY,GAAAF,UAAA;EAC9B,IAAAG,UAAA,GAAqB,IAAAJ,eAAQ,EAAC,IAAI,CAAC;IAAAK,UAAA,GAAAnD,cAAA,CAAAkD,UAAA;IAA1BE,QAAQ,GAAAD,UAAA;EACjB,IAAAE,UAAA,GAA4B,IAAAP,eAAQ,EAAC,KAAK,CAAC;IAAAQ,UAAA,GAAAtD,cAAA,CAAAqD,UAAA;IAApCE,MAAM,GAAAD,UAAA;IAAEE,SAAS,GAAAF,UAAA;EACxB,IAAAG,UAAA,GAAsB,IAAAX,eAAQ,EAAC,IAAI,CAAC;IAAAY,UAAA,GAAA1D,cAAA,CAAAyD,UAAA;IAA7BE,GAAG,GAAAD,UAAA;IAAEE,MAAM,GAAAF,UAAA;EAClB,IAAAG,UAAA,GAAgC,IAAAf,eAAQ,EAAC,IAAI,CAAC;IAAAgB,WAAA,GAAA9D,cAAA,CAAA6D,UAAA;IAAvCE,QAAQ,GAAAD,WAAA;IAAEE,WAAW,GAAAF,WAAA;EAC5B,IAAMG,MAAM,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EAC3B,IAAMC,QAAQ,GAAG,IAAAD,aAAM,EAAC,IAAI,CAAC;EAC7B,IAAME,SAAS,GAAG,IAAAF,aAAM,EAAC,IAAI,CAAC;EAC9B,IAAMG,YAAY,GAAG,IAAAH,aAAM,EAAC,CAAC;EAC7B,IAAMI,QAAQ,GAAG,IAAAJ,aAAM,EAAC,CAAC;EACzB,IAAMK,OAAO,GAAG,IAAAL,aAAM,EAAC,IAAI,CAAC;EAE5B,IAAMM,YAAY,GAAG,IAAAN,aAAM,EAAC,EAAE,CAAC;EAE/B,IAAAO,gBAAS,EAAC,YAAM;IACZC,OAAO,CAAC,CAAC;IACT,OAAO,YAAM;MACTC,MAAM,CAACC,mBAAmB,CAAC,QAAQ,EAAEC,YAAY,CAAC;MAClDR,YAAY,CAACS,OAAO,IAAIT,YAAY,CAACS,OAAO,CAACC,OAAO,CAAC,CAAC;IAC1D,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAN,gBAAS,EAAC,YAAM;IACZ,IAAIR,MAAM,CAACa,OAAO,EAAE;MAChBX,QAAQ,CAACW,OAAO,GAAGE,WAAW,CAAC,YAAM;QACjC,IAAMC,MAAM,GAAGhB,MAAM,CAACa,OAAO,CAACI,SAAS,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,IAAI,EAAE;QAC1DF,MAAM,CAACG,GAAG,CAAC,UAAAC,CAAC,EAAI;UACZ,IAAIA,CAAC,CAACC,WAAW,IAAID,CAAC,CAACtQ,GAAG,IAAIsQ,CAAC,CAAC5Q,GAAG,CAAC,SAAS,CAAC,IAAI4Q,CAAC,CAACE,OAAO,EAAE;YACzDF,CAAC,CAACE,OAAO,CAAC,CAAC;UACf;QACJ,CAAC,CAAC;MACN,CAAC,EAAE,KAAK,CAAC;IACb;IACA,OAAO,YAAM;MACT,IAAIpB,QAAQ,CAACW,OAAO,EAAE;QAClBU,aAAa,CAACrB,QAAQ,CAACW,OAAO,CAAC;MACnC;IACJ,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAW,uBAAe,EAAC,YAAM;IAClBxB,MAAM,CAACa,OAAO,CAACY,WAAW,CAAC3D,QAAQ,CAAC;EACxC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAM2C,OAAO;IAAA,IAAAiB,IAAA,GAAA7F,iBAAA,eAAAzK,mBAAA,GAAAqG,IAAA,CAAG,SAAAkK,SAAA;MAAA,IAAAC,qBAAA;MAAA,IAAAC,cAAA,EAAAC,OAAA,EAAAC,OAAA,EAAAC,gBAAA,EAAAC,SAAA,EAAAC,QAAA,EAAAC,WAAA,EAAAhB,GAAA,EAAAiB,eAAA,EAAAC,sBAAA,EAgaHC,gBAAgB,EAMhBC,aAAa,EAAAC,YAAA;MAAA,OAAApR,mBAAA,GAAAkB,IAAA,UAAAmQ,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAApK,IAAA,GAAAoK,SAAA,CAAA1M,IAAA;UAAA;YAAbuM,aAAa,YAAAI,eAACC,WAAW,EAAEC,OAAO,EAAEC,KAAK,EAAE;cAChD,IAAID,OAAO,EAAE;gBAAA,IAAAE,oBAAA;gBACT,IAAIC,UAAU,GAAGH,OAAO,CAACI,aAAa,CAAC,CAAC;;gBAExC;gBACA,CAAAF,oBAAA,GAAAF,OAAO,CAACD,WAAW,CAAC,cAAAG,oBAAA,uBAApBA,oBAAA,CAAA9R,IAAA,CAAA4R,OAAO,EAAgBG,UAAU,EAAEF,KAAK,CAAC;gBAEzC,IAAII,KAAK,GAAG/B,GAAG,CAACgC,iBAAiB,CAACN,OAAO,CAAC;gBAE1C,IAAIK,KAAK,aAALA,KAAK,eAALA,KAAK,CAAGN,WAAW,CAAC,EAAE;kBACtBM,KAAK,CAACN,WAAW,CAAC,CAACI,UAAU,EAAEF,KAAK,CAAC;gBACzC;cACJ;YACJ,CAAC;YAnBQR,gBAAgB,YAAAc,kBAACR,WAAW,EAAES,CAAC,EAAE;cACtC,IAAIlC,GAAG,CAACyB,WAAW,CAAC,EAAE;gBAClBzB,GAAG,CAACyB,WAAW,CAAC,CAACS,CAAC,CAAC;cACvB;YACJ,CAAC;YAnaKxB,cAAc,GAAG,IAAAyB,6BAAiB,EAAC,CAAC;YAClCxB,OAAO,GAAqDD,cAAc,CAA1EC,OAAO,EAAEC,OAAO,GAA4CF,cAAc,CAAjEE,OAAO,EAAEC,gBAAgB,GAA0BH,cAAc,CAAxDG,gBAAgB,EAAEC,SAAS,GAAeJ,cAAc,CAAtCI,SAAS,EAAEC,QAAQ,GAAKL,cAAc,CAA3BK,QAAQ,EAE/D;YACIC,WAAW,GAAG;cACd1E,MAAM,EAAEA,MAAM,IACTwE,SAAS,IAAIC,QAAQ,IAAI,CAACD,SAAS,EAAEC,QAAQ,CAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;cAC7EtE,IAAI,EAAEA,IAAI,IAAKoE,gBAAgB,IAAIxG,MAAM,CAACwG,gBAAgB,CAAE,IAAI,CAAC;cACjEF,OAAO,EAAGA,OAAO,IAAItG,MAAM,CAACsG,OAAO,CAAC,IAAK3E,KAAK,CAAC2E,OAAO,IAAI,CAAC;cAC3DC,OAAO,EAAGA,OAAO,IAAIvG,MAAM,CAACuG,OAAO,CAAC,IAAK5E,KAAK,CAAC4E;YACnD,CAAC;YACGZ,GAAG,GAAG,IAAIoC,OAAK,CAAC;cAChB7I,MAAM,EAAEyF,SAAS,CAACU,OAAO;cACzB2C,QAAQ,EAAE,IAAAC,iBAAe,EAAC;gBAAE7F,IAAI,EAAE;cAAM,CAAC,CAAC,CAAC8F,MAAM,CAAC,EAAE,CAAC;cACrD;cACAC,UAAU,EAAE,CAAC;cACbC,IAAI,EAAE,IAAIC,QAAI,CAAApJ,aAAA,CAAAA,aAAA,KACP0H,WAAW;gBACd2B,UAAU,EAAE,WAAW;gBACvBC,mBAAmB,EAAE;cAAI,EAC5B,CAAC;cACF;cACAA,mBAAmB,EAAE,IAAI;cACzB;cACAC,0BAA0B,EAAE;YAChC,CAAC,CAAC,EAEF;YACA7C,GAAG,CAACxC,OAAO,GAAGA,OAAO;YAEfyD,eAAe,GAAG;cACpBtE,QAAQ,EAAEA,QAAQ,IAAI+D,cAAc,CAAC/D,QAAQ,IAAI,KAAK;cACtDC,YAAY,EAAEA,YAAY,IAAI8D,cAAc,CAAC9D,YAAY,IAAI,oBAAoB;cACjFL,IAAI,EAAEA,IAAI,IAAImE,cAAc,CAACnE,IAAI;cACjCM,EAAE,EAAEA,EAAE,IAAI6D,cAAc,CAAC7D;YAC7B,CAAC;YAED,IAAIG,gBAAgB,EAAE;cAClBoC,YAAY,CAACM,OAAO,GAAArH,kBAAA,CAAO2E,gBAAgB,CAACiE,eAAe,CAAC,CAAC;YACjE,CAAC,MAAM;cACH7B,YAAY,CAACM,OAAO,GAAArH,kBAAA,CAAO,IAAAyK,yBAAa,EAAC7B,eAAe,CAAC,CAAC;YAC9D;;YAEA;YACAjB,GAAG,CAAC+C,SAAS,GAAG,IAAAC,iBAAS,EAAC5D,YAAY,CAACM,OAAO,CAAC;YAE/C,KAAAe,qBAAA,GAAIrB,YAAY,CAACM,OAAO,cAAAe,qBAAA,eAApBA,qBAAA,CAAsB3K,MAAM,EAAE;cAC9B,CAAAoL,sBAAA,GAAA9B,YAAY,CAACM,OAAO,cAAAwB,sBAAA,uBAApBA,sBAAA,CAAsBlB,GAAG,CAAC,UAAAiD,IAAI,EAAI;gBAC9BjD,GAAG,CAACkD,QAAQ,CAACD,IAAI,CAAC;cACtB,CAAC,CAAC;YACN;YAEAjD,GAAG,CAACnD,EAAE,GAAGA,EAAE;;YAEX;YACAmD,GAAG,CAAC1C,cAAc,GAAGA,cAAc;;YAEnC;YACA0C,GAAG,CAAC7C,QAAQ,GAAGA,QAAQ;;YAEvB;YACA6C,GAAG,CAAC3C,kBAAkB,GAAGA,kBAAkB;;YAE3C;YACA2C,GAAG,CAACH,MAAM,GAAG,IAAIsD,kBAAM,CAAC;cAAEnD,GAAG,EAAHA;YAAI,CAAC,CAAC;;YAEhC;YACAA,GAAG,CAACoD,QAAQ,GAAG,IAAIC,oBAAQ,CAAC;cAAErD,GAAG,EAAHA;YAAI,CAAC,CAAC;YAEpCnB,MAAM,CAACa,OAAO,GAAGM,GAAG;;YAEpB;YACAA,GAAG,CAACgB,WAAW,GAAGA,WAAW;;YAE7B;YACAhB,GAAG,CAACM,WAAW,GAAG,UAAAgD,SAAS,EAAI;cAAA,IAAAC,kBAAA,EAAAC,mBAAA;cAC3B,IAAAC,qBAAA,GAAyCC,8BAAkB,CAACC,SAAS,CAAC;kBAClEhH,QAAQ,EAAE2G,SAAS;kBACnBzG,EAAE,EAAFA;gBACJ,CAAC,CAAC;gBAAA+G,sBAAA,GAAAhJ,cAAA,CAAA6I,qBAAA;gBAHGI,eAAe,GAAAD,sBAAA;gBAAEE,eAAe,GAAAF,sBAAA;cAKrC,CAAAL,kBAAA,GAAAvD,GAAG,CAAC+D,aAAa,CAAC,YAAY,CAAC,cAAAR,kBAAA,uBAA/BA,kBAAA,CAAiCS,SAAS,CAACH,eAAe,CAAC;cAC3D,CAAAL,mBAAA,GAAAxD,GAAG,CAAC+D,aAAa,CAAC,YAAY,CAAC,cAAAP,mBAAA,uBAA/BA,mBAAA,CAAiCQ,SAAS,CAACF,eAAe,CAAC;YAC/D,CAAC;;YAED;YACA7E,YAAY,CAACS,OAAO,GAAG,IAAIuE,qBAAS,CAAC;cAAEjE,GAAG,EAAHA;YAAI,CAAC,CAAC;YAC7CA,GAAG,CAACkE,cAAc,GAAGjF,YAAY,CAACS,OAAO;;YAEzC;YACAM,GAAG,CAACmE,eAAe,GAAG,UAAAvH,YAAY,EAAI;cAAA,IAAAwH,sBAAA,EAAAC,sBAAA;cAClC,CAAAD,sBAAA,GAAAhF,YAAY,CAACM,OAAO,cAAA0E,sBAAA,uBAApBA,sBAAA,CAAsBpE,GAAG,CAAC,UAAAiD,IAAI,EAAI;gBAC9BjD,GAAG,CAACsE,WAAW,CAACrB,IAAI,CAAC;cACzB,CAAC,CAAC;cAEF7D,YAAY,CAACM,OAAO,GAAArH,kBAAA,CAAO,IAAAyK,yBAAa,EAAC;gBAAEnG,QAAQ,EAARA,QAAQ;gBAAEJ,IAAI,EAAJA,IAAI;gBAAEM,EAAE,EAAFA,EAAE;gBAAED,YAAY,EAAZA;cAAa,CAAC,CAAC,CAAC;cAC/E,CAAAyH,sBAAA,GAAAjF,YAAY,CAACM,OAAO,cAAA2E,sBAAA,uBAApBA,sBAAA,CAAsBrE,GAAG,CAAC,UAAAiD,IAAI,EAAI;gBAC9BjD,GAAG,CAACkD,QAAQ,CAACD,IAAI,CAAC;cACtB,CAAC,CAAC;cACFjD,GAAG,CAAC+C,SAAS,GAAG,IAAAC,iBAAS,EAAC5D,YAAY,CAACM,OAAO,CAAC;YACnD,CAAC;;YAED;YACAM,GAAG,CAAC8C,aAAa,GAAGA,yBAAa;;YAEjC;YACA9C,GAAG,CAACuE,mBAAmB,GAAG,UAAA7C,OAAO,EAAI;cACjC1B,GAAG,CAACkE,cAAc,CAACM,mBAAmB,CAAC9C,OAAO,CAAC;YACnD,CAAC;;YAED;YACA1B,GAAG,CAACyE,qBAAqB,GAAG,YAAM;cAC9BzE,GAAG,CAACkE,cAAc,CAACQ,aAAa,CAAC,CAAC;YACtC,CAAC;;YAED;YACA1E,GAAG,CAAC+D,aAAa,GAAG,UAAApU,GAAG,EAAI;cACvB,OAAOqQ,GAAG,CAAC2E,YAAY,CAAC,CAAC,CAACC,IAAI,CAAC,UAAA7C,KAAK,EAAI;gBACpC,IAAIA,KAAK,CAACpS,GAAG,KAAKA,GAAG,EAAE;kBACnB,OAAOoS,KAAK;gBAChB;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACA/B,GAAG,CAAC6E,mBAAmB,GAAG,UAAAhO,IAAI,EAAI;cAC9B,IAAIgJ,MAAM,GAAG,EAAE;cACf,IAAIiF,SAAS,GAAG9E,GAAG,CAAC2E,YAAY,CAAC,CAAC;cAClC,IAAIhM,KAAK,CAACE,OAAO,CAAChC,IAAI,CAAC,IAAIA,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEf,MAAM,EAAE;gBACrCgP,SAAS,GAAGA,SAAS,CAAC3L,MAAM,CAAC,UAAA8J,IAAI;kBAAA,OAAIpM,IAAI,CAACkO,QAAQ,CAAC9B,IAAI,CAACtT,GAAG,CAAC;gBAAA,EAAC;cACjE;cACAmV,SAAS,CAAC9E,GAAG,CAAC,UAAA+B,KAAK,EAAI;gBACnB,IACIA,KAAK,CAACpS,GAAG,KACRoS,KAAK,YAAYiD,YAAK,IAAIjD,KAAK,YAAYkD,0BAAc,IAAIlD,KAAK,YAAYmD,sBAAU,IAAInD,KAAK,YAAYoD,oBAAQ,CAAC,IACvHpD,KAAK,CAAC1S,GAAG,CAAC,SAAS,CAAC,EACtB;kBACEwQ,MAAM,CAACtK,IAAI,CAACwM,KAAK,CAAC;gBACtB;cACJ,CAAC,CAAC;cACF,OAAOlC,MAAM;YACjB,CAAC;;YAED;YACAG,GAAG,CAACoF,mBAAmB,GAAG,UAAAvO,IAAI,EAAI;cAC9B,IAAIgJ,MAAM,GAAG,EAAE;cACf,IAAIiF,SAAS,GAAG9E,GAAG,CAAC2E,YAAY,CAAC,CAAC;cAClC,IAAIhM,KAAK,CAACE,OAAO,CAAChC,IAAI,CAAC,IAAIA,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEf,MAAM,EAAE;gBACrCgP,SAAS,GAAGA,SAAS,CAAC3L,MAAM,CAAC,UAAA8J,IAAI;kBAAA,OAAIpM,IAAI,CAACkO,QAAQ,CAAC9B,IAAI,CAACtT,GAAG,CAAC;gBAAA,EAAC;cACjE;cACAmV,SAAS,CAAC9E,GAAG,CAAC,UAAA+B,KAAK,EAAI;gBACnB,IAAIA,KAAK,CAACpS,GAAG,IAAIoS,KAAK,YAAYsD,aAAW,IAAItD,KAAK,CAAC1S,GAAG,CAAC,SAAS,CAAC,EAAE;kBACnEwQ,MAAM,CAACtK,IAAI,CAACwM,KAAK,CAAC;gBACtB;cACJ,CAAC,CAAC;cACF,OAAOlC,MAAM;YACjB,CAAC;;YAED;YACAG,GAAG,CAACsF,sBAAsB,GAAG,UAAAzO,IAAI,EAAI;cACjC,IAAIgJ,MAAM,GAAGG,GAAG,CAAC2E,YAAY,CAAC,CAAC,IAAI,EAAE;cACrC,OAAO9E,MAAM,CAAC1G,MAAM,CAAC,UAAA4I,KAAK,EAAI;gBAC1B,IAAI,OAAOlL,IAAI,KAAK,QAAQ,EAAE;kBAC1B,OAAOkL,KAAK,CAACpS,GAAG,KAAKkH,IAAI,IAAIkL,KAAK,CAAC1S,GAAG,CAAC,SAAS,CAAC;gBACrD,CAAC,MAAM,IAAIsJ,KAAK,CAACE,OAAO,CAAChC,IAAI,CAAC,EAAE;kBAC5B,OAAOA,IAAI,CAACkO,QAAQ,CAAChD,KAAK,CAACpS,GAAG,CAAC,IAAIoS,KAAK,CAAC1S,GAAG,CAAC,SAAS,CAAC;gBAC3D,CAAC,MAAM,IAAI0S,KAAK,CAACpS,GAAG,KAAK,WAAW,EAAE;kBAClC,OAAOoS,KAAK,CAAC1S,GAAG,CAAC,SAAS,CAAC,IAAI0S,KAAK,CAACpS,GAAG;gBAC5C;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACAqQ,GAAG,CAACgC,iBAAiB,GAAG,UAAAN,OAAO,EAAI;cAC/B,OAAO1B,GAAG,CAAC2E,YAAY,CAAC,CAAC,CAACC,IAAI,CAAC,UAAA7C,KAAK,EAAI;gBACpC,IAAIA,KAAK,CAACpS,GAAG,EAAE;kBAAA,IAAA4V,gBAAA,EAAAC,iBAAA;kBACX,IAAI9D,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE/R,GAAG,IAAI+R,OAAO,CAAC/R,GAAG,KAAKoS,KAAK,CAACpS,GAAG,EAAE;oBAC3C,OAAOoS,KAAK;kBAChB,CAAC,MAAM,IAAIA,KAAK,YAAYsD,aAAW,IAAItD,KAAK,CAACpS,GAAG,KAAK,WAAW,EAAE;oBAClE,IAAM8J,MAAM,GAAGsI,KAAK,CAAC4B,SAAS,CAAC,CAAC;oBAChC,IAAIlK,MAAM,CAACA,MAAM,IAAIA,MAAM,CAACA,MAAM,CAACgM,UAAU,CAAC/D,OAAO,CAAC,EAAE;sBACpD,OAAOK,KAAK;oBAChB,CAAC,MAAM,IAAItI,MAAM,CAACgM,UAAU,CAAC/D,OAAO,CAAC,EAAE;sBACnC,OAAOK,KAAK;oBAChB;kBACJ,CAAC,MAAM,IAAIL,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEgE,QAAQ,IAAI,CAAAhE,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEgE,QAAQ,MAAK3D,KAAK,CAACpS,GAAG,EAAE;oBAC7D,OAAOoS,KAAK;kBAChB,CAAC,MAAM,IAAIL,OAAO,aAAPA,OAAO,gBAAA6D,gBAAA,GAAP7D,OAAO,CAAEiE,OAAO,cAAAJ,gBAAA,eAAhBA,gBAAA,CAAkB5V,GAAG,IAAIoS,KAAK,CAACpS,GAAG,MAAK+R,OAAO,aAAPA,OAAO,wBAAA8D,iBAAA,GAAP9D,OAAO,CAAEiE,OAAO,cAAAH,iBAAA,uBAAhBA,iBAAA,CAAkB7V,GAAG,GAAE;oBACrE,OAAOoS,KAAK;kBAChB;gBACJ;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACA/B,GAAG,CAAC4F,uBAAuB,GAAG,UAAAC,IAAI,EAAI;cAClC,OAAO,IAAAD,+BAAuB,EAAC5F,GAAG,EAAE6F,IAAI,CAAC;YAC7C,CAAC;;YAED;YACA7F,GAAG,CAAC8F,SAAS,GAAG,YAAiB;cAAA,IAAhBC,MAAM,GAAAvM,SAAA,CAAA1D,MAAA,QAAA0D,SAAA,QAAA/E,SAAA,GAAA+E,SAAA,MAAG,CAAC,CAAC;cACxB,OAAO,IAAAsM,iBAAS,EAACC,MAAM,CAAC;YAC5B,CAAC;;YAED;YACA/F,GAAG,CAACgG,4BAA4B,GAAG,UAAAtE,OAAO,EAAI;cAC1C,IAAIK,KAAK,GAAG/B,GAAG,CAACgC,iBAAiB,CAACN,OAAO,CAAC;cAC1C,OAAOK,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEkE,QAAQ;YAC1B,CAAC;;YAED;YACAjG,GAAG,CAACkG,OAAO,GAAG,UAAAC,OAAO,EAAI;cACrB3H,MAAM,CAAC2H,OAAO,CAAC;YACnB,CAAC;;YAED;YACAnG,GAAG,CAACoG,OAAO,GAAG,YAAM;cAChB5H,MAAM,CAAC,IAAI,CAAC;YAChB,CAAC;YAEDwB,GAAG,CAACqG,YAAY,GAAG,UAAAF,OAAO,EAAI;cAC1BvH,WAAW,CAACuH,OAAO,CAAC;YACxB,CAAC;;YAED;YACAnG,GAAG,CAACsG,YAAY,GAAG,YAAM;cACrB1H,WAAW,CAAC,IAAI,CAAC;YACrB,CAAC;;YAED;YACAoB,GAAG,CAACuG,SAAS,GAAG,UAAAR,MAAM,EAAI;cACtB/H,QAAQ,CAAC+H,MAAM,CAAC;YACpB,CAAC;;YAED;YACA/F,GAAG,CAACwG,SAAS,GAAG,YAAM;cAClBxI,QAAQ,CAAC,IAAI,CAAC;YAClB,CAAC;;YAED;YACAgC,GAAG,CAACyG,oBAAoB;cAAA,IAAAC,KAAA,GAAAhM,iBAAA,eAAAzK,mBAAA,GAAAqG,IAAA,CAAG,SAAAqQ,QAAOhX,GAAG,EAAEiX,KAAK,EAAEvW,KAAK,EAAEwW,OAAO;gBAAA,IAAA9E,KAAA,EAAApT,GAAA;gBAAA,OAAAsB,mBAAA,GAAAkB,IAAA,UAAA2V,SAAAC,QAAA;kBAAA,kBAAAA,QAAA,CAAA5P,IAAA,GAAA4P,QAAA,CAAAlS,IAAA;oBAAA;sBACpDkN,KAAK,GAAG/B,GAAG,CAAC+D,aAAa,CAACpU,GAAG,CAAC;sBAClC,IAAIoS,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEiF,IAAI,EAAE;wBACTrY,GAAG,GAAGoT,KAAK,CAACkF,sBAAsB,CAACL,KAAK,EAAEvW,KAAK,CAAC;wBACpD,IAAI1B,GAAG,aAAHA,GAAG,eAAHA,GAAG,CAAE6E,IAAI,EAAE;0BACX7E,GAAG,CAAC6E,IAAI,CAAC,UAAA0T,QAAQ,EAAI;4BACjB,IAAIA,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAEpR,MAAM,EAAE;8BAClB,IAAI4L,OAAO,GAAGwF,QAAQ,CAAC,CAAC,CAAC;8BACzBlH,GAAG,CAACmH,YAAY,CAACzF,OAAO,CAACA,OAAO,IAAIA,OAAO,EAAEmF,OAAO,CAAC;4BACzD;0BACJ,CAAC,CAAC;wBACN,CAAC,MAAM;0BACH,IAAIlY,GAAG,EAAE;4BACLqR,GAAG,CAACmH,YAAY,CAACxY,GAAG,EAAEkY,OAAO,CAAC;0BAClC;wBACJ;sBACJ;oBAAC;oBAAA;sBAAA,OAAAE,QAAA,CAAAzP,IAAA;kBAAA;gBAAA,GAAAqP,OAAA;cAAA,CACJ;cAAA,iBAAAS,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;gBAAA,OAAAb,KAAA,CAAArN,KAAA,OAAAG,SAAA;cAAA;YAAA;;YAED;YACAwG,GAAG,CAACmH,YAAY,GAAG,UAACzF,OAAO,EAAEmF,OAAO,EAAK;cAAA,IAAAW,iBAAA,EAAAC,qBAAA;cACrC,CAAAD,iBAAA,GAAAtI,QAAQ,CAACQ,OAAO,cAAA8H,iBAAA,wBAAAC,qBAAA,GAAhBD,iBAAA,CAAkBL,YAAY,cAAAM,qBAAA,uBAA9BA,qBAAA,CAAA3X,IAAA,CAAA0X,iBAAA,EAAiC9F,OAAO,EAAEmF,OAAO,CAAC;YACtD,CAAC;;YAED;YACA7G,GAAG,CAAC0H,YAAY,GAAG,YAAM;cAAA,IAAAC,kBAAA,EAAAC,qBAAA;cACrB,CAAAD,kBAAA,GAAAzI,QAAQ,CAACQ,OAAO,cAAAiI,kBAAA,wBAAAC,qBAAA,GAAhBD,kBAAA,CAAkBD,YAAY,cAAAE,qBAAA,uBAA9BA,qBAAA,CAAA9X,IAAA,CAAA6X,kBAAiC,CAAC;YACtC,CAAC;YAED3H,GAAG,CAAC6H,WAAW,GAAG,YAAM;cAAA,IAAAC,kBAAA,EAAAC,qBAAA;cACpB,CAAAD,kBAAA,GAAA5I,QAAQ,CAACQ,OAAO,cAAAoI,kBAAA,wBAAAC,qBAAA,GAAhBD,kBAAA,CAAkBD,WAAW,cAAAE,qBAAA,uBAA7BA,qBAAA,CAAAjY,IAAA,CAAAgY,kBAAgC,CAAC;YACrC,CAAC;;YAED;YACA9H,GAAG,CAACgI,eAAe,GAAG,UAAAC,OAAO,EAAI;cAC7BjI,GAAG,CAAC2E,YAAY,CAAC,CAAC,CAACC,IAAI,CAAC,UAAA7C,KAAK,EAAI;gBAC7B,IAAIA,KAAK,YAAYmG,wBAAY,EAAE;kBAC/BnG,KAAK,CAACoG,KAAK,GAAGF,OAAO;gBACzB;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACAjI,GAAG,CAACoI,iBAAiB,GAAG,UAAAH,OAAO,EAAI;cAC/BjI,GAAG,CAAC2E,YAAY,CAAC,CAAC,CAACC,IAAI,CAAC,UAAA7C,KAAK,EAAI;gBAC7B,IAAIA,KAAK,YAAYmG,wBAAY,EAAE;kBAC/BnG,KAAK,CAACsG,OAAO,GAAGJ,OAAO;gBAC3B;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACAjI,GAAG,CAACsI,eAAe,GAAG,UAAAL,OAAO,EAAI;cAC7BjI,GAAG,CAAC2E,YAAY,CAAC,CAAC,CAACC,IAAI,CAAC,UAAA7C,KAAK,EAAI;gBAC7B,IAAIA,KAAK,YAAYmG,wBAAY,EAAE;kBAC/BnG,KAAK,CAACwG,KAAK,GAAGN,OAAO;gBACzB;cACJ,CAAC,CAAC;YACN,CAAC;;YAED;YACAjI,GAAG,CAAClD,qBAAqB,GAAG,UAAA4E,OAAO,EAAI;cACnC,IAAI5E,qBAAqB,EAAE;gBACvB,OAAOA,qBAAqB,CAAC4E,OAAO,CAAC;cACzC;YACJ,CAAC;YAED1B,GAAG,CAACwI,cAAc,GAAG,YAAM;cACvB,IAAM/F,IAAI,GAAGzC,GAAG,CAACyI,OAAO,CAAC,CAAC;cAE1B,IAAAC,eAAA,GAAejG,IAAI,CAACkG,SAAS,CAAC,CAAC;gBAAAC,gBAAA,GAAAhO,cAAA,CAAA8N,eAAA;gBAAxBG,CAAC,GAAAD,gBAAA;gBAAEE,CAAC,GAAAF,gBAAA;cAEX,OAAO;gBACHnM,IAAI,EAAEgG,IAAI,CAACsG,OAAO,CAAC,CAAC;gBACpBF,CAAC,EAADA,CAAC;gBACDC,CAAC,EAADA;cACJ,CAAC;YACL,CAAC;;YAED;YACA9I,GAAG,CAACgJ,OAAO,GAAG,UAAC9G,CAAC,EAAE2E,OAAO,EAAK;cAC1B,IAAI3E,CAAC,EAAE;gBAAA,IAAA+G,UAAA;gBACH,IAAIC,MAAM;gBAEV,IAAIhH,CAAC,YAAYmD,aAAW,EAAE;kBAC1B;kBACA6D,MAAM,GAAGhH,CAAC,CAACyB,SAAS,CAAC,CAAC,CAACwF,SAAS,CAAC,CAAC;gBACtC,CAAC,MAAM,IAAIjH,CAAC,YAAYkH,cAAY,EAAE;kBAClC;kBACAF,MAAM,GAAGhH,CAAC,CAACiH,SAAS,CAAC,CAAC;gBAC1B,CAAC,MAAM,IAAIxQ,KAAK,CAACE,OAAO,CAACqJ,CAAC,CAAC,IAAIA,CAAC,CAACmH,YAAY,EAAE;kBAAA,IAAAC,GAAA;kBAC3C;kBACA,IAAIC,YAAY,GAAG,IAAIH,cAAY,CAAC,CAAC;kBAErC,IAAIlH,CAAC,CAACmH,YAAY,IAAInH,CAAC,aAADA,CAAC,gBAAAoH,GAAA,GAADpH,CAAC,CAAG,CAAC,CAAC,cAAAoH,GAAA,eAANA,GAAA,CAAQD,YAAY,EAAE;oBACxC;oBACA,IAAIG,CAAC,GAAG,IAAAC,sCAAa,EAACvH,CAAC,CAAC;oBACxBqH,YAAY,CAACG,WAAW,CAACF,CAAC,CAAC;kBAC/B,CAAC,MAAM,IAAItH,CAAC,YAAYyH,WAAO,IAAI,CAAAzH,CAAC,aAADA,CAAC,uBAADA,CAAC,CAAG,CAAC,CAAC,aAAYyH,WAAO,EAAE;oBAC1D;oBACAJ,YAAY,CAACG,WAAW,CAACxH,CAAC,CAAC;kBAC/B;kBAEAgH,MAAM,GAAGK,YAAY,CAACJ,SAAS,CAAC,CAAC;gBACrC,CAAC,MAAM,IAAIjH,CAAC,aAADA,CAAC,gBAAA+G,UAAA,GAAD/G,CAAC,CAAEyD,OAAO,cAAAsD,UAAA,eAAVA,UAAA,CAAYW,QAAQ,EAAE;kBAC7B;kBACAV,MAAM,GAAGhH,CAAC,CAACyD,OAAO,CAACiE,QAAQ,CAACT,SAAS,CAAC,CAAC;gBAC3C;gBAEA,IAAID,MAAM,EAAE;kBACR,IAAIhH,CAAC,aAADA,CAAC,eAADA,CAAC,CAAE2H,SAAS,EAAE;oBACd;kBACJ;kBAEA,IAAIC,WAAW,GAAG9J,GAAG,CAACyI,OAAO,CAAC,CAAC,CAACM,OAAO,CAAC,CAAC;kBACzC,IAAMnI,QAAO,GAAGrD,cAAc,IAAI,EAAE;kBACpCyC,GAAG,CAACyI,OAAO,CAAC,CAAC,CAACsB,GAAG,CAACb,MAAM,EAAA5P,aAAA;oBACpB0Q,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;oBAC7BpJ,OAAO,EAAEkJ,WAAW,GAAGlJ,QAAO,GAAGkJ,WAAW,GAAGlJ,QAAO;oBACtDqJ,QAAQ,EAAE;kBAAG,GACVpD,OAAO,CACb,CAAC;gBACN,CAAC,MAAM;kBACH7G,GAAG,CAACyI,OAAO,CAAC,CAAC,CAACyB,OAAO,CAAA5Q,aAAA,CAAAA,aAAA,KAAM0G,GAAG,CAACgB,WAAW;oBAAEiJ,QAAQ,EAAE;kBAAG,GAAKpD,OAAO,CAAE,CAAC;gBAC5E;cACJ,CAAC,MAAM;gBACH7G,GAAG,CAACyI,OAAO,CAAC,CAAC,CAACyB,OAAO,CAAA5Q,aAAA,CAAAA,aAAA,KAAM0G,GAAG,CAACgB,WAAW;kBAAEiJ,QAAQ,EAAE;gBAAG,GAAKpD,OAAO,CAAE,CAAC;cAC5E;YACJ,CAAC;YAED7G,GAAG,CAACmK,gBAAgB,GAAG,UAAAtD,OAAO,EAAI;cAC9B,IAAQgC,CAAC,GAAchC,OAAO,CAAtBgC,CAAC;gBAAEC,CAAC,GAAWjC,OAAO,CAAnBiC,CAAC;gBAAErM,IAAI,GAAKoK,OAAO,CAAhBpK,IAAI;cAClB,IAAIoM,CAAC,IAAIC,CAAC,EAAE;gBACR,IAAMrG,IAAI,GAAGzC,GAAG,CAACyI,OAAO,CAAC,CAAC;gBAC1BhG,IAAI,CAACyH,OAAO,CAAC;kBAAEzN,IAAI,EAAEA,IAAI,IAAIgG,IAAI,CAACsG,OAAO,CAAC,CAAC;kBAAEzM,MAAM,EAAE,CAACjC,MAAM,CAACwO,CAAC,CAAC,EAAExO,MAAM,CAACyO,CAAC,CAAC;gBAAE,CAAC,CAAC;cAClF;YACJ,CAAC;;YAED;YACA9I,GAAG,CAACoK,EAAE,CAAC,aAAa,EAAE,UAAAzI,KAAK,EAAI;cAC3B,IAAI,EAAE3B,GAAG,CAACqK,cAAc,IAAIrK,GAAG,CAACsK,aAAa,IAAItK,GAAG,CAACuK,UAAU,CAAC,EAAE;gBAC9D,IAAM7I,OAAO,GAAG1B,GAAG,CAACwK,kBAAkB,CAAC7I,KAAK,CAAC8I,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAI/I,OAAO,EAAE;kBACT,IAAIK,KAAK,GAAG/B,GAAG,CAACgC,iBAAiB,CAACN,OAAO,CAAC;kBAE1C1C,SAAS,CAACU,OAAO,CAAClD,KAAK,CAACkO,MAAM,GAAG,SAAS,CAAC,CAAC;;kBAE5C,IAAI3I,KAAK,KAAKA,KAAK,CAAC4I,UAAU,IAAI5I,KAAK,CAAC6I,WAAW,CAAC,EAAE;oBAClD,IAAQD,UAAU,GAAkB5I,KAAK,CAAjC4I,UAAU;sBAAEC,WAAW,GAAK7I,KAAK,CAArB6I,WAAW;oBAC/B,IAAIzC,KAAK;oBACT,IAAIyC,WAAW,EAAE;sBACbzC,KAAK,GAAGyC,WAAW,CAAClJ,OAAO,CAACiE,OAAO,CAAC;oBACxC,CAAC,MAAM;sBACHwC,KAAK,GAAGzG,OAAO,CAACiE,OAAO,CAACgF,UAAU,CAAC;oBACvC;oBAEA,IAAIxC,KAAK,EAAE;sBACPnI,GAAG,CAACqG,YAAY,CAAC8B,KAAK,CAAC;oBAC3B,CAAC,MAAM;sBACHnI,GAAG,CAACsG,YAAY,CAAC,CAAC;oBACtB;kBACJ,CAAC,MAAM;oBACHtG,GAAG,CAACsG,YAAY,CAAC,CAAC;kBACtB;gBACJ,CAAC,MAAM;kBACHtG,GAAG,CAACsG,YAAY,CAAC,CAAC;kBAElBtH,SAAS,CAACU,OAAO,CAAClD,KAAK,CAACkO,MAAM,GAAG,SAAS,CAAC,CAAC;gBAChD;cACJ;YACJ,CAAC,CAAC;;YAEF;YACA,IAAAG,0BAAkB,EAAC7K,GAAG,EAAEhE,KAAK,CAAC;;YAuB9B;;YAEAgE,GAAG,CAACoK,EAAE,CAAC,aAAa,EAAE,UAAAzI,KAAK,EAAI;cAC3BR,gBAAgB,CAAC,aAAa,EAAEQ,KAAK,CAAC;cAEtC,IAAMD,OAAO,GAAG1B,GAAG,CAACwK,kBAAkB,CAAC7I,KAAK,CAAC8I,KAAK,CAAC,CAAC,CAAC,CAAC;cAEtD,IAAI/I,OAAO,EAAE;gBACTN,aAAa,CAAC,aAAa,EAAEM,OAAO,EAAEC,KAAK,CAAC;;gBAE5C;gBACA,IAAIN,YAAY,EAAE;kBACd,IAAIyJ,GAAG,GAAG,IAAAC,YAAM,EAACrJ,OAAO,CAAC;kBACzB,IAAIsJ,QAAQ,GAAG,IAAAD,YAAM,EAAC1J,YAAY,CAAC;;kBAEnC;kBACA,IAAIyJ,GAAG,KAAKE,QAAQ,EAAE;oBAClB5J,aAAa,CAAC,cAAc,EAAEC,YAAY,EAAEM,KAAK,CAAC;oBAElDP,aAAa,CAAC,cAAc,EAAEM,OAAO,EAAEC,KAAK,CAAC;oBAC7CN,YAAY,GAAGK,OAAO;kBAC1B;gBACJ,CAAC,MAAM;kBACHN,aAAa,CAAC,cAAc,EAAEM,OAAO,EAAEC,KAAK,CAAC;kBAC7CN,YAAY,GAAGK,OAAO;gBAC1B;gBAEAN,aAAa,CAAC,aAAa,EAAEM,OAAO,EAAEC,KAAK,CAAC;cAChD,CAAC,MAAM;gBACH,IAAIN,YAAY,EAAE;kBACdD,aAAa,CAAC,cAAc,EAAEC,YAAY,EAAEM,KAAK,CAAC;gBACtD;gBAEAN,YAAY,GAAG,IAAI;cACvB;YACJ,CAAC,CAAC;;YAEF;YACArB,GAAG,CAACoK,EAAE,CAAC,OAAO;cAAA,IAAAa,KAAA,GAAAvQ,iBAAA,eAAAzK,mBAAA,GAAAqG,IAAA,CAAE,SAAA4U,SAAMvJ,KAAK;gBAAA,IAAAuF,QAAA,EAAAiE,UAAA,EAAAC,WAAA,EAAAvL,MAAA,EAAAwL,SAAA;gBAAA,OAAApb,mBAAA,GAAAkB,IAAA,UAAAma,UAAAC,SAAA;kBAAA,kBAAAA,SAAA,CAAApU,IAAA,GAAAoU,SAAA,CAAA1W,IAAA;oBAAA;sBACvBsM,gBAAgB,CAAC,SAAS,EAAEQ,KAAK,CAAC;sBAClC3B,GAAG,CAACoG,OAAO,CAAC,CAAC;sBACbpG,GAAG,CAACsG,YAAY,CAAC,CAAC;sBAClBtG,GAAG,CAACwL,YAAY,GAAG7J,KAAK;sBACpBuF,QAAQ,GAAGlH,GAAG,CAACwK,kBAAkB,CAAC7I,KAAK,CAAC8I,KAAK,CAAC,IAAI,EAAE;sBAAA,IAElDzK,GAAG,CAACqK,cAAc,IAAIrK,GAAG,CAACsK,aAAa;wBAAAiB,SAAA,CAAA1W,IAAA;wBAAA;sBAAA;sBAAA,OAAAsW,UAAA,GAErCjE,QAAQ,cAAAiE,UAAA,gBAAAC,WAAA,GAARD,UAAA,CAAW,CAAC,CAAC,cAAAC,WAAA,eAAbA,WAAA,CAAeK,WAAW;wBAAAF,SAAA,CAAA1W,IAAA;wBAAA;sBAAA;sBAAA,OAAA0W,SAAA,CAAAjX,MAAA,WACnB8M,aAAa,CAAC,SAAS,EAAE8F,QAAQ,CAAC,CAAC,CAAC,EAAEvF,KAAK,CAAC;oBAAA;sBAAA,IAGlDuF,QAAQ,CAACpR,MAAM;wBAAAyV,SAAA,CAAA1W,IAAA;wBAAA;sBAAA;sBACZgL,MAAM,GAAGG,GAAG,CAAC6E,mBAAmB,CAAC,CAAC,CAAC1L,MAAM,CAAC,UAAA4I,KAAK;wBAAA,OAAI,CAACA,KAAK,CAACkE,QAAQ;sBAAA,EAAC;sBAAAsF,SAAA,CAAA1W,IAAA;sBAAA,OACjD,IAAA6W,iCAAyB,EAAC/J,KAAK,EAAE3B,GAAG,EAAEH,MAAM,CAAC;oBAAA;sBAA/DwL,SAAS,GAAAE,SAAA,CAAApX,IAAA;sBACb,IAAIkX,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEvV,MAAM,EAAE;wBACnBoR,QAAQ,GAAG,CAACmE,SAAS,CAAC,CAAC,CAAC,CAAC;sBAC7B;oBAAC;sBAGL,IAAInE,QAAQ,CAACpR,MAAM,EAAE;wBACjBsL,aAAa,CAAC,SAAS,EAAE8F,QAAQ,CAAC,CAAC,CAAC,EAAEvF,KAAK,CAAC;;wBAE5C;wBACAuF,QAAQ,GAAGA,QAAQ,CAAC/N,MAAM,CAAC,UAAAuI,OAAO,EAAI;0BAClC,IAAIK,KAAK,GAAG/B,GAAG,CAACgC,iBAAiB,CAACN,OAAO,CAAC;0BAC1C,OAAOK,KAAK,IAAI,CAACA,KAAK,CAACkE,QAAQ,IAAIlE,KAAK,CAAC4J,QAAQ;wBACrD,CAAC,CAAC;wBAEF,IAAIzE,QAAQ,CAACpR,MAAM,EAAE;0BACjBkK,GAAG,CAACmH,YAAY,CAACD,QAAQ,CAAC;wBAC9B,CAAC,MAAM;0BACHlH,GAAG,CAAC0H,YAAY,CAAC,CAAC;wBACtB;sBACJ,CAAC,MAAM;wBACH1H,GAAG,CAAC0H,YAAY,CAAC,CAAC;sBACtB;sBAAC6D,SAAA,CAAA1W,IAAA;sBAAA;oBAAA;sBACE,IAAIqS,QAAQ,CAACpR,MAAM,EAAE;wBACxBsL,aAAa,CAAC,SAAS,EAAE8F,QAAQ,CAAC,CAAC,CAAC,EAAEvF,KAAK,CAAC;sBAChD;oBAAC;oBAAA;sBAAA,OAAA4J,SAAA,CAAAjU,IAAA;kBAAA;gBAAA,GAAA4T,QAAA;cAAA,CACJ;cAAA,iBAAAU,GAAA;gBAAA,OAAAX,KAAA,CAAA5R,KAAA,OAAAG,SAAA;cAAA;YAAA,IAAC;;YAEF;YACAwG,GAAG,CAACoK,EAAE,CAAC,UAAU,EAAE,UAAAzI,KAAK,EAAI;cACxBR,gBAAgB,CAAC,eAAe,EAAEQ,KAAK,CAAC;cAExC,IAAMD,OAAO,GAAG1B,GAAG,CAACwK,kBAAkB,CAAC7I,KAAK,CAAC8I,KAAK,CAAC,CAAC,CAAC,CAAC;cAEtDrJ,aAAa,CAAC,eAAe,EAAEM,OAAO,EAAEC,KAAK,CAAC;YAClD,CAAC,CAAC;;YAEF;YACA3B,GAAG,CAACjD,MAAM,GAAG,UAAAN,IAAI,EAAI;cACjBM,MAAM,IAAIA,MAAM,CAACN,IAAI,CAAC;YAC1B,CAAC;;YAED;YACAuD,GAAG,CAACyI,OAAO,CAAC,CAAC,CAAC2B,EAAE,CAAC,mBAAmB,EAAE,YAAW;cAC7C,IAAIjL,OAAO,CAACO,OAAO,EAAE;gBACjBmM,YAAY,CAAC1M,OAAO,CAACO,OAAO,CAAC;cACjC;cAEAP,OAAO,CAACO,OAAO,GAAGoM,UAAU,CAAC,YAAM;gBAC/B,IAAIrP,IAAI,GAAGuD,GAAG,CAACyI,OAAO,CAAC,CAAC,CAACM,OAAO,CAAC,CAAC;gBAClC/I,GAAG,CAACjD,MAAM,CAACN,IAAI,CAAC;cACpB,CAAC,EAAE,EAAE,CAAC;YACV,CAAC,CAAC;YAEFC,UAAU,IAAIA,UAAU,CAACsD,GAAG,CAAC;YAE7BnC,YAAY,CAAC,IAAI,CAAC;YAElB0B,MAAM,CAACwM,gBAAgB,CAAC,QAAQ,EAAEtM,YAAY,CAAC;UAAC;UAAA;YAAA,OAAA8B,SAAA,CAAAjK,IAAA;QAAA;MAAA,GAAAkJ,QAAA;IAAA,CACnD;IAAA,gBAriBKlB,OAAOA,CAAA;MAAA,OAAAiB,IAAA,CAAAlH,KAAA,OAAAG,SAAA;IAAA;EAAA,GAqiBZ;EAED,IAAMiG,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;IACvB,IAAIN,OAAO,CAACO,OAAO,EAAE;MACjBmM,YAAY,CAAC1M,OAAO,CAACO,OAAO,CAAC;IACjC;IAEAP,OAAO,CAACO,OAAO,GAAGoM,UAAU,CAAC,YAAM;MAC/BjN,MAAM,CAACa,OAAO,IAAIb,MAAM,CAACa,OAAO,CAACsM,UAAU,CAAC,CAAC;IACjD,CAAC,EAAE,EAAE,CAAC;EACV,CAAC;EAED,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAGtK,KAAK,EAAI;IACzB,IAAIhD,QAAQ,IAAIJ,GAAG,EAAE;MACjB,IAAI2N,GAAG,GAAGC,QAAQ,CAACC,cAAc,CAAC,KAAK,CAAC;MAExC,IAAIC,IAAI,GAAG1K,KAAK,CAAC2K,WAAW,CAACC,OAAO,GAAG,EAAE;MACzC,IAAIC,GAAG,GAAG7K,KAAK,CAAC2K,WAAW,CAACG,OAAO,GAAG,EAAE;;MAExC;MACA,IAAMC,UAAU,GACZ7N,MAAM,CAACa,OAAO,CAACiN,WAAW,CAAC,CAAC,CAACC,WAAW,GAAGV,GAAG,CAACW,qBAAqB,CAAC,CAAC,CAAC3Q,KAAK,GAAG,EAAE;MACrF,IAAM4Q,QAAQ,GACVjO,MAAM,CAACa,OAAO,CAACiN,WAAW,CAAC,CAAC,CAACI,YAAY,GAAGb,GAAG,CAACW,qBAAqB,CAAC,CAAC,CAACzQ,MAAM,GAAG,EAAE;MAEvFiQ,IAAI,GAAGA,IAAI,GAAGK,UAAU,GAAGA,UAAU,GAAGL,IAAI;MAC5CG,GAAG,GAAGA,GAAG,GAAGM,QAAQ,GAAGA,QAAQ,GAAGN,GAAG;MAErCN,GAAG,CAAC1P,KAAK,CAAC6P,IAAI,MAAAW,MAAA,CAAMX,IAAI,OAAI;MAC5BH,GAAG,CAAC1P,KAAK,CAACgQ,GAAG,MAAAQ,MAAA,CAAMR,GAAG,OAAI;IAC9B;EACJ,CAAC;EAED,oBACI7f,MAAA,YAAAsgB,aAAA,CAACngB,KAAA,CAAAogB,cAAc;IAACC,MAAM,EAAEC;EAAK,gBACzBzgB,MAAA,YAAAsgB,aAAA;IACIzQ,KAAK,EAAAlD,aAAA;MAAI4C,KAAK,EAALA,KAAK;MAAEE,MAAM,EAANA,MAAM;MAAEiR,UAAU,EAAE9Q,IAAI,GAAG,SAAS,GAAG;IAAS,GAAKC,KAAK,CAAG;IAC7E8Q,SAAS,EAAE,IAAAC,sBAAU,EAAC,kBAAkB,EAAE;MAAE,uBAAuB,EAAEhR;IAAK,CAAC;EAAE,gBAE7E5P,MAAA,YAAAsgB,aAAA;IACIO,GAAG,EAAExO,SAAU;IACfsO,SAAS,EAAE,IAAAC,sBAAU,EAAC,gBAAgB,CAAE;IACxC/Q,KAAK,EAAE;MAAEN,KAAK,EAALA,KAAK;MAAEE,MAAM,EAANA;IAAO,CAAE;IACzB6P,WAAW,EAAEA,WAAY;IACzBwB,WAAW,EAAE,SAAAA,YAAA;MAAA,OAAMrP,SAAS,CAAC,IAAI,CAAC;IAAA,CAAC;IACnCsP,UAAU,EAAE,SAAAA,WAAA;MAAA,OAAMtP,SAAS,CAAC,KAAK,CAAC;IAAA;EAAC,GAElC,CAACO,QAAQ,IAAIJ,GAAG,KAAKJ,MAAM,iBACxBxR,MAAA,YAAAsgB,aAAA;IACIU,EAAE,EAAC,KAAK;IACRL,SAAS,EAAE,IAAAC,sBAAU,EAAC,mBAAmB,CAAE;IAC3C/Q,KAAK,EAAAlD,aAAA,KAAO2D,aAAa;EAAG,GAE3B0B,QAAQ,IAAIJ,GACZ,CAER,CAAC,EAELX,SAAS,iBACNjR,MAAA,YAAAsgB,aAAA,CAAC5e,SAAA,WAAQ;IACLgC,KAAK,EAAE;MACH2P,GAAG,EAAEnB,MAAM,CAACa,OAAO;MACnB6G,SAAS,EAAEvK,KAAK,CAACuK,SAAS;MAC1BqH,YAAY,EAAE5R,KAAK,CAAC4R,YAAY;MAChCrR,IAAI,EAAJA;IACJ;EAAE,gBAEF5P,MAAA,YAAAsgB,aAAA,CAACxf,MAAA,WAAK;IAACuS,GAAG,EAAEnB,MAAM,CAACa,OAAQ;IAAC8N,GAAG,EAAEtO;EAAS,CAAE,CAAC,EAC5C7C,QACK,CAEb,CACO,CAAC;AAEzB;AAAC,IAAAwR,QAAA,GAEc9R,GAAG;AAAA7L,OAAA,cAAA2d,QAAA;AAElB9R,GAAG,CAAC+R,SAAS,GAAG;EACZ5R,KAAK,EAAE6R,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,MAAM,EAAEF,qBAAS,CAACG,MAAM,CAAC,CAAC;EAChE9R,MAAM,EAAE2R,qBAAS,CAACC,SAAS,CAAC,CAACD,qBAAS,CAACE,MAAM,EAAEF,qBAAS,CAACG,MAAM,CAAC,CAAC;EACjExR,UAAU,EAAEqR,qBAAS,CAACI,IAAI;EAC1B7R,MAAM,EAAEyR,qBAAS,CAACK,KAAK;EACvB3R,IAAI,EAAEsR,qBAAS,CAACG,MAAM;EACtBvN,OAAO,EAAEoN,qBAAS,CAACG,MAAM;EACzBtN,OAAO,EAAEmN,qBAAS,CAACG,MAAM;EACzB3R,IAAI,EAAEwR,qBAAS,CAACM,IAAI;EACpB1R,QAAQ,EAAEoR,qBAAS,CAACC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;EAC7CnR,EAAE,EAAEkR,qBAAS,CAACE,MAAM,CAACK,UAAU;EAC/B9R,KAAK,EAAEuR,qBAAS,CAAChX,MAAM;EACvB6F,YAAY,EAAEmR,qBAAS,CAAChX,MAAM;EAC9ByG,OAAO,EAAEuQ,qBAAS,CAACM;AACvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_antd","_zh_CN","_interopRequireDefault","_propTypes","_ol","_layer","_source","_control","_util","_classnames","_getDefaultMapInfo","_Popup","_getBaseLayers","_TdtImageryProvider","_HighLayer","_Search","_events","_layer2","_createFeatureCollection","_FeatureLayer","_ImageLayer","_ImageTileLayer","_ahooks","_provider","_Layers","_Analysis","_WmsLayer","_search","_lodash","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_regeneratorRuntime","exports","Op","hasOwn","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","_catch","thrown","delegateYield","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","apply","_objectSpread","target","arguments","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","String","input","hint","prim","toPrimitive","res","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","Map","props","_props$width","width","_props$height","height","children","center","dark","style","zoom","createdMap","mapStyle","baseMapStyle","tk","onCloseTemplateBefore","onZoom","customBaseLayers","positionStyle","_props$autoView","autoView","_props$closePopupAuto","closePopupAutoView","hidePopupTable","fitViewMaxZoom","encrypt","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","setModal","_useState5","_useState6","tipVis","setTipVis","_useState7","_useState8","tip","setTip","_useState9","_useState10","pointTip","setPointTip","mapRef","useRef","timerRef","mapDomRef","highLayerRef","popupRef","timeRef","baseLayerRef","useEffect","initMap","window","removeEventListener","handleResize","current","destroy","setInterval","layers","getLayers","getArray","map","v","autoRefresh","refresh","clearInterval","useUpdateEffect","setMapStyle","_ref","_callee3","_baseLayerRef$current","defaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","otherDefaultMapInfo","viewDefault","baseLayerParams","_baseLayerRef$current2","registerMapEvent","registerEvent","hoverFeature","_callee3$","_context3","_registerEvent","eventTarget","feature","event","_feature$eventTarget","properties","getProperties","layer","getLayerByFeature","_registerMapEvent","e","getDefaultMapInfo","OlMap","controls","defaultControls","extend","pixelRatio","view","View","projection","constrainResolution","smoothResolutionConstraint","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","_mapStyle","_map$getLayerByKey","_map$getLayerByKey2","_TdtImageryProvider$g","TdtImageryProvider","getSource","_TdtImageryProvider$g2","tileLayerSource","markLayerSource","getLayerByKey","setSource","HighLayer","highlightLayer","changeBaseLayer","_baseLayerRef$current3","_baseLayerRef$current4","removeLayer","setHighlightFeature","addHighlightFeature","clearHighlightFeature","clearFeatures","getAllLayers","find","getWmsVisibleLayers","allLayers","includes","Image","ImageTileLayer","ImageLayer","WmsLayer","getWfsVisibleLayers","VectorLayer","getVisibleLayersByKeys","_feature$values_","_feature$values_2","hasFeature","layerKey","values_","getMapFeatureInfoByText","text","poiSearch","params","getLayerHasViewOnlyByFeature","viewOnly","showTip","content","hideTip","showPointTip","hidePointTip","showModal","hideModal","showTemplateByFilter","_ref2","_callee","field","options","_callee$","_context","show","getFeatureByFieldValue","features","showTemplate","_x2","_x3","_x4","_x5","_popupRef$current","_popupRef$current$sho","hideTemplate","_popupRef$current2","_popupRef$current2$hi","setLastView","_popupRef$current3","_popupRef$current3$se","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","getViewOptions","getView","_view$getCenter","getCenter","_view$getCenter2","x","y","getZoom","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","f","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","fit","padding","duration","animate","fitViewByOptions","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","tipTemplate","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features2","_features2$","_features","_callee2$","_context2","_clickObject","isHighLight","getWMSFeatureInfoByLayers","template","_x6","clearTimeout","setTimeout","addEventListener","updateSize","onMouseMove","dom","document","getElementById","left","nativeEvent","offsetX","top","offsetY","rightBound","getViewport","clientWidth","getBoundingClientRect","topBound","clientHeight","concat","createElement","ConfigProvider","locale","zhCN","background","className","classnames","ref","onMouseOver","onMouseOut","id","onPopupClick","_default","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { ConfigProvider } from 'antd';\nimport zhCN from 'antd/es/locale/zh_CN';\nimport PropTypes from 'prop-types';\nimport { Map as OlMap, View, Feature } from 'ol';\nimport { Vector as VectorLayer, Image } from 'ol/layer';\nimport { Vector as VectorSource } from 'ol/source';\nimport { defaults as defaultControls } from 'ol/control';\nimport { getUid } from 'ol/util';\nimport classnames from 'classnames';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport Popup from './Popup';\nimport getBaseLayers from './getBaseLayers';\nimport TdtImageryProvider from './getBaseLayers/imagery/tdt/TdtImageryProvider';\nimport HighLayer from '../tools/Utils/HighLayer';\nimport { getMapFeatureInfoByText } from '../tools/Search';\nimport { registerEventLayer } from '../events';\nimport { getWMSFeatureInfoByLayers } from '../_util/layer';\nimport { createGeoJson } from '../feature-layer/createFeatureCollection';\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport ImageLayer from '../image-layer/ImageLayer';\nimport ImageTileLayer from '../image-layer/ImageTileLayer';\nimport { useUpdateEffect } from 'ahooks';\nimport Provider from '../provider';\nimport Layers from './Layers';\nimport Analysis from './Analysis';\nimport WmsLayer from '../wms-layer/WmsLayer';\nimport 'ol/ol.css';\nimport './style';\nimport { poiSearch } from '../_util/search';\nimport { cloneDeep } from 'lodash';\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n children,\n center,\n dark,\n style,\n zoom,\n createdMap,\n mapStyle,\n // bmap 百度地图 amap 高德地图 tmap 天地图\n baseMapStyle,\n tk,\n onCloseTemplateBefore,\n onZoom,\n customBaseLayers,\n positionStyle,\n autoView = true,\n closePopupAutoView = true,\n hidePopupTable,\n fitViewMaxZoom,\n encrypt\n } = props;\n const [mapLoaded, setMapLoaded] = useState(false);\n const [, setModal] = useState(null);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n const [pointTip, setPointTip] = useState(null);\n const mapRef = useRef(null);\n const timerRef = useRef(null);\n const mapDomRef = useRef(null);\n const highLayerRef = useRef();\n const popupRef = useRef();\n const timeRef = useRef(null);\n\n const baseLayerRef = useRef([]);\n\n useEffect(() => {\n initMap();\n return () => {\n window.removeEventListener('resize', handleResize);\n highLayerRef.current && highLayerRef.current.destroy();\n };\n }, []);\n\n useEffect(() => {\n if (mapRef.current) {\n timerRef.current = setInterval(() => {\n const layers = mapRef.current.getLayers().getArray() || [];\n layers.map(v => {\n if (v.autoRefresh && v.key && v.get('visible') && v.refresh) {\n v.refresh();\n }\n });\n }, 10000);\n }\n return () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n }\n };\n }, []);\n\n useUpdateEffect(() => {\n mapRef.current.setMapStyle(mapStyle);\n }, [mapStyle]);\n\n const initMap = async () => {\n const defaultMapInfo = getDefaultMapInfo();\n const { minZoom, maxZoom, defaultZoomLevel, longitude, latitude, ...otherDefaultMapInfo } = defaultMapInfo;\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [116.397228, 30.9096],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 4,\n minZoom: (minZoom && Number(minZoom)) || props.minZoom || 4,\n maxZoom: (maxZoom && Number(maxZoom)) || props.maxZoom,\n };\n let map = new OlMap({\n target: mapDomRef.current,\n controls: defaultControls({ zoom: false }).extend([]),\n // layers: [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })],\n pixelRatio: 1,\n view: new View({\n ...viewDefault,\n projection: 'EPSG:4326',\n constrainResolution: true,\n }),\n // 设置缩放级别为整数\n constrainResolution: true,\n // 关闭无级缩放地图\n smoothResolutionConstraint: false,\n });\n\n // 统一加密啊配置\n map.encrypt = encrypt;\n\n const baseLayerParams = {\n ...otherDefaultMapInfo,\n mapStyle: mapStyle || defaultMapInfo.mapStyle || 'vec',\n baseMapStyle: baseMapStyle || defaultMapInfo.baseMapStyle || 'TdtImageryProvider',\n dark: dark || defaultMapInfo.dark,\n tk: tk || defaultMapInfo.tk,\n };\n\n if (customBaseLayers) {\n baseLayerRef.current = [...customBaseLayers(baseLayerParams)];\n } else {\n baseLayerRef.current = [...getBaseLayers(baseLayerParams)];\n }\n\n // 用于鹰眼图层\n map.baseLayer = cloneDeep(baseLayerRef.current);\n\n if (baseLayerRef.current?.length) {\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n }\n\n map.tk = tk;\n\n // 隐藏表格弹出框\n map.hidePopupTable = hidePopupTable;\n\n // 自动调整视角\n map.autoView = autoView;\n\n // 关闭气泡自动调整视角\n map.closePopupAutoView = closePopupAutoView;\n\n // 图层管理\n map.layers = new Layers({ map });\n\n // 分析管理\n map.analysis = new Analysis({ map });\n\n mapRef.current = map;\n\n // 地图视角默认配置\n map.viewDefault = viewDefault;\n\n // 设置地图底图样式\n map.setMapStyle = _mapStyle => {\n let [tileLayerSource, markLayerSource] = TdtImageryProvider.getSource({\n mapStyle: _mapStyle,\n tk,\n });\n\n map.getLayerByKey('__TDT_TILE')?.setSource(tileLayerSource);\n map.getLayerByKey('__TDT_MARK')?.setSource(markLayerSource);\n };\n\n // 高亮效果\n highLayerRef.current = new HighLayer({ map });\n map.highlightLayer = highLayerRef.current;\n\n // 切换底图\n map.changeBaseLayer = baseMapStyle => {\n baseLayerRef.current?.map(item => {\n map.removeLayer(item);\n });\n\n baseLayerRef.current = [...getBaseLayers({ mapStyle, dark, tk, baseMapStyle })];\n baseLayerRef.current?.map(item => {\n map.addLayer(item);\n });\n map.baseLayer = cloneDeep(baseLayerRef.current);\n };\n\n // 获取基础图层\n map.getBaseLayers = getBaseLayers;\n\n // 设置高亮\n map.setHighlightFeature = feature => {\n map.highlightLayer.addHighlightFeature(feature);\n };\n\n // 清除高亮\n map.clearHighlightFeature = () => {\n map.highlightLayer.clearFeatures();\n };\n\n // 根 key 查找图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n if (layer.key === key) {\n return layer;\n }\n });\n };\n\n // 查找展示的绑定key的wms图层\n map.getWmsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (\n layer.key &&\n (layer instanceof Image || layer instanceof ImageTileLayer || layer instanceof ImageLayer || layer instanceof WmsLayer) &&\n layer.get('visible')\n ) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 查找展示的绑定key的wfs图层\n map.getWfsVisibleLayers = keys => {\n let layers = [];\n let allLayers = map.getAllLayers();\n if (Array.isArray(keys) && keys?.length) {\n allLayers = allLayers.filter(item => keys.includes(item.key));\n }\n allLayers.map(layer => {\n if (layer.key && layer instanceof VectorLayer && layer.get('visible')) {\n layers.push(layer);\n }\n });\n return layers;\n };\n\n // 根据key查找展示的图层,不传keys查所有展示的除底图的带key的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.get('visible');\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.get('visible');\n } else if (layer.key !== \"Highlight\") {\n return layer.get('visible') && layer.key;\n }\n });\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = feature => {\n return map.getAllLayers().find(layer => {\n if (layer.key) {\n if (feature?.key && feature.key === layer.key) {\n return layer;\n } else if (layer instanceof VectorLayer && layer.key !== 'Highlight') {\n const source = layer.getSource();\n if (source.source && source.source.hasFeature(feature)) {\n return layer;\n } else if (source.hasFeature(feature)) {\n return layer;\n }\n } else if (feature?.layerKey && feature?.layerKey === layer.key) {\n return layer;\n } else if (feature?.values_?.key && layer.key === feature?.values_?.key) {\n return layer;\n }\n }\n });\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = text => {\n return getMapFeatureInfoByText(map, text);\n };\n\n // poi查询\n map.poiSearch = (params = {}) => {\n return poiSearch(params);\n };\n\n // 获取图层是否允许点击\n map.getLayerHasViewOnlyByFeature = feature => {\n let layer = map.getLayerByFeature(feature);\n return layer?.viewOnly;\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n map.showPointTip = content => {\n setPointTip(content);\n };\n\n // 隐藏提示\n map.hidePointTip = () => {\n setPointTip(null);\n };\n\n // 展示弹窗\n map.showModal = params => {\n setModal(params);\n };\n\n // 隐藏弹窗\n map.hideModal = () => {\n setModal(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, options) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj?.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(feature.feature || feature, options);\n }\n });\n } else {\n if (obj) {\n map.showTemplate(obj, options);\n }\n }\n }\n };\n\n // 展示看板\n map.showTemplate = (feature, options) => {\n popupRef.current?.showTemplate?.(feature, options);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current?.hideTemplate?.();\n };\n\n map.setLastView = () => {\n popupRef.current?.setLastView?.();\n };\n\n // 下标显隐\n map.setLabelVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.label = visible;\n }\n });\n };\n\n // 聚合显隐\n map.setClusterVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.cluster = visible;\n }\n });\n };\n\n // 海量点显隐\n map.setPointVisible = visible => {\n map.getAllLayers().find(layer => {\n if (layer instanceof FeatureLayer) {\n layer.point = visible;\n }\n });\n };\n\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n map.getViewOptions = () => {\n const view = map.getView();\n\n const [x, y] = view.getCenter();\n\n return {\n zoom: view.getZoom(),\n x,\n y,\n };\n };\n\n // 自适应\n map.fitView = (e, options) => {\n if (e) {\n let extent;\n\n if (e instanceof VectorLayer) {\n // 针对图层处理\n extent = e.getSource().getExtent();\n } else if (e instanceof VectorSource) {\n // 针对图层源处理\n extent = e.getExtent();\n } else if (Array.isArray(e) || e.geometryInfo) {\n // 针对数据处理\n let vectorSource = new VectorSource();\n\n if (e.geometryInfo || e?.[0]?.geometryInfo) {\n // 针对数据处理\n let f = createGeoJson(e);\n vectorSource.addFeatures(f);\n } else if (e instanceof Feature || e?.[0] instanceof Feature) {\n // 针对图形处理\n vectorSource.addFeatures(e);\n }\n\n extent = vectorSource.getExtent();\n } else if (e?.values_?.geometry) {\n // 针对单个图形\n extent = e.values_.geometry.getExtent();\n }\n\n if (extent) {\n if (e?.noFitView) {\n return;\n }\n\n let currentZoom = map.getView().getZoom();\n const maxZoom = fitViewMaxZoom || 16;\n map.getView().fit(extent, {\n padding: [100, 400, 100, 400],\n maxZoom: currentZoom > maxZoom ? currentZoom : maxZoom,\n duration: 500,\n ...options,\n });\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n } else {\n map.getView().animate({ ...map.viewDefault, duration: 500, ...options });\n }\n };\n\n map.fitViewByOptions = options => {\n const { x, y, zoom } = options;\n if (x && y) {\n const view = map.getView();\n view.animate({ zoom: zoom || view.getZoom(), center: [Number(x), Number(y)] });\n }\n };\n\n // 鼠标移入展示名称\n map.on('pointermove', event => {\n if (!(map.analysisActive || map.toolboxActive || map.drawActive)) {\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n\n mapDomRef.current.style.cursor = 'pointer'; // 设置手形光标\n\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const { labelField, tipTemplate } = layer;\n let label;\n if (tipTemplate) {\n label = tipTemplate(feature.values_);\n } else {\n label = feature.values_[labelField];\n }\n\n if (label) {\n map.showPointTip(label);\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n }\n } else {\n map.hidePointTip();\n\n mapDomRef.current.style.cursor = 'default'; // 恢复默认光标\n }\n }\n });\n\n // 注册事件\n registerEventLayer(map, props);\n\n function registerMapEvent(eventTarget, e) {\n if (map[eventTarget]) {\n map[eventTarget](e);\n }\n }\n\n function registerEvent(eventTarget, feature, event) {\n if (feature) {\n let properties = feature.getProperties();\n\n // 触发自身事件\n feature[eventTarget]?.(properties, event);\n\n let layer = map.getLayerByFeature(feature);\n\n if (layer?.[eventTarget]) {\n layer[eventTarget](properties, event);\n }\n }\n }\n\n // 鼠标事件,点击属性传递\n let hoverFeature;\n map.on('pointermove', event => {\n registerMapEvent('onMouseMove', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n if (feature) {\n registerEvent('onMouseMove', feature, event);\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent('onMouseLeave', hoverFeature, event);\n\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n } else {\n registerEvent('onMouseEnter', feature, event);\n hoverFeature = feature;\n }\n\n registerEvent('onMouseMove', feature, event);\n } else {\n if (hoverFeature) {\n registerEvent('onMouseLeave', hoverFeature, event);\n }\n\n hoverFeature = null;\n }\n });\n\n // 点击事件,通过属性传递\n map.on('click', async event => {\n registerMapEvent('onClick', event);\n map.hideTip();\n map.hidePointTip();\n map._clickObject = event;\n let features = map.getFeaturesAtPixel(event.pixel) || [];\n\n if (!(map.analysisActive || map.toolboxActive)) {\n // 如果点击了高亮的元素直接结束,不再往下查询\n if (features?.[0]?.isHighLight) {\n return registerEvent('onClick', features[0], event);\n }\n\n if (!features.length) {\n let layers = map.getWmsVisibleLayers().filter(layer => !layer.viewOnly);\n let _features = await getWMSFeatureInfoByLayers(event, map, layers);\n if (_features?.length) {\n features = [_features[0]];\n }\n }\n\n if (features.length) {\n registerEvent('onClick', features[0], event);\n\n // 过滤掉仅展示的图层和没有设置气泡的图层\n features = features.filter(feature => {\n let layer = map.getLayerByFeature(feature);\n return layer && !layer.viewOnly && layer.template;\n });\n\n if (features.length) {\n map.showTemplate(features);\n } else {\n map.hideTemplate();\n }\n } else {\n map.hideTemplate();\n }\n } else if (features.length) {\n registerEvent('onClick', features[0], event);\n }\n });\n\n // 双击事件,通过属性传递\n map.on('dblclick', event => {\n registerMapEvent('onDoubleClick', event);\n\n const feature = map.getFeaturesAtPixel(event.pixel)[0];\n\n registerEvent('onDoubleClick', feature, event);\n });\n\n // 层级事件\n map.onZoom = zoom => {\n onZoom && onZoom(zoom);\n };\n\n //监测地图zoom改变\n map.getView().on('change:resolution', function() {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n let zoom = map.getView().getZoom();\n map.onZoom(zoom);\n }, 50);\n });\n\n createdMap && createdMap(map);\n\n setMapLoaded(true);\n\n window.addEventListener('resize', handleResize);\n };\n\n const handleResize = () => {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n }\n\n timeRef.current = setTimeout(() => {\n mapRef.current && mapRef.current.updateSize();\n }, 50);\n };\n\n const onMouseMove = event => {\n if (pointTip || tip) {\n let dom = document.getElementById('TIP');\n\n let left = event.nativeEvent.offsetX + 15;\n let top = event.nativeEvent.offsetY + 15;\n\n // 适配 右边和 上面的情况\n const rightBound =\n mapRef.current.getViewport().clientWidth - dom.getBoundingClientRect().width - 15;\n const topBound =\n mapRef.current.getViewport().clientHeight - dom.getBoundingClientRect().height - 15;\n\n left = left > rightBound ? rightBound : left;\n top = top > topBound ? topBound : top;\n\n dom.style.left = `${left}px`;\n dom.style.top = `${top}px`;\n }\n };\n\n return (\n <ConfigProvider locale={zhCN}>\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...style }}\n className={classnames('ol-map-container', { 'ol-map-container-dark': dark })}\n >\n <div\n ref={mapDomRef}\n className={classnames('ol-map-content')}\n style={{ width, height }}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n >\n {(pointTip || tip) && tipVis && (\n <div\n id=\"TIP\"\n className={classnames('ol-map-custom-tip')}\n style={{ ...positionStyle }}\n >\n {pointTip || tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n onPopupClick: props.onPopupClick,\n dark,\n }}\n >\n <Popup map={mapRef.current} ref={popupRef} />\n {children}\n </Provider>\n )}\n </div>\n </ConfigProvider>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n style: PropTypes.object,\n baseMapStyle: PropTypes.object,\n encrypt: PropTypes.bool,\n};\n"],"mappings":"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"}
|