@vtx/ol-map 1.0.154 → 1.0.155

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/lib/dom/index.js CHANGED
@@ -9,7 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
9
9
  var _ahooks = require("ahooks");
10
10
  var _useProps2 = _interopRequireDefault(require("../use-props"));
11
11
  var _Dom = _interopRequireDefault(require("./Dom"));
12
- var _excluded = ["zIndex", "data", "style", "className", "show", "children"];
12
+ var _excluded = ["zIndex", "data", "style", "className", "show", "avoid", "children", "_registerDomLayer"];
13
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -27,12 +27,16 @@ function _default(props) {
27
27
  className = props.className,
28
28
  _props$show = props.show,
29
29
  show = _props$show === void 0 ? true : _props$show,
30
+ _props$avoid = props.avoid,
31
+ avoid = _props$avoid === void 0 ? true : _props$avoid,
30
32
  children = props.children,
33
+ _registerDomLayer = props._registerDomLayer,
31
34
  otherProps = _objectWithoutProperties(props, _excluded);
32
35
  var _useProps = (0, _useProps2["default"])(),
33
36
  map = _useProps.map;
34
37
  var domRef = (0, _react.useRef)();
35
38
  var overlay = (0, _react.useRef)();
39
+ var unregisterRef = (0, _react.useRef)();
36
40
  (0, _react.useEffect)(function () {
37
41
  overlay.current = new _Dom["default"](_objectSpread({
38
42
  element: domRef.current,
@@ -43,9 +47,20 @@ function _default(props) {
43
47
  }, otherProps));
44
48
  overlay.current.element.style.zIndex = zIndex;
45
49
 
50
+ // 如果有DomLayer注册函数,则注册此DOM元素
51
+ if (_registerDomLayer) {
52
+ unregisterRef.current = _registerDomLayer(overlay.current.element, {
53
+ avoid: avoid
54
+ });
55
+ }
56
+
46
57
  // 将Overlay添加到地图上
47
58
  map.addOverlay(overlay.current);
48
59
  return function () {
60
+ // 调用注销函数
61
+ if (unregisterRef.current) {
62
+ unregisterRef.current();
63
+ }
49
64
  map.removeOverlay(overlay.current);
50
65
  };
51
66
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ahooks","_useProps2","_interopRequireDefault","_Dom","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_default","props","zIndex","data","style","className","_props$show","show","children","otherProps","_useProps","useProps","map","domRef","useRef","overlay","useEffect","current","Dom","element","position","positioning","offset","addOverlay","removeOverlay","useUpdateEffect","setPosition","JSON","stringify","createElement","display","ref"],"sources":["dom/index.jsx"],"sourcesContent":["import React, {useRef, useEffect} from 'react';\nimport { useUpdateEffect } from 'ahooks';\nimport useProps from '../use-props';\nimport Dom from './Dom';\n\nexport default function (props) {\n const { zIndex, data, style, className, show = true, children, ...otherProps } = props;\n const { map } = useProps();\n\n const domRef = useRef();\n const overlay = useRef();\n useEffect(() => {\n overlay.current = new Dom({\n element: domRef.current,\n position: data,\n positioning: \"bottom-center\",\n offset: [0, -10],\n zIndex,\n ...otherProps\n });\n overlay.current.element.style.zIndex = zIndex;\n\n // 将Overlay添加到地图上\n map.addOverlay(overlay.current);\n\n return () => {\n map.removeOverlay(overlay.current);\n }\n }, []);\n\n useUpdateEffect(() => {\n overlay.current.setPosition(data)\n }, [JSON.stringify(data)])\n\n useUpdateEffect(() => {\n overlay.current.element.style.zIndex = zIndex;\n }, [zIndex])\n\n return (\n <div style={{display: show ? 'block' : 'none'}}>\n <div ref={domRef} style={{...style}} className={className}>\n {children}\n </div>\n </div>\n\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ahooks","_useProps2","_interopRequireDefault","_Dom","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_default","props","zIndex","data","style","className","_props$show","show","_props$avoid","avoid","children","_registerDomLayer","otherProps","_useProps","useProps","map","domRef","useRef","overlay","unregisterRef","useEffect","current","Dom","element","position","positioning","offset","addOverlay","removeOverlay","useUpdateEffect","setPosition","JSON","stringify","createElement","display","ref"],"sources":["dom/index.jsx"],"sourcesContent":["import React, {useRef, useEffect} from 'react';\nimport { useUpdateEffect } from 'ahooks';\nimport useProps from '../use-props';\nimport Dom from './Dom';\n\nexport default function (props) {\n const { zIndex, data, style, className, show = true, avoid = true, children, _registerDomLayer, ...otherProps } = props;\n const { map } = useProps();\n\n const domRef = useRef();\n const overlay = useRef();\n const unregisterRef = useRef();\n useEffect(() => {\n overlay.current = new Dom({\n element: domRef.current,\n position: data,\n positioning: \"bottom-center\",\n offset: [0, -10],\n zIndex,\n ...otherProps\n });\n overlay.current.element.style.zIndex = zIndex;\n\n // 如果有DomLayer注册函数,则注册此DOM元素\n if (_registerDomLayer) {\n unregisterRef.current = _registerDomLayer(overlay.current.element, { avoid });\n }\n\n // 将Overlay添加到地图上\n map.addOverlay(overlay.current);\n\n return () => {\n // 调用注销函数\n if (unregisterRef.current) {\n unregisterRef.current();\n }\n\n map.removeOverlay(overlay.current);\n }\n }, []);\n\n useUpdateEffect(() => {\n overlay.current.setPosition(data)\n }, [JSON.stringify(data)])\n\n useUpdateEffect(() => {\n overlay.current.element.style.zIndex = zIndex;\n }, [zIndex])\n\n return (\n <div style={{display: show ? 'block' : 'none'}}>\n <div ref={domRef} style={{...style}} className={className}>\n {children}\n </div>\n </div>\n\n )\n}\n"],"mappings":"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"}
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = _default;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _ahooks = require("ahooks");
10
+ var _useProps2 = _interopRequireDefault(require("../use-props"));
11
+ require("./style");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+ 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; } } }; }
16
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
17
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
+ 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); }
19
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
20
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
21
+ 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; }
22
+ function _default(props) {
23
+ var children = props.children,
24
+ _props$show = props.show,
25
+ show = _props$show === void 0 ? true : _props$show,
26
+ _props$avoid = props.avoid,
27
+ avoid = _props$avoid === void 0 ? true : _props$avoid;
28
+ var _useProps = (0, _useProps2["default"])(),
29
+ map = _useProps.map;
30
+ var domRef = (0, _react.useRef)();
31
+ var domElementsRef = (0, _react.useRef)([]);
32
+ var lastExecutionTimeRef = (0, _react.useRef)(0);
33
+
34
+ // 注册DOM元素
35
+ var registerDomElement = (0, _react.useCallback)(function (element) {
36
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
37
+ var _options$avoid = options.avoid,
38
+ avoid = _options$avoid === void 0 ? true : _options$avoid;
39
+ var id = Math.random().toString(36).substr(2, 9); // 简单ID生成
40
+ var elementInfo = {
41
+ id: id,
42
+ element: element,
43
+ avoid: avoid
44
+ };
45
+ domElementsRef.current = [].concat(_toConsumableArray(domElementsRef.current), [elementInfo]);
46
+ return function () {
47
+ domElementsRef.current = domElementsRef.current.filter(function (el) {
48
+ return el.id !== id;
49
+ });
50
+ };
51
+ }, []);
52
+
53
+ // 碰撞检测函数
54
+ var isColliding = function isColliding(rect1, rect2) {
55
+ return !(rect1.right < rect2.left || rect1.left > rect2.right || rect1.bottom < rect2.top || rect1.top > rect2.bottom);
56
+ };
57
+
58
+ // 避让处理函数
59
+ var handleAvoidance = (0, _react.useCallback)(function () {
60
+ // 限制执行频率,至少间隔50ms
61
+ var now = Date.now();
62
+ if (now - lastExecutionTimeRef.current < 50) {
63
+ return;
64
+ }
65
+ lastExecutionTimeRef.current = now;
66
+ if (!avoid) {
67
+ // 如果避免功能关闭,显示所有元素
68
+ domElementsRef.current.forEach(function (_ref) {
69
+ var element = _ref.element;
70
+ if (element) {
71
+ element.style.visibility = 'visible';
72
+ }
73
+ });
74
+ return;
75
+ }
76
+
77
+ // 获取所有DOM元素的位置信息
78
+ var allElements = [];
79
+ domElementsRef.current.forEach(function (_ref2) {
80
+ var id = _ref2.id,
81
+ element = _ref2.element,
82
+ avoid = _ref2.avoid;
83
+ if (element) {
84
+ // 不管当前显示状态如何,都参与计算
85
+ var rect = element.getBoundingClientRect();
86
+ var elementInfo = {
87
+ id: id,
88
+ element: element,
89
+ rect: rect,
90
+ area: rect.width * rect.height,
91
+ avoid: avoid
92
+ };
93
+ allElements.push(elementInfo);
94
+ }
95
+ });
96
+
97
+ // 如果元素数量小于2,不需要避让,确保所有元素都显示
98
+ if (allElements.length < 2) {
99
+ allElements.forEach(function (_ref3) {
100
+ var element = _ref3.element;
101
+ element.style.visibility = 'visible';
102
+ });
103
+ return;
104
+ }
105
+
106
+ // 分离必须显示的元素和可避让的元素
107
+ var unavoidableElements = allElements.filter(function (el) {
108
+ return !el.avoid;
109
+ }); // avoid=false的元素
110
+ var avoidableElements = allElements.filter(function (el) {
111
+ return el.avoid;
112
+ }); // avoid=true的元素
113
+
114
+ // 标记需要隐藏的元素
115
+ var toHide = new Set();
116
+
117
+ // 检查所有元素之间的碰撞
118
+ // 1. 必须显示的元素优先,与所有其他元素比较
119
+ var _iterator = _createForOfIteratorHelper(unavoidableElements),
120
+ _step;
121
+ try {
122
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
123
+ var unavoidable = _step.value;
124
+ // 必须显示的元素与可避让元素碰撞时,隐藏可避让元素
125
+ var _iterator2 = _createForOfIteratorHelper(avoidableElements),
126
+ _step2;
127
+ try {
128
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
129
+ var avoidable = _step2.value;
130
+ if (isColliding(unavoidable.rect, avoidable.rect)) {
131
+ toHide.add(avoidable.id);
132
+ }
133
+ }
134
+ } catch (err) {
135
+ _iterator2.e(err);
136
+ } finally {
137
+ _iterator2.f();
138
+ }
139
+ }
140
+
141
+ // 2. 可避让元素之间按面积排序,面积大的优先显示
142
+ } catch (err) {
143
+ _iterator.e(err);
144
+ } finally {
145
+ _iterator.f();
146
+ }
147
+ avoidableElements.sort(function (a, b) {
148
+ return b.area - a.area;
149
+ });
150
+
151
+ // 3. 检查所有可避让元素之间的碰撞关系
152
+ for (var i = 0; i < avoidableElements.length; i++) {
153
+ // 如果当前元素已经被标记为隐藏,则跳过
154
+ if (toHide.has(avoidableElements[i].id)) continue;
155
+
156
+ // 检查与所有后续元素的碰撞
157
+ for (var j = i + 1; j < avoidableElements.length; j++) {
158
+ // 如果比较的元素已经被标记为隐藏,则跳过
159
+ if (toHide.has(avoidableElements[j].id)) continue;
160
+ if (isColliding(avoidableElements[i].rect, avoidableElements[j].rect)) {
161
+ // 隐藏面积较小的元素(即j位置的元素)
162
+ toHide.add(avoidableElements[j].id);
163
+ }
164
+ }
165
+ }
166
+
167
+ // 应用显示/隐藏
168
+ allElements.forEach(function (_ref4) {
169
+ var id = _ref4.id,
170
+ element = _ref4.element,
171
+ elementAvoid = _ref4.avoid;
172
+ if (!elementAvoid) {
173
+ // avoid=false的元素始终显示
174
+ element.style.visibility = 'visible';
175
+ } else {
176
+ // avoid=true的元素根据碰撞检测结果决定显示或隐藏
177
+ element.style.visibility = toHide.has(id) ? 'hidden' : 'visible';
178
+ }
179
+ });
180
+ }, [avoid]);
181
+
182
+ // 控制显示/隐藏
183
+ (0, _ahooks.useUpdateEffect)(function () {
184
+ if (domRef.current) {
185
+ domRef.current.style.visibility = show ? 'visible' : 'hidden';
186
+ }
187
+
188
+ // 当显示状态改变时重新计算避让
189
+ if (show && avoid) {
190
+ setTimeout(handleAvoidance, 10);
191
+ }
192
+ }, [show, avoid]);
193
+
194
+ // 监听地图事件
195
+ (0, _react.useEffect)(function () {
196
+ if (!map) return;
197
+ var avoidanceTimer = null;
198
+
199
+ // 处理地图变化
200
+ var handleMapChange = function handleMapChange() {
201
+ // 清除之前的定时器
202
+ if (avoidanceTimer) {
203
+ clearTimeout(avoidanceTimer);
204
+ }
205
+
206
+ // 延迟执行避让处理,确保DOM已经更新位置
207
+ avoidanceTimer = setTimeout(function () {
208
+ if (avoid) {
209
+ handleAvoidance();
210
+ }
211
+ }, 100);
212
+ };
213
+
214
+ // 监听地图移动事件
215
+ map.getView().on('change:resolution', handleMapChange);
216
+
217
+ // 初始计算一次
218
+ setTimeout(function () {
219
+ if (avoid) {
220
+ handleAvoidance();
221
+ }
222
+ }, 200);
223
+ return function () {
224
+ if (map) {
225
+ map.getView().un('change:resolution', handleMapChange);
226
+ }
227
+ if (avoidanceTimer) {
228
+ clearTimeout(avoidanceTimer);
229
+ }
230
+ };
231
+ }, [handleAvoidance, avoid]);
232
+
233
+ // 向子组件传递上下文
234
+ var childrenWithProps = _react["default"].Children.map(children, function (child) {
235
+ if ( /*#__PURE__*/_react["default"].isValidElement(child)) {
236
+ return /*#__PURE__*/_react["default"].cloneElement(child, {
237
+ _registerDomLayer: registerDomElement
238
+ });
239
+ }
240
+ return child;
241
+ });
242
+ return /*#__PURE__*/_react["default"].createElement("div", {
243
+ className: "ol-map-dom-layer",
244
+ ref: domRef,
245
+ style: {
246
+ display: show ? 'block' : 'none'
247
+ }
248
+ }, childrenWithProps);
249
+ }
250
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ahooks","_useProps2","_interopRequireDefault","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","step","next","_e2","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","_default","props","children","_props$show","show","_props$avoid","avoid","_useProps","useProps","map","domRef","useRef","domElementsRef","lastExecutionTimeRef","registerDomElement","useCallback","element","options","arguments","undefined","_options$avoid","id","Math","random","substr","elementInfo","current","concat","filter","el","isColliding","rect1","rect2","right","left","bottom","top","handleAvoidance","now","Date","forEach","_ref","style","visibility","allElements","_ref2","rect","getBoundingClientRect","area","width","height","push","_ref3","unavoidableElements","avoidableElements","toHide","Set","_iterator","_step","unavoidable","_iterator2","_step2","avoidable","add","sort","a","b","j","_ref4","elementAvoid","useUpdateEffect","setTimeout","useEffect","avoidanceTimer","handleMapChange","clearTimeout","getView","on","un","childrenWithProps","React","Children","child","isValidElement","cloneElement","_registerDomLayer","createElement","className","ref","display"],"sources":["dom-layer/index.jsx"],"sourcesContent":["import React, { useRef, useEffect, useState, useCallback } from 'react';\nimport { useUpdateEffect } from 'ahooks';\nimport useProps from '../use-props';\nimport './style';\n\nexport default function (props) {\n const { children, show = true, avoid = true } = props;\n const { map } = useProps();\n const domRef = useRef();\n const domElementsRef = useRef([]);\n const lastExecutionTimeRef = useRef(0);\n\n // 注册DOM元素\n const registerDomElement = useCallback((element, options = {}) => {\n const { avoid = true } = options;\n const id = Math.random().toString(36).substr(2, 9); // 简单ID生成\n const elementInfo = { id, element, avoid };\n\n domElementsRef.current = [...domElementsRef.current, elementInfo];\n\n return () => {\n domElementsRef.current = domElementsRef.current.filter(el => el.id !== id);\n };\n }, []);\n\n // 碰撞检测函数\n const isColliding = (rect1, rect2) => {\n return !(rect1.right < rect2.left ||\n rect1.left > rect2.right ||\n rect1.bottom < rect2.top ||\n rect1.top > rect2.bottom);\n };\n\n // 避让处理函数\n const handleAvoidance = useCallback(() => {\n // 限制执行频率,至少间隔50ms\n const now = Date.now();\n if (now - lastExecutionTimeRef.current < 50) {\n return;\n }\n lastExecutionTimeRef.current = now;\n\n if (!avoid) {\n // 如果避免功能关闭,显示所有元素\n domElementsRef.current.forEach(({ element }) => {\n if (element) {\n element.style.visibility = 'visible';\n }\n });\n return;\n }\n\n // 获取所有DOM元素的位置信息\n const allElements = [];\n\n domElementsRef.current.forEach(({ id, element, avoid }) => {\n if (element) { // 不管当前显示状态如何,都参与计算\n const rect = element.getBoundingClientRect();\n\n const elementInfo = {\n id,\n element: element,\n rect: rect,\n area: rect.width * rect.height,\n avoid: avoid\n };\n\n allElements.push(elementInfo);\n }\n });\n\n // 如果元素数量小于2,不需要避让,确保所有元素都显示\n if (allElements.length < 2) {\n allElements.forEach(({ element }) => {\n element.style.visibility = 'visible';\n });\n return;\n }\n\n // 分离必须显示的元素和可避让的元素\n const unavoidableElements = allElements.filter(el => !el.avoid); // avoid=false的元素\n const avoidableElements = allElements.filter(el => el.avoid); // avoid=true的元素\n\n // 标记需要隐藏的元素\n const toHide = new Set();\n\n // 检查所有元素之间的碰撞\n // 1. 必须显示的元素优先,与所有其他元素比较\n for (const unavoidable of unavoidableElements) {\n // 必须显示的元素与可避让元素碰撞时,隐藏可避让元素\n for (const avoidable of avoidableElements) {\n if (isColliding(unavoidable.rect, avoidable.rect)) {\n toHide.add(avoidable.id);\n }\n }\n }\n\n // 2. 可避让元素之间按面积排序,面积大的优先显示\n avoidableElements.sort((a, b) => b.area - a.area);\n\n // 3. 检查所有可避让元素之间的碰撞关系\n for (let i = 0; i < avoidableElements.length; i++) {\n // 如果当前元素已经被标记为隐藏,则跳过\n if (toHide.has(avoidableElements[i].id)) continue;\n\n // 检查与所有后续元素的碰撞\n for (let j = i + 1; j < avoidableElements.length; j++) {\n // 如果比较的元素已经被标记为隐藏,则跳过\n if (toHide.has(avoidableElements[j].id)) continue;\n\n\n if (isColliding(avoidableElements[i].rect, avoidableElements[j].rect)) {\n // 隐藏面积较小的元素(即j位置的元素)\n toHide.add(avoidableElements[j].id);\n }\n }\n }\n\n // 应用显示/隐藏\n allElements.forEach(({ id, element, avoid: elementAvoid }) => {\n if (!elementAvoid) {\n // avoid=false的元素始终显示\n element.style.visibility = 'visible';\n } else {\n // avoid=true的元素根据碰撞检测结果决定显示或隐藏\n element.style.visibility = toHide.has(id) ? 'hidden' : 'visible';\n }\n });\n }, [avoid]);\n\n // 控制显示/隐藏\n useUpdateEffect(() => {\n if (domRef.current) {\n domRef.current.style.visibility = show ? 'visible' : 'hidden';\n }\n\n // 当显示状态改变时重新计算避让\n if (show && avoid) {\n setTimeout(handleAvoidance, 10);\n }\n }, [show, avoid]);\n\n // 监听地图事件\n useEffect(() => {\n if (!map) return;\n\n let avoidanceTimer = null;\n\n // 处理地图变化\n const handleMapChange = () => {\n // 清除之前的定时器\n if (avoidanceTimer) {\n clearTimeout(avoidanceTimer);\n }\n\n // 延迟执行避让处理,确保DOM已经更新位置\n avoidanceTimer = setTimeout(() => {\n if (avoid) {\n handleAvoidance();\n }\n }, 100);\n };\n\n\n // 监听地图移动事件\n map.getView().on('change:resolution', handleMapChange);\n\n // 初始计算一次\n setTimeout(() => {\n if (avoid) {\n handleAvoidance();\n }\n }, 200);\n\n return () => {\n if (map) {\n map.getView().un('change:resolution', handleMapChange);\n }\n if (avoidanceTimer) {\n clearTimeout(avoidanceTimer);\n }\n };\n }, [handleAvoidance, avoid]);\n\n // 向子组件传递上下文\n const childrenWithProps = React.Children.map(children, child => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n _registerDomLayer: registerDomElement\n });\n }\n return child;\n });\n\n return (\n <div className=\"ol-map-dom-layer\" ref={domRef} style={{ display: show ? 'block' : 'none' }}>\n {childrenWithProps}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./index.css");
4
+ //# sourceMappingURL=css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css.js","names":["require"],"sources":["dom-layer/style/index.js"],"sourcesContent":["import './index.less';\n"],"mappings":";;AAAAA,OAAA"}
@@ -0,0 +1,3 @@
1
+ .ol-map-dom-layer {
2
+ pointer-events: none;
3
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./index.less");
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["require"],"sources":["dom-layer/style/index.js"],"sourcesContent":["import './index.less';\n"],"mappings":";;AAAAA,OAAA"}
@@ -0,0 +1,3 @@
1
+ .ol-map-dom-layer {
2
+ pointer-events: none;
3
+ }
package/lib/index.js CHANGED
@@ -27,6 +27,12 @@ Object.defineProperty(exports, "Dom", {
27
27
  return _dom["default"];
28
28
  }
29
29
  });
30
+ Object.defineProperty(exports, "DomLayer", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _domLayer["default"];
34
+ }
35
+ });
30
36
  Object.defineProperty(exports, "FeatureDraw", {
31
37
  enumerable: true,
32
38
  get: function get() {
@@ -197,5 +203,6 @@ var _wmsLayer = _interopRequireDefault(require("./wms-layer"));
197
203
  var _legend = _interopRequireDefault(require("./legend"));
198
204
  var _popup = _interopRequireDefault(require("./popup"));
199
205
  var _dom = _interopRequireDefault(require("./dom"));
206
+ var _domLayer = _interopRequireDefault(require("./dom-layer"));
200
207
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
201
208
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_tileLayer","_flowLineLayer","_flyLineLayer","_featureLayer","_imageLayer","_point","_marker","_polyline","_polygon","_circle","_tools","_poiSearch","_useProps","_provider","_bufferDraw","_highLayer","_groupLayer","_analysisLayer","_pathPlayBack","_searchMap","_heatmapLayer","_wmsLayer","_legend","_popup","_dom","obj","__esModule"],"sources":["index.js"],"sourcesContent":["export { default as Map } from './map';\nexport { default as TileLayer } from './tile-layer';\nexport { default as FlowLineLayer } from './flow-line-layer';\nexport { default as FlyLineLayer } from './fly-line-layer';\nexport { default as FeatureLayer } from './feature-layer';\nexport { default as ImageLayer } from './image-layer';\nexport { default as Point } from './point';\nexport { default as Marker } from './marker';\nexport { default as Polyline } from './polyline';\nexport { default as Polygon } from './polygon';\nexport { default as Circle } from './circle';\nexport { default as Tools } from './tools';\nexport { default as PoiSearch } from './poi-search';\nexport { default as useProps } from './use-props';\nexport { default as Provider } from './provider';\nexport { default as BufferDraw } from './buffer-draw';\nexport { default as HighLayer } from './high-layer';\nexport { default as FeatureDraw } from './feature-layer';\nexport { default as GroupLayer } from './group-layer';\nexport { default as AnalysisLayer } from './analysis-layer';\nexport { default as PathPlayBack } from './path-play-back';\nexport { default as SearchMap } from './search-map';\nexport { default as HeatmapLayer } from './heatmap-layer';\nexport { default as PathLineLayer } from './fly-line-layer';\nexport { default as WmsLayer } from './wms-layer';\nexport { default as Legend } from './legend';\nexport { default as Popup } from './popup';\nexport { default as Dom } from './dom';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,WAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,MAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,OAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,SAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,QAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,OAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,MAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,UAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,SAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,SAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,WAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,UAAA,GAAAjB,sBAAA,CAAAC,OAAA;AAEA,IAAAiB,WAAA,GAAAlB,sBAAA,CAAAC,OAAA;AACA,IAAAkB,cAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,aAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,UAAA,GAAArB,sBAAA,CAAAC,OAAA;AACA,IAAAqB,aAAA,GAAAtB,sBAAA,CAAAC,OAAA;AAEA,IAAAsB,SAAA,GAAAvB,sBAAA,CAAAC,OAAA;AACA,IAAAuB,OAAA,GAAAxB,sBAAA,CAAAC,OAAA;AACA,IAAAwB,MAAA,GAAAzB,sBAAA,CAAAC,OAAA;AACA,IAAAyB,IAAA,GAAA1B,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAA2B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA"}
1
+ {"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_tileLayer","_flowLineLayer","_flyLineLayer","_featureLayer","_imageLayer","_point","_marker","_polyline","_polygon","_circle","_tools","_poiSearch","_useProps","_provider","_bufferDraw","_highLayer","_groupLayer","_analysisLayer","_pathPlayBack","_searchMap","_heatmapLayer","_wmsLayer","_legend","_popup","_dom","_domLayer","obj","__esModule"],"sources":["index.js"],"sourcesContent":["export { default as Map } from './map';\nexport { default as TileLayer } from './tile-layer';\nexport { default as FlowLineLayer } from './flow-line-layer';\nexport { default as FlyLineLayer } from './fly-line-layer';\nexport { default as FeatureLayer } from './feature-layer';\nexport { default as ImageLayer } from './image-layer';\nexport { default as Point } from './point';\nexport { default as Marker } from './marker';\nexport { default as Polyline } from './polyline';\nexport { default as Polygon } from './polygon';\nexport { default as Circle } from './circle';\nexport { default as Tools } from './tools';\nexport { default as PoiSearch } from './poi-search';\nexport { default as useProps } from './use-props';\nexport { default as Provider } from './provider';\nexport { default as BufferDraw } from './buffer-draw';\nexport { default as HighLayer } from './high-layer';\nexport { default as FeatureDraw } from './feature-layer';\nexport { default as GroupLayer } from './group-layer';\nexport { default as AnalysisLayer } from './analysis-layer';\nexport { default as PathPlayBack } from './path-play-back';\nexport { default as SearchMap } from './search-map';\nexport { default as HeatmapLayer } from './heatmap-layer';\nexport { default as PathLineLayer } from './fly-line-layer';\nexport { default as WmsLayer } from './wms-layer';\nexport { default as Legend } from './legend';\nexport { default as Popup } from './popup';\nexport { default as Dom } from './dom';\nexport { default as DomLayer } from './dom-layer';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,WAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,MAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,OAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,SAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,QAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,OAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,MAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,UAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,SAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,SAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,WAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,UAAA,GAAAjB,sBAAA,CAAAC,OAAA;AAEA,IAAAiB,WAAA,GAAAlB,sBAAA,CAAAC,OAAA;AACA,IAAAkB,cAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,aAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,UAAA,GAAArB,sBAAA,CAAAC,OAAA;AACA,IAAAqB,aAAA,GAAAtB,sBAAA,CAAAC,OAAA;AAEA,IAAAsB,SAAA,GAAAvB,sBAAA,CAAAC,OAAA;AACA,IAAAuB,OAAA,GAAAxB,sBAAA,CAAAC,OAAA;AACA,IAAAwB,MAAA,GAAAzB,sBAAA,CAAAC,OAAA;AACA,IAAAyB,IAAA,GAAA1B,sBAAA,CAAAC,OAAA;AACA,IAAA0B,SAAA,GAAA3B,sBAAA,CAAAC,OAAA;AAAkD,SAAAD,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/ol-map",
3
- "version": "1.0.154",
3
+ "version": "1.0.155",
4
4
  "description": "React components for Vortex",
5
5
  "keywords": [
6
6
  "react",