@vtx/ol-map 2.0.0-beta.1 → 2.0.0-beta.10
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/_util/EventEmitter.js +78 -0
- package/lib/_util/EventEmitter.js.map +1 -0
- package/lib/_util/StyleCache.js +46 -0
- package/lib/_util/StyleCache.js.map +1 -0
- package/lib/_util/encryptParams.js +60 -0
- package/lib/_util/encryptParams.js.map +1 -0
- package/lib/_util/filterSpecialCharacters.js +90 -0
- package/lib/_util/filterSpecialCharacters.js.map +1 -0
- package/lib/_util/getComponentProps.js +14 -0
- package/lib/_util/getComponentProps.js.map +1 -0
- package/lib/_util/getCookie.js +24 -0
- package/lib/_util/getCookie.js.map +1 -0
- package/lib/_util/getDefaultMapInfo.js +50 -0
- package/lib/_util/getDefaultMapInfo.js.map +1 -0
- package/lib/_util/getSystemInfo.js +26 -0
- package/lib/_util/getSystemInfo.js.map +1 -0
- package/lib/_util/getToken.js +27 -0
- package/lib/_util/getToken.js.map +1 -0
- package/lib/_util/http.js +176 -0
- package/lib/_util/http.js.map +1 -0
- package/lib/_util/isFunction.js +10 -0
- package/lib/_util/isFunction.js.map +1 -0
- package/lib/_util/isObject.js +10 -0
- package/lib/_util/isObject.js.map +1 -0
- package/lib/_util/layer.js +152 -0
- package/lib/_util/layer.js.map +1 -0
- package/lib/_util/mapTool.js +188 -0
- package/lib/_util/mapTool.js.map +1 -0
- package/lib/_util/projection.js +44 -0
- package/lib/_util/projection.js.map +1 -0
- package/lib/_util/projzh/datum/bd-09.js +44 -0
- package/lib/_util/projzh/datum/bd-09.js.map +1 -0
- package/lib/_util/projzh/datum/gcj-02.js +72 -0
- package/lib/_util/projzh/datum/gcj-02.js.map +1 -0
- package/lib/_util/projzh/datum/index.js +14 -0
- package/lib/_util/projzh/datum/index.js.map +1 -0
- package/lib/_util/projzh/index.js +40 -0
- package/lib/_util/projzh/index.js.map +1 -0
- package/lib/_util/projzh/projection/baidu-mercator.js +74 -0
- package/lib/_util/projzh/projection/baidu-mercator.js.map +1 -0
- package/lib/_util/projzh/projection/index.js +14 -0
- package/lib/_util/projzh/projection/index.js.map +1 -0
- package/lib/_util/projzh/projection/spherical-mercator.js +25 -0
- package/lib/_util/projzh/projection/spherical-mercator.js.map +1 -0
- package/lib/_util/projzh/util.js +27 -0
- package/lib/_util/projzh/util.js.map +1 -0
- package/lib/_util/search.js +117 -0
- package/lib/_util/search.js.map +1 -0
- package/lib/_util/setCookie.js +15 -0
- package/lib/_util/setCookie.js.map +1 -0
- package/lib/_util/stringToFun.js +25 -0
- package/lib/_util/stringToFun.js.map +1 -0
- package/lib/_util/transform.js +169 -0
- package/lib/_util/transform.js.map +1 -0
- package/lib/_util/useColSize.js +28 -0
- package/lib/_util/useColSize.js.map +1 -0
- package/lib/_util/useInterval.js +19 -0
- package/lib/_util/useInterval.js.map +1 -0
- package/lib/_util/useSet.js +44 -0
- package/lib/_util/useSet.js.map +1 -0
- package/lib/analysis-layer/index.js +461 -0
- package/lib/analysis-layer/index.js.map +1 -0
- package/lib/analysis-layer/style/css.js +2 -0
- package/lib/analysis-layer/style/css.js.map +1 -0
- package/lib/analysis-layer/style/index.js +2 -0
- package/lib/analysis-layer/style/index.js.map +1 -0
- package/lib/arrow-flow-layer/ArrowFlowLayer.js +438 -0
- package/lib/arrow-flow-layer/ArrowFlowLayer.js.map +1 -0
- package/lib/arrow-flow-layer/index.js +140 -0
- package/lib/arrow-flow-layer/index.js.map +1 -0
- package/lib/arrow-flow-layer/sampleArrowsAlongLine.js +87 -0
- package/lib/arrow-flow-layer/sampleArrowsAlongLine.js.map +1 -0
- package/lib/arrow-flow-layer/style/css.js +4 -0
- package/lib/arrow-flow-layer/style/css.js.map +1 -0
- package/lib/arrow-flow-layer/style/index.css +0 -0
- package/lib/arrow-flow-layer/style/index.js +4 -0
- package/lib/arrow-flow-layer/style/index.js.map +1 -0
- package/lib/arrow-flow-layer/style/index.less +0 -0
- package/lib/assets/arrow.png +0 -0
- package/lib/assets/base-img-1.png +0 -0
- package/lib/assets/base-img-2.png +0 -0
- package/lib/assets/base-img-3.png +0 -0
- package/lib/assets/base-img-4.png +0 -0
- package/lib/assets/base-img-5.png +0 -0
- package/lib/assets/base-img-6.png +0 -0
- package/lib/assets/base-img.png +0 -0
- package/lib/assets/bz.png +0 -0
- package/lib/assets/img.png +0 -0
- package/lib/assets/kz.png +0 -0
- package/lib/assets/ll.png +0 -0
- package/lib/assets/location.png +0 -0
- package/lib/assets/noLocation.png +0 -0
- package/lib/assets/people.png +0 -0
- package/lib/assets/qd.png +0 -0
- package/lib/assets/sw.png +0 -0
- package/lib/assets/yl.png +0 -0
- package/lib/assets/zd.png +0 -0
- package/lib/buffer-draw/BufferDraw.js +399 -0
- package/lib/buffer-draw/BufferDraw.js.map +1 -0
- package/lib/buffer-draw/index.js +58 -0
- package/lib/buffer-draw/index.js.map +1 -0
- package/lib/buffer-draw/style/css.js +2 -0
- package/lib/buffer-draw/style/css.js.map +1 -0
- package/lib/buffer-draw/style/index.js +2 -0
- package/lib/buffer-draw/style/index.js.map +1 -0
- package/lib/circle/Circle.js +51 -0
- package/lib/circle/Circle.js.map +1 -0
- package/lib/circle/index.js +64 -0
- package/lib/circle/index.js.map +1 -0
- package/lib/circle/style/css.js +2 -0
- package/lib/circle/style/css.js.map +1 -0
- package/lib/circle/style/index.js +2 -0
- package/lib/circle/style/index.js.map +1 -0
- package/lib/config.js +12 -0
- package/lib/config.js.map +1 -0
- package/lib/convertCamelToCSS.js +23 -0
- package/lib/convertCamelToCSS.js.map +1 -0
- package/lib/dom/Dom.js +39 -0
- package/lib/dom/Dom.js.map +1 -0
- package/lib/dom/index.js +82 -0
- package/lib/dom/index.js.map +1 -0
- package/lib/dom/style/css.js +2 -0
- package/lib/dom/style/css.js.map +1 -0
- package/lib/dom/style/index.js +2 -0
- package/lib/dom/style/index.js.map +1 -0
- package/lib/dom-layer/index.js +249 -0
- package/lib/dom-layer/index.js.map +1 -0
- package/lib/dom-layer/style/css.js +4 -0
- package/lib/dom-layer/style/css.js.map +1 -0
- package/lib/dom-layer/style/index.css +3 -0
- package/lib/dom-layer/style/index.js +4 -0
- package/lib/dom-layer/style/index.js.map +1 -0
- package/lib/dom-layer/style/index.less +3 -0
- package/lib/events/index.js +25 -0
- package/lib/events/index.js.map +1 -0
- package/lib/feature-draw/FeatureDraw.js +231 -0
- package/lib/feature-draw/FeatureDraw.js.map +1 -0
- package/lib/feature-draw/index.js +76 -0
- package/lib/feature-draw/index.js.map +1 -0
- package/lib/feature-draw/style/css.js +2 -0
- package/lib/feature-draw/style/css.js.map +1 -0
- package/lib/feature-draw/style/index.js +2 -0
- package/lib/feature-draw/style/index.js.map +1 -0
- package/lib/feature-layer/FeatureLayer.js +1093 -0
- package/lib/feature-layer/FeatureLayer.js.map +1 -0
- package/lib/feature-layer/MyCluster.js +150 -0
- package/lib/feature-layer/MyCluster.js.map +1 -0
- package/lib/feature-layer/createFeatureCollection.js +167 -0
- package/lib/feature-layer/createFeatureCollection.js.map +1 -0
- package/lib/feature-layer/index.js +154 -0
- package/lib/feature-layer/index.js.map +1 -0
- package/lib/feature-layer/style/css.js +4 -0
- package/lib/feature-layer/style/css.js.map +1 -0
- package/lib/feature-layer/style/index.css +0 -0
- package/lib/feature-layer/style/index.js +4 -0
- package/lib/feature-layer/style/index.js.map +1 -0
- package/lib/feature-layer/style/index.less +0 -0
- package/lib/flow-line-layer/FlowLineLayer.js +197 -0
- package/lib/flow-line-layer/FlowLineLayer.js.map +1 -0
- package/lib/flow-line-layer/index.js +126 -0
- package/lib/flow-line-layer/index.js.map +1 -0
- package/lib/flow-line-layer/style/css.js +4 -0
- package/lib/flow-line-layer/style/css.js.map +1 -0
- package/lib/flow-line-layer/style/index.css +0 -0
- package/lib/flow-line-layer/style/index.js +4 -0
- package/lib/flow-line-layer/style/index.js.map +1 -0
- package/lib/flow-line-layer/style/index.less +0 -0
- package/lib/fly-line-layer/FlyLineLayer.js +218 -0
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -0
- package/lib/fly-line-layer/index.js +109 -0
- package/lib/fly-line-layer/index.js.map +1 -0
- package/lib/fly-line-layer/style/css.js +4 -0
- package/lib/fly-line-layer/style/css.js.map +1 -0
- package/lib/fly-line-layer/style/index.css +0 -0
- package/lib/fly-line-layer/style/index.js +4 -0
- package/lib/fly-line-layer/style/index.js.map +1 -0
- package/lib/fly-line-layer/style/index.less +0 -0
- package/lib/group-layer/GroupLayer.js +134 -0
- package/lib/group-layer/GroupLayer.js.map +1 -0
- package/lib/group-layer/index.js +73 -0
- package/lib/group-layer/index.js.map +1 -0
- package/lib/group-layer/style/css.js +4 -0
- package/lib/group-layer/style/css.js.map +1 -0
- package/lib/group-layer/style/index.css +0 -0
- package/lib/group-layer/style/index.js +4 -0
- package/lib/group-layer/style/index.js.map +1 -0
- package/lib/group-layer/style/index.less +0 -0
- package/lib/heatmap-layer/HeatmapLayer.js +191 -0
- package/lib/heatmap-layer/HeatmapLayer.js.map +1 -0
- package/lib/heatmap-layer/index.js +102 -0
- package/lib/heatmap-layer/index.js.map +1 -0
- package/lib/heatmap-layer/style/css.js +4 -0
- package/lib/heatmap-layer/style/css.js.map +1 -0
- package/lib/heatmap-layer/style/index.css +0 -0
- package/lib/heatmap-layer/style/index.js +4 -0
- package/lib/heatmap-layer/style/index.js.map +1 -0
- package/lib/heatmap-layer/style/index.less +0 -0
- package/lib/high-layer/HighLayer.js +201 -0
- package/lib/high-layer/HighLayer.js.map +1 -0
- package/lib/high-layer/index.js +46 -0
- package/lib/high-layer/index.js.map +1 -0
- package/lib/high-layer/style/css.js +2 -0
- package/lib/high-layer/style/css.js.map +1 -0
- package/lib/high-layer/style/index.js +2 -0
- package/lib/high-layer/style/index.js.map +1 -0
- package/lib/image-layer/ImageLayer.js +330 -0
- package/lib/image-layer/ImageLayer.js.map +1 -0
- package/lib/image-layer/ImageTileLayer.js +332 -0
- package/lib/image-layer/ImageTileLayer.js.map +1 -0
- package/lib/image-layer/index.js +100 -0
- package/lib/image-layer/index.js.map +1 -0
- package/lib/image-layer/style/css.js +4 -0
- package/lib/image-layer/style/css.js.map +1 -0
- package/lib/image-layer/style/index.css +0 -0
- package/lib/image-layer/style/index.js +4 -0
- package/lib/image-layer/style/index.js.map +1 -0
- package/lib/image-layer/style/index.less +0 -0
- package/lib/index.js +215 -0
- package/lib/index.js.map +1 -0
- package/lib/legend/index.js +254 -0
- package/lib/legend/index.js.map +1 -0
- package/lib/legend/style/css.js +4 -0
- package/lib/legend/style/css.js.map +1 -0
- package/lib/legend/style/index.css +109 -0
- package/lib/legend/style/index.js +4 -0
- package/lib/legend/style/index.js.map +1 -0
- package/lib/legend/style/index.less +100 -0
- package/lib/map/Analysis.js +148 -0
- package/lib/map/Analysis.js.map +1 -0
- package/lib/map/Layers.js +338 -0
- package/lib/map/Layers.js.map +1 -0
- package/lib/map/Popup.js +386 -0
- package/lib/map/Popup.js.map +1 -0
- package/lib/map/ScaleDenominator.js +68 -0
- package/lib/map/ScaleDenominator.js.map +1 -0
- package/lib/map/Test.js +144 -0
- package/lib/map/Test.js.map +1 -0
- package/lib/map/defaultTextEnum.js +165 -0
- package/lib/map/defaultTextEnum.js.map +1 -0
- package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js +163 -0
- package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js.map +1 -0
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +84 -0
- package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -0
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js +65 -0
- package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js.map +1 -0
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js +84 -0
- package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js.map +1 -0
- package/lib/map/getBaseLayers/index.js +46 -0
- package/lib/map/getBaseLayers/index.js.map +1 -0
- package/lib/map/index.js +841 -0
- package/lib/map/index.js.map +1 -0
- package/lib/map/style/css.js +5 -0
- package/lib/map/style/css.js.map +1 -0
- package/lib/map/style/index.css +171 -0
- package/lib/map/style/index.js +5 -0
- package/lib/map/style/index.js.map +1 -0
- package/lib/map/style/index.less +152 -0
- package/lib/map-icon/svg/index.js +81 -0
- package/lib/map-icon/svg/index.js.map +1 -0
- package/lib/map-icon/svg/tuceng.svg.js +2 -0
- package/lib/map-icon/svg/tuceng.svg.js.map +1 -0
- package/lib/marker/Marker.js +105 -0
- package/lib/marker/Marker.js.map +1 -0
- package/lib/marker/index.js +61 -0
- package/lib/marker/index.js.map +1 -0
- package/lib/marker/style/css.js +2 -0
- package/lib/marker/style/css.js.map +1 -0
- package/lib/marker/style/index.js +2 -0
- package/lib/marker/style/index.js.map +1 -0
- package/lib/path-line-layer/PathLineLayer.js +45 -0
- package/lib/path-line-layer/PathLineLayer.js.map +1 -0
- package/lib/path-line-layer/getPathLineStyles.js +71 -0
- package/lib/path-line-layer/getPathLineStyles.js.map +1 -0
- package/lib/path-line-layer/index.js +151 -0
- package/lib/path-line-layer/index.js.map +1 -0
- package/lib/path-line-layer/style/css.js +4 -0
- package/lib/path-line-layer/style/css.js.map +1 -0
- package/lib/path-line-layer/style/index.css +0 -0
- package/lib/path-line-layer/style/index.js +4 -0
- package/lib/path-line-layer/style/index.js.map +1 -0
- package/lib/path-line-layer/style/index.less +0 -0
- package/lib/path-play-back/PathPlayBack.js +700 -0
- package/lib/path-play-back/PathPlayBack.js.map +1 -0
- package/lib/path-play-back/index.js +83 -0
- package/lib/path-play-back/index.js.map +1 -0
- package/lib/path-play-back/style/css.js +2 -0
- package/lib/path-play-back/style/css.js.map +1 -0
- package/lib/path-play-back/style/index.js +2 -0
- package/lib/path-play-back/style/index.js.map +1 -0
- package/lib/poi-search/Location.js +62 -0
- package/lib/poi-search/Location.js.map +1 -0
- package/lib/poi-search/PoiList.js +123 -0
- package/lib/poi-search/PoiList.js.map +1 -0
- package/lib/poi-search/Search.js +213 -0
- package/lib/poi-search/Search.js.map +1 -0
- package/lib/poi-search/index.js +178 -0
- package/lib/poi-search/index.js.map +1 -0
- package/lib/poi-search/style/css.js +4 -0
- package/lib/poi-search/style/css.js.map +1 -0
- package/lib/poi-search/style/index.css +96 -0
- package/lib/poi-search/style/index.js +4 -0
- package/lib/poi-search/style/index.js.map +1 -0
- package/lib/poi-search/style/index.less +97 -0
- package/lib/point/Point.js +57 -0
- package/lib/point/Point.js.map +1 -0
- package/lib/point/index.js +61 -0
- package/lib/point/index.js.map +1 -0
- package/lib/point/style/css.js +2 -0
- package/lib/point/style/css.js.map +1 -0
- package/lib/point/style/index.js +2 -0
- package/lib/point/style/index.js.map +1 -0
- package/lib/polygon/Polygon.js +51 -0
- package/lib/polygon/Polygon.js.map +1 -0
- package/lib/polygon/index.js +61 -0
- package/lib/polygon/index.js.map +1 -0
- package/lib/polygon/style/css.js +2 -0
- package/lib/polygon/style/css.js.map +1 -0
- package/lib/polygon/style/index.js +2 -0
- package/lib/polygon/style/index.js.map +1 -0
- package/lib/polyline/Polyline.js +51 -0
- package/lib/polyline/Polyline.js.map +1 -0
- package/lib/polyline/index.js +61 -0
- package/lib/polyline/index.js.map +1 -0
- package/lib/polyline/style/css.js +2 -0
- package/lib/polyline/style/css.js.map +1 -0
- package/lib/polyline/style/index.js +2 -0
- package/lib/polyline/style/index.js.map +1 -0
- package/lib/popup/index.js +202 -0
- package/lib/popup/index.js.map +1 -0
- package/lib/popup/style/css.js +4 -0
- package/lib/popup/style/css.js.map +1 -0
- package/lib/popup/style/index.css +131 -0
- package/lib/popup/style/index.js +4 -0
- package/lib/popup/style/index.js.map +1 -0
- package/lib/popup/style/index.less +129 -0
- package/lib/provider/index.js +12 -0
- package/lib/provider/index.js.map +1 -0
- package/lib/provider/style/css.js +2 -0
- package/lib/provider/style/css.js.map +1 -0
- package/lib/provider/style/index.js +2 -0
- package/lib/provider/style/index.js.map +1 -0
- package/lib/renderer/Fill.js +37 -0
- package/lib/renderer/Fill.js.map +1 -0
- package/lib/renderer/Stroke.js +39 -0
- package/lib/renderer/Stroke.js.map +1 -0
- package/lib/renderer/index.js +137 -0
- package/lib/renderer/index.js.map +1 -0
- package/lib/renderer/style/css.js +4 -0
- package/lib/renderer/style/css.js.map +1 -0
- package/lib/renderer/style/index.css +0 -0
- package/lib/renderer/style/index.js +4 -0
- package/lib/renderer/style/index.js.map +1 -0
- package/lib/renderer/style/index.less +0 -0
- package/lib/renderer/transformRgb.js +33 -0
- package/lib/renderer/transformRgb.js.map +1 -0
- package/lib/search-map/VtxModal.js +209 -0
- package/lib/search-map/VtxModal.js.map +1 -0
- package/lib/search-map/index.js +542 -0
- package/lib/search-map/index.js.map +1 -0
- package/lib/search-map/style/css.js +6 -0
- package/lib/search-map/style/css.js.map +1 -0
- package/lib/search-map/style/index.css +86 -0
- package/lib/search-map/style/index.js +6 -0
- package/lib/search-map/style/index.js.map +1 -0
- package/lib/search-map/style/index.less +97 -0
- package/lib/search-map/style/modal.css +56 -0
- package/lib/search-map/style/modal.less +66 -0
- package/lib/style/index.css +0 -0
- package/lib/style/index.less +2 -0
- package/lib/style/themes/compact.css +0 -0
- package/lib/style/themes/compact.less +1 -0
- package/lib/style/themes/dark.css +0 -0
- package/lib/style/themes/dark.less +7 -0
- package/lib/style/themes/default.css +0 -0
- package/lib/style/themes/default.less +7 -0
- package/lib/style/themes/index.css +0 -0
- package/lib/style/themes/index.less +1 -0
- package/lib/style/themes/variable.css +0 -0
- package/lib/style/themes/variable.less +5 -0
- package/lib/tile-layer/TileLayer.js +85 -0
- package/lib/tile-layer/TileLayer.js.map +1 -0
- package/lib/tile-layer/index.js +54 -0
- package/lib/tile-layer/index.js.map +1 -0
- package/lib/tile-layer/style/css.js +4 -0
- package/lib/tile-layer/style/css.js.map +1 -0
- package/lib/tile-layer/style/index.css +0 -0
- package/lib/tile-layer/style/index.js +4 -0
- package/lib/tile-layer/style/index.js.map +1 -0
- package/lib/tile-layer/style/index.less +0 -0
- package/lib/tools/Layer/LayerService.js +182 -0
- package/lib/tools/Layer/LayerService.js.map +1 -0
- package/lib/tools/Layer/LayersCheckService.js +188 -0
- package/lib/tools/Layer/LayersCheckService.js.map +1 -0
- package/lib/tools/Layer/index.css +50 -0
- package/lib/tools/Layer/index.js +225 -0
- package/lib/tools/Layer/index.js.map +1 -0
- package/lib/tools/Layer/index.less +43 -0
- package/lib/tools/Search/index.js +305 -0
- package/lib/tools/Search/index.js.map +1 -0
- package/lib/tools/Toolbox/BoxSelect/index.js +22 -0
- package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -0
- package/lib/tools/Toolbox/CircleSelect/index.js +22 -0
- package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -0
- package/lib/tools/Toolbox/EagleEye/index.js +56 -0
- package/lib/tools/Toolbox/EagleEye/index.js.map +1 -0
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js +147 -0
- package/lib/tools/Toolbox/MapBookmark/Bookmark.js.map +1 -0
- package/lib/tools/Toolbox/MapBookmark/index.css +18 -0
- package/lib/tools/Toolbox/MapBookmark/index.js +429 -0
- package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -0
- package/lib/tools/Toolbox/MapBookmark/index.less +20 -0
- package/lib/tools/Toolbox/MapDownload/index.js +16 -0
- package/lib/tools/Toolbox/MapDownload/index.js.map +1 -0
- package/lib/tools/Toolbox/MapPrint/index.css +4 -0
- package/lib/tools/Toolbox/MapPrint/index.js +233 -0
- package/lib/tools/Toolbox/MapPrint/index.js.map +1 -0
- package/lib/tools/Toolbox/MapPrint/index.less +4 -0
- package/lib/tools/Toolbox/Measure/Area/index.js +16 -0
- package/lib/tools/Toolbox/Measure/Area/index.js.map +1 -0
- package/lib/tools/Toolbox/Measure/Distance/index.js +16 -0
- package/lib/tools/Toolbox/Measure/Distance/index.js.map +1 -0
- package/lib/tools/Toolbox/Measure/Measure.js +236 -0
- package/lib/tools/Toolbox/Measure/Measure.js.map +1 -0
- package/lib/tools/Toolbox/Measure/index.js +77 -0
- package/lib/tools/Toolbox/Measure/index.js.map +1 -0
- package/lib/tools/Toolbox/PolygonSelect/index.js +19 -0
- package/lib/tools/Toolbox/PolygonSelect/index.js.map +1 -0
- package/lib/tools/Toolbox/ScaleLine/index.js +58 -0
- package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -0
- package/lib/tools/Toolbox/SelectTools/index.css +103 -0
- package/lib/tools/Toolbox/SelectTools/index.js +788 -0
- package/lib/tools/Toolbox/SelectTools/index.js.map +1 -0
- package/lib/tools/Toolbox/SelectTools/index.less +87 -0
- package/lib/tools/Toolbox/SpaceQuery/index.css +19 -0
- package/lib/tools/Toolbox/SpaceQuery/index.js +597 -0
- package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -0
- package/lib/tools/Toolbox/SpaceQuery/index.less +16 -0
- package/lib/tools/Toolbox/ZoomInput/index.css +6 -0
- package/lib/tools/Toolbox/ZoomInput/index.js +50 -0
- package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -0
- package/lib/tools/Toolbox/ZoomInput/index.less +6 -0
- package/lib/tools/Toolbox/draftingPrint/index.css +26 -0
- package/lib/tools/Toolbox/draftingPrint/index.js +365 -0
- package/lib/tools/Toolbox/draftingPrint/index.js.map +1 -0
- package/lib/tools/Toolbox/draftingPrint/index.less +34 -0
- package/lib/tools/Toolbox/index.css +0 -0
- package/lib/tools/Toolbox/index.js +206 -0
- package/lib/tools/Toolbox/index.js.map +1 -0
- package/lib/tools/Toolbox/index.less +2 -0
- package/lib/tools/Utils/CreateOverlay.js +46 -0
- package/lib/tools/Utils/CreateOverlay.js.map +1 -0
- package/lib/tools/Utils/Draw.js +127 -0
- package/lib/tools/Utils/Draw.js.map +1 -0
- package/lib/tools/Utils/HighLayer.js +212 -0
- package/lib/tools/Utils/HighLayer.js.map +1 -0
- package/lib/tools/Utils/measure.js +246 -0
- package/lib/tools/Utils/measure.js.map +1 -0
- package/lib/tools/Utils/utils.js +263 -0
- package/lib/tools/Utils/utils.js.map +1 -0
- package/lib/tools/View/index.css +35 -0
- package/lib/tools/View/index.js +179 -0
- package/lib/tools/View/index.js.map +1 -0
- package/lib/tools/View/index.less +28 -0
- package/lib/tools/analysis-tool/index.js +111 -0
- package/lib/tools/analysis-tool/index.js.map +1 -0
- package/lib/tools/base-map-switch/index.js +168 -0
- package/lib/tools/base-map-switch/index.js.map +1 -0
- package/lib/tools/components/Chart/index.js +821 -0
- package/lib/tools/components/Chart/index.js.map +1 -0
- package/lib/tools/components/Icon/index.js +31 -0
- package/lib/tools/components/Icon/index.js.map +1 -0
- package/lib/tools/components/Info/index.css +39 -0
- package/lib/tools/components/Info/index.js +34 -0
- package/lib/tools/components/Info/index.js.map +1 -0
- package/lib/tools/components/Info/index.less +26 -0
- package/lib/tools/components/ItemWrap/index.css +43 -0
- package/lib/tools/components/ItemWrap/index.js +46 -0
- package/lib/tools/components/ItemWrap/index.js.map +1 -0
- package/lib/tools/components/ItemWrap/index.less +41 -0
- package/lib/tools/components/Modal/index.css +42 -0
- package/lib/tools/components/Modal/index.js +45 -0
- package/lib/tools/components/Modal/index.js.map +1 -0
- package/lib/tools/components/Modal/index.less +33 -0
- package/lib/tools/components/MyTabs/index.js +22 -0
- package/lib/tools/components/MyTabs/index.js.map +1 -0
- package/lib/tools/components/RequiredLabel/index.css +5 -0
- package/lib/tools/components/RequiredLabel/index.js +32 -0
- package/lib/tools/components/RequiredLabel/index.js.map +1 -0
- package/lib/tools/components/RequiredLabel/index.less +5 -0
- package/lib/tools/components/Select/index.js +32 -0
- package/lib/tools/components/Select/index.js.map +1 -0
- package/lib/tools/components/Table/assets/tableIcon.png +0 -0
- package/lib/tools/components/Table/index.css +10 -0
- package/lib/tools/components/Table/index.js +92 -0
- package/lib/tools/components/Table/index.js.map +1 -0
- package/lib/tools/components/Table/index.less +13 -0
- package/lib/tools/components/ToolItem/index.css +30 -0
- package/lib/tools/components/ToolItem/index.js +28 -0
- package/lib/tools/components/ToolItem/index.js.map +1 -0
- package/lib/tools/components/ToolItem/index.less +27 -0
- package/lib/tools/components/ToolsSelect/index.css +15 -0
- package/lib/tools/components/ToolsSelect/index.js +44 -0
- package/lib/tools/components/ToolsSelect/index.js.map +1 -0
- package/lib/tools/components/ToolsSelect/index.less +10 -0
- package/lib/tools/full-screen/index.js +45 -0
- package/lib/tools/full-screen/index.js.map +1 -0
- package/lib/tools/index.js +161 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/layer-control/index.js +170 -0
- package/lib/tools/layer-control/index.js.map +1 -0
- package/lib/tools/refresh/index.js +39 -0
- package/lib/tools/refresh/index.js.map +1 -0
- package/lib/tools/style/css.js +13 -0
- package/lib/tools/style/css.js.map +1 -0
- package/lib/tools/style/index.css +136 -0
- package/lib/tools/style/index.js +13 -0
- package/lib/tools/style/index.js.map +1 -0
- package/lib/tools/style/index.less +154 -0
- package/lib/tools-item/index.js +65 -0
- package/lib/tools-item/index.js.map +1 -0
- package/lib/use-props/index.js +14 -0
- package/lib/use-props/index.js.map +1 -0
- package/lib/use-props/style/css.js +2 -0
- package/lib/use-props/style/css.js.map +1 -0
- package/lib/use-props/style/index.js +2 -0
- package/lib/use-props/style/index.js.map +1 -0
- package/lib/wms-layer/WmsLayer.js +313 -0
- package/lib/wms-layer/WmsLayer.js.map +1 -0
- package/lib/wms-layer/index.js +97 -0
- package/lib/wms-layer/index.js.map +1 -0
- package/lib/wms-layer/style/css.js +4 -0
- package/lib/wms-layer/style/css.js.map +1 -0
- package/lib/wms-layer/style/index.css +0 -0
- package/lib/wms-layer/style/index.js +4 -0
- package/lib/wms-layer/style/index.js.map +1 -0
- package/lib/wms-layer/style/index.less +0 -0
- package/package.json +24 -15
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_GroupLayer","_ImageLayer","_ImageTileLayer","_FeatureLayer","_WmsLayer","_lodashEs","_FlowLineLayer","_ArrowFlowLayer","e","__esModule","_classCallCheck","a","n","TypeError","_defineProperties","r","t","length","o","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","prototype","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","String","Number","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","apply","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","value","_setPrototypeOf","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","name","Array","from","test","iterator","isArray","getLayersVisibleKeys","data","map","visible","arguments","undefined","keys","loop","v","_v$layers","layer","layers","getLayerByKey","GroupLayer","_layer$group","group","f","hasOwnProperty","show","push","getAllKeys","_v$layers2","getAllLayersKeys","_v$layers3","_v$group","getLayers","_keys","_v$layers4","isVisible","displayName","getVisible","includes","newLayer","Layers","exports","_EventEmitter","options","_this","onChange","emit","addLayer","FeatureLayer","ImageTileLayer","ImageLayer","FlowLineLayer","ArrowFlowLayer","vectorLayer","layerControl","removeLayer","WmsLayer","filter","clearLayers","_this$layers","_this$getAllLayers","getAllLayers","find","item","_item$layers","getShowKeys","getHiddenKeys","getImageLayers","imageLayer","imageTileLayer","concat","getFeatureLayers","setShowByKeys","_layer$group2","cloneDeep","forEach","JSON","stringify","setGroup","setVisible","setHideByKeys","_layer$group3","isEqual","EventEmitter"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\nimport GroupLayer from '../group-layer/GroupLayer';\nimport ImageLayer from '../image-layer/ImageLayer';\nimport ImageTileLayer from '../image-layer/ImageTileLayer';\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport WmsLayer from '../wms-layer/WmsLayer';\nimport { cloneDeep, isEqual } from 'lodash-es';\nimport FlowLineLayer from '../flow-line-layer/FlowLineLayer';\nimport ArrowFlowLayer from '../arrow-flow-layer/ArrowFlowLayer';\n\n// 获取显示或隐藏的keys\nconst getLayersVisibleKeys = (data, map, visible = true) => {\n let keys = [];\n function loop(data, map, visible) {\n data.map(v => {\n if (v.key) {\n let layer = map.layers.getLayerByKey(v.key);\n if (layer && !(layer instanceof GroupLayer)) {\n if (layer.group?.length) {\n if (visible) {\n layer.group.map(f => {\n if (!f.hasOwnProperty('show') || f.show) {\n keys.push(f.key);\n }\n });\n } else {\n layer.group.map(f => {\n if (!f.show) {\n keys.push(f.key);\n }\n });\n }\n } else if (layer.show === visible) {\n keys.push(v.key);\n }\n\n // 如果group的显示的长度和layer的不一致 则不显示\n // if (\n // layer.show === visible &&\n // layer.group?.filter(v => v.show)?.length == layer.group?.length\n // ) {\n // keys.push(v.key);\n // }\n }\n }\n if (v.layers?.length) {\n loop(v.layers, map, visible);\n }\n });\n }\n loop(data, map, visible);\n return keys;\n};\n// 获取所有keys\nconst getAllKeys = data => {\n let keys = [];\n data.map(v => {\n if (v.layers?.length) {\n keys.push(...getAllKeys(v.layers));\n }\n keys.push(v.key);\n });\n\n return keys;\n};\n\n// 获取所有keys(包含group)\nconst getAllLayersKeys = data => {\n let keys = [];\n data.map(v => {\n if (v.layers?.length) {\n keys.push(...getAllLayersKeys(v.layers));\n }\n keys.push(v.key);\n if (v?.group?.length) {\n v.group.map(f => {\n if (f.key) {\n keys.push(f.key);\n }\n });\n }\n });\n\n return keys;\n};\n\n// 获取图层\nconst getLayers = (data, layer, _keys, visible) => {\n const layers = [];\n // 判断查询 全部的 or 隐藏的 or 显示的\n function loop(data, layer, _keys, visible) {\n data.map(v => {\n const isVisible =\n typeof visible !== 'boolean'\n ? true\n : v.displayName !== 'GroupLayer'\n ? v?.getVisible() === visible\n : false;\n\n if (v.key && v instanceof layer && isVisible) {\n if (_keys) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n if (keys.includes(v.key)) {\n layers.push(v);\n }\n } else {\n layers.push(v);\n }\n }\n if (v.layers?.length) {\n let newLayer = loop(v.layers, layer, _keys, visible);\n if (newLayer?.length) {\n layers.push(newLayer);\n }\n }\n });\n }\n loop(data, layer, _keys, visible);\n\n return layers;\n};\n\nexport default class Layers extends EventEmitter {\n constructor(options) {\n super();\n\n this.map = options.map;\n\n this.layers = [];\n }\n // 图层改变的时候\n onChange() {\n this.emit('change', this.layers);\n }\n addLayer(layer) {\n const map = this.map;\n if (\n layer instanceof FeatureLayer ||\n layer instanceof ImageTileLayer ||\n layer instanceof ImageLayer ||\n layer instanceof FlowLineLayer ||\n layer instanceof ArrowFlowLayer\n ) {\n map.addLayer(layer instanceof ArrowFlowLayer ? layer.vectorLayer : layer);\n }\n if (layer.name && layer.layerControl) {\n this.layers.push(layer);\n this.emit('add', layer);\n this.onChange();\n }\n }\n removeLayer(layer) {\n const map = this.map;\n if (\n layer instanceof FeatureLayer ||\n layer instanceof ImageTileLayer ||\n layer instanceof ImageLayer ||\n layer instanceof WmsLayer ||\n layer instanceof FlowLineLayer ||\n layer instanceof ArrowFlowLayer\n ) {\n map.removeLayer(layer instanceof ArrowFlowLayer ? layer.vectorLayer : layer);\n }\n if (layer.name && layer.layerControl) {\n this.layers = this.layers.filter(v => v !== layer);\n this.emit('remove', layer);\n this.onChange();\n }\n }\n // 图层清空\n clearLayers() {\n const map = this.map;\n this.layers?.map(layer => {\n if (\n layer instanceof FeatureLayer ||\n layer instanceof ImageTileLayer ||\n layer instanceof ImageLayer ||\n layer instanceof FlowLineLayer ||\n layer instanceof ArrowFlowLayer ||\n layer instanceof WmsLayer\n ) {\n map.removeLayer(layer instanceof ArrowFlowLayer ? layer.vectorLayer : layer);\n }\n });\n this.layers = [];\n this.emit('clear');\n this.onChange();\n }\n getLayerByKey(_keys) {\n return this.getAllLayers()?.find(layer => {\n return _keys && layer.key && layer.key === _keys;\n });\n }\n getAllLayers() {\n let layers = [];\n function loop(data) {\n data.map(item => {\n layers.push(item);\n if (item?.layers?.length) {\n loop(item.layers);\n }\n });\n }\n loop(this.layers);\n return layers;\n }\n // 获取 layers 里面的 key 集合\n getAllKeys() {\n return getAllKeys(this.layers);\n }\n\n // 获取 layers 里面的 key 集合\n getAllLayersKeys() {\n return getAllLayersKeys(this.layers);\n }\n\n // 获取当前展示的 keys\n getShowKeys() {\n return getLayersVisibleKeys(this.layers, this.map, true);\n }\n\n // 获取当前隐藏的 keys\n getHiddenKeys() {\n return getLayersVisibleKeys(this.layers, this.map, false);\n }\n\n // 获取 ImageLayer 图层\n getImageLayers(_keys, visible) {\n const imageLayer = getLayers(this.layers, ImageLayer, _keys, visible);\n const imageTileLayer = getLayers(this.layers, ImageTileLayer, _keys, visible);\n return [...imageLayer, ...imageTileLayer];\n }\n\n // 获取 FeatureLayer 图层\n getFeatureLayers(_keys, visible) {\n return getLayers(this.layers, FeatureLayer, _keys, visible);\n }\n\n // 根据 keys 设置图层的显示,其他的隐藏\n setShowByKeys(_keys) {\n const map = this.map;\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n this.getAllKeys().map(a => {\n let layer = map.layers.getLayerByKey(a);\n if (layer && !(layer instanceof GroupLayer)) {\n if (layer.group?.length) {\n let group = cloneDeep(layer.group);\n\n let show = false;\n group.forEach(v => {\n v.show = _keys.includes(v.key);\n\n if (_keys.includes(v.key)) {\n show = true;\n }\n });\n\n if (JSON.stringify(group) !== JSON.stringify(layer.group)) {\n layer.setGroup(group);\n }\n\n layer.show = show;\n layer.setVisible(show);\n } else {\n let show = keys.includes(a);\n if (show !== layer.show) {\n layer.show = show;\n layer.setVisible(show);\n }\n }\n }\n });\n map.layers.onChange();\n }\n\n // 根据 keys 设置图层的隐藏,其他的显示\n setHideByKeys(_keys) {\n const map = this.map;\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n this.getAllKeys().map(a => {\n let layer = map.layers.getLayerByKey(a);\n if (layer) {\n if (layer.group?.length) {\n let group = cloneDeep(layer.group);\n group.forEach(v => {\n v.show = !_keys.includes(v.key);\n });\n\n if (!isEqual(group, layer.group)) {\n layer.setGroup(group);\n }\n } else {\n let show = !keys.includes(a);\n if (show !== layer.show) {\n layer.show = show;\n layer.setVisible(show);\n }\n }\n }\n });\n map.layers.onChange();\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/lib/map/Popup.js
ADDED
|
@@ -0,0 +1,386 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _antd = require("antd");
|
|
10
|
+
var _ol = require("ol");
|
|
11
|
+
var _layer2 = require("ol/layer");
|
|
12
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
var _layerControl = require("../tools/layer-control");
|
|
14
|
+
var _popup = _interopRequireDefault(require("../popup"));
|
|
15
|
+
require("./style");
|
|
16
|
+
var _useProps3 = _interopRequireDefault(require("../use-props"));
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
18
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
19
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
22
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
23
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
24
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
25
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
26
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
27
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
28
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
29
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
30
|
+
var ClusterTitle = function ClusterTitle(props) {
|
|
31
|
+
var layer = props.layer;
|
|
32
|
+
var name = layer.name;
|
|
33
|
+
var imgUrl = (0, _layerControl.getImgUrl)(layer);
|
|
34
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
35
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster-title')
|
|
36
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
37
|
+
src: imgUrl,
|
|
38
|
+
alt: "",
|
|
39
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster-title-img')
|
|
40
|
+
}), /*#__PURE__*/_react["default"].createElement("span", {
|
|
41
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster-title-text')
|
|
42
|
+
}, name));
|
|
43
|
+
};
|
|
44
|
+
var Cluster = function Cluster(props) {
|
|
45
|
+
var layer = props.layer,
|
|
46
|
+
features = props.features,
|
|
47
|
+
onFeatureClick = props.onFeatureClick,
|
|
48
|
+
onFitView = props.onFitView;
|
|
49
|
+
var labelField = layer.labelField;
|
|
50
|
+
var _useProps = (0, _useProps3["default"])(),
|
|
51
|
+
TextEnum = _useProps.TextEnum;
|
|
52
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
53
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster')
|
|
54
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
55
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster-header')
|
|
56
|
+
}, TextEnum.totalText, " ", features.length, " ", TextEnum.unitGeText, TextEnum.pointText, /*#__PURE__*/_react["default"].createElement("a", {
|
|
57
|
+
onClick: onFitView
|
|
58
|
+
}, TextEnum.scaleToText)), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
|
|
59
|
+
pagination: false,
|
|
60
|
+
size: "small",
|
|
61
|
+
dataSource: features,
|
|
62
|
+
scroll: {
|
|
63
|
+
y: 120
|
|
64
|
+
},
|
|
65
|
+
columns: [{
|
|
66
|
+
title: TextEnum.nameText,
|
|
67
|
+
dataIndex: TextEnum.nameText,
|
|
68
|
+
width: 60,
|
|
69
|
+
render: function render(text, record) {
|
|
70
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
71
|
+
onClick: function onClick() {
|
|
72
|
+
return onFeatureClick(record);
|
|
73
|
+
}
|
|
74
|
+
}, record.values_[labelField]);
|
|
75
|
+
}
|
|
76
|
+
}, {
|
|
77
|
+
title: TextEnum.operationText,
|
|
78
|
+
dataIndex: TextEnum.operationText,
|
|
79
|
+
width: 30,
|
|
80
|
+
render: function render(text, record) {
|
|
81
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
82
|
+
onClick: function onClick() {
|
|
83
|
+
return onFeatureClick(record);
|
|
84
|
+
}
|
|
85
|
+
}, " ", TextEnum.positionText);
|
|
86
|
+
}
|
|
87
|
+
}]
|
|
88
|
+
}));
|
|
89
|
+
};
|
|
90
|
+
var FeatureTable = function FeatureTable(props) {
|
|
91
|
+
var tableData = props.tableData,
|
|
92
|
+
onFeatureClick = props.onFeatureClick,
|
|
93
|
+
onFitView = props.onFitView;
|
|
94
|
+
var _useProps2 = (0, _useProps3["default"])(),
|
|
95
|
+
TextEnum = _useProps2.TextEnum;
|
|
96
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
97
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster')
|
|
98
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
99
|
+
className: (0, _classnames["default"])('ol-map-popup-cluster-header'),
|
|
100
|
+
style: {
|
|
101
|
+
padding: '10px 0'
|
|
102
|
+
}
|
|
103
|
+
}, TextEnum.totalText, " ", tableData.length, " ", TextEnum.unitGeText, TextEnum.pointText, /*#__PURE__*/_react["default"].createElement("a", {
|
|
104
|
+
onClick: onFitView
|
|
105
|
+
}, TextEnum.scaleToText)), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
|
|
106
|
+
pagination: false,
|
|
107
|
+
size: "small",
|
|
108
|
+
dataSource: tableData,
|
|
109
|
+
scroll: {
|
|
110
|
+
y: 120
|
|
111
|
+
},
|
|
112
|
+
columns: [{
|
|
113
|
+
title: TextEnum.layer,
|
|
114
|
+
dataIndex: 'layerName',
|
|
115
|
+
width: 40,
|
|
116
|
+
render: function render(text, record) {
|
|
117
|
+
return record.layer.name;
|
|
118
|
+
}
|
|
119
|
+
}, {
|
|
120
|
+
title: TextEnum.nameText,
|
|
121
|
+
dataIndex: 'name',
|
|
122
|
+
width: 60,
|
|
123
|
+
render: function render(text, record) {
|
|
124
|
+
var _record$layer;
|
|
125
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
126
|
+
onClick: function onClick() {
|
|
127
|
+
return onFeatureClick(record);
|
|
128
|
+
}
|
|
129
|
+
}, record.feature.values_[(record === null || record === void 0 || (_record$layer = record.layer) === null || _record$layer === void 0 ? void 0 : _record$layer.labelField) || 'name'] || '-');
|
|
130
|
+
}
|
|
131
|
+
}]
|
|
132
|
+
}));
|
|
133
|
+
};
|
|
134
|
+
var MapPopup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
135
|
+
var _useState = (0, _react.useState)(null),
|
|
136
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
137
|
+
content = _useState2[0],
|
|
138
|
+
setContent = _useState2[1];
|
|
139
|
+
var _useState3 = (0, _react.useState)(null),
|
|
140
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
141
|
+
title = _useState4[0],
|
|
142
|
+
setTitle = _useState4[1];
|
|
143
|
+
var overlayRef = (0, _react.useRef)();
|
|
144
|
+
var popupRef = (0, _react.useRef)();
|
|
145
|
+
var featureRef = (0, _react.useRef)();
|
|
146
|
+
var viewRef = (0, _react.useRef)({});
|
|
147
|
+
var map = props.map;
|
|
148
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
149
|
+
return {
|
|
150
|
+
showTemplate: showTemplate,
|
|
151
|
+
hideTemplate: hideTemplate,
|
|
152
|
+
setLastView: setLastView,
|
|
153
|
+
setZIndex: setZIndex
|
|
154
|
+
};
|
|
155
|
+
});
|
|
156
|
+
(0, _react.useEffect)(function () {
|
|
157
|
+
var overlay = new _ol.Overlay({
|
|
158
|
+
id: 'ol-map-popup',
|
|
159
|
+
element: popupRef.current.wrapDom,
|
|
160
|
+
autoPan: {
|
|
161
|
+
animation: {
|
|
162
|
+
duration: 250
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
stopEvent: true,
|
|
166
|
+
positioning: 'bottom-center',
|
|
167
|
+
offset: [10, -45]
|
|
168
|
+
});
|
|
169
|
+
overlayRef.current = overlay;
|
|
170
|
+
if (map.popupZIndex) {
|
|
171
|
+
overlay.element.style.zIndex = map.popupZIndex;
|
|
172
|
+
}
|
|
173
|
+
map.addOverlay(overlay);
|
|
174
|
+
return function () {
|
|
175
|
+
map.removeOverlay(overlay);
|
|
176
|
+
};
|
|
177
|
+
}, []);
|
|
178
|
+
var setZIndex = function setZIndex(zIndex) {
|
|
179
|
+
var _overlayRef$current;
|
|
180
|
+
if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.element) {
|
|
181
|
+
overlayRef.current.element.style.zIndex = zIndex;
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
var showTemplate = function showTemplate(feature, options) {
|
|
185
|
+
var _feature;
|
|
186
|
+
var _ref = options || {},
|
|
187
|
+
fitViewOptions = _ref.fitViewOptions;
|
|
188
|
+
if (Array.isArray(feature) && feature.length >= 2 && !map.hidePopupTable) {
|
|
189
|
+
showTemplateByFeatures(feature, options);
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
feature = Array.isArray(feature) ? feature[0] : feature;
|
|
193
|
+
featureRef.current = feature;
|
|
194
|
+
if (!feature) {
|
|
195
|
+
hideTemplate();
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
var layer = map.getLayerByFeature(feature);
|
|
199
|
+
if (layer !== null && layer !== void 0 && layer.cancelPopup || (_feature = feature) !== null && _feature !== void 0 && _feature.cancelPopup) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
map.featureRef = feature;
|
|
203
|
+
|
|
204
|
+
// 判断是否为聚合点击
|
|
205
|
+
var features = feature.get('features');
|
|
206
|
+
if (features && features.length >= 2) {
|
|
207
|
+
showTemplateByCluster(feature, layer, features);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
// 记录放大前的视角
|
|
212
|
+
if (map.autoView) {
|
|
213
|
+
getView();
|
|
214
|
+
}
|
|
215
|
+
map.highlightLayer.addHighlightFeature(feature, _objectSpread({
|
|
216
|
+
autoView: map.autoView
|
|
217
|
+
}, fitViewOptions));
|
|
218
|
+
if (!(layer !== null && layer !== void 0 && layer.template)) {
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
if (layer) {
|
|
222
|
+
var template = layer.template;
|
|
223
|
+
var labelField = layer.labelField;
|
|
224
|
+
if (labelField) {
|
|
225
|
+
setTitle(feature.values_[labelField]);
|
|
226
|
+
}
|
|
227
|
+
if (template) {
|
|
228
|
+
var geometry = feature.getGeometry();
|
|
229
|
+
if (geometry.getType() == 'GeometryCollection') {
|
|
230
|
+
var _geometry$getGeometri;
|
|
231
|
+
geometry = (_geometry$getGeometri = geometry.getGeometries()) === null || _geometry$getGeometri === void 0 ? void 0 : _geometry$getGeometri[0];
|
|
232
|
+
}
|
|
233
|
+
setContent(template(feature));
|
|
234
|
+
var offset = layer instanceof _layer2.Image ? [10, -10] : [10, -45];
|
|
235
|
+
if (geometry) {
|
|
236
|
+
var type = geometry.getType();
|
|
237
|
+
var coordinate = geometry.getCoordinates();
|
|
238
|
+
if (['MultiLineString', 'LineString'].includes(type)) {
|
|
239
|
+
if (geometry.getFlatMidpoints) {
|
|
240
|
+
coordinate = geometry.getFlatMidpoints();
|
|
241
|
+
} else if (geometry.getFlatMidpoint) {
|
|
242
|
+
coordinate = geometry.getFlatMidpoint();
|
|
243
|
+
}
|
|
244
|
+
offset = [7, 0];
|
|
245
|
+
} else if (['MultiPolygon', 'Polygon'].includes(type)) {
|
|
246
|
+
if (geometry.getFlatInteriorPoints) {
|
|
247
|
+
coordinate = geometry.getFlatInteriorPoints();
|
|
248
|
+
} else if (geometry.getFlatInteriorPoint) {
|
|
249
|
+
coordinate = geometry.getFlatInteriorPoint();
|
|
250
|
+
}
|
|
251
|
+
offset = [10, 0];
|
|
252
|
+
}
|
|
253
|
+
overlayRef.current.setPosition(coordinate);
|
|
254
|
+
overlayRef.current.values_.offset = offset;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
// 聚合点位展示
|
|
261
|
+
var showTemplateByCluster = function showTemplateByCluster(feature, layer, features) {
|
|
262
|
+
var _feature$getGeometry, _layer$_options;
|
|
263
|
+
var coordinate = feature === null || feature === void 0 || (_feature$getGeometry = feature.getGeometry()) === null || _feature$getGeometry === void 0 ? void 0 : _feature$getGeometry.getCoordinates();
|
|
264
|
+
overlayRef.current.setPosition(coordinate);
|
|
265
|
+
setTitle(/*#__PURE__*/_react["default"].createElement(ClusterTitle, {
|
|
266
|
+
layer: layer
|
|
267
|
+
}));
|
|
268
|
+
|
|
269
|
+
// 判断是否有自定义聚合列表模版
|
|
270
|
+
var Template = (layer === null || layer === void 0 || (_layer$_options = layer._options) === null || _layer$_options === void 0 || (_layer$_options = _layer$_options.cluster) === null || _layer$_options === void 0 ? void 0 : _layer$_options.template) || Cluster;
|
|
271
|
+
setContent(/*#__PURE__*/_react["default"].createElement(Template, {
|
|
272
|
+
layer: layer,
|
|
273
|
+
features: features,
|
|
274
|
+
onFitView: function onFitView() {
|
|
275
|
+
map.fitView(features);
|
|
276
|
+
hideTemplate();
|
|
277
|
+
},
|
|
278
|
+
onFeatureClick: function onFeatureClick(f) {
|
|
279
|
+
map.fitView(f);
|
|
280
|
+
showTemplate(f);
|
|
281
|
+
}
|
|
282
|
+
}));
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
// 多个点位展示
|
|
286
|
+
var showTemplateByFeatures = function showTemplateByFeatures(features) {
|
|
287
|
+
overlayRef.current.setPosition(map._clickObject.coordinate);
|
|
288
|
+
overlayRef.current.values_.offset = [10, -10];
|
|
289
|
+
|
|
290
|
+
// 设置新的中心点
|
|
291
|
+
map.getView().animate({
|
|
292
|
+
center: map._clickObject.coordinate,
|
|
293
|
+
duration: 500
|
|
294
|
+
});
|
|
295
|
+
setTitle(null);
|
|
296
|
+
var tableData = [];
|
|
297
|
+
features.map(function (feature) {
|
|
298
|
+
var layer = map.getLayerByFeature(feature);
|
|
299
|
+
// 判断是否为聚合点击
|
|
300
|
+
var clusterFeature = feature.get('features');
|
|
301
|
+
if (clusterFeature && clusterFeature.length >= 2) {
|
|
302
|
+
clusterFeature.map(function (f) {
|
|
303
|
+
tableData.push({
|
|
304
|
+
layer: layer,
|
|
305
|
+
feature: f
|
|
306
|
+
});
|
|
307
|
+
});
|
|
308
|
+
} else {
|
|
309
|
+
var _layer = map.getLayerByFeature(feature);
|
|
310
|
+
tableData.push({
|
|
311
|
+
layer: _layer,
|
|
312
|
+
feature: feature
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
setContent(/*#__PURE__*/_react["default"].createElement(FeatureTable, {
|
|
317
|
+
tableData: tableData,
|
|
318
|
+
onFitView: function onFitView() {
|
|
319
|
+
map.fitView(features);
|
|
320
|
+
hideTemplate();
|
|
321
|
+
},
|
|
322
|
+
onFeatureClick: function onFeatureClick(record) {
|
|
323
|
+
var feature = record.feature;
|
|
324
|
+
var layer = map.getLayerByFeature(feature);
|
|
325
|
+
var properties = feature.getProperties();
|
|
326
|
+
layer === null || layer === void 0 || layer.onClick(properties, map._clickObject);
|
|
327
|
+
if (layer !== null && layer !== void 0 && layer.template) {
|
|
328
|
+
map.fitView(feature);
|
|
329
|
+
showTemplate(feature);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}));
|
|
333
|
+
};
|
|
334
|
+
|
|
335
|
+
// 恢复上一次视角
|
|
336
|
+
var setLastView = function setLastView() {
|
|
337
|
+
// 恢复打开前的视角
|
|
338
|
+
if (map.autoView && map.closePopupAutoView && viewRef.current) {
|
|
339
|
+
var _viewRef$current = viewRef.current,
|
|
340
|
+
zoom = _viewRef$current.zoom,
|
|
341
|
+
center = _viewRef$current.center;
|
|
342
|
+
map.getView().animate({
|
|
343
|
+
zoom: zoom,
|
|
344
|
+
center: center
|
|
345
|
+
});
|
|
346
|
+
}
|
|
347
|
+
};
|
|
348
|
+
var hideTemplate = function hideTemplate() {
|
|
349
|
+
overlayRef.current.setPosition(undefined);
|
|
350
|
+
map.highlightLayer.clearFeatures();
|
|
351
|
+
setContent(null);
|
|
352
|
+
setTitle(null);
|
|
353
|
+
featureRef.current = null;
|
|
354
|
+
map.featureRef = null;
|
|
355
|
+
};
|
|
356
|
+
var getView = function getView() {
|
|
357
|
+
var view = map.getView();
|
|
358
|
+
var zoom = view.getZoom();
|
|
359
|
+
var viewParams;
|
|
360
|
+
if (zoom < 15) {
|
|
361
|
+
viewParams = {
|
|
362
|
+
extent: view.calculateExtent(map.getSize()),
|
|
363
|
+
zoom: view.getZoom(),
|
|
364
|
+
center: view.getCenter()
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
viewRef.current = viewParams;
|
|
368
|
+
};
|
|
369
|
+
var onClose = function onClose() {
|
|
370
|
+
// 回调事件
|
|
371
|
+
map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);
|
|
372
|
+
|
|
373
|
+
// 隐藏气泡
|
|
374
|
+
hideTemplate();
|
|
375
|
+
|
|
376
|
+
// 恢复打开前的视角
|
|
377
|
+
setLastView();
|
|
378
|
+
};
|
|
379
|
+
return /*#__PURE__*/_react["default"].createElement(_popup["default"], {
|
|
380
|
+
ref: popupRef,
|
|
381
|
+
title: title,
|
|
382
|
+
onClose: onClose
|
|
383
|
+
}, content);
|
|
384
|
+
});
|
|
385
|
+
var _default = exports["default"] = MapPopup;
|
|
386
|
+
//# sourceMappingURL=Popup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_antd","_ol","_layer2","_classnames","_interopRequireDefault","_layerControl","_popup","_useProps3","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","isArray","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","Cluster","features","onFeatureClick","onFitView","labelField","_useProps","useProps","TextEnum","totalText","unitGeText","pointText","onClick","scaleToText","Table","pagination","size","dataSource","scroll","y","columns","title","nameText","dataIndex","width","render","text","record","values_","operationText","positionText","FeatureTable","tableData","_useProps2","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","setLastView","setZIndex","useEffect","overlay","Overlay","id","element","current","wrapDom","autoPan","animation","duration","stopEvent","positioning","offset","popupZIndex","zIndex","addOverlay","removeOverlay","_overlayRef$current","options","_feature","_ref","fitViewOptions","hidePopupTable","showTemplateByFeatures","getLayerByFeature","cancelPopup","showTemplateByCluster","autoView","getView","highlightLayer","addHighlightFeature","template","geometry","getGeometry","getType","_geometry$getGeometri","getGeometries","Image","type","coordinate","getCoordinates","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","setPosition","_feature$getGeometry","_layer$_options","Template","_options","cluster","fitView","_clickObject","animate","center","clusterFeature","properties","getProperties","closePopupAutoView","_viewRef$current","zoom","undefined","clearFeatures","view","getZoom","viewParams","extent","calculateExtent","getSize","getCenter","onClose","onCloseTemplateBefore","_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';\nimport useProps from '../use-props';\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 const { TextEnum } = useProps();\n\n return (\n <div className={classnames('ol-map-popup-cluster')}>\n <div className={classnames('ol-map-popup-cluster-header')}>\n {TextEnum.totalText} {features.length} {TextEnum.unitGeText}{TextEnum.pointText}\n <a onClick={onFitView}>{TextEnum.scaleToText}</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: TextEnum.nameText,\n dataIndex: TextEnum.nameText,\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: TextEnum.operationText,\n dataIndex: TextEnum.operationText,\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}> {TextEnum.positionText}</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\n\nconst FeatureTable = props => {\n const { tableData, onFeatureClick, onFitView } = props;\n const { TextEnum } = useProps();\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 {TextEnum.totalText} {tableData.length} {TextEnum.unitGeText}{TextEnum.pointText}\n <a onClick={onFitView}>{TextEnum.scaleToText}</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={tableData}\n scroll={{ y: 120 }}\n columns={[\n {\n title: TextEnum.layer,\n dataIndex: 'layerName',\n width: 40,\n render: (text, record) => record.layer.name,\n },\n {\n title: TextEnum.nameText,\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 '-'}\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 setLastView,\n setZIndex\n };\n });\n\n useEffect(() => {\n const overlay = new Overlay({\n id: 'ol-map-popup',\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 if (map.popupZIndex) {\n overlay.element.style.zIndex = map.popupZIndex;\n }\n\n map.addOverlay(overlay);\n\n return () => {\n map.removeOverlay(overlay);\n };\n }, []);\n\n const setZIndex = (zIndex) => {\n if (overlayRef.current?.element) {\n overlayRef.current.element.style.zIndex = zIndex;\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 if (layer?.cancelPopup || feature?.cancelPopup) {\n return;\n }\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 // 记录放大前的视角\n if (map.autoView) {\n getView();\n }\n\n map.highlightLayer.addHighlightFeature(feature, {\n autoView: map.autoView,\n ...fitViewOptions,\n });\n\n if (!layer?.template) {\n return;\n }\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 let geometry = feature.getGeometry();\n if (geometry.getType() == 'GeometryCollection') {\n geometry = geometry.getGeometries()?.[0];\n }\n setContent(template(feature));\n\n let offset = layer instanceof Image ? [10, -10] : [10, -45];\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 // 设置新的中心点\n map.getView().animate({ center: map._clickObject.coordinate, duration: 500 });\n setTitle(null);\n\n const tableData = [];\n features.map(feature => {\n let layer = map.getLayerByFeature(feature);\n // 判断是否为聚合点击\n const clusterFeature = feature.get('features');\n if (clusterFeature && clusterFeature.length >= 2) {\n clusterFeature.map(f => {\n tableData.push({\n layer: layer,\n feature: f,\n });\n });\n } else {\n let layer = map.getLayerByFeature(feature);\n tableData.push({\n layer: layer,\n feature: feature,\n });\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 // 恢复上一次视角\n const setLastView = () => {\n // 恢复打开前的视角\n if (map.autoView && map.closePopupAutoView && viewRef.current) {\n const { zoom, center } = viewRef.current;\n map.getView().animate({ zoom, center });\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 setLastView();\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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","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
require("./style");
|
|
10
|
+
var _useProps2 = _interopRequireDefault(require("../use-props"));
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
12
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
13
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
14
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
15
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
16
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
17
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
18
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // 计算视野高度的组件
|
|
19
|
+
var count2 = function count2(map, setHeight) {
|
|
20
|
+
var view = map.getView();
|
|
21
|
+
var resolution = view.getResolution();
|
|
22
|
+
var projection = view.getProjection();
|
|
23
|
+
if (!resolution || !projection) return;
|
|
24
|
+
var inchesPerMeter = 39.37;
|
|
25
|
+
var dpi = 90.7; // GeoServer标准DPI
|
|
26
|
+
// 使用投影单位计算
|
|
27
|
+
var units = projection.getUnits();
|
|
28
|
+
var scaleDenominator;
|
|
29
|
+
if (units === 'degrees') {
|
|
30
|
+
// 如果是经纬度投影,需要转换
|
|
31
|
+
var center = view.getCenter();
|
|
32
|
+
if (center) {
|
|
33
|
+
// 使用中心点纬度计算米/度的转换因子
|
|
34
|
+
var metersPerUnit = projection.getMetersPerUnit();
|
|
35
|
+
scaleDenominator = resolution * metersPerUnit * inchesPerMeter * dpi;
|
|
36
|
+
}
|
|
37
|
+
} else {
|
|
38
|
+
// 其他单位(如米)直接计算
|
|
39
|
+
scaleDenominator = resolution * inchesPerMeter * dpi;
|
|
40
|
+
}
|
|
41
|
+
setHeight(scaleDenominator);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
//偏小
|
|
45
|
+
var Sd = function Sd() {
|
|
46
|
+
var _useProps = (0, _useProps2["default"])(),
|
|
47
|
+
map = _useProps.map;
|
|
48
|
+
var _useState = (0, _react.useState)(0),
|
|
49
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
50
|
+
height2 = _useState2[0],
|
|
51
|
+
setHeight2 = _useState2[1];
|
|
52
|
+
var timeRef = (0, _react.useRef)(null);
|
|
53
|
+
(0, _react.useEffect)(function () {
|
|
54
|
+
if (map) {
|
|
55
|
+
//监测地图zoom改变
|
|
56
|
+
map.getView().on('change:resolution', function () {
|
|
57
|
+
if (timeRef.current) {
|
|
58
|
+
clearTimeout(timeRef.current);
|
|
59
|
+
count2(map, setHeight2);
|
|
60
|
+
}
|
|
61
|
+
timeRef.current = setTimeout(function () {}, 50);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}, [map]);
|
|
65
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, height2);
|
|
66
|
+
};
|
|
67
|
+
var _default = exports["default"] = Sd;
|
|
68
|
+
//# sourceMappingURL=ScaleDenominator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScaleDenominator.js","names":["_react","_interopRequireWildcard","require","_useProps2","_interopRequireDefault","e","__esModule","t","WeakMap","r","n","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","isArray","count2","map","setHeight","view","getView","resolution","getResolution","projection","getProjection","inchesPerMeter","dpi","units","getUnits","scaleDenominator","center","getCenter","metersPerUnit","getMetersPerUnit","Sd","_useProps","useProps","_useState","useState","_useState2","height2","setHeight2","timeRef","useRef","useEffect","on","current","clearTimeout","setTimeout","createElement","Fragment","_default","exports"],"sources":["map/ScaleDenominator.jsx"],"sourcesContent":["// 计算视野高度的组件\nimport React, { useEffect, useState, useRef } from 'react';\nimport './style';\nimport useProps from '../use-props';\n\nconst count2 = (map, setHeight) => {\n const view = map.getView();\n const resolution = view.getResolution();\n const projection = view.getProjection();\n\n if (!resolution || !projection) return;\n const inchesPerMeter = 39.37;\n const dpi = 90.7; // GeoServer标准DPI\n // 使用投影单位计算\n const units = projection.getUnits();\n let scaleDenominator;\n if (units === 'degrees') {\n // 如果是经纬度投影,需要转换\n const center = view.getCenter();\n if (center) {\n // 使用中心点纬度计算米/度的转换因子\n const metersPerUnit = projection.getMetersPerUnit();\n scaleDenominator = resolution * metersPerUnit * inchesPerMeter * dpi;\n }\n } else {\n // 其他单位(如米)直接计算\n scaleDenominator = resolution * inchesPerMeter * dpi;\n }\n setHeight(scaleDenominator);\n};\n\n//偏小\nconst Sd = () => {\n const { map } = useProps();\n const [height2, setHeight2] = useState(0);\n const timeRef = useRef(null);\n useEffect(() => {\n if (map) {\n //监测地图zoom改变\n map.getView().on('change:resolution', function() {\n if (timeRef.current) {\n clearTimeout(timeRef.current);\n count2(map, setHeight2);\n }\n\n timeRef.current = setTimeout(() => {}, 50);\n });\n }\n }, [map]);\n return <>{height2}</>;\n};\n\nexport default Sd;\n"],"mappings":"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","ignoreList":[]}
|