@antv/l7-map 2.21.11-beta.5 → 2.21.11-beta.7

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 (358) hide show
  1. package/README.md +27 -6
  2. package/es/index.d.ts +3 -4
  3. package/es/index.js +2 -4
  4. package/es/map/camera.d.ts +690 -0
  5. package/es/map/camera.js +1138 -0
  6. package/{lib → es/map}/css/l7.css +41 -7
  7. package/es/map/events.d.ts +384 -0
  8. package/es/map/events.js +222 -0
  9. package/es/map/geo/edge_insets.d.ts +97 -0
  10. package/es/{geo → map/geo}/edge_insets.js +55 -33
  11. package/es/map/geo/lng_lat.d.ts +116 -0
  12. package/es/map/geo/lng_lat.js +159 -0
  13. package/es/map/geo/lng_lat_bounds.d.ts +217 -0
  14. package/es/map/geo/lng_lat_bounds.js +334 -0
  15. package/es/map/geo/mercator_coordinate.d.ts +113 -0
  16. package/es/map/geo/mercator_coordinate.js +142 -0
  17. package/es/map/geo/transform.d.ts +262 -0
  18. package/es/map/geo/transform.js +736 -0
  19. package/{lib → es/map}/handler/box_zoom.d.ts +30 -24
  20. package/es/map/handler/box_zoom.js +145 -0
  21. package/es/map/handler/click_zoom.d.ts +24 -0
  22. package/es/map/handler/click_zoom.js +47 -0
  23. package/es/map/handler/cooperative_gestures.d.ts +40 -0
  24. package/es/map/handler/cooperative_gestures.js +94 -0
  25. package/es/map/handler/drag_handler.d.ts +88 -0
  26. package/es/map/handler/drag_handler.js +89 -0
  27. package/es/map/handler/drag_move_state_manager.d.ts +30 -0
  28. package/es/map/handler/drag_move_state_manager.js +94 -0
  29. package/es/map/handler/handler_util.d.ts +3 -0
  30. package/es/{handler → map/handler}/handler_util.js +1 -2
  31. package/es/map/handler/keyboard.d.ts +88 -0
  32. package/es/map/handler/keyboard.js +197 -0
  33. package/es/map/handler/map_event.d.ts +46 -0
  34. package/es/map/handler/map_event.js +131 -0
  35. package/es/map/handler/mouse.d.ts +30 -0
  36. package/es/map/handler/mouse.js +85 -0
  37. package/es/map/handler/one_finger_touch_drag.d.ts +15 -0
  38. package/es/map/handler/one_finger_touch_drag.js +39 -0
  39. package/es/map/handler/scroll_zoom.d.ts +102 -0
  40. package/es/map/handler/scroll_zoom.js +312 -0
  41. package/es/{handler → map/handler}/shim/dblclick_zoom.d.ts +14 -10
  42. package/es/{handler → map/handler}/shim/dblclick_zoom.js +20 -16
  43. package/es/map/handler/shim/drag_pan.d.ts +79 -0
  44. package/es/map/handler/shim/drag_pan.js +77 -0
  45. package/es/{handler → map/handler}/shim/drag_rotate.d.ts +24 -16
  46. package/es/map/handler/shim/drag_rotate.js +66 -0
  47. package/es/map/handler/shim/two_fingers_touch.d.ts +74 -0
  48. package/es/map/handler/shim/two_fingers_touch.js +106 -0
  49. package/es/map/handler/tap_drag_zoom.d.ts +28 -0
  50. package/es/map/handler/tap_drag_zoom.js +92 -0
  51. package/es/map/handler/tap_recognizer.d.ts +35 -0
  52. package/es/map/handler/tap_recognizer.js +107 -0
  53. package/es/map/handler/tap_zoom.d.ts +28 -0
  54. package/es/map/handler/tap_zoom.js +87 -0
  55. package/es/map/handler/touch_pan.d.ts +40 -0
  56. package/es/map/handler/touch_pan.js +85 -0
  57. package/es/map/handler/transform-provider.d.ts +23 -0
  58. package/es/map/handler/transform-provider.js +35 -0
  59. package/es/map/handler/two_fingers_touch.d.ts +107 -0
  60. package/es/map/handler/two_fingers_touch.js +289 -0
  61. package/es/map/handler_inertia.d.ts +20 -0
  62. package/es/{handler → map}/handler_inertia.js +36 -50
  63. package/es/map/handler_manager.d.ts +154 -0
  64. package/es/map/handler_manager.js +466 -0
  65. package/es/map/map.d.ts +625 -0
  66. package/es/map/map.js +972 -0
  67. package/es/map/util/abort_error.d.ts +15 -0
  68. package/es/map/util/abort_error.js +21 -0
  69. package/es/map/util/browser.d.ts +10 -0
  70. package/es/map/util/browser.js +30 -0
  71. package/es/map/util/dom.d.ts +30 -0
  72. package/es/map/util/dom.js +105 -0
  73. package/es/map/util/evented.d.ts +75 -0
  74. package/es/map/util/evented.js +158 -0
  75. package/es/map/util/task_queue.d.ts +18 -0
  76. package/es/map/util/task_queue.js +54 -0
  77. package/es/map/util/util.d.ts +104 -0
  78. package/es/map/util/util.js +155 -0
  79. package/lib/index.d.ts +3 -4
  80. package/lib/index.js +12 -42
  81. package/lib/map/camera.d.ts +690 -0
  82. package/lib/map/camera.js +1145 -0
  83. package/{es → lib/map}/css/l7.css +41 -7
  84. package/lib/map/events.d.ts +384 -0
  85. package/lib/map/events.js +231 -0
  86. package/lib/map/geo/edge_insets.d.ts +97 -0
  87. package/lib/{geo → map/geo}/edge_insets.js +56 -35
  88. package/lib/map/geo/lng_lat.d.ts +116 -0
  89. package/lib/map/geo/lng_lat.js +166 -0
  90. package/lib/map/geo/lng_lat_bounds.d.ts +217 -0
  91. package/lib/map/geo/lng_lat_bounds.js +341 -0
  92. package/lib/map/geo/mercator_coordinate.d.ts +113 -0
  93. package/lib/map/geo/mercator_coordinate.js +157 -0
  94. package/lib/map/geo/transform.d.ts +262 -0
  95. package/lib/map/geo/transform.js +744 -0
  96. package/{es → lib/map}/handler/box_zoom.d.ts +30 -24
  97. package/lib/map/handler/box_zoom.js +153 -0
  98. package/lib/map/handler/click_zoom.d.ts +24 -0
  99. package/lib/map/handler/click_zoom.js +54 -0
  100. package/lib/map/handler/cooperative_gestures.d.ts +40 -0
  101. package/lib/map/handler/cooperative_gestures.js +101 -0
  102. package/lib/map/handler/drag_handler.d.ts +88 -0
  103. package/lib/map/handler/drag_handler.js +97 -0
  104. package/lib/map/handler/drag_move_state_manager.d.ts +30 -0
  105. package/lib/map/handler/drag_move_state_manager.js +103 -0
  106. package/lib/map/handler/handler_util.d.ts +3 -0
  107. package/lib/{handler → map/handler}/handler_util.js +1 -2
  108. package/lib/map/handler/keyboard.d.ts +88 -0
  109. package/lib/map/handler/keyboard.js +205 -0
  110. package/lib/map/handler/map_event.d.ts +46 -0
  111. package/lib/map/handler/map_event.js +140 -0
  112. package/lib/map/handler/mouse.d.ts +30 -0
  113. package/lib/map/handler/mouse.js +93 -0
  114. package/lib/map/handler/one_finger_touch_drag.d.ts +15 -0
  115. package/lib/map/handler/one_finger_touch_drag.js +47 -0
  116. package/lib/map/handler/scroll_zoom.d.ts +102 -0
  117. package/lib/map/handler/scroll_zoom.js +320 -0
  118. package/lib/{handler → map/handler}/shim/dblclick_zoom.d.ts +14 -10
  119. package/lib/{handler → map/handler}/shim/dblclick_zoom.js +21 -17
  120. package/lib/map/handler/shim/drag_pan.d.ts +79 -0
  121. package/lib/map/handler/shim/drag_pan.js +85 -0
  122. package/lib/{handler → map/handler}/shim/drag_rotate.d.ts +24 -16
  123. package/lib/map/handler/shim/drag_rotate.js +74 -0
  124. package/lib/map/handler/shim/two_fingers_touch.d.ts +74 -0
  125. package/lib/map/handler/shim/two_fingers_touch.js +114 -0
  126. package/lib/map/handler/tap_drag_zoom.d.ts +28 -0
  127. package/lib/map/handler/tap_drag_zoom.js +99 -0
  128. package/lib/map/handler/tap_recognizer.d.ts +35 -0
  129. package/lib/map/handler/tap_recognizer.js +116 -0
  130. package/lib/map/handler/tap_zoom.d.ts +28 -0
  131. package/lib/map/handler/tap_zoom.js +94 -0
  132. package/lib/map/handler/touch_pan.d.ts +40 -0
  133. package/lib/map/handler/touch_pan.js +92 -0
  134. package/lib/map/handler/transform-provider.d.ts +23 -0
  135. package/lib/map/handler/transform-provider.js +43 -0
  136. package/lib/map/handler/two_fingers_touch.d.ts +107 -0
  137. package/lib/map/handler/two_fingers_touch.js +296 -0
  138. package/lib/map/handler_inertia.d.ts +20 -0
  139. package/lib/{handler → map}/handler_inertia.js +38 -53
  140. package/lib/map/handler_manager.d.ts +154 -0
  141. package/lib/map/handler_manager.js +474 -0
  142. package/lib/map/map.d.ts +625 -0
  143. package/lib/map/map.js +979 -0
  144. package/lib/map/util/abort_error.d.ts +15 -0
  145. package/lib/map/util/abort_error.js +29 -0
  146. package/lib/map/util/browser.d.ts +10 -0
  147. package/lib/map/util/browser.js +36 -0
  148. package/lib/map/util/dom.d.ts +30 -0
  149. package/lib/map/util/dom.js +113 -0
  150. package/lib/map/util/evented.d.ts +75 -0
  151. package/lib/map/util/evented.js +167 -0
  152. package/lib/map/util/task_queue.d.ts +18 -0
  153. package/lib/map/util/task_queue.js +62 -0
  154. package/lib/map/util/util.d.ts +104 -0
  155. package/lib/map/util/util.js +171 -0
  156. package/package.json +6 -3
  157. package/es/camera.d.ts +0 -86
  158. package/es/camera.js +0 -639
  159. package/es/earthmap.d.ts +0 -69
  160. package/es/earthmap.js +0 -445
  161. package/es/geo/edge_insets.d.ts +0 -54
  162. package/es/geo/lng_lat.d.ts +0 -18
  163. package/es/geo/lng_lat.js +0 -59
  164. package/es/geo/lng_lat_bounds.d.ts +0 -25
  165. package/es/geo/lng_lat_bounds.js +0 -118
  166. package/es/geo/mercator.d.ts +0 -30
  167. package/es/geo/mercator.js +0 -72
  168. package/es/geo/point.d.ts +0 -40
  169. package/es/geo/point.js +0 -153
  170. package/es/geo/simple.d.ts +0 -30
  171. package/es/geo/simple.js +0 -75
  172. package/es/geo/transform.d.ts +0 -198
  173. package/es/geo/transform.js +0 -895
  174. package/es/handler/IHandler.d.ts +0 -34
  175. package/es/handler/IHandler.js +0 -1
  176. package/es/handler/blockable_map_event.d.ts +0 -17
  177. package/es/handler/blockable_map_event.js +0 -58
  178. package/es/handler/box_zoom.js +0 -162
  179. package/es/handler/click_zoom.d.ts +0 -16
  180. package/es/handler/click_zoom.js +0 -40
  181. package/es/handler/events/event.d.ts +0 -4
  182. package/es/handler/events/event.js +0 -12
  183. package/es/handler/events/index.d.ts +0 -4
  184. package/es/handler/events/index.js +0 -4
  185. package/es/handler/events/map_mouse_event.d.ts +0 -34
  186. package/es/handler/events/map_mouse_event.js +0 -45
  187. package/es/handler/events/map_touch_event.d.ts +0 -57
  188. package/es/handler/events/map_touch_event.js +0 -75
  189. package/es/handler/events/map_wheel_event.d.ts +0 -33
  190. package/es/handler/events/map_wheel_event.js +0 -33
  191. package/es/handler/events/render_event.d.ts +0 -6
  192. package/es/handler/events/render_event.js +0 -10
  193. package/es/handler/handler_inertia.d.ts +0 -23
  194. package/es/handler/handler_manager.d.ts +0 -61
  195. package/es/handler/handler_manager.js +0 -487
  196. package/es/handler/handler_util.d.ts +0 -4
  197. package/es/handler/keyboard.d.ts +0 -36
  198. package/es/handler/keyboard.js +0 -131
  199. package/es/handler/map_event.d.ts +0 -29
  200. package/es/handler/map_event.js +0 -89
  201. package/es/handler/mouse/index.d.ts +0 -4
  202. package/es/handler/mouse/index.js +0 -4
  203. package/es/handler/mouse/mouse_handler.d.ts +0 -22
  204. package/es/handler/mouse/mouse_handler.js +0 -99
  205. package/es/handler/mouse/mousepan_handler.d.ts +0 -10
  206. package/es/handler/mouse/mousepan_handler.js +0 -21
  207. package/es/handler/mouse/mousepitch_hander.d.ts +0 -9
  208. package/es/handler/mouse/mousepitch_hander.js +0 -24
  209. package/es/handler/mouse/mouserotate_hander.d.ts +0 -9
  210. package/es/handler/mouse/mouserotate_hander.js +0 -24
  211. package/es/handler/mouse/util.d.ts +0 -6
  212. package/es/handler/mouse/util.js +0 -12
  213. package/es/handler/scroll_zoom.d.ts +0 -93
  214. package/es/handler/scroll_zoom.js +0 -315
  215. package/es/handler/shim/drag_pan.d.ts +0 -61
  216. package/es/handler/shim/drag_pan.js +0 -75
  217. package/es/handler/shim/drag_rotate.js +0 -64
  218. package/es/handler/shim/touch_zoom_rotate.d.ts +0 -70
  219. package/es/handler/shim/touch_zoom_rotate.js +0 -104
  220. package/es/handler/tap/single_tap_recognizer.d.ts +0 -20
  221. package/es/handler/tap/single_tap_recognizer.js +0 -77
  222. package/es/handler/tap/tap_drag_zoom.d.ts +0 -22
  223. package/es/handler/tap/tap_drag_zoom.js +0 -89
  224. package/es/handler/tap/tap_recognizer.d.ts +0 -17
  225. package/es/handler/tap/tap_recognizer.js +0 -46
  226. package/es/handler/tap/tap_zoom.d.ts +0 -22
  227. package/es/handler/tap/tap_zoom.js +0 -81
  228. package/es/handler/touch/index.d.ts +0 -5
  229. package/es/handler/touch/index.js +0 -5
  230. package/es/handler/touch/touch_pan.d.ts +0 -30
  231. package/es/handler/touch/touch_pan.js +0 -91
  232. package/es/handler/touch/touch_pitch.d.ts +0 -13
  233. package/es/handler/touch/touch_pitch.js +0 -75
  234. package/es/handler/touch/touch_rotate.d.ts +0 -12
  235. package/es/handler/touch/touch_rotate.js +0 -57
  236. package/es/handler/touch/touch_zoom.d.ts +0 -12
  237. package/es/handler/touch/touch_zoom.js +0 -37
  238. package/es/handler/touch/two_touch.d.ts +0 -23
  239. package/es/handler/touch/two_touch.js +0 -98
  240. package/es/hash.d.ts +0 -14
  241. package/es/hash.js +0 -121
  242. package/es/interface.d.ts +0 -34
  243. package/es/interface.js +0 -1
  244. package/es/map.d.ts +0 -70
  245. package/es/map.js +0 -472
  246. package/es/util.d.ts +0 -25
  247. package/es/util.js +0 -70
  248. package/es/utils/Aabb.d.ts +0 -12
  249. package/es/utils/Aabb.js +0 -72
  250. package/es/utils/dom.d.ts +0 -4
  251. package/es/utils/dom.js +0 -117
  252. package/es/utils/performance.d.ts +0 -17
  253. package/es/utils/performance.js +0 -58
  254. package/es/utils/primitives.d.ts +0 -6
  255. package/es/utils/primitives.js +0 -37
  256. package/es/utils/task_queue.d.ts +0 -13
  257. package/es/utils/task_queue.js +0 -60
  258. package/lib/camera.d.ts +0 -86
  259. package/lib/camera.js +0 -648
  260. package/lib/earthmap.d.ts +0 -69
  261. package/lib/earthmap.js +0 -451
  262. package/lib/geo/edge_insets.d.ts +0 -54
  263. package/lib/geo/lng_lat.d.ts +0 -18
  264. package/lib/geo/lng_lat.js +0 -67
  265. package/lib/geo/lng_lat_bounds.d.ts +0 -25
  266. package/lib/geo/lng_lat_bounds.js +0 -126
  267. package/lib/geo/mercator.d.ts +0 -30
  268. package/lib/geo/mercator.js +0 -88
  269. package/lib/geo/point.d.ts +0 -40
  270. package/lib/geo/point.js +0 -161
  271. package/lib/geo/simple.d.ts +0 -30
  272. package/lib/geo/simple.js +0 -92
  273. package/lib/geo/transform.d.ts +0 -198
  274. package/lib/geo/transform.js +0 -906
  275. package/lib/handler/IHandler.d.ts +0 -34
  276. package/lib/handler/IHandler.js +0 -5
  277. package/lib/handler/blockable_map_event.d.ts +0 -17
  278. package/lib/handler/blockable_map_event.js +0 -66
  279. package/lib/handler/box_zoom.js +0 -168
  280. package/lib/handler/click_zoom.d.ts +0 -16
  281. package/lib/handler/click_zoom.js +0 -48
  282. package/lib/handler/events/event.d.ts +0 -4
  283. package/lib/handler/events/event.js +0 -20
  284. package/lib/handler/events/index.d.ts +0 -4
  285. package/lib/handler/events/index.js +0 -27
  286. package/lib/handler/events/map_mouse_event.d.ts +0 -34
  287. package/lib/handler/events/map_mouse_event.js +0 -53
  288. package/lib/handler/events/map_touch_event.d.ts +0 -57
  289. package/lib/handler/events/map_touch_event.js +0 -83
  290. package/lib/handler/events/map_wheel_event.d.ts +0 -33
  291. package/lib/handler/events/map_wheel_event.js +0 -41
  292. package/lib/handler/events/render_event.d.ts +0 -6
  293. package/lib/handler/events/render_event.js +0 -18
  294. package/lib/handler/handler_inertia.d.ts +0 -23
  295. package/lib/handler/handler_manager.d.ts +0 -61
  296. package/lib/handler/handler_manager.js +0 -495
  297. package/lib/handler/handler_util.d.ts +0 -4
  298. package/lib/handler/keyboard.d.ts +0 -36
  299. package/lib/handler/keyboard.js +0 -138
  300. package/lib/handler/map_event.d.ts +0 -29
  301. package/lib/handler/map_event.js +0 -97
  302. package/lib/handler/mouse/index.d.ts +0 -4
  303. package/lib/handler/mouse/index.js +0 -27
  304. package/lib/handler/mouse/mouse_handler.d.ts +0 -22
  305. package/lib/handler/mouse/mouse_handler.js +0 -107
  306. package/lib/handler/mouse/mousepan_handler.d.ts +0 -10
  307. package/lib/handler/mouse/mousepan_handler.js +0 -29
  308. package/lib/handler/mouse/mousepitch_hander.d.ts +0 -9
  309. package/lib/handler/mouse/mousepitch_hander.js +0 -32
  310. package/lib/handler/mouse/mouserotate_hander.d.ts +0 -9
  311. package/lib/handler/mouse/mouserotate_hander.js +0 -32
  312. package/lib/handler/mouse/util.d.ts +0 -6
  313. package/lib/handler/mouse/util.js +0 -19
  314. package/lib/handler/scroll_zoom.d.ts +0 -93
  315. package/lib/handler/scroll_zoom.js +0 -322
  316. package/lib/handler/shim/drag_pan.d.ts +0 -61
  317. package/lib/handler/shim/drag_pan.js +0 -83
  318. package/lib/handler/shim/drag_rotate.js +0 -72
  319. package/lib/handler/shim/touch_zoom_rotate.d.ts +0 -70
  320. package/lib/handler/shim/touch_zoom_rotate.js +0 -112
  321. package/lib/handler/tap/single_tap_recognizer.d.ts +0 -20
  322. package/lib/handler/tap/single_tap_recognizer.js +0 -86
  323. package/lib/handler/tap/tap_drag_zoom.d.ts +0 -22
  324. package/lib/handler/tap/tap_drag_zoom.js +0 -97
  325. package/lib/handler/tap/tap_recognizer.d.ts +0 -17
  326. package/lib/handler/tap/tap_recognizer.js +0 -56
  327. package/lib/handler/tap/tap_zoom.d.ts +0 -22
  328. package/lib/handler/tap/tap_zoom.js +0 -89
  329. package/lib/handler/touch/index.d.ts +0 -5
  330. package/lib/handler/touch/index.js +0 -34
  331. package/lib/handler/touch/touch_pan.d.ts +0 -30
  332. package/lib/handler/touch/touch_pan.js +0 -100
  333. package/lib/handler/touch/touch_pitch.d.ts +0 -13
  334. package/lib/handler/touch/touch_pitch.js +0 -83
  335. package/lib/handler/touch/touch_rotate.d.ts +0 -12
  336. package/lib/handler/touch/touch_rotate.js +0 -65
  337. package/lib/handler/touch/touch_zoom.d.ts +0 -12
  338. package/lib/handler/touch/touch_zoom.js +0 -45
  339. package/lib/handler/touch/two_touch.d.ts +0 -23
  340. package/lib/handler/touch/two_touch.js +0 -106
  341. package/lib/hash.d.ts +0 -14
  342. package/lib/hash.js +0 -129
  343. package/lib/interface.d.ts +0 -34
  344. package/lib/interface.js +0 -5
  345. package/lib/map.d.ts +0 -70
  346. package/lib/map.js +0 -478
  347. package/lib/util.d.ts +0 -25
  348. package/lib/util.js +0 -89
  349. package/lib/utils/Aabb.d.ts +0 -12
  350. package/lib/utils/Aabb.js +0 -80
  351. package/lib/utils/dom.d.ts +0 -4
  352. package/lib/utils/dom.js +0 -125
  353. package/lib/utils/performance.d.ts +0 -17
  354. package/lib/utils/performance.js +0 -64
  355. package/lib/utils/primitives.d.ts +0 -6
  356. package/lib/utils/primitives.js +0 -45
  357. package/lib/utils/task_queue.d.ts +0 -13
  358. package/lib/utils/task_queue.js +0 -67
package/es/utils/dom.js DELETED
@@ -1,117 +0,0 @@
1
- // @ts-ignore
2
- import Point from "../geo/point";
3
- const DOM = {};
4
- export default DOM;
5
- DOM.create = (tagName, className, container) => {
6
- const el = window.document.createElement(tagName);
7
- if (className !== undefined) {
8
- el.className = className;
9
- }
10
- if (container) {
11
- container.appendChild(el);
12
- }
13
- return el;
14
- };
15
- DOM.createNS = (namespaceURI, tagName) => {
16
- const el = window.document.createElementNS(namespaceURI, tagName);
17
- return el;
18
- };
19
- const docStyle = window.document && window.document.documentElement.style;
20
- function testProp(props) {
21
- if (!docStyle) {
22
- return props[0];
23
- }
24
- for (const i of props) {
25
- if (i in docStyle) {
26
- return i;
27
- }
28
- }
29
- return props[0];
30
- }
31
- const selectProp = testProp(['userSelect', 'MozUserSelect', 'WebkitUserSelect', 'msUserSelect']);
32
- let userSelect;
33
- DOM.disableDrag = () => {
34
- if (docStyle && selectProp) {
35
- userSelect = docStyle[selectProp];
36
- docStyle[selectProp] = 'none';
37
- }
38
- };
39
- DOM.enableDrag = () => {
40
- if (docStyle && selectProp) {
41
- docStyle[selectProp] = userSelect;
42
- }
43
- };
44
- const transformProp = testProp(['transform', 'WebkitTransform']);
45
- DOM.setTransform = (el, value) => {
46
- // https://github.com/facebook/flow/issues/7754
47
- // $FlowFixMe
48
- el.style[transformProp] = value;
49
- };
50
-
51
- // Feature detection for {passive: false} support in add/removeEventListener.
52
- let passiveSupported = false;
53
- try {
54
- // https://github.com/facebook/flow/issues/285
55
- // $FlowFixMe
56
- const options = Object.defineProperty({}, 'passive', {
57
- get() {
58
- // eslint-disable-line
59
- passiveSupported = true;
60
- }
61
- });
62
- // @ts-ignore
63
- window.addEventListener('test', options, options);
64
- // @ts-ignore
65
- window.removeEventListener('test', options, options);
66
- } catch (err) {
67
- passiveSupported = false;
68
- }
69
- DOM.addEventListener = (target, type, callback, options = {}) => {
70
- if ('passive' in options && passiveSupported) {
71
- target.addEventListener(type, callback, options);
72
- } else {
73
- target.addEventListener(type, callback, options.capture);
74
- }
75
- };
76
- DOM.removeEventListener = (target, type, callback, options = {}) => {
77
- if ('passive' in options && passiveSupported) {
78
- target.removeEventListener(type, callback, options);
79
- } else {
80
- target.removeEventListener(type, callback, options.capture);
81
- }
82
- };
83
-
84
- // Suppress the next click, but only if it's immediate.
85
- const suppressClick = e => {
86
- e.preventDefault();
87
- e.stopPropagation();
88
- window.removeEventListener('click', suppressClick, true);
89
- };
90
- DOM.suppressClick = () => {
91
- window.addEventListener('click', suppressClick, true);
92
- setTimeout(() => {
93
- window.removeEventListener('click', suppressClick, true);
94
- }, 0);
95
- };
96
- DOM.mousePos = (el, e) => {
97
- // 暂时从 el 上获取 top/left, 后面需要动态获取
98
- const rect = el.getBoundingClientRect();
99
- return new Point(e.clientX - rect.left - el.clientLeft, e.clientY - rect.top - el.clientTop);
100
- };
101
- DOM.touchPos = (el, touches) => {
102
- // 暂时从 el 上获取 top/left, 后面需要动态获取
103
- const rect = el.getBoundingClientRect();
104
- const points = [];
105
- for (const touche of touches) {
106
- points.push(new Point(touche.clientX - rect.left - el.clientLeft, touche.clientY - rect.top - el.clientTop));
107
- }
108
- return points;
109
- };
110
- DOM.mouseButton = e => {
111
- return e.button;
112
- };
113
- DOM.remove = node => {
114
- if (node.parentNode) {
115
- node.parentNode.removeChild(node);
116
- }
117
- };
@@ -1,17 +0,0 @@
1
- export interface IPerformanceMetrics {
2
- loadTime: number;
3
- fullLoadTime: number;
4
- fps: number;
5
- percentDroppedFrames: number;
6
- }
7
- export declare const PerformanceMarkers: {
8
- create: string;
9
- load: string;
10
- fullLoad: string;
11
- };
12
- export declare const PerformanceUtils: {
13
- mark(marker: string): void;
14
- frame(timestamp: number): void;
15
- clearMetrics(): void;
16
- getPerformanceMetrics(): IPerformanceMetrics;
17
- };
@@ -1,58 +0,0 @@
1
- let lastFrameTime = null;
2
- let frameTimes = [];
3
- const minFramerateTarget = 30;
4
- const frameTimeTarget = 1000 / minFramerateTarget;
5
- const performance = window.performance;
6
- export const PerformanceMarkers = {
7
- create: 'create',
8
- load: 'load',
9
- fullLoad: 'fullLoad'
10
- };
11
- export const PerformanceUtils = {
12
- mark(marker) {
13
- performance.mark(marker);
14
- },
15
- frame(timestamp) {
16
- const currTimestamp = timestamp;
17
- if (lastFrameTime != null) {
18
- const frameTime = currTimestamp - lastFrameTime;
19
- frameTimes.push(frameTime);
20
- }
21
- lastFrameTime = currTimestamp;
22
- },
23
- clearMetrics() {
24
- lastFrameTime = null;
25
- frameTimes = [];
26
- performance.clearMeasures('loadTime');
27
- performance.clearMeasures('fullLoadTime');
28
- // @ts-ignore
29
- // tslint:disable-next-line:forin
30
- for (const marker in PerformanceMarkers) {
31
- // @ts-ignore
32
- performance.clearMarks(PerformanceMarkers[marker]);
33
- }
34
- },
35
- getPerformanceMetrics() {
36
- const loadTime = performance.measure('loadTime', PerformanceMarkers.create, PerformanceMarkers.load
37
- // @ts-ignore
38
- ).duration;
39
- const fullLoadTime = performance.measure('fullLoadTime', PerformanceMarkers.create, PerformanceMarkers.fullLoad
40
- // @ts-ignore
41
- ).duration;
42
- const totalFrames = frameTimes.length;
43
- const avgFrameTime = frameTimes.reduce((prev, curr) => prev + curr, 0) / totalFrames / 1000;
44
- const fps = 1 / avgFrameTime;
45
-
46
- // count frames that missed our framerate target
47
- const droppedFrames = frameTimes.filter(frameTime => frameTime > frameTimeTarget).reduce((acc, curr) => {
48
- return acc + (curr - frameTimeTarget) / frameTimeTarget;
49
- }, 0);
50
- const percentDroppedFrames = droppedFrames / (totalFrames + droppedFrames) * 100;
51
- return {
52
- loadTime,
53
- fullLoadTime,
54
- fps,
55
- percentDroppedFrames
56
- };
57
- }
58
- };
@@ -1,6 +0,0 @@
1
- export default class Frustum {
2
- static fromInvProjectionMatrix(invProj: Float32Array, worldSize: number, zoom: number): Frustum;
3
- points: number[][];
4
- planes: number[][];
5
- constructor(points: number[][], planes: number[][]);
6
- }
@@ -1,37 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import { vec3, vec4 } from 'gl-matrix';
3
- export default class Frustum {
4
- static fromInvProjectionMatrix(invProj, worldSize, zoom) {
5
- const clipSpaceCorners = [[-1, 1, -1, 1], [1, 1, -1, 1], [1, -1, -1, 1], [-1, -1, -1, 1], [-1, 1, 1, 1], [1, 1, 1, 1], [1, -1, 1, 1], [-1, -1, 1, 1]];
6
- const scale = Math.pow(2, zoom);
7
-
8
- // Transform frustum corner points from clip space to tile space
9
- const frustumCoords = clipSpaceCorners.map(v => vec4.transformMat4(new Float32Array([]), v, invProj)).map(v => vec4.scale(new Float32Array([]), v, 1.0 / v[3] / worldSize * scale));
10
- const frustumPlanePointIndices = [[0, 1, 2],
11
- // near
12
- [6, 5, 4],
13
- // far
14
- [0, 3, 7],
15
- // left
16
- [2, 1, 5],
17
- // right
18
- [3, 2, 6],
19
- // bottom
20
- [0, 4, 5] // top
21
- ];
22
- const frustumPlanes = frustumPlanePointIndices.map(p => {
23
- const a = vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[0]]), new Float32Array(frustumCoords[p[1]]));
24
- const b = vec3.sub(new Float32Array(3), new Float32Array(frustumCoords[p[2]]), new Float32Array(frustumCoords[p[1]]));
25
- const n = vec3.normalize(new Float32Array(3), vec3.cross(new Float32Array(3), a, b));
26
- const d = -vec3.dot(n, new Float32Array(frustumCoords[p[1]]));
27
- return n.concat(d);
28
- });
29
- return new Frustum(frustumCoords, frustumPlanes);
30
- }
31
- constructor(points, planes) {
32
- _defineProperty(this, "points", void 0);
33
- _defineProperty(this, "planes", void 0);
34
- this.points = points;
35
- this.planes = planes;
36
- }
37
- }
@@ -1,13 +0,0 @@
1
- export type TaskID = number;
2
- declare class TaskQueue {
3
- private queue;
4
- private id;
5
- private cleared;
6
- private currentlyRunning;
7
- constructor();
8
- add(callback: (timeStamp: number) => void): TaskID;
9
- remove(id: TaskID): void;
10
- run(timeStamp?: number): void;
11
- clear(): void;
12
- }
13
- export default TaskQueue;
@@ -1,60 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- // can't mark opaque due to https://github.com/flowtype/flow-remove-types/pull/61
3
-
4
- class TaskQueue {
5
- constructor() {
6
- _defineProperty(this, "queue", void 0);
7
- _defineProperty(this, "id", void 0);
8
- _defineProperty(this, "cleared", void 0);
9
- _defineProperty(this, "currentlyRunning", void 0);
10
- this.queue = [];
11
- this.id = 0;
12
- this.cleared = false;
13
- this.currentlyRunning = false;
14
- }
15
- add(callback) {
16
- const id = ++this.id;
17
- const queue = this.queue;
18
- queue.push({
19
- callback,
20
- id,
21
- cancelled: false
22
- });
23
- return id;
24
- }
25
- remove(id) {
26
- const running = this.currentlyRunning;
27
- const queue = running ? this.queue.concat(running) : this.queue;
28
- for (const task of queue) {
29
- if (task.id === id) {
30
- task.cancelled = true;
31
- return;
32
- }
33
- }
34
- }
35
- run(timeStamp = 0) {
36
- const queue = this.currentlyRunning = this.queue;
37
-
38
- // Tasks queued by callbacks in the current queue should be executed
39
- // on the next run, not the current run.
40
- this.queue = [];
41
- for (const task of queue) {
42
- if (task.cancelled) {
43
- continue;
44
- }
45
- task.callback(timeStamp);
46
- if (this.cleared) {
47
- break;
48
- }
49
- }
50
- this.cleared = false;
51
- this.currentlyRunning = false;
52
- }
53
- clear() {
54
- if (this.currentlyRunning) {
55
- this.cleared = true;
56
- }
57
- this.queue = [];
58
- }
59
- }
60
- export default TaskQueue;
package/lib/camera.d.ts DELETED
@@ -1,86 +0,0 @@
1
- import { EventEmitter } from 'eventemitter3';
2
- import type { IPaddingOptions } from './geo/edge_insets';
3
- import type { LngLatLike } from './geo/lng_lat';
4
- import LngLat from './geo/lng_lat';
5
- import type { LngLatBoundsLike } from './geo/lng_lat_bounds';
6
- import type { PointLike } from './geo/point';
7
- import Transform from './geo/transform';
8
- import type { IMapOptions } from './interface';
9
- type CallBack = (_: number) => void;
10
- export interface ICameraOptions {
11
- center?: LngLatLike;
12
- zoom?: number;
13
- bearing?: number;
14
- pitch?: number;
15
- around?: LngLatLike;
16
- padding?: IPaddingOptions;
17
- }
18
- export interface IAnimationOptions {
19
- duration?: number;
20
- easing?: (_: number) => number;
21
- offset?: PointLike;
22
- animate?: boolean;
23
- essential?: boolean;
24
- linear?: boolean;
25
- }
26
- export default class Camera extends EventEmitter {
27
- transform: Transform;
28
- protected options: IMapOptions;
29
- protected moving: boolean;
30
- protected zooming: boolean;
31
- protected rotating: boolean;
32
- protected pitching: boolean;
33
- protected padding: boolean;
34
- private bearingSnap;
35
- private easeEndTimeoutID;
36
- private easeStart;
37
- private easeOptions;
38
- private easeId;
39
- private onEaseFrame;
40
- private onEaseEnd;
41
- private easeFrameId;
42
- private pitchEnabled;
43
- private rotateEnabled;
44
- constructor(options: IMapOptions);
45
- requestRenderFrame(cb: CallBack): number;
46
- cancelRenderFrame(_: number): void;
47
- getCenter(): LngLat;
48
- getZoom(): number;
49
- getPitch(): number;
50
- setCenter(center: LngLatLike, eventData?: any): boolean;
51
- setPitch(pitch: number, eventData?: any): this;
52
- getBearing(): number;
53
- panTo(lnglat: LngLatLike, options?: IAnimationOptions, eventData?: any): this;
54
- panBy(offset: PointLike, options?: IAnimationOptions, eventData?: any): this;
55
- zoomOut(options?: IAnimationOptions, eventData?: any): this;
56
- setBearing(bearing: number, eventData?: any): this;
57
- setZoom(zoom: number, eventData?: any): this;
58
- zoomIn(options?: IAnimationOptions, eventData?: any): this;
59
- zoomTo(zoom: number, options?: IAnimationOptions, eventData?: any): this;
60
- getPadding(): IPaddingOptions;
61
- setPadding(padding: IPaddingOptions, eventData?: any): this;
62
- rotateTo(bearing: number, options?: IAnimationOptions, eventData?: any): this;
63
- resetNorth(options?: IAnimationOptions, eventData?: any): this;
64
- resetNorthPitch(options?: IAnimationOptions, eventData?: any): this;
65
- fitBounds(bounds: LngLatBoundsLike, options?: IAnimationOptions & ICameraOptions, eventData?: any): boolean | this;
66
- cameraForBounds(bounds: LngLatBoundsLike, options?: ICameraOptions): void | (ICameraOptions & IAnimationOptions);
67
- snapToNorth(options?: IAnimationOptions, eventData?: any): this;
68
- jumpTo(options?: ICameraOptions, eventData?: any): boolean;
69
- easeTo(options?: ICameraOptions & IAnimationOptions & {
70
- easeId?: string;
71
- noMoveStart?: boolean;
72
- }, eventData?: any): this;
73
- flyTo(options?: any, eventData?: any): boolean | this;
74
- fitScreenCoordinates(p0: PointLike, p1: PointLike, bearing: number, options?: IAnimationOptions & ICameraOptions, eventData?: any): boolean | this;
75
- stop(allowGestures?: boolean, easeId?: string): this;
76
- renderFrameCallback: () => void;
77
- private normalizeBearing;
78
- private normalizeCenter;
79
- private fireMoveEvents;
80
- private prepareEase;
81
- private afterEase;
82
- private ease;
83
- private cameraForBoxAndBearing;
84
- private fitInternal;
85
- }
86
- export {};