@rnmapbox/maps 10.1.0-beta.23 → 10.1.0-beta.25

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 (153) hide show
  1. package/android/src/main/java/com/rnmapbox/rnmbx/RNMBXPackage.kt +4 -0
  2. package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXViewport.kt +69 -2
  3. package/android/src/main/java/com/rnmapbox/rnmbx/components/images/RNMBXImagesManager.kt +27 -3
  4. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocation.kt +51 -0
  5. package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocationManager.kt +8 -0
  6. package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/NativeMapViewModule.kt +1 -1
  7. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/RNMBXStyleFactory.kt +1184 -109
  8. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayer.kt +33 -0
  9. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayerManager.kt +85 -0
  10. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModels.kt +33 -0
  11. package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModelsManager.kt +59 -0
  12. package/android/src/main/java/com/rnmapbox/rnmbx/utils/extensions/ReadableMap.kt +37 -5
  13. package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +395 -0
  14. package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +8 -0
  15. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerDelegate.java +65 -0
  16. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerInterface.java +28 -0
  17. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerDelegate.java +32 -0
  18. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerInterface.java +17 -0
  19. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerDelegate.java +3 -0
  20. package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerInterface.java +1 -0
  21. package/ios/RNMBX/RNMBXFabricPropConvert.h +11 -5
  22. package/ios/RNMBX/RNMBXFabricPropConvert.mm +5 -0
  23. package/ios/RNMBX/RNMBXInteractiveElement.swift +1 -1
  24. package/ios/RNMBX/RNMBXModelLayer.swift +59 -0
  25. package/ios/RNMBX/RNMBXModelLayerComponentView.h +15 -0
  26. package/ios/RNMBX/RNMBXModelLayerComponentView.mm +70 -0
  27. package/ios/RNMBX/RNMBXModelLayerViewManager.m +12 -0
  28. package/ios/RNMBX/RNMBXModelLayerViewManager.swift +13 -0
  29. package/ios/RNMBX/RNMBXModels.swift +63 -0
  30. package/ios/RNMBX/RNMBXModelsComponentView.h +17 -0
  31. package/ios/RNMBX/RNMBXModelsComponentView.mm +67 -0
  32. package/ios/RNMBX/RNMBXModelsManager.mm +9 -0
  33. package/ios/RNMBX/RNMBXModelsManager.swift +13 -0
  34. package/ios/RNMBX/RNMBXNativeUserLocation.swift +47 -16
  35. package/ios/RNMBX/RNMBXNativeUserLocationComponentView.mm +8 -7
  36. package/ios/RNMBX/RNMBXNativeUserLocationViewManager.m +1 -0
  37. package/ios/RNMBX/RNMBXStyle.swift +786 -1
  38. package/ios/RNMBX/RNMBXStyleValue.swift +34 -3
  39. package/ios/RNMBX/RNMBXViewport.swift +59 -3
  40. package/lib/commonjs/Mapbox.js +16 -0
  41. package/lib/commonjs/Mapbox.js.map +1 -1
  42. package/lib/commonjs/components/AbstractLayer.js +1 -1
  43. package/lib/commonjs/components/AbstractLayer.js.map +1 -1
  44. package/lib/commonjs/components/ModelLayer.js +37 -0
  45. package/lib/commonjs/components/ModelLayer.js.map +1 -0
  46. package/lib/commonjs/components/Models.js +43 -0
  47. package/lib/commonjs/components/Models.js.map +1 -0
  48. package/lib/commonjs/components/NativeUserLocation.js +25 -1
  49. package/lib/commonjs/components/NativeUserLocation.js.map +1 -1
  50. package/lib/commonjs/components/Viewport.js.map +1 -1
  51. package/lib/commonjs/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
  52. package/lib/commonjs/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
  53. package/lib/commonjs/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
  54. package/lib/commonjs/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
  55. package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js +13 -0
  56. package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js.map +1 -0
  57. package/lib/commonjs/specs/RNMBXModelsNativeComponent.js +10 -0
  58. package/lib/commonjs/specs/RNMBXModelsNativeComponent.js.map +1 -0
  59. package/lib/commonjs/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
  60. package/lib/commonjs/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
  61. package/lib/commonjs/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
  62. package/lib/commonjs/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +11 -10
  63. package/lib/commonjs/utils/MapboxStyles.d.js +5 -0
  64. package/lib/commonjs/utils/MapboxStyles.d.js.map +1 -1
  65. package/lib/commonjs/utils/styleMap.js +67 -2
  66. package/lib/commonjs/utils/styleMap.js.map +1 -1
  67. package/lib/module/Mapbox.js +2 -0
  68. package/lib/module/Mapbox.js.map +1 -1
  69. package/lib/module/components/AbstractLayer.js +1 -1
  70. package/lib/module/components/AbstractLayer.js.map +1 -1
  71. package/lib/module/components/ModelLayer.js +30 -0
  72. package/lib/module/components/ModelLayer.js.map +1 -0
  73. package/lib/module/components/Models.js +36 -0
  74. package/lib/module/components/Models.js.map +1 -0
  75. package/lib/module/components/NativeUserLocation.js +25 -1
  76. package/lib/module/components/NativeUserLocation.js.map +1 -1
  77. package/lib/module/components/Viewport.js.map +1 -1
  78. package/lib/module/specs/RNMBXCircleLayerNativeComponent.js +2 -0
  79. package/lib/module/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
  80. package/lib/module/specs/RNMBXFillLayerNativeComponent.js +2 -0
  81. package/lib/module/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
  82. package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js +2 -0
  83. package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
  84. package/lib/module/specs/RNMBXLineLayerNativeComponent.js +2 -0
  85. package/lib/module/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
  86. package/lib/module/specs/RNMBXModelLayerNativeComponent.js +9 -0
  87. package/lib/module/specs/RNMBXModelLayerNativeComponent.js.map +1 -0
  88. package/lib/module/specs/RNMBXModelsNativeComponent.js +3 -0
  89. package/lib/module/specs/RNMBXModelsNativeComponent.js.map +1 -0
  90. package/lib/module/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
  91. package/lib/module/specs/RNMBXRasterLayerNativeComponent.js +2 -0
  92. package/lib/module/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
  93. package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js +2 -0
  94. package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
  95. package/lib/module/specs/RNMBXViewportNativeComponent.js +2 -0
  96. package/lib/module/specs/RNMBXViewportNativeComponent.js.map +1 -1
  97. package/lib/module/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +11 -10
  98. package/lib/module/utils/MapboxStyles.d.js +5 -0
  99. package/lib/module/utils/MapboxStyles.d.js.map +1 -1
  100. package/lib/module/utils/styleMap.js +67 -2
  101. package/lib/module/utils/styleMap.js.map +1 -1
  102. package/lib/typescript/src/Mapbox.d.ts +3 -1
  103. package/lib/typescript/src/Mapbox.d.ts.map +1 -1
  104. package/lib/typescript/src/components/AbstractLayer.d.ts +9 -4
  105. package/lib/typescript/src/components/AbstractLayer.d.ts.map +1 -1
  106. package/lib/typescript/src/components/MapView.d.ts +1 -5
  107. package/lib/typescript/src/components/MapView.d.ts.map +1 -1
  108. package/lib/typescript/src/components/ModelLayer.d.ts +77 -0
  109. package/lib/typescript/src/components/ModelLayer.d.ts.map +1 -0
  110. package/lib/typescript/src/components/Models.d.ts +15 -0
  111. package/lib/typescript/src/components/Models.d.ts.map +1 -0
  112. package/lib/typescript/src/components/NativeUserLocation.d.ts +20 -0
  113. package/lib/typescript/src/components/NativeUserLocation.d.ts.map +1 -1
  114. package/lib/typescript/src/components/Viewport.d.ts +32 -1
  115. package/lib/typescript/src/components/Viewport.d.ts.map +1 -1
  116. package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts +12 -10
  117. package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts.map +1 -1
  118. package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts +12 -10
  119. package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts.map +1 -1
  120. package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts +12 -10
  121. package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts.map +1 -1
  122. package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts +12 -10
  123. package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts.map +1 -1
  124. package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts +28 -0
  125. package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts.map +1 -0
  126. package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts +15 -0
  127. package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts.map +1 -0
  128. package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts +9 -1
  129. package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts.map +1 -1
  130. package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts +12 -10
  131. package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts.map +1 -1
  132. package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts +12 -10
  133. package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts.map +1 -1
  134. package/lib/typescript/src/utils/styleMap.d.ts.map +1 -1
  135. package/package.json +1 -1
  136. package/src/Mapbox.ts +3 -0
  137. package/src/components/AbstractLayer.tsx +11 -5
  138. package/src/components/ModelLayer.tsx +107 -0
  139. package/src/components/Models.tsx +44 -0
  140. package/src/components/NativeUserLocation.tsx +46 -2
  141. package/src/components/Viewport.tsx +37 -0
  142. package/src/specs/RNMBXCircleLayerNativeComponent.ts +15 -12
  143. package/src/specs/RNMBXFillLayerNativeComponent.ts +15 -12
  144. package/src/specs/RNMBXHeatmapLayerNativeComponent.ts +15 -12
  145. package/src/specs/RNMBXLineLayerNativeComponent.ts +15 -12
  146. package/src/specs/RNMBXModelLayerNativeComponent.ts +38 -0
  147. package/src/specs/RNMBXModelsNativeComponent.ts +18 -0
  148. package/src/specs/RNMBXNativeUserLocationNativeComponent.ts +14 -1
  149. package/src/specs/RNMBXRasterLayerNativeComponent.ts +15 -12
  150. package/src/specs/RNMBXSymbolLayerNativeComponent.ts +15 -12
  151. package/src/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +11 -10
  152. package/src/utils/MapboxStyles.d.ts +526 -63
  153. package/src/utils/styleMap.ts +69 -2
@@ -62,6 +62,41 @@ type FollowPuckOptions = {
62
62
  | 'keep';
63
63
  };
64
64
 
65
+ type OverviewOptions = {
66
+ /**
67
+ * The geometry that the ``OverviewViewportState`` should use when calculating its camera.
68
+ */
69
+ geometry: GeoJSON.Geometry;
70
+
71
+ /**
72
+ * The padding that ``OverviewViewportState`` should use when calculating its camera.
73
+ *
74
+ * @default 0 padding
75
+ */
76
+ padding?: {
77
+ top?: number;
78
+ left?: number;
79
+ bottom?: number;
80
+ right?: number;
81
+ };
82
+
83
+ /**
84
+ * The bearing that ``OverviewViewportState`` should use when calcualting its camera.
85
+ */
86
+ bearing?: number;
87
+
88
+ /**
89
+ * The pitch that ``OverviewViewportState`` should use when calculating its camera.
90
+ */
91
+ pitch?: number;
92
+
93
+ /**
94
+ * The length of the animation performed by in seconds ``OverviewViewportState`` when it starts updating
95
+ * the camera.
96
+ */
97
+ animationDuration?: number;
98
+ };
99
+
65
100
  type ViewportState =
66
101
  | {
67
102
  kind: 'followPuck';
@@ -69,6 +104,7 @@ type ViewportState =
69
104
  }
70
105
  | {
71
106
  kind: 'overview';
107
+ options?: OverviewOptions;
72
108
  };
73
109
 
74
110
  type ViewportStatus =
@@ -214,6 +250,7 @@ export type NativeArg =
214
250
  | NativeArg[]
215
251
  // eslint-disable-next-line @typescript-eslint/ban-types
216
252
  | Function
253
+ | GeoJSON.Geometry
217
254
  | undefined;
218
255
 
219
256
  type FunctionKeys<T> = keyof {
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -0,0 +1,38 @@
1
+ import type { HostComponent, ViewProps } from 'react-native';
2
+ import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
+ import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
+
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+ import { StyleValue } from '../utils/StyleValue';
7
+
8
+ import { UnsafeMixed } from './codegenUtils';
9
+
10
+ // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
11
+ // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
12
+ type OptionalProp<T> = UnsafeMixed<T>;
13
+ type Slot = 'bottom' | 'middle' | 'top';
14
+
15
+ type CommonProps = {
16
+ sourceID?: OptionalProp<string>;
17
+ existing?: OptionalProp<boolean>;
18
+ filter?: UnsafeMixed<FilterExpression>;
19
+
20
+ aboveLayerID?: OptionalProp<string>;
21
+ belowLayerID?: OptionalProp<string>;
22
+ layerIndex?: OptionalProp<Int32>;
23
+
24
+ maxZoomLevel?: OptionalProp<Double>;
25
+ minZoomLevel?: OptionalProp<Double>;
26
+ sourceLayerID?: OptionalProp<string>;
27
+ slot?: OptionalProp<Slot>;
28
+ };
29
+ // @{codepart-replace-end}
30
+
31
+ export interface NativeProps extends ViewProps, CommonProps {
32
+ id: OptionalProp<string>;
33
+ reactStyle?: UnsafeMixed<{ [key: string]: StyleValue }>;
34
+ }
35
+
36
+ export default codegenNativeComponent<NativeProps>(
37
+ 'RNMBXModelLayer',
38
+ ) as HostComponent<NativeProps>;
@@ -0,0 +1,18 @@
1
+ import type { HostComponent, ViewProps } from 'react-native';
2
+ import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
+
4
+ import { UnsafeMixed } from './codegenUtils';
5
+
6
+ type Asset = {
7
+ __packager_asset?: boolean;
8
+ uri?: string;
9
+ url?: string;
10
+ };
11
+
12
+ export interface NativeProps extends ViewProps {
13
+ models: UnsafeMixed<{ [key: string]: Asset }>;
14
+ }
15
+
16
+ export default codegenNativeComponent<NativeProps>(
17
+ 'RNMBXModels',
18
+ ) as HostComponent<NativeProps>;
@@ -1,4 +1,8 @@
1
- import type { HostComponent, ViewProps } from 'react-native';
1
+ import type {
2
+ HostComponent,
3
+ ProcessedColorValue,
4
+ ViewProps,
5
+ } from 'react-native';
2
6
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
7
 
4
8
  import type { Expression } from '../utils/MapboxStyles';
@@ -10,6 +14,14 @@ type Value<T> = T | Expression;
10
14
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
11
15
  type OptionalProp<T> = UnsafeMixed<T>;
12
16
 
17
+ type Pulsing =
18
+ | {
19
+ isEnabled?: boolean;
20
+ radius?: 'accuracy' | number;
21
+ color?: ProcessedColorValue | null | undefined;
22
+ }
23
+ | { kind: 'default' };
24
+
13
25
  export interface NativeProps extends ViewProps {
14
26
  androidRenderMode?: OptionalProp<string>;
15
27
  puckBearing?: OptionalProp<'heading' | 'course'>;
@@ -19,6 +31,7 @@ export interface NativeProps extends ViewProps {
19
31
  topImage?: OptionalProp<string>;
20
32
  scale?: UnsafeMixed<Value<number>>;
21
33
  visible?: boolean;
34
+ pulsing?: UnsafeMixed<Pulsing>;
22
35
  }
23
36
 
24
37
  export default codegenNativeComponent<NativeProps>(
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -2,25 +2,28 @@ import type { HostComponent, ViewProps } from 'react-native';
2
2
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
3
3
  import { Double, Int32 } from 'react-native/Libraries/Types/CodegenTypes';
4
4
 
5
+ import { FilterExpression } from '../utils/MapboxStyles';
6
+
5
7
  import type { UnsafeMixed } from './codegenUtils';
6
8
 
7
9
  // @{codepart-replace-start(CommonLayerNativeComponentsProps.codepart-ts)}
8
10
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
9
11
  type OptionalProp<T> = UnsafeMixed<T>;
12
+ type Slot = 'bottom' | 'middle' | 'top';
10
13
 
11
14
  type CommonProps = {
12
- sourceID: OptionalProp<string>;
13
- existing: OptionalProp<boolean>;
14
- filter: UnsafeMixed<any[]>;
15
-
16
- aboveLayerID: OptionalProp<string>;
17
- belowLayerID: OptionalProp<string>;
18
- layerIndex: OptionalProp<Int32>;
19
-
20
- maxZoomLevel: OptionalProp<Double>;
21
- minZoomLevel: OptionalProp<Double>;
22
- sourceLayerID: OptionalProp<string>;
23
- slot: OptionalProp<string>;
15
+ sourceID?: OptionalProp<string>;
16
+ existing?: OptionalProp<boolean>;
17
+ filter?: UnsafeMixed<FilterExpression>;
18
+
19
+ aboveLayerID?: OptionalProp<string>;
20
+ belowLayerID?: OptionalProp<string>;
21
+ layerIndex?: OptionalProp<Int32>;
22
+
23
+ maxZoomLevel?: OptionalProp<Double>;
24
+ minZoomLevel?: OptionalProp<Double>;
25
+ sourceLayerID?: OptionalProp<string>;
26
+ slot?: OptionalProp<Slot>;
24
27
  };
25
28
  // @{codepart-replace-end}
26
29
 
@@ -1,17 +1,18 @@
1
1
  // see https://github.com/rnmapbox/maps/wiki/FabricOptionalProp
2
2
  type OptionalProp<T> = UnsafeMixed<T>;
3
+ type Slot = 'bottom' | 'middle' | 'top';
3
4
 
4
5
  type CommonProps = {
5
- sourceID: OptionalProp<string>;
6
- existing: OptionalProp<boolean>;
7
- filter: UnsafeMixed<any[]>;
6
+ sourceID?: OptionalProp<string>;
7
+ existing?: OptionalProp<boolean>;
8
+ filter?: UnsafeMixed<FilterExpression>;
8
9
 
9
- aboveLayerID: OptionalProp<string>;
10
- belowLayerID: OptionalProp<string>;
11
- layerIndex: OptionalProp<Int32>;
10
+ aboveLayerID?: OptionalProp<string>;
11
+ belowLayerID?: OptionalProp<string>;
12
+ layerIndex?: OptionalProp<Int32>;
12
13
 
13
- maxZoomLevel: OptionalProp<Double>;
14
- minZoomLevel: OptionalProp<Double>;
15
- sourceLayerID: OptionalProp<string>;
16
- slot: OptionalProp<string>;
14
+ maxZoomLevel?: OptionalProp<Double>;
15
+ minZoomLevel?: OptionalProp<Double>;
16
+ sourceLayerID?: OptionalProp<string>;
17
+ slot?: OptionalProp<Slot>;
17
18
  };