react-native-acoustic-connect 19.0.11 → 19.0.34

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 (380) hide show
  1. package/CHANGELOG.md +111 -0
  2. package/ConnectConfig.example.json +1 -1
  3. package/README.md +426 -3
  4. package/android/build.gradle +119 -3
  5. package/android/config.gradle +123 -13
  6. package/android/src/main/assets/ConnectAdvancedConfig.json +1 -1
  7. package/android/src/main/assets/EOCoreAdvancedConfig.json +1 -1
  8. package/android/src/main/assets/TealeafAdvancedConfig.json +1 -1
  9. package/android/src/main/java/com/acousticconnectrn/HybridAcousticConnectRN.kt +457 -37
  10. package/app.plugin.js +2 -2
  11. package/ios/AcousticConnectRNConfig.json +2 -2
  12. package/ios/ConnectRNParsing.swift +229 -0
  13. package/ios/HybridAcousticConnectRN.swift +290 -30
  14. package/lib/commonjs/TLTRN.js +116 -3
  15. package/lib/commonjs/TLTRN.js.map +1 -1
  16. package/lib/commonjs/components/Connect.js +145 -27
  17. package/lib/commonjs/components/Connect.js.map +1 -1
  18. package/lib/commonjs/index.js +3 -0
  19. package/lib/commonjs/index.js.map +1 -1
  20. package/lib/module/TLTRN.js +116 -3
  21. package/lib/module/TLTRN.js.map +1 -1
  22. package/lib/module/components/Connect.js +146 -28
  23. package/lib/module/components/Connect.js.map +1 -1
  24. package/lib/module/index.js +5 -0
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/typescript/src/TLTRN.d.ts +85 -1
  27. package/lib/typescript/src/TLTRN.d.ts.map +1 -1
  28. package/lib/typescript/src/components/Connect.d.ts.map +1 -1
  29. package/lib/typescript/src/index.d.ts +1 -0
  30. package/lib/typescript/src/index.d.ts.map +1 -1
  31. package/lib/typescript/src/specs/react-native-acoustic-connect.nitro.d.ts +190 -10
  32. package/lib/typescript/src/specs/react-native-acoustic-connect.nitro.d.ts.map +1 -1
  33. package/nitrogen/generated/android/c++/JHybridAcousticConnectRNSpec.cpp +5 -9
  34. package/nitrogen/generated/android/c++/JHybridAcousticConnectRNSpec.hpp +1 -1
  35. package/nitrogen/generated/android/kotlin/com/margelo/nitro/acousticconnectrn/HybridAcousticConnectRNSpec.kt +2 -1
  36. package/nitrogen/generated/ios/AcousticConnectRN-Swift-Cxx-Umbrella.hpp +1 -0
  37. package/nitrogen/generated/ios/c++/HybridAcousticConnectRNSpecSwift.hpp +2 -1
  38. package/nitrogen/generated/ios/swift/HybridAcousticConnectRNSpec.swift +1 -1
  39. package/nitrogen/generated/ios/swift/HybridAcousticConnectRNSpec_cxx.swift +2 -25
  40. package/nitrogen/generated/shared/c++/HybridAcousticConnectRNSpec.hpp +2 -1
  41. package/package.json +6 -8
  42. package/plugin/build/withConnectAndroidConfig.d.ts +2 -2
  43. package/plugin/build/withConnectAndroidConfig.js +2 -2
  44. package/plugin/build/withConnectIosSigning.d.ts +1 -1
  45. package/plugin/build/withConnectIosSigning.js +1 -1
  46. package/plugin/src/withConnectAndroidConfig.ts +2 -2
  47. package/plugin/src/withConnectIosSigning.ts +1 -1
  48. package/scripts/gradleParser.js +1 -1
  49. package/src/TLTRN.ts +125 -4
  50. package/src/components/Connect.tsx +150 -27
  51. package/src/index.ts +5 -0
  52. package/src/specs/react-native-acoustic-connect.nitro.ts +192 -10
  53. package/Examples/SampleUI/.bundle/config +0 -2
  54. package/Examples/SampleUI/.detoxrc.js +0 -83
  55. package/Examples/SampleUI/.eslintrc.js +0 -4
  56. package/Examples/SampleUI/.prettierrc.js +0 -7
  57. package/Examples/SampleUI/.watchmanconfig +0 -1
  58. package/Examples/SampleUI/App.js +0 -1
  59. package/Examples/SampleUI/Gemfile +0 -10
  60. package/Examples/SampleUI/Gemfile.lock +0 -121
  61. package/Examples/SampleUI/README.md +0 -79
  62. package/Examples/SampleUI/__tests__/App.test.tsx +0 -17
  63. package/Examples/SampleUI/android/app/build.gradle +0 -129
  64. package/Examples/SampleUI/android/app/debug.keystore +0 -0
  65. package/Examples/SampleUI/android/app/proguard-rules.pro +0 -10
  66. package/Examples/SampleUI/android/app/src/debug/AndroidManifest.xml +0 -9
  67. package/Examples/SampleUI/android/app/src/main/AndroidManifest.xml +0 -31
  68. package/Examples/SampleUI/android/app/src/main/java/com/sampleui/MainActivity.kt +0 -30
  69. package/Examples/SampleUI/android/app/src/main/java/com/sampleui/MainApplication.kt +0 -53
  70. package/Examples/SampleUI/android/app/src/main/res/drawable/rn_edit_text_material.xml +0 -37
  71. package/Examples/SampleUI/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  72. package/Examples/SampleUI/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  73. package/Examples/SampleUI/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  74. package/Examples/SampleUI/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  75. package/Examples/SampleUI/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  76. package/Examples/SampleUI/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  77. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  78. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  79. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  80. package/Examples/SampleUI/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  81. package/Examples/SampleUI/android/app/src/main/res/values/strings.xml +0 -3
  82. package/Examples/SampleUI/android/app/src/main/res/values/styles.xml +0 -9
  83. package/Examples/SampleUI/android/build.gradle +0 -21
  84. package/Examples/SampleUI/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  85. package/Examples/SampleUI/android/gradle/wrapper/gradle-wrapper.properties +0 -7
  86. package/Examples/SampleUI/android/gradle.properties +0 -39
  87. package/Examples/SampleUI/android/gradlew +0 -252
  88. package/Examples/SampleUI/android/gradlew.bat +0 -94
  89. package/Examples/SampleUI/android/settings.gradle +0 -21
  90. package/Examples/SampleUI/app.json +0 -51
  91. package/Examples/SampleUI/assets/fonts/Abel-Regular.ttf +0 -0
  92. package/Examples/SampleUI/assets/fonts/NotoSans-Regular.ttf +0 -0
  93. package/Examples/SampleUI/assets/images/android-icon.png +0 -0
  94. package/Examples/SampleUI/assets/images/artist-1.jpg +0 -0
  95. package/Examples/SampleUI/assets/images/artist-2.jpg +0 -0
  96. package/Examples/SampleUI/assets/images/avatar.png +0 -0
  97. package/Examples/SampleUI/assets/images/beach.jpg +0 -0
  98. package/Examples/SampleUI/assets/images/bridge.jpg +0 -0
  99. package/Examples/SampleUI/assets/images/chameleon.jpg +0 -0
  100. package/Examples/SampleUI/assets/images/city.jpg +0 -0
  101. package/Examples/SampleUI/assets/images/email-icon.png +0 -0
  102. package/Examples/SampleUI/assets/images/favorite.png +0 -0
  103. package/Examples/SampleUI/assets/images/forest.jpg +0 -0
  104. package/Examples/SampleUI/assets/images/paper-icon.png +0 -0
  105. package/Examples/SampleUI/assets/images/players-2.jpg +0 -0
  106. package/Examples/SampleUI/assets/images/players.jpg +0 -0
  107. package/Examples/SampleUI/assets/images/restaurant-1.jpg +0 -0
  108. package/Examples/SampleUI/assets/images/restaurant-2.jpg +0 -0
  109. package/Examples/SampleUI/assets/images/song-1.jpg +0 -0
  110. package/Examples/SampleUI/assets/images/song-2.jpg +0 -0
  111. package/Examples/SampleUI/assets/images/splash.png +0 -0
  112. package/Examples/SampleUI/assets/images/strawberries.jpg +0 -0
  113. package/Examples/SampleUI/assets/images/wrecked-ship.jpg +0 -0
  114. package/Examples/SampleUI/assets/styles/fonts.css +0 -47
  115. package/Examples/SampleUI/babel.config.js +0 -22
  116. package/Examples/SampleUI/index.js +0 -9
  117. package/Examples/SampleUI/ios/.xcode.env +0 -11
  118. package/Examples/SampleUI/ios/Podfile +0 -71
  119. package/Examples/SampleUI/ios/Podfile.lock +0 -2276
  120. package/Examples/SampleUI/ios/SampleUI/AppDelegate.h +0 -7
  121. package/Examples/SampleUI/ios/SampleUI/AppDelegate.mm +0 -31
  122. package/Examples/SampleUI/ios/SampleUI/Images.xcassets/AppIcon.appiconset/Contents.json +0 -53
  123. package/Examples/SampleUI/ios/SampleUI/Images.xcassets/Contents.json +0 -6
  124. package/Examples/SampleUI/ios/SampleUI/Info.plist +0 -52
  125. package/Examples/SampleUI/ios/SampleUI/LaunchScreen.storyboard +0 -47
  126. package/Examples/SampleUI/ios/SampleUI/PrivacyInfo.xcprivacy +0 -48
  127. package/Examples/SampleUI/ios/SampleUI/main.m +0 -10
  128. package/Examples/SampleUI/ios/SampleUI.xcodeproj/project.pbxproj +0 -785
  129. package/Examples/SampleUI/ios/SampleUI.xcodeproj/xcshareddata/xcschemes/SampleUI.xcscheme +0 -105
  130. package/Examples/SampleUI/ios/SampleUI.xcworkspace/contents.xcworkspacedata +0 -10
  131. package/Examples/SampleUI/ios/SampleUITests/Info.plist +0 -24
  132. package/Examples/SampleUI/ios/SampleUITests/SampleUITests.m +0 -66
  133. package/Examples/SampleUI/jest.config.js +0 -3
  134. package/Examples/SampleUI/metro.config.js +0 -54
  135. package/Examples/SampleUI/package.json +0 -65
  136. package/Examples/SampleUI/scripts/integration-test-android.sh +0 -292
  137. package/Examples/SampleUI/src/DrawerItems.tsx +0 -322
  138. package/Examples/SampleUI/src/ExampleList.tsx +0 -175
  139. package/Examples/SampleUI/src/Examples/ActivityIndicatorExample.tsx +0 -73
  140. package/Examples/SampleUI/src/Examples/AnimatedFABExample/AnimatedFABExample.tsx +0 -220
  141. package/Examples/SampleUI/src/Examples/AnimatedFABExample/CustomFAB.tsx +0 -70
  142. package/Examples/SampleUI/src/Examples/AnimatedFABExample/CustomFABControls.tsx +0 -146
  143. package/Examples/SampleUI/src/Examples/AnimatedFABExample/index.ts +0 -1
  144. package/Examples/SampleUI/src/Examples/AppbarExample.tsx +0 -263
  145. package/Examples/SampleUI/src/Examples/AvatarExample.tsx +0 -76
  146. package/Examples/SampleUI/src/Examples/BadgeExample.tsx +0 -97
  147. package/Examples/SampleUI/src/Examples/BannerExample.tsx +0 -152
  148. package/Examples/SampleUI/src/Examples/BottomNavigationBarExample.tsx +0 -94
  149. package/Examples/SampleUI/src/Examples/BottomNavigationExample.tsx +0 -205
  150. package/Examples/SampleUI/src/Examples/ButtonExample.tsx +0 -405
  151. package/Examples/SampleUI/src/Examples/CardExample.tsx +0 -245
  152. package/Examples/SampleUI/src/Examples/CheckboxExample.tsx +0 -87
  153. package/Examples/SampleUI/src/Examples/CheckboxItemExample.tsx +0 -72
  154. package/Examples/SampleUI/src/Examples/ChipExample.tsx +0 -432
  155. package/Examples/SampleUI/src/Examples/DataTableExample.tsx +0 -128
  156. package/Examples/SampleUI/src/Examples/DialogExample.tsx +0 -217
  157. package/Examples/SampleUI/src/Examples/Dialogs/DialogTextComponent.tsx +0 -31
  158. package/Examples/SampleUI/src/Examples/Dialogs/DialogTrackingTest.tsx +0 -307
  159. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithCustomColors.tsx +0 -57
  160. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithDismissableBackButton.tsx +0 -38
  161. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithIcon.tsx +0 -42
  162. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithLoadingIndicator.tsx +0 -48
  163. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithLongText.tsx +0 -81
  164. package/Examples/SampleUI/src/Examples/Dialogs/DialogWithRadioBtns.tsx +0 -111
  165. package/Examples/SampleUI/src/Examples/Dialogs/UndismissableDialog.tsx +0 -30
  166. package/Examples/SampleUI/src/Examples/Dialogs/index.tsx +0 -44
  167. package/Examples/SampleUI/src/Examples/DividerExample.tsx +0 -30
  168. package/Examples/SampleUI/src/Examples/FABExample.tsx +0 -226
  169. package/Examples/SampleUI/src/Examples/IconButtonExample.tsx +0 -230
  170. package/Examples/SampleUI/src/Examples/IconExample.tsx +0 -50
  171. package/Examples/SampleUI/src/Examples/ListAccordionExample.tsx +0 -65
  172. package/Examples/SampleUI/src/Examples/ListAccordionGroupExample.tsx +0 -80
  173. package/Examples/SampleUI/src/Examples/ListItemExample.tsx +0 -310
  174. package/Examples/SampleUI/src/Examples/ListSectionExample.tsx +0 -159
  175. package/Examples/SampleUI/src/Examples/MaterialBottomTabNavigatorExample.tsx +0 -87
  176. package/Examples/SampleUI/src/Examples/MenuExample.tsx +0 -211
  177. package/Examples/SampleUI/src/Examples/ProgressBarExample.tsx +0 -142
  178. package/Examples/SampleUI/src/Examples/RadioButtonExample.tsx +0 -104
  179. package/Examples/SampleUI/src/Examples/RadioButtonGroupExample.tsx +0 -67
  180. package/Examples/SampleUI/src/Examples/RadioButtonItemExample.tsx +0 -77
  181. package/Examples/SampleUI/src/Examples/SearchbarExample.tsx +0 -249
  182. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonCustomColorCheck.tsx +0 -93
  183. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonDefault.tsx +0 -49
  184. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonDisabled.tsx +0 -47
  185. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselect.tsx +0 -50
  186. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselectIcons.tsx +0 -49
  187. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonMultiselectRealCase.tsx +0 -114
  188. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonOnlyIcons.tsx +0 -40
  189. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonOnlyIconsWithCheck.tsx +0 -43
  190. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonRealCase.tsx +0 -97
  191. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonWithDensity.tsx +0 -47
  192. package/Examples/SampleUI/src/Examples/SegmentedButtons/SegmentedButtonWithSelectedCheck.tsx +0 -52
  193. package/Examples/SampleUI/src/Examples/SegmentedButtons/index.ts +0 -9
  194. package/Examples/SampleUI/src/Examples/SegmentedButtonsExample.tsx +0 -57
  195. package/Examples/SampleUI/src/Examples/SnackbarExample.tsx +0 -141
  196. package/Examples/SampleUI/src/Examples/SurfaceExample.tsx +0 -130
  197. package/Examples/SampleUI/src/Examples/SwitchExample.tsx +0 -105
  198. package/Examples/SampleUI/src/Examples/TeamDetails.tsx +0 -291
  199. package/Examples/SampleUI/src/Examples/TeamsList.tsx +0 -57
  200. package/Examples/SampleUI/src/Examples/TextExample.tsx +0 -132
  201. package/Examples/SampleUI/src/Examples/TextInputExample.tsx +0 -914
  202. package/Examples/SampleUI/src/Examples/ThemeExample.tsx +0 -41
  203. package/Examples/SampleUI/src/Examples/ThemingWithReactNavigation.tsx +0 -75
  204. package/Examples/SampleUI/src/Examples/ToggleButtonExample.tsx +0 -128
  205. package/Examples/SampleUI/src/Examples/TooltipExample.tsx +0 -191
  206. package/Examples/SampleUI/src/Examples/TouchableRippleExample.tsx +0 -37
  207. package/Examples/SampleUI/src/RootNavigator.tsx +0 -95
  208. package/Examples/SampleUI/src/ScreenWrapper.tsx +0 -67
  209. package/Examples/SampleUI/src/components/ActivityIndicator.tsx +0 -254
  210. package/Examples/SampleUI/src/components/Appbar/Appbar.tsx +0 -364
  211. package/Examples/SampleUI/src/components/Appbar/AppbarAction.tsx +0 -132
  212. package/Examples/SampleUI/src/components/Appbar/AppbarBackAction.tsx +0 -77
  213. package/Examples/SampleUI/src/components/Appbar/AppbarBackIcon.tsx +0 -52
  214. package/Examples/SampleUI/src/components/Appbar/AppbarContent.tsx +0 -249
  215. package/Examples/SampleUI/src/components/Appbar/AppbarHeader.tsx +0 -174
  216. package/Examples/SampleUI/src/components/Appbar/index.ts +0 -22
  217. package/Examples/SampleUI/src/components/Appbar/utils.ts +0 -188
  218. package/Examples/SampleUI/src/components/Avatar/Avatar.tsx +0 -8
  219. package/Examples/SampleUI/src/components/Avatar/AvatarIcon.tsx +0 -87
  220. package/Examples/SampleUI/src/components/Avatar/AvatarImage.tsx +0 -128
  221. package/Examples/SampleUI/src/components/Avatar/AvatarText.tsx +0 -127
  222. package/Examples/SampleUI/src/components/Badge.tsx +0 -138
  223. package/Examples/SampleUI/src/components/Banner.tsx +0 -302
  224. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigation.tsx +0 -643
  225. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigationBar.tsx +0 -1039
  226. package/Examples/SampleUI/src/components/BottomNavigation/BottomNavigationRouteScreen.tsx +0 -31
  227. package/Examples/SampleUI/src/components/BottomNavigation/utils.ts +0 -70
  228. package/Examples/SampleUI/src/components/Button/Button.tsx +0 -503
  229. package/Examples/SampleUI/src/components/Button/utils.tsx +0 -272
  230. package/Examples/SampleUI/src/components/Card/Card.tsx +0 -373
  231. package/Examples/SampleUI/src/components/Card/CardActions.tsx +0 -74
  232. package/Examples/SampleUI/src/components/Card/CardContent.tsx +0 -99
  233. package/Examples/SampleUI/src/components/Card/CardCover.tsx +0 -96
  234. package/Examples/SampleUI/src/components/Card/CardTitle.tsx +0 -236
  235. package/Examples/SampleUI/src/components/Card/utils.tsx +0 -110
  236. package/Examples/SampleUI/src/components/Checkbox/Checkbox.tsx +0 -78
  237. package/Examples/SampleUI/src/components/Checkbox/CheckboxAndroid.tsx +0 -180
  238. package/Examples/SampleUI/src/components/Checkbox/CheckboxIOS.tsx +0 -104
  239. package/Examples/SampleUI/src/components/Checkbox/CheckboxItem.tsx +0 -236
  240. package/Examples/SampleUI/src/components/Checkbox/index.ts +0 -19
  241. package/Examples/SampleUI/src/components/Checkbox/utils.ts +0 -183
  242. package/Examples/SampleUI/src/components/Chip/Chip.tsx +0 -513
  243. package/Examples/SampleUI/src/components/Chip/helpers.tsx +0 -322
  244. package/Examples/SampleUI/src/components/CrossFadeIcon.tsx +0 -140
  245. package/Examples/SampleUI/src/components/DataTable/DataTable.tsx +0 -138
  246. package/Examples/SampleUI/src/components/DataTable/DataTableCell.tsx +0 -132
  247. package/Examples/SampleUI/src/components/DataTable/DataTableHeader.tsx +0 -82
  248. package/Examples/SampleUI/src/components/DataTable/DataTablePagination.tsx +0 -407
  249. package/Examples/SampleUI/src/components/DataTable/DataTableRow.tsx +0 -107
  250. package/Examples/SampleUI/src/components/DataTable/DataTableTitle.tsx +0 -208
  251. package/Examples/SampleUI/src/components/Dialog/Dialog.tsx +0 -191
  252. package/Examples/SampleUI/src/components/Dialog/DialogActions.tsx +0 -94
  253. package/Examples/SampleUI/src/components/Dialog/DialogContent.tsx +0 -54
  254. package/Examples/SampleUI/src/components/Dialog/DialogIcon.tsx +0 -100
  255. package/Examples/SampleUI/src/components/Dialog/DialogScrollArea.tsx +0 -88
  256. package/Examples/SampleUI/src/components/Dialog/DialogTitle.tsx +0 -94
  257. package/Examples/SampleUI/src/components/Divider.tsx +0 -102
  258. package/Examples/SampleUI/src/components/Drawer/Drawer.tsx +0 -8
  259. package/Examples/SampleUI/src/components/Drawer/DrawerCollapsedItem.tsx +0 -282
  260. package/Examples/SampleUI/src/components/Drawer/DrawerItem.tsx +0 -209
  261. package/Examples/SampleUI/src/components/Drawer/DrawerSection.tsx +0 -138
  262. package/Examples/SampleUI/src/components/FAB/AnimatedFAB.tsx +0 -619
  263. package/Examples/SampleUI/src/components/FAB/FAB.tsx +0 -371
  264. package/Examples/SampleUI/src/components/FAB/FABGroup.tsx +0 -532
  265. package/Examples/SampleUI/src/components/FAB/index.ts +0 -13
  266. package/Examples/SampleUI/src/components/FAB/utils.ts +0 -474
  267. package/Examples/SampleUI/src/components/HelperText/HelperText.tsx +0 -168
  268. package/Examples/SampleUI/src/components/HelperText/utils.ts +0 -30
  269. package/Examples/SampleUI/src/components/Icon.tsx +0 -170
  270. package/Examples/SampleUI/src/components/IconButton/IconButton.tsx +0 -234
  271. package/Examples/SampleUI/src/components/IconButton/utils.ts +0 -190
  272. package/Examples/SampleUI/src/components/List/List.tsx +0 -20
  273. package/Examples/SampleUI/src/components/List/ListAccordion.tsx +0 -391
  274. package/Examples/SampleUI/src/components/List/ListAccordionGroup.tsx +0 -88
  275. package/Examples/SampleUI/src/components/List/ListIcon.tsx +0 -79
  276. package/Examples/SampleUI/src/components/List/ListImage.tsx +0 -89
  277. package/Examples/SampleUI/src/components/List/ListItem.tsx +0 -313
  278. package/Examples/SampleUI/src/components/List/ListSection.tsx +0 -87
  279. package/Examples/SampleUI/src/components/List/ListSubheader.tsx +0 -79
  280. package/Examples/SampleUI/src/components/List/utils.ts +0 -113
  281. package/Examples/SampleUI/src/components/MaterialCommunityIcon.tsx +0 -121
  282. package/Examples/SampleUI/src/components/Menu/Menu.tsx +0 -711
  283. package/Examples/SampleUI/src/components/Menu/MenuItem.tsx +0 -257
  284. package/Examples/SampleUI/src/components/Menu/utils.ts +0 -110
  285. package/Examples/SampleUI/src/components/Modal.tsx +0 -245
  286. package/Examples/SampleUI/src/components/Portal/Portal.tsx +0 -69
  287. package/Examples/SampleUI/src/components/Portal/PortalConsumer.tsx +0 -44
  288. package/Examples/SampleUI/src/components/Portal/PortalHost.tsx +0 -143
  289. package/Examples/SampleUI/src/components/Portal/PortalManager.tsx +0 -54
  290. package/Examples/SampleUI/src/components/ProgressBar.tsx +0 -292
  291. package/Examples/SampleUI/src/components/RadioButton/RadioButton.tsx +0 -86
  292. package/Examples/SampleUI/src/components/RadioButton/RadioButtonAndroid.tsx +0 -202
  293. package/Examples/SampleUI/src/components/RadioButton/RadioButtonGroup.tsx +0 -67
  294. package/Examples/SampleUI/src/components/RadioButton/RadioButtonIOS.tsx +0 -130
  295. package/Examples/SampleUI/src/components/RadioButton/RadioButtonItem.tsx +0 -268
  296. package/Examples/SampleUI/src/components/RadioButton/index.ts +0 -22
  297. package/Examples/SampleUI/src/components/RadioButton/utils.ts +0 -37
  298. package/Examples/SampleUI/src/components/Searchbar.tsx +0 -459
  299. package/Examples/SampleUI/src/components/SegmentedButtons/SegmentedButtonItem.tsx +0 -271
  300. package/Examples/SampleUI/src/components/SegmentedButtons/SegmentedButtons.tsx +0 -197
  301. package/Examples/SampleUI/src/components/SegmentedButtons/utils.ts +0 -179
  302. package/Examples/SampleUI/src/components/Snackbar.tsx +0 -430
  303. package/Examples/SampleUI/src/components/Surface.tsx +0 -376
  304. package/Examples/SampleUI/src/components/Switch/Switch.tsx +0 -108
  305. package/Examples/SampleUI/src/components/Switch/utils.ts +0 -113
  306. package/Examples/SampleUI/src/components/TextInput/Addons/Outline.tsx +0 -64
  307. package/Examples/SampleUI/src/components/TextInput/Addons/Underline.tsx +0 -78
  308. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputAdornment.tsx +0 -208
  309. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputAffix.tsx +0 -212
  310. package/Examples/SampleUI/src/components/TextInput/Adornment/TextInputIcon.tsx +0 -195
  311. package/Examples/SampleUI/src/components/TextInput/Adornment/enums.tsx +0 -12
  312. package/Examples/SampleUI/src/components/TextInput/Adornment/types.tsx +0 -11
  313. package/Examples/SampleUI/src/components/TextInput/Adornment/utils.ts +0 -48
  314. package/Examples/SampleUI/src/components/TextInput/Label/InputLabel.tsx +0 -217
  315. package/Examples/SampleUI/src/components/TextInput/Label/LabelBackground.tsx +0 -100
  316. package/Examples/SampleUI/src/components/TextInput/TextInput.tsx +0 -572
  317. package/Examples/SampleUI/src/components/TextInput/TextInputFlat.tsx +0 -475
  318. package/Examples/SampleUI/src/components/TextInput/TextInputOutlined.tsx +0 -450
  319. package/Examples/SampleUI/src/components/TextInput/constants.tsx +0 -48
  320. package/Examples/SampleUI/src/components/TextInput/helpers.tsx +0 -612
  321. package/Examples/SampleUI/src/components/TextInput/types.tsx +0 -155
  322. package/Examples/SampleUI/src/components/ToggleButton/ToggleButton.tsx +0 -187
  323. package/Examples/SampleUI/src/components/ToggleButton/ToggleButtonGroup.tsx +0 -72
  324. package/Examples/SampleUI/src/components/ToggleButton/ToggleButtonRow.tsx +0 -107
  325. package/Examples/SampleUI/src/components/ToggleButton/index.ts +0 -16
  326. package/Examples/SampleUI/src/components/ToggleButton/utils.ts +0 -26
  327. package/Examples/SampleUI/src/components/Tooltip/Tooltip.tsx +0 -249
  328. package/Examples/SampleUI/src/components/Tooltip/utils.ts +0 -129
  329. package/Examples/SampleUI/src/components/TouchableRipple/Pressable.tsx +0 -41
  330. package/Examples/SampleUI/src/components/TouchableRipple/TouchableRipple.native.tsx +0 -145
  331. package/Examples/SampleUI/src/components/TouchableRipple/TouchableRipple.tsx +0 -317
  332. package/Examples/SampleUI/src/components/TouchableRipple/utils.ts +0 -66
  333. package/Examples/SampleUI/src/components/Typography/AnimatedText.tsx +0 -107
  334. package/Examples/SampleUI/src/components/Typography/Text.tsx +0 -184
  335. package/Examples/SampleUI/src/components/Typography/types.tsx +0 -5
  336. package/Examples/SampleUI/src/components/Typography/v2/Caption.tsx +0 -50
  337. package/Examples/SampleUI/src/components/Typography/v2/Headline.tsx +0 -52
  338. package/Examples/SampleUI/src/components/Typography/v2/Paragraph.tsx +0 -49
  339. package/Examples/SampleUI/src/components/Typography/v2/StyledText.tsx +0 -56
  340. package/Examples/SampleUI/src/components/Typography/v2/Subheading.tsx +0 -50
  341. package/Examples/SampleUI/src/components/Typography/v2/Text.tsx +0 -62
  342. package/Examples/SampleUI/src/components/Typography/v2/Title.tsx +0 -49
  343. package/Examples/SampleUI/src/components/Typography/v2/index.ts +0 -5
  344. package/Examples/SampleUI/src/core/PaperProvider.tsx +0 -122
  345. package/Examples/SampleUI/src/core/SafeAreaProviderCompat.tsx +0 -65
  346. package/Examples/SampleUI/src/core/settings.tsx +0 -23
  347. package/Examples/SampleUI/src/core/theming.tsx +0 -170
  348. package/Examples/SampleUI/src/index.native.tsx +0 -285
  349. package/Examples/SampleUI/src/index.tsx +0 -226
  350. package/Examples/SampleUI/src/react-navigation/index.tsx +0 -19
  351. package/Examples/SampleUI/src/react-navigation/navigators/createMaterialBottomTabNavigator.tsx +0 -72
  352. package/Examples/SampleUI/src/react-navigation/types.tsx +0 -126
  353. package/Examples/SampleUI/src/react-navigation/views/MaterialBottomTabView.tsx +0 -140
  354. package/Examples/SampleUI/src/styles/__tests__/fonts.test.js +0 -290
  355. package/Examples/SampleUI/src/styles/fonts.tsx +0 -143
  356. package/Examples/SampleUI/src/styles/overlay.tsx +0 -70
  357. package/Examples/SampleUI/src/styles/shadow.tsx +0 -109
  358. package/Examples/SampleUI/src/styles/themes/index.ts +0 -4
  359. package/Examples/SampleUI/src/styles/themes/v2/DarkTheme.tsx +0 -30
  360. package/Examples/SampleUI/src/styles/themes/v2/LightTheme.tsx +0 -30
  361. package/Examples/SampleUI/src/styles/themes/v2/colors.tsx +0 -277
  362. package/Examples/SampleUI/src/styles/themes/v3/DarkTheme.tsx +0 -66
  363. package/Examples/SampleUI/src/styles/themes/v3/LightTheme.tsx +0 -69
  364. package/Examples/SampleUI/src/styles/themes/v3/tokens.tsx +0 -230
  365. package/Examples/SampleUI/src/utils/BackHandler/BackHandler.native.tsx +0 -3
  366. package/Examples/SampleUI/src/utils/BackHandler/BackHandler.tsx +0 -11
  367. package/Examples/SampleUI/src/utils/addEventListener.tsx +0 -56
  368. package/Examples/SampleUI/src/utils/forwardRef.tsx +0 -23
  369. package/Examples/SampleUI/src/utils/getContrastingColor.tsx +0 -15
  370. package/Examples/SampleUI/src/utils/hasTouchHandler.tsx +0 -23
  371. package/Examples/SampleUI/src/utils/roundLayoutSize.ts +0 -2
  372. package/Examples/SampleUI/src/utils/splitStyles.ts +0 -60
  373. package/Examples/SampleUI/src/utils/useAnimatedValue.tsx +0 -9
  374. package/Examples/SampleUI/src/utils/useAnimatedValueArray.tsx +0 -13
  375. package/Examples/SampleUI/src/utils/useIsKeyboardShown.tsx +0 -55
  376. package/Examples/SampleUI/src/utils/useLayout.tsx +0 -29
  377. package/Examples/SampleUI/src/utils/useLazyRef.tsx +0 -11
  378. package/Examples/SampleUI/tsconfig.json +0 -3
  379. package/Examples/SampleUI/utils/index.ts +0 -1426
  380. package/cli/__tests__/doctor.test.mjs +0 -88
@@ -10,7 +10,7 @@
10
10
  * prohibited.
11
11
  ********************************************************************************************/
12
12
  import React, { useCallback, useEffect, useRef, useState } from "react";
13
- import { View, StyleSheet, Platform } from "react-native";
13
+ import { View, StyleSheet } from "react-native";
14
14
  // Use type-only import for LayoutChangeEvent
15
15
  import TLTRN from '../TLTRN';
16
16
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -56,14 +56,13 @@ const Connect = ({
56
56
  // ref is usable, then flip `navReady` to subscribe. The direct-child case
57
57
  // resolves on the first synchronous check (no polling, no warning). If the
58
58
  // ref never attaches within the grace window we warn once, as before.
59
- // See CA-144314.
60
59
  useEffect(() => {
61
60
  // Reset readiness whenever the resolved ref changes. Without this, a
62
61
  // `navigationRef` prop swap leaves `navReady` stale-true, so the
63
62
  // subscription effect below re-runs and attaches `addListener` to the
64
63
  // old container (whose `.current` is still non-null mid-transition)
65
64
  // before the new ref is validated. Resetting forces re-validation
66
- // through `isUsable()` before tracking re-enables. See CA-144314.
65
+ // through `isUsable()` before tracking re-enables.
67
66
  setNavReady(false);
68
67
  const isUsable = () => !!navigation && !!navigation.current && typeof navigation.current.addListener === "function" && typeof navigation.current.getCurrentRoute === "function";
69
68
  if (isUsable()) {
@@ -99,13 +98,28 @@ const Connect = ({
99
98
 
100
99
  // Listen for the 'state' event to track navigation state changes
101
100
  const unsubscribeState = navigation.current.addListener("state", () => {
102
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
103
- if (Platform.OS === "ios" && currentRoute && currentRoute.current) {
104
- TLTRN.logScreenViewPageName(currentRoute.current);
105
- } else if (Platform.OS === "android") {
106
- TLTRN.logScreenViewPageName(currentRoute.current);
107
- TLTRN.logScreenLayout(currentRoute.current);
101
+ // extractName resolves the focused route through the nested
102
+ // navigators itself, so there is no outer-level fallback to chain
103
+ // here — one used to be appended, which reported the tab name for
104
+ // every push inside that tab.
105
+ currentRoute.current = extractName(navigation);
106
+
107
+ // Both platforms take the same path. iOS used to be excluded from
108
+ // the layout call, which left the wrapper with no layout trigger
109
+ // at all there: the one remaining bridge caller was TLTRN's
110
+ // render-settle timer, so a plain navigation captured nothing.
111
+ if (!currentRoute.current) {
112
+ return;
108
113
  }
114
+ TLTRN.logScreenViewPageName(currentRoute.current);
115
+ // Deliberately no delay argument. TLTRN then sends its
116
+ // "use the configured CaptureLayoutDelay" sentinel, so the capture
117
+ // is deferred past the transition. Passing 0 would select the
118
+ // native synchronous overload instead, which captures on the
119
+ // calling thread at the *start* of the transition — React
120
+ // Navigation fires 'state' before the animation runs — and makes
121
+ // CaptureLayoutDelay inert.
122
+ TLTRN.logScreenLayout(currentRoute.current);
109
123
  });
110
124
 
111
125
  // Cleanup listeners when the component unmounts or dependencies change
@@ -114,11 +128,9 @@ const Connect = ({
114
128
  };
115
129
  }, [navReady, navigation]);
116
130
  const onStartShouldSetResponderCapture = useCallback(event => {
117
- if (navigation?.current?.getCurrentRoute) {
118
- currentRoute.current = extractName(navigation) || navigation.current.getCurrentRoute()?.name;
119
- if (currentRoute.current) {
120
- TLTRN.logScreenViewPageName(currentRoute.current);
121
- }
131
+ currentRoute.current = extractName(navigation);
132
+ if (currentRoute.current) {
133
+ TLTRN.logScreenViewPageName(currentRoute.current);
122
134
  }
123
135
  TLTRN.logClickEvent(event);
124
136
  return false; // Must remain false so events bubble to the host app's handlers
@@ -128,13 +140,19 @@ const Connect = ({
128
140
  return false;
129
141
  }
130
142
  initial.current = true;
131
- if (navigation?.current?.getCurrentRoute) {
132
- currentRoute.current = navigation.current.getCurrentRoute()?.name;
133
- if (Platform.OS === "ios" && currentRoute.current) {
134
- TLTRN.logScreenViewPageName(currentRoute.current);
135
- } else if (Platform.OS === "android") {
136
- TLTRN.logScreenLayout(currentRoute.current);
137
- }
143
+
144
+ // Resolved through extractName like the other two triggers. This site
145
+ // used to read `getCurrentRoute()?.name` directly, so a `params.name`
146
+ // override was honoured on navigation but silently ignored for the
147
+ // first-paint screen — the same screen reported under two names.
148
+ currentRoute.current = extractName(navigation);
149
+ // Same unification as the 'state' listener above: the split sent
150
+ // only a screenview on iOS and only a layout on Android, so
151
+ // neither platform got both from the first-paint trigger. No delay
152
+ // argument, for the reason given there.
153
+ if (currentRoute.current) {
154
+ TLTRN.logScreenViewPageName(currentRoute.current);
155
+ TLTRN.logScreenLayout(currentRoute.current);
138
156
  }
139
157
  return true;
140
158
  }, [navigation]);
@@ -147,15 +165,115 @@ const Connect = ({
147
165
  }) : children
148
166
  });
149
167
  };
168
+
169
+ /**
170
+ * Walks a React Navigation state down to the deepest **focused** route.
171
+ *
172
+ * Nested navigators are the default architecture of production RN apps: a tab
173
+ * navigator whose tabs each hold a stack. The container's root state then
174
+ * describes only the outer level, and the route that the user is actually
175
+ * looking at lives in `routes[index].state`, recursively. Reading the outer
176
+ * level alone reports the *tab* name for every push inside that tab, so screen
177
+ * changes below the first level are invisible to analytics and replay.
178
+ *
179
+ * `index` can legitimately be absent on a partial/rehydrated state, in which
180
+ * case React Navigation treats the last route as focused — matched here.
181
+ *
182
+ * A depth cap guards against a malformed state whose nesting cycles; 32 is far
183
+ * past any real navigator tree.
184
+ */
185
+ function findFocusedRoute(state) {
186
+ let current = state;
187
+ let depth = 0;
188
+ while (current?.routes?.length && depth++ < 32) {
189
+ const index = current.index ?? current.routes.length - 1;
190
+ const route = current.routes[index];
191
+ if (!route?.state?.routes?.length) {
192
+ return route;
193
+ }
194
+ current = route.state;
195
+ }
196
+ return undefined;
197
+ }
198
+
199
+ /**
200
+ * Containers already reported by {@link warnExtractNameFailed}.
201
+ *
202
+ * Keyed by the container itself, so a ref that throws on every navigation
203
+ * produces one line rather than one per transition, while a genuinely
204
+ * different container still gets its own. A `WeakSet` holds no strong
205
+ * reference, so remembering a container cannot keep it alive.
206
+ */
207
+ const extractNameErrorReported = new WeakSet();
208
+
209
+ /**
210
+ * Reports, once per container, that resolving the current route threw.
211
+ *
212
+ * A throw here is expected and harmless during teardown, which is why
213
+ * ``extractName`` swallows it. A ref that keeps throwing is a different
214
+ * matter: every screen view goes unnamed, and without a line here that looks
215
+ * exactly like a ref that never attached. One warning separates the two
216
+ * without flooding a listener that fires per navigation.
217
+ */
218
+ function warnExtractNameFailed(container, error) {
219
+ if (typeof container === "object" && container !== null) {
220
+ if (extractNameErrorReported.has(container)) {
221
+ return;
222
+ }
223
+ extractNameErrorReported.add(container);
224
+ }
225
+ console.warn("Connect: could not resolve the current route — the navigation container ref threw. " + "Screen views stay unnamed while this persists (harmless if the container is unmounting). " + "Cause:", error);
226
+ }
227
+
228
+ /**
229
+ * The screen name to report for the navigation container's current position.
230
+ *
231
+ * Resolution order:
232
+ *
233
+ * 1. The focused route resolved from `getRootState()` by ``findFocusedRoute``.
234
+ * Taking the state and walking it here — rather than trusting a single
235
+ * accessor — keeps the wrapper correct regardless of whether the host app's
236
+ * navigation library resolves nesting inside `getCurrentRoute()`, and works
237
+ * for a custom container ref that exposes state but not that helper.
238
+ * 2. `getCurrentRoute()`, for refs that expose no `getRootState`.
239
+ *
240
+ * Either way `params.name` wins over the route's own `name` when the host app
241
+ * supplies it — the documented override for giving a route a human-readable
242
+ * analytics name. Only a non-empty string counts, so `params: { name: '' }`
243
+ * falls through to the route name instead of blanking the screenview.
244
+ *
245
+ * Returns `""` when nothing resolves, which both callers treat as "skip".
246
+ */
150
247
  function extractName(navigation) {
151
- const routeParams = navigation?.current?.getCurrentRoute?.()?.params;
152
- if (routeParams) {
153
- const {
154
- name
155
- } = routeParams;
156
- return name ? name : navigation.current?.getCurrentRoute()?.name || "";
248
+ const container = navigation?.current;
249
+ if (!container) {
250
+ return "";
251
+ }
252
+ let route;
253
+ try {
254
+ route = findFocusedRoute(container.getRootState?.());
255
+ } catch (error) {
256
+ // A container mid-teardown can throw out of getRootState(). Screen
257
+ // naming is not worth taking the host app's navigation down for.
258
+ warnExtractNameFailed(container, error);
259
+ route = undefined;
260
+ }
261
+ if (!route) {
262
+ try {
263
+ route = container.getCurrentRoute?.();
264
+ } catch (error) {
265
+ warnExtractNameFailed(container, error);
266
+ route = undefined;
267
+ }
268
+ }
269
+ if (!route) {
270
+ return "";
271
+ }
272
+ const overridden = route.params?.name;
273
+ if (typeof overridden === "string" && overridden.length > 0) {
274
+ return overridden;
157
275
  }
158
- return "";
276
+ return typeof route.name === "string" ? route.name : "";
159
277
  }
160
278
  export default Connect;
161
279
  const styles = StyleSheet.create({
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","Platform","TLTRN","jsx","_jsx","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","navigation","shouldInjectRef","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","name","OS","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","event","logClickEvent","onLayout","_event","style","styles","connect_main","cloneElement","routeParams","params","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useRef","useState","View","StyleSheet","TLTRN","jsx","_jsx","Connect","children","captureKeyboardEvents","captureDialogEvents","navigationRef","child","childProvidedRef","props","ref","internalRef","navigation","shouldInjectRef","isValidElement","currentRoute","undefined","initial","navReady","setNavReady","interceptKeyboardEvents","interceptDialogEvents","isUsable","current","addListener","getCurrentRoute","attempts","POLL_INTERVAL_MS","MAX_ATTEMPTS","timer","poll","console","warn","setTimeout","clearTimeout","unsubscribeState","extractName","logScreenViewPageName","logScreenLayout","onStartShouldSetResponderCapture","event","logClickEvent","onLayout","_event","style","styles","connect_main","cloneElement","findFocusedRoute","state","depth","routes","length","index","route","extractNameErrorReported","WeakSet","warnExtractNameFailed","container","error","has","add","getRootState","overridden","params","name","create","flex"],"sourceRoot":"../../../src","sources":["components/Connect.tsx"],"mappings":"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","ignoreList":[]}
@@ -35,5 +35,10 @@ try {
35
35
  throw new Error('[AcousticConnectRN] Failed to load the native HybridObject. This almost ' + 'always means a `react-native-nitro-modules` version mismatch: this SDK is ' + 'built against the exact version declared in its peerDependencies, so your ' + 'app must resolve that same version (check `npm ls react-native-nitro-modules`). ' + `Original error: ${String(error)}`);
36
36
  }
37
37
  export { Connect, TLTRN, KeyboardListener, DialogListener, useDialogTracking, DialogDebugger, withAcousticAutoDialog };
38
+
39
+ // Re-exported so callers can name a `logSignal` payload without importing
40
+ // from `react-native-nitro-modules` — the spec aliases nitro's AnyMap only
41
+ // because that is the one type nitrogen accepts for arbitrary JSON.
42
+
38
43
  export default AcousticConnectRN;
39
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","Connect","KeyboardListener","DialogListener","useDialogTracking","withAcousticAutoDialog","DialogDebugger","TLTRN","AcousticConnectRN","createHybridObject","error","Error","String"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,YAAY,QAAQ,4BAA4B;AAEzD,OAAOC,OAAO,MAAM,sBAAsB;AAC1C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,cAAc,MAAM,wBAAwB;AACnD,OAAOC,iBAAiB,MAAM,2BAA2B;AACzD,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,OAAOC,cAAc,MAAM,wBAAwB;AACnD,OAAOC,KAAK,MAAM,SAAS;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,iBAAwC;AAC5C,IAAI;EACFA,iBAAiB,GAAGR,YAAY,CAACS,kBAAkB,CAAwB,mBAAmB,CAAC;AACjG,CAAC,CAAC,OAAOC,KAAK,EAAE;EACd,MAAM,IAAIC,KAAK,CACb,0EAA0E,GACxE,4EAA4E,GAC5E,4EAA4E,GAC5E,kFAAkF,GAClF,mBAAmBC,MAAM,CAACF,KAAK,CAAC,EACpC,CAAC;AACH;AAEA,SAAST,OAAO,EAAEM,KAAK,EAAEL,gBAAgB,EAAEC,cAAc,EAAEC,iBAAiB,EAAEE,cAAc,EAAED,sBAAsB;AACpH,eAAeG,iBAAiB","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","Connect","KeyboardListener","DialogListener","useDialogTracking","withAcousticAutoDialog","DialogDebugger","TLTRN","AcousticConnectRN","createHybridObject","error","Error","String"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,YAAY,QAAQ,4BAA4B;AAEzD,OAAOC,OAAO,MAAM,sBAAsB;AAC1C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,cAAc,MAAM,wBAAwB;AACnD,OAAOC,iBAAiB,MAAM,2BAA2B;AACzD,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,OAAOC,cAAc,MAAM,wBAAwB;AACnD,OAAOC,KAAK,MAAM,SAAS;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,iBAAwC;AAC5C,IAAI;EACFA,iBAAiB,GAAGR,YAAY,CAACS,kBAAkB,CAAwB,mBAAmB,CAAC;AACjG,CAAC,CAAC,OAAOC,KAAK,EAAE;EACd,MAAM,IAAIC,KAAK,CACb,0EAA0E,GACxE,4EAA4E,GAC5E,4EAA4E,GAC5E,kFAAkF,GAClF,mBAAmBC,MAAM,CAACF,KAAK,CAAC,EACpC,CAAC;AACH;AAEA,SAAST,OAAO,EAAEM,KAAK,EAAEL,gBAAgB,EAAEC,cAAc,EAAEC,iBAAiB,EAAEE,cAAc,EAAED,sBAAsB;;AAEpH;AACA;AACA;;AAEA,eAAeG,iBAAiB","ignoreList":[]}
@@ -35,13 +35,97 @@ declare class TLTRN {
35
35
  static interceptKeyboardEvents: (enable: boolean) => void;
36
36
  static logScreenViewPageName: (name: string | undefined) => boolean;
37
37
  static logScreenViewContextLoad: (name: string, prevName: string) => boolean;
38
- static logScreenLayout: (name: string | undefined) => boolean;
38
+ /**
39
+ * Sentinel for the native `delay` argument meaning "use the
40
+ * `CaptureLayoutDelay` configured for this screen". Both bridges resolve it
41
+ * from the layout config; anything >= 0 is an explicit delay in
42
+ * milliseconds.
43
+ */
44
+ static USE_CONFIGURED_CAPTURE_DELAY: number;
45
+ /**
46
+ * Captures the layout of the current screen.
47
+ *
48
+ * @param name Screen name to associate with the capture.
49
+ * @param delayMs Milliseconds to wait before capturing. Omit it to use the
50
+ * `CaptureLayoutDelay` from `ConnectConfig.json` — that is the setting to
51
+ * reach for when a screen transition animation is still running and the
52
+ * capture would otherwise catch a half-rendered screen. Pass `0` to
53
+ * capture immediately.
54
+ *
55
+ * Passing no delay used to send a hardcoded `0`, which made
56
+ * `CaptureLayoutDelay` inert for React Native apps and fired the capture at
57
+ * the *start* of the transition rather than after it.
58
+ *
59
+ * @returns With no `delayMs` — the normal case — only that the capture was
60
+ * **scheduled**, not that it produced a layout message. The native
61
+ * deferred overload dispatches and returns immediately, so anything that
62
+ * goes wrong once it runs (no view controller resolved, layout capture
63
+ * gated off by config) cannot be reflected here; those surface in logcat
64
+ * / os_log instead. Pass `0` and the value describes the capture itself,
65
+ * at the cost of capturing mid-transition.
66
+ */
67
+ static logScreenLayout: (name: string | undefined, delayMs?: number) => boolean;
39
68
  static logClickEvent: (event: any) => Promise<boolean>;
40
69
  static logTextChangeEvent: (target: number, controlId: string, text: string, _ariaLabel: string) => Promise<boolean>;
70
+ /**
71
+ * Keys already warned about, so a call site inside a render or a list loop
72
+ * warns once rather than on every pass.
73
+ */
74
+ static warnedNestedValueSites: Set<string>;
75
+ /**
76
+ * Cap on {@link warnedNestedValueSites}.
77
+ *
78
+ * The site key includes the nested keys' names, so a payload built from an
79
+ * API response — per-record ids, timestamps — makes every call a distinct
80
+ * site, and the set would then grow for the life of the session. By the
81
+ * hundredth distinct shape the warning has made its point, so it stops
82
+ * instead of accumulating: bounded memory matters more than warning about
83
+ * shape 101.
84
+ */
85
+ static WARNED_NESTED_VALUE_SITES_MAX: number;
86
+ /**
87
+ * Warns when a flat-values payload carries a nested object or array.
88
+ *
89
+ * `logCustomEvent`/`logDialogCustomEvent` are typed for flat scalars, but
90
+ * TypeScript types are erased at runtime: a payload built from an API
91
+ * response, widened through `any`, or passed from untyped JS reaches the
92
+ * bridge with its nesting intact. Both platforms then reshape it silently —
93
+ * Android's SDK chain is typed `HashMap<String, String>` end to end, so a
94
+ * nested value is stringified into whatever its `toString()` yields — and
95
+ * the call still returns `true`. `logSignal` is the API that carries nested
96
+ * JSON on both platforms.
97
+ *
98
+ * Warning only: the payload is passed through untouched, so this changes no
99
+ * behaviour and cannot break a caller who is relying on today's reshaping.
100
+ *
101
+ * @param api Name of the calling API, for the message.
102
+ * @param values The payload about to cross the bridge.
103
+ */
104
+ static warnOnNestedValues: (api: string, values: Record<string, unknown>) => void;
105
+ /**
106
+ * Logs a custom event.
107
+ *
108
+ * @param eventName Event name, as it appears in the posted JSON.
109
+ * @param values Flat key/value pairs. Nested objects and arrays are NOT
110
+ * supported here and are reshaped by the native SDKs — use `logSignal`
111
+ * for nested JSON.
112
+ * @param level Monitoring level for this event.
113
+ * @returns Whether the native SDK **accepted the event for delivery** —
114
+ * not whether the collector received it. The event is queued locally and
115
+ * posted later, so no return value from this call can attest to delivery;
116
+ * a `true` here means only that the SDK took the event. A `false` is also
117
+ * logged natively (logcat / os_log) so the rejection is visible.
118
+ */
41
119
  static logCustomEvent: (eventName: string, values: Record<string, string | number | boolean>, level: number) => Promise<boolean>;
42
120
  static logDialogShowEvent: (dialogId: string, dialogTitle: string, dialogType: string) => Promise<boolean>;
43
121
  static logDialogDismissEvent: (dialogId: string, dismissReason: string) => Promise<boolean>;
44
122
  static logDialogButtonClickEvent: (dialogId: string, buttonText: string, buttonIndex: number) => Promise<boolean>;
123
+ /**
124
+ * Logs a custom event tied to a dialog.
125
+ *
126
+ * Same flat-values contract and same return-value meaning as
127
+ * {@link logCustomEvent} — it routes to the same native API.
128
+ */
45
129
  static logDialogCustomEvent: (dialogId: string, eventName: string, values: Record<string, string | number | boolean>) => Promise<boolean>;
46
130
  static eventListenerRegistered: boolean;
47
131
  static eventListenerUnsubscribe: (() => void) | null;
@@ -1 +1 @@
1
- {"version":3,"file":"TLTRN.d.ts","sourceRoot":"","sources":["../../../src/TLTRN.ts"],"names":[],"mappings":"AAAA;;;;;;;;6FAQ6F;;AAmC7F,cAAM,KAAK;IACT,MAAM,CAAC,aAAa,SACgD;IACpE,MAAM,CAAC,uBAAuB,SAAK;IACnC,MAAM,CAAC,eAAe,SAAK;IAC3B,MAAM,CAAC,iBAAiB,SAAK;IAC7B,MAAM,CAAC,SAAS,SAAK;IACrB,MAAM,CAAC,cAAc,SAAK;IAC1B,MAAM,CAAC,kBAAkB,SAAK;IAC9B,MAAM,CAAC,aAAa,SAAK;IACzB,MAAM,CAAC,YAAY,UAAS;IAE5B,MAAM,CAAC,OAAO;;;;QAIZ;;WAEG;;QAKH;;WAEG;;MAQH;IAEF,MAAM,CAAC,IAAI,yBAA0B,MAAM,4BAA4B,OAAO,UAQ5E;IAEF,MAAM,CAAC,uBAAuB,WAAY,OAAO,UAE/C;IAEF,MAAM,CAAC,qBAAqB,SAAU,MAAM,GAAG,SAAS,aAQtD;IAEF,MAAM,CAAC,wBAAwB,SAAU,MAAM,YAAY,MAAM,aAQ/D;IAEF,MAAM,CAAC,eAAe,SAAU,MAAM,GAAG,SAAS,aAShD;IAEF,MAAM,CAAC,aAAa,UAAiB,GAAG,sBA+BtC;IAEF,MAAM,CAAC,kBAAkB,WAAkB,MAAM,aAAa,MAAM,QAAQ,MAAM,cAAc,MAAM,sBAYpG;IAEF,MAAM,CAAC,cAAc,cAAqB,MAAM,UAAU,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,sBAQhH;IAGF,MAAM,CAAC,kBAAkB,aAAoB,MAAM,eAAe,MAAM,cAAc,MAAM,sBAQ1F;IAEF,MAAM,CAAC,qBAAqB,aAAoB,MAAM,iBAAiB,MAAM,sBAQ3E;IAEF,MAAM,CAAC,yBAAyB,aAAoB,MAAM,cAAc,MAAM,eAAe,MAAM,sBAQjG;IAEF,MAAM,CAAC,oBAAoB,aAAoB,MAAM,aAAa,MAAM,UAAU,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,sBAQzH;IAGF,MAAM,CAAC,uBAAuB,UAAS;IACvC,MAAM,CAAC,wBAAwB,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAQ;IAE5D,MAAM,CAAC,qBAAqB,WAAY,OAAO,UA0B7C;IAEF,MAAM,CAAC,cAAc,YAAa,GAAG,UAqEnC;IAEF,MAAM,CAAC,SAAS,aA6Bd;IAEF,MAAM,CAAC,OAAO,sBAsBZ;CACH;AAGD,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"TLTRN.d.ts","sourceRoot":"","sources":["../../../src/TLTRN.ts"],"names":[],"mappings":"AAAA;;;;;;;;6FAQ6F;;AAmC7F,cAAM,KAAK;IACT,MAAM,CAAC,aAAa,SACgD;IACpE,MAAM,CAAC,uBAAuB,SAAK;IACnC,MAAM,CAAC,eAAe,SAAK;IAC3B,MAAM,CAAC,iBAAiB,SAAK;IAC7B,MAAM,CAAC,SAAS,SAAK;IACrB,MAAM,CAAC,cAAc,SAAK;IAC1B,MAAM,CAAC,kBAAkB,SAAK;IAC9B,MAAM,CAAC,aAAa,SAAK;IACzB,MAAM,CAAC,YAAY,UAAS;IAE5B,MAAM,CAAC,OAAO;;;;QAIZ;;WAEG;;QAKH;;WAEG;;MAQH;IAEF,MAAM,CAAC,IAAI,yBAA0B,MAAM,4BAA4B,OAAO,UAQ5E;IAEF,MAAM,CAAC,uBAAuB,WAAY,OAAO,UAE/C;IAEF,MAAM,CAAC,qBAAqB,SAAU,MAAM,GAAG,SAAS,aAQtD;IAEF,MAAM,CAAC,wBAAwB,SAAU,MAAM,YAAY,MAAM,aAQ/D;IAEF;;;;;OAKG;IACH,MAAM,CAAC,4BAA4B,SAAM;IAEzC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,eAAe,SAAU,MAAM,GAAG,SAAS,YAAY,MAAM,aAYlE;IAEF,MAAM,CAAC,aAAa,UAAiB,GAAG,sBA+BtC;IAEF,MAAM,CAAC,kBAAkB,WAAkB,MAAM,aAAa,MAAM,QAAQ,MAAM,cAAc,MAAM,sBAYpG;IAEF;;;OAGG;IACH,MAAM,CAAC,sBAAsB,cAAqB;IAElD;;;;;;;;;OASG;IACH,MAAM,CAAC,6BAA6B,SAAO;IAE3C;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,kBAAkB,QAAS,MAAM,UAAU,OAAO,MAAM,EAAE,OAAO,CAAC,UAyBvE;IAEF;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,cAAc,cAAqB,MAAM,UAAU,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,sBAShH;IAGF,MAAM,CAAC,kBAAkB,aAAoB,MAAM,eAAe,MAAM,cAAc,MAAM,sBAQ1F;IAEF,MAAM,CAAC,qBAAqB,aAAoB,MAAM,iBAAiB,MAAM,sBAQ3E;IAEF,MAAM,CAAC,yBAAyB,aAAoB,MAAM,cAAc,MAAM,eAAe,MAAM,sBAQjG;IAEF;;;;;OAKG;IACH,MAAM,CAAC,oBAAoB,aAAoB,MAAM,aAAa,MAAM,UAAU,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,sBASzH;IAGF,MAAM,CAAC,uBAAuB,UAAS;IACvC,MAAM,CAAC,wBAAwB,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAQ;IAE5D,MAAM,CAAC,qBAAqB,WAAY,OAAO,UA0B7C;IAEF,MAAM,CAAC,cAAc,YAAa,GAAG,UAqEnC;IAEF,MAAM,CAAC,SAAS,aA6Bd;IAEF,MAAM,CAAC,OAAO,sBAyBZ;CACH;AAGD,eAAe,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Connect.d.ts","sourceRoot":"","sources":["../../../../src/components/Connect.tsx"],"names":[],"mappings":"AAAA;;;;;;;;6FAQ6F;AAC7F,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACxC;AAED,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA8JnC,CAAC;AAWF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Connect.d.ts","sourceRoot":"","sources":["../../../../src/components/Connect.tsx"],"names":[],"mappings":"AAAA;;;;;;;;6FAQ6F;AAC7F,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACxC;AAED,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA6KnC,CAAC;AAuHF,eAAe,OAAO,CAAC"}
@@ -20,5 +20,6 @@ import DialogDebugger from './utils/DialogDebugger';
20
20
  import TLTRN from './TLTRN';
21
21
  declare let AcousticConnectRN: AcousticConnectRNSpec;
22
22
  export { Connect, TLTRN, KeyboardListener, DialogListener, useDialogTracking, DialogDebugger, withAcousticAutoDialog };
23
+ export type { SignalValues } from './specs/react-native-acoustic-connect.nitro';
23
24
  export default AcousticConnectRN;
24
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;6FAW6F;AAG7F,OAAO,KAAK,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AAC7G,OAAO,OAAO,MAAM,sBAAsB,CAAA;AAC1C,OAAO,gBAAgB,MAAM,0BAA0B,CAAA;AACvD,OAAO,cAAc,MAAM,wBAAwB,CAAA;AACnD,OAAO,iBAAiB,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,cAAc,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,MAAM,SAAS,CAAA;AAQ3B,QAAA,IAAI,iBAAiB,EAAE,qBAAqB,CAAA;AAa5C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,CAAA;AACtH,eAAe,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;6FAW6F;AAG7F,OAAO,KAAK,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AAC7G,OAAO,OAAO,MAAM,sBAAsB,CAAA;AAC1C,OAAO,gBAAgB,MAAM,0BAA0B,CAAA;AACvD,OAAO,cAAc,MAAM,wBAAwB,CAAA;AACnD,OAAO,iBAAiB,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,cAAc,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,MAAM,SAAS,CAAA;AAQ3B,QAAA,IAAI,iBAAiB,EAAE,qBAAqB,CAAA;AAa5C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,CAAA;AAKtH,YAAY,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAA;AAC/E,eAAe,iBAAiB,CAAA"}