@vtx/ol-map 1.0.25 → 1.0.26
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/assets/noLocation.png +0 -0
- package/lib/feature-layer/FeatureLayer.js +10 -5
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/createFeatureCollection.js +8 -6
- package/lib/feature-layer/createFeatureCollection.js.map +1 -1
- package/lib/feature-layer/index.js +5 -2
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/image-layer/ImageLayer.js +11 -1
- package/lib/image-layer/ImageLayer.js.map +1 -1
- package/lib/image-layer/index.js +1 -0
- package/lib/image-layer/index.js.map +1 -1
- package/lib/index.js +7 -21
- package/lib/index.js.map +1 -1
- package/lib/map/Popup.js +1 -0
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/index.js +83 -15
- package/lib/map/index.js.map +1 -1
- package/lib/poi-search/Search.js +4 -0
- package/lib/poi-search/Search.js.map +1 -1
- package/lib/poi-search/style/css.js +1 -0
- package/lib/poi-search/style/css.js.map +1 -1
- package/lib/poi-search/style/index.js +1 -0
- package/lib/poi-search/style/index.js.map +1 -1
- package/lib/renderer/index.js +0 -1
- package/lib/renderer/index.js.map +1 -1
- package/lib/search-map/VtxModal.js +205 -0
- package/lib/search-map/VtxModal.js.map +1 -0
- package/lib/search-map/index.js +338 -0
- package/lib/search-map/index.js.map +1 -0
- package/lib/search-map/style/css.js +9 -0
- package/lib/search-map/style/css.js.map +1 -0
- package/lib/search-map/style/index.css +73 -0
- package/lib/search-map/style/index.js +9 -0
- package/lib/search-map/style/index.js.map +1 -0
- package/lib/search-map/style/index.less +71 -0
- package/lib/search-map/style/modal.css +54 -0
- package/lib/search-map/style/modal.less +58 -0
- package/lib/tools/Search/index.js +2 -2
- package/lib/tools/Search/index.js.map +1 -1
- package/lib/tools/Toolbox/EagleEye/index.js +4 -2
- package/lib/tools/Toolbox/EagleEye/index.js.map +1 -1
- package/lib/tools/Toolbox/ScaleLine/index.js +4 -2
- package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -1
- package/lib/tools/Toolbox/index.js +11 -3
- package/lib/tools/Toolbox/index.js.map +1 -1
- package/lib/tools/layer-control/index.js +3 -4
- package/lib/tools/layer-control/index.js.map +1 -1
- package/package.json +2 -2
- package/lib/_util/layerConfig.js +0 -411
- package/lib/_util/layerConfig.js.map +0 -1
- package/lib/device-layer/index.js +0 -122
- package/lib/device-layer/index.js.map +0 -1
- package/lib/device-layer/style/css.js +0 -4
- package/lib/device-layer/style/css.js.map +0 -1
- package/lib/device-layer/style/index.css +0 -0
- package/lib/device-layer/style/index.js +0 -4
- package/lib/device-layer/style/index.js.map +0 -1
- package/lib/device-layer/style/index.less +0 -0
- package/lib/empty/index.js +0 -44
- package/lib/empty/index.js.map +0 -1
- package/lib/empty/nodata/index.js +0 -32
- package/lib/empty/nodata/index.js.map +0 -1
- package/lib/empty/style/index.css +0 -31
- package/lib/empty/style/index.less +0 -24
- package/lib/facility-layer/index.js +0 -153
- package/lib/facility-layer/index.js.map +0 -1
- package/lib/facility-layer/style/css.js +0 -4
- package/lib/facility-layer/style/css.js.map +0 -1
- package/lib/facility-layer/style/index.css +0 -0
- package/lib/facility-layer/style/index.js +0 -4
- package/lib/facility-layer/style/index.js.map +0 -1
- package/lib/facility-layer/style/index.less +0 -0
- package/lib/map-layer/api.js +0 -118
- package/lib/map-layer/api.js.map +0 -1
- package/lib/map-layer/index.js +0 -136
- package/lib/map-layer/index.js.map +0 -1
- package/lib/map-layer/style/css.js +0 -4
- package/lib/map-layer/style/css.js.map +0 -1
- package/lib/map-layer/style/index.css +0 -0
- package/lib/map-layer/style/index.js +0 -4
- package/lib/map-layer/style/index.js.map +0 -1
- package/lib/map-layer/style/index.less +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ImageLayer","_interopRequireDefault","_events","_useProps2","_ahooks","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_default","props","url","params","sourceOptions","style","zIndex","_key","key","id","name","labelField","template","_props$layerControl","layerControl","_props$show","show","group","_useProps","useProps","map","groupLayer","layerRef","useRef","useEffect","layer","ImageLayer","registerEventLayer","addLayer","layers","current","removeLayer","useUpdateEffect","updateParams","JSON","stringify","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ImageLayer","_interopRequireDefault","_events","_useProps2","_ahooks","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_default","props","url","params","sourceOptions","style","zIndex","_key","key","id","name","labelField","template","_props$layerControl","layerControl","_props$show","show","group","_useProps","useProps","map","groupLayer","layerRef","useRef","useEffect","layer","ImageLayer","registerEventLayer","addLayer","layers","current","setShow","removeLayer","useUpdateEffect","updateParams","JSON","stringify","setGroup","createElement","Fragment"],"sources":["image-layer/index.js"],"sourcesContent":["import React, { useRef, useEffect } from 'react';\r\nimport ImageLayer from './ImageLayer';\r\nimport { registerEventLayer } from '../events';\r\nimport useProps from '../use-props';\r\nimport { useUpdateEffect } from 'ahooks';\r\n\r\nexport default function(props) {\r\n const {\r\n url,\r\n params,\r\n sourceOptions,\r\n style,\r\n zIndex,\r\n _key,\r\n id: key,\r\n name,\r\n labelField,\r\n template,\r\n layerControl = true,\r\n show = true,\r\n group,\r\n } = props;\r\n\r\n const { map, groupLayer } = useProps();\r\n\r\n const layerRef = useRef();\r\n\r\n useEffect(() => {\r\n if (map) {\r\n let layer = new ImageLayer({\r\n url,\r\n params,\r\n sourceOptions,\r\n style,\r\n zIndex,\r\n key: key || _key,\r\n name,\r\n labelField,\r\n template,\r\n layerControl,\r\n show,\r\n group,\r\n groupLayer,\r\n });\r\n\r\n // 注册事件\r\n registerEventLayer(layer, props);\r\n\r\n if (groupLayer) {\r\n groupLayer.addLayer(layer);\r\n } else {\r\n map.layers.addLayer(layer);\r\n }\r\n layerRef.current = layer;\r\n\r\n layerRef.current.setShow(show);\r\n }\r\n\r\n return () => {\r\n if (groupLayer) {\r\n groupLayer.removeLayer(layerRef.current);\r\n } else {\r\n map.layers.removeLayer(layerRef.current);\r\n }\r\n };\r\n }, []);\r\n\r\n useUpdateEffect(() => {\r\n layerRef.current.updateParams(params);\r\n }, [JSON.stringify(params)]);\r\n\r\n useUpdateEffect(() => {\r\n layerRef.current.setShow(show);\r\n }, [show]);\r\n\r\n useEffect(() => {\r\n layerRef.current.setGroup(group);\r\n }, [JSON.stringify(group)]);\r\n\r\n return <></>;\r\n}\r\n"],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -21,18 +21,6 @@ Object.defineProperty(exports, "Circle", {
|
|
|
21
21
|
return _circle["default"];
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
-
Object.defineProperty(exports, "DeviceLayer", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
get: function get() {
|
|
27
|
-
return _deviceLayer["default"];
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
Object.defineProperty(exports, "FacilityLayer", {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
get: function get() {
|
|
33
|
-
return _facilityLayer["default"];
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
24
|
Object.defineProperty(exports, "FeatureDraw", {
|
|
37
25
|
enumerable: true,
|
|
38
26
|
get: function get() {
|
|
@@ -69,12 +57,6 @@ Object.defineProperty(exports, "Map", {
|
|
|
69
57
|
return _map["default"];
|
|
70
58
|
}
|
|
71
59
|
});
|
|
72
|
-
Object.defineProperty(exports, "MapLayer", {
|
|
73
|
-
enumerable: true,
|
|
74
|
-
get: function get() {
|
|
75
|
-
return _mapLayer["default"];
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
60
|
Object.defineProperty(exports, "Marker", {
|
|
79
61
|
enumerable: true,
|
|
80
62
|
get: function get() {
|
|
@@ -111,6 +93,12 @@ Object.defineProperty(exports, "Provider", {
|
|
|
111
93
|
return _provider["default"];
|
|
112
94
|
}
|
|
113
95
|
});
|
|
96
|
+
Object.defineProperty(exports, "SearchMap", {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
get: function get() {
|
|
99
|
+
return _searchMap["default"];
|
|
100
|
+
}
|
|
101
|
+
});
|
|
114
102
|
Object.defineProperty(exports, "TileLayer", {
|
|
115
103
|
enumerable: true,
|
|
116
104
|
get: function get() {
|
|
@@ -146,8 +134,6 @@ var _bufferDraw = _interopRequireDefault(require("./buffer-draw"));
|
|
|
146
134
|
var _highLayer = _interopRequireDefault(require("./high-layer"));
|
|
147
135
|
var _groupLayer = _interopRequireDefault(require("./group-layer"));
|
|
148
136
|
var _analysisLayer = _interopRequireDefault(require("./analysis-layer"));
|
|
149
|
-
var
|
|
150
|
-
var _facilityLayer = _interopRequireDefault(require("./facility-layer"));
|
|
151
|
-
var _deviceLayer = _interopRequireDefault(require("./device-layer"));
|
|
137
|
+
var _searchMap = _interopRequireDefault(require("./search-map"));
|
|
152
138
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
153
139
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_tileLayer","_featureLayer","_imageLayer","_point","_marker","_polyline","_polygon","_circle","_tools","_poiSearch","_useProps","_provider","_bufferDraw","_highLayer","_groupLayer","_analysisLayer","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_tileLayer","_featureLayer","_imageLayer","_point","_marker","_polyline","_polygon","_circle","_tools","_poiSearch","_useProps","_provider","_bufferDraw","_highLayer","_groupLayer","_analysisLayer","_searchMap","obj","__esModule"],"sources":["index.js"],"sourcesContent":["export { default as Map } from './map';\r\nexport { default as TileLayer } from './tile-layer';\r\nexport { default as FeatureLayer } from './feature-layer';\r\nexport { default as ImageLayer } from './image-layer';\r\nexport { default as Point } from './point';\r\nexport { default as Marker } from './marker';\r\nexport { default as Polyline } from './polyline';\r\nexport { default as Polygon } from './polygon';\r\nexport { default as Circle } from './circle';\r\nexport { default as Tools } from './tools';\r\nexport { default as PoiSearch } from './poi-search';\r\nexport { default as useProps } from './use-props';\r\nexport { default as Provider } from './provider';\r\nexport { default as BufferDraw } from './buffer-draw';\r\nexport { default as HighLayer } from './high-layer';\r\nexport { default as FeatureDraw } from './feature-layer';\r\nexport { default as GroupLayer } from './group-layer';\r\nexport { default as AnalysisLayer } from './analysis-layer';\r\nexport { default as SearchMap } from './search-map';\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,MAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,OAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,QAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,OAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,MAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,UAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,SAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,SAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,WAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,UAAA,GAAAf,sBAAA,CAAAC,OAAA;AAEA,IAAAe,WAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,cAAA,GAAAjB,sBAAA,CAAAC,OAAA;AACA,IAAAiB,UAAA,GAAAlB,sBAAA,CAAAC,OAAA;AAAoD,SAAAD,uBAAAmB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA"}
|
package/lib/map/Popup.js
CHANGED
|
@@ -11,6 +11,7 @@ var _icons = require("@ant-design/icons");
|
|
|
11
11
|
var _ol = require("ol");
|
|
12
12
|
var _layer = require("ol/layer");
|
|
13
13
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
14
|
+
require("./style");
|
|
14
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
package/lib/map/Popup.js.map
CHANGED
|
@@ -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","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","highlightLayer","addHighlightFeature","Image","geometry","type","getType","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","undefined","clearFeatures","onClose","onCloseTemplateBefore","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\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\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 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 onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n hideTemplate();\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","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","highlightLayer","addHighlightFeature","Image","geometry","type","getType","includes","getFlatMidpoints","getFlatMidpoint","getFlatInteriorPoints","getFlatInteriorPoint","undefined","clearFeatures","onClose","onCloseTemplateBefore","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\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 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 onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n hideTemplate();\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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"}
|
package/lib/map/index.js
CHANGED
|
@@ -28,6 +28,7 @@ var _provider = _interopRequireDefault(require("../provider"));
|
|
|
28
28
|
var _Layers = _interopRequireDefault(require("./Layers"));
|
|
29
29
|
require("ol/ol.css");
|
|
30
30
|
require("./style");
|
|
31
|
+
var _search = require("../_util/search");
|
|
31
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
32
33
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
33
34
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
@@ -208,6 +209,9 @@ function Map(props) {
|
|
|
208
209
|
});
|
|
209
210
|
};
|
|
210
211
|
|
|
212
|
+
// 获取基础图层
|
|
213
|
+
map.getBaseLayers = _getBaseLayers["default"];
|
|
214
|
+
|
|
211
215
|
// 设置高亮
|
|
212
216
|
map.setHighlightFeature = function (feature) {
|
|
213
217
|
highLayerRef.current.addHighlightFeature(feature);
|
|
@@ -228,9 +232,15 @@ function Map(props) {
|
|
|
228
232
|
};
|
|
229
233
|
|
|
230
234
|
// 查找展示的绑定key的wms图层
|
|
231
|
-
map.getWmsVisibleLayers = function () {
|
|
235
|
+
map.getWmsVisibleLayers = function (keys) {
|
|
232
236
|
var layers = [];
|
|
233
|
-
map.getAllLayers()
|
|
237
|
+
var allLayers = map.getAllLayers();
|
|
238
|
+
if (Array.isArray(keys) && keys !== null && keys !== void 0 && keys.length) {
|
|
239
|
+
allLayers = allLayers.filter(function (item) {
|
|
240
|
+
return keys.includes(item.key);
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
allLayers.map(function (layer) {
|
|
234
244
|
if (layer.key && layer instanceof _layer.Image && layer.get('visible')) {
|
|
235
245
|
layers.push(layer);
|
|
236
246
|
}
|
|
@@ -238,6 +248,23 @@ function Map(props) {
|
|
|
238
248
|
return layers;
|
|
239
249
|
};
|
|
240
250
|
|
|
251
|
+
// 查找展示的绑定key的wfs图层
|
|
252
|
+
map.getWfsVisibleLayers = function (keys) {
|
|
253
|
+
var layers = [];
|
|
254
|
+
var allLayers = map.getAllLayers();
|
|
255
|
+
if (Array.isArray(keys) && keys !== null && keys !== void 0 && keys.length) {
|
|
256
|
+
allLayers = allLayers.filter(function (item) {
|
|
257
|
+
return keys.includes(item.key);
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
allLayers.map(function (layer) {
|
|
261
|
+
if (layer.key && layer instanceof _layer.Vector && layer.get('visible')) {
|
|
262
|
+
layers.push(layer);
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
return layers;
|
|
266
|
+
};
|
|
267
|
+
|
|
241
268
|
// 根 keys 查找展示的图层
|
|
242
269
|
map.getVisibleLayersByKeys = function (keys) {
|
|
243
270
|
var layers = [];
|
|
@@ -280,6 +307,40 @@ function Map(props) {
|
|
|
280
307
|
setModal(null);
|
|
281
308
|
};
|
|
282
309
|
|
|
310
|
+
// 根据图层条件设置图层选中
|
|
311
|
+
map.showTemplateByFilter = /*#__PURE__*/function () {
|
|
312
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(key, field, value, _highLayerRef) {
|
|
313
|
+
var layer, obj;
|
|
314
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
315
|
+
while (1) switch (_context.prev = _context.next) {
|
|
316
|
+
case 0:
|
|
317
|
+
layer = map.getLayerByKey(key);
|
|
318
|
+
if (layer !== null && layer !== void 0 && layer.show) {
|
|
319
|
+
obj = layer.getFeatureByFieldValue(field, value);
|
|
320
|
+
if (obj !== null && obj !== void 0 && obj.then) {
|
|
321
|
+
obj.then(function (features) {
|
|
322
|
+
if (features !== null && features !== void 0 && features.length) {
|
|
323
|
+
var feature = features[0];
|
|
324
|
+
map.showTemplate(feature.feature, _highLayerRef || highLayerRef.current);
|
|
325
|
+
}
|
|
326
|
+
});
|
|
327
|
+
} else {
|
|
328
|
+
if (obj) {
|
|
329
|
+
map.showTemplate(obj, _highLayerRef || highLayerRef.current);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
case 2:
|
|
334
|
+
case "end":
|
|
335
|
+
return _context.stop();
|
|
336
|
+
}
|
|
337
|
+
}, _callee);
|
|
338
|
+
}));
|
|
339
|
+
return function (_x, _x2, _x3, _x4) {
|
|
340
|
+
return _ref.apply(this, arguments);
|
|
341
|
+
};
|
|
342
|
+
}();
|
|
343
|
+
|
|
283
344
|
// 展示看板
|
|
284
345
|
map.showTemplate = function (feature) {
|
|
285
346
|
popupRef.current.showTemplate(feature);
|
|
@@ -419,6 +480,12 @@ function Map(props) {
|
|
|
419
480
|
return (0, _Search.getMapFeatureInfoByText)(map, text);
|
|
420
481
|
};
|
|
421
482
|
|
|
483
|
+
// poi查询
|
|
484
|
+
map.poiSearch = function () {
|
|
485
|
+
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
486
|
+
return (0, _search.poiSearch)(params);
|
|
487
|
+
};
|
|
488
|
+
|
|
422
489
|
// 注册事件
|
|
423
490
|
(0, _events.registerEventLayer)(map, props);
|
|
424
491
|
function registerMapEvent(eventTarget, e) {
|
|
@@ -474,45 +541,45 @@ function Map(props) {
|
|
|
474
541
|
|
|
475
542
|
// 点击事件,通过属性传递
|
|
476
543
|
map.on('click', /*#__PURE__*/function () {
|
|
477
|
-
var
|
|
544
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(event) {
|
|
478
545
|
var feature, layers, features;
|
|
479
|
-
return _regeneratorRuntime().wrap(function
|
|
480
|
-
while (1) switch (
|
|
546
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
547
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
481
548
|
case 0:
|
|
482
549
|
registerMapEvent('onClick', event);
|
|
483
550
|
map.hideTip();
|
|
484
551
|
feature = map.getFeaturesAtPixel(event.pixel)[0];
|
|
485
552
|
if (map.analysisActive || map.toolboxActive) {
|
|
486
|
-
|
|
553
|
+
_context2.next = 14;
|
|
487
554
|
break;
|
|
488
555
|
}
|
|
489
556
|
if (feature) {
|
|
490
|
-
|
|
557
|
+
_context2.next = 10;
|
|
491
558
|
break;
|
|
492
559
|
}
|
|
493
560
|
layers = map.getWmsVisibleLayers();
|
|
494
|
-
|
|
561
|
+
_context2.next = 8;
|
|
495
562
|
return (0, _layer2.getWMSFeatureInfoByLayers)(event, map, layers);
|
|
496
563
|
case 8:
|
|
497
|
-
features =
|
|
564
|
+
features = _context2.sent;
|
|
498
565
|
if (features !== null && features !== void 0 && features.length) {
|
|
499
566
|
feature = features[0];
|
|
500
567
|
}
|
|
501
568
|
case 10:
|
|
502
569
|
registerEvent('onClick', feature, event);
|
|
503
570
|
map.showTemplate(feature);
|
|
504
|
-
|
|
571
|
+
_context2.next = 15;
|
|
505
572
|
break;
|
|
506
573
|
case 14:
|
|
507
574
|
registerEvent('onClick', feature, event);
|
|
508
575
|
case 15:
|
|
509
576
|
case "end":
|
|
510
|
-
return
|
|
577
|
+
return _context2.stop();
|
|
511
578
|
}
|
|
512
|
-
},
|
|
579
|
+
}, _callee2);
|
|
513
580
|
}));
|
|
514
|
-
return function (
|
|
515
|
-
return
|
|
581
|
+
return function (_x5) {
|
|
582
|
+
return _ref2.apply(this, arguments);
|
|
516
583
|
};
|
|
517
584
|
}());
|
|
518
585
|
|
|
@@ -575,7 +642,8 @@ function Map(props) {
|
|
|
575
642
|
}, positionStyle)
|
|
576
643
|
})), mapLoaded && /*#__PURE__*/_react["default"].createElement(_provider["default"], {
|
|
577
644
|
value: {
|
|
578
|
-
map: mapRef.current
|
|
645
|
+
map: mapRef.current,
|
|
646
|
+
showModal: props.showModal
|
|
579
647
|
}
|
|
580
648
|
}, /*#__PURE__*/_react["default"].createElement(_Popup["default"], {
|
|
581
649
|
map: mapRef.current,
|