react-native-map4d-map-dtqg 0.1.2 → 0.1.4

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 (50) hide show
  1. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  2. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  3. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  4. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  5. package/android/.gradle/9.2.0/gc.properties +0 -0
  6. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  7. package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
  8. package/ios/Map4dMap.xcodeproj/project.pbxproj +2 -2
  9. package/ios/RMFMapViewManager.m +2 -1
  10. package/lib/commonjs/components/MFBuilding.js +24 -6
  11. package/lib/commonjs/components/MFBuilding.js.map +1 -1
  12. package/lib/commonjs/components/MFCircle.js +24 -6
  13. package/lib/commonjs/components/MFCircle.js.map +1 -1
  14. package/lib/commonjs/components/MFDirectionsRenderer.js +24 -6
  15. package/lib/commonjs/components/MFDirectionsRenderer.js.map +1 -1
  16. package/lib/commonjs/components/MFMapView.js +22 -5
  17. package/lib/commonjs/components/MFMapView.js.map +1 -1
  18. package/lib/commonjs/components/MFMarker.js +24 -6
  19. package/lib/commonjs/components/MFMarker.js.map +1 -1
  20. package/lib/commonjs/components/MFPOI.js +24 -6
  21. package/lib/commonjs/components/MFPOI.js.map +1 -1
  22. package/lib/commonjs/components/MFPolygon.js +24 -6
  23. package/lib/commonjs/components/MFPolygon.js.map +1 -1
  24. package/lib/commonjs/components/MFPolyline.js +24 -6
  25. package/lib/commonjs/components/MFPolyline.js.map +1 -1
  26. package/lib/module/components/MFBuilding.js +25 -7
  27. package/lib/module/components/MFBuilding.js.map +1 -1
  28. package/lib/module/components/MFCircle.js +25 -7
  29. package/lib/module/components/MFCircle.js.map +1 -1
  30. package/lib/module/components/MFDirectionsRenderer.js +25 -7
  31. package/lib/module/components/MFDirectionsRenderer.js.map +1 -1
  32. package/lib/module/components/MFMapView.js +23 -6
  33. package/lib/module/components/MFMapView.js.map +1 -1
  34. package/lib/module/components/MFMarker.js +25 -7
  35. package/lib/module/components/MFMarker.js.map +1 -1
  36. package/lib/module/components/MFPOI.js +25 -7
  37. package/lib/module/components/MFPOI.js.map +1 -1
  38. package/lib/module/components/MFPolygon.js +25 -7
  39. package/lib/module/components/MFPolygon.js.map +1 -1
  40. package/lib/module/components/MFPolyline.js +25 -7
  41. package/lib/module/components/MFPolyline.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/components/MFBuilding.js +23 -10
  44. package/src/components/MFCircle.js +23 -10
  45. package/src/components/MFDirectionsRenderer.js +23 -10
  46. package/src/components/MFMapView.js +23 -7
  47. package/src/components/MFMarker.js +23 -10
  48. package/src/components/MFPOI.js +23 -10
  49. package/src/components/MFPolygon.js +23 -10
  50. package/src/components/MFPolyline.js +23 -10
File without changes
@@ -1,2 +1,2 @@
1
- #Thu Jun 25 09:33:28 ICT 2026
2
- gradle.version=8.9
1
+ #Wed Jul 08 09:44:56 ICT 2026
2
+ gradle.version=9.2.0
@@ -171,7 +171,7 @@
171
171
  GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
172
172
  GCC_WARN_UNUSED_FUNCTION = YES;
173
173
  GCC_WARN_UNUSED_VARIABLE = YES;
174
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
174
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
175
175
  MTL_ENABLE_DEBUG_INFO = YES;
176
176
  ONLY_ACTIVE_ARCH = YES;
177
177
  SDKROOT = iphoneos;
@@ -214,7 +214,7 @@
214
214
  GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
215
215
  GCC_WARN_UNUSED_FUNCTION = YES;
216
216
  GCC_WARN_UNUSED_VARIABLE = YES;
217
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
217
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
218
218
  MTL_ENABLE_DEBUG_INFO = NO;
219
219
  SDKROOT = iphoneos;
220
220
  VALIDATE_PRODUCT = YES;
@@ -301,7 +301,8 @@ RCT_EXPORT_METHOD(setMapStyle:(nonnull NSNumber *)reactTag
301
301
  } else {
302
302
  RMFMapView *mapView = (RMFMapView *)view;
303
303
  if (style.length > 0) {
304
- [mapView setMapStyle:[MFMapStyleOptions styleOptionsWithJson:style]];
304
+ MFMapStyle *mapStyle = [[MFMapStyle alloc] initWithJSONString:style];
305
+ [mapView setMapStyle:mapStyle];
305
306
  }
306
307
  }
307
308
  }];
@@ -146,9 +146,21 @@ class MFBuilding extends _react.default.Component {
146
146
  _runCommand(name, args) {
147
147
  switch (_reactNative.Platform.OS) {
148
148
  case 'android':
149
- _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
149
+ {
150
+ if (!_reactNative.UIManager || typeof _reactNative.UIManager.dispatchViewManagerCommand !== 'function') {
151
+ return;
152
+ }
150
153
 
151
- break;
154
+ const commandId = this._uiManagerCommand(name);
155
+
156
+ if (commandId == null) {
157
+ return;
158
+ }
159
+
160
+ _reactNative.UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);
161
+
162
+ break;
163
+ }
152
164
 
153
165
  case 'ios':
154
166
  this._mapManagerCommand(name)(this._getHandle(), ...args);
@@ -161,16 +173,22 @@ class MFBuilding extends _react.default.Component {
161
173
  }
162
174
 
163
175
  _uiManagerCommand(name) {
164
- const UIManager = _reactNative.NativeModules.UIManager;
176
+ const uiManager = _reactNative.UIManager || _reactNative.NativeModules.UIManager;
165
177
  const componentName = "RMFBuilding";
166
178
 
167
- if (!UIManager.getViewManagerConfig) {
179
+ if (!uiManager) {
180
+ return null;
181
+ }
182
+
183
+ if (!uiManager.getViewManagerConfig) {
168
184
  // RN < 0.58
169
- return UIManager[componentName].Commands[name];
185
+ const legacyConfig = uiManager[componentName];
186
+ return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;
170
187
  } // RN >= 0.58
171
188
 
172
189
 
173
- return UIManager.getViewManagerConfig(componentName).Commands[name];
190
+ const config = uiManager.getViewManagerConfig(componentName);
191
+ return config && config.Commands ? config.Commands[name] : null;
174
192
  }
175
193
 
176
194
  _mapManagerCommand(name) {
@@ -1 +1 @@
1
- {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","name","PropTypes","string","coordinate","shape","latitude","number","isRequired","longitude","modelUrl","textureUrl","scale","bearing","elevation","selected","bool","touchable","visible","userData","object","onPress","func","MFBuilding","React","Component","constructor","props","_onPress","bind","_ref","event","stopPropagation","ref","building","setName","_runCommand","setScale","setBearing","setElevation","setSelected","setTouchable","setVisible","setUserData","_getHandle","findNodeHandle","args","Platform","OS","NativeModules","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","render","RMFBuilding","requireNativeComponent"],"sources":["MFBuilding.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {ViewPropTypes} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n NativeModules,\r\n findNodeHandle\r\n} from 'react-native';\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The name of the building.\r\n */\r\n name: PropTypes.string,\r\n\r\n /**\r\n * The position of the building\r\n */\r\n coordinate: PropTypes.shape({\r\n /**\r\n * Position for the building.\r\n */\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n /**\r\n * The model URL for the building.\r\n */\r\n modelUrl: PropTypes.string,\r\n\r\n /**\r\n * The texture URL for the building.\r\n */\r\n textureUrl: PropTypes.string,\r\n\r\n /**\r\n * The scale of the building.\r\n */\r\n scale: PropTypes.number,\r\n\r\n /**\r\n * The bearing of the building.\r\n */\r\n bearing: PropTypes.number,\r\n\r\n /**\r\n * The elevation of the building.\r\n */\r\n elevation: PropTypes.number,\r\n\r\n /**\r\n * Is the building selectable by the user ?\r\n */\r\n selected: PropTypes.bool,\r\n\r\n /**\r\n * touchable\r\n */\r\n touchable: PropTypes.bool,\r\n\r\n /**\r\n * visible\r\n */\r\n visible: PropTypes.bool,\r\n\r\n /**\r\n * userData\r\n */\r\n userData:PropTypes.object,\r\n\r\n /**\r\n * Callback that is called when the user presses on the building\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\n\r\nclass MFBuilding extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this._onPress = this._onPress.bind(this)\r\n this._ref = this._ref.bind(this)\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _ref(ref) {\r\n this.building = ref;\r\n }\r\n\r\n setName(name) {\r\n this._runCommand(\"setName\", [name])\r\n }\r\n\r\n setScale(scale) {\r\n this._runCommand(\"setScale\", [scale])\r\n }\r\n\r\n setBearing(bearing) {\r\n this._runCommand(\"setBearing\", [bearing])\r\n }\r\n\r\n setElevation(elevation) {\r\n this._runCommand(\"setElevation\", [elevation])\r\n }\r\n\r\n setSelected(selected) {\r\n this._runCommand(\"setSelected\", [selected])\r\n }\r\n\r\n setTouchable(touchable) {\r\n this._runCommand(\"setTouchable\", [touchable])\r\n }\r\n\r\n setVisible(visible) {\r\n this._runCommand(\"setVisible\", [visible])\r\n }\r\n\r\n setUserData(userData) {\r\n this._runCommand(\"setUserData\", [userData])\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.building);\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android':\r\n NativeModules.UIManager.dispatchViewManagerCommand(\r\n this._getHandle(),\r\n this._uiManagerCommand(name),\r\n args\r\n );\r\n break;\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const UIManager = NativeModules.UIManager;\r\n const componentName = \"RMFBuilding\";\r\n\r\n if (!UIManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n return UIManager[componentName].Commands[name];\r\n }\r\n\r\n // RN >= 0.58\r\n return UIManager.getViewManagerConfig(componentName).Commands[name];\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFBuilding`][name];\r\n }\r\n\r\n render() {\r\n return <RMFBuilding\r\n {...this.props}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n}\r\n\r\nMFBuilding.propTypes = propTypes;\r\n\r\nvar RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);\r\n\r\nexport { MFBuilding }"],"mappings":"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"}
1
+ {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","name","PropTypes","string","coordinate","shape","latitude","number","isRequired","longitude","modelUrl","textureUrl","scale","bearing","elevation","selected","bool","touchable","visible","userData","object","onPress","func","MFBuilding","React","Component","constructor","props","_onPress","bind","_ref","event","stopPropagation","ref","building","setName","_runCommand","setScale","setBearing","setElevation","setSelected","setTouchable","setVisible","setUserData","_getHandle","findNodeHandle","args","Platform","OS","UIManager","dispatchViewManagerCommand","commandId","_uiManagerCommand","_mapManagerCommand","uiManager","NativeModules","componentName","getViewManagerConfig","legacyConfig","Commands","config","render","RMFBuilding","requireNativeComponent"],"sources":["MFBuilding.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {ViewPropTypes} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n UIManager,\r\n NativeModules,\r\n findNodeHandle\r\n} from 'react-native';\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The name of the building.\r\n */\r\n name: PropTypes.string,\r\n\r\n /**\r\n * The position of the building\r\n */\r\n coordinate: PropTypes.shape({\r\n /**\r\n * Position for the building.\r\n */\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n /**\r\n * The model URL for the building.\r\n */\r\n modelUrl: PropTypes.string,\r\n\r\n /**\r\n * The texture URL for the building.\r\n */\r\n textureUrl: PropTypes.string,\r\n\r\n /**\r\n * The scale of the building.\r\n */\r\n scale: PropTypes.number,\r\n\r\n /**\r\n * The bearing of the building.\r\n */\r\n bearing: PropTypes.number,\r\n\r\n /**\r\n * The elevation of the building.\r\n */\r\n elevation: PropTypes.number,\r\n\r\n /**\r\n * Is the building selectable by the user ?\r\n */\r\n selected: PropTypes.bool,\r\n\r\n /**\r\n * touchable\r\n */\r\n touchable: PropTypes.bool,\r\n\r\n /**\r\n * visible\r\n */\r\n visible: PropTypes.bool,\r\n\r\n /**\r\n * userData\r\n */\r\n userData:PropTypes.object,\r\n\r\n /**\r\n * Callback that is called when the user presses on the building\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\n\r\nclass MFBuilding extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this._onPress = this._onPress.bind(this)\r\n this._ref = this._ref.bind(this)\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _ref(ref) {\r\n this.building = ref;\r\n }\r\n\r\n setName(name) {\r\n this._runCommand(\"setName\", [name])\r\n }\r\n\r\n setScale(scale) {\r\n this._runCommand(\"setScale\", [scale])\r\n }\r\n\r\n setBearing(bearing) {\r\n this._runCommand(\"setBearing\", [bearing])\r\n }\r\n\r\n setElevation(elevation) {\r\n this._runCommand(\"setElevation\", [elevation])\r\n }\r\n\r\n setSelected(selected) {\r\n this._runCommand(\"setSelected\", [selected])\r\n }\r\n\r\n setTouchable(touchable) {\r\n this._runCommand(\"setTouchable\", [touchable])\r\n }\r\n\r\n setVisible(visible) {\r\n this._runCommand(\"setVisible\", [visible])\r\n }\r\n\r\n setUserData(userData) {\r\n this._runCommand(\"setUserData\", [userData])\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.building);\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android': {\r\n if (!UIManager || typeof UIManager.dispatchViewManagerCommand !== 'function') {\r\n return;\r\n }\r\n\r\n const commandId = this._uiManagerCommand(name);\r\n if (commandId == null) {\r\n return;\r\n }\r\n\r\n UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);\r\n break;\r\n }\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const uiManager = UIManager || NativeModules.UIManager;\r\n const componentName = \"RMFBuilding\";\r\n\r\n if (!uiManager) {\r\n return null;\r\n }\r\n\r\n if (!uiManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n const legacyConfig = uiManager[componentName];\r\n return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;\r\n }\r\n\r\n // RN >= 0.58\r\n const config = uiManager.getViewManagerConfig(componentName);\r\n return config && config.Commands ? config.Commands[name] : null;\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFBuilding`][name];\r\n }\r\n\r\n render() {\r\n return <RMFBuilding\r\n {...this.props}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n}\r\n\r\nMFBuilding.propTypes = propTypes;\r\n\r\nvar RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);\r\n\r\nexport { MFBuilding }"],"mappings":"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"}
@@ -122,9 +122,21 @@ class MFCircle extends _react.default.Component {
122
122
  _runCommand(name, args) {
123
123
  switch (_reactNative.Platform.OS) {
124
124
  case 'android':
125
- _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
125
+ {
126
+ if (!_reactNative.UIManager || typeof _reactNative.UIManager.dispatchViewManagerCommand !== 'function') {
127
+ return;
128
+ }
126
129
 
127
- break;
130
+ const commandId = this._uiManagerCommand(name);
131
+
132
+ if (commandId == null) {
133
+ return;
134
+ }
135
+
136
+ _reactNative.UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);
137
+
138
+ break;
139
+ }
128
140
 
129
141
  case 'ios':
130
142
  this._mapManagerCommand(name)(this._getHandle(), ...args);
@@ -137,16 +149,22 @@ class MFCircle extends _react.default.Component {
137
149
  }
138
150
 
139
151
  _uiManagerCommand(name) {
140
- const UIManager = _reactNative.NativeModules.UIManager;
152
+ const uiManager = _reactNative.UIManager || _reactNative.NativeModules.UIManager;
141
153
  const componentName = "RMFCircle";
142
154
 
143
- if (!UIManager.getViewManagerConfig) {
155
+ if (!uiManager) {
156
+ return null;
157
+ }
158
+
159
+ if (!uiManager.getViewManagerConfig) {
144
160
  // RN < 0.58
145
- return UIManager[componentName].Commands[name];
161
+ const legacyConfig = uiManager[componentName];
162
+ return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;
146
163
  } // RN >= 0.58
147
164
 
148
165
 
149
- return UIManager.getViewManagerConfig(componentName).Commands[name];
166
+ const config = uiManager.getViewManagerConfig(componentName);
167
+ return config && config.Commands ? config.Commands[name] : null;
150
168
  }
151
169
 
152
170
  _mapManagerCommand(name) {
@@ -1 +1 @@
1
- {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","center","PropTypes","shape","latitude","number","isRequired","longitude","radius","strokeWidth","strokeColor","ColorPropType","fillColor","zIndex","visible","bool","userData","object","onPress","func","MFCircle","React","Component","constructor","props","_onPress","bind","_ref","setCenter","_runCommand","setRadius","setFillColor","color","processColor","setStrokeColor","setStrokeWidth","width","setUserData","setZIndex","setVisible","_getHandle","findNodeHandle","circle","name","args","Platform","OS","NativeModules","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","event","stopPropagation","ref","render","RMFCircle","requireNativeComponent"],"sources":["MFCircle.js"],"sourcesContent":["import PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n NativeModules,\r\n findNodeHandle,\r\n processColor\r\n} from 'react-native';\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The coordinate of the center of the circle\r\n */\r\n center: PropTypes.shape({\r\n /**\r\n * Coordinates for the center of the circle.\r\n */\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }).isRequired,\r\n\r\n /**\r\n * The radius of the circle to be drawn (in meters)\r\n */\r\n radius: PropTypes.number.isRequired,\r\n\r\n /**\r\n * The stroke width to use for the circle.\r\n */\r\n strokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The stroke color to use for the circle.\r\n */\r\n strokeColor: ColorPropType,\r\n\r\n /**\r\n * The fill color to use for the circle.\r\n */\r\n fillColor: ColorPropType,\r\n\r\n /**\r\n * zIndex\r\n */\r\n zIndex: PropTypes.number,\r\n\r\n /**\r\n * visible\r\n */\r\n visible: PropTypes.bool,\r\n\r\n /**\r\n * userData\r\n */\r\n userData:PropTypes.object,\r\n\r\n /**\r\n * Callback that is called when the user presses on the circle\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\n// const defaultProps = {\r\n// strokeColor: '#000',\r\n// strokeWidth: 1,\r\n// };\r\n\r\nclass MFCircle extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this._onPress = this._onPress.bind(this)\r\n this._ref = this._ref.bind(this)\r\n }\r\n\r\n setCenter(center) {\r\n this._runCommand(\"setCenter\", [center])\r\n }\r\n setRadius(radius) {\r\n this._runCommand(\"setRadius\", [radius])\r\n }\r\n setFillColor(color) {\r\n this._runCommand(\"setFillColor\", [processColor(color)])\r\n }\r\n setStrokeColor(color) {\r\n this._runCommand(\"setStrokeColor\", [processColor(color)])\r\n }\r\n setStrokeWidth(width) {\r\n this._runCommand(\"setStrokeWidth\", [width])\r\n }\r\n setUserData(userData) {\r\n this._runCommand(\"setUserData\", [userData])\r\n }\r\n setZIndex(zIndex) {\r\n this._runCommand(\"setZIndex\", [zIndex])\r\n }\r\n setVisible(visible) {\r\n this._runCommand(\"setVisible\", [visible])\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.circle);\r\n }\r\n\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android':\r\n NativeModules.UIManager.dispatchViewManagerCommand(\r\n this._getHandle(),\r\n this._uiManagerCommand(name),\r\n args\r\n );\r\n break;\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const UIManager = NativeModules.UIManager;\r\n const componentName = \"RMFCircle\";\r\n\r\n if (!UIManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n return UIManager[componentName].Commands[name];\r\n }\r\n\r\n // RN >= 0.58 \r\n return UIManager.getViewManagerConfig(componentName).Commands[name];\r\n }\r\n \r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFCircle`][name];\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _ref(ref) {\r\n this.circle = ref;\r\n }\r\n\r\n render() {\r\n return <RMFCircle\r\n {...this.props}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n}\r\n\r\nMFCircle.propTypes = propTypes;\r\n// MFCircle.defaultProps = defaultProps;\r\n\r\nvar RMFCircle = requireNativeComponent(`RMFCircle`, MFCircle);\r\n\r\nexport {MFCircle}\r\n"],"mappings":"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"}
1
+ {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","center","PropTypes","shape","latitude","number","isRequired","longitude","radius","strokeWidth","strokeColor","ColorPropType","fillColor","zIndex","visible","bool","userData","object","onPress","func","MFCircle","React","Component","constructor","props","_onPress","bind","_ref","setCenter","_runCommand","setRadius","setFillColor","color","processColor","setStrokeColor","setStrokeWidth","width","setUserData","setZIndex","setVisible","_getHandle","findNodeHandle","circle","name","args","Platform","OS","UIManager","dispatchViewManagerCommand","commandId","_uiManagerCommand","_mapManagerCommand","uiManager","NativeModules","componentName","getViewManagerConfig","legacyConfig","Commands","config","event","stopPropagation","ref","render","RMFCircle","requireNativeComponent"],"sources":["MFCircle.js"],"sourcesContent":["import PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n UIManager,\r\n NativeModules,\r\n findNodeHandle,\r\n processColor\r\n} from 'react-native';\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The coordinate of the center of the circle\r\n */\r\n center: PropTypes.shape({\r\n /**\r\n * Coordinates for the center of the circle.\r\n */\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }).isRequired,\r\n\r\n /**\r\n * The radius of the circle to be drawn (in meters)\r\n */\r\n radius: PropTypes.number.isRequired,\r\n\r\n /**\r\n * The stroke width to use for the circle.\r\n */\r\n strokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The stroke color to use for the circle.\r\n */\r\n strokeColor: ColorPropType,\r\n\r\n /**\r\n * The fill color to use for the circle.\r\n */\r\n fillColor: ColorPropType,\r\n\r\n /**\r\n * zIndex\r\n */\r\n zIndex: PropTypes.number,\r\n\r\n /**\r\n * visible\r\n */\r\n visible: PropTypes.bool,\r\n\r\n /**\r\n * userData\r\n */\r\n userData:PropTypes.object,\r\n\r\n /**\r\n * Callback that is called when the user presses on the circle\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\n// const defaultProps = {\r\n// strokeColor: '#000',\r\n// strokeWidth: 1,\r\n// };\r\n\r\nclass MFCircle extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this._onPress = this._onPress.bind(this)\r\n this._ref = this._ref.bind(this)\r\n }\r\n\r\n setCenter(center) {\r\n this._runCommand(\"setCenter\", [center])\r\n }\r\n setRadius(radius) {\r\n this._runCommand(\"setRadius\", [radius])\r\n }\r\n setFillColor(color) {\r\n this._runCommand(\"setFillColor\", [processColor(color)])\r\n }\r\n setStrokeColor(color) {\r\n this._runCommand(\"setStrokeColor\", [processColor(color)])\r\n }\r\n setStrokeWidth(width) {\r\n this._runCommand(\"setStrokeWidth\", [width])\r\n }\r\n setUserData(userData) {\r\n this._runCommand(\"setUserData\", [userData])\r\n }\r\n setZIndex(zIndex) {\r\n this._runCommand(\"setZIndex\", [zIndex])\r\n }\r\n setVisible(visible) {\r\n this._runCommand(\"setVisible\", [visible])\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.circle);\r\n }\r\n\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android': {\r\n if (!UIManager || typeof UIManager.dispatchViewManagerCommand !== 'function') {\r\n return;\r\n }\r\n\r\n const commandId = this._uiManagerCommand(name);\r\n if (commandId == null) {\r\n return;\r\n }\r\n\r\n UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);\r\n break;\r\n }\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const uiManager = UIManager || NativeModules.UIManager;\r\n const componentName = \"RMFCircle\";\r\n\r\n if (!uiManager) {\r\n return null;\r\n }\r\n\r\n if (!uiManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n const legacyConfig = uiManager[componentName];\r\n return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;\r\n }\r\n\r\n // RN >= 0.58 \r\n const config = uiManager.getViewManagerConfig(componentName);\r\n return config && config.Commands ? config.Commands[name] : null;\r\n }\r\n \r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFCircle`][name];\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _ref(ref) {\r\n this.circle = ref;\r\n }\r\n\r\n render() {\r\n return <RMFCircle\r\n {...this.props}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n}\r\n\r\nMFCircle.propTypes = propTypes;\r\n// MFCircle.defaultProps = defaultProps;\r\n\r\nvar RMFCircle = requireNativeComponent(`RMFCircle`, MFCircle);\r\n\r\nexport {MFCircle}\r\n"],"mappings":"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"}
@@ -197,9 +197,21 @@ class MFDirectionsRenderer extends _react.default.Component {
197
197
  _runCommand(name, args) {
198
198
  switch (_reactNative.Platform.OS) {
199
199
  case 'android':
200
- _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
200
+ {
201
+ if (!_reactNative.UIManager || typeof _reactNative.UIManager.dispatchViewManagerCommand !== 'function') {
202
+ return;
203
+ }
201
204
 
202
- break;
205
+ const commandId = this._uiManagerCommand(name);
206
+
207
+ if (commandId == null) {
208
+ return;
209
+ }
210
+
211
+ _reactNative.UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);
212
+
213
+ break;
214
+ }
203
215
 
204
216
  case 'ios':
205
217
  this._mapManagerCommand(name)(this._getHandle(), ...args);
@@ -216,16 +228,22 @@ class MFDirectionsRenderer extends _react.default.Component {
216
228
  }
217
229
 
218
230
  _uiManagerCommand(name) {
219
- const UIManager = _reactNative.NativeModules.UIManager;
231
+ const uiManager = _reactNative.UIManager || _reactNative.NativeModules.UIManager;
220
232
  const componentName = "RMFDirectionsRenderer";
221
233
 
222
- if (!UIManager.getViewManagerConfig) {
234
+ if (!uiManager) {
235
+ return null;
236
+ }
237
+
238
+ if (!uiManager.getViewManagerConfig) {
223
239
  // RN < 0.58
224
- return UIManager[componentName].Commands[name];
240
+ const legacyConfig = uiManager[componentName];
241
+ return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;
225
242
  } // RN >= 0.58
226
243
 
227
244
 
228
- return UIManager.getViewManagerConfig(componentName).Commands[name];
245
+ const config = uiManager.getViewManagerConfig(componentName);
246
+ return config && config.Commands ? config.Commands[name] : null;
229
247
  }
230
248
 
231
249
  _mapManagerCommand(name) {
@@ -1 +1 @@
1
- {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","routes","PropTypes","arrayOf","shape","latitude","number","isRequired","longitude","directions","string","activedIndex","activeStrokeWidth","activeStrokeColor","ColorPropType","activeOutlineWidth","activeOutlineColor","inactiveStrokeWidth","inactiveStrokeColor","inactiveOutlineWidth","inactiveOutlineColor","originPOIOptions","coordinate","icon","uri","any","title","titleColor","visible","bool","destinationPOIOptions","onPress","func","MFDirectionsRenderer","React","Component","constructor","props","_ref","bind","_onPress","setActivedIndex","index","_runCommand","setRoutes","setDirections","render","processColor","Image","resolveAssetSource","ref","renderer","event","stopPropagation","name","args","Platform","OS","NativeModules","UIManager","dispatchViewManagerCommand","_getHandle","_uiManagerCommand","_mapManagerCommand","findNodeHandle","componentName","getViewManagerConfig","Commands","RMFDirectionsRenderer","requireNativeComponent"],"sources":["MFDirectionsRenderer.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n Image,\r\n NativeModules,\r\n findNodeHandle,\r\n processColor\r\n} from 'react-native';\r\n\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The directions to display on the map,\r\n * retrieved as an array of array of coordinates to describe the routes.\r\n * Similar to directions prop but has higher priority\r\n */\r\n routes: PropTypes.arrayOf(\r\n PropTypes.arrayOf(\r\n PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n })\r\n )\r\n ),\r\n\r\n /**\r\n * The directions to display on the map,\r\n * retrieved as a json string from Get route Map4D API (/sdk/route).\r\n * Similar to routes prop but with lower priority\r\n */\r\n directions: PropTypes.string,\r\n\r\n /**\r\n * The index of the main route, default value is 0.\r\n */\r\n activedIndex: PropTypes.number,\r\n\r\n /**\r\n * The active route stroke width.\r\n */\r\n activeStrokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The active route color.\r\n */\r\n activeStrokeColor: ColorPropType,\r\n\r\n /**\r\n * The active route outline stroke width.\r\n */\r\n activeOutlineWidth: PropTypes.number,\r\n\r\n /**\r\n * The active route outline color.\r\n */\r\n activeOutlineColor: ColorPropType,\r\n\r\n /**\r\n * The inactive route stroke width.\r\n */\r\n inactiveStrokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The inactive route color.\r\n */\r\n inactiveStrokeColor: ColorPropType,\r\n\r\n /**\r\n * The inactive route outline stroke width.\r\n */\r\n inactiveOutlineWidth: PropTypes.number,\r\n\r\n /**\r\n * The inactive route outline color.\r\n */\r\n inactiveOutlineColor: ColorPropType,\r\n\r\n /**\r\n * The options of the origin POI.\r\n */\r\n originPOIOptions: PropTypes.shape({\r\n coordinate: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n icon: PropTypes.shape({\r\n uri: PropTypes.any.isRequired\r\n }),\r\n\r\n title: PropTypes.string,\r\n\r\n titleColor: ColorPropType,\r\n\r\n visible: PropTypes.bool,\r\n }),\r\n\r\n /**\r\n * The options of the destination POI.\r\n */\r\n destinationPOIOptions: PropTypes.shape({\r\n coordinate: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n icon: PropTypes.shape({\r\n uri: PropTypes.any.isRequired\r\n }),\r\n\r\n title: PropTypes.string,\r\n\r\n titleColor: ColorPropType,\r\n\r\n visible: PropTypes.bool,\r\n }),\r\n\r\n /**\r\n * Callback that is called when the user presses on the routes.\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\nclass MFDirectionsRenderer extends React.Component {\r\n constructor(props) {\r\n super(props)\r\n this._ref = this._ref.bind(this)\r\n this._onPress = this._onPress.bind(this)\r\n }\r\n\r\n setActivedIndex(index) {\r\n this._runCommand(\"setActivedIndex\", [index])\r\n }\r\n\r\n setRoutes(routes) {\r\n this._runCommand(\"setRoutes\", [routes])\r\n }\r\n\r\n setDirections(directions) {\r\n this._runCommand(\"setDirections\", [directions])\r\n }\r\n\r\n render() {\r\n let originPOIOptions = this.props.originPOIOptions\r\n if (originPOIOptions) {\r\n if (originPOIOptions.titleColor) {\r\n originPOIOptions.titleColor = processColor(originPOIOptions.titleColor)\r\n }\r\n if (originPOIOptions.icon) {\r\n let uri = Image.resolveAssetSource(originPOIOptions.icon.uri) || {uri: originPOIOptions.icon.uri};\r\n originPOIOptions.icon = {uri: uri.uri}\r\n }\r\n }\r\n\r\n let destinationPOIOptions = this.props.destinationPOIOptions\r\n if (destinationPOIOptions) {\r\n if (destinationPOIOptions.titleColor) {\r\n destinationPOIOptions.titleColor = processColor(destinationPOIOptions.titleColor)\r\n }\r\n if (destinationPOIOptions.icon) {\r\n let uri = Image.resolveAssetSource(destinationPOIOptions.icon.uri) || {uri: destinationPOIOptions.icon.uri};\r\n destinationPOIOptions.icon = {uri: uri.uri}\r\n }\r\n }\r\n\r\n return <RMFDirectionsRenderer\r\n {...this.props}\r\n originPOIOptions={originPOIOptions}\r\n destinationPOIOptions={destinationPOIOptions}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n\r\n _ref(ref) {\r\n this.renderer = ref;\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android':\r\n NativeModules.UIManager.dispatchViewManagerCommand(\r\n this._getHandle(),\r\n this._uiManagerCommand(name),\r\n args\r\n );\r\n break;\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.renderer);\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const UIManager = NativeModules.UIManager;\r\n const componentName = \"RMFDirectionsRenderer\";\r\n\r\n if (!UIManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n return UIManager[componentName].Commands[name];\r\n }\r\n\r\n // RN >= 0.58 \r\n return UIManager.getViewManagerConfig(componentName).Commands[name];\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFDirectionsRenderer`][name];\r\n }\r\n}\r\n\r\nMFDirectionsRenderer.propTypes = propTypes;\r\n\r\nvar RMFDirectionsRenderer = requireNativeComponent(`RMFDirectionsRenderer`, MFDirectionsRenderer);\r\n\r\nexport { MFDirectionsRenderer }\r\n"],"mappings":"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"}
1
+ {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","routes","PropTypes","arrayOf","shape","latitude","number","isRequired","longitude","directions","string","activedIndex","activeStrokeWidth","activeStrokeColor","ColorPropType","activeOutlineWidth","activeOutlineColor","inactiveStrokeWidth","inactiveStrokeColor","inactiveOutlineWidth","inactiveOutlineColor","originPOIOptions","coordinate","icon","uri","any","title","titleColor","visible","bool","destinationPOIOptions","onPress","func","MFDirectionsRenderer","React","Component","constructor","props","_ref","bind","_onPress","setActivedIndex","index","_runCommand","setRoutes","setDirections","render","processColor","Image","resolveAssetSource","ref","renderer","event","stopPropagation","name","args","Platform","OS","UIManager","dispatchViewManagerCommand","commandId","_uiManagerCommand","_getHandle","_mapManagerCommand","findNodeHandle","uiManager","NativeModules","componentName","getViewManagerConfig","legacyConfig","Commands","config","RMFDirectionsRenderer","requireNativeComponent"],"sources":["MFDirectionsRenderer.js"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n Image,\r\n UIManager,\r\n NativeModules,\r\n findNodeHandle,\r\n processColor\r\n} from 'react-native';\r\n\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * The directions to display on the map,\r\n * retrieved as an array of array of coordinates to describe the routes.\r\n * Similar to directions prop but has higher priority\r\n */\r\n routes: PropTypes.arrayOf(\r\n PropTypes.arrayOf(\r\n PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n })\r\n )\r\n ),\r\n\r\n /**\r\n * The directions to display on the map,\r\n * retrieved as a json string from Get route Map4D API (/sdk/route).\r\n * Similar to routes prop but with lower priority\r\n */\r\n directions: PropTypes.string,\r\n\r\n /**\r\n * The index of the main route, default value is 0.\r\n */\r\n activedIndex: PropTypes.number,\r\n\r\n /**\r\n * The active route stroke width.\r\n */\r\n activeStrokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The active route color.\r\n */\r\n activeStrokeColor: ColorPropType,\r\n\r\n /**\r\n * The active route outline stroke width.\r\n */\r\n activeOutlineWidth: PropTypes.number,\r\n\r\n /**\r\n * The active route outline color.\r\n */\r\n activeOutlineColor: ColorPropType,\r\n\r\n /**\r\n * The inactive route stroke width.\r\n */\r\n inactiveStrokeWidth: PropTypes.number,\r\n\r\n /**\r\n * The inactive route color.\r\n */\r\n inactiveStrokeColor: ColorPropType,\r\n\r\n /**\r\n * The inactive route outline stroke width.\r\n */\r\n inactiveOutlineWidth: PropTypes.number,\r\n\r\n /**\r\n * The inactive route outline color.\r\n */\r\n inactiveOutlineColor: ColorPropType,\r\n\r\n /**\r\n * The options of the origin POI.\r\n */\r\n originPOIOptions: PropTypes.shape({\r\n coordinate: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n icon: PropTypes.shape({\r\n uri: PropTypes.any.isRequired\r\n }),\r\n\r\n title: PropTypes.string,\r\n\r\n titleColor: ColorPropType,\r\n\r\n visible: PropTypes.bool,\r\n }),\r\n\r\n /**\r\n * The options of the destination POI.\r\n */\r\n destinationPOIOptions: PropTypes.shape({\r\n coordinate: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n\r\n icon: PropTypes.shape({\r\n uri: PropTypes.any.isRequired\r\n }),\r\n\r\n title: PropTypes.string,\r\n\r\n titleColor: ColorPropType,\r\n\r\n visible: PropTypes.bool,\r\n }),\r\n\r\n /**\r\n * Callback that is called when the user presses on the routes.\r\n */\r\n onPress: PropTypes.func,\r\n};\r\n\r\nclass MFDirectionsRenderer extends React.Component {\r\n constructor(props) {\r\n super(props)\r\n this._ref = this._ref.bind(this)\r\n this._onPress = this._onPress.bind(this)\r\n }\r\n\r\n setActivedIndex(index) {\r\n this._runCommand(\"setActivedIndex\", [index])\r\n }\r\n\r\n setRoutes(routes) {\r\n this._runCommand(\"setRoutes\", [routes])\r\n }\r\n\r\n setDirections(directions) {\r\n this._runCommand(\"setDirections\", [directions])\r\n }\r\n\r\n render() {\r\n let originPOIOptions = this.props.originPOIOptions\r\n if (originPOIOptions) {\r\n if (originPOIOptions.titleColor) {\r\n originPOIOptions.titleColor = processColor(originPOIOptions.titleColor)\r\n }\r\n if (originPOIOptions.icon) {\r\n let uri = Image.resolveAssetSource(originPOIOptions.icon.uri) || {uri: originPOIOptions.icon.uri};\r\n originPOIOptions.icon = {uri: uri.uri}\r\n }\r\n }\r\n\r\n let destinationPOIOptions = this.props.destinationPOIOptions\r\n if (destinationPOIOptions) {\r\n if (destinationPOIOptions.titleColor) {\r\n destinationPOIOptions.titleColor = processColor(destinationPOIOptions.titleColor)\r\n }\r\n if (destinationPOIOptions.icon) {\r\n let uri = Image.resolveAssetSource(destinationPOIOptions.icon.uri) || {uri: destinationPOIOptions.icon.uri};\r\n destinationPOIOptions.icon = {uri: uri.uri}\r\n }\r\n }\r\n\r\n return <RMFDirectionsRenderer\r\n {...this.props}\r\n originPOIOptions={originPOIOptions}\r\n destinationPOIOptions={destinationPOIOptions}\r\n ref={this._ref}\r\n onPress={this._onPress}\r\n />;\r\n }\r\n\r\n _ref(ref) {\r\n this.renderer = ref;\r\n }\r\n\r\n _onPress(event) {\r\n event.stopPropagation();\r\n if (this.props.onPress) {\r\n this.props.onPress(event);\r\n }\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android': {\r\n if (!UIManager || typeof UIManager.dispatchViewManagerCommand !== 'function') {\r\n return;\r\n }\r\n\r\n const commandId = this._uiManagerCommand(name);\r\n if (commandId == null) {\r\n return;\r\n }\r\n\r\n UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);\r\n break;\r\n }\r\n\r\n case 'ios':\r\n this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.renderer);\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const uiManager = UIManager || NativeModules.UIManager;\r\n const componentName = \"RMFDirectionsRenderer\";\r\n\r\n if (!uiManager) {\r\n return null;\r\n }\r\n\r\n if (!uiManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n const legacyConfig = uiManager[componentName];\r\n return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;\r\n }\r\n\r\n // RN >= 0.58 \r\n const config = uiManager.getViewManagerConfig(componentName);\r\n return config && config.Commands ? config.Commands[name] : null;\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFDirectionsRenderer`][name];\r\n }\r\n}\r\n\r\nMFDirectionsRenderer.propTypes = propTypes;\r\n\r\nvar RMFDirectionsRenderer = requireNativeComponent(`RMFDirectionsRenderer`, MFDirectionsRenderer);\r\n\r\nexport { MFDirectionsRenderer }\r\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAUA,MAAMA,aAAa,GAAGC,6CAAA,IAAiBC,IAAI,CAACC,SAA5C;AAEA,MAAMA,SAAS,GAAG,EAChB,GAAGH,aADa;;EAGhB;AACF;AACA;AACA;AACA;EACEI,MAAM,EAAEC,kBAAA,CAAUC,OAAV,CACND,kBAAA,CAAUC,OAAV,CACED,kBAAA,CAAUE,KAAV,CAAgB;IACdC,QAAQ,EAAEH,kBAAA,CAAUI,MAAV,CAAiBC,UADb;IAEdC,SAAS,EAAEN,kBAAA,CAAUI,MAAV,CAAiBC;EAFd,CAAhB,CADF,CADM,CARQ;;EAiBhB;AACF;AACA;AACA;AACA;EACEE,UAAU,EAAEP,kBAAA,CAAUQ,MAtBN;;EAwBhB;AACF;AACA;EACEC,YAAY,EAAET,kBAAA,CAAUI,MA3BR;;EA6BhB;AACF;AACA;EACEM,iBAAiB,EAAEV,kBAAA,CAAUI,MAhCb;;EAkChB;AACF;AACA;EACEO,iBAAiB,EAAEC,6CArCH;;EAuChB;AACF;AACA;EACEC,kBAAkB,EAAEb,kBAAA,CAAUI,MA1Cd;;EA4ChB;AACF;AACA;EACEU,kBAAkB,EAAEF,6CA/CJ;;EAiDhB;AACF;AACA;EACEG,mBAAmB,EAAEf,kBAAA,CAAUI,MApDf;;EAsDhB;AACF;AACA;EACEY,mBAAmB,EAAEJ,6CAzDL;;EA2DhB;AACF;AACA;EACEK,oBAAoB,EAAEjB,kBAAA,CAAUI,MA9DhB;;EAgEhB;AACF;AACA;EACEc,oBAAoB,EAAEN,6CAnEN;;EAqEhB;AACF;AACA;EACEO,gBAAgB,EAAEnB,kBAAA,CAAUE,KAAV,CAAgB;IAChCkB,UAAU,EAAEpB,kBAAA,CAAUE,KAAV,CAAgB;MAC1BC,QAAQ,EAAEH,kBAAA,CAAUI,MAAV,CAAiBC,UADD;MAE1BC,SAAS,EAAEN,kBAAA,CAAUI,MAAV,CAAiBC;IAFF,CAAhB,CADoB;IAMhCgB,IAAI,EAAErB,kBAAA,CAAUE,KAAV,CAAgB;MACpBoB,GAAG,EAAEtB,kBAAA,CAAUuB,GAAV,CAAclB;IADC,CAAhB,CAN0B;IAUhCmB,KAAK,EAAExB,kBAAA,CAAUQ,MAVe;IAYhCiB,UAAU,EAAEb,6CAZoB;IAchCc,OAAO,EAAE1B,kBAAA,CAAU2B;EAda,CAAhB,CAxEF;;EAyFhB;AACF;AACA;EACEC,qBAAqB,EAAE5B,kBAAA,CAAUE,KAAV,CAAgB;IACrCkB,UAAU,EAAEpB,kBAAA,CAAUE,KAAV,CAAgB;MAC1BC,QAAQ,EAAEH,kBAAA,CAAUI,MAAV,CAAiBC,UADD;MAE1BC,SAAS,EAAEN,kBAAA,CAAUI,MAAV,CAAiBC;IAFF,CAAhB,CADyB;IAMrCgB,IAAI,EAAErB,kBAAA,CAAUE,KAAV,CAAgB;MACpBoB,GAAG,EAAEtB,kBAAA,CAAUuB,GAAV,CAAclB;IADC,CAAhB,CAN+B;IAUrCmB,KAAK,EAAExB,kBAAA,CAAUQ,MAVoB;IAYrCiB,UAAU,EAAEb,6CAZyB;IAcrCc,OAAO,EAAE1B,kBAAA,CAAU2B;EAdkB,CAAhB,CA5FP;;EA6GhB;AACF;AACA;EACEE,OAAO,EAAE7B,kBAAA,CAAU8B;AAhHH,CAAlB;;AAmHA,MAAMC,oBAAN,SAAmCC,cAAA,CAAMC,SAAzC,CAAmD;EACjDC,WAAW,CAACC,KAAD,EAAQ;IACjB,MAAMA,KAAN;IACA,KAAKC,IAAL,GAAY,KAAKA,IAAL,CAAUC,IAAV,CAAe,IAAf,CAAZ;IACA,KAAKC,QAAL,GAAgB,KAAKA,QAAL,CAAcD,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEDE,eAAe,CAACC,KAAD,EAAQ;IACrB,KAAKC,WAAL,CAAiB,iBAAjB,EAAoC,CAACD,KAAD,CAApC;EACD;;EAEDE,SAAS,CAAC3C,MAAD,EAAS;IAChB,KAAK0C,WAAL,CAAiB,WAAjB,EAA8B,CAAC1C,MAAD,CAA9B;EACD;;EAED4C,aAAa,CAACpC,UAAD,EAAa;IACxB,KAAKkC,WAAL,CAAiB,eAAjB,EAAkC,CAAClC,UAAD,CAAlC;EACD;;EAEDqC,MAAM,GAAG;IACP,IAAIzB,gBAAgB,GAAG,KAAKgB,KAAL,CAAWhB,gBAAlC;;IACA,IAAIA,gBAAJ,EAAsB;MACpB,IAAIA,gBAAgB,CAACM,UAArB,EAAiC;QAC/BN,gBAAgB,CAACM,UAAjB,GAA8B,IAAAoB,yBAAA,EAAa1B,gBAAgB,CAACM,UAA9B,CAA9B;MACD;;MACD,IAAIN,gBAAgB,CAACE,IAArB,EAA2B;QACzB,IAAIC,GAAG,GAAGwB,kBAAA,CAAMC,kBAAN,CAAyB5B,gBAAgB,CAACE,IAAjB,CAAsBC,GAA/C,KAAuD;UAACA,GAAG,EAAEH,gBAAgB,CAACE,IAAjB,CAAsBC;QAA5B,CAAjE;QACAH,gBAAgB,CAACE,IAAjB,GAAwB;UAACC,GAAG,EAAEA,GAAG,CAACA;QAAV,CAAxB;MACD;IACF;;IAED,IAAIM,qBAAqB,GAAG,KAAKO,KAAL,CAAWP,qBAAvC;;IACA,IAAIA,qBAAJ,EAA2B;MACzB,IAAIA,qBAAqB,CAACH,UAA1B,EAAsC;QACpCG,qBAAqB,CAACH,UAAtB,GAAmC,IAAAoB,yBAAA,EAAajB,qBAAqB,CAACH,UAAnC,CAAnC;MACD;;MACD,IAAIG,qBAAqB,CAACP,IAA1B,EAAgC;QAC9B,IAAIC,GAAG,GAAGwB,kBAAA,CAAMC,kBAAN,CAAyBnB,qBAAqB,CAACP,IAAtB,CAA2BC,GAApD,KAA4D;UAACA,GAAG,EAAEM,qBAAqB,CAACP,IAAtB,CAA2BC;QAAjC,CAAtE;QACAM,qBAAqB,CAACP,IAAtB,GAA6B;UAACC,GAAG,EAAEA,GAAG,CAACA;QAAV,CAA7B;MACD;IACF;;IAED,oBAAO,6BAAC,qBAAD,eACD,KAAKa,KADJ;MAEL,gBAAgB,EAAEhB,gBAFb;MAGL,qBAAqB,EAAES,qBAHlB;MAIL,GAAG,EAAE,KAAKQ,IAJL;MAKL,OAAO,EAAE,KAAKE;IALT,GAAP;EAOD;;EAEDF,IAAI,CAACY,GAAD,EAAM;IACR,KAAKC,QAAL,GAAgBD,GAAhB;EACD;;EAEDV,QAAQ,CAACY,KAAD,EAAQ;IACdA,KAAK,CAACC,eAAN;;IACE,IAAI,KAAKhB,KAAL,CAAWN,OAAf,EAAwB;MACtB,KAAKM,KAAL,CAAWN,OAAX,CAAmBqB,KAAnB;IACH;EACF;;EAEDT,WAAW,CAACW,IAAD,EAAOC,IAAP,EAAa;IACtB,QAAQC,qBAAA,CAASC,EAAjB;MACE,KAAK,SAAL;QAAgB;UACd,IAAI,CAACC,sBAAD,IAAc,OAAOA,sBAAA,CAAUC,0BAAjB,KAAgD,UAAlE,EAA8E;YAC5E;UACD;;UAED,MAAMC,SAAS,GAAG,KAAKC,iBAAL,CAAuBP,IAAvB,CAAlB;;UACA,IAAIM,SAAS,IAAI,IAAjB,EAAuB;YACrB;UACD;;UAEDF,sBAAA,CAAUC,0BAAV,CAAqC,KAAKG,UAAL,EAArC,EAAwDF,SAAxD,EAAmEL,IAAnE;;UACA;QACD;;MAED,KAAK,KAAL;QACE,KAAKQ,kBAAL,CAAwBT,IAAxB,EAA8B,KAAKQ,UAAL,EAA9B,EAAiD,GAAGP,IAApD;;QACA;;MAEF;QACE;IApBJ;EAsBD;;EAEDO,UAAU,GAAG;IACX,OAAO,IAAAE,2BAAA,EAAe,KAAKb,QAApB,CAAP;EACD;;EAEDU,iBAAiB,CAACP,IAAD,EAAO;IACtB,MAAMW,SAAS,GAAGP,sBAAA,IAAaQ,0BAAA,CAAcR,SAA7C;IACA,MAAMS,aAAa,GAAG,uBAAtB;;IAEA,IAAI,CAACF,SAAL,EAAgB;MACd,OAAO,IAAP;IACD;;IAED,IAAI,CAACA,SAAS,CAACG,oBAAf,EAAqC;MACnC;MACA,MAAMC,YAAY,GAAGJ,SAAS,CAACE,aAAD,CAA9B;MACA,OAAOE,YAAY,IAAIA,YAAY,CAACC,QAA7B,GAAwCD,YAAY,CAACC,QAAb,CAAsBhB,IAAtB,CAAxC,GAAsE,IAA7E;IACD,CAZqB,CActB;;;IACA,MAAMiB,MAAM,GAAGN,SAAS,CAACG,oBAAV,CAA+BD,aAA/B,CAAf;IACA,OAAOI,MAAM,IAAIA,MAAM,CAACD,QAAjB,GAA4BC,MAAM,CAACD,QAAP,CAAgBhB,IAAhB,CAA5B,GAAoD,IAA3D;EACD;;EAEDS,kBAAkB,CAACT,IAAD,EAAO;IACvB,OAAOY,0BAAA,CAAe,uBAAf,EAAuCZ,IAAvC,CAAP;EACD;;AAhHgD;;;AAmHnDrB,oBAAoB,CAACjC,SAArB,GAAiCA,SAAjC;AAEA,IAAIwE,qBAAqB,GAAG,IAAAC,mCAAA,EAAwB,uBAAxB,EAAgDxC,oBAAhD,CAA5B"}
@@ -386,7 +386,19 @@ class MFMapView extends _react.default.Component {
386
386
  _runCommand(name, args) {
387
387
  switch (_reactNative.Platform.OS) {
388
388
  case 'android':
389
- return _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
389
+ {
390
+ if (!_reactNative.UIManager || typeof _reactNative.UIManager.dispatchViewManagerCommand !== 'function') {
391
+ return Promise.reject('UIManager.dispatchViewManagerCommand is unavailable on this React Native version');
392
+ }
393
+
394
+ const commandId = this._uiManagerCommand(name);
395
+
396
+ if (commandId == null) {
397
+ return Promise.reject(`Cannot find native command "${name}" for RMFMapView`);
398
+ }
399
+
400
+ return _reactNative.UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);
401
+ }
390
402
 
391
403
  case 'ios':
392
404
  return this._mapManagerCommand(name)(this._getHandle(), ...args);
@@ -397,16 +409,21 @@ class MFMapView extends _react.default.Component {
397
409
  }
398
410
 
399
411
  _uiManagerCommand(name) {
400
- const UIManager = _reactNative.NativeModules.UIManager;
412
+ const uiManager = _reactNative.UIManager || _reactNative.NativeModules.UIManager;
401
413
  const componentName = "RMFMapView";
402
414
 
403
- if (!UIManager.getViewManagerConfig) {
415
+ if (!uiManager) {
416
+ return null;
417
+ }
418
+
419
+ if (!uiManager.getViewManagerConfig) {
404
420
  // RN < 0.58
405
- return UIManager[componentName].Commands[name];
421
+ return uiManager[componentName].Commands[name];
406
422
  } // RN >= 0.58
407
423
 
408
424
 
409
- return UIManager.getViewManagerConfig(componentName).Commands[name];
425
+ const config = uiManager.getViewManagerConfig(componentName);
426
+ return config && config.Commands ? config.Commands[name] : null;
410
427
  }
411
428
 
412
429
  _mapManagerCommand(name) {
@@ -1 +1 @@
1
- {"version":3,"names":["CameraShape","PropTypes","shape","target","latitude","number","isRequired","longitude","zoom","bearing","tilt","viewPropTypes","ViewPropTypes","View","propTypes","mapID","string","mapStyle","showsMyLocationButton","bool","showsMyLocation","showsBuildings","showsPOIs","zoomGesturesEnabled","scrollGesturesEnabled","rotateGesturesEnabled","tiltGesturesEnabled","camera","mapType","oneOf","onMapReady","func","onPress","onPoiPress","onBuildingPress","onPlacePress","onDataSourceFeaturePress","onCameraMove","onCameraMoveStart","onCameraIdle","onMyLocationButtonPress","MFMapView","React","Component","constructor","props","areaFocusManager","AreaFocusManager","areaFocuser","AreaFocuser","state","isReady","Platform","OS","managedPolygons","_onMapReady","bind","_ref","_addPolygon","polygon","id","trim","length","_polygon","setState","prevState","_removePolygon","_clearManagedPolygons","ref","map","getCamera","NativeModules","Map4dMap","_getHandle","_runCommand","Promise","reject","getBounds","getMyLocation","animateCamera","moveCamera","setMyLocationEnabled","enable","setPOIsEnabled","setZoomGesturesEnabled","setScrollGesturesEnabled","setRotateGesturesEnabled","setTiltGesturesEnabled","setAllGesturesEnabled","setTime","time","t","Date","parse","isNaN","console","log","fitBounds","boundsData","cameraForBounds","pointForCoordinate","coordinate","coordinateForPoint","point","focusArea","focusOptions","resolve","focus","clearFocusedArea","clear","findNodeHandle","name","args","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","render","children","restProps","Object","values","style","coordinates","holes","fillColor","strokeColor","strokeWidth","zIndex","RMFMapView","requireNativeComponent"],"sources":["MFMapView.js"],"sourcesContent":["import PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {AreaFocusManager} from './extends/AreaFocusManager';\r\nimport {AreaFocuser} from './extends/AreaFocuser';\r\nimport {MFPolygon} from './MFPolygon';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n NativeModules,\r\n findNodeHandle\r\n} from 'react-native';\r\n\r\nconst CameraShape = PropTypes.shape({\r\n target: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n zoom: PropTypes.number.isRequired,\r\n bearing: PropTypes.number.isRequired,\r\n tilt: PropTypes.number.isRequired,\r\n});\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * An opaque identifier for a custom map configuration.\r\n */\r\n mapID: PropTypes.string,\r\n\r\n /**\r\n * Map style by string for a custom map configuration.\r\n */\r\n mapStyle: PropTypes.string,\r\n\r\n /**\r\n * If `false` hide the button to move map to the current user's location.\r\n * Default value is `false`.\r\n */\r\n showsMyLocationButton: PropTypes.bool,\r\n\r\n /**\r\n * If `true` the app will ask for the user's location.\r\n * Default value is `false`.\r\n */\r\n showsMyLocation: PropTypes.bool,\r\n\r\n /**\r\n * A Boolean indicating whether the map displays buildings.\r\n * Default value is `true`.\r\n */\r\n showsBuildings: PropTypes.bool,\r\n\r\n /**\r\n * A Boolean indicating whether the map displays POIs.\r\n * Default value is `true`.\r\n */\r\n showsPOIs: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to zoom the map.\r\n * Default value is `true`.\r\n */\r\n zoomGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to scroll the map.\r\n * Default value is `true`.\r\n */\r\n scrollGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to pinch/rotate the map.\r\n * Default value is `true`.\r\n */\r\n rotateGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to tilt the map.\r\n * Default value is `true`.\r\n */\r\n tiltGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * The camera view position.\r\n */\r\n camera: CameraShape,\r\n\r\n /**\r\n * Type of map tiles to be rendered.\r\n */\r\n mapType: PropTypes.oneOf(['roadmap', 'satellite', 'hybrid']),\r\n\r\n /**\r\n * Callback that is called once the map is fully loaded.\r\n * @platform android\r\n */\r\n onMapReady: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the map.\r\n */\r\n onPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the POIs\r\n */\r\n onPoiPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Buildings\r\n */\r\n onBuildingPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Places\r\n */\r\n onPlacePress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Data Source Features\r\n */\r\n onDataSourceFeaturePress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when moving camera\r\n */\r\n onCameraMove: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when camera start moving\r\n */\r\n onCameraMoveStart: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when camera idle\r\n */\r\n onCameraIdle: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on location Button\r\n */\r\n onMyLocationButtonPress: PropTypes.func,\r\n\r\n};\r\n\r\n\r\nclass MFMapView extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.areaFocusManager = new AreaFocusManager(this);\r\n this.areaFocuser = new AreaFocuser(this.areaFocusManager);\r\n this.state = {\r\n isReady: Platform.OS === 'ios',\r\n managedPolygons: {},\r\n };\r\n\r\n this._onMapReady = this._onMapReady.bind(this);\r\n this._ref = this._ref.bind(this);\r\n }\r\n\r\n _addPolygon(polygon) {\r\n if (polygon == null || typeof polygon !== 'object') {\r\n return null;\r\n }\r\n\r\n const id =\r\n typeof polygon.id === 'string' && polygon.id.trim().length > 0\r\n ? polygon.id\r\n : 'polygon-highlight-id-default';\r\n\r\n const _polygon = {\r\n ...polygon,\r\n id,\r\n };\r\n\r\n this.setState((prevState) => ({\r\n managedPolygons: {\r\n ...prevState.managedPolygons,\r\n [id]: _polygon,\r\n },\r\n }));\r\n\r\n return id;\r\n }\r\n\r\n _removePolygon(id) {\r\n if (typeof id !== 'string' || id.trim().length === 0) {\r\n return;\r\n }\r\n\r\n this.setState((prevState) => {\r\n if (!prevState.managedPolygons[id]) {\r\n return null;\r\n }\r\n\r\n const managedPolygons = {\r\n ...prevState.managedPolygons,\r\n };\r\n delete managedPolygons[id];\r\n\r\n return {\r\n managedPolygons,\r\n };\r\n });\r\n }\r\n\r\n _clearManagedPolygons() {\r\n this.setState({\r\n managedPolygons: {},\r\n });\r\n }\r\n\r\n _onMapReady() {\r\n const { onMapReady } = this.props;\r\n this.setState({ isReady: true }, () => {\r\n if (onMapReady) {\r\n onMapReady();\r\n }\r\n });\r\n }\r\n\r\n _ref(ref) {\r\n this.map = ref;\r\n }\r\n\r\n getCamera() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getCamera(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getCamera', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n getBounds() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getBounds(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getBounds', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n getMyLocation() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getMyLocation(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getMyLocation', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n animateCamera(camera) {\r\n this._runCommand('animateCamera', [camera]);\r\n }\r\n\r\n moveCamera(camera) {\r\n this._runCommand('moveCamera', [camera]);\r\n }\r\n\r\n setMyLocationEnabled(enable) {\r\n this._runCommand('setMyLocationEnabled', [enable]);\r\n }\r\n\r\n showsMyLocationButton(enable) {\r\n this._runCommand('showsMyLocationButton', [enable]);\r\n }\r\n\r\n setPOIsEnabled(enable) {\r\n this._runCommand('setPOIsEnabled', [enable]);\r\n }\r\n\r\n setZoomGesturesEnabled(enable) {\r\n this._runCommand('setZoomGesturesEnabled', [enable]);\r\n }\r\n\r\n setScrollGesturesEnabled(enable) {\r\n this._runCommand('setScrollGesturesEnabled', [enable]);\r\n }\r\n\r\n setRotateGesturesEnabled(enable) {\r\n this._runCommand('setRotateGesturesEnabled', [enable]);\r\n }\r\n\r\n setTiltGesturesEnabled(enable) {\r\n this._runCommand('setTiltGesturesEnabled', [enable]);\r\n }\r\n\r\n setAllGesturesEnabled(enable) {\r\n this._runCommand('setAllGesturesEnabled', [enable]);\r\n }\r\n\r\n setTime(time) {\r\n let t = Date.parse(time)\r\n if (isNaN(t)) {\r\n console.log('time invalid')\r\n }\r\n else {\r\n this._runCommand('setTime', [t]);\r\n }\r\n }\r\n\r\n fitBounds(boundsData) {\r\n this._runCommand(\"fitBounds\", [boundsData])\r\n }\r\n\r\n cameraForBounds(boundsData) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.cameraForBounds(\r\n this._getHandle(),\r\n boundsData\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('cameraForBounds', [boundsData]);\r\n }\r\n return Promise.reject('cameraForBounds not supported on this platform');\r\n }\r\n\r\n\r\n /**\r\n * Convert a map coordinate to screen point\r\n *\r\n * @param coordinate Coordinate\r\n * @param [coordinate.latitude] Latitude\r\n * @param [coordinate.longitude] Longitude\r\n *\r\n * @return Promise Promise with the point ({ x: Number, y: Number })\r\n */\r\n pointForCoordinate(coordinate) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.pointForCoordinate(\r\n this._getHandle(),\r\n coordinate\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('pointForCoordinate', [coordinate]);\r\n }\r\n return Promise.reject('pointForCoordinate not supported on this platform');\r\n }\r\n\r\n /**\r\n * Convert a screen point to a map coordinate\r\n *\r\n * @param point Point\r\n * @param [point.x] X\r\n * @param [point.x] Y\r\n *\r\n * @return Promise Promise with the coordinate ({ latitude: Number, longitude: Number })\r\n */\r\n coordinateForPoint(point) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.coordinateForPoint(\r\n this._getHandle(),\r\n point\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('coordinateForPoint', [point]);\r\n }\r\n return Promise.reject('coordinateForPoint not supported on this platform');\r\n }\r\n\r\n focusArea(focusOptions) {\r\n if (!this.areaFocusManager) {\r\n return Promise.resolve(null)\r\n }\r\n\r\n return this.areaFocusManager.focus(focusOptions)\r\n }\r\n\r\n clearFocusedArea() {\r\n if (!this.areaFocusManager) {\r\n return\r\n }\r\n this.areaFocusManager.clear()\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.map);\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android':\r\n return NativeModules.UIManager.dispatchViewManagerCommand(\r\n this._getHandle(),\r\n this._uiManagerCommand(name),\r\n args\r\n );\r\n\r\n case 'ios':\r\n return this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n\r\n default:\r\n return Promise.reject(`Invalid platform was passed: ${Platform.OS}`);\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const UIManager = NativeModules.UIManager;\r\n const componentName = \"RMFMapView\";\r\n\r\n if (!UIManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n return UIManager[componentName].Commands[name];\r\n }\r\n\r\n // RN >= 0.58 \r\n return UIManager.getViewManagerConfig(componentName).Commands[name];\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFMapView`][name];\r\n }\r\n\r\n render() {\r\n let props;\r\n const { children, ...restProps } = this.props;\r\n const managedPolygons = Object.values(this.state.managedPolygons);\r\n\r\n if (this.state.isReady) {\r\n props = {\r\n style: this.props.style,\r\n onMapReady: this._onMapReady,\r\n ...restProps,\r\n children: (\r\n <React.Fragment>\r\n {children}\r\n {managedPolygons.map((polygon) => (\r\n <MFPolygon\r\n key={polygon.id}\r\n coordinates={polygon.coordinates}\r\n holes={polygon.holes}\r\n fillColor={polygon.fillColor}\r\n strokeColor={polygon.strokeColor}\r\n strokeWidth={polygon.strokeWidth}\r\n zIndex={polygon.zIndex}\r\n />\r\n ))}\r\n </React.Fragment>\r\n ),\r\n };\r\n } else {\r\n props = {\r\n style: this.props.style,\r\n onMapReady: this._onMapReady\r\n };\r\n }\r\n\r\n return <RMFMapView\r\n {...props}\r\n ref={this._ref}\r\n />;\r\n }\r\n}\r\n\r\nMFMapView.propTypes = propTypes;\r\nvar RMFMapView = requireNativeComponent(`RMFMapView`, MFMapView);\r\n\r\n\r\nexport { MFMapView }"],"mappings":"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"}
1
+ {"version":3,"names":["CameraShape","PropTypes","shape","target","latitude","number","isRequired","longitude","zoom","bearing","tilt","viewPropTypes","ViewPropTypes","View","propTypes","mapID","string","mapStyle","showsMyLocationButton","bool","showsMyLocation","showsBuildings","showsPOIs","zoomGesturesEnabled","scrollGesturesEnabled","rotateGesturesEnabled","tiltGesturesEnabled","camera","mapType","oneOf","onMapReady","func","onPress","onPoiPress","onBuildingPress","onPlacePress","onDataSourceFeaturePress","onCameraMove","onCameraMoveStart","onCameraIdle","onMyLocationButtonPress","MFMapView","React","Component","constructor","props","areaFocusManager","AreaFocusManager","areaFocuser","AreaFocuser","state","isReady","Platform","OS","managedPolygons","_onMapReady","bind","_ref","_addPolygon","polygon","id","trim","length","_polygon","setState","prevState","_removePolygon","_clearManagedPolygons","ref","map","getCamera","NativeModules","Map4dMap","_getHandle","_runCommand","Promise","reject","getBounds","getMyLocation","animateCamera","moveCamera","setMyLocationEnabled","enable","setPOIsEnabled","setZoomGesturesEnabled","setScrollGesturesEnabled","setRotateGesturesEnabled","setTiltGesturesEnabled","setAllGesturesEnabled","setTime","time","t","Date","parse","isNaN","console","log","fitBounds","boundsData","cameraForBounds","pointForCoordinate","coordinate","coordinateForPoint","point","focusArea","focusOptions","resolve","focus","clearFocusedArea","clear","findNodeHandle","name","args","UIManager","dispatchViewManagerCommand","commandId","_uiManagerCommand","_mapManagerCommand","uiManager","componentName","getViewManagerConfig","Commands","config","render","children","restProps","Object","values","style","coordinates","holes","fillColor","strokeColor","strokeWidth","zIndex","RMFMapView","requireNativeComponent"],"sources":["MFMapView.js"],"sourcesContent":["import PropTypes from 'prop-types';\r\nimport React from 'react';\r\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\r\nimport {AreaFocusManager} from './extends/AreaFocusManager';\r\nimport {AreaFocuser} from './extends/AreaFocuser';\r\nimport {MFPolygon} from './MFPolygon';\r\nimport {\r\n requireNativeComponent,\r\n Platform,\r\n UIManager,\r\n NativeModules,\r\n findNodeHandle\r\n} from 'react-native';\r\n\r\nconst CameraShape = PropTypes.shape({\r\n target: PropTypes.shape({\r\n latitude: PropTypes.number.isRequired,\r\n longitude: PropTypes.number.isRequired,\r\n }),\r\n zoom: PropTypes.number.isRequired,\r\n bearing: PropTypes.number.isRequired,\r\n tilt: PropTypes.number.isRequired,\r\n});\r\n\r\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\r\nconst viewPropTypes = ViewPropTypes || View.propTypes;\r\n\r\nconst propTypes = {\r\n ...viewPropTypes,\r\n\r\n /**\r\n * An opaque identifier for a custom map configuration.\r\n */\r\n mapID: PropTypes.string,\r\n\r\n /**\r\n * Map style by string for a custom map configuration.\r\n */\r\n mapStyle: PropTypes.string,\r\n\r\n /**\r\n * If `false` hide the button to move map to the current user's location.\r\n * Default value is `false`.\r\n */\r\n showsMyLocationButton: PropTypes.bool,\r\n\r\n /**\r\n * If `true` the app will ask for the user's location.\r\n * Default value is `false`.\r\n */\r\n showsMyLocation: PropTypes.bool,\r\n\r\n /**\r\n * A Boolean indicating whether the map displays buildings.\r\n * Default value is `true`.\r\n */\r\n showsBuildings: PropTypes.bool,\r\n\r\n /**\r\n * A Boolean indicating whether the map displays POIs.\r\n * Default value is `true`.\r\n */\r\n showsPOIs: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to zoom the map.\r\n * Default value is `true`.\r\n */\r\n zoomGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to scroll the map.\r\n * Default value is `true`.\r\n */\r\n scrollGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to pinch/rotate the map.\r\n * Default value is `true`.\r\n */\r\n rotateGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * If `false` the user won't be able to tilt the map.\r\n * Default value is `true`.\r\n */\r\n tiltGesturesEnabled: PropTypes.bool,\r\n\r\n /**\r\n * The camera view position.\r\n */\r\n camera: CameraShape,\r\n\r\n /**\r\n * Type of map tiles to be rendered.\r\n */\r\n mapType: PropTypes.oneOf(['roadmap', 'satellite', 'hybrid']),\r\n\r\n /**\r\n * Callback that is called once the map is fully loaded.\r\n * @platform android\r\n */\r\n onMapReady: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the map.\r\n */\r\n onPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the POIs\r\n */\r\n onPoiPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Buildings\r\n */\r\n onBuildingPress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Places\r\n */\r\n onPlacePress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on the Data Source Features\r\n */\r\n onDataSourceFeaturePress: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when moving camera\r\n */\r\n onCameraMove: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when camera start moving\r\n */\r\n onCameraMoveStart: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when camera idle\r\n */\r\n onCameraIdle: PropTypes.func,\r\n\r\n /**\r\n * Callback that is called when user taps on location Button\r\n */\r\n onMyLocationButtonPress: PropTypes.func,\r\n\r\n};\r\n\r\n\r\nclass MFMapView extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.areaFocusManager = new AreaFocusManager(this);\r\n this.areaFocuser = new AreaFocuser(this.areaFocusManager);\r\n this.state = {\r\n isReady: Platform.OS === 'ios',\r\n managedPolygons: {},\r\n };\r\n\r\n this._onMapReady = this._onMapReady.bind(this);\r\n this._ref = this._ref.bind(this);\r\n }\r\n\r\n _addPolygon(polygon) {\r\n if (polygon == null || typeof polygon !== 'object') {\r\n return null;\r\n }\r\n\r\n const id =\r\n typeof polygon.id === 'string' && polygon.id.trim().length > 0\r\n ? polygon.id\r\n : 'polygon-highlight-id-default';\r\n\r\n const _polygon = {\r\n ...polygon,\r\n id,\r\n };\r\n\r\n this.setState((prevState) => ({\r\n managedPolygons: {\r\n ...prevState.managedPolygons,\r\n [id]: _polygon,\r\n },\r\n }));\r\n\r\n return id;\r\n }\r\n\r\n _removePolygon(id) {\r\n if (typeof id !== 'string' || id.trim().length === 0) {\r\n return;\r\n }\r\n\r\n this.setState((prevState) => {\r\n if (!prevState.managedPolygons[id]) {\r\n return null;\r\n }\r\n\r\n const managedPolygons = {\r\n ...prevState.managedPolygons,\r\n };\r\n delete managedPolygons[id];\r\n\r\n return {\r\n managedPolygons,\r\n };\r\n });\r\n }\r\n\r\n _clearManagedPolygons() {\r\n this.setState({\r\n managedPolygons: {},\r\n });\r\n }\r\n\r\n _onMapReady() {\r\n const { onMapReady } = this.props;\r\n this.setState({ isReady: true }, () => {\r\n if (onMapReady) {\r\n onMapReady();\r\n }\r\n });\r\n }\r\n\r\n _ref(ref) {\r\n this.map = ref;\r\n }\r\n\r\n getCamera() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getCamera(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getCamera', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n getBounds() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getBounds(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getBounds', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n getMyLocation() {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.getMyLocation(this._getHandle());\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('getMyLocation', []);\r\n }\r\n return Promise.reject('Function not supported on this platform');\r\n }\r\n\r\n animateCamera(camera) {\r\n this._runCommand('animateCamera', [camera]);\r\n }\r\n\r\n moveCamera(camera) {\r\n this._runCommand('moveCamera', [camera]);\r\n }\r\n\r\n setMyLocationEnabled(enable) {\r\n this._runCommand('setMyLocationEnabled', [enable]);\r\n }\r\n\r\n showsMyLocationButton(enable) {\r\n this._runCommand('showsMyLocationButton', [enable]);\r\n }\r\n\r\n setPOIsEnabled(enable) {\r\n this._runCommand('setPOIsEnabled', [enable]);\r\n }\r\n\r\n setZoomGesturesEnabled(enable) {\r\n this._runCommand('setZoomGesturesEnabled', [enable]);\r\n }\r\n\r\n setScrollGesturesEnabled(enable) {\r\n this._runCommand('setScrollGesturesEnabled', [enable]);\r\n }\r\n\r\n setRotateGesturesEnabled(enable) {\r\n this._runCommand('setRotateGesturesEnabled', [enable]);\r\n }\r\n\r\n setTiltGesturesEnabled(enable) {\r\n this._runCommand('setTiltGesturesEnabled', [enable]);\r\n }\r\n\r\n setAllGesturesEnabled(enable) {\r\n this._runCommand('setAllGesturesEnabled', [enable]);\r\n }\r\n\r\n setTime(time) {\r\n let t = Date.parse(time)\r\n if (isNaN(t)) {\r\n console.log('time invalid')\r\n }\r\n else {\r\n this._runCommand('setTime', [t]);\r\n }\r\n }\r\n\r\n fitBounds(boundsData) {\r\n this._runCommand(\"fitBounds\", [boundsData])\r\n }\r\n\r\n cameraForBounds(boundsData) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.cameraForBounds(\r\n this._getHandle(),\r\n boundsData\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('cameraForBounds', [boundsData]);\r\n }\r\n return Promise.reject('cameraForBounds not supported on this platform');\r\n }\r\n\r\n\r\n /**\r\n * Convert a map coordinate to screen point\r\n *\r\n * @param coordinate Coordinate\r\n * @param [coordinate.latitude] Latitude\r\n * @param [coordinate.longitude] Longitude\r\n *\r\n * @return Promise Promise with the point ({ x: Number, y: Number })\r\n */\r\n pointForCoordinate(coordinate) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.pointForCoordinate(\r\n this._getHandle(),\r\n coordinate\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('pointForCoordinate', [coordinate]);\r\n }\r\n return Promise.reject('pointForCoordinate not supported on this platform');\r\n }\r\n\r\n /**\r\n * Convert a screen point to a map coordinate\r\n *\r\n * @param point Point\r\n * @param [point.x] X\r\n * @param [point.x] Y\r\n *\r\n * @return Promise Promise with the coordinate ({ latitude: Number, longitude: Number })\r\n */\r\n coordinateForPoint(point) {\r\n if (Platform.OS === 'android') {\r\n return NativeModules.Map4dMap.coordinateForPoint(\r\n this._getHandle(),\r\n point\r\n );\r\n } else if (Platform.OS === 'ios') {\r\n return this._runCommand('coordinateForPoint', [point]);\r\n }\r\n return Promise.reject('coordinateForPoint not supported on this platform');\r\n }\r\n\r\n focusArea(focusOptions) {\r\n if (!this.areaFocusManager) {\r\n return Promise.resolve(null)\r\n }\r\n\r\n return this.areaFocusManager.focus(focusOptions)\r\n }\r\n\r\n clearFocusedArea() {\r\n if (!this.areaFocusManager) {\r\n return\r\n }\r\n this.areaFocusManager.clear()\r\n }\r\n\r\n _getHandle() {\r\n return findNodeHandle(this.map);\r\n }\r\n\r\n _runCommand(name, args) {\r\n switch (Platform.OS) {\r\n case 'android': {\r\n if (!UIManager || typeof UIManager.dispatchViewManagerCommand !== 'function') {\r\n return Promise.reject('UIManager.dispatchViewManagerCommand is unavailable on this React Native version')\r\n }\r\n\r\n const commandId = this._uiManagerCommand(name)\r\n if (commandId == null) {\r\n return Promise.reject(`Cannot find native command \"${name}\" for RMFMapView`)\r\n }\r\n\r\n return UIManager.dispatchViewManagerCommand(\r\n this._getHandle(),\r\n commandId,\r\n args\r\n );\r\n }\r\n\r\n case 'ios':\r\n return this._mapManagerCommand(name)(this._getHandle(), ...args);\r\n\r\n default:\r\n return Promise.reject(`Invalid platform was passed: ${Platform.OS}`);\r\n }\r\n }\r\n\r\n _uiManagerCommand(name) {\r\n const uiManager = UIManager || NativeModules.UIManager;\r\n const componentName = \"RMFMapView\";\r\n\r\n if (!uiManager) {\r\n return null;\r\n }\r\n\r\n if (!uiManager.getViewManagerConfig) {\r\n // RN < 0.58\r\n return uiManager[componentName].Commands[name];\r\n }\r\n\r\n // RN >= 0.58 \r\n const config = uiManager.getViewManagerConfig(componentName);\r\n return config && config.Commands ? config.Commands[name] : null;\r\n }\r\n\r\n _mapManagerCommand(name) {\r\n return NativeModules[`RMFMapView`][name];\r\n }\r\n\r\n render() {\r\n let props;\r\n const { children, ...restProps } = this.props;\r\n const managedPolygons = Object.values(this.state.managedPolygons);\r\n\r\n if (this.state.isReady) {\r\n props = {\r\n style: this.props.style,\r\n onMapReady: this._onMapReady,\r\n ...restProps,\r\n children: (\r\n <React.Fragment>\r\n {children}\r\n {managedPolygons.map((polygon) => (\r\n <MFPolygon\r\n key={polygon.id}\r\n coordinates={polygon.coordinates}\r\n holes={polygon.holes}\r\n fillColor={polygon.fillColor}\r\n strokeColor={polygon.strokeColor}\r\n strokeWidth={polygon.strokeWidth}\r\n zIndex={polygon.zIndex}\r\n />\r\n ))}\r\n </React.Fragment>\r\n ),\r\n };\r\n } else {\r\n props = {\r\n style: this.props.style,\r\n onMapReady: this._onMapReady\r\n };\r\n }\r\n\r\n return <RMFMapView\r\n {...props}\r\n ref={this._ref}\r\n />;\r\n }\r\n}\r\n\r\nMFMapView.propTypes = propTypes;\r\nvar RMFMapView = requireNativeComponent(`RMFMapView`, MFMapView);\r\n\r\n\r\nexport { MFMapView }"],"mappings":"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"}
@@ -175,9 +175,21 @@ class MFMarker extends _react.default.Component {
175
175
  _runCommand(name, args) {
176
176
  switch (_reactNative.Platform.OS) {
177
177
  case 'android':
178
- _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
178
+ {
179
+ if (!_reactNative.UIManager || typeof _reactNative.UIManager.dispatchViewManagerCommand !== 'function') {
180
+ return;
181
+ }
179
182
 
180
- break;
183
+ const commandId = this._uiManagerCommand(name);
184
+
185
+ if (commandId == null) {
186
+ return;
187
+ }
188
+
189
+ _reactNative.UIManager.dispatchViewManagerCommand(this._getHandle(), commandId, args);
190
+
191
+ break;
192
+ }
181
193
 
182
194
  case 'ios':
183
195
  //this.getMapManagerCommand(name)(this._getHandle(), ...args);
@@ -191,16 +203,22 @@ class MFMarker extends _react.default.Component {
191
203
  }
192
204
 
193
205
  _uiManagerCommand(name) {
194
- const UIManager = _reactNative.NativeModules.UIManager;
206
+ const uiManager = _reactNative.UIManager || _reactNative.NativeModules.UIManager;
195
207
  const componentName = "RMFMarker";
196
208
 
197
- if (!UIManager.getViewManagerConfig) {
209
+ if (!uiManager) {
210
+ return null;
211
+ }
212
+
213
+ if (!uiManager.getViewManagerConfig) {
198
214
  // RN < 0.58
199
- return UIManager[componentName].Commands[name];
215
+ const legacyConfig = uiManager[componentName];
216
+ return legacyConfig && legacyConfig.Commands ? legacyConfig.Commands[name] : null;
200
217
  } // RN >= 0.58
201
218
 
202
219
 
203
- return UIManager.getViewManagerConfig(componentName).Commands[name];
220
+ const config = uiManager.getViewManagerConfig(componentName);
221
+ return config && config.Commands ? config.Commands[name] : null;
204
222
  }
205
223
 
206
224
  _mapManagerCommand(name) {