@mint-ui/map 1.2.0-test.8 → 1.2.0
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/.eslintrc.js +11 -4
- package/.vscode/settings.json +32 -9
- package/dist/components/mint-map/core/MintMapController.d.ts +1 -0
- package/dist/components/mint-map/core/MintMapCore.js +5 -6
- package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/CanvasMarkerLayer.d.ts +12 -0
- package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/CanvasMarkerLayer.js +962 -0
- package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/index.d.ts +4 -0
- package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/types.d.ts +280 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/CanvasPolygonLayer.d.ts +17 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/CanvasPolygonLayer.js +624 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/index.d.ts +4 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/renderer.d.ts +303 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/renderer.js +1091 -0
- package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/types.d.ts +284 -0
- package/dist/components/mint-map/core/advanced/canvas/CanvasMarker.d.ts +7 -0
- package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerClaude.js +7 -7
- package/dist/components/mint-map/core/advanced/canvas/index.d.ts +0 -1
- package/dist/components/mint-map/core/advanced/index.d.ts +4 -2
- package/dist/components/mint-map/core/advanced/shared/context.d.ts +44 -0
- package/dist/components/mint-map/core/advanced/shared/context.js +230 -0
- package/dist/components/mint-map/core/advanced/shared/helpers.d.ts +20 -0
- package/dist/components/mint-map/core/advanced/shared/helpers.js +41 -0
- package/dist/components/mint-map/core/advanced/shared/hooks.d.ts +74 -0
- package/dist/components/mint-map/core/advanced/shared/hooks.js +196 -0
- package/dist/components/mint-map/core/advanced/{woongCanvas/shared → shared}/index.d.ts +5 -2
- package/dist/components/mint-map/core/advanced/shared/performance.d.ts +82 -0
- package/dist/components/mint-map/core/advanced/shared/performance.js +288 -0
- package/dist/components/mint-map/core/advanced/shared/types.d.ts +150 -0
- package/dist/components/mint-map/core/advanced/shared/types.js +31 -0
- package/dist/components/mint-map/core/advanced/shared/utils.d.ts +173 -0
- package/dist/components/mint-map/core/advanced/shared/utils.js +382 -0
- package/dist/components/mint-map/core/advanced/shared/viewport.d.ts +42 -0
- package/dist/components/mint-map/core/advanced/shared/viewport.js +52 -0
- package/dist/components/mint-map/core/wrapper/MapMarkerWrapper.js +22 -1
- package/dist/components/mint-map/google/GoogleMintMapController.d.ts +1 -0
- package/dist/components/mint-map/google/GoogleMintMapController.js +13 -8
- package/dist/components/mint-map/kakao/KakaoMintMapController.d.ts +1 -0
- package/dist/components/mint-map/kakao/KakaoMintMapController.js +13 -8
- package/dist/components/mint-map/naver/NaverMintMapController.d.ts +3 -0
- package/dist/components/mint-map/naver/NaverMintMapController.js +46 -11
- package/dist/index.es.js +5605 -4056
- package/dist/index.js +47 -27
- package/dist/index.umd.js +5621 -4059
- package/package.json +1 -1
- package/CLAUDE.md +0 -100
- package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerHanquf.d.ts +0 -22
- package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerHanquf.js +0 -413
- package/dist/components/mint-map/core/advanced/woongCanvas/ClusterMarker.d.ts +0 -11
- package/dist/components/mint-map/core/advanced/woongCanvas/WoongKonvaMarker.d.ts +0 -53
- package/dist/components/mint-map/core/advanced/woongCanvas/WoongKonvaMarker.js +0 -1123
- package/dist/components/mint-map/core/advanced/woongCanvas/index.d.ts +0 -3
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/context.d.ts +0 -31
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/context.js +0 -164
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/performance.d.ts +0 -161
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/performance.js +0 -343
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/types.d.ts +0 -131
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/types.js +0 -14
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/utils.d.ts +0 -31
- package/dist/components/mint-map/core/advanced/woongCanvas/shared/utils.js +0 -164
- package/dist/components/mint-map/core/util/geohash.js +0 -125
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import type { MarkerOptions, Offset } from '../../../types';
|
|
2
|
+
import type { CanvasData, CustomRenderBase, CustomRenderEvent } from '../shared';
|
|
3
|
+
/**
|
|
4
|
+
* CanvasMarkerLayer Props (renderEvent가 없는 경우 - 인터랙션 불가)
|
|
5
|
+
*
|
|
6
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
7
|
+
*/
|
|
8
|
+
export interface CanvasMarkerLayerPropsWithoutEvent<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
9
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
10
|
+
data: CanvasData<T>[];
|
|
11
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
12
|
+
cullingMargin?: number;
|
|
13
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
14
|
+
maxCacheSize?: number;
|
|
15
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
16
|
+
renderBase: CustomRenderBase<T>;
|
|
17
|
+
/** Event Layer 렌더링 함수가 없으면 인터랙션 관련 props 사용 불가 */
|
|
18
|
+
renderEvent?: never;
|
|
19
|
+
/** 인터랙션 관련 props는 renderEvent가 있을 때만 사용 가능 */
|
|
20
|
+
onClick?: never;
|
|
21
|
+
onMouseOver?: never;
|
|
22
|
+
onMouseOut?: never;
|
|
23
|
+
topOnHover?: never;
|
|
24
|
+
selectedItems?: never;
|
|
25
|
+
selectedItem?: never;
|
|
26
|
+
disableInteraction?: never;
|
|
27
|
+
topStageZIndex?: never;
|
|
28
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
29
|
+
onOptimizationDataUpdate?: (data: {
|
|
30
|
+
cacheSize: number;
|
|
31
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
32
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
33
|
+
}) => void;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
37
|
+
* selectedItem이 있는 경우
|
|
38
|
+
*
|
|
39
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
40
|
+
*/
|
|
41
|
+
export interface CanvasMarkerLayerPropsWithEventWithSelectedItem<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
42
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
43
|
+
data: CanvasData<T>[];
|
|
44
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
45
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
46
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
47
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
48
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
49
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
50
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
51
|
+
cullingMargin?: number;
|
|
52
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
53
|
+
maxCacheSize?: number;
|
|
54
|
+
/** 외부에서 전달된 단일 선택 아이템 */
|
|
55
|
+
selectedItem: CanvasData<T> | null;
|
|
56
|
+
/** 외부에서 제어하는 선택된 항목 배열 (selectedItem과 공존 불가) */
|
|
57
|
+
selectedItems?: never;
|
|
58
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
59
|
+
disableInteraction?: boolean;
|
|
60
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
61
|
+
renderBase: CustomRenderBase<T>;
|
|
62
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
63
|
+
renderEvent: CustomRenderEvent<T>;
|
|
64
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
65
|
+
topStageZIndex?: never;
|
|
66
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
67
|
+
onOptimizationDataUpdate?: (data: {
|
|
68
|
+
cacheSize: number;
|
|
69
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
70
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
71
|
+
}) => void;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
75
|
+
* selectedItems가 있는 경우
|
|
76
|
+
*
|
|
77
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
78
|
+
*/
|
|
79
|
+
export interface CanvasMarkerLayerPropsWithEventWithSelectedItems<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
80
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
81
|
+
data: CanvasData<T>[];
|
|
82
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
83
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
84
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
85
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
86
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
87
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
88
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
89
|
+
cullingMargin?: number;
|
|
90
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
91
|
+
maxCacheSize?: number;
|
|
92
|
+
/** 외부에서 제어하는 선택된 항목 배열 */
|
|
93
|
+
selectedItems: CanvasData<T>[];
|
|
94
|
+
/** 외부에서 전달된 단일 선택 아이템 (selectedItems와 공존 불가) */
|
|
95
|
+
selectedItem?: never;
|
|
96
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
97
|
+
disableInteraction?: boolean;
|
|
98
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
99
|
+
renderBase: CustomRenderBase<T>;
|
|
100
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
101
|
+
renderEvent: CustomRenderEvent<T>;
|
|
102
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
103
|
+
topStageZIndex?: never;
|
|
104
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
105
|
+
onOptimizationDataUpdate?: (data: {
|
|
106
|
+
cacheSize: number;
|
|
107
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
108
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
109
|
+
}) => void;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
113
|
+
* selectedItem과 selectedItems 둘 다 없는 경우
|
|
114
|
+
*
|
|
115
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
116
|
+
*/
|
|
117
|
+
export interface CanvasMarkerLayerPropsWithEventWithoutSelection<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
118
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
119
|
+
data: CanvasData<T>[];
|
|
120
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
121
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
122
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
123
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
124
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
125
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
126
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
127
|
+
cullingMargin?: number;
|
|
128
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
129
|
+
maxCacheSize?: number;
|
|
130
|
+
/** 외부에서 제어하는 선택된 항목 배열 */
|
|
131
|
+
selectedItems?: never;
|
|
132
|
+
/** 외부에서 전달된 단일 선택 아이템 */
|
|
133
|
+
selectedItem?: never;
|
|
134
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
135
|
+
disableInteraction?: boolean;
|
|
136
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
137
|
+
renderBase: CustomRenderBase<T>;
|
|
138
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
139
|
+
renderEvent: CustomRenderEvent<T>;
|
|
140
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
141
|
+
topStageZIndex?: never;
|
|
142
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
143
|
+
onOptimizationDataUpdate?: (data: {
|
|
144
|
+
cacheSize: number;
|
|
145
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
146
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
147
|
+
}) => void;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
151
|
+
* topStageZIndex가 있을 때
|
|
152
|
+
* selectedItem이 있는 경우
|
|
153
|
+
*
|
|
154
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
155
|
+
*/
|
|
156
|
+
export interface CanvasMarkerLayerPropsWithEventWithTopStageWithSelectedItem<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
157
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
158
|
+
data: CanvasData<T>[];
|
|
159
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
160
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
161
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
162
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
163
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
164
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
165
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
166
|
+
cullingMargin?: number;
|
|
167
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
168
|
+
maxCacheSize?: number;
|
|
169
|
+
/** 외부에서 전달된 단일 선택 아이템 */
|
|
170
|
+
selectedItem: CanvasData<T> | null;
|
|
171
|
+
/** 외부에서 제어하는 선택된 항목 배열 (selectedItem과 공존 불가) */
|
|
172
|
+
selectedItems?: never;
|
|
173
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
174
|
+
disableInteraction?: boolean;
|
|
175
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
176
|
+
renderBase: CustomRenderBase<T>;
|
|
177
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
178
|
+
renderEvent: CustomRenderEvent<T>;
|
|
179
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
180
|
+
topStageZIndex: number;
|
|
181
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
182
|
+
onOptimizationDataUpdate?: (data: {
|
|
183
|
+
cacheSize: number;
|
|
184
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
185
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
186
|
+
}) => void;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
190
|
+
* topStageZIndex가 있을 때
|
|
191
|
+
* selectedItems가 있는 경우
|
|
192
|
+
*
|
|
193
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
194
|
+
*/
|
|
195
|
+
export interface CanvasMarkerLayerPropsWithEventWithTopStageWithSelectedItems<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
196
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
197
|
+
data: CanvasData<T>[];
|
|
198
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
199
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
200
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
201
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
202
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
203
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
204
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
205
|
+
cullingMargin?: number;
|
|
206
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
207
|
+
maxCacheSize?: number;
|
|
208
|
+
/** 외부에서 제어하는 선택된 항목 배열 */
|
|
209
|
+
selectedItems: CanvasData<T>[];
|
|
210
|
+
/** 외부에서 전달된 단일 선택 아이템 (selectedItems와 공존 불가) */
|
|
211
|
+
selectedItem?: never;
|
|
212
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
213
|
+
disableInteraction?: boolean;
|
|
214
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
215
|
+
renderBase: CustomRenderBase<T>;
|
|
216
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
217
|
+
renderEvent: CustomRenderEvent<T>;
|
|
218
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
219
|
+
topStageZIndex: number;
|
|
220
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
221
|
+
onOptimizationDataUpdate?: (data: {
|
|
222
|
+
cacheSize: number;
|
|
223
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
224
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
225
|
+
}) => void;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
229
|
+
* topStageZIndex가 있을 때
|
|
230
|
+
* selectedItem과 selectedItems 둘 다 없는 경우
|
|
231
|
+
*
|
|
232
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
233
|
+
*/
|
|
234
|
+
export interface CanvasMarkerLayerPropsWithEventWithTopStageWithoutSelection<T> extends Pick<MarkerOptions, 'zIndex' | 'anchor' | 'visible'> {
|
|
235
|
+
/** 렌더링할 마커 데이터 배열 */
|
|
236
|
+
data: CanvasData<T>[];
|
|
237
|
+
/** 마커 클릭 시 호출되는 콜백 함수 */
|
|
238
|
+
onClick?: (payload: CanvasData<T>, selectedIds: Set<string>) => void;
|
|
239
|
+
/** 마커에 마우스 오버 시 호출되는 콜백 함수 */
|
|
240
|
+
onMouseOver?: (payload: CanvasData<T>) => void;
|
|
241
|
+
/** 마커에서 마우스 아웃 시 호출되는 콜백 함수 */
|
|
242
|
+
onMouseOut?: (payload: CanvasData<T>) => void;
|
|
243
|
+
/** 뷰포트 컬링 여유 공간 (픽셀 단위, 기본값: 100) */
|
|
244
|
+
cullingMargin?: number;
|
|
245
|
+
/** Queue 캐시 최대 크기 (기본값: 30000) */
|
|
246
|
+
maxCacheSize?: number;
|
|
247
|
+
/** 외부에서 제어하는 선택된 항목 배열 */
|
|
248
|
+
selectedItems?: never;
|
|
249
|
+
/** 외부에서 전달된 단일 선택 아이템 */
|
|
250
|
+
selectedItem?: never;
|
|
251
|
+
/** 상호작용 비활성화 여부 (기본값: false) */
|
|
252
|
+
disableInteraction?: boolean;
|
|
253
|
+
/** Base Layer 렌더링 함수 (필수) */
|
|
254
|
+
renderBase: CustomRenderBase<T>;
|
|
255
|
+
/** Event Layer 렌더링 함수 (필수 - 인터랙션 사용 시) */
|
|
256
|
+
renderEvent: CustomRenderEvent<T>;
|
|
257
|
+
/** Top Layer의 zIndex (hover된 항목을 최상단에 렌더링하기 위한 레이어) */
|
|
258
|
+
topStageZIndex: number;
|
|
259
|
+
/** 최적화 데이터 콜백 (디버깅/모니터링용) */
|
|
260
|
+
onOptimizationDataUpdate?: (data: {
|
|
261
|
+
cacheSize: number;
|
|
262
|
+
cacheEntries: Array<[string, number[][][][] | Offset]>;
|
|
263
|
+
spatialGridCells: Map<string, CanvasData<T>[]>;
|
|
264
|
+
}) => void;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* CanvasMarkerLayer Props (renderEvent가 있는 경우 - 인터랙션 가능)
|
|
268
|
+
*
|
|
269
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
270
|
+
*/
|
|
271
|
+
export declare type CanvasMarkerLayerPropsWithEvent<T> = CanvasMarkerLayerPropsWithEventWithSelectedItem<T> | CanvasMarkerLayerPropsWithEventWithSelectedItems<T> | CanvasMarkerLayerPropsWithEventWithoutSelection<T> | CanvasMarkerLayerPropsWithEventWithTopStageWithSelectedItem<T> | CanvasMarkerLayerPropsWithEventWithTopStageWithSelectedItems<T> | CanvasMarkerLayerPropsWithEventWithTopStageWithoutSelection<T>;
|
|
272
|
+
/**
|
|
273
|
+
* CanvasMarkerLayer Props
|
|
274
|
+
*
|
|
275
|
+
* renderEvent가 없으면 인터랙션 관련 props를 사용할 수 없습니다.
|
|
276
|
+
* renderEvent가 있으면 모든 인터랙션 관련 props를 사용할 수 있습니다.
|
|
277
|
+
*
|
|
278
|
+
* @template T 마커 데이터의 추가 속성 타입
|
|
279
|
+
*/
|
|
280
|
+
export declare type CanvasMarkerLayerProps<T> = CanvasMarkerLayerPropsWithoutEvent<T> | CanvasMarkerLayerPropsWithEvent<T>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CanvasPolygonLayerProps } from './types';
|
|
3
|
+
export { CanvasProvider, QueueCache, RenderSource, SpatialHashGrid } from '../shared';
|
|
4
|
+
export type { CanvasData, CanvasOption, CustomRenderEvent, RenderUtils } from '../shared';
|
|
5
|
+
export type { CanvasPolygonLayerBaseProps, CanvasPolygonLayerProps, CanvasPolygonLayerPropsWithCustomStyle, CanvasPolygonLayerPropsWithIndividualStyles, CanvasPolygonLayerPropsWithObjectStyle, PolygonStyle, PolygonStyleContext, PolygonStyleCustomizer, PolygonStyleCustomizerWithDeps, PolygonStyleObject } from './types';
|
|
6
|
+
declare const CanvasPolygonLayer: <T>(props: CanvasPolygonLayerProps<T>) => React.ReactPortal;
|
|
7
|
+
/**
|
|
8
|
+
* CanvasPolygonLayer - Konva 기반 고성능 폴리곤 렌더링 컴포넌트
|
|
9
|
+
*
|
|
10
|
+
* 세 가지 스타일 지정 방식을 지원합니다 (mutually exclusive):
|
|
11
|
+
* 1. 개별 props 방식: baseFillColor, baseStrokeColor, baseLineWidth 등 개별 props 사용
|
|
12
|
+
* 2. 객체 방식: renderStyle 객체로 상태별 스타일 정의
|
|
13
|
+
* 3. 함수 방식: customStyle 함수로 완전한 커스터마이징 (스타일을 반환하지 않으면 그리지 않음)
|
|
14
|
+
*
|
|
15
|
+
* @template T 폴리곤 데이터의 추가 속성 타입
|
|
16
|
+
*/
|
|
17
|
+
export default CanvasPolygonLayer;
|