@iternio/react-native-auto-play 0.0.1

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 (652) hide show
  1. package/README.md +38 -0
  2. package/ReactNativeAutoPlay.podspec +43 -0
  3. package/android/CMakeLists.txt +29 -0
  4. package/android/build.gradle +153 -0
  5. package/android/fix-prefab.gradle +51 -0
  6. package/android/gradle.properties +10 -0
  7. package/android/src/main/AndroidManifest.xml +53 -0
  8. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  9. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/ActivityRenderStateProvider.kt +81 -0
  10. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/AndroidAutoScreen.kt +143 -0
  11. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/AndroidAutoService.kt +126 -0
  12. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/AndroidAutoSession.kt +213 -0
  13. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/AndroidAutoTelemetryHolder.kt +133 -0
  14. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/AndroidAutoTelemetryObserver.kt +201 -0
  15. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/HeadlessTaskService.kt +36 -0
  16. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/ReactNativeAutoPlayPackage.kt +19 -0
  17. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/VirtualRenderer.kt +400 -0
  18. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridAndroidAutoTelemetry.kt +7 -0
  19. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridAutoPlay.kt +279 -0
  20. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridCluster.kt +92 -0
  21. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridGridTemplate.kt +21 -0
  22. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridInformationTemplate.kt +22 -0
  23. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridListTemplate.kt +22 -0
  24. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridMapTemplate.kt +134 -0
  25. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridMessageTemplate.kt +15 -0
  26. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/hybrid/HybridSearchTemplate.kt +20 -0
  27. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/AndroidAutoTemplate.kt +60 -0
  28. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/GridTemplate.kt +92 -0
  29. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/InformationTemplate.kt +98 -0
  30. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/ListTemplate.kt +101 -0
  31. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/MapTemplate.kt +365 -0
  32. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/MessageTemplate.kt +83 -0
  33. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/Parser.kt +662 -0
  34. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/RoutePreviewTemplate.kt +75 -0
  35. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/SearchTemplate.kt +91 -0
  36. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/template/TripPreviewTemplate.kt +196 -0
  37. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/utils/AppInfo.kt +34 -0
  38. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/utils/Debouncer.kt +19 -0
  39. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/utils/ReactContextResolver.kt +60 -0
  40. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/utils/SymbolFont.kt +126 -0
  41. package/android/src/main/java/com/margelo/nitro/swe/iternio/reactnativeautoplay/utils/ThreadUtil.kt +19 -0
  42. package/android/src/main/res/drawable/alt_route.xml +9 -0
  43. package/android/src/main/res/drawable/ic_chevron_backward.xml +9 -0
  44. package/android/src/main/res/drawable/ic_chevron_forward.xml +9 -0
  45. package/android/src/main/res/font/materialsymbolsoutlined_regular.ttf +0 -0
  46. package/android/src/main/res/xml/automotive_app_desc.xml +4 -0
  47. package/ios/Bridge.h +8 -0
  48. package/ios/ReactHelpers/NitroConvert.h +19 -0
  49. package/ios/ReactHelpers/NitroConvert.m +21 -0
  50. package/ios/ReactHelpers/RCTRootView.h +29 -0
  51. package/ios/Types.swift +20 -0
  52. package/ios/extensions/CarPlayExtensions.swift +145 -0
  53. package/ios/extensions/CarPlayTemplateExtensions.swift +87 -0
  54. package/ios/extensions/NitroImageExtensions.swift +33 -0
  55. package/ios/extensions/UIImage+Toggle.swift +58 -0
  56. package/ios/hybrid/HybridAutoPlay.swift +293 -0
  57. package/ios/hybrid/HybridCarPlayDashboard.swift +73 -0
  58. package/ios/hybrid/HybridCluster.swift +181 -0
  59. package/ios/hybrid/HybridGridTemplate.swift +31 -0
  60. package/ios/hybrid/HybridInformationTemplate.swift +29 -0
  61. package/ios/hybrid/HybridListTemplate.swift +31 -0
  62. package/ios/hybrid/HybridMapTemplate.swift +141 -0
  63. package/ios/hybrid/HybridMessageTemplate.swift +19 -0
  64. package/ios/hybrid/HybridSearchTemplate.swift +29 -0
  65. package/ios/scenes/AutoPlayInterfaceController.swift +221 -0
  66. package/ios/scenes/AutoPlayScene.swift +126 -0
  67. package/ios/scenes/AutoPlaySceneViewController.swift +36 -0
  68. package/ios/scenes/ClusterSceneDelegate.swift +174 -0
  69. package/ios/scenes/DashboardSceneDelegate.swift +128 -0
  70. package/ios/scenes/HeadUnitSceneDelegate.swift +68 -0
  71. package/ios/scenes/SceneStore.swift +78 -0
  72. package/ios/scenes/WindowApplicationSceneDelegate.swift +53 -0
  73. package/ios/templates/AutoPlayTemplate.swift +65 -0
  74. package/ios/templates/GridTemplate.swift +102 -0
  75. package/ios/templates/InformationTemplate.swift +67 -0
  76. package/ios/templates/ListTemplate.swift +77 -0
  77. package/ios/templates/MapTemplate.swift +640 -0
  78. package/ios/templates/MessageTemplate.swift +48 -0
  79. package/ios/templates/Parser.swift +877 -0
  80. package/ios/templates/SearchTemplate.swift +170 -0
  81. package/ios/templates/TemplateStore.swift +45 -0
  82. package/ios/utils/RootModule.swift +136 -0
  83. package/ios/utils/SymbolFont.swift +199 -0
  84. package/ios/utils/ViewUtils.swift +39 -0
  85. package/lib/AutoPlayHeadlessJsTask.d.ts +4 -0
  86. package/lib/AutoPlayHeadlessJsTask.js +15 -0
  87. package/lib/components/MapTemplateContext.d.ts +7 -0
  88. package/lib/components/MapTemplateContext.js +6 -0
  89. package/lib/components/SafeAreaInsetsContext.d.ts +7 -0
  90. package/lib/components/SafeAreaInsetsContext.js +17 -0
  91. package/lib/components/SafeAreaView.d.ts +2 -0
  92. package/lib/components/SafeAreaView.js +18 -0
  93. package/lib/hooks/useAndroidAutoTelemetry.d.ts +35 -0
  94. package/lib/hooks/useAndroidAutoTelemetry.js +74 -0
  95. package/lib/hooks/useMapTemplate.d.ts +5 -0
  96. package/lib/hooks/useMapTemplate.js +9 -0
  97. package/lib/hooks/useSafeAreaInsets.d.ts +1 -0
  98. package/lib/hooks/useSafeAreaInsets.js +5 -0
  99. package/lib/index.d.ts +37 -0
  100. package/lib/index.js +39 -0
  101. package/lib/index.web.d.ts +0 -0
  102. package/lib/index.web.js +1 -0
  103. package/lib/scenes/AutoPlayCluster.d.ts +44 -0
  104. package/lib/scenes/AutoPlayCluster.js +129 -0
  105. package/lib/scenes/CarPlayDashboardScene.d.ts +35 -0
  106. package/lib/scenes/CarPlayDashboardScene.js +88 -0
  107. package/lib/specs/AndroidAutoTelemetry.nitro.d.ts +15 -0
  108. package/lib/specs/AndroidAutoTelemetry.nitro.js +1 -0
  109. package/lib/specs/AutoPlay.nitro.d.ts +64 -0
  110. package/lib/specs/AutoPlay.nitro.js +1 -0
  111. package/lib/specs/CarPlayDashboard.nitro.d.ts +22 -0
  112. package/lib/specs/CarPlayDashboard.nitro.js +1 -0
  113. package/lib/specs/Cluster.nitro.d.ts +19 -0
  114. package/lib/specs/Cluster.nitro.js +1 -0
  115. package/lib/specs/GridTemplate.nitro.d.ts +14 -0
  116. package/lib/specs/GridTemplate.nitro.js +1 -0
  117. package/lib/specs/HybridAndroidAutoTelemetry.nitro.d.ts +15 -0
  118. package/lib/specs/HybridAndroidAutoTelemetry.nitro.js +1 -0
  119. package/lib/specs/HybridAutoPlay.nitro.d.ts +64 -0
  120. package/lib/specs/HybridAutoPlay.nitro.js +1 -0
  121. package/lib/specs/HybridCarPlayDashboard.nitro.d.ts +22 -0
  122. package/lib/specs/HybridCarPlayDashboard.nitro.js +1 -0
  123. package/lib/specs/HybridCluster.nitro.d.ts +19 -0
  124. package/lib/specs/HybridCluster.nitro.js +1 -0
  125. package/lib/specs/HybridGridTemplate.nitro.d.ts +14 -0
  126. package/lib/specs/HybridGridTemplate.nitro.js +1 -0
  127. package/lib/specs/HybridInformationTemplate.nitro.d.ts +13 -0
  128. package/lib/specs/HybridInformationTemplate.nitro.js +1 -0
  129. package/lib/specs/HybridListTemplate.nitro.d.ts +13 -0
  130. package/lib/specs/HybridListTemplate.nitro.js +1 -0
  131. package/lib/specs/HybridMapTemplate.nitro.d.ts +25 -0
  132. package/lib/specs/HybridMapTemplate.nitro.js +1 -0
  133. package/lib/specs/HybridMessageTemplate.nitro.d.ts +12 -0
  134. package/lib/specs/HybridMessageTemplate.nitro.js +1 -0
  135. package/lib/specs/HybridSearchTemplate.nitro.d.ts +13 -0
  136. package/lib/specs/HybridSearchTemplate.nitro.js +1 -0
  137. package/lib/specs/InformationTemplate.nitro.d.ts +13 -0
  138. package/lib/specs/InformationTemplate.nitro.js +1 -0
  139. package/lib/specs/ListTemplate.nitro.d.ts +13 -0
  140. package/lib/specs/ListTemplate.nitro.js +1 -0
  141. package/lib/specs/MapTemplate.nitro.d.ts +25 -0
  142. package/lib/specs/MapTemplate.nitro.js +1 -0
  143. package/lib/specs/MessageTemplate.nitro.d.ts +12 -0
  144. package/lib/specs/MessageTemplate.nitro.js +1 -0
  145. package/lib/specs/SearchTemplate.nitro.d.ts +13 -0
  146. package/lib/specs/SearchTemplate.nitro.js +1 -0
  147. package/lib/templates/GridTemplate.d.ts +28 -0
  148. package/lib/templates/GridTemplate.js +29 -0
  149. package/lib/templates/InformationTemplate.d.ts +52 -0
  150. package/lib/templates/InformationTemplate.js +45 -0
  151. package/lib/templates/ListTemplate.d.ts +77 -0
  152. package/lib/templates/ListTemplate.js +29 -0
  153. package/lib/templates/MapTemplate.d.ts +142 -0
  154. package/lib/templates/MapTemplate.js +115 -0
  155. package/lib/templates/MessageTemplate.d.ts +55 -0
  156. package/lib/templates/MessageTemplate.js +43 -0
  157. package/lib/templates/SearchTemplate.d.ts +55 -0
  158. package/lib/templates/SearchTemplate.js +28 -0
  159. package/lib/templates/Template.d.ts +76 -0
  160. package/lib/templates/Template.js +33 -0
  161. package/lib/types/Button.d.ts +76 -0
  162. package/lib/types/Button.js +9 -0
  163. package/lib/types/Event.d.ts +14 -0
  164. package/lib/types/Event.js +1 -0
  165. package/lib/types/GestureEvents.d.ts +37 -0
  166. package/lib/types/GestureEvents.js +1 -0
  167. package/lib/types/Glyphmap.d.ts +4105 -0
  168. package/lib/types/Glyphmap.js +4105 -0
  169. package/lib/types/Image.d.ts +27 -0
  170. package/lib/types/Image.js +1 -0
  171. package/lib/types/Maneuver.d.ts +200 -0
  172. package/lib/types/Maneuver.js +61 -0
  173. package/lib/types/RootComponent.d.ts +35 -0
  174. package/lib/types/RootComponent.js +1 -0
  175. package/lib/types/Telemetry.d.ts +64 -0
  176. package/lib/types/Telemetry.js +14 -0
  177. package/lib/types/Text.d.ts +23 -0
  178. package/lib/types/Text.js +5 -0
  179. package/lib/types/Trip.d.ts +69 -0
  180. package/lib/types/Trip.js +1 -0
  181. package/lib/utils/NitroAction.d.ts +32 -0
  182. package/lib/utils/NitroAction.js +126 -0
  183. package/lib/utils/NitroAlert.d.ts +43 -0
  184. package/lib/utils/NitroAlert.js +16 -0
  185. package/lib/utils/NitroAttributedString.d.ts +22 -0
  186. package/lib/utils/NitroAttributedString.js +11 -0
  187. package/lib/utils/NitroColor.d.ts +14 -0
  188. package/lib/utils/NitroColor.js +21 -0
  189. package/lib/utils/NitroGrid.d.ts +16 -0
  190. package/lib/utils/NitroGrid.js +9 -0
  191. package/lib/utils/NitroImage.d.ts +24 -0
  192. package/lib/utils/NitroImage.js +32 -0
  193. package/lib/utils/NitroManeuver.d.ts +42 -0
  194. package/lib/utils/NitroManeuver.js +78 -0
  195. package/lib/utils/NitroMapButton.d.ts +12 -0
  196. package/lib/utils/NitroMapButton.js +35 -0
  197. package/lib/utils/NitroSection.d.ts +23 -0
  198. package/lib/utils/NitroSection.js +62 -0
  199. package/nitro.json +52 -0
  200. package/nitrogen/generated/.gitattributes +1 -0
  201. package/nitrogen/generated/android/ReactNativeAutoPlay+autolinking.cmake +102 -0
  202. package/nitrogen/generated/android/ReactNativeAutoPlay+autolinking.gradle +27 -0
  203. package/nitrogen/generated/android/ReactNativeAutoPlayOnLoad.cpp +156 -0
  204. package/nitrogen/generated/android/ReactNativeAutoPlayOnLoad.hpp +25 -0
  205. package/nitrogen/generated/android/c++/JAlertActionStyle.hpp +62 -0
  206. package/nitrogen/generated/android/c++/JAlertDismissalReason.hpp +62 -0
  207. package/nitrogen/generated/android/c++/JAssetImage.hpp +80 -0
  208. package/nitrogen/generated/android/c++/JAutoText.hpp +70 -0
  209. package/nitrogen/generated/android/c++/JClusterEventName.hpp +65 -0
  210. package/nitrogen/generated/android/c++/JColorScheme.hpp +59 -0
  211. package/nitrogen/generated/android/c++/JDistance.hpp +62 -0
  212. package/nitrogen/generated/android/c++/JDistanceUnits.hpp +68 -0
  213. package/nitrogen/generated/android/c++/JDurationWithTimeZone.hpp +61 -0
  214. package/nitrogen/generated/android/c++/JEventName.hpp +59 -0
  215. package/nitrogen/generated/android/c++/JForkType.hpp +59 -0
  216. package/nitrogen/generated/android/c++/JFunc_void.hpp +74 -0
  217. package/nitrogen/generated/android/c++/JFunc_void_AlertDismissalReason.hpp +76 -0
  218. package/nitrogen/generated/android/c++/JFunc_void_AutoText_std__optional_AutoText_.hpp +82 -0
  219. package/nitrogen/generated/android/c++/JFunc_void_ColorScheme.hpp +76 -0
  220. package/nitrogen/generated/android/c++/JFunc_void_Point.hpp +76 -0
  221. package/nitrogen/generated/android/c++/JFunc_void_Point_double.hpp +76 -0
  222. package/nitrogen/generated/android/c++/JFunc_void_Point_std__optional_Point_.hpp +77 -0
  223. package/nitrogen/generated/android/c++/JFunc_void_SafeAreaInsets.hpp +77 -0
  224. package/nitrogen/generated/android/c++/JFunc_void_VisibilityState.hpp +76 -0
  225. package/nitrogen/generated/android/c++/JFunc_void_std__optional_Telemetry__std__optional_std__string_.hpp +84 -0
  226. package/nitrogen/generated/android/c++/JFunc_void_std__optional_bool_.hpp +75 -0
  227. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +75 -0
  228. package/nitrogen/generated/android/c++/JFunc_void_std__string_ColorScheme.hpp +77 -0
  229. package/nitrogen/generated/android/c++/JFunc_void_std__string_ZoomEvent.hpp +77 -0
  230. package/nitrogen/generated/android/c++/JFunc_void_std__string_bool.hpp +75 -0
  231. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__string.hpp +75 -0
  232. package/nitrogen/generated/android/c++/JGlyphImage.hpp +71 -0
  233. package/nitrogen/generated/android/c++/JGridTemplateConfig.hpp +219 -0
  234. package/nitrogen/generated/android/c++/JHybridAndroidAutoTelemetrySpec.cpp +81 -0
  235. package/nitrogen/generated/android/c++/JHybridAndroidAutoTelemetrySpec.hpp +65 -0
  236. package/nitrogen/generated/android/c++/JHybridAutoPlaySpec.cpp +234 -0
  237. package/nitrogen/generated/android/c++/JHybridAutoPlaySpec.hpp +74 -0
  238. package/nitrogen/generated/android/c++/JHybridClusterSpec.cpp +193 -0
  239. package/nitrogen/generated/android/c++/JHybridClusterSpec.hpp +71 -0
  240. package/nitrogen/generated/android/c++/JHybridGridTemplateSpec.cpp +131 -0
  241. package/nitrogen/generated/android/c++/JHybridGridTemplateSpec.hpp +66 -0
  242. package/nitrogen/generated/android/c++/JHybridInformationTemplateSpec.cpp +129 -0
  243. package/nitrogen/generated/android/c++/JHybridInformationTemplateSpec.hpp +66 -0
  244. package/nitrogen/generated/android/c++/JHybridListTemplateSpec.cpp +138 -0
  245. package/nitrogen/generated/android/c++/JHybridListTemplateSpec.hpp +66 -0
  246. package/nitrogen/generated/android/c++/JHybridMapTemplateSpec.cpp +314 -0
  247. package/nitrogen/generated/android/c++/JHybridMapTemplateSpec.hpp +74 -0
  248. package/nitrogen/generated/android/c++/JHybridMessageTemplateSpec.cpp +113 -0
  249. package/nitrogen/generated/android/c++/JHybridMessageTemplateSpec.hpp +65 -0
  250. package/nitrogen/generated/android/c++/JHybridSearchTemplateSpec.cpp +118 -0
  251. package/nitrogen/generated/android/c++/JHybridSearchTemplateSpec.hpp +66 -0
  252. package/nitrogen/generated/android/c++/JImageLane.hpp +81 -0
  253. package/nitrogen/generated/android/c++/JInformationTemplateConfig.hpp +226 -0
  254. package/nitrogen/generated/android/c++/JKeepType.hpp +62 -0
  255. package/nitrogen/generated/android/c++/JLaneGuidance.hpp +112 -0
  256. package/nitrogen/generated/android/c++/JListTemplateConfig.hpp +222 -0
  257. package/nitrogen/generated/android/c++/JManeuverType.hpp +89 -0
  258. package/nitrogen/generated/android/c++/JMapTemplateConfig.hpp +312 -0
  259. package/nitrogen/generated/android/c++/JMessageTemplateConfig.hpp +224 -0
  260. package/nitrogen/generated/android/c++/JNavigationAlertAction.hpp +80 -0
  261. package/nitrogen/generated/android/c++/JNavigationAlertCallbacks.hpp +91 -0
  262. package/nitrogen/generated/android/c++/JNitroAction.hpp +112 -0
  263. package/nitrogen/generated/android/c++/JNitroActionType.hpp +62 -0
  264. package/nitrogen/generated/android/c++/JNitroAlignment.hpp +59 -0
  265. package/nitrogen/generated/android/c++/JNitroAttributedString.hpp +91 -0
  266. package/nitrogen/generated/android/c++/JNitroAttributedStringImage.hpp +70 -0
  267. package/nitrogen/generated/android/c++/JNitroBaseMapTemplateConfig.hpp +196 -0
  268. package/nitrogen/generated/android/c++/JNitroButtonStyle.hpp +68 -0
  269. package/nitrogen/generated/android/c++/JNitroColor.hpp +61 -0
  270. package/nitrogen/generated/android/c++/JNitroGridButton.hpp +92 -0
  271. package/nitrogen/generated/android/c++/JNitroImage.cpp +26 -0
  272. package/nitrogen/generated/android/c++/JNitroImage.hpp +75 -0
  273. package/nitrogen/generated/android/c++/JNitroManeuver.cpp +35 -0
  274. package/nitrogen/generated/android/c++/JNitroManeuver.hpp +126 -0
  275. package/nitrogen/generated/android/c++/JNitroMapButton.hpp +88 -0
  276. package/nitrogen/generated/android/c++/JNitroMapButtonType.hpp +59 -0
  277. package/nitrogen/generated/android/c++/JNitroMessageManeuver.hpp +78 -0
  278. package/nitrogen/generated/android/c++/JNitroNavigationAlert.hpp +137 -0
  279. package/nitrogen/generated/android/c++/JNitroRoutingManeuver.hpp +221 -0
  280. package/nitrogen/generated/android/c++/JNitroRow.hpp +112 -0
  281. package/nitrogen/generated/android/c++/JNitroSection.hpp +105 -0
  282. package/nitrogen/generated/android/c++/JNitroSectionType.hpp +59 -0
  283. package/nitrogen/generated/android/c++/JNumericTelemetryItem.hpp +61 -0
  284. package/nitrogen/generated/android/c++/JOffRampType.hpp +65 -0
  285. package/nitrogen/generated/android/c++/JOnRampType.hpp +77 -0
  286. package/nitrogen/generated/android/c++/JPoint.hpp +61 -0
  287. package/nitrogen/generated/android/c++/JPreferredImageLane.hpp +89 -0
  288. package/nitrogen/generated/android/c++/JRouteChoice.hpp +159 -0
  289. package/nitrogen/generated/android/c++/JSafeAreaInsets.hpp +73 -0
  290. package/nitrogen/generated/android/c++/JSearchTemplateConfig.hpp +231 -0
  291. package/nitrogen/generated/android/c++/JStringTelemetryItem.hpp +61 -0
  292. package/nitrogen/generated/android/c++/JTelemetry.hpp +84 -0
  293. package/nitrogen/generated/android/c++/JTrafficSide.hpp +59 -0
  294. package/nitrogen/generated/android/c++/JTravelEstimates.hpp +74 -0
  295. package/nitrogen/generated/android/c++/JTripConfig.hpp +77 -0
  296. package/nitrogen/generated/android/c++/JTripPoint.hpp +80 -0
  297. package/nitrogen/generated/android/c++/JTripPreviewTextConfiguration.hpp +69 -0
  298. package/nitrogen/generated/android/c++/JTripSelectorCallback.hpp +69 -0
  299. package/nitrogen/generated/android/c++/JTripsConfig.hpp +95 -0
  300. package/nitrogen/generated/android/c++/JTurnType.hpp +80 -0
  301. package/nitrogen/generated/android/c++/JVariant_GlyphImage_AssetImage.cpp +26 -0
  302. package/nitrogen/generated/android/c++/JVariant_GlyphImage_AssetImage.hpp +75 -0
  303. package/nitrogen/generated/android/c++/JVariant_PreferredImageLane_ImageLane.cpp +26 -0
  304. package/nitrogen/generated/android/c++/JVariant_PreferredImageLane_ImageLane.hpp +81 -0
  305. package/nitrogen/generated/android/c++/JVehicleTelemetryItem.hpp +70 -0
  306. package/nitrogen/generated/android/c++/JVisibilityState.hpp +65 -0
  307. package/nitrogen/generated/android/c++/JVisibleTravelEstimate.hpp +59 -0
  308. package/nitrogen/generated/android/c++/JZoomEvent.hpp +59 -0
  309. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/AlertActionStyle.kt +22 -0
  310. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/AlertDismissalReason.kt +22 -0
  311. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/AssetImage.kt +53 -0
  312. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/AutoText.kt +44 -0
  313. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ClusterEventName.kt +23 -0
  314. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ColorScheme.kt +21 -0
  315. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Distance.kt +41 -0
  316. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/DistanceUnits.kt +24 -0
  317. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/DurationWithTimeZone.kt +41 -0
  318. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/EventName.kt +21 -0
  319. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ForkType.kt +21 -0
  320. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void.kt +80 -0
  321. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_AlertDismissalReason.kt +80 -0
  322. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_AutoText_std__optional_AutoText_.kt +80 -0
  323. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_ColorScheme.kt +80 -0
  324. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_Point.kt +80 -0
  325. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_Point_double.kt +80 -0
  326. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_Point_std__optional_Point_.kt +80 -0
  327. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_SafeAreaInsets.kt +80 -0
  328. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_VisibilityState.kt +80 -0
  329. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__optional_Telemetry__std__optional_std__string_.kt +80 -0
  330. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__optional_bool_.kt +80 -0
  331. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__string.kt +80 -0
  332. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__string_ColorScheme.kt +80 -0
  333. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__string_ZoomEvent.kt +80 -0
  334. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__string_bool.kt +80 -0
  335. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Func_void_std__string_std__string.kt +80 -0
  336. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/GlyphImage.kt +47 -0
  337. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/GridTemplateConfig.kt +72 -0
  338. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridAndroidAutoTelemetrySpec.kt +62 -0
  339. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridAutoPlaySpec.kt +109 -0
  340. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridClusterSpec.kt +107 -0
  341. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridGridTemplateSpec.kt +61 -0
  342. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridInformationTemplateSpec.kt +61 -0
  343. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridListTemplateSpec.kt +61 -0
  344. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridMapTemplateSpec.kt +98 -0
  345. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridMessageTemplateSpec.kt +57 -0
  346. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/HybridSearchTemplateSpec.kt +61 -0
  347. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ImageLane.kt +41 -0
  348. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/InformationTemplateConfig.kt +75 -0
  349. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/KeepType.kt +22 -0
  350. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/LaneGuidance.kt +41 -0
  351. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ListTemplateConfig.kt +72 -0
  352. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ManeuverType.kt +31 -0
  353. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/MapTemplateConfig.kt +90 -0
  354. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/MessageTemplateConfig.kt +78 -0
  355. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NavigationAlertAction.kt +48 -0
  356. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NavigationAlertCallbacks.kt +45 -0
  357. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroAction.kt +63 -0
  358. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroActionType.kt +22 -0
  359. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroAlignment.kt +21 -0
  360. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroAttributedString.kt +41 -0
  361. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroAttributedStringImage.kt +41 -0
  362. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroBaseMapTemplateConfig.kt +63 -0
  363. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroButtonStyle.kt +24 -0
  364. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroColor.kt +41 -0
  365. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroGridButton.kt +48 -0
  366. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroImage.kt +59 -0
  367. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroManeuver.kt +59 -0
  368. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroMapButton.kt +48 -0
  369. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroMapButtonType.kt +21 -0
  370. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroMessageManeuver.kt +47 -0
  371. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroNavigationAlert.kt +69 -0
  372. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroRoutingManeuver.kt +92 -0
  373. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroRow.kt +63 -0
  374. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroSection.kt +44 -0
  375. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NitroSectionType.kt +21 -0
  376. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/NumericTelemetryItem.kt +41 -0
  377. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/OffRampType.kt +23 -0
  378. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/OnRampType.kt +27 -0
  379. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Point.kt +41 -0
  380. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/PreferredImageLane.kt +47 -0
  381. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ReactNativeAutoPlayOnLoad.kt +35 -0
  382. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/RouteChoice.kt +50 -0
  383. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/SafeAreaInsets.kt +50 -0
  384. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/SearchTemplateConfig.kt +81 -0
  385. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/StringTelemetryItem.kt +41 -0
  386. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Telemetry.kt +53 -0
  387. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TrafficSide.kt +21 -0
  388. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TravelEstimates.kt +44 -0
  389. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TripConfig.kt +41 -0
  390. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TripPoint.kt +47 -0
  391. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TripPreviewTextConfiguration.kt +47 -0
  392. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TripSelectorCallback.kt +42 -0
  393. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TripsConfig.kt +41 -0
  394. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/TurnType.kt +28 -0
  395. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Variant_GlyphImage_AssetImage.kt +59 -0
  396. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/Variant_PreferredImageLane_ImageLane.kt +59 -0
  397. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/VehicleTelemetryItem.kt +44 -0
  398. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/VisibilityState.kt +23 -0
  399. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/VisibleTravelEstimate.kt +21 -0
  400. package/nitrogen/generated/android/kotlin/com/margelo/nitro/swe/iternio/reactnativeautoplay/ZoomEvent.kt +21 -0
  401. package/nitrogen/generated/ios/ReactNativeAutoPlay+autolinking.rb +60 -0
  402. package/nitrogen/generated/ios/ReactNativeAutoPlay-Swift-Cxx-Bridge.cpp +296 -0
  403. package/nitrogen/generated/ios/ReactNativeAutoPlay-Swift-Cxx-Bridge.hpp +1509 -0
  404. package/nitrogen/generated/ios/ReactNativeAutoPlay-Swift-Cxx-Umbrella.hpp +266 -0
  405. package/nitrogen/generated/ios/ReactNativeAutoPlayAutolinking.mm +97 -0
  406. package/nitrogen/generated/ios/ReactNativeAutoPlayAutolinking.swift +145 -0
  407. package/nitrogen/generated/ios/c++/HybridAutoPlaySpecSwift.cpp +11 -0
  408. package/nitrogen/generated/ios/c++/HybridAutoPlaySpecSwift.hpp +180 -0
  409. package/nitrogen/generated/ios/c++/HybridCarPlayDashboardSpecSwift.cpp +11 -0
  410. package/nitrogen/generated/ios/c++/HybridCarPlayDashboardSpecSwift.hpp +120 -0
  411. package/nitrogen/generated/ios/c++/HybridClusterSpecSwift.cpp +11 -0
  412. package/nitrogen/generated/ios/c++/HybridClusterSpecSwift.hpp +150 -0
  413. package/nitrogen/generated/ios/c++/HybridGridTemplateSpecSwift.cpp +11 -0
  414. package/nitrogen/generated/ios/c++/HybridGridTemplateSpecSwift.hpp +128 -0
  415. package/nitrogen/generated/ios/c++/HybridInformationTemplateSpecSwift.cpp +11 -0
  416. package/nitrogen/generated/ios/c++/HybridInformationTemplateSpecSwift.hpp +134 -0
  417. package/nitrogen/generated/ios/c++/HybridListTemplateSpecSwift.cpp +11 -0
  418. package/nitrogen/generated/ios/c++/HybridListTemplateSpecSwift.hpp +134 -0
  419. package/nitrogen/generated/ios/c++/HybridMapTemplateSpecSwift.cpp +11 -0
  420. package/nitrogen/generated/ios/c++/HybridMapTemplateSpecSwift.hpp +264 -0
  421. package/nitrogen/generated/ios/c++/HybridMessageTemplateSpecSwift.cpp +11 -0
  422. package/nitrogen/generated/ios/c++/HybridMessageTemplateSpecSwift.hpp +119 -0
  423. package/nitrogen/generated/ios/c++/HybridSearchTemplateSpecSwift.cpp +11 -0
  424. package/nitrogen/generated/ios/c++/HybridSearchTemplateSpecSwift.hpp +125 -0
  425. package/nitrogen/generated/ios/swift/AlertActionStyle.swift +44 -0
  426. package/nitrogen/generated/ios/swift/AlertDismissalReason.swift +44 -0
  427. package/nitrogen/generated/ios/swift/AssetImage.swift +102 -0
  428. package/nitrogen/generated/ios/swift/AutoText.swift +81 -0
  429. package/nitrogen/generated/ios/swift/ClusterEventName.swift +48 -0
  430. package/nitrogen/generated/ios/swift/ColorScheme.swift +40 -0
  431. package/nitrogen/generated/ios/swift/Distance.swift +46 -0
  432. package/nitrogen/generated/ios/swift/DistanceUnits.swift +52 -0
  433. package/nitrogen/generated/ios/swift/DurationWithTimeZone.swift +46 -0
  434. package/nitrogen/generated/ios/swift/EventName.swift +40 -0
  435. package/nitrogen/generated/ios/swift/ForkType.swift +40 -0
  436. package/nitrogen/generated/ios/swift/Func_void.swift +47 -0
  437. package/nitrogen/generated/ios/swift/Func_void_AlertDismissalReason.swift +47 -0
  438. package/nitrogen/generated/ios/swift/Func_void_AutoText_std__optional_AutoText_.swift +47 -0
  439. package/nitrogen/generated/ios/swift/Func_void_ColorScheme.swift +47 -0
  440. package/nitrogen/generated/ios/swift/Func_void_Point.swift +47 -0
  441. package/nitrogen/generated/ios/swift/Func_void_Point_double.swift +47 -0
  442. package/nitrogen/generated/ios/swift/Func_void_Point_std__optional_Point_.swift +47 -0
  443. package/nitrogen/generated/ios/swift/Func_void_SafeAreaInsets.swift +47 -0
  444. package/nitrogen/generated/ios/swift/Func_void_VisibilityState.swift +47 -0
  445. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
  446. package/nitrogen/generated/ios/swift/Func_void_std__optional_bool_.swift +54 -0
  447. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
  448. package/nitrogen/generated/ios/swift/Func_void_std__string_ColorScheme.swift +47 -0
  449. package/nitrogen/generated/ios/swift/Func_void_std__string_ZoomEvent.swift +47 -0
  450. package/nitrogen/generated/ios/swift/Func_void_std__string_bool.swift +47 -0
  451. package/nitrogen/generated/ios/swift/Func_void_std__string_std__string.swift +47 -0
  452. package/nitrogen/generated/ios/swift/GlyphImage.swift +80 -0
  453. package/nitrogen/generated/ios/swift/GridTemplateConfig.swift +386 -0
  454. package/nitrogen/generated/ios/swift/HybridAutoPlaySpec.swift +66 -0
  455. package/nitrogen/generated/ios/swift/HybridAutoPlaySpec_cxx.swift +326 -0
  456. package/nitrogen/generated/ios/swift/HybridCarPlayDashboardSpec.swift +60 -0
  457. package/nitrogen/generated/ios/swift/HybridCarPlayDashboardSpec_cxx.swift +190 -0
  458. package/nitrogen/generated/ios/swift/HybridClusterSpec.swift +63 -0
  459. package/nitrogen/generated/ios/swift/HybridClusterSpec_cxx.swift +250 -0
  460. package/nitrogen/generated/ios/swift/HybridGridTemplateSpec.swift +57 -0
  461. package/nitrogen/generated/ios/swift/HybridGridTemplateSpec_cxx.swift +141 -0
  462. package/nitrogen/generated/ios/swift/HybridInformationTemplateSpec.swift +57 -0
  463. package/nitrogen/generated/ios/swift/HybridInformationTemplateSpec_cxx.swift +141 -0
  464. package/nitrogen/generated/ios/swift/HybridListTemplateSpec.swift +57 -0
  465. package/nitrogen/generated/ios/swift/HybridListTemplateSpec_cxx.swift +148 -0
  466. package/nitrogen/generated/ios/swift/HybridMapTemplateSpec.swift +65 -0
  467. package/nitrogen/generated/ios/swift/HybridMapTemplateSpec_cxx.swift +272 -0
  468. package/nitrogen/generated/ios/swift/HybridMessageTemplateSpec.swift +56 -0
  469. package/nitrogen/generated/ios/swift/HybridMessageTemplateSpec_cxx.swift +130 -0
  470. package/nitrogen/generated/ios/swift/HybridSearchTemplateSpec.swift +57 -0
  471. package/nitrogen/generated/ios/swift/HybridSearchTemplateSpec_cxx.swift +141 -0
  472. package/nitrogen/generated/ios/swift/ImageLane.swift +84 -0
  473. package/nitrogen/generated/ios/swift/InformationTemplateConfig.swift +416 -0
  474. package/nitrogen/generated/ios/swift/KeepType.swift +44 -0
  475. package/nitrogen/generated/ios/swift/LaneGuidance.swift +96 -0
  476. package/nitrogen/generated/ios/swift/ListTemplateConfig.swift +405 -0
  477. package/nitrogen/generated/ios/swift/ManeuverType.swift +80 -0
  478. package/nitrogen/generated/ios/swift/MapTemplateConfig.swift +668 -0
  479. package/nitrogen/generated/ios/swift/MessageTemplateConfig.swift +484 -0
  480. package/nitrogen/generated/ios/swift/NavigationAlertAction.swift +80 -0
  481. package/nitrogen/generated/ios/swift/NavigationAlertCallbacks.swift +74 -0
  482. package/nitrogen/generated/ios/swift/NitroAction.swift +242 -0
  483. package/nitrogen/generated/ios/swift/NitroActionType.swift +44 -0
  484. package/nitrogen/generated/ios/swift/NitroAlignment.swift +40 -0
  485. package/nitrogen/generated/ios/swift/NitroAttributedString.swift +77 -0
  486. package/nitrogen/generated/ios/swift/NitroAttributedStringImage.swift +72 -0
  487. package/nitrogen/generated/ios/swift/NitroBaseMapTemplateConfig.swift +360 -0
  488. package/nitrogen/generated/ios/swift/NitroButtonStyle.swift +52 -0
  489. package/nitrogen/generated/ios/swift/NitroCarPlayDashboardButton.swift +159 -0
  490. package/nitrogen/generated/ios/swift/NitroColor.swift +46 -0
  491. package/nitrogen/generated/ios/swift/NitroGridButton.swift +94 -0
  492. package/nitrogen/generated/ios/swift/NitroImage.swift +18 -0
  493. package/nitrogen/generated/ios/swift/NitroManeuver.swift +18 -0
  494. package/nitrogen/generated/ios/swift/NitroMapButton.swift +113 -0
  495. package/nitrogen/generated/ios/swift/NitroMapButtonType.swift +40 -0
  496. package/nitrogen/generated/ios/swift/NitroMessageManeuver.swift +132 -0
  497. package/nitrogen/generated/ios/swift/NitroNavigationAlert.swift +263 -0
  498. package/nitrogen/generated/ios/swift/NitroRoutingManeuver.swift +493 -0
  499. package/nitrogen/generated/ios/swift/NitroRow.swift +262 -0
  500. package/nitrogen/generated/ios/swift/NitroSection.swift +88 -0
  501. package/nitrogen/generated/ios/swift/NitroSectionType.swift +40 -0
  502. package/nitrogen/generated/ios/swift/OffRampType.swift +48 -0
  503. package/nitrogen/generated/ios/swift/OnRampType.swift +64 -0
  504. package/nitrogen/generated/ios/swift/Point.swift +46 -0
  505. package/nitrogen/generated/ios/swift/PreferredImageLane.swift +106 -0
  506. package/nitrogen/generated/ios/swift/RouteChoice.swift +127 -0
  507. package/nitrogen/generated/ios/swift/SafeAreaInsets.swift +98 -0
  508. package/nitrogen/generated/ios/swift/SearchTemplateConfig.swift +455 -0
  509. package/nitrogen/generated/ios/swift/TrafficSide.swift +40 -0
  510. package/nitrogen/generated/ios/swift/TravelEstimates.swift +69 -0
  511. package/nitrogen/generated/ios/swift/TripConfig.swift +46 -0
  512. package/nitrogen/generated/ios/swift/TripPoint.swift +68 -0
  513. package/nitrogen/generated/ios/swift/TripPreviewTextConfiguration.swift +68 -0
  514. package/nitrogen/generated/ios/swift/TripSelectorCallback.swift +46 -0
  515. package/nitrogen/generated/ios/swift/TripsConfig.swift +58 -0
  516. package/nitrogen/generated/ios/swift/TurnType.swift +68 -0
  517. package/nitrogen/generated/ios/swift/Variant_GlyphImage_AssetImage.swift +18 -0
  518. package/nitrogen/generated/ios/swift/Variant_PreferredImageLane_ImageLane.swift +18 -0
  519. package/nitrogen/generated/ios/swift/VisibilityState.swift +48 -0
  520. package/nitrogen/generated/ios/swift/VisibleTravelEstimate.swift +40 -0
  521. package/nitrogen/generated/ios/swift/ZoomEvent.swift +40 -0
  522. package/nitrogen/generated/shared/c++/AlertActionStyle.hpp +80 -0
  523. package/nitrogen/generated/shared/c++/AlertDismissalReason.hpp +80 -0
  524. package/nitrogen/generated/shared/c++/AssetImage.hpp +98 -0
  525. package/nitrogen/generated/shared/c++/AutoText.hpp +86 -0
  526. package/nitrogen/generated/shared/c++/ClusterEventName.hpp +84 -0
  527. package/nitrogen/generated/shared/c++/ColorScheme.hpp +76 -0
  528. package/nitrogen/generated/shared/c++/Distance.hpp +80 -0
  529. package/nitrogen/generated/shared/c++/DistanceUnits.hpp +88 -0
  530. package/nitrogen/generated/shared/c++/DurationWithTimeZone.hpp +79 -0
  531. package/nitrogen/generated/shared/c++/EventName.hpp +76 -0
  532. package/nitrogen/generated/shared/c++/ForkType.hpp +62 -0
  533. package/nitrogen/generated/shared/c++/GlyphImage.hpp +89 -0
  534. package/nitrogen/generated/shared/c++/GridTemplateConfig.hpp +129 -0
  535. package/nitrogen/generated/shared/c++/HybridAndroidAutoTelemetrySpec.cpp +21 -0
  536. package/nitrogen/generated/shared/c++/HybridAndroidAutoTelemetrySpec.hpp +66 -0
  537. package/nitrogen/generated/shared/c++/HybridAutoPlaySpec.cpp +30 -0
  538. package/nitrogen/generated/shared/c++/HybridAutoPlaySpec.hpp +86 -0
  539. package/nitrogen/generated/shared/c++/HybridCarPlayDashboardSpec.cpp +24 -0
  540. package/nitrogen/generated/shared/c++/HybridCarPlayDashboardSpec.hpp +75 -0
  541. package/nitrogen/generated/shared/c++/HybridClusterSpec.cpp +27 -0
  542. package/nitrogen/generated/shared/c++/HybridClusterSpec.hpp +82 -0
  543. package/nitrogen/generated/shared/c++/HybridGridTemplateSpec.cpp +22 -0
  544. package/nitrogen/generated/shared/c++/HybridGridTemplateSpec.hpp +69 -0
  545. package/nitrogen/generated/shared/c++/HybridInformationTemplateSpec.cpp +22 -0
  546. package/nitrogen/generated/shared/c++/HybridInformationTemplateSpec.hpp +68 -0
  547. package/nitrogen/generated/shared/c++/HybridListTemplateSpec.cpp +22 -0
  548. package/nitrogen/generated/shared/c++/HybridListTemplateSpec.hpp +70 -0
  549. package/nitrogen/generated/shared/c++/HybridMapTemplateSpec.cpp +30 -0
  550. package/nitrogen/generated/shared/c++/HybridMapTemplateSpec.hpp +110 -0
  551. package/nitrogen/generated/shared/c++/HybridMessageTemplateSpec.cpp +21 -0
  552. package/nitrogen/generated/shared/c++/HybridMessageTemplateSpec.hpp +63 -0
  553. package/nitrogen/generated/shared/c++/HybridSearchTemplateSpec.cpp +22 -0
  554. package/nitrogen/generated/shared/c++/HybridSearchTemplateSpec.hpp +68 -0
  555. package/nitrogen/generated/shared/c++/ImageLane.hpp +85 -0
  556. package/nitrogen/generated/shared/c++/InformationTemplateConfig.hpp +133 -0
  557. package/nitrogen/generated/shared/c++/KeepType.hpp +63 -0
  558. package/nitrogen/generated/shared/c++/LaneGuidance.hpp +86 -0
  559. package/nitrogen/generated/shared/c++/ListTemplateConfig.hpp +129 -0
  560. package/nitrogen/generated/shared/c++/ManeuverType.hpp +85 -0
  561. package/nitrogen/generated/shared/c++/MapTemplateConfig.hpp +156 -0
  562. package/nitrogen/generated/shared/c++/MessageTemplateConfig.hpp +141 -0
  563. package/nitrogen/generated/shared/c++/NavigationAlertAction.hpp +87 -0
  564. package/nitrogen/generated/shared/c++/NavigationAlertCallbacks.hpp +82 -0
  565. package/nitrogen/generated/shared/c++/NitroAction.hpp +120 -0
  566. package/nitrogen/generated/shared/c++/NitroActionType.hpp +80 -0
  567. package/nitrogen/generated/shared/c++/NitroAlignment.hpp +76 -0
  568. package/nitrogen/generated/shared/c++/NitroAttributedString.hpp +83 -0
  569. package/nitrogen/generated/shared/c++/NitroAttributedStringImage.hpp +84 -0
  570. package/nitrogen/generated/shared/c++/NitroBaseMapTemplateConfig.hpp +110 -0
  571. package/nitrogen/generated/shared/c++/NitroButtonStyle.hpp +88 -0
  572. package/nitrogen/generated/shared/c++/NitroCarPlayDashboardButton.hpp +100 -0
  573. package/nitrogen/generated/shared/c++/NitroColor.hpp +79 -0
  574. package/nitrogen/generated/shared/c++/NitroGridButton.hpp +92 -0
  575. package/nitrogen/generated/shared/c++/NitroMapButton.hpp +93 -0
  576. package/nitrogen/generated/shared/c++/NitroMapButtonType.hpp +76 -0
  577. package/nitrogen/generated/shared/c++/NitroMessageManeuver.hpp +97 -0
  578. package/nitrogen/generated/shared/c++/NitroNavigationAlert.hpp +127 -0
  579. package/nitrogen/generated/shared/c++/NitroRoutingManeuver.hpp +188 -0
  580. package/nitrogen/generated/shared/c++/NitroRow.hpp +113 -0
  581. package/nitrogen/generated/shared/c++/NitroSection.hpp +90 -0
  582. package/nitrogen/generated/shared/c++/NitroSectionType.hpp +76 -0
  583. package/nitrogen/generated/shared/c++/NumericTelemetryItem.hpp +79 -0
  584. package/nitrogen/generated/shared/c++/OffRampType.hpp +64 -0
  585. package/nitrogen/generated/shared/c++/OnRampType.hpp +68 -0
  586. package/nitrogen/generated/shared/c++/Point.hpp +79 -0
  587. package/nitrogen/generated/shared/c++/PreferredImageLane.hpp +93 -0
  588. package/nitrogen/generated/shared/c++/RouteChoice.hpp +94 -0
  589. package/nitrogen/generated/shared/c++/SafeAreaInsets.hpp +91 -0
  590. package/nitrogen/generated/shared/c++/SearchTemplateConfig.hpp +138 -0
  591. package/nitrogen/generated/shared/c++/StringTelemetryItem.hpp +79 -0
  592. package/nitrogen/generated/shared/c++/Telemetry.hpp +100 -0
  593. package/nitrogen/generated/shared/c++/TrafficSide.hpp +62 -0
  594. package/nitrogen/generated/shared/c++/TravelEstimates.hpp +91 -0
  595. package/nitrogen/generated/shared/c++/TripConfig.hpp +81 -0
  596. package/nitrogen/generated/shared/c++/TripPoint.hpp +89 -0
  597. package/nitrogen/generated/shared/c++/TripPreviewTextConfiguration.hpp +87 -0
  598. package/nitrogen/generated/shared/c++/TripSelectorCallback.hpp +76 -0
  599. package/nitrogen/generated/shared/c++/TripsConfig.hpp +82 -0
  600. package/nitrogen/generated/shared/c++/TurnType.hpp +69 -0
  601. package/nitrogen/generated/shared/c++/VehicleTelemetryItem.hpp +88 -0
  602. package/nitrogen/generated/shared/c++/VisibilityState.hpp +84 -0
  603. package/nitrogen/generated/shared/c++/VisibleTravelEstimate.hpp +76 -0
  604. package/nitrogen/generated/shared/c++/ZoomEvent.hpp +76 -0
  605. package/package.json +75 -0
  606. package/react-native.config.js +16 -0
  607. package/src/AutoPlayHeadlessJsTask.ts +19 -0
  608. package/src/components/MapTemplateContext.tsx +15 -0
  609. package/src/components/SafeAreaInsetsContext.tsx +32 -0
  610. package/src/components/SafeAreaView.tsx +24 -0
  611. package/src/hooks/useAndroidAutoTelemetry.ts +112 -0
  612. package/src/hooks/useMapTemplate.ts +10 -0
  613. package/src/hooks/useSafeAreaInsets.ts +6 -0
  614. package/src/index.ts +53 -0
  615. package/src/index.web.ts +0 -0
  616. package/src/scenes/AutoPlayCluster.ts +160 -0
  617. package/src/scenes/CarPlayDashboardScene.ts +121 -0
  618. package/src/specs/AndroidAutoTelemetry.nitro.ts +14 -0
  619. package/src/specs/AutoPlay.nitro.ts +78 -0
  620. package/src/specs/CarPlayDashboard.nitro.ts +22 -0
  621. package/src/specs/Cluster.nitro.ts +27 -0
  622. package/src/specs/GridTemplate.nitro.ts +11 -0
  623. package/src/specs/InformationTemplate.nitro.ts +13 -0
  624. package/src/specs/ListTemplate.nitro.ts +13 -0
  625. package/src/specs/MapTemplate.nitro.ts +44 -0
  626. package/src/specs/MessageTemplate.nitro.ts +9 -0
  627. package/src/specs/SearchTemplate.nitro.ts +10 -0
  628. package/src/templates/GridTemplate.ts +73 -0
  629. package/src/templates/InformationTemplate.ts +131 -0
  630. package/src/templates/ListTemplate.ts +130 -0
  631. package/src/templates/MapTemplate.ts +314 -0
  632. package/src/templates/MessageTemplate.ts +109 -0
  633. package/src/templates/SearchTemplate.ts +98 -0
  634. package/src/templates/Template.ts +108 -0
  635. package/src/types/Button.ts +90 -0
  636. package/src/types/Event.ts +14 -0
  637. package/src/types/Glyphmap.ts +4107 -0
  638. package/src/types/Image.ts +32 -0
  639. package/src/types/Maneuver.ts +240 -0
  640. package/src/types/RootComponent.ts +38 -0
  641. package/src/types/Telemetry.ts +71 -0
  642. package/src/types/Text.ts +26 -0
  643. package/src/types/Trip.ts +79 -0
  644. package/src/utils/NitroAction.ts +234 -0
  645. package/src/utils/NitroAlert.ts +62 -0
  646. package/src/utils/NitroAttributedString.ts +29 -0
  647. package/src/utils/NitroColor.ts +34 -0
  648. package/src/utils/NitroGrid.ts +25 -0
  649. package/src/utils/NitroImage.ts +65 -0
  650. package/src/utils/NitroManeuver.ts +159 -0
  651. package/src/utils/NitroMapButton.ts +55 -0
  652. package/src/utils/NitroSection.ts +103 -0
@@ -0,0 +1,142 @@
1
+ import React from 'react';
2
+ import { type AutoText, type CleanupCallback } from '..';
3
+ import type { ActionButtonAndroid, MapButton, MapPanButton } from '../types/Button';
4
+ import type { AutoManeuver } from '../types/Maneuver';
5
+ import type { ColorScheme, RootComponentInitialProps } from '../types/RootComponent';
6
+ import type { TripConfig, TripPoint, TripPreviewTextConfiguration, TripsConfig } from '../types/Trip';
7
+ import { type NitroAction } from '../utils/NitroAction';
8
+ import { type NavigationAlert } from '../utils/NitroAlert';
9
+ import { NitroMapButton } from '../utils/NitroMapButton';
10
+ import { type HeaderActionsIos, type NitroBaseMapTemplateConfig, Template, type TemplateConfig } from './Template';
11
+ export type Point = {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ export type VisibleTravelEstimate = 'first' | 'last';
16
+ export type HeaderActionsAndroidMap<T> = [ActionButtonAndroid<T>, ActionButtonAndroid<T>, ActionButtonAndroid<T>, ActionButtonAndroid<T>] | [ActionButtonAndroid<T>, ActionButtonAndroid<T>, ActionButtonAndroid<T>] | [ActionButtonAndroid<T>, ActionButtonAndroid<T>] | [ActionButtonAndroid<T>];
17
+ export interface NavigationAlertCallbacks {
18
+ dismiss: CleanupCallback;
19
+ update: (title: AutoText, subtitle?: AutoText) => void;
20
+ }
21
+ export interface NitroMapTemplateConfig extends TemplateConfig, NitroBaseMapTemplateConfig {
22
+ /**
23
+ * show either the next or final step travel estimates, defaults to final step so last
24
+ */
25
+ visibleTravelEstimate?: VisibleTravelEstimate;
26
+ /**
27
+ * callback for single finger pan gesture
28
+ * @param translation distance in pixels along the x & y axis that has been scrolled since the last touch position during the scroll event
29
+ * @param velocity the velocity of the pan gesture, iOS only
30
+ */
31
+ onDidUpdatePanGestureWithTranslation?: (translation: Point, velocity?: Point) => void;
32
+ /**
33
+ * callback for pinch to zoom gesture
34
+ * @param center x & y coordinate of the focal point in pixels
35
+ * @param scale the scaling factor
36
+ */
37
+ onDidUpdateZoomGestureWithCenter?: (center: Point, scale: number) => void;
38
+ /**
39
+ * single press event callback
40
+ * @param center coordinates of the click event in pixel
41
+ * @namespace Android
42
+ */
43
+ onClick?: (center: Point) => void;
44
+ /**
45
+ * double tap event callback
46
+ * @param center coordinates of the click event in pixel
47
+ * @namespace Android
48
+ */
49
+ onDoubleClick?: (center: Point) => void;
50
+ /**
51
+ * callback for color scheme changes
52
+ */
53
+ onAppearanceDidChange?: (colorScheme: ColorScheme) => void;
54
+ onStopNavigation(): void;
55
+ onAutoDriveEnabled?: () => void;
56
+ mapButtons?: Array<NitroMapButton>;
57
+ headerActions?: Array<NitroAction>;
58
+ }
59
+ export type MapButtons<T> = [MapButton<T>, MapButton<T>, MapButton<T>, MapButton<T> | MapPanButton<T>] | [MapButton<T>, MapButton<T>, MapButton<T> | MapPanButton<T>] | [MapButton<T>, MapButton<T> | MapPanButton<T>] | [MapButton<T> | MapPanButton<T>];
60
+ export type MapHeaderActions<T> = {
61
+ android?: HeaderActionsAndroidMap<T>;
62
+ ios?: HeaderActionsIos<T>;
63
+ };
64
+ export type BaseMapTemplateConfig<T> = {
65
+ /**
66
+ * buttons that represent actions on the map template, usually on the bottom right corner
67
+ */
68
+ mapButtons?: MapButtons<T>;
69
+ /**
70
+ * action buttons, usually at the the top right on Android and a top bar on iOS
71
+ */
72
+ headerActions?: MapHeaderActions<T>;
73
+ };
74
+ export type MapTemplateConfig = Omit<NitroMapTemplateConfig, 'mapButtons' | 'headerActions' | 'onStopNavigation' | 'onAutoDriveEnabled'> & BaseMapTemplateConfig<MapTemplate> & {
75
+ /**
76
+ * react component that is rendered
77
+ */
78
+ component: React.ComponentType<RootComponentInitialProps>;
79
+ /**
80
+ * Notification that navigation was stopped. May occur when another source such as the car head unit starts navigating.
81
+ * The navigation session on Android Auto/CarPlay is stopped already when this callback is triggered, make sure to stop other things like TTS too.
82
+ */
83
+ onStopNavigation(template: MapTemplate): void;
84
+ /**
85
+ * Notifies the app that, from this point onwards, when the user chooses to navigate to a destination, the app should start simulating a drive towards that destination.
86
+ * @namespace Android
87
+ */
88
+ onAutoDriveEnabled?: (template: MapTemplate) => void;
89
+ };
90
+ export interface TripSelectorCallback {
91
+ setSelectedTrip: (id: string) => void;
92
+ }
93
+ export declare class MapTemplate extends Template<MapTemplateConfig, MapTemplateConfig['headerActions']> {
94
+ id: string;
95
+ private template;
96
+ constructor(config: MapTemplateConfig);
97
+ setMapButtons(mapButtons: MapTemplateConfig['mapButtons']): void;
98
+ setHeaderActions(headerActions: MapTemplateConfig['headerActions']): void;
99
+ /**
100
+ * brings up a navigation alert
101
+ * ⚠️ updating an existing alert is currently broken on Android Automotive, it brings up a new alert for each call
102
+ * @returns a callback to dismiss or update the navigation alert
103
+ */
104
+ showAlert(alert: NavigationAlert): NavigationAlertCallbacks;
105
+ /**
106
+ * @namespace Android brings up a custom trip selector mimicking the CarPlay trip selector as close as possible
107
+ * @namespace iOS brings up the stock CarPlay trip selector
108
+ * @returns a callback to update the shown trip
109
+ */
110
+ showTripSelector({ trips, selectedTripId, textConfig, onTripSelected, onTripStarted, onBackPressed, mapButtons, }: {
111
+ trips: Array<TripsConfig>;
112
+ selectedTripId?: string;
113
+ textConfig: TripPreviewTextConfiguration;
114
+ onTripSelected: (tripId: string, routeId: string) => void;
115
+ onTripStarted: (tripId: string, routeId: string) => void;
116
+ onBackPressed: () => void;
117
+ /**
118
+ * @namespace iOS - always shown no matter if navigation is started or not
119
+ * @namespace Android - these buttons will only be shown when navigation is not started, otherwise AA will not show them
120
+ */
121
+ mapButtons?: MapTemplateConfig['mapButtons'];
122
+ }): TripSelectorCallback;
123
+ hideTripSelector(): void;
124
+ updateVisibleTravelEstimate(visibleTravelEstimate: VisibleTravelEstimate): void;
125
+ /**
126
+ * updates travel estimates
127
+ * @param steps all future steps, do not put in origin or passed steps
128
+ */
129
+ updateTravelEstimates(steps: Array<TripPoint>): void;
130
+ /**
131
+ * sets or updates maneuvers, make sure to call startNavigation first!
132
+ * @namespace Android sets all the supplied maneuvers whenever called
133
+ * @namespace iOS will update travelEstimates only when passing in maneuvers with the same id
134
+ */
135
+ updateManeuvers(maneuvers: AutoManeuver): void;
136
+ /**
137
+ * either use showTripSelector to show a set of trips and let the user start the navigation session
138
+ * or use this to start a navigation session without asking the user
139
+ */
140
+ startNavigation(trip: TripConfig): void;
141
+ stopNavigation(): void;
142
+ }
@@ -0,0 +1,115 @@
1
+ import React from 'react';
2
+ import { AppRegistry, Platform } from 'react-native';
3
+ import { NitroModules } from 'react-native-nitro-modules';
4
+ import { HybridAutoPlay } from '..';
5
+ import { MapTemplateProvider } from '../components/MapTemplateContext';
6
+ import { SafeAreaInsetsProvider } from '../components/SafeAreaInsetsContext';
7
+ import { NitroActionUtil } from '../utils/NitroAction';
8
+ import { NitroAlertUtil } from '../utils/NitroAlert';
9
+ import { NitroManeuverUtil } from '../utils/NitroManeuver';
10
+ import { NitroMapButton } from '../utils/NitroMapButton';
11
+ import { Template, } from './Template';
12
+ const HybridMapTemplate = NitroModules.createHybridObject('MapTemplate');
13
+ export class MapTemplate extends Template {
14
+ id = 'AutoPlayRoot';
15
+ template = this;
16
+ constructor(config) {
17
+ super(config);
18
+ const { component, mapButtons, headerActions, onStopNavigation, onAutoDriveEnabled, ...baseConfig } = config;
19
+ AppRegistry.registerComponent(this.id, () => (props) => React.createElement(MapTemplateProvider, {
20
+ mapTemplate: this.template,
21
+ // biome-ignore lint/correctness/noChildrenProp: there is no other way in a ts file
22
+ children: React.createElement(SafeAreaInsetsProvider, {
23
+ moduleName: this.id,
24
+ // biome-ignore lint/correctness/noChildrenProp: there is no other way in a ts file
25
+ children: React.createElement(component, props),
26
+ }),
27
+ }));
28
+ const nitroConfig = {
29
+ ...baseConfig,
30
+ id: this.id,
31
+ headerActions: NitroActionUtil.convert(this.template, headerActions),
32
+ mapButtons: NitroMapButton.convert(this.template, mapButtons),
33
+ onStopNavigation: () => onStopNavigation(this.template),
34
+ onAutoDriveEnabled: onAutoDriveEnabled ? () => onAutoDriveEnabled(this.template) : undefined,
35
+ };
36
+ HybridMapTemplate.createMapTemplate(nitroConfig);
37
+ }
38
+ setMapButtons(mapButtons) {
39
+ const buttons = NitroMapButton.convert(this.template, mapButtons);
40
+ HybridMapTemplate.setTemplateMapButtons(this.id, buttons);
41
+ }
42
+ setHeaderActions(headerActions) {
43
+ const nitroActions = NitroActionUtil.convert(this.template, headerActions);
44
+ HybridAutoPlay.setTemplateHeaderActions(this.id, nitroActions);
45
+ }
46
+ /**
47
+ * brings up a navigation alert
48
+ * ⚠️ updating an existing alert is currently broken on Android Automotive, it brings up a new alert for each call
49
+ * @returns a callback to dismiss or update the navigation alert
50
+ */
51
+ showAlert(alert) {
52
+ return HybridMapTemplate.showNavigationAlert(this.id, NitroAlertUtil.convert(alert));
53
+ }
54
+ /**
55
+ * @namespace Android brings up a custom trip selector mimicking the CarPlay trip selector as close as possible
56
+ * @namespace iOS brings up the stock CarPlay trip selector
57
+ * @returns a callback to update the shown trip
58
+ */
59
+ showTripSelector({ trips, selectedTripId, textConfig, onTripSelected, onTripStarted, onBackPressed, mapButtons, }) {
60
+ if (trips.length === 0 ||
61
+ trips.some((t) => t.routeChoices.length === 0 || t.routeChoices.some((r) => r.steps.length < 2))) {
62
+ throw new Error('Invalid trips passed, either no trips or some trips routeChoice or steps are empty');
63
+ }
64
+ if (__DEV__ &&
65
+ Platform.OS === 'android' &&
66
+ new Set(trips.flatMap((t) => t.routeChoices.flatMap((r) => r.steps.at(-1)?.name))).size > 1) {
67
+ console.warn('found non distinct destination names, while this is possible it might lead to exceeding the step count, check https://developer.android.com/design/ui/cars/guides/ux-requirements/plan-task-flows#steps-refreshes for details');
68
+ }
69
+ const buttons = NitroMapButton.convert(this.template, mapButtons);
70
+ return HybridMapTemplate.showTripSelector(this.id, trips, selectedTripId, textConfig, onTripSelected, onTripStarted, onBackPressed, buttons ?? []);
71
+ }
72
+ hideTripSelector() {
73
+ HybridMapTemplate.hideTripSelector(this.id);
74
+ }
75
+ updateVisibleTravelEstimate(visibleTravelEstimate) {
76
+ HybridMapTemplate.updateVisibleTravelEstimate(this.id, visibleTravelEstimate);
77
+ }
78
+ /**
79
+ * updates travel estimates
80
+ * @param steps all future steps, do not put in origin or passed steps
81
+ */
82
+ updateTravelEstimates(steps) {
83
+ HybridMapTemplate.updateTravelEstimates(this.id, steps);
84
+ }
85
+ /**
86
+ * sets or updates maneuvers, make sure to call startNavigation first!
87
+ * @namespace Android sets all the supplied maneuvers whenever called
88
+ * @namespace iOS will update travelEstimates only when passing in maneuvers with the same id
89
+ */
90
+ updateManeuvers(maneuvers) {
91
+ if (Array.isArray(maneuvers)) {
92
+ const nitroManeuvers = maneuvers.reduce((acc, maneuver) => {
93
+ if (maneuver == null) {
94
+ return acc;
95
+ }
96
+ acc.push(NitroManeuverUtil.convert(maneuver));
97
+ return acc;
98
+ }, []);
99
+ HybridMapTemplate.updateManeuvers(this.id, nitroManeuvers);
100
+ return;
101
+ }
102
+ const messageManeuver = NitroManeuverUtil.convert(maneuvers);
103
+ HybridMapTemplate.updateManeuvers(this.id, messageManeuver);
104
+ }
105
+ /**
106
+ * either use showTripSelector to show a set of trips and let the user start the navigation session
107
+ * or use this to start a navigation session without asking the user
108
+ */
109
+ startNavigation(trip) {
110
+ HybridMapTemplate.startNavigation(this.id, trip);
111
+ }
112
+ stopNavigation() {
113
+ HybridMapTemplate.stopNavigation(this.id);
114
+ }
115
+ }
@@ -0,0 +1,55 @@
1
+ import { type AutoImage, type BaseMapTemplateConfig, type CustomActionButtonAndroid, type HeaderActionsAndroid, type TextButton } from '..';
2
+ import type { AutoText } from '../types/Text';
3
+ import { type NitroAction } from '../utils/NitroAction';
4
+ import { type NitroImage } from '../utils/NitroImage';
5
+ import type { NitroBaseMapTemplateConfig, TemplateConfig } from './Template';
6
+ export interface NitroMessageTemplateConfig extends TemplateConfig {
7
+ headerActions?: Array<NitroAction>;
8
+ /**
9
+ * @namespace Android title shown on header
10
+ */
11
+ title?: AutoText;
12
+ message: AutoText;
13
+ actions?: Array<NitroAction>;
14
+ image?: NitroImage;
15
+ mapConfig?: NitroBaseMapTemplateConfig;
16
+ }
17
+ export type MessageTemplateConfig = Omit<NitroMessageTemplateConfig, 'headerActions' | 'image' | 'mapConfig' | 'actions'> & {
18
+ /**
19
+ * action buttons, usually at the top right on Android
20
+ * @namespace Android
21
+ */
22
+ headerActions?: HeaderActionsAndroid<MessageTemplate>;
23
+ /**
24
+ * image shown at the top of the message on Android
25
+ * @namespace Android
26
+ */
27
+ image?: AutoImage;
28
+ /**
29
+ * If mapConfig is defined, it will use a MapWithContentTemplate with the current template. This results in a MessageTemplate with a map in background. No actions need to be specified, can be empty object.
30
+ * @namespace Android
31
+ */
32
+ mapConfig?: BaseMapTemplateConfig<MessageTemplate>;
33
+ /**
34
+ * @namespace Android up to 2 buttons of type TextButton, TextAndImageButton or ImageButton
35
+ * @namespace iOS - up to 3 buttons of type TextButton
36
+ */
37
+ actions?: {
38
+ android?: [CustomActionButtonAndroid<MessageTemplate>] | [CustomActionButtonAndroid<MessageTemplate>, CustomActionButtonAndroid<MessageTemplate>];
39
+ ios?: [TextButton<MessageTemplate>, TextButton<MessageTemplate>, TextButton<MessageTemplate>] | [TextButton<MessageTemplate>, TextButton<MessageTemplate>] | [TextButton<MessageTemplate>];
40
+ };
41
+ };
42
+ /**
43
+ * This template is always pushed on top and will stay on top until it is popped.
44
+ * Other templates being pushed will end up below this one on the stack.
45
+ * Pushing another MessageTemplate will pop the currently shown one.
46
+ */
47
+ export declare class MessageTemplate {
48
+ private template;
49
+ id: string;
50
+ constructor(config: MessageTemplateConfig);
51
+ /**
52
+ * push this template on the stack and show it to the user
53
+ */
54
+ push(): Promise<void>;
55
+ }
@@ -0,0 +1,43 @@
1
+ import { Platform } from 'react-native';
2
+ import { NitroModules } from 'react-native-nitro-modules';
3
+ import uuid from 'react-native-uuid';
4
+ import { HybridAutoPlay, } from '..';
5
+ import { NitroActionUtil } from '../utils/NitroAction';
6
+ import { NitroImageUtil } from '../utils/NitroImage';
7
+ import { NitroMapButton } from '../utils/NitroMapButton';
8
+ const HybridMessageTemplate = NitroModules.createHybridObject('MessageTemplate');
9
+ /**
10
+ * This template is always pushed on top and will stay on top until it is popped.
11
+ * Other templates being pushed will end up below this one on the stack.
12
+ * Pushing another MessageTemplate will pop the currently shown one.
13
+ */
14
+ export class MessageTemplate {
15
+ template = this;
16
+ id = uuid.v4();
17
+ constructor(config) {
18
+ const { headerActions, image, mapConfig, actions, ...rest } = config;
19
+ const platformActions = Platform.OS === 'android'
20
+ ? NitroActionUtil.convert(this.template, actions?.android)
21
+ : NitroActionUtil.convert(this.template, actions?.ios);
22
+ const nitroConfig = {
23
+ ...rest,
24
+ id: this.id,
25
+ headerActions: NitroActionUtil.convert(this.template, { android: headerActions }),
26
+ image: NitroImageUtil.convert(image),
27
+ actions: platformActions,
28
+ mapConfig: mapConfig
29
+ ? {
30
+ mapButtons: NitroMapButton.convert(this.template, mapConfig.mapButtons),
31
+ headerActions: NitroActionUtil.convert(this.template, mapConfig.headerActions),
32
+ }
33
+ : undefined,
34
+ };
35
+ HybridMessageTemplate.createMessageTemplate(nitroConfig);
36
+ }
37
+ /**
38
+ * push this template on the stack and show it to the user
39
+ */
40
+ push() {
41
+ return HybridAutoPlay.pushTemplate(this.id);
42
+ }
43
+ }
@@ -0,0 +1,55 @@
1
+ import type { DefaultRow, SingleSection } from '..';
2
+ import type { AutoText } from '../types/Text';
3
+ import { type NitroAction } from '../utils/NitroAction';
4
+ import { type NitroSection } from '../utils/NitroSection';
5
+ import { type HeaderActions, Template, type TemplateConfig } from './Template';
6
+ export type SearchSection<T> = {
7
+ type: 'default';
8
+ items: Array<DefaultRow<T>>;
9
+ };
10
+ export interface NitroSearchTemplateConfig extends TemplateConfig {
11
+ headerActions?: Array<NitroAction>;
12
+ title: AutoText;
13
+ results: NitroSection;
14
+ /**
15
+ * Text that is put into the searchbar as initial value
16
+ * @namespace Android
17
+ */
18
+ initialSearchText?: string;
19
+ /**
20
+ * Placeholder value in the search bar until text is entered
21
+ * @namespace Android
22
+ */
23
+ searchHint?: string;
24
+ /**
25
+ * Called when the user types on the keyboard. Should be debounced to avoid excessive calls to backend.
26
+ * @param searchText the text that the user has entered into the search bar
27
+ */
28
+ onSearchTextChanged: (searchText: string) => void;
29
+ /**
30
+ * Called when the user presses enter or search button to confirm search explicitly.
31
+ * Can be used to trigger a backend call immediately, but might never be called if the user selects a search result item from autocomplete results instead.
32
+ * @param searchText the text that the user has entered into the search bar
33
+ */
34
+ onSearchTextSubmitted: (searchText: string) => void;
35
+ }
36
+ export type SearchTemplateConfig = Omit<NitroSearchTemplateConfig, 'headerActions' | 'results' | 'onPopped'> & {
37
+ /**
38
+ * action buttons, usually at the the top right on Android and a top bar on iOS
39
+ * @namespace Android
40
+ */
41
+ headerActions?: HeaderActions<SearchTemplate>;
42
+ /**
43
+ * List of search results to show in the search results screen
44
+ */
45
+ results?: SearchSection<SearchTemplate>;
46
+ /**
47
+ * @namespace Android
48
+ */
49
+ onPopped?: TemplateConfig['onPopped'];
50
+ };
51
+ export declare class SearchTemplate extends Template<SearchTemplateConfig, HeaderActions<SearchTemplate>> {
52
+ private template;
53
+ constructor(config: SearchTemplateConfig);
54
+ updateSearchResults(results?: SingleSection<SearchTemplate>): void;
55
+ }
@@ -0,0 +1,28 @@
1
+ import { NitroModules } from 'react-native-nitro-modules';
2
+ import { NitroActionUtil } from '../utils/NitroAction';
3
+ import { NitroSectionUtil } from '../utils/NitroSection';
4
+ import { Template, } from './Template';
5
+ const HybridSearchTemplate = NitroModules.createHybridObject('SearchTemplate');
6
+ export class SearchTemplate extends Template {
7
+ template = this;
8
+ constructor(config) {
9
+ super(config);
10
+ const { headerActions, results, ...rest } = config;
11
+ const nitroConfig = {
12
+ ...rest,
13
+ id: this.id,
14
+ headerActions: NitroActionUtil.convert(this.template, headerActions),
15
+ results: NitroSectionUtil.convert(this.template, results)?.at(0) ?? {
16
+ items: [],
17
+ type: 'default',
18
+ },
19
+ };
20
+ HybridSearchTemplate.createSearchTemplate(nitroConfig);
21
+ }
22
+ updateSearchResults(results) {
23
+ HybridSearchTemplate.updateSearchResults(this.id, NitroSectionUtil.convert(this.template, results)?.at(0) ?? {
24
+ items: [],
25
+ type: 'default',
26
+ });
27
+ }
28
+ }
@@ -0,0 +1,76 @@
1
+ import type { ActionButtonAndroid, ActionButtonIos, AppButton, BackButton } from '../types/Button';
2
+ import { type NitroAction } from '../utils/NitroAction';
3
+ import type { NitroMapButton } from '../utils/NitroMapButton';
4
+ export type ActionButton<T> = ActionButtonAndroid<T> | ActionButtonIos<T>;
5
+ export type HeaderActionsIos<T> = {
6
+ /**
7
+ * @platform iOS - the back button can not be hidden or disabled, if you don't define it iOS will provide a default back button popping the template
8
+ */
9
+ backButton?: BackButton<T>;
10
+ leadingNavigationBarButtons?: [ActionButtonIos<T>, ActionButtonIos<T>] | [ActionButtonIos<T>];
11
+ trailingNavigationBarButtons?: [ActionButtonIos<T>, ActionButtonIos<T>] | [ActionButtonIos<T>];
12
+ };
13
+ export type HeaderActionsAndroid<T> = {
14
+ startHeaderAction?: AppButton | BackButton<T>;
15
+ endHeaderActions?: [ActionButtonAndroid<T>, ActionButtonAndroid<T>] | [ActionButtonAndroid<T>];
16
+ };
17
+ export type HeaderActions<T> = {
18
+ android?: HeaderActionsAndroid<T>;
19
+ ios?: HeaderActionsIos<T>;
20
+ };
21
+ export interface NitroTemplateConfig {
22
+ id: string;
23
+ }
24
+ export interface TemplateConfig {
25
+ /**
26
+ * Fired before template appears
27
+ */
28
+ onWillAppear?(animated?: boolean): void;
29
+ /**
30
+ * Fired before template disappears
31
+ */
32
+ onWillDisappear?(animated?: boolean): void;
33
+ /**
34
+ * Fired after template appears
35
+ */
36
+ onDidAppear?(animated?: boolean): void;
37
+ /**
38
+ * Fired after template disappears
39
+ */
40
+ onDidDisappear?(animated?: boolean): void;
41
+ /**
42
+ * Fired when the template was removed from the stack
43
+ * on all other states the template is still on the stack and might appear again
44
+ * this callback lets you know the template is gone forever
45
+ * @namespace Android - works fine on all templates
46
+ * @namespace iOS - does not work on all templates like SearchTemplate
47
+ */
48
+ onPopped?(): void;
49
+ /**
50
+ * if specified the template will be popped after the specified timeout once it has been pushed
51
+ * will be ignored if setRootTemplate is called
52
+ * template will be popped only if it is still visible to the user aka the topmost template
53
+ */
54
+ autoDismissMs?: number;
55
+ }
56
+ export interface NitroBaseMapTemplateConfig extends TemplateConfig {
57
+ mapButtons?: Array<NitroMapButton>;
58
+ headerActions?: Array<NitroAction>;
59
+ }
60
+ export declare class Template<TemplateConfigType, ActionsType> {
61
+ id: string;
62
+ constructor(config: TemplateConfig & TemplateConfigType);
63
+ /**
64
+ * set as root template on the stack
65
+ */
66
+ setRootTemplate(): Promise<void>;
67
+ /**
68
+ * push this template on the stack and show it to the user
69
+ */
70
+ push(): Promise<void>;
71
+ /**
72
+ * remove all templates above this one from the stack
73
+ */
74
+ popTo(): Promise<void>;
75
+ setHeaderActions<T>(headerActions?: ActionsType): void;
76
+ }
@@ -0,0 +1,33 @@
1
+ import uuid from 'react-native-uuid';
2
+ import { HybridAutoPlay } from '..';
3
+ import { NitroActionUtil } from '../utils/NitroAction';
4
+ export class Template {
5
+ id;
6
+ constructor(config) {
7
+ // templates that render on a surface provide their own id, others use a auto generated one
8
+ this.id =
9
+ 'id' in config && config.id != null && typeof config.id === 'string' ? config.id : uuid.v4();
10
+ }
11
+ /**
12
+ * set as root template on the stack
13
+ */
14
+ setRootTemplate() {
15
+ return HybridAutoPlay.setRootTemplate(this.id);
16
+ }
17
+ /**
18
+ * push this template on the stack and show it to the user
19
+ */
20
+ push() {
21
+ return HybridAutoPlay.pushTemplate(this.id);
22
+ }
23
+ /**
24
+ * remove all templates above this one from the stack
25
+ */
26
+ popTo() {
27
+ return HybridAutoPlay.popToTemplate(this.id);
28
+ }
29
+ setHeaderActions(headerActions) {
30
+ const nitroActions = NitroActionUtil.convert(headerActions);
31
+ HybridAutoPlay.setTemplateHeaderActions(this.id, nitroActions);
32
+ }
33
+ }
@@ -0,0 +1,76 @@
1
+ import type { AutoImage } from './Image';
2
+ export type MapButton<T = unknown> = {
3
+ type: 'custom';
4
+ image: AutoImage;
5
+ onPress: (template: T) => void;
6
+ };
7
+ export type ButtonStyle = 'normal' | 'confirm' | 'cancel';
8
+ /**
9
+ * this is a special button only visible on devices that have no touch support
10
+ * @namespace Android
11
+ */
12
+ export type MapPanButton<T = unknown> = {
13
+ type: 'pan';
14
+ onPress: (template: T) => void;
15
+ };
16
+ type BaseButton<T = unknown> = {
17
+ style?: ButtonStyle;
18
+ enabled?: boolean;
19
+ onPress: (template: T) => void;
20
+ };
21
+ export type TextButton<T = unknown> = BaseButton<T> & {
22
+ type: 'text';
23
+ title: string;
24
+ };
25
+ export type ImageButton<T = unknown> = BaseButton<T> & {
26
+ type: 'image';
27
+ image: AutoImage;
28
+ };
29
+ export type TextAndImageButton<T = unknown> = BaseButton<T> & {
30
+ type: 'textImage';
31
+ image: AutoImage;
32
+ title: string;
33
+ };
34
+ /**
35
+ * @namespace iOS
36
+ */
37
+ export type ActionButtonIos<T = unknown> = TextButton<T> | ImageButton<T>;
38
+ export type BackButton<T = unknown> = {
39
+ type: 'back';
40
+ onPress: (template: T) => void;
41
+ };
42
+ /**
43
+ * this is a special button that just shows the app icon and can not be pressed
44
+ * @namespace Android
45
+ */
46
+ export type AppButton = {
47
+ type: 'appIcon';
48
+ };
49
+ /**
50
+ * @namespace Android
51
+ */
52
+ export declare enum Flag {
53
+ Primary = 1,
54
+ Persistent = 2,
55
+ Default = 4
56
+ }
57
+ /**
58
+ * @namespace Android
59
+ */
60
+ export type Flags = Flag | (number & {
61
+ __brand: 'Flags';
62
+ });
63
+ /**
64
+ * @namespace Android
65
+ */
66
+ export type ActionButtonAndroid<T = unknown> = (CustomActionButtonAndroid<T> & {
67
+ /**
68
+ * flags can be bitwise combined
69
+ */
70
+ flags?: Flags;
71
+ }) | BackButton<T> | AppButton;
72
+ /**
73
+ * this excludes back and appIcon
74
+ */
75
+ export type CustomActionButtonAndroid<T> = TextButton<T> | ImageButton<T> | TextAndImageButton<T>;
76
+ export {};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @namespace Android
3
+ */
4
+ export var Flag;
5
+ (function (Flag) {
6
+ Flag[Flag["Primary"] = 1] = "Primary";
7
+ Flag[Flag["Persistent"] = 2] = "Persistent";
8
+ Flag[Flag["Default"] = 4] = "Default";
9
+ })(Flag || (Flag = {}));
@@ -0,0 +1,14 @@
1
+ export type EventName = 'didConnect' | 'didDisconnect';
2
+ export type CleanupCallback = () => void;
3
+ export type VisibilityState = 'willAppear' | 'didAppear' | 'willDisappear' | 'didDisappear';
4
+ export type SafeAreaInsets = {
5
+ top: number;
6
+ left: number;
7
+ bottom: number;
8
+ right: number;
9
+ /**
10
+ * legacy layout is considered as anything before Material Expression 3, on these the insets are quite buggy
11
+ * @namespace Android
12
+ */
13
+ isLegacyLayout?: boolean;
14
+ };
@@ -0,0 +1 @@
1
+ export {};