@mint-ui/map 1.2.0-test.27 → 1.2.0-test.29
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.
|
@@ -447,13 +447,47 @@ var WoongCanvasLayer = function (props) {
|
|
|
447
447
|
var ctx = context; // 클로저로 최신 ref 값 참조
|
|
448
448
|
|
|
449
449
|
var selectedItems = Array.from(selectedItemsMapRef.current.values());
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
450
|
+
var hovered = hoveredItemRef.current; // topOnHover가 true이면 hover된 항목을 최상단에 렌더링
|
|
451
|
+
|
|
452
|
+
if (topOnHover && hovered) {
|
|
453
|
+
// 1. 먼저 일반 항목들 렌더링 (hover된 항목 제외)
|
|
454
|
+
renderEvent({
|
|
455
|
+
ctx: ctx,
|
|
456
|
+
hoveredItem: null,
|
|
457
|
+
utils: renderUtils,
|
|
458
|
+
selectedItems: selectedItems.filter(function (item) {
|
|
459
|
+
return item.id !== hovered.id;
|
|
460
|
+
}),
|
|
461
|
+
selectedItem: selectedItemRef.current
|
|
462
|
+
}); // 2. hover된 항목을 최상단에 렌더링
|
|
463
|
+
|
|
464
|
+
var isHoveredInViewport = enableViewportCulling ? isInViewport(hovered) : true;
|
|
465
|
+
|
|
466
|
+
if (isHoveredInViewport) {
|
|
467
|
+
// hover된 항목이 선택되어 있다면 hoverSelectedItems에 포함시켜서
|
|
468
|
+
// renderEvent에서 hover 스타일만 적용되도록 함
|
|
469
|
+
var hoveredIsSelected = selectedItems.some(function (item) {
|
|
470
|
+
return item.id === hovered.id;
|
|
471
|
+
});
|
|
472
|
+
var hoverSelectedItems = hoveredIsSelected ? [hovered] : [];
|
|
473
|
+
renderEvent({
|
|
474
|
+
ctx: ctx,
|
|
475
|
+
hoveredItem: hovered,
|
|
476
|
+
utils: renderUtils,
|
|
477
|
+
selectedItems: hoverSelectedItems,
|
|
478
|
+
selectedItem: selectedItemRef.current
|
|
479
|
+
});
|
|
480
|
+
}
|
|
481
|
+
} else {
|
|
482
|
+
// topOnHover가 false이거나 hover된 항목이 없으면 일반 렌더링
|
|
483
|
+
renderEvent({
|
|
484
|
+
ctx: ctx,
|
|
485
|
+
hoveredItem: hovered,
|
|
486
|
+
utils: renderUtils,
|
|
487
|
+
selectedItems: selectedItems,
|
|
488
|
+
selectedItem: selectedItemRef.current
|
|
489
|
+
});
|
|
490
|
+
}
|
|
457
491
|
},
|
|
458
492
|
perfectDrawEnabled: false,
|
|
459
493
|
listening: false,
|
package/dist/index.es.js
CHANGED
|
@@ -6074,13 +6074,47 @@ var WoongCanvasLayer = function (props) {
|
|
|
6074
6074
|
var ctx = context; // 클로저로 최신 ref 값 참조
|
|
6075
6075
|
|
|
6076
6076
|
var selectedItems = Array.from(selectedItemsMapRef.current.values());
|
|
6077
|
-
|
|
6078
|
-
|
|
6079
|
-
|
|
6080
|
-
|
|
6081
|
-
|
|
6082
|
-
|
|
6083
|
-
|
|
6077
|
+
var hovered = hoveredItemRef.current; // topOnHover가 true이면 hover된 항목을 최상단에 렌더링
|
|
6078
|
+
|
|
6079
|
+
if (topOnHover && hovered) {
|
|
6080
|
+
// 1. 먼저 일반 항목들 렌더링 (hover된 항목 제외)
|
|
6081
|
+
renderEvent({
|
|
6082
|
+
ctx: ctx,
|
|
6083
|
+
hoveredItem: null,
|
|
6084
|
+
utils: renderUtils,
|
|
6085
|
+
selectedItems: selectedItems.filter(function (item) {
|
|
6086
|
+
return item.id !== hovered.id;
|
|
6087
|
+
}),
|
|
6088
|
+
selectedItem: selectedItemRef.current
|
|
6089
|
+
}); // 2. hover된 항목을 최상단에 렌더링
|
|
6090
|
+
|
|
6091
|
+
var isHoveredInViewport = enableViewportCulling ? isInViewport(hovered) : true;
|
|
6092
|
+
|
|
6093
|
+
if (isHoveredInViewport) {
|
|
6094
|
+
// hover된 항목이 선택되어 있다면 hoverSelectedItems에 포함시켜서
|
|
6095
|
+
// renderEvent에서 hover 스타일만 적용되도록 함
|
|
6096
|
+
var hoveredIsSelected = selectedItems.some(function (item) {
|
|
6097
|
+
return item.id === hovered.id;
|
|
6098
|
+
});
|
|
6099
|
+
var hoverSelectedItems = hoveredIsSelected ? [hovered] : [];
|
|
6100
|
+
renderEvent({
|
|
6101
|
+
ctx: ctx,
|
|
6102
|
+
hoveredItem: hovered,
|
|
6103
|
+
utils: renderUtils,
|
|
6104
|
+
selectedItems: hoverSelectedItems,
|
|
6105
|
+
selectedItem: selectedItemRef.current
|
|
6106
|
+
});
|
|
6107
|
+
}
|
|
6108
|
+
} else {
|
|
6109
|
+
// topOnHover가 false이거나 hover된 항목이 없으면 일반 렌더링
|
|
6110
|
+
renderEvent({
|
|
6111
|
+
ctx: ctx,
|
|
6112
|
+
hoveredItem: hovered,
|
|
6113
|
+
utils: renderUtils,
|
|
6114
|
+
selectedItems: selectedItems,
|
|
6115
|
+
selectedItem: selectedItemRef.current
|
|
6116
|
+
});
|
|
6117
|
+
}
|
|
6084
6118
|
},
|
|
6085
6119
|
perfectDrawEnabled: false,
|
|
6086
6120
|
listening: false,
|
package/dist/index.umd.js
CHANGED
|
@@ -6078,13 +6078,47 @@
|
|
|
6078
6078
|
var ctx = context; // 클로저로 최신 ref 값 참조
|
|
6079
6079
|
|
|
6080
6080
|
var selectedItems = Array.from(selectedItemsMapRef.current.values());
|
|
6081
|
-
|
|
6082
|
-
|
|
6083
|
-
|
|
6084
|
-
|
|
6085
|
-
|
|
6086
|
-
|
|
6087
|
-
|
|
6081
|
+
var hovered = hoveredItemRef.current; // topOnHover가 true이면 hover된 항목을 최상단에 렌더링
|
|
6082
|
+
|
|
6083
|
+
if (topOnHover && hovered) {
|
|
6084
|
+
// 1. 먼저 일반 항목들 렌더링 (hover된 항목 제외)
|
|
6085
|
+
renderEvent({
|
|
6086
|
+
ctx: ctx,
|
|
6087
|
+
hoveredItem: null,
|
|
6088
|
+
utils: renderUtils,
|
|
6089
|
+
selectedItems: selectedItems.filter(function (item) {
|
|
6090
|
+
return item.id !== hovered.id;
|
|
6091
|
+
}),
|
|
6092
|
+
selectedItem: selectedItemRef.current
|
|
6093
|
+
}); // 2. hover된 항목을 최상단에 렌더링
|
|
6094
|
+
|
|
6095
|
+
var isHoveredInViewport = enableViewportCulling ? isInViewport(hovered) : true;
|
|
6096
|
+
|
|
6097
|
+
if (isHoveredInViewport) {
|
|
6098
|
+
// hover된 항목이 선택되어 있다면 hoverSelectedItems에 포함시켜서
|
|
6099
|
+
// renderEvent에서 hover 스타일만 적용되도록 함
|
|
6100
|
+
var hoveredIsSelected = selectedItems.some(function (item) {
|
|
6101
|
+
return item.id === hovered.id;
|
|
6102
|
+
});
|
|
6103
|
+
var hoverSelectedItems = hoveredIsSelected ? [hovered] : [];
|
|
6104
|
+
renderEvent({
|
|
6105
|
+
ctx: ctx,
|
|
6106
|
+
hoveredItem: hovered,
|
|
6107
|
+
utils: renderUtils,
|
|
6108
|
+
selectedItems: hoverSelectedItems,
|
|
6109
|
+
selectedItem: selectedItemRef.current
|
|
6110
|
+
});
|
|
6111
|
+
}
|
|
6112
|
+
} else {
|
|
6113
|
+
// topOnHover가 false이거나 hover된 항목이 없으면 일반 렌더링
|
|
6114
|
+
renderEvent({
|
|
6115
|
+
ctx: ctx,
|
|
6116
|
+
hoveredItem: hovered,
|
|
6117
|
+
utils: renderUtils,
|
|
6118
|
+
selectedItems: selectedItems,
|
|
6119
|
+
selectedItem: selectedItemRef.current
|
|
6120
|
+
});
|
|
6121
|
+
}
|
|
6088
6122
|
},
|
|
6089
6123
|
perfectDrawEnabled: false,
|
|
6090
6124
|
listening: false,
|