@vtx/cs-map 1.0.147 → 1.0.148

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/map/Popup.js CHANGED
@@ -8,7 +8,6 @@ exports.handelGeometry = exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _cesium = require("cesium");
11
- var _icons = require("@ant-design/icons");
12
11
  var _antd = require("antd");
13
12
  var _InfoTool = _interopRequireDefault(require("./InfoTool"));
14
13
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -19,6 +18,7 @@ var _Polyline = _interopRequireDefault(require("../polyline/Polyline"));
19
18
  var _layerControl = require("../tools/layer-control");
20
19
  var _createFeatureCollection = require("../feature-layer/createFeatureCollection");
21
20
  var _popup = _interopRequireDefault(require("../popup"));
21
+ var _useProps2 = _interopRequireDefault(require("../_util/useProps"));
22
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
23
23
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
24
24
  function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
@@ -69,14 +69,16 @@ var Cluster = function Cluster(props) {
69
69
  features = props.features,
70
70
  onFeatureClick = props.onFeatureClick,
71
71
  onFitView = props.onFitView;
72
+ var _useProps = (0, _useProps2["default"])(),
73
+ TextEnum = _useProps.TextEnum;
72
74
  var labelField = layer.labelField;
73
75
  return /*#__PURE__*/_react["default"].createElement("div", {
74
76
  className: (0, _classnames["default"])('cs-map-popup-cluster')
75
77
  }, /*#__PURE__*/_react["default"].createElement("div", {
76
78
  className: (0, _classnames["default"])('cs-map-popup-cluster-header')
77
- }, "\u5171 ", features.length, " \u4E2A\u70B9\u4F4D", /*#__PURE__*/_react["default"].createElement("a", {
79
+ }, TextEnum.totalText, " ", features.length, " ", TextEnum.unitGeText, TextEnum.pointText, /*#__PURE__*/_react["default"].createElement("a", {
78
80
  onClick: onFitView
79
- }, "\u7F29\u653E\u81F3")), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
81
+ }, TextEnum.scaleToText)), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
80
82
  pagination: false,
81
83
  size: "small",
82
84
  dataSource: features,
@@ -84,8 +86,8 @@ var Cluster = function Cluster(props) {
84
86
  y: 120
85
87
  },
86
88
  columns: [{
87
- title: '名称',
88
- dataIndex: '名称',
89
+ title: TextEnum.nameText,
90
+ dataIndex: TextEnum.nameText,
89
91
  width: 60,
90
92
  render: function render(text, record) {
91
93
  return /*#__PURE__*/_react["default"].createElement("a", {
@@ -95,15 +97,15 @@ var Cluster = function Cluster(props) {
95
97
  }, record.values_[labelField]);
96
98
  }
97
99
  }, {
98
- title: '操作',
99
- dataIndex: '操作',
100
+ title: TextEnum.operationText,
101
+ dataIndex: TextEnum.operationText,
100
102
  width: 30,
101
103
  render: function render(text, record) {
102
104
  return /*#__PURE__*/_react["default"].createElement("a", {
103
105
  onClick: function onClick() {
104
106
  return onFeatureClick(record);
105
107
  }
106
- }, "\u5B9A\u4F4D");
108
+ }, TextEnum.positionText);
107
109
  }
108
110
  }]
109
111
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_icons","_antd","_InfoTool","_classnames","_turf","_Marker","_Polygon","_Polyline","_layerControl","_createFeatureCollection","_popup","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","next","push","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","constructor","name","from","test","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","getImageHeightBySrc","image","Image","onload","height","propTypes","PropTypes","object","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","columns","title","dataIndex","width","render","text","record","values_","array","func","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","TurfFeatureCollection","map","lngLatArr","TurfPoint","center","TurfCenter","line","TurfLineString","TurfNearestPointOnLine","units","TurfMidpoint","_coordinates2","item","concat","polygon","TurfPolygon","TurfCenterOfMass","Cartesian3","fromDegrees","geometryType","_offset","MapPopup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","highlightLayerRef","useImperativeHandle","showTemplate","hideTemplate","_ref","_callee","feature","highlightLayer","options","_feature$_position","_feature$data","_highlightLayer2","_popupRef$current","_layer2$_options","_layer2$cluster","points","_layer2","_map$_clickObject$lon","lng","lat","Template","properties","_feature$_billboard$s","_feature$_billboard","_height","_feature$_billboard$s2","_feature$_polygon","_handelGeometry","_position","_feature$_polyline","_coordinates3","_handelGeometry2","_position2","_offset2","_midpoint$geometry","_geometry$coordinates","point1","point2","_handelGeometry3","_position3","_offset3","_popupRef$current2","template","currentCameraHeight","viewThreshold","viewHeight","_feature$data2","_context","getProperties","geometryInfo","lngLats","join","coordType","getLayerByFeature","_clickObject","lonLat","fitView","camera","positionCartographic","current","add","element","wrapDom","inputFeature","_options","cluster","autoView","cancelPopup","layers","highlightFeature","_value","fitViewHeight","MarkerGeo","_billboard","scale","_image","PolygonGeo","_polygon","_hierarchy","positions","cartographic","Cartographic","fromCartesian","CesiumMath","toDegrees","longitude","latitude","PolylineGeo","_polyline","_positions","Cesium3DTileFeature","primitive","transformGeometry","ImageryLayerFeatureInfo","getView","addHighlightFeature","viewMode","geoJson","_x","_x2","_x3","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref2","status","_infoToolRef$current","_highlightLayerRef$cu","_highlightLayerRef$cu2","onCloseTemplateBefore","remove","entities","getById","clearHighlight","closePopupAutoView","setView","pitch","heading","z","flyTo","destination","orientation","roll","duration","theme","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {\r\n ImageryLayerFeatureInfo,\r\n Cartesian3,\r\n Cartographic,\r\n Math as CesiumMath,\r\n Cesium3DTileFeature,\r\n} from 'cesium';\r\nimport { CloseOutlined } from '@ant-design/icons';\r\nimport { Table } from 'antd';\r\nimport InfoTool from './InfoTool';\r\nimport classnames from 'classnames';\r\nimport {\r\n point as TurfPoint,\r\n lineString as TurfLineString,\r\n nearestPointOnLine as TurfNearestPointOnLine,\r\n midpoint as TurfMidpoint,\r\n polygon as TurfPolygon,\r\n center as TurfCenter,\r\n centerOfMass as TurfCenterOfMass,\r\n featureCollection as TurfFeatureCollection,\r\n} from '@turf/turf';\r\nimport MarkerGeo from '../marker/Marker';\r\nimport PolygonGeo from '../polygon/Polygon';\r\nimport PolylineGeo from '../polyline/Polyline';\r\nimport { getImgUrl } from '../tools/layer-control';\r\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\r\nimport Popup from '../popup';\r\n\r\nconst ClusterTitle = props => {\r\n const { layer } = props;\r\n let { name } = layer;\r\n\r\n const imgUrl = getImgUrl(layer);\r\n\r\n return (\r\n <div className={classnames('cs-map-popup-cluster-title')}>\r\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')} />\r\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\r\n </div>\r\n );\r\n};\r\n\r\n// 根据图片地址获取图片高度\r\nconst getImageHeightBySrc = src => {\r\n return new Promise(resolve => {\r\n // js从base64数据中获取宽高\r\n let image = new Image();\r\n image.src = src;\r\n image.onload = () => {\r\n resolve(image.height);\r\n };\r\n });\r\n};\r\n\r\nClusterTitle.propTypes = {\r\n layer: PropTypes.object,\r\n};\r\n\r\nconst Cluster = props => {\r\n const { layer, features, onFeatureClick, onFitView } = props;\r\n let { labelField } = layer;\r\n\r\n return (\r\n <div className={classnames('cs-map-popup-cluster')}>\r\n <div className={classnames('cs-map-popup-cluster-header')}>\r\n 共 {features.length} 个点位\r\n <a onClick={onFitView}>缩放至</a>\r\n </div>\r\n <Table\r\n pagination={false}\r\n size=\"small\"\r\n dataSource={features}\r\n scroll={{ y: 120 }}\r\n columns={[\r\n {\r\n title: '名称',\r\n dataIndex: '名称',\r\n width: 60,\r\n render: (text, record) => {\r\n return (\r\n <a onClick={() => onFeatureClick(record)}>\r\n {record.values_[labelField]}\r\n </a>\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: '操作',\r\n width: 30,\r\n render: (text, record) => {\r\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\r\n },\r\n },\r\n ]}\r\n />\r\n </div>\r\n );\r\n};\r\nCluster.propTypes = {\r\n layer: PropTypes.object,\r\n features: PropTypes.array,\r\n onFeatureClick: PropTypes.func,\r\n onFitView: PropTypes.func,\r\n};\r\n\r\nexport const handelGeometry = (entity) => {\r\n let geometry = entity?.data?.geometry;\r\n let type = geometry?.type;\r\n let coordinates = geometry?.coordinates;\r\n\r\n let midpoint = entity?.data; // 默认点\r\n let position = null;\r\n let offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n\r\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\r\n if (type === 'MultiLineString') {\r\n coordinates = coordinates[0];\r\n }\r\n\r\n if (coordinates.length >= 3) {\r\n const features = TurfFeatureCollection(coordinates.map(lngLatArr => TurfPoint(lngLatArr)));\r\n const center = TurfCenter(features);\r\n const line = TurfLineString(coordinates);\r\n midpoint = TurfNearestPointOnLine(line, center, {units: 'miles'});\r\n } else if (coordinates.length > 1) {\r\n midpoint = TurfMidpoint(...coordinates.map(lngLatArr => TurfPoint(lngLatArr)));\r\n } else {\r\n let lngLatArr = coordinates[0];\r\n midpoint = TurfMidpoint(TurfPoint(lngLatArr[0]), TurfPoint(lngLatArr[1]))\r\n }\r\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\r\n if (type === 'MultiPolygon') {\r\n coordinates = coordinates[0];\r\n }\r\n\r\n // 兼容polygon首尾坐标不一致情况\r\n coordinates = coordinates?.map(item => {\r\n if (\r\n item[0][0] !== item[item.length - 1][0] ||\r\n item[0][1] !== item[item.length - 1][1]\r\n ) {\r\n return [...item, item[0]];\r\n }\r\n return item;\r\n });\r\n // 面\r\n // 注意:polygon首尾坐标要一致\r\n let polygon = TurfPolygon(coordinates);\r\n midpoint = TurfCenterOfMass(polygon);\r\n } else if (['Point'].includes(type)) {\r\n offset = {\r\n x: 5,\r\n y: 20,\r\n };\r\n }\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n\r\n return {\r\n position,\r\n geometryType: type,\r\n _offset: offset,\r\n };\r\n};\r\n\r\nconst MapPopup = forwardRef((props, ref) => {\r\n const { map } = props;\r\n\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const popupRef = useRef();\r\n\r\n const featureRef = useRef();\r\n const infoToolRef = useRef(new InfoTool({ map }));\r\n const viewRef = useRef();\r\n const highlightLayerRef = useRef();\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n const showTemplate = async (feature, highlightLayer, options) => {\r\n setContent(null);\r\n\r\n if (!feature) {\r\n hideTemplate();\r\n return;\r\n }\r\n\r\n // 判断是否为聚合点击\r\n if (feature && feature.length >= 2) {\r\n const points = [];\r\n const features = feature.map(f => {\r\n let properties = map.getProperties(f);\r\n\r\n points.push(TurfPoint(f.geometry));\r\n return {\r\n feature: f,\r\n geometryInfo: properties?.geometryInfo || {\r\n type: 'point',\r\n lngLats: f.geometry.join(','),\r\n coordType: 'wgs84',\r\n },\r\n values_: properties,\r\n properties: properties,\r\n };\r\n });\r\n\r\n let layer = map.getLayerByFeature(feature[0]);\r\n const [lng, lat] = map._clickObject.lonLat;\r\n map.fitView({lng, lat, height: map.camera.positionCartographic.height})\r\n infoToolRef.current.add({\r\n position: map._clickObject.position,\r\n content: '',\r\n element: popupRef.current?.wrapDom,\r\n inputFeature: feature,\r\n type: '',\r\n offset: {\r\n x: 0,\r\n y: 20,\r\n },\r\n });\r\n\r\n setTitle(<ClusterTitle layer={layer} />);\r\n\r\n // 判断是否有自定义聚合列表模版\r\n let Template =\r\n layer?._options?.cluster?.template || layer?.cluster?.template || Cluster;\r\n setContent(\r\n <Template\r\n layer={layer}\r\n features={features}\r\n onFitView={() => {\r\n map.fitView({ data: features });\r\n hideTemplate(null, map.autoView);\r\n }}\r\n onFeatureClick={f => {\r\n showTemplate(f.feature, highlightLayer);\r\n }}\r\n />,\r\n );\r\n return;\r\n }\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n if (layer?.cancelPopup || feature?.cancelPopup) {\r\n return;\r\n }\r\n map.layers.highlightFeature = feature;\r\n\r\n let properties = map.getProperties(feature);\r\n feature.values_ = properties;\r\n featureRef.current = feature;\r\n let position = feature?._position?._value;\r\n // 偏移量\r\n let offset = {\r\n x: 5,\r\n y: 76,\r\n };\r\n\r\n let height = map.fitViewHeight || 5000;\r\n if (feature instanceof MarkerGeo || feature?._billboard) {\r\n if (feature._billboard.scale?._value) {\r\n offset.y = offset.y * feature._billboard.scale._value;\r\n }\r\n\r\n let src = feature._billboard?._image?._value || '';\r\n if (src) {\r\n let height = await getImageHeightBySrc(src);\r\n\r\n if (height && typeof height === 'number') {\r\n if (feature._billboard.scale?._value) {\r\n height = height * feature._billboard.scale._value;\r\n }\r\n\r\n offset.y = height + 10;\r\n }\r\n }\r\n } else if (feature instanceof PolygonGeo || feature?._polygon) {\r\n let coordinates = [\r\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n }),\r\n ];\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'Polygon', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\r\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n });\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'LineString', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n }\r\n\r\n if (feature instanceof Cesium3DTileFeature) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n position = map._clickObject.position;\r\n // position = Cartesian3.fromDegrees();\r\n } else if (feature.primitive) {\r\n if (properties.geometryInfo) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n const geometry = transformGeometry(properties.geometryInfo);\r\n const [point1, point2] = geometry.coordinates[0];\r\n const midpoint = TurfMidpoint(point1, point2);\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n } else {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n position = map._clickObject.position;\r\n }\r\n }\r\n\r\n // 影像图层的数据\r\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\r\n let { position: _position, _offset } = handelGeometry(feature);\r\n position = _position;\r\n offset = _offset;\r\n }\r\n\r\n if (layer?.template) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n\r\n setTitle(labelField && properties[labelField]);\r\n setContent(feature && template(feature));\r\n\r\n infoToolRef.current.add({\r\n position: position,\r\n content: '',\r\n element: popupRef.current?.wrapDom,\r\n inputFeature: feature,\r\n type: '',\r\n offset,\r\n });\r\n\r\n map.popupRef = feature;\r\n }\r\n\r\n const currentCameraHeight = map.camera.positionCartographic.height;\r\n const viewThreshold = currentCameraHeight < height;\r\n const viewHeight = viewThreshold ? currentCameraHeight : height;\r\n if (!viewRef.current && map.autoView) {\r\n getView();\r\n }\r\n\r\n if (viewThreshold) {\r\n viewRef.current = null;\r\n }\r\n\r\n highlightLayer = highlightLayer || map.highlightLayer;\r\n highlightLayerRef.current = highlightLayer;\r\n highlightLayer.addHighlightFeature(feature);\r\n if (highlightLayer?.layer && map.autoView) {\r\n // 影像图层的数据\r\n if (\r\n feature instanceof ImageryLayerFeatureInfo &&\r\n map.viewMode === '2D' &&\r\n feature?.data?.geometry?.type !== 'Point'\r\n ) {\r\n map.fitView({\r\n geoJson: { features: [feature.data] },\r\n });\r\n } else {\r\n map.fitView({\r\n entity: highlightLayer.layer,\r\n height: viewHeight,\r\n });\r\n }\r\n }\r\n };\r\n\r\n const hideTemplate = _layer => {\r\n if (_layer) {\r\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\r\n\r\n if (layer && layer.key && map.popupRef) {\r\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\r\n if (_highlightLayer.key === layer.key) {\r\n onClose();\r\n }\r\n }\r\n } else {\r\n onClose();\r\n }\r\n };\r\n\r\n // 判断点位异常-点位异常展示红色\r\n function judgeAbnormal() {\r\n const { status } = map.getProperties(featureRef.current) || {};\r\n\r\n return status && [1, 2, 4].includes(status);\r\n }\r\n\r\n // 关闭气泡\r\n const onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n map.popupRef = null;\r\n featureRef.current = null;\r\n infoToolRef?.current?.remove();\r\n\r\n map.layers.highlightFeature = null;\r\n\r\n if (map.entities.getById('highlight-1')) {\r\n map.entities.remove(map.entities.getById('highlight-1'));\r\n }\r\n\r\n // 清除高亮\r\n highlightLayerRef.current?.clearHighlight?.();\r\n // highlightLayerRef.current.clearFeatures();\r\n\r\n // map.fitView();\r\n\r\n if (map.autoView && map.closePopupAutoView) {\r\n setView();\r\n }\r\n setContent(null);\r\n };\r\n\r\n const getView = () => {\r\n //获取当前视角的 pitch\r\n let pitch = map.camera.pitch;\r\n\r\n //获取当前视角的 heading\r\n let heading = map.camera.heading;\r\n\r\n //获取当前视角的 position(位置)\r\n let position = map.camera.position;\r\n\r\n viewRef.current = {\r\n x: position.x,\r\n y: position.y,\r\n z: position.z,\r\n pitch: pitch,\r\n heading: heading,\r\n viewMode: map.viewMode,\r\n };\r\n };\r\n\r\n const setView = () => {\r\n if (viewRef.current && viewRef.current.viewMode === map.viewMode) {\r\n map.camera.flyTo({\r\n //定位到范围中心点\r\n destination: {\r\n x: viewRef.current.x,\r\n y: viewRef.current.y,\r\n z: viewRef.current.z,\r\n },\r\n orientation: {\r\n heading: viewRef.current.heading, //左右方向\r\n pitch: viewRef.current.pitch, //上下方向\r\n roll: 0.0,\r\n },\r\n duration: 2,\r\n });\r\n\r\n viewRef.current = null;\r\n }\r\n };\r\n\r\n const theme = judgeAbnormal() ? 'red' : '';\r\n return (\r\n <Popup ref={popupRef} title={title} onClose={onClose} theme={theme}>\r\n {content}\r\n </Popup>\r\n );\r\n});\r\n\r\nMapPopup.propTypes = {\r\n map: PropTypes.object,\r\n feature: PropTypes.object,\r\n layer: PropTypes.object,\r\n highlightLayer: PropTypes.object,\r\n onClose: PropTypes.func,\r\n};\r\n\r\nexport default MapPopup;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_antd","_InfoTool","_classnames","_turf","_Marker","_Polygon","_Polyline","_layerControl","_createFeatureCollection","_popup","_useProps2","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","next","push","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","constructor","name","from","test","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","getImageHeightBySrc","image","Image","onload","height","propTypes","PropTypes","object","Cluster","features","onFeatureClick","onFitView","_useProps","useProps","TextEnum","labelField","totalText","unitGeText","pointText","onClick","scaleToText","Table","pagination","size","dataSource","scroll","columns","title","nameText","dataIndex","width","render","text","record","values_","operationText","positionText","array","func","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","TurfFeatureCollection","map","lngLatArr","TurfPoint","center","TurfCenter","line","TurfLineString","TurfNearestPointOnLine","units","TurfMidpoint","_coordinates2","item","concat","polygon","TurfPolygon","TurfCenterOfMass","Cartesian3","fromDegrees","geometryType","_offset","MapPopup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","highlightLayerRef","useImperativeHandle","showTemplate","hideTemplate","_ref","_callee","feature","highlightLayer","options","_feature$_position","_feature$data","_highlightLayer2","_popupRef$current","_layer2$_options","_layer2$cluster","points","_layer2","_map$_clickObject$lon","lng","lat","Template","properties","_feature$_billboard$s","_feature$_billboard","_height","_feature$_billboard$s2","_feature$_polygon","_handelGeometry","_position","_feature$_polyline","_coordinates3","_handelGeometry2","_position2","_offset2","_midpoint$geometry","_geometry$coordinates","point1","point2","_handelGeometry3","_position3","_offset3","_popupRef$current2","template","currentCameraHeight","viewThreshold","viewHeight","_feature$data2","_context","getProperties","geometryInfo","lngLats","join","coordType","getLayerByFeature","_clickObject","lonLat","fitView","camera","positionCartographic","current","add","element","wrapDom","inputFeature","_options","cluster","autoView","cancelPopup","layers","highlightFeature","_value","fitViewHeight","MarkerGeo","_billboard","scale","_image","PolygonGeo","_polygon","_hierarchy","positions","cartographic","Cartographic","fromCartesian","CesiumMath","toDegrees","longitude","latitude","PolylineGeo","_polyline","_positions","Cesium3DTileFeature","primitive","transformGeometry","ImageryLayerFeatureInfo","getView","addHighlightFeature","viewMode","geoJson","_x","_x2","_x3","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref2","status","_infoToolRef$current","_highlightLayerRef$cu","_highlightLayerRef$cu2","onCloseTemplateBefore","remove","entities","getById","clearHighlight","closePopupAutoView","setView","pitch","heading","z","flyTo","destination","orientation","roll","duration","theme","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {\r\n ImageryLayerFeatureInfo,\r\n Cartesian3,\r\n Cartographic,\r\n Math as CesiumMath,\r\n Cesium3DTileFeature,\r\n} from 'cesium';\r\nimport { Table } from 'antd';\r\nimport InfoTool from './InfoTool';\r\nimport classnames from 'classnames';\r\nimport {\r\n point as TurfPoint,\r\n lineString as TurfLineString,\r\n nearestPointOnLine as TurfNearestPointOnLine,\r\n midpoint as TurfMidpoint,\r\n polygon as TurfPolygon,\r\n center as TurfCenter,\r\n centerOfMass as TurfCenterOfMass,\r\n featureCollection as TurfFeatureCollection,\r\n} from '@turf/turf';\r\nimport MarkerGeo from '../marker/Marker';\r\nimport PolygonGeo from '../polygon/Polygon';\r\nimport PolylineGeo from '../polyline/Polyline';\r\nimport { getImgUrl } from '../tools/layer-control';\r\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\r\nimport Popup from '../popup';\r\nimport useProps from '../_util/useProps';\r\n\r\nconst ClusterTitle = props => {\r\n const { layer } = props;\r\n let { name } = layer;\r\n\r\n const imgUrl = getImgUrl(layer);\r\n\r\n return (\r\n <div className={classnames('cs-map-popup-cluster-title')}>\r\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')} />\r\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\r\n </div>\r\n );\r\n};\r\n\r\n// 根据图片地址获取图片高度\r\nconst getImageHeightBySrc = src => {\r\n return new Promise(resolve => {\r\n // js从base64数据中获取宽高\r\n let image = new Image();\r\n image.src = src;\r\n image.onload = () => {\r\n resolve(image.height);\r\n };\r\n });\r\n};\r\n\r\nClusterTitle.propTypes = {\r\n layer: PropTypes.object,\r\n};\r\n\r\nconst Cluster = props => {\r\n const { layer, features, onFeatureClick, onFitView } = props;\r\n const { TextEnum } = useProps();\r\n let { labelField } = layer;\r\n\r\n return (\r\n <div className={classnames('cs-map-popup-cluster')}>\r\n <div className={classnames('cs-map-popup-cluster-header')}>\r\n {TextEnum.totalText} {features.length} {TextEnum.unitGeText}\r\n {TextEnum.pointText}\r\n <a onClick={onFitView}>{TextEnum.scaleToText}</a>\r\n </div>\r\n <Table\r\n pagination={false}\r\n size=\"small\"\r\n dataSource={features}\r\n scroll={{ y: 120 }}\r\n columns={[\r\n {\r\n title: TextEnum.nameText,\r\n dataIndex: TextEnum.nameText,\r\n width: 60,\r\n render: (text, record) => {\r\n return (\r\n <a onClick={() => onFeatureClick(record)}>\r\n {record.values_[labelField]}\r\n </a>\r\n );\r\n },\r\n },\r\n {\r\n title: TextEnum.operationText,\r\n dataIndex: TextEnum.operationText,\r\n width: 30,\r\n render: (text, record) => {\r\n return (\r\n <a onClick={() => onFeatureClick(record)}>\r\n {TextEnum.positionText}\r\n </a>\r\n );\r\n },\r\n },\r\n ]}\r\n />\r\n </div>\r\n );\r\n};\r\nCluster.propTypes = {\r\n layer: PropTypes.object,\r\n features: PropTypes.array,\r\n onFeatureClick: PropTypes.func,\r\n onFitView: PropTypes.func,\r\n};\r\n\r\nexport const handelGeometry = entity => {\r\n let geometry = entity?.data?.geometry;\r\n let type = geometry?.type;\r\n let coordinates = geometry?.coordinates;\r\n\r\n let midpoint = entity?.data; // 默认点\r\n let position = null;\r\n let offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n\r\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\r\n if (type === 'MultiLineString') {\r\n coordinates = coordinates[0];\r\n }\r\n\r\n if (coordinates.length >= 3) {\r\n const features = TurfFeatureCollection(\r\n coordinates.map(lngLatArr => TurfPoint(lngLatArr)),\r\n );\r\n const center = TurfCenter(features);\r\n const line = TurfLineString(coordinates);\r\n midpoint = TurfNearestPointOnLine(line, center, { units: 'miles' });\r\n } else if (coordinates.length > 1) {\r\n midpoint = TurfMidpoint(...coordinates.map(lngLatArr => TurfPoint(lngLatArr)));\r\n } else {\r\n let lngLatArr = coordinates[0];\r\n midpoint = TurfMidpoint(TurfPoint(lngLatArr[0]), TurfPoint(lngLatArr[1]));\r\n }\r\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\r\n if (type === 'MultiPolygon') {\r\n coordinates = coordinates[0];\r\n }\r\n\r\n // 兼容polygon首尾坐标不一致情况\r\n coordinates = coordinates?.map(item => {\r\n if (\r\n item[0][0] !== item[item.length - 1][0] ||\r\n item[0][1] !== item[item.length - 1][1]\r\n ) {\r\n return [...item, item[0]];\r\n }\r\n return item;\r\n });\r\n // 面\r\n // 注意:polygon首尾坐标要一致\r\n let polygon = TurfPolygon(coordinates);\r\n midpoint = TurfCenterOfMass(polygon);\r\n } else if (['Point'].includes(type)) {\r\n offset = {\r\n x: 5,\r\n y: 20,\r\n };\r\n }\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n\r\n return {\r\n position,\r\n geometryType: type,\r\n _offset: offset,\r\n };\r\n};\r\n\r\nconst MapPopup = forwardRef((props, ref) => {\r\n const { map } = props;\r\n\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const popupRef = useRef();\r\n\r\n const featureRef = useRef();\r\n const infoToolRef = useRef(new InfoTool({ map }));\r\n const viewRef = useRef();\r\n const highlightLayerRef = useRef();\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n const showTemplate = async (feature, highlightLayer, options) => {\r\n setContent(null);\r\n\r\n if (!feature) {\r\n hideTemplate();\r\n return;\r\n }\r\n\r\n // 判断是否为聚合点击\r\n if (feature && feature.length >= 2) {\r\n const points = [];\r\n const features = feature.map(f => {\r\n let properties = map.getProperties(f);\r\n\r\n points.push(TurfPoint(f.geometry));\r\n return {\r\n feature: f,\r\n geometryInfo: properties?.geometryInfo || {\r\n type: 'point',\r\n lngLats: f.geometry.join(','),\r\n coordType: 'wgs84',\r\n },\r\n values_: properties,\r\n properties: properties,\r\n };\r\n });\r\n\r\n let layer = map.getLayerByFeature(feature[0]);\r\n const [lng, lat] = map._clickObject.lonLat;\r\n map.fitView({ lng, lat, height: map.camera.positionCartographic.height });\r\n infoToolRef.current.add({\r\n position: map._clickObject.position,\r\n content: '',\r\n element: popupRef.current?.wrapDom,\r\n inputFeature: feature,\r\n type: '',\r\n offset: {\r\n x: 0,\r\n y: 20,\r\n },\r\n });\r\n\r\n setTitle(<ClusterTitle layer={layer} />);\r\n\r\n // 判断是否有自定义聚合列表模版\r\n let Template =\r\n layer?._options?.cluster?.template || layer?.cluster?.template || Cluster;\r\n setContent(\r\n <Template\r\n layer={layer}\r\n features={features}\r\n onFitView={() => {\r\n map.fitView({ data: features });\r\n hideTemplate(null, map.autoView);\r\n }}\r\n onFeatureClick={f => {\r\n showTemplate(f.feature, highlightLayer);\r\n }}\r\n />,\r\n );\r\n return;\r\n }\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n if (layer?.cancelPopup || feature?.cancelPopup) {\r\n return;\r\n }\r\n map.layers.highlightFeature = feature;\r\n\r\n let properties = map.getProperties(feature);\r\n feature.values_ = properties;\r\n featureRef.current = feature;\r\n let position = feature?._position?._value;\r\n // 偏移量\r\n let offset = {\r\n x: 5,\r\n y: 76,\r\n };\r\n\r\n let height = map.fitViewHeight || 5000;\r\n if (feature instanceof MarkerGeo || feature?._billboard) {\r\n if (feature._billboard.scale?._value) {\r\n offset.y = offset.y * feature._billboard.scale._value;\r\n }\r\n\r\n let src = feature._billboard?._image?._value || '';\r\n if (src) {\r\n let height = await getImageHeightBySrc(src);\r\n\r\n if (height && typeof height === 'number') {\r\n if (feature._billboard.scale?._value) {\r\n height = height * feature._billboard.scale._value;\r\n }\r\n\r\n offset.y = height + 10;\r\n }\r\n }\r\n } else if (feature instanceof PolygonGeo || feature?._polygon) {\r\n let coordinates = [\r\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n }),\r\n ];\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'Polygon', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\r\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n });\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'LineString', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n }\r\n\r\n if (feature instanceof Cesium3DTileFeature) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n position = map._clickObject.position;\r\n // position = Cartesian3.fromDegrees();\r\n } else if (feature.primitive) {\r\n if (properties.geometryInfo) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n const geometry = transformGeometry(properties.geometryInfo);\r\n const [point1, point2] = geometry.coordinates[0];\r\n const midpoint = TurfMidpoint(point1, point2);\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n } else {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n position = map._clickObject.position;\r\n }\r\n }\r\n\r\n // 影像图层的数据\r\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\r\n let { position: _position, _offset } = handelGeometry(feature);\r\n position = _position;\r\n offset = _offset;\r\n }\r\n\r\n if (layer?.template) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n\r\n setTitle(labelField && properties[labelField]);\r\n setContent(feature && template(feature));\r\n\r\n infoToolRef.current.add({\r\n position: position,\r\n content: '',\r\n element: popupRef.current?.wrapDom,\r\n inputFeature: feature,\r\n type: '',\r\n offset,\r\n });\r\n\r\n map.popupRef = feature;\r\n }\r\n\r\n const currentCameraHeight = map.camera.positionCartographic.height;\r\n const viewThreshold = currentCameraHeight < height;\r\n const viewHeight = viewThreshold ? currentCameraHeight : height;\r\n if (!viewRef.current && map.autoView) {\r\n getView();\r\n }\r\n\r\n if (viewThreshold) {\r\n viewRef.current = null;\r\n }\r\n\r\n highlightLayer = highlightLayer || map.highlightLayer;\r\n highlightLayerRef.current = highlightLayer;\r\n highlightLayer.addHighlightFeature(feature);\r\n if (highlightLayer?.layer && map.autoView) {\r\n // 影像图层的数据\r\n if (\r\n feature instanceof ImageryLayerFeatureInfo &&\r\n map.viewMode === '2D' &&\r\n feature?.data?.geometry?.type !== 'Point'\r\n ) {\r\n map.fitView({\r\n geoJson: { features: [feature.data] },\r\n });\r\n } else {\r\n map.fitView({\r\n entity: highlightLayer.layer,\r\n height: viewHeight,\r\n });\r\n }\r\n }\r\n };\r\n\r\n const hideTemplate = _layer => {\r\n if (_layer) {\r\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\r\n\r\n if (layer && layer.key && map.popupRef) {\r\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\r\n if (_highlightLayer.key === layer.key) {\r\n onClose();\r\n }\r\n }\r\n } else {\r\n onClose();\r\n }\r\n };\r\n\r\n // 判断点位异常-点位异常展示红色\r\n function judgeAbnormal() {\r\n const { status } = map.getProperties(featureRef.current) || {};\r\n\r\n return status && [1, 2, 4].includes(status);\r\n }\r\n\r\n // 关闭气泡\r\n const onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n map.popupRef = null;\r\n featureRef.current = null;\r\n infoToolRef?.current?.remove();\r\n\r\n map.layers.highlightFeature = null;\r\n\r\n if (map.entities.getById('highlight-1')) {\r\n map.entities.remove(map.entities.getById('highlight-1'));\r\n }\r\n\r\n // 清除高亮\r\n highlightLayerRef.current?.clearHighlight?.();\r\n // highlightLayerRef.current.clearFeatures();\r\n\r\n // map.fitView();\r\n\r\n if (map.autoView && map.closePopupAutoView) {\r\n setView();\r\n }\r\n setContent(null);\r\n };\r\n\r\n const getView = () => {\r\n //获取当前视角的 pitch\r\n let pitch = map.camera.pitch;\r\n\r\n //获取当前视角的 heading\r\n let heading = map.camera.heading;\r\n\r\n //获取当前视角的 position(位置)\r\n let position = map.camera.position;\r\n\r\n viewRef.current = {\r\n x: position.x,\r\n y: position.y,\r\n z: position.z,\r\n pitch: pitch,\r\n heading: heading,\r\n viewMode: map.viewMode,\r\n };\r\n };\r\n\r\n const setView = () => {\r\n if (viewRef.current && viewRef.current.viewMode === map.viewMode) {\r\n map.camera.flyTo({\r\n //定位到范围中心点\r\n destination: {\r\n x: viewRef.current.x,\r\n y: viewRef.current.y,\r\n z: viewRef.current.z,\r\n },\r\n orientation: {\r\n heading: viewRef.current.heading, //左右方向\r\n pitch: viewRef.current.pitch, //上下方向\r\n roll: 0.0,\r\n },\r\n duration: 2,\r\n });\r\n\r\n viewRef.current = null;\r\n }\r\n };\r\n\r\n const theme = judgeAbnormal() ? 'red' : '';\r\n return (\r\n <Popup ref={popupRef} title={title} onClose={onClose} theme={theme}>\r\n {content}\r\n </Popup>\r\n );\r\n});\r\n\r\nMapPopup.propTypes = {\r\n map: PropTypes.object,\r\n feature: PropTypes.object,\r\n layer: PropTypes.object,\r\n highlightLayer: PropTypes.object,\r\n onClose: PropTypes.func,\r\n};\r\n\r\nexport default MapPopup;\r\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.OPTIONS = exports.Imagery = exports.BaseMap = void 0;
7
+ exports.getDefaultOptions = exports.Imagery = exports.BaseMap = void 0;
8
8
  var _GeoQImageryProvider = _interopRequireDefault(require("./imagery/geoq/GeoQImageryProvider"));
9
9
  var _BaiduImageryProvider = _interopRequireDefault(require("./imagery/baidu/BaiduImageryProvider"));
10
10
  var _AmapImageryProvider = _interopRequireDefault(require("./imagery/amap/AmapImageryProvider"));
@@ -53,99 +53,101 @@ var Imagery = exports.Imagery = {
53
53
  JiangSuTdtImageryProvider: _JiangSuTdtImageryProvider["default"],
54
54
  ShanDongTdtImageryProvider: _ShanDongTdtImageryProvider["default"]
55
55
  };
56
- var OPTIONS = exports.OPTIONS = [{
57
- label: '地图风格',
58
- value: 'GeoQImageryProvider',
59
- children: [{
60
- label: '蓝黑版',
61
- value: 'Blue',
62
- img: _baseImg6["default"]
56
+ var getDefaultOptions = exports.getDefaultOptions = function getDefaultOptions(TextEnum) {
57
+ return [{
58
+ label: TextEnum.mapStyleText,
59
+ value: 'GeoQImageryProvider',
60
+ children: [{
61
+ label: TextEnum.blueDarkStyleText,
62
+ value: 'Blue',
63
+ img: _baseImg6["default"]
64
+ }, {
65
+ label: TextEnum.communityStyleText,
66
+ value: 'Community',
67
+ img: _baseImg3["default"]
68
+ }, {
69
+ label: TextEnum.warmStyleText,
70
+ value: 'StreetWarm',
71
+ img: _baseImg4["default"]
72
+ }, {
73
+ label: TextEnum.grayStyleText,
74
+ value: 'ChinaOnlineStreetGray',
75
+ img: _baseImg5["default"]
76
+ }]
63
77
  }, {
64
- label: '彩色版',
65
- value: 'Community',
66
- img: _baseImg3["default"]
78
+ label: TextEnum.TMapText,
79
+ value: 'TdtImageryProvider',
80
+ children: [{
81
+ label: TextEnum.wxMapLayerText,
82
+ value: 'img',
83
+ img: _baseImg["default"]
84
+ }, {
85
+ label: TextEnum.slMapLayerText,
86
+ value: 'vec',
87
+ img: _baseImg2["default"]
88
+ }, {
89
+ label: "".concat(TextEnum.slMapLayerText, "(").concat(TextEnum.darkStyleText, ")"),
90
+ value: 'dark',
91
+ img: _baseImg7["default"],
92
+ style: 'dark'
93
+ }]
67
94
  }, {
68
- label: '暖色版',
69
- value: 'StreetWarm',
70
- img: _baseImg4["default"]
95
+ label: TextEnum.AMapText,
96
+ value: 'AmapImageryProvider',
97
+ children: [{
98
+ label: TextEnum.wxMapLayerText,
99
+ value: 'IMG',
100
+ img: _baseImg["default"]
101
+ }, {
102
+ label: TextEnum.slMapLayerText,
103
+ value: 'ELEC',
104
+ img: _baseImg2["default"]
105
+ }, {
106
+ label: "".concat(TextEnum.slMapLayerText, "(").concat(TextEnum.darkStyleText, ")"),
107
+ value: 'dark',
108
+ img: _baseImg7["default"]
109
+ }]
71
110
  }, {
72
- label: '灰色版',
73
- value: 'ChinaOnlineStreetGray',
74
- img: _baseImg5["default"]
75
- }]
76
- }, {
77
- label: '天地图',
78
- value: 'TdtImageryProvider',
79
- children: [{
80
- label: '影像图',
81
- value: 'img',
82
- img: _baseImg["default"]
111
+ label: TextEnum.TencentMapText,
112
+ value: 'TencentImageryProvider',
113
+ children: [{
114
+ label: TextEnum.wxMapLayerText,
115
+ value: 'IMG',
116
+ img: _baseImg["default"]
117
+ }, {
118
+ label: TextEnum.slMapLayerText,
119
+ value: 'ELEC',
120
+ img: _baseImg2["default"]
121
+ }, {
122
+ label: "".concat(TextEnum.slMapLayerText, "(").concat(TextEnum.darkStyleText, ")"),
123
+ value: 'dark',
124
+ img: _baseImg7["default"]
125
+ }]
83
126
  }, {
84
- label: '矢量图',
85
- value: 'vec',
86
- img: _baseImg2["default"]
87
- }, {
88
- label: '矢量图(暗色)',
89
- value: 'dark',
90
- img: _baseImg7["default"],
91
- style: 'dark'
92
- }]
93
- }, {
94
- label: '高德地图',
95
- value: 'AmapImageryProvider',
96
- children: [{
97
- label: '影像图',
98
- value: 'IMG',
99
- img: _baseImg["default"]
100
- }, {
101
- label: '矢量图',
102
- value: 'ELEC',
103
- img: _baseImg2["default"]
104
- }, {
105
- label: '矢量图(暗色)',
106
- value: 'dark',
107
- img: _baseImg7["default"]
108
- }]
109
- }, {
110
- label: '腾讯地图',
111
- value: 'TencentImageryProvider',
112
- children: [{
113
- label: '影像图',
114
- value: 'IMG',
115
- img: _baseImg["default"]
116
- }, {
117
- label: '矢量图',
118
- value: 'ELEC',
119
- img: _baseImg2["default"]
120
- }, {
121
- label: '矢量图(暗色)',
122
- value: 'dark',
123
- img: _baseImg7["default"]
124
- }]
125
- }, {
126
- label: '百度地图',
127
- value: 'BaiduImageryProvider',
128
- children: [{
129
- label: '影像图',
130
- value: 'IMG',
131
- img: _baseImg["default"]
132
- }, {
133
- label: '矢量图',
134
- value: 'CUSTOM',
135
- img: _baseImg2["default"]
136
- }, {
137
- label: '矢量图(暗色)',
138
- value: 'dark',
139
- img: _baseImg7["default"]
140
- }]
141
- }];
127
+ label: TextEnum.BMapText,
128
+ value: 'BaiduImageryProvider',
129
+ children: [{
130
+ label: TextEnum.wxMapLayerText,
131
+ value: 'IMG',
132
+ img: _baseImg["default"]
133
+ }, {
134
+ label: TextEnum.slMapLayerText,
135
+ value: 'CUSTOM',
136
+ img: _baseImg2["default"]
137
+ }, {
138
+ label: "".concat(TextEnum.slMapLayerText, "(").concat(TextEnum.darkStyleText, ")"),
139
+ value: 'dark',
140
+ img: _baseImg7["default"]
141
+ }]
142
+ }];
143
+ };
142
144
  var BaseMap = exports.BaseMap = /*#__PURE__*/function (_EventEmitter) {
143
145
  function BaseMap(options) {
144
146
  var _this;
145
147
  _classCallCheck(this, BaseMap);
146
148
  _this = _callSuper(this, BaseMap);
147
149
  _this.map = options.map;
148
- _this.options = options.options || OPTIONS;
150
+ _this.options = options.options || getDefaultOptions(options.TextEnum);
149
151
  _this.imageryProvider = options.imageryProvider || '';
150
152
  _this.style = options.style || '';
151
153
  _this.layer = options.layer || _this.addLayer();