@supermapgis/vue-iclient-leaflet 11.2.0

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 (719) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +31 -0
  3. package/dist/iclient-leaflet-vue.css +24471 -0
  4. package/dist/iclient-leaflet-vue.js +190317 -0
  5. package/dist/iclient-leaflet-vue.min.css +9 -0
  6. package/dist/iclient-leaflet-vue.min.js +517 -0
  7. package/dist/index.js +15 -0
  8. package/lib/_assets/iconfont/icon-sm-components.css +245 -0
  9. package/lib/_assets/iconfont/icon-sm-components.eot +0 -0
  10. package/lib/_assets/iconfont/icon-sm-components.svg +197 -0
  11. package/lib/_assets/iconfont/icon-sm-components.ttf +0 -0
  12. package/lib/_assets/iconfont/icon-sm-components.woff +0 -0
  13. package/lib/_assets/iconfont/icon-sm-components.woff2 +0 -0
  14. package/lib/_lang/en.js +446 -0
  15. package/lib/_lang/index.js +385 -0
  16. package/lib/_lang/zh.js +445 -0
  17. package/lib/_mixin/AntdRender.js +686 -0
  18. package/lib/_mixin/Card.js +197 -0
  19. package/lib/_mixin/GridLayer.js +153 -0
  20. package/lib/_mixin/Layer.js +140 -0
  21. package/lib/_mixin/Options.js +114 -0
  22. package/lib/_mixin/Popper.js +134 -0
  23. package/lib/_mixin/Theme.js +441 -0
  24. package/lib/_mixin/ThirdService.js +243 -0
  25. package/lib/_mixin/TileLayer.js +138 -0
  26. package/lib/_mixin/Timer.js +230 -0
  27. package/lib/_mixin/VmUpdater.js +204 -0
  28. package/lib/_mixin/WebMapBase.js +3467 -0
  29. package/lib/_mixin/map-events.js +200 -0
  30. package/lib/_mixin/map-getter.js +341 -0
  31. package/lib/_types/AddressMatchParameter.js +118 -0
  32. package/lib/_types/GeoJSONParamter.js +113 -0
  33. package/lib/_types/RestDataParameter.js +141 -0
  34. package/lib/_types/RestMapParameter.js +141 -0
  35. package/lib/_types/RestParameter.js +121 -0
  36. package/lib/_types/event/BaseTypes.js +124 -0
  37. package/lib/_types/event/Event.js +442 -0
  38. package/lib/_types/event/Events.js +484 -0
  39. package/lib/_types/event/Pixel.js +295 -0
  40. package/lib/_types/event/Util.js +305 -0
  41. package/lib/_types/iPortalDataParameter.js +121 -0
  42. package/lib/_types/iServerBaseParameter.js +111 -0
  43. package/lib/_types/iServerDataParameter.js +154 -0
  44. package/lib/_types/iServerMapParameter.js +154 -0
  45. package/lib/_types/index.js +231 -0
  46. package/lib/_types/map-event.js +163 -0
  47. package/lib/_utils/EchartsDataService.js +843 -0
  48. package/lib/_utils/RestService.js +7096 -0
  49. package/lib/_utils/WebMapService.js +1607 -0
  50. package/lib/_utils/epsg-define.js +181 -0
  51. package/lib/_utils/get-features.js +232 -0
  52. package/lib/_utils/global-event.js +134 -0
  53. package/lib/_utils/iPortalDataService.js +7459 -0
  54. package/lib/_utils/iServerRestService.js +7603 -0
  55. package/lib/_utils/props-binder.js +129 -0
  56. package/lib/_utils/statistics.js +147 -0
  57. package/lib/_utils/style/color/colorPalette.js +192 -0
  58. package/lib/_utils/style/color/serialColors.js +352 -0
  59. package/lib/_utils/style/common/common.css +1 -0
  60. package/lib/_utils/style/mixins/config.css +0 -0
  61. package/lib/_utils/style/mixins/mixins.css +0 -0
  62. package/lib/_utils/style/theme/antd.css +25242 -0
  63. package/lib/_utils/style/theme/antdVar.css +0 -0
  64. package/lib/_utils/style/theme/chart.js +7477 -0
  65. package/lib/_utils/style/theme/set-theme.js +200 -0
  66. package/lib/_utils/style/theme/theme.css +0 -0
  67. package/lib/_utils/style/theme/theme.json +356 -0
  68. package/lib/_utils/util.js +484 -0
  69. package/lib/_utils/vue-types/index.js +396 -0
  70. package/lib/_utils/vue-types/utils.js +318 -0
  71. package/lib/avatar/index.js +656 -0
  72. package/lib/avatar/style/avatar.css +1 -0
  73. package/lib/avatar/style/css.js +9 -0
  74. package/lib/avatar/style/index.css +2135 -0
  75. package/lib/avatar/style/index.js +9 -0
  76. package/lib/border/index.js +642 -0
  77. package/lib/border/style/border.css +1 -0
  78. package/lib/border/style/css.js +7 -0
  79. package/lib/border/style/index.js +7 -0
  80. package/lib/breadcrumb/index.js +813 -0
  81. package/lib/breadcrumb/style/breadcrumb.css +1 -0
  82. package/lib/breadcrumb/style/css.js +9 -0
  83. package/lib/breadcrumb/style/index.css +2102 -0
  84. package/lib/breadcrumb/style/index.js +9 -0
  85. package/lib/button/index.js +758 -0
  86. package/lib/button/style/button.css +1 -0
  87. package/lib/button/style/css.js +9 -0
  88. package/lib/button/style/index.css +3571 -0
  89. package/lib/button/style/index.js +9 -0
  90. package/lib/card/index.js +824 -0
  91. package/lib/card/style/card.css +1 -0
  92. package/lib/card/style/css.js +9 -0
  93. package/lib/card/style/index.css +2379 -0
  94. package/lib/card/style/index.js +9 -0
  95. package/lib/chart/index.js +9471 -0
  96. package/lib/chart/style/chart.css +1 -0
  97. package/lib/chart/style/css.js +11 -0
  98. package/lib/chart/style/index.js +11 -0
  99. package/lib/checkbox/index.js +756 -0
  100. package/lib/checkbox/style/checkbox.css +1 -0
  101. package/lib/checkbox/style/css.js +9 -0
  102. package/lib/checkbox/style/index.css +2286 -0
  103. package/lib/checkbox/style/index.js +9 -0
  104. package/lib/collapse/index.js +446 -0
  105. package/lib/collapse/style/collapse.css +1 -0
  106. package/lib/collapse/style/css.js +9 -0
  107. package/lib/collapse/style/index.css +2187 -0
  108. package/lib/collapse/style/index.js +9 -0
  109. package/lib/collapse-card/index.js +588 -0
  110. package/lib/collapse-card/style/collapse-card.css +1 -0
  111. package/lib/collapse-card/style/css.js +7 -0
  112. package/lib/collapse-card/style/index.js +7 -0
  113. package/lib/color-picker/index.js +521 -0
  114. package/lib/color-picker/style/color-picker.css +1 -0
  115. package/lib/color-picker/style/css.js +7 -0
  116. package/lib/color-picker/style/index.js +7 -0
  117. package/lib/date-picker/index.js +680 -0
  118. package/lib/date-picker/style/css.js +9 -0
  119. package/lib/date-picker/style/date-picker.css +1 -0
  120. package/lib/date-picker/style/index.css +4236 -0
  121. package/lib/date-picker/style/index.js +9 -0
  122. package/lib/dropdown/index.js +347 -0
  123. package/lib/dropdown/style/css.js +9 -0
  124. package/lib/dropdown/style/dropdown.css +1 -0
  125. package/lib/dropdown/style/index.css +2344 -0
  126. package/lib/dropdown/style/index.js +9 -0
  127. package/lib/empty/index.js +643 -0
  128. package/lib/empty/style/css.js +9 -0
  129. package/lib/empty/style/empty.css +1 -0
  130. package/lib/empty/style/index.css +2095 -0
  131. package/lib/empty/style/index.js +9 -0
  132. package/lib/icon/index.js +681 -0
  133. package/lib/icon/style/css.js +9 -0
  134. package/lib/icon/style/icon.css +1 -0
  135. package/lib/icon/style/index.css +2058 -0
  136. package/lib/icon/style/index.js +9 -0
  137. package/lib/identify/index.js +1081 -0
  138. package/lib/identify/style/css.js +9 -0
  139. package/lib/identify/style/identify.css +1 -0
  140. package/lib/identify/style/index.js +9 -0
  141. package/lib/iframe/index.js +344 -0
  142. package/lib/iframe/style/css.js +7 -0
  143. package/lib/iframe/style/iframe.css +1 -0
  144. package/lib/iframe/style/index.js +7 -0
  145. package/lib/image/index.js +446 -0
  146. package/lib/image/style/css.js +7 -0
  147. package/lib/image/style/image.css +1 -0
  148. package/lib/image/style/index.js +7 -0
  149. package/lib/index.js +1040 -0
  150. package/lib/indicator/index.js +996 -0
  151. package/lib/indicator/style/countTo.css +1 -0
  152. package/lib/indicator/style/css.js +7 -0
  153. package/lib/indicator/style/index.js +7 -0
  154. package/lib/indicator/style/indicator.css +1 -0
  155. package/lib/init.js +207 -0
  156. package/lib/input/index.js +1151 -0
  157. package/lib/input/style/css.js +9 -0
  158. package/lib/input/style/index.css +2549 -0
  159. package/lib/input/style/index.js +9 -0
  160. package/lib/input/style/input.css +1 -0
  161. package/lib/input-number/index.js +739 -0
  162. package/lib/input-number/style/css.js +9 -0
  163. package/lib/input-number/style/index.css +2360 -0
  164. package/lib/input-number/style/index.js +9 -0
  165. package/lib/input-number/style/input-number.css +1 -0
  166. package/lib/layout/index.js +700 -0
  167. package/lib/layout/style/css.js +9 -0
  168. package/lib/layout/style/index.css +2185 -0
  169. package/lib/layout/style/index.js +9 -0
  170. package/lib/layout/style/layout.css +0 -0
  171. package/lib/liquid-fill/index.js +983 -0
  172. package/lib/liquid-fill/style/css.js +7 -0
  173. package/lib/liquid-fill/style/index.js +7 -0
  174. package/lib/liquid-fill/style/liquid-fill.css +1 -0
  175. package/lib/marker/index.js +649 -0
  176. package/lib/marker/style/css.js +0 -0
  177. package/lib/marker/style/index.js +0 -0
  178. package/lib/menu/index.js +858 -0
  179. package/lib/menu/style/css.js +9 -0
  180. package/lib/menu/style/index.css +2777 -0
  181. package/lib/menu/style/index.js +9 -0
  182. package/lib/menu/style/menu.css +0 -0
  183. package/lib/message/index.js +174 -0
  184. package/lib/message/style/css.js +9 -0
  185. package/lib/message/style/index.css +2143 -0
  186. package/lib/message/style/index.js +9 -0
  187. package/lib/message/style/message.css +1 -0
  188. package/lib/modal/index.js +742 -0
  189. package/lib/modal/style/css.js +9 -0
  190. package/lib/modal/style/index.css +2289 -0
  191. package/lib/modal/style/index.js +9 -0
  192. package/lib/modal/style/modal.css +1 -0
  193. package/lib/nav/style/css.js +9 -0
  194. package/lib/nav/style/index.js +9 -0
  195. package/lib/nav/style/nav.css +1 -0
  196. package/lib/notification/index.js +151 -0
  197. package/lib/notification/style/css.js +9 -0
  198. package/lib/notification/style/index.css +2285 -0
  199. package/lib/notification/style/index.js +9 -0
  200. package/lib/notification/style/notification.css +1 -0
  201. package/lib/pagination/index.js +352 -0
  202. package/lib/pagination/style/css.js +9 -0
  203. package/lib/pagination/style/index.css +2529 -0
  204. package/lib/pagination/style/index.js +9 -0
  205. package/lib/pagination/style/pagination.css +1 -0
  206. package/lib/popup/index.js +800 -0
  207. package/lib/popup/style/css.js +0 -0
  208. package/lib/popup/style/index.js +0 -0
  209. package/lib/progress/index.js +1146 -0
  210. package/lib/progress/style/css.js +9 -0
  211. package/lib/progress/style/index.css +2226 -0
  212. package/lib/progress/style/index.js +9 -0
  213. package/lib/progress/style/progress.css +1 -0
  214. package/lib/radio/index.js +852 -0
  215. package/lib/radio/style/css.js +9 -0
  216. package/lib/radio/style/index.css +2381 -0
  217. package/lib/radio/style/index.js +9 -0
  218. package/lib/radio/style/radio.css +1 -0
  219. package/lib/select/index.js +836 -0
  220. package/lib/select/style/css.js +9 -0
  221. package/lib/select/style/index.css +2655 -0
  222. package/lib/select/style/index.js +9 -0
  223. package/lib/select/style/select.css +1 -0
  224. package/lib/slider/index.js +347 -0
  225. package/lib/slider/style/css.js +9 -0
  226. package/lib/slider/style/index.css +2233 -0
  227. package/lib/slider/style/index.js +9 -0
  228. package/lib/slider/style/slider.css +1 -0
  229. package/lib/slideshow/index.js +913 -0
  230. package/lib/slideshow/style/css.js +9 -0
  231. package/lib/slideshow/style/index.js +9 -0
  232. package/lib/slideshow/style/slideshow.css +1 -0
  233. package/lib/spin/index.js +357 -0
  234. package/lib/spin/style/css.js +9 -0
  235. package/lib/spin/style/index.css +2268 -0
  236. package/lib/spin/style/index.js +9 -0
  237. package/lib/spin/style/spin.css +1 -0
  238. package/lib/steps/index.js +748 -0
  239. package/lib/steps/style/css.js +9 -0
  240. package/lib/steps/style/index.css +2724 -0
  241. package/lib/steps/style/index.js +9 -0
  242. package/lib/steps/style/steps.css +1 -0
  243. package/lib/style.js +7 -0
  244. package/lib/switch/index.js +654 -0
  245. package/lib/switch/style/css.js +9 -0
  246. package/lib/switch/style/index.css +2241 -0
  247. package/lib/switch/style/index.js +9 -0
  248. package/lib/switch/style/switch.css +1 -0
  249. package/lib/table/index.js +810 -0
  250. package/lib/table/style/css.js +9 -0
  251. package/lib/table/style/index.css +2909 -0
  252. package/lib/table/style/index.js +9 -0
  253. package/lib/table/style/table.css +1 -0
  254. package/lib/table-popup/index.js +438 -0
  255. package/lib/table-popup/style/css.js +9 -0
  256. package/lib/table-popup/style/index.js +9 -0
  257. package/lib/table-popup/style/table-popup.css +1 -0
  258. package/lib/tabs/index.js +743 -0
  259. package/lib/tabs/style/css.js +9 -0
  260. package/lib/tabs/style/index.css +2692 -0
  261. package/lib/tabs/style/index.js +9 -0
  262. package/lib/tabs/style/tabs.css +1 -0
  263. package/lib/text/index.js +434 -0
  264. package/lib/text/style/css.js +7 -0
  265. package/lib/text/style/index.js +7 -0
  266. package/lib/text/style/text.css +1 -0
  267. package/lib/tile-layer/index.js +535 -0
  268. package/lib/tile-layer/style/css.js +0 -0
  269. package/lib/tile-layer/style/index.js +0 -0
  270. package/lib/time-line/index.js +654 -0
  271. package/lib/time-line/style/css.js +7 -0
  272. package/lib/time-line/style/index.js +7 -0
  273. package/lib/time-line/style/time-line.css +1 -0
  274. package/lib/time-picker/index.js +669 -0
  275. package/lib/time-picker/style/css.js +9 -0
  276. package/lib/time-picker/style/index.css +2418 -0
  277. package/lib/time-picker/style/index.js +9 -0
  278. package/lib/time-picker/style/time-picker.css +1 -0
  279. package/lib/time-range/index.js +526 -0
  280. package/lib/time-range/style/css.js +7 -0
  281. package/lib/time-range/style/index.js +7 -0
  282. package/lib/time-range/style/time-range.css +1 -0
  283. package/lib/time-slider/index.js +1169 -0
  284. package/lib/time-slider/style/css.js +7 -0
  285. package/lib/time-slider/style/index.js +7 -0
  286. package/lib/time-slider/style/time-slider.css +1 -0
  287. package/lib/time-text/index.js +393 -0
  288. package/lib/time-text/style/css.js +7 -0
  289. package/lib/time-text/style/index.js +7 -0
  290. package/lib/time-text/style/time-text.css +1 -0
  291. package/lib/tooltip/index.js +635 -0
  292. package/lib/tooltip/style/css.js +9 -0
  293. package/lib/tooltip/style/index.css +2231 -0
  294. package/lib/tooltip/style/index.js +9 -0
  295. package/lib/tooltip/style/tooltip.css +0 -0
  296. package/lib/transfer/index.js +636 -0
  297. package/lib/transfer/style/css.js +9 -0
  298. package/lib/transfer/style/index.css +2302 -0
  299. package/lib/transfer/style/index.js +9 -0
  300. package/lib/transfer/style/transfer.css +1 -0
  301. package/lib/tree/index.js +857 -0
  302. package/lib/tree/style/css.js +9 -0
  303. package/lib/tree/style/index.css +2644 -0
  304. package/lib/tree/style/index.js +9 -0
  305. package/lib/tree/style/tree.css +1 -0
  306. package/lib/tree-select/index.js +765 -0
  307. package/lib/tree-select/style/css.js +9 -0
  308. package/lib/tree-select/style/index.css +2508 -0
  309. package/lib/tree-select/style/index.js +9 -0
  310. package/lib/tree-select/style/tree-select.css +1 -0
  311. package/lib/video-player/index.js +1472 -0
  312. package/lib/video-player/style/css.js +11 -0
  313. package/lib/video-player/style/index.js +11 -0
  314. package/lib/video-player/style/video-player.css +1 -0
  315. package/lib/web-map/index.js +2241 -0
  316. package/lib/web-map/style/css.js +15 -0
  317. package/lib/web-map/style/index.js +15 -0
  318. package/lib/web-map/style/web-map.css +1 -0
  319. package/package.json +97 -0
  320. package/src/common/_assets/iconfont/icon-sm-components.css +245 -0
  321. package/src/common/_assets/iconfont/icon-sm-components.eot +0 -0
  322. package/src/common/_assets/iconfont/icon-sm-components.svg +197 -0
  323. package/src/common/_assets/iconfont/icon-sm-components.ttf +0 -0
  324. package/src/common/_assets/iconfont/icon-sm-components.woff +0 -0
  325. package/src/common/_assets/iconfont/icon-sm-components.woff2 +0 -0
  326. package/src/common/_lang/en.js +355 -0
  327. package/src/common/_lang/index.js +177 -0
  328. package/src/common/_lang/zh.js +342 -0
  329. package/src/common/_mixin/AntdRender.ts +114 -0
  330. package/src/common/_mixin/Card.ts +22 -0
  331. package/src/common/_mixin/Theme.ts +222 -0
  332. package/src/common/_mixin/ThirdService.ts +58 -0
  333. package/src/common/_mixin/Timer.ts +58 -0
  334. package/src/common/_mixin/VmUpdater.ts +46 -0
  335. package/src/common/_types/AddressMatchParameter.js +9 -0
  336. package/src/common/_types/GeoJSONParamter.ts +17 -0
  337. package/src/common/_types/RestDataParameter.js +8 -0
  338. package/src/common/_types/RestMapParameter.js +8 -0
  339. package/src/common/_types/RestParameter.js +12 -0
  340. package/src/common/_types/event/BaseTypes.js +24 -0
  341. package/src/common/_types/event/Event.js +315 -0
  342. package/src/common/_types/event/Events.js +353 -0
  343. package/src/common/_types/event/Pixel.js +177 -0
  344. package/src/common/_types/event/Util.js +173 -0
  345. package/src/common/_types/iPortalDataParameter.js +12 -0
  346. package/src/common/_types/iServerBaseParameter.ts +28 -0
  347. package/src/common/_types/iServerDataParameter.ts +13 -0
  348. package/src/common/_types/iServerMapParameter.ts +13 -0
  349. package/src/common/_utils/EchartsDataService.js +527 -0
  350. package/src/common/_utils/RestService.js +130 -0
  351. package/src/common/_utils/WebMapService.ts +1292 -0
  352. package/src/common/_utils/epsg-define.js +55 -0
  353. package/src/common/_utils/get-features.js +92 -0
  354. package/src/common/_utils/global-event.js +6 -0
  355. package/src/common/_utils/iPortalDataService.js +444 -0
  356. package/src/common/_utils/iServerRestService.js +487 -0
  357. package/src/common/_utils/statistics.js +36 -0
  358. package/src/common/_utils/style/color/colorPalette.ts +63 -0
  359. package/src/common/_utils/style/color/serialColors.ts +207 -0
  360. package/src/common/_utils/style/common/common.scss +39 -0
  361. package/src/common/_utils/style/mixins/config.scss +4 -0
  362. package/src/common/_utils/style/mixins/mixins.scss +48 -0
  363. package/src/common/_utils/style/theme/antd.less +2 -0
  364. package/src/common/_utils/style/theme/antdVar.less +371 -0
  365. package/src/common/_utils/style/theme/chart.js +548 -0
  366. package/src/common/_utils/style/theme/set-theme.ts +43 -0
  367. package/src/common/_utils/style/theme/theme.json +356 -0
  368. package/src/common/_utils/style/theme/theme.scss +495 -0
  369. package/src/common/_utils/util.js +251 -0
  370. package/src/common/_utils/vue-types/index.js +267 -0
  371. package/src/common/_utils/vue-types/utils.js +194 -0
  372. package/src/common/avatar/Avatar.vue +41 -0
  373. package/src/common/avatar/index.js +9 -0
  374. package/src/common/avatar/style/avatar.scss +8 -0
  375. package/src/common/avatar/style/index.js +4 -0
  376. package/src/common/avatar/style/index.less +3 -0
  377. package/src/common/border/Border.vue +121 -0
  378. package/src/common/border/assets/border.config.json +67 -0
  379. package/src/common/border/assets/image/border1.png +0 -0
  380. package/src/common/border/assets/image/border10.png +0 -0
  381. package/src/common/border/assets/image/border11.png +0 -0
  382. package/src/common/border/assets/image/border12.png +0 -0
  383. package/src/common/border/assets/image/border13.png +0 -0
  384. package/src/common/border/assets/image/border2.png +0 -0
  385. package/src/common/border/assets/image/border3.png +0 -0
  386. package/src/common/border/assets/image/border4.png +0 -0
  387. package/src/common/border/assets/image/border5.png +0 -0
  388. package/src/common/border/assets/image/border6.png +0 -0
  389. package/src/common/border/assets/image/border7.png +0 -0
  390. package/src/common/border/assets/image/border8.png +0 -0
  391. package/src/common/border/assets/image/border9.png +0 -0
  392. package/src/common/border/index.js +9 -0
  393. package/src/common/border/style/border.scss +19 -0
  394. package/src/common/border/style/index.js +4 -0
  395. package/src/common/breadcrumb/Breadcrumb.vue +21 -0
  396. package/src/common/breadcrumb/BreadcrumbItem.vue +21 -0
  397. package/src/common/breadcrumb/BreadcrumbSeparator.vue +19 -0
  398. package/src/common/breadcrumb/index.js +13 -0
  399. package/src/common/breadcrumb/style/breadcrumb.scss +21 -0
  400. package/src/common/breadcrumb/style/index.js +4 -0
  401. package/src/common/breadcrumb/style/index.less +3 -0
  402. package/src/common/button/Button.vue +34 -0
  403. package/src/common/button/Group.vue +31 -0
  404. package/src/common/button/index.js +11 -0
  405. package/src/common/button/style/button.scss +91 -0
  406. package/src/common/button/style/index.js +4 -0
  407. package/src/common/button/style/index.less +3 -0
  408. package/src/common/button/style/mixin.scss +56 -0
  409. package/src/common/card/Card.vue +32 -0
  410. package/src/common/card/Grid.vue +20 -0
  411. package/src/common/card/Meta.vue +20 -0
  412. package/src/common/card/index.js +13 -0
  413. package/src/common/card/style/card.scss +43 -0
  414. package/src/common/card/style/index.js +4 -0
  415. package/src/common/card/style/index.less +3 -0
  416. package/src/common/chart/ChartMixin.vue +1572 -0
  417. package/src/common/chart/index.js +9 -0
  418. package/src/common/chart/style/chart.scss +10 -0
  419. package/src/common/chart/style/index.js +5 -0
  420. package/src/common/checkbox/Checkbox.vue +37 -0
  421. package/src/common/checkbox/Group.vue +36 -0
  422. package/src/common/checkbox/index.js +11 -0
  423. package/src/common/checkbox/style/checkbox.scss +40 -0
  424. package/src/common/checkbox/style/index.js +4 -0
  425. package/src/common/checkbox/style/index.less +3 -0
  426. package/src/common/collapse/Collapse.vue +32 -0
  427. package/src/common/collapse/Panel.vue +26 -0
  428. package/src/common/collapse/index.js +11 -0
  429. package/src/common/collapse/style/collapse.scss +10 -0
  430. package/src/common/collapse/style/index.js +4 -0
  431. package/src/common/collapse/style/index.less +3 -0
  432. package/src/common/collapse-card/CollapseCard.vue +150 -0
  433. package/src/common/collapse-card/index.js +9 -0
  434. package/src/common/collapse-card/style/collapse-card.scss +176 -0
  435. package/src/common/collapse-card/style/index.js +4 -0
  436. package/src/common/color-picker/ColorPicker.vue +106 -0
  437. package/src/common/color-picker/index.js +9 -0
  438. package/src/common/color-picker/style/color-picker.scss +37 -0
  439. package/src/common/color-picker/style/index.js +4 -0
  440. package/src/common/config-provider/ConfigProvider.vue +31 -0
  441. package/src/common/config-provider/index.js +9 -0
  442. package/src/common/date-picker/BaseMixin.vue +23 -0
  443. package/src/common/date-picker/DatePicker.vue +20 -0
  444. package/src/common/date-picker/MonthPicker.vue +20 -0
  445. package/src/common/date-picker/RangePicker.vue +20 -0
  446. package/src/common/date-picker/WeekPicker.vue +20 -0
  447. package/src/common/date-picker/index.js +15 -0
  448. package/src/common/date-picker/style/date-picker.scss +290 -0
  449. package/src/common/date-picker/style/index.js +4 -0
  450. package/src/common/date-picker/style/index.less +3 -0
  451. package/src/common/date-picker/style/mixin.scss +75 -0
  452. package/src/common/dropdown/Dropdown.vue +31 -0
  453. package/src/common/dropdown/index.js +9 -0
  454. package/src/common/dropdown/style/dropdown.scss +22 -0
  455. package/src/common/dropdown/style/index.js +4 -0
  456. package/src/common/dropdown/style/index.less +3 -0
  457. package/src/common/empty/Empty.vue +26 -0
  458. package/src/common/empty/RenderEmpty.ts +50 -0
  459. package/src/common/empty/assets/image/empty.png +0 -0
  460. package/src/common/empty/index.js +9 -0
  461. package/src/common/empty/style/empty.scss +31 -0
  462. package/src/common/empty/style/index.js +4 -0
  463. package/src/common/empty/style/index.less +3 -0
  464. package/src/common/icon/Icon.vue +66 -0
  465. package/src/common/icon/index.js +9 -0
  466. package/src/common/icon/style/icon.scss +12 -0
  467. package/src/common/icon/style/index.js +4 -0
  468. package/src/common/icon/style/index.less +3 -0
  469. package/src/common/iframe/Iframe.vue +17 -0
  470. package/src/common/iframe/index.js +9 -0
  471. package/src/common/iframe/style/iframe.scss +7 -0
  472. package/src/common/iframe/style/index.js +4 -0
  473. package/src/common/image/Image.vue +83 -0
  474. package/src/common/image/index.js +9 -0
  475. package/src/common/image/style/image.scss +33 -0
  476. package/src/common/image/style/index.js +4 -0
  477. package/src/common/indicator/CountTo.vue +92 -0
  478. package/src/common/indicator/Indicator.vue +308 -0
  479. package/src/common/indicator/index.js +11 -0
  480. package/src/common/indicator/style/countTo.scss +7 -0
  481. package/src/common/indicator/style/index.js +4 -0
  482. package/src/common/indicator/style/indicator.scss +47 -0
  483. package/src/common/input/BaseMixin.vue +24 -0
  484. package/src/common/input/Group.vue +31 -0
  485. package/src/common/input/Input.vue +41 -0
  486. package/src/common/input/Password.vue +41 -0
  487. package/src/common/input/Search.vue +40 -0
  488. package/src/common/input/TextArea.vue +25 -0
  489. package/src/common/input/index.js +17 -0
  490. package/src/common/input/style/index.js +4 -0
  491. package/src/common/input/style/index.less +3 -0
  492. package/src/common/input/style/input.scss +72 -0
  493. package/src/common/input/style/mixin.scss +42 -0
  494. package/src/common/input-number/InputNumber.vue +44 -0
  495. package/src/common/input-number/index.js +9 -0
  496. package/src/common/input-number/style/index.js +4 -0
  497. package/src/common/input-number/style/index.less +3 -0
  498. package/src/common/input-number/style/input-number.scss +43 -0
  499. package/src/common/layout/Content.vue +25 -0
  500. package/src/common/layout/Footer.vue +25 -0
  501. package/src/common/layout/Header.vue +25 -0
  502. package/src/common/layout/Layout.vue +25 -0
  503. package/src/common/layout/Sider.vue +33 -0
  504. package/src/common/layout/index.js +17 -0
  505. package/src/common/layout/style/index.js +4 -0
  506. package/src/common/layout/style/index.less +3 -0
  507. package/src/common/layout/style/layout.scss +5 -0
  508. package/src/common/liquid-fill/LiquidFill.vue +209 -0
  509. package/src/common/liquid-fill/index.js +9 -0
  510. package/src/common/liquid-fill/style/index.js +4 -0
  511. package/src/common/liquid-fill/style/liquid-fill.scss +6 -0
  512. package/src/common/menu/Menu.vue +31 -0
  513. package/src/common/menu/MenuItem.vue +37 -0
  514. package/src/common/menu/SubMenu.vue +51 -0
  515. package/src/common/menu/index.js +13 -0
  516. package/src/common/menu/style/index.js +4 -0
  517. package/src/common/menu/style/index.less +3 -0
  518. package/src/common/menu/style/menu.scss +0 -0
  519. package/src/common/message/Message.js +12 -0
  520. package/src/common/message/index.js +3 -0
  521. package/src/common/message/style/index.js +4 -0
  522. package/src/common/message/style/index.less +3 -0
  523. package/src/common/message/style/message.scss +16 -0
  524. package/src/common/modal/Modal.vue +64 -0
  525. package/src/common/modal/index.js +9 -0
  526. package/src/common/modal/main.ts +49 -0
  527. package/src/common/modal/style/index.js +4 -0
  528. package/src/common/modal/style/index.less +3 -0
  529. package/src/common/modal/style/modal.scss +23 -0
  530. package/src/common/nav/Nav.vue +158 -0
  531. package/src/common/nav/assets/image/background_image.png +0 -0
  532. package/src/common/nav/assets/image/item_active.png +0 -0
  533. package/src/common/nav/index.js +9 -0
  534. package/src/common/nav/style/index.js +5 -0
  535. package/src/common/nav/style/nav.scss +55 -0
  536. package/src/common/notification/Notification.js +10 -0
  537. package/src/common/notification/index.js +3 -0
  538. package/src/common/notification/style/index.js +4 -0
  539. package/src/common/notification/style/index.less +3 -0
  540. package/src/common/notification/style/notification.scss +30 -0
  541. package/src/common/pagination/Pagination.vue +32 -0
  542. package/src/common/pagination/index.js +9 -0
  543. package/src/common/pagination/style/index.js +4 -0
  544. package/src/common/pagination/style/index.less +3 -0
  545. package/src/common/pagination/style/pagination.scss +131 -0
  546. package/src/common/progress/Progress.vue +98 -0
  547. package/src/common/progress/index.js +9 -0
  548. package/src/common/progress/style/index.js +4 -0
  549. package/src/common/progress/style/index.less +3 -0
  550. package/src/common/progress/style/progress.scss +43 -0
  551. package/src/common/radio/Button.vue +18 -0
  552. package/src/common/radio/Group.vue +48 -0
  553. package/src/common/radio/Radio.vue +36 -0
  554. package/src/common/radio/index.js +13 -0
  555. package/src/common/radio/style/index.js +4 -0
  556. package/src/common/radio/style/index.less +3 -0
  557. package/src/common/radio/style/radio.scss +127 -0
  558. package/src/common/select/OptGroup.vue +20 -0
  559. package/src/common/select/Option.vue +22 -0
  560. package/src/common/select/Select.vue +49 -0
  561. package/src/common/select/index.js +13 -0
  562. package/src/common/select/style/index.js +4 -0
  563. package/src/common/select/style/index.less +3 -0
  564. package/src/common/select/style/select.scss +140 -0
  565. package/src/common/slider/Slider.vue +31 -0
  566. package/src/common/slider/index.js +9 -0
  567. package/src/common/slider/style/index.js +4 -0
  568. package/src/common/slider/style/index.less +3 -0
  569. package/src/common/slider/style/slider.scss +8 -0
  570. package/src/common/slideshow/Slideshow.vue +354 -0
  571. package/src/common/slideshow/SlideshowItem.vue +17 -0
  572. package/src/common/slideshow/Swiper.js +29 -0
  573. package/src/common/slideshow/index.js +11 -0
  574. package/src/common/slideshow/style/index.js +5 -0
  575. package/src/common/slideshow/style/slideshow.scss +48 -0
  576. package/src/common/spin/Spin.vue +17 -0
  577. package/src/common/spin/index.js +9 -0
  578. package/src/common/spin/main.ts +13 -0
  579. package/src/common/spin/style/index.js +4 -0
  580. package/src/common/spin/style/index.less +3 -0
  581. package/src/common/spin/style/spin.scss +14 -0
  582. package/src/common/steps/Step.vue +33 -0
  583. package/src/common/steps/Steps.vue +39 -0
  584. package/src/common/steps/index.js +11 -0
  585. package/src/common/steps/style/index.js +4 -0
  586. package/src/common/steps/style/index.less +3 -0
  587. package/src/common/steps/style/mixin.scss +67 -0
  588. package/src/common/steps/style/steps.scss +98 -0
  589. package/src/common/switch/Switch.vue +41 -0
  590. package/src/common/switch/index.js +9 -0
  591. package/src/common/switch/style/index.js +4 -0
  592. package/src/common/switch/style/index.less +3 -0
  593. package/src/common/switch/style/switch.scss +20 -0
  594. package/src/common/table/Column.vue +18 -0
  595. package/src/common/table/ColumnGroup.vue +19 -0
  596. package/src/common/table/Table.vue +18 -0
  597. package/src/common/table/index.js +13 -0
  598. package/src/common/table/style/index.js +4 -0
  599. package/src/common/table/style/index.less +3 -0
  600. package/src/common/table/style/table.scss +138 -0
  601. package/src/common/table-popup/TablePopup.vue +73 -0
  602. package/src/common/table-popup/index.js +9 -0
  603. package/src/common/table-popup/style/index.js +5 -0
  604. package/src/common/table-popup/style/table-popup.scss +52 -0
  605. package/src/common/tabs/TabPane.vue +26 -0
  606. package/src/common/tabs/Tabs.vue +41 -0
  607. package/src/common/tabs/index.js +11 -0
  608. package/src/common/tabs/style/index.js +4 -0
  609. package/src/common/tabs/style/index.less +3 -0
  610. package/src/common/tabs/style/tabs.scss +95 -0
  611. package/src/common/text/Text.vue +69 -0
  612. package/src/common/text/index.js +9 -0
  613. package/src/common/text/style/index.js +4 -0
  614. package/src/common/text/style/text.scss +23 -0
  615. package/src/common/time-line/TimeLine.vue +260 -0
  616. package/src/common/time-line/index.js +9 -0
  617. package/src/common/time-line/style/index.js +4 -0
  618. package/src/common/time-line/style/time-line.scss +10 -0
  619. package/src/common/time-picker/TimePicker.vue +47 -0
  620. package/src/common/time-picker/index.js +9 -0
  621. package/src/common/time-picker/style/index.js +4 -0
  622. package/src/common/time-picker/style/index.less +3 -0
  623. package/src/common/time-picker/style/time-picker.scss +69 -0
  624. package/src/common/time-range/TimeRange.vue +122 -0
  625. package/src/common/time-range/index.js +9 -0
  626. package/src/common/time-range/style/index.js +4 -0
  627. package/src/common/time-range/style/time-range.scss +10 -0
  628. package/src/common/time-slider/TimeSlider.vue +591 -0
  629. package/src/common/time-slider/index.js +9 -0
  630. package/src/common/time-slider/style/index.js +4 -0
  631. package/src/common/time-slider/style/mixin.scss +36 -0
  632. package/src/common/time-slider/style/time-slider.scss +147 -0
  633. package/src/common/time-text/TimeText.vue +51 -0
  634. package/src/common/time-text/index.js +9 -0
  635. package/src/common/time-text/style/index.js +4 -0
  636. package/src/common/time-text/style/time-text.scss +14 -0
  637. package/src/common/tooltip/Tooltip.vue +21 -0
  638. package/src/common/tooltip/index.js +9 -0
  639. package/src/common/tooltip/style/index.js +4 -0
  640. package/src/common/tooltip/style/index.less +3 -0
  641. package/src/common/tooltip/style/tooltip.scss +5 -0
  642. package/src/common/transfer/Transfer.vue +19 -0
  643. package/src/common/transfer/index.js +9 -0
  644. package/src/common/transfer/style/index.js +4 -0
  645. package/src/common/transfer/style/index.less +3 -0
  646. package/src/common/transfer/style/transfer.scss +52 -0
  647. package/src/common/tree/DirectoryTree.vue +32 -0
  648. package/src/common/tree/Tree.vue +32 -0
  649. package/src/common/tree/TreeNode.vue +49 -0
  650. package/src/common/tree/index.js +13 -0
  651. package/src/common/tree/style/index.js +4 -0
  652. package/src/common/tree/style/index.less +3 -0
  653. package/src/common/tree/style/tree.scss +16 -0
  654. package/src/common/tree-select/TreeSelect.vue +43 -0
  655. package/src/common/tree-select/TreeSelectNode.vue +49 -0
  656. package/src/common/tree-select/index.js +11 -0
  657. package/src/common/tree-select/style/index.js +4 -0
  658. package/src/common/tree-select/style/index.less +3 -0
  659. package/src/common/tree-select/style/tree-select.scss +38 -0
  660. package/src/common/video-player/VideoPlayer.vue +423 -0
  661. package/src/common/video-player/index.js +9 -0
  662. package/src/common/video-player/style/index.js +5 -0
  663. package/src/common/video-player/style/video-player.scss +266 -0
  664. package/src/common/web-map/WebMapBase.ts +1178 -0
  665. package/src/common/web-map/config/MunicipalCenter.json +1 -0
  666. package/src/common/web-map/config/ProvinceCenter.json +1 -0
  667. package/src/image.d.ts +7 -0
  668. package/src/init.js +38 -0
  669. package/src/leaflet/README.md +31 -0
  670. package/src/leaflet/_mixin/GridLayer.js +33 -0
  671. package/src/leaflet/_mixin/Layer.js +26 -0
  672. package/src/leaflet/_mixin/Options.js +10 -0
  673. package/src/leaflet/_mixin/Popper.js +25 -0
  674. package/src/leaflet/_mixin/TileLayer.js +18 -0
  675. package/src/leaflet/_mixin/map-getter.ts +122 -0
  676. package/src/leaflet/_types/index.js +17 -0
  677. package/src/leaflet/_types/map-event.js +34 -0
  678. package/src/leaflet/_utils/props-binder.js +23 -0
  679. package/src/leaflet/chart/Chart.vue +25 -0
  680. package/src/leaflet/chart/ChartViewModel.js +44 -0
  681. package/src/leaflet/chart/index.js +9 -0
  682. package/src/leaflet/components.ts +206 -0
  683. package/src/leaflet/css.js +3 -0
  684. package/src/leaflet/entrys.json +106 -0
  685. package/src/leaflet/identify/Identify.vue +233 -0
  686. package/src/leaflet/identify/IdentifyViewModel.js +114 -0
  687. package/src/leaflet/identify/index.js +9 -0
  688. package/src/leaflet/identify/style/identify.scss +30 -0
  689. package/src/leaflet/identify/style/index.js +4 -0
  690. package/src/leaflet/index.ts +5 -0
  691. package/src/leaflet/leaflet-wrapper.js +125 -0
  692. package/src/leaflet/marker/Marker.vue +46 -0
  693. package/src/leaflet/marker/MarkerViewModel.js +31 -0
  694. package/src/leaflet/marker/index.js +9 -0
  695. package/src/leaflet/package.json +97 -0
  696. package/src/leaflet/popup/Popup.vue +93 -0
  697. package/src/leaflet/popup/PopupViewModel.js +75 -0
  698. package/src/leaflet/popup/index.js +9 -0
  699. package/src/leaflet/style.js +3 -0
  700. package/src/leaflet/style.scss +52 -0
  701. package/src/leaflet/web-map/WebMap.vue +213 -0
  702. package/src/leaflet/web-map/WebMapViewModel.ts +1102 -0
  703. package/src/leaflet/web-map/_mixin/map-events.ts +65 -0
  704. package/src/leaflet/web-map/index.js +9 -0
  705. package/src/leaflet/web-map/layer/tile/TileLayer.vue +88 -0
  706. package/src/leaflet/web-map/layer/tile/TileLayerViewModel.js +66 -0
  707. package/src/leaflet/web-map/layer/tile/index.js +9 -0
  708. package/src/leaflet/web-map/style/index.js +7 -0
  709. package/src/leaflet/web-map/style/web-map.scss +32 -0
  710. package/src/sfc.d.ts +50 -0
  711. package/src/vue-i18n.d.ts +26 -0
  712. package/src/vue-options.d.ts +18 -0
  713. package/static/libs/echarts-layer/EchartsLayer.js +390 -0
  714. package/static/libs/geostats/geostats.js +1227 -0
  715. package/static/libs/iclient-common/iclient-common.js +2 -0
  716. package/static/libs/iclient-leaflet/iclient-leaflet.min.css +8 -0
  717. package/static/libs/iclient-leaflet/iclient-leaflet.min.js +1741 -0
  718. package/static/libs/json-sql/jsonsql.js +125 -0
  719. package/tsconfig.json +43 -0
@@ -0,0 +1,55 @@
1
+ import Vue from 'vue';
2
+ import { getDataType } from 'vue-iclient/src/common/_utils/util';
3
+
4
+ const EpsgDefine = new Vue({
5
+ epsgCodes: {
6
+ 'EPSG:3857':
7
+ 'PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]]',
8
+ 'EPSG:4326':
9
+ 'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],AXIS["Easting", "EAST"],AXIS["Northing", "NORTH"],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]',
10
+ 'EPSG:4490':
11
+ 'GEOGCS["China Geodetic Coordinate System 2000", DATUM["China 2000", SPHEROID["CGCS2000", 6378137.0, 298.257222101, AUTHORITY["EPSG","1024"]], AUTHORITY["EPSG","1043"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic latitude", NORTH], AXIS["Geodetic longitude", EAST], AUTHORITY["EPSG","4490"]]'
12
+ },
13
+ registerProjection(epsgKey, epsgValue) {
14
+ if (getDataType(arguments[0]) === '[object Object]' && arguments.length === 1) {
15
+ this.epsgCodes = Object.assign({}, this.epsgCodes, arguments[0]);
16
+ } else if (epsgKey && epsgValue) {
17
+ this.epsgCodes[epsgKey] = epsgValue;
18
+ }
19
+ },
20
+ getProjection(epsgKey) {
21
+ return this.epsgCodes[epsgKey];
22
+ },
23
+ getAllProjections() {
24
+ return this.epsgCodes;
25
+ }
26
+ });
27
+
28
+ export default EpsgDefine;
29
+
30
+ export function registerProjection(epsgKey, epsgValue) {
31
+ return EpsgDefine.$options.registerProjection(epsgKey, epsgValue);
32
+ }
33
+
34
+ export function getProjection(epsgKey) {
35
+ return EpsgDefine.$options.getProjection(epsgKey);
36
+ }
37
+
38
+ export function toEpsgCode(wkt) {
39
+ if (typeof wkt !== 'string') {
40
+ return '';
41
+ } else if (wkt.indexOf('EPSG') === 0) {
42
+ return wkt;
43
+ } else {
44
+ let lastAuthority = wkt.lastIndexOf('AUTHORITY') + 10;
45
+ let endString = wkt.indexOf(']', lastAuthority) - 1;
46
+ if (lastAuthority > 0 && endString > 0) {
47
+ return `EPSG:${wkt
48
+ .substring(lastAuthority, endString)
49
+ .split(',')[1]
50
+ .substr(1)}`;
51
+ } else {
52
+ return '';
53
+ }
54
+ }
55
+ }
@@ -0,0 +1,92 @@
1
+ import iServerRestService from 'vue-iclient/src/common/_utils/iServerRestService';
2
+ import iPortalDataService from 'vue-iclient/src/common/_utils/iPortalDataService';
3
+ import RestService from 'vue-iclient/src/common/_utils/RestService';
4
+
5
+ export default function getFeatures(dataset) {
6
+ let superMapService;
7
+ let params = [];
8
+ let promise = new Promise((resolve, reject) => {
9
+ let {
10
+ url,
11
+ type,
12
+ geoJSON,
13
+ maxFeatures,
14
+ attributeFilter,
15
+ dataName,
16
+ layerName,
17
+ withCredentials,
18
+ preferContent,
19
+ epsgCode,
20
+ fromIndex,
21
+ toIndex,
22
+ hasGeometry,
23
+ orderBy,
24
+ returnFeaturesOnly
25
+ } = dataset;
26
+ if (dataset && (url || geoJSON) && type) {
27
+ let queryInfo = {
28
+ maxFeatures: maxFeatures,
29
+ attributeFilter: attributeFilter,
30
+ orderBy
31
+ };
32
+ if (type === 'iServer') {
33
+ let datasetInfo;
34
+ const options = {
35
+ fromIndex,
36
+ toIndex,
37
+ hasGeometry,
38
+ returnFeaturesOnly
39
+ };
40
+ if (dataset.proxy) {
41
+ options.proxy = dataset.proxy;
42
+ }
43
+ epsgCode && (options.epsgCode = epsgCode);
44
+ superMapService = new iServerRestService(dataset.url, options);
45
+ if (dataName) {
46
+ let arr = dataName[0].split(':');
47
+ datasetInfo = {
48
+ datasetName: arr[1],
49
+ dataSourceName: arr[0],
50
+ dataUrl: url
51
+ };
52
+ } else {
53
+ datasetInfo = {
54
+ mapName: layerName,
55
+ dataUrl: url
56
+ };
57
+ }
58
+ params = [datasetInfo, queryInfo];
59
+ } else if (type === 'iPortal') {
60
+ queryInfo.withCredentials = withCredentials;
61
+ superMapService = new iPortalDataService(url, withCredentials, {
62
+ epsgCode,
63
+ resourceId: dataset.id,
64
+ dataType: dataset.dataType,
65
+ dataId: dataset.id
66
+ });
67
+ params = [queryInfo, !!preferContent];
68
+ } else if (type === 'rest') {
69
+ superMapService = new RestService({
70
+ proxy: dataset.proxy
71
+ });
72
+ params = [url, queryInfo];
73
+ } else if (type === 'geoJSON' && geoJSON) {
74
+ superMapService = new RestService();
75
+ params = [geoJSON, queryInfo];
76
+ }
77
+ }
78
+
79
+ if (superMapService) {
80
+ superMapService.on({
81
+ getdatasucceeded: function(data) {
82
+ resolve(data);
83
+ },
84
+ getdatafailed: function(e) {
85
+ reject(e);
86
+ }
87
+ });
88
+ superMapService.getData(params[0], params[1]);
89
+ }
90
+ });
91
+ return promise;
92
+ }
@@ -0,0 +1,6 @@
1
+ import Vue from 'vue';
2
+ import theme from 'vue-iclient/src/common/_utils/style/theme/theme.json';
3
+
4
+ export default new Vue({
5
+ theme: theme[1]
6
+ });
@@ -0,0 +1,444 @@
1
+ import { FetchRequest, Util } from 'vue-iclient/static/libs/iclient-common/iclient-common';
2
+ import iServerRestService, { vertifyEpsgCode, transformFeatures } from 'vue-iclient/src/common/_utils/iServerRestService';
3
+ import { isXField, isYField, handleWithCredentials, handleDataParentRes } from 'vue-iclient/src/common/_utils/util';
4
+ import { Events } from 'vue-iclient/src/common/_types/event/Events';
5
+
6
+ /**
7
+ * @class iPortalDataService
8
+ * @classdesc iPortal 数据请求类。
9
+ * @category BaseTypes Util
10
+ * @param {string} url - iPortal 数据地址。
11
+ * @param {Boolean} [withCredentials=false] - 请求是否携带 cookie。
12
+ * @fires iPortalDataService#getdatasucceeded
13
+ * @fires iPortalDataService#getdatafailed
14
+ * @fires iPortalDataService#featureisempty
15
+ */
16
+ export default class iPortalDataService extends Events {
17
+ constructor(url, withCredentials, options = {}) {
18
+ super();
19
+ this.url = url;
20
+ this.withCredentials = withCredentials || false;
21
+ this.epsgCode = options.epsgCode;
22
+ this.dataType = options.dataType;
23
+ this.iportalServiceProxyUrl = options.iportalServiceProxyUrl;
24
+ this.eventTypes = ['getdatasucceeded', 'getdatafailed', 'featureisempty'];
25
+ this.resourceId = options.resourceId;
26
+ if (this.resourceId) {
27
+ this.url = handleDataParentRes(url, this.resourceId, 'DATA');
28
+ }
29
+ this.initSerivce(this.url);
30
+ }
31
+
32
+ initSerivce(url) {
33
+ this.iserverService = new iServerRestService(url, { epsgCode: this.epsgCode });
34
+ this.iserverService.on({
35
+ getdatasucceeded: e => {
36
+ /**
37
+ * @event iPortalDataService#getdatasucceeded
38
+ * @description 请求数据成功后触发。
39
+ * @property {Object} e - 事件对象。
40
+ */
41
+ this.triggerEvent('getdatasucceeded', e);
42
+ },
43
+ getdatafailed: e => {
44
+ /**
45
+ * @event iPortalDataService#getdatafailed
46
+ * @description 请求数据失败后触发。
47
+ * @property {Object} e - 事件对象。
48
+ */
49
+ this.triggerEvent('getdatafailed', e);
50
+ },
51
+ featureisempty: e => {
52
+ /**
53
+ * @event iPortalDataService#featureisempty
54
+ * @description 请求数据为空后触发。
55
+ * @property {Object} e - 事件对象。
56
+ */
57
+ this.triggerEvent('featureisempty', e);
58
+ }
59
+ });
60
+ }
61
+
62
+ /**
63
+ * @function iPortalDataService.prototype.getData
64
+ * @description 请求数据。
65
+ * @param {Object} queryInfo - 可选参数。
66
+ * @param {Object} [queryInfo.maxFeatures] - 最多可返回的要素数量。
67
+ * @param {Object} [queryInfo.attributeFilter] - 属性过滤条件。
68
+ * @param {Object} [queryInfo.keyWord] - 筛选关键字。
69
+ */
70
+ getData(queryInfo = {}, preferContent = false) {
71
+ if (this.dataType === 'STRUCTUREDDATA') {
72
+ this._getStructureDatafromContent();
73
+ return;
74
+ }
75
+
76
+ if (!this.url) {
77
+ return;
78
+ }
79
+ let datasetUrl = this.url;
80
+
81
+ if (preferContent) {
82
+ this._getDatafromContent(datasetUrl, queryInfo);
83
+ return;
84
+ }
85
+ FetchRequest.get(datasetUrl, null, {
86
+ withCredentials: this.withCredentials
87
+ })
88
+ .then(response => {
89
+ return response.json();
90
+ })
91
+ .then(data => {
92
+ if (data.succeed === false) {
93
+ // 请求失败
94
+ this.triggerEvent('getdatafailed', {
95
+ data
96
+ });
97
+ return;
98
+ }
99
+ if (data.type === 'STRUCTUREDDATA') {
100
+ this._getStructureDatafromContent();
101
+ return;
102
+ }
103
+ // 是否有rest服务
104
+ if (data.dataItemServices && data.dataItemServices.length > 0) {
105
+ let dataItemServices = data.dataItemServices;
106
+ let resultData = dataItemServices.find(
107
+ item =>
108
+ (item.serviceType === 'RESTDATA' || item.serviceType === 'RESTMAP') && item.serviceStatus === 'PUBLISHED'
109
+ );
110
+ // 有rest服务并且address不为空(online的address服务为'')
111
+ if (resultData && resultData.address) {
112
+ // 如果有服务,获取数据源和数据集, 然后请求rest服务
113
+ let serviceUrl = resultData.address;
114
+ if (this.resourceId) {
115
+ serviceUrl = handleDataParentRes(serviceUrl, this.resourceId, 'DATA');
116
+ }
117
+ this._getDatafromRest(resultData.serviceType, serviceUrl, queryInfo);
118
+ } else {
119
+ this._getDatafromContent(datasetUrl, queryInfo);
120
+ }
121
+ } else {
122
+ this._getDatafromContent(datasetUrl, queryInfo);
123
+ }
124
+ })
125
+ .catch(error => {
126
+ console.log(error);
127
+ this.triggerEvent('getdatafailed', {
128
+ error
129
+ });
130
+ });
131
+ }
132
+
133
+ _getStructureDatafromContent() {
134
+ let featureResults = [];
135
+ let url = this.url;
136
+ if (url.includes('?')) {
137
+ url = url.split('?')[0];
138
+ }
139
+ let formatUrl = url + '/structureddata/ogc-features/collections/all/items.json';
140
+ let maxFeatures = 5000;
141
+ let allRequest = [];
142
+ this._getStructureData(formatUrl, maxFeatures, 0).then((data) => {
143
+ if (data) {
144
+ featureResults = data.features;
145
+ if (data.numberMatched < maxFeatures) {
146
+ this.iserverService._getFeaturesSucceed({
147
+ result: {
148
+ features: {
149
+ type: 'FeatureCollection',
150
+ features: featureResults
151
+ }
152
+ }
153
+ });
154
+ return;
155
+ }
156
+
157
+ for (let i = maxFeatures; i < data.numberMatched;) {
158
+ allRequest.push(
159
+ this._getStructureData(formatUrl, maxFeatures, i)
160
+ );
161
+ i += maxFeatures;
162
+ }
163
+ // 所有请求结束
164
+ Promise.all(allRequest).then((results) => {
165
+ // 结果合并
166
+ results.map((result) => {
167
+ featureResults = featureResults.concat(result.features);
168
+ });
169
+ this.iserverService._getFeaturesSucceed({
170
+ result: {
171
+ features: {
172
+ type: 'FeatureCollection',
173
+ features: featureResults
174
+ }
175
+ }
176
+ });
177
+ });
178
+ }
179
+ });
180
+ }
181
+
182
+ _getStructureData(url, count, offset) {
183
+ url = `${url}?limit=${count}`;
184
+ if (offset) {
185
+ url = url + '&offset=' + offset;
186
+ }
187
+ return FetchRequest.get(url, null, {
188
+ withCredentials: this.withCredentials
189
+ })
190
+ .then(response => {
191
+ return response.json();
192
+ })
193
+ .then(data => {
194
+ return data;
195
+ })
196
+ .catch(error => {
197
+ console.log(error);
198
+ this.triggerEvent('getdatafailed', {
199
+ error
200
+ });
201
+ });
202
+ }
203
+
204
+ _getDatafromRest(serviceType, address, queryInfo) {
205
+ if (serviceType === 'RESTDATA') {
206
+ let url = Util.urlPathAppend(address, 'data/datasources');
207
+ let dataSourceName;
208
+ let datasetName; // 请求获取数据源名
209
+ FetchRequest.get(url, null, {
210
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
211
+ })
212
+ .then(response => {
213
+ return response.json();
214
+ })
215
+ .then(data => {
216
+ dataSourceName = data.datasourceNames && data.datasourceNames[0];
217
+ url = Util.urlPathAppend(address, `data/datasources/${dataSourceName}/datasets`);
218
+ // 请求获取数据集名
219
+ FetchRequest.get(url, null, {
220
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
221
+ })
222
+ .then(response => {
223
+ return response.json();
224
+ })
225
+ .then(data => {
226
+ datasetName = data.datasetNames[0];
227
+ // 请求restdata服务
228
+ this.iserverService.getDataFeatures(
229
+ {
230
+ datasetName,
231
+ dataSourceName,
232
+ dataUrl: Util.urlPathAppend(address, 'data')
233
+ },
234
+ Object.assign({}, queryInfo, {
235
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
236
+ })
237
+ );
238
+ })
239
+ .catch(error => {
240
+ console.log(error);
241
+ this.triggerEvent('getdatafailed', {
242
+ error
243
+ });
244
+ });
245
+ });
246
+ } else {
247
+ // 如果是地图服务
248
+ let url = Util.urlPathAppend(address, 'maps');
249
+ let mapName;
250
+ let layerName;
251
+ let path; // 请求获取地图名
252
+ FetchRequest.get(url, null, {
253
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
254
+ })
255
+ .then(response => {
256
+ return response.json();
257
+ })
258
+ .then(data => {
259
+ if (data[0]) {
260
+ mapName = data[0].name;
261
+ path = data[0].path;
262
+ if (this.resourceId) {
263
+ path = handleDataParentRes(path, this.resourceId, 'DATA');
264
+ }
265
+ }
266
+ url = Util.urlPathAppend(address, `maps/${mapName}/layers`);
267
+ // 请求获取图层名
268
+ FetchRequest.get(url, null, {
269
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
270
+ })
271
+ .then(response => {
272
+ return response.json();
273
+ })
274
+ .then(data => {
275
+ layerName = data[0].subLayers.layers[0].caption;
276
+ // 请求restmap服务
277
+ this.iserverService.getMapFeatures(
278
+ {
279
+ mapName: layerName,
280
+ dataUrl: path
281
+ },
282
+ Object.assign({}, queryInfo, {
283
+ withCredentials: handleWithCredentials(url, this.iportalServiceProxyUrl, this.withCredentials)
284
+ })
285
+ );
286
+ return layerName;
287
+ })
288
+ .catch(error => {
289
+ console.log(error);
290
+ this.triggerEvent('getdatafailed', {
291
+ error
292
+ });
293
+ });
294
+ })
295
+ .catch(error => {
296
+ console.log(error);
297
+ this.triggerEvent('getdatafailed', {
298
+ error
299
+ });
300
+ });
301
+ }
302
+ }
303
+
304
+ _getDatafromContent(datasetUrl, queryInfo) {
305
+ let result = {};
306
+ datasetUrl = Util.urlPathAppend(datasetUrl, 'content.json');
307
+ datasetUrl = Util.urlAppend(datasetUrl, 'pageSize=9999999&currentPage=1');
308
+ // 获取图层数据
309
+ FetchRequest.get(datasetUrl, null, {
310
+ withCredentials: this.withCredentials
311
+ })
312
+ .then(response => {
313
+ return response.json();
314
+ })
315
+ .then(data => {
316
+ if (data.succeed === false) {
317
+ // 请求失败
318
+ this.triggerEvent('getdatafailed', {
319
+ data
320
+ });
321
+ return;
322
+ }
323
+ if (data.type) {
324
+ let features;
325
+ let type = 'FeatureCollection';
326
+ if (data.type === 'JSON' || data.type === 'GEOJSON') {
327
+ data.content = JSON.parse(data.content.trim());
328
+ // 如果是json文件 data.content = {type:'fco', features},格式不固定
329
+ if (!data.content.features) {
330
+ features = this._json2Feature(data.content, queryInfo);
331
+ }
332
+ features = this._formatGeoJSON(features || data.content, queryInfo);
333
+ type = data.content.type;
334
+ } else if (data.type === 'EXCEL' || data.type === 'CSV') {
335
+ features = this._excelData2Feature(data.content, queryInfo);
336
+ } else if (data.type === 'SHP') {
337
+ data.content = JSON.parse(data.content.trim());
338
+ features = this._formatGeoJSON(data.content.layers[0]);
339
+ }
340
+ features = this._transformContentFeatures(features);
341
+ result.features = {
342
+ type,
343
+ features
344
+ };
345
+ this.vertified && (result.vertified = this.vertified);
346
+ this.iserverService._getFeaturesSucceed({ result });
347
+ }
348
+ })
349
+ .catch(error => {
350
+ console.log(error);
351
+ this.triggerEvent('getdatafailed', {
352
+ error
353
+ });
354
+ });
355
+ }
356
+
357
+ _formatGeoJSON(data, queryInfo) {
358
+ let features = data.features;
359
+ if (queryInfo && queryInfo.maxFeatures > 0) {
360
+ features = features.slice(0, queryInfo.maxFeatures);
361
+ }
362
+ features.forEach((row, index) => {
363
+ row.properties.index = index;
364
+ });
365
+ return features;
366
+ }
367
+
368
+ _excelData2Feature(dataContent, queryInfo) {
369
+ let fieldCaptions = dataContent.colTitles;
370
+ // 位置属性处理
371
+ let xfieldIndex = -1;
372
+ let yfieldIndex = -1;
373
+ for (let i = 0, len = fieldCaptions.length; i < len; i++) {
374
+ if (isXField(fieldCaptions[i])) {
375
+ xfieldIndex = i;
376
+ }
377
+ if (isYField(fieldCaptions[i])) {
378
+ yfieldIndex = i;
379
+ }
380
+ }
381
+
382
+ // feature 构建后期支持坐标系 4326/3857
383
+ let features = [];
384
+
385
+ let len = dataContent.rows.length;
386
+ if (queryInfo && queryInfo.maxFeatures > 0 && len > queryInfo.maxFeatures) {
387
+ len = queryInfo.maxFeatures;
388
+ }
389
+ for (let i = 0; i < len; i++) {
390
+ let row = dataContent.rows[i];
391
+
392
+ let x = xfieldIndex !== -1 && Number(row[xfieldIndex]);
393
+ let y = yfieldIndex !== -1 && Number(row[yfieldIndex]);
394
+ // 属性信息
395
+ let attributes = {};
396
+ for (let index in dataContent.colTitles) {
397
+ let key = dataContent.colTitles[index];
398
+ attributes[key] = dataContent.rows[i][index];
399
+ }
400
+ let feature = {
401
+ type: 'Feature',
402
+ properties: attributes
403
+ };
404
+ if (x && y) {
405
+ attributes.index = i + '';
406
+ feature.geometry = {
407
+ type: 'Point',
408
+ coordinates: [x, y]
409
+ };
410
+ }
411
+ // 目前csv 只支持处理点,所以先生成点类型的 geojson
412
+ features.push(feature);
413
+ }
414
+ return features;
415
+ }
416
+
417
+ _json2Feature(dataContent) {
418
+ let content = typeof dataContent === 'string' ? JSON.parse(dataContent) : dataContent;
419
+ let features = [];
420
+ if (content instanceof Array) {
421
+ content.forEach(val => {
422
+ if (Object.prototype.hasOwnProperty.call(val, 'geometry')) {
423
+ features.push({ properties: val.properties || val, geometry: val.geometry });
424
+ } else {
425
+ features.push({ properties: val });
426
+ }
427
+ });
428
+ } else if (content) {
429
+ features = [{ properties: content }];
430
+ }
431
+ return { features };
432
+ }
433
+
434
+ // 转坐标系
435
+ _transformContentFeatures(features) {
436
+ let transformedFeatures = features;
437
+ if (features && !!features.length) {
438
+ const epsgCode = vertifyEpsgCode(features[0]);
439
+ transformedFeatures = transformFeatures(epsgCode, features);
440
+ this.vertified = true;
441
+ }
442
+ return transformedFeatures;
443
+ }
444
+ }