expo-gaode-map 2.0.0-alpha.2 → 2.0.0-alpha.3
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/build/ExpoGaodeMap.types.d.ts +3 -6
- package/build/ExpoGaodeMap.types.d.ts.map +1 -1
- package/build/ExpoGaodeMap.types.js +4 -2
- package/build/ExpoGaodeMap.types.js.map +1 -1
- package/build/ExpoGaodeMapModule.d.ts +10 -1
- package/build/ExpoGaodeMapModule.d.ts.map +1 -1
- package/build/ExpoGaodeMapModule.js +20 -1
- package/build/ExpoGaodeMapModule.js.map +1 -1
- package/build/ExpoGaodeMapView.d.ts.map +1 -1
- package/build/ExpoGaodeMapView.js.map +1 -1
- package/build/types/common.types.d.ts +0 -25
- package/build/types/common.types.d.ts.map +1 -1
- package/build/types/common.types.js.map +1 -1
- package/build/types/index.d.ts +2 -3
- package/build/types/index.d.ts.map +1 -1
- package/build/types/index.js.map +1 -1
- package/build/types/map-view.types.d.ts +17 -0
- package/build/types/map-view.types.d.ts.map +1 -1
- package/build/types/map-view.types.js.map +1 -1
- package/package.json +1 -1
- package/src/ExpoGaodeMap.types.ts +4 -42
- package/src/ExpoGaodeMapModule.ts +34 -1
- package/src/ExpoGaodeMapView.tsx +0 -1
- package/src/types/common.types.ts +0 -30
- package/src/types/index.ts +1 -11
- package/src/types/map-view.types.ts +22 -0
- package/build/types/sdk.types.d.ts +0 -113
- package/build/types/sdk.types.d.ts.map +0 -1
- package/build/types/sdk.types.js +0 -6
- package/build/types/sdk.types.js.map +0 -1
- package/src/types/sdk.types.ts +0 -128
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 高德地图 Expo 模块类型定义
|
|
3
|
+
*
|
|
4
|
+
* 此文件定义了 Expo 模块专用的类型,包括事件类型等
|
|
5
|
+
* 其他通用类型请从 './types' 导入
|
|
3
6
|
*/
|
|
4
7
|
import type { Coordinates, ReGeocode } from './types';
|
|
5
8
|
export * from './types';
|
|
6
|
-
export type { LatLng, Point, CameraPosition, LatLngBounds, MapPoi, MapViewProps, CameraEvent, Coordinates, ReGeocode, LocationOptions, LocationListener, MarkerProps, PolylineProps, PolygonProps, CircleProps, HeatMapProps, MultiPointProps, ClusterProps, } from './types';
|
|
7
|
-
export { MapType, LocationMode, LocationAccuracy, CoordinateType, } from './types';
|
|
8
9
|
/**
|
|
9
10
|
* Expo 模块事件类型
|
|
10
11
|
* 定义了原生模块可以触发的事件
|
|
@@ -38,8 +39,4 @@ export type ExpoGaodeMapModuleEvents = {
|
|
|
38
39
|
timestamp: number;
|
|
39
40
|
}) => void;
|
|
40
41
|
};
|
|
41
|
-
/**
|
|
42
|
-
* Expo 地图视图属性(用于主视图组件)
|
|
43
|
-
*/
|
|
44
|
-
export type { MapViewProps as ExpoGaodeMapViewProps } from './types';
|
|
45
42
|
//# sourceMappingURL=ExpoGaodeMap.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMap.types.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMap.types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMap.types.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMap.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGtD,cAAc,SAAS,CAAC;AAExB;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC;IAE9D;;;;OAIG;IACH,eAAe,EAAE,CAAC,OAAO,EAAE;QACzB,uBAAuB;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,uBAAuB;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW;QACX,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc;QACd,CAAC,EAAE,MAAM,CAAC;QACV,cAAc;QACd,CAAC,EAAE,MAAM,CAAC;QACV,cAAc;QACd,CAAC,EAAE,MAAM,CAAC;QACV,UAAU;QACV,SAAS,EAAE,MAAM,CAAC;KACnB,KAAK,IAAI,CAAC;CACZ,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 高德地图 Expo 模块类型定义
|
|
3
|
+
*
|
|
4
|
+
* 此文件定义了 Expo 模块专用的类型,包括事件类型等
|
|
5
|
+
* 其他通用类型请从 './types' 导入
|
|
3
6
|
*/
|
|
4
|
-
//
|
|
7
|
+
// 重新导出所有通用类型,方便使用
|
|
5
8
|
export * from './types';
|
|
6
|
-
export { MapType, LocationMode, LocationAccuracy, CoordinateType, } from './types';
|
|
7
9
|
//# sourceMappingURL=ExpoGaodeMap.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMap.types.js","sourceRoot":"","sources":["../src/ExpoGaodeMap.types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMap.types.js","sourceRoot":"","sources":["../src/ExpoGaodeMap.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,kBAAkB;AAClB,cAAc,SAAS,CAAC","sourcesContent":["/**\n * 高德地图 Expo 模块类型定义\n *\n * 此文件定义了 Expo 模块专用的类型,包括事件类型等\n * 其他通用类型请从 './types' 导入\n */\n\nimport type { Coordinates, ReGeocode } from './types';\n\n// 重新导出所有通用类型,方便使用\nexport * from './types';\n\n/**\n * Expo 模块事件类型\n * 定义了原生模块可以触发的事件\n */\nexport type ExpoGaodeMapModuleEvents = {\n /**\n * 定位更新事件\n * 当位置发生变化时触发\n * @param location 位置信息,包含坐标和可选的逆地理编码信息\n */\n onLocationUpdate: (location: Coordinates | ReGeocode) => void;\n \n /**\n * 方向更新事件(iOS)\n * 当设备方向发生变化时触发\n * @param heading 方向信息\n */\n onHeadingUpdate: (heading: {\n /** 磁北方向角度 (0-359.9) */\n magneticHeading: number;\n /** 真北方向角度 (0-359.9) */\n trueHeading: number;\n /** 方向精度 */\n headingAccuracy: number;\n /** X 轴原始数据 */\n x: number;\n /** Y 轴原始数据 */\n y: number;\n /** Z 轴原始数据 */\n z: number;\n /** 时间戳 */\n timestamp: number;\n }) => void;\n};\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { NativeModule } from 'expo';
|
|
6
6
|
import type { ExpoGaodeMapModuleEvents } from './ExpoGaodeMap.types';
|
|
7
|
-
import type { LatLng, CoordinateType, Coordinates, ReGeocode, LocationMode, LocationAccuracy } from './types';
|
|
7
|
+
import type { LatLng, CoordinateType, Coordinates, ReGeocode, LocationMode, LocationAccuracy, LocationListener } from './types';
|
|
8
8
|
/**
|
|
9
9
|
* SDK 配置参数
|
|
10
10
|
*/
|
|
@@ -181,6 +181,15 @@ declare class ExpoGaodeMapModule extends NativeModule<ExpoGaodeMapModuleEvents>
|
|
|
181
181
|
* @returns Promise<PermissionStatus> 请求后的权限状态
|
|
182
182
|
*/
|
|
183
183
|
requestLocationPermission(): Promise<PermissionStatus>;
|
|
184
|
+
/**
|
|
185
|
+
* 添加定位监听器(便捷方法)
|
|
186
|
+
* 封装了 addListener,提供更简洁的 API
|
|
187
|
+
* @param listener 定位回调函数
|
|
188
|
+
* @returns 订阅对象,调用 remove() 取消监听
|
|
189
|
+
*/
|
|
190
|
+
addLocationListener(listener: LocationListener): {
|
|
191
|
+
remove: () => void;
|
|
192
|
+
};
|
|
184
193
|
}
|
|
185
194
|
declare const _default: ExpoGaodeMapModule;
|
|
186
195
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMapModule.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMapModule.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMapModule.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMapModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,24 @@
|
|
|
3
3
|
* 提供 SDK 初始化、定位、权限管理等功能
|
|
4
4
|
*/
|
|
5
5
|
import { requireNativeModule } from 'expo';
|
|
6
|
-
|
|
6
|
+
// 获取原生模块实例
|
|
7
|
+
const nativeModule = requireNativeModule('ExpoGaodeMap');
|
|
8
|
+
// 扩展原生模块,添加便捷方法
|
|
9
|
+
const ExpoGaodeMapModuleWithHelpers = {
|
|
10
|
+
...nativeModule,
|
|
11
|
+
/**
|
|
12
|
+
* 添加定位监听器(便捷方法)
|
|
13
|
+
* 自动订阅 onLocationUpdate 事件,提供容错处理
|
|
14
|
+
* @param listener 定位回调函数
|
|
15
|
+
* @returns 订阅对象,调用 remove() 取消监听
|
|
16
|
+
* @throws 如果底层模块不可用,返回一个空操作的订阅对象
|
|
17
|
+
*/
|
|
18
|
+
addLocationListener(listener) {
|
|
19
|
+
// 使用可选链和空值合并,确保即使模块不可用也不会崩溃
|
|
20
|
+
return nativeModule.addListener?.('onLocationUpdate', listener) || {
|
|
21
|
+
remove: () => { },
|
|
22
|
+
};
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
export default ExpoGaodeMapModuleWithHelpers;
|
|
7
26
|
//# sourceMappingURL=ExpoGaodeMapModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMapModule.js","sourceRoot":"","sources":["../src/ExpoGaodeMapModule.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,mBAAmB,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMapModule.js","sourceRoot":"","sources":["../src/ExpoGaodeMapModule.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAgPzD,WAAW;AACX,MAAM,YAAY,GAAG,mBAAmB,CAAqB,cAAc,CAAC,CAAC;AAE7E,gBAAgB;AAChB,MAAM,6BAA6B,GAAG;IACpC,GAAG,YAAY;IAEf;;;;;;OAMG;IACH,mBAAmB,CAAC,QAA0B;QAC5C,4BAA4B;QAC5B,OAAO,YAAY,CAAC,WAAW,EAAE,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI;YACjE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;SACjB,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,6BAAmD,CAAC","sourcesContent":["/**\n * 高德地图原生模块\n * 提供 SDK 初始化、定位、权限管理等功能\n */\n\nimport { NativeModule, requireNativeModule } from 'expo';\nimport type { ExpoGaodeMapModuleEvents } from './ExpoGaodeMap.types';\nimport type {\n LatLng,\n CoordinateType,\n Coordinates,\n ReGeocode,\n LocationMode,\n LocationAccuracy,\n LocationListener,\n} from './types';\n\n/**\n * SDK 配置参数\n */\nexport interface SDKConfig {\n /** Android 平台的高德地图 API Key */\n androidKey?: string;\n /** iOS 平台的高德地图 API Key */\n iosKey?: string;\n}\n\n/**\n * 权限状态\n */\nexport interface PermissionStatus {\n /** 是否已授权 */\n granted: boolean;\n /** iOS 权限状态字符串 */\n status?: 'notDetermined' | 'restricted' | 'denied' | 'authorizedAlways' | 'authorizedWhenInUse' | 'unknown';\n /** Android 精确位置权限 */\n fineLocation?: boolean;\n /** Android 粗略位置权限 */\n coarseLocation?: boolean;\n}\n\n/**\n * 高德地图原生模块类声明\n */\ndeclare class ExpoGaodeMapModule extends NativeModule<ExpoGaodeMapModuleEvents> {\n // ==================== SDK 初始化 ====================\n \n /**\n * 初始化高德地图 SDK\n * @param config SDK 配置参数,包含 Android 和 iOS 的 API Key\n */\n initSDK(config: SDKConfig): void;\n \n /**\n * 获取高德地图 SDK 版本号\n * @returns SDK 版本字符串\n */\n getVersion(): string;\n \n // ==================== 定位控制 ====================\n \n /**\n * 开始连续定位\n * 启动后会持续接收位置更新,通过 onLocationUpdate 事件回调\n */\n start(): void;\n \n /**\n * 停止定位\n * 停止接收位置更新\n */\n stop(): void;\n \n /**\n * 检查是否正在定位\n * @returns Promise<boolean> 是否正在定位\n */\n isStarted(): Promise<boolean>;\n \n /**\n * 获取当前位置(单次定位)\n * @returns Promise<Coordinates | ReGeocode> 位置信息,包含坐标和可选的逆地理编码信息\n */\n getCurrentLocation(): Promise<Coordinates | ReGeocode>;\n \n /**\n * 坐标转换\n * 将其他坐标系的坐标转换为高德地图使用的 GCJ-02 坐标系\n * @param coordinate 需要转换的坐标\n * @param type 原坐标系类型\n * @returns Promise<LatLng> 转换后的 GCJ-02 坐标\n */\n coordinateConvert(coordinate: LatLng, type: CoordinateType): Promise<LatLng>;\n \n // ==================== 定位配置 ====================\n \n /**\n * 设置是否返回逆地理编码信息\n * @param isReGeocode true: 返回地址信息; false: 只返回坐标\n */\n setLocatingWithReGeocode(isReGeocode: boolean): void;\n \n /**\n * 设置定位模式(Android)\n * @param mode 定位模式:0-低功耗, 1-仅设备, 2-高精度\n */\n setLocationMode(mode: LocationMode): void;\n \n /**\n * 设置定位间隔(毫秒)\n * @param interval 定位间隔时间,单位毫秒,默认 2000ms\n */\n setInterval(interval: number): void;\n \n /**\n * 设置是否单次定位(Android)\n * @param isOnceLocation true: 单次定位; false: 连续定位\n */\n setOnceLocation(isOnceLocation: boolean): void;\n \n /**\n * 设置是否使用设备传感器(Android)\n * @param sensorEnable true: 使用传感器; false: 不使用\n */\n setSensorEnable(sensorEnable: boolean): void;\n \n /**\n * 设置是否允许 WiFi 扫描(Android)\n * @param wifiScan true: 允许; false: 不允许\n */\n setWifiScan(wifiScan: boolean): void;\n \n /**\n * 设置是否 GPS 优先(Android)\n * @param gpsFirst true: GPS 优先; false: 网络优先\n */\n setGpsFirst(gpsFirst: boolean): void;\n \n /**\n * 设置是否等待 WiFi 列表刷新(Android)\n * @param onceLocationLatest true: 等待; false: 不等待\n */\n setOnceLocationLatest(onceLocationLatest: boolean): void;\n \n /**\n * 设置逆地理编码语言\n * @param language 语言代码,如 \"zh-CN\", \"en\"\n */\n setGeoLanguage(language: string): void;\n \n /**\n * 设置是否使用缓存策略(Android)\n * @param locationCacheEnable true: 使用缓存; false: 不使用\n */\n setLocationCacheEnable(locationCacheEnable: boolean): void;\n \n /**\n * 设置网络请求超时时间(Android)\n * @param httpTimeOut 超时时间,单位毫秒\n */\n setHttpTimeOut(httpTimeOut: number): void;\n \n /**\n * 设置期望的定位精度(iOS)\n * @param accuracy 精度级别:0-最佳, 1-10米, 2-100米, 3-1公里, 4-3公里\n */\n setDesiredAccuracy(accuracy: LocationAccuracy): void;\n \n /**\n * 设置定位超时时间(秒)\n * @param timeout 超时时间,单位秒,默认 10 秒\n */\n setLocationTimeout(timeout: number): void;\n \n /**\n * 设置逆地理编码超时时间(秒)\n * @param timeout 超时时间,单位秒,默认 5 秒\n */\n setReGeocodeTimeout(timeout: number): void;\n \n /**\n * 设置距离过滤器(米)(iOS)\n * 只有移动超过指定距离才会更新位置\n * @param distance 距离阈值,单位米\n */\n setDistanceFilter(distance: number): void;\n \n /**\n * 设置是否自动暂停位置更新(iOS)\n * @param pauses true: 自动暂停; false: 不暂停\n */\n setPausesLocationUpdatesAutomatically(pauses: boolean): void;\n \n /**\n * 设置是否允许后台定位(iOS)\n * @param allows true: 允许; false: 不允许\n */\n setAllowsBackgroundLocationUpdates(allows: boolean): void;\n \n /**\n * 设置定位协议\n * @param protocol 协议类型\n */\n setLocationProtocol(protocol: string): void;\n \n // ==================== 方向更新 (iOS) ====================\n \n /**\n * 开始更新设备方向(罗盘朝向)\n * 通过 onHeadingUpdate 事件接收方向更新\n * @platform ios\n */\n startUpdatingHeading(): void;\n \n /**\n * 停止更新设备方向\n * @platform ios\n */\n stopUpdatingHeading(): void;\n \n // ==================== 权限管理 ====================\n \n /**\n * 检查位置权限状态\n * @returns Promise<PermissionStatus> 权限状态\n */\n checkLocationPermission(): Promise<PermissionStatus>;\n \n /**\n * 请求位置权限\n * @returns Promise<PermissionStatus> 请求后的权限状态\n */\n requestLocationPermission(): Promise<PermissionStatus>;\n \n // ==================== 便捷方法 ====================\n \n /**\n * 添加定位监听器(便捷方法)\n * 封装了 addListener,提供更简洁的 API\n * @param listener 定位回调函数\n * @returns 订阅对象,调用 remove() 取消监听\n */\n addLocationListener(listener: LocationListener): { remove: () => void };\n}\n\n// 获取原生模块实例\nconst nativeModule = requireNativeModule<ExpoGaodeMapModule>('ExpoGaodeMap');\n\n// 扩展原生模块,添加便捷方法\nconst ExpoGaodeMapModuleWithHelpers = {\n ...nativeModule,\n \n /**\n * 添加定位监听器(便捷方法)\n * 自动订阅 onLocationUpdate 事件,提供容错处理\n * @param listener 定位回调函数\n * @returns 订阅对象,调用 remove() 取消监听\n * @throws 如果底层模块不可用,返回一个空操作的订阅对象\n */\n addLocationListener(listener: LocationListener): { remove: () => void } {\n // 使用可选链和空值合并,确保即使模块不可用也不会崩溃\n return nativeModule.addListener?.('onLocationUpdate', listener) || {\n remove: () => {},\n };\n },\n};\n\nexport default ExpoGaodeMapModuleWithHelpers as ExpoGaodeMapModule;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMapView.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMapView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EAKX,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMapView.d.ts","sourceRoot":"","sources":["../src/ExpoGaodeMapView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EAKX,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAK1C;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,gBAAgB,iFAgFpB,CAAC;AAIH,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpoGaodeMapView.js","sourceRoot":"","sources":["../src/ExpoGaodeMapView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,UAAU,GAAwE,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ExpoGaodeMapView.js","sourceRoot":"","sources":["../src/ExpoGaodeMapView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,UAAU,GAAwE,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;AAGrI;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAA2B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACjF,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAa,IAAI,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAoB,IAAI,CAAC,CAAC;IAG1D,MAAM,MAAM,GAAe,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9C;;;;;;WAMG;QACH,UAAU,EAAE,KAAK,EAAE,QAAwB,EAAE,WAAmB,GAAG,EAAE,EAAE;YACrE,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC;QACD;;;;;WAKG;QACH,SAAS,EAAE,KAAK,EAAE,KAAY,EAAE,EAAE;YAChC,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD;;;;;WAKG;QACH,SAAS,EAAE,KAAK,EAAE,MAAc,EAAE,WAAoB,KAAK,EAAE,EAAE;YAC7D,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QACD;;;;;WAKG;QACH,OAAO,EAAE,KAAK,EAAE,IAAY,EAAE,WAAoB,KAAK,EAAE,EAAE;YACzD,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;QACD;;;;WAIG;QACH,iBAAiB,EAAE,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACnE,OAAO,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC/C,CAAC;KAEF,CAAC,EAAE,EAAE,CAAC,CAAC;IAER;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC;IAC/B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEvD,OAAO,CACL,CAAC,UAAU,CACP,GAAG,CAAC,CAAC,SAAS,CAAC,CACb,IAAI,KAAK,CAAC,CACV;UAAA,CAAC,KAAK,CAAC,QAAQ,CACjB;QAAA,EAAE,UAAU,CAAC,CAClB,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAElD,eAAe,gBAAgB,CAAC","sourcesContent":["import { requireNativeViewManager } from 'expo-modules-core';\nimport * as React from 'react';\n\nimport type {\n MapViewProps,\n MapViewRef,\n CameraPosition,\n LatLng,\n Point,\n\n} from './types';\n\nexport type { MapViewRef } from './types';\n\nconst NativeView: React.ComponentType<MapViewProps & { ref?: React.Ref<MapViewRef> }> = requireNativeViewManager('ExpoGaodeMapView');\n\n\n/**\n * 高德地图视图组件,提供地图操作API和覆盖物管理功能\n * \n * @param props - 组件属性\n * @param ref - 外部ref引用,用于访问地图API方法\n * @returns 返回包含地图视图和上下文提供者的React组件\n * \n * @remarks\n * 该组件内部维护两个ref:\n * - nativeRef: 指向原生地图视图的引用\n * - internalRef: 内部使用的API引用,通过MapContext共享\n * \n * 提供的主要API功能包括:\n * - 相机控制(移动、缩放、获取当前位置)\n * - 覆盖物管理(添加/删除/更新标记、折线、多边形、圆形等)\n * \n * 所有API方法都会检查地图是否已初始化,未初始化时抛出错误\n */\nconst ExpoGaodeMapView = React.forwardRef<MapViewRef, MapViewProps>((props, ref) => {\n const nativeRef = React.useRef<MapViewRef>(null);\n const internalRef = React.useRef<MapViewRef | null>(null);\n \n\n const apiRef: MapViewRef = React.useMemo(() => ({\n /**\n * 移动地图相机到指定位置\n * @param position 相机位置参数对象,包含目标经纬度、缩放级别等信息\n * @param duration 动画持续时间(毫秒),默认300毫秒\n * @throws 如果地图视图未初始化则抛出错误\n * @returns Promise<void> 异步操作完成后的Promise\n */\n moveCamera: async (position: CameraPosition, duration: number = 300) => {\n if (!nativeRef.current) throw new Error('MapView not initialized');\n return nativeRef.current.moveCamera(position, duration);\n },\n /**\n * 将屏幕坐标点转换为地理坐标(经纬度)\n * @param point 屏幕坐标点 {x: number, y: number}\n * @returns 返回Promise,解析为对应的地理坐标 {latitude: number, longitude: number}\n * @throws 如果地图视图未初始化,抛出错误 'MapView not initialized'\n */\n getLatLng: async (point: Point) => {\n if (!nativeRef.current) throw new Error('MapView not initialized');\n return nativeRef.current.getLatLng(point);\n },\n /**\n * 设置地图中心点坐标\n * @param center 要设置的中心点坐标(LatLng格式)\n * @param animated 是否使用动画效果移动地图(默认为false)\n * @throws 如果地图视图未初始化则抛出错误\n */\n setCenter: async (center: LatLng, animated: boolean = false) => {\n if (!nativeRef.current) throw new Error('MapView not initialized');\n return nativeRef.current.setCenter(center, animated);\n },\n /**\n * 设置地图的缩放级别\n * @param zoom 目标缩放级别\n * @param animated 是否使用动画过渡效果,默认为false\n * @throws 如果地图视图未初始化,抛出错误\n */\n setZoom: async (zoom: number, animated: boolean = false) => {\n if (!nativeRef.current) throw new Error('MapView not initialized');\n return nativeRef.current.setZoom(zoom, animated);\n },\n /**\n * 获取当前地图的相机位置(视角中心点、缩放级别、倾斜角度等)\n * @returns 返回一个Promise,解析为当前相机位置的对象\n * @throws 如果地图视图未初始化,则抛出错误\n */\n getCameraPosition: async () => {\n if (!nativeRef.current) throw new Error('MapView not initialized');\n return nativeRef.current.getCameraPosition();\n }\n\n }), []);\n\n /**\n * 将传入的apiRef赋值给internalRef.current\n * 用于在组件内部保存对地图API实例的引用\n */\n React.useEffect(() => {\n internalRef.current = apiRef;\n }, [apiRef]);\n\n /**\n * 获取当前地图实例的API引用\n * @returns 返回地图API的引用对象,可用于调用地图相关方法\n */\n React.useImperativeHandle(ref, () => apiRef, [apiRef]);\n\n return (\n <NativeView\n ref={nativeRef}\n {...props}>\n {props.children}\n </NativeView>\n );\n});\n\nExpoGaodeMapView.displayName = 'ExpoGaodeMapView';\n\nexport default ExpoGaodeMapView;\n"]}
|
|
@@ -99,31 +99,6 @@ export declare enum MapType {
|
|
|
99
99
|
*/
|
|
100
100
|
Bus = 4
|
|
101
101
|
}
|
|
102
|
-
/**
|
|
103
|
-
* 定位信息(基础)
|
|
104
|
-
*/
|
|
105
|
-
export interface Location extends LatLng {
|
|
106
|
-
/**
|
|
107
|
-
* 精度(米)
|
|
108
|
-
*/
|
|
109
|
-
accuracy: number;
|
|
110
|
-
/**
|
|
111
|
-
* 朝向(度)
|
|
112
|
-
*/
|
|
113
|
-
heading: number;
|
|
114
|
-
/**
|
|
115
|
-
* 海拔(米)
|
|
116
|
-
*/
|
|
117
|
-
altitude: number;
|
|
118
|
-
/**
|
|
119
|
-
* 运动速度(米/秒)
|
|
120
|
-
*/
|
|
121
|
-
speed: number;
|
|
122
|
-
/**
|
|
123
|
-
* 时间戳
|
|
124
|
-
*/
|
|
125
|
-
timestamp: number;
|
|
126
|
-
}
|
|
127
102
|
/**
|
|
128
103
|
* 颜色值类型
|
|
129
104
|
* 支持:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../src/types/common.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,oBAAY,OAAO;IACjB;;OAEG;IACH,QAAQ,IAAI;IAEZ;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,KAAK,IAAI;IAET;;OAEG;IACH,IAAI,IAAI;IAER;;;OAGG;IACH,GAAG,IAAI;CACR;AAED
|
|
1
|
+
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../src/types/common.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,oBAAY,OAAO;IACjB;;OAEG;IACH,QAAQ,IAAI;IAEZ;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,KAAK,IAAI;IAET;;OAEG;IACH,IAAI,IAAI;IAER;;;OAGG;IACH,GAAG,IAAI;CACR;AAED;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../src/types/common.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqFH;;GAEG;AACH,MAAM,CAAN,IAAY,OA0BX;AA1BD,WAAY,OAAO;IACjB;;OAEG;IACH,6CAAY,CAAA;IAEZ;;OAEG;IACH,+CAAa,CAAA;IAEb;;OAEG;IACH,uCAAS,CAAA;IAET;;OAEG;IACH,qCAAQ,CAAA;IAER;;;OAGG;IACH,mCAAO,CAAA;AACT,CAAC,EA1BW,OAAO,KAAP,OAAO,QA0BlB","sourcesContent":["/**\n * 高德地图通用类型定义\n * 基于 Expo Modules API\n */\n\n/**\n * 点坐标(屏幕坐标)\n */\nexport interface Point {\n x: number;\n y: number;\n}\n\n/**\n * 地理坐标\n */\nexport interface LatLng {\n /**\n * 纬度\n */\n latitude: number;\n\n /**\n * 经度\n */\n longitude: number;\n}\n\n/**\n * 地图标注点(POI)\n */\nexport interface MapPoi {\n /**\n * 标注点 ID\n */\n id: string;\n\n /**\n * 标注点名称\n */\n name: string;\n\n /**\n * 标注点坐标\n */\n position: LatLng;\n}\n\n/**\n * 矩形坐标边界\n */\nexport interface LatLngBounds {\n /**\n * 西南坐标\n */\n southwest: LatLng;\n\n /**\n * 东北坐标\n */\n northeast: LatLng;\n}\n\n/**\n * 地图相机位置\n */\nexport interface CameraPosition {\n /**\n * 中心坐标\n */\n target?: LatLng;\n\n /**\n * 缩放级别(3-20)\n */\n zoom?: number;\n\n /**\n * 朝向、旋转角度(0-360度)\n */\n bearing?: number;\n\n /**\n * 倾斜角度(0-60度)\n */\n tilt?: number;\n}\n\n/**\n * 地图类型\n */\nexport enum MapType {\n /**\n * 标准地图\n */\n Standard = 0,\n\n /**\n * 卫星地图\n */\n Satellite = 1,\n\n /**\n * 夜间地图\n */\n Night = 2,\n\n /**\n * 导航地图\n */\n Navi = 3,\n\n /**\n * 公交地图\n * @platform android\n */\n Bus = 4,\n}\n\n/**\n *
|
|
1
|
+
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../src/types/common.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqFH;;GAEG;AACH,MAAM,CAAN,IAAY,OA0BX;AA1BD,WAAY,OAAO;IACjB;;OAEG;IACH,6CAAY,CAAA;IAEZ;;OAEG;IACH,+CAAa,CAAA;IAEb;;OAEG;IACH,uCAAS,CAAA;IAET;;OAEG;IACH,qCAAQ,CAAA;IAER;;;OAGG;IACH,mCAAO,CAAA;AACT,CAAC,EA1BW,OAAO,KAAP,OAAO,QA0BlB","sourcesContent":["/**\n * 高德地图通用类型定义\n * 基于 Expo Modules API\n */\n\n/**\n * 点坐标(屏幕坐标)\n */\nexport interface Point {\n x: number;\n y: number;\n}\n\n/**\n * 地理坐标\n */\nexport interface LatLng {\n /**\n * 纬度\n */\n latitude: number;\n\n /**\n * 经度\n */\n longitude: number;\n}\n\n/**\n * 地图标注点(POI)\n */\nexport interface MapPoi {\n /**\n * 标注点 ID\n */\n id: string;\n\n /**\n * 标注点名称\n */\n name: string;\n\n /**\n * 标注点坐标\n */\n position: LatLng;\n}\n\n/**\n * 矩形坐标边界\n */\nexport interface LatLngBounds {\n /**\n * 西南坐标\n */\n southwest: LatLng;\n\n /**\n * 东北坐标\n */\n northeast: LatLng;\n}\n\n/**\n * 地图相机位置\n */\nexport interface CameraPosition {\n /**\n * 中心坐标\n */\n target?: LatLng;\n\n /**\n * 缩放级别(3-20)\n */\n zoom?: number;\n\n /**\n * 朝向、旋转角度(0-360度)\n */\n bearing?: number;\n\n /**\n * 倾斜角度(0-60度)\n */\n tilt?: number;\n}\n\n/**\n * 地图类型\n */\nexport enum MapType {\n /**\n * 标准地图\n */\n Standard = 0,\n\n /**\n * 卫星地图\n */\n Satellite = 1,\n\n /**\n * 夜间地图\n */\n Night = 2,\n\n /**\n * 导航地图\n */\n Navi = 3,\n\n /**\n * 公交地图\n * @platform android\n */\n Bus = 4,\n}\n\n/**\n * 颜色值类型\n * 支持:\n * - 十六进制字符串: '#AARRGGBB' 或 '#RRGGBB'\n * - 数字格式: 0xAARRGGBB (用于 Android)\n */\nexport type ColorValue = string | number;\n"]}
|
package/build/types/index.d.ts
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
* 高德地图 Expo Module 类型定义统一导出
|
|
3
3
|
* 基于 Expo Modules API 重新设计
|
|
4
4
|
*/
|
|
5
|
-
export type { Point, LatLng, MapPoi, LatLngBounds, CameraPosition,
|
|
5
|
+
export type { Point, LatLng, MapPoi, LatLngBounds, CameraPosition, ColorValue, } from './common.types';
|
|
6
6
|
export { MapType } from './common.types';
|
|
7
|
-
export type { CameraEvent, MapViewProps, MapViewMethods, MapViewRef, } from './map-view.types';
|
|
7
|
+
export type { LocationEvent, CameraEvent, MapViewProps, MapViewMethods, MapViewRef, } from './map-view.types';
|
|
8
8
|
export type { Coordinates, ReGeocode, LocationOptions, LocationListener, GeoLanguage, LocationProtocol, } from './location.types';
|
|
9
9
|
export { LocationAccuracy, LocationMode, CoordinateType, } from './location.types';
|
|
10
10
|
export type { MarkerProps, PolylineProps, PolygonProps, CircleProps, HeatMapProps, MultiPointItem, MultiPointProps, ClusterParams, ClusterPoint, ClusterProps, } from './overlays.types';
|
|
11
|
-
export type { SDKConfig, AMapSDKModule, AMapLocationModule, ModuleEvents, } from './sdk.types';
|
|
12
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,KAAK,EACL,MAAM,EACN,MAAM,EACN,YAAY,EACZ,cAAc,EACd,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,YAAY,EACV,aAAa,EACb,WAAW,EACX,YAAY,EACZ,cAAc,EACd,UAAU,GACX,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,WAAW,EACX,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,WAAW,EACX,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EACf,aAAa,EACb,YAAY,EACZ,YAAY,GACb,MAAM,kBAAkB,CAAC"}
|
package/build/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAqBzC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC","sourcesContent":["/**\n * 高德地图 Expo Module 类型定义统一导出\n * 基于 Expo Modules API 重新设计\n */\n\n// 通用类型\nexport type {\n Point,\n LatLng,\n MapPoi,\n LatLngBounds,\n CameraPosition,\n ColorValue,\n} from './common.types';\n\nexport { MapType } from './common.types';\n\n// 地图视图类型\nexport type {\n LocationEvent,\n CameraEvent,\n MapViewProps,\n MapViewMethods,\n MapViewRef,\n} from './map-view.types';\n\n// 定位类型\nexport type {\n Coordinates,\n ReGeocode,\n LocationOptions,\n LocationListener,\n GeoLanguage,\n LocationProtocol,\n} from './location.types';\n\nexport {\n LocationAccuracy,\n LocationMode,\n CoordinateType,\n} from './location.types';\n\n// 覆盖物类型\nexport type {\n MarkerProps,\n PolylineProps,\n PolygonProps,\n CircleProps,\n HeatMapProps,\n MultiPointItem,\n MultiPointProps,\n ClusterParams,\n ClusterPoint,\n ClusterProps,\n} from './overlays.types';\n"]}
|
|
@@ -204,6 +204,23 @@ export interface MapViewMethods {
|
|
|
204
204
|
* @returns 地理坐标
|
|
205
205
|
*/
|
|
206
206
|
getLatLng(point: Point): Promise<LatLng>;
|
|
207
|
+
/**
|
|
208
|
+
* 设置地图中心点
|
|
209
|
+
* @param center 中心点
|
|
210
|
+
* @param animated 是否启用动画
|
|
211
|
+
*/
|
|
212
|
+
setCenter(center: LatLng, animated?: boolean): void;
|
|
213
|
+
/**
|
|
214
|
+
* 设置地图缩放级别
|
|
215
|
+
* @param zoom 缩放级别
|
|
216
|
+
* @param animated 是否启用动画
|
|
217
|
+
*/
|
|
218
|
+
setZoom(zoom: number, animated?: boolean): void;
|
|
219
|
+
/**
|
|
220
|
+
* 获取相机位置
|
|
221
|
+
* @returns 相机位置
|
|
222
|
+
*/
|
|
223
|
+
getCameraPosition(): Promise<CameraPosition>;
|
|
207
224
|
}
|
|
208
225
|
/**
|
|
209
226
|
* MapView Ref 公开接口(用户使用)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-view.types.d.ts","sourceRoot":"","sources":["../../src/types/map-view.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEnG;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,cAAc,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,0BAA0B,CAAC,EAAE;QAC3B,4BAA4B;QAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,2CAA2C;QAC3C,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,2CAA2C;QAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAC5B,cAAc;QACd,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAC9B,yBAAyB;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iDAAiD;QACjD,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,4CAA4C;QAC5C,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACrC,8CAA8C;QAC9C,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACvC,iDAAiD;QACjD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,iBAAiB;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAE3D;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAE3D;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAE/D;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAElE;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAElE;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAElE;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,UAAU,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpE;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"map-view.types.d.ts","sourceRoot":"","sources":["../../src/types/map-view.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-view.types.js","sourceRoot":"","sources":["../../src/types/map-view.types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * 高德地图视图相关类型定义\n * 基于 Expo Modules API\n */\n\nimport type { StyleProp, ViewStyle, NativeSyntheticEvent } from 'react-native';\nimport type { CameraPosition, LatLng, LatLngBounds, MapPoi, MapType, Point } from './common.types';\n\n/**\n * 定位事件数据\n */\nexport interface LocationEvent {\n /**\n * 纬度\n */\n latitude: number;\n \n /**\n * 经度\n */\n longitude: number;\n \n /**\n * 定位精度(米)\n */\n accuracy: number;\n}\n\n\n/**\n * 地图相机事件\n */\nexport interface CameraEvent {\n /**\n * 相机位置\n */\n cameraPosition: CameraPosition;\n\n /**\n * 可见区域边界\n */\n latLngBounds: LatLngBounds;\n}\n\n/**\n * 地图视图属性\n */\nexport interface MapViewProps {\n /**\n * 地图类型\n */\n mapType?: MapType;\n\n /**\n * 初始相机位置\n */\n initialCameraPosition?: CameraPosition;\n\n /**\n * 是否显示当前定位\n */\n myLocationEnabled?: boolean;\n\n /**\n * 是否跟随用户位置\n * @default false\n */\n followUserLocation?: boolean;\n\n /**\n * 定位蓝点配置\n */\n userLocationRepresentation?: {\n /** 精度圈是否显示 @default true */\n showsAccuracyRing?: boolean;\n /** 是否显示方向指示 @default true @platform ios */\n showsHeadingIndicator?: boolean;\n /** 精度圈填充颜色 支持 '#RRGGBB'、'red' 或 ARGB 数字 */\n fillColor?: string | number;\n /** 精度圈边线颜色 */\n strokeColor?: string | number;\n /** 精度圈边线宽度 @default 0 */\n lineWidth?: number;\n /** 内部蓝色圆点是否使用律动效果 @default true @platform ios */\n enablePulseAnimation?: boolean;\n /** 定位点背景色 @default 'white' @platform ios */\n locationDotBgColor?: string | number;\n /** 定位点蓝色圆点颜色 @default 'blue' @platform ios */\n locationDotFillColor?: string | number;\n /** 定位图标 支持网络图片(http/https)、本地文件(file://)或资源名称 */\n image?: string;\n /** 定位图标宽度(像素) */\n imageWidth?: number;\n /** 定位图标高度(像素) */\n imageHeight?: number;\n };\n\n /**\n * 是否显示室内地图\n * \n */\n indoorViewEnabled?: boolean;\n\n /**\n * 是否显示3D建筑\n */\n buildingsEnabled?: boolean;\n\n /**\n * 是否显示标注\n */\n labelsEnabled?: boolean;\n\n /**\n * 是否显示指南针\n */\n compassEnabled?: boolean;\n\n /**\n * 是否显示缩放按钮\n * @platform android\n */\n zoomControlsEnabled?: boolean;\n\n /**\n * 是否显示比例尺\n */\n scaleControlsEnabled?: boolean;\n\n /**\n * 是否显示定位按钮\n * @platform android\n */\n myLocationButtonEnabled?: boolean;\n\n /**\n * 是否显示路况\n */\n trafficEnabled?: boolean;\n\n /**\n * 最大缩放级别\n */\n maxZoom?: number;\n\n /**\n * 最小缩放级别\n */\n minZoom?: number;\n\n /**\n * 是否启用缩放手势\n */\n zoomGesturesEnabled?: boolean;\n\n /**\n * 是否启用滑动手势\n */\n scrollGesturesEnabled?: boolean;\n\n /**\n * 是否启用旋转手势\n */\n rotateGesturesEnabled?: boolean;\n\n /**\n * 是否启用倾斜手势\n */\n tiltGesturesEnabled?: boolean;\n\n /**\n * 定位的最小更新距离(米)\n * @platform ios\n */\n distanceFilter?: number;\n\n /**\n * 最小更新角度(度)\n * @platform ios\n */\n headingFilter?: number;\n\n /**\n * 样式\n */\n style?: StyleProp<ViewStyle>;\n\n /**\n * 点击地图事件\n */\n onMapPress?: (event: NativeSyntheticEvent<LatLng>) => void;\n\n /**\n * 点击标注点事件\n */\n onPressPoi?: (event: NativeSyntheticEvent<MapPoi>) => void;\n\n /**\n * 长按地图事件\n */\n onMapLongPress?: (event: NativeSyntheticEvent<LatLng>) => void;\n\n /**\n * 地图状态改变事件(实时触发)\n */\n onCameraMove?: (event: NativeSyntheticEvent<CameraEvent>) => void;\n\n /**\n * 地图状态改变完成事件\n */\n onCameraIdle?: (event: NativeSyntheticEvent<CameraEvent>) => void;\n\n /**\n * 地图加载完成事件\n */\n onLoad?: (event: NativeSyntheticEvent<{}>) => void;\n\n /**\n * 地图定位更新事件\n */\n onLocation?: (event: NativeSyntheticEvent<LocationEvent>) => void;\n\n /**\n * 子组件\n */\n children?: React.ReactNode;\n}\n\n/**\n * 地图视图方法\n */\nexport interface MapViewMethods {\n /**\n * 移动相机\n * @param cameraPosition 目标相机位置\n * @param duration 动画时长(毫秒)\n */\n moveCamera(cameraPosition: CameraPosition, duration?: number): void;\n\n /**\n * 将屏幕坐标转换为地理坐标\n * @param point 屏幕坐标\n * @returns 地理坐标\n */\n getLatLng(point: Point): Promise<LatLng>;\n}\n\n/**\n * MapView Ref 公开接口(用户使用)\n */\nexport interface MapViewRef {\n moveCamera(position: CameraPosition, duration?: number): Promise<void>;\n getLatLng(point: Point): Promise<LatLng>;\n setCenter(center: LatLng, animated?: boolean): Promise<void>;\n setZoom(zoom: number, animated?: boolean): Promise<void>;\n getCameraPosition(): Promise<CameraPosition>;\n\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"map-view.types.js","sourceRoot":"","sources":["../../src/types/map-view.types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * 高德地图视图相关类型定义\n * 基于 Expo Modules API\n */\n\nimport type { StyleProp, ViewStyle, NativeSyntheticEvent } from 'react-native';\nimport type { CameraPosition, LatLng, LatLngBounds, MapPoi, MapType, Point } from './common.types';\n\n/**\n * 定位事件数据\n */\nexport interface LocationEvent {\n /**\n * 纬度\n */\n latitude: number;\n \n /**\n * 经度\n */\n longitude: number;\n \n /**\n * 定位精度(米)\n */\n accuracy: number;\n}\n\n\n/**\n * 地图相机事件\n */\nexport interface CameraEvent {\n /**\n * 相机位置\n */\n cameraPosition: CameraPosition;\n\n /**\n * 可见区域边界\n */\n latLngBounds: LatLngBounds;\n}\n\n/**\n * 地图视图属性\n */\nexport interface MapViewProps {\n /**\n * 地图类型\n */\n mapType?: MapType;\n\n /**\n * 初始相机位置\n */\n initialCameraPosition?: CameraPosition;\n\n /**\n * 是否显示当前定位\n */\n myLocationEnabled?: boolean;\n\n /**\n * 是否跟随用户位置\n * @default false\n */\n followUserLocation?: boolean;\n\n /**\n * 定位蓝点配置\n */\n userLocationRepresentation?: {\n /** 精度圈是否显示 @default true */\n showsAccuracyRing?: boolean;\n /** 是否显示方向指示 @default true @platform ios */\n showsHeadingIndicator?: boolean;\n /** 精度圈填充颜色 支持 '#RRGGBB'、'red' 或 ARGB 数字 */\n fillColor?: string | number;\n /** 精度圈边线颜色 */\n strokeColor?: string | number;\n /** 精度圈边线宽度 @default 0 */\n lineWidth?: number;\n /** 内部蓝色圆点是否使用律动效果 @default true @platform ios */\n enablePulseAnimation?: boolean;\n /** 定位点背景色 @default 'white' @platform ios */\n locationDotBgColor?: string | number;\n /** 定位点蓝色圆点颜色 @default 'blue' @platform ios */\n locationDotFillColor?: string | number;\n /** 定位图标 支持网络图片(http/https)、本地文件(file://)或资源名称 */\n image?: string;\n /** 定位图标宽度(像素) */\n imageWidth?: number;\n /** 定位图标高度(像素) */\n imageHeight?: number;\n };\n\n /**\n * 是否显示室内地图\n * \n */\n indoorViewEnabled?: boolean;\n\n /**\n * 是否显示3D建筑\n */\n buildingsEnabled?: boolean;\n\n /**\n * 是否显示标注\n */\n labelsEnabled?: boolean;\n\n /**\n * 是否显示指南针\n */\n compassEnabled?: boolean;\n\n /**\n * 是否显示缩放按钮\n * @platform android\n */\n zoomControlsEnabled?: boolean;\n\n /**\n * 是否显示比例尺\n */\n scaleControlsEnabled?: boolean;\n\n /**\n * 是否显示定位按钮\n * @platform android\n */\n myLocationButtonEnabled?: boolean;\n\n /**\n * 是否显示路况\n */\n trafficEnabled?: boolean;\n\n /**\n * 最大缩放级别\n */\n maxZoom?: number;\n\n /**\n * 最小缩放级别\n */\n minZoom?: number;\n\n /**\n * 是否启用缩放手势\n */\n zoomGesturesEnabled?: boolean;\n\n /**\n * 是否启用滑动手势\n */\n scrollGesturesEnabled?: boolean;\n\n /**\n * 是否启用旋转手势\n */\n rotateGesturesEnabled?: boolean;\n\n /**\n * 是否启用倾斜手势\n */\n tiltGesturesEnabled?: boolean;\n\n /**\n * 定位的最小更新距离(米)\n * @platform ios\n */\n distanceFilter?: number;\n\n /**\n * 最小更新角度(度)\n * @platform ios\n */\n headingFilter?: number;\n\n /**\n * 样式\n */\n style?: StyleProp<ViewStyle>;\n\n /**\n * 点击地图事件\n */\n onMapPress?: (event: NativeSyntheticEvent<LatLng>) => void;\n\n /**\n * 点击标注点事件\n */\n onPressPoi?: (event: NativeSyntheticEvent<MapPoi>) => void;\n\n /**\n * 长按地图事件\n */\n onMapLongPress?: (event: NativeSyntheticEvent<LatLng>) => void;\n\n /**\n * 地图状态改变事件(实时触发)\n */\n onCameraMove?: (event: NativeSyntheticEvent<CameraEvent>) => void;\n\n /**\n * 地图状态改变完成事件\n */\n onCameraIdle?: (event: NativeSyntheticEvent<CameraEvent>) => void;\n\n /**\n * 地图加载完成事件\n */\n onLoad?: (event: NativeSyntheticEvent<{}>) => void;\n\n /**\n * 地图定位更新事件\n */\n onLocation?: (event: NativeSyntheticEvent<LocationEvent>) => void;\n\n /**\n * 子组件\n */\n children?: React.ReactNode;\n}\n\n/**\n * 地图视图方法\n */\nexport interface MapViewMethods {\n /**\n * 移动相机\n * @param cameraPosition 目标相机位置\n * @param duration 动画时长(毫秒)\n */\n moveCamera(cameraPosition: CameraPosition, duration?: number): void;\n\n /**\n * 将屏幕坐标转换为地理坐标\n * @param point 屏幕坐标\n * @returns 地理坐标\n */\n getLatLng(point: Point): Promise<LatLng>;\n\n /**\n * 设置地图中心点\n * @param center 中心点\n * @param animated 是否启用动画\n */\n setCenter(center: LatLng, animated?: boolean): void;\n\n /**\n * 设置地图缩放级别\n * @param zoom 缩放级别\n * @param animated 是否启用动画\n */\n setZoom(zoom: number, animated?: boolean): void;\n\n /**\n * 获取相机位置\n * @returns 相机位置\n */\n getCameraPosition(): Promise<CameraPosition>;\n\n \n}\n\n/**\n * MapView Ref 公开接口(用户使用)\n */\nexport interface MapViewRef {\n moveCamera(position: CameraPosition, duration?: number): Promise<void>;\n getLatLng(point: Point): Promise<LatLng>;\n setCenter(center: LatLng, animated?: boolean): Promise<void>;\n setZoom(zoom: number, animated?: boolean): Promise<void>;\n getCameraPosition(): Promise<CameraPosition>;\n\n}\n\n"]}
|
package/package.json
CHANGED
|
@@ -1,48 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 高德地图 Expo 模块类型定义
|
|
3
|
+
*
|
|
4
|
+
* 此文件定义了 Expo 模块专用的类型,包括事件类型等
|
|
5
|
+
* 其他通用类型请从 './types' 导入
|
|
3
6
|
*/
|
|
4
7
|
|
|
5
8
|
import type { Coordinates, ReGeocode } from './types';
|
|
6
9
|
|
|
7
|
-
//
|
|
10
|
+
// 重新导出所有通用类型,方便使用
|
|
8
11
|
export * from './types';
|
|
9
12
|
|
|
10
|
-
// 重新导出常用类型,方便直接从主模块导入
|
|
11
|
-
export type {
|
|
12
|
-
// 通用类型
|
|
13
|
-
LatLng,
|
|
14
|
-
Point,
|
|
15
|
-
CameraPosition,
|
|
16
|
-
LatLngBounds,
|
|
17
|
-
MapPoi,
|
|
18
|
-
|
|
19
|
-
// 地图视图
|
|
20
|
-
MapViewProps,
|
|
21
|
-
CameraEvent,
|
|
22
|
-
|
|
23
|
-
// 定位
|
|
24
|
-
Coordinates,
|
|
25
|
-
ReGeocode,
|
|
26
|
-
LocationOptions,
|
|
27
|
-
LocationListener,
|
|
28
|
-
|
|
29
|
-
// 覆盖物
|
|
30
|
-
MarkerProps,
|
|
31
|
-
PolylineProps,
|
|
32
|
-
PolygonProps,
|
|
33
|
-
CircleProps,
|
|
34
|
-
HeatMapProps,
|
|
35
|
-
MultiPointProps,
|
|
36
|
-
ClusterProps,
|
|
37
|
-
} from './types';
|
|
38
|
-
|
|
39
|
-
export {
|
|
40
|
-
MapType,
|
|
41
|
-
LocationMode,
|
|
42
|
-
LocationAccuracy,
|
|
43
|
-
CoordinateType,
|
|
44
|
-
} from './types';
|
|
45
|
-
|
|
46
13
|
/**
|
|
47
14
|
* Expo 模块事件类型
|
|
48
15
|
* 定义了原生模块可以触发的事件
|
|
@@ -77,8 +44,3 @@ export type ExpoGaodeMapModuleEvents = {
|
|
|
77
44
|
timestamp: number;
|
|
78
45
|
}) => void;
|
|
79
46
|
};
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* Expo 地图视图属性(用于主视图组件)
|
|
83
|
-
*/
|
|
84
|
-
export type { MapViewProps as ExpoGaodeMapViewProps } from './types';
|
|
@@ -12,6 +12,7 @@ import type {
|
|
|
12
12
|
ReGeocode,
|
|
13
13
|
LocationMode,
|
|
14
14
|
LocationAccuracy,
|
|
15
|
+
LocationListener,
|
|
15
16
|
} from './types';
|
|
16
17
|
|
|
17
18
|
/**
|
|
@@ -230,6 +231,38 @@ declare class ExpoGaodeMapModule extends NativeModule<ExpoGaodeMapModuleEvents>
|
|
|
230
231
|
* @returns Promise<PermissionStatus> 请求后的权限状态
|
|
231
232
|
*/
|
|
232
233
|
requestLocationPermission(): Promise<PermissionStatus>;
|
|
234
|
+
|
|
235
|
+
// ==================== 便捷方法 ====================
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* 添加定位监听器(便捷方法)
|
|
239
|
+
* 封装了 addListener,提供更简洁的 API
|
|
240
|
+
* @param listener 定位回调函数
|
|
241
|
+
* @returns 订阅对象,调用 remove() 取消监听
|
|
242
|
+
*/
|
|
243
|
+
addLocationListener(listener: LocationListener): { remove: () => void };
|
|
233
244
|
}
|
|
234
245
|
|
|
235
|
-
|
|
246
|
+
// 获取原生模块实例
|
|
247
|
+
const nativeModule = requireNativeModule<ExpoGaodeMapModule>('ExpoGaodeMap');
|
|
248
|
+
|
|
249
|
+
// 扩展原生模块,添加便捷方法
|
|
250
|
+
const ExpoGaodeMapModuleWithHelpers = {
|
|
251
|
+
...nativeModule,
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* 添加定位监听器(便捷方法)
|
|
255
|
+
* 自动订阅 onLocationUpdate 事件,提供容错处理
|
|
256
|
+
* @param listener 定位回调函数
|
|
257
|
+
* @returns 订阅对象,调用 remove() 取消监听
|
|
258
|
+
* @throws 如果底层模块不可用,返回一个空操作的订阅对象
|
|
259
|
+
*/
|
|
260
|
+
addLocationListener(listener: LocationListener): { remove: () => void } {
|
|
261
|
+
// 使用可选链和空值合并,确保即使模块不可用也不会崩溃
|
|
262
|
+
return nativeModule.addListener?.('onLocationUpdate', listener) || {
|
|
263
|
+
remove: () => {},
|
|
264
|
+
};
|
|
265
|
+
},
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
export default ExpoGaodeMapModuleWithHelpers as ExpoGaodeMapModule;
|
package/src/ExpoGaodeMapView.tsx
CHANGED
|
@@ -117,36 +117,6 @@ export enum MapType {
|
|
|
117
117
|
Bus = 4,
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
/**
|
|
121
|
-
* 定位信息(基础)
|
|
122
|
-
*/
|
|
123
|
-
export interface Location extends LatLng {
|
|
124
|
-
/**
|
|
125
|
-
* 精度(米)
|
|
126
|
-
*/
|
|
127
|
-
accuracy: number;
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* 朝向(度)
|
|
131
|
-
*/
|
|
132
|
-
heading: number;
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* 海拔(米)
|
|
136
|
-
*/
|
|
137
|
-
altitude: number;
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* 运动速度(米/秒)
|
|
141
|
-
*/
|
|
142
|
-
speed: number;
|
|
143
|
-
|
|
144
|
-
/**
|
|
145
|
-
* 时间戳
|
|
146
|
-
*/
|
|
147
|
-
timestamp: number;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
120
|
/**
|
|
151
121
|
* 颜色值类型
|
|
152
122
|
* 支持:
|
package/src/types/index.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
1
|
/**
|
|
3
2
|
* 高德地图 Expo Module 类型定义统一导出
|
|
4
3
|
* 基于 Expo Modules API 重新设计
|
|
@@ -11,7 +10,6 @@ export type {
|
|
|
11
10
|
MapPoi,
|
|
12
11
|
LatLngBounds,
|
|
13
12
|
CameraPosition,
|
|
14
|
-
Location,
|
|
15
13
|
ColorValue,
|
|
16
14
|
} from './common.types';
|
|
17
15
|
|
|
@@ -19,11 +17,11 @@ export { MapType } from './common.types';
|
|
|
19
17
|
|
|
20
18
|
// 地图视图类型
|
|
21
19
|
export type {
|
|
20
|
+
LocationEvent,
|
|
22
21
|
CameraEvent,
|
|
23
22
|
MapViewProps,
|
|
24
23
|
MapViewMethods,
|
|
25
24
|
MapViewRef,
|
|
26
|
-
|
|
27
25
|
} from './map-view.types';
|
|
28
26
|
|
|
29
27
|
// 定位类型
|
|
@@ -55,11 +53,3 @@ export type {
|
|
|
55
53
|
ClusterPoint,
|
|
56
54
|
ClusterProps,
|
|
57
55
|
} from './overlays.types';
|
|
58
|
-
|
|
59
|
-
// SDK 模块类型
|
|
60
|
-
export type {
|
|
61
|
-
SDKConfig,
|
|
62
|
-
AMapSDKModule,
|
|
63
|
-
AMapLocationModule,
|
|
64
|
-
ModuleEvents,
|
|
65
|
-
} from './sdk.types';
|
|
@@ -243,6 +243,28 @@ export interface MapViewMethods {
|
|
|
243
243
|
* @returns 地理坐标
|
|
244
244
|
*/
|
|
245
245
|
getLatLng(point: Point): Promise<LatLng>;
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* 设置地图中心点
|
|
249
|
+
* @param center 中心点
|
|
250
|
+
* @param animated 是否启用动画
|
|
251
|
+
*/
|
|
252
|
+
setCenter(center: LatLng, animated?: boolean): void;
|
|
253
|
+
|
|
254
|
+
/**
|
|
255
|
+
* 设置地图缩放级别
|
|
256
|
+
* @param zoom 缩放级别
|
|
257
|
+
* @param animated 是否启用动画
|
|
258
|
+
*/
|
|
259
|
+
setZoom(zoom: number, animated?: boolean): void;
|
|
260
|
+
|
|
261
|
+
/**
|
|
262
|
+
* 获取相机位置
|
|
263
|
+
* @returns 相机位置
|
|
264
|
+
*/
|
|
265
|
+
getCameraPosition(): Promise<CameraPosition>;
|
|
266
|
+
|
|
267
|
+
|
|
246
268
|
}
|
|
247
269
|
|
|
248
270
|
/**
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 高德地图 SDK 模块类型定义
|
|
3
|
-
* 基于 Expo Modules API
|
|
4
|
-
*/
|
|
5
|
-
import type { LatLng } from './common.types';
|
|
6
|
-
import type { Coordinates, ReGeocode, LocationOptions, LocationListener, CoordinateType } from './location.types';
|
|
7
|
-
/**
|
|
8
|
-
* SDK 初始化配置
|
|
9
|
-
*/
|
|
10
|
-
export interface SDKConfig {
|
|
11
|
-
/**
|
|
12
|
-
* iOS API Key
|
|
13
|
-
*/
|
|
14
|
-
iosKey?: string;
|
|
15
|
-
/**
|
|
16
|
-
* Android API Key
|
|
17
|
-
*/
|
|
18
|
-
androidKey?: string;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* 高德地图 SDK 模块接口
|
|
22
|
-
*/
|
|
23
|
-
export interface AMapSDKModule {
|
|
24
|
-
/**
|
|
25
|
-
* 初始化 SDK
|
|
26
|
-
* @param config SDK配置
|
|
27
|
-
*/
|
|
28
|
-
initSDK(config: SDKConfig): void;
|
|
29
|
-
/**
|
|
30
|
-
* 获取 SDK 版本号
|
|
31
|
-
*/
|
|
32
|
-
getVersion(): Promise<string>;
|
|
33
|
-
/**
|
|
34
|
-
* 设置 API Key(单平台)
|
|
35
|
-
* @param key API密钥
|
|
36
|
-
*/
|
|
37
|
-
setApiKey(key: string): void;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* 高德定位模块接口
|
|
41
|
-
*/
|
|
42
|
-
export interface AMapLocationModule {
|
|
43
|
-
/**
|
|
44
|
-
* 配置定位选项
|
|
45
|
-
* @param options 定位配置选项
|
|
46
|
-
*/
|
|
47
|
-
configure(options: LocationOptions): void;
|
|
48
|
-
/**
|
|
49
|
-
* 开始连续定位
|
|
50
|
-
*/
|
|
51
|
-
start(): void;
|
|
52
|
-
/**
|
|
53
|
-
* 停止定位
|
|
54
|
-
*/
|
|
55
|
-
stop(): void;
|
|
56
|
-
/**
|
|
57
|
-
* 是否正在定位
|
|
58
|
-
*/
|
|
59
|
-
isStarted(): Promise<boolean>;
|
|
60
|
-
/**
|
|
61
|
-
* 获取当前位置(单次定位)
|
|
62
|
-
*/
|
|
63
|
-
getCurrentLocation(): Promise<Coordinates | ReGeocode>;
|
|
64
|
-
/**
|
|
65
|
-
* 添加定位监听器
|
|
66
|
-
* @param listener 定位回调函数
|
|
67
|
-
* @returns 订阅对象,用于取消监听
|
|
68
|
-
*/
|
|
69
|
-
addLocationListener(listener: LocationListener): {
|
|
70
|
-
remove: () => void;
|
|
71
|
-
};
|
|
72
|
-
/**
|
|
73
|
-
* 坐标转换
|
|
74
|
-
* @param coordinate 待转换的坐标
|
|
75
|
-
* @param type 坐标系类型
|
|
76
|
-
*/
|
|
77
|
-
coordinateConvert(coordinate: LatLng, type: CoordinateType): Promise<LatLng>;
|
|
78
|
-
/**
|
|
79
|
-
* 开始获取设备朝向
|
|
80
|
-
* @platform ios
|
|
81
|
-
*/
|
|
82
|
-
startUpdatingHeading(): void;
|
|
83
|
-
/**
|
|
84
|
-
* 停止获取设备朝向
|
|
85
|
-
* @platform ios
|
|
86
|
-
*/
|
|
87
|
-
stopUpdatingHeading(): void;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* 模块事件类型
|
|
91
|
-
*/
|
|
92
|
-
export interface ModuleEvents {
|
|
93
|
-
/**
|
|
94
|
-
* 定位更新事件
|
|
95
|
-
*/
|
|
96
|
-
onLocationUpdate: (location: Coordinates | ReGeocode) => void;
|
|
97
|
-
/**
|
|
98
|
-
* 定位错误事件
|
|
99
|
-
*/
|
|
100
|
-
onLocationError: (error: {
|
|
101
|
-
code: number;
|
|
102
|
-
message: string;
|
|
103
|
-
}) => void;
|
|
104
|
-
/**
|
|
105
|
-
* 朝向更新事件
|
|
106
|
-
* @platform ios
|
|
107
|
-
*/
|
|
108
|
-
onHeadingUpdate: (heading: {
|
|
109
|
-
magneticHeading: number;
|
|
110
|
-
trueHeading: number;
|
|
111
|
-
}) => void;
|
|
112
|
-
}
|
|
113
|
-
//# sourceMappingURL=sdk.types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.types.d.ts","sourceRoot":"","sources":["../../src/types/sdk.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAEjC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IAE1C;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9B;;OAEG;IACH,kBAAkB,IAAI,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IAEvD;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAExE;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7E;;;OAGG;IACH,oBAAoB,IAAI,IAAI,CAAC;IAE7B;;;OAGG;IACH,mBAAmB,IAAI,IAAI,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,gBAAgB,EAAE,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC;IAE9D;;OAEG;IACH,eAAe,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAEpE;;;OAGG;IACH,eAAe,EAAE,CAAC,OAAO,EAAE;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACtF"}
|
package/build/types/sdk.types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.types.js","sourceRoot":"","sources":["../../src/types/sdk.types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * 高德地图 SDK 模块类型定义\n * 基于 Expo Modules API\n */\n\nimport type { LatLng } from './common.types';\nimport type { \n Coordinates, \n ReGeocode, \n LocationOptions, \n LocationListener,\n CoordinateType \n} from './location.types';\n\n/**\n * SDK 初始化配置\n */\nexport interface SDKConfig {\n /**\n * iOS API Key\n */\n iosKey?: string;\n\n /**\n * Android API Key\n */\n androidKey?: string;\n}\n\n/**\n * 高德地图 SDK 模块接口\n */\nexport interface AMapSDKModule {\n /**\n * 初始化 SDK\n * @param config SDK配置\n */\n initSDK(config: SDKConfig): void;\n\n /**\n * 获取 SDK 版本号\n */\n getVersion(): Promise<string>;\n\n /**\n * 设置 API Key(单平台)\n * @param key API密钥\n */\n setApiKey(key: string): void;\n}\n\n/**\n * 高德定位模块接口\n */\nexport interface AMapLocationModule {\n /**\n * 配置定位选项\n * @param options 定位配置选项\n */\n configure(options: LocationOptions): void;\n\n /**\n * 开始连续定位\n */\n start(): void;\n\n /**\n * 停止定位\n */\n stop(): void;\n\n /**\n * 是否正在定位\n */\n isStarted(): Promise<boolean>;\n\n /**\n * 获取当前位置(单次定位)\n */\n getCurrentLocation(): Promise<Coordinates | ReGeocode>;\n\n /**\n * 添加定位监听器\n * @param listener 定位回调函数\n * @returns 订阅对象,用于取消监听\n */\n addLocationListener(listener: LocationListener): { remove: () => void };\n\n /**\n * 坐标转换\n * @param coordinate 待转换的坐标\n * @param type 坐标系类型\n */\n coordinateConvert(coordinate: LatLng, type: CoordinateType): Promise<LatLng>;\n\n /**\n * 开始获取设备朝向\n * @platform ios\n */\n startUpdatingHeading(): void;\n\n /**\n * 停止获取设备朝向\n * @platform ios\n */\n stopUpdatingHeading(): void;\n}\n\n/**\n * 模块事件类型\n */\nexport interface ModuleEvents {\n /**\n * 定位更新事件\n */\n onLocationUpdate: (location: Coordinates | ReGeocode) => void;\n\n /**\n * 定位错误事件\n */\n onLocationError: (error: { code: number; message: string }) => void;\n\n /**\n * 朝向更新事件\n * @platform ios\n */\n onHeadingUpdate: (heading: { magneticHeading: number; trueHeading: number }) => void;\n}\n"]}
|
package/src/types/sdk.types.ts
DELETED
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 高德地图 SDK 模块类型定义
|
|
3
|
-
* 基于 Expo Modules API
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import type { LatLng } from './common.types';
|
|
7
|
-
import type {
|
|
8
|
-
Coordinates,
|
|
9
|
-
ReGeocode,
|
|
10
|
-
LocationOptions,
|
|
11
|
-
LocationListener,
|
|
12
|
-
CoordinateType
|
|
13
|
-
} from './location.types';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* SDK 初始化配置
|
|
17
|
-
*/
|
|
18
|
-
export interface SDKConfig {
|
|
19
|
-
/**
|
|
20
|
-
* iOS API Key
|
|
21
|
-
*/
|
|
22
|
-
iosKey?: string;
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Android API Key
|
|
26
|
-
*/
|
|
27
|
-
androidKey?: string;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* 高德地图 SDK 模块接口
|
|
32
|
-
*/
|
|
33
|
-
export interface AMapSDKModule {
|
|
34
|
-
/**
|
|
35
|
-
* 初始化 SDK
|
|
36
|
-
* @param config SDK配置
|
|
37
|
-
*/
|
|
38
|
-
initSDK(config: SDKConfig): void;
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* 获取 SDK 版本号
|
|
42
|
-
*/
|
|
43
|
-
getVersion(): Promise<string>;
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* 设置 API Key(单平台)
|
|
47
|
-
* @param key API密钥
|
|
48
|
-
*/
|
|
49
|
-
setApiKey(key: string): void;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* 高德定位模块接口
|
|
54
|
-
*/
|
|
55
|
-
export interface AMapLocationModule {
|
|
56
|
-
/**
|
|
57
|
-
* 配置定位选项
|
|
58
|
-
* @param options 定位配置选项
|
|
59
|
-
*/
|
|
60
|
-
configure(options: LocationOptions): void;
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* 开始连续定位
|
|
64
|
-
*/
|
|
65
|
-
start(): void;
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* 停止定位
|
|
69
|
-
*/
|
|
70
|
-
stop(): void;
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* 是否正在定位
|
|
74
|
-
*/
|
|
75
|
-
isStarted(): Promise<boolean>;
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* 获取当前位置(单次定位)
|
|
79
|
-
*/
|
|
80
|
-
getCurrentLocation(): Promise<Coordinates | ReGeocode>;
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* 添加定位监听器
|
|
84
|
-
* @param listener 定位回调函数
|
|
85
|
-
* @returns 订阅对象,用于取消监听
|
|
86
|
-
*/
|
|
87
|
-
addLocationListener(listener: LocationListener): { remove: () => void };
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* 坐标转换
|
|
91
|
-
* @param coordinate 待转换的坐标
|
|
92
|
-
* @param type 坐标系类型
|
|
93
|
-
*/
|
|
94
|
-
coordinateConvert(coordinate: LatLng, type: CoordinateType): Promise<LatLng>;
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* 开始获取设备朝向
|
|
98
|
-
* @platform ios
|
|
99
|
-
*/
|
|
100
|
-
startUpdatingHeading(): void;
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* 停止获取设备朝向
|
|
104
|
-
* @platform ios
|
|
105
|
-
*/
|
|
106
|
-
stopUpdatingHeading(): void;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* 模块事件类型
|
|
111
|
-
*/
|
|
112
|
-
export interface ModuleEvents {
|
|
113
|
-
/**
|
|
114
|
-
* 定位更新事件
|
|
115
|
-
*/
|
|
116
|
-
onLocationUpdate: (location: Coordinates | ReGeocode) => void;
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* 定位错误事件
|
|
120
|
-
*/
|
|
121
|
-
onLocationError: (error: { code: number; message: string }) => void;
|
|
122
|
-
|
|
123
|
-
/**
|
|
124
|
-
* 朝向更新事件
|
|
125
|
-
* @platform ios
|
|
126
|
-
*/
|
|
127
|
-
onHeadingUpdate: (heading: { magneticHeading: number; trueHeading: number }) => void;
|
|
128
|
-
}
|