@antv/l7-map 2.9.37-alpha.2 → 2.9.37-alpha.3

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/es/camera.d.ts +84 -0
  2. package/es/camera.js +767 -0
  3. package/es/css/l7.css +98 -0
  4. package/es/earthmap.d.ts +66 -0
  5. package/es/earthmap.js +422 -0
  6. package/es/geo/edge_insets.d.ts +54 -0
  7. package/es/geo/edge_insets.js +118 -0
  8. package/es/geo/lng_lat.d.ts +18 -0
  9. package/es/geo/lng_lat.js +81 -0
  10. package/es/geo/lng_lat_bounds.d.ts +24 -0
  11. package/es/geo/lng_lat_bounds.js +167 -0
  12. package/es/geo/mercator.d.ts +28 -0
  13. package/es/geo/mercator.js +91 -0
  14. package/es/geo/point.d.ts +40 -0
  15. package/es/geo/point.js +231 -0
  16. package/es/geo/simple.d.ts +29 -0
  17. package/es/geo/simple.js +92 -0
  18. package/es/geo/transform.d.ts +198 -0
  19. package/es/geo/transform.js +971 -0
  20. package/es/handler/IHandler.d.ts +34 -0
  21. package/es/handler/IHandler.js +1 -0
  22. package/es/handler/blockable_map_event.d.ts +17 -0
  23. package/es/handler/blockable_map_event.js +83 -0
  24. package/es/handler/box_zoom.d.ts +59 -0
  25. package/es/handler/box_zoom.js +200 -0
  26. package/es/handler/click_zoom.d.ts +16 -0
  27. package/es/handler/click_zoom.js +59 -0
  28. package/es/handler/events/event.d.ts +4 -0
  29. package/es/handler/events/event.js +12 -0
  30. package/es/handler/events/index.d.ts +4 -0
  31. package/es/handler/events/index.js +4 -0
  32. package/es/handler/events/map_mouse_event.d.ts +34 -0
  33. package/es/handler/events/map_mouse_event.js +75 -0
  34. package/es/handler/events/map_touch_event.d.ts +57 -0
  35. package/es/handler/events/map_touch_event.js +105 -0
  36. package/es/handler/events/map_wheel_event.d.ts +33 -0
  37. package/es/handler/events/map_wheel_event.js +61 -0
  38. package/es/handler/events/render_event.d.ts +5 -0
  39. package/es/handler/events/render_event.js +39 -0
  40. package/es/handler/handler_inertia.d.ts +23 -0
  41. package/es/handler/handler_inertia.js +184 -0
  42. package/es/handler/handler_manager.d.ts +61 -0
  43. package/es/handler/handler_manager.js +684 -0
  44. package/es/handler/handler_util.d.ts +4 -0
  45. package/es/handler/handler_util.js +10 -0
  46. package/es/handler/keyboard.d.ts +36 -0
  47. package/es/handler/keyboard.js +162 -0
  48. package/es/handler/map_event.d.ts +29 -0
  49. package/es/handler/map_event.js +131 -0
  50. package/es/handler/mouse/index.d.ts +4 -0
  51. package/es/handler/mouse/index.js +4 -0
  52. package/es/handler/mouse/mouse_handler.d.ts +22 -0
  53. package/es/handler/mouse/mouse_handler.js +131 -0
  54. package/es/handler/mouse/mousepan_handler.d.ts +10 -0
  55. package/es/handler/mouse/mousepan_handler.js +54 -0
  56. package/es/handler/mouse/mousepitch_hander.d.ts +9 -0
  57. package/es/handler/mouse/mousepitch_hander.js +56 -0
  58. package/es/handler/mouse/mouserotate_hander.d.ts +9 -0
  59. package/es/handler/mouse/mouserotate_hander.js +56 -0
  60. package/es/handler/mouse/util.d.ts +6 -0
  61. package/es/handler/mouse/util.js +12 -0
  62. package/es/handler/scroll_zoom.d.ts +93 -0
  63. package/es/handler/scroll_zoom.js +353 -0
  64. package/es/handler/shim/dblclick_zoom.d.ts +40 -0
  65. package/es/handler/shim/dblclick_zoom.js +72 -0
  66. package/es/handler/shim/drag_pan.d.ts +61 -0
  67. package/es/handler/shim/drag_pan.js +96 -0
  68. package/es/handler/shim/drag_rotate.d.ts +46 -0
  69. package/es/handler/shim/drag_rotate.js +80 -0
  70. package/es/handler/shim/touch_zoom_rotate.d.ts +70 -0
  71. package/es/handler/shim/touch_zoom_rotate.js +130 -0
  72. package/es/handler/tap/single_tap_recognizer.d.ts +20 -0
  73. package/es/handler/tap/single_tap_recognizer.js +120 -0
  74. package/es/handler/tap/tap_drag_zoom.d.ts +22 -0
  75. package/es/handler/tap/tap_drag_zoom.js +114 -0
  76. package/es/handler/tap/tap_recognizer.d.ts +17 -0
  77. package/es/handler/tap/tap_recognizer.js +62 -0
  78. package/es/handler/tap/tap_zoom.d.ts +22 -0
  79. package/es/handler/tap/tap_zoom.js +115 -0
  80. package/es/handler/touch/index.d.ts +5 -0
  81. package/es/handler/touch/index.js +5 -0
  82. package/es/handler/touch/touch_pan.d.ts +30 -0
  83. package/es/handler/touch/touch_pan.js +128 -0
  84. package/es/handler/touch/touch_pitch.d.ts +13 -0
  85. package/es/handler/touch/touch_pitch.js +110 -0
  86. package/es/handler/touch/touch_rotate.d.ts +12 -0
  87. package/es/handler/touch/touch_rotate.js +88 -0
  88. package/es/handler/touch/touch_zoom.d.ts +12 -0
  89. package/es/handler/touch/touch_zoom.js +67 -0
  90. package/es/handler/touch/two_touch.d.ts +23 -0
  91. package/es/handler/touch/two_touch.js +138 -0
  92. package/es/hash.d.ts +14 -0
  93. package/es/hash.js +156 -0
  94. package/es/index.d.ts +3 -0
  95. package/es/index.js +3 -0
  96. package/es/interface.d.ts +34 -0
  97. package/es/interface.js +1 -0
  98. package/es/map.d.ts +70 -0
  99. package/es/map.js +464 -0
  100. package/es/util.d.ts +18 -0
  101. package/es/util.js +84 -0
  102. package/es/utils/Aabb.d.ts +12 -0
  103. package/es/utils/Aabb.js +133 -0
  104. package/es/utils/dom.d.ts +4 -0
  105. package/es/utils/dom.js +218 -0
  106. package/es/utils/performance.d.ts +17 -0
  107. package/es/utils/performance.js +62 -0
  108. package/es/utils/primitives.d.ts +6 -0
  109. package/es/utils/primitives.js +45 -0
  110. package/es/utils/task_queue.d.ts +13 -0
  111. package/es/utils/task_queue.js +106 -0
  112. package/lib/camera.js +793 -0
  113. package/lib/css/l7.css +98 -0
  114. package/lib/earthmap.js +445 -0
  115. package/lib/geo/edge_insets.js +129 -0
  116. package/lib/geo/lng_lat.js +94 -0
  117. package/lib/geo/lng_lat_bounds.js +177 -0
  118. package/lib/geo/mercator.js +120 -0
  119. package/lib/geo/point.js +239 -0
  120. package/lib/geo/simple.js +123 -0
  121. package/lib/geo/transform.js +1013 -0
  122. package/lib/handler/IHandler.js +5 -0
  123. package/lib/handler/blockable_map_event.js +92 -0
  124. package/lib/handler/box_zoom.js +217 -0
  125. package/lib/handler/click_zoom.js +67 -0
  126. package/lib/handler/events/event.js +23 -0
  127. package/lib/handler/events/index.js +31 -0
  128. package/lib/handler/events/map_mouse_event.js +87 -0
  129. package/lib/handler/events/map_touch_event.js +119 -0
  130. package/lib/handler/events/map_wheel_event.js +72 -0
  131. package/lib/handler/events/render_event.js +52 -0
  132. package/lib/handler/handler_inertia.js +193 -0
  133. package/lib/handler/handler_manager.js +714 -0
  134. package/lib/handler/handler_util.js +17 -0
  135. package/lib/handler/keyboard.js +172 -0
  136. package/lib/handler/map_event.js +140 -0
  137. package/lib/handler/mouse/index.js +31 -0
  138. package/lib/handler/mouse/mouse_handler.js +141 -0
  139. package/lib/handler/mouse/mousepan_handler.js +66 -0
  140. package/lib/handler/mouse/mousepitch_hander.js +67 -0
  141. package/lib/handler/mouse/mouserotate_hander.js +67 -0
  142. package/lib/handler/mouse/util.js +26 -0
  143. package/lib/handler/scroll_zoom.js +367 -0
  144. package/lib/handler/shim/dblclick_zoom.js +80 -0
  145. package/lib/handler/shim/drag_pan.js +105 -0
  146. package/lib/handler/shim/drag_rotate.js +88 -0
  147. package/lib/handler/shim/touch_zoom_rotate.js +139 -0
  148. package/lib/handler/tap/single_tap_recognizer.js +131 -0
  149. package/lib/handler/tap/tap_drag_zoom.js +124 -0
  150. package/lib/handler/tap/tap_recognizer.js +78 -0
  151. package/lib/handler/tap/tap_zoom.js +124 -0
  152. package/lib/handler/touch/index.js +39 -0
  153. package/lib/handler/touch/touch_pan.js +138 -0
  154. package/lib/handler/touch/touch_pitch.js +120 -0
  155. package/lib/handler/touch/touch_rotate.js +99 -0
  156. package/lib/handler/touch/touch_zoom.js +78 -0
  157. package/lib/handler/touch/two_touch.js +148 -0
  158. package/lib/hash.js +169 -0
  159. package/lib/index.js +44 -0
  160. package/lib/interface.js +5 -0
  161. package/lib/map.js +489 -0
  162. package/lib/util.js +116 -0
  163. package/lib/utils/Aabb.js +143 -0
  164. package/lib/utils/dom.js +233 -0
  165. package/lib/utils/performance.js +72 -0
  166. package/lib/utils/primitives.js +57 -0
  167. package/lib/utils/task_queue.js +115 -0
  168. package/package.json +3 -3
@@ -0,0 +1,72 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _event = require("./event");
21
+
22
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
23
+
24
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
25
+
26
+ var MapWheelEvent = /*#__PURE__*/function (_Event) {
27
+ (0, _inherits2.default)(MapWheelEvent, _Event);
28
+
29
+ var _super = _createSuper(MapWheelEvent);
30
+
31
+ /**
32
+ * The event type.
33
+ */
34
+
35
+ /**
36
+ * The DOM event which caused the map event.
37
+ */
38
+
39
+ /**
40
+ * The `Map` object that fired the event.
41
+ */
42
+
43
+ /**
44
+ * @private
45
+ */
46
+ function MapWheelEvent(type, map, originalEvent) {
47
+ var _this;
48
+
49
+ (0, _classCallCheck2.default)(this, MapWheelEvent);
50
+ _this = _super.call(this, type, {
51
+ originalEvent: originalEvent
52
+ });
53
+ _this.defaultPrevented = false;
54
+ return _this;
55
+ }
56
+ /**
57
+ * Prevents subsequent default processing of the event by the map.
58
+ *
59
+ * Calling this method will prevent the the behavior of {@link ScrollZoomHandler}.
60
+ */
61
+
62
+
63
+ (0, _createClass2.default)(MapWheelEvent, [{
64
+ key: "preventDefault",
65
+ value: function preventDefault() {
66
+ this.defaultPrevented = true;
67
+ }
68
+ }]);
69
+ return MapWheelEvent;
70
+ }(_event.Event);
71
+
72
+ exports.default = MapWheelEvent;
@@ -0,0 +1,52 @@
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 _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _event = require("./event");
25
+
26
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
27
+
28
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
29
+
30
+ var RenderFrameEvent = /*#__PURE__*/function (_Event) {
31
+ (0, _inherits2.default)(RenderFrameEvent, _Event);
32
+
33
+ var _super = _createSuper(RenderFrameEvent);
34
+
35
+ function RenderFrameEvent() {
36
+ var _this;
37
+
38
+ (0, _classCallCheck2.default)(this, RenderFrameEvent);
39
+
40
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41
+ args[_key] = arguments[_key];
42
+ }
43
+
44
+ _this = _super.call.apply(_super, [this].concat(args));
45
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'renderFrame');
46
+ return _this;
47
+ }
48
+
49
+ return (0, _createClass2.default)(RenderFrameEvent);
50
+ }(_event.Event);
51
+
52
+ exports.default = RenderFrameEvent;
@@ -0,0 +1,193 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _point = _interopRequireDefault(require("../geo/point"));
15
+
16
+ var _merge = _interopRequireDefault(require("lodash/merge"));
17
+
18
+ var _util = require("../util");
19
+
20
+ 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; } } }; }
21
+
22
+ 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); }
23
+
24
+ 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; }
25
+
26
+ var defaultInertiaOptions = {
27
+ linearity: 0.3,
28
+ easing: (0, _util.bezier)(0, 0, 0.3, 1)
29
+ };
30
+ var defaultPanInertiaOptions = (0, _merge.default)({
31
+ deceleration: 2500,
32
+ maxSpeed: 1400
33
+ }, defaultInertiaOptions);
34
+ var defaultZoomInertiaOptions = (0, _merge.default)({
35
+ deceleration: 20,
36
+ maxSpeed: 1400
37
+ }, defaultInertiaOptions);
38
+ var defaultBearingInertiaOptions = (0, _merge.default)({
39
+ deceleration: 1000,
40
+ maxSpeed: 360
41
+ }, defaultInertiaOptions);
42
+ var defaultPitchInertiaOptions = (0, _merge.default)({
43
+ deceleration: 1000,
44
+ maxSpeed: 90
45
+ }, defaultInertiaOptions);
46
+
47
+ var HandlerInertia = /*#__PURE__*/function () {
48
+ function HandlerInertia(map) {
49
+ (0, _classCallCheck2.default)(this, HandlerInertia);
50
+ this.map = map;
51
+ this.clear();
52
+ }
53
+
54
+ (0, _createClass2.default)(HandlerInertia, [{
55
+ key: "clear",
56
+ value: function clear() {
57
+ this.inertiaBuffer = [];
58
+ }
59
+ }, {
60
+ key: "record",
61
+ value: function record(settings) {
62
+ this.drainInertiaBuffer();
63
+ this.inertiaBuffer.push({
64
+ time: (0, _util.now)(),
65
+ settings: settings
66
+ });
67
+ }
68
+ }, {
69
+ key: "drainInertiaBuffer",
70
+ value: function drainInertiaBuffer() {
71
+ var inertia = this.inertiaBuffer;
72
+ var nowTime = (0, _util.now)();
73
+ var cutoff = 160; // msec
74
+
75
+ while (inertia.length > 0 && nowTime - inertia[0].time > cutoff) {
76
+ inertia.shift();
77
+ }
78
+ }
79
+ }, {
80
+ key: "onMoveEnd",
81
+ value: function onMoveEnd(panInertiaOptions) {
82
+ this.drainInertiaBuffer();
83
+
84
+ if (this.inertiaBuffer.length < 2) {
85
+ return;
86
+ }
87
+
88
+ var deltas = {
89
+ zoom: 0,
90
+ bearing: 0,
91
+ pitch: 0,
92
+ pan: new _point.default(0, 0),
93
+ pinchAround: undefined,
94
+ around: undefined
95
+ };
96
+
97
+ var _iterator = _createForOfIteratorHelper(this.inertiaBuffer),
98
+ _step;
99
+
100
+ try {
101
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
102
+ var settings = _step.value.settings;
103
+ deltas.zoom += settings.zoomDelta || 0;
104
+ deltas.bearing += settings.bearingDelta || 0;
105
+ deltas.pitch += settings.pitchDelta || 0;
106
+
107
+ if (settings.panDelta) {
108
+ deltas.pan._add(settings.panDelta);
109
+ }
110
+
111
+ if (settings.around) {
112
+ deltas.around = settings.around;
113
+ }
114
+
115
+ if (settings.pinchAround) {
116
+ deltas.pinchAround = settings.pinchAround;
117
+ }
118
+ }
119
+ } catch (err) {
120
+ _iterator.e(err);
121
+ } finally {
122
+ _iterator.f();
123
+ }
124
+
125
+ var lastEntry = this.inertiaBuffer[this.inertiaBuffer.length - 1];
126
+ var duration = lastEntry.time - this.inertiaBuffer[0].time;
127
+ var easeOptions = {};
128
+
129
+ if (deltas.pan.mag()) {
130
+ var result = calculateEasing(deltas.pan.mag(), duration, (0, _merge.default)({}, defaultPanInertiaOptions, panInertiaOptions || {}));
131
+ easeOptions.offset = deltas.pan.mult(result.amount / deltas.pan.mag());
132
+ easeOptions.center = this.map.transform.center;
133
+ extendDuration(easeOptions, result);
134
+ }
135
+
136
+ if (deltas.zoom) {
137
+ var _result = calculateEasing(deltas.zoom, duration, defaultZoomInertiaOptions);
138
+
139
+ easeOptions.zoom = this.map.transform.zoom + _result.amount;
140
+ extendDuration(easeOptions, _result);
141
+ }
142
+
143
+ if (deltas.bearing) {
144
+ var _result2 = calculateEasing(deltas.bearing, duration, defaultBearingInertiaOptions);
145
+
146
+ easeOptions.bearing = this.map.transform.bearing + (0, _util.clamp)(_result2.amount, -179, 179);
147
+ extendDuration(easeOptions, _result2);
148
+ }
149
+
150
+ if (deltas.pitch) {
151
+ var _result3 = calculateEasing(deltas.pitch, duration, defaultPitchInertiaOptions);
152
+
153
+ easeOptions.pitch = this.map.transform.pitch + _result3.amount;
154
+ extendDuration(easeOptions, _result3);
155
+ }
156
+
157
+ if (easeOptions.zoom || easeOptions.bearing) {
158
+ var last = deltas.pinchAround === undefined ? deltas.around : deltas.pinchAround;
159
+ easeOptions.around = last ? this.map.unproject(last) : this.map.getCenter();
160
+ }
161
+
162
+ this.clear();
163
+ return (0, _merge.default)(easeOptions, {
164
+ noMoveStart: true
165
+ });
166
+ }
167
+ }]);
168
+ return HandlerInertia;
169
+ }(); // Unfortunately zoom, bearing, etc can't have different durations and easings so
170
+ // we need to choose one. We use the longest duration and it's corresponding easing.
171
+
172
+
173
+ exports.default = HandlerInertia;
174
+
175
+ function extendDuration(easeOptions, result) {
176
+ if (!easeOptions.duration || easeOptions.duration < result.duration) {
177
+ easeOptions.duration = result.duration;
178
+ easeOptions.easing = result.easing;
179
+ }
180
+ }
181
+
182
+ function calculateEasing(amount, inertiaDuration, inertiaOptions) {
183
+ var maxSpeed = inertiaOptions.maxSpeed,
184
+ linearity = inertiaOptions.linearity,
185
+ deceleration = inertiaOptions.deceleration;
186
+ var speed = (0, _util.clamp)(amount * linearity / (inertiaDuration / 1000), -maxSpeed, maxSpeed);
187
+ var duration = Math.abs(speed) / (deceleration * linearity);
188
+ return {
189
+ easing: inertiaOptions.easing,
190
+ duration: duration * 1000,
191
+ amount: speed * (duration / 2)
192
+ };
193
+ }