@react-native-kakao/map 2.2.7 → 3.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.
Files changed (165) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +5 -38
  3. package/RNCKakaoMap.podspec +16 -52
  4. package/android/build.gradle +12 -107
  5. package/android/consumer-rules.pro +2 -0
  6. package/android/src/main/AndroidManifest.xml +3 -1
  7. package/android/src/main/java/net/mjstudio/rnkakao/map/CameraOptions.kt +61 -0
  8. package/android/src/main/java/net/mjstudio/rnkakao/map/KakaoMapModule.kt +131 -0
  9. package/android/src/main/java/net/mjstudio/rnkakao/map/KakaoMapView.kt +1257 -0
  10. package/android/src/main/java/net/mjstudio/rnkakao/map/MapCameraCommands.kt +306 -0
  11. package/android/src/main/java/net/mjstudio/rnkakao/map/MapDimScreen.kt +431 -0
  12. package/android/src/main/java/net/mjstudio/rnkakao/map/MapGui.kt +899 -0
  13. package/android/src/main/java/net/mjstudio/rnkakao/map/MapImageLoader.kt +232 -0
  14. package/android/src/main/java/net/mjstudio/rnkakao/map/MapLabels.kt +1572 -0
  15. package/android/src/main/java/net/mjstudio/rnkakao/map/MapOptions.kt +360 -0
  16. package/android/src/main/java/net/mjstudio/rnkakao/map/MapRoutes.kt +805 -0
  17. package/android/src/main/java/net/mjstudio/rnkakao/map/MapShapes.kt +1096 -0
  18. package/android/src/main/java/net/mjstudio/rnkakao/map/MapUtilities.kt +495 -0
  19. package/expo-module.config.json +5 -0
  20. package/ios/CameraOptions.swift +41 -0
  21. package/ios/KakaoMapModule.swift +204 -0
  22. package/ios/KakaoMapView.swift +1018 -0
  23. package/ios/MapCameraCommands.swift +451 -0
  24. package/ios/MapDimScreen.swift +463 -0
  25. package/ios/MapGui.swift +1099 -0
  26. package/ios/MapImageLoader.swift +177 -0
  27. package/ios/MapLabels.swift +1676 -0
  28. package/ios/MapOptions.swift +374 -0
  29. package/ios/MapRoutes.swift +903 -0
  30. package/ios/MapShapes.swift +1294 -0
  31. package/ios/MapUnits.swift +20 -0
  32. package/ios/MapUtilities.swift +365 -0
  33. package/lib/commonjs/index.js +180 -29
  34. package/lib/commonjs/index.js.map +1 -1
  35. package/lib/commonjs/index.web.js +18 -0
  36. package/lib/commonjs/index.web.js.map +1 -0
  37. package/lib/commonjs/package.json +1 -0
  38. package/lib/commonjs/types-assets.js +2 -0
  39. package/lib/commonjs/types-assets.js.map +1 -0
  40. package/lib/commonjs/types-camera.js +6 -0
  41. package/lib/commonjs/types-camera.js.map +1 -0
  42. package/lib/commonjs/types-dim.js +6 -0
  43. package/lib/commonjs/types-dim.js.map +1 -0
  44. package/lib/commonjs/types-gui.js +6 -0
  45. package/lib/commonjs/types-gui.js.map +1 -0
  46. package/lib/commonjs/types-labels.js +6 -0
  47. package/lib/commonjs/types-labels.js.map +1 -0
  48. package/lib/commonjs/types-routes.js +6 -0
  49. package/lib/commonjs/types-routes.js.map +1 -0
  50. package/lib/commonjs/types-shapes.js +6 -0
  51. package/lib/commonjs/types-shapes.js.map +1 -0
  52. package/lib/commonjs/types-utilities.js +6 -0
  53. package/lib/commonjs/types-utilities.js.map +1 -0
  54. package/lib/commonjs/types.js +6 -0
  55. package/lib/commonjs/types.js.map +1 -0
  56. package/lib/module/index.js +180 -22
  57. package/lib/module/index.js.map +1 -1
  58. package/lib/module/index.web.js +13 -0
  59. package/lib/module/index.web.js.map +1 -0
  60. package/lib/module/types-assets.js +2 -0
  61. package/lib/module/types-assets.js.map +1 -0
  62. package/lib/module/types-camera.js +4 -0
  63. package/lib/module/types-camera.js.map +1 -0
  64. package/lib/module/types-dim.js +4 -0
  65. package/lib/module/types-dim.js.map +1 -0
  66. package/lib/module/types-gui.js +4 -0
  67. package/lib/module/types-gui.js.map +1 -0
  68. package/lib/module/types-labels.js +4 -0
  69. package/lib/module/types-labels.js.map +1 -0
  70. package/lib/module/types-routes.js +4 -0
  71. package/lib/module/types-routes.js.map +1 -0
  72. package/lib/module/types-shapes.js +4 -0
  73. package/lib/module/types-shapes.js.map +1 -0
  74. package/lib/module/types-utilities.js +4 -0
  75. package/lib/module/types-utilities.js.map +1 -0
  76. package/lib/module/types.js +4 -0
  77. package/lib/module/types.js.map +1 -0
  78. package/lib/typescript/src/index.d.ts +59 -9
  79. package/lib/typescript/src/index.d.ts.map +1 -1
  80. package/lib/typescript/src/types-assets.d.ts +9 -0
  81. package/lib/typescript/src/types-assets.d.ts.map +1 -0
  82. package/lib/typescript/src/types-camera.d.ts +123 -0
  83. package/lib/typescript/src/types-camera.d.ts.map +1 -0
  84. package/lib/typescript/src/types-dim.d.ts +54 -0
  85. package/lib/typescript/src/types-dim.d.ts.map +1 -0
  86. package/lib/typescript/src/types-gui.d.ts +189 -0
  87. package/lib/typescript/src/types-gui.d.ts.map +1 -0
  88. package/lib/typescript/src/types-labels.d.ts +246 -0
  89. package/lib/typescript/src/types-labels.d.ts.map +1 -0
  90. package/lib/typescript/src/types-routes.d.ts +162 -0
  91. package/lib/typescript/src/types-routes.d.ts.map +1 -0
  92. package/lib/typescript/src/types-shapes.d.ts +253 -0
  93. package/lib/typescript/src/types-shapes.d.ts.map +1 -0
  94. package/lib/typescript/src/types-utilities.d.ts +130 -0
  95. package/lib/typescript/src/types-utilities.d.ts.map +1 -0
  96. package/lib/typescript/src/types.d.ts +222 -0
  97. package/lib/typescript/src/types.d.ts.map +1 -0
  98. package/package.json +24 -77
  99. package/src/index.tsx +322 -0
  100. package/src/index.web.tsx +46 -0
  101. package/src/types-assets.ts +8 -0
  102. package/src/types-camera.ts +97 -0
  103. package/src/types-dim.ts +54 -0
  104. package/src/types-gui.ts +171 -0
  105. package/src/types-labels.ts +207 -0
  106. package/src/types-routes.ts +118 -0
  107. package/src/types-shapes.ts +244 -0
  108. package/src/types-utilities.ts +115 -0
  109. package/src/types.ts +223 -0
  110. package/android/gradle.properties +0 -1
  111. package/android/src/main/AndroidManifestNew.xml +0 -2
  112. package/android/src/main/java/net/mjstudio/rnkakao/map/RNCKakaoMapModule.kt +0 -25
  113. package/android/src/main/java/net/mjstudio/rnkakao/map/RNCKakaoMapPackage.kt +0 -35
  114. package/android/src/newarch/KakaoMapSpec.kt +0 -7
  115. package/android/src/oldarch/KakaoMapSpec.kt +0 -14
  116. package/ios/Component/Map/RNCKakaoMapView.h +0 -23
  117. package/ios/Component/Map/RNCKakaoMapView.mm +0 -209
  118. package/ios/Component/Map/RNCKakaoMapViewManager.mm +0 -19
  119. package/ios/NativeModule/RNCKakaoMap.h +0 -7
  120. package/ios/NativeModule/RNCKakaoMap.mm +0 -19
  121. package/ios/NativeModule/RNCKakaoMapManager.swift +0 -7
  122. package/ios/Util/Util.h +0 -97
  123. package/lib/commonjs/component/KakaoMapView.js +0 -54
  124. package/lib/commonjs/component/KakaoMapView.js.map +0 -1
  125. package/lib/commonjs/spec/NativeKakaoMap.js +0 -9
  126. package/lib/commonjs/spec/NativeKakaoMap.js.map +0 -1
  127. package/lib/commonjs/spec/RNCKakaoMapViewNativeComponent.js +0 -15
  128. package/lib/commonjs/spec/RNCKakaoMapViewNativeComponent.js.map +0 -1
  129. package/lib/commonjs/type/type.js +0 -2
  130. package/lib/commonjs/type/type.js.map +0 -1
  131. package/lib/commonjs/util/Const.js +0 -14
  132. package/lib/commonjs/util/Const.js.map +0 -1
  133. package/lib/commonjs/util/Util.js +0 -15
  134. package/lib/commonjs/util/Util.js.map +0 -1
  135. package/lib/module/component/KakaoMapView.js +0 -48
  136. package/lib/module/component/KakaoMapView.js.map +0 -1
  137. package/lib/module/spec/NativeKakaoMap.js +0 -3
  138. package/lib/module/spec/NativeKakaoMap.js.map +0 -1
  139. package/lib/module/spec/RNCKakaoMapViewNativeComponent.js +0 -10
  140. package/lib/module/spec/RNCKakaoMapViewNativeComponent.js.map +0 -1
  141. package/lib/module/type/type.js +0 -2
  142. package/lib/module/type/type.js.map +0 -1
  143. package/lib/module/util/Const.js +0 -8
  144. package/lib/module/util/Const.js.map +0 -1
  145. package/lib/module/util/Util.js +0 -9
  146. package/lib/module/util/Util.js.map +0 -1
  147. package/lib/typescript/src/component/KakaoMapView.d.ts +0 -25
  148. package/lib/typescript/src/component/KakaoMapView.d.ts.map +0 -1
  149. package/lib/typescript/src/spec/NativeKakaoMap.d.ts +0 -7
  150. package/lib/typescript/src/spec/NativeKakaoMap.d.ts.map +0 -1
  151. package/lib/typescript/src/spec/RNCKakaoMapViewNativeComponent.d.ts +0 -32
  152. package/lib/typescript/src/spec/RNCKakaoMapViewNativeComponent.d.ts.map +0 -1
  153. package/lib/typescript/src/type/type.d.ts +0 -8
  154. package/lib/typescript/src/type/type.d.ts.map +0 -1
  155. package/lib/typescript/src/util/Const.d.ts +0 -8
  156. package/lib/typescript/src/util/Const.d.ts.map +0 -1
  157. package/lib/typescript/src/util/Util.d.ts +0 -3
  158. package/lib/typescript/src/util/Util.d.ts.map +0 -1
  159. package/src/component/KakaoMapView.tsx +0 -82
  160. package/src/index.ts +0 -43
  161. package/src/spec/NativeKakaoMap.ts +0 -8
  162. package/src/spec/RNCKakaoMapViewNativeComponent.ts +0 -38
  163. package/src/type/type.ts +0 -7
  164. package/src/util/Const.ts +0 -7
  165. package/src/util/Util.ts +0 -11
@@ -0,0 +1,20 @@
1
+ import UIKit
2
+
3
+ enum MapUnits {
4
+ /// Kakao scales SDK pixels by screenScale / 2 before UIKit converts physical pixels to points.
5
+ static var pixelsPerPoint: Double {
6
+ let screenScale = Double(UIScreen.main.scale)
7
+ let renderingScale = screenScale / 2
8
+ return screenScale / renderingScale
9
+ }
10
+
11
+ static func pixels(_ points: Double) -> Double {
12
+ points * pixelsPerPoint
13
+ }
14
+
15
+ static var imageRendererFormat: UIGraphicsImageRendererFormat {
16
+ let format = UIGraphicsImageRendererFormat()
17
+ format.scale = CGFloat(pixelsPerPoint)
18
+ return format
19
+ }
20
+ }
@@ -0,0 +1,365 @@
1
+ import CoreFoundation
2
+ import ExpoModulesCore
3
+ import Foundation
4
+ import KakaoMapsSDK
5
+
6
+ private let utilityUnsupported = "ERR_KAKAO_MAP_UNSUPPORTED_PLATFORM_FEATURE"
7
+ private let utilityDestroyed = "ERR_KAKAO_MAP_VIEW_DESTROYED"
8
+ private let maximumUtilityInteger = Double(Int32.max)
9
+
10
+ final class MapUtilities {
11
+ private weak var map: KakaoMap?
12
+ private weak var controller: KMController?
13
+ private let viewName: String
14
+ private var isDisposed = false
15
+
16
+ init(map: KakaoMap, controller: KMController) {
17
+ self.map = map
18
+ self.controller = controller
19
+ viewName = map.viewName()
20
+ }
21
+
22
+ func command(_ command: [String: Any]) throws -> [String: Any] {
23
+ try requireAlive()
24
+ switch try command.utilityString("type") {
25
+ case "getCapabilities":
26
+ return capabilities()
27
+ case "getState":
28
+ return try state()
29
+ case "setPoiVisible":
30
+ try requireMap().setPoiEnabled(command.utilityBool("visible"))
31
+ return none()
32
+ case "setPoiCategoryVisible":
33
+ try requireMap().setLabelCategoryVisible(
34
+ category: command.utilityCategory("category"),
35
+ visible: command.utilityBool("visible")
36
+ )
37
+ return none()
38
+ case "setPoiCategoryMaxCount":
39
+ try requireMap().setMaxCountPerTile(
40
+ category: command.utilityCategory("category"),
41
+ count: UInt(command.utilityInteger("count"))
42
+ )
43
+ return none()
44
+ case "resetPoiCategoryMaxCount":
45
+ try requireMap().resetMaxCountPerTile(category: command.utilityCategory("category"))
46
+ return none()
47
+ case "setTapInterval":
48
+ try requireMap().tapInterval = UInt(command.utilityInteger("milliseconds"))
49
+ return none()
50
+ case "setCameraAnimationEnabled":
51
+ try requireMap().cameraAnimationEnabled = command.utilityBool("enabled")
52
+ return none()
53
+ case "setEnabled":
54
+ try requireMap().isEnabled = command.utilityBool("enabled")
55
+ return none()
56
+ case "setVisible":
57
+ throw unsupported("The Kakao Maps iOS SDK does not expose map visibility.")
58
+ case "setKeepLevelOnResize":
59
+ try requireMap().keepLevelOnResize = command.utilityBool("enabled")
60
+ return none()
61
+ case "getViewport":
62
+ return try viewport()
63
+ case "setViewport":
64
+ throw unsupported("The Kakao Maps iOS SDK does not expose a custom viewport setter.")
65
+ case "refresh":
66
+ try requireMap().refresh()
67
+ return none()
68
+ case "registerFont":
69
+ throw unsupported("The Kakao Maps iOS SDK does not register compiled font resources.")
70
+ case "getVersion":
71
+ return try version(command.utilityString("component"))
72
+ case "convertCoordinate":
73
+ return try convert(command)
74
+ case "clearCache":
75
+ try clearCache(command.utilityString("kind"))
76
+ return none()
77
+ default:
78
+ throw invalidUtility("Unknown map utility command.")
79
+ }
80
+ }
81
+
82
+ func dispose() {
83
+ isDisposed = true
84
+ map = nil
85
+ controller = nil
86
+ }
87
+
88
+ func requestPoiState(_ promise: Promise) {
89
+ do {
90
+ try requireAlive()
91
+ promise
92
+ .reject(
93
+ unsupported("The Kakao Maps iOS SDK does not expose an asynchronous POI-state query.")
94
+ )
95
+ } catch {
96
+ promise.reject(error)
97
+ }
98
+ }
99
+
100
+ private func capabilities() -> [String: Any] {
101
+ [
102
+ "type": "capabilities",
103
+ "poi": [
104
+ "visibility": true,
105
+ "visibilityReadable": false,
106
+ "categoryVisibility": true,
107
+ "categoryMaxCount": true,
108
+ "stateRequest": false,
109
+ "categories": utilityCategoryNames
110
+ ],
111
+ "settings": [
112
+ "tapInterval": true,
113
+ "cameraAnimationEnabled": true,
114
+ "cameraAnimationEnabledReadable": true,
115
+ "enabled": true,
116
+ "visible": false,
117
+ "keepLevelOnResize": true,
118
+ "refresh": true,
119
+ "focusedReadable": true
120
+ ],
121
+ "viewport": ["readable": true, "writable": false],
122
+ "fontRegistration": false,
123
+ "versionComponents": ["sdk"],
124
+ "coordinateSystems": utilityCoordinateSystems,
125
+ "coordinateConversions": utilityConversions(systems: utilityCoordinateSystems),
126
+ "cacheKinds": ["disk", "memory", "viewInfo", "all"]
127
+ ]
128
+ }
129
+
130
+ private func state() throws -> [String: Any] {
131
+ let map = try requireMap()
132
+ return [
133
+ "type": "state",
134
+ "tapInterval": map.tapInterval,
135
+ "cameraAnimationEnabled": map.cameraAnimationEnabled,
136
+ "enabled": map.isEnabled,
137
+ "keepLevelOnResize": map.keepLevelOnResize,
138
+ "focused": map.isFocused
139
+ ]
140
+ }
141
+
142
+ private func viewport() throws -> [String: Any] {
143
+ let rect = try requireMap().viewRect
144
+ return [
145
+ "type": "viewport",
146
+ "viewport": [
147
+ "x": rect.origin.x,
148
+ "y": rect.origin.y,
149
+ "width": rect.width,
150
+ "height": rect.height
151
+ ]
152
+ ]
153
+ }
154
+
155
+ private func version(_ component: String) throws -> [String: Any] {
156
+ guard component == "sdk" else {
157
+ if component == "engine" {
158
+ throw unsupported("The Kakao Maps iOS SDK does not expose its engine version.")
159
+ }
160
+ throw invalidUtility("Unknown map version component.")
161
+ }
162
+ guard let value = Bundle(for: KMController.self)
163
+ .object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String,
164
+ !value.isEmpty
165
+ else {
166
+ throw KakaoMapException(
167
+ "ERR_KAKAO_MAP_VERSION_UNAVAILABLE",
168
+ "The Kakao Maps SDK version is unavailable."
169
+ )
170
+ }
171
+ return ["type": "version", "component": component, "version": value]
172
+ }
173
+
174
+ private func convert(_ command: [String: Any]) throws -> [String: Any] {
175
+ let source = try command.utilityString("from")
176
+ let destination = try command.utilityString("to")
177
+ guard utilityCoordinateSystems.contains(source), utilityCoordinateSystems.contains(destination)
178
+ else {
179
+ throw invalidUtility("Unknown coordinate system.")
180
+ }
181
+ let value = try command.utilityObject("coordinate").utilityCoordinate(system: source)
182
+ let converted: (Double, Double)
183
+ switch (source, destination) {
184
+ case let (source, destination) where source == destination:
185
+ converted = value
186
+ case ("wgs84", "wtm"):
187
+ converted = cartesian(MapCoordConverter.fromWGS84ToWTM(wgs: geo(value)))
188
+ case ("wgs84", "wcong"):
189
+ converted = cartesian(MapCoordConverter.fromWGS84ToWCong(wgs: geo(value)))
190
+ case ("wgs84", "kakao"):
191
+ converted = cartesian(MapCoordConverter.fromWGS84ToKakao(wgs: geo(value)))
192
+ case ("wtm", "wgs84"):
193
+ converted = geographic(MapCoordConverter.fromWTMToWGS84(wtm: cart(value)))
194
+ case ("wtm", "wcong"):
195
+ converted = cartesian(MapCoordConverter.fromWTMToWCong(wtm: cart(value)))
196
+ case ("wtm", "kakao"):
197
+ converted = cartesian(MapCoordConverter.fromWTMToKakao(wtm: cart(value)))
198
+ case ("wcong", "wgs84"):
199
+ converted = geographic(MapCoordConverter.fromWCongToWGS84(wcong: cart(value)))
200
+ case ("wcong", "wtm"):
201
+ converted = cartesian(MapCoordConverter.fromWCongToWTM(wcong: cart(value)))
202
+ case ("wcong", "kakao"):
203
+ converted = cartesian(MapCoordConverter.fromWCongToKakao(wcong: cart(value)))
204
+ case ("kakao", "wgs84"):
205
+ converted = geographic(MapCoordConverter.fromKakaoToWGS84(kakao: cart(value)))
206
+ case ("kakao", "wtm"):
207
+ converted = cartesian(MapCoordConverter.fromKakaoToWTM(kakao: cart(value)))
208
+ case ("kakao", "wcong"):
209
+ converted = cartesian(MapCoordConverter.fromKakaoToWCong(kakao: cart(value)))
210
+ default:
211
+ throw unsupported("The requested coordinate conversion is unavailable on iOS.")
212
+ }
213
+ guard converted.0.isFinite, converted.1.isFinite else {
214
+ throw KakaoMapException(
215
+ "ERR_KAKAO_MAP_COORDINATE_CONVERSION_FAILED",
216
+ "Kakao Maps returned an invalid coordinate."
217
+ )
218
+ }
219
+ return [
220
+ "type": "coordinate",
221
+ "system": destination,
222
+ "coordinate": ["x": converted.0, "y": converted.1]
223
+ ]
224
+ }
225
+
226
+ private func clearCache(_ kind: String) throws {
227
+ guard let controller else { throw destroyed() }
228
+ switch kind {
229
+ case "disk":
230
+ controller.clearDiskCache()
231
+ case "memory":
232
+ controller.clearMemoryCache(viewName)
233
+ case "viewInfo":
234
+ controller.clearViewInfoCaches()
235
+ case "all":
236
+ controller.clearMemoryCache(viewName)
237
+ controller.clearViewInfoCaches()
238
+ controller.clearDiskCache()
239
+ default:
240
+ throw invalidUtility("Unknown map cache kind.")
241
+ }
242
+ }
243
+
244
+ private func requireAlive() throws {
245
+ if isDisposed {
246
+ throw destroyed()
247
+ }
248
+ }
249
+
250
+ private func requireMap() throws -> KakaoMap {
251
+ guard !isDisposed, let map else { throw destroyed() }
252
+ return map
253
+ }
254
+ }
255
+
256
+ private let utilityCoordinateSystems = ["wgs84", "wtm", "wcong", "kakao"]
257
+
258
+ private let utilityCategoryNames = [
259
+ "policyCategory", "address", "district", "busStop", "railroadPlatform",
260
+ "railroadEntrance", "railroadLine", "brand", "place", "climb", "climbWave", "road",
261
+ "roadNumber", "roadInfo", "facilities", "publicFacilities", "apartNumber", "apartDetail",
262
+ "houseNumber", "land", "indoor", "indoorPlace", "detailCategory"
263
+ ]
264
+
265
+ private let utilityCategoryValues = Dictionary(
266
+ uniqueKeysWithValues: utilityCategoryNames.enumerated().map { index, name in
267
+ (name, index == utilityCategoryNames.count - 1 ? 1000 : index)
268
+ }
269
+ )
270
+
271
+ private func utilityConversions(systems: [String]) -> [String] {
272
+ systems.flatMap { source in systems.map { "\(source):\($0)" } }
273
+ }
274
+
275
+ private func geo(_ value: (Double, Double)) -> GeoCoordinate {
276
+ GeoCoordinate(longitude: value.0, latitude: value.1)
277
+ }
278
+
279
+ private func cart(_ value: (Double, Double)) -> CartesianCoordinate {
280
+ CartesianCoordinate(x: value.0, y: value.1)
281
+ }
282
+
283
+ private func geographic(_ value: GeoCoordinate) -> (Double, Double) {
284
+ (value.longitude, value.latitude)
285
+ }
286
+
287
+ private func cartesian(_ value: CartesianCoordinate) -> (Double, Double) {
288
+ (value.x, value.y)
289
+ }
290
+
291
+ private func none() -> [String: Any] {
292
+ ["type": "none"]
293
+ }
294
+
295
+ private func invalidUtility(_ message: String) -> KakaoMapException {
296
+ KakaoMapException(invalidCameraArgument, message)
297
+ }
298
+
299
+ private func unsupported(_ message: String) -> KakaoMapException {
300
+ KakaoMapException(utilityUnsupported, message)
301
+ }
302
+
303
+ private func destroyed() -> KakaoMapException {
304
+ KakaoMapException(utilityDestroyed, "The map view was destroyed.")
305
+ }
306
+
307
+ private extension [String: Any] {
308
+ func utilityString(_ key: String) throws -> String {
309
+ guard let value = self[key] as? String, !value.isEmpty else {
310
+ throw invalidUtility("\(key) must be a non-empty string.")
311
+ }
312
+ return value
313
+ }
314
+
315
+ func utilityBool(_ key: String) throws -> Bool {
316
+ guard let value = self[key] as? NSNumber, CFGetTypeID(value) == CFBooleanGetTypeID() else {
317
+ throw invalidUtility("\(key) must be a boolean.")
318
+ }
319
+ return value.boolValue
320
+ }
321
+
322
+ func utilityInteger(_ key: String) throws -> Int {
323
+ guard let value = self[key] as? NSNumber, CFGetTypeID(value) != CFBooleanGetTypeID() else {
324
+ throw invalidUtility("\(key) must be an integer.")
325
+ }
326
+ let number = value.doubleValue
327
+ guard number.isFinite, number.rounded() == number,
328
+ (0 ... maximumUtilityInteger).contains(number)
329
+ else {
330
+ throw invalidUtility("\(key) must be an integer between 0 and \(Int32.max).")
331
+ }
332
+ return Int(number)
333
+ }
334
+
335
+ func utilityObject(_ key: String) throws -> [String: Any] {
336
+ guard let value = self[key] as? [String: Any] else {
337
+ throw invalidUtility("\(key) must be an object.")
338
+ }
339
+ return value
340
+ }
341
+
342
+ func utilityCategory(_ key: String) throws -> LabelCategory {
343
+ let name = try utilityString(key)
344
+ guard let value = utilityCategoryValues[name],
345
+ let category = LabelCategory(rawValue: value)
346
+ else {
347
+ throw invalidUtility("Unknown POI category.")
348
+ }
349
+ return category
350
+ }
351
+
352
+ func utilityCoordinate(system: String) throws -> (Double, Double) {
353
+ guard let x = self["x"] as? NSNumber, let y = self["y"] as? NSNumber,
354
+ CFGetTypeID(x) != CFBooleanGetTypeID(), CFGetTypeID(y) != CFBooleanGetTypeID(),
355
+ x.doubleValue.isFinite, y.doubleValue.isFinite
356
+ else {
357
+ throw invalidUtility("Coordinate x and y must be finite numbers.")
358
+ }
359
+ let value = (x.doubleValue, y.doubleValue)
360
+ if system == "wgs84", !((-180 ... 180).contains(value.0) && (-90 ... 90).contains(value.1)) {
361
+ throw invalidUtility("WGS84 x must be longitude and y must be latitude.")
362
+ }
363
+ return value
364
+ }
365
+ }
@@ -3,36 +3,187 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.KakaoMap = void 0;
7
- Object.defineProperty(exports, "KakaoMapView", {
8
- enumerable: true,
9
- get: function () {
10
- return _KakaoMapView.KakaoMapView;
11
- }
12
- });
13
- exports.default = void 0;
14
- var _reactNative = require("react-native");
15
- var _KakaoMapView = require("./component/KakaoMapView");
16
- const LINKING_ERROR = "The package '@react-native-kakao/map' doesn't seem to be linked. Make sure: \n\n" + _reactNative.Platform.select({
17
- ios: "- You have run 'pod install'\n",
18
- default: ''
19
- }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
20
- const isTurboModuleEnabled = global.__turboModuleProxy != null;
21
- if (!isTurboModuleEnabled) {
22
- throw new Error('The package @react-native-kakao/map only supports fabric');
6
+ exports.KakaoMapView = void 0;
7
+ exports.initializeKakaoMapSDK = initializeKakaoMapSDK;
8
+ var _react = require("react");
9
+ var _expo = require("expo");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ const moduleName = 'RNCKakaoMap';
12
+ const NativeView = (0, _expo.requireNativeView)(moduleName);
13
+ function initializeKakaoMapSDK(nativeAppKey) {
14
+ return (0, _expo.requireNativeModule)(moduleName).initialize(nativeAppKey);
23
15
  }
24
- const Module = require('./spec/NativeKakaoMap').default;
25
- const Native = Module ? Module : new Proxy({}, {
26
- get() {
27
- throw new Error(LINKING_ERROR);
16
+ const KakaoMapView = exports.KakaoMapView = /*#__PURE__*/(0, _react.forwardRef)(function KakaoMapView({
17
+ onMapReady,
18
+ onError,
19
+ onCameraMoveStart,
20
+ onCameraIdle,
21
+ onMapClick,
22
+ onMapLongClick,
23
+ onTerrainClick,
24
+ onViewportClick,
25
+ onVisibilityChanged,
26
+ onFocusChanged,
27
+ onPoiClick,
28
+ onCompassClick,
29
+ onMapTypeChanged,
30
+ onPaddingChanged,
31
+ onViewportChanged,
32
+ onLabelClick,
33
+ onLabelAnimationStopped,
34
+ onLabelsChanged,
35
+ onShapeAnimationStop,
36
+ onShapesChanged,
37
+ onRoutesChanged,
38
+ onRouteProgress,
39
+ onRouteAnimationStop,
40
+ onGuiEvent,
41
+ onDimScreenEvent,
42
+ onCameraOperation,
43
+ ...props
44
+ }, ref) {
45
+ const nativeRef = (0, _react.useRef)(null);
46
+ (0, _react.useImperativeHandle)(ref, () => ({
47
+ async moveCamera(camera, options) {
48
+ await getView().moveCamera(camera, options?.duration ?? 0);
49
+ },
50
+ async getCamera() {
51
+ return getView().getCamera();
52
+ },
53
+ async updateCamera(update, options) {
54
+ await getView().updateCamera(update, options?.duration ?? 0);
55
+ },
56
+ async getMapInfo() {
57
+ return getView().getMapInfo();
58
+ },
59
+ async screenToCoordinate(point) {
60
+ return getView().screenToCoordinate(point);
61
+ },
62
+ async coordinateToScreen(coordinate) {
63
+ return getView().coordinateToScreen(coordinate);
64
+ },
65
+ async clearCache() {
66
+ await getView().clearCache();
67
+ },
68
+ async runLabelCommand(command) {
69
+ await getView().runLabelCommand(command);
70
+ },
71
+ async getLabelCapabilities() {
72
+ return getView().getLabelCapabilities();
73
+ },
74
+ async getLabelState() {
75
+ return getView().getLabelState();
76
+ },
77
+ async applyShapes(scene) {
78
+ return getView().applyShapes(scene);
79
+ },
80
+ async executeShapeCommand(command) {
81
+ return getView().executeShapeCommand(command);
82
+ },
83
+ async applyRoutes(scene) {
84
+ return getView().applyRoutes(scene);
85
+ },
86
+ async executeRouteCommand(command) {
87
+ return getView().executeRouteCommand(command);
88
+ },
89
+ async applyGui(scene) {
90
+ await getView().applyGui(scene);
91
+ },
92
+ async showInfoWindow(id, options) {
93
+ await getView().showInfoWindow(id, options?.autoMove ?? false, options?.duration ?? null);
94
+ },
95
+ async hideInfoWindow(id) {
96
+ await getView().hideInfoWindow(id);
97
+ },
98
+ async moveInfoWindow(id, position, options) {
99
+ await getView().moveInfoWindow(id, position, options?.duration ?? 0);
100
+ },
101
+ async showWidget(id) {
102
+ await getView().showWidget(id);
103
+ },
104
+ async hideWidget(id) {
105
+ await getView().hideWidget(id);
106
+ },
107
+ async positionWidget(id, position) {
108
+ await getView().positionWidget(id, position);
109
+ },
110
+ async rotateWidget(id, rotation) {
111
+ await getView().rotateWidget(id, rotation);
112
+ },
113
+ async startGuiAnimation(id) {
114
+ await getView().startGuiAnimation(id);
115
+ },
116
+ async stopGuiAnimation(id) {
117
+ await getView().stopGuiAnimation(id);
118
+ },
119
+ async controlAnimatedImage(ownerType, ownerId, componentId, action) {
120
+ await getView().controlAnimatedImage(ownerType, ownerId, componentId, action);
121
+ },
122
+ async getGuiStatus() {
123
+ return getView().getGuiStatus();
124
+ },
125
+ async applyDimScreen(options) {
126
+ await getView().applyDimScreen(options);
127
+ },
128
+ async setDimHighlightVisible(id, visible) {
129
+ await getView().setDimHighlightVisible(id, visible);
130
+ },
131
+ async startDimAnimation(id) {
132
+ await getView().startDimAnimation(id);
133
+ },
134
+ async stopDimAnimation(id) {
135
+ await getView().stopDimAnimation(id);
136
+ },
137
+ async getDimScreenStatus() {
138
+ return getView().getDimScreenStatus();
139
+ },
140
+ async executeUtilityCommand(command) {
141
+ return getView().executeUtilityCommand(command);
142
+ },
143
+ async requestPoiState() {
144
+ return getView().requestPoiState();
145
+ },
146
+ async executeCameraCommand(command) {
147
+ return getView().executeCameraCommand(command);
148
+ }
149
+ }), []);
150
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(NativeView, {
151
+ ...props,
152
+ ref: nativeRef,
153
+ onMapReady: () => onMapReady?.(),
154
+ onError: event => onError?.(event.nativeEvent),
155
+ onCameraMoveStart: event => onCameraMoveStart?.(event.nativeEvent),
156
+ onCameraIdle: event => onCameraIdle?.(event.nativeEvent),
157
+ onMapClick: event => onMapClick?.(event.nativeEvent),
158
+ onMapLongClick: event => onMapLongClick?.(event.nativeEvent),
159
+ onTerrainClick: event => onTerrainClick?.(event.nativeEvent),
160
+ onViewportClick: event => onViewportClick?.(event.nativeEvent),
161
+ onVisibilityChanged: event => onVisibilityChanged?.(event.nativeEvent),
162
+ onFocusChanged: event => onFocusChanged?.(event.nativeEvent),
163
+ onPoiClick: event => onPoiClick?.(event.nativeEvent),
164
+ onCompassClick: () => onCompassClick?.(),
165
+ onMapTypeChanged: event => onMapTypeChanged?.(event.nativeEvent),
166
+ onPaddingChanged: event => onPaddingChanged?.(event.nativeEvent),
167
+ onViewportChanged: event => onViewportChanged?.(event.nativeEvent),
168
+ onLabelClick: event => onLabelClick?.(event.nativeEvent),
169
+ onLabelAnimationStopped: event => onLabelAnimationStopped?.(event.nativeEvent),
170
+ onLabelsChanged: event => onLabelsChanged?.(event.nativeEvent),
171
+ onShapeAnimationStop: event => onShapeAnimationStop?.(event.nativeEvent),
172
+ onShapesChanged: event => onShapesChanged?.(event.nativeEvent),
173
+ onRoutesChanged: event => onRoutesChanged?.(event.nativeEvent),
174
+ onRouteProgress: event => onRouteProgress?.(event.nativeEvent),
175
+ onRouteAnimationStop: event => onRouteAnimationStop?.(event.nativeEvent),
176
+ onGuiEvent: event => onGuiEvent?.(event.nativeEvent),
177
+ onDimScreenEvent: event => onDimScreenEvent?.(event.nativeEvent),
178
+ onCameraOperation: event => onCameraOperation?.(event.nativeEvent)
179
+ });
180
+ function getView() {
181
+ if (!nativeRef.current) {
182
+ throw Object.assign(new Error('The map view is not mounted.'), {
183
+ code: 'ERR_KAKAO_MAP_VIEW_DESTROYED'
184
+ });
185
+ }
186
+ return nativeRef.current;
28
187
  }
29
188
  });
30
- // todo remove
31
- console.log(Native);
32
- const KakaoMap = exports.KakaoMap = {
33
- initializeKakaoMapSDK: async appKey => {
34
- return await Native.initializeKakaoMapSDK(appKey);
35
- }
36
- };
37
- var _default = exports.default = _KakaoMapView.KakaoMapView;
38
189
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_KakaoMapView","LINKING_ERROR","Platform","select","ios","default","isTurboModuleEnabled","global","__turboModuleProxy","Error","Module","Native","Proxy","get","console","log","KakaoMap","exports","initializeKakaoMapSDK","appKey","_default","KakaoMapView"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGA,IAAAC,aAAA,GAAAD,OAAA;AAGA,MAAME,aAAa,GACjB,kFAAkF,GAClFC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,oBAAoB,GAAGC,MAAM,CAACC,kBAAkB,IAAI,IAAI;AAE9D,IAAI,CAACF,oBAAoB,EAAE;EACzB,MAAM,IAAIG,KAAK,CAAC,0DAA0D,CAAC;AAC7E;AAEA,MAAMC,MAAM,GAAGX,OAAO,CAAC,uBAAuB,CAAC,CAACM,OAAO;AAEvD,MAAMM,MAAY,GAAGD,MAAM,GACvBA,MAAM,GACN,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIJ,KAAK,CAACR,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AACL;AACAa,OAAO,CAACC,GAAG,CAACJ,MAAM,CAAC;AAEnB,MAAMK,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACfE,qBAAqB,EAAE,MAAOC,MAAc,IAAK;IAC/C,OAAO,MAAMR,MAAM,CAACO,qBAAqB,CAACC,MAAM,CAAC;EACnD;AACF,CAAC;AAAC,IAAAC,QAAA,GAAAH,OAAA,CAAAZ,OAAA,GACagB,0BAAY","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_expo","_jsxRuntime","moduleName","NativeView","requireNativeView","initializeKakaoMapSDK","nativeAppKey","requireNativeModule","initialize","KakaoMapView","exports","forwardRef","onMapReady","onError","onCameraMoveStart","onCameraIdle","onMapClick","onMapLongClick","onTerrainClick","onViewportClick","onVisibilityChanged","onFocusChanged","onPoiClick","onCompassClick","onMapTypeChanged","onPaddingChanged","onViewportChanged","onLabelClick","onLabelAnimationStopped","onLabelsChanged","onShapeAnimationStop","onShapesChanged","onRoutesChanged","onRouteProgress","onRouteAnimationStop","onGuiEvent","onDimScreenEvent","onCameraOperation","props","ref","nativeRef","useRef","useImperativeHandle","moveCamera","camera","options","getView","duration","getCamera","updateCamera","update","getMapInfo","screenToCoordinate","point","coordinateToScreen","coordinate","clearCache","runLabelCommand","command","getLabelCapabilities","getLabelState","applyShapes","scene","executeShapeCommand","applyRoutes","executeRouteCommand","applyGui","showInfoWindow","id","autoMove","hideInfoWindow","moveInfoWindow","position","showWidget","hideWidget","positionWidget","rotateWidget","rotation","startGuiAnimation","stopGuiAnimation","controlAnimatedImage","ownerType","ownerId","componentId","action","getGuiStatus","applyDimScreen","setDimHighlightVisible","visible","startDimAnimation","stopDimAnimation","getDimScreenStatus","executeUtilityCommand","requestPoiState","executeCameraCommand","jsx","event","nativeEvent","current","Object","assign","Error","code"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.KakaoMapView = void 0;
7
+ exports.initializeKakaoMapSDK = initializeKakaoMapSDK;
8
+ var _react = require("react");
9
+ const unsupported = () => Object.assign(new Error('KakaoMapView supports Android and iOS only.'), {
10
+ code: 'ERR_KAKAO_MAP_UNSUPPORTED_PLATFORM'
11
+ });
12
+ async function initializeKakaoMapSDK(_nativeAppKey) {
13
+ throw unsupported();
14
+ }
15
+ const KakaoMapView = exports.KakaoMapView = /*#__PURE__*/(0, _react.forwardRef)(function KakaoMapView() {
16
+ throw unsupported();
17
+ });
18
+ //# sourceMappingURL=index.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","unsupported","Object","assign","Error","code","initializeKakaoMapSDK","_nativeAppKey","KakaoMapView","exports","forwardRef"],"sourceRoot":"../../src","sources":["index.web.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAmCA,MAAMC,WAAW,GAAGA,CAAA,KAClBC,MAAM,CAACC,MAAM,CAAC,IAAIC,KAAK,CAAC,6CAA6C,CAAC,EAAE;EACtEC,IAAI,EAAE;AACR,CAAC,CAAC;AAEG,eAAeC,qBAAqBA,CAACC,aAAqB,EAAiB;EAChF,MAAMN,WAAW,CAAC,CAAC;AACrB;AACO,MAAMO,YAAY,GAAAC,OAAA,CAAAD,YAAA,gBAAG,IAAAE,iBAAU,EAAqC,SAASF,YAAYA,CAAA,EAAG;EACjG,MAAMP,WAAW,CAAC,CAAC;AACrB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types-assets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types-assets.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types-camera.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types-camera.ts"],"mappings":"","ignoreList":[]}