@rousen/react-naver-maps 0.0.11 → 0.0.13

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/dist/index.esm.js CHANGED
@@ -46,7 +46,10 @@ function loadNaverMaps(opts) {
46
46
  loadPromise = new Promise((resolve, reject) => {
47
47
  const scriptId = opts.scriptId ?? "naver-maps-sdk";
48
48
  const existing = document.getElementById(scriptId);
49
- const subs = (opts.submodules ?? []).filter(Boolean);
49
+ const subsSet = new Set((opts.submodules ?? []).filter(Boolean));
50
+ if (opts.useGL !== false)
51
+ subsSet.add("gl");
52
+ const subs = Array.from(subsSet);
50
53
  const hasGL = subs.includes("gl");
51
54
  const callbackName = hasGL
52
55
  ? `__naverMapsOnLoad__${scriptId.replace(/[^a-zA-Z0-9_]/g, "_")}`
@@ -119,22 +122,45 @@ function loadNaverMaps(opts) {
119
122
  return loadPromise;
120
123
  }
121
124
 
122
- const useScriptLoader = ({ ncpKeyId, submodules }) => {
125
+ const useScriptLoader = ({ ncpKeyId, submodules, disableGL, }) => {
123
126
  const [isScriptLoaded, setIsScriptLoaded] = useState(false);
124
127
  const key = useMemo(() => {
125
128
  return JSON.stringify({ ncpKeyId, submodules });
126
129
  }, [ncpKeyId, submodules]);
127
130
  useEffect(() => {
131
+ let cancelled = false;
128
132
  const { submodules, ncpKeyId } = JSON.parse(key);
129
- loadNaverMaps({
130
- ncpKeyId,
131
- submodules: submodules,
132
- }).then(() => setIsScriptLoaded(true));
133
- }, [key]);
133
+ const useGL = !disableGL;
134
+ const load = async () => {
135
+ try {
136
+ await loadNaverMaps({ ncpKeyId, submodules, useGL });
137
+ if (!cancelled)
138
+ setIsScriptLoaded(true);
139
+ }
140
+ catch (err) {
141
+ if (!useGL)
142
+ return;
143
+ console.warn("Naver Maps GL load failed, retrying without GL", err);
144
+ try {
145
+ await loadNaverMaps({ ncpKeyId, submodules, useGL: false });
146
+ if (!cancelled)
147
+ setIsScriptLoaded(true);
148
+ }
149
+ catch (nonGlError) {
150
+ if (!cancelled)
151
+ console.error("Failed to load Naver Maps SDK", nonGlError);
152
+ }
153
+ }
154
+ };
155
+ load();
156
+ return () => {
157
+ cancelled = true;
158
+ };
159
+ }, [key, disableGL]);
134
160
  return { isScriptLoaded };
135
161
  };
136
162
 
137
- const EVENT_TO_PROP$1 = {
163
+ const EVENT_TO_PROP$2 = {
138
164
  init: "onInit",
139
165
  zoomstart: "onZoomStart",
140
166
  zoomend: "onZoomEnd",
@@ -164,16 +190,26 @@ const EVENT_TO_PROP$1 = {
164
190
  removeLayer: "onRemoveLayer",
165
191
  size_changed: "onSizeChanged",
166
192
  };
167
- const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptions, submodules = [], style, ...eventProps }, ref) => {
193
+ const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptions, submodules = [], style, disableGL = false, ...eventProps }, ref) => {
168
194
  const mountedMapContext = useContext(MountedMapContext);
169
195
  const containerRef = useRef(null);
170
196
  const [mapInstance, setMapInstance] = useState();
171
197
  const contextValueRef = useRef(undefined);
172
- const { isScriptLoaded } = useScriptLoader({ ncpKeyId, submodules });
198
+ const { isScriptLoaded } = useScriptLoader({
199
+ ncpKeyId,
200
+ submodules,
201
+ disableGL,
202
+ });
203
+ const keyedMapOptions = useMemo(() => {
204
+ return JSON.stringify(mapOptions) || "";
205
+ }, [mapOptions]);
173
206
  useEffect(() => {
174
207
  if (!isScriptLoaded || !containerRef.current)
175
208
  return;
176
- const newInstance = new naver.maps.Map(containerRef.current, mapOptions);
209
+ const newInstance = new naver.maps.Map(containerRef.current, {
210
+ ...mapOptions,
211
+ gl: !disableGL,
212
+ });
177
213
  setMapInstance(newInstance);
178
214
  mountedMapContext.onMount(newInstance, id);
179
215
  contextValueRef.current = newInstance;
@@ -188,8 +224,8 @@ const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptio
188
224
  const handlersRef = useRef({});
189
225
  useEffect(() => {
190
226
  const next = {};
191
- Object.keys(EVENT_TO_PROP$1).forEach((eventKey) => {
192
- const propKey = EVENT_TO_PROP$1[eventKey];
227
+ Object.keys(EVENT_TO_PROP$2).forEach((eventKey) => {
228
+ const propKey = EVENT_TO_PROP$2[eventKey];
193
229
  const fn = eventProps[propKey];
194
230
  if (typeof fn === "function")
195
231
  next[eventKey] = fn;
@@ -205,7 +241,7 @@ const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptio
205
241
  if (!mapInstance)
206
242
  return;
207
243
  const disposers = [];
208
- Object.keys(EVENT_TO_PROP$1).forEach((eventKey) => {
244
+ Object.keys(EVENT_TO_PROP$2).forEach((eventKey) => {
209
245
  const listener = naver.maps.Event.addListener(mapInstance, eventKey, (...args) => {
210
246
  handlersRef.current[eventKey]?.(...args);
211
247
  });
@@ -216,16 +252,8 @@ const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptio
216
252
  useEffect(() => {
217
253
  if (!mapInstance)
218
254
  return;
219
- mapInstance.setMapTypeId(mapTypeId);
220
- }, [mapInstance, mapTypeId]);
221
- const memoizedMapOptions = useMemo(() => {
222
- return mapOptions || {};
223
- }, [mapOptions]);
224
- useEffect(() => {
225
- if (!mapInstance)
226
- return;
227
- mapInstance.setOptions(memoizedMapOptions);
228
- }, [mapInstance, memoizedMapOptions]);
255
+ mapInstance.setOptions(JSON.parse(keyedMapOptions));
256
+ }, [mapInstance, keyedMapOptions]);
229
257
  useImperativeHandle(ref, () => contextValueRef.current, [mapInstance]);
230
258
  const containerStyle = useMemo(() => {
231
259
  return { width: "100%", height: "100%", ...style };
@@ -235,7 +263,7 @@ const Map = forwardRef(({ id, mapTypeId = "normal", ncpKeyId, children, mapOptio
235
263
  Map.displayName = "Map";
236
264
 
237
265
  /* eslint-disable react-hooks/exhaustive-deps */
238
- const EVENT_TO_PROP = {
266
+ const EVENT_TO_PROP$1 = {
239
267
  click: "onClick",
240
268
  position_changed: "onPositionChanged",
241
269
  rightclick: "onRightclick",
@@ -254,24 +282,30 @@ const EVENT_TO_PROP = {
254
282
  mouseover: "onMouseOver",
255
283
  mouseout: "onMouseOut",
256
284
  };
257
- const Marker = forwardRef(({ position, zIndex, animation, clickable = false, cursor, draggable = false, icon, shape, title, visible = true, ...eventProps }, ref) => {
285
+ const Marker = forwardRef((props, ref) => {
258
286
  const { current: map } = useMap();
259
287
  const [instance, setInstance] = useState();
288
+ const eventProps = {};
289
+ const options = {};
290
+ Object.keys(props).forEach((key) => {
291
+ const propKey = key;
292
+ if (Object.values(EVENT_TO_PROP$1).includes(propKey)) {
293
+ const value = props[propKey];
294
+ if (value !== undefined) {
295
+ eventProps[propKey] = value;
296
+ }
297
+ }
298
+ else {
299
+ const value = props[key];
300
+ if (value !== undefined) {
301
+ options[key] = value;
302
+ }
303
+ }
304
+ });
260
305
  useEffect(() => {
261
306
  if (!map)
262
307
  return undefined;
263
- const newInstance = new naver.maps.Marker({
264
- position,
265
- zIndex,
266
- animation,
267
- clickable,
268
- cursor,
269
- draggable,
270
- icon,
271
- shape,
272
- title,
273
- visible,
274
- });
308
+ const newInstance = new naver.maps.Marker(options);
275
309
  setInstance(newInstance);
276
310
  newInstance.setMap(map);
277
311
  return () => {
@@ -283,58 +317,78 @@ const Marker = forwardRef(({ position, zIndex, animation, clickable = false, cur
283
317
  useEffect(() => {
284
318
  if (!instance)
285
319
  return;
286
- instance.setPosition(position);
287
- }, [instance, position]);
320
+ const position = options.position;
321
+ if (position) {
322
+ instance.setPosition(position);
323
+ }
324
+ }, [instance, options]);
288
325
  useEffect(() => {
289
326
  if (!instance)
290
327
  return;
328
+ const animation = options.animation;
291
329
  instance.setAnimation(animation ?? null);
292
- }, [instance, animation]);
330
+ }, [instance, options]);
293
331
  useEffect(() => {
294
332
  if (!instance)
295
333
  return;
296
- instance.setClickable(clickable);
297
- }, [instance, clickable]);
334
+ const clickable = options.clickable;
335
+ instance.setClickable(clickable ?? false);
336
+ }, [instance, options]);
298
337
  useEffect(() => {
299
- if (zIndex === undefined || !instance)
338
+ if (!instance)
300
339
  return;
301
- instance.setZIndex(zIndex);
302
- }, [zIndex, instance]);
340
+ const zIndex = options.zIndex;
341
+ if (zIndex !== undefined) {
342
+ instance.setZIndex(zIndex);
343
+ }
344
+ }, [instance, options]);
303
345
  useEffect(() => {
304
346
  if (!instance)
305
347
  return;
348
+ const cursor = options.cursor;
306
349
  instance.setCursor(cursor ?? "");
307
- }, [instance, cursor]);
350
+ }, [instance, options]);
308
351
  useEffect(() => {
309
352
  if (!instance)
310
353
  return;
311
- instance.setDraggable(draggable);
312
- }, [instance, draggable]);
354
+ const draggable = options.draggable;
355
+ instance.setDraggable(draggable ?? false);
356
+ }, [instance, options]);
313
357
  useEffect(() => {
314
- if (!instance || !icon)
358
+ if (!instance)
315
359
  return;
316
- instance.setIcon(icon);
317
- }, [instance, icon]);
360
+ const icon = options.icon;
361
+ if (icon) {
362
+ instance.setIcon(icon);
363
+ }
364
+ }, [instance, options]);
318
365
  useEffect(() => {
319
- if (!instance || !shape)
366
+ if (!instance)
320
367
  return;
321
- instance.setShape(shape);
322
- }, [instance, shape]);
368
+ const shape = options.shape;
369
+ if (shape) {
370
+ instance.setShape(shape);
371
+ }
372
+ }, [instance, options]);
323
373
  useEffect(() => {
324
- if (!instance || !title)
374
+ if (!instance)
325
375
  return;
326
- instance.setTitle(title);
327
- }, [instance, title]);
376
+ const title = options.title;
377
+ if (title) {
378
+ instance.setTitle(title);
379
+ }
380
+ }, [instance, options]);
328
381
  useEffect(() => {
329
382
  if (!instance)
330
383
  return;
331
- instance.setVisible(visible);
332
- }, [instance, visible]);
384
+ const visible = options.visible;
385
+ instance.setVisible(visible ?? true);
386
+ }, [instance, options]);
333
387
  const handlersRef = useRef({});
334
388
  useEffect(() => {
335
389
  const next = {};
336
- Object.keys(EVENT_TO_PROP).forEach((eventKey) => {
337
- const propKey = EVENT_TO_PROP[eventKey];
390
+ Object.keys(EVENT_TO_PROP$1).forEach((eventKey) => {
391
+ const propKey = EVENT_TO_PROP$1[eventKey];
338
392
  const fn = eventProps[propKey];
339
393
  if (typeof fn === "function")
340
394
  next[eventKey] = fn;
@@ -345,7 +399,7 @@ const Marker = forwardRef(({ position, zIndex, animation, clickable = false, cur
345
399
  if (!instance)
346
400
  return;
347
401
  const disposers = [];
348
- Object.keys(EVENT_TO_PROP).forEach((eventKey) => {
402
+ Object.keys(EVENT_TO_PROP$1).forEach((eventKey) => {
349
403
  const listener = naver.maps.Event.addListener(instance, eventKey, (...args) => {
350
404
  handlersRef.current[eventKey]?.(...args);
351
405
  });
@@ -403,10 +457,11 @@ const createCustomOverlayClass = () => {
403
457
  const projection = this.getProjection();
404
458
  const pixelPosition = projection.fromCoordToOffset(new naver.maps.LatLng(this.getPosition()));
405
459
  this._element.style.position = "absolute";
406
- this._element.style.zIndex = this.zIndex.toString();
460
+ this._element.style.zIndex = this.zIndex?.toString() ?? "auto";
407
461
  this._element.style.left = `${pixelPosition.x}px`;
408
462
  this._element.style.top = `${pixelPosition.y}px`;
409
- this._element.style.transform = anchorStyleTransformMap[this.anchor];
463
+ this._element.style.transform =
464
+ anchorStyleTransformMap[this.anchor ?? "bottom-center"];
410
465
  }
411
466
  destroy() {
412
467
  this._element.remove();
@@ -493,50 +548,77 @@ const Polygon = ({ onClick = () => { }, onMouseEnter = () => { }, ...options })
493
548
  return null;
494
549
  };
495
550
 
496
- const Polyline = ({ onClick, onMouseEnter = () => { }, ...options }) => {
551
+ /* eslint-disable react-hooks/exhaustive-deps */
552
+ const EVENT_TO_PROP = {
553
+ click: "onClick",
554
+ dblclick: "onDblclick",
555
+ rightclick: "onRightclick",
556
+ mousedown: "onMouseDown",
557
+ mouseup: "onMouseUp",
558
+ mouseover: "onMouseOver",
559
+ mouseout: "onMouseOut",
560
+ mouseenter: "onMouseEnter",
561
+ mouseleave: "onMouseLeave",
562
+ };
563
+ const Polyline = forwardRef((props, ref) => {
497
564
  const { current: map } = useMap();
498
- const [instance, setInstance] = useState(null);
499
- const callbacksRef = useRef({
500
- click: onClick,
565
+ const [instance, setInstance] = useState();
566
+ const eventProps = {};
567
+ const options = {};
568
+ Object.keys(props).forEach((key) => {
569
+ const propKey = key;
570
+ if (Object.values(EVENT_TO_PROP).includes(propKey)) {
571
+ const value = props[propKey];
572
+ if (value !== undefined) {
573
+ eventProps[propKey] = value;
574
+ }
575
+ }
576
+ else {
577
+ const value = props[key];
578
+ if (value !== undefined) {
579
+ options[key] = value;
580
+ }
581
+ }
501
582
  });
502
583
  useEffect(() => {
503
- callbacksRef.current = {
504
- click: onClick,
505
- mouseenter: onMouseEnter,
584
+ if (!map)
585
+ return undefined;
586
+ const newInstance = new naver.maps.Polyline(options);
587
+ setInstance(newInstance);
588
+ newInstance.setMap(map);
589
+ return () => {
590
+ if (!map)
591
+ return;
592
+ newInstance.setMap(null);
506
593
  };
507
- }, [onClick, onMouseEnter]);
594
+ }, [map]);
595
+ const handlersRef = useRef({});
596
+ useEffect(() => {
597
+ const next = {};
598
+ Object.keys(EVENT_TO_PROP).forEach((eventKey) => {
599
+ const propKey = EVENT_TO_PROP[eventKey];
600
+ const fn = eventProps[propKey];
601
+ if (typeof fn === "function")
602
+ next[eventKey] = fn;
603
+ });
604
+ handlersRef.current = next;
605
+ }, [eventProps]);
508
606
  useEffect(() => {
509
607
  if (!instance)
510
608
  return;
511
- const handlers = [];
512
- Object.keys(callbacksRef.current).forEach((key) => {
513
- const listener = instance.addListener(key, (...args) => {
514
- const callback = callbacksRef.current[key];
515
- if (callback) {
516
- callback(...args);
517
- }
609
+ const disposers = [];
610
+ Object.keys(EVENT_TO_PROP).forEach((eventKey) => {
611
+ const listener = naver.maps.Event.addListener(instance, eventKey, (...args) => {
612
+ handlersRef.current[eventKey]?.(...args);
518
613
  });
519
- handlers.push(listener);
614
+ disposers.push(() => naver.maps.Event.removeListener(listener));
520
615
  });
521
- return () => {
522
- handlers.forEach((h) => naver.maps.Event.removeListener(h));
523
- };
616
+ return () => disposers.forEach((d) => d());
524
617
  }, [instance]);
525
- useEffect(() => {
526
- if (!map)
527
- return;
528
- const newPoyline = new naver.maps.Polyline(options);
529
- newPoyline.setMap(map);
530
- setInstance(newPoyline);
531
- return () => {
532
- if (!map)
533
- return;
534
- newPoyline.setMap(null);
535
- };
536
- // eslint-disable-next-line react-hooks/exhaustive-deps
537
- }, [map]);
618
+ useImperativeHandle(ref, () => instance, [instance]);
538
619
  return null;
539
- };
620
+ });
621
+ Polyline.displayName = "Polyline";
540
622
 
541
623
  export { Map, MapProvider, Marker, Overlay, Polygon, Polyline, useMap };
542
624
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/components/MapProvider.tsx","../src/utils/scriptLoader.ts","../src/hooks/useScriptLoader.ts","../src/components/Map.tsx","../src/components/Marker.tsx","../src/utils/customOverlay.ts","../src/components/Overlay.tsx","../src/components/Polygon.tsx","../src/components/Polyline.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["_jsx","EVENT_TO_PROP"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/components/MapProvider.tsx","../src/utils/scriptLoader.ts","../src/hooks/useScriptLoader.ts","../src/components/Map.tsx","../src/components/Marker.tsx","../src/utils/customOverlay.ts","../src/components/Overlay.tsx","../src/components/Polygon.tsx","../src/components/Polyline.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["_jsx","EVENT_TO_PROP"],"mappings":"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"}