@vtx/ol-map 2.0.0-beta.1 → 2.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (537) hide show
  1. package/lib/_util/EventEmitter.js +78 -0
  2. package/lib/_util/EventEmitter.js.map +1 -0
  3. package/lib/_util/StyleCache.js +46 -0
  4. package/lib/_util/StyleCache.js.map +1 -0
  5. package/lib/_util/encryptParams.js +60 -0
  6. package/lib/_util/encryptParams.js.map +1 -0
  7. package/lib/_util/filterSpecialCharacters.js +90 -0
  8. package/lib/_util/filterSpecialCharacters.js.map +1 -0
  9. package/lib/_util/getComponentProps.js +14 -0
  10. package/lib/_util/getComponentProps.js.map +1 -0
  11. package/lib/_util/getCookie.js +24 -0
  12. package/lib/_util/getCookie.js.map +1 -0
  13. package/lib/_util/getDefaultMapInfo.js +50 -0
  14. package/lib/_util/getDefaultMapInfo.js.map +1 -0
  15. package/lib/_util/getSystemInfo.js +26 -0
  16. package/lib/_util/getSystemInfo.js.map +1 -0
  17. package/lib/_util/getToken.js +27 -0
  18. package/lib/_util/getToken.js.map +1 -0
  19. package/lib/_util/http.js +176 -0
  20. package/lib/_util/http.js.map +1 -0
  21. package/lib/_util/isFunction.js +10 -0
  22. package/lib/_util/isFunction.js.map +1 -0
  23. package/lib/_util/isObject.js +10 -0
  24. package/lib/_util/isObject.js.map +1 -0
  25. package/lib/_util/layer.js +152 -0
  26. package/lib/_util/layer.js.map +1 -0
  27. package/lib/_util/mapTool.js +188 -0
  28. package/lib/_util/mapTool.js.map +1 -0
  29. package/lib/_util/projection.js +44 -0
  30. package/lib/_util/projection.js.map +1 -0
  31. package/lib/_util/projzh/datum/bd-09.js +44 -0
  32. package/lib/_util/projzh/datum/bd-09.js.map +1 -0
  33. package/lib/_util/projzh/datum/gcj-02.js +72 -0
  34. package/lib/_util/projzh/datum/gcj-02.js.map +1 -0
  35. package/lib/_util/projzh/datum/index.js +14 -0
  36. package/lib/_util/projzh/datum/index.js.map +1 -0
  37. package/lib/_util/projzh/index.js +40 -0
  38. package/lib/_util/projzh/index.js.map +1 -0
  39. package/lib/_util/projzh/projection/baidu-mercator.js +74 -0
  40. package/lib/_util/projzh/projection/baidu-mercator.js.map +1 -0
  41. package/lib/_util/projzh/projection/index.js +14 -0
  42. package/lib/_util/projzh/projection/index.js.map +1 -0
  43. package/lib/_util/projzh/projection/spherical-mercator.js +25 -0
  44. package/lib/_util/projzh/projection/spherical-mercator.js.map +1 -0
  45. package/lib/_util/projzh/util.js +27 -0
  46. package/lib/_util/projzh/util.js.map +1 -0
  47. package/lib/_util/search.js +117 -0
  48. package/lib/_util/search.js.map +1 -0
  49. package/lib/_util/setCookie.js +15 -0
  50. package/lib/_util/setCookie.js.map +1 -0
  51. package/lib/_util/stringToFun.js +25 -0
  52. package/lib/_util/stringToFun.js.map +1 -0
  53. package/lib/_util/transform.js +169 -0
  54. package/lib/_util/transform.js.map +1 -0
  55. package/lib/_util/useColSize.js +28 -0
  56. package/lib/_util/useColSize.js.map +1 -0
  57. package/lib/_util/useInterval.js +19 -0
  58. package/lib/_util/useInterval.js.map +1 -0
  59. package/lib/_util/useSet.js +44 -0
  60. package/lib/_util/useSet.js.map +1 -0
  61. package/lib/analysis-layer/index.js +461 -0
  62. package/lib/analysis-layer/index.js.map +1 -0
  63. package/lib/analysis-layer/style/css.js +2 -0
  64. package/lib/analysis-layer/style/css.js.map +1 -0
  65. package/lib/analysis-layer/style/index.js +2 -0
  66. package/lib/analysis-layer/style/index.js.map +1 -0
  67. package/lib/arrow-flow-layer/ArrowFlowLayer.js +438 -0
  68. package/lib/arrow-flow-layer/ArrowFlowLayer.js.map +1 -0
  69. package/lib/arrow-flow-layer/index.js +140 -0
  70. package/lib/arrow-flow-layer/index.js.map +1 -0
  71. package/lib/arrow-flow-layer/sampleArrowsAlongLine.js +87 -0
  72. package/lib/arrow-flow-layer/sampleArrowsAlongLine.js.map +1 -0
  73. package/lib/arrow-flow-layer/style/css.js +4 -0
  74. package/lib/arrow-flow-layer/style/css.js.map +1 -0
  75. package/lib/arrow-flow-layer/style/index.css +0 -0
  76. package/lib/arrow-flow-layer/style/index.js +4 -0
  77. package/lib/arrow-flow-layer/style/index.js.map +1 -0
  78. package/lib/arrow-flow-layer/style/index.less +0 -0
  79. package/lib/assets/arrow.png +0 -0
  80. package/lib/assets/base-img-1.png +0 -0
  81. package/lib/assets/base-img-2.png +0 -0
  82. package/lib/assets/base-img-3.png +0 -0
  83. package/lib/assets/base-img-4.png +0 -0
  84. package/lib/assets/base-img-5.png +0 -0
  85. package/lib/assets/base-img-6.png +0 -0
  86. package/lib/assets/base-img.png +0 -0
  87. package/lib/assets/bz.png +0 -0
  88. package/lib/assets/img.png +0 -0
  89. package/lib/assets/kz.png +0 -0
  90. package/lib/assets/ll.png +0 -0
  91. package/lib/assets/location.png +0 -0
  92. package/lib/assets/noLocation.png +0 -0
  93. package/lib/assets/people.png +0 -0
  94. package/lib/assets/qd.png +0 -0
  95. package/lib/assets/sw.png +0 -0
  96. package/lib/assets/yl.png +0 -0
  97. package/lib/assets/zd.png +0 -0
  98. package/lib/buffer-draw/BufferDraw.js +399 -0
  99. package/lib/buffer-draw/BufferDraw.js.map +1 -0
  100. package/lib/buffer-draw/index.js +58 -0
  101. package/lib/buffer-draw/index.js.map +1 -0
  102. package/lib/buffer-draw/style/css.js +2 -0
  103. package/lib/buffer-draw/style/css.js.map +1 -0
  104. package/lib/buffer-draw/style/index.js +2 -0
  105. package/lib/buffer-draw/style/index.js.map +1 -0
  106. package/lib/circle/Circle.js +51 -0
  107. package/lib/circle/Circle.js.map +1 -0
  108. package/lib/circle/index.js +64 -0
  109. package/lib/circle/index.js.map +1 -0
  110. package/lib/circle/style/css.js +2 -0
  111. package/lib/circle/style/css.js.map +1 -0
  112. package/lib/circle/style/index.js +2 -0
  113. package/lib/circle/style/index.js.map +1 -0
  114. package/lib/config.js +12 -0
  115. package/lib/config.js.map +1 -0
  116. package/lib/convertCamelToCSS.js +23 -0
  117. package/lib/convertCamelToCSS.js.map +1 -0
  118. package/lib/dom/Dom.js +39 -0
  119. package/lib/dom/Dom.js.map +1 -0
  120. package/lib/dom/index.js +82 -0
  121. package/lib/dom/index.js.map +1 -0
  122. package/lib/dom/style/css.js +2 -0
  123. package/lib/dom/style/css.js.map +1 -0
  124. package/lib/dom/style/index.js +2 -0
  125. package/lib/dom/style/index.js.map +1 -0
  126. package/lib/dom-layer/index.js +249 -0
  127. package/lib/dom-layer/index.js.map +1 -0
  128. package/lib/dom-layer/style/css.js +4 -0
  129. package/lib/dom-layer/style/css.js.map +1 -0
  130. package/lib/dom-layer/style/index.css +3 -0
  131. package/lib/dom-layer/style/index.js +4 -0
  132. package/lib/dom-layer/style/index.js.map +1 -0
  133. package/lib/dom-layer/style/index.less +3 -0
  134. package/lib/events/index.js +25 -0
  135. package/lib/events/index.js.map +1 -0
  136. package/lib/feature-draw/FeatureDraw.js +231 -0
  137. package/lib/feature-draw/FeatureDraw.js.map +1 -0
  138. package/lib/feature-draw/index.js +76 -0
  139. package/lib/feature-draw/index.js.map +1 -0
  140. package/lib/feature-draw/style/css.js +2 -0
  141. package/lib/feature-draw/style/css.js.map +1 -0
  142. package/lib/feature-draw/style/index.js +2 -0
  143. package/lib/feature-draw/style/index.js.map +1 -0
  144. package/lib/feature-layer/FeatureLayer.js +1093 -0
  145. package/lib/feature-layer/FeatureLayer.js.map +1 -0
  146. package/lib/feature-layer/MyCluster.js +150 -0
  147. package/lib/feature-layer/MyCluster.js.map +1 -0
  148. package/lib/feature-layer/createFeatureCollection.js +167 -0
  149. package/lib/feature-layer/createFeatureCollection.js.map +1 -0
  150. package/lib/feature-layer/index.js +154 -0
  151. package/lib/feature-layer/index.js.map +1 -0
  152. package/lib/feature-layer/style/css.js +4 -0
  153. package/lib/feature-layer/style/css.js.map +1 -0
  154. package/lib/feature-layer/style/index.css +0 -0
  155. package/lib/feature-layer/style/index.js +4 -0
  156. package/lib/feature-layer/style/index.js.map +1 -0
  157. package/lib/feature-layer/style/index.less +0 -0
  158. package/lib/flow-line-layer/FlowLineLayer.js +197 -0
  159. package/lib/flow-line-layer/FlowLineLayer.js.map +1 -0
  160. package/lib/flow-line-layer/index.js +126 -0
  161. package/lib/flow-line-layer/index.js.map +1 -0
  162. package/lib/flow-line-layer/style/css.js +4 -0
  163. package/lib/flow-line-layer/style/css.js.map +1 -0
  164. package/lib/flow-line-layer/style/index.css +0 -0
  165. package/lib/flow-line-layer/style/index.js +4 -0
  166. package/lib/flow-line-layer/style/index.js.map +1 -0
  167. package/lib/flow-line-layer/style/index.less +0 -0
  168. package/lib/fly-line-layer/FlyLineLayer.js +218 -0
  169. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -0
  170. package/lib/fly-line-layer/index.js +109 -0
  171. package/lib/fly-line-layer/index.js.map +1 -0
  172. package/lib/fly-line-layer/style/css.js +4 -0
  173. package/lib/fly-line-layer/style/css.js.map +1 -0
  174. package/lib/fly-line-layer/style/index.css +0 -0
  175. package/lib/fly-line-layer/style/index.js +4 -0
  176. package/lib/fly-line-layer/style/index.js.map +1 -0
  177. package/lib/fly-line-layer/style/index.less +0 -0
  178. package/lib/group-layer/GroupLayer.js +134 -0
  179. package/lib/group-layer/GroupLayer.js.map +1 -0
  180. package/lib/group-layer/index.js +73 -0
  181. package/lib/group-layer/index.js.map +1 -0
  182. package/lib/group-layer/style/css.js +4 -0
  183. package/lib/group-layer/style/css.js.map +1 -0
  184. package/lib/group-layer/style/index.css +0 -0
  185. package/lib/group-layer/style/index.js +4 -0
  186. package/lib/group-layer/style/index.js.map +1 -0
  187. package/lib/group-layer/style/index.less +0 -0
  188. package/lib/heatmap-layer/HeatmapLayer.js +191 -0
  189. package/lib/heatmap-layer/HeatmapLayer.js.map +1 -0
  190. package/lib/heatmap-layer/index.js +102 -0
  191. package/lib/heatmap-layer/index.js.map +1 -0
  192. package/lib/heatmap-layer/style/css.js +4 -0
  193. package/lib/heatmap-layer/style/css.js.map +1 -0
  194. package/lib/heatmap-layer/style/index.css +0 -0
  195. package/lib/heatmap-layer/style/index.js +4 -0
  196. package/lib/heatmap-layer/style/index.js.map +1 -0
  197. package/lib/heatmap-layer/style/index.less +0 -0
  198. package/lib/high-layer/HighLayer.js +201 -0
  199. package/lib/high-layer/HighLayer.js.map +1 -0
  200. package/lib/high-layer/index.js +46 -0
  201. package/lib/high-layer/index.js.map +1 -0
  202. package/lib/high-layer/style/css.js +2 -0
  203. package/lib/high-layer/style/css.js.map +1 -0
  204. package/lib/high-layer/style/index.js +2 -0
  205. package/lib/high-layer/style/index.js.map +1 -0
  206. package/lib/image-layer/ImageLayer.js +330 -0
  207. package/lib/image-layer/ImageLayer.js.map +1 -0
  208. package/lib/image-layer/ImageTileLayer.js +332 -0
  209. package/lib/image-layer/ImageTileLayer.js.map +1 -0
  210. package/lib/image-layer/index.js +100 -0
  211. package/lib/image-layer/index.js.map +1 -0
  212. package/lib/image-layer/style/css.js +4 -0
  213. package/lib/image-layer/style/css.js.map +1 -0
  214. package/lib/image-layer/style/index.css +0 -0
  215. package/lib/image-layer/style/index.js +4 -0
  216. package/lib/image-layer/style/index.js.map +1 -0
  217. package/lib/image-layer/style/index.less +0 -0
  218. package/lib/index.js +215 -0
  219. package/lib/index.js.map +1 -0
  220. package/lib/legend/index.js +254 -0
  221. package/lib/legend/index.js.map +1 -0
  222. package/lib/legend/style/css.js +4 -0
  223. package/lib/legend/style/css.js.map +1 -0
  224. package/lib/legend/style/index.css +109 -0
  225. package/lib/legend/style/index.js +4 -0
  226. package/lib/legend/style/index.js.map +1 -0
  227. package/lib/legend/style/index.less +100 -0
  228. package/lib/map/Analysis.js +148 -0
  229. package/lib/map/Analysis.js.map +1 -0
  230. package/lib/map/Layers.js +338 -0
  231. package/lib/map/Layers.js.map +1 -0
  232. package/lib/map/Popup.js +386 -0
  233. package/lib/map/Popup.js.map +1 -0
  234. package/lib/map/ScaleDenominator.js +68 -0
  235. package/lib/map/ScaleDenominator.js.map +1 -0
  236. package/lib/map/Test.js +144 -0
  237. package/lib/map/Test.js.map +1 -0
  238. package/lib/map/defaultTextEnum.js +165 -0
  239. package/lib/map/defaultTextEnum.js.map +1 -0
  240. package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js +163 -0
  241. package/lib/map/getBaseLayers/imagery/amap/AmapImageryProvider.js.map +1 -0
  242. package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js +84 -0
  243. package/lib/map/getBaseLayers/imagery/baidu/BaiduImageryProvider.js.map +1 -0
  244. package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js +65 -0
  245. package/lib/map/getBaseLayers/imagery/geoq/GeoQImageryProvider.js.map +1 -0
  246. package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js +84 -0
  247. package/lib/map/getBaseLayers/imagery/tdt/TdtImageryProvider.js.map +1 -0
  248. package/lib/map/getBaseLayers/index.js +46 -0
  249. package/lib/map/getBaseLayers/index.js.map +1 -0
  250. package/lib/map/index.js +841 -0
  251. package/lib/map/index.js.map +1 -0
  252. package/lib/map/style/css.js +5 -0
  253. package/lib/map/style/css.js.map +1 -0
  254. package/lib/map/style/index.css +171 -0
  255. package/lib/map/style/index.js +5 -0
  256. package/lib/map/style/index.js.map +1 -0
  257. package/lib/map/style/index.less +152 -0
  258. package/lib/map-icon/svg/index.js +81 -0
  259. package/lib/map-icon/svg/index.js.map +1 -0
  260. package/lib/map-icon/svg/tuceng.svg.js +2 -0
  261. package/lib/map-icon/svg/tuceng.svg.js.map +1 -0
  262. package/lib/marker/Marker.js +105 -0
  263. package/lib/marker/Marker.js.map +1 -0
  264. package/lib/marker/index.js +61 -0
  265. package/lib/marker/index.js.map +1 -0
  266. package/lib/marker/style/css.js +2 -0
  267. package/lib/marker/style/css.js.map +1 -0
  268. package/lib/marker/style/index.js +2 -0
  269. package/lib/marker/style/index.js.map +1 -0
  270. package/lib/path-line-layer/PathLineLayer.js +45 -0
  271. package/lib/path-line-layer/PathLineLayer.js.map +1 -0
  272. package/lib/path-line-layer/getPathLineStyles.js +71 -0
  273. package/lib/path-line-layer/getPathLineStyles.js.map +1 -0
  274. package/lib/path-line-layer/index.js +151 -0
  275. package/lib/path-line-layer/index.js.map +1 -0
  276. package/lib/path-line-layer/style/css.js +4 -0
  277. package/lib/path-line-layer/style/css.js.map +1 -0
  278. package/lib/path-line-layer/style/index.css +0 -0
  279. package/lib/path-line-layer/style/index.js +4 -0
  280. package/lib/path-line-layer/style/index.js.map +1 -0
  281. package/lib/path-line-layer/style/index.less +0 -0
  282. package/lib/path-play-back/PathPlayBack.js +700 -0
  283. package/lib/path-play-back/PathPlayBack.js.map +1 -0
  284. package/lib/path-play-back/index.js +83 -0
  285. package/lib/path-play-back/index.js.map +1 -0
  286. package/lib/path-play-back/style/css.js +2 -0
  287. package/lib/path-play-back/style/css.js.map +1 -0
  288. package/lib/path-play-back/style/index.js +2 -0
  289. package/lib/path-play-back/style/index.js.map +1 -0
  290. package/lib/poi-search/Location.js +62 -0
  291. package/lib/poi-search/Location.js.map +1 -0
  292. package/lib/poi-search/PoiList.js +123 -0
  293. package/lib/poi-search/PoiList.js.map +1 -0
  294. package/lib/poi-search/Search.js +213 -0
  295. package/lib/poi-search/Search.js.map +1 -0
  296. package/lib/poi-search/index.js +178 -0
  297. package/lib/poi-search/index.js.map +1 -0
  298. package/lib/poi-search/style/css.js +4 -0
  299. package/lib/poi-search/style/css.js.map +1 -0
  300. package/lib/poi-search/style/index.css +96 -0
  301. package/lib/poi-search/style/index.js +4 -0
  302. package/lib/poi-search/style/index.js.map +1 -0
  303. package/lib/poi-search/style/index.less +97 -0
  304. package/lib/point/Point.js +57 -0
  305. package/lib/point/Point.js.map +1 -0
  306. package/lib/point/index.js +61 -0
  307. package/lib/point/index.js.map +1 -0
  308. package/lib/point/style/css.js +2 -0
  309. package/lib/point/style/css.js.map +1 -0
  310. package/lib/point/style/index.js +2 -0
  311. package/lib/point/style/index.js.map +1 -0
  312. package/lib/polygon/Polygon.js +51 -0
  313. package/lib/polygon/Polygon.js.map +1 -0
  314. package/lib/polygon/index.js +61 -0
  315. package/lib/polygon/index.js.map +1 -0
  316. package/lib/polygon/style/css.js +2 -0
  317. package/lib/polygon/style/css.js.map +1 -0
  318. package/lib/polygon/style/index.js +2 -0
  319. package/lib/polygon/style/index.js.map +1 -0
  320. package/lib/polyline/Polyline.js +51 -0
  321. package/lib/polyline/Polyline.js.map +1 -0
  322. package/lib/polyline/index.js +61 -0
  323. package/lib/polyline/index.js.map +1 -0
  324. package/lib/polyline/style/css.js +2 -0
  325. package/lib/polyline/style/css.js.map +1 -0
  326. package/lib/polyline/style/index.js +2 -0
  327. package/lib/polyline/style/index.js.map +1 -0
  328. package/lib/popup/index.js +202 -0
  329. package/lib/popup/index.js.map +1 -0
  330. package/lib/popup/style/css.js +4 -0
  331. package/lib/popup/style/css.js.map +1 -0
  332. package/lib/popup/style/index.css +131 -0
  333. package/lib/popup/style/index.js +4 -0
  334. package/lib/popup/style/index.js.map +1 -0
  335. package/lib/popup/style/index.less +129 -0
  336. package/lib/provider/index.js +12 -0
  337. package/lib/provider/index.js.map +1 -0
  338. package/lib/provider/style/css.js +2 -0
  339. package/lib/provider/style/css.js.map +1 -0
  340. package/lib/provider/style/index.js +2 -0
  341. package/lib/provider/style/index.js.map +1 -0
  342. package/lib/renderer/Fill.js +37 -0
  343. package/lib/renderer/Fill.js.map +1 -0
  344. package/lib/renderer/Stroke.js +39 -0
  345. package/lib/renderer/Stroke.js.map +1 -0
  346. package/lib/renderer/index.js +137 -0
  347. package/lib/renderer/index.js.map +1 -0
  348. package/lib/renderer/style/css.js +4 -0
  349. package/lib/renderer/style/css.js.map +1 -0
  350. package/lib/renderer/style/index.css +0 -0
  351. package/lib/renderer/style/index.js +4 -0
  352. package/lib/renderer/style/index.js.map +1 -0
  353. package/lib/renderer/style/index.less +0 -0
  354. package/lib/renderer/transformRgb.js +33 -0
  355. package/lib/renderer/transformRgb.js.map +1 -0
  356. package/lib/search-map/VtxModal.js +209 -0
  357. package/lib/search-map/VtxModal.js.map +1 -0
  358. package/lib/search-map/index.js +542 -0
  359. package/lib/search-map/index.js.map +1 -0
  360. package/lib/search-map/style/css.js +6 -0
  361. package/lib/search-map/style/css.js.map +1 -0
  362. package/lib/search-map/style/index.css +86 -0
  363. package/lib/search-map/style/index.js +6 -0
  364. package/lib/search-map/style/index.js.map +1 -0
  365. package/lib/search-map/style/index.less +97 -0
  366. package/lib/search-map/style/modal.css +56 -0
  367. package/lib/search-map/style/modal.less +66 -0
  368. package/lib/style/index.css +0 -0
  369. package/lib/style/index.less +2 -0
  370. package/lib/style/themes/compact.css +0 -0
  371. package/lib/style/themes/compact.less +1 -0
  372. package/lib/style/themes/dark.css +0 -0
  373. package/lib/style/themes/dark.less +7 -0
  374. package/lib/style/themes/default.css +0 -0
  375. package/lib/style/themes/default.less +7 -0
  376. package/lib/style/themes/index.css +0 -0
  377. package/lib/style/themes/index.less +1 -0
  378. package/lib/style/themes/variable.css +0 -0
  379. package/lib/style/themes/variable.less +5 -0
  380. package/lib/tile-layer/TileLayer.js +85 -0
  381. package/lib/tile-layer/TileLayer.js.map +1 -0
  382. package/lib/tile-layer/index.js +54 -0
  383. package/lib/tile-layer/index.js.map +1 -0
  384. package/lib/tile-layer/style/css.js +4 -0
  385. package/lib/tile-layer/style/css.js.map +1 -0
  386. package/lib/tile-layer/style/index.css +0 -0
  387. package/lib/tile-layer/style/index.js +4 -0
  388. package/lib/tile-layer/style/index.js.map +1 -0
  389. package/lib/tile-layer/style/index.less +0 -0
  390. package/lib/tools/Layer/LayerService.js +182 -0
  391. package/lib/tools/Layer/LayerService.js.map +1 -0
  392. package/lib/tools/Layer/LayersCheckService.js +188 -0
  393. package/lib/tools/Layer/LayersCheckService.js.map +1 -0
  394. package/lib/tools/Layer/index.css +50 -0
  395. package/lib/tools/Layer/index.js +225 -0
  396. package/lib/tools/Layer/index.js.map +1 -0
  397. package/lib/tools/Layer/index.less +43 -0
  398. package/lib/tools/Search/index.js +305 -0
  399. package/lib/tools/Search/index.js.map +1 -0
  400. package/lib/tools/Toolbox/BoxSelect/index.js +22 -0
  401. package/lib/tools/Toolbox/BoxSelect/index.js.map +1 -0
  402. package/lib/tools/Toolbox/CircleSelect/index.js +22 -0
  403. package/lib/tools/Toolbox/CircleSelect/index.js.map +1 -0
  404. package/lib/tools/Toolbox/EagleEye/index.js +56 -0
  405. package/lib/tools/Toolbox/EagleEye/index.js.map +1 -0
  406. package/lib/tools/Toolbox/MapBookmark/Bookmark.js +147 -0
  407. package/lib/tools/Toolbox/MapBookmark/Bookmark.js.map +1 -0
  408. package/lib/tools/Toolbox/MapBookmark/index.css +18 -0
  409. package/lib/tools/Toolbox/MapBookmark/index.js +429 -0
  410. package/lib/tools/Toolbox/MapBookmark/index.js.map +1 -0
  411. package/lib/tools/Toolbox/MapBookmark/index.less +20 -0
  412. package/lib/tools/Toolbox/MapDownload/index.js +16 -0
  413. package/lib/tools/Toolbox/MapDownload/index.js.map +1 -0
  414. package/lib/tools/Toolbox/MapPrint/index.css +4 -0
  415. package/lib/tools/Toolbox/MapPrint/index.js +233 -0
  416. package/lib/tools/Toolbox/MapPrint/index.js.map +1 -0
  417. package/lib/tools/Toolbox/MapPrint/index.less +4 -0
  418. package/lib/tools/Toolbox/Measure/Area/index.js +16 -0
  419. package/lib/tools/Toolbox/Measure/Area/index.js.map +1 -0
  420. package/lib/tools/Toolbox/Measure/Distance/index.js +16 -0
  421. package/lib/tools/Toolbox/Measure/Distance/index.js.map +1 -0
  422. package/lib/tools/Toolbox/Measure/Measure.js +236 -0
  423. package/lib/tools/Toolbox/Measure/Measure.js.map +1 -0
  424. package/lib/tools/Toolbox/Measure/index.js +77 -0
  425. package/lib/tools/Toolbox/Measure/index.js.map +1 -0
  426. package/lib/tools/Toolbox/PolygonSelect/index.js +19 -0
  427. package/lib/tools/Toolbox/PolygonSelect/index.js.map +1 -0
  428. package/lib/tools/Toolbox/ScaleLine/index.js +58 -0
  429. package/lib/tools/Toolbox/ScaleLine/index.js.map +1 -0
  430. package/lib/tools/Toolbox/SelectTools/index.css +103 -0
  431. package/lib/tools/Toolbox/SelectTools/index.js +788 -0
  432. package/lib/tools/Toolbox/SelectTools/index.js.map +1 -0
  433. package/lib/tools/Toolbox/SelectTools/index.less +87 -0
  434. package/lib/tools/Toolbox/SpaceQuery/index.css +19 -0
  435. package/lib/tools/Toolbox/SpaceQuery/index.js +597 -0
  436. package/lib/tools/Toolbox/SpaceQuery/index.js.map +1 -0
  437. package/lib/tools/Toolbox/SpaceQuery/index.less +16 -0
  438. package/lib/tools/Toolbox/ZoomInput/index.css +6 -0
  439. package/lib/tools/Toolbox/ZoomInput/index.js +50 -0
  440. package/lib/tools/Toolbox/ZoomInput/index.js.map +1 -0
  441. package/lib/tools/Toolbox/ZoomInput/index.less +6 -0
  442. package/lib/tools/Toolbox/draftingPrint/index.css +26 -0
  443. package/lib/tools/Toolbox/draftingPrint/index.js +365 -0
  444. package/lib/tools/Toolbox/draftingPrint/index.js.map +1 -0
  445. package/lib/tools/Toolbox/draftingPrint/index.less +34 -0
  446. package/lib/tools/Toolbox/index.css +0 -0
  447. package/lib/tools/Toolbox/index.js +206 -0
  448. package/lib/tools/Toolbox/index.js.map +1 -0
  449. package/lib/tools/Toolbox/index.less +2 -0
  450. package/lib/tools/Utils/CreateOverlay.js +46 -0
  451. package/lib/tools/Utils/CreateOverlay.js.map +1 -0
  452. package/lib/tools/Utils/Draw.js +127 -0
  453. package/lib/tools/Utils/Draw.js.map +1 -0
  454. package/lib/tools/Utils/HighLayer.js +212 -0
  455. package/lib/tools/Utils/HighLayer.js.map +1 -0
  456. package/lib/tools/Utils/measure.js +246 -0
  457. package/lib/tools/Utils/measure.js.map +1 -0
  458. package/lib/tools/Utils/utils.js +263 -0
  459. package/lib/tools/Utils/utils.js.map +1 -0
  460. package/lib/tools/View/index.css +35 -0
  461. package/lib/tools/View/index.js +179 -0
  462. package/lib/tools/View/index.js.map +1 -0
  463. package/lib/tools/View/index.less +28 -0
  464. package/lib/tools/analysis-tool/index.js +111 -0
  465. package/lib/tools/analysis-tool/index.js.map +1 -0
  466. package/lib/tools/base-map-switch/index.js +168 -0
  467. package/lib/tools/base-map-switch/index.js.map +1 -0
  468. package/lib/tools/components/Chart/index.js +821 -0
  469. package/lib/tools/components/Chart/index.js.map +1 -0
  470. package/lib/tools/components/Icon/index.js +31 -0
  471. package/lib/tools/components/Icon/index.js.map +1 -0
  472. package/lib/tools/components/Info/index.css +39 -0
  473. package/lib/tools/components/Info/index.js +34 -0
  474. package/lib/tools/components/Info/index.js.map +1 -0
  475. package/lib/tools/components/Info/index.less +26 -0
  476. package/lib/tools/components/ItemWrap/index.css +43 -0
  477. package/lib/tools/components/ItemWrap/index.js +46 -0
  478. package/lib/tools/components/ItemWrap/index.js.map +1 -0
  479. package/lib/tools/components/ItemWrap/index.less +41 -0
  480. package/lib/tools/components/Modal/index.css +42 -0
  481. package/lib/tools/components/Modal/index.js +45 -0
  482. package/lib/tools/components/Modal/index.js.map +1 -0
  483. package/lib/tools/components/Modal/index.less +33 -0
  484. package/lib/tools/components/MyTabs/index.js +22 -0
  485. package/lib/tools/components/MyTabs/index.js.map +1 -0
  486. package/lib/tools/components/RequiredLabel/index.css +5 -0
  487. package/lib/tools/components/RequiredLabel/index.js +32 -0
  488. package/lib/tools/components/RequiredLabel/index.js.map +1 -0
  489. package/lib/tools/components/RequiredLabel/index.less +5 -0
  490. package/lib/tools/components/Select/index.js +32 -0
  491. package/lib/tools/components/Select/index.js.map +1 -0
  492. package/lib/tools/components/Table/assets/tableIcon.png +0 -0
  493. package/lib/tools/components/Table/index.css +10 -0
  494. package/lib/tools/components/Table/index.js +92 -0
  495. package/lib/tools/components/Table/index.js.map +1 -0
  496. package/lib/tools/components/Table/index.less +13 -0
  497. package/lib/tools/components/ToolItem/index.css +30 -0
  498. package/lib/tools/components/ToolItem/index.js +28 -0
  499. package/lib/tools/components/ToolItem/index.js.map +1 -0
  500. package/lib/tools/components/ToolItem/index.less +27 -0
  501. package/lib/tools/components/ToolsSelect/index.css +15 -0
  502. package/lib/tools/components/ToolsSelect/index.js +44 -0
  503. package/lib/tools/components/ToolsSelect/index.js.map +1 -0
  504. package/lib/tools/components/ToolsSelect/index.less +10 -0
  505. package/lib/tools/full-screen/index.js +45 -0
  506. package/lib/tools/full-screen/index.js.map +1 -0
  507. package/lib/tools/index.js +161 -0
  508. package/lib/tools/index.js.map +1 -0
  509. package/lib/tools/layer-control/index.js +170 -0
  510. package/lib/tools/layer-control/index.js.map +1 -0
  511. package/lib/tools/refresh/index.js +39 -0
  512. package/lib/tools/refresh/index.js.map +1 -0
  513. package/lib/tools/style/css.js +13 -0
  514. package/lib/tools/style/css.js.map +1 -0
  515. package/lib/tools/style/index.css +136 -0
  516. package/lib/tools/style/index.js +13 -0
  517. package/lib/tools/style/index.js.map +1 -0
  518. package/lib/tools/style/index.less +154 -0
  519. package/lib/tools-item/index.js +65 -0
  520. package/lib/tools-item/index.js.map +1 -0
  521. package/lib/use-props/index.js +14 -0
  522. package/lib/use-props/index.js.map +1 -0
  523. package/lib/use-props/style/css.js +2 -0
  524. package/lib/use-props/style/css.js.map +1 -0
  525. package/lib/use-props/style/index.js +2 -0
  526. package/lib/use-props/style/index.js.map +1 -0
  527. package/lib/wms-layer/WmsLayer.js +313 -0
  528. package/lib/wms-layer/WmsLayer.js.map +1 -0
  529. package/lib/wms-layer/index.js +97 -0
  530. package/lib/wms-layer/index.js.map +1 -0
  531. package/lib/wms-layer/style/css.js +4 -0
  532. package/lib/wms-layer/style/css.js.map +1 -0
  533. package/lib/wms-layer/style/index.css +0 -0
  534. package/lib/wms-layer/style/index.js +4 -0
  535. package/lib/wms-layer/style/index.js.map +1 -0
  536. package/lib/wms-layer/style/index.less +0 -0
  537. package/package.json +24 -15
@@ -0,0 +1,788 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _antd = require("antd");
10
+ var _icons = require("@ant-design/icons");
11
+ var _Table = _interopRequireDefault(require("../../components/Table"));
12
+ var _Modal = _interopRequireDefault(require("../../components/Modal"));
13
+ var _layer = require("../../../_util/layer");
14
+ var _layer2 = require("ol/layer");
15
+ var _Polygon = require("ol/geom/Polygon");
16
+ var _Draw = _interopRequireDefault(require("../../Utils/Draw"));
17
+ require("./index.less");
18
+ var _useProps6 = _interopRequireDefault(require("../../../use-props"));
19
+ var _classnames2 = _interopRequireDefault(require("classnames"));
20
+ var _ahooks = require("ahooks");
21
+ var _ImageLayer = require("../../../image-layer/ImageLayer");
22
+ var _WmsLayer = _interopRequireDefault(require("../../../wms-layer/WmsLayer"));
23
+ var _turf = require("@turf/turf");
24
+ var _Info = _interopRequireDefault(require("../../components/Info"));
25
+ var _Chart = _interopRequireDefault(require("../../components/Chart"));
26
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
27
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
30
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
31
+ 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."); }
32
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
33
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
34
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
35
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
36
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
37
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
38
+ 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."); }
39
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
40
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
41
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
42
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } /*
43
+ * @Description:框选、圈选、多边形选择
44
+ */
45
+ var classPrefix = 'selectTools';
46
+ var getFeatureIntersects = function getFeatureIntersects(polygon, feature) {
47
+ var _feature$getGeometry, _feature$getGeometry2, _feature$getGeometry3, _lngLat$;
48
+ var lngLat = feature === null || feature === void 0 || (_feature$getGeometry = feature.getGeometry()) === null || _feature$getGeometry === void 0 ? void 0 : _feature$getGeometry.getCoordinates();
49
+ var poly = (0, _turf.polygon)(polygon.getCoordinates());
50
+ var pt;
51
+ var B = false;
52
+ if ((feature === null || feature === void 0 || (_feature$getGeometry2 = feature.getGeometry()) === null || _feature$getGeometry2 === void 0 ? void 0 : _feature$getGeometry2.getType()) === 'Point') {
53
+ lngLat.map(function (v) {
54
+ return Number(v);
55
+ });
56
+ pt = (0, _turf.point)(lngLat);
57
+ // 判断在点在多边形内
58
+ if (poly && pt) {
59
+ var intersects = (0, _turf.booleanPointInPolygon)(pt, poly);
60
+ if (intersects) {
61
+ B = true;
62
+ }
63
+ }
64
+ }
65
+ if ((feature === null || feature === void 0 || (_feature$getGeometry3 = feature.getGeometry()) === null || _feature$getGeometry3 === void 0 ? void 0 : _feature$getGeometry3.getType()) === 'Polygon' && lngLat !== null && lngLat !== void 0 && (_lngLat$ = lngLat[0]) !== null && _lngLat$ !== void 0 && _lngLat$.length) {
66
+ var _lngLat$2;
67
+ lngLat === null || lngLat === void 0 || lngLat[0].map(function (v) {
68
+ return Number(v);
69
+ });
70
+ lngLat === null || lngLat === void 0 || (_lngLat$2 = lngLat[0]) === null || _lngLat$2 === void 0 || _lngLat$2.map(function (item) {
71
+ pt = (0, _turf.point)(item);
72
+ if (poly && pt) {
73
+ var _intersects = (0, _turf.booleanPointInPolygon)(pt, poly);
74
+ if (_intersects) {
75
+ B = true;
76
+ }
77
+ }
78
+ });
79
+ }
80
+ return B;
81
+ };
82
+ var LayerSelect = function LayerSelect(props) {
83
+ var _list;
84
+ var _props$options = props.options,
85
+ options = _props$options === void 0 ? [] : _props$options,
86
+ value = props.value,
87
+ onChange = props.onChange,
88
+ currentKey = props.currentKey;
89
+ var _useState = (0, _react.useState)(false),
90
+ _useState2 = _slicedToArray(_useState, 2),
91
+ open = _useState2[0],
92
+ setOpen = _useState2[1];
93
+ var _useState3 = (0, _react.useState)(value),
94
+ _useState4 = _slicedToArray(_useState3, 2),
95
+ active = _useState4[0],
96
+ setActive = _useState4[1];
97
+ var time = (0, _react.useRef)();
98
+ (0, _ahooks.useUpdateEffect)(function () {
99
+ setActive(value);
100
+ }, [value]);
101
+ if (!(options !== null && options !== void 0 && options.length)) {
102
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null);
103
+ }
104
+ var showOpen = (options === null || options === void 0 ? void 0 : options.length) > 9;
105
+ var list = options;
106
+ if (options !== null && options !== void 0 && options.length) {
107
+ if (!open) {
108
+ if (options.length > 9) {
109
+ list = options.slice(0, 9);
110
+ }
111
+ } else {
112
+ list = options;
113
+ }
114
+ }
115
+ var _onClick = function onClick(value) {
116
+ setActive(value);
117
+ currentKey.current = value;
118
+ if (time.current) {
119
+ clearTimeout(time.current);
120
+ }
121
+ time.current = setTimeout(function () {
122
+ onChange === null || onChange === void 0 || onChange(value);
123
+ }, 500);
124
+ };
125
+ return /*#__PURE__*/_react["default"].createElement("div", {
126
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-layer-select"), {
127
+ 'selectTools-layer-select-scroll': open
128
+ })
129
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Space, {
130
+ size: [8, 8],
131
+ wrap: true
132
+ }, ((_list = list) === null || _list === void 0 ? void 0 : _list.length) > 0 && list.map(function (item, index) {
133
+ return /*#__PURE__*/_react["default"].createElement("div", {
134
+ key: index,
135
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-layer-select-item"), _defineProperty({}, "".concat(classPrefix, "-layer-select-item-active"), active === item.value)),
136
+ onClick: function onClick() {
137
+ return _onClick(item.value);
138
+ }
139
+ }, item.label);
140
+ })), showOpen && /*#__PURE__*/_react["default"].createElement(_antd.Divider, {
141
+ style: {
142
+ margin: 0
143
+ }
144
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
145
+ icon: open ? /*#__PURE__*/_react["default"].createElement(_icons.VerticalAlignTopOutlined, null) : /*#__PURE__*/_react["default"].createElement(_icons.VerticalAlignBottomOutlined, null),
146
+ onClick: function onClick() {
147
+ return setOpen(!open);
148
+ },
149
+ type: "link"
150
+ }, open ? '收起' : '展开')));
151
+ };
152
+ var TableView = function TableView(props) {
153
+ var dataSource = props.dataSource,
154
+ otherColumns = props.columns,
155
+ info = props.info;
156
+ var _useProps = (0, _useProps6["default"])(),
157
+ map = _useProps.map,
158
+ TextEnum = _useProps.TextEnum;
159
+ var _useState5 = (0, _react.useState)(true),
160
+ _useState6 = _slicedToArray(_useState5, 2),
161
+ open = _useState6[0],
162
+ setOpen = _useState6[1];
163
+ var columns = [{
164
+ title: TextEnum.codeName,
165
+ dataIndex: 'NAME',
166
+ width: 180,
167
+ render: function render(text, record) {
168
+ return /*#__PURE__*/_react["default"].createElement("a", {
169
+ onClick: function onClick() {
170
+ var _map$getViewport;
171
+ var doc = document.getElementsByClassName('ol-map-tools')[0];
172
+ var rect = doc === null || doc === void 0 ? void 0 : doc.getBoundingClientRect();
173
+ var parentRect = (_map$getViewport = map.getViewport()) === null || _map$getViewport === void 0 ? void 0 : _map$getViewport.getBoundingClientRect();
174
+ var left = 400;
175
+ if (rect && parentRect) {
176
+ left = (rect === null || rect === void 0 ? void 0 : rect.left) - (parentRect === null || parentRect === void 0 ? void 0 : parentRect.left) + 12 + 350 + 150;
177
+ }
178
+ map.showTemplate(record.feature, {
179
+ fitViewOptions: {
180
+ padding: [100, 400, 100, left]
181
+ }
182
+ });
183
+ }
184
+ }, text);
185
+ }
186
+ }].concat(_toConsumableArray(otherColumns || []));
187
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
188
+ style: {
189
+ minHeight: 20
190
+ }
191
+ }, open && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, info, /*#__PURE__*/_react["default"].createElement(_Table["default"], {
192
+ rowKey: "code",
193
+ dataSource: dataSource,
194
+ columns: columns,
195
+ size: "small",
196
+ locale: {
197
+ emptyText: TextEnum.noData
198
+ }
199
+ }))), (dataSource === null || dataSource === void 0 ? void 0 : dataSource.length) > 0 && /*#__PURE__*/_react["default"].createElement("div", {
200
+ className: "ol-map-search-result-button",
201
+ onClick: function onClick() {
202
+ return setOpen(!open);
203
+ }
204
+ }, open ? TextEnum.collapse : TextEnum.expand, open ? /*#__PURE__*/_react["default"].createElement(_icons.CaretUpOutlined, null) : /*#__PURE__*/_react["default"].createElement(_icons.CaretDownOutlined, null)));
205
+ };
206
+ var TYPE = function TYPE(TextEnum) {
207
+ return [{
208
+ label: TextEnum.table,
209
+ value: 'table',
210
+ icon: /*#__PURE__*/_react["default"].createElement(_icons.TableOutlined, null)
211
+ }, {
212
+ label: TextEnum.barChart,
213
+ value: 'bar',
214
+ icon: /*#__PURE__*/_react["default"].createElement(_icons.BarChartOutlined, null)
215
+ }, {
216
+ label: TextEnum.lineChart,
217
+ value: 'line',
218
+ icon: /*#__PURE__*/_react["default"].createElement(_icons.LineChartOutlined, null)
219
+ }, {
220
+ label: TextEnum.pieChart,
221
+ value: 'pie',
222
+ icon: /*#__PURE__*/_react["default"].createElement(_icons.PieChartOutlined, null)
223
+ }];
224
+ };
225
+ var ChartView = function ChartView(props) {
226
+ var _useProps2 = (0, _useProps6["default"])(),
227
+ TextEnum = _useProps2.TextEnum;
228
+ var type = props.type,
229
+ data = props.data;
230
+ return /*#__PURE__*/_react["default"].createElement(_Chart["default"], {
231
+ style: {
232
+ height: 300
233
+ },
234
+ yAxis: {
235
+ show: type !== 'pie',
236
+ name: TextEnum.unitItemText
237
+ },
238
+ legend: {
239
+ show: false
240
+ },
241
+ xAxis: {
242
+ show: type !== 'pie',
243
+ field: 'name'
244
+ },
245
+ unit: TextEnum.unitItemText,
246
+ series: [_objectSpread({
247
+ type: type,
248
+ name: '管线',
249
+ radius: ['30%', '50%'],
250
+ center: ['50%', '50%']
251
+ }, type === 'pie' ? {
252
+ data: data,
253
+ label: {
254
+ show: true,
255
+ position: 'outside',
256
+ formatter: '{b}\n{c}条'
257
+ }
258
+ } : {
259
+ field: 'value',
260
+ label: {
261
+ show: true,
262
+ position: 'top',
263
+ formatter: '{c}条'
264
+ }
265
+ })],
266
+ data: data
267
+ });
268
+ };
269
+ var PipeDataView = function PipeDataView(props) {
270
+ var _TYPE$;
271
+ var dataSource = props.dataSource;
272
+ var _useProps3 = (0, _useProps6["default"])(),
273
+ TextEnum = _useProps3.TextEnum;
274
+ var _useState7 = (0, _react.useState)((_TYPE$ = TYPE(TextEnum)[0]) === null || _TYPE$ === void 0 ? void 0 : _TYPE$.value),
275
+ _useState8 = _slicedToArray(_useState7, 2),
276
+ type = _useState8[0],
277
+ setType = _useState8[1];
278
+ var chartData = (0, _react.useMemo)(function () {
279
+ var data = [{
280
+ name: TextEnum.under50mm,
281
+ value: 0,
282
+ filter: function filter(item) {
283
+ return item.ds < 50;
284
+ }
285
+ }, {
286
+ name: '50-100mm',
287
+ value: 0,
288
+ filter: function filter(item) {
289
+ return item.ds >= 50 && item.ds < 100;
290
+ }
291
+ }, {
292
+ name: '100-300mm',
293
+ value: 0,
294
+ filter: function filter(item) {
295
+ return item.ds >= 100 && item.ds < 300;
296
+ }
297
+ }, {
298
+ name: '300-600mm',
299
+ value: 0,
300
+ filter: function filter(item) {
301
+ return item.ds >= 300 && item.ds < 600;
302
+ }
303
+ }, {
304
+ name: '600-1000mm',
305
+ value: 0,
306
+ filter: function filter(item) {
307
+ return item.ds >= 600 && item.ds < 1000;
308
+ }
309
+ }, {
310
+ name: TextEnum.over1000mm,
311
+ value: 0,
312
+ filter: function filter(item) {
313
+ return item.ds >= 1000;
314
+ }
315
+ }];
316
+ dataSource.map(function (item) {
317
+ item.ds = item.ds ? Number(item.ds) : 0;
318
+ data.map(function (d) {
319
+ if (d.filter(item)) {
320
+ d.value += 1;
321
+ }
322
+ });
323
+ });
324
+ return data.filter(function (v) {
325
+ return v.value > 0;
326
+ });
327
+ }, [dataSource]);
328
+ var columns = [{
329
+ title: TextEnum.lengthM,
330
+ dataIndex: 'lineLength',
331
+ width: 100
332
+ }];
333
+ var totalLength = 0;
334
+ if (dataSource !== null && dataSource !== void 0 && dataSource.length) {
335
+ totalLength = dataSource.reduce(function (prev, cur) {
336
+ return prev + (cur['lineLength'] || 0);
337
+ }, 0) / 1000;
338
+ }
339
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_antd.Segmented, {
340
+ options: TYPE(TextEnum),
341
+ value: type,
342
+ onChange: setType
343
+ }), type === 'table' ? /*#__PURE__*/_react["default"].createElement(TableView, {
344
+ columns: columns,
345
+ dataSource: dataSource,
346
+ info: /*#__PURE__*/_react["default"].createElement(_Info["default"], {
347
+ list: [{
348
+ label: TextEnum.pipeTotalCount,
349
+ value: (dataSource === null || dataSource === void 0 ? void 0 : dataSource.length) || 0,
350
+ unit: TextEnum.unitItemText
351
+ }, {
352
+ label: TextEnum.pipeTotalLength,
353
+ value: totalLength ? Number(totalLength).toFixed(2) : totalLength,
354
+ unit: 'km'
355
+ }]
356
+ })
357
+ }) : /*#__PURE__*/_react["default"].createElement(ChartView, {
358
+ data: chartData,
359
+ type: type
360
+ }));
361
+ };
362
+ var DeviceInfo = function DeviceInfo(props) {
363
+ var data = props.data;
364
+ var list = (0, _react.useMemo)(function () {
365
+ var val = {};
366
+ data.map(function (item) {
367
+ var deviceValues = item.deviceValues;
368
+ if (deviceValues !== null && deviceValues !== void 0 && deviceValues.length) {
369
+ deviceValues.map(function (device) {
370
+ var factorValues = device.factorValues;
371
+ if (factorValues !== null && factorValues !== void 0 && factorValues.length) {
372
+ factorValues.map(function (factor) {
373
+ var monitorItemName = factor.monitorItemName,
374
+ formatValue = factor.formatValue,
375
+ unit = factor.unit,
376
+ collectFrequency = factor.collectFrequency;
377
+ if (collectFrequency === 'realtime' && formatValue) {
378
+ val[monitorItemName] = val[monitorItemName] || {
379
+ name: monitorItemName,
380
+ unit: unit,
381
+ data: []
382
+ };
383
+ val[monitorItemName].data.push(Number(formatValue));
384
+ }
385
+ });
386
+ }
387
+ });
388
+ }
389
+ });
390
+ var dataVal = [];
391
+ for (var i in val) {
392
+ var _data = val[i].data;
393
+ var maxValue = Math.max.apply(Math, _toConsumableArray(_data));
394
+ var minValue = Math.min.apply(Math, _toConsumableArray(_data));
395
+ var avgValue = _data.reduce(function (prev, cur) {
396
+ return prev + cur;
397
+ }, 0) / _data.length;
398
+ dataVal.push(_objectSpread(_objectSpread({}, val[i]), {}, {
399
+ maxValue: maxValue,
400
+ minValue: minValue,
401
+ avgValue: avgValue ? Number(avgValue).toFixed(2) : avgValue
402
+ }));
403
+ }
404
+ return dataVal;
405
+ }, [data === null || data === void 0 ? void 0 : data.length]);
406
+ if (!(list !== null && list !== void 0 && list.length)) {
407
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null);
408
+ }
409
+ return /*#__PURE__*/_react["default"].createElement("div", {
410
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-device"))
411
+ }, /*#__PURE__*/_react["default"].createElement("div", {
412
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-device-top"))
413
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "\u76D1\u6D4B\u9879"), /*#__PURE__*/_react["default"].createElement("div", null, "\u6700\u5927\u503C"), /*#__PURE__*/_react["default"].createElement("div", null, "\u6700\u5C0F\u503C"), /*#__PURE__*/_react["default"].createElement("div", null, "\u5E73\u5747\u503C")), /*#__PURE__*/_react["default"].createElement("div", {
414
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-device-content"))
415
+ }, (list === null || list === void 0 ? void 0 : list.length) > 0 && list.map(function (item, index) {
416
+ return /*#__PURE__*/_react["default"].createElement("div", {
417
+ key: index,
418
+ className: (0, _classnames2["default"])("".concat(classPrefix, "-device-content-item"))
419
+ }, /*#__PURE__*/_react["default"].createElement("div", null, item.name), /*#__PURE__*/_react["default"].createElement("div", null, item.maxValue, /*#__PURE__*/_react["default"].createElement("span", null, item.unit)), /*#__PURE__*/_react["default"].createElement("div", null, item.minValue, /*#__PURE__*/_react["default"].createElement("span", null, item.unit)), /*#__PURE__*/_react["default"].createElement("div", null, item.avgValue, /*#__PURE__*/_react["default"].createElement("span", null, item.unit)));
420
+ })));
421
+ };
422
+ var DeviceDataView = function DeviceDataView(props) {
423
+ var dataSource = props.dataSource;
424
+ var _useState9 = (0, _react.useState)(null),
425
+ _useState0 = _slicedToArray(_useState9, 2),
426
+ filter = _useState0[0],
427
+ setFilter = _useState0[1];
428
+ var _useProps4 = (0, _useProps6["default"])(),
429
+ TextEnum = _useProps4.TextEnum;
430
+ var DEVICE_STATUS_NAME = {
431
+ 1: {
432
+ label: TextEnum.online,
433
+ color: '#119FFB'
434
+ },
435
+ // 正常/在线
436
+ 2: {
437
+ label: TextEnum.alarm,
438
+ color: '#CE3739'
439
+ },
440
+ // 报警/异常
441
+ 3: {
442
+ label: TextEnum.offline,
443
+ color: '#AAAAAD'
444
+ },
445
+ // 离线
446
+ 4: {
447
+ label: TextEnum.fault,
448
+ color: '#CE3739'
449
+ } // 故障/堵塞
450
+ };
451
+ var columns = [{
452
+ title: TextEnum.status,
453
+ dataIndex: 'status',
454
+ width: 100,
455
+ render: function render(text) {
456
+ if (DEVICE_STATUS_NAME[text]) {
457
+ var _DEVICE_STATUS_NAME$t = DEVICE_STATUS_NAME[text],
458
+ color = _DEVICE_STATUS_NAME$t.color,
459
+ label = _DEVICE_STATUS_NAME$t.label;
460
+ return /*#__PURE__*/_react["default"].createElement("span", {
461
+ style: {
462
+ color: color
463
+ }
464
+ }, label);
465
+ }
466
+ return '-';
467
+ }
468
+ }];
469
+ var tableData = (0, _react.useMemo)(function () {
470
+ return filter ? dataSource.filter(function (item) {
471
+ return Number(item.status) === filter;
472
+ }) : dataSource;
473
+ }, [filter, dataSource === null || dataSource === void 0 ? void 0 : dataSource.length]);
474
+ var getTotal = function getTotal(value) {
475
+ return dataSource.filter(function (item) {
476
+ return Number(item.status) === value;
477
+ }).length;
478
+ };
479
+ return /*#__PURE__*/_react["default"].createElement(TableView, {
480
+ columns: columns,
481
+ dataSource: tableData,
482
+ info: /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Info["default"], {
483
+ list: [{
484
+ label: TextEnum.total,
485
+ value: (dataSource === null || dataSource === void 0 ? void 0 : dataSource.length) || 0,
486
+ unit: TextEnum.unitGeText,
487
+ onClick: function onClick() {
488
+ return setFilter(null);
489
+ }
490
+ }, {
491
+ label: TextEnum.online,
492
+ value: getTotal(1),
493
+ unit: TextEnum.unitGeText,
494
+ onClick: function onClick() {
495
+ return setFilter(1);
496
+ }
497
+ }, {
498
+ label: TextEnum.alarm,
499
+ value: getTotal(2),
500
+ unit: TextEnum.unitGeText,
501
+ onClick: function onClick() {
502
+ return setFilter(2);
503
+ }
504
+ }, {
505
+ label: TextEnum.offline,
506
+ value: getTotal(3),
507
+ unit: TextEnum.unitGeText,
508
+ onClick: function onClick() {
509
+ return setFilter(3);
510
+ }
511
+ }]
512
+ }), /*#__PURE__*/_react["default"].createElement(DeviceInfo, {
513
+ data: dataSource
514
+ }))
515
+ });
516
+ };
517
+ var _default = exports["default"] = function _default(props) {
518
+ var onClose = props.onClose,
519
+ drawType = props.drawType,
520
+ title = props.title,
521
+ renderTableActive = props.renderTableActive,
522
+ statistic = props.statistic;
523
+ var _useProps5 = (0, _useProps6["default"])(),
524
+ map = _useProps5.map;
525
+ var _useState1 = (0, _react.useState)(''),
526
+ _useState10 = _slicedToArray(_useState1, 2),
527
+ currentLayerKey = _useState10[0],
528
+ setCurrentLayerKey = _useState10[1];
529
+ var _useState11 = (0, _react.useState)([]),
530
+ _useState12 = _slicedToArray(_useState11, 2),
531
+ dataSource = _useState12[0],
532
+ setDataSource = _useState12[1];
533
+ var _useState13 = (0, _react.useState)(false),
534
+ _useState14 = _slicedToArray(_useState13, 2),
535
+ loading = _useState14[0],
536
+ setLoading = _useState14[1];
537
+ var _useState15 = (0, _react.useState)([]),
538
+ _useState16 = _slicedToArray(_useState15, 2),
539
+ layersOpts = _useState16[0],
540
+ setLayersOpts = _useState16[1];
541
+ var _useState17 = (0, _react.useState)({}),
542
+ _useState18 = _slicedToArray(_useState17, 2),
543
+ feature = _useState18[0],
544
+ setFeature = _useState18[1];
545
+ var draw = (0, _react.useRef)();
546
+ var currentKey = (0, _react.useRef)();
547
+ (0, _ahooks.useDeepCompareEffect)(function () {
548
+ onClick();
549
+ }, [currentLayerKey, feature, layersOpts]);
550
+ (0, _react.useEffect)(function () {
551
+ var layersChange = function layersChange() {
552
+ getOptions();
553
+ };
554
+ layersChange();
555
+
556
+ // 添加图层变化监听事件
557
+ map.layers.on('change', layersChange);
558
+ return function () {
559
+ // 移除图层变化监听事件
560
+ map.layers.un('change', layersChange);
561
+ };
562
+ }, []);
563
+ (0, _react.useEffect)(function () {
564
+ draw.current = new _Draw["default"]({
565
+ map: map,
566
+ zIndex: 80
567
+ });
568
+ draw.current.draw(drawType, function (feature) {
569
+ setFeature(feature);
570
+ });
571
+ return function () {
572
+ draw.current.destroy();
573
+ map.hideTemplate();
574
+ currentKey.current = null;
575
+ };
576
+ }, []);
577
+ var getOptions = function getOptions() {
578
+ if (map) {
579
+ var _opts$;
580
+ var opts = [];
581
+ var layers = map.getAllLayers().filter(function (v) {
582
+ return !v.viewOnly && v.key && v.name && v.layerControl && v.show && v.key !== 'Highlight';
583
+ });
584
+ layers.map(function (v) {
585
+ opts.push(_objectSpread(_objectSpread({}, v), {}, {
586
+ value: v.key,
587
+ label: v.name
588
+ }));
589
+ });
590
+
591
+ // 当前key对应的图层还显示的话取当前的key否者取第一个layersOpts的key
592
+ var _key = opts === null || opts === void 0 || (_opts$ = opts[0]) === null || _opts$ === void 0 ? void 0 : _opts$.value;
593
+ if (currentKey.current) {
594
+ var layer = map.layers.getLayerByKey(currentKey.current);
595
+ if (layer && layer !== null && layer !== void 0 && layer.show) {
596
+ _key = currentKey.current;
597
+ }
598
+ }
599
+ currentKey.current = _key;
600
+ setCurrentLayerKey(_key);
601
+ setLayersOpts(opts);
602
+ }
603
+ };
604
+ var onClick = function onClick() {
605
+ var _feature$getGeometry4;
606
+ setDataSource([]);
607
+ if (!feature) return;
608
+ var geometry = feature === null || feature === void 0 || (_feature$getGeometry4 = feature.getGeometry) === null || _feature$getGeometry4 === void 0 ? void 0 : _feature$getGeometry4.call(feature);
609
+ if (!geometry) return;
610
+ setLoading(true);
611
+ var layer = map.layers.getLayerByKey(currentLayerKey);
612
+ if (geometry && currentLayerKey && layer) {
613
+ var tableData = [];
614
+ // wms图层
615
+ if (layer instanceof _layer2.Image || layer instanceof _WmsLayer["default"]) {
616
+ getWmsData(geometry, layer, tableData);
617
+ } else if (layer instanceof _layer2.Vector) {
618
+ getWfsData(geometry, layer, tableData);
619
+ }
620
+ } else {
621
+ setLoading(false);
622
+ if (!geometry) {
623
+ _antd.message.destroy();
624
+ _antd.message.info('请先框选图层', 2);
625
+ }
626
+ if (!currentLayerKey) {
627
+ _antd.message.destroy();
628
+ _antd.message.info('请先选择图层', 2);
629
+ }
630
+ }
631
+ };
632
+
633
+ /**
634
+ * @description: wfs图层时获取框选数据
635
+ * @param {*} geometry
636
+ * @param {*} layer
637
+ * @param {*} tableData
638
+ * @return {*}
639
+ */
640
+ var getWfsData = function getWfsData(geometry, layer, tableData) {
641
+ var extent = geometry.getExtent();
642
+ var source = layer.getSource();
643
+ var features = [];
644
+ var getFeatureInfo = function getFeatureInfo(feature) {
645
+ var listKeys = feature.getKeys();
646
+ var data = {};
647
+ listKeys.forEach(function (item) {
648
+ if (feature.get(item)) {
649
+ data[item] = feature.get(item);
650
+ if (layer.labelField) {
651
+ data.NAME = feature.get(layer.labelField);
652
+ }
653
+ data.feature = feature;
654
+ }
655
+ });
656
+ return data;
657
+ };
658
+ if (source.forEachFeatureIntersectingExtent && extent) {
659
+ source.forEachFeatureIntersectingExtent(extent, function (feature) {
660
+ var featureList = feature.get('features');
661
+ var addTableData = function addTableData(f) {
662
+ var data = getFeatureInfo(f);
663
+ tableData.push(data);
664
+ features.push(f);
665
+ };
666
+ if ((featureList === null || featureList === void 0 ? void 0 : featureList.length) > 1) {
667
+ featureList.forEach(function (f) {
668
+ // 圈选处理
669
+ if (drawType === 'Circle') {
670
+ var polygonGeometry = new _Polygon.fromCircle(geometry);
671
+ var featureIntersects = getFeatureIntersects(polygonGeometry, f);
672
+ if (!featureIntersects) {
673
+ return;
674
+ }
675
+ }
676
+ addTableData(f);
677
+ });
678
+ } else {
679
+ // 圈选处理
680
+ if (drawType === 'Circle') {
681
+ var polygonGeometry = new _Polygon.fromCircle(geometry);
682
+ var featureIntersects = getFeatureIntersects(polygonGeometry, feature);
683
+ if (!featureIntersects) {
684
+ return;
685
+ }
686
+ }
687
+ addTableData(feature);
688
+ }
689
+ });
690
+ setLoading(false);
691
+ map.setHighlightFeature(features);
692
+ setDataSource(tableData);
693
+ } else {
694
+ setLoading(false);
695
+ }
696
+ };
697
+
698
+ /**
699
+ * @description: wms图层时获取框选数据
700
+ * @return {*}
701
+ */
702
+ var getWmsData = function getWmsData(geometry, layer, tableData) {
703
+ var _layer$getSource, _layer$group;
704
+ var _filter = (layer === null || layer === void 0 || (_layer$getSource = layer.getSource()) === null || _layer$getSource === void 0 || (_layer$getSource = _layer$getSource.params_) === null || _layer$getSource === void 0 ? void 0 : _layer$getSource.cql_filter) || '';
705
+ if (layer !== null && layer !== void 0 && (_layer$group = layer.group) !== null && _layer$group !== void 0 && _layer$group.length) {
706
+ _filter = (0, _ImageLayer.getFilter)(layer.group);
707
+ }
708
+ var coorStr = '';
709
+ var coordinates = geometry.getCoordinates();
710
+
711
+ // 圈选处理
712
+ if (drawType === 'Circle') {
713
+ var polygonGeometry = new _Polygon.fromCircle(geometry);
714
+ coordinates = polygonGeometry.getCoordinates();
715
+ }
716
+ coordinates[0].forEach(function (v, i) {
717
+ if (i == 0) {
718
+ coorStr += "".concat(v[0], " ").concat(v[1]);
719
+ } else {
720
+ coorStr += ", ".concat(v[0], " ").concat(v[1]);
721
+ }
722
+ });
723
+ // 增加图层的其他过滤
724
+ var filter = _filter ? "(".concat(_filter, ") and ") : '';
725
+ (0, _layer.getWFSFeatureInfoByLayer)(layer, "".concat(filter, "INTERSECTS(geo_location, POLYGON((").concat(coorStr, ")))")).then(function (features) {
726
+ setLoading(false);
727
+ map.setHighlightFeature(features);
728
+ if (features !== null && features !== void 0 && features.length) {
729
+ features.forEach(function (item) {
730
+ var listKeys = item.getKeys();
731
+ var data = {};
732
+ listKeys.forEach(function (key) {
733
+ if (item.get(key)) {
734
+ data[key] = item.get(key);
735
+ data.feature = item;
736
+ }
737
+ });
738
+ if (layer.labelField) {
739
+ data.NAME = item.get(layer.labelField) || '';
740
+ }
741
+
742
+ // 处理管线长度字段
743
+ if (data.line_length) {
744
+ data.lineLength = data.lineLength || data.line_length;
745
+ }
746
+ tableData.push(data);
747
+ });
748
+ setDataSource(tableData);
749
+ } else {
750
+ _antd.message.destroy();
751
+ _antd.message.info('暂无数据', 2);
752
+ }
753
+ });
754
+ };
755
+
756
+ // 判断是否是设备图层
757
+ var isDeviceLayer = (0, _react.useMemo)(function () {
758
+ var _layer$params, _layer$url;
759
+ var layer = map === null || map === void 0 ? void 0 : map.getLayerByKey(currentLayerKey);
760
+ var deviceTypeId = layer === null || layer === void 0 || (_layer$params = layer.params) === null || _layer$params === void 0 ? void 0 : _layer$params.deviceTypeId;
761
+ var url = (layer === null || layer === void 0 || (_layer$url = layer.url) === null || _layer$url === void 0 ? void 0 : _layer$url.indexOf('/cloud/device/deviceMap/list')) !== -1;
762
+ return Boolean(deviceTypeId && url);
763
+ }, [currentLayerKey]);
764
+
765
+ // 判断是否是管线图层
766
+ var isPipeLineLayer = currentLayerKey && currentLayerKey.toUpperCase().indexOf('LINE') !== -1;
767
+ return /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
768
+ title: title || '',
769
+ onClose: onClose,
770
+ width: 300
771
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Spin, {
772
+ spinning: loading
773
+ }, /*#__PURE__*/_react["default"].createElement(LayerSelect, {
774
+ options: layersOpts,
775
+ value: currentLayerKey,
776
+ onChange: setCurrentLayerKey,
777
+ currentKey: currentKey
778
+ }), renderTableActive && renderTableActive(dataSource, currentLayerKey, onClick), statistic ? isPipeLineLayer ? /*#__PURE__*/_react["default"].createElement(PipeDataView, {
779
+ dataSource: dataSource
780
+ }) : isDeviceLayer ? /*#__PURE__*/_react["default"].createElement(DeviceDataView, {
781
+ dataSource: dataSource
782
+ }) : /*#__PURE__*/_react["default"].createElement(TableView, {
783
+ dataSource: dataSource
784
+ }) : /*#__PURE__*/_react["default"].createElement(TableView, {
785
+ dataSource: dataSource
786
+ })));
787
+ };
788
+ //# sourceMappingURL=index.js.map