@userflow-tech/react-native 0.4.4 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/README.md +124 -34
  2. package/docs/anchoring.md +6 -1
  3. package/docs/deep-linking.md +26 -0
  4. package/docs/troubleshooting.md +50 -23
  5. package/expo-plugin/hostDependencyWarnings.d.ts +6 -4
  6. package/expo-plugin/hostDependencyWarnings.d.ts.map +1 -1
  7. package/expo-plugin/hostDependencyWarnings.js +8 -6
  8. package/expo-plugin/hostDependencyWarnings.js.map +1 -1
  9. package/lib/commonjs/anchors/AutoAnchorRegistry.js +144 -34
  10. package/lib/commonjs/anchors/AutoAnchorRegistry.js.map +1 -1
  11. package/lib/commonjs/anchors/animationFrame.js +29 -1
  12. package/lib/commonjs/anchors/animationFrame.js.map +1 -1
  13. package/lib/commonjs/anchors/appActive.js +61 -0
  14. package/lib/commonjs/anchors/appActive.js.map +1 -0
  15. package/lib/commonjs/anchors/elementConditionEvaluator.js +25 -8
  16. package/lib/commonjs/anchors/elementConditionEvaluator.js.map +1 -1
  17. package/lib/commonjs/anchors/elementTapMonitor.js +67 -12
  18. package/lib/commonjs/anchors/elementTapMonitor.js.map +1 -1
  19. package/lib/commonjs/anchors/elementTargetMatch.js +33 -7
  20. package/lib/commonjs/anchors/elementTargetMatch.js.map +1 -1
  21. package/lib/commonjs/anchors/fiber/fiberInternals.js +66 -0
  22. package/lib/commonjs/anchors/fiber/fiberInternals.js.map +1 -1
  23. package/lib/commonjs/anchors/fiber/indexHostFibers.js +4 -3
  24. package/lib/commonjs/anchors/fiber/indexHostFibers.js.map +1 -1
  25. package/lib/commonjs/anchors/fiber/resolveFiberPath.js +30 -15
  26. package/lib/commonjs/anchors/fiber/resolveFiberPath.js.map +1 -1
  27. package/lib/commonjs/anchors/fiberAnchorCache.js +20 -0
  28. package/lib/commonjs/anchors/fiberAnchorCache.js.map +1 -1
  29. package/lib/commonjs/anchors/gestureHandlerHandoff.js +304 -0
  30. package/lib/commonjs/anchors/gestureHandlerHandoff.js.map +1 -0
  31. package/lib/commonjs/anchors/resolveAnchorHost.js +6 -0
  32. package/lib/commonjs/anchors/resolveAnchorHost.js.map +1 -1
  33. package/lib/commonjs/anchors/resolveAutoAnchorHost.js +11 -6
  34. package/lib/commonjs/anchors/resolveAutoAnchorHost.js.map +1 -1
  35. package/lib/commonjs/anchors/resolveElementTargets.js +63 -8
  36. package/lib/commonjs/anchors/resolveElementTargets.js.map +1 -1
  37. package/lib/commonjs/anchors/semanticMatcher.js +43 -21
  38. package/lib/commonjs/anchors/semanticMatcher.js.map +1 -1
  39. package/lib/commonjs/anchors/tapSlop.js +16 -0
  40. package/lib/commonjs/anchors/tapSlop.js.map +1 -0
  41. package/lib/commonjs/anchors/targetPressMonitor.js +66 -12
  42. package/lib/commonjs/anchors/targetPressMonitor.js.map +1 -1
  43. package/lib/commonjs/authoring/fingerprintFromInstance.js +5 -9
  44. package/lib/commonjs/authoring/fingerprintFromInstance.js.map +1 -1
  45. package/lib/commonjs/content/RichContentRenderer.js +3 -3
  46. package/lib/commonjs/content/RichContentRenderer.js.map +1 -1
  47. package/lib/commonjs/content/openSafeUrl.js +3 -1
  48. package/lib/commonjs/content/openSafeUrl.js.map +1 -1
  49. package/lib/commonjs/expo-router/useUserflowExpoRouter.js +6 -0
  50. package/lib/commonjs/expo-router/useUserflowExpoRouter.js.map +1 -1
  51. package/lib/commonjs/index.js +19 -5
  52. package/lib/commonjs/index.js.map +1 -1
  53. package/lib/commonjs/installCheck.js +2 -2
  54. package/lib/commonjs/installCheck.js.map +1 -1
  55. package/lib/commonjs/navigation/navigateUrlUtils.js +105 -0
  56. package/lib/commonjs/navigation/navigateUrlUtils.js.map +1 -0
  57. package/lib/commonjs/navigation/openExternalNavigateUrl.js +14 -0
  58. package/lib/commonjs/navigation/openExternalNavigateUrl.js.map +1 -0
  59. package/lib/commonjs/navigation/openFlowNavigateUrl.js +47 -41
  60. package/lib/commonjs/navigation/openFlowNavigateUrl.js.map +1 -1
  61. package/lib/commonjs/pairing/PairingController.js +3 -1
  62. package/lib/commonjs/pairing/PairingController.js.map +1 -1
  63. package/lib/commonjs/runtime/BannerHost.js +38 -29
  64. package/lib/commonjs/runtime/BannerHost.js.map +1 -1
  65. package/lib/commonjs/runtime/TargetPressBridge.js +55 -7
  66. package/lib/commonjs/runtime/TargetPressBridge.js.map +1 -1
  67. package/lib/commonjs/runtime/UserflowOverlay.js +5 -11
  68. package/lib/commonjs/runtime/UserflowOverlay.js.map +1 -1
  69. package/lib/commonjs/runtime/UserflowProvider.js +66 -40
  70. package/lib/commonjs/runtime/UserflowProvider.js.map +1 -1
  71. package/lib/commonjs/runtime/bannerEngine.js +8 -2
  72. package/lib/commonjs/runtime/bannerEngine.js.map +1 -1
  73. package/lib/commonjs/runtime/bannerFlowSpacer.js +71 -0
  74. package/lib/commonjs/runtime/bannerFlowSpacer.js.map +1 -0
  75. package/lib/commonjs/runtime/flowEngine.js +11 -0
  76. package/lib/commonjs/runtime/flowEngine.js.map +1 -1
  77. package/lib/commonjs/runtime/previewStart.js +39 -0
  78. package/lib/commonjs/runtime/previewStart.js.map +1 -0
  79. package/lib/commonjs/runtime/pushBannerLayoutContext.js +98 -0
  80. package/lib/commonjs/runtime/pushBannerLayoutContext.js.map +1 -0
  81. package/lib/commonjs/screenTracker.js +12 -0
  82. package/lib/commonjs/screenTracker.js.map +1 -1
  83. package/lib/commonjs/surfaces/BannerBar.js +79 -61
  84. package/lib/commonjs/surfaces/BannerBar.js.map +1 -1
  85. package/lib/commonjs/surfaces/BannerSurface.js +26 -0
  86. package/lib/commonjs/surfaces/BannerSurface.js.map +1 -1
  87. package/lib/commonjs/surfaces/TooltipSurface.js +43 -41
  88. package/lib/commonjs/surfaces/TooltipSurface.js.map +1 -1
  89. package/lib/commonjs/surfaces/bannerBarLayout.js +77 -10
  90. package/lib/commonjs/surfaces/bannerBarLayout.js.map +1 -1
  91. package/lib/commonjs/surfaces/bannerWebView/BannerWebViewBar.js +112 -63
  92. package/lib/commonjs/surfaces/bannerWebView/BannerWebViewBar.js.map +1 -1
  93. package/lib/commonjs/surfaces/bannerWebView/buildCustomBannerHtml.js +59 -11
  94. package/lib/commonjs/surfaces/bannerWebView/buildCustomBannerHtml.js.map +1 -1
  95. package/lib/commonjs/surfaces/hostAccessibilityTrap.js +28 -0
  96. package/lib/commonjs/surfaces/hostAccessibilityTrap.js.map +1 -0
  97. package/lib/commonjs/surfaces/resolveBannerTheme.js +6 -3
  98. package/lib/commonjs/surfaces/resolveBannerTheme.js.map +1 -1
  99. package/lib/commonjs/surfaces/tooltip/TooltipBubble.js +3 -2
  100. package/lib/commonjs/surfaces/tooltip/TooltipBubble.js.map +1 -1
  101. package/lib/commonjs/surfaces/tooltip/targetSearchSchedule.js +134 -0
  102. package/lib/commonjs/surfaces/tooltip/targetSearchSchedule.js.map +1 -0
  103. package/lib/commonjs/version.js +1 -1
  104. package/lib/module/anchors/AutoAnchorRegistry.js +145 -35
  105. package/lib/module/anchors/AutoAnchorRegistry.js.map +1 -1
  106. package/lib/module/anchors/animationFrame.js +29 -2
  107. package/lib/module/anchors/animationFrame.js.map +1 -1
  108. package/lib/module/anchors/appActive.js +57 -0
  109. package/lib/module/anchors/appActive.js.map +1 -0
  110. package/lib/module/anchors/elementConditionEvaluator.js +26 -9
  111. package/lib/module/anchors/elementConditionEvaluator.js.map +1 -1
  112. package/lib/module/anchors/elementTapMonitor.js +67 -12
  113. package/lib/module/anchors/elementTapMonitor.js.map +1 -1
  114. package/lib/module/anchors/elementTargetMatch.js +32 -7
  115. package/lib/module/anchors/elementTargetMatch.js.map +1 -1
  116. package/lib/module/anchors/fiber/fiberInternals.js +65 -0
  117. package/lib/module/anchors/fiber/fiberInternals.js.map +1 -1
  118. package/lib/module/anchors/fiber/indexHostFibers.js +4 -3
  119. package/lib/module/anchors/fiber/indexHostFibers.js.map +1 -1
  120. package/lib/module/anchors/fiber/resolveFiberPath.js +30 -15
  121. package/lib/module/anchors/fiber/resolveFiberPath.js.map +1 -1
  122. package/lib/module/anchors/fiberAnchorCache.js +19 -0
  123. package/lib/module/anchors/fiberAnchorCache.js.map +1 -1
  124. package/lib/module/anchors/gestureHandlerHandoff.js +298 -0
  125. package/lib/module/anchors/gestureHandlerHandoff.js.map +1 -0
  126. package/lib/module/anchors/resolveAnchorHost.js +1 -0
  127. package/lib/module/anchors/resolveAnchorHost.js.map +1 -1
  128. package/lib/module/anchors/resolveAutoAnchorHost.js +11 -6
  129. package/lib/module/anchors/resolveAutoAnchorHost.js.map +1 -1
  130. package/lib/module/anchors/resolveElementTargets.js +63 -8
  131. package/lib/module/anchors/resolveElementTargets.js.map +1 -1
  132. package/lib/module/anchors/semanticMatcher.js +43 -21
  133. package/lib/module/anchors/semanticMatcher.js.map +1 -1
  134. package/lib/module/anchors/tapSlop.js +11 -0
  135. package/lib/module/anchors/tapSlop.js.map +1 -0
  136. package/lib/module/anchors/targetPressMonitor.js +53 -8
  137. package/lib/module/anchors/targetPressMonitor.js.map +1 -1
  138. package/lib/module/authoring/fingerprintFromInstance.js +6 -10
  139. package/lib/module/authoring/fingerprintFromInstance.js.map +1 -1
  140. package/lib/module/content/RichContentRenderer.js +3 -3
  141. package/lib/module/content/RichContentRenderer.js.map +1 -1
  142. package/lib/module/content/openSafeUrl.js +3 -1
  143. package/lib/module/content/openSafeUrl.js.map +1 -1
  144. package/lib/module/expo-router/useUserflowExpoRouter.js +7 -1
  145. package/lib/module/expo-router/useUserflowExpoRouter.js.map +1 -1
  146. package/lib/module/index.js +22 -7
  147. package/lib/module/index.js.map +1 -1
  148. package/lib/module/installCheck.js +2 -2
  149. package/lib/module/installCheck.js.map +1 -1
  150. package/lib/module/navigation/navigateUrlUtils.js +94 -0
  151. package/lib/module/navigation/navigateUrlUtils.js.map +1 -0
  152. package/lib/module/navigation/openExternalNavigateUrl.js +11 -0
  153. package/lib/module/navigation/openExternalNavigateUrl.js.map +1 -0
  154. package/lib/module/navigation/openFlowNavigateUrl.js +22 -36
  155. package/lib/module/navigation/openFlowNavigateUrl.js.map +1 -1
  156. package/lib/module/pairing/PairingController.js +3 -1
  157. package/lib/module/pairing/PairingController.js.map +1 -1
  158. package/lib/module/runtime/BannerHost.js +38 -29
  159. package/lib/module/runtime/BannerHost.js.map +1 -1
  160. package/lib/module/runtime/TargetPressBridge.js +56 -8
  161. package/lib/module/runtime/TargetPressBridge.js.map +1 -1
  162. package/lib/module/runtime/UserflowOverlay.js +5 -11
  163. package/lib/module/runtime/UserflowOverlay.js.map +1 -1
  164. package/lib/module/runtime/UserflowProvider.js +66 -40
  165. package/lib/module/runtime/UserflowProvider.js.map +1 -1
  166. package/lib/module/runtime/bannerEngine.js +7 -2
  167. package/lib/module/runtime/bannerEngine.js.map +1 -1
  168. package/lib/module/runtime/bannerFlowSpacer.js +65 -0
  169. package/lib/module/runtime/bannerFlowSpacer.js.map +1 -0
  170. package/lib/module/runtime/flowEngine.js +11 -0
  171. package/lib/module/runtime/flowEngine.js.map +1 -1
  172. package/lib/module/runtime/previewStart.js +35 -0
  173. package/lib/module/runtime/previewStart.js.map +1 -0
  174. package/lib/module/runtime/pushBannerLayoutContext.js +91 -0
  175. package/lib/module/runtime/pushBannerLayoutContext.js.map +1 -0
  176. package/lib/module/screenTracker.js +11 -0
  177. package/lib/module/screenTracker.js.map +1 -1
  178. package/lib/module/surfaces/BannerBar.js +80 -62
  179. package/lib/module/surfaces/BannerBar.js.map +1 -1
  180. package/lib/module/surfaces/BannerSurface.js +26 -0
  181. package/lib/module/surfaces/BannerSurface.js.map +1 -1
  182. package/lib/module/surfaces/TooltipSurface.js +44 -42
  183. package/lib/module/surfaces/TooltipSurface.js.map +1 -1
  184. package/lib/module/surfaces/bannerBarLayout.js +72 -11
  185. package/lib/module/surfaces/bannerBarLayout.js.map +1 -1
  186. package/lib/module/surfaces/bannerWebView/BannerWebViewBar.js +113 -64
  187. package/lib/module/surfaces/bannerWebView/BannerWebViewBar.js.map +1 -1
  188. package/lib/module/surfaces/bannerWebView/buildCustomBannerHtml.js +59 -11
  189. package/lib/module/surfaces/bannerWebView/buildCustomBannerHtml.js.map +1 -1
  190. package/lib/module/surfaces/hostAccessibilityTrap.js +24 -0
  191. package/lib/module/surfaces/hostAccessibilityTrap.js.map +1 -0
  192. package/lib/module/surfaces/resolveBannerTheme.js +6 -3
  193. package/lib/module/surfaces/resolveBannerTheme.js.map +1 -1
  194. package/lib/module/surfaces/tooltip/TooltipBubble.js +3 -2
  195. package/lib/module/surfaces/tooltip/TooltipBubble.js.map +1 -1
  196. package/lib/module/surfaces/tooltip/targetSearchSchedule.js +128 -0
  197. package/lib/module/surfaces/tooltip/targetSearchSchedule.js.map +1 -0
  198. package/lib/module/version.js +1 -1
  199. package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts +36 -2
  200. package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts.map +1 -1
  201. package/lib/typescript/commonjs/src/anchors/animationFrame.d.ts +0 -4
  202. package/lib/typescript/commonjs/src/anchors/animationFrame.d.ts.map +1 -1
  203. package/lib/typescript/commonjs/src/anchors/appActive.d.ts +8 -0
  204. package/lib/typescript/commonjs/src/anchors/appActive.d.ts.map +1 -0
  205. package/lib/typescript/commonjs/src/anchors/elementTapMonitor.d.ts +17 -0
  206. package/lib/typescript/commonjs/src/anchors/elementTapMonitor.d.ts.map +1 -1
  207. package/lib/typescript/commonjs/src/anchors/elementTargetMatch.d.ts +7 -0
  208. package/lib/typescript/commonjs/src/anchors/elementTargetMatch.d.ts.map +1 -1
  209. package/lib/typescript/commonjs/src/anchors/fiber/fiberInternals.d.ts +7 -0
  210. package/lib/typescript/commonjs/src/anchors/fiber/fiberInternals.d.ts.map +1 -1
  211. package/lib/typescript/commonjs/src/anchors/fiber/indexHostFibers.d.ts +3 -2
  212. package/lib/typescript/commonjs/src/anchors/fiber/indexHostFibers.d.ts.map +1 -1
  213. package/lib/typescript/commonjs/src/anchors/fiber/resolveFiberPath.d.ts +3 -0
  214. package/lib/typescript/commonjs/src/anchors/fiber/resolveFiberPath.d.ts.map +1 -1
  215. package/lib/typescript/commonjs/src/anchors/fiberAnchorCache.d.ts +5 -0
  216. package/lib/typescript/commonjs/src/anchors/fiberAnchorCache.d.ts.map +1 -1
  217. package/lib/typescript/commonjs/src/anchors/gestureHandlerHandoff.d.ts +70 -0
  218. package/lib/typescript/commonjs/src/anchors/gestureHandlerHandoff.d.ts.map +1 -0
  219. package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts +1 -0
  220. package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/src/anchors/resolveAutoAnchorHost.d.ts +11 -4
  222. package/lib/typescript/commonjs/src/anchors/resolveAutoAnchorHost.d.ts.map +1 -1
  223. package/lib/typescript/commonjs/src/anchors/resolveElementTargets.d.ts.map +1 -1
  224. package/lib/typescript/commonjs/src/anchors/semanticMatcher.d.ts +2 -0
  225. package/lib/typescript/commonjs/src/anchors/semanticMatcher.d.ts.map +1 -1
  226. package/lib/typescript/commonjs/src/anchors/tapSlop.d.ts +9 -0
  227. package/lib/typescript/commonjs/src/anchors/tapSlop.d.ts.map +1 -0
  228. package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts +13 -8
  229. package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts.map +1 -1
  230. package/lib/typescript/commonjs/src/authoring/fingerprintFromInstance.d.ts.map +1 -1
  231. package/lib/typescript/commonjs/src/content/RichContentRenderer.d.ts.map +1 -1
  232. package/lib/typescript/commonjs/src/content/openSafeUrl.d.ts.map +1 -1
  233. package/lib/typescript/commonjs/src/expo-router/useUserflowExpoRouter.d.ts.map +1 -1
  234. package/lib/typescript/commonjs/src/index.d.ts +6 -5
  235. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  236. package/lib/typescript/commonjs/src/installCheck.d.ts +1 -1
  237. package/lib/typescript/commonjs/src/installCheck.d.ts.map +1 -1
  238. package/lib/typescript/commonjs/src/navigation/navigateUrlUtils.d.ts +15 -0
  239. package/lib/typescript/commonjs/src/navigation/navigateUrlUtils.d.ts.map +1 -0
  240. package/lib/typescript/commonjs/src/navigation/openExternalNavigateUrl.d.ts +3 -0
  241. package/lib/typescript/commonjs/src/navigation/openExternalNavigateUrl.d.ts.map +1 -0
  242. package/lib/typescript/commonjs/src/navigation/openFlowNavigateUrl.d.ts +2 -5
  243. package/lib/typescript/commonjs/src/navigation/openFlowNavigateUrl.d.ts.map +1 -1
  244. package/lib/typescript/commonjs/src/pairing/PairingController.d.ts +6 -0
  245. package/lib/typescript/commonjs/src/pairing/PairingController.d.ts.map +1 -1
  246. package/lib/typescript/commonjs/src/runtime/BannerHost.d.ts.map +1 -1
  247. package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts +3 -0
  248. package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts.map +1 -1
  249. package/lib/typescript/commonjs/src/runtime/UserflowOverlay.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/src/runtime/UserflowProvider.d.ts.map +1 -1
  251. package/lib/typescript/commonjs/src/runtime/bannerEngine.d.ts +5 -1
  252. package/lib/typescript/commonjs/src/runtime/bannerEngine.d.ts.map +1 -1
  253. package/lib/typescript/commonjs/src/runtime/bannerFlowSpacer.d.ts +15 -0
  254. package/lib/typescript/commonjs/src/runtime/bannerFlowSpacer.d.ts.map +1 -0
  255. package/lib/typescript/commonjs/src/runtime/flowEngine.d.ts.map +1 -1
  256. package/lib/typescript/commonjs/src/runtime/previewStart.d.ts +13 -0
  257. package/lib/typescript/commonjs/src/runtime/previewStart.d.ts.map +1 -0
  258. package/lib/typescript/commonjs/src/runtime/pushBannerLayoutContext.d.ts +17 -0
  259. package/lib/typescript/commonjs/src/runtime/pushBannerLayoutContext.d.ts.map +1 -0
  260. package/lib/typescript/commonjs/src/screenTracker.d.ts +6 -0
  261. package/lib/typescript/commonjs/src/screenTracker.d.ts.map +1 -1
  262. package/lib/typescript/commonjs/src/surfaces/BannerBar.d.ts +3 -1
  263. package/lib/typescript/commonjs/src/surfaces/BannerBar.d.ts.map +1 -1
  264. package/lib/typescript/commonjs/src/surfaces/BannerSurface.d.ts +5 -1
  265. package/lib/typescript/commonjs/src/surfaces/BannerSurface.d.ts.map +1 -1
  266. package/lib/typescript/commonjs/src/surfaces/TooltipSurface.d.ts +1 -1
  267. package/lib/typescript/commonjs/src/surfaces/TooltipSurface.d.ts.map +1 -1
  268. package/lib/typescript/commonjs/src/surfaces/bannerBarLayout.d.ts +17 -0
  269. package/lib/typescript/commonjs/src/surfaces/bannerBarLayout.d.ts.map +1 -1
  270. package/lib/typescript/commonjs/src/surfaces/bannerWebView/BannerWebViewBar.d.ts +3 -1
  271. package/lib/typescript/commonjs/src/surfaces/bannerWebView/BannerWebViewBar.d.ts.map +1 -1
  272. package/lib/typescript/commonjs/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts.map +1 -1
  273. package/lib/typescript/commonjs/src/surfaces/hostAccessibilityTrap.d.ts +14 -0
  274. package/lib/typescript/commonjs/src/surfaces/hostAccessibilityTrap.d.ts.map +1 -0
  275. package/lib/typescript/commonjs/src/surfaces/resolveBannerTheme.d.ts +4 -1
  276. package/lib/typescript/commonjs/src/surfaces/resolveBannerTheme.d.ts.map +1 -1
  277. package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipBubble.d.ts +7 -1
  278. package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipBubble.d.ts.map +1 -1
  279. package/lib/typescript/commonjs/src/surfaces/tooltip/targetSearchSchedule.d.ts +60 -0
  280. package/lib/typescript/commonjs/src/surfaces/tooltip/targetSearchSchedule.d.ts.map +1 -0
  281. package/lib/typescript/commonjs/src/version.d.ts +1 -1
  282. package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts +36 -2
  283. package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts.map +1 -1
  284. package/lib/typescript/module/src/anchors/animationFrame.d.ts +0 -4
  285. package/lib/typescript/module/src/anchors/animationFrame.d.ts.map +1 -1
  286. package/lib/typescript/module/src/anchors/appActive.d.ts +8 -0
  287. package/lib/typescript/module/src/anchors/appActive.d.ts.map +1 -0
  288. package/lib/typescript/module/src/anchors/elementTapMonitor.d.ts +17 -0
  289. package/lib/typescript/module/src/anchors/elementTapMonitor.d.ts.map +1 -1
  290. package/lib/typescript/module/src/anchors/elementTargetMatch.d.ts +7 -0
  291. package/lib/typescript/module/src/anchors/elementTargetMatch.d.ts.map +1 -1
  292. package/lib/typescript/module/src/anchors/fiber/fiberInternals.d.ts +7 -0
  293. package/lib/typescript/module/src/anchors/fiber/fiberInternals.d.ts.map +1 -1
  294. package/lib/typescript/module/src/anchors/fiber/indexHostFibers.d.ts +3 -2
  295. package/lib/typescript/module/src/anchors/fiber/indexHostFibers.d.ts.map +1 -1
  296. package/lib/typescript/module/src/anchors/fiber/resolveFiberPath.d.ts +3 -0
  297. package/lib/typescript/module/src/anchors/fiber/resolveFiberPath.d.ts.map +1 -1
  298. package/lib/typescript/module/src/anchors/fiberAnchorCache.d.ts +5 -0
  299. package/lib/typescript/module/src/anchors/fiberAnchorCache.d.ts.map +1 -1
  300. package/lib/typescript/module/src/anchors/gestureHandlerHandoff.d.ts +70 -0
  301. package/lib/typescript/module/src/anchors/gestureHandlerHandoff.d.ts.map +1 -0
  302. package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts +1 -0
  303. package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts.map +1 -1
  304. package/lib/typescript/module/src/anchors/resolveAutoAnchorHost.d.ts +11 -4
  305. package/lib/typescript/module/src/anchors/resolveAutoAnchorHost.d.ts.map +1 -1
  306. package/lib/typescript/module/src/anchors/resolveElementTargets.d.ts.map +1 -1
  307. package/lib/typescript/module/src/anchors/semanticMatcher.d.ts +2 -0
  308. package/lib/typescript/module/src/anchors/semanticMatcher.d.ts.map +1 -1
  309. package/lib/typescript/module/src/anchors/tapSlop.d.ts +9 -0
  310. package/lib/typescript/module/src/anchors/tapSlop.d.ts.map +1 -0
  311. package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts +13 -8
  312. package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts.map +1 -1
  313. package/lib/typescript/module/src/authoring/fingerprintFromInstance.d.ts.map +1 -1
  314. package/lib/typescript/module/src/content/RichContentRenderer.d.ts.map +1 -1
  315. package/lib/typescript/module/src/content/openSafeUrl.d.ts.map +1 -1
  316. package/lib/typescript/module/src/expo-router/useUserflowExpoRouter.d.ts.map +1 -1
  317. package/lib/typescript/module/src/index.d.ts +6 -5
  318. package/lib/typescript/module/src/index.d.ts.map +1 -1
  319. package/lib/typescript/module/src/installCheck.d.ts +1 -1
  320. package/lib/typescript/module/src/installCheck.d.ts.map +1 -1
  321. package/lib/typescript/module/src/navigation/navigateUrlUtils.d.ts +15 -0
  322. package/lib/typescript/module/src/navigation/navigateUrlUtils.d.ts.map +1 -0
  323. package/lib/typescript/module/src/navigation/openExternalNavigateUrl.d.ts +3 -0
  324. package/lib/typescript/module/src/navigation/openExternalNavigateUrl.d.ts.map +1 -0
  325. package/lib/typescript/module/src/navigation/openFlowNavigateUrl.d.ts +2 -5
  326. package/lib/typescript/module/src/navigation/openFlowNavigateUrl.d.ts.map +1 -1
  327. package/lib/typescript/module/src/pairing/PairingController.d.ts +6 -0
  328. package/lib/typescript/module/src/pairing/PairingController.d.ts.map +1 -1
  329. package/lib/typescript/module/src/runtime/BannerHost.d.ts.map +1 -1
  330. package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts +3 -0
  331. package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts.map +1 -1
  332. package/lib/typescript/module/src/runtime/UserflowOverlay.d.ts.map +1 -1
  333. package/lib/typescript/module/src/runtime/UserflowProvider.d.ts.map +1 -1
  334. package/lib/typescript/module/src/runtime/bannerEngine.d.ts +5 -1
  335. package/lib/typescript/module/src/runtime/bannerEngine.d.ts.map +1 -1
  336. package/lib/typescript/module/src/runtime/bannerFlowSpacer.d.ts +15 -0
  337. package/lib/typescript/module/src/runtime/bannerFlowSpacer.d.ts.map +1 -0
  338. package/lib/typescript/module/src/runtime/flowEngine.d.ts.map +1 -1
  339. package/lib/typescript/module/src/runtime/previewStart.d.ts +13 -0
  340. package/lib/typescript/module/src/runtime/previewStart.d.ts.map +1 -0
  341. package/lib/typescript/module/src/runtime/pushBannerLayoutContext.d.ts +17 -0
  342. package/lib/typescript/module/src/runtime/pushBannerLayoutContext.d.ts.map +1 -0
  343. package/lib/typescript/module/src/screenTracker.d.ts +6 -0
  344. package/lib/typescript/module/src/screenTracker.d.ts.map +1 -1
  345. package/lib/typescript/module/src/surfaces/BannerBar.d.ts +3 -1
  346. package/lib/typescript/module/src/surfaces/BannerBar.d.ts.map +1 -1
  347. package/lib/typescript/module/src/surfaces/BannerSurface.d.ts +5 -1
  348. package/lib/typescript/module/src/surfaces/BannerSurface.d.ts.map +1 -1
  349. package/lib/typescript/module/src/surfaces/TooltipSurface.d.ts +1 -1
  350. package/lib/typescript/module/src/surfaces/TooltipSurface.d.ts.map +1 -1
  351. package/lib/typescript/module/src/surfaces/bannerBarLayout.d.ts +17 -0
  352. package/lib/typescript/module/src/surfaces/bannerBarLayout.d.ts.map +1 -1
  353. package/lib/typescript/module/src/surfaces/bannerWebView/BannerWebViewBar.d.ts +3 -1
  354. package/lib/typescript/module/src/surfaces/bannerWebView/BannerWebViewBar.d.ts.map +1 -1
  355. package/lib/typescript/module/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts.map +1 -1
  356. package/lib/typescript/module/src/surfaces/hostAccessibilityTrap.d.ts +14 -0
  357. package/lib/typescript/module/src/surfaces/hostAccessibilityTrap.d.ts.map +1 -0
  358. package/lib/typescript/module/src/surfaces/resolveBannerTheme.d.ts +4 -1
  359. package/lib/typescript/module/src/surfaces/resolveBannerTheme.d.ts.map +1 -1
  360. package/lib/typescript/module/src/surfaces/tooltip/TooltipBubble.d.ts +7 -1
  361. package/lib/typescript/module/src/surfaces/tooltip/TooltipBubble.d.ts.map +1 -1
  362. package/lib/typescript/module/src/surfaces/tooltip/targetSearchSchedule.d.ts +60 -0
  363. package/lib/typescript/module/src/surfaces/tooltip/targetSearchSchedule.d.ts.map +1 -0
  364. package/lib/typescript/module/src/version.d.ts +1 -1
  365. package/package.json +1 -1
  366. package/src/anchors/AutoAnchorRegistry.ts +166 -35
  367. package/src/anchors/animationFrame.ts +31 -1
  368. package/src/anchors/appActive.ts +63 -0
  369. package/src/anchors/elementConditionEvaluator.ts +29 -12
  370. package/src/anchors/elementTapMonitor.ts +68 -10
  371. package/src/anchors/elementTargetMatch.ts +34 -7
  372. package/src/anchors/fiber/fiberInternals.ts +68 -0
  373. package/src/anchors/fiber/indexHostFibers.ts +8 -3
  374. package/src/anchors/fiber/resolveFiberPath.ts +25 -16
  375. package/src/anchors/fiberAnchorCache.ts +19 -0
  376. package/src/anchors/gestureHandlerHandoff.ts +356 -0
  377. package/src/anchors/resolveAnchorHost.ts +2 -0
  378. package/src/anchors/resolveAutoAnchorHost.ts +18 -8
  379. package/src/anchors/resolveElementTargets.ts +64 -7
  380. package/src/anchors/semanticMatcher.ts +48 -27
  381. package/src/anchors/tapSlop.ts +18 -0
  382. package/src/anchors/targetPressMonitor.ts +56 -19
  383. package/src/authoring/fingerprintFromInstance.ts +4 -5
  384. package/src/content/RichContentRenderer.tsx +4 -3
  385. package/src/content/openSafeUrl.ts +3 -1
  386. package/src/expo-router/useUserflowExpoRouter.ts +10 -1
  387. package/src/index.ts +20 -9
  388. package/src/installCheck.ts +4 -4
  389. package/src/navigation/navigateUrlUtils.ts +100 -0
  390. package/src/navigation/openExternalNavigateUrl.ts +9 -0
  391. package/src/navigation/openFlowNavigateUrl.ts +36 -36
  392. package/src/pairing/PairingController.ts +9 -1
  393. package/src/runtime/BannerHost.tsx +41 -23
  394. package/src/runtime/TargetPressBridge.tsx +66 -9
  395. package/src/runtime/UserflowOverlay.tsx +7 -9
  396. package/src/runtime/UserflowProvider.tsx +56 -32
  397. package/src/runtime/bannerEngine.ts +10 -2
  398. package/src/runtime/bannerFlowSpacer.tsx +70 -0
  399. package/src/runtime/flowEngine.ts +11 -0
  400. package/src/runtime/previewStart.ts +49 -0
  401. package/src/runtime/pushBannerLayoutContext.tsx +121 -0
  402. package/src/screenTracker.ts +11 -0
  403. package/src/surfaces/BannerBar.tsx +93 -55
  404. package/src/surfaces/BannerSurface.tsx +59 -3
  405. package/src/surfaces/TooltipSurface.tsx +63 -51
  406. package/src/surfaces/bannerBarLayout.ts +80 -7
  407. package/src/surfaces/bannerWebView/BannerWebViewBar.tsx +149 -57
  408. package/src/surfaces/bannerWebView/buildCustomBannerHtml.ts +63 -11
  409. package/src/surfaces/hostAccessibilityTrap.ts +25 -0
  410. package/src/surfaces/resolveBannerTheme.ts +14 -3
  411. package/src/surfaces/tooltip/TooltipBubble.tsx +8 -1
  412. package/src/surfaces/tooltip/targetSearchSchedule.ts +140 -0
  413. package/src/version.ts +1 -1
  414. package/vendor/core/dist/engine/BannerSessionEngine.d.ts +29 -2
  415. package/vendor/core/dist/engine/BannerSessionEngine.d.ts.map +1 -1
  416. package/vendor/core/dist/engine/BannerSessionEngine.js +87 -6
  417. package/vendor/core/dist/engine/BannerSessionEngine.js.map +1 -1
  418. package/vendor/core/dist/engine/ClientConditionEngine.d.ts.map +1 -1
  419. package/vendor/core/dist/engine/ClientConditionEngine.js +30 -7
  420. package/vendor/core/dist/engine/ClientConditionEngine.js.map +1 -1
  421. package/vendor/core/dist/engine/PairingEngine.d.ts +6 -1
  422. package/vendor/core/dist/engine/PairingEngine.d.ts.map +1 -1
  423. package/vendor/core/dist/engine/PairingEngine.js +23 -3
  424. package/vendor/core/dist/engine/PairingEngine.js.map +1 -1
  425. package/vendor/core/dist/engine/handleActions.d.ts.map +1 -1
  426. package/vendor/core/dist/engine/handleActions.js +67 -2
  427. package/vendor/core/dist/engine/handleActions.js.map +1 -1
  428. package/vendor/core/dist/version.d.ts +1 -1
  429. package/vendor/core/dist/version.js +1 -1
  430. package/vendor/core/package.json +1 -1
  431. package/vendor/protocol/package.json +1 -1
@@ -21,7 +21,9 @@ function isSafeUrl(url) {
21
21
  const parsed = new URL(trimmed);
22
22
  return ALLOWED_PROTOCOLS.has(parsed.protocol);
23
23
  } catch {
24
- return false;
24
+ // Hermes / older runtimes can lack a full URL implementation; still allow
25
+ // obvious http(s) strings so NAVIGATE does not fall through to Expo Router.
26
+ return /^https?:\/\//i.test(trimmed);
25
27
  }
26
28
  }
27
29
 
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","ALLOWED_PROTOCOLS","Set","isSafeUrl","url","trimmed","trim","parsed","URL","has","protocol","openSafeUrl","Linking","openURL"],"sourceRoot":"../../../src","sources":["content/openSafeUrl.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;;AAEzE;AACA;AACA;AACA;AACA;AACO,SAASC,SAASA,CAACC,GAA8B,EAAW;EACjE,IAAI,CAACA,GAAG,EAAE,OAAO,KAAK;EACtB,MAAMC,OAAO,GAAGD,GAAG,CAACE,IAAI,CAAC,CAAC;EAC1B,IAAI,CAACD,OAAO,EAAE,OAAO,KAAK;EAC1B,IAAI;IACF,MAAME,MAAM,GAAG,IAAIC,GAAG,CAACH,OAAO,CAAC;IAC/B,OAAOJ,iBAAiB,CAACQ,GAAG,CAACF,MAAM,CAACG,QAAQ,CAAC;EAC/C,CAAC,CAAC,MAAM;IACN,OAAO,KAAK;EACd;AACF;;AAEA;AACA;AACA;AACA;AACO,eAAeC,WAAWA,CAACP,GAA8B,EAAoB;EAClF,IAAI,CAACD,SAAS,CAACC,GAAG,CAAC,IAAI,CAACA,GAAG,EAAE,OAAO,KAAK;EACzC,MAAMQ,oBAAO,CAACC,OAAO,CAACT,GAAG,CAACE,IAAI,CAAC,CAAC,CAAC;EACjC,OAAO,IAAI;AACb","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","ALLOWED_PROTOCOLS","Set","isSafeUrl","url","trimmed","trim","parsed","URL","has","protocol","test","openSafeUrl","Linking","openURL"],"sourceRoot":"../../../src","sources":["content/openSafeUrl.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;;AAEzE;AACA;AACA;AACA;AACA;AACO,SAASC,SAASA,CAACC,GAA8B,EAAW;EACjE,IAAI,CAACA,GAAG,EAAE,OAAO,KAAK;EACtB,MAAMC,OAAO,GAAGD,GAAG,CAACE,IAAI,CAAC,CAAC;EAC1B,IAAI,CAACD,OAAO,EAAE,OAAO,KAAK;EAC1B,IAAI;IACF,MAAME,MAAM,GAAG,IAAIC,GAAG,CAACH,OAAO,CAAC;IAC/B,OAAOJ,iBAAiB,CAACQ,GAAG,CAACF,MAAM,CAACG,QAAQ,CAAC;EAC/C,CAAC,CAAC,MAAM;IACN;IACA;IACA,OAAO,eAAe,CAACC,IAAI,CAACN,OAAO,CAAC;EACtC;AACF;;AAEA;AACA;AACA;AACA;AACO,eAAeO,WAAWA,CAACR,GAA8B,EAAoB;EAClF,IAAI,CAACD,SAAS,CAACC,GAAG,CAAC,IAAI,CAACA,GAAG,EAAE,OAAO,KAAK;EACzC,MAAMS,oBAAO,CAACC,OAAO,CAACV,GAAG,CAACE,IAAI,CAAC,CAAC,CAAC;EACjC,OAAO,IAAI;AACb","ignoreList":[]}
@@ -7,6 +7,7 @@ exports.useUserflowExpoRouter = useUserflowExpoRouter;
7
7
  var _expoRouter = require("expo-router");
8
8
  var _react = require("react");
9
9
  var _isOverlayPresentation = require("../navigation/isOverlayPresentation.js");
10
+ var _navigateUrlUtils = require("../navigation/navigateUrlUtils.js");
10
11
  var _openFlowNavigateUrl = require("../navigation/openFlowNavigateUrl.js");
11
12
  var _screenTracker = require("../screenTracker.js");
12
13
  /**
@@ -70,6 +71,11 @@ function useUserflowExpoRouter() {
70
71
  (0, _react.useEffect)(() => {
71
72
  (0, _openFlowNavigateUrl.setExpoRouterNavigator)({
72
73
  push: href => {
74
+ const trimmed = String(href).trim();
75
+ if ((0, _navigateUrlUtils.mustNotUseExpoRouterPush)(trimmed) || (0, _navigateUrlUtils.shouldOpenExternalNavigateUrl)(trimmed)) {
76
+ void (0, _openFlowNavigateUrl.openFlowNavigateUrl)(trimmed);
77
+ return;
78
+ }
73
79
  router.push(href);
74
80
  }
75
81
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_expoRouter","require","_react","_isOverlayPresentation","_openFlowNavigateUrl","_screenTracker","useUserflowExpoRouter","pathname","usePathname","router","useRouter","navigationRef","useNavigationContainerRef","overlayWasFocusedRef","useRef","pathnameRef","current","subscribedToStateRef","reportPath","useCallback","isOverlayPresentation","readNavigationPresentation","handleScreenChange","path","undefined","force","useEffect","unsubscribe","subscribeNavigationState","queueMicrotask","setExpoRouterNavigator","push","href"],"sourceRoot":"../../../src","sources":["expo-router/useUserflowExpoRouter.ts"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,sBAAA,GAAAF,OAAA;AAKA,IAAAG,oBAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASK,qBAAqBA,CAAA,EAAS;EAC5C,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B,MAAMC,MAAM,GAAG,IAAAC,qBAAS,EAAC,CAAC;EAC1B;EACA,MAAMC,aAAa,GAAG,IAAAC,qCAAyB,EAAC,CAAC;EACjD,MAAMC,oBAAoB,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EAC1C,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAACP,QAAQ,CAAC;EACpCQ,WAAW,CAACC,OAAO,GAAGT,QAAQ;EAC9B,MAAMU,oBAAoB,GAAG,IAAAH,aAAM,EAAC,KAAK,CAAC;EAE1C,MAAMI,UAAU,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACnC,IAAI,IAAAC,4CAAqB,EAAC,IAAAC,iDAA0B,EAACV,aAAa,CAAC,CAAC,EAAE;MACpEE,oBAAoB,CAACG,OAAO,GAAG,IAAI;MACnC;IACF;IACA,IAAAM,iCAAkB,EAChBP,WAAW,CAACC,OAAO,GAAG;MAAEO,IAAI,EAAER,WAAW,CAACC;IAAQ,CAAC,GAAGQ,SAAS,EAC/DX,oBAAoB,CAACG,OAAO,GAAG;MAAES,KAAK,EAAE;IAAK,CAAC,GAAGD,SACnD,CAAC;IACDX,oBAAoB,CAACG,OAAO,GAAG,KAAK;EACtC,CAAC,EAAE,CAACL,aAAa,CAAC,CAAC;EAEnB,IAAAe,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA;IACA;IACA,IAAI,CAACT,oBAAoB,CAACD,OAAO,EAAE;MACjCE,UAAU,CAAC,CAAC;IACd;EACF,CAAC,EAAE,CAACX,QAAQ,EAAEW,UAAU,CAAC,CAAC;EAE1B,IAAAQ,gBAAS,EAAC,MAAM;IACd,MAAMC,WAAW,GAAG,IAAAC,+CAAwB,EAACjB,aAAa,EAAE,MAAM;MAChEkB,cAAc,CAAC,MAAM;QACnBX,UAAU,CAAC,CAAC;MACd,CAAC,CAAC;IACJ,CAAC,CAAC;IACFD,oBAAoB,CAACD,OAAO,GAAG,OAAOW,WAAW,KAAK,UAAU;IAChE,OAAO,MAAM;MACXV,oBAAoB,CAACD,OAAO,GAAG,KAAK;MACpCW,WAAW,GAAG,CAAC;IACjB,CAAC;EACH,CAAC,EAAE,CAAChB,aAAa,EAAEO,UAAU,CAAC,CAAC;EAE/B,IAAAQ,gBAAS,EAAC,MAAM;IACd,IAAAI,2CAAsB,EAAC;MACrBC,IAAI,EAAGC,IAAI,IAAK;QACdvB,MAAM,CAACsB,IAAI,CAACC,IAAa,CAAC;MAC5B;IACF,CAAC,CAAC;IACF,OAAO,MAAM;MACX,IAAAF,2CAAsB,EAAC,IAAI,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,CAACrB,MAAM,CAAC,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"names":["_expoRouter","require","_react","_isOverlayPresentation","_navigateUrlUtils","_openFlowNavigateUrl","_screenTracker","useUserflowExpoRouter","pathname","usePathname","router","useRouter","navigationRef","useNavigationContainerRef","overlayWasFocusedRef","useRef","pathnameRef","current","subscribedToStateRef","reportPath","useCallback","isOverlayPresentation","readNavigationPresentation","handleScreenChange","path","undefined","force","useEffect","unsubscribe","subscribeNavigationState","queueMicrotask","setExpoRouterNavigator","push","href","trimmed","String","trim","mustNotUseExpoRouterPush","shouldOpenExternalNavigateUrl","openFlowNavigateUrl"],"sourceRoot":"../../../src","sources":["expo-router/useUserflowExpoRouter.ts"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,sBAAA,GAAAF,OAAA;AAKA,IAAAG,iBAAA,GAAAH,OAAA;AAIA,IAAAI,oBAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASM,qBAAqBA,CAAA,EAAS;EAC5C,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B,MAAMC,MAAM,GAAG,IAAAC,qBAAS,EAAC,CAAC;EAC1B;EACA,MAAMC,aAAa,GAAG,IAAAC,qCAAyB,EAAC,CAAC;EACjD,MAAMC,oBAAoB,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EAC1C,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAACP,QAAQ,CAAC;EACpCQ,WAAW,CAACC,OAAO,GAAGT,QAAQ;EAC9B,MAAMU,oBAAoB,GAAG,IAAAH,aAAM,EAAC,KAAK,CAAC;EAE1C,MAAMI,UAAU,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACnC,IAAI,IAAAC,4CAAqB,EAAC,IAAAC,iDAA0B,EAACV,aAAa,CAAC,CAAC,EAAE;MACpEE,oBAAoB,CAACG,OAAO,GAAG,IAAI;MACnC;IACF;IACA,IAAAM,iCAAkB,EAChBP,WAAW,CAACC,OAAO,GAAG;MAAEO,IAAI,EAAER,WAAW,CAACC;IAAQ,CAAC,GAAGQ,SAAS,EAC/DX,oBAAoB,CAACG,OAAO,GAAG;MAAES,KAAK,EAAE;IAAK,CAAC,GAAGD,SACnD,CAAC;IACDX,oBAAoB,CAACG,OAAO,GAAG,KAAK;EACtC,CAAC,EAAE,CAACL,aAAa,CAAC,CAAC;EAEnB,IAAAe,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA;IACA;IACA,IAAI,CAACT,oBAAoB,CAACD,OAAO,EAAE;MACjCE,UAAU,CAAC,CAAC;IACd;EACF,CAAC,EAAE,CAACX,QAAQ,EAAEW,UAAU,CAAC,CAAC;EAE1B,IAAAQ,gBAAS,EAAC,MAAM;IACd,MAAMC,WAAW,GAAG,IAAAC,+CAAwB,EAACjB,aAAa,EAAE,MAAM;MAChEkB,cAAc,CAAC,MAAM;QACnBX,UAAU,CAAC,CAAC;MACd,CAAC,CAAC;IACJ,CAAC,CAAC;IACFD,oBAAoB,CAACD,OAAO,GAAG,OAAOW,WAAW,KAAK,UAAU;IAChE,OAAO,MAAM;MACXV,oBAAoB,CAACD,OAAO,GAAG,KAAK;MACpCW,WAAW,GAAG,CAAC;IACjB,CAAC;EACH,CAAC,EAAE,CAAChB,aAAa,EAAEO,UAAU,CAAC,CAAC;EAE/B,IAAAQ,gBAAS,EAAC,MAAM;IACd,IAAAI,2CAAsB,EAAC;MACrBC,IAAI,EAAGC,IAAI,IAAK;QACd,MAAMC,OAAO,GAAGC,MAAM,CAACF,IAAI,CAAC,CAACG,IAAI,CAAC,CAAC;QACnC,IAAI,IAAAC,0CAAwB,EAACH,OAAO,CAAC,IAAI,IAAAI,+CAA6B,EAACJ,OAAO,CAAC,EAAE;UAC/E,KAAK,IAAAK,wCAAmB,EAACL,OAAO,CAAC;UACjC;QACF;QACAxB,MAAM,CAACsB,IAAI,CAACC,IAAa,CAAC;MAC5B;IACF,CAAC,CAAC;IACF,OAAO,MAAM;MACX,IAAAF,2CAAsB,EAAC,IAAI,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,CAACrB,MAAM,CAAC,CAAC;AACd","ignoreList":[]}
@@ -125,6 +125,7 @@ var _bannerEngine = require("./runtime/bannerEngine.js");
125
125
  var _clientConditions = require("./runtime/clientConditions.js");
126
126
  var _flowEngine = require("./runtime/flowEngine.js");
127
127
  var _isolateCall = require("./runtime/isolateCall.js");
128
+ var _previewStart = require("./runtime/previewStart.js");
128
129
  var _userflowCore = require("./runtime/userflowCore.js");
129
130
  var _screenTracker = require("./screenTracker.js");
130
131
  var _surfaceInteractionConfig = require("./surfaces/surfaceInteractionConfig.js");
@@ -262,6 +263,10 @@ const Userflow = exports.Userflow = {
262
263
  } : {})
263
264
  });
264
265
  (0, _installCheck.warnIfInstallIncomplete)();
266
+ if (__DEV__) {
267
+ // eslint-disable-next-line no-console -- intentional development diagnostic
268
+ console.log(`[Userflow] react-native SDK ${_version.SDK_VERSION} (source)`);
269
+ }
265
270
  (0, _deviceContext.cacheDeviceContextAtInit)();
266
271
  (0, _openFlowNavigateUrl.setHostOnNavigate)(config.onNavigate);
267
272
  lifecycle.start();
@@ -278,6 +283,7 @@ const Userflow = exports.Userflow = {
278
283
  ...(config.pairingEndpoint !== undefined ? {
279
284
  pairingEndpoint: config.pairingEndpoint
280
285
  } : {}),
286
+ prepareForBuilderPreviewStart: () => (0, _previewStart.prepareForBuilderPreviewStart)(core),
281
287
  clearLocalSession: () => {
282
288
  (0, _flowEngine.clearFlowSessionEngineLocalSession)();
283
289
  core.setFlowSessionId(null);
@@ -285,7 +291,7 @@ const Userflow = exports.Userflow = {
285
291
  core.setBannerSessionId(null);
286
292
  _evalJsController.evalJsController.reset();
287
293
  },
288
- endDraftSession: _flowEngine.endDraftFlowSession,
294
+ endDraftSession: _previewStart.endDraftPreviewSessions,
289
295
  cancelPendingDraftEnd: _flowEngine.cancelPendingDraftEnd
290
296
  });
291
297
  pairing.notifyInitStarted();
@@ -317,8 +323,8 @@ const Userflow = exports.Userflow = {
317
323
  return (0, _pairingRuntime.getPairingController)(core).exitPreview();
318
324
  },
319
325
  /**
320
- * Override or clear the host NAVIGATE handler (same as `init({ onNavigate })`).
321
- * Wins over React Navigation / Expo Router / Linking when set.
326
+ * Override or clear the host NAVIGATE handler for flows and banners (same as
327
+ * `init({ onNavigate })`). Wins over React Navigation / Expo Router / Linking.
322
328
  */
323
329
  setOnNavigate(handler) {
324
330
  (0, _openFlowNavigateUrl.setHostOnNavigate)(handler);
@@ -331,7 +337,11 @@ const Userflow = exports.Userflow = {
331
337
  if (previousId != null && previousId !== userId) {
332
338
  (0, _clientConditions.resetClientConditionEngine)();
333
339
  core.setClientConditions([]);
334
- (0, _bannerEngine.clearBannerSessionEngineLocalSession)();
340
+ (0, _flowEngine.clearFlowSessionEngineLocalSession)();
341
+ (0, _bannerEngine.clearBannerSessionEngineLocalSession)({
342
+ rememberDraftForPreviewEnd: false
343
+ });
344
+ core.setFlowSessionId(null);
335
345
  core.setBannerSessionId(null);
336
346
  _evalJsController.evalJsController.reset();
337
347
  await (0, _anonymousId.clearAnonymousId)();
@@ -347,7 +357,11 @@ const Userflow = exports.Userflow = {
347
357
  if (previousId != null && previousId !== anonymousId) {
348
358
  (0, _clientConditions.resetClientConditionEngine)();
349
359
  core.setClientConditions([]);
350
- (0, _bannerEngine.clearBannerSessionEngineLocalSession)();
360
+ (0, _flowEngine.clearFlowSessionEngineLocalSession)();
361
+ (0, _bannerEngine.clearBannerSessionEngineLocalSession)({
362
+ rememberDraftForPreviewEnd: false
363
+ });
364
+ core.setFlowSessionId(null);
351
365
  core.setBannerSessionId(null);
352
366
  _evalJsController.evalJsController.reset();
353
367
  armScreenViewedForNextIdentify();
@@ -1 +1 @@
1
- {"version":3,"names":["_autoAnchor","require","_anchorChangeTicker","_resolveAnchorHost","_scrollConfig","_anonymousId","_deepLinking","_deviceContext","_evalJsBridge","_evalJsController","_hostAppVersion","_installCheck","_lifecycle","_openFlowNavigateUrl","_network","_pairingRuntime","_bannerEngine","_clientConditions","_flowEngine","_isolateCall","_userflowCore","_screenTracker","_surfaceInteractionConfig","_version","_EmbedBannerPlaceholder","_UserflowProvider","_useFlowSessionState","_useUserflowScreen","_useUserflowAnchor","_useUserflowScrollContainer","_index","core","getUserflowCore","lifecycle","LifecycleController","suspend","resume","getFlowSessionEngine","flushPendingSends","getBannerSessionEngine","clearLocalSession","clearFlowSessionEngineLocalSession","clearBannerSessionEngineLocalSession","setFlowSessionId","setBannerSessionId","ensureAlive","hasActiveSession","hasActiveFlowSession","onScreenResume","reportCurrentScreen","network","NetworkController","screenViewedAwaitingIdentify","armScreenViewedForNextIdentify","getCurrentScreenLocation","wireScreenChangeReporter","setScreenChangeReporter","location","isolateSync","reportActivity","screenKey","path","screen","notifyAnchorScreenChange","anchorChangeTicker","notify","identified","getUserId","__DEV__","console","log","isolateAsync","updateScreen","rethrowHostContract","attrs","screenViewedAttributes","SCREEN_VIEWED_EVENT","track","wireDeepLinking","startDeepLinking","isIdentified","startFlowWithToken","token","mergeSystemUserAttributes","attributes","mergeDeviceContextUserAttributes","mergeHostAppVersionUserAttributes","afterIdentify","attachFlowSessionEngine","attachBannerSessionEngine","attachClientConditionEngine","getPairingController","notifyIdentified","flushPendingPreviewToken","Userflow","exports","init","config","warnIfInitOptionsIgnored","cacheHostAppVersionAtInit","appVersion","undefined","appBuild","warnIfInstallIncomplete","cacheDeviceContextAtInit","setHostOnNavigate","onNavigate","start","pairing","installPairingController","pairingEndpoint","evalJsController","reset","endDraftSession","endDraftFlowSession","cancelPendingDraftEnd","notifyInitStarted","then","resolved","commitInitOptions","enableScreenTracking","notifyInitialized","error","releaseFailedInitOptions","notifyInitFailed","handlePairingUrl","url","handleUrl","exitPreview","setOnNavigate","handler","identify","userId","options","previousId","resetClientConditionEngine","setClientConditions","clearAnonymousId","identifyAnonymous","anonymousId","getOrCreateAnonymousId","didHandleURL","group","groupId","updateUser","updateGroup","name","getAttributes","getHostAppVersion","getCachedHostAppVersion","getDeviceContext","getCachedDeviceContext","resetFlowSessionEngine","resetBannerSessionEngine","teardown","stop","disableScreenTracking","stopDeepLinking","screenName","handleScreenChange","setScrollPadding","padding","setScrollPaddingConfig","setCustomScrollIntoView","fn","setCustomScrollIntoViewConfig","setSurfaceInteractionBlocking","enabled","setSurfaceInteractionBlockingConfig","setEvalJsContext","values","setHostContext","logHostAppVersion","logHostAppVersionToConsole","logDeviceContext","logDeviceContextToConsole","setEvalJsBridgeHandlers","membership","openUrl","openFlowNavigateUrl","endFlow","sessionIds","endEvalJsFlowSession","warn","message"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_autoAnchor","require","_anchorChangeTicker","_resolveAnchorHost","_scrollConfig","_anonymousId","_deepLinking","_deviceContext","_evalJsBridge","_evalJsController","_hostAppVersion","_installCheck","_lifecycle","_openFlowNavigateUrl","_network","_pairingRuntime","_bannerEngine","_clientConditions","_flowEngine","_isolateCall","_previewStart","_userflowCore","_screenTracker","_surfaceInteractionConfig","_version","_EmbedBannerPlaceholder","_UserflowProvider","_useFlowSessionState","_useUserflowScreen","_useUserflowAnchor","_useUserflowScrollContainer","_index","core","getUserflowCore","lifecycle","LifecycleController","suspend","resume","getFlowSessionEngine","flushPendingSends","getBannerSessionEngine","clearLocalSession","clearFlowSessionEngineLocalSession","clearBannerSessionEngineLocalSession","setFlowSessionId","setBannerSessionId","ensureAlive","hasActiveSession","hasActiveFlowSession","onScreenResume","reportCurrentScreen","network","NetworkController","screenViewedAwaitingIdentify","armScreenViewedForNextIdentify","getCurrentScreenLocation","wireScreenChangeReporter","setScreenChangeReporter","location","isolateSync","reportActivity","screenKey","path","screen","notifyAnchorScreenChange","anchorChangeTicker","notify","identified","getUserId","__DEV__","console","log","isolateAsync","updateScreen","rethrowHostContract","attrs","screenViewedAttributes","SCREEN_VIEWED_EVENT","track","wireDeepLinking","startDeepLinking","isIdentified","startFlowWithToken","token","mergeSystemUserAttributes","attributes","mergeDeviceContextUserAttributes","mergeHostAppVersionUserAttributes","afterIdentify","attachFlowSessionEngine","attachBannerSessionEngine","attachClientConditionEngine","getPairingController","notifyIdentified","flushPendingPreviewToken","Userflow","exports","init","config","warnIfInitOptionsIgnored","cacheHostAppVersionAtInit","appVersion","undefined","appBuild","warnIfInstallIncomplete","SDK_VERSION","cacheDeviceContextAtInit","setHostOnNavigate","onNavigate","start","pairing","installPairingController","pairingEndpoint","prepareForBuilderPreviewStart","evalJsController","reset","endDraftSession","endDraftPreviewSessions","cancelPendingDraftEnd","notifyInitStarted","then","resolved","commitInitOptions","enableScreenTracking","notifyInitialized","error","releaseFailedInitOptions","notifyInitFailed","handlePairingUrl","url","handleUrl","exitPreview","setOnNavigate","handler","identify","userId","options","previousId","resetClientConditionEngine","setClientConditions","rememberDraftForPreviewEnd","clearAnonymousId","identifyAnonymous","anonymousId","getOrCreateAnonymousId","didHandleURL","group","groupId","updateUser","updateGroup","name","getAttributes","getHostAppVersion","getCachedHostAppVersion","getDeviceContext","getCachedDeviceContext","resetFlowSessionEngine","resetBannerSessionEngine","teardown","stop","disableScreenTracking","stopDeepLinking","screenName","handleScreenChange","setScrollPadding","padding","setScrollPaddingConfig","setCustomScrollIntoView","fn","setCustomScrollIntoViewConfig","setSurfaceInteractionBlocking","enabled","setSurfaceInteractionBlockingConfig","setEvalJsContext","values","setHostContext","logHostAppVersion","logHostAppVersionToConsole","logDeviceContext","logDeviceContextToConsole","setEvalJsBridgeHandlers","membership","openUrl","openFlowNavigateUrl","endFlow","sessionIds","endEvalJsFlowSession","warn","message"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAMA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAL,OAAA;AAMA,IAAAM,cAAA,GAAAN,OAAA;AAOA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAR,OAAA;AACA,IAAAS,eAAA,GAAAT,OAAA;AAOA,IAAAU,aAAA,GAAAV,OAAA;AAMA,IAAAW,UAAA,GAAAX,OAAA;AACA,IAAAY,oBAAA,GAAAZ,OAAA;AAKA,IAAAa,QAAA,GAAAb,OAAA;AACA,IAAAc,eAAA,GAAAd,OAAA;AACA,IAAAe,aAAA,GAAAf,OAAA;AAMA,IAAAgB,iBAAA,GAAAhB,OAAA;AAIA,IAAAiB,WAAA,GAAAjB,OAAA;AASA,IAAAkB,YAAA,GAAAlB,OAAA;AACA,IAAAmB,aAAA,GAAAnB,OAAA;AACA,IAAAoB,aAAA,GAAApB,OAAA;AACA,IAAAqB,cAAA,GAAArB,OAAA;AAUA,IAAAsB,yBAAA,GAAAtB,OAAA;AAEA,IAAAuB,QAAA,GAAAvB,OAAA;AAKA,IAAAwB,uBAAA,GAAAxB,OAAA;AAEA,IAAAyB,iBAAA,GAAAzB,OAAA;AAEA,IAAA0B,oBAAA,GAAA1B,OAAA;AAEA,IAAA2B,kBAAA,GAAA3B,OAAA;AACA,IAAA4B,kBAAA,GAAA5B,OAAA;AAEA,IAAA6B,2BAAA,GAAA7B,OAAA;AAYA,IAAA8B,MAAA,GAAA9B,OAAA;AAhIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAsIA;;AAkCA,MAAM+B,IAAI,GAAG,IAAAC,6BAAe,EAAC,CAAC;AAE9B,MAAMC,SAAS,GAAG,IAAIC,8BAAmB,CAAC;EACxCC,OAAO,EAAEA,CAAA,KAAMJ,IAAI,CAACI,OAAO,CAAC,CAAC;EAC7BC,MAAM,EAAEA,CAAA,KAAM;IACZL,IAAI,CAACK,MAAM,CAAC,CAAC;IACb;IACA,KAAK,IAAAC,gCAAoB,EAACN,IAAI,CAAC,CAACO,iBAAiB,CAAC,CAAC;IACnD,KAAK,IAAAC,oCAAsB,EAACR,IAAI,CAAC,CAACO,iBAAiB,CAAC,CAAC;EACvD,CAAC;EACDE,iBAAiB,EAAEA,CAAA,KAAM;IACvB,IAAAC,8CAAkC,EAAC,CAAC;IACpC,IAAAC,kDAAoC,EAAC,CAAC;IACtC;IACAX,IAAI,CAACY,gBAAgB,CAAC,IAAI,CAAC;IAC3BZ,IAAI,CAACa,kBAAkB,CAAC,IAAI,CAAC;EAC/B,CAAC;EACDC,WAAW,EAAEA,CAAA,KAAMd,IAAI,CAACc,WAAW,CAAC,CAAC;EACrCC,gBAAgB,EAAEA,CAAA,KAAM,IAAAC,gCAAoB,EAAC,CAAC;EAC9CC,cAAc,EAAEA,CAAA,KAAM;IACpB,IAAAC,kCAAmB,EAAC,CAAC;EACvB;AACF,CAAC,CAAC;AAEF,MAAMC,OAAO,GAAG,IAAIC,0BAAiB,CAAC;EACpC;EACAN,WAAW,EAAEA,CAAA,KAAMd,IAAI,CAACc,WAAW,CAAC;AACtC,CAAC,CAAC;;AAEF;AACA,IAAIO,4BAA4B,GAAG,KAAK;AAExC,SAASC,8BAA8BA,CAAA,EAAS;EAC9C,IAAI,IAAAC,uCAAwB,EAAC,CAAC,IAAI,IAAI,EAAE;IACtCF,4BAA4B,GAAG,IAAI;EACrC;AACF;AAEA,SAASG,wBAAwBA,CAAA,EAAS;EACxC,IAAAC,sCAAuB,EAAEC,QAAQ,IAAK;IACpC,IAAAC,wBAAW,EAAC,cAAc,EAAE,MAAM;MAChCzB,SAAS,CAAC0B,cAAc,CAAC,CAAC;MAC1B,MAAMC,SAAS,GAAG,MAAM,IAAIH,QAAQ,GAAG,QAAQA,QAAQ,CAACI,IAAI,EAAE,GAAG,UAAUJ,QAAQ,CAACK,MAAM,EAAE;MAC5F,IAAAC,2CAAwB,EAACH,SAAS,CAAC;MACnCI,sCAAkB,CAACC,MAAM,CAAC,CAAC;MAC3B,MAAMC,UAAU,GAAGnC,IAAI,CAACoC,SAAS,CAAC,CAAC,IAAI,IAAI;MAC3C,IAAIC,OAAO,EAAE;QACX;QACAC,OAAO,CAACC,GAAG,CACT,yBAAyB,EACzBb,QAAQ,EACRS,UAAU,GAAG,4BAA4B,GAAG,2BAC9C,CAAC;MACH;MACA;MACA;MACA,KAAK,IAAAK,yBAAY,EAAC,cAAc,EAAE,MAAMxC,IAAI,CAACyC,YAAY,CAACf,QAAQ,CAAC,EAAE;QACnEgB,mBAAmB,EAAE;MACvB,CAAC,CAAC;MAEF,MAAMC,KAAK,GAAG,IAAAC,qCAAsB,EAAClB,QAAQ,CAAC;MAC9C,IAAI,CAACiB,KAAK,EAAE;MACZ,IAAI,CAACR,UAAU,EAAE;QACfd,4BAA4B,GAAG,IAAI;QACnC;MACF;MACAA,4BAA4B,GAAG,KAAK;MACpC,IAAIgB,OAAO,EAAE;QACX;QACAC,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAEM,kCAAmB,EAAEF,KAAK,CAAC;MAC7D;MACA;MACA;MACA;MACA,KAAK,IAAAH,yBAAY,EAAC,OAAO,EAAE,MAAMxC,IAAI,CAAC8C,KAAK,CAACD,kCAAmB,EAAEF,KAAK,CAAC,EAAE;QACvED,mBAAmB,EAAE;MACvB,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ;AAEAlB,wBAAwB,CAAC,CAAC;AAE1B,SAASuB,eAAeA,CAAA,EAAS;EAC/B,IAAAC,6BAAgB,EAAC;IACfC,YAAY,EAAEA,CAAA,KAAMjD,IAAI,CAACoC,SAAS,CAAC,CAAC,IAAI,IAAI;IAC5Cc,kBAAkB,EAAGC,KAAK,IAAKnD,IAAI,CAACkD,kBAAkB,CAACC,KAAK;EAC9D,CAAC,CAAC;AACJ;AAEA,SAASC,yBAAyBA,CAChCC,UAAc,EAC6B;EAC3C,OAAO,IAAAC,+CAAgC,EAAC,IAAAC,iDAAiC,EAACF,UAAU,CAAC,CAAC;AACxF;AAEA,eAAeG,aAAaA,CAAA,EAAkB;EAC5C,IAAAC,mCAAuB,EAACzD,IAAI,CAAC;EAC7B,IAAA0D,uCAAyB,EAAC1D,IAAI,CAAC;EAC/B,IAAA2D,6CAA2B,EAAC3D,IAAI,CAAC;EACjC,IAAA4D,oCAAoB,EAAC5D,IAAI,CAAC,CAAC6D,gBAAgB,CAAC,CAAC;EAC7C3D,SAAS,CAAC0B,cAAc,CAAC,CAAC;EAC1B,IAAIP,4BAA4B,EAAE;IAChC,IAAAH,kCAAmB,EAAC,CAAC;EACvB;EACA,IAAI;IACF,MAAM,IAAA4C,qCAAwB,EAAC,CAAC;EAClC,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ;;AAEA;AACA;AACA;AACA;AACO,MAAMC,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACtB;EACAE,IAAIA,CAACC,MAA0B,EAA2B;IACxD,IAAAC,sCAAwB,EAACD,MAAM,CAAC;IAChC,IAAAE,yCAAyB,EAAC;MACxB,IAAIF,MAAM,CAACG,UAAU,KAAKC,SAAS,GAAG;QAAED,UAAU,EAAEH,MAAM,CAACG;MAAW,CAAC,GAAG,CAAC,CAAC,CAAC;MAC7E,IAAIH,MAAM,CAACK,QAAQ,KAAKD,SAAS,GAAG;QAAEC,QAAQ,EAAEL,MAAM,CAACK;MAAS,CAAC,GAAG,CAAC,CAAC;IACxE,CAAC,CAAC;IACF,IAAAC,qCAAuB,EAAC,CAAC;IACzB,IAAInC,OAAO,EAAE;MACX;MACAC,OAAO,CAACC,GAAG,CAAC,+BAA+BkC,oBAAW,WAAW,CAAC;IACpE;IACA,IAAAC,uCAAwB,EAAC,CAAC;IAC1B,IAAAC,sCAAiB,EAACT,MAAM,CAACU,UAAU,CAAC;IACpC1E,SAAS,CAAC2E,KAAK,CAAC,CAAC;IACjB1D,OAAO,CAAC0D,KAAK,CAAC,CAAC;IACfrD,wBAAwB,CAAC,CAAC;IAC1BuB,eAAe,CAAC,CAAC;IACjB;IACA;IACA;IACA;IACA;IACA;IACA,MAAM+B,OAAO,GAAG,IAAAC,wCAAwB,EAAC/E,IAAI,EAAE;MAC7C,IAAIkE,MAAM,CAACc,eAAe,KAAKV,SAAS,GAAG;QAAEU,eAAe,EAAEd,MAAM,CAACc;MAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;MAC5FC,6BAA6B,EAAEA,CAAA,KAAM,IAAAA,2CAA6B,EAACjF,IAAI,CAAC;MACxES,iBAAiB,EAAEA,CAAA,KAAM;QACvB,IAAAC,8CAAkC,EAAC,CAAC;QACpCV,IAAI,CAACY,gBAAgB,CAAC,IAAI,CAAC;QAC3B,IAAAD,kDAAoC,EAAC,CAAC;QACtCX,IAAI,CAACa,kBAAkB,CAAC,IAAI,CAAC;QAC7BqE,kCAAgB,CAACC,KAAK,CAAC,CAAC;MAC1B,CAAC;MACDC,eAAe,EAAEC,qCAAuB;MACxCC,qBAAqB,EAArBA;IACF,CAAC,CAAC;IACFR,OAAO,CAACS,iBAAiB,CAAC,CAAC;IAC3B,KAAKT,OAAO,CAACD,KAAK,CAAC,CAAC;IAEpB,OAAO7E,IAAI,CAACiE,IAAI,CAACC,MAAM,CAAC,CAACsB,IAAI,CAC1BC,QAAQ,IAAK;MACZ,IAAAC,+BAAiB,EAAC,CAAC;MACnB,IAAAC,mCAAoB,EAAC,CAAC;MACtB;MACA;MACA;MACA,KAAKb,OAAO,CAACc,iBAAiB,CAAC,CAAC;MAChC,OAAOH,QAAQ;IACjB,CAAC,EACAI,KAAc,IAAK;MAClB,IAAAC,sCAAwB,EAAC,CAAC;MAC1BhB,OAAO,CAACiB,gBAAgB,CAACF,KAAK,CAAC;MAC/B,MAAMA,KAAK;IACb,CACF,CAAC;EACH,CAAC;EACD;AACF;AACA;AACA;AACA;EACEG,gBAAgBA,CAACC,GAAW,EAAoB;IAC9C,OAAO,IAAArC,oCAAoB,EAAC5D,IAAI,CAAC,CAACkG,SAAS,CAACD,GAAG,CAAC;EAClD,CAAC;EACD;EACAE,WAAWA,CAAA,EAAkB;IAC3B,OAAO,IAAAvC,oCAAoB,EAAC5D,IAAI,CAAC,CAACmG,WAAW,CAAC,CAAC;EACjD,CAAC;EACD;AACF;AACA;AACA;EACEC,aAAaA,CAACC,OAA+C,EAAQ;IACnE,IAAA1B,sCAAiB,EAAC0B,OAAO,CAAC;EAC5B,CAAC;EACD;EACA,MAAMC,QAAQA,CACZC,MAAc,EACdlD,UAA+B,EAC/BmD,OAAiC,EAClB;IACf,MAAMC,UAAU,GAAGzG,IAAI,CAACoC,SAAS,CAAC,CAAC;IACnC;IACA;IACA,IAAIqE,UAAU,IAAI,IAAI,IAAIA,UAAU,KAAKF,MAAM,EAAE;MAC/C,IAAAG,4CAA0B,EAAC,CAAC;MAC5B1G,IAAI,CAAC2G,mBAAmB,CAAC,EAAE,CAAC;MAC5B,IAAAjG,8CAAkC,EAAC,CAAC;MACpC,IAAAC,kDAAoC,EAAC;QAAEiG,0BAA0B,EAAE;MAAM,CAAC,CAAC;MAC3E5G,IAAI,CAACY,gBAAgB,CAAC,IAAI,CAAC;MAC3BZ,IAAI,CAACa,kBAAkB,CAAC,IAAI,CAAC;MAC7BqE,kCAAgB,CAACC,KAAK,CAAC,CAAC;MACxB,MAAM,IAAA0B,6BAAgB,EAAC,CAAC;MACxBvF,8BAA8B,CAAC,CAAC;IAClC;IACA,MAAMtB,IAAI,CAACsG,QAAQ,CAACC,MAAM,EAAEnD,yBAAyB,CAACC,UAAU,CAAC,EAAEmD,OAAO,CAAC;IAC3E,MAAMhD,aAAa,CAAC,CAAC;EACvB,CAAC;EACD;EACA,MAAMsD,iBAAiBA,CACrBzD,UAA+B,EAC/BmD,OAAiC,EAClB;IACf,MAAMO,WAAW,GAAG,MAAM,IAAAC,mCAAsB,EAAC,CAAC;IAClD,MAAMP,UAAU,GAAGzG,IAAI,CAACoC,SAAS,CAAC,CAAC;IACnC,IAAIqE,UAAU,IAAI,IAAI,IAAIA,UAAU,KAAKM,WAAW,EAAE;MACpD,IAAAL,4CAA0B,EAAC,CAAC;MAC5B1G,IAAI,CAAC2G,mBAAmB,CAAC,EAAE,CAAC;MAC5B,IAAAjG,8CAAkC,EAAC,CAAC;MACpC,IAAAC,kDAAoC,EAAC;QAAEiG,0BAA0B,EAAE;MAAM,CAAC,CAAC;MAC3E5G,IAAI,CAACY,gBAAgB,CAAC,IAAI,CAAC;MAC3BZ,IAAI,CAACa,kBAAkB,CAAC,IAAI,CAAC;MAC7BqE,kCAAgB,CAACC,KAAK,CAAC,CAAC;MACxB7D,8BAA8B,CAAC,CAAC;IAClC;IACA,MAAMtB,IAAI,CAACsG,QAAQ,CAACS,WAAW,EAAE3D,yBAAyB,CAACC,UAAU,CAAC,EAAEmD,OAAO,CAAC;IAChF,MAAMhD,aAAa,CAAC,CAAC;EACvB,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEyD,YAAYA,CAAChB,GAAW,EAAoB;IAC1C,OAAO,IAAAgB,yBAAY,EAAChB,GAAG,CAAC;EAC1B,CAAC;EACD;EACAiB,KAAKA,CACHC,OAAwB,EACxB9D,UAA+B,EAC/BmD,OAA8B,EACf;IACftG,SAAS,CAAC0B,cAAc,CAAC,CAAC;IAC1B,OAAO5B,IAAI,CAACkH,KAAK,CAACC,OAAO,EAAE9D,UAAU,EAAEmD,OAAO,CAAC;EACjD,CAAC;EACD;AACF;AACA;AACA;AACA;EACEY,UAAUA,CAAC/D,UAA6B,EAAiB;IACvDnD,SAAS,CAAC0B,cAAc,CAAC,CAAC;IAC1B,OAAO5B,IAAI,CAACoH,UAAU,CAAC/D,UAAU,CAAC;EACpC,CAAC;EACD;AACF;AACA;AACA;EACEgE,WAAWA,CAAChE,UAA6B,EAAEmD,OAAoC,EAAiB;IAC9FtG,SAAS,CAAC0B,cAAc,CAAC,CAAC;IAC1B,OAAO5B,IAAI,CAACqH,WAAW,CAAChE,UAAU,EAAEmD,OAAO,CAAC;EAC9C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACE1D,KAAKA,CACHwE,IAAY,EACZjE,UAAoC,EACpCmD,OAA8B,EACf;IACf,OAAO,IAAAhE,yBAAY,EAAC,OAAO,EAAE,YAAY;MACvCtC,SAAS,CAAC0B,cAAc,CAAC,CAAC;MAC1B,MAAM5B,IAAI,CAAC8C,KAAK,CAACwE,IAAI,EAAEjE,UAAU,EAAEmD,OAAO,CAAC;IAC7C,CAAC,CAAC,CAAChB,IAAI,CAAC,MAAMlB,SAAS,CAAC;EAC1B,CAAC;EACD;EACAlC,SAASA,CAAA,EAAkB;IACzB,OAAOpC,IAAI,CAACoC,SAAS,CAAC,CAAC;EACzB,CAAC;EACD;EACAmF,aAAaA,CAAA,EAAuB;IAClC,OAAOvH,IAAI,CAACuH,aAAa,CAAC,CAAC;EAC7B,CAAC;EACD;AACF;AACA;AACA;EACEC,iBAAiBA,CAAA,EAA0B;IACzC,OAAO,IAAAC,uCAAuB,EAAC,CAAC;EAClC,CAAC;EACD;AACF;AACA;AACA;EACEC,gBAAgBA,CAAA,EAAyB;IACvC,OAAO,IAAAC,qCAAsB,EAAC,CAAC;EACjC,CAAC;EACD;EACArH,oBAAoBA,CAAA,EAAG;IACrB,OAAO,IAAAA,gCAAoB,EAACN,IAAI,CAAC;EACnC,CAAC;EACD;EACAQ,sBAAsBA,CAAA,EAAG;IACvB,OAAO,IAAAA,oCAAsB,EAACR,IAAI,CAAC;EACrC,CAAC;EACD;EACA,MAAMmF,KAAKA,CAAA,EAAkB;IAC3B,IAAAuB,4CAA0B,EAAC,CAAC;IAC5B,IAAAkB,kCAAsB,EAAC,CAAC;IACxB,IAAAC,sCAAwB,EAAC,CAAC;IAC1B3C,kCAAgB,CAACC,KAAK,CAAC,CAAC;IACxBnF,IAAI,CAACmF,KAAK,CAAC,CAAC;IACZ7D,8BAA8B,CAAC,CAAC;IAChC,MAAM,IAAAuF,6BAAgB,EAAC,CAAC;EAC1B,CAAC;EACD;EACAiB,QAAQA,CAAA,EAAS;IACf,IAAAlE,oCAAoB,EAAC5D,IAAI,CAAC,CAAC+H,IAAI,CAAC,CAAC;IACjC7H,SAAS,CAAC6H,IAAI,CAAC,CAAC;IAChB5G,OAAO,CAAC4G,IAAI,CAAC,CAAC;IACd7C,kCAAgB,CAACC,KAAK,CAAC,CAAC;IACxB,IAAA6C,oCAAqB,EAAC,CAAC;IACvB3G,4BAA4B,GAAG,KAAK;IACpC,IAAA4G,4BAAe,EAAC,CAAC;EACnB,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACErG,cAAcA,CAAA,EAAS;IACrB,IAAAD,wBAAW,EAAC,gBAAgB,EAAE,MAAM;MAClCzB,SAAS,CAAC0B,cAAc,CAAC,CAAC;IAC5B,CAAC,CAAC;EACJ,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEa,YAAYA,CAACyF,UAA8B,EAAQ;IACjD,IAAAvG,wBAAW,EAAC,cAAc,EAAE,MAAM;MAChC,IAAAwG,iCAAkB,EAACD,UAAU,GAAG;QAAEnG,MAAM,EAAEmG;MAAW,CAAC,GAAG5D,SAAS,CAAC;IACrE,CAAC,CAAC;EACJ,CAAC;EACD;AACF;AACA;AACA;EACE8D,gBAAgBA,CAACC,OAAyC,EAAQ;IAChE,IAAAC,8BAAsB,EAACD,OAAO,CAAC;EACjC,CAAC;EACD;AACF;AACA;AACA;EACEE,uBAAuBA,CAACC,EAA2C,EAAQ;IACzE,IAAAC,qCAA6B,EAACD,EAAE,CAAC;EACnC,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEE,6BAA6BA,CAACC,OAAmC,EAAQ;IACvE,IAAAC,uDAAmC,EAACD,OAAO,CAAC;EAC9C,CAAC;EACD;AACF;AACA;AACA;AACA;EACEE,gBAAgBA,CAACC,MAAkD,EAAQ;IACzE5D,kCAAgB,CAAC6D,cAAc,CAACD,MAAM,IAAI,CAAC,CAAC,CAAC;EAC/C,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACEE,iBAAiBA,CAAA,EAAS;IACxB,IAAAC,iCAA0B,EAAC,CAAC;EAC9B,CAAC;EACD;AACF;AACA;AACA;EACEC,gBAAgBA,CAAA,EAAS;IACvB,IAAAC,+BAAyB,EAAC,CAAC;EAC7B;AACF,CAAC;AAED,IAAAC,qCAAuB,EAAC;EACtBtG,KAAK,EAAEA,CAACwE,IAAI,EAAEjE,UAAU,KAAK;IAC3B,KAAKU,QAAQ,CAACjB,KAAK,CAACwE,IAAI,EAAEjE,UAA4C,CAAC;EACzE,CAAC;EACD+D,UAAU,EAAG/D,UAAU,IAAK;IAC1B,KAAKU,QAAQ,CAACqD,UAAU,CAAC/D,UAA8B,CAAC;EAC1D,CAAC;EACDgE,WAAW,EAAEA,CAAChE,UAAU,EAAEmD,OAAO,KAAK;IACpC,KAAKzC,QAAQ,CAACsD,WAAW,CACvBhE,UAAU,EACVmD,OAAO,EAAE6C,UAAU,GAAG;MAAEA,UAAU,EAAE7C,OAAO,CAAC6C;IAA+B,CAAC,GAAG/E,SACjF,CAAC;EACH,CAAC;EACDgF,OAAO,EAAGrD,GAAG,IAAK;IAChB,KAAK,IAAAzD,yBAAY,EAAC,kBAAkB,EAAE,MAAM,IAAA+G,wCAAmB,EAACtD,GAAG,CAAC,EAAE;MACpEvD,mBAAmB,EAAE;IACvB,CAAC,CAAC;EACJ,CAAC;EACD8G,OAAO,EAAGC,UAAU,IAAK;IACvB,KAAK,IAAAjH,yBAAY,EAAC,kBAAkB,EAAE,MAAM,IAAAkH,gCAAoB,EAACD,UAAU,CAAC,EAAE;MAC5E/G,mBAAmB,EAAE;IACvB,CAAC,CAAC;EACJ,CAAC;EACDiH,IAAI,EAAGC,OAAO,IAAK;IACjBtH,OAAO,CAACqH,IAAI,CAACC,OAAO,CAAC;EACvB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -20,7 +20,7 @@ var _asyncStorage = require("./storage/asyncStorage.js");
20
20
  var _safeArea = require("./surfaces/safeArea.js");
21
21
  const INSTALL_CHECK_HEADER = exports.INSTALL_CHECK_HEADER = '[Userflow] Native setup is incomplete. Flows may not run until you fix the following, then rebuild the app (a Metro reload is not enough):';
22
22
  const INSTALL_ASYNC_STORAGE_LINE = exports.INSTALL_ASYNC_STORAGE_LINE = '- @react-native-async-storage/async-storage is not linked. Anonymous users and Builder pairing will not persist. Add it to the app package.json (npx expo install @react-native-async-storage/async-storage), run pod install on iOS, and rebuild.';
23
- const INSTALL_VIEW_SHOT_LINE = exports.INSTALL_VIEW_SHOT_LINE = '- react-native-view-shot is not linked, so Builder element selection gets no screenshot. Install react-native-view-shot@^5.0.0 and rebuild. On Expo SDK 54, pin ^5.0.0; an unpinned npx expo install resolves 4.0.3.';
23
+ const INSTALL_VIEW_SHOT_LINE = exports.INSTALL_VIEW_SHOT_LINE = '- react-native-view-shot is not linked, so Builder element selection gets no screenshot. Install it and rebuild. On Expo SDK 56 and 57, run npx expo install react-native-view-shot unpinned, with no expo.install.exclude entry for it. Otherwise install react-native-view-shot@^5.0.0; on Expo SDK 55 and older, an unpinned npx expo install resolves 4.0.3.';
24
24
  const INSTALL_WEBVIEW_LINE = exports.INSTALL_WEBVIEW_LINE = '- react-native-webview is not linked. Evaluate JavaScript and WebView banners will not run. Install it (npx expo install react-native-webview) and rebuild.';
25
25
  const INSTALL_DEVICE_INFO_LINE = exports.INSTALL_DEVICE_INFO_LINE = '- react-native-device-info is not linked, so app_version and app_build are not sent. npm install react-native-device-info, then rebuild.';
26
26
  const INSTALL_CHECK_FOOTER = exports.INSTALL_CHECK_FOOTER = 'See node_modules/@userflow-tech/react-native/docs/troubleshooting.md.';
@@ -36,7 +36,7 @@ const INSTALL_SAFE_AREA_WARNING = exports.INSTALL_SAFE_AREA_WARNING = '[Userflow
36
36
  * Builder screenshots may not. The installed version is interpolated.
37
37
  */
38
38
  function formatViewShotVersionWarning(version) {
39
- return `[Userflow] react-native-view-shot@${version} is older than 5.0.0, so Builder element selection may not get a screenshot. ` + 'Install react-native-view-shot@^5.0.0 in the same command as the SDK and rebuild. ' + 'Do not retry the install with --force or --legacy-peer-deps; that leaves this version in place. ' + 'On Expo SDK 54, pin ^5.0.0 and add "react-native-view-shot" to expo.install.exclude.\n' + INSTALL_CHECK_FOOTER;
39
+ return `[Userflow] react-native-view-shot@${version} is older than 5.0.0, so Builder element selection may not get a screenshot. ` + 'On Expo SDK 56 and 57, run npx expo install react-native-view-shot unpinned, with no expo.install.exclude entry for it, and rebuild. ' + 'Otherwise install react-native-view-shot@^5.0.0 in the same command as the SDK and rebuild; on Expo SDK 55 and older, also add "react-native-view-shot" to expo.install.exclude. ' + 'Do not retry the install with --force or --legacy-peer-deps; that leaves this version in place.\n' + INSTALL_CHECK_FOOTER;
40
40
  }
41
41
  const EXPO_GO_WARNING = exports.EXPO_GO_WARNING = '[Userflow] This app is running in Expo Go, which cannot load the SDK native modules. Builder preview links will not open the app. Use a development build (npx expo run:ios / npx expo run:android).';
42
42
  const INIT_OPTIONS_IGNORED_WARNING = exports.INIT_OPTIONS_IGNORED_WARNING = '[Userflow] Userflow.init() already ran with different options. The new clientToken, serverEndpoint, and pairingEndpoint are ignored because init runs once per process. Userflow.reset() does not apply new credentials. Restart the app to change them.';
@@ -1 +1 @@
1
- {"version":3,"names":["_getWebView","require","_nativeModules","_asyncStorage","_safeArea","INSTALL_CHECK_HEADER","exports","INSTALL_ASYNC_STORAGE_LINE","INSTALL_VIEW_SHOT_LINE","INSTALL_WEBVIEW_LINE","INSTALL_DEVICE_INFO_LINE","INSTALL_CHECK_FOOTER","INSTALL_SAFE_AREA_WARNING","formatViewShotVersionWarning","version","EXPO_GO_WARNING","INIT_OPTIONS_IGNORED_WARNING","VIEW_SHOT_MODULE","DEVICE_INFO_MODULE","didWarn","readExpoConstants","mod","record","default","executionEnvironment","readViewShotVersion","pkg","length","viewShotVersionWarning","match","major","Number","collectInstallFindings","findings","isAsyncStorageLinked","push","isNativeModuleLinked","isEvalJsWebViewNativeLinked","expoGoWarning","constants","environment","formatInstallWarning","join","warnIfInstallIncomplete","__DEV__","console","warn","isSafeAreaContextInstalled","oldViewShot","expoGo","resetInstallCheckForTests","recordedInitOptions","initOptionsCommitted","recordInitOptions","config","clientToken","serverEndpoint","pairingEndpoint","warnIfInitOptionsIgnored","next","commitInitOptions","releaseFailedInitOptions"],"sourceRoot":"../../src","sources":["installCheck.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_getWebView","require","_nativeModules","_asyncStorage","_safeArea","INSTALL_CHECK_HEADER","exports","INSTALL_ASYNC_STORAGE_LINE","INSTALL_VIEW_SHOT_LINE","INSTALL_WEBVIEW_LINE","INSTALL_DEVICE_INFO_LINE","INSTALL_CHECK_FOOTER","INSTALL_SAFE_AREA_WARNING","formatViewShotVersionWarning","version","EXPO_GO_WARNING","INIT_OPTIONS_IGNORED_WARNING","VIEW_SHOT_MODULE","DEVICE_INFO_MODULE","didWarn","readExpoConstants","mod","record","default","executionEnvironment","readViewShotVersion","pkg","length","viewShotVersionWarning","match","major","Number","collectInstallFindings","findings","isAsyncStorageLinked","push","isNativeModuleLinked","isEvalJsWebViewNativeLinked","expoGoWarning","constants","environment","formatInstallWarning","join","warnIfInstallIncomplete","__DEV__","console","warn","isSafeAreaContextInstalled","oldViewShot","expoGo","resetInstallCheckForTests","recordedInitOptions","initOptionsCommitted","recordInitOptions","config","clientToken","serverEndpoint","pairingEndpoint","warnIfInitOptionsIgnored","next","commitInitOptions","releaseFailedInitOptions"],"sourceRoot":"../../src","sources":["installCheck.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isExternalNavigateUrl = isExternalNavigateUrl;
7
+ exports.isInAppNavigateUrl = isInAppNavigateUrl;
8
+ exports.mustNotUseExpoRouterPush = mustNotUseExpoRouterPush;
9
+ exports.normalizeExternalNavigateUrl = normalizeExternalNavigateUrl;
10
+ exports.normalizeInAppPath = normalizeInAppPath;
11
+ exports.normalizeNavigateUrlInput = normalizeNavigateUrlInput;
12
+ exports.routeNameFromPath = routeNameFromPath;
13
+ exports.shouldOpenExternalNavigateUrl = shouldOpenExternalNavigateUrl;
14
+ const ABSOLUTE_WEB_URL = /^https?:\/\//i;
15
+
16
+ /** Hostname.tld with optional port, path, query, or hash — not an in-app screen name like `Profile`. */
17
+ const BARE_EXTERNAL_HOST = /^[\w.-]+\.[a-z]{2,}(?::\d+)?(?:\/[^\s?#]*)?(?:\?[^\s#]*)?(?:#[^\s]*)?$/i;
18
+ function isAllowlistedWebUrl(url) {
19
+ const trimmed = url.trim();
20
+ if (!trimmed) {
21
+ return false;
22
+ }
23
+ if (!ABSOLUTE_WEB_URL.test(trimmed) && !/^mailto:/i.test(trimmed) && !/^tel:/i.test(trimmed)) {
24
+ return false;
25
+ }
26
+ try {
27
+ const parsed = new URL(trimmed);
28
+ return parsed.protocol === 'http:' || parsed.protocol === 'https:' || parsed.protocol === 'mailto:' || parsed.protocol === 'tel:';
29
+ } catch {
30
+ return ABSOLUTE_WEB_URL.test(trimmed);
31
+ }
32
+ }
33
+
34
+ /** Fix common builder typos before classification (`https:/google.com`). */
35
+ function normalizeNavigateUrlInput(url) {
36
+ const trimmed = url.trim();
37
+ return trimmed.replace(/^(https?):\/(?!\/)/i, '$1://');
38
+ }
39
+
40
+ /** Prefix `https://` when the builder URL omitted the scheme (e.g. `google.com`). */
41
+ function normalizeExternalNavigateUrl(url) {
42
+ const trimmed = normalizeNavigateUrlInput(url);
43
+ if (ABSOLUTE_WEB_URL.test(trimmed)) {
44
+ return trimmed;
45
+ }
46
+ if (BARE_EXTERNAL_HOST.test(trimmed) && !trimmed.startsWith('/')) {
47
+ return `https://${trimmed}`;
48
+ }
49
+ return trimmed;
50
+ }
51
+
52
+ /** True when the URL should open outside the app (browser / mail / tel). */
53
+ function shouldOpenExternalNavigateUrl(url) {
54
+ const trimmed = normalizeNavigateUrlInput(url);
55
+ if (!trimmed) {
56
+ return false;
57
+ }
58
+ if (isAllowlistedWebUrl(trimmed)) {
59
+ return true;
60
+ }
61
+ if (ABSOLUTE_WEB_URL.test(trimmed)) {
62
+ return true;
63
+ }
64
+ if (/^mailto:/i.test(trimmed) || /^tel:/i.test(trimmed)) {
65
+ return true;
66
+ }
67
+ if (BARE_EXTERNAL_HOST.test(trimmed) && !trimmed.startsWith('/')) {
68
+ return true;
69
+ }
70
+ return false;
71
+ }
72
+
73
+ /** True for http(s) / mailto / tel (external). */
74
+ function isExternalNavigateUrl(url) {
75
+ return shouldOpenExternalNavigateUrl(url);
76
+ }
77
+
78
+ /** Path-like in-app URL: leading slash, or no scheme. */
79
+ function isInAppNavigateUrl(url) {
80
+ const trimmed = normalizeNavigateUrlInput(url);
81
+ if (!trimmed) return false;
82
+ if (shouldOpenExternalNavigateUrl(trimmed)) return false;
83
+ if (/^[a-z][a-z0-9+.-]*:/i.test(trimmed)) return false;
84
+ return true;
85
+ }
86
+
87
+ /** Never pass absolute / external URLs to Expo Router `push`. */
88
+ function mustNotUseExpoRouterPush(url) {
89
+ const trimmed = normalizeNavigateUrlInput(url);
90
+ if (!trimmed) return false;
91
+ if (shouldOpenExternalNavigateUrl(trimmed)) return true;
92
+ if (trimmed.includes('://')) return true;
93
+ return false;
94
+ }
95
+ function normalizeInAppPath(url) {
96
+ const trimmed = normalizeNavigateUrlInput(url);
97
+ if (trimmed.startsWith('/')) return trimmed;
98
+ return `/${trimmed}`;
99
+ }
100
+ function routeNameFromPath(path) {
101
+ const normalized = normalizeInAppPath(path).replace(/^\//, '');
102
+ const [first] = normalized.split(/[/?#]/);
103
+ return first || normalized;
104
+ }
105
+ //# sourceMappingURL=navigateUrlUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ABSOLUTE_WEB_URL","BARE_EXTERNAL_HOST","isAllowlistedWebUrl","url","trimmed","trim","test","parsed","URL","protocol","normalizeNavigateUrlInput","replace","normalizeExternalNavigateUrl","startsWith","shouldOpenExternalNavigateUrl","isExternalNavigateUrl","isInAppNavigateUrl","mustNotUseExpoRouterPush","includes","normalizeInAppPath","routeNameFromPath","path","normalized","first","split"],"sourceRoot":"../../../src","sources":["navigation/navigateUrlUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.openExternalNavigateUrl = openExternalNavigateUrl;
7
+ var _openSafeUrl = require("../content/openSafeUrl.js");
8
+ var _navigateUrlUtils = require("./navigateUrlUtils.js");
9
+ /** Open http(s)/mailto/tel via Linking (documented SDK behavior). */
10
+ async function openExternalNavigateUrl(url) {
11
+ const external = (0, _navigateUrlUtils.normalizeExternalNavigateUrl)(url);
12
+ await (0, _openSafeUrl.openSafeUrl)(external);
13
+ }
14
+ //# sourceMappingURL=openExternalNavigateUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_openSafeUrl","require","_navigateUrlUtils","openExternalNavigateUrl","url","external","normalizeExternalNavigateUrl","openSafeUrl"],"sourceRoot":"../../../src","sources":["navigation/openExternalNavigateUrl.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAD,OAAA;AAEA;AACO,eAAeE,uBAAuBA,CAACC,GAAW,EAAiB;EACxE,MAAMC,QAAQ,GAAG,IAAAC,8CAA4B,EAACF,GAAG,CAAC;EAClD,MAAM,IAAAG,wBAAW,EAACF,QAAQ,CAAC;AAC7B","ignoreList":[]}
@@ -3,16 +3,39 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.isExternalNavigateUrl = isExternalNavigateUrl;
7
- exports.isInAppNavigateUrl = isInAppNavigateUrl;
6
+ Object.defineProperty(exports, "isExternalNavigateUrl", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _navigateUrlUtils.isExternalNavigateUrl;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "isInAppNavigateUrl", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _navigateUrlUtils.isInAppNavigateUrl;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "normalizeExternalNavigateUrl", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _navigateUrlUtils.normalizeExternalNavigateUrl;
22
+ }
23
+ });
8
24
  exports.openFlowNavigateUrl = openFlowNavigateUrl;
9
25
  exports.resetFlowNavigateRegistryForTests = resetFlowNavigateRegistryForTests;
10
26
  exports.setExpoRouterNavigator = setExpoRouterNavigator;
11
27
  exports.setHostOnNavigate = setHostOnNavigate;
12
28
  exports.setReactNavigationRef = setReactNavigationRef;
13
- var _reactNative = require("react-native");
29
+ Object.defineProperty(exports, "shouldOpenExternalNavigateUrl", {
30
+ enumerable: true,
31
+ get: function () {
32
+ return _navigateUrlUtils.shouldOpenExternalNavigateUrl;
33
+ }
34
+ });
14
35
  var _openSafeUrl = require("../content/openSafeUrl.js");
15
36
  var _isolateCall = require("../runtime/isolateCall.js");
37
+ var _navigateUrlUtils = require("./navigateUrlUtils.js");
38
+ var _openExternalNavigateUrl = require("./openExternalNavigateUrl.js");
16
39
  let hostOnNavigate = null;
17
40
  let navigationRef = null;
18
41
  let expoRouter = null;
@@ -31,37 +54,12 @@ function setReactNavigationRef(ref) {
31
54
  function setExpoRouterNavigator(router) {
32
55
  expoRouter = router ?? null;
33
56
  }
34
-
35
- /** True for http(s) / mailto / tel (external). */
36
- function isExternalNavigateUrl(url) {
37
- return (0, _openSafeUrl.isSafeUrl)(url);
38
- }
39
-
40
- /** Path-like in-app URL: leading slash, or no scheme. */
41
- function isInAppNavigateUrl(url) {
42
- const trimmed = url.trim();
43
- if (!trimmed) return false;
44
- if (isExternalNavigateUrl(trimmed)) return false;
45
- if (/^[a-z][a-z0-9+.-]*:/i.test(trimmed)) return false;
46
- return true;
47
- }
48
- function normalizeInAppPath(url) {
49
- const trimmed = url.trim();
50
- if (trimmed.startsWith('/')) return trimmed;
51
- return `/${trimmed}`;
52
- }
53
- function routeNameFromPath(path) {
54
- const normalized = normalizeInAppPath(path).replace(/^\//, '');
55
- const [first] = normalized.split(/[/?#]/);
56
- return first || normalized;
57
- }
58
-
59
57
  /**
60
58
  * Open a flow NAVIGATE url.
61
59
  *
62
60
  * Priority:
63
61
  * 1. Host `onNavigate` (custom schemes / exotic routing)
64
- * 2. External allowlisted schemes → Linking / `openSafeUrl`
62
+ * 2. External allowlisted schemes → in-app browser / Linking
65
63
  * 3. Path-like → Expo Router `push` or React Navigation `navigate`
66
64
  * 4. Fallback → Linking (best-effort)
67
65
  *
@@ -71,40 +69,48 @@ function routeNameFromPath(path) {
71
69
  * `@userflow-tech/react-native/expo-router` under `UserflowProvider`.
72
70
  */
73
71
  async function openFlowNavigateUrl(url) {
74
- const trimmed = url.trim();
72
+ const trimmed = (0, _navigateUrlUtils.normalizeNavigateUrlInput)(url);
75
73
  if (!trimmed) return;
74
+ if (__DEV__) {
75
+ // eslint-disable-next-line no-console -- intentional development diagnostic
76
+ console.log('[Userflow] NAVIGATE openFlowNavigateUrl', {
77
+ url: trimmed,
78
+ external: (0, _navigateUrlUtils.shouldOpenExternalNavigateUrl)(trimmed),
79
+ inApp: (0, _navigateUrlUtils.isInAppNavigateUrl)(trimmed)
80
+ });
81
+ }
76
82
  if (hostOnNavigate) {
77
83
  await (0, _isolateCall.isolateAsync)('onNavigate', async () => {
78
84
  await hostOnNavigate(trimmed);
79
85
  });
80
86
  return;
81
87
  }
82
- if (isExternalNavigateUrl(trimmed)) {
83
- await (0, _openSafeUrl.openSafeUrl)(trimmed);
88
+ if ((0, _navigateUrlUtils.shouldOpenExternalNavigateUrl)(trimmed)) {
89
+ await (0, _openExternalNavigateUrl.openExternalNavigateUrl)(trimmed);
84
90
  return;
85
91
  }
86
- if (isInAppNavigateUrl(trimmed)) {
92
+ if ((0, _navigateUrlUtils.isInAppNavigateUrl)(trimmed)) {
87
93
  if (expoRouter) {
94
+ if ((0, _navigateUrlUtils.mustNotUseExpoRouterPush)(trimmed)) {
95
+ await (0, _openExternalNavigateUrl.openExternalNavigateUrl)(trimmed);
96
+ return;
97
+ }
88
98
  (0, _isolateCall.isolateSync)('onNavigate', () => {
89
- expoRouter.push(normalizeInAppPath(trimmed));
99
+ expoRouter.push((0, _navigateUrlUtils.normalizeInAppPath)(trimmed));
90
100
  });
91
101
  return;
92
102
  }
93
103
  if (navigationRef?.isReady()) {
94
104
  (0, _isolateCall.isolateSync)('onNavigate', () => {
95
- const name = routeNameFromPath(trimmed);
105
+ const name = (0, _navigateUrlUtils.routeNameFromPath)(trimmed);
96
106
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- route names are host-defined
97
107
  navigationRef.navigate(name);
98
108
  });
99
109
  return;
100
110
  }
101
111
  }
102
-
103
- // Last resort — may fail for custom schemes; hosts should set onNavigate.
104
- try {
105
- await _reactNative.Linking.openURL(trimmed);
106
- } catch {
107
- // Best-effort.
112
+ if ((0, _openSafeUrl.isSafeUrl)(trimmed) || /^https?:\/\//i.test(trimmed)) {
113
+ await (0, _openExternalNavigateUrl.openExternalNavigateUrl)(trimmed);
108
114
  }
109
115
  }
110
116
 
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_openSafeUrl","_isolateCall","hostOnNavigate","navigationRef","expoRouter","setHostOnNavigate","handler","setReactNavigationRef","ref","setExpoRouterNavigator","router","isExternalNavigateUrl","url","isSafeUrl","isInAppNavigateUrl","trimmed","trim","test","normalizeInAppPath","startsWith","routeNameFromPath","path","normalized","replace","first","split","openFlowNavigateUrl","isolateAsync","openSafeUrl","isolateSync","push","isReady","name","navigate","Linking","openURL","resetFlowNavigateRegistryForTests"],"sourceRoot":"../../../src","sources":["navigation/openFlowNavigateUrl.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_openSafeUrl","require","_isolateCall","_navigateUrlUtils","_openExternalNavigateUrl","hostOnNavigate","navigationRef","expoRouter","setHostOnNavigate","handler","setReactNavigationRef","ref","setExpoRouterNavigator","router","openFlowNavigateUrl","url","trimmed","normalizeNavigateUrlInput","__DEV__","console","log","external","shouldOpenExternalNavigateUrl","inApp","isInAppNavigateUrl","isolateAsync","openExternalNavigateUrl","mustNotUseExpoRouterPush","isolateSync","push","normalizeInAppPath","isReady","name","routeNameFromPath","navigate","isSafeUrl","test","resetFlowNavigateRegistryForTests"],"sourceRoot":"../../../src","sources":["navigation/openFlowNavigateUrl.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,iBAAA,GAAAF,OAAA;AAQA,IAAAG,wBAAA,GAAAH,OAAA;AAQA,IAAII,cAA0C,GAAG,IAAI;AACrD,IAAIC,aAA2D,GAAG,IAAI;AACtE,IAAIC,UAAiC,GAAG,IAAI;;AAE5C;AACO,SAASC,iBAAiBA,CAACC,OAA+C,EAAQ;EACvFJ,cAAc,GAAGI,OAAO,IAAI,IAAI;AAClC;;AAEA;AACO,SAASC,qBAAqBA,CACnCC,GAA6D,EACvD;EACNL,aAAa,GAAGK,GAAG,IAAI,IAAI;AAC7B;;AAEA;AACO,SAASC,sBAAsBA,CAACC,MAAyC,EAAQ;EACtFN,UAAU,GAAGM,MAAM,IAAI,IAAI;AAC7B;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,eAAeC,mBAAmBA,CAACC,GAAW,EAAiB;EACpE,MAAMC,OAAO,GAAG,IAAAC,2CAAyB,EAACF,GAAG,CAAC;EAC9C,IAAI,CAACC,OAAO,EAAE;EAEd,IAAIE,OAAO,EAAE;IACX;IACAC,OAAO,CAACC,GAAG,CAAC,yCAAyC,EAAE;MACrDL,GAAG,EAAEC,OAAO;MACZK,QAAQ,EAAE,IAAAC,+CAA6B,EAACN,OAAO,CAAC;MAChDO,KAAK,EAAE,IAAAC,oCAAkB,EAACR,OAAO;IACnC,CAAC,CAAC;EACJ;EAEA,IAAIX,cAAc,EAAE;IAClB,MAAM,IAAAoB,yBAAY,EAAC,YAAY,EAAE,YAAY;MAC3C,MAAMpB,cAAc,CAAEW,OAAO,CAAC;IAChC,CAAC,CAAC;IACF;EACF;EAEA,IAAI,IAAAM,+CAA6B,EAACN,OAAO,CAAC,EAAE;IAC1C,MAAM,IAAAU,gDAAuB,EAACV,OAAO,CAAC;IACtC;EACF;EAEA,IAAI,IAAAQ,oCAAkB,EAACR,OAAO,CAAC,EAAE;IAC/B,IAAIT,UAAU,EAAE;MACd,IAAI,IAAAoB,0CAAwB,EAACX,OAAO,CAAC,EAAE;QACrC,MAAM,IAAAU,gDAAuB,EAACV,OAAO,CAAC;QACtC;MACF;MACA,IAAAY,wBAAW,EAAC,YAAY,EAAE,MAAM;QAC9BrB,UAAU,CAAEsB,IAAI,CAAC,IAAAC,oCAAkB,EAACd,OAAO,CAAC,CAAC;MAC/C,CAAC,CAAC;MACF;IACF;IACA,IAAIV,aAAa,EAAEyB,OAAO,CAAC,CAAC,EAAE;MAC5B,IAAAH,wBAAW,EAAC,YAAY,EAAE,MAAM;QAC9B,MAAMI,IAAI,GAAG,IAAAC,mCAAiB,EAACjB,OAAO,CAAC;QACvC;QACCV,aAAa,CAA2C4B,QAAQ,CAACF,IAAW,CAAC;MAChF,CAAC,CAAC;MACF;IACF;EACF;EAEA,IAAI,IAAAG,sBAAS,EAACnB,OAAO,CAAC,IAAI,eAAe,CAACoB,IAAI,CAACpB,OAAO,CAAC,EAAE;IACvD,MAAM,IAAAU,gDAAuB,EAACV,OAAO,CAAC;EACxC;AACF;;AAEA;AACO,SAASqB,iCAAiCA,CAAA,EAAS;EACxDhC,cAAc,GAAG,IAAI;EACrBC,aAAa,GAAG,IAAI;EACpBC,UAAU,GAAG,IAAI;AACnB","ignoreList":[]}
@@ -65,6 +65,7 @@ class PairingController {
65
65
  this.LinkingModule = options.LinkingModule ?? _reactNative.Linking;
66
66
  this.AppStateModule = options.AppStateModule ?? _reactNative.AppState;
67
67
  this.clearLocalSession = options.clearLocalSession ?? undefined;
68
+ this.prepareForBuilderPreviewStart = options.prepareForBuilderPreviewStart ?? undefined;
68
69
  this.endDraftSession = options.endDraftSession ?? undefined;
69
70
  this.cancelPendingDraftEnd = options.cancelPendingDraftEnd ?? undefined;
70
71
  this.logger = options.logger ?? _diagnostics.defaultPairingLogger;
@@ -496,7 +497,8 @@ class PairingController {
496
497
  } : {})
497
498
  }),
498
499
  onBeforePreviewStart: () => {
499
- this.clearLocalSession?.();
500
+ const run = this.prepareForBuilderPreviewStart ?? this.clearLocalSession;
501
+ return run?.();
500
502
  }
501
503
  });
502
504
  this.engine.onStateChange(state => {