@vtx/ol-map 1.0.144 → 1.0.146

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.
Files changed (512) hide show
  1. package/README.md +205 -205
  2. package/lib/_util/EventEmitter.js +80 -0
  3. package/lib/_util/EventEmitter.js.map +1 -0
  4. package/lib/_util/StyleCache.js +48 -0
  5. package/lib/_util/StyleCache.js.map +1 -0
  6. package/lib/_util/encryptParams.js +65 -0
  7. package/lib/_util/encryptParams.js.map +1 -0
  8. package/lib/_util/filterSpecialCharacters.js +90 -0
  9. package/lib/_util/filterSpecialCharacters.js.map +1 -0
  10. package/lib/_util/getComponentProps.js +14 -0
  11. package/lib/_util/getComponentProps.js.map +1 -0
  12. package/lib/_util/getCookie.js +25 -0
  13. package/lib/_util/getCookie.js.map +1 -0
  14. package/lib/_util/getDefaultMapInfo.js +51 -0
  15. package/lib/_util/getDefaultMapInfo.js.map +1 -0
  16. package/lib/_util/getSystemInfo.js +27 -0
  17. package/lib/_util/getSystemInfo.js.map +1 -0
  18. package/lib/_util/getToken.js +29 -0
  19. package/lib/_util/getToken.js.map +1 -0
  20. package/lib/_util/getUrlParam.js +16 -0
  21. package/lib/_util/getUrlParam.js.map +1 -0
  22. package/lib/_util/http.js +178 -0
  23. package/lib/_util/http.js.map +1 -0
  24. package/lib/_util/isFunction.js +10 -0
  25. package/lib/_util/isFunction.js.map +1 -0
  26. package/lib/_util/isObject.js +10 -0
  27. package/lib/_util/isObject.js.map +1 -0
  28. package/lib/_util/layer.js +156 -0
  29. package/lib/_util/layer.js.map +1 -0
  30. package/lib/_util/mapTool.js +189 -0
  31. package/lib/_util/mapTool.js.map +1 -0
  32. package/lib/_util/projzh/datum/bd-09.js +45 -0
  33. package/lib/_util/projzh/datum/bd-09.js.map +1 -0
  34. package/lib/_util/projzh/datum/gcj-02.js +73 -0
  35. package/lib/_util/projzh/datum/gcj-02.js.map +1 -0
  36. package/lib/_util/projzh/datum/index.js +15 -0
  37. package/lib/_util/projzh/datum/index.js.map +1 -0
  38. package/lib/_util/projzh/index.js +41 -0
  39. package/lib/_util/projzh/index.js.map +1 -0
  40. package/lib/_util/projzh/projection/baidu-mercator.js +75 -0
  41. package/lib/_util/projzh/projection/baidu-mercator.js.map +1 -0
  42. package/lib/_util/projzh/projection/index.js +15 -0
  43. package/lib/_util/projzh/projection/index.js.map +1 -0
  44. package/lib/_util/projzh/projection/spherical-mercator.js +26 -0
  45. package/lib/_util/projzh/projection/spherical-mercator.js.map +1 -0
  46. package/lib/_util/projzh/util.js +28 -0
  47. package/lib/_util/projzh/util.js.map +1 -0
  48. package/lib/_util/search.js +133 -0
  49. package/lib/_util/search.js.map +1 -0
  50. package/lib/_util/setCookie.js +16 -0
  51. package/lib/_util/setCookie.js.map +1 -0
  52. package/lib/_util/stringToFun.js +25 -0
  53. package/lib/_util/stringToFun.js.map +1 -0
  54. package/lib/_util/transform.js +170 -0
  55. package/lib/_util/transform.js.map +1 -0
  56. package/lib/_util/useColSize.js +29 -0
  57. package/lib/_util/useColSize.js.map +1 -0
  58. package/lib/_util/useInterval.js +19 -0
  59. package/lib/_util/useInterval.js.map +1 -0
  60. package/lib/_util/useSet.js +45 -0
  61. package/lib/_util/useSet.js.map +1 -0
  62. package/lib/analysis-layer/index.js +455 -0
  63. package/lib/analysis-layer/index.js.map +1 -0
  64. package/lib/analysis-layer/style/css.js +2 -0
  65. package/lib/analysis-layer/style/css.js.map +1 -0
  66. package/lib/analysis-layer/style/index.js +2 -0
  67. package/lib/analysis-layer/style/index.js.map +1 -0
  68. package/lib/assets/arrow.png +0 -0
  69. package/lib/assets/base-img-1.png +0 -0
  70. package/lib/assets/base-img-2.png +0 -0
  71. package/lib/assets/base-img-3.png +0 -0
  72. package/lib/assets/base-img-4.png +0 -0
  73. package/lib/assets/base-img-5.png +0 -0
  74. package/lib/assets/base-img-6.png +0 -0
  75. package/lib/assets/base-img.png +0 -0
  76. package/lib/assets/bz.png +0 -0
  77. package/lib/assets/img.png +0 -0
  78. package/lib/assets/kz.png +0 -0
  79. package/lib/assets/ll.png +0 -0
  80. package/lib/assets/location.png +0 -0
  81. package/lib/assets/noLocation.png +0 -0
  82. package/lib/assets/people.png +0 -0
  83. package/lib/assets/qd.png +0 -0
  84. package/lib/assets/sw.png +0 -0
  85. package/lib/assets/yl.png +0 -0
  86. package/lib/assets/zd.png +0 -0
  87. package/lib/buffer-draw/BufferDraw.js +400 -0
  88. package/lib/buffer-draw/BufferDraw.js.map +1 -0
  89. package/lib/buffer-draw/index.js +57 -0
  90. package/lib/buffer-draw/index.js.map +1 -0
  91. package/lib/buffer-draw/style/css.js +2 -0
  92. package/lib/buffer-draw/style/css.js.map +1 -0
  93. package/lib/buffer-draw/style/index.js +2 -0
  94. package/lib/buffer-draw/style/index.js.map +1 -0
  95. package/lib/circle/Circle.js +53 -0
  96. package/lib/circle/Circle.js.map +1 -0
  97. package/lib/circle/index.js +65 -0
  98. package/lib/circle/index.js.map +1 -0
  99. package/lib/circle/style/css.js +2 -0
  100. package/lib/circle/style/css.js.map +1 -0
  101. package/lib/circle/style/index.js +2 -0
  102. package/lib/circle/style/index.js.map +1 -0
  103. package/lib/config.js +13 -0
  104. package/lib/config.js.map +1 -0
  105. package/lib/convertCamelToCSS.js +24 -0
  106. package/lib/convertCamelToCSS.js.map +1 -0
  107. package/lib/dom/Dom.js +41 -0
  108. package/lib/dom/Dom.js.map +1 -0
  109. package/lib/dom/index.js +62 -0
  110. package/lib/dom/index.js.map +1 -0
  111. package/lib/dom/style/css.js +2 -0
  112. package/lib/dom/style/css.js.map +1 -0
  113. package/lib/dom/style/index.js +2 -0
  114. package/lib/dom/style/index.js.map +1 -0
  115. package/lib/events/index.js +27 -0
  116. package/lib/events/index.js.map +1 -0
  117. package/lib/feature-draw/FeatureDraw.js +236 -0
  118. package/lib/feature-draw/FeatureDraw.js.map +1 -0
  119. package/lib/feature-draw/index.js +73 -0
  120. package/lib/feature-draw/index.js.map +1 -0
  121. package/lib/feature-draw/style/css.js +2 -0
  122. package/lib/feature-draw/style/css.js.map +1 -0
  123. package/lib/feature-draw/style/index.js +2 -0
  124. package/lib/feature-draw/style/index.js.map +1 -0
  125. package/lib/feature-layer/FeatureLayer.js +1040 -0
  126. package/lib/feature-layer/FeatureLayer.js.map +1 -0
  127. package/lib/feature-layer/MyCluster.js +153 -0
  128. package/lib/feature-layer/MyCluster.js.map +1 -0
  129. package/lib/feature-layer/createFeatureCollection.js +175 -0
  130. package/lib/feature-layer/createFeatureCollection.js.map +1 -0
  131. package/lib/feature-layer/index.js +155 -0
  132. package/lib/feature-layer/index.js.map +1 -0
  133. package/lib/feature-layer/style/css.js +4 -0
  134. package/lib/feature-layer/style/css.js.map +1 -0
  135. package/lib/feature-layer/style/index.css +0 -0
  136. package/lib/feature-layer/style/index.js +4 -0
  137. package/lib/feature-layer/style/index.js.map +1 -0
  138. package/lib/feature-layer/style/index.less +0 -0
  139. package/lib/flow-line-layer/FlowLineLayer.js +200 -0
  140. package/lib/flow-line-layer/FlowLineLayer.js.map +1 -0
  141. package/lib/flow-line-layer/index.js +127 -0
  142. package/lib/flow-line-layer/index.js.map +1 -0
  143. package/lib/flow-line-layer/style/css.js +4 -0
  144. package/lib/flow-line-layer/style/css.js.map +1 -0
  145. package/lib/flow-line-layer/style/index.css +0 -0
  146. package/lib/flow-line-layer/style/index.js +4 -0
  147. package/lib/flow-line-layer/style/index.js.map +1 -0
  148. package/lib/flow-line-layer/style/index.less +0 -0
  149. package/lib/fly-line-layer/FlyLineLayer.js +220 -0
  150. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -0
  151. package/lib/fly-line-layer/index.js +110 -0
  152. package/lib/fly-line-layer/index.js.map +1 -0
  153. package/lib/fly-line-layer/style/css.js +4 -0
  154. package/lib/fly-line-layer/style/css.js.map +1 -0
  155. package/lib/fly-line-layer/style/index.css +0 -0
  156. package/lib/fly-line-layer/style/index.js +4 -0
  157. package/lib/fly-line-layer/style/index.js.map +1 -0
  158. package/lib/fly-line-layer/style/index.less +0 -0
  159. package/lib/group-layer/GroupLayer.js +134 -0
  160. package/lib/group-layer/GroupLayer.js.map +1 -0
  161. package/lib/group-layer/index.js +74 -0
  162. package/lib/group-layer/index.js.map +1 -0
  163. package/lib/group-layer/style/css.js +4 -0
  164. package/lib/group-layer/style/css.js.map +1 -0
  165. package/lib/group-layer/style/index.css +0 -0
  166. package/lib/group-layer/style/index.js +4 -0
  167. package/lib/group-layer/style/index.js.map +1 -0
  168. package/lib/group-layer/style/index.less +0 -0
  169. package/lib/heatmap-layer/HeatmapLayer.js +192 -0
  170. package/lib/heatmap-layer/HeatmapLayer.js.map +1 -0
  171. package/lib/heatmap-layer/index.js +94 -0
  172. package/lib/heatmap-layer/index.js.map +1 -0
  173. package/lib/heatmap-layer/style/css.js +4 -0
  174. package/lib/heatmap-layer/style/css.js.map +1 -0
  175. package/lib/heatmap-layer/style/index.css +0 -0
  176. package/lib/heatmap-layer/style/index.js +4 -0
  177. package/lib/heatmap-layer/style/index.js.map +1 -0
  178. package/lib/heatmap-layer/style/index.less +0 -0
  179. package/lib/high-layer/HighLayer.js +201 -0
  180. package/lib/high-layer/HighLayer.js.map +1 -0
  181. package/lib/high-layer/index.js +46 -0
  182. package/lib/high-layer/index.js.map +1 -0
  183. package/lib/high-layer/style/css.js +2 -0
  184. package/lib/high-layer/style/css.js.map +1 -0
  185. package/lib/high-layer/style/index.js +2 -0
  186. package/lib/high-layer/style/index.js.map +1 -0
  187. package/lib/image-layer/ImageLayer.js +332 -0
  188. package/lib/image-layer/ImageLayer.js.map +1 -0
  189. package/lib/image-layer/ImageTileLayer.js +334 -0
  190. package/lib/image-layer/ImageTileLayer.js.map +1 -0
  191. package/lib/image-layer/index.js +101 -0
  192. package/lib/image-layer/index.js.map +1 -0
  193. package/lib/image-layer/style/css.js +4 -0
  194. package/lib/image-layer/style/css.js.map +1 -0
  195. package/lib/image-layer/style/index.css +0 -0
  196. package/lib/image-layer/style/index.js +4 -0
  197. package/lib/image-layer/style/index.js.map +1 -0
  198. package/lib/image-layer/style/index.less +0 -0
  199. package/lib/index.js +201 -0
  200. package/lib/index.js.map +1 -0
  201. package/lib/legend/index.js +255 -0
  202. package/lib/legend/index.js.map +1 -0
  203. package/lib/legend/style/css.js +8 -0
  204. package/lib/legend/style/css.js.map +1 -0
  205. package/lib/legend/style/index.css +109 -0
  206. package/lib/legend/style/index.js +8 -0
  207. package/lib/legend/style/index.js.map +1 -0
  208. package/lib/legend/style/index.less +100 -0
  209. package/lib/map/Analysis.js +151 -0
  210. package/lib/map/Analysis.js.map +1 -0
  211. package/lib/map/Layers.js +341 -0
  212. package/lib/map/Layers.js.map +1 -0
  213. package/lib/map/Popup.js +372 -0
  214. package/lib/map/Popup.js.map +1 -0
  215. package/lib/map/ScaleDenominator.js +70 -0
  216. package/lib/map/ScaleDenominator.js.map +1 -0
  217. package/lib/map/Test.js +146 -0
  218. package/lib/map/Test.js.map +1 -0
  219. package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js +164 -0
  220. package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js.map +1 -0
  221. package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +85 -0
  222. package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -0
  223. package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js +67 -0
  224. package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js.map +1 -0
  225. package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js +86 -0
  226. package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js.map +1 -0
  227. package/lib/map/getBaseLayers/index.js +48 -0
  228. package/lib/map/getBaseLayers/index.js.map +1 -0
  229. package/lib/map/index.js +823 -0
  230. package/lib/map/index.js.map +1 -0
  231. package/lib/map/style/css.js +5 -0
  232. package/lib/map/style/css.js.map +1 -0
  233. package/lib/map/style/index.css +171 -0
  234. package/lib/map/style/index.js +5 -0
  235. package/lib/map/style/index.js.map +1 -0
  236. package/lib/map/style/index.less +152 -0
  237. package/lib/map-icon/svg/index.js +82 -0
  238. package/lib/map-icon/svg/index.js.map +1 -0
  239. package/lib/map-icon/svg/tuceng.svg.js +2 -0
  240. package/lib/map-icon/svg/tuceng.svg.js.map +1 -0
  241. package/lib/marker/Marker.js +108 -0
  242. package/lib/marker/Marker.js.map +1 -0
  243. package/lib/marker/index.js +62 -0
  244. package/lib/marker/index.js.map +1 -0
  245. package/lib/marker/style/css.js +2 -0
  246. package/lib/marker/style/css.js.map +1 -0
  247. package/lib/marker/style/index.js +2 -0
  248. package/lib/marker/style/index.js.map +1 -0
  249. package/lib/path-line-layer/PathLineLayer.js +47 -0
  250. package/lib/path-line-layer/PathLineLayer.js.map +1 -0
  251. package/lib/path-line-layer/getPathLineStyles.js +72 -0
  252. package/lib/path-line-layer/getPathLineStyles.js.map +1 -0
  253. package/lib/path-line-layer/index.js +152 -0
  254. package/lib/path-line-layer/index.js.map +1 -0
  255. package/lib/path-line-layer/style/css.js +4 -0
  256. package/lib/path-line-layer/style/css.js.map +1 -0
  257. package/lib/path-line-layer/style/index.css +0 -0
  258. package/lib/path-line-layer/style/index.js +4 -0
  259. package/lib/path-line-layer/style/index.js.map +1 -0
  260. package/lib/path-line-layer/style/index.less +0 -0
  261. package/lib/path-play-back/PathPlayBack.js +677 -0
  262. package/lib/path-play-back/PathPlayBack.js.map +1 -0
  263. package/lib/path-play-back/index.js +76 -0
  264. package/lib/path-play-back/index.js.map +1 -0
  265. package/lib/path-play-back/style/css.js +2 -0
  266. package/lib/path-play-back/style/css.js.map +1 -0
  267. package/lib/path-play-back/style/index.js +2 -0
  268. package/lib/path-play-back/style/index.js.map +1 -0
  269. package/lib/poi-search/Location.js +63 -0
  270. package/lib/poi-search/Location.js.map +1 -0
  271. package/lib/poi-search/PoiList.js +116 -0
  272. package/lib/poi-search/PoiList.js.map +1 -0
  273. package/lib/poi-search/Search.js +208 -0
  274. package/lib/poi-search/Search.js.map +1 -0
  275. package/lib/poi-search/index.js +174 -0
  276. package/lib/poi-search/index.js.map +1 -0
  277. package/lib/poi-search/style/css.js +8 -0
  278. package/lib/poi-search/style/css.js.map +1 -0
  279. package/lib/poi-search/style/index.css +96 -0
  280. package/lib/poi-search/style/index.js +8 -0
  281. package/lib/poi-search/style/index.js.map +1 -0
  282. package/lib/poi-search/style/index.less +97 -0
  283. package/lib/point/Point.js +59 -0
  284. package/lib/point/Point.js.map +1 -0
  285. package/lib/point/index.js +62 -0
  286. package/lib/point/index.js.map +1 -0
  287. package/lib/point/style/css.js +2 -0
  288. package/lib/point/style/css.js.map +1 -0
  289. package/lib/point/style/index.js +2 -0
  290. package/lib/point/style/index.js.map +1 -0
  291. package/lib/polygon/Polygon.js +53 -0
  292. package/lib/polygon/Polygon.js.map +1 -0
  293. package/lib/polygon/index.js +62 -0
  294. package/lib/polygon/index.js.map +1 -0
  295. package/lib/polygon/style/css.js +2 -0
  296. package/lib/polygon/style/css.js.map +1 -0
  297. package/lib/polygon/style/index.js +2 -0
  298. package/lib/polygon/style/index.js.map +1 -0
  299. package/lib/polyline/Polyline.js +53 -0
  300. package/lib/polyline/Polyline.js.map +1 -0
  301. package/lib/polyline/index.js +62 -0
  302. package/lib/polyline/index.js.map +1 -0
  303. package/lib/polyline/style/css.js +2 -0
  304. package/lib/polyline/style/css.js.map +1 -0
  305. package/lib/polyline/style/index.js +2 -0
  306. package/lib/polyline/style/index.js.map +1 -0
  307. package/lib/popup/index.js +204 -0
  308. package/lib/popup/index.js.map +1 -0
  309. package/lib/popup/style/css.js +4 -0
  310. package/lib/popup/style/css.js.map +1 -0
  311. package/lib/popup/style/index.css +131 -0
  312. package/lib/popup/style/index.js +4 -0
  313. package/lib/popup/style/index.js.map +1 -0
  314. package/lib/popup/style/index.less +129 -0
  315. package/lib/provider/index.js +14 -0
  316. package/lib/provider/index.js.map +1 -0
  317. package/lib/provider/style/css.js +2 -0
  318. package/lib/provider/style/css.js.map +1 -0
  319. package/lib/provider/style/index.js +2 -0
  320. package/lib/provider/style/index.js.map +1 -0
  321. package/lib/renderer/Fill.js +39 -0
  322. package/lib/renderer/Fill.js.map +1 -0
  323. package/lib/renderer/Stroke.js +41 -0
  324. package/lib/renderer/Stroke.js.map +1 -0
  325. package/lib/renderer/index.js +140 -0
  326. package/lib/renderer/index.js.map +1 -0
  327. package/lib/renderer/style/css.js +4 -0
  328. package/lib/renderer/style/css.js.map +1 -0
  329. package/lib/renderer/style/index.css +0 -0
  330. package/lib/renderer/style/index.js +4 -0
  331. package/lib/renderer/style/index.js.map +1 -0
  332. package/lib/renderer/style/index.less +0 -0
  333. package/lib/renderer/transformRgb.js +34 -0
  334. package/lib/renderer/transformRgb.js.map +1 -0
  335. package/lib/search-map/VtxModal.js +205 -0
  336. package/lib/search-map/VtxModal.js.map +1 -0
  337. package/lib/search-map/index.js +418 -0
  338. package/lib/search-map/index.js.map +1 -0
  339. package/lib/search-map/style/css.js +6 -0
  340. package/lib/search-map/style/css.js.map +1 -0
  341. package/lib/search-map/style/index.css +73 -0
  342. package/lib/search-map/style/index.js +6 -0
  343. package/lib/search-map/style/index.js.map +1 -0
  344. package/lib/search-map/style/index.less +83 -0
  345. package/lib/search-map/style/modal.css +54 -0
  346. package/lib/search-map/style/modal.less +58 -0
  347. package/lib/style/index.css +0 -0
  348. package/lib/style/index.less +2 -0
  349. package/lib/style/themes/compact.css +0 -0
  350. package/lib/style/themes/compact.less +1 -0
  351. package/lib/style/themes/dark.css +0 -0
  352. package/lib/style/themes/dark.less +9 -0
  353. package/lib/style/themes/default.css +0 -0
  354. package/lib/style/themes/default.less +7 -0
  355. package/lib/style/themes/index.css +0 -0
  356. package/lib/style/themes/index.less +1 -0
  357. package/lib/style/themes/variable.css +0 -0
  358. package/lib/style/themes/variable.less +5 -0
  359. package/lib/tile-layer/TileLayer.js +88 -0
  360. package/lib/tile-layer/TileLayer.js.map +1 -0
  361. package/lib/tile-layer/index.js +53 -0
  362. package/lib/tile-layer/index.js.map +1 -0
  363. package/lib/tile-layer/style/css.js +4 -0
  364. package/lib/tile-layer/style/css.js.map +1 -0
  365. package/lib/tile-layer/style/index.css +0 -0
  366. package/lib/tile-layer/style/index.js +4 -0
  367. package/lib/tile-layer/style/index.js.map +1 -0
  368. package/lib/tile-layer/style/index.less +0 -0
  369. package/lib/tools/Layer/LayerService.js +183 -0
  370. package/lib/tools/Layer/LayerService.js.map +1 -0
  371. package/lib/tools/Layer/LayersCheckService.js +195 -0
  372. package/lib/tools/Layer/LayersCheckService.js.map +1 -0
  373. package/lib/tools/Layer/index.css +50 -0
  374. package/lib/tools/Layer/index.js +226 -0
  375. package/lib/tools/Layer/index.js.map +1 -0
  376. package/lib/tools/Layer/index.less +43 -0
  377. package/lib/tools/Search/index.js +298 -0
  378. package/lib/tools/Search/index.js.map +1 -0
  379. package/lib/tools/Toolbox/BoxSelect/index.js +20 -0
  380. package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -0
  381. package/lib/tools/Toolbox/CircleSelect/index.js +20 -0
  382. package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -0
  383. package/lib/tools/Toolbox/EagleEye/index.js +57 -0
  384. package/lib/tools/Toolbox/EagleEye/index.js.map +1 -0
  385. package/lib/tools/Toolbox/MapBookmark/Bookmark.js +153 -0
  386. package/lib/tools/Toolbox/MapBookmark/Bookmark.js.map +1 -0
  387. package/lib/tools/Toolbox/MapBookmark/index.css +18 -0
  388. package/lib/tools/Toolbox/MapBookmark/index.js +430 -0
  389. package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -0
  390. package/lib/tools/Toolbox/MapBookmark/index.less +20 -0
  391. package/lib/tools/Toolbox/MapDownload/index.js +16 -0
  392. package/lib/tools/Toolbox/MapDownload/index.js.map +1 -0
  393. package/lib/tools/Toolbox/MapPrint/index.css +4 -0
  394. package/lib/tools/Toolbox/MapPrint/index.js +234 -0
  395. package/lib/tools/Toolbox/MapPrint/index.js.map +1 -0
  396. package/lib/tools/Toolbox/MapPrint/index.less +4 -0
  397. package/lib/tools/Toolbox/Measure/Area/index.js +17 -0
  398. package/lib/tools/Toolbox/Measure/Area/index.js.map +1 -0
  399. package/lib/tools/Toolbox/Measure/Distance/index.js +17 -0
  400. package/lib/tools/Toolbox/Measure/Distance/index.js.map +1 -0
  401. package/lib/tools/Toolbox/Measure/Measure.js +229 -0
  402. package/lib/tools/Toolbox/Measure/Measure.js.map +1 -0
  403. package/lib/tools/Toolbox/Measure/index.js +77 -0
  404. package/lib/tools/Toolbox/Measure/index.js.map +1 -0
  405. package/lib/tools/Toolbox/PolygonSelect/index.js +20 -0
  406. package/lib/tools/Toolbox/PolygonSelect/index.js.map +1 -0
  407. package/lib/tools/Toolbox/ScaleLine/index.js +59 -0
  408. package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -0
  409. package/lib/tools/Toolbox/SelectTools/index.css +103 -0
  410. package/lib/tools/Toolbox/SelectTools/index.js +779 -0
  411. package/lib/tools/Toolbox/SelectTools/index.js.map +1 -0
  412. package/lib/tools/Toolbox/SelectTools/index.less +87 -0
  413. package/lib/tools/Toolbox/SpaceQuery/index.css +19 -0
  414. package/lib/tools/Toolbox/SpaceQuery/index.js +593 -0
  415. package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -0
  416. package/lib/tools/Toolbox/SpaceQuery/index.less +16 -0
  417. package/lib/tools/Toolbox/ZoomInput/index.css +6 -0
  418. package/lib/tools/Toolbox/ZoomInput/index.js +50 -0
  419. package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -0
  420. package/lib/tools/Toolbox/ZoomInput/index.less +6 -0
  421. package/lib/tools/Toolbox/index.css +0 -0
  422. package/lib/tools/Toolbox/index.js +172 -0
  423. package/lib/tools/Toolbox/index.js.map +1 -0
  424. package/lib/tools/Toolbox/index.less +2 -0
  425. package/lib/tools/Utils/CreateOverlay.js +47 -0
  426. package/lib/tools/Utils/CreateOverlay.js.map +1 -0
  427. package/lib/tools/Utils/Draw.js +130 -0
  428. package/lib/tools/Utils/Draw.js.map +1 -0
  429. package/lib/tools/Utils/HighLayer.js +213 -0
  430. package/lib/tools/Utils/HighLayer.js.map +1 -0
  431. package/lib/tools/Utils/measure.js +247 -0
  432. package/lib/tools/Utils/measure.js.map +1 -0
  433. package/lib/tools/Utils/utils.js +272 -0
  434. package/lib/tools/Utils/utils.js.map +1 -0
  435. package/lib/tools/View/index.css +35 -0
  436. package/lib/tools/View/index.js +166 -0
  437. package/lib/tools/View/index.js.map +1 -0
  438. package/lib/tools/View/index.less +28 -0
  439. package/lib/tools/analysis-tool/index.js +113 -0
  440. package/lib/tools/analysis-tool/index.js.map +1 -0
  441. package/lib/tools/base-map-switch/index.js +150 -0
  442. package/lib/tools/base-map-switch/index.js.map +1 -0
  443. package/lib/tools/components/Chart/index.js +828 -0
  444. package/lib/tools/components/Chart/index.js.map +1 -0
  445. package/lib/tools/components/Icon/index.js +32 -0
  446. package/lib/tools/components/Icon/index.js.map +1 -0
  447. package/lib/tools/components/Info/index.css +39 -0
  448. package/lib/tools/components/Info/index.js +35 -0
  449. package/lib/tools/components/Info/index.js.map +1 -0
  450. package/lib/tools/components/Info/index.less +26 -0
  451. package/lib/tools/components/ItemWrap/index.css +43 -0
  452. package/lib/tools/components/ItemWrap/index.js +48 -0
  453. package/lib/tools/components/ItemWrap/index.js.map +1 -0
  454. package/lib/tools/components/ItemWrap/index.less +41 -0
  455. package/lib/tools/components/Modal/index.css +42 -0
  456. package/lib/tools/components/Modal/index.js +46 -0
  457. package/lib/tools/components/Modal/index.js.map +1 -0
  458. package/lib/tools/components/Modal/index.less +33 -0
  459. package/lib/tools/components/MyTabs/index.js +22 -0
  460. package/lib/tools/components/MyTabs/index.js.map +1 -0
  461. package/lib/tools/components/RequiredLabel/index.css +5 -0
  462. package/lib/tools/components/RequiredLabel/index.js +32 -0
  463. package/lib/tools/components/RequiredLabel/index.js.map +1 -0
  464. package/lib/tools/components/RequiredLabel/index.less +5 -0
  465. package/lib/tools/components/Select/index.js +33 -0
  466. package/lib/tools/components/Select/index.js.map +1 -0
  467. package/lib/tools/components/Table/assets/tableIcon.png +0 -0
  468. package/lib/tools/components/Table/index.css +10 -0
  469. package/lib/tools/components/Table/index.js +91 -0
  470. package/lib/tools/components/Table/index.js.map +1 -0
  471. package/lib/tools/components/Table/index.less +13 -0
  472. package/lib/tools/components/ToolItem/index.css +30 -0
  473. package/lib/tools/components/ToolItem/index.js +29 -0
  474. package/lib/tools/components/ToolItem/index.js.map +1 -0
  475. package/lib/tools/components/ToolItem/index.less +27 -0
  476. package/lib/tools/components/ToolsSelect/index.css +15 -0
  477. package/lib/tools/components/ToolsSelect/index.js +45 -0
  478. package/lib/tools/components/ToolsSelect/index.js.map +1 -0
  479. package/lib/tools/components/ToolsSelect/index.less +10 -0
  480. package/lib/tools/full-screen/index.js +47 -0
  481. package/lib/tools/full-screen/index.js.map +1 -0
  482. package/lib/tools/index.js +151 -0
  483. package/lib/tools/index.js.map +1 -0
  484. package/lib/tools/layer-control/index.js +173 -0
  485. package/lib/tools/layer-control/index.js.map +1 -0
  486. package/lib/tools/refresh/index.js +41 -0
  487. package/lib/tools/refresh/index.js.map +1 -0
  488. package/lib/tools/style/css.js +22 -0
  489. package/lib/tools/style/css.js.map +1 -0
  490. package/lib/tools/style/index.css +136 -0
  491. package/lib/tools/style/index.js +22 -0
  492. package/lib/tools/style/index.js.map +1 -0
  493. package/lib/tools/style/index.less +154 -0
  494. package/lib/tools-item/index.js +67 -0
  495. package/lib/tools-item/index.js.map +1 -0
  496. package/lib/use-props/index.js +15 -0
  497. package/lib/use-props/index.js.map +1 -0
  498. package/lib/use-props/style/css.js +2 -0
  499. package/lib/use-props/style/css.js.map +1 -0
  500. package/lib/use-props/style/index.js +2 -0
  501. package/lib/use-props/style/index.js.map +1 -0
  502. package/lib/wms-layer/WmsLayer.js +315 -0
  503. package/lib/wms-layer/WmsLayer.js.map +1 -0
  504. package/lib/wms-layer/index.js +98 -0
  505. package/lib/wms-layer/index.js.map +1 -0
  506. package/lib/wms-layer/style/css.js +4 -0
  507. package/lib/wms-layer/style/css.js.map +1 -0
  508. package/lib/wms-layer/style/index.css +0 -0
  509. package/lib/wms-layer/style/index.js +4 -0
  510. package/lib/wms-layer/style/index.js.map +1 -0
  511. package/lib/wms-layer/style/index.less +0 -0
  512. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureLayer.js","names":["_layer","require","_ol","_source","_renderer","_interopRequireDefault","_style6","_isFunction","_createFeatureCollection","_isObject","_encryptParams","_stringToFun","_convertCamelToCSS","_MyCluster","_Marker","_excluded","_excluded2","_excluded3","_excluded4","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","_typeof","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","configurable","writable","_toPropertyKey","_createClass","protoProps","staticProps","_get","Reflect","get","bind","property","receiver","base","_superPropBase","desc","value","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","set","_set","isStrict","s","hasOwnProperty","getPrototypeOf","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","addOverlay","feature","map","alarmBg","itemVal","find","v","values_","image","style","dom","document","createElement","src","className","cssText","overlay","Overlay","element","positioning","stopEvent","setPosition","getGeometry","getCoordinates","FeatureLayer","_Vector","_super","options","_thisSuper","_this2","url","params","data","dataField","features","sourceOptions","label","labelField","point","cluster","template","autoRefresh","method","layerControl","show","group","iconOptions","afterGetData","legend","viewOnly","encrypt","valueField","tipTemplate","cancelPopup","other","VectorSource","defaultShow","f","stringToFun","size","_ref","color","background","backgroundStroke","backgroundStrokeWidth","otherVal","text","font","fill","Fill","padding","justify","textAlign","textBaseline","offsetY","offsetX","backgroundFill","Stroke","width","Text","_options","isCluster","_feature$get","distance","inited","item","convertCamelToCSS","_features","init","loadUrlData","loadData","setVisible","val","setStyle","getStyleByMode","setClusterMode","setShow","_this3","_ref2","isObject","setClusterSource","destroy","oldZoom","getView","getZoom","moveEnd","on","zoom","_this3$_options$clust","zoomThreshold","getCustomClusterStyle","clusterStyle","_feature$get2","type","iconSrc","_clusterStyle$scale","scale","numberStyle","renderer","Marker","getImgUrl","hideFooter","info","fontSize","getClusterTextStyle","anchor","_this4","resolution","_feature$get3","_this4$group","_cluster$style","_this4$_options","otherStyle","_v$filter","styles","isFunction","_styles","getMarkerOptions","Style","_style","getSimpleStyle","Simple","_style3","mode","render","getMultipleStyle","UniqueValue","ClassBreaks","Circle","radius","stroke","_render","_render$style","_render$style2","icon","_render$render","_this5","_feature$get4","iconSize","_this$_options","isFun","_data","_data$style","_data2","_data3","_data3$style","_data4","_data5","_data5$style","_data6","_data7","_data7$style","_data8","_data9","_data9$style","_data10","_data11","_data11$style","_data12","P","marker","marker_cluster","commonStyle","point_cluster","_Object$keys","includes","_data13","customText","getLabelStyle","_cluster$style2","_this$_features","_this6","_this","_cluster","minDistance","clusterSource","Cluster","clusterChange","setAlarmBgByFeatures","createCluster","_group","Feature","geometry","layerKey","_group2","_groupItem","_groupItem$clusterSty","groupItem","_v$filter2","markerStyle","_style4","_markerStyle2","_cluster2","_markerStyle","setProperties","setSource","clearAlarmBg","_this$overlays","_this7","overlays","removeOverlay","_this8","_feature","refresh","_this9","getDataByHttpByParams","field","then","new_features","newFeatures","getFeatureByFieldValue","id","getSource","addFeatures","getFeatures","changed","clear","createGeoJson","_this10","encryptParams","loadFeatures","getFeaturesByFieldValueOpera","_ref3","_this11","_ref3$operation","operation","Promise","resolve","reject","fun","Function","concat","err","_v$values_$field","_v$values_$field2","_v$values_$field3","getMap","setGroup","_this$_features2","_v$filter3","setVisibleByGroup","visible","layers","onChange","clearMoveEnd","un","Vector","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import { Vector } from 'ol/layer';\nimport { Feature, Overlay } from 'ol';\nimport { Vector as VectorSource } from 'ol/source';\nimport renderer from '../renderer';\nimport { Fill, Style, Text, Stroke, Circle } from 'ol/style';\nimport isFunction from '../_util/isFunction';\nimport { getDataByHttpByParams, createGeoJson } from './createFeatureCollection';\nimport isObject from '../_util/isObject';\nimport encryptParams from '../_util/encryptParams';\nimport stringToFun from '../_util/stringToFun';\nimport convertCamelToCSS from '../convertCamelToCSS';\nimport Cluster from './MyCluster';\nimport { getImgUrl } from '../marker/Marker';\n\nconst addOverlay = (feature, map, alarmBg) => {\n if (alarmBg) {\n let itemVal = alarmBg.find(v => v.filter(feature.values_));\n if (itemVal) {\n let { image, style } = itemVal;\n let dom;\n if (image) {\n dom = document.createElement('img');\n dom.src = image;\n } else {\n dom = document.createElement('div');\n dom.className = `ol-map-icon-alarm`;\n }\n\n if (style) {\n dom.style.cssText = style;\n }\n\n const overlay = new Overlay({\n element: dom,\n positioning: 'bottom-center',\n stopEvent: true,\n className: 'ol-overlay_container-stop_event',\n });\n\n map.addOverlay(overlay);\n\n overlay.setPosition(feature.getGeometry().getCoordinates());\n\n return overlay;\n }\n }\n};\n\nclass FeatureLayer extends Vector {\n constructor(options) {\n const {\n url,\n params,\n data,\n dataField,\n features,\n sourceOptions,\n key,\n name,\n label,\n labelField,\n point,\n cluster,\n template,\n autoRefresh,\n method,\n layerControl,\n show,\n style,\n group,\n iconOptions,\n afterGetData,\n legend,\n viewOnly,\n encrypt,\n valueField,\n map,\n tipTemplate,\n alarmBg,\n cancelPopup,\n ...other\n } = options;\n\n const props = {\n ...other,\n };\n props.source =\n props.source ||\n new VectorSource({\n features,\n ...sourceOptions,\n });\n\n let defaultShow = show;\n if (group?.length) {\n defaultShow = false;\n\n if (show) {\n group.map(f => {\n if (f.show) {\n defaultShow = true;\n }\n\n // 将字符函数转化为可执行的函数\n f.filter = stringToFun(f.filter);\n });\n }\n }\n\n super(props);\n super.show = show;\n // 参数\n this._options = options;\n\n // 地图\n this.map = map;\n\n // 接口地址\n this.url = url;\n\n // 接口地址请求类型\n this.method = method;\n\n // 接口查询参数\n this.params = params;\n\n // 图层标识\n this.key = key;\n\n // 图层名称\n this.name = name;\n\n // 标签\n this.label = label;\n\n // 标签字段\n this.labelField = labelField;\n\n // 聚合\n this.cluster = cluster;\n\n // 聚合距离\n this.distance = cluster?.distance || 80;\n\n // 海量点\n this.point = point;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 图层控制\n this.layerControl = layerControl;\n\n // 过滤\n this.group = group;\n\n // 处理获取的数据\n this.afterGetData = afterGetData;\n\n // 数据查询字段\n this.valueField = valueField;\n\n // 图例\n this.legend = legend;\n\n // 样式\n this.style = style;\n\n // 数据\n this.data = data;\n\n // 数据取值字段\n this.dataField = dataField || 'geometryInfo';\n\n // 仅展示\n this.viewOnly = viewOnly;\n\n // 是否初始化\n this.inited = false;\n\n // 加密\n this.encrypt = encrypt;\n\n // 气泡模板\n this.tipTemplate = tipTemplate;\n\n // 取消气泡\n this.cancelPopup = cancelPopup;\n\n // 报警背景\n if (alarmBg) {\n this.alarmBg = (Array.isArray(alarmBg) ? alarmBg : [alarmBg]).map(item => {\n let { filter, style } = item;\n filter = stringToFun(filter);\n if (style) {\n style = item.style && typeof item.style === 'object' ? style : { color: style };\n style = convertCamelToCSS(style);\n }\n return {\n ...item,\n filter,\n style,\n };\n });\n }\n\n // 临时数据\n this._features = [];\n\n // 默认是否展示\n if (defaultShow) {\n this.init();\n }\n }\n\n // 初始化数据\n init() {\n // 是否存在地址\n if (this.url) {\n // 执行\n this.loadUrlData(this.url, this.params, this.method);\n }\n\n // 直接加载数据\n if (this.data) {\n // 执行\n this.loadData(this.data);\n }\n\n this.inited = true;\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n set label(val) {\n this._options.label = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set point(val) {\n this._options.point = val;\n this.setStyle(this.getStyleByMode());\n }\n\n set cluster(val) {\n this.setClusterMode(val);\n }\n\n setShow(value) {\n this.show = value;\n this.setVisible(value);\n }\n\n setClusterMode(val) {\n const { show } = isObject(val) ? val : { show: val };\n this.setClusterSource(val);\n this.setStyle(this.getStyleByMode());\n\n if (this.map && show) {\n const map = this.map;\n this.destroy();\n\n // 监听地图缩放大于阈值时取消聚合\n let oldZoom = map.getView().getZoom();\n this.moveEnd = map.on('moveend', () => {\n const zoom = map.getView().getZoom(); //获取当前地图的缩放级别\n if (oldZoom !== zoom) {\n oldZoom = zoom;\n if (zoom >= (this._options.cluster?.zoomThreshold || 14)) {\n this.setClusterSource();\n } else {\n this.setClusterSource(val);\n }\n }\n });\n }\n }\n\n getClusterTextStyle = (size, options) => {\n const { color, background, backgroundStroke, backgroundStrokeWidth, ...otherVal } =\n options && typeof options === 'object' ? options : {};\n const style = {\n text: String(size),\n font: '18px Calibri,sans-serif',\n fill: new Fill({\n color: color || '#fff',\n }),\n padding: [0, 0, 0, 0],\n justify: 'center',\n textAlign: 'center',\n textBaseline: 'middle',\n offsetY: -22,\n offsetX: 16,\n ...otherVal,\n };\n\n if (background) {\n style.backgroundFill = new Fill({\n color: background,\n });\n }\n\n if (backgroundStroke) {\n style.backgroundStroke = new Stroke({\n color: '#FFFFFF',\n width: backgroundStrokeWidth || 2,\n });\n }\n return new Text(style);\n };\n\n getLabelStyle = (feature, color) => {\n let { labelField } = this._options;\n\n // 判断是否是聚合点位\n if (feature.isCluster) {\n const size = feature.get('features')?.length || 0;\n if (size !== 1) {\n return;\n }\n }\n if (labelField) {\n return new Text({\n text: feature.values_[labelField] || '-',\n font: '12px Calibri,sans-serif',\n fill: new Fill({\n color,\n }),\n backgroundFill: new Fill({\n color: '#fff',\n }),\n backgroundStroke: new Stroke({\n color,\n width: 1,\n }),\n padding: [4, 2, 2, 4],\n justify: 'center',\n textBaseline: 'middle',\n offsetY: 12,\n });\n }\n };\n\n getCustomClusterStyle(feature, clusterStyle) {\n const { type, iconSrc, color, scale = 1, numberStyle, ...iconOptions } = clusterStyle;\n const size = feature.get('features')?.length || 0;\n\n return [\n new renderer.Marker({\n image: getImgUrl(type || 'CommonIcon', {\n color: color || '#2491fc',\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n }),\n text: this.getClusterTextStyle(size, numberStyle),\n }),\n new renderer.Marker({\n image: iconSrc,\n scale: scale || 1,\n anchor: [1.1, 1.25],\n ...iconOptions,\n }),\n ];\n }\n\n getStyleByMode() {\n return (feature, resolution) => {\n const size = feature.get('features')?.length || 0;\n let { style, cluster, otherStyle } = this._options;\n let show = true;\n\n this.group?.map(v => {\n if (v?.filter?.(feature.values_)) {\n style = v.style || style;\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n\n if (!show) {\n return null;\n }\n\n const styles = [];\n\n if (otherStyle) {\n if (isFunction(otherStyle)) {\n const _styles = otherStyle(feature, resolution);\n if (_styles) {\n if (Array.isArray(styles)) {\n styles.push(..._styles);\n } else {\n styles.push(_styles);\n }\n }\n }\n }\n\n if (size > 1 && cluster?.style?.iconSrc) {\n return this.getCustomClusterStyle(feature, cluster.style);\n }\n if (style) {\n if (typeof style === 'string' || (isFunction(style) && cluster)) {\n styles.push(new renderer.Marker({ ...this.getMarkerOptions(feature, style) }));\n return styles;\n } else if (style instanceof Style) {\n // 判断是否为 ol Style\n styles.push(style);\n return styles;\n } else if (isFunction(style)) {\n // 判断是否为自定义函数渲染\n\n let _style = style(feature);\n if (_style?.type && _style?.style) {\n const options = this.getSimpleStyle(feature, _style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n styles.push(_style);\n return styles;\n } else if (isObject(style)) {\n let { mode } = style;\n if (mode) {\n if (mode === 'Simple') {\n const options = this.getSimpleStyle(feature, style.render);\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n if (mode === 'UniqueValue') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.UniqueValue(feature, options));\n return styles;\n }\n\n if (mode === 'ClassBreaks') {\n if (size > 1) {\n const options = this.getSimpleStyle(\n feature,\n style.render.render[0],\n );\n styles.push(renderer.Simple(options));\n return styles;\n }\n\n const options = this.getMultipleStyle(feature, style.render);\n styles.push(renderer.ClassBreaks(feature, options));\n return styles;\n }\n } else if (style.style) {\n const options = this.getSimpleStyle(feature, style);\n styles.push(renderer.Simple(options));\n return styles;\n }\n }\n }\n styles.push(\n new Style({\n image: new Circle({\n radius: 4,\n fill: new Fill({\n color: 'rgba(0,155,255, 0.8)',\n }),\n }),\n fill: new Fill({\n color: 'rgba(255, 255, 255, 0.6)',\n }),\n stroke: new Stroke({\n color: '#009BFF',\n width: 2,\n }),\n }),\n );\n return styles;\n };\n }\n\n getSimpleStyle(feature, _render) {\n let { cluster } = this._options;\n const render = { ..._render };\n if (\n render.type === 'Marker' &&\n (render?.style?.icon || (cluster && render?.style?.image))\n ) {\n render.style = {\n ...render.style,\n ...this.getMarkerOptions(feature, render.style),\n };\n }\n\n return render;\n }\n\n getMultipleStyle(feature, _render) {\n const render = { ..._render };\n\n if (render?.render?.length) {\n render.render = render.render.map(v => this.getSimpleStyle(feature, v));\n }\n\n return render;\n }\n\n getMarkerOptions(feature, style) {\n let icon = style?.icon || style;\n let image = style?.image;\n let scale = style?.scale;\n let color = style?.color || '#2491fc';\n let iconSize = style?.size || null;\n let hideFooter = style?.hideFooter || null;\n let { cluster, point, label } = this._options;\n // 判断是否为自定义函数渲染\n let isFun = isFunction(style);\n let data = {};\n if (isFun) {\n data = style(feature) || {};\n icon = data?.style?.icon || data?.icon || icon;\n color = data?.style?.color || data?.color || color;\n image = data?.style?.image || data?.image || image;\n scale = data?.style?.scale || data?.scale || scale;\n iconSize = data?.style?.size || data?.size || iconSize;\n hideFooter = data?.style?.hideFooter || data?.hideFooter || hideFooter;\n }\n\n const size = feature.get('features')?.length || 0;\n const iconOptions = {\n size: iconSize,\n hideFooter,\n };\n let P = {\n marker: {\n // 图标\n icon,\n image,\n iconOptions,\n scale,\n },\n point: {\n // 点位\n icon,\n type: 'PointIcon',\n iconOptions,\n },\n marker_cluster: {\n // 聚合图标\n icon,\n image,\n scale,\n color: size > 1 ? '' : color,\n iconOptions:\n size > 1\n ? {\n hideFooter: true,\n info: { text: '', fontSize: 18 },\n ...(cluster?.iconOptions || {}),\n }\n : {},\n ...(size > 1 ? cluster?.style : cluster?.commonStyle),\n },\n point_cluster: {\n // 聚合点位\n icon,\n type: 'PointIcon',\n iconOptions:\n size > 1\n ? {\n text: size,\n }\n : {},\n ...(size > 1 && cluster?.style),\n },\n };\n\n let type = point ? 'point' : 'marker';\n\n if (cluster) {\n if (isObject(cluster)) {\n if (cluster.show) {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n } else {\n type = 'marker_cluster';\n if (point) {\n type = 'point_cluster';\n }\n }\n }\n\n let _style = P[type];\n if (label) {\n if (Object.keys(data)?.includes('customText')) {\n _style.text = data?.customText;\n } else {\n _style.text = this.getLabelStyle(feature, color);\n }\n }\n\n if (feature.isCluster && size > 1 && type === 'marker_cluster') {\n _style.text = this.getClusterTextStyle(size, cluster?.style?.numberStyle);\n }\n\n return _style;\n }\n\n setClusterSource(cluster) {\n let _this = this;\n cluster = isObject(cluster) ? cluster : { show: cluster };\n let { show, minDistance, distance, group } = cluster;\n let source = new VectorSource({\n features: this._features?.filter(v => !v.hasOwnProperty('show') || v.show),\n });\n if (show) {\n group = group || this.group;\n let clusterSource = new Cluster({\n distance: distance || 100,\n minDistance: minDistance || 50,\n source,\n group,\n clusterChange: features => {\n this.setAlarmBgByFeatures(features);\n },\n createCluster: (point, features) => {\n let feature = new Feature({\n geometry: point,\n features: features.map(v => {\n v.layerKey = _this.key;\n return v;\n }),\n });\n\n if (group?.length) {\n let style, groupItem;\n const f = features[0];\n const size = features.length;\n group?.map(v => {\n if (v?.filter?.(f.values_)) {\n style = v.style || style;\n groupItem = v;\n }\n });\n\n // 当点位单独展示时,并且style为自定义函数\n if (size === 1 && isFunction(style)) {\n style = style(f);\n }\n\n let markerStyle = { ...style.style };\n\n if (size > 1 && groupItem?.clusterStyle?.iconSrc) {\n let _style = this.getCustomClusterStyle(\n feature,\n groupItem.clusterStyle,\n );\n feature.setStyle(_style);\n } else {\n if (size > 1) {\n if (style?.clusterStyle) {\n markerStyle = { ...style.clusterStyle };\n }\n\n const { numberStyle, iconOptions, ...otherStyle } = markerStyle;\n markerStyle = {\n ...otherStyle,\n text: this.getClusterTextStyle(\n markerStyle?.image ? size : ' ',\n numberStyle,\n ),\n iconOptions: {\n hideFooter: true,\n info: { text: size, fontSize: 18 },\n ...(iconOptions || cluster?.iconOptions || {}),\n },\n };\n }\n let _style = new renderer.Marker(markerStyle);\n feature.setStyle(_style);\n }\n }\n\n // 增加聚合点位标识\n feature.isCluster = true;\n\n if (features.length === 1) {\n feature.setProperties(features[0].values_);\n }\n\n return feature;\n },\n ...cluster,\n });\n\n this.setSource(clusterSource);\n } else {\n this.setSource(source);\n }\n }\n\n // 清除报警背景\n clearAlarmBg() {\n if (this.map && this.overlays?.length) {\n this.overlays.map(overlay => this.map.removeOverlay(overlay));\n this.overlays = null;\n }\n }\n\n // 设置报警背景\n setAlarmBgByFeatures(features) {\n this.clearAlarmBg();\n this.overlays = [];\n\n if (this.map && this.alarmBg && features?.length) {\n features.map(feature => {\n let _feature = feature;\n\n const cluster = feature.get('features');\n if (cluster) {\n _feature = cluster.length < 2 ? cluster[0] : null;\n }\n\n if (_feature && (_feature.hasOwnProperty('show') ? _feature.show : true)) {\n let overlay = addOverlay(_feature, this.map, this.alarmBg);\n if (overlay) {\n this.overlays.push(overlay);\n }\n }\n });\n }\n }\n\n refresh() {\n getDataByHttpByParams({\n url: this.url,\n params: this.params,\n method: this.method,\n afterGetData: this.afterGetData,\n field: this.dataField,\n }).then(features => {\n if (features) {\n let new_features = features;\n this._features = new_features;\n\n let newFeatures = [];\n new_features.map(v => {\n let f = this.getFeatureByFieldValue('id', v.values_.id);\n if (f) {\n f.values_ = v.values_;\n } else {\n newFeatures.push(v);\n }\n });\n\n if (newFeatures.length) {\n this.getSource().addFeatures(newFeatures);\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n\n this.getSource().changed();\n }\n });\n }\n\n loadData(data) {\n this.getSource().clear();\n let features = createGeoJson(data, this.dataField);\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\n this.getSource().clear();\n this._features = [];\n\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n\n getDataByHttpByParams({\n url,\n params,\n method,\n afterGetData,\n field: this.dataField,\n }).then(features => {\n this.getSource().clear();\n this._features = [];\n\n if (features?.length) {\n this._features = features;\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n });\n }\n\n loadFeatures(features) {\n this.getSource().clear();\n this.getSource().addFeatures(features);\n\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n\n this._features = features;\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n }\n }\n\n getFeatures() {\n const source = this.getSource().source || this.getSource();\n return source.getFeatures();\n }\n\n getFeatureByFieldValue(field, value) {\n return this.getFeatures().find(v => v.values_[field] === value);\n }\n\n getFeaturesByFieldValueOpera({ field, value, operation = '===', features, filter }) {\n return new Promise((resolve, reject) => {\n let _features = features || this.getFeatures();\n if (filter) {\n _features = _features.filter(feature => filter(feature.values_));\n }\n\n let result = _features;\n\n if (operation && value !== undefined) {\n if (['>', '>=', '<', '<=', '===', '!=='].includes(operation)) {\n try {\n // 通过动态创建方法自动传入操作符\n const fun = new Function(\n 'features',\n 'field',\n 'value',\n `return features.filter(v => v.values_[field] ${operation} value)`,\n );\n result = fun(_features, field, value);\n } catch (err) {\n reject(err);\n }\n } else if (operation === 'like') {\n // 包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n } else if (operation === 'notLike') {\n // 不包含\n result = _features.filter(v => v.values_[field]?.indexOf(value) === -1);\n } else {\n result = _features.filter(v => v.values_[field]?.indexOf(value) !== -1);\n }\n }\n\n resolve(result);\n });\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 设置过滤条件\n setGroup(group) {\n if (group?.length) {\n if (this._features?.length) {\n this._features.map(feature => {\n let show = true;\n group.map(v => {\n v.filter = stringToFun(v.filter);\n if (v?.filter?.(feature.values_)) {\n if (v.hasOwnProperty('show') && !v.show) {\n show = false;\n }\n }\n });\n feature.show = show;\n });\n }\n this.group = group;\n this.setVisibleByGroup();\n\n if (this._options.cluster) {\n this.setClusterMode(this._options.cluster);\n } else {\n this.setStyle(this.getStyleByMode());\n }\n\n this.setAlarmBgByFeatures(this._features);\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByGroup() {\n const group = this.group;\n if (group?.length) {\n let visible = false;\n\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n });\n\n this.setVisible(visible);\n }\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.setVisible(visible); // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.onChange();\n }\n\n // 判断是否完成过初始化,没有的话就加载一波数据\n if (!this.inited) {\n this.init();\n }\n\n if (!visible) {\n this.clearAlarmBg();\n } else {\n this.setAlarmBgByFeatures(this.getSource().getFeatures());\n }\n }\n\n clearMoveEnd() {\n const map = this.map;\n if (map && this.moveEnd) {\n map.un('moveend', this.moveEnd);\n this.moveEnd = null;\n }\n }\n\n destroy() {\n this.clearMoveEnd();\n this.clearAlarmBg();\n }\n}\n\nexport default FeatureLayer;\n"],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _Cluster2 = _interopRequireDefault(require("ol/source/Cluster"));
9
+ var _extent = require("ol/extent.js");
10
+ var _util = require("ol/util.js");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
14
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
15
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
16
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
17
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
18
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
19
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
20
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
21
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
22
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
23
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
24
+ var MyCluster = /*#__PURE__*/function (_Cluster) {
25
+ _inherits(MyCluster, _Cluster);
26
+ var _super = _createSuper(MyCluster);
27
+ function MyCluster(options) {
28
+ var _this;
29
+ _classCallCheck(this, MyCluster);
30
+ _this = _super.call(this, options);
31
+
32
+ // 不加入聚合
33
+ _this.unClusterFunc = options.unClusterFunc;
34
+
35
+ // 需要提供类型字段,将会根据类型字段的值,自动进行分类聚合
36
+ _this.field = options.field;
37
+
38
+ // 根据分组聚合
39
+ _this.group = options.group;
40
+
41
+ // 聚合改变时触发的方法
42
+ _this.clusterChange = options.clusterChange;
43
+ return _this;
44
+ }
45
+
46
+ /**
47
+ * 分组聚合
48
+ */
49
+ _createClass(MyCluster, [{
50
+ key: "groupCluster",
51
+ value: function groupCluster(feature, clustered, extent, mapDistance) {
52
+ var _this2 = this;
53
+ var geometry = this.geometryFunction(feature);
54
+ if (geometry) {
55
+ var coordinates = geometry.getCoordinates();
56
+ (0, _extent.createOrUpdateFromCoordinate)(coordinates, extent);
57
+ (0, _extent.buffer)(extent, mapDistance, extent);
58
+ var neighbors = this.source.getFeaturesInExtent(extent);
59
+
60
+ // 存在两个以上的点聚合
61
+ if (neighbors.length > 1) {
62
+ var _this$group;
63
+ // 这次聚合按照当前中心点feature这一种类型进行
64
+ var properties = feature.get('properties') || feature.getProperties();
65
+ if (this.field) {
66
+ neighbors = neighbors.filter(function (neighbor) {
67
+ var pointProperties = neighbor.get('properties') || neighbor.getProperties();
68
+ return pointProperties[_this2.field] === properties[_this2.field];
69
+ });
70
+ } else if ((_this$group = this.group) !== null && _this$group !== void 0 && _this$group.length) {
71
+ neighbors = neighbors.filter(function (neighbor) {
72
+ var pointProperties = neighbor.get('properties') || neighbor.getProperties();
73
+ var i = _this2.group.findIndex(function (v) {
74
+ var _v$filter;
75
+ return v === null || v === void 0 ? void 0 : (_v$filter = v.filter) === null || _v$filter === void 0 ? void 0 : _v$filter.call(v, properties);
76
+ });
77
+ var a = _this2.group.findIndex(function (v) {
78
+ var _v$filter2;
79
+ return v === null || v === void 0 ? void 0 : (_v$filter2 = v.filter) === null || _v$filter2 === void 0 ? void 0 : _v$filter2.call(v, pointProperties);
80
+ });
81
+ return i !== -1 && a !== -1 && i === a;
82
+ });
83
+ }
84
+ }
85
+
86
+ // 先删除不需要聚合的点
87
+ if (this.unClusterFunc) {
88
+ var unCluster = neighbors.filter(function (neighbor) {
89
+ return _this2.unClusterFunc(neighbor);
90
+ });
91
+ // 因为不需要聚合,所以这些点就直接单个展示,记录下这些要素
92
+ unCluster.forEach(function (neighbor) {
93
+ var uid = (0, _util.getUid)(neighbor);
94
+ if (!(uid in clustered)) {
95
+ clustered[uid] = true;
96
+ }
97
+ _this2.features.push(_this2.createCluster([neighbor], extent));
98
+ });
99
+ // 筛选除去不需要聚合的点后的几个点
100
+ neighbors = neighbors.filter(function (neighbor) {
101
+ return !_this2.unClusterFunc(neighbor);
102
+ });
103
+ }
104
+
105
+ // 需要聚合的点
106
+ neighbors = neighbors.filter(function (neighbor) {
107
+ var uid = (0, _util.getUid)(neighbor);
108
+ if (!(uid in clustered)) {
109
+ clustered[uid] = true;
110
+ return true;
111
+ } else {
112
+ return false;
113
+ }
114
+ });
115
+ // 经过上面的操作后,可能会出现没有要聚合的点了,所以这里加一下判断
116
+ if (neighbors.length > 0) {
117
+ this.features.push(this.createCluster(neighbors, extent));
118
+ }
119
+ }
120
+ }
121
+
122
+ /**
123
+ * 覆盖了原生的聚合方法
124
+ * @returns
125
+ */
126
+ }, {
127
+ key: "cluster",
128
+ value: function cluster() {
129
+ var _this$clusterChange;
130
+ if (this.resolution === undefined || !this.source) {
131
+ return;
132
+ }
133
+ var extent = (0, _extent.createEmpty)();
134
+ var mapDistance = this.distance * this.resolution;
135
+ var features = this.source.getFeatures();
136
+ /**
137
+ * @type {!Object<string, boolean>}
138
+ */
139
+ var clustered = {};
140
+ for (var i = 0, ii = features.length; i < ii; i++) {
141
+ var feature = features[i];
142
+ if (!((0, _util.getUid)(feature) in clustered)) {
143
+ this.groupCluster(feature, clustered, extent, mapDistance);
144
+ }
145
+ }
146
+ (_this$clusterChange = this.clusterChange) === null || _this$clusterChange === void 0 ? void 0 : _this$clusterChange.call(this, this.features);
147
+ }
148
+ }]);
149
+ return MyCluster;
150
+ }(_Cluster2["default"]);
151
+ var _default = MyCluster;
152
+ exports["default"] = _default;
153
+ //# sourceMappingURL=MyCluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MyCluster.js","names":["_Cluster2","_interopRequireDefault","require","_extent","_util","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","MyCluster","_Cluster","_super","options","_this","unClusterFunc","field","group","clusterChange","groupCluster","feature","clustered","extent","mapDistance","_this2","geometry","geometryFunction","coordinates","getCoordinates","createOrUpdateFromCoordinate","buffer","neighbors","source","getFeaturesInExtent","_this$group","properties","get","getProperties","filter","neighbor","pointProperties","findIndex","v","_v$filter","a","_v$filter2","unCluster","forEach","uid","getUid","features","push","createCluster","cluster","_this$clusterChange","resolution","createEmpty","distance","getFeatures","ii","Cluster","_default","exports"],"sources":["feature-layer/MyCluster.js"],"sourcesContent":["import Cluster from 'ol/source/Cluster'\nimport {buffer, createEmpty, createOrUpdateFromCoordinate} from 'ol/extent.js';\nimport {getUid} from 'ol/util.js';\n\nclass MyCluster extends Cluster {\n\n constructor(options) {\n super(options);\n\n // 不加入聚合\n this.unClusterFunc = options.unClusterFunc;\n\n // 需要提供类型字段,将会根据类型字段的值,自动进行分类聚合\n this.field = options.field;\n\n // 根据分组聚合\n this.group = options.group;\n\n // 聚合改变时触发的方法\n this.clusterChange = options.clusterChange;\n }\n\n /**\n * 分组聚合\n */\n groupCluster(feature, clustered, extent, mapDistance) {\n let geometry = this.geometryFunction(feature);\n if (geometry) {\n let coordinates = geometry.getCoordinates();\n createOrUpdateFromCoordinate(coordinates, extent);\n buffer(extent, mapDistance, extent);\n let neighbors = this.source.getFeaturesInExtent(extent);\n\n // 存在两个以上的点聚合\n if (neighbors.length > 1) {\n // 这次聚合按照当前中心点feature这一种类型进行\n let properties = feature.get('properties') || feature.getProperties();\n\n if (this.field) {\n neighbors = neighbors.filter(neighbor => {\n const pointProperties = neighbor.get('properties') || neighbor.getProperties()\n return pointProperties[this.field] === properties[this.field]\n })\n } else if (this.group?.length) {\n neighbors = neighbors.filter(neighbor => {\n const pointProperties = neighbor.get('properties') || neighbor.getProperties();\n\n const i = this.group.findIndex(v => v?.filter?.(properties));\n const a = this.group.findIndex(v => v?.filter?.(pointProperties));\n\n return i !== -1 && a !== -1 && i === a;\n })\n }\n }\n\n // 先删除不需要聚合的点\n if (this.unClusterFunc) {\n const unCluster = neighbors.filter(neighbor => {\n return this.unClusterFunc(neighbor)\n })\n // 因为不需要聚合,所以这些点就直接单个展示,记录下这些要素\n unCluster.forEach(neighbor => {\n let uid = getUid(neighbor);\n if (!(uid in clustered)) {\n clustered[uid] = true;\n }\n this.features.push(this.createCluster([neighbor], extent));\n })\n // 筛选除去不需要聚合的点后的几个点\n neighbors = neighbors.filter(neighbor => {\n return !this.unClusterFunc(neighbor)\n })\n }\n\n // 需要聚合的点\n neighbors = neighbors.filter(function (neighbor) {\n let uid = getUid(neighbor);\n if (!(uid in clustered)) {\n clustered[uid] = true;\n return true;\n } else {\n return false;\n }\n });\n // 经过上面的操作后,可能会出现没有要聚合的点了,所以这里加一下判断\n if (neighbors.length > 0) {\n this.features.push(this.createCluster(neighbors, extent));\n }\n }\n }\n\n /**\n * 覆盖了原生的聚合方法\n * @returns\n */\n cluster() {\n if (this.resolution === undefined || !this.source) {\n return;\n }\n let extent = createEmpty();\n let mapDistance = this.distance * this.resolution;\n let features = this.source.getFeatures();\n /**\n * @type {!Object<string, boolean>}\n */\n let clustered = {};\n for (let i = 0, ii = features.length; i < ii; i++) {\n let feature = features[i];\n if (!(getUid(feature) in clustered)) {\n this.groupCluster(feature, clustered, extent, mapDistance)\n }\n }\n\n this.clusterChange?.(this.features);\n }\n}\n\nexport default MyCluster\n"],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.transformLonLatToWGS84 = exports.transformGeometryInfoToWGS84 = exports.transformGeometry = exports.getDataByHttpByParams = exports.getDataByHttp = exports.createGeoJson = exports.createFeatureCollection = exports.createFeature = void 0;
8
+ var _format = require("ol/format");
9
+ var _http = _interopRequireDefault(require("../_util/http"));
10
+ var _mapTool = _interopRequireDefault(require("../_util/mapTool"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
14
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
16
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
17
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
18
+ 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."); }
19
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
20
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
22
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
24
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
25
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
26
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
27
+ var geoJsonFormat = new _format.GeoJSON();
28
+ var transformLonLatToWGS84 = function transformLonLatToWGS84(lonLat, coordType) {
29
+ var _lonLat = _toConsumableArray(lonLat).map(function (v) {
30
+ return Number(v);
31
+ });
32
+ if (coordType === 'bmap') {
33
+ var gcj = _mapTool["default"].bd09togcj02(lonLat[0], lonLat[1]);
34
+ _lonLat = _mapTool["default"].gcj02towgs84(gcj[0], gcj[1]);
35
+ } else if (coordType === 'amap') {
36
+ _lonLat = _mapTool["default"].gcj02towgs84(lonLat[0], lonLat[1]);
37
+ }
38
+ return _lonLat;
39
+ };
40
+ exports.transformLonLatToWGS84 = transformLonLatToWGS84;
41
+ var transformGeometryInfoToWGS84 = function transformGeometryInfoToWGS84(lngLats, type, coordType) {
42
+ var lngLatArr = [];
43
+ if (lngLats) {
44
+ if (type === 'point') {
45
+ var _l = typeof lngLats === 'string' ? lngLats.split(',') : lngLats;
46
+ lngLatArr = transformLonLatToWGS84(_l, coordType);
47
+ } else if (['polygon', 'polyline'].includes(type)) {
48
+ lngLatArr[0] = [];
49
+ lngLats.split(';').map(function (res) {
50
+ var _res$split = res.split(','),
51
+ _res$split2 = _slicedToArray(_res$split, 2),
52
+ lng = _res$split2[0],
53
+ lat = _res$split2[1];
54
+ lngLatArr[0].push(transformLonLatToWGS84([Number(lng), Number(lat)], coordType));
55
+ });
56
+ }
57
+ }
58
+ return lngLatArr;
59
+ };
60
+ exports.transformGeometryInfoToWGS84 = transformGeometryInfoToWGS84;
61
+ var transformGeometry = function transformGeometry(geometryInfo) {
62
+ var _type2;
63
+ /**
64
+ * geometry: {
65
+ * "type": "Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection",
66
+ * "coordinates": []
67
+ * }
68
+ */
69
+
70
+ var type = geometryInfo.type,
71
+ lngLats = geometryInfo.lngLats,
72
+ coordType = geometryInfo.coordType,
73
+ shapeType = geometryInfo.shapeType,
74
+ coordinateType = geometryInfo.coordinateType;
75
+ type = type || shapeType;
76
+ coordType = coordType || coordinateType;
77
+
78
+ /**
79
+ * geometryInfo: {
80
+ * coordType: "wgs84"
81
+ * lngLats: "119.02486914921874,25.63890915087647"
82
+ * type: "point"
83
+ * }
84
+ */
85
+
86
+ var _type = (_type2 = type) === null || _type2 === void 0 ? void 0 : _type2.replace(/^\S/, function (s) {
87
+ return s.toUpperCase();
88
+ });
89
+ if (_type === 'Polyline') {
90
+ _type = 'MultiLineString';
91
+ }
92
+ return {
93
+ type: _type,
94
+ coordinates: transformGeometryInfoToWGS84(lngLats, type, coordType)
95
+ };
96
+ };
97
+ exports.transformGeometry = transformGeometry;
98
+ var createFeature = function createFeature(v, field) {
99
+ return {
100
+ type: 'Feature',
101
+ geometry: transformGeometry(v[field || 'geometryInfo']),
102
+ properties: _objectSpread({}, v)
103
+ };
104
+ };
105
+ exports.createFeature = createFeature;
106
+ var createFeatureCollection = function createFeatureCollection(data, field) {
107
+ var featureCollection = {
108
+ type: 'FeatureCollection',
109
+ features: []
110
+ };
111
+ var features = [];
112
+ data.map(function (v) {
113
+ if (v[field || 'geometryInfo']) {
114
+ features.push(createFeature(v, field));
115
+ }
116
+ });
117
+ featureCollection.features = features;
118
+ return featureCollection;
119
+ };
120
+ exports.createFeatureCollection = createFeatureCollection;
121
+ var createGeoJson = function createGeoJson(data, field) {
122
+ var new_features;
123
+ if (data) {
124
+ var res = createFeatureCollection(Array.isArray(data) ? data : [data], field);
125
+ new_features = geoJsonFormat.readFeatures(res);
126
+ }
127
+ return new_features;
128
+ };
129
+ exports.createGeoJson = createGeoJson;
130
+ var getDataByHttp = function getDataByHttp(url, params, method, afterGetData, field) {
131
+ var request = _http["default"].get;
132
+ if (method === 'POST' || method === 'post') {
133
+ request = _http["default"].post;
134
+ }
135
+ return request(url, {
136
+ body: params
137
+ }).then(function (res) {
138
+ var _res2, _res2$data;
139
+ var _res = res;
140
+ if (afterGetData) _res = afterGetData(res);
141
+ if ((url === null || url === void 0 ? void 0 : url.indexOf('/geoserver/')) !== -1) {
142
+ return geoJsonFormat.readFeatures(_res);
143
+ }
144
+ if ((_res2 = _res) !== null && _res2 !== void 0 && (_res2$data = _res2.data) !== null && _res2$data !== void 0 && _res2$data.length) {
145
+ return createGeoJson(_res.data, field);
146
+ }
147
+ });
148
+ };
149
+ exports.getDataByHttp = getDataByHttp;
150
+ var getDataByHttpByParams = function getDataByHttpByParams(_ref) {
151
+ var url = _ref.url,
152
+ params = _ref.params,
153
+ method = _ref.method,
154
+ afterGetData = _ref.afterGetData,
155
+ field = _ref.field;
156
+ var request = _http["default"].get;
157
+ if (method === 'POST' || method === 'post') {
158
+ request = _http["default"].post;
159
+ }
160
+ return request(url, {
161
+ body: params
162
+ }).then(function (res) {
163
+ var _url$indexOf, _res3, _res3$data;
164
+ var _res = res;
165
+ if (afterGetData) _res = afterGetData(res);
166
+ if ((url === null || url === void 0 ? void 0 : (_url$indexOf = url.indexOf) === null || _url$indexOf === void 0 ? void 0 : _url$indexOf.call(url, '/geoserver/')) !== -1) {
167
+ return geoJsonFormat.readFeatures(_res);
168
+ }
169
+ if ((_res3 = _res) !== null && _res3 !== void 0 && (_res3$data = _res3.data) !== null && _res3$data !== void 0 && _res3$data.length) {
170
+ return createGeoJson(_res.data, field);
171
+ }
172
+ });
173
+ };
174
+ exports.getDataByHttpByParams = getDataByHttpByParams;
175
+ //# sourceMappingURL=createFeatureCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFeatureCollection.js","names":["_format","require","_http","_interopRequireDefault","_mapTool","obj","__esModule","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","prototype","toString","slice","constructor","name","from","test","iter","len","arr2","geoJsonFormat","GeoJSON","transformLonLatToWGS84","lonLat","coordType","_lonLat","map","v","gcj","mapTool","bd09togcj02","gcj02towgs84","exports","transformGeometryInfoToWGS84","lngLats","type","lngLatArr","_l","split","includes","_res$split","_res$split2","lng","lat","transformGeometry","geometryInfo","_type2","shapeType","coordinateType","_type","replace","s","toUpperCase","coordinates","createFeature","field","geometry","properties","createFeatureCollection","data","featureCollection","features","createGeoJson","new_features","readFeatures","getDataByHttp","url","params","method","afterGetData","request","http","get","post","body","then","_res2","_res2$data","_res","indexOf","getDataByHttpByParams","_ref","_url$indexOf","_res3","_res3$data"],"sources":["feature-layer/createFeatureCollection.js"],"sourcesContent":["import { GeoJSON } from 'ol/format';\nimport http from '../_util/http';\nimport mapTool from '../_util/mapTool';\n\nconst geoJsonFormat = new GeoJSON();\n\nexport const transformLonLatToWGS84 = (lonLat, coordType) => {\n let _lonLat = [...lonLat].map(v => Number(v));\n if (coordType === 'bmap') {\n let gcj = mapTool.bd09togcj02(lonLat[0], lonLat[1]);\n _lonLat = mapTool.gcj02towgs84(gcj[0], gcj[1]);\n } else if (coordType === 'amap') {\n _lonLat = mapTool.gcj02towgs84(lonLat[0], lonLat[1]);\n }\n\n return _lonLat;\n};\n\nexport const transformGeometryInfoToWGS84 = (lngLats, type, coordType) => {\n let lngLatArr = [];\n if (lngLats) {\n if (type === 'point') {\n let _l = typeof lngLats === 'string' ? lngLats.split(',') : lngLats;\n lngLatArr = transformLonLatToWGS84(_l, coordType);\n } else if (['polygon', 'polyline'].includes(type)) {\n lngLatArr[0] = [];\n lngLats.split(';').map(res => {\n let [lng, lat] = res.split(',');\n lngLatArr[0].push(transformLonLatToWGS84([Number(lng), Number(lat)], coordType));\n });\n }\n }\n\n return lngLatArr;\n};\n\nexport const transformGeometry = geometryInfo => {\n /**\n * geometry: {\n * \"type\": \"Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection\",\n * \"coordinates\": []\n * }\n */\n\n let { type, lngLats, coordType, shapeType, coordinateType } = geometryInfo;\n type = type || shapeType;\n coordType = coordType || coordinateType;\n\n /**\n * geometryInfo: {\n * coordType: \"wgs84\"\n * lngLats: \"119.02486914921874,25.63890915087647\"\n * type: \"point\"\n * }\n */\n\n let _type = type?.replace(/^\\S/, s => s.toUpperCase());\n if (_type === 'Polyline') {\n _type = 'MultiLineString';\n }\n\n return {\n type: _type,\n coordinates: transformGeometryInfoToWGS84(lngLats, type, coordType),\n };\n};\n\nexport const createFeature = (v, field) => {\n return {\n type: 'Feature',\n geometry: transformGeometry(v[field || 'geometryInfo']),\n properties: { ...v },\n };\n};\n\nexport const createFeatureCollection = (data, field) => {\n const featureCollection = {\n type: 'FeatureCollection',\n features: [],\n };\n\n let features = [];\n data.map(v => {\n if (v[field || 'geometryInfo']) {\n features.push(createFeature(v, field));\n }\n });\n\n featureCollection.features = features;\n\n return featureCollection;\n};\n\nexport const createGeoJson = (data, field) => {\n let new_features;\n if (data) {\n const res = createFeatureCollection(Array.isArray(data) ? data : [data], field);\n\n new_features = geoJsonFormat.readFeatures(res);\n }\n\n return new_features;\n};\n\nexport const getDataByHttp = (url, params, method, afterGetData, field) => {\n let request = http.get;\n if (method === 'POST' || method === 'post') {\n request = http.post;\n }\n return request(url, { body: params }).then(res => {\n let _res = res;\n if (afterGetData) _res = afterGetData(res);\n\n if (url?.indexOf('/geoserver/') !== -1) {\n return geoJsonFormat.readFeatures(_res);\n }\n\n if (_res?.data?.length) {\n return createGeoJson(_res.data, field);\n }\n });\n};\n\nexport const getDataByHttpByParams = ({ url, params, method, afterGetData, field }) => {\n let request = http.get;\n if (method === 'POST' || method === 'post') {\n request = http.post;\n }\n return request(url, { body: params }).then(res => {\n let _res = res;\n if (afterGetData) _res = afterGetData(res);\n\n if (url?.indexOf?.('/geoserver/') !== -1) {\n return geoJsonFormat.readFeatures(_res);\n }\n\n if (_res?.data?.length) {\n return createGeoJson(_res.data, field);\n }\n });\n};\n"],"mappings":"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"}