@antv/l7-map 2.5.41 → 2.5.46
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.
- package/es/camera.js.map +1 -1
- package/es/earthmap.d.ts +0 -1
- package/es/earthmap.js +0 -26
- package/es/earthmap.js.map +1 -1
- package/es/handler/IHandler.js +1 -1
- package/es/handler/handler_manager.js +53 -33
- package/es/handler/handler_manager.js.map +1 -1
- package/es/handler/shim/drag_pan.js +9 -2
- package/es/handler/shim/drag_pan.js.map +1 -1
- package/es/handler/shim/touch_zoom_rotate.js +9 -2
- package/es/handler/shim/touch_zoom_rotate.js.map +1 -1
- package/es/hash.d.ts +1 -2
- package/es/hash.js +5 -4
- package/es/hash.js.map +1 -1
- package/es/interface.d.ts +1 -0
- package/es/interface.js +1 -1
- package/es/map.d.ts +4 -1
- package/es/map.js +33 -20
- package/es/map.js.map +1 -1
- package/es/util.d.ts +3 -3
- package/es/util.js +6 -5
- package/es/util.js.map +1 -1
- package/es/utils/dom.js +60 -26
- package/es/utils/dom.js.map +1 -1
- package/es/utils/performance.js +2 -1
- package/es/utils/performance.js.map +1 -1
- package/lib/camera.js.map +1 -1
- package/lib/earthmap.js +0 -26
- package/lib/earthmap.js.map +1 -1
- package/lib/geo/lng_lat.js +1 -1
- package/lib/geo/mercator.js +11 -7
- package/lib/geo/mercator.js.map +1 -1
- package/lib/geo/simple.js +11 -7
- package/lib/geo/simple.js.map +1 -1
- package/lib/geo/transform.js +6 -2
- package/lib/geo/transform.js.map +1 -1
- package/lib/handler/handler_manager.js +55 -33
- package/lib/handler/handler_manager.js.map +1 -1
- package/lib/handler/mouse/index.js +4 -4
- package/lib/handler/mouse/util.js +1 -1
- package/lib/handler/shim/drag_pan.js +10 -2
- package/lib/handler/shim/drag_pan.js.map +1 -1
- package/lib/handler/shim/touch_zoom_rotate.js +10 -2
- package/lib/handler/shim/touch_zoom_rotate.js.map +1 -1
- package/lib/handler/tap/single_tap_recognizer.js +1 -1
- package/lib/handler/tap/tap_recognizer.js +6 -2
- package/lib/handler/tap/tap_recognizer.js.map +1 -1
- package/lib/hash.js +9 -4
- package/lib/hash.js.map +1 -1
- package/lib/map.js +32 -19
- package/lib/map.js.map +1 -1
- package/lib/util.js +14 -9
- package/lib/util.js.map +1 -1
- package/lib/utils/dom.js +66 -26
- package/lib/utils/dom.js.map +1 -1
- package/lib/utils/performance.js +4 -1
- package/lib/utils/performance.js.map +1 -1
- package/package.json +3 -3
package/lib/utils/dom.js
CHANGED
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
+
var _l7Utils = require("@antv/l7-utils");
|
|
11
|
+
|
|
10
12
|
var _point = _interopRequireDefault(require("../geo/point"));
|
|
11
13
|
|
|
12
14
|
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; } } }; }
|
|
@@ -20,7 +22,7 @@ var _default = DOM;
|
|
|
20
22
|
exports.default = _default;
|
|
21
23
|
|
|
22
24
|
DOM.create = function (tagName, className, container) {
|
|
23
|
-
var el = window.document.createElement(tagName);
|
|
25
|
+
var el = _l7Utils.$window.document.createElement(tagName);
|
|
24
26
|
|
|
25
27
|
if (className !== undefined) {
|
|
26
28
|
el.className = className;
|
|
@@ -34,11 +36,12 @@ DOM.create = function (tagName, className, container) {
|
|
|
34
36
|
};
|
|
35
37
|
|
|
36
38
|
DOM.createNS = function (namespaceURI, tagName) {
|
|
37
|
-
var el = window.document.createElementNS(namespaceURI, tagName);
|
|
39
|
+
var el = _l7Utils.$window.document.createElementNS(namespaceURI, tagName);
|
|
40
|
+
|
|
38
41
|
return el;
|
|
39
42
|
};
|
|
40
43
|
|
|
41
|
-
var docStyle = window.document && window.document.documentElement.style;
|
|
44
|
+
var docStyle = _l7Utils.$window.document && _l7Utils.$window.document.documentElement.style;
|
|
42
45
|
|
|
43
46
|
function testProp(props) {
|
|
44
47
|
if (!docStyle) {
|
|
@@ -95,8 +98,10 @@ try {
|
|
|
95
98
|
passiveSupported = true;
|
|
96
99
|
}
|
|
97
100
|
});
|
|
98
|
-
|
|
99
|
-
window.
|
|
101
|
+
|
|
102
|
+
_l7Utils.$window.addEventListener('test', options, options);
|
|
103
|
+
|
|
104
|
+
_l7Utils.$window.removeEventListener('test', options, options);
|
|
100
105
|
} catch (err) {
|
|
101
106
|
passiveSupported = false;
|
|
102
107
|
}
|
|
@@ -124,44 +129,79 @@ DOM.removeEventListener = function (target, type, callback) {
|
|
|
124
129
|
var suppressClick = function suppressClick(e) {
|
|
125
130
|
e.preventDefault();
|
|
126
131
|
e.stopPropagation();
|
|
127
|
-
|
|
132
|
+
|
|
133
|
+
_l7Utils.$window.removeEventListener('click', suppressClick, true);
|
|
128
134
|
};
|
|
129
135
|
|
|
130
136
|
DOM.suppressClick = function () {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
137
|
+
if (_l7Utils.isMini) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
_l7Utils.$window.addEventListener('click', suppressClick, true);
|
|
142
|
+
|
|
143
|
+
setTimeout(function () {
|
|
144
|
+
_l7Utils.$window.removeEventListener('click', suppressClick, true);
|
|
134
145
|
}, 0);
|
|
135
146
|
};
|
|
136
147
|
|
|
137
148
|
DOM.mousePos = function (el, e) {
|
|
138
|
-
|
|
139
|
-
|
|
149
|
+
if (!_l7Utils.isMini) {
|
|
150
|
+
var rect = el.getBoundingClientRect();
|
|
151
|
+
return new _point.default(e.clientX - rect.left - el.clientLeft, e.clientY - rect.top - el.clientTop);
|
|
152
|
+
} else {
|
|
153
|
+
return new _point.default(e.clientX - el.left - 0, e.clientY - el.top - 0);
|
|
154
|
+
}
|
|
140
155
|
};
|
|
141
156
|
|
|
142
157
|
DOM.touchPos = function (el, touches) {
|
|
143
|
-
|
|
144
|
-
|
|
158
|
+
if (!_l7Utils.isMini) {
|
|
159
|
+
var rect = el.getBoundingClientRect();
|
|
160
|
+
var points = [];
|
|
145
161
|
|
|
146
|
-
|
|
147
|
-
|
|
162
|
+
var _iterator2 = _createForOfIteratorHelper(touches),
|
|
163
|
+
_step2;
|
|
148
164
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
165
|
+
try {
|
|
166
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
167
|
+
var touche = _step2.value;
|
|
168
|
+
points.push(new _point.default(touche.clientX - rect.left - el.clientLeft, touche.clientY - rect.top - el.clientTop));
|
|
169
|
+
}
|
|
170
|
+
} catch (err) {
|
|
171
|
+
_iterator2.e(err);
|
|
172
|
+
} finally {
|
|
173
|
+
_iterator2.f();
|
|
153
174
|
}
|
|
154
|
-
} catch (err) {
|
|
155
|
-
_iterator2.e(err);
|
|
156
|
-
} finally {
|
|
157
|
-
_iterator2.f();
|
|
158
|
-
}
|
|
159
175
|
|
|
160
|
-
|
|
176
|
+
return points;
|
|
177
|
+
} else {
|
|
178
|
+
var _points = [];
|
|
179
|
+
|
|
180
|
+
var _iterator3 = _createForOfIteratorHelper(touches),
|
|
181
|
+
_step3;
|
|
182
|
+
|
|
183
|
+
try {
|
|
184
|
+
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
185
|
+
var _touche = _step3.value;
|
|
186
|
+
|
|
187
|
+
_points.push(new _point.default(_touche.clientX - el.left, _touche.clientY - el.top));
|
|
188
|
+
}
|
|
189
|
+
} catch (err) {
|
|
190
|
+
_iterator3.e(err);
|
|
191
|
+
} finally {
|
|
192
|
+
_iterator3.f();
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
return _points;
|
|
196
|
+
}
|
|
161
197
|
};
|
|
162
198
|
|
|
163
199
|
DOM.mouseButton = function (e) {
|
|
164
|
-
if (
|
|
200
|
+
if (!_l7Utils.isMini) {
|
|
201
|
+
return e.button;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
if (typeof _l7Utils.$window.InstallTrigger !== 'undefined' && e.button === 2 && e.ctrlKey && _l7Utils.$window.navigator.platform.toUpperCase().indexOf('MAC') >= 0) {
|
|
165
205
|
return 0;
|
|
166
206
|
}
|
|
167
207
|
|
package/lib/utils/dom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/dom.ts"],"names":["DOM","create","tagName","className","container","el","window","document","createElement","undefined","appendChild","createNS","namespaceURI","createElementNS","docStyle","documentElement","style","testProp","props","i","selectProp","userSelect","disableDrag","enableDrag","transformProp","setTransform","value","passiveSupported","options","Object","defineProperty","get","addEventListener","removeEventListener","err","target","type","callback","capture","suppressClick","e","preventDefault","stopPropagation","setTimeout","mousePos","rect","getBoundingClientRect","Point","clientX","left","clientLeft","clientY","top","clientTop","touchPos","touches","points","touche","push","mouseButton","InstallTrigger","button","ctrlKey","navigator","platform","toUpperCase","indexOf","remove","node","parentNode","removeChild"],"mappings":"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","sourcesContent":["// @ts-ignore\nimport Point from '../geo/point';\n\nconst DOM: {\n [key: string]: (...arg: any[]) => any;\n} = {};\nexport default DOM;\n\nDOM.create = (tagName: string, className?: string, container?: HTMLElement) => {\n const el = window.document.createElement(tagName);\n if (className !== undefined) {\n el.className = className;\n }\n if (container) {\n container.appendChild(el);\n }\n return el;\n};\n\nDOM.createNS = (namespaceURI: string, tagName: string) => {\n const el = window.document.createElementNS(namespaceURI, tagName);\n return el;\n};\n\nconst docStyle = window.document && window.document.documentElement.style;\n\nfunction testProp(props: any) {\n if (!docStyle) {\n return props[0];\n }\n for (const i of props) {\n if (i in docStyle) {\n return i;\n }\n }\n return props[0];\n}\n\nconst selectProp = testProp([\n 'userSelect',\n 'MozUserSelect',\n 'WebkitUserSelect',\n 'msUserSelect',\n]);\nlet userSelect: any;\n\nDOM.disableDrag = () => {\n if (docStyle && selectProp) {\n userSelect = docStyle[selectProp];\n docStyle[selectProp] = 'none';\n }\n};\n\nDOM.enableDrag = () => {\n if (docStyle && selectProp) {\n docStyle[selectProp] = userSelect;\n }\n};\n\nconst transformProp = testProp(['transform', 'WebkitTransform']);\n\nDOM.setTransform = (el: HTMLElement, value: string) => {\n // https://github.com/facebook/flow/issues/7754\n // $FlowFixMe\n el.style[transformProp] = value;\n};\n\n// Feature detection for {passive: false} support in add/removeEventListener.\nlet passiveSupported = false;\n\ntry {\n // https://github.com/facebook/flow/issues/285\n // $FlowFixMe\n const options = Object.defineProperty({}, 'passive', {\n get() {\n // eslint-disable-line\n passiveSupported = true;\n },\n });\n // @ts-ignore\n window.addEventListener('test', options, options);\n // @ts-ignore\n window.removeEventListener('test', options, options);\n} catch (err) {\n passiveSupported = false;\n}\n\nDOM.addEventListener = (\n target: any,\n type: any,\n callback: any,\n options: { passive?: boolean; capture?: boolean } = {},\n) => {\n if ('passive' in options && passiveSupported) {\n target.addEventListener(type, callback, options);\n } else {\n target.addEventListener(type, callback, options.capture);\n }\n};\n\nDOM.removeEventListener = (\n target: any,\n type: any,\n callback: any,\n options: { passive?: boolean; capture?: boolean } = {},\n) => {\n if ('passive' in options && passiveSupported) {\n target.removeEventListener(type, callback, options);\n } else {\n target.removeEventListener(type, callback, options.capture);\n }\n};\n\n// Suppress the next click, but only if it's immediate.\nconst suppressClick = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n window.removeEventListener('click', suppressClick, true);\n};\n\nDOM.suppressClick = () => {\n window.addEventListener('click', suppressClick, true);\n window.setTimeout(() => {\n window.removeEventListener('click', suppressClick, true);\n }, 0);\n};\n\nDOM.mousePos = (el: HTMLElement, e: MouseEvent | Touch) => {\n const rect = el.getBoundingClientRect();\n return new Point(\n e.clientX - rect.left - el.clientLeft,\n e.clientY - rect.top - el.clientTop,\n );\n};\n\nDOM.touchPos = (el: HTMLElement, touches: Touch[]) => {\n const rect = el.getBoundingClientRect();\n const points = [];\n for (const touche of touches) {\n points.push(\n new Point(\n touche.clientX - rect.left - el.clientLeft,\n touche.clientY - rect.top - el.clientTop,\n ),\n );\n }\n return points;\n};\n\nDOM.mouseButton = (e: MouseEvent) => {\n if (\n // @ts-ignore\n typeof window.InstallTrigger !== 'undefined' &&\n e.button === 2 &&\n e.ctrlKey &&\n window.navigator.platform.toUpperCase().indexOf('MAC') >= 0\n ) {\n // Fix for https://github.com/mapbox/mapbox-gl-js/issues/3131:\n // Firefox (detected by InstallTrigger) on Mac determines e.button = 2 when\n // using Control + left click\n return 0;\n }\n return e.button;\n};\n\nDOM.remove = (node: HTMLElement) => {\n if (node.parentNode) {\n node.parentNode.removeChild(node);\n }\n};\n"],"file":"dom.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/utils/dom.ts"],"names":["DOM","create","tagName","className","container","el","$window","document","createElement","undefined","appendChild","createNS","namespaceURI","createElementNS","docStyle","documentElement","style","testProp","props","i","selectProp","userSelect","disableDrag","enableDrag","transformProp","setTransform","value","passiveSupported","options","Object","defineProperty","get","addEventListener","removeEventListener","err","target","type","callback","capture","suppressClick","e","preventDefault","stopPropagation","isMini","setTimeout","mousePos","rect","getBoundingClientRect","Point","clientX","left","clientLeft","clientY","top","clientTop","touchPos","touches","points","touche","push","mouseButton","button","InstallTrigger","ctrlKey","navigator","platform","toUpperCase","indexOf","remove","node","parentNode","removeChild"],"mappings":"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","sourcesContent":["import { $window, isMini } from '@antv/l7-utils';\n// @ts-ignore\nimport Point from '../geo/point';\n\nconst DOM: {\n [key: string]: (...arg: any[]) => any;\n} = {};\nexport default DOM;\n\nDOM.create = (tagName: string, className?: string, container?: HTMLElement) => {\n const el = $window.document.createElement(tagName) as HTMLElement;\n if (className !== undefined) {\n el.className = className;\n }\n if (container) {\n container.appendChild(el);\n }\n return el;\n};\n\nDOM.createNS = (namespaceURI: string, tagName: string) => {\n const el = $window.document.createElementNS(\n namespaceURI,\n tagName,\n ) as HTMLElement;\n return el;\n};\n\nconst docStyle = $window.document && $window.document.documentElement.style;\n\nfunction testProp(props: any) {\n if (!docStyle) {\n return props[0];\n }\n for (const i of props) {\n if (i in docStyle) {\n return i;\n }\n }\n return props[0];\n}\n\nconst selectProp = testProp([\n 'userSelect',\n 'MozUserSelect',\n 'WebkitUserSelect',\n 'msUserSelect',\n]);\nlet userSelect: any;\n\nDOM.disableDrag = () => {\n if (docStyle && selectProp) {\n userSelect = docStyle[selectProp];\n docStyle[selectProp] = 'none';\n }\n};\n\nDOM.enableDrag = () => {\n if (docStyle && selectProp) {\n docStyle[selectProp] = userSelect;\n }\n};\n\nconst transformProp = testProp(['transform', 'WebkitTransform']);\n\nDOM.setTransform = (el: HTMLElement, value: string) => {\n // https://github.com/facebook/flow/issues/7754\n // $FlowFixMe\n el.style[transformProp] = value;\n};\n\n// Feature detection for {passive: false} support in add/removeEventListener.\nlet passiveSupported = false;\n\ntry {\n // https://github.com/facebook/flow/issues/285\n // $FlowFixMe\n const options = Object.defineProperty({}, 'passive', {\n get() {\n // eslint-disable-line\n passiveSupported = true;\n },\n });\n // @ts-ignore\n $window.addEventListener('test', options, options);\n // @ts-ignore\n $window.removeEventListener('test', options, options);\n} catch (err) {\n passiveSupported = false;\n}\n\nDOM.addEventListener = (\n target: any,\n type: any,\n callback: any,\n options: { passive?: boolean; capture?: boolean } = {},\n) => {\n if ('passive' in options && passiveSupported) {\n target.addEventListener(type, callback, options);\n } else {\n target.addEventListener(type, callback, options.capture);\n }\n};\n\nDOM.removeEventListener = (\n target: any,\n type: any,\n callback: any,\n options: { passive?: boolean; capture?: boolean } = {},\n) => {\n if ('passive' in options && passiveSupported) {\n target.removeEventListener(type, callback, options);\n } else {\n target.removeEventListener(type, callback, options.capture);\n }\n};\n\n// Suppress the next click, but only if it's immediate.\nconst suppressClick = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n $window.removeEventListener('click', suppressClick, true);\n};\n\nDOM.suppressClick = () => {\n if (isMini) {\n return;\n }\n $window.addEventListener('click', suppressClick, true);\n setTimeout(() => {\n $window.removeEventListener('click', suppressClick, true);\n }, 0);\n};\n\nDOM.mousePos = (el: HTMLElement, e: MouseEvent | Touch) => {\n // 暂时从 el 上获取 top/left, 后面需要动态获取\n if (!isMini) {\n const rect = el.getBoundingClientRect();\n return new Point(\n e.clientX - rect.left - el.clientLeft,\n e.clientY - rect.top - el.clientTop,\n );\n } else {\n return new Point(\n // @ts-ignore\n e.clientX - el.left - 0,\n // @ts-ignore\n e.clientY - el.top - 0,\n );\n }\n};\n\nDOM.touchPos = (el: HTMLElement, touches: Touch[]) => {\n // 暂时从 el 上获取 top/left, 后面需要动态获取\n if (!isMini) {\n const rect = el.getBoundingClientRect();\n const points = [];\n for (const touche of touches) {\n points.push(\n new Point(\n touche.clientX - rect.left - el.clientLeft,\n touche.clientY - rect.top - el.clientTop,\n ),\n );\n }\n return points;\n } else {\n const points = [];\n for (const touche of touches) {\n points.push(\n new Point(\n // @ts-ignore\n touche.clientX - el.left,\n // @ts-ignore\n touche.clientY - el.top,\n ),\n );\n }\n return points;\n }\n};\n\nDOM.mouseButton = (e: MouseEvent) => {\n if (!isMini) {\n return e.button;\n }\n if (\n // @ts-ignore\n typeof $window.InstallTrigger !== 'undefined' &&\n e.button === 2 &&\n e.ctrlKey &&\n $window.navigator.platform.toUpperCase().indexOf('MAC') >= 0\n ) {\n // Fix for https://github.com/mapbox/mapbox-gl-js/issues/3131:\n // Firefox (detected by InstallTrigger) on Mac determines e.button = 2 when\n // using Control + left click\n return 0;\n }\n return e.button;\n};\n\nDOM.remove = (node: HTMLElement) => {\n if (node.parentNode) {\n node.parentNode.removeChild(node);\n }\n};\n"],"file":"dom.js"}
|
package/lib/utils/performance.js
CHANGED
|
@@ -4,11 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.PerformanceUtils = exports.PerformanceMarkers = void 0;
|
|
7
|
+
|
|
8
|
+
var _l7Utils = require("@antv/l7-utils");
|
|
9
|
+
|
|
7
10
|
var lastFrameTime = null;
|
|
8
11
|
var frameTimes = [];
|
|
9
12
|
var minFramerateTarget = 30;
|
|
10
13
|
var frameTimeTarget = 1000 / minFramerateTarget;
|
|
11
|
-
var performance = window.performance;
|
|
14
|
+
var performance = _l7Utils.$window.performance;
|
|
12
15
|
var PerformanceMarkers = {
|
|
13
16
|
create: 'create',
|
|
14
17
|
load: 'load',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/performance.ts"],"names":["lastFrameTime","frameTimes","minFramerateTarget","frameTimeTarget","performance","window","PerformanceMarkers","create","load","fullLoad","PerformanceUtils","mark","marker","frame","timestamp","currTimestamp","frameTime","push","clearMetrics","clearMeasures","clearMarks","getPerformanceMetrics","loadTime","measure","duration","fullLoadTime","totalFrames","length","avgFrameTime","reduce","prev","curr","fps","droppedFrames","filter","acc","percentDroppedFrames"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/utils/performance.ts"],"names":["lastFrameTime","frameTimes","minFramerateTarget","frameTimeTarget","performance","$window","PerformanceMarkers","create","load","fullLoad","PerformanceUtils","mark","marker","frame","timestamp","currTimestamp","frameTime","push","clearMetrics","clearMeasures","clearMarks","getPerformanceMetrics","loadTime","measure","duration","fullLoadTime","totalFrames","length","avgFrameTime","reduce","prev","curr","fps","droppedFrames","filter","acc","percentDroppedFrames"],"mappings":";;;;;;;AAAA;;AACA,IAAIA,aAA4B,GAAG,IAAnC;AACA,IAAIC,UAAoB,GAAG,EAA3B;AAEA,IAAMC,kBAAkB,GAAG,EAA3B;AACA,IAAMC,eAAe,GAAG,OAAOD,kBAA/B;AACA,IAAME,WAAW,GAAGC,iBAAQD,WAA5B;AASO,IAAME,kBAAkB,GAAG;AAChCC,EAAAA,MAAM,EAAE,QADwB;AAEhCC,EAAAA,IAAI,EAAE,MAF0B;AAGhCC,EAAAA,QAAQ,EAAE;AAHsB,CAA3B;;AAMA,IAAMC,gBAAgB,GAAG;AAC9BC,EAAAA,IAD8B,gBACzBC,MADyB,EACT;AACnBR,IAAAA,WAAW,CAACO,IAAZ,CAAiBC,MAAjB;AACD,GAH6B;AAI9BC,EAAAA,KAJ8B,iBAIxBC,SAJwB,EAIL;AACvB,QAAMC,aAAa,GAAGD,SAAtB;;AACA,QAAId,aAAa,IAAI,IAArB,EAA2B;AACzB,UAAMgB,SAAS,GAAGD,aAAa,GAAGf,aAAlC;AACAC,MAAAA,UAAU,CAACgB,IAAX,CAAgBD,SAAhB;AACD;;AACDhB,IAAAA,aAAa,GAAGe,aAAhB;AACD,GAX6B;AAY9BG,EAAAA,YAZ8B,0BAYf;AACblB,IAAAA,aAAa,GAAG,IAAhB;AACAC,IAAAA,UAAU,GAAG,EAAb;AACAG,IAAAA,WAAW,CAACe,aAAZ,CAA0B,UAA1B;AACAf,IAAAA,WAAW,CAACe,aAAZ,CAA0B,cAA1B;;AAGA,SAAK,IAAMP,MAAX,IAAqBN,kBAArB,EAAyC;AAEvCF,MAAAA,WAAW,CAACgB,UAAZ,CAAuBd,kBAAkB,CAACM,MAAD,CAAzC;AACD;AACF,GAvB6B;AAwB9BS,EAAAA,qBAxB8B,mCAwBe;AAC3C,QAAMC,QAAQ,GAAGlB,WAAW,CAACmB,OAAZ,CACf,UADe,EAEfjB,kBAAkB,CAACC,MAFJ,EAGfD,kBAAkB,CAACE,IAHJ,EAKfgB,QALF;AAOA,QAAMC,YAAY,GAAGrB,WAAW,CAACmB,OAAZ,CACnB,cADmB,EAEnBjB,kBAAkB,CAACC,MAFA,EAGnBD,kBAAkB,CAACG,QAHA,EAKnBe,QALF;AAMA,QAAME,WAAW,GAAGzB,UAAU,CAAC0B,MAA/B;AAEA,QAAMC,YAAY,GAChB3B,UAAU,CAAC4B,MAAX,CAAkB,UAACC,IAAD,EAAOC,IAAP;AAAA,aAAgBD,IAAI,GAAGC,IAAvB;AAAA,KAAlB,EAA+C,CAA/C,IAAoDL,WAApD,GAAkE,IADpE;AAEA,QAAMM,GAAG,GAAG,IAAIJ,YAAhB;AAGA,QAAMK,aAAa,GAAGhC,UAAU,CAC7BiC,MADmB,CACZ,UAAClB,SAAD;AAAA,aAAeA,SAAS,GAAGb,eAA3B;AAAA,KADY,EAEnB0B,MAFmB,CAEZ,UAACM,GAAD,EAAMJ,IAAN,EAAe;AACrB,aAAOI,GAAG,GAAG,CAACJ,IAAI,GAAG5B,eAAR,IAA2BA,eAAxC;AACD,KAJmB,EAIjB,CAJiB,CAAtB;AAKA,QAAMiC,oBAAoB,GACvBH,aAAa,IAAIP,WAAW,GAAGO,aAAlB,CAAd,GAAkD,GADpD;AAGA,WAAO;AACLX,MAAAA,QAAQ,EAARA,QADK;AAELG,MAAAA,YAAY,EAAZA,YAFK;AAGLO,MAAAA,GAAG,EAAHA,GAHK;AAILI,MAAAA,oBAAoB,EAApBA;AAJK,KAAP;AAMD;AA3D6B,CAAzB","sourcesContent":["import { $window } from '@antv/l7-utils';\nlet lastFrameTime: number | null = null;\nlet frameTimes: number[] = [];\n\nconst minFramerateTarget = 30;\nconst frameTimeTarget = 1000 / minFramerateTarget;\nconst performance = $window.performance;\n\nexport interface IPerformanceMetrics {\n loadTime: number;\n fullLoadTime: number;\n fps: number;\n percentDroppedFrames: number;\n}\n\nexport const PerformanceMarkers = {\n create: 'create',\n load: 'load',\n fullLoad: 'fullLoad',\n};\n\nexport const PerformanceUtils = {\n mark(marker: string) {\n performance.mark(marker);\n },\n frame(timestamp: number) {\n const currTimestamp = timestamp;\n if (lastFrameTime != null) {\n const frameTime = currTimestamp - lastFrameTime;\n frameTimes.push(frameTime);\n }\n lastFrameTime = currTimestamp;\n },\n clearMetrics() {\n lastFrameTime = null;\n frameTimes = [];\n performance.clearMeasures('loadTime');\n performance.clearMeasures('fullLoadTime');\n // @ts-ignore\n // tslint:disable-next-line:forin\n for (const marker in PerformanceMarkers) {\n // @ts-ignore\n performance.clearMarks(PerformanceMarkers[marker]);\n }\n },\n getPerformanceMetrics(): IPerformanceMetrics {\n const loadTime = performance.measure(\n 'loadTime',\n PerformanceMarkers.create,\n PerformanceMarkers.load,\n // @ts-ignore\n ).duration;\n\n const fullLoadTime = performance.measure(\n 'fullLoadTime',\n PerformanceMarkers.create,\n PerformanceMarkers.fullLoad,\n // @ts-ignore\n ).duration;\n const totalFrames = frameTimes.length;\n\n const avgFrameTime =\n frameTimes.reduce((prev, curr) => prev + curr, 0) / totalFrames / 1000;\n const fps = 1 / avgFrameTime;\n\n // count frames that missed our framerate target\n const droppedFrames = frameTimes\n .filter((frameTime) => frameTime > frameTimeTarget)\n .reduce((acc, curr) => {\n return acc + (curr - frameTimeTarget) / frameTimeTarget;\n }, 0);\n const percentDroppedFrames =\n (droppedFrames / (totalFrames + droppedFrames)) * 100;\n\n return {\n loadTime,\n fullLoadTime,\n fps,\n percentDroppedFrames,\n };\n },\n};\n"],"file":"performance.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@antv/l7-map",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.46",
|
|
4
4
|
"description": "l7 map",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "thinkinggis <lzx199065@gmail.com>",
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
},
|
|
38
38
|
"homepage": "https://github.com/antvis/L7#readme",
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@antv/l7-utils": "^2.5.
|
|
40
|
+
"@antv/l7-utils": "^2.5.46",
|
|
41
41
|
"@babel/runtime": "^7.7.7",
|
|
42
42
|
"@mapbox/point-geometry": "^0.1.0",
|
|
43
43
|
"@mapbox/unitbezier": "^0.0.0",
|
|
44
44
|
"eventemitter3": "^4.0.4",
|
|
45
45
|
"lodash": "^4.17.15"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "069e6a635ba8c56150384e8f8940b31bdd0b9a82"
|
|
48
48
|
}
|