react-native-map4d-map-dtqg 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +41 -0
  3. package/android/build.gradle +60 -0
  4. package/android/src/main/AndroidManifest.xml +4 -0
  5. package/android/src/main/java/com/reactnativemap4dmap/ImageUtils.java +87 -0
  6. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapModule.java +298 -0
  7. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapPackage.java +35 -0
  8. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapViewManager.java +31 -0
  9. package/android/src/main/java/com/reactnativemap4dmap/RMFBuilding.java +167 -0
  10. package/android/src/main/java/com/reactnativemap4dmap/RMFBuildingManager.java +121 -0
  11. package/android/src/main/java/com/reactnativemap4dmap/RMFCircle.java +105 -0
  12. package/android/src/main/java/com/reactnativemap4dmap/RMFCircleManager.java +122 -0
  13. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRenderer.java +502 -0
  14. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRendererManager.java +143 -0
  15. package/android/src/main/java/com/reactnativemap4dmap/RMFFeature.java +18 -0
  16. package/android/src/main/java/com/reactnativemap4dmap/RMFMapView.java +1172 -0
  17. package/android/src/main/java/com/reactnativemap4dmap/RMFMapViewManager.java +226 -0
  18. package/android/src/main/java/com/reactnativemap4dmap/RMFMarker.java +412 -0
  19. package/android/src/main/java/com/reactnativemap4dmap/RMFMarkerManager.java +212 -0
  20. package/android/src/main/java/com/reactnativemap4dmap/RMFPOI.java +222 -0
  21. package/android/src/main/java/com/reactnativemap4dmap/RMFPOIManager.java +119 -0
  22. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygon.java +173 -0
  23. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygonManager.java +148 -0
  24. package/android/src/main/java/com/reactnativemap4dmap/RMFPolyline.java +146 -0
  25. package/android/src/main/java/com/reactnativemap4dmap/RMFPolylineManager.java +138 -0
  26. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlay.java +95 -0
  27. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlayManager.java +65 -0
  28. package/android/src/main/java/com/reactnativemap4dmap/SizeReportingShadowNode.java +31 -0
  29. package/android/src/main/java/com/reactnativemap4dmap/ViewAttacherGroup.java +31 -0
  30. package/android/src/main/java/com/reactnativemap4dmap/ViewChangesTracker.java +70 -0
  31. package/android/src/main/java/vn/map4d/map/annotations/RMFBitmapDescriptor.java +9 -0
  32. package/ios/Map4dMap.h +7 -0
  33. package/ios/Map4dMap.m +14 -0
  34. package/ios/Map4dMap.xcodeproj/project.pbxproj +282 -0
  35. package/ios/Map4dMapViewManager.m +34 -0
  36. package/ios/RCTConvert+Map4dMap.h +33 -0
  37. package/ios/RCTConvert+Map4dMap.m +112 -0
  38. package/ios/RMFCircle.h +37 -0
  39. package/ios/RMFCircle.m +100 -0
  40. package/ios/RMFCircleManager.h +18 -0
  41. package/ios/RMFCircleManager.m +155 -0
  42. package/ios/RMFCircleMap4d.h +23 -0
  43. package/ios/RMFCircleMap4d.m +13 -0
  44. package/ios/RMFCoordinate.h +22 -0
  45. package/ios/RMFCoordinate.m +13 -0
  46. package/ios/RMFDirectionsMarkerOptions.h +24 -0
  47. package/ios/RMFDirectionsMarkerOptions.m +23 -0
  48. package/ios/RMFDirectionsRenderer.h +47 -0
  49. package/ios/RMFDirectionsRenderer.m +182 -0
  50. package/ios/RMFDirectionsRendererManager.h +17 -0
  51. package/ios/RMFDirectionsRendererManager.m +84 -0
  52. package/ios/RMFDirectionsRendererMap4d.h +21 -0
  53. package/ios/RMFDirectionsRendererMap4d.m +12 -0
  54. package/ios/RMFDummyView.h +7 -0
  55. package/ios/RMFDummyView.m +13 -0
  56. package/ios/RMFEventResponse.h +39 -0
  57. package/ios/RMFEventResponse.m +98 -0
  58. package/ios/RMFIcon.h +24 -0
  59. package/ios/RMFIcon.m +35 -0
  60. package/ios/RMFMapView.h +84 -0
  61. package/ios/RMFMapView.m +376 -0
  62. package/ios/RMFMapViewManager.h +17 -0
  63. package/ios/RMFMapViewManager.m +493 -0
  64. package/ios/RMFMarker.h +57 -0
  65. package/ios/RMFMarker.m +267 -0
  66. package/ios/RMFMarkerManager.h +17 -0
  67. package/ios/RMFMarkerManager.m +156 -0
  68. package/ios/RMFMarkerMap4d.h +19 -0
  69. package/ios/RMFMarkerMap4d.m +13 -0
  70. package/ios/RMFPOI.h +38 -0
  71. package/ios/RMFPOI.m +123 -0
  72. package/ios/RMFPOIManager.h +18 -0
  73. package/ios/RMFPOIManager.m +168 -0
  74. package/ios/RMFPOIMap4d.h +22 -0
  75. package/ios/RMFPOIMap4d.m +12 -0
  76. package/ios/RMFPolygon.h +41 -0
  77. package/ios/RMFPolygon.m +106 -0
  78. package/ios/RMFPolygonManager.h +18 -0
  79. package/ios/RMFPolygonManager.m +141 -0
  80. package/ios/RMFPolygonMap4d.h +23 -0
  81. package/ios/RMFPolygonMap4d.m +15 -0
  82. package/ios/RMFPolyline.h +38 -0
  83. package/ios/RMFPolyline.m +101 -0
  84. package/ios/RMFPolylineManager.h +18 -0
  85. package/ios/RMFPolylineManager.m +139 -0
  86. package/ios/RMFPolylineMap4d.h +22 -0
  87. package/ios/RMFPolylineMap4d.m +15 -0
  88. package/ios/building/RMFBuilding.h +41 -0
  89. package/ios/building/RMFBuilding.m +104 -0
  90. package/ios/building/RMFBuildingManager.h +19 -0
  91. package/ios/building/RMFBuildingManager.m +133 -0
  92. package/ios/building/RMFBuildingMap4d.h +23 -0
  93. package/ios/building/RMFBuildingMap4d.m +15 -0
  94. package/ios/overlays/RMFTileOverlay.h +36 -0
  95. package/ios/overlays/RMFTileOverlay.m +64 -0
  96. package/ios/overlays/RMFTileOverlayManager.h +17 -0
  97. package/ios/overlays/RMFTileOverlayManager.m +27 -0
  98. package/lib/commonjs/components/MFBuilding.js +192 -0
  99. package/lib/commonjs/components/MFBuilding.js.map +1 -0
  100. package/lib/commonjs/components/MFCircle.js +181 -0
  101. package/lib/commonjs/components/MFCircle.js.map +1 -0
  102. package/lib/commonjs/components/MFDirectionsRenderer.js +240 -0
  103. package/lib/commonjs/components/MFDirectionsRenderer.js.map +1 -0
  104. package/lib/commonjs/components/MFMapView.js +375 -0
  105. package/lib/commonjs/components/MFMapView.js.map +1 -0
  106. package/lib/commonjs/components/MFMarker.js +255 -0
  107. package/lib/commonjs/components/MFMarker.js.map +1 -0
  108. package/lib/commonjs/components/MFPOI.js +204 -0
  109. package/lib/commonjs/components/MFPOI.js.map +1 -0
  110. package/lib/commonjs/components/MFPolygon.js +183 -0
  111. package/lib/commonjs/components/MFPolygon.js.map +1 -0
  112. package/lib/commonjs/components/MFPolyline.js +173 -0
  113. package/lib/commonjs/components/MFPolyline.js.map +1 -0
  114. package/lib/commonjs/components/MFTileOverlay.js +51 -0
  115. package/lib/commonjs/components/MFTileOverlay.js.map +1 -0
  116. package/lib/commonjs/components/Map4dMapView.js +19 -0
  117. package/lib/commonjs/components/Map4dMapView.js.map +1 -0
  118. package/lib/commonjs/index.js +78 -0
  119. package/lib/commonjs/index.js.map +1 -0
  120. package/lib/module/components/MFBuilding.js +178 -0
  121. package/lib/module/components/MFBuilding.js.map +1 -0
  122. package/lib/module/components/MFCircle.js +167 -0
  123. package/lib/module/components/MFCircle.js.map +1 -0
  124. package/lib/module/components/MFDirectionsRenderer.js +226 -0
  125. package/lib/module/components/MFDirectionsRenderer.js.map +1 -0
  126. package/lib/module/components/MFMapView.js +361 -0
  127. package/lib/module/components/MFMapView.js.map +1 -0
  128. package/lib/module/components/MFMarker.js +240 -0
  129. package/lib/module/components/MFMarker.js.map +1 -0
  130. package/lib/module/components/MFPOI.js +190 -0
  131. package/lib/module/components/MFPOI.js.map +1 -0
  132. package/lib/module/components/MFPolygon.js +169 -0
  133. package/lib/module/components/MFPolygon.js.map +1 -0
  134. package/lib/module/components/MFPolyline.js +159 -0
  135. package/lib/module/components/MFPolyline.js.map +1 -0
  136. package/lib/module/components/MFTileOverlay.js +38 -0
  137. package/lib/module/components/MFTileOverlay.js.map +1 -0
  138. package/lib/module/components/Map4dMapView.js +10 -0
  139. package/lib/module/components/Map4dMapView.js.map +1 -0
  140. package/lib/module/index.js +11 -0
  141. package/lib/module/index.js.map +1 -0
  142. package/lib/typescript/components/Map4dMapView.d.ts +7 -0
  143. package/package.json +152 -0
  144. package/react-native-map4d-map.podspec +20 -0
  145. package/src/components/MFBuilding.js +188 -0
  146. package/src/components/MFCircle.js +173 -0
  147. package/src/components/MFDirectionsRenderer.js +237 -0
  148. package/src/components/MFMapView.js +374 -0
  149. package/src/components/MFMarker.js +246 -0
  150. package/src/components/MFPOI.js +184 -0
  151. package/src/components/MFPolygon.js +186 -0
  152. package/src/components/MFPolyline.js +172 -0
  153. package/src/components/MFTileOverlay.js +45 -0
  154. package/src/components/Map4dMapView.tsx +27 -0
  155. package/src/index.js +21 -0
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Map4dMapView = void 0;
7
+
8
+ var _reactNative = require("react-native");
9
+
10
+ const LINKING_ERROR = `The package 'react-native-map4d-map' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
11
+ ios: "- You have run 'pod install'\n",
12
+ default: ''
13
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo managed workflow\n';
14
+ const ComponentName = 'Map4dMapView';
15
+ const Map4dMapView = _reactNative.UIManager.getViewManagerConfig(ComponentName) != null ? (0, _reactNative.requireNativeComponent)(ComponentName) : () => {
16
+ throw new Error(LINKING_ERROR);
17
+ };
18
+ exports.Map4dMapView = Map4dMapView;
19
+ //# sourceMappingURL=Map4dMapView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","ComponentName","Map4dMapView","UIManager","getViewManagerConfig","requireNativeComponent","Error"],"sources":["Map4dMapView.tsx"],"sourcesContent":["import {\n requireNativeComponent,\n UIManager,\n Platform,\n ViewStyle,\n } from 'react-native';\n \n const LINKING_ERROR =\n `The package 'react-native-map4d-map' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n \n type Map4dMapProps = {\n color: string;\n style: ViewStyle;\n };\n \n const ComponentName = 'Map4dMapView';\n \n export const Map4dMapView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<Map4dMapProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n "],"mappings":";;;;;;;AAAA;;AAOE,MAAMA,aAAa,GAChB,iFAAD,GACAC,qBAAA,CAASC,MAAT,CAAgB;EAAEC,GAAG,EAAE,gCAAP;EAAyCC,OAAO,EAAE;AAAlD,CAAhB,CADA,GAEA,sDAFA,GAGA,6CAJF;AAWA,MAAMC,aAAa,GAAG,cAAtB;AAEO,MAAMC,YAAY,GACvBC,sBAAA,CAAUC,oBAAV,CAA+BH,aAA/B,KAAiD,IAAjD,GACI,IAAAI,mCAAA,EAAsCJ,aAAtC,CADJ,GAEI,MAAM;EACJ,MAAM,IAAIK,KAAJ,CAAUV,aAAV,CAAN;AACD,CALA"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "MFBuilding", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _MFBuilding.MFBuilding;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "MFCircle", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _MFCircle.MFCircle;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "MFDirectionsRenderer", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _MFDirectionsRenderer.MFDirectionsRenderer;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "MFMapView", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _MFMapView.MFMapView;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "MFMarker", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _MFMarker.MFMarker;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "MFPOI", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _MFPOI.MFPOI;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "MFPolygon", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _MFPolygon.MFPolygon;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "MFPolyline", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _MFPolyline.MFPolyline;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "MFTileOverlay", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _MFTileOverlay.MFTileOverlay;
58
+ }
59
+ });
60
+
61
+ var _MFMapView = require("./components/MFMapView");
62
+
63
+ var _MFMarker = require("./components/MFMarker");
64
+
65
+ var _MFCircle = require("./components/MFCircle");
66
+
67
+ var _MFPolyline = require("./components/MFPolyline");
68
+
69
+ var _MFPolygon = require("./components/MFPolygon");
70
+
71
+ var _MFPOI = require("./components/MFPOI");
72
+
73
+ var _MFDirectionsRenderer = require("./components/MFDirectionsRenderer");
74
+
75
+ var _MFTileOverlay = require("./components/MFTileOverlay");
76
+
77
+ var _MFBuilding = require("./components/MFBuilding");
78
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["index.js"],"sourcesContent":["import {MFMapView} from './components/MFMapView'\nimport {MFMarker} from './components/MFMarker'\nimport {MFCircle} from './components/MFCircle'\nimport {MFPolyline} from './components/MFPolyline'\nimport {MFPolygon} from './components/MFPolygon'\nimport {MFPOI} from './components/MFPOI'\nimport {MFDirectionsRenderer} from './components/MFDirectionsRenderer'\nimport {MFTileOverlay} from './components/MFTileOverlay'\nimport {MFBuilding} from './components/MFBuilding'\n\nexport {\n MFMapView,\n MFMarker,\n MFCircle,\n MFPolyline,\n MFPolygon,\n MFPOI,\n MFDirectionsRenderer,\n MFTileOverlay,\n MFBuilding,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA"}
@@ -0,0 +1,178 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import React from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import { ViewPropTypes } from 'deprecated-react-native-prop-types';
6
+ import { requireNativeComponent, Platform, NativeModules, findNodeHandle } from 'react-native'; // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
7
+
8
+ const viewPropTypes = ViewPropTypes || View.propTypes;
9
+ const propTypes = { ...viewPropTypes,
10
+
11
+ /**
12
+ * The name of the building.
13
+ */
14
+ name: PropTypes.string,
15
+
16
+ /**
17
+ * The position of the building
18
+ */
19
+ coordinate: PropTypes.shape({
20
+ /**
21
+ * Position for the building.
22
+ */
23
+ latitude: PropTypes.number.isRequired,
24
+ longitude: PropTypes.number.isRequired
25
+ }),
26
+
27
+ /**
28
+ * The model URL for the building.
29
+ */
30
+ modelUrl: PropTypes.string,
31
+
32
+ /**
33
+ * The texture URL for the building.
34
+ */
35
+ textureUrl: PropTypes.string,
36
+
37
+ /**
38
+ * The scale of the building.
39
+ */
40
+ scale: PropTypes.number,
41
+
42
+ /**
43
+ * The bearing of the building.
44
+ */
45
+ bearing: PropTypes.number,
46
+
47
+ /**
48
+ * The elevation of the building.
49
+ */
50
+ elevation: PropTypes.number,
51
+
52
+ /**
53
+ * Is the building selectable by the user ?
54
+ */
55
+ selected: PropTypes.bool,
56
+
57
+ /**
58
+ * touchable
59
+ */
60
+ touchable: PropTypes.bool,
61
+
62
+ /**
63
+ * visible
64
+ */
65
+ visible: PropTypes.bool,
66
+
67
+ /**
68
+ * userData
69
+ */
70
+ userData: PropTypes.object,
71
+
72
+ /**
73
+ * Callback that is called when the user presses on the building
74
+ */
75
+ onPress: PropTypes.func
76
+ };
77
+
78
+ class MFBuilding extends React.Component {
79
+ constructor(props) {
80
+ super(props);
81
+ this._onPress = this._onPress.bind(this);
82
+ this._ref = this._ref.bind(this);
83
+ }
84
+
85
+ _onPress(event) {
86
+ event.stopPropagation();
87
+
88
+ if (this.props.onPress) {
89
+ this.props.onPress(event);
90
+ }
91
+ }
92
+
93
+ _ref(ref) {
94
+ this.building = ref;
95
+ }
96
+
97
+ setName(name) {
98
+ this._runCommand("setName", [name]);
99
+ }
100
+
101
+ setScale(scale) {
102
+ this._runCommand("setScale", [scale]);
103
+ }
104
+
105
+ setBearing(bearing) {
106
+ this._runCommand("setBearing", [bearing]);
107
+ }
108
+
109
+ setElevation(elevation) {
110
+ this._runCommand("setElevation", [elevation]);
111
+ }
112
+
113
+ setSelected(selected) {
114
+ this._runCommand("setSelected", [selected]);
115
+ }
116
+
117
+ setTouchable(touchable) {
118
+ this._runCommand("setTouchable", [touchable]);
119
+ }
120
+
121
+ setVisible(visible) {
122
+ this._runCommand("setVisible", [visible]);
123
+ }
124
+
125
+ setUserData(userData) {
126
+ this._runCommand("setUserData", [userData]);
127
+ }
128
+
129
+ _getHandle() {
130
+ return findNodeHandle(this.building);
131
+ }
132
+
133
+ _runCommand(name, args) {
134
+ switch (Platform.OS) {
135
+ case 'android':
136
+ NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
137
+ break;
138
+
139
+ case 'ios':
140
+ this._mapManagerCommand(name)(this._getHandle(), ...args);
141
+
142
+ break;
143
+
144
+ default:
145
+ break;
146
+ }
147
+ }
148
+
149
+ _uiManagerCommand(name) {
150
+ const UIManager = NativeModules.UIManager;
151
+ const componentName = "RMFBuilding";
152
+
153
+ if (!UIManager.getViewManagerConfig) {
154
+ // RN < 0.58
155
+ return UIManager[componentName].Commands[name];
156
+ } // RN >= 0.58
157
+
158
+
159
+ return UIManager.getViewManagerConfig(componentName).Commands[name];
160
+ }
161
+
162
+ _mapManagerCommand(name) {
163
+ return NativeModules[`RMFBuilding`][name];
164
+ }
165
+
166
+ render() {
167
+ return /*#__PURE__*/React.createElement(RMFBuilding, _extends({}, this.props, {
168
+ ref: this._ref,
169
+ onPress: this._onPress
170
+ }));
171
+ }
172
+
173
+ }
174
+
175
+ MFBuilding.propTypes = propTypes;
176
+ var RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);
177
+ export { MFBuilding };
178
+ //# sourceMappingURL=MFBuilding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","PropTypes","ViewPropTypes","requireNativeComponent","Platform","NativeModules","findNodeHandle","viewPropTypes","View","propTypes","name","string","coordinate","shape","latitude","number","isRequired","longitude","modelUrl","textureUrl","scale","bearing","elevation","selected","bool","touchable","visible","userData","object","onPress","func","MFBuilding","Component","constructor","props","_onPress","bind","_ref","event","stopPropagation","ref","building","setName","_runCommand","setScale","setBearing","setElevation","setSelected","setTouchable","setVisible","setUserData","_getHandle","args","OS","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","render","RMFBuilding"],"sources":["MFBuilding.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {ViewPropTypes} from 'deprecated-react-native-prop-types';\nimport {\n requireNativeComponent,\n Platform,\n NativeModules,\n findNodeHandle\n} from 'react-native';\n\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\nconst viewPropTypes = ViewPropTypes || View.propTypes;\n\nconst propTypes = {\n ...viewPropTypes,\n\n /**\n * The name of the building.\n */\n name: PropTypes.string,\n\n /**\n * The position of the building\n */\n coordinate: PropTypes.shape({\n /**\n * Position for the building.\n */\n latitude: PropTypes.number.isRequired,\n longitude: PropTypes.number.isRequired,\n }),\n\n /**\n * The model URL for the building.\n */\n modelUrl: PropTypes.string,\n\n /**\n * The texture URL for the building.\n */\n textureUrl: PropTypes.string,\n\n /**\n * The scale of the building.\n */\n scale: PropTypes.number,\n\n /**\n * The bearing of the building.\n */\n bearing: PropTypes.number,\n\n /**\n * The elevation of the building.\n */\n elevation: PropTypes.number,\n\n /**\n * Is the building selectable by the user ?\n */\n selected: PropTypes.bool,\n\n /**\n * touchable\n */\n touchable: PropTypes.bool,\n\n /**\n * visible\n */\n visible: PropTypes.bool,\n\n /**\n * userData\n */\n userData:PropTypes.object,\n\n /**\n * Callback that is called when the user presses on the building\n */\n onPress: PropTypes.func,\n};\n\n\nclass MFBuilding extends React.Component {\n constructor(props) {\n super(props);\n this._onPress = this._onPress.bind(this)\n this._ref = this._ref.bind(this)\n }\n\n _onPress(event) {\n event.stopPropagation();\n if (this.props.onPress) {\n this.props.onPress(event);\n }\n }\n\n _ref(ref) {\n this.building = ref;\n }\n\n setName(name) {\n this._runCommand(\"setName\", [name])\n }\n\n setScale(scale) {\n this._runCommand(\"setScale\", [scale])\n }\n\n setBearing(bearing) {\n this._runCommand(\"setBearing\", [bearing])\n }\n\n setElevation(elevation) {\n this._runCommand(\"setElevation\", [elevation])\n }\n\n setSelected(selected) {\n this._runCommand(\"setSelected\", [selected])\n }\n\n setTouchable(touchable) {\n this._runCommand(\"setTouchable\", [touchable])\n }\n\n setVisible(visible) {\n this._runCommand(\"setVisible\", [visible])\n }\n\n setUserData(userData) {\n this._runCommand(\"setUserData\", [userData])\n }\n\n _getHandle() {\n return findNodeHandle(this.building);\n }\n\n _runCommand(name, args) {\n switch (Platform.OS) {\n case 'android':\n NativeModules.UIManager.dispatchViewManagerCommand(\n this._getHandle(),\n this._uiManagerCommand(name),\n args\n );\n break;\n\n case 'ios':\n this._mapManagerCommand(name)(this._getHandle(), ...args);\n break;\n\n default:\n break;\n }\n }\n\n _uiManagerCommand(name) {\n const UIManager = NativeModules.UIManager;\n const componentName = \"RMFBuilding\";\n\n if (!UIManager.getViewManagerConfig) {\n // RN < 0.58\n return UIManager[componentName].Commands[name];\n }\n\n // RN >= 0.58\n return UIManager.getViewManagerConfig(componentName).Commands[name];\n }\n\n _mapManagerCommand(name) {\n return NativeModules[`RMFBuilding`][name];\n }\n\n render() {\n return <RMFBuilding\n {...this.props}\n ref={this._ref}\n onPress={this._onPress}\n />;\n }\n}\n\nMFBuilding.propTypes = propTypes;\n\nvar RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);\n\nexport { MFBuilding }"],"mappings":"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"}
@@ -0,0 +1,167 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import PropTypes from 'prop-types';
4
+ import React from 'react';
5
+ import { ViewPropTypes, ColorPropType } from 'deprecated-react-native-prop-types';
6
+ import { requireNativeComponent, Platform, NativeModules, findNodeHandle, processColor } from 'react-native'; // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
7
+
8
+ const viewPropTypes = ViewPropTypes || View.propTypes;
9
+ const propTypes = { ...viewPropTypes,
10
+
11
+ /**
12
+ * The coordinate of the center of the circle
13
+ */
14
+ center: PropTypes.shape({
15
+ /**
16
+ * Coordinates for the center of the circle.
17
+ */
18
+ latitude: PropTypes.number.isRequired,
19
+ longitude: PropTypes.number.isRequired
20
+ }).isRequired,
21
+
22
+ /**
23
+ * The radius of the circle to be drawn (in meters)
24
+ */
25
+ radius: PropTypes.number.isRequired,
26
+
27
+ /**
28
+ * The stroke width to use for the circle.
29
+ */
30
+ strokeWidth: PropTypes.number,
31
+
32
+ /**
33
+ * The stroke color to use for the circle.
34
+ */
35
+ strokeColor: ColorPropType,
36
+
37
+ /**
38
+ * The fill color to use for the circle.
39
+ */
40
+ fillColor: ColorPropType,
41
+
42
+ /**
43
+ * zIndex
44
+ */
45
+ zIndex: PropTypes.number,
46
+
47
+ /**
48
+ * visible
49
+ */
50
+ visible: PropTypes.bool,
51
+
52
+ /**
53
+ * userData
54
+ */
55
+ userData: PropTypes.object,
56
+
57
+ /**
58
+ * Callback that is called when the user presses on the circle
59
+ */
60
+ onPress: PropTypes.func
61
+ }; // const defaultProps = {
62
+ // strokeColor: '#000',
63
+ // strokeWidth: 1,
64
+ // };
65
+
66
+ class MFCircle extends React.Component {
67
+ constructor(props) {
68
+ super(props);
69
+ this._onPress = this._onPress.bind(this);
70
+ this._ref = this._ref.bind(this);
71
+ }
72
+
73
+ setCenter(center) {
74
+ this._runCommand("setCenter", [center]);
75
+ }
76
+
77
+ setRadius(radius) {
78
+ this._runCommand("setRadius", [radius]);
79
+ }
80
+
81
+ setFillColor(color) {
82
+ this._runCommand("setFillColor", [processColor(color)]);
83
+ }
84
+
85
+ setStrokeColor(color) {
86
+ this._runCommand("setStrokeColor", [processColor(color)]);
87
+ }
88
+
89
+ setStrokeWidth(width) {
90
+ this._runCommand("setStrokeWidth", [width]);
91
+ }
92
+
93
+ setUserData(userData) {
94
+ this._runCommand("setUserData", [userData]);
95
+ }
96
+
97
+ setZIndex(zIndex) {
98
+ this._runCommand("setZIndex", [zIndex]);
99
+ }
100
+
101
+ setVisible(visible) {
102
+ this._runCommand("setVisible", [visible]);
103
+ }
104
+
105
+ _getHandle() {
106
+ return findNodeHandle(this.circle);
107
+ }
108
+
109
+ _runCommand(name, args) {
110
+ switch (Platform.OS) {
111
+ case 'android':
112
+ NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
113
+ break;
114
+
115
+ case 'ios':
116
+ this._mapManagerCommand(name)(this._getHandle(), ...args);
117
+
118
+ break;
119
+
120
+ default:
121
+ break;
122
+ }
123
+ }
124
+
125
+ _uiManagerCommand(name) {
126
+ const UIManager = NativeModules.UIManager;
127
+ const componentName = "RMFCircle";
128
+
129
+ if (!UIManager.getViewManagerConfig) {
130
+ // RN < 0.58
131
+ return UIManager[componentName].Commands[name];
132
+ } // RN >= 0.58
133
+
134
+
135
+ return UIManager.getViewManagerConfig(componentName).Commands[name];
136
+ }
137
+
138
+ _mapManagerCommand(name) {
139
+ return NativeModules[`RMFCircle`][name];
140
+ }
141
+
142
+ _onPress(event) {
143
+ event.stopPropagation();
144
+
145
+ if (this.props.onPress) {
146
+ this.props.onPress(event);
147
+ }
148
+ }
149
+
150
+ _ref(ref) {
151
+ this.circle = ref;
152
+ }
153
+
154
+ render() {
155
+ return /*#__PURE__*/React.createElement(RMFCircle, _extends({}, this.props, {
156
+ ref: this._ref,
157
+ onPress: this._onPress
158
+ }));
159
+ }
160
+
161
+ }
162
+
163
+ MFCircle.propTypes = propTypes; // MFCircle.defaultProps = defaultProps;
164
+
165
+ var RMFCircle = requireNativeComponent(`RMFCircle`, MFCircle);
166
+ export { MFCircle };
167
+ //# sourceMappingURL=MFCircle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PropTypes","React","ViewPropTypes","ColorPropType","requireNativeComponent","Platform","NativeModules","findNodeHandle","processColor","viewPropTypes","View","propTypes","center","shape","latitude","number","isRequired","longitude","radius","strokeWidth","strokeColor","fillColor","zIndex","visible","bool","userData","object","onPress","func","MFCircle","Component","constructor","props","_onPress","bind","_ref","setCenter","_runCommand","setRadius","setFillColor","color","setStrokeColor","setStrokeWidth","width","setUserData","setZIndex","setVisible","_getHandle","circle","name","args","OS","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","event","stopPropagation","ref","render","RMFCircle"],"sources":["MFCircle.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport {ViewPropTypes, ColorPropType} from 'deprecated-react-native-prop-types';\nimport {\n requireNativeComponent,\n Platform,\n NativeModules,\n findNodeHandle,\n processColor\n} from 'react-native';\n\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\nconst viewPropTypes = ViewPropTypes || View.propTypes;\n\nconst propTypes = {\n ...viewPropTypes,\n\n /**\n * The coordinate of the center of the circle\n */\n center: PropTypes.shape({\n /**\n * Coordinates for the center of the circle.\n */\n latitude: PropTypes.number.isRequired,\n longitude: PropTypes.number.isRequired,\n }).isRequired,\n\n /**\n * The radius of the circle to be drawn (in meters)\n */\n radius: PropTypes.number.isRequired,\n\n /**\n * The stroke width to use for the circle.\n */\n strokeWidth: PropTypes.number,\n\n /**\n * The stroke color to use for the circle.\n */\n strokeColor: ColorPropType,\n\n /**\n * The fill color to use for the circle.\n */\n fillColor: ColorPropType,\n\n /**\n * zIndex\n */\n zIndex: PropTypes.number,\n\n /**\n * visible\n */\n visible: PropTypes.bool,\n\n /**\n * userData\n */\n userData:PropTypes.object,\n\n /**\n * Callback that is called when the user presses on the circle\n */\n onPress: PropTypes.func,\n};\n\n// const defaultProps = {\n// strokeColor: '#000',\n// strokeWidth: 1,\n// };\n\nclass MFCircle extends React.Component {\n constructor(props) {\n super(props);\n this._onPress = this._onPress.bind(this)\n this._ref = this._ref.bind(this)\n }\n\n setCenter(center) {\n this._runCommand(\"setCenter\", [center])\n }\n setRadius(radius) {\n this._runCommand(\"setRadius\", [radius])\n }\n setFillColor(color) {\n this._runCommand(\"setFillColor\", [processColor(color)])\n }\n setStrokeColor(color) {\n this._runCommand(\"setStrokeColor\", [processColor(color)])\n }\n setStrokeWidth(width) {\n this._runCommand(\"setStrokeWidth\", [width])\n }\n setUserData(userData) {\n this._runCommand(\"setUserData\", [userData])\n }\n setZIndex(zIndex) {\n this._runCommand(\"setZIndex\", [zIndex])\n }\n setVisible(visible) {\n this._runCommand(\"setVisible\", [visible])\n }\n\n _getHandle() {\n return findNodeHandle(this.circle);\n }\n\n\n _runCommand(name, args) {\n switch (Platform.OS) {\n case 'android':\n NativeModules.UIManager.dispatchViewManagerCommand(\n this._getHandle(),\n this._uiManagerCommand(name),\n args\n );\n break;\n\n case 'ios':\n this._mapManagerCommand(name)(this._getHandle(), ...args);\n break;\n\n default:\n break;\n }\n }\n\n _uiManagerCommand(name) {\n const UIManager = NativeModules.UIManager;\n const componentName = \"RMFCircle\";\n\n if (!UIManager.getViewManagerConfig) {\n // RN < 0.58\n return UIManager[componentName].Commands[name];\n }\n\n // RN >= 0.58 \n return UIManager.getViewManagerConfig(componentName).Commands[name];\n }\n \n _mapManagerCommand(name) {\n return NativeModules[`RMFCircle`][name];\n }\n\n _onPress(event) {\n event.stopPropagation();\n if (this.props.onPress) {\n this.props.onPress(event);\n }\n }\n\n _ref(ref) {\n this.circle = ref;\n }\n\n render() {\n return <RMFCircle\n {...this.props}\n ref={this._ref}\n onPress={this._onPress}\n />;\n }\n}\n\nMFCircle.propTypes = propTypes;\n// MFCircle.defaultProps = defaultProps;\n\nvar RMFCircle = requireNativeComponent(`RMFCircle`, MFCircle);\n\nexport {MFCircle}\n"],"mappings":"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"}