@antv/l7-map 2.17.12 → 2.18.2

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 (168) hide show
  1. package/package.json +4 -4
  2. package/es/camera.d.ts +0 -85
  3. package/es/camera.js +0 -775
  4. package/es/css/l7.css +0 -98
  5. package/es/earthmap.d.ts +0 -66
  6. package/es/earthmap.js +0 -422
  7. package/es/geo/edge_insets.d.ts +0 -54
  8. package/es/geo/edge_insets.js +0 -118
  9. package/es/geo/lng_lat.d.ts +0 -18
  10. package/es/geo/lng_lat.js +0 -81
  11. package/es/geo/lng_lat_bounds.d.ts +0 -24
  12. package/es/geo/lng_lat_bounds.js +0 -167
  13. package/es/geo/mercator.d.ts +0 -29
  14. package/es/geo/mercator.js +0 -92
  15. package/es/geo/point.d.ts +0 -40
  16. package/es/geo/point.js +0 -231
  17. package/es/geo/simple.d.ts +0 -29
  18. package/es/geo/simple.js +0 -92
  19. package/es/geo/transform.d.ts +0 -198
  20. package/es/geo/transform.js +0 -971
  21. package/es/handler/IHandler.d.ts +0 -34
  22. package/es/handler/IHandler.js +0 -1
  23. package/es/handler/blockable_map_event.d.ts +0 -17
  24. package/es/handler/blockable_map_event.js +0 -83
  25. package/es/handler/box_zoom.d.ts +0 -59
  26. package/es/handler/box_zoom.js +0 -200
  27. package/es/handler/click_zoom.d.ts +0 -16
  28. package/es/handler/click_zoom.js +0 -59
  29. package/es/handler/events/event.d.ts +0 -4
  30. package/es/handler/events/event.js +0 -12
  31. package/es/handler/events/index.d.ts +0 -4
  32. package/es/handler/events/index.js +0 -4
  33. package/es/handler/events/map_mouse_event.d.ts +0 -34
  34. package/es/handler/events/map_mouse_event.js +0 -75
  35. package/es/handler/events/map_touch_event.d.ts +0 -57
  36. package/es/handler/events/map_touch_event.js +0 -105
  37. package/es/handler/events/map_wheel_event.d.ts +0 -33
  38. package/es/handler/events/map_wheel_event.js +0 -61
  39. package/es/handler/events/render_event.d.ts +0 -5
  40. package/es/handler/events/render_event.js +0 -39
  41. package/es/handler/handler_inertia.d.ts +0 -23
  42. package/es/handler/handler_inertia.js +0 -184
  43. package/es/handler/handler_manager.d.ts +0 -61
  44. package/es/handler/handler_manager.js +0 -684
  45. package/es/handler/handler_util.d.ts +0 -4
  46. package/es/handler/handler_util.js +0 -10
  47. package/es/handler/keyboard.d.ts +0 -36
  48. package/es/handler/keyboard.js +0 -162
  49. package/es/handler/map_event.d.ts +0 -29
  50. package/es/handler/map_event.js +0 -131
  51. package/es/handler/mouse/index.d.ts +0 -4
  52. package/es/handler/mouse/index.js +0 -4
  53. package/es/handler/mouse/mouse_handler.d.ts +0 -22
  54. package/es/handler/mouse/mouse_handler.js +0 -131
  55. package/es/handler/mouse/mousepan_handler.d.ts +0 -10
  56. package/es/handler/mouse/mousepan_handler.js +0 -54
  57. package/es/handler/mouse/mousepitch_hander.d.ts +0 -9
  58. package/es/handler/mouse/mousepitch_hander.js +0 -56
  59. package/es/handler/mouse/mouserotate_hander.d.ts +0 -9
  60. package/es/handler/mouse/mouserotate_hander.js +0 -56
  61. package/es/handler/mouse/util.d.ts +0 -6
  62. package/es/handler/mouse/util.js +0 -12
  63. package/es/handler/scroll_zoom.d.ts +0 -93
  64. package/es/handler/scroll_zoom.js +0 -353
  65. package/es/handler/shim/dblclick_zoom.d.ts +0 -40
  66. package/es/handler/shim/dblclick_zoom.js +0 -72
  67. package/es/handler/shim/drag_pan.d.ts +0 -61
  68. package/es/handler/shim/drag_pan.js +0 -96
  69. package/es/handler/shim/drag_rotate.d.ts +0 -46
  70. package/es/handler/shim/drag_rotate.js +0 -80
  71. package/es/handler/shim/touch_zoom_rotate.d.ts +0 -70
  72. package/es/handler/shim/touch_zoom_rotate.js +0 -130
  73. package/es/handler/tap/single_tap_recognizer.d.ts +0 -20
  74. package/es/handler/tap/single_tap_recognizer.js +0 -120
  75. package/es/handler/tap/tap_drag_zoom.d.ts +0 -22
  76. package/es/handler/tap/tap_drag_zoom.js +0 -114
  77. package/es/handler/tap/tap_recognizer.d.ts +0 -17
  78. package/es/handler/tap/tap_recognizer.js +0 -62
  79. package/es/handler/tap/tap_zoom.d.ts +0 -22
  80. package/es/handler/tap/tap_zoom.js +0 -115
  81. package/es/handler/touch/index.d.ts +0 -5
  82. package/es/handler/touch/index.js +0 -5
  83. package/es/handler/touch/touch_pan.d.ts +0 -30
  84. package/es/handler/touch/touch_pan.js +0 -128
  85. package/es/handler/touch/touch_pitch.d.ts +0 -13
  86. package/es/handler/touch/touch_pitch.js +0 -110
  87. package/es/handler/touch/touch_rotate.d.ts +0 -12
  88. package/es/handler/touch/touch_rotate.js +0 -88
  89. package/es/handler/touch/touch_zoom.d.ts +0 -12
  90. package/es/handler/touch/touch_zoom.js +0 -67
  91. package/es/handler/touch/two_touch.d.ts +0 -23
  92. package/es/handler/touch/two_touch.js +0 -138
  93. package/es/hash.d.ts +0 -14
  94. package/es/hash.js +0 -156
  95. package/es/index.d.ts +0 -4
  96. package/es/index.js +0 -4
  97. package/es/interface.d.ts +0 -34
  98. package/es/interface.js +0 -1
  99. package/es/map.d.ts +0 -70
  100. package/es/map.js +0 -464
  101. package/es/util.d.ts +0 -25
  102. package/es/util.js +0 -101
  103. package/es/utils/Aabb.d.ts +0 -12
  104. package/es/utils/Aabb.js +0 -133
  105. package/es/utils/dom.d.ts +0 -4
  106. package/es/utils/dom.js +0 -218
  107. package/es/utils/performance.d.ts +0 -17
  108. package/es/utils/performance.js +0 -62
  109. package/es/utils/primitives.d.ts +0 -6
  110. package/es/utils/primitives.js +0 -45
  111. package/es/utils/task_queue.d.ts +0 -13
  112. package/es/utils/task_queue.js +0 -106
  113. package/lib/camera.js +0 -801
  114. package/lib/css/l7.css +0 -98
  115. package/lib/earthmap.js +0 -445
  116. package/lib/geo/edge_insets.js +0 -129
  117. package/lib/geo/lng_lat.js +0 -94
  118. package/lib/geo/lng_lat_bounds.js +0 -177
  119. package/lib/geo/mercator.js +0 -121
  120. package/lib/geo/point.js +0 -239
  121. package/lib/geo/simple.js +0 -123
  122. package/lib/geo/transform.js +0 -1013
  123. package/lib/handler/IHandler.js +0 -5
  124. package/lib/handler/blockable_map_event.js +0 -92
  125. package/lib/handler/box_zoom.js +0 -217
  126. package/lib/handler/click_zoom.js +0 -67
  127. package/lib/handler/events/event.js +0 -23
  128. package/lib/handler/events/index.js +0 -31
  129. package/lib/handler/events/map_mouse_event.js +0 -87
  130. package/lib/handler/events/map_touch_event.js +0 -119
  131. package/lib/handler/events/map_wheel_event.js +0 -72
  132. package/lib/handler/events/render_event.js +0 -52
  133. package/lib/handler/handler_inertia.js +0 -193
  134. package/lib/handler/handler_manager.js +0 -714
  135. package/lib/handler/handler_util.js +0 -17
  136. package/lib/handler/keyboard.js +0 -172
  137. package/lib/handler/map_event.js +0 -140
  138. package/lib/handler/mouse/index.js +0 -31
  139. package/lib/handler/mouse/mouse_handler.js +0 -141
  140. package/lib/handler/mouse/mousepan_handler.js +0 -66
  141. package/lib/handler/mouse/mousepitch_hander.js +0 -67
  142. package/lib/handler/mouse/mouserotate_hander.js +0 -67
  143. package/lib/handler/mouse/util.js +0 -26
  144. package/lib/handler/scroll_zoom.js +0 -367
  145. package/lib/handler/shim/dblclick_zoom.js +0 -80
  146. package/lib/handler/shim/drag_pan.js +0 -105
  147. package/lib/handler/shim/drag_rotate.js +0 -88
  148. package/lib/handler/shim/touch_zoom_rotate.js +0 -139
  149. package/lib/handler/tap/single_tap_recognizer.js +0 -131
  150. package/lib/handler/tap/tap_drag_zoom.js +0 -124
  151. package/lib/handler/tap/tap_recognizer.js +0 -78
  152. package/lib/handler/tap/tap_zoom.js +0 -124
  153. package/lib/handler/touch/index.js +0 -39
  154. package/lib/handler/touch/touch_pan.js +0 -138
  155. package/lib/handler/touch/touch_pitch.js +0 -120
  156. package/lib/handler/touch/touch_rotate.js +0 -99
  157. package/lib/handler/touch/touch_zoom.js +0 -78
  158. package/lib/handler/touch/two_touch.js +0 -148
  159. package/lib/hash.js +0 -169
  160. package/lib/index.js +0 -57
  161. package/lib/interface.js +0 -5
  162. package/lib/map.js +0 -489
  163. package/lib/util.js +0 -135
  164. package/lib/utils/Aabb.js +0 -143
  165. package/lib/utils/dom.js +0 -233
  166. package/lib/utils/performance.js +0 -72
  167. package/lib/utils/primitives.js +0 -57
  168. package/lib/utils/task_queue.js +0 -115
@@ -1,714 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _l7Utils = require("@antv/l7-utils");
19
-
20
- var _lodash = require("lodash");
21
-
22
- var _point = _interopRequireDefault(require("../geo/point"));
23
-
24
- var _dom = _interopRequireDefault(require("../utils/dom"));
25
-
26
- var _blockable_map_event = _interopRequireDefault(require("./blockable_map_event"));
27
-
28
- var _box_zoom = _interopRequireDefault(require("./box_zoom"));
29
-
30
- var _click_zoom = _interopRequireDefault(require("./click_zoom"));
31
-
32
- var _event = require("./events/event");
33
-
34
- var _render_event = _interopRequireDefault(require("./events/render_event"));
35
-
36
- var _handler_inertia = _interopRequireDefault(require("./handler_inertia"));
37
-
38
- var _keyboard = _interopRequireDefault(require("./keyboard"));
39
-
40
- var _map_event = _interopRequireDefault(require("./map_event"));
41
-
42
- var _mouse = require("./mouse");
43
-
44
- var _scroll_zoom = _interopRequireDefault(require("./scroll_zoom"));
45
-
46
- var _dblclick_zoom = _interopRequireDefault(require("./shim/dblclick_zoom"));
47
-
48
- var _drag_pan = _interopRequireDefault(require("./shim/drag_pan"));
49
-
50
- var _drag_rotate = _interopRequireDefault(require("./shim/drag_rotate"));
51
-
52
- var _touch_zoom_rotate = _interopRequireDefault(require("./shim/touch_zoom_rotate"));
53
-
54
- var _tap_drag_zoom = _interopRequireDefault(require("./tap/tap_drag_zoom"));
55
-
56
- var _tap_zoom = _interopRequireDefault(require("./tap/tap_zoom"));
57
-
58
- var _touch = require("./touch");
59
-
60
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
61
-
62
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
63
-
64
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
65
-
66
- var _isMoving = function isMoving(p) {
67
- return p.zoom || p.drag || p.pitch || p.rotate;
68
- };
69
-
70
- function hasChange(result) {
71
- return result.panDelta && result.panDelta.mag() || result.zoomDelta || result.bearingDelta || result.pitchDelta;
72
- }
73
-
74
- var HandlerManager = /*#__PURE__*/function () {
75
- function HandlerManager(map, options) {
76
- var _this = this;
77
-
78
- (0, _classCallCheck2.default)(this, HandlerManager);
79
- (0, _defineProperty2.default)(this, "handleWindowEvent", function (e) {
80
- _this.handleEvent(e, "".concat(e.type, "Window"));
81
- });
82
- (0, _defineProperty2.default)(this, "handleEvent", function (e, eventName) {
83
- if (e.type === 'blur') {
84
- _this.stop();
85
-
86
- return;
87
- }
88
-
89
- _this.updatingCamera = true;
90
- var inputEvent = e.type === 'renderFrame' ? undefined : e;
91
- /*
92
- * We don't call e.preventDefault() for any events by default.
93
- * Handlers are responsible for calling it where necessary.
94
- */
95
-
96
- var mergedIHandlerResult = {
97
- needsRenderFrame: false
98
- };
99
- var eventsInProgress = {};
100
- var activeHandlers = {}; // @ts-ignore
101
-
102
- var mapTouches = e.touches ? // @ts-ignore
103
- _this.getMapTouches(e.touches) : undefined;
104
- var points = mapTouches ? _dom.default.touchPos(_this.el, mapTouches) : _dom.default.mousePos(_this.el, e);
105
-
106
- var _iterator = _createForOfIteratorHelper(_this.handlers),
107
- _step;
108
-
109
- try {
110
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
111
- var _step$value = _step.value,
112
- handlerName = _step$value.handlerName,
113
- handler = _step$value.handler,
114
- allowed = _step$value.allowed;
115
-
116
- if (!handler.isEnabled()) {
117
- continue;
118
- }
119
-
120
- var data = void 0;
121
-
122
- if (_this.blockedByActive(activeHandlers, allowed, handlerName)) {
123
- handler.reset();
124
- } else {
125
- var handerName = eventName || e.type; // @ts-ignore
126
-
127
- if (handler && handler[handerName]) {
128
- // @ts-ignore
129
- data = handler[handerName](e, points, mapTouches);
130
-
131
- _this.mergeIHandlerResult(mergedIHandlerResult, eventsInProgress, data, handlerName, inputEvent);
132
-
133
- if (data && data.needsRenderFrame) {
134
- _this.triggerRenderFrame();
135
- }
136
- }
137
- } // @ts-ignore
138
-
139
-
140
- if (data || handler.isActive()) {
141
- activeHandlers[handlerName] = handler;
142
- }
143
- }
144
- } catch (err) {
145
- _iterator.e(err);
146
- } finally {
147
- _iterator.f();
148
- }
149
-
150
- var deactivatedHandlers = {};
151
-
152
- for (var name in _this.previousActiveHandlers) {
153
- if (!activeHandlers[name]) {
154
- deactivatedHandlers[name] = inputEvent;
155
- }
156
- }
157
-
158
- _this.previousActiveHandlers = activeHandlers;
159
-
160
- if (Object.keys(deactivatedHandlers).length || hasChange(mergedIHandlerResult)) {
161
- _this.changes.push([mergedIHandlerResult, eventsInProgress, deactivatedHandlers]);
162
-
163
- _this.triggerRenderFrame();
164
- }
165
-
166
- if (Object.keys(activeHandlers).length || hasChange(mergedIHandlerResult)) {
167
- _this.map.stop(true);
168
- }
169
-
170
- _this.updatingCamera = false;
171
- var cameraAnimation = mergedIHandlerResult.cameraAnimation;
172
-
173
- if (cameraAnimation) {
174
- _this.inertia.clear();
175
-
176
- _this.fireEvents({}, {});
177
-
178
- _this.changes = [];
179
- cameraAnimation(_this.map);
180
- }
181
- });
182
- this.map = map;
183
- this.el = this.map.getCanvasContainer();
184
- this.handlers = [];
185
- this.handlersById = {};
186
- this.changes = [];
187
- this.inertia = new _handler_inertia.default(map);
188
- this.bearingSnap = options.bearingSnap;
189
- this.rotateEnabled = options.rotateEnabled;
190
- this.pitchEnabled = options.pitchEnabled;
191
- this.previousActiveHandlers = {}; // Track whether map is currently moving, to compute start/move/end events
192
-
193
- this.eventsInProgress = {};
194
- this.addDefaultHandlers(options);
195
- var el = this.el;
196
- this.listeners = [];
197
-
198
- if (!_l7Utils.isMini) {
199
- // l7 - mini
200
- this.listeners = [// Bind touchstart and touchmove with passive: false because, even though
201
- // they only fire a map events and therefore could theoretically be
202
- // passive, binding with passive: true causes iOS not to respect
203
- // e.preventDefault() in _other_ handlers, even if they are non-passive
204
- // (see https://bugs.webkit.org/show_bug.cgi?id=184251)
205
- [el, 'touchstart', {
206
- passive: false
207
- }], [el, 'touchmove', {
208
- passive: false
209
- }], [el, 'touchend', undefined], [el, 'touchcancel', undefined], [el, 'mousedown', undefined], [el, 'mousemove', undefined], [el, 'mouseup', undefined], // Bind window-level event listeners for move and up/end events. In the absence of
210
- // the pointer capture API, which is not supported by all necessary platforms,
211
- // window-level event listeners give us the best shot at capturing events that
212
- // fall outside the map canvas element. Use `{capture: true}` for the move event
213
- // to prevent map move events from being fired during a drag.
214
- // @ts-ignore
215
- [window.document, 'mousemove', {
216
- capture: true
217
- }], // @ts-ignore
218
- [window.document, 'mouseup', undefined], [el, 'mouseover', undefined], [el, 'mouseout', undefined], [el, 'dblclick', undefined], [el, 'click', undefined], [el, 'keydown', {
219
- capture: false
220
- }], [el, 'keyup', undefined], [el, 'wheel', {
221
- passive: false
222
- }], [el, 'contextmenu', undefined], // @ts-ignore
223
- [window, 'blur', undefined]];
224
-
225
- var _iterator2 = _createForOfIteratorHelper(this.listeners),
226
- _step2;
227
-
228
- try {
229
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
230
- var _step2$value = (0, _slicedToArray2.default)(_step2.value, 3),
231
- target = _step2$value[0],
232
- type = _step2$value[1],
233
- listenerOptions = _step2$value[2];
234
-
235
- // @ts-ignore
236
- _dom.default.addEventListener(target, type, // @ts-ignore
237
- target === window.document ? this.handleWindowEvent : this.handleEvent, listenerOptions);
238
- }
239
- } catch (err) {
240
- _iterator2.e(err);
241
- } finally {
242
- _iterator2.f();
243
- }
244
- } else {
245
- _l7Utils.$window.document.addEventListener('touchstart', function (e) {
246
- _this.handleEvent(e);
247
- }, {});
248
-
249
- _l7Utils.$window.document.addEventListener('touchmove', function (e) {
250
- _this.handleEvent(e);
251
- }, {});
252
-
253
- _l7Utils.$window.document.addEventListener('touchend', function (e) {
254
- _this.handleEvent(e);
255
- }, {});
256
-
257
- _l7Utils.$window.document.addEventListener('touchcancel', function (e) {
258
- _this.handleEvent(e);
259
- }, {});
260
- }
261
- }
262
-
263
- (0, _createClass2.default)(HandlerManager, [{
264
- key: "destroy",
265
- value: function destroy() {
266
- var _iterator3 = _createForOfIteratorHelper(this.listeners),
267
- _step3;
268
-
269
- try {
270
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
271
- var _step3$value = (0, _slicedToArray2.default)(_step3.value, 3),
272
- target = _step3$value[0],
273
- type = _step3$value[1],
274
- listenerOptions = _step3$value[2];
275
-
276
- // @ts-ignore
277
- _dom.default.removeEventListener(target, type, // @ts-ignore
278
- target === window.document ? this.handleWindowEvent : this.handleEvent, listenerOptions);
279
- }
280
- } catch (err) {
281
- _iterator3.e(err);
282
- } finally {
283
- _iterator3.f();
284
- }
285
- }
286
- }, {
287
- key: "stop",
288
- value: function stop() {
289
- // do nothing if this method was triggered by a gesture update
290
- if (this.updatingCamera) {
291
- return;
292
- }
293
-
294
- var _iterator4 = _createForOfIteratorHelper(this.handlers),
295
- _step4;
296
-
297
- try {
298
- for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
299
- var handler = _step4.value.handler;
300
- handler.reset();
301
- }
302
- } catch (err) {
303
- _iterator4.e(err);
304
- } finally {
305
- _iterator4.f();
306
- }
307
-
308
- this.inertia.clear();
309
- this.fireEvents({}, {});
310
- this.changes = [];
311
- }
312
- }, {
313
- key: "isActive",
314
- value: function isActive() {
315
- var _iterator5 = _createForOfIteratorHelper(this.handlers),
316
- _step5;
317
-
318
- try {
319
- for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
320
- var handler = _step5.value.handler;
321
-
322
- if (handler.isActive()) {
323
- return true;
324
- }
325
- }
326
- } catch (err) {
327
- _iterator5.e(err);
328
- } finally {
329
- _iterator5.f();
330
- }
331
-
332
- return false;
333
- }
334
- }, {
335
- key: "isZooming",
336
- value: function isZooming() {
337
- return !!this.eventsInProgress.zoom || this.map.scrollZoom.isZooming();
338
- }
339
- }, {
340
- key: "isRotating",
341
- value: function isRotating() {
342
- return !!this.eventsInProgress.rotate;
343
- }
344
- }, {
345
- key: "isMoving",
346
- value: function isMoving() {
347
- return Boolean(_isMoving(this.eventsInProgress)) || this.isZooming();
348
- }
349
- }, {
350
- key: "mergeIHandlerResult",
351
- value: function mergeIHandlerResult(mergedIHandlerResult, eventsInProgress, HandlerResult, name, e) {
352
- if (!HandlerResult) {
353
- return;
354
- }
355
-
356
- (0, _lodash.merge)(mergedIHandlerResult, HandlerResult);
357
- var eventData = {
358
- handlerName: name,
359
- originalEvent: HandlerResult.originalEvent || e
360
- }; // track which handler changed which camera property
361
-
362
- if (HandlerResult.zoomDelta !== undefined) {
363
- eventsInProgress.zoom = eventData;
364
- }
365
-
366
- if (HandlerResult.panDelta !== undefined) {
367
- eventsInProgress.drag = eventData;
368
- }
369
-
370
- if (HandlerResult.pitchDelta !== undefined) {
371
- eventsInProgress.pitch = eventData;
372
- }
373
-
374
- if (HandlerResult.bearingDelta !== undefined) {
375
- eventsInProgress.rotate = eventData;
376
- }
377
- }
378
- }, {
379
- key: "triggerRenderFrame",
380
- value: function triggerRenderFrame() {
381
- var _this2 = this;
382
-
383
- if (this.frameId === undefined) {
384
- this.frameId = this.map.requestRenderFrame(function (timeStamp) {
385
- // @ts-ignore
386
- delete _this2.frameId;
387
-
388
- _this2.handleEvent(new _render_event.default('renderFrame', {
389
- timeStamp: timeStamp
390
- }));
391
-
392
- _this2.applyChanges();
393
- });
394
- }
395
- }
396
- }, {
397
- key: "addDefaultHandlers",
398
- value: function addDefaultHandlers(options) {
399
- var map = this.map;
400
- var el = map.getCanvasContainer();
401
- this.add('mapEvent', new _map_event.default(map, options));
402
- var boxZoom = map.boxZoom = new _box_zoom.default(map, options);
403
- this.add('boxZoom', boxZoom);
404
- var tapZoom = new _tap_zoom.default();
405
- var clickZoom = new _click_zoom.default();
406
- map.doubleClickZoom = new _dblclick_zoom.default(clickZoom, tapZoom);
407
- this.add('tapZoom', tapZoom);
408
- this.add('clickZoom', clickZoom);
409
- var tapDragZoom = new _tap_drag_zoom.default();
410
- this.add('tapDragZoom', tapDragZoom);
411
- var touchPitch = map.touchPitch = new _touch.TouchPitchHandler();
412
- this.add('touchPitch', touchPitch);
413
- var mouseRotate = new _mouse.MouseRotateHandler(options);
414
- var mousePitch = new _mouse.MousePitchHandler(options);
415
- map.dragRotate = new _drag_rotate.default(options, mouseRotate, mousePitch);
416
- this.add('mouseRotate', mouseRotate, ['mousePitch']);
417
- this.add('mousePitch', mousePitch, ['mouseRotate']);
418
- var mousePan = new _mouse.MousePanHandler(options);
419
- var touchPan = new _touch.TouchPanHandler(options);
420
- map.dragPan = new _drag_pan.default(el, mousePan, touchPan);
421
- this.add('mousePan', mousePan);
422
- this.add('touchPan', touchPan, ['touchZoom', 'touchRotate']);
423
- var touchRotate = new _touch.TouchRotateHandler();
424
- var touchZoom = new _touch.TouchZoomHandler();
425
- map.touchZoomRotate = new _touch_zoom_rotate.default(el, touchZoom, touchRotate, tapDragZoom);
426
- this.add('touchRotate', touchRotate, ['touchPan', 'touchZoom']);
427
- this.add('touchZoom', touchZoom, ['touchPan', 'touchRotate']);
428
- var scrollZoom = map.scrollZoom = new _scroll_zoom.default(map, this);
429
- this.add('scrollZoom', scrollZoom, ['mousePan']);
430
- var keyboard = map.keyboard = new _keyboard.default();
431
- this.add('keyboard', keyboard);
432
- this.add('blockableMapEvent', new _blockable_map_event.default(map));
433
-
434
- for (var _i = 0, _arr = ['boxZoom', 'doubleClickZoom', 'tapDragZoom', 'touchPitch', 'dragRotate', 'dragPan', 'touchZoomRotate', 'scrollZoom', 'keyboard']; _i < _arr.length; _i++) {
435
- var name = _arr[_i];
436
-
437
- // @ts-ignore
438
- if (options.interactive && options[name]) {
439
- // @ts-ignore
440
- map[name].enable(options[name]);
441
- }
442
- }
443
- }
444
- }, {
445
- key: "add",
446
- value: function add(handlerName, handler, allowed) {
447
- this.handlers.push({
448
- handlerName: handlerName,
449
- handler: handler,
450
- allowed: allowed
451
- });
452
- this.handlersById[handlerName] = handler;
453
- }
454
- }, {
455
- key: "blockedByActive",
456
- value: function blockedByActive(activeHandlers, allowed, myName) {
457
- for (var name in activeHandlers) {
458
- if (name === myName) {
459
- continue;
460
- }
461
-
462
- if (!allowed || allowed.indexOf(name) < 0) {
463
- return true;
464
- }
465
- }
466
-
467
- return false;
468
- }
469
- }, {
470
- key: "getMapTouches",
471
- value: function getMapTouches(touches) {
472
- var mapTouches = [];
473
-
474
- var _iterator6 = _createForOfIteratorHelper(touches),
475
- _step6;
476
-
477
- try {
478
- for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
479
- var t = _step6.value;
480
- var target = t.target;
481
-
482
- if (_l7Utils.isMini || this.el.contains(target)) {
483
- mapTouches.push(t);
484
- }
485
- }
486
- } catch (err) {
487
- _iterator6.e(err);
488
- } finally {
489
- _iterator6.f();
490
- }
491
-
492
- return mapTouches;
493
- }
494
- }, {
495
- key: "applyChanges",
496
- value: function applyChanges() {
497
- var combined = {};
498
- var combinedEventsInProgress = {};
499
- var combinedDeactivatedHandlers = {};
500
-
501
- var _iterator7 = _createForOfIteratorHelper(this.changes),
502
- _step7;
503
-
504
- try {
505
- for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
506
- var _step7$value = (0, _slicedToArray2.default)(_step7.value, 3),
507
- change = _step7$value[0],
508
- eventsInProgress = _step7$value[1],
509
- deactivatedHandlers = _step7$value[2];
510
-
511
- if (change.panDelta) {
512
- combined.panDelta = (combined.panDelta || new _point.default(0, 0))._add(change.panDelta);
513
- }
514
-
515
- if (change.zoomDelta) {
516
- combined.zoomDelta = (combined.zoomDelta || 0) + change.zoomDelta;
517
- }
518
-
519
- if (change.bearingDelta) {
520
- combined.bearingDelta = (combined.bearingDelta || 0) + change.bearingDelta;
521
- }
522
-
523
- if (change.pitchDelta) {
524
- combined.pitchDelta = (combined.pitchDelta || 0) + change.pitchDelta;
525
- }
526
-
527
- if (change.around !== undefined) {
528
- combined.around = change.around;
529
- }
530
-
531
- if (change.pinchAround !== undefined) {
532
- combined.pinchAround = change.pinchAround;
533
- }
534
-
535
- if (change.noInertia) {
536
- combined.noInertia = change.noInertia;
537
- }
538
-
539
- (0, _lodash.merge)(combinedEventsInProgress, eventsInProgress);
540
- (0, _lodash.merge)(combinedDeactivatedHandlers, deactivatedHandlers);
541
- }
542
- } catch (err) {
543
- _iterator7.e(err);
544
- } finally {
545
- _iterator7.f();
546
- }
547
-
548
- this.updateMapTransform(combined, combinedEventsInProgress, combinedDeactivatedHandlers);
549
- this.changes = [];
550
- }
551
- }, {
552
- key: "updateMapTransform",
553
- value: function updateMapTransform(combinedResult, combinedEventsInProgress, deactivatedHandlers) {
554
- var map = this.map;
555
- var tr = map.transform;
556
-
557
- if (!hasChange(combinedResult)) {
558
- return this.fireEvents(combinedEventsInProgress, deactivatedHandlers);
559
- }
560
-
561
- var panDelta = combinedResult.panDelta,
562
- zoomDelta = combinedResult.zoomDelta,
563
- bearingDelta = combinedResult.bearingDelta,
564
- pitchDelta = combinedResult.pitchDelta,
565
- pinchAround = combinedResult.pinchAround;
566
- var around = combinedResult.around;
567
-
568
- if (pinchAround !== undefined) {
569
- around = pinchAround;
570
- } // stop any ongoing camera animations (easeTo, flyTo)
571
-
572
-
573
- map.stop(true);
574
- around = around || map.transform.centerPoint;
575
- var loc = tr.pointLocation(panDelta ? around.sub(panDelta) : around);
576
-
577
- if (bearingDelta && this.rotateEnabled) {
578
- tr.bearing += bearingDelta;
579
- }
580
-
581
- if (pitchDelta && this.pitchEnabled) {
582
- tr.pitch += pitchDelta;
583
- }
584
-
585
- if (zoomDelta) {
586
- tr.zoom += zoomDelta;
587
- }
588
-
589
- tr.setLocationAtPoint(loc, around);
590
- this.map.update();
591
-
592
- if (!combinedResult.noInertia) {
593
- this.inertia.record(combinedResult);
594
- }
595
-
596
- this.fireEvents(combinedEventsInProgress, deactivatedHandlers);
597
- }
598
- }, {
599
- key: "fireEvents",
600
- value: function fireEvents(newEventsInProgress, deactivatedHandlers) {
601
- var _this3 = this;
602
-
603
- var wasMoving = _isMoving(this.eventsInProgress);
604
-
605
- var nowMoving = _isMoving(newEventsInProgress);
606
-
607
- var startEvents = {};
608
-
609
- for (var eventName in newEventsInProgress) {
610
- if (newEventsInProgress[eventName]) {
611
- var originalEvent = newEventsInProgress[eventName].originalEvent;
612
-
613
- if (!this.eventsInProgress[eventName]) {
614
- startEvents["".concat(eventName, "start")] = originalEvent;
615
- }
616
-
617
- this.eventsInProgress[eventName] = newEventsInProgress[eventName];
618
- }
619
- } // fire start events only after this.eventsInProgress has been updated
620
-
621
-
622
- if (!wasMoving && nowMoving) {
623
- this.fireEvent('movestart', nowMoving.originalEvent);
624
- }
625
-
626
- for (var name in startEvents) {
627
- if (startEvents[name]) {
628
- this.fireEvent(name, startEvents[name]);
629
- }
630
- }
631
-
632
- if (newEventsInProgress.rotate) {
633
- this.bearingChanged = true;
634
- }
635
-
636
- if (nowMoving) {
637
- this.fireEvent('move', nowMoving.originalEvent);
638
- }
639
-
640
- for (var _eventName in newEventsInProgress) {
641
- if (newEventsInProgress[_eventName]) {
642
- var _originalEvent = newEventsInProgress[_eventName].originalEvent;
643
- this.fireEvent(_eventName, _originalEvent);
644
- }
645
- }
646
-
647
- var endEvents = {};
648
- var originalEndEvent;
649
-
650
- for (var _eventName2 in this.eventsInProgress) {
651
- if (this.eventsInProgress[_eventName2]) {
652
- var _this$eventsInProgres = this.eventsInProgress[_eventName2],
653
- handlerName = _this$eventsInProgres.handlerName,
654
- _originalEvent2 = _this$eventsInProgres.originalEvent;
655
-
656
- if (!this.handlersById[handlerName].isActive()) {
657
- delete this.eventsInProgress[_eventName2];
658
- originalEndEvent = deactivatedHandlers[handlerName] || _originalEvent2;
659
- endEvents["".concat(_eventName2, "end")] = originalEndEvent;
660
- }
661
- }
662
- }
663
-
664
- for (var _name in endEvents) {
665
- if (endEvents[_name]) {
666
- this.fireEvent(_name, endEvents[_name]);
667
- }
668
- }
669
-
670
- var stillMoving = _isMoving(this.eventsInProgress);
671
-
672
- if ((wasMoving || nowMoving) && !stillMoving) {
673
- this.updatingCamera = true;
674
- var inertialEase = this.inertia.onMoveEnd(this.map.dragPan.inertiaOptions);
675
-
676
- var shouldSnapToNorth = function shouldSnapToNorth(bearing) {
677
- return bearing !== 0 && -_this3.bearingSnap < bearing && bearing < _this3.bearingSnap;
678
- };
679
-
680
- if (inertialEase) {
681
- if (shouldSnapToNorth(inertialEase.bearing || this.map.getBearing())) {
682
- inertialEase.bearing = 0;
683
- }
684
-
685
- this.map.easeTo(inertialEase, {
686
- originalEvent: originalEndEvent
687
- });
688
- } else {
689
- this.map.emit('moveend', new _event.Event('moveend', {
690
- originalEvent: originalEndEvent
691
- }));
692
-
693
- if (shouldSnapToNorth(this.map.getBearing())) {
694
- this.map.resetNorth();
695
- }
696
- }
697
-
698
- this.bearingChanged = false;
699
- this.updatingCamera = false;
700
- }
701
- }
702
- }, {
703
- key: "fireEvent",
704
- value: function fireEvent(type, e) {
705
- this.map.emit(type, new _event.Event(type, e ? {
706
- originalEvent: e
707
- } : {}));
708
- }
709
- }]);
710
- return HandlerManager;
711
- }();
712
-
713
- var _default = HandlerManager;
714
- exports.default = _default;