@vtx/ol-map 1.0.31 → 1.0.32

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_GroupLayer","_ImageLayer","_FeatureLayer","_lodash","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","iter","iterator","isArray","len","arr2","getLayersVisibleKeys","data","map","visible","keys","loop","v","_v$layers","layer","layers","getLayerByKey","GroupLayer","_layer$group","group","f","hasOwnProperty","show","push","getAllKeys","_v$layers2","getLayers","_keys","_v$layers3","isVisible","displayName","getVisible","includes","newLayer","Layers","exports","_EventEmitter","_super","options","_this","onChange","emit","addLayer","FeatureLayer","ImageLayer","layerControl","removeLayer","filter","clearLayers","_this$layers","_this$getAllLayers","getAllLayers","find","item","_item$layers","getShowKeys","getHiddenKeys","getImageLayers","getFeatureLayers","setShowByKeys","a","_layer$group2","_","cloneDeep","forEach","isEqual","setGroup","setVisible","setHideByKeys","_layer$group3","EventEmitter"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\r\nimport GroupLayer from '../group-layer/GroupLayer';\r\nimport ImageLayer from '../image-layer/ImageLayer';\r\nimport FeatureLayer from '../feature-layer/FeatureLayer';\r\nimport _ from 'lodash';\r\n\r\n// 获取显示或隐藏的keys\r\nconst getLayersVisibleKeys = (data, map, visible = true) => {\r\n let keys = [];\r\n function loop(data, map, visible) {\r\n data.map(v => {\r\n if (v.key) {\r\n let layer = map.layers.getLayerByKey(v.key);\r\n if (layer && !(layer instanceof GroupLayer)) {\r\n if (layer.group?.length) {\r\n if (visible) {\r\n layer.group.map(f => {\r\n if (!f.hasOwnProperty('show') || f.show) {\r\n keys.push(f.key);\r\n }\r\n });\r\n } else {\r\n layer.group.map(f => {\r\n if (!f.show) {\r\n keys.push(f.key);\r\n }\r\n });\r\n }\r\n } else if (layer.show === visible) {\r\n keys.push(v.key);\r\n }\r\n\r\n // 如果group的显示的长度和layer的不一致 则不显示\r\n // if (\r\n // layer.show === visible &&\r\n // layer.group?.filter(v => v.show)?.length == layer.group?.length\r\n // ) {\r\n // keys.push(v.key);\r\n // }\r\n }\r\n }\r\n if (v.layers?.length) {\r\n loop(v.layers, map, visible);\r\n }\r\n });\r\n }\r\n loop(data, map, visible);\r\n return keys;\r\n};\r\n// 获取所有keys\r\nconst getAllKeys = data => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.layers?.length) {\r\n keys.push(...getAllKeys(v.layers));\r\n }\r\n keys.push(v.key);\r\n });\r\n\r\n return keys;\r\n};\r\n// 获取图层\r\nconst getLayers = (data, layer, _keys, visible) => {\r\n const layers = [];\r\n // 判断查询 全部的 or 隐藏的 or 显示的\r\n function loop(data, layer, _keys, visible) {\r\n data.map(v => {\r\n const isVisible =\r\n typeof visible !== 'boolean'\r\n ? true\r\n : v.displayName !== 'GroupLayer'\r\n ? v?.getVisible() === visible\r\n : false;\r\n\r\n if (v.key && v instanceof layer && isVisible) {\r\n if (_keys) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n if (keys.includes(v.key)) {\r\n layers.push(v);\r\n }\r\n } else {\r\n layers.push(v);\r\n }\r\n }\r\n if (v.layers?.length) {\r\n let newLayer = loop(v.layers, layer, _keys, visible);\r\n if (newLayer?.length) {\r\n layers.push(newLayer);\r\n }\r\n }\r\n });\r\n }\r\n loop(data, layer, _keys, visible);\r\n\r\n return layers;\r\n};\r\n\r\nexport default class Layers extends EventEmitter {\r\n constructor(options) {\r\n super();\r\n\r\n this.map = options.map;\r\n\r\n this.layers = [];\r\n }\r\n // 图层改变的时候\r\n onChange() {\r\n this.emit('change', this.layers);\r\n }\r\n addLayer(layer) {\r\n const map = this.map;\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.addLayer(layer);\r\n }\r\n if (layer.name && layer.layerControl) {\r\n this.layers.push(layer);\r\n this.onChange();\r\n this.emit('add', layer);\r\n }\r\n }\r\n removeLayer(layer) {\r\n const map = this.map;\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.removeLayer(layer);\r\n }\r\n if (layer.name && layer.layerControl) {\r\n this.layers = this.layers.filter(v => v !== layer);\r\n this.emit('remove', layer);\r\n }\r\n }\r\n // 图层清空\r\n clearLayers() {\r\n const map = this.map;\r\n this.layers?.map(layer => {\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.removeLayer(layer);\r\n }\r\n });\r\n this.layers = [];\r\n this.emit('clear');\r\n this.onChange();\r\n }\r\n getLayerByKey(_keys) {\r\n return this.getAllLayers()?.find(layer => {\r\n return _keys && layer.key && layer.key === _keys;\r\n });\r\n }\r\n getAllLayers() {\r\n let layers = [];\r\n function loop(data) {\r\n data.map(item => {\r\n layers.push(item);\r\n if (item?.layers?.length) {\r\n loop(item.layers);\r\n }\r\n });\r\n }\r\n loop(this.layers);\r\n return layers;\r\n }\r\n // 获取 layers 里面的 key 集合\r\n getAllKeys() {\r\n return getAllKeys(this.layers);\r\n }\r\n\r\n // 获取当前展示的 keys\r\n getShowKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, true);\r\n }\r\n\r\n // 获取当前隐藏的 keys\r\n getHiddenKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, false);\r\n }\r\n\r\n // 获取 ImageLayer 图层\r\n getImageLayers(_keys, visible) {\r\n return getLayers(this.layers, ImageLayer, _keys, visible);\r\n }\r\n\r\n // 获取 FeatureLayer 图层\r\n getFeatureLayers(_keys, visible) {\r\n return getLayers(this.layers, FeatureLayer, _keys, visible);\r\n }\r\n\r\n // 根据 keys 设置图层的显示,其他的隐藏\r\n setShowByKeys(_keys) {\r\n const map = this.map;\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n this.getAllKeys().map(a => {\r\n let layer = map.layers.getLayerByKey(a);\r\n if (layer && !(layer instanceof GroupLayer)) {\r\n if (layer.group?.length) {\r\n let group = _.cloneDeep(layer.group);\r\n\r\n let show = false;\r\n group.forEach(v => {\r\n v.show = _keys.includes(v.key);\r\n\r\n if (_keys.includes(v.key)) {\r\n show = true\r\n }\r\n });\r\n\r\n if (!_.isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n\r\n layer.show = show;\r\n layer.setVisible(show);\r\n } else {\r\n let show = keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.show = show;\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n map.layers.onChange();\r\n }\r\n\r\n // 根据 keys 设置图层的隐藏,其他的显示\r\n setHideByKeys(_keys) {\r\n const map = this.map;\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n this.getAllKeys().map(a => {\r\n let layer = map.layers.getLayerByKey(a);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n let group = _.cloneDeep(layer.group);\r\n group.forEach(v => {\r\n v.show = !_keys.includes(v.key);\r\n });\r\n\r\n if (!_.isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n } else {\r\n let show = !keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.show = show;\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n map.layers.onChange();\r\n }\r\n}\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_GroupLayer","_ImageLayer","_FeatureLayer","_lodash","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","iter","iterator","isArray","len","arr2","getLayersVisibleKeys","data","map","visible","keys","loop","v","_v$layers","layer","layers","getLayerByKey","GroupLayer","_layer$group","group","f","hasOwnProperty","show","push","getAllKeys","_v$layers2","getLayers","_keys","_v$layers3","isVisible","displayName","getVisible","includes","newLayer","Layers","exports","_EventEmitter","_super","options","_this","onChange","emit","addLayer","FeatureLayer","ImageLayer","layerControl","removeLayer","filter","clearLayers","_this$layers","_this$getAllLayers","getAllLayers","find","item","_item$layers","getShowKeys","getHiddenKeys","getImageLayers","getFeatureLayers","setShowByKeys","a","_layer$group2","_","cloneDeep","forEach","isEqual","setGroup","setVisible","setHideByKeys","_layer$group3","EventEmitter"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\r\nimport GroupLayer from '../group-layer/GroupLayer';\r\nimport ImageLayer from '../image-layer/ImageLayer';\r\nimport FeatureLayer from '../feature-layer/FeatureLayer';\r\nimport _ from 'lodash';\r\n\r\n// 获取显示或隐藏的keys\r\nconst getLayersVisibleKeys = (data, map, visible = true) => {\r\n let keys = [];\r\n function loop(data, map, visible) {\r\n data.map(v => {\r\n if (v.key) {\r\n let layer = map.layers.getLayerByKey(v.key);\r\n if (layer && !(layer instanceof GroupLayer)) {\r\n if (layer.group?.length) {\r\n if (visible) {\r\n layer.group.map(f => {\r\n if (!f.hasOwnProperty('show') || f.show) {\r\n keys.push(f.key);\r\n }\r\n });\r\n } else {\r\n layer.group.map(f => {\r\n if (!f.show) {\r\n keys.push(f.key);\r\n }\r\n });\r\n }\r\n } else if (layer.show === visible) {\r\n keys.push(v.key);\r\n }\r\n\r\n // 如果group的显示的长度和layer的不一致 则不显示\r\n // if (\r\n // layer.show === visible &&\r\n // layer.group?.filter(v => v.show)?.length == layer.group?.length\r\n // ) {\r\n // keys.push(v.key);\r\n // }\r\n }\r\n }\r\n if (v.layers?.length) {\r\n loop(v.layers, map, visible);\r\n }\r\n });\r\n }\r\n loop(data, map, visible);\r\n return keys;\r\n};\r\n// 获取所有keys\r\nconst getAllKeys = data => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.layers?.length) {\r\n keys.push(...getAllKeys(v.layers));\r\n }\r\n keys.push(v.key);\r\n });\r\n\r\n return keys;\r\n};\r\n// 获取图层\r\nconst getLayers = (data, layer, _keys, visible) => {\r\n const layers = [];\r\n // 判断查询 全部的 or 隐藏的 or 显示的\r\n function loop(data, layer, _keys, visible) {\r\n data.map(v => {\r\n const isVisible =\r\n typeof visible !== 'boolean'\r\n ? true\r\n : v.displayName !== 'GroupLayer'\r\n ? v?.getVisible() === visible\r\n : false;\r\n\r\n if (v.key && v instanceof layer && isVisible) {\r\n if (_keys) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n if (keys.includes(v.key)) {\r\n layers.push(v);\r\n }\r\n } else {\r\n layers.push(v);\r\n }\r\n }\r\n if (v.layers?.length) {\r\n let newLayer = loop(v.layers, layer, _keys, visible);\r\n if (newLayer?.length) {\r\n layers.push(newLayer);\r\n }\r\n }\r\n });\r\n }\r\n loop(data, layer, _keys, visible);\r\n\r\n return layers;\r\n};\r\n\r\nexport default class Layers extends EventEmitter {\r\n constructor(options) {\r\n super();\r\n\r\n this.map = options.map;\r\n\r\n this.layers = [];\r\n }\r\n // 图层改变的时候\r\n onChange() {\r\n this.emit('change', this.layers);\r\n }\r\n addLayer(layer) {\r\n const map = this.map;\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.addLayer(layer);\r\n }\r\n if (layer.name && layer.layerControl) {\r\n this.layers.push(layer);\r\n this.onChange();\r\n this.emit('add', layer);\r\n }\r\n }\r\n removeLayer(layer) {\r\n const map = this.map;\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.removeLayer(layer);\r\n }\r\n if (layer.name && layer.layerControl) {\r\n this.layers = this.layers.filter(v => v !== layer);\r\n this.emit('remove', layer);\r\n }\r\n }\r\n // 图层清空\r\n clearLayers() {\r\n const map = this.map;\r\n this.layers?.map(layer => {\r\n if (layer instanceof FeatureLayer || layer instanceof ImageLayer) {\r\n map.removeLayer(layer);\r\n }\r\n });\r\n this.layers = [];\r\n this.emit('clear');\r\n this.onChange();\r\n }\r\n getLayerByKey(_keys) {\r\n return this.getAllLayers()?.find(layer => {\r\n return _keys && layer.key && layer.key === _keys;\r\n });\r\n }\r\n getAllLayers() {\r\n let layers = [];\r\n function loop(data) {\r\n data.map(item => {\r\n layers.push(item);\r\n if (item?.layers?.length) {\r\n loop(item.layers);\r\n }\r\n });\r\n }\r\n loop(this.layers);\r\n return layers;\r\n }\r\n // 获取 layers 里面的 key 集合\r\n getAllKeys() {\r\n return getAllKeys(this.layers);\r\n }\r\n\r\n // 获取当前展示的 keys\r\n getShowKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, true);\r\n }\r\n\r\n // 获取当前隐藏的 keys\r\n getHiddenKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, false);\r\n }\r\n\r\n // 获取 ImageLayer 图层\r\n getImageLayers(_keys, visible) {\r\n return getLayers(this.layers, ImageLayer, _keys, visible);\r\n }\r\n\r\n // 获取 FeatureLayer 图层\r\n getFeatureLayers(_keys, visible) {\r\n return getLayers(this.layers, FeatureLayer, _keys, visible);\r\n }\r\n\r\n // 根据 keys 设置图层的显示,其他的隐藏\r\n setShowByKeys(_keys) {\r\n const map = this.map;\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n this.getAllKeys().map(a => {\r\n let layer = map.layers.getLayerByKey(a);\r\n if (layer && !(layer instanceof GroupLayer)) {\r\n if (layer.group?.length) {\r\n let group = _.cloneDeep(layer.group);\r\n\r\n let show = false;\r\n group.forEach(v => {\r\n v.show = _keys.includes(v.key);\r\n\r\n if (_keys.includes(v.key)) {\r\n show = true;\r\n }\r\n });\r\n\r\n if (!_.isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n\r\n layer.show = show;\r\n layer.setVisible(show);\r\n } else {\r\n let show = keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.show = show;\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n map.layers.onChange();\r\n }\r\n\r\n // 根据 keys 设置图层的隐藏,其他的显示\r\n setHideByKeys(_keys) {\r\n const map = this.map;\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n this.getAllKeys().map(a => {\r\n let layer = map.layers.getLayerByKey(a);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n let group = _.cloneDeep(layer.group);\r\n group.forEach(v => {\r\n v.show = !_keys.includes(v.key);\r\n });\r\n\r\n if (!_.isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n } else {\r\n let show = !keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.show = show;\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n map.layers.onChange();\r\n }\r\n}\r\n"],"mappings":"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"}
package/lib/map/Popup.js CHANGED
@@ -205,6 +205,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
205
205
  height: 16,
206
206
  onClick: onClose
207
207
  }), /*#__PURE__*/_react["default"].createElement("div", {
208
+ title: title,
208
209
  className: (0, _classnames["default"])('ol-map-popup-title', {
209
210
  'ol-map-popup-noTitle': !title
210
211
  })
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_ol","_layer","_classnames","_interopRequireDefault","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","Cluster","props","layer","features","onFeatureClick","onFitView","labelField","createElement","className","classnames","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","overlayRef","useRef","popupRef","featureRef","viewRef","map","useImperativeHandle","showTemplate","hideTemplate","useEffect","overlay","Overlay","element","current","autoPan","animation","duration","stopEvent","positioning","offset","addOverlay","removeOverlay","feature","getLayerByFeature","_feature$getGeometry","_layer$_options","coordinate","getGeometry","getCoordinates","setPosition","Template","_options","cluster","template","fitView","getView","highlightLayer","addHighlightFeature","Image","geometry","type","getType","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","undefined","clearFeatures","view","calculateExtent","getSize","onClose","onCloseTemplateBefore","fit","CloseOutlined","height","_default","exports"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useImperativeHandle, forwardRef } from 'react';\r\nimport { Table } from 'antd';\r\nimport { CloseOutlined } from '@ant-design/icons';\r\nimport { Overlay } from 'ol';\r\nimport { Image } from 'ol/layer';\r\nimport classnames from 'classnames';\r\nimport './style';\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('ol-map-popup-cluster')}>\r\n <div className={classnames('ol-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\n\r\nconst Popup = forwardRef((props, ref) => {\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const overlayRef = useRef();\r\n const popupRef = useRef();\r\n const featureRef = useRef();\r\n const viewRef = useRef();\r\n\r\n const { map } = props;\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n const overlay = new Overlay({\r\n element: popupRef.current,\r\n autoPan: {\r\n animation: {\r\n duration: 250,\r\n },\r\n },\r\n stopEvent: true,\r\n positioning: 'bottom-center',\r\n offset: [10, -45],\r\n });\r\n overlayRef.current = overlay;\r\n\r\n map.addOverlay(overlay);\r\n\r\n return () => {\r\n map.removeOverlay(overlay);\r\n };\r\n }, []);\r\n\r\n const showTemplate = feature => {\r\n featureRef.current = feature;\r\n\r\n if (!feature) {\r\n hideTemplate();\r\n return;\r\n }\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n\r\n // 判断是否为聚合点击\r\n const features = feature.get('features');\r\n if (features && features.length >= 2) {\r\n let coordinate = feature?.getGeometry()?.getCoordinates();\r\n overlayRef.current.setPosition(coordinate);\r\n\r\n // 判断是否有自定义聚合列表模版\r\n let Template = layer?._options?.cluster?.template || Cluster;\r\n setContent(\r\n <Template\r\n layer={layer}\r\n features={features}\r\n onFitView={() => {\r\n map.fitView(features);\r\n hideTemplate();\r\n }}\r\n onFeatureClick={f => {\r\n map.fitView(f);\r\n showTemplate(f);\r\n }}\r\n />,\r\n );\r\n return;\r\n }\r\n\r\n if (!layer?.template) {\r\n return;\r\n }\r\n\r\n // 记录放大前的视角\r\n getView();\r\n\r\n map.highlightLayer.addHighlightFeature(feature);\r\n\r\n if (layer) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n if (labelField) {\r\n setTitle(feature.values_[labelField]);\r\n }\r\n if (template) {\r\n setContent(template(feature));\r\n\r\n let offset = layer instanceof Image ? [10, -10] : [10, -45];\r\n\r\n let geometry = feature.getGeometry();\r\n if (geometry) {\r\n let type = geometry.getType();\r\n let coordinate = geometry.getCoordinates();\r\n\r\n if (['MultiLineString', 'LineString'].includes(type)) {\r\n if (geometry.getFlatMidpoints) {\r\n coordinate = geometry.getFlatMidpoints();\r\n } else if (geometry.getFlatMidpoint) {\r\n coordinate = geometry.getFlatMidpoint();\r\n }\r\n offset = [7, 0];\r\n } else if (['MultiPolygon', 'Polygon'].includes(type)) {\r\n if (geometry.getFlatInteriorPoints) {\r\n coordinate = geometry.getFlatInteriorPoints();\r\n } else if (geometry.getFlatInteriorPoint) {\r\n coordinate = geometry.getFlatInteriorPoint();\r\n }\r\n offset = [10, 0];\r\n }\r\n\r\n overlayRef.current.setPosition(coordinate);\r\n overlayRef.current.values_.offset = offset;\r\n }\r\n }\r\n }\r\n };\r\n\r\n const hideTemplate = () => {\r\n overlayRef.current.setPosition(undefined);\r\n map.highlightLayer.clearFeatures();\r\n setContent(null);\r\n setTitle(null);\r\n featureRef.current = null;\r\n };\r\n\r\n const getView = () => {\r\n const view = map.getView();\r\n\r\n viewRef.current = view.calculateExtent(map.getSize())\r\n }\r\n\r\n const onClose = () => {\r\n // 回调事件\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n\r\n // 隐藏气泡\r\n hideTemplate();\r\n\r\n // 恢复打开前的视角\r\n map.getView().fit(viewRef.current);\r\n };\r\n return (\r\n <div ref={popupRef} className={classnames('ol-map-popup')}>\r\n <CloseOutlined\r\n className={classnames('ol-map-popup-close')}\r\n width={16}\r\n height={16}\r\n onClick={onClose}\r\n />\r\n <div className={classnames('ol-map-popup-title', { 'ol-map-popup-noTitle': !title })}>\r\n {title}\r\n </div>\r\n <div className={classnames('ol-map-popup-content')}>{content}</div>\r\n </div>\r\n );\r\n});\r\n\r\nexport default Popup;\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_antd","_icons","_ol","_layer","_classnames","_interopRequireDefault","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","Cluster","props","layer","features","onFeatureClick","onFitView","labelField","createElement","className","classnames","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","overlayRef","useRef","popupRef","featureRef","viewRef","map","useImperativeHandle","showTemplate","hideTemplate","useEffect","overlay","Overlay","element","current","autoPan","animation","duration","stopEvent","positioning","offset","addOverlay","removeOverlay","feature","getLayerByFeature","_feature$getGeometry","_layer$_options","coordinate","getGeometry","getCoordinates","setPosition","Template","_options","cluster","template","fitView","getView","highlightLayer","addHighlightFeature","Image","geometry","type","getType","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","undefined","clearFeatures","view","calculateExtent","getSize","onClose","onCloseTemplateBefore","fit","CloseOutlined","height","_default","exports"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState, useImperativeHandle, forwardRef } from 'react';\r\nimport { Table } from 'antd';\r\nimport { CloseOutlined } from '@ant-design/icons';\r\nimport { Overlay } from 'ol';\r\nimport { Image } from 'ol/layer';\r\nimport classnames from 'classnames';\r\nimport './style';\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('ol-map-popup-cluster')}>\r\n <div className={classnames('ol-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\n\r\nconst Popup = forwardRef((props, ref) => {\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const overlayRef = useRef();\r\n const popupRef = useRef();\r\n const featureRef = useRef();\r\n const viewRef = useRef();\r\n\r\n const { map } = props;\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n const overlay = new Overlay({\r\n element: popupRef.current,\r\n autoPan: {\r\n animation: {\r\n duration: 250,\r\n },\r\n },\r\n stopEvent: true,\r\n positioning: 'bottom-center',\r\n offset: [10, -45],\r\n });\r\n overlayRef.current = overlay;\r\n\r\n map.addOverlay(overlay);\r\n\r\n return () => {\r\n map.removeOverlay(overlay);\r\n };\r\n }, []);\r\n\r\n const showTemplate = feature => {\r\n featureRef.current = feature;\r\n\r\n if (!feature) {\r\n hideTemplate();\r\n return;\r\n }\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n\r\n // 判断是否为聚合点击\r\n const features = feature.get('features');\r\n if (features && features.length >= 2) {\r\n let coordinate = feature?.getGeometry()?.getCoordinates();\r\n overlayRef.current.setPosition(coordinate);\r\n\r\n // 判断是否有自定义聚合列表模版\r\n let Template = layer?._options?.cluster?.template || Cluster;\r\n setContent(\r\n <Template\r\n layer={layer}\r\n features={features}\r\n onFitView={() => {\r\n map.fitView(features);\r\n hideTemplate();\r\n }}\r\n onFeatureClick={f => {\r\n map.fitView(f);\r\n showTemplate(f);\r\n }}\r\n />,\r\n );\r\n return;\r\n }\r\n\r\n if (!layer?.template) {\r\n return;\r\n }\r\n\r\n // 记录放大前的视角\r\n getView();\r\n\r\n map.highlightLayer.addHighlightFeature(feature);\r\n\r\n if (layer) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n if (labelField) {\r\n setTitle(feature.values_[labelField]);\r\n }\r\n if (template) {\r\n setContent(template(feature));\r\n\r\n let offset = layer instanceof Image ? [10, -10] : [10, -45];\r\n\r\n let geometry = feature.getGeometry();\r\n if (geometry) {\r\n let type = geometry.getType();\r\n let coordinate = geometry.getCoordinates();\r\n\r\n if (['MultiLineString', 'LineString'].includes(type)) {\r\n if (geometry.getFlatMidpoints) {\r\n coordinate = geometry.getFlatMidpoints();\r\n } else if (geometry.getFlatMidpoint) {\r\n coordinate = geometry.getFlatMidpoint();\r\n }\r\n offset = [7, 0];\r\n } else if (['MultiPolygon', 'Polygon'].includes(type)) {\r\n if (geometry.getFlatInteriorPoints) {\r\n coordinate = geometry.getFlatInteriorPoints();\r\n } else if (geometry.getFlatInteriorPoint) {\r\n coordinate = geometry.getFlatInteriorPoint();\r\n }\r\n offset = [10, 0];\r\n }\r\n\r\n overlayRef.current.setPosition(coordinate);\r\n overlayRef.current.values_.offset = offset;\r\n }\r\n }\r\n }\r\n };\r\n\r\n const hideTemplate = () => {\r\n overlayRef.current.setPosition(undefined);\r\n map.highlightLayer.clearFeatures();\r\n setContent(null);\r\n setTitle(null);\r\n featureRef.current = null;\r\n };\r\n\r\n const getView = () => {\r\n const view = map.getView();\r\n\r\n viewRef.current = view.calculateExtent(map.getSize());\r\n };\r\n\r\n const onClose = () => {\r\n // 回调事件\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n\r\n // 隐藏气泡\r\n hideTemplate();\r\n\r\n // 恢复打开前的视角\r\n map.getView().fit(viewRef.current);\r\n };\r\n return (\r\n <div ref={popupRef} className={classnames('ol-map-popup')}>\r\n <CloseOutlined\r\n className={classnames('ol-map-popup-close')}\r\n width={16}\r\n height={16}\r\n onClick={onClose}\r\n />\r\n <div\r\n title={title}\r\n className={classnames('ol-map-popup-title', { 'ol-map-popup-noTitle': !title })}\r\n >\r\n {title}\r\n </div>\r\n <div className={classnames('ol-map-popup-content')}>{content}</div>\r\n </div>\r\n );\r\n});\r\n\r\nexport default Popup;\r\n"],"mappings":"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"}
@@ -85,6 +85,7 @@
85
85
  box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.16);
86
86
  border-radius: 2px 2px 2px 2px;
87
87
  opacity: 1;
88
+ max-width: 300px;
88
89
  }
89
90
  .ol-map-container .ol-map-popup .ol-map-popup-title {
90
91
  font-size: 14px;
@@ -92,6 +93,7 @@
92
93
  color: #222222;
93
94
  border-bottom: 1px solid #dfdfdf;
94
95
  padding: 10px 20px 10px 12px;
96
+ max-width: 224px;
95
97
  white-space: nowrap;
96
98
  text-overflow: ellipsis;
97
99
  overflow: hidden;
@@ -75,6 +75,7 @@
75
75
  box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.16);
76
76
  border-radius: 2px 2px 2px 2px;
77
77
  opacity: 1;
78
+ max-width: 300px;
78
79
 
79
80
  .ol-map-popup-title {
80
81
  font-size: 14px;
@@ -82,6 +83,7 @@
82
83
  color: #222222;
83
84
  border-bottom: 1px solid #dfdfdf;
84
85
  padding: 10px 20px 10px 12px;
86
+ max-width: 224px;
85
87
  white-space: nowrap;
86
88
  text-overflow: ellipsis;
87
89
  overflow: hidden;
@@ -313,7 +313,6 @@ var _default = exports["default"] = function _default(props) {
313
313
  }));
314
314
  setFeature(feature);
315
315
  };
316
- console.log('constrainGeom:', constrainGeom);
317
316
  return modalVisible ? /*#__PURE__*/_react["default"].createElement(_VtxModal["default"], {
318
317
  title: graphicType === 'point' ? '定位' : '绘制',
319
318
  style: {
@@ -383,6 +382,6 @@ var _default = exports["default"] = function _default(props) {
383
382
  }), (poi === null || poi === void 0 ? void 0 : poi.address) && /*#__PURE__*/_react["default"].createElement(_PoiList["default"], {
384
383
  poi: poi,
385
384
  onClick: onListClick
386
- })))))) : null;
385
+ }), props.children))))) : null;
387
386
  };
388
387
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_layer","_source","_map","_interopRequireDefault","_featureDraw","_VtxModal","_button","_location","_noLocation","_icons","_ol","_geom","_Marker","_Polygon","_Circle","_Polyline","_Search","_PoiList","_FeatureLayer","_search","_style","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","styles","searchModal","searchMap","top","bottom","content","content_right","_default","exports","props","mapRef","useRef","_props$mapCenter","mapCenter","_props$modalVisible","modalVisible","graphicType","closeModal","callback","editParam","drawParameter","_props$limitAreaLngLa","limitAreaLngLat","_props$limitAreaZInde","limitAreaZIndex","_props$limitAreaFeatu","limitAreaFeature","_useState","useState","_useState2","feature","setFeature","_useState3","_useState4","callbackData","setCallbackData","_useState5","_useState6","refresh","setRefresh","_useState7","_useState8","drawType","setDrawType","_useState9","_useState10","poi","setPoi","_useState11","_useState12","clearFlag","setClearFlag","_useState13","_useState14","constrainGeom","setConstrainGeom","source","VectorSource","vector","VectorLayer","zIndex","style","Style","fill","Fill","color","stroke","Stroke","width","useEffect","current","featureA","Feature","geometryA","Point","setGeometry","setStyle","Marker","image","location","scale","featureB","geometryB","Polygon","PolygonStyle","featureC","metersPerUnit","getView","getProjection","getMetersPerUnit","geometryC","Circle","CircleStyle","featureD","geometryD","LineString","PolylineStyle","fitView","onCancel","submit","regeoSearch","extensions","then","res","redraw","setTimeout","onListClick","data","_data$geometryInfo$ln","_data$geometryInfo$ln2","geometry","geometryInfo","lngLats","split","selectLayer","getLayerByKey","loadData","createdMap","map","addFeature","getGeometry","addLayer","layer","FeatureLayer","key","mode","render","type","noLocation","labelField","Math","random","pairArray","reduce","acc","curr","index","onDrawEnd","distance","_feature$getGeometry$","_feature$getGeometry$2","_feature$getGeometry$3","console","log","flatCoordinates","dataB","dataC","dataD","radius","getRadius","dataE","closeSearch","noSelectLayer","checkPoint","center","getCenter","createElement","title","visible","maximize","isNotMoving","wrapClassName","bodyStyle","height","concat","window","innerHeight","maskClosable","footer","className","icon","CheckOutlined","onClick","CloseOutlined","onConfirm","EnvironmentOutlined","EditOutlined","zoom","tk","markerStyle","address"],"sources":["search-map/index.js"],"sourcesContent":["import React, { useRef, useEffect, useState } from 'react';\r\nimport { Vector as VectorLayer } from 'ol/layer';\r\nimport { Vector as VectorSource } from 'ol/source';\r\nimport Map from '../map';\r\nimport FeatureDraw from '../feature-draw';\r\nimport VtxModal from './VtxModal';\r\nimport Button from 'antd/lib/button';\r\nimport location from '../assets/location.png';\r\nimport noLocation from '../assets/noLocation.png';\r\nimport { CloseOutlined, CheckOutlined, EditOutlined, EnvironmentOutlined } from '@ant-design/icons';\r\nimport { Feature } from 'ol';\r\nimport { Point, Polygon, Circle, LineString } from 'ol/geom';\r\nimport Marker from '../marker/Marker';\r\nimport PolygonStyle from '../polygon/Polygon';\r\nimport CircleStyle from '../circle/Circle';\r\nimport PolylineStyle from '../polyline/Polyline';\r\nimport Search from '../poi-search/Search';\r\nimport PoiList from '../poi-search/PoiList';\r\nimport FeatureLayer from '../feature-layer/FeatureLayer';\r\nimport { regeoSearch } from '../_util/search';\r\nimport { Fill, Stroke, Style } from 'ol/style';\r\n\r\nconst styles = {\r\n searchModal: 'vtx-ui-searchmap-searchmodal',\r\n searchMap: 'vtx-ui-searchmap-searchmap',\r\n top: 'vtx-ui-searchmap-top',\r\n bottom: 'vtx-ui-searchmap-bottom',\r\n content: 'vtx-ui-searchmap-content',\r\n content_right: 'vtx-ui-searchmap-content_right',\r\n};\r\n\r\nexport default props => {\r\n const mapRef = useRef();\r\n const {\r\n mapCenter = [116.391349, 39.907375],\r\n modalVisible = false,\r\n graphicType,\r\n closeModal,\r\n callback,\r\n editParam,\r\n drawParameter,\r\n limitAreaLngLat = [],\r\n limitAreaZIndex = 1,\r\n limitAreaFeature = null,\r\n } = props;\r\n const [feature, setFeature] = useState(null);\r\n const [callbackData, setCallbackData] = useState([]);\r\n const [refresh, setRefresh] = useState(0);\r\n const [drawType, setDrawType] = useState(graphicType);\r\n const [poi, setPoi] = useState({});\r\n const [clearFlag, setClearFlag] = useState(0);\r\n const [constrainGeom, setConstrainGeom] = useState(null);\r\n // 绘制区域限制\r\n const source = new VectorSource();\r\n const vector = new VectorLayer({\r\n source,\r\n zIndex: limitAreaZIndex,\r\n style: new Style({\r\n fill: new Fill({\r\n color: 'rgba(0,128,255, 0.3)',\r\n }),\r\n stroke: new Stroke({\r\n color: 'rgba(0,128,255, 0.3)',\r\n width: 2,\r\n }),\r\n }),\r\n });\r\n\r\n useEffect(() => {\r\n setDrawType(graphicType);\r\n }, [graphicType]);\r\n\r\n useEffect(() => {\r\n if (mapRef?.current && graphicType && editParam) {\r\n switch (graphicType) {\r\n case 'Marker':\r\n let featureA = new Feature();\r\n let geometryA = new Point(editParam);\r\n setCallbackData(editParam);\r\n featureA.setGeometry(geometryA);\r\n featureA.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(featureA);\r\n break;\r\n case 'DragBox':\r\n case 'Polygon':\r\n let featureB = new Feature();\r\n let geometryB = new Polygon(editParam);\r\n setCallbackData(editParam);\r\n featureB.setGeometry(geometryB);\r\n if (drawParameter) {\r\n featureB.setStyle(new PolygonStyle(drawParameter));\r\n }\r\n setFeature(featureB);\r\n break;\r\n case 'Circle':\r\n let featureC = new Feature();\r\n if (editParam?.length === 3) {\r\n const metersPerUnit = mapRef.current\r\n .getView()\r\n .getProjection()\r\n .getMetersPerUnit();\r\n let geometryC = new Circle(\r\n [editParam[0], editParam[1]],\r\n editParam[2] / metersPerUnit,\r\n 'XY',\r\n );\r\n setCallbackData(editParam);\r\n featureC.setGeometry(geometryC);\r\n }\r\n if (drawParameter) {\r\n featureC.setStyle(new CircleStyle(drawParameter));\r\n }\r\n setFeature(featureC);\r\n break;\r\n case 'LineString':\r\n let featureD = new Feature();\r\n let geometryD = new LineString(editParam);\r\n setCallbackData(editParam);\r\n featureD.setGeometry(geometryD);\r\n if (drawParameter) {\r\n featureD.setStyle(new PolylineStyle(drawParameter));\r\n }\r\n setFeature(featureD);\r\n break;\r\n }\r\n }\r\n }, [refresh]);\r\n\r\n useEffect(() => {\r\n if (!modalVisible) {\r\n setFeature(null);\r\n setPoi({});\r\n }\r\n }, [modalVisible]);\r\n\r\n useEffect(() => {\r\n if (feature) {\r\n mapRef.current.fitView(feature);\r\n }\r\n }, [feature]);\r\n\r\n const onCancel = () => {\r\n closeModal && closeModal();\r\n };\r\n\r\n const submit = () => {\r\n if (graphicType === 'Marker') {\r\n regeoSearch({ location: callbackData, extensions: 'all' }).then(res => {\r\n callback && callback(callbackData, res);\r\n });\r\n } else {\r\n callback && callback(callbackData);\r\n }\r\n };\r\n\r\n const redraw = () => {\r\n setFeature(null);\r\n setDrawType('');\r\n setTimeout(() => {\r\n setDrawType(graphicType);\r\n }, 100);\r\n };\r\n\r\n const onListClick = data => {\r\n if (graphicType === 'Marker') {\r\n let feature = new Feature();\r\n let geometry = new Point(data.geometryInfo.lngLats?.split(','));\r\n setCallbackData(data.geometryInfo.lngLats?.split(','));\r\n feature.setGeometry(geometry);\r\n feature.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(feature);\r\n } else {\r\n let selectLayer = mapRef.current.getLayerByKey('SELECT_LOCATION');\r\n selectLayer.loadData(data);\r\n }\r\n };\r\n\r\n const createdMap = map => {\r\n if (limitAreaLngLat?.length > 0 && !limitAreaFeature) {\r\n let feature = new Feature({\r\n geometry: new Polygon(limitAreaLngLat),\r\n });\r\n source.addFeature(feature);\r\n setConstrainGeom(feature.getGeometry());\r\n\r\n if (!constrainGeom) {\r\n setConstrainGeom(feature.getGeometry());\r\n }\r\n } else if (limitAreaFeature) {\r\n setConstrainGeom(limitAreaFeature?.getGeometry());\r\n source.addFeature(limitAreaFeature);\r\n }\r\n map.addLayer(vector);\r\n const layer = new FeatureLayer({\r\n key: 'LOCATION',\r\n style: {\r\n mode: 'Simple',\r\n render: {\r\n type: 'Marker',\r\n style: {\r\n image: noLocation,\r\n scale: 1,\r\n },\r\n },\r\n },\r\n labelField: 'name',\r\n });\r\n map.addLayer(layer);\r\n\r\n const selectLayer = new FeatureLayer({\r\n key: 'SELECT_LOCATION',\r\n style: {\r\n mode: 'Simple',\r\n render: {\r\n type: 'Marker',\r\n style: {\r\n image: location,\r\n scale: 1,\r\n },\r\n },\r\n },\r\n });\r\n map.addLayer(selectLayer);\r\n mapRef.current = map;\r\n setRefresh(Math.random());\r\n };\r\n\r\n const pairArray = arr => {\r\n return arr.reduce((acc, curr, index) => {\r\n if (index % 2 === 0) {\r\n acc.push([curr]);\r\n } else {\r\n acc[acc.length - 1].push(curr);\r\n }\r\n return acc;\r\n }, []);\r\n };\r\n\r\n const onDrawEnd = (feature, distance) => {\r\n console.log(feature, feature.getGeometry(), distance);\r\n switch (graphicType) {\r\n case 'Marker':\r\n setCallbackData(feature.getGeometry().flatCoordinates);\r\n break;\r\n case 'DragBox':\r\n let dataB = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n setCallbackData([pairArray(dataB)]);\r\n break;\r\n case 'Polygon':\r\n let dataC = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n setCallbackData([pairArray(dataC)]);\r\n break;\r\n case 'Circle':\r\n let dataD = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n const metersPerUnit = mapRef.current\r\n .getView()\r\n .getProjection()\r\n .getMetersPerUnit();\r\n let radius = feature.getGeometry().getRadius() * metersPerUnit;\r\n dataD.push(radius);\r\n setCallbackData(dataD);\r\n break;\r\n case 'LineString':\r\n let dataE = feature.getGeometry().flatCoordinates;\r\n setCallbackData(pairArray(dataE));\r\n break;\r\n }\r\n };\r\n\r\n const closeSearch = () => {\r\n setPoi({});\r\n setClearFlag(Math.random());\r\n let selectLayer = mapRef.current.getLayerByKey('SELECT_LOCATION');\r\n let noSelectLayer = mapRef.current.getLayerByKey('LOCATION');\r\n selectLayer.loadData({});\r\n noSelectLayer.loadData({});\r\n redraw();\r\n };\r\n\r\n const checkPoint = () => {\r\n let center = mapRef.current.getView().getCenter();\r\n let feature = new Feature();\r\n let geometry = new Point(center);\r\n setCallbackData(center);\r\n feature.setGeometry(geometry);\r\n feature.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(feature);\r\n };\r\n console.log('constrainGeom:', constrainGeom);\r\n return modalVisible ? (\r\n <VtxModal\r\n title={graphicType === 'point' ? '定位' : '绘制'}\r\n style={{ top: 50 }}\r\n visible={modalVisible}\r\n maximize={false}\r\n isNotMoving={true}\r\n wrapClassName={styles.searchModal}\r\n bodyStyle={{ height: `${window.innerHeight * 0.7}px` }}\r\n maskClosable={false}\r\n onCancel={onCancel}\r\n footer={\r\n <div className={styles.bottom}>\r\n <Button type=\"primary\" icon={<CheckOutlined />} onClick={submit}>\r\n 确定\r\n </Button>\r\n <Button icon={<CloseOutlined />} onClick={onCancel}>\r\n 关闭\r\n </Button>\r\n </div>\r\n }\r\n >\r\n <div className={styles.searchMap}>\r\n <div className={styles.top}>\r\n <div style={{ width: '350px' }}>\r\n <Search onConfirm={setPoi} clearFlag={clearFlag} />\r\n </div>\r\n <Button key=\"3\" icon={<CloseOutlined />} onClick={closeSearch}>\r\n 清空\r\n </Button>\r\n {graphicType === 'Marker' ? (\r\n <Button icon={<EnvironmentOutlined />} onClick={checkPoint}>\r\n 校正\r\n </Button>\r\n ) : (\r\n <Button icon={<EditOutlined />} onClick={redraw}>\r\n 重新绘制\r\n </Button>\r\n )}\r\n </div>\r\n <div className={styles.content}>\r\n <div className={styles.content_right}>\r\n <Map\r\n height={{ height: `${window.innerHeight * 0.7}px` }}\r\n center={mapCenter}\r\n zoom={10}\r\n tk=\"1adbb6e47668cb33757cd799548bf1f4\"\r\n createdMap={createdMap}\r\n >\r\n <FeatureDraw\r\n feature={feature}\r\n drawType={drawType}\r\n onDrawEnd={onDrawEnd}\r\n markerStyle={{\r\n image: location,\r\n scale: 1,\r\n }}\r\n constrainGeom={constrainGeom}\r\n />\r\n {poi?.address && <PoiList poi={poi} onClick={onListClick} />}\r\n </Map>\r\n </div>\r\n </div>\r\n </div>\r\n </VtxModal>\r\n ) : null;\r\n};\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_layer","_source","_map","_interopRequireDefault","_featureDraw","_VtxModal","_button","_location","_noLocation","_icons","_ol","_geom","_Marker","_Polygon","_Circle","_Polyline","_Search","_PoiList","_FeatureLayer","_search","_style","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","styles","searchModal","searchMap","top","bottom","content","content_right","_default","exports","props","mapRef","useRef","_props$mapCenter","mapCenter","_props$modalVisible","modalVisible","graphicType","closeModal","callback","editParam","drawParameter","_props$limitAreaLngLa","limitAreaLngLat","_props$limitAreaZInde","limitAreaZIndex","_props$limitAreaFeatu","limitAreaFeature","_useState","useState","_useState2","feature","setFeature","_useState3","_useState4","callbackData","setCallbackData","_useState5","_useState6","refresh","setRefresh","_useState7","_useState8","drawType","setDrawType","_useState9","_useState10","poi","setPoi","_useState11","_useState12","clearFlag","setClearFlag","_useState13","_useState14","constrainGeom","setConstrainGeom","source","VectorSource","vector","VectorLayer","zIndex","style","Style","fill","Fill","color","stroke","Stroke","width","useEffect","current","featureA","Feature","geometryA","Point","setGeometry","setStyle","Marker","image","location","scale","featureB","geometryB","Polygon","PolygonStyle","featureC","metersPerUnit","getView","getProjection","getMetersPerUnit","geometryC","Circle","CircleStyle","featureD","geometryD","LineString","PolylineStyle","fitView","onCancel","submit","regeoSearch","extensions","then","res","redraw","setTimeout","onListClick","data","_data$geometryInfo$ln","_data$geometryInfo$ln2","geometry","geometryInfo","lngLats","split","selectLayer","getLayerByKey","loadData","createdMap","map","addFeature","getGeometry","addLayer","layer","FeatureLayer","key","mode","render","type","noLocation","labelField","Math","random","pairArray","reduce","acc","curr","index","onDrawEnd","distance","_feature$getGeometry$","_feature$getGeometry$2","_feature$getGeometry$3","console","log","flatCoordinates","dataB","dataC","dataD","radius","getRadius","dataE","closeSearch","noSelectLayer","checkPoint","center","getCenter","createElement","title","visible","maximize","isNotMoving","wrapClassName","bodyStyle","height","concat","window","innerHeight","maskClosable","footer","className","icon","CheckOutlined","onClick","CloseOutlined","onConfirm","EnvironmentOutlined","EditOutlined","zoom","tk","markerStyle","address","children"],"sources":["search-map/index.js"],"sourcesContent":["import React, { useRef, useEffect, useState } from 'react';\r\nimport { Vector as VectorLayer } from 'ol/layer';\r\nimport { Vector as VectorSource } from 'ol/source';\r\nimport Map from '../map';\r\nimport FeatureDraw from '../feature-draw';\r\nimport VtxModal from './VtxModal';\r\nimport Button from 'antd/lib/button';\r\nimport location from '../assets/location.png';\r\nimport noLocation from '../assets/noLocation.png';\r\nimport { CloseOutlined, CheckOutlined, EditOutlined, EnvironmentOutlined } from '@ant-design/icons';\r\nimport { Feature } from 'ol';\r\nimport { Point, Polygon, Circle, LineString } from 'ol/geom';\r\nimport Marker from '../marker/Marker';\r\nimport PolygonStyle from '../polygon/Polygon';\r\nimport CircleStyle from '../circle/Circle';\r\nimport PolylineStyle from '../polyline/Polyline';\r\nimport Search from '../poi-search/Search';\r\nimport PoiList from '../poi-search/PoiList';\r\nimport FeatureLayer from '../feature-layer/FeatureLayer';\r\nimport { regeoSearch } from '../_util/search';\r\nimport { Fill, Stroke, Style } from 'ol/style';\r\n\r\nconst styles = {\r\n searchModal: 'vtx-ui-searchmap-searchmodal',\r\n searchMap: 'vtx-ui-searchmap-searchmap',\r\n top: 'vtx-ui-searchmap-top',\r\n bottom: 'vtx-ui-searchmap-bottom',\r\n content: 'vtx-ui-searchmap-content',\r\n content_right: 'vtx-ui-searchmap-content_right',\r\n};\r\n\r\nexport default props => {\r\n const mapRef = useRef();\r\n const {\r\n mapCenter = [116.391349, 39.907375],\r\n modalVisible = false,\r\n graphicType,\r\n closeModal,\r\n callback,\r\n editParam,\r\n drawParameter,\r\n limitAreaLngLat = [],\r\n limitAreaZIndex = 1,\r\n limitAreaFeature = null,\r\n } = props;\r\n const [feature, setFeature] = useState(null);\r\n const [callbackData, setCallbackData] = useState([]);\r\n const [refresh, setRefresh] = useState(0);\r\n const [drawType, setDrawType] = useState(graphicType);\r\n const [poi, setPoi] = useState({});\r\n const [clearFlag, setClearFlag] = useState(0);\r\n const [constrainGeom, setConstrainGeom] = useState(null);\r\n // 绘制区域限制\r\n const source = new VectorSource();\r\n const vector = new VectorLayer({\r\n source,\r\n zIndex: limitAreaZIndex,\r\n style: new Style({\r\n fill: new Fill({\r\n color: 'rgba(0,128,255, 0.3)',\r\n }),\r\n stroke: new Stroke({\r\n color: 'rgba(0,128,255, 0.3)',\r\n width: 2,\r\n }),\r\n }),\r\n });\r\n\r\n useEffect(() => {\r\n setDrawType(graphicType);\r\n }, [graphicType]);\r\n\r\n useEffect(() => {\r\n if (mapRef?.current && graphicType && editParam) {\r\n switch (graphicType) {\r\n case 'Marker':\r\n let featureA = new Feature();\r\n let geometryA = new Point(editParam);\r\n setCallbackData(editParam);\r\n featureA.setGeometry(geometryA);\r\n featureA.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(featureA);\r\n break;\r\n case 'DragBox':\r\n case 'Polygon':\r\n let featureB = new Feature();\r\n let geometryB = new Polygon(editParam);\r\n setCallbackData(editParam);\r\n featureB.setGeometry(geometryB);\r\n if (drawParameter) {\r\n featureB.setStyle(new PolygonStyle(drawParameter));\r\n }\r\n setFeature(featureB);\r\n break;\r\n case 'Circle':\r\n let featureC = new Feature();\r\n if (editParam?.length === 3) {\r\n const metersPerUnit = mapRef.current\r\n .getView()\r\n .getProjection()\r\n .getMetersPerUnit();\r\n let geometryC = new Circle(\r\n [editParam[0], editParam[1]],\r\n editParam[2] / metersPerUnit,\r\n 'XY',\r\n );\r\n setCallbackData(editParam);\r\n featureC.setGeometry(geometryC);\r\n }\r\n if (drawParameter) {\r\n featureC.setStyle(new CircleStyle(drawParameter));\r\n }\r\n setFeature(featureC);\r\n break;\r\n case 'LineString':\r\n let featureD = new Feature();\r\n let geometryD = new LineString(editParam);\r\n setCallbackData(editParam);\r\n featureD.setGeometry(geometryD);\r\n if (drawParameter) {\r\n featureD.setStyle(new PolylineStyle(drawParameter));\r\n }\r\n setFeature(featureD);\r\n break;\r\n }\r\n }\r\n }, [refresh]);\r\n\r\n useEffect(() => {\r\n if (!modalVisible) {\r\n setFeature(null);\r\n setPoi({});\r\n }\r\n }, [modalVisible]);\r\n\r\n useEffect(() => {\r\n if (feature) {\r\n mapRef.current.fitView(feature);\r\n }\r\n }, [feature]);\r\n\r\n const onCancel = () => {\r\n closeModal && closeModal();\r\n };\r\n\r\n const submit = () => {\r\n if (graphicType === 'Marker') {\r\n regeoSearch({ location: callbackData, extensions: 'all' }).then(res => {\r\n callback && callback(callbackData, res);\r\n });\r\n } else {\r\n callback && callback(callbackData);\r\n }\r\n };\r\n\r\n const redraw = () => {\r\n setFeature(null);\r\n setDrawType('');\r\n setTimeout(() => {\r\n setDrawType(graphicType);\r\n }, 100);\r\n };\r\n\r\n const onListClick = data => {\r\n if (graphicType === 'Marker') {\r\n let feature = new Feature();\r\n let geometry = new Point(data.geometryInfo.lngLats?.split(','));\r\n setCallbackData(data.geometryInfo.lngLats?.split(','));\r\n feature.setGeometry(geometry);\r\n feature.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(feature);\r\n } else {\r\n let selectLayer = mapRef.current.getLayerByKey('SELECT_LOCATION');\r\n selectLayer.loadData(data);\r\n }\r\n };\r\n\r\n const createdMap = map => {\r\n if (limitAreaLngLat?.length > 0 && !limitAreaFeature) {\r\n let feature = new Feature({\r\n geometry: new Polygon(limitAreaLngLat),\r\n });\r\n source.addFeature(feature);\r\n setConstrainGeom(feature.getGeometry());\r\n\r\n if (!constrainGeom) {\r\n setConstrainGeom(feature.getGeometry());\r\n }\r\n } else if (limitAreaFeature) {\r\n setConstrainGeom(limitAreaFeature?.getGeometry());\r\n source.addFeature(limitAreaFeature);\r\n }\r\n map.addLayer(vector);\r\n const layer = new FeatureLayer({\r\n key: 'LOCATION',\r\n style: {\r\n mode: 'Simple',\r\n render: {\r\n type: 'Marker',\r\n style: {\r\n image: noLocation,\r\n scale: 1,\r\n },\r\n },\r\n },\r\n labelField: 'name',\r\n });\r\n map.addLayer(layer);\r\n\r\n const selectLayer = new FeatureLayer({\r\n key: 'SELECT_LOCATION',\r\n style: {\r\n mode: 'Simple',\r\n render: {\r\n type: 'Marker',\r\n style: {\r\n image: location,\r\n scale: 1,\r\n },\r\n },\r\n },\r\n });\r\n map.addLayer(selectLayer);\r\n mapRef.current = map;\r\n setRefresh(Math.random());\r\n };\r\n\r\n const pairArray = arr => {\r\n return arr.reduce((acc, curr, index) => {\r\n if (index % 2 === 0) {\r\n acc.push([curr]);\r\n } else {\r\n acc[acc.length - 1].push(curr);\r\n }\r\n return acc;\r\n }, []);\r\n };\r\n\r\n const onDrawEnd = (feature, distance) => {\r\n console.log(feature, feature.getGeometry(), distance);\r\n switch (graphicType) {\r\n case 'Marker':\r\n setCallbackData(feature.getGeometry().flatCoordinates);\r\n break;\r\n case 'DragBox':\r\n let dataB = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n setCallbackData([pairArray(dataB)]);\r\n break;\r\n case 'Polygon':\r\n let dataC = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n setCallbackData([pairArray(dataC)]);\r\n break;\r\n case 'Circle':\r\n let dataD = feature.getGeometry().flatCoordinates?.slice(0, -2);\r\n const metersPerUnit = mapRef.current\r\n .getView()\r\n .getProjection()\r\n .getMetersPerUnit();\r\n let radius = feature.getGeometry().getRadius() * metersPerUnit;\r\n dataD.push(radius);\r\n setCallbackData(dataD);\r\n break;\r\n case 'LineString':\r\n let dataE = feature.getGeometry().flatCoordinates;\r\n setCallbackData(pairArray(dataE));\r\n break;\r\n }\r\n };\r\n\r\n const closeSearch = () => {\r\n setPoi({});\r\n setClearFlag(Math.random());\r\n let selectLayer = mapRef.current.getLayerByKey('SELECT_LOCATION');\r\n let noSelectLayer = mapRef.current.getLayerByKey('LOCATION');\r\n selectLayer.loadData({});\r\n noSelectLayer.loadData({});\r\n redraw();\r\n };\r\n\r\n const checkPoint = () => {\r\n let center = mapRef.current.getView().getCenter();\r\n let feature = new Feature();\r\n let geometry = new Point(center);\r\n setCallbackData(center);\r\n feature.setGeometry(geometry);\r\n feature.setStyle(\r\n new Marker({\r\n image: location,\r\n scale: 1,\r\n }),\r\n );\r\n setFeature(feature);\r\n };\r\n\r\n return modalVisible ? (\r\n <VtxModal\r\n title={graphicType === 'point' ? '定位' : '绘制'}\r\n style={{ top: 50 }}\r\n visible={modalVisible}\r\n maximize={false}\r\n isNotMoving={true}\r\n wrapClassName={styles.searchModal}\r\n bodyStyle={{ height: `${window.innerHeight * 0.7}px` }}\r\n maskClosable={false}\r\n onCancel={onCancel}\r\n footer={\r\n <div className={styles.bottom}>\r\n <Button type=\"primary\" icon={<CheckOutlined />} onClick={submit}>\r\n 确定\r\n </Button>\r\n <Button icon={<CloseOutlined />} onClick={onCancel}>\r\n 关闭\r\n </Button>\r\n </div>\r\n }\r\n >\r\n <div className={styles.searchMap}>\r\n <div className={styles.top}>\r\n <div style={{ width: '350px' }}>\r\n <Search onConfirm={setPoi} clearFlag={clearFlag} />\r\n </div>\r\n <Button key=\"3\" icon={<CloseOutlined />} onClick={closeSearch}>\r\n 清空\r\n </Button>\r\n {graphicType === 'Marker' ? (\r\n <Button icon={<EnvironmentOutlined />} onClick={checkPoint}>\r\n 校正\r\n </Button>\r\n ) : (\r\n <Button icon={<EditOutlined />} onClick={redraw}>\r\n 重新绘制\r\n </Button>\r\n )}\r\n </div>\r\n <div className={styles.content}>\r\n <div className={styles.content_right}>\r\n <Map\r\n height={{ height: `${window.innerHeight * 0.7}px` }}\r\n center={mapCenter}\r\n zoom={10}\r\n tk=\"1adbb6e47668cb33757cd799548bf1f4\"\r\n createdMap={createdMap}\r\n >\r\n <FeatureDraw\r\n feature={feature}\r\n drawType={drawType}\r\n onDrawEnd={onDrawEnd}\r\n markerStyle={{\r\n image: location,\r\n scale: 1,\r\n }}\r\n constrainGeom={constrainGeom}\r\n />\r\n {poi?.address && <PoiList poi={poi} onClick={onListClick} />}\r\n\r\n {props.children}\r\n </Map>\r\n </div>\r\n </div>\r\n </div>\r\n </VtxModal>\r\n ) : null;\r\n};\r\n"],"mappings":"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"}
@@ -3,6 +3,14 @@
3
3
  -moz-user-select: none;
4
4
  -ms-user-select: none;
5
5
  user-select: none;
6
+ max-height: 400px;
7
+ overflow-y: auto;
8
+ }
9
+ .ol-tools-layer::-webkit-scrollbar {
10
+ /*滚动条整体样式*/
11
+ width: 0;
12
+ /*高宽分别对应横竖滚动条的尺寸*/
13
+ height: 0;
6
14
  }
7
15
  .ol-tools-layer .ol-tools-layer-check-all {
8
16
  width: 100%;
@@ -26,6 +34,14 @@
26
34
  margin-top: 6px;
27
35
  white-space: nowrap;
28
36
  }
37
+ .ol-tools-layer .ol-tools-layer-item .popover-iconEle {
38
+ display: inline-block;
39
+ width: 24px;
40
+ height: 24px;
41
+ line-height: 24px;
42
+ text-align: center;
43
+ vertical-align: top;
44
+ }
29
45
  .ol-tools-layer .ol-tools-layer-list {
30
46
  padding-top: 2px;
31
47
  }
@@ -40,8 +40,8 @@ var SubList = function SubList(props) {
40
40
  }, options.map(function (v) {
41
41
  var _v$children;
42
42
  var status = v.status || 3;
43
- var img = (0, _layerControl.getImgUrl)(v);
44
43
  return (_v$children = v.children) !== null && _v$children !== void 0 && _v$children.length ? /*#__PURE__*/_react["default"].createElement(SubListWrap, {
44
+ v: v,
45
45
  key: v.key,
46
46
  title: v.title,
47
47
  value: v.key,
@@ -57,19 +57,14 @@ var SubList = function SubList(props) {
57
57
  onChange: function onChange(e) {
58
58
  return _onChange(e.target.checked, v.key);
59
59
  }
60
- }, img ? /*#__PURE__*/_react["default"].createElement("img", {
61
- src: img,
62
- alt: "",
63
- style: {
64
- width: img ? '16px' : '26px',
65
- marginRight: '5px',
66
- marginBottom: '5px'
67
- }
68
- }) : null, v.title));
60
+ }, /*#__PURE__*/_react["default"].createElement("span", {
61
+ className: (0, _classnames["default"])('popover-iconEle')
62
+ }, v.icon || ''), v.title));
69
63
  }));
70
64
  };
71
65
  var SubListWrap = function SubListWrap(props) {
72
- var title = props.title,
66
+ var v = props.v,
67
+ title = props.title,
73
68
  options = props.options,
74
69
  checkedKeys = props.checkedKeys,
75
70
  onChange = props.onChange,
@@ -93,7 +88,9 @@ var SubListWrap = function SubListWrap(props) {
93
88
  onChange: function onChange(e) {
94
89
  return onCheckAllChange(e.target.checked, options, key);
95
90
  }
96
- }), title), /*#__PURE__*/_react["default"].createElement(_icons.RightOutlined, null)));
91
+ }), /*#__PURE__*/_react["default"].createElement("span", {
92
+ className: (0, _classnames["default"])('popover-iconEle')
93
+ }, v.icon || ''), title), /*#__PURE__*/_react["default"].createElement(_icons.RightOutlined, null)));
97
94
  };
98
95
  var List = function List(props) {
99
96
  var treeData = props.treeData,
@@ -104,8 +101,8 @@ var List = function List(props) {
104
101
  className: (0, _classnames["default"])('ol-tools-layer-list')
105
102
  }, treeData.map(function (v) {
106
103
  var _v$children2;
107
- var img = (0, _layerControl.getImgUrl)(v);
108
104
  return (_v$children2 = v.children) !== null && _v$children2 !== void 0 && _v$children2.length ? /*#__PURE__*/_react["default"].createElement(SubListWrap, {
105
+ v: v,
109
106
  key: v.key,
110
107
  title: v.title,
111
108
  value: v.key,
@@ -121,19 +118,16 @@ var List = function List(props) {
121
118
  onChange: function onChange(e) {
122
119
  return _onChange2(e.target.checked, v.key);
123
120
  }
124
- }, img ? /*#__PURE__*/_react["default"].createElement("img", {
125
- src: img,
126
- alt: "",
127
- style: {
128
- width: img ? '16px' : '26px'
129
- }
130
- }) : null, v.title));
121
+ }, /*#__PURE__*/_react["default"].createElement("span", {
122
+ className: (0, _classnames["default"])('popover-iconEle')
123
+ }, v.icon || ''), v.title));
131
124
  }));
132
125
  };
133
126
  function _default(props) {
134
127
  var map = props.map,
135
- _props$showCheckAllBo = props.showCheckAllBox,
136
- showCheckAllBox = _props$showCheckAllBo === void 0 ? true : _props$showCheckAllBo;
128
+ _props$showAll = props.showAll,
129
+ showAll = _props$showAll === void 0 ? true : _props$showAll,
130
+ maxHeight = props.maxHeight;
137
131
  var _useState = (0, _react.useState)([]),
138
132
  _useState2 = _slicedToArray(_useState, 2),
139
133
  treeData = _useState2[0],
@@ -160,7 +154,7 @@ function _default(props) {
160
154
  }
161
155
  }, [JSON.stringify(treeData)]);
162
156
  var onChange = function onChange(checked, key) {
163
- if (showCheckAllBox) {
157
+ if (showAll) {
164
158
  // 多选
165
159
  var _checkedKeys = _toConsumableArray(checkedKeys);
166
160
  if (checked) {
@@ -210,8 +204,11 @@ function _default(props) {
210
204
  type: "icon-tuceng"
211
205
  })
212
206
  }, /*#__PURE__*/_react["default"].createElement("div", {
213
- className: (0, _classnames["default"])('ol-tools-layer')
214
- }, showCheckAllBox ? /*#__PURE__*/_react["default"].createElement("div", {
207
+ className: (0, _classnames["default"])('ol-tools-layer'),
208
+ style: {
209
+ maxHeight: maxHeight
210
+ }
211
+ }, showAll ? /*#__PURE__*/_react["default"].createElement("div", {
215
212
  className: (0, _classnames["default"])('ol-tools-layer-check-all')
216
213
  }, /*#__PURE__*/_react["default"].createElement(_antd.Checkbox, _extends({}, (0, _LayersCheckService.getIndeterminateAndChecked)(treeData, checkedKeys, 'ALL'), {
217
214
  onChange: function onChange(e) {