@vtx/ol-map 1.0.86 → 1.0.87
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 +1 -1
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/index.js +7 -3
- package/lib/map/index.js.map +1 -1
- package/package.json +1 -1
package/lib/map/Popup.js
CHANGED
|
@@ -163,7 +163,7 @@ var MapPopup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
163
163
|
var showTemplate = function showTemplate(feature, options) {
|
|
164
164
|
var _ref = options || {},
|
|
165
165
|
fitViewOptions = _ref.fitViewOptions;
|
|
166
|
-
if (Array.isArray(feature) && feature.length >= 2) {
|
|
166
|
+
if (Array.isArray(feature) && feature.length >= 2 && !map.hidePopupTable) {
|
|
167
167
|
showTemplateByFeatures(feature, options);
|
|
168
168
|
return;
|
|
169
169
|
}
|
package/lib/map/Popup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_antd","_ol","_layer","_classnames","_interopRequireDefault","_layerControl","_popup","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","FeatureTable","tableData","style","padding","_record$layer","feature","MapPopup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","overlayRef","useRef","popupRef","featureRef","viewRef","map","useImperativeHandle","showTemplate","hideTemplate","useEffect","overlay","Overlay","element","current","wrapDom","autoPan","animation","duration","stopEvent","positioning","offset","addOverlay","removeOverlay","options","_ref","fitViewOptions","showTemplateByFeatures","getLayerByFeature","showTemplateByCluster","template","getView","highlightLayer","addHighlightFeature","Image","geometry","getGeometry","type","getType","coordinate","getCoordinates","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","setPosition","_feature$getGeometry","_layer$_options","_layer$_options$clust","Template","_options","cluster","fitView","f","_clickObject","properties","getProperties","undefined","clearFeatures","view","zoom","getZoom","viewParams","extent","calculateExtent","getSize","center","getCenter","onClose","onCloseTemplateBefore","_viewRef$current","animate","_default","exports"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport { Table } from 'antd';\nimport { Overlay } from 'ol';\nimport { Image } from 'ol/layer';\nimport classnames from 'classnames';\nimport { getImgUrl } from '../tools/layer-control';\nimport Popup from '../popup';\nimport './style';\n\nconst ClusterTitle = props => {\n const { layer } = props;\n let { name } = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('ol-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('ol-map-popup-cluster-title-img')} />\n <span className={classnames('ol-map-popup-cluster-title-text')}>{name}</span>\n </div>\n );\n};\n\nconst Cluster = props => {\n const { layer, features, onFeatureClick, onFitView } = props;\n let { labelField } = layer;\n\n return (\n <div className={classnames('ol-map-popup-cluster')}>\n <div className={classnames('ol-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\n\nconst FeatureTable = props => {\n const { tableData, onFeatureClick, onFitView } = props;\n\n return (\n <div className={classnames('ol-map-popup-cluster')}>\n <div\n className={classnames('ol-map-popup-cluster-header')}\n style={{ padding: '10px 0' }}\n >\n 共 {tableData.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={tableData}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '图层',\n dataIndex: 'layerName',\n width: 40,\n render: (text, record) => record.layer.name,\n },\n {\n title: '名称',\n dataIndex: 'name',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.feature.values_[record?.layer?.labelField || 'name']}\n </a>\n );\n },\n },\n ]}\n />\n </div>\n );\n};\n\nconst MapPopup = forwardRef((props, ref) => {\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const overlayRef = useRef();\n const popupRef = useRef();\n const featureRef = useRef();\n const viewRef = useRef({});\n\n const { map } = props;\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n useEffect(() => {\n const overlay = new Overlay({\n element: popupRef.current.wrapDom,\n autoPan: {\n animation: {\n duration: 250,\n },\n },\n stopEvent: true,\n positioning: 'bottom-center',\n offset: [10, -45],\n });\n overlayRef.current = overlay;\n\n map.addOverlay(overlay);\n\n return () => {\n map.removeOverlay(overlay);\n };\n }, []);\n\n const showTemplate = (feature, options) => {\n const { fitViewOptions } = options || {};\n\n if (Array.isArray(feature) && feature.length >= 2) {\n showTemplateByFeatures(feature, options);\n return;\n }\n\n feature = Array.isArray(feature) ? feature[0] : feature;\n\n featureRef.current = feature;\n\n if (!feature) {\n hideTemplate();\n return;\n }\n\n let layer = map.getLayerByFeature(feature);\n map.featureRef = feature;\n\n // 判断是否为聚合点击\n const features = feature.get('features');\n if (features && features.length >= 2) {\n showTemplateByCluster(feature, layer, features);\n return;\n }\n\n if (!layer?.template) {\n return;\n }\n\n // 记录放大前的视角\n getView();\n\n map.highlightLayer.addHighlightFeature(feature, fitViewOptions);\n\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n if (labelField) {\n setTitle(feature.values_[labelField]);\n }\n if (template) {\n setContent(template(feature));\n\n let offset = layer instanceof Image ? [10, -10] : [10, -45];\n\n let geometry = feature.getGeometry();\n if (geometry) {\n let type = geometry.getType();\n let coordinate = geometry.getCoordinates();\n\n if (['MultiLineString', 'LineString'].includes(type)) {\n if (geometry.getFlatMidpoints) {\n coordinate = geometry.getFlatMidpoints();\n } else if (geometry.getFlatMidpoint) {\n coordinate = geometry.getFlatMidpoint();\n }\n offset = [7, 0];\n } else if (['MultiPolygon', 'Polygon'].includes(type)) {\n if (geometry.getFlatInteriorPoints) {\n coordinate = geometry.getFlatInteriorPoints();\n } else if (geometry.getFlatInteriorPoint) {\n coordinate = geometry.getFlatInteriorPoint();\n }\n offset = [10, 0];\n }\n\n overlayRef.current.setPosition(coordinate);\n overlayRef.current.values_.offset = offset;\n }\n }\n }\n };\n\n // 聚合点位展示\n const showTemplateByCluster = (feature, layer, features) => {\n let coordinate = feature?.getGeometry()?.getCoordinates();\n overlayRef.current.setPosition(coordinate);\n\n setTitle(<ClusterTitle layer={layer} />);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView(features);\n hideTemplate();\n }}\n onFeatureClick={f => {\n map.fitView(f);\n showTemplate(f);\n }}\n />,\n );\n };\n\n // 多个点位展示\n const showTemplateByFeatures = features => {\n overlayRef.current.setPosition(map._clickObject.coordinate);\n overlayRef.current.values_.offset = [10, -10];\n\n setTitle(null);\n\n const tableData = [];\n features.map(feature => {\n let layer = map.getLayerByFeature(feature);\n tableData.push({\n layer: layer,\n feature: feature,\n });\n });\n\n setContent(\n <FeatureTable\n tableData={tableData}\n onFitView={() => {\n map.fitView(features);\n hideTemplate();\n }}\n onFeatureClick={record => {\n let { feature } = record;\n let layer = map.getLayerByFeature(feature);\n\n let properties = feature.getProperties();\n layer?.onClick(properties, map._clickObject);\n\n if (layer?.template) {\n map.fitView(feature);\n showTemplate(feature);\n }\n }}\n />,\n );\n };\n\n const hideTemplate = () => {\n overlayRef.current.setPosition(undefined);\n map.highlightLayer.clearFeatures();\n setContent(null);\n setTitle(null);\n featureRef.current = null;\n map.featureRef = null;\n };\n\n const getView = () => {\n const view = map.getView();\n\n let zoom = view.getZoom();\n let viewParams;\n if (zoom < 15) {\n viewParams = {\n extent: view.calculateExtent(map.getSize()),\n zoom: view.getZoom(),\n center: view.getCenter(),\n };\n }\n viewRef.current = viewParams;\n };\n\n const onClose = () => {\n // 回调事件\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n\n // 隐藏气泡\n hideTemplate();\n\n // 恢复打开前的视角\n if (viewRef.current) {\n const { zoom, center } = viewRef.current;\n map.getView().animate({ zoom, center });\n }\n };\n return (\n <Popup ref={popupRef} title={title} onClose={onClose}>\n {content}\n </Popup>\n );\n});\n\nexport default MapPopup;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_antd","_ol","_layer","_classnames","_interopRequireDefault","_layerControl","_popup","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","FeatureTable","tableData","style","padding","_record$layer","feature","MapPopup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","overlayRef","useRef","popupRef","featureRef","viewRef","map","useImperativeHandle","showTemplate","hideTemplate","useEffect","overlay","Overlay","element","current","wrapDom","autoPan","animation","duration","stopEvent","positioning","offset","addOverlay","removeOverlay","options","_ref","fitViewOptions","hidePopupTable","showTemplateByFeatures","getLayerByFeature","showTemplateByCluster","template","getView","highlightLayer","addHighlightFeature","Image","geometry","getGeometry","type","getType","coordinate","getCoordinates","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","setPosition","_feature$getGeometry","_layer$_options","_layer$_options$clust","Template","_options","cluster","fitView","f","_clickObject","properties","getProperties","undefined","clearFeatures","view","zoom","getZoom","viewParams","extent","calculateExtent","getSize","center","getCenter","onClose","onCloseTemplateBefore","_viewRef$current","animate","_default","exports"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport { Table } from 'antd';\nimport { Overlay } from 'ol';\nimport { Image } from 'ol/layer';\nimport classnames from 'classnames';\nimport { getImgUrl } from '../tools/layer-control';\nimport Popup from '../popup';\nimport './style';\n\nconst ClusterTitle = props => {\n const { layer } = props;\n let { name } = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('ol-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('ol-map-popup-cluster-title-img')} />\n <span className={classnames('ol-map-popup-cluster-title-text')}>{name}</span>\n </div>\n );\n};\n\nconst Cluster = props => {\n const { layer, features, onFeatureClick, onFitView } = props;\n let { labelField } = layer;\n\n return (\n <div className={classnames('ol-map-popup-cluster')}>\n <div className={classnames('ol-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\n\nconst FeatureTable = props => {\n const { tableData, onFeatureClick, onFitView } = props;\n\n return (\n <div className={classnames('ol-map-popup-cluster')}>\n <div\n className={classnames('ol-map-popup-cluster-header')}\n style={{ padding: '10px 0' }}\n >\n 共 {tableData.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={tableData}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '图层',\n dataIndex: 'layerName',\n width: 40,\n render: (text, record) => record.layer.name,\n },\n {\n title: '名称',\n dataIndex: 'name',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.feature.values_[record?.layer?.labelField || 'name']}\n </a>\n );\n },\n },\n ]}\n />\n </div>\n );\n};\n\nconst MapPopup = forwardRef((props, ref) => {\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const overlayRef = useRef();\n const popupRef = useRef();\n const featureRef = useRef();\n const viewRef = useRef({});\n\n const { map } = props;\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n useEffect(() => {\n const overlay = new Overlay({\n element: popupRef.current.wrapDom,\n autoPan: {\n animation: {\n duration: 250,\n },\n },\n stopEvent: true,\n positioning: 'bottom-center',\n offset: [10, -45],\n });\n overlayRef.current = overlay;\n\n map.addOverlay(overlay);\n\n return () => {\n map.removeOverlay(overlay);\n };\n }, []);\n\n const showTemplate = (feature, options) => {\n const { fitViewOptions } = options || {};\n\n if (Array.isArray(feature) && feature.length >= 2 && !map.hidePopupTable) {\n showTemplateByFeatures(feature, options);\n return;\n }\n\n feature = Array.isArray(feature) ? feature[0] : feature;\n\n featureRef.current = feature;\n\n if (!feature) {\n hideTemplate();\n return;\n }\n\n let layer = map.getLayerByFeature(feature);\n map.featureRef = feature;\n\n // 判断是否为聚合点击\n const features = feature.get('features');\n if (features && features.length >= 2) {\n showTemplateByCluster(feature, layer, features);\n return;\n }\n\n if (!layer?.template) {\n return;\n }\n\n // 记录放大前的视角\n getView();\n\n map.highlightLayer.addHighlightFeature(feature, fitViewOptions);\n\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n if (labelField) {\n setTitle(feature.values_[labelField]);\n }\n if (template) {\n setContent(template(feature));\n\n let offset = layer instanceof Image ? [10, -10] : [10, -45];\n\n let geometry = feature.getGeometry();\n if (geometry) {\n let type = geometry.getType();\n let coordinate = geometry.getCoordinates();\n\n if (['MultiLineString', 'LineString'].includes(type)) {\n if (geometry.getFlatMidpoints) {\n coordinate = geometry.getFlatMidpoints();\n } else if (geometry.getFlatMidpoint) {\n coordinate = geometry.getFlatMidpoint();\n }\n offset = [7, 0];\n } else if (['MultiPolygon', 'Polygon'].includes(type)) {\n if (geometry.getFlatInteriorPoints) {\n coordinate = geometry.getFlatInteriorPoints();\n } else if (geometry.getFlatInteriorPoint) {\n coordinate = geometry.getFlatInteriorPoint();\n }\n offset = [10, 0];\n }\n\n overlayRef.current.setPosition(coordinate);\n overlayRef.current.values_.offset = offset;\n }\n }\n }\n };\n\n // 聚合点位展示\n const showTemplateByCluster = (feature, layer, features) => {\n let coordinate = feature?.getGeometry()?.getCoordinates();\n overlayRef.current.setPosition(coordinate);\n\n setTitle(<ClusterTitle layer={layer} />);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView(features);\n hideTemplate();\n }}\n onFeatureClick={f => {\n map.fitView(f);\n showTemplate(f);\n }}\n />,\n );\n };\n\n // 多个点位展示\n const showTemplateByFeatures = features => {\n overlayRef.current.setPosition(map._clickObject.coordinate);\n overlayRef.current.values_.offset = [10, -10];\n\n setTitle(null);\n\n const tableData = [];\n features.map(feature => {\n let layer = map.getLayerByFeature(feature);\n tableData.push({\n layer: layer,\n feature: feature,\n });\n });\n\n setContent(\n <FeatureTable\n tableData={tableData}\n onFitView={() => {\n map.fitView(features);\n hideTemplate();\n }}\n onFeatureClick={record => {\n let { feature } = record;\n let layer = map.getLayerByFeature(feature);\n\n let properties = feature.getProperties();\n layer?.onClick(properties, map._clickObject);\n\n if (layer?.template) {\n map.fitView(feature);\n showTemplate(feature);\n }\n }}\n />,\n );\n };\n\n const hideTemplate = () => {\n overlayRef.current.setPosition(undefined);\n map.highlightLayer.clearFeatures();\n setContent(null);\n setTitle(null);\n featureRef.current = null;\n map.featureRef = null;\n };\n\n const getView = () => {\n const view = map.getView();\n\n let zoom = view.getZoom();\n let viewParams;\n if (zoom < 15) {\n viewParams = {\n extent: view.calculateExtent(map.getSize()),\n zoom: view.getZoom(),\n center: view.getCenter(),\n };\n }\n viewRef.current = viewParams;\n };\n\n const onClose = () => {\n // 回调事件\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n\n // 隐藏气泡\n hideTemplate();\n\n // 恢复打开前的视角\n if (viewRef.current) {\n const { zoom, center } = viewRef.current;\n map.getView().animate({ zoom, center });\n }\n };\n return (\n <Popup ref={popupRef} title={title} onClose={onClose}>\n {content}\n </Popup>\n );\n});\n\nexport default MapPopup;\n"],"mappings":"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"}
|
package/lib/map/index.js
CHANGED
|
@@ -72,7 +72,8 @@ function Map(props) {
|
|
|
72
72
|
onCloseTemplateBefore = props.onCloseTemplateBefore,
|
|
73
73
|
onZoom = props.onZoom,
|
|
74
74
|
customBaseLayers = props.customBaseLayers,
|
|
75
|
-
positionStyle = props.positionStyle
|
|
75
|
+
positionStyle = props.positionStyle,
|
|
76
|
+
hidePopupTable = props.hidePopupTable;
|
|
76
77
|
var _useState = (0, _react.useState)(false),
|
|
77
78
|
_useState2 = _slicedToArray(_useState, 2),
|
|
78
79
|
mapLoaded = _useState2[0],
|
|
@@ -192,6 +193,9 @@ function Map(props) {
|
|
|
192
193
|
}
|
|
193
194
|
map.tk = tk;
|
|
194
195
|
|
|
196
|
+
// 隐藏表格弹出框
|
|
197
|
+
map.hidePopupTable = hidePopupTable;
|
|
198
|
+
|
|
195
199
|
// 图层管理
|
|
196
200
|
map.layers = new _Layers["default"]({
|
|
197
201
|
map: map
|
|
@@ -609,7 +613,7 @@ function Map(props) {
|
|
|
609
613
|
// 过滤掉仅展示的图层
|
|
610
614
|
features = features.filter(function (feature) {
|
|
611
615
|
var layer = map.getLayerByFeature(feature);
|
|
612
|
-
return layer && !layer.viewOnly;
|
|
616
|
+
return layer && !layer.viewOnly && layer.template;
|
|
613
617
|
});
|
|
614
618
|
if (features.length) {
|
|
615
619
|
map.showTemplate(features);
|
|
@@ -657,7 +661,7 @@ function Map(props) {
|
|
|
657
661
|
createdMap && createdMap(map);
|
|
658
662
|
setMapLoaded(true);
|
|
659
663
|
window.addEventListener('resize', handleResize);
|
|
660
|
-
case
|
|
664
|
+
case 55:
|
|
661
665
|
case "end":
|
|
662
666
|
return _context3.stop();
|
|
663
667
|
}
|
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","_ahooks","_provider","_Layers","_Analysis","_search","_ImageLayer","_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","_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","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","defaultInfo","_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","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","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","f","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","getView","getZoom","fit","padding","duration","animate","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features","_callee2$","_context2","_clickObject","getWMSFeatureInfoByLayers","_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","_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 { useUpdateEffect } from 'ahooks';\nimport Provider from '../provider';\nimport Layers from './Layers';\nimport Analysis from './Analysis';\nimport 'ol/ol.css';\nimport './style';\nimport { poiSearch } from '../_util/search';\nimport ImageLayer from '../image-layer/ImageLayer';\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 } = 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\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.layers = new Layers({ map });\n\n // 分析管理\n map.analysis = new Analysis({ map });\n\n mapRef.current = map;\n\n // 地图视角默认配置\n map.defaultInfo = 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 };\n\n // 获取基础图层\n map.getBaseLayers = getBaseLayers;\n\n // 设置高亮\n map.setHighlightFeature = feature => {\n highLayerRef.current.addHighlightFeature(feature);\n };\n\n // 清除高亮\n map.clearHighlightFeature = () => {\n highLayerRef.current.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 (layer.key && layer instanceof Image && layer.get('visible')) {\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 {\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 // 下标显隐\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 // 自适应\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 map.getView().fit(extent, {\n padding: [100, 400, 100, 400],\n maxZoom: currentZoom > 16 ? currentZoom : 16,\n duration: 500,\n ...options,\n });\n } else {\n map.getView().animate({ ...map.defaultInfo, duration: 500, ...options });\n }\n } else {\n map.getView().animate({ ...map.defaultInfo, duration: 500, ...options });\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) {\n let labelField = layer.labelField;\n if (labelField) {\n let label = feature.values_[labelField];\n if (label) {\n map.showPointTip(label);\n }\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 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;\n });\n\n if (features.length) {\n map.showTemplate(features);\n }\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')}\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 }}\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};\n"],"mappings":"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"}
|
|
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","_ahooks","_provider","_Layers","_Analysis","_search","_ImageLayer","_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","hidePopupTable","_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","getBaseLayers","baseLayer","cloneDeep","item","addLayer","Layers","analysis","Analysis","defaultInfo","_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","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","setLabelVisible","visible","FeatureLayer","label","setClusterVisible","cluster","setPointVisible","point","fitView","_e$values_","extent","getExtent","VectorSource","geometryInfo","_e$","vectorSource","f","createGeoJson","addFeatures","Feature","geometry","noFitView","currentZoom","getView","getZoom","fit","padding","duration","animate","on","analysisActive","toolboxActive","drawActive","getFeaturesAtPixel","pixel","cursor","labelField","registerEventLayer","uid","getUid","hoverUid","_ref3","_callee2","_features","_callee2$","_context2","_clickObject","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","_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 { useUpdateEffect } from 'ahooks';\nimport Provider from '../provider';\nimport Layers from './Layers';\nimport Analysis from './Analysis';\nimport 'ol/ol.css';\nimport './style';\nimport { poiSearch } from '../_util/search';\nimport ImageLayer from '../image-layer/ImageLayer';\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 hidePopupTable,\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\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.layers = new Layers({ map });\n\n // 分析管理\n map.analysis = new Analysis({ map });\n\n mapRef.current = map;\n\n // 地图视角默认配置\n map.defaultInfo = 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 };\n\n // 获取基础图层\n map.getBaseLayers = getBaseLayers;\n\n // 设置高亮\n map.setHighlightFeature = feature => {\n highLayerRef.current.addHighlightFeature(feature);\n };\n\n // 清除高亮\n map.clearHighlightFeature = () => {\n highLayerRef.current.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 (layer.key && layer instanceof Image && layer.get('visible')) {\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 {\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 // 下标显隐\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 // 自适应\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 map.getView().fit(extent, {\n padding: [100, 400, 100, 400],\n maxZoom: currentZoom > 16 ? currentZoom : 16,\n duration: 500,\n ...options,\n });\n } else {\n map.getView().animate({ ...map.defaultInfo, duration: 500, ...options });\n }\n } else {\n map.getView().animate({ ...map.defaultInfo, duration: 500, ...options });\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) {\n let labelField = layer.labelField;\n if (labelField) {\n let label = feature.values_[labelField];\n if (label) {\n map.showPointTip(label);\n }\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 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 }\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')}\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 }}\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};\n"],"mappings":"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"}
|