@userflow-tech/react-native 0.2.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +435 -134
- package/app.plugin.js +11 -3
- package/babel-plugin/index.d.ts.map +1 -1
- package/babel-plugin/index.js +53 -6
- package/babel-plugin/index.js.map +1 -1
- package/babel-plugin.js +11 -3
- package/docs/anchoring.md +58 -42
- package/docs/deep-linking.md +70 -33
- package/docs/isolation.md +75 -0
- package/docs/troubleshooting.md +103 -44
- package/docs/webview-custom-banner-poc.md +64 -0
- package/expo-plugin/hostDependencyWarnings.d.ts +18 -0
- package/expo-plugin/hostDependencyWarnings.d.ts.map +1 -0
- package/expo-plugin/hostDependencyWarnings.js +91 -0
- package/expo-plugin/hostDependencyWarnings.js.map +1 -0
- package/expo-plugin/withUserflow.d.ts +3 -2
- package/expo-plugin/withUserflow.d.ts.map +1 -1
- package/expo-plugin/withUserflow.js +30 -8
- package/expo-plugin/withUserflow.js.map +1 -1
- package/lib/commonjs/anchors/AnchorRegistry.js +7 -0
- package/lib/commonjs/anchors/AnchorRegistry.js.map +1 -1
- package/lib/commonjs/anchors/AutoAnchorRegistry.js +37 -11
- package/lib/commonjs/anchors/AutoAnchorRegistry.js.map +1 -1
- package/lib/commonjs/anchors/elementConditionEvaluator.js +189 -55
- package/lib/commonjs/anchors/elementConditionEvaluator.js.map +1 -1
- package/lib/commonjs/anchors/elementTapMonitor.js +92 -0
- package/lib/commonjs/anchors/elementTapMonitor.js.map +1 -0
- package/lib/commonjs/anchors/elementTargetMatch.js +85 -0
- package/lib/commonjs/anchors/elementTargetMatch.js.map +1 -0
- package/lib/commonjs/anchors/fiber/fiberPath.js +122 -0
- package/lib/commonjs/anchors/fiber/fiberPath.js.map +1 -0
- package/lib/commonjs/anchors/fiber/findAnchorFiber.js +122 -87
- package/lib/commonjs/anchors/fiber/findAnchorFiber.js.map +1 -1
- package/lib/commonjs/anchors/fiber/resolveFiberPath.js +220 -0
- package/lib/commonjs/anchors/fiber/resolveFiberPath.js.map +1 -0
- package/lib/commonjs/anchors/fiber/touchTargetFiber.js +105 -0
- package/lib/commonjs/anchors/fiber/touchTargetFiber.js.map +1 -0
- package/lib/commonjs/anchors/fiber/visibleRect.js +147 -0
- package/lib/commonjs/anchors/fiber/visibleRect.js.map +1 -0
- package/lib/commonjs/anchors/fiber/visibleScreens.js +73 -36
- package/lib/commonjs/anchors/fiber/visibleScreens.js.map +1 -1
- package/lib/commonjs/anchors/fiber/walkVisibleFibers.js +66 -0
- package/lib/commonjs/anchors/fiber/walkVisibleFibers.js.map +1 -0
- package/lib/commonjs/anchors/isInstanceOnVisibleScreen.js +51 -0
- package/lib/commonjs/anchors/isInstanceOnVisibleScreen.js.map +1 -0
- package/lib/commonjs/anchors/resolveAnchorHost.js +2 -1
- package/lib/commonjs/anchors/resolveAnchorHost.js.map +1 -1
- package/lib/commonjs/anchors/resolveAutoAnchorHost.js +26 -17
- package/lib/commonjs/anchors/resolveAutoAnchorHost.js.map +1 -1
- package/lib/commonjs/anchors/resolveElementTargets.js +158 -0
- package/lib/commonjs/anchors/resolveElementTargets.js.map +1 -0
- package/lib/commonjs/anchors/semanticMatcher.js +26 -8
- package/lib/commonjs/anchors/semanticMatcher.js.map +1 -1
- package/lib/commonjs/anchors/targetPressMonitor.js +9 -3
- package/lib/commonjs/anchors/targetPressMonitor.js.map +1 -1
- package/lib/commonjs/anchors/useUserflowAnchor.js +1 -0
- package/lib/commonjs/anchors/useUserflowAnchor.js.map +1 -1
- package/lib/commonjs/anonymousId.js +19 -7
- package/lib/commonjs/anonymousId.js.map +1 -1
- package/lib/commonjs/authoring/ElementPickerOverlay.js +126 -50
- package/lib/commonjs/authoring/ElementPickerOverlay.js.map +1 -1
- package/lib/commonjs/authoring/chrome/ChromeBottomSheet.js +32 -10
- package/lib/commonjs/authoring/chrome/ChromeBottomSheet.js.map +1 -1
- package/lib/commonjs/authoring/chrome/ChromeButton.js +8 -3
- package/lib/commonjs/authoring/chrome/ChromeButton.js.map +1 -1
- package/lib/commonjs/authoring/chrome/ChromeIcon.js +4 -0
- package/lib/commonjs/authoring/chrome/ChromeIcon.js.map +1 -1
- package/lib/commonjs/authoring/chrome/ChromeTopBar.js +23 -10
- package/lib/commonjs/authoring/chrome/ChromeTopBar.js.map +1 -1
- package/lib/commonjs/authoring/chrome/DoubleTapBridge.js +19 -12
- package/lib/commonjs/authoring/chrome/DoubleTapBridge.js.map +1 -1
- package/lib/commonjs/authoring/chrome/doubleTapMonitor.js +10 -0
- package/lib/commonjs/authoring/chrome/doubleTapMonitor.js.map +1 -1
- package/lib/commonjs/authoring/chrome/icons/circle-exclamation.png +0 -0
- package/lib/commonjs/authoring/chrome/icons/circle-exclamation@2x.png +0 -0
- package/lib/commonjs/authoring/chrome/icons/circle-exclamation@3x.png +0 -0
- package/lib/commonjs/authoring/chrome/icons/triangle-exclamation.png +0 -0
- package/lib/commonjs/authoring/chrome/icons/triangle-exclamation@2x.png +0 -0
- package/lib/commonjs/authoring/chrome/icons/triangle-exclamation@3x.png +0 -0
- package/lib/commonjs/authoring/chrome/tokens.js +7 -6
- package/lib/commonjs/authoring/chrome/tokens.js.map +1 -1
- package/lib/commonjs/authoring/elementPickerController.js.map +1 -1
- package/lib/commonjs/authoring/fingerprintFromInstance.js +204 -4
- package/lib/commonjs/authoring/fingerprintFromInstance.js.map +1 -1
- package/lib/commonjs/authoring/hitTest.js +264 -16
- package/lib/commonjs/authoring/hitTest.js.map +1 -1
- package/lib/commonjs/authoring/hostAtPoint.js +204 -0
- package/lib/commonjs/authoring/hostAtPoint.js.map +1 -0
- package/lib/commonjs/content/BannerStepButton.js +68 -0
- package/lib/commonjs/content/BannerStepButton.js.map +1 -0
- package/lib/commonjs/content/buttonAppearance.js +16 -0
- package/lib/commonjs/content/buttonAppearance.js.map +1 -1
- package/lib/commonjs/content/resolveBannerButtonChrome.js +44 -0
- package/lib/commonjs/content/resolveBannerButtonChrome.js.map +1 -0
- package/lib/commonjs/content/themeColor.js +15 -0
- package/lib/commonjs/content/themeColor.js.map +1 -1
- package/lib/commonjs/deepLinking.js +4 -4
- package/lib/commonjs/evalJs/EvalJsHost.js +244 -0
- package/lib/commonjs/evalJs/EvalJsHost.js.map +1 -0
- package/lib/commonjs/evalJs/bootstrap.js +84 -0
- package/lib/commonjs/evalJs/bootstrap.js.map +1 -0
- package/lib/commonjs/evalJs/bridgeMessages.js +143 -0
- package/lib/commonjs/evalJs/bridgeMessages.js.map +1 -0
- package/lib/commonjs/evalJs/evalJsBridge.js +31 -0
- package/lib/commonjs/evalJs/evalJsBridge.js.map +1 -0
- package/lib/commonjs/evalJs/evalJsController.js +124 -0
- package/lib/commonjs/evalJs/evalJsController.js.map +1 -0
- package/lib/commonjs/evalJs/getWebView.js +81 -0
- package/lib/commonjs/evalJs/getWebView.js.map +1 -0
- package/lib/commonjs/evalJs/injectEvalPending.js +19 -0
- package/lib/commonjs/evalJs/injectEvalPending.js.map +1 -0
- package/lib/commonjs/evalJs/types.js +2 -0
- package/lib/commonjs/evalJs/types.js.map +1 -0
- package/lib/commonjs/evalJs/useEvalJsWebViewInjection.js +40 -0
- package/lib/commonjs/evalJs/useEvalJsWebViewInjection.js.map +1 -0
- package/lib/commonjs/expo-router/index.js +19 -0
- package/lib/commonjs/expo-router/index.js.map +1 -1
- package/lib/commonjs/expo-router/redirectSystemPath.js +75 -0
- package/lib/commonjs/expo-router/redirectSystemPath.js.map +1 -0
- package/lib/commonjs/expo-router/useUserflowExpoRouter.js +2 -2
- package/lib/commonjs/index.js +123 -43
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/installCheck.js +151 -0
- package/lib/commonjs/installCheck.js.map +1 -0
- package/lib/commonjs/lifecycle.js.map +1 -1
- package/lib/commonjs/navigation/WithUserflowReactNavigation.js +14 -11
- package/lib/commonjs/navigation/WithUserflowReactNavigation.js.map +1 -1
- package/lib/commonjs/navigation/openFlowNavigateUrl.js +12 -5
- package/lib/commonjs/navigation/openFlowNavigateUrl.js.map +1 -1
- package/lib/commonjs/pairing/PairingController.js +245 -27
- package/lib/commonjs/pairing/PairingController.js.map +1 -1
- package/lib/commonjs/pairing/PreviewModeBanner.js +55 -16
- package/lib/commonjs/pairing/PreviewModeBanner.js.map +1 -1
- package/lib/commonjs/pairing/deepLink.js +22 -5
- package/lib/commonjs/pairing/deepLink.js.map +1 -1
- package/lib/commonjs/pairing/deviceId.js +50 -0
- package/lib/commonjs/pairing/deviceId.js.map +1 -0
- package/lib/commonjs/pairing/diagnostics.js +5 -4
- package/lib/commonjs/pairing/diagnostics.js.map +1 -1
- package/lib/commonjs/pairing/tokenStorage.js +47 -7
- package/lib/commonjs/pairing/tokenStorage.js.map +1 -1
- package/lib/commonjs/pairing/usePairingState.js +3 -1
- package/lib/commonjs/pairing/usePairingState.js.map +1 -1
- package/lib/commonjs/pairing/usePreviewBarHold.js +139 -0
- package/lib/commonjs/pairing/usePreviewBarHold.js.map +1 -0
- package/lib/commonjs/runtime/BannerHost.js +96 -0
- package/lib/commonjs/runtime/BannerHost.js.map +1 -0
- package/lib/commonjs/runtime/EmbedBannerPlaceholder.js +99 -0
- package/lib/commonjs/runtime/EmbedBannerPlaceholder.js.map +1 -0
- package/lib/commonjs/runtime/SdkErrorBoundary.js +61 -0
- package/lib/commonjs/runtime/SdkErrorBoundary.js.map +1 -0
- package/lib/commonjs/runtime/TargetPressBridge.js +31 -13
- package/lib/commonjs/runtime/TargetPressBridge.js.map +1 -1
- package/lib/commonjs/runtime/UserflowOverlay.js +97 -0
- package/lib/commonjs/runtime/UserflowOverlay.js.map +1 -0
- package/lib/commonjs/runtime/UserflowProvider.js +138 -65
- package/lib/commonjs/runtime/UserflowProvider.js.map +1 -1
- package/lib/commonjs/runtime/bannerEngine.js +63 -0
- package/lib/commonjs/runtime/bannerEngine.js.map +1 -0
- package/lib/commonjs/runtime/bannerEngineContext.js +11 -0
- package/lib/commonjs/runtime/bannerEngineContext.js.map +1 -0
- package/lib/commonjs/runtime/bannerPlacement.js +37 -0
- package/lib/commonjs/runtime/bannerPlacement.js.map +1 -0
- package/lib/commonjs/runtime/embedBannerRegistry.js +30 -0
- package/lib/commonjs/runtime/embedBannerRegistry.js.map +1 -0
- package/lib/commonjs/runtime/flowEngine.js +75 -3
- package/lib/commonjs/runtime/flowEngine.js.map +1 -1
- package/lib/commonjs/runtime/isolateCall.js +48 -0
- package/lib/commonjs/runtime/isolateCall.js.map +1 -0
- package/lib/commonjs/runtime/reportSdkError.js +19 -0
- package/lib/commonjs/runtime/reportSdkError.js.map +1 -0
- package/lib/commonjs/runtime/useBannerSession.js +37 -0
- package/lib/commonjs/runtime/useBannerSession.js.map +1 -0
- package/lib/commonjs/screenTracker.js +34 -9
- package/lib/commonjs/screenTracker.js.map +1 -1
- package/lib/commonjs/storage/asyncStorage.js +67 -0
- package/lib/commonjs/storage/asyncStorage.js.map +1 -0
- package/lib/commonjs/surfaces/BannerBar.js +160 -0
- package/lib/commonjs/surfaces/BannerBar.js.map +1 -0
- package/lib/commonjs/surfaces/BannerSurface.js +78 -0
- package/lib/commonjs/surfaces/BannerSurface.js.map +1 -0
- package/lib/commonjs/surfaces/MadeWithUserflow.js +12 -8
- package/lib/commonjs/surfaces/MadeWithUserflow.js.map +1 -1
- package/lib/commonjs/surfaces/ModalSurface.js +1 -1
- package/lib/commonjs/surfaces/ModalSurface.js.map +1 -1
- package/lib/commonjs/surfaces/TooltipSurface.js +17 -1
- package/lib/commonjs/surfaces/TooltipSurface.js.map +1 -1
- package/lib/commonjs/surfaces/bannerBarLayout.js +88 -0
- package/lib/commonjs/surfaces/bannerBarLayout.js.map +1 -0
- package/lib/commonjs/surfaces/bannerBarTokens.js +42 -0
- package/lib/commonjs/surfaces/bannerBarTokens.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/BannerWebViewBar.js +277 -0
- package/lib/commonjs/surfaces/bannerWebView/BannerWebViewBar.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerAutoRunEvalJs.js +46 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerAutoRunEvalJs.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerAutoRunSession.js +26 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerAutoRunSession.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerNeedsWebView.js +41 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerNeedsWebView.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerThemeStyles.js +74 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerThemeStyles.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerWebFrameCss.js +152 -0
- package/lib/commonjs/surfaces/bannerWebView/bannerWebFrameCss.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/buildCustomBannerHtml.js +148 -0
- package/lib/commonjs/surfaces/bannerWebView/buildCustomBannerHtml.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/buttonClassName.js +13 -0
- package/lib/commonjs/surfaces/bannerWebView/buttonClassName.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/resolveCdnHost.js +49 -0
- package/lib/commonjs/surfaces/bannerWebView/resolveCdnHost.js.map +1 -0
- package/lib/commonjs/surfaces/bannerWebView/richContentDocToHtml.js +83 -0
- package/lib/commonjs/surfaces/bannerWebView/richContentDocToHtml.js.map +1 -0
- package/lib/commonjs/surfaces/resolveBannerTheme.js +22 -0
- package/lib/commonjs/surfaces/resolveBannerTheme.js.map +1 -0
- package/lib/commonjs/surfaces/safeArea.js +76 -13
- package/lib/commonjs/surfaces/safeArea.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/anchors/AnchorRegistry.js +7 -0
- package/lib/module/anchors/AnchorRegistry.js.map +1 -1
- package/lib/module/anchors/AutoAnchorRegistry.js +37 -11
- package/lib/module/anchors/AutoAnchorRegistry.js.map +1 -1
- package/lib/module/anchors/elementConditionEvaluator.js +189 -55
- package/lib/module/anchors/elementConditionEvaluator.js.map +1 -1
- package/lib/module/anchors/elementTapMonitor.js +87 -0
- package/lib/module/anchors/elementTapMonitor.js.map +1 -0
- package/lib/module/anchors/elementTargetMatch.js +78 -0
- package/lib/module/anchors/elementTargetMatch.js.map +1 -0
- package/lib/module/anchors/fiber/fiberPath.js +118 -0
- package/lib/module/anchors/fiber/fiberPath.js.map +1 -0
- package/lib/module/anchors/fiber/findAnchorFiber.js +120 -87
- package/lib/module/anchors/fiber/findAnchorFiber.js.map +1 -1
- package/lib/module/anchors/fiber/resolveFiberPath.js +215 -0
- package/lib/module/anchors/fiber/resolveFiberPath.js.map +1 -0
- package/lib/module/anchors/fiber/touchTargetFiber.js +100 -0
- package/lib/module/anchors/fiber/touchTargetFiber.js.map +1 -0
- package/lib/module/anchors/fiber/visibleRect.js +139 -0
- package/lib/module/anchors/fiber/visibleRect.js.map +1 -0
- package/lib/module/anchors/fiber/visibleScreens.js +73 -37
- package/lib/module/anchors/fiber/visibleScreens.js.map +1 -1
- package/lib/module/anchors/fiber/walkVisibleFibers.js +61 -0
- package/lib/module/anchors/fiber/walkVisibleFibers.js.map +1 -0
- package/lib/module/anchors/isInstanceOnVisibleScreen.js +46 -0
- package/lib/module/anchors/isInstanceOnVisibleScreen.js.map +1 -0
- package/lib/module/anchors/resolveAnchorHost.js +2 -1
- package/lib/module/anchors/resolveAnchorHost.js.map +1 -1
- package/lib/module/anchors/resolveAutoAnchorHost.js +25 -18
- package/lib/module/anchors/resolveAutoAnchorHost.js.map +1 -1
- package/lib/module/anchors/resolveElementTargets.js +152 -0
- package/lib/module/anchors/resolveElementTargets.js.map +1 -0
- package/lib/module/anchors/semanticMatcher.js +26 -9
- package/lib/module/anchors/semanticMatcher.js.map +1 -1
- package/lib/module/anchors/targetPressMonitor.js +8 -3
- package/lib/module/anchors/targetPressMonitor.js.map +1 -1
- package/lib/module/anchors/useUserflowAnchor.js +1 -0
- package/lib/module/anchors/useUserflowAnchor.js.map +1 -1
- package/lib/module/anonymousId.js +18 -6
- package/lib/module/anonymousId.js.map +1 -1
- package/lib/module/authoring/ElementPickerOverlay.js +128 -52
- package/lib/module/authoring/ElementPickerOverlay.js.map +1 -1
- package/lib/module/authoring/chrome/ChromeBottomSheet.js +32 -10
- package/lib/module/authoring/chrome/ChromeBottomSheet.js.map +1 -1
- package/lib/module/authoring/chrome/ChromeButton.js +8 -3
- package/lib/module/authoring/chrome/ChromeButton.js.map +1 -1
- package/lib/module/authoring/chrome/ChromeIcon.js +4 -0
- package/lib/module/authoring/chrome/ChromeIcon.js.map +1 -1
- package/lib/module/authoring/chrome/ChromeTopBar.js +23 -10
- package/lib/module/authoring/chrome/ChromeTopBar.js.map +1 -1
- package/lib/module/authoring/chrome/DoubleTapBridge.js +19 -12
- package/lib/module/authoring/chrome/DoubleTapBridge.js.map +1 -1
- package/lib/module/authoring/chrome/doubleTapMonitor.js +10 -0
- package/lib/module/authoring/chrome/doubleTapMonitor.js.map +1 -1
- package/lib/module/authoring/chrome/icons/circle-exclamation.png +0 -0
- package/lib/module/authoring/chrome/icons/circle-exclamation@2x.png +0 -0
- package/lib/module/authoring/chrome/icons/circle-exclamation@3x.png +0 -0
- package/lib/module/authoring/chrome/icons/triangle-exclamation.png +0 -0
- package/lib/module/authoring/chrome/icons/triangle-exclamation@2x.png +0 -0
- package/lib/module/authoring/chrome/icons/triangle-exclamation@3x.png +0 -0
- package/lib/module/authoring/chrome/tokens.js +7 -6
- package/lib/module/authoring/chrome/tokens.js.map +1 -1
- package/lib/module/authoring/elementPickerController.js.map +1 -1
- package/lib/module/authoring/fingerprintFromInstance.js +198 -4
- package/lib/module/authoring/fingerprintFromInstance.js.map +1 -1
- package/lib/module/authoring/hitTest.js +264 -18
- package/lib/module/authoring/hitTest.js.map +1 -1
- package/lib/module/authoring/hostAtPoint.js +199 -0
- package/lib/module/authoring/hostAtPoint.js.map +1 -0
- package/lib/module/content/BannerStepButton.js +63 -0
- package/lib/module/content/BannerStepButton.js.map +1 -0
- package/lib/module/content/buttonAppearance.js +14 -0
- package/lib/module/content/buttonAppearance.js.map +1 -1
- package/lib/module/content/resolveBannerButtonChrome.js +41 -0
- package/lib/module/content/resolveBannerButtonChrome.js.map +1 -0
- package/lib/module/content/themeColor.js +14 -0
- package/lib/module/content/themeColor.js.map +1 -1
- package/lib/module/deepLinking.js +4 -4
- package/lib/module/evalJs/EvalJsHost.js +239 -0
- package/lib/module/evalJs/EvalJsHost.js.map +1 -0
- package/lib/module/evalJs/bootstrap.js +76 -0
- package/lib/module/evalJs/bootstrap.js.map +1 -0
- package/lib/module/evalJs/bridgeMessages.js +139 -0
- package/lib/module/evalJs/bridgeMessages.js.map +1 -0
- package/lib/module/evalJs/evalJsBridge.js +25 -0
- package/lib/module/evalJs/evalJsBridge.js.map +1 -0
- package/lib/module/evalJs/evalJsController.js +119 -0
- package/lib/module/evalJs/evalJsController.js.map +1 -0
- package/lib/module/evalJs/getWebView.js +76 -0
- package/lib/module/evalJs/getWebView.js.map +1 -0
- package/lib/module/evalJs/injectEvalPending.js +15 -0
- package/lib/module/evalJs/injectEvalPending.js.map +1 -0
- package/lib/module/evalJs/types.js +2 -0
- package/lib/module/evalJs/types.js.map +1 -0
- package/lib/module/evalJs/useEvalJsWebViewInjection.js +35 -0
- package/lib/module/evalJs/useEvalJsWebViewInjection.js.map +1 -0
- package/lib/module/expo-router/index.js +1 -0
- package/lib/module/expo-router/index.js.map +1 -1
- package/lib/module/expo-router/redirectSystemPath.js +70 -0
- package/lib/module/expo-router/redirectSystemPath.js.map +1 -0
- package/lib/module/expo-router/useUserflowExpoRouter.js +2 -2
- package/lib/module/index.js +119 -45
- package/lib/module/index.js.map +1 -1
- package/lib/module/installCheck.js +139 -0
- package/lib/module/installCheck.js.map +1 -0
- package/lib/module/lifecycle.js.map +1 -1
- package/lib/module/navigation/WithUserflowReactNavigation.js +14 -11
- package/lib/module/navigation/WithUserflowReactNavigation.js.map +1 -1
- package/lib/module/navigation/openFlowNavigateUrl.js +12 -5
- package/lib/module/navigation/openFlowNavigateUrl.js.map +1 -1
- package/lib/module/pairing/PairingController.js +245 -27
- package/lib/module/pairing/PairingController.js.map +1 -1
- package/lib/module/pairing/PreviewModeBanner.js +54 -16
- package/lib/module/pairing/PreviewModeBanner.js.map +1 -1
- package/lib/module/pairing/deepLink.js +21 -5
- package/lib/module/pairing/deepLink.js.map +1 -1
- package/lib/module/pairing/deviceId.js +45 -0
- package/lib/module/pairing/deviceId.js.map +1 -0
- package/lib/module/pairing/diagnostics.js +5 -4
- package/lib/module/pairing/diagnostics.js.map +1 -1
- package/lib/module/pairing/tokenStorage.js +47 -7
- package/lib/module/pairing/tokenStorage.js.map +1 -1
- package/lib/module/pairing/usePairingState.js +3 -1
- package/lib/module/pairing/usePairingState.js.map +1 -1
- package/lib/module/pairing/usePreviewBarHold.js +134 -0
- package/lib/module/pairing/usePreviewBarHold.js.map +1 -0
- package/lib/module/runtime/BannerHost.js +92 -0
- package/lib/module/runtime/BannerHost.js.map +1 -0
- package/lib/module/runtime/EmbedBannerPlaceholder.js +94 -0
- package/lib/module/runtime/EmbedBannerPlaceholder.js.map +1 -0
- package/lib/module/runtime/SdkErrorBoundary.js +55 -0
- package/lib/module/runtime/SdkErrorBoundary.js.map +1 -0
- package/lib/module/runtime/TargetPressBridge.js +31 -13
- package/lib/module/runtime/TargetPressBridge.js.map +1 -1
- package/lib/module/runtime/UserflowOverlay.js +92 -0
- package/lib/module/runtime/UserflowOverlay.js.map +1 -0
- package/lib/module/runtime/UserflowProvider.js +139 -66
- package/lib/module/runtime/UserflowProvider.js.map +1 -1
- package/lib/module/runtime/bannerEngine.js +55 -0
- package/lib/module/runtime/bannerEngine.js.map +1 -0
- package/lib/module/runtime/bannerEngineContext.js +7 -0
- package/lib/module/runtime/bannerEngineContext.js.map +1 -0
- package/lib/module/runtime/bannerPlacement.js +30 -0
- package/lib/module/runtime/bannerPlacement.js.map +1 -0
- package/lib/module/runtime/embedBannerRegistry.js +24 -0
- package/lib/module/runtime/embedBannerRegistry.js.map +1 -0
- package/lib/module/runtime/flowEngine.js +72 -3
- package/lib/module/runtime/flowEngine.js.map +1 -1
- package/lib/module/runtime/isolateCall.js +43 -0
- package/lib/module/runtime/isolateCall.js.map +1 -0
- package/lib/module/runtime/reportSdkError.js +15 -0
- package/lib/module/runtime/reportSdkError.js.map +1 -0
- package/lib/module/runtime/useBannerSession.js +33 -0
- package/lib/module/runtime/useBannerSession.js.map +1 -0
- package/lib/module/screenTracker.js +33 -9
- package/lib/module/screenTracker.js.map +1 -1
- package/lib/module/storage/asyncStorage.js +61 -0
- package/lib/module/storage/asyncStorage.js.map +1 -0
- package/lib/module/surfaces/BannerBar.js +155 -0
- package/lib/module/surfaces/BannerBar.js.map +1 -0
- package/lib/module/surfaces/BannerSurface.js +72 -0
- package/lib/module/surfaces/BannerSurface.js.map +1 -0
- package/lib/module/surfaces/MadeWithUserflow.js +11 -7
- package/lib/module/surfaces/MadeWithUserflow.js.map +1 -1
- package/lib/module/surfaces/ModalSurface.js +1 -1
- package/lib/module/surfaces/ModalSurface.js.map +1 -1
- package/lib/module/surfaces/TooltipSurface.js +17 -1
- package/lib/module/surfaces/TooltipSurface.js.map +1 -1
- package/lib/module/surfaces/bannerBarLayout.js +69 -0
- package/lib/module/surfaces/bannerBarLayout.js.map +1 -0
- package/lib/module/surfaces/bannerBarTokens.js +37 -0
- package/lib/module/surfaces/bannerBarTokens.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/BannerWebViewBar.js +272 -0
- package/lib/module/surfaces/bannerWebView/BannerWebViewBar.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/bannerAutoRunEvalJs.js +42 -0
- package/lib/module/surfaces/bannerWebView/bannerAutoRunEvalJs.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/bannerAutoRunSession.js +19 -0
- package/lib/module/surfaces/bannerWebView/bannerAutoRunSession.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/bannerNeedsWebView.js +35 -0
- package/lib/module/surfaces/bannerWebView/bannerNeedsWebView.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/bannerThemeStyles.js +69 -0
- package/lib/module/surfaces/bannerWebView/bannerThemeStyles.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/bannerWebFrameCss.js +148 -0
- package/lib/module/surfaces/bannerWebView/bannerWebFrameCss.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/buildCustomBannerHtml.js +143 -0
- package/lib/module/surfaces/bannerWebView/buildCustomBannerHtml.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/buttonClassName.js +9 -0
- package/lib/module/surfaces/bannerWebView/buttonClassName.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/resolveCdnHost.js +42 -0
- package/lib/module/surfaces/bannerWebView/resolveCdnHost.js.map +1 -0
- package/lib/module/surfaces/bannerWebView/richContentDocToHtml.js +79 -0
- package/lib/module/surfaces/bannerWebView/richContentDocToHtml.js.map +1 -0
- package/lib/module/surfaces/resolveBannerTheme.js +16 -0
- package/lib/module/surfaces/resolveBannerTheme.js.map +1 -0
- package/lib/module/surfaces/safeArea.js +72 -13
- package/lib/module/surfaces/safeArea.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/commonjs/src/anchors/AnchorRegistry.d.ts +7 -0
- package/lib/typescript/commonjs/src/anchors/AnchorRegistry.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts +14 -0
- package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/elementConditionEvaluator.d.ts +12 -16
- package/lib/typescript/commonjs/src/anchors/elementConditionEvaluator.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/elementTapMonitor.d.ts +36 -0
- package/lib/typescript/commonjs/src/anchors/elementTapMonitor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/elementTargetMatch.d.ts +20 -0
- package/lib/typescript/commonjs/src/anchors/elementTargetMatch.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/fiberPath.d.ts +12 -0
- package/lib/typescript/commonjs/src/anchors/fiber/fiberPath.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/findAnchorFiber.d.ts +21 -8
- package/lib/typescript/commonjs/src/anchors/fiber/findAnchorFiber.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/fiber/resolveFiberPath.d.ts +24 -0
- package/lib/typescript/commonjs/src/anchors/fiber/resolveFiberPath.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/touchTargetFiber.d.ts +24 -0
- package/lib/typescript/commonjs/src/anchors/fiber/touchTargetFiber.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/visibleRect.d.ts +32 -0
- package/lib/typescript/commonjs/src/anchors/fiber/visibleRect.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/visibleScreens.d.ts +6 -1
- package/lib/typescript/commonjs/src/anchors/fiber/visibleScreens.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/fiber/walkVisibleFibers.d.ts +20 -0
- package/lib/typescript/commonjs/src/anchors/fiber/walkVisibleFibers.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/isInstanceOnVisibleScreen.d.ts +19 -0
- package/lib/typescript/commonjs/src/anchors/isInstanceOnVisibleScreen.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts +2 -1
- package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/resolveAutoAnchorHost.d.ts +10 -1
- package/lib/typescript/commonjs/src/anchors/resolveAutoAnchorHost.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/resolveElementTargets.d.ts +39 -0
- package/lib/typescript/commonjs/src/anchors/resolveElementTargets.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/semanticMatcher.d.ts +6 -4
- package/lib/typescript/commonjs/src/anchors/semanticMatcher.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts +2 -0
- package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anchors/useUserflowAnchor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/anonymousId.d.ts +3 -0
- package/lib/typescript/commonjs/src/anonymousId.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/ElementPickerOverlay.d.ts +1 -0
- package/lib/typescript/commonjs/src/authoring/ElementPickerOverlay.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeBottomSheet.d.ts +14 -3
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeBottomSheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeIcon.d.ts +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeIcon.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeTopBar.d.ts +12 -4
- package/lib/typescript/commonjs/src/authoring/chrome/ChromeTopBar.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/DoubleTapBridge.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/doubleTapMonitor.d.ts +5 -0
- package/lib/typescript/commonjs/src/authoring/chrome/doubleTapMonitor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/chrome/tokens.d.ts +7 -6
- package/lib/typescript/commonjs/src/authoring/chrome/tokens.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/elementPickerController.d.ts +2 -3
- package/lib/typescript/commonjs/src/authoring/elementPickerController.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/fingerprintFromInstance.d.ts +57 -2
- package/lib/typescript/commonjs/src/authoring/fingerprintFromInstance.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/hitTest.d.ts +47 -3
- package/lib/typescript/commonjs/src/authoring/hitTest.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/authoring/hostAtPoint.d.ts +7 -0
- package/lib/typescript/commonjs/src/authoring/hostAtPoint.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/BannerStepButton.d.ts +14 -0
- package/lib/typescript/commonjs/src/content/BannerStepButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/buttonAppearance.d.ts +4 -0
- package/lib/typescript/commonjs/src/content/buttonAppearance.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/content/resolveBannerButtonChrome.d.ts +8 -0
- package/lib/typescript/commonjs/src/content/resolveBannerButtonChrome.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/themeColor.d.ts +2 -0
- package/lib/typescript/commonjs/src/content/themeColor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/content/types.d.ts +1 -0
- package/lib/typescript/commonjs/src/content/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/deepLinking.d.ts +4 -4
- package/lib/typescript/commonjs/src/evalJs/EvalJsHost.d.ts +14 -0
- package/lib/typescript/commonjs/src/evalJs/EvalJsHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/bootstrap.d.ts +18 -0
- package/lib/typescript/commonjs/src/evalJs/bootstrap.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/bridgeMessages.d.ts +37 -0
- package/lib/typescript/commonjs/src/evalJs/bridgeMessages.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/evalJsBridge.d.ts +16 -0
- package/lib/typescript/commonjs/src/evalJs/evalJsBridge.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/evalJsController.d.ts +24 -0
- package/lib/typescript/commonjs/src/evalJs/evalJsController.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/getWebView.d.ts +64 -0
- package/lib/typescript/commonjs/src/evalJs/getWebView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/injectEvalPending.d.ts +4 -0
- package/lib/typescript/commonjs/src/evalJs/injectEvalPending.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/types.d.ts +53 -0
- package/lib/typescript/commonjs/src/evalJs/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/evalJs/useEvalJsWebViewInjection.d.ts +12 -0
- package/lib/typescript/commonjs/src/evalJs/useEvalJsWebViewInjection.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/index.d.ts +1 -0
- package/lib/typescript/commonjs/src/expo-router/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/expo-router/redirectSystemPath.d.ts +50 -0
- package/lib/typescript/commonjs/src/expo-router/redirectSystemPath.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/useUserflowExpoRouter.d.ts +2 -2
- package/lib/typescript/commonjs/src/index.d.ts +16 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/installCheck.d.ts +33 -0
- package/lib/typescript/commonjs/src/installCheck.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/lifecycle.d.ts +4 -1
- package/lib/typescript/commonjs/src/lifecycle.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/navigation/WithUserflowReactNavigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/navigation/openFlowNavigateUrl.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/PairingController.d.ts +71 -4
- package/lib/typescript/commonjs/src/pairing/PairingController.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/PreviewModeBanner.d.ts +9 -1
- package/lib/typescript/commonjs/src/pairing/PreviewModeBanner.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/deepLink.d.ts +6 -2
- package/lib/typescript/commonjs/src/pairing/deepLink.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/deviceId.d.ts +12 -0
- package/lib/typescript/commonjs/src/pairing/deviceId.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/diagnostics.d.ts +3 -2
- package/lib/typescript/commonjs/src/pairing/diagnostics.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/tokenStorage.d.ts +14 -2
- package/lib/typescript/commonjs/src/pairing/tokenStorage.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/usePairingState.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/pairing/usePreviewBarHold.d.ts +19 -0
- package/lib/typescript/commonjs/src/pairing/usePreviewBarHold.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/BannerHost.d.ts +16 -0
- package/lib/typescript/commonjs/src/runtime/BannerHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/EmbedBannerPlaceholder.d.ts +18 -0
- package/lib/typescript/commonjs/src/runtime/EmbedBannerPlaceholder.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/SdkErrorBoundary.d.ts +34 -0
- package/lib/typescript/commonjs/src/runtime/SdkErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts +2 -1
- package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/runtime/UserflowOverlay.d.ts +15 -0
- package/lib/typescript/commonjs/src/runtime/UserflowOverlay.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/UserflowProvider.d.ts +9 -3
- package/lib/typescript/commonjs/src/runtime/UserflowProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/runtime/bannerEngine.d.ts +12 -0
- package/lib/typescript/commonjs/src/runtime/bannerEngine.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/bannerEngineContext.d.ts +5 -0
- package/lib/typescript/commonjs/src/runtime/bannerEngineContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/bannerPlacement.d.ts +12 -0
- package/lib/typescript/commonjs/src/runtime/bannerPlacement.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/embedBannerRegistry.d.ts +5 -0
- package/lib/typescript/commonjs/src/runtime/embedBannerRegistry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/flowEngine.d.ts +25 -1
- package/lib/typescript/commonjs/src/runtime/flowEngine.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/runtime/isolateCall.d.ts +20 -0
- package/lib/typescript/commonjs/src/runtime/isolateCall.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/reportSdkError.d.ts +10 -0
- package/lib/typescript/commonjs/src/runtime/reportSdkError.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/useBannerSession.d.ts +5 -0
- package/lib/typescript/commonjs/src/runtime/useBannerSession.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/screenTracker.d.ts +7 -3
- package/lib/typescript/commonjs/src/screenTracker.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/storage/asyncStorage.d.ts +15 -0
- package/lib/typescript/commonjs/src/storage/asyncStorage.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/BannerBar.d.ts +14 -0
- package/lib/typescript/commonjs/src/surfaces/BannerBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/BannerSurface.d.ts +15 -0
- package/lib/typescript/commonjs/src/surfaces/BannerSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/MadeWithUserflow.d.ts +10 -6
- package/lib/typescript/commonjs/src/surfaces/MadeWithUserflow.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/surfaces/TooltipSurface.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/surfaces/bannerBarLayout.d.ts +15 -0
- package/lib/typescript/commonjs/src/surfaces/bannerBarLayout.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerBarTokens.d.ts +20 -0
- package/lib/typescript/commonjs/src/surfaces/bannerBarTokens.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/BannerWebViewBar.d.ts +10 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/BannerWebViewBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerAutoRunEvalJs.d.ts +7 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerAutoRunEvalJs.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerAutoRunSession.d.ts +6 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerAutoRunSession.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerNeedsWebView.d.ts +13 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerNeedsWebView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerThemeStyles.d.ts +5 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerThemeStyles.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerWebFrameCss.d.ts +6 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/bannerWebFrameCss.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts +9 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/buttonClassName.d.ts +3 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/buttonClassName.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/resolveCdnHost.d.ts +10 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/resolveCdnHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/richContentDocToHtml.d.ts +3 -0
- package/lib/typescript/commonjs/src/surfaces/bannerWebView/richContentDocToHtml.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/resolveBannerTheme.d.ts +7 -0
- package/lib/typescript/commonjs/src/surfaces/resolveBannerTheme.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/safeArea.d.ts +9 -1
- package/lib/typescript/commonjs/src/surfaces/safeArea.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/version.d.ts +1 -1
- package/lib/typescript/module/src/anchors/AnchorRegistry.d.ts +7 -0
- package/lib/typescript/module/src/anchors/AnchorRegistry.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts +14 -0
- package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/elementConditionEvaluator.d.ts +12 -16
- package/lib/typescript/module/src/anchors/elementConditionEvaluator.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/elementTapMonitor.d.ts +36 -0
- package/lib/typescript/module/src/anchors/elementTapMonitor.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/elementTargetMatch.d.ts +20 -0
- package/lib/typescript/module/src/anchors/elementTargetMatch.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/fiberPath.d.ts +12 -0
- package/lib/typescript/module/src/anchors/fiber/fiberPath.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/findAnchorFiber.d.ts +21 -8
- package/lib/typescript/module/src/anchors/fiber/findAnchorFiber.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/fiber/resolveFiberPath.d.ts +24 -0
- package/lib/typescript/module/src/anchors/fiber/resolveFiberPath.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/touchTargetFiber.d.ts +24 -0
- package/lib/typescript/module/src/anchors/fiber/touchTargetFiber.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/visibleRect.d.ts +32 -0
- package/lib/typescript/module/src/anchors/fiber/visibleRect.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/visibleScreens.d.ts +6 -1
- package/lib/typescript/module/src/anchors/fiber/visibleScreens.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/fiber/walkVisibleFibers.d.ts +20 -0
- package/lib/typescript/module/src/anchors/fiber/walkVisibleFibers.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/isInstanceOnVisibleScreen.d.ts +19 -0
- package/lib/typescript/module/src/anchors/isInstanceOnVisibleScreen.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts +2 -1
- package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/resolveAutoAnchorHost.d.ts +10 -1
- package/lib/typescript/module/src/anchors/resolveAutoAnchorHost.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/resolveElementTargets.d.ts +39 -0
- package/lib/typescript/module/src/anchors/resolveElementTargets.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/semanticMatcher.d.ts +6 -4
- package/lib/typescript/module/src/anchors/semanticMatcher.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts +2 -0
- package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts.map +1 -1
- package/lib/typescript/module/src/anchors/useUserflowAnchor.d.ts.map +1 -1
- package/lib/typescript/module/src/anonymousId.d.ts +3 -0
- package/lib/typescript/module/src/anonymousId.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/ElementPickerOverlay.d.ts +1 -0
- package/lib/typescript/module/src/authoring/ElementPickerOverlay.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/ChromeBottomSheet.d.ts +14 -3
- package/lib/typescript/module/src/authoring/chrome/ChromeBottomSheet.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/ChromeButton.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/ChromeIcon.d.ts +1 -1
- package/lib/typescript/module/src/authoring/chrome/ChromeIcon.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/ChromeTopBar.d.ts +12 -4
- package/lib/typescript/module/src/authoring/chrome/ChromeTopBar.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/DoubleTapBridge.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/doubleTapMonitor.d.ts +5 -0
- package/lib/typescript/module/src/authoring/chrome/doubleTapMonitor.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/chrome/tokens.d.ts +7 -6
- package/lib/typescript/module/src/authoring/chrome/tokens.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/elementPickerController.d.ts +2 -3
- package/lib/typescript/module/src/authoring/elementPickerController.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/fingerprintFromInstance.d.ts +57 -2
- package/lib/typescript/module/src/authoring/fingerprintFromInstance.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/hitTest.d.ts +47 -3
- package/lib/typescript/module/src/authoring/hitTest.d.ts.map +1 -1
- package/lib/typescript/module/src/authoring/hostAtPoint.d.ts +7 -0
- package/lib/typescript/module/src/authoring/hostAtPoint.d.ts.map +1 -0
- package/lib/typescript/module/src/content/BannerStepButton.d.ts +14 -0
- package/lib/typescript/module/src/content/BannerStepButton.d.ts.map +1 -0
- package/lib/typescript/module/src/content/buttonAppearance.d.ts +4 -0
- package/lib/typescript/module/src/content/buttonAppearance.d.ts.map +1 -1
- package/lib/typescript/module/src/content/resolveBannerButtonChrome.d.ts +8 -0
- package/lib/typescript/module/src/content/resolveBannerButtonChrome.d.ts.map +1 -0
- package/lib/typescript/module/src/content/themeColor.d.ts +2 -0
- package/lib/typescript/module/src/content/themeColor.d.ts.map +1 -1
- package/lib/typescript/module/src/content/types.d.ts +1 -0
- package/lib/typescript/module/src/content/types.d.ts.map +1 -1
- package/lib/typescript/module/src/deepLinking.d.ts +4 -4
- package/lib/typescript/module/src/evalJs/EvalJsHost.d.ts +14 -0
- package/lib/typescript/module/src/evalJs/EvalJsHost.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/bootstrap.d.ts +18 -0
- package/lib/typescript/module/src/evalJs/bootstrap.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/bridgeMessages.d.ts +37 -0
- package/lib/typescript/module/src/evalJs/bridgeMessages.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/evalJsBridge.d.ts +16 -0
- package/lib/typescript/module/src/evalJs/evalJsBridge.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/evalJsController.d.ts +24 -0
- package/lib/typescript/module/src/evalJs/evalJsController.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/getWebView.d.ts +64 -0
- package/lib/typescript/module/src/evalJs/getWebView.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/injectEvalPending.d.ts +4 -0
- package/lib/typescript/module/src/evalJs/injectEvalPending.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/types.d.ts +53 -0
- package/lib/typescript/module/src/evalJs/types.d.ts.map +1 -0
- package/lib/typescript/module/src/evalJs/useEvalJsWebViewInjection.d.ts +12 -0
- package/lib/typescript/module/src/evalJs/useEvalJsWebViewInjection.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/index.d.ts +1 -0
- package/lib/typescript/module/src/expo-router/index.d.ts.map +1 -1
- package/lib/typescript/module/src/expo-router/redirectSystemPath.d.ts +50 -0
- package/lib/typescript/module/src/expo-router/redirectSystemPath.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/useUserflowExpoRouter.d.ts +2 -2
- package/lib/typescript/module/src/index.d.ts +16 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/installCheck.d.ts +33 -0
- package/lib/typescript/module/src/installCheck.d.ts.map +1 -0
- package/lib/typescript/module/src/lifecycle.d.ts +4 -1
- package/lib/typescript/module/src/lifecycle.d.ts.map +1 -1
- package/lib/typescript/module/src/navigation/WithUserflowReactNavigation.d.ts.map +1 -1
- package/lib/typescript/module/src/navigation/openFlowNavigateUrl.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/PairingController.d.ts +71 -4
- package/lib/typescript/module/src/pairing/PairingController.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/PreviewModeBanner.d.ts +9 -1
- package/lib/typescript/module/src/pairing/PreviewModeBanner.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/deepLink.d.ts +6 -2
- package/lib/typescript/module/src/pairing/deepLink.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/deviceId.d.ts +12 -0
- package/lib/typescript/module/src/pairing/deviceId.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/diagnostics.d.ts +3 -2
- package/lib/typescript/module/src/pairing/diagnostics.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/tokenStorage.d.ts +14 -2
- package/lib/typescript/module/src/pairing/tokenStorage.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/usePairingState.d.ts.map +1 -1
- package/lib/typescript/module/src/pairing/usePreviewBarHold.d.ts +19 -0
- package/lib/typescript/module/src/pairing/usePreviewBarHold.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/BannerHost.d.ts +16 -0
- package/lib/typescript/module/src/runtime/BannerHost.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/EmbedBannerPlaceholder.d.ts +18 -0
- package/lib/typescript/module/src/runtime/EmbedBannerPlaceholder.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/SdkErrorBoundary.d.ts +34 -0
- package/lib/typescript/module/src/runtime/SdkErrorBoundary.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts +2 -1
- package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts.map +1 -1
- package/lib/typescript/module/src/runtime/UserflowOverlay.d.ts +15 -0
- package/lib/typescript/module/src/runtime/UserflowOverlay.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/UserflowProvider.d.ts +9 -3
- package/lib/typescript/module/src/runtime/UserflowProvider.d.ts.map +1 -1
- package/lib/typescript/module/src/runtime/bannerEngine.d.ts +12 -0
- package/lib/typescript/module/src/runtime/bannerEngine.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/bannerEngineContext.d.ts +5 -0
- package/lib/typescript/module/src/runtime/bannerEngineContext.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/bannerPlacement.d.ts +12 -0
- package/lib/typescript/module/src/runtime/bannerPlacement.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/embedBannerRegistry.d.ts +5 -0
- package/lib/typescript/module/src/runtime/embedBannerRegistry.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/flowEngine.d.ts +25 -1
- package/lib/typescript/module/src/runtime/flowEngine.d.ts.map +1 -1
- package/lib/typescript/module/src/runtime/isolateCall.d.ts +20 -0
- package/lib/typescript/module/src/runtime/isolateCall.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/reportSdkError.d.ts +10 -0
- package/lib/typescript/module/src/runtime/reportSdkError.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/useBannerSession.d.ts +5 -0
- package/lib/typescript/module/src/runtime/useBannerSession.d.ts.map +1 -0
- package/lib/typescript/module/src/screenTracker.d.ts +7 -3
- package/lib/typescript/module/src/screenTracker.d.ts.map +1 -1
- package/lib/typescript/module/src/storage/asyncStorage.d.ts +15 -0
- package/lib/typescript/module/src/storage/asyncStorage.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/BannerBar.d.ts +14 -0
- package/lib/typescript/module/src/surfaces/BannerBar.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/BannerSurface.d.ts +15 -0
- package/lib/typescript/module/src/surfaces/BannerSurface.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/MadeWithUserflow.d.ts +10 -6
- package/lib/typescript/module/src/surfaces/MadeWithUserflow.d.ts.map +1 -1
- package/lib/typescript/module/src/surfaces/TooltipSurface.d.ts.map +1 -1
- package/lib/typescript/module/src/surfaces/bannerBarLayout.d.ts +15 -0
- package/lib/typescript/module/src/surfaces/bannerBarLayout.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerBarTokens.d.ts +20 -0
- package/lib/typescript/module/src/surfaces/bannerBarTokens.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/BannerWebViewBar.d.ts +10 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/BannerWebViewBar.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerAutoRunEvalJs.d.ts +7 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerAutoRunEvalJs.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerAutoRunSession.d.ts +6 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerAutoRunSession.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerNeedsWebView.d.ts +13 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerNeedsWebView.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerThemeStyles.d.ts +5 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerThemeStyles.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerWebFrameCss.d.ts +6 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/bannerWebFrameCss.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts +9 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/buildCustomBannerHtml.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/buttonClassName.d.ts +3 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/buttonClassName.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/resolveCdnHost.d.ts +10 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/resolveCdnHost.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/richContentDocToHtml.d.ts +3 -0
- package/lib/typescript/module/src/surfaces/bannerWebView/richContentDocToHtml.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/resolveBannerTheme.d.ts +7 -0
- package/lib/typescript/module/src/surfaces/resolveBannerTheme.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/safeArea.d.ts +9 -1
- package/lib/typescript/module/src/surfaces/safeArea.d.ts.map +1 -1
- package/lib/typescript/module/src/version.d.ts +1 -1
- package/package.json +16 -3
- package/src/anchors/AnchorRegistry.ts +12 -0
- package/src/anchors/AutoAnchorRegistry.ts +41 -11
- package/src/anchors/elementConditionEvaluator.ts +235 -70
- package/src/anchors/elementTapMonitor.ts +95 -0
- package/src/anchors/elementTargetMatch.ts +90 -0
- package/src/anchors/fiber/fiberPath.ts +117 -0
- package/src/anchors/fiber/findAnchorFiber.ts +121 -80
- package/src/anchors/fiber/resolveFiberPath.ts +215 -0
- package/src/anchors/fiber/touchTargetFiber.ts +125 -0
- package/src/anchors/fiber/visibleRect.ts +153 -0
- package/src/anchors/fiber/visibleScreens.ts +74 -36
- package/src/anchors/fiber/walkVisibleFibers.ts +65 -0
- package/src/anchors/isInstanceOnVisibleScreen.ts +55 -0
- package/src/anchors/resolveAnchorHost.ts +2 -1
- package/src/anchors/resolveAutoAnchorHost.ts +20 -18
- package/src/anchors/resolveElementTargets.ts +165 -0
- package/src/anchors/semanticMatcher.ts +38 -14
- package/src/anchors/targetPressMonitor.ts +12 -3
- package/src/anchors/useUserflowAnchor.ts +1 -0
- package/src/anonymousId.ts +20 -8
- package/src/authoring/ElementPickerOverlay.tsx +168 -59
- package/src/authoring/chrome/ChromeBottomSheet.tsx +49 -8
- package/src/authoring/chrome/ChromeButton.tsx +9 -4
- package/src/authoring/chrome/ChromeIcon.tsx +10 -1
- package/src/authoring/chrome/ChromeTopBar.tsx +39 -15
- package/src/authoring/chrome/DoubleTapBridge.tsx +19 -12
- package/src/authoring/chrome/doubleTapMonitor.ts +10 -0
- package/src/authoring/chrome/icons/circle-exclamation.png +0 -0
- package/src/authoring/chrome/icons/circle-exclamation@2x.png +0 -0
- package/src/authoring/chrome/icons/circle-exclamation@3x.png +0 -0
- package/src/authoring/chrome/icons/triangle-exclamation.png +0 -0
- package/src/authoring/chrome/icons/triangle-exclamation@2x.png +0 -0
- package/src/authoring/chrome/icons/triangle-exclamation@3x.png +0 -0
- package/src/authoring/chrome/tokens.ts +7 -2
- package/src/authoring/elementPickerController.ts +2 -4
- package/src/authoring/fingerprintFromInstance.ts +170 -4
- package/src/authoring/hitTest.ts +324 -16
- package/src/authoring/hostAtPoint.ts +247 -0
- package/src/content/BannerStepButton.tsx +91 -0
- package/src/content/buttonAppearance.ts +16 -0
- package/src/content/resolveBannerButtonChrome.ts +49 -0
- package/src/content/themeColor.ts +15 -0
- package/src/content/types.ts +1 -0
- package/src/deepLinking.ts +4 -4
- package/src/evalJs/EvalJsHost.tsx +255 -0
- package/src/evalJs/bootstrap.ts +83 -0
- package/src/evalJs/bridgeMessages.ts +134 -0
- package/src/evalJs/evalJsBridge.ts +42 -0
- package/src/evalJs/evalJsController.ts +127 -0
- package/src/evalJs/getWebView.ts +124 -0
- package/src/evalJs/injectEvalPending.ts +14 -0
- package/src/evalJs/types.ts +56 -0
- package/src/evalJs/useEvalJsWebViewInjection.ts +37 -0
- package/src/expo-router/index.ts +8 -0
- package/src/expo-router/redirectSystemPath.ts +86 -0
- package/src/expo-router/useUserflowExpoRouter.ts +2 -2
- package/src/index.ts +139 -45
- package/src/installCheck.ts +191 -0
- package/src/lifecycle.ts +4 -1
- package/src/navigation/WithUserflowReactNavigation.tsx +13 -10
- package/src/navigation/openFlowNavigateUrl.ts +12 -5
- package/src/pairing/PairingController.ts +283 -29
- package/src/pairing/PreviewModeBanner.tsx +71 -14
- package/src/pairing/deepLink.ts +23 -5
- package/src/pairing/deviceId.ts +46 -0
- package/src/pairing/diagnostics.ts +6 -4
- package/src/pairing/tokenStorage.ts +60 -7
- package/src/pairing/usePairingState.ts +2 -0
- package/src/pairing/usePreviewBarHold.ts +160 -0
- package/src/runtime/BannerHost.tsx +102 -0
- package/src/runtime/EmbedBannerPlaceholder.tsx +115 -0
- package/src/runtime/SdkErrorBoundary.tsx +77 -0
- package/src/runtime/TargetPressBridge.tsx +36 -13
- package/src/runtime/UserflowOverlay.tsx +118 -0
- package/src/runtime/UserflowProvider.tsx +146 -64
- package/src/runtime/bannerEngine.ts +55 -0
- package/src/runtime/bannerEngineContext.ts +5 -0
- package/src/runtime/bannerPlacement.ts +36 -0
- package/src/runtime/embedBannerRegistry.ts +28 -0
- package/src/runtime/flowEngine.ts +76 -3
- package/src/runtime/isolateCall.ts +53 -0
- package/src/runtime/reportSdkError.ts +12 -0
- package/src/runtime/useBannerSession.ts +35 -0
- package/src/screenTracker.ts +34 -8
- package/src/storage/asyncStorage.ts +88 -0
- package/src/surfaces/BannerBar.tsx +176 -0
- package/src/surfaces/BannerSurface.tsx +82 -0
- package/src/surfaces/MadeWithUserflow.tsx +15 -10
- package/src/surfaces/ModalSurface.tsx +1 -1
- package/src/surfaces/TooltipSurface.tsx +17 -1
- package/src/surfaces/bannerBarLayout.ts +74 -0
- package/src/surfaces/bannerBarTokens.ts +34 -0
- package/src/surfaces/bannerWebView/BannerWebViewBar.tsx +312 -0
- package/src/surfaces/bannerWebView/bannerAutoRunEvalJs.ts +44 -0
- package/src/surfaces/bannerWebView/bannerAutoRunSession.ts +19 -0
- package/src/surfaces/bannerWebView/bannerNeedsWebView.ts +38 -0
- package/src/surfaces/bannerWebView/bannerThemeStyles.ts +91 -0
- package/src/surfaces/bannerWebView/bannerWebFrameCss.ts +145 -0
- package/src/surfaces/bannerWebView/buildCustomBannerHtml.ts +178 -0
- package/src/surfaces/bannerWebView/buttonClassName.ts +15 -0
- package/src/surfaces/bannerWebView/resolveCdnHost.ts +47 -0
- package/src/surfaces/bannerWebView/richContentDocToHtml.ts +99 -0
- package/src/surfaces/resolveBannerTheme.ts +18 -0
- package/src/surfaces/safeArea.ts +88 -19
- package/src/version.ts +1 -1
- package/vendor/core/dist/attributes.d.ts.map +1 -1
- package/vendor/core/dist/attributes.js +4 -4
- package/vendor/core/dist/attributes.js.map +1 -1
- package/vendor/core/dist/constants.d.ts +2 -0
- package/vendor/core/dist/constants.d.ts.map +1 -1
- package/vendor/core/dist/constants.js +2 -0
- package/vendor/core/dist/constants.js.map +1 -1
- package/vendor/core/dist/engine/BannerSessionEngine.d.ts +73 -0
- package/vendor/core/dist/engine/BannerSessionEngine.d.ts.map +1 -0
- package/vendor/core/dist/engine/BannerSessionEngine.js +236 -0
- package/vendor/core/dist/engine/BannerSessionEngine.js.map +1 -0
- package/vendor/core/dist/engine/ClientConditionEngine.d.ts +20 -1
- package/vendor/core/dist/engine/ClientConditionEngine.d.ts.map +1 -1
- package/vendor/core/dist/engine/ClientConditionEngine.js +13 -10
- package/vendor/core/dist/engine/ClientConditionEngine.js.map +1 -1
- package/vendor/core/dist/engine/FlowSessionEngine.d.ts +41 -1
- package/vendor/core/dist/engine/FlowSessionEngine.d.ts.map +1 -1
- package/vendor/core/dist/engine/FlowSessionEngine.js +167 -28
- package/vendor/core/dist/engine/FlowSessionEngine.js.map +1 -1
- package/vendor/core/dist/engine/PairingEngine.d.ts +38 -2
- package/vendor/core/dist/engine/PairingEngine.d.ts.map +1 -1
- package/vendor/core/dist/engine/PairingEngine.js +19 -2
- package/vendor/core/dist/engine/PairingEngine.js.map +1 -1
- package/vendor/core/dist/engine/UserflowCore.d.ts +10 -1
- package/vendor/core/dist/engine/UserflowCore.d.ts.map +1 -1
- package/vendor/core/dist/engine/UserflowCore.js +68 -29
- package/vendor/core/dist/engine/UserflowCore.js.map +1 -1
- package/vendor/core/dist/engine/handleActions.d.ts +17 -3
- package/vendor/core/dist/engine/handleActions.d.ts.map +1 -1
- package/vendor/core/dist/engine/handleActions.js +17 -14
- package/vendor/core/dist/engine/handleActions.js.map +1 -1
- package/vendor/core/dist/engine/trackCondition.d.ts +2 -0
- package/vendor/core/dist/engine/trackCondition.d.ts.map +1 -1
- package/vendor/core/dist/engine/trackCondition.js +4 -2
- package/vendor/core/dist/engine/trackCondition.js.map +1 -1
- package/vendor/core/dist/engine/trackStepTriggers.d.ts +11 -1
- package/vendor/core/dist/engine/trackStepTriggers.d.ts.map +1 -1
- package/vendor/core/dist/engine/trackStepTriggers.js +42 -16
- package/vendor/core/dist/engine/trackStepTriggers.js.map +1 -1
- package/vendor/core/dist/errors.d.ts +11 -1
- package/vendor/core/dist/errors.d.ts.map +1 -1
- package/vendor/core/dist/errors.js +2 -1
- package/vendor/core/dist/errors.js.map +1 -1
- package/vendor/core/dist/eventAttributes.d.ts.map +1 -1
- package/vendor/core/dist/eventAttributes.js +4 -2
- package/vendor/core/dist/eventAttributes.js.map +1 -1
- package/vendor/core/dist/index.d.ts +5 -2
- package/vendor/core/dist/index.d.ts.map +1 -1
- package/vendor/core/dist/index.js +1 -0
- package/vendor/core/dist/index.js.map +1 -1
- package/vendor/core/dist/normalizeAttributes.js +9 -7
- package/vendor/core/dist/normalizeAttributes.js.map +1 -1
- package/vendor/core/dist/transport/pairing.d.ts +5 -0
- package/vendor/core/dist/transport/pairing.d.ts.map +1 -1
- package/vendor/core/dist/transport/pairing.js +69 -2
- package/vendor/core/dist/transport/pairing.js.map +1 -1
- package/vendor/core/dist/transport/phoenix.d.ts +8 -0
- package/vendor/core/dist/transport/phoenix.d.ts.map +1 -1
- package/vendor/core/dist/transport/phoenix.js +16 -2
- package/vendor/core/dist/transport/phoenix.js.map +1 -1
- package/vendor/core/dist/version.d.ts +1 -1
- package/vendor/core/dist/version.js +1 -1
- package/vendor/core/package.json +1 -1
- package/vendor/protocol/dist/autoData.d.ts +8 -15
- package/vendor/protocol/dist/autoData.d.ts.map +1 -1
- package/vendor/protocol/dist/autoData.js.map +1 -1
- package/vendor/protocol/dist/flows.d.ts +58 -2
- package/vendor/protocol/dist/flows.d.ts.map +1 -1
- package/vendor/protocol/dist/flows.js +20 -2
- package/vendor/protocol/dist/flows.js.map +1 -1
- package/vendor/protocol/dist/messages.d.ts +22 -12
- package/vendor/protocol/dist/messages.d.ts.map +1 -1
- package/vendor/protocol/dist/messages.js +5 -2
- package/vendor/protocol/dist/messages.js.map +1 -1
- package/vendor/protocol/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MAX_ANCESTOR_WALK","getAlternate","getChild","getHostTypeName","getMemoizedProps","getReturn","getSibling","SCREEN_TYPES","Set","SCREEN_CONTAINER_TYPES","STACK_CONTAINER_TYPES","ACTIVITY_STATE_ACTIVE","MAX_BRANCH_NODES","isScreenContainerFiber","fiber","type","undefined","has","isScreenFiber","isStackContainer","ownedScreen","branch","stack","visited","length","pop","sibling","push","child","isActive","screen","activityState","
|
|
1
|
+
{"version":3,"names":["MAX_ANCESTOR_WALK","getAlternate","getChild","getHostTypeName","getMemoizedProps","getReturn","getSibling","resolveCurrentFiber","SCREEN_TYPES","Set","SCREEN_CONTAINER_TYPES","STACK_CONTAINER_TYPES","ACTIVITY_STATE_ACTIVE","MAX_BRANCH_NODES","isScreenContainerFiber","fiber","type","undefined","has","isScreenFiber","isStackContainer","ownedScreen","branch","stack","visited","length","pop","sibling","push","child","isActive","screen","activityState","screenBranches","container","branches","guard","visible","active","filter","entry","coveredScreenBranches","covered","includes","add","alternate","coveringContainer","previous","current","depth","previousAlternate","isFiberOnVisibleScreen","screensCoveringFiber","map","reverse"],"sourceRoot":"../../../../src","sources":["anchors/fiber/visibleScreens.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Bounded DFS under a fiber that skips screens the user cannot see.
|
|
5
|
+
*
|
|
6
|
+
* Same pruning as {@link findAnchorFiber}: covered navigator branches are not
|
|
7
|
+
* visited, but their siblings still are. The walk never follows `root.sibling`,
|
|
8
|
+
* so the Userflow overlay (a sibling of FiberScanRoot) stays out of the scan.
|
|
9
|
+
*/
|
|
10
|
+
import { getChild, getSibling } from "./fiberInternals.js";
|
|
11
|
+
import { coveredScreenBranches, isScreenContainerFiber } from "./visibleScreens.js";
|
|
12
|
+
|
|
13
|
+
/** Same cap as the anchor scan: several mounted screens of a modest app. */
|
|
14
|
+
export const WALK_VISIBLE_MAX_NODES = 60_000;
|
|
15
|
+
/**
|
|
16
|
+
* Visit fibers under `root`, skipping covered screen branches.
|
|
17
|
+
* `visit` returning `false` stops the walk early.
|
|
18
|
+
*/
|
|
19
|
+
export function walkVisibleFibers(root, visit, maxNodes = WALK_VISIBLE_MAX_NODES) {
|
|
20
|
+
if (!root) return {
|
|
21
|
+
visited: 0,
|
|
22
|
+
truncated: false
|
|
23
|
+
};
|
|
24
|
+
const stack = [root];
|
|
25
|
+
const covered = new Set();
|
|
26
|
+
let visited = 0;
|
|
27
|
+
while (stack.length > 0 && visited < maxNodes) {
|
|
28
|
+
const fiber = stack.pop();
|
|
29
|
+
if (!fiber) continue;
|
|
30
|
+
visited += 1;
|
|
31
|
+
if (covered.has(fiber)) {
|
|
32
|
+
if (fiber !== root) {
|
|
33
|
+
const sibling = getSibling(fiber);
|
|
34
|
+
if (sibling) stack.push(sibling);
|
|
35
|
+
}
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
if (visit(fiber) === false) {
|
|
39
|
+
return {
|
|
40
|
+
visited,
|
|
41
|
+
truncated: false
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
if (fiber !== root) {
|
|
45
|
+
const sibling = getSibling(fiber);
|
|
46
|
+
if (sibling) stack.push(sibling);
|
|
47
|
+
}
|
|
48
|
+
if (isScreenContainerFiber(fiber)) {
|
|
49
|
+
for (const branch of coveredScreenBranches(fiber)) {
|
|
50
|
+
covered.add(branch);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const child = getChild(fiber);
|
|
54
|
+
if (child) stack.push(child);
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
visited,
|
|
58
|
+
truncated: visited >= maxNodes
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=walkVisibleFibers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getChild","getSibling","coveredScreenBranches","isScreenContainerFiber","WALK_VISIBLE_MAX_NODES","walkVisibleFibers","root","visit","maxNodes","visited","truncated","stack","covered","Set","length","fiber","pop","has","sibling","push","branch","add","child"],"sourceRoot":"../../../../src","sources":["anchors/fiber/walkVisibleFibers.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAwBA,QAAQ,EAAEC,UAAU,QAAQ,qBAAkB;AACtE,SAASC,qBAAqB,EAAEC,sBAAsB,QAAQ,qBAAkB;;AAEhF;AACA,OAAO,MAAMC,sBAAsB,GAAG,MAAM;AAO5C;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAC/BC,IAAc,EACdC,KAAwC,EACxCC,QAAQ,GAAGJ,sBAAsB,EACR;EACzB,IAAI,CAACE,IAAI,EAAE,OAAO;IAAEG,OAAO,EAAE,CAAC;IAAEC,SAAS,EAAE;EAAM,CAAC;EAElD,MAAMC,KAAiB,GAAG,CAACL,IAAI,CAAC;EAChC,MAAMM,OAAO,GAAG,IAAIC,GAAG,CAAW,CAAC;EACnC,IAAIJ,OAAO,GAAG,CAAC;EAEf,OAAOE,KAAK,CAACG,MAAM,GAAG,CAAC,IAAIL,OAAO,GAAGD,QAAQ,EAAE;IAC7C,MAAMO,KAAK,GAAGJ,KAAK,CAACK,GAAG,CAAC,CAAC;IACzB,IAAI,CAACD,KAAK,EAAE;IACZN,OAAO,IAAI,CAAC;IAEZ,IAAIG,OAAO,CAACK,GAAG,CAACF,KAAK,CAAC,EAAE;MACtB,IAAIA,KAAK,KAAKT,IAAI,EAAE;QAClB,MAAMY,OAAO,GAAGjB,UAAU,CAACc,KAAK,CAAC;QACjC,IAAIG,OAAO,EAAEP,KAAK,CAACQ,IAAI,CAACD,OAAO,CAAC;MAClC;MACA;IACF;IAEA,IAAIX,KAAK,CAACQ,KAAK,CAAC,KAAK,KAAK,EAAE;MAC1B,OAAO;QAAEN,OAAO;QAAEC,SAAS,EAAE;MAAM,CAAC;IACtC;IAEA,IAAIK,KAAK,KAAKT,IAAI,EAAE;MAClB,MAAMY,OAAO,GAAGjB,UAAU,CAACc,KAAK,CAAC;MACjC,IAAIG,OAAO,EAAEP,KAAK,CAACQ,IAAI,CAACD,OAAO,CAAC;IAClC;IACA,IAAIf,sBAAsB,CAACY,KAAK,CAAC,EAAE;MACjC,KAAK,MAAMK,MAAM,IAAIlB,qBAAqB,CAACa,KAAK,CAAC,EAAE;QACjDH,OAAO,CAACS,GAAG,CAACD,MAAM,CAAC;MACrB;IACF;IACA,MAAME,KAAK,GAAGtB,QAAQ,CAACe,KAAK,CAAC;IAC7B,IAAIO,KAAK,EAAEX,KAAK,CAACQ,IAAI,CAACG,KAAK,CAAC;EAC9B;EAEA,OAAO;IAAEb,OAAO;IAAEC,SAAS,EAAED,OAAO,IAAID;EAAS,CAAC;AACpD","ignoreList":[]}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createLazyHostFiberIndex, lookupHostFiber } from "./fiber/indexHostFibers.js";
|
|
4
|
+
import { isFiberOnVisibleScreen } from "./fiber/visibleScreens.js";
|
|
5
|
+
function fiberForInstance(inst, getIndex) {
|
|
6
|
+
try {
|
|
7
|
+
return lookupHostFiber(getIndex, inst.ref.current);
|
|
8
|
+
} catch {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Whether a scored instance is on a screen the user can see.
|
|
15
|
+
*
|
|
16
|
+
* No fiber pointer means we cannot prove the host is covered (tests, and hosts
|
|
17
|
+
* whose public instance has no internals link) — same fail-open as apps without
|
|
18
|
+
* react-native-screens.
|
|
19
|
+
*/
|
|
20
|
+
export function isInstanceOnVisibleScreen(inst) {
|
|
21
|
+
const fiber = fiberForInstance(inst, createLazyHostFiberIndex());
|
|
22
|
+
if (!fiber) return true;
|
|
23
|
+
return isFiberOnVisibleScreen(fiber);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* One lazy host-fiber index and one verdict per instance, for a single pass.
|
|
28
|
+
*
|
|
29
|
+
* A factory rather than an extra argument: `Array.filter` passes the index as
|
|
30
|
+
* the second parameter. Sharing the index matters on Paper release builds,
|
|
31
|
+
* where a host ref cannot reach its fiber and each lookup would otherwise walk
|
|
32
|
+
* the tree.
|
|
33
|
+
*/
|
|
34
|
+
export function createVisibleInstanceFilter() {
|
|
35
|
+
const getIndex = createLazyHostFiberIndex();
|
|
36
|
+
const memo = new Map();
|
|
37
|
+
return inst => {
|
|
38
|
+
const cached = memo.get(inst.instanceId);
|
|
39
|
+
if (cached !== undefined) return cached;
|
|
40
|
+
const fiber = fiberForInstance(inst, getIndex);
|
|
41
|
+
const visible = !fiber || isFiberOnVisibleScreen(fiber);
|
|
42
|
+
memo.set(inst.instanceId, visible);
|
|
43
|
+
return visible;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=isInstanceOnVisibleScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createLazyHostFiberIndex","lookupHostFiber","isFiberOnVisibleScreen","fiberForInstance","inst","getIndex","ref","current","isInstanceOnVisibleScreen","fiber","createVisibleInstanceFilter","memo","Map","cached","get","instanceId","undefined","visible","set"],"sourceRoot":"../../../src","sources":["anchors/isInstanceOnVisibleScreen.ts"],"mappings":";;AAEA,SACEA,wBAAwB,EACxBC,eAAe,QAEV,4BAAyB;AAChC,SAASC,sBAAsB,QAAQ,2BAAwB;AAI/D,SAASC,gBAAgBA,CACvBC,IAAwB,EACxBC,QAA8B,EACb;EACjB,IAAI;IACF,OAAOJ,eAAe,CAACI,QAAQ,EAAED,IAAI,CAACE,GAAG,CAACC,OAAO,CAAC;EACpD,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,yBAAyBA,CAACJ,IAAwB,EAAW;EAC3E,MAAMK,KAAK,GAAGN,gBAAgB,CAACC,IAAI,EAAEJ,wBAAwB,CAAC,CAAC,CAAC;EAChE,IAAI,CAACS,KAAK,EAAE,OAAO,IAAI;EACvB,OAAOP,sBAAsB,CAACO,KAAK,CAAC;AACtC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,2BAA2BA,CAAA,EAA0C;EACnF,MAAML,QAAQ,GAAGL,wBAAwB,CAAC,CAAC;EAC3C,MAAMW,IAAI,GAAG,IAAIC,GAAG,CAAkB,CAAC;EACvC,OAAQR,IAAI,IAAK;IACf,MAAMS,MAAM,GAAGF,IAAI,CAACG,GAAG,CAACV,IAAI,CAACW,UAAU,CAAC;IACxC,IAAIF,MAAM,KAAKG,SAAS,EAAE,OAAOH,MAAM;IACvC,MAAMJ,KAAK,GAAGN,gBAAgB,CAACC,IAAI,EAAEC,QAAQ,CAAC;IAC9C,MAAMY,OAAO,GAAG,CAACR,KAAK,IAAIP,sBAAsB,CAACO,KAAK,CAAC;IACvDE,IAAI,CAACO,GAAG,CAACd,IAAI,CAACW,UAAU,EAAEE,OAAO,CAAC;IAClC,OAAOA,OAAO;EAChB,CAAC;AACH","ignoreList":[]}
|
|
@@ -30,7 +30,8 @@ export function invalidateFiberAnchor(id) {
|
|
|
30
30
|
*
|
|
31
31
|
* Tier 0: {@link anchorRegistry} (`useUserflowAnchor`) — higher priority, fails
|
|
32
32
|
* closed on ambiguous registry keys.
|
|
33
|
-
* Tier 1+: fiber scan for `testID`, then `nativeID`, then
|
|
33
|
+
* Tier 1+: fiber scan for `userflowId`, then `testID`, then `nativeID`, then
|
|
34
|
+
* `accessibilityLabel`.
|
|
34
35
|
*
|
|
35
36
|
* Synchronous (the walk is pure JS; only measurement is async via the returned
|
|
36
37
|
* host). Caches the resolved fiber per id and revalidates cheaply before reuse.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["anchorRegistry","fiberScanRoot","isFiberMounted","findAnchorFiber","createFiberMeasureInWindow","isFiberOnVisibleScreen","clearFiberAnchorCache","clearCache","deleteCachedFiberAnchor","getCachedFiberAnchor","getFiberAnchorScreenKey","invalidateFiberAnchor","dropCachedFiberAnchor","notifyAnchorScreenChange","onAnchorScreenChange","setCachedFiberAnchor","screenKey","id","resolveAnchorHost","status","isAmbiguous","registered","get","host","cached","currentScreenKey","fiber","measureInWindow","root","getFiber","result"],"sourceRoot":"../../../src","sources":["anchors/resolveAnchorHost.ts"],"mappings":";;AAAA,SAA0BA,cAAc,QAAQ,qBAAkB;AAClE,SAASC,aAAa,QAAQ,0BAAuB;AAErD,SAASC,cAAc,QAAQ,2BAAwB;AACvD,SAASC,eAAe,QAAQ,4BAAyB;AACzD,SAASC,0BAA0B,QAAQ,6BAA0B;AACrE,SAASC,sBAAsB,QAAQ,2BAAwB;AAC/D,SACEC,qBAAqB,IAAIC,UAAU,EACnCC,uBAAuB,EACvBC,oBAAoB,EACpBC,uBAAuB,EACvBC,qBAAqB,IAAIC,qBAAqB,EAC9CC,wBAAwB,IAAIC,oBAAoB,EAChDC,oBAAoB,QACf,uBAAoB;AAO3B;AACA,OAAO,SAASF,wBAAwBA,CAACG,SAAwB,EAAQ;EACvEF,oBAAoB,CAACE,SAAS,CAAC;AACjC;;AAEA;AACA,OAAO,SAASV,qBAAqBA,CAAA,EAAS;EAC5CC,UAAU,CAAC,CAAC;AACd;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,qBAAqBA,CAACM,EAAU,EAAQ;EACtDL,qBAAqB,CAACK,EAAE,CAAC;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACD,EAAU,EAAoB;EAC9D,IAAI,CAACA,EAAE,EAAE,OAAO;IAAEE,MAAM,EAAE;EAAU,CAAC;;EAErC;EACA,IAAInB,cAAc,CAACoB,WAAW,CAACH,EAAE,CAAC,EAAE;IAClC,OAAO;MAAEE,MAAM,EAAE;IAAY,CAAC;EAChC;EACA,MAAME,UAAU,GAAGrB,cAAc,CAACsB,GAAG,CAACL,EAAE,CAAC;EACzC,IAAII,UAAU,EAAE;IACd,OAAO;MAAEF,MAAM,EAAE,OAAO;MAAEI,IAAI,EAAEF;IAAW,CAAC;EAC9C;;EAEA;EACA;EACA,MAAMG,MAAM,GAAGf,oBAAoB,CAACQ,EAAE,CAAC;EACvC,MAAMQ,gBAAgB,GAAGf,uBAAuB,CAAC,CAAC;EAClD,IACEc,MAAM,IACNA,MAAM,CAACR,SAAS,KAAKS,gBAAgB,IACrCvB,cAAc,CAACsB,MAAM,CAACE,KAAK,CAAC,IAC5BrB,sBAAsB,CAACmB,MAAM,CAACE,KAAK,CAAC,EACpC;IACA,OAAO;MACLP,MAAM,EAAE,OAAO;MACfI,IAAI,EAAE;QAAEI,eAAe,EAAEvB,0BAA0B,CAACoB,MAAM,CAACE,KAAK;MAAE,CAAC;MACnEA,KAAK,EAAEF,MAAM,CAACE;IAChB,CAAC;EACH;EACA,IAAIF,MAAM,EAAE;IACVhB,uBAAuB,CAACS,EAAE,CAAC;EAC7B;EAEA,MAAMW,IAAI,GAAG3B,aAAa,CAAC4B,QAAQ,CAAC,CAAC;EACrC,IAAI,CAACD,IAAI,EAAE;IACT,OAAO;MAAET,MAAM,EAAE;IAAU,CAAC;EAC9B;EAEA,MAAMW,MAAM,GAAG3B,eAAe,CAACyB,IAAI,EAAEX,EAAE,CAAC;EACxC,IAAIa,MAAM,CAACX,MAAM,KAAK,WAAW,EAAE;IACjC,OAAO;MAAEA,MAAM,EAAE;IAAY,CAAC;EAChC;EACA,IAAIW,MAAM,CAACX,MAAM,KAAK,SAAS,EAAE;IAC/B,OAAO;MAAEA,MAAM,EAAE;IAAU,CAAC;EAC9B;EAEAJ,oBAAoB,CAACE,EAAE,EAAEa,MAAM,CAACJ,KAAK,CAAC;EACtC,OAAO;IACLP,MAAM,EAAE,OAAO;IACfI,IAAI,EAAE;MAAEI,eAAe,EAAEvB,0BAA0B,CAAC0B,MAAM,CAACJ,KAAK;IAAE,CAAC;IACnEA,KAAK,EAAEI,MAAM,CAACJ;EAChB,CAAC;AACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["anchorRegistry","fiberScanRoot","isFiberMounted","findAnchorFiber","createFiberMeasureInWindow","isFiberOnVisibleScreen","clearFiberAnchorCache","clearCache","deleteCachedFiberAnchor","getCachedFiberAnchor","getFiberAnchorScreenKey","invalidateFiberAnchor","dropCachedFiberAnchor","notifyAnchorScreenChange","onAnchorScreenChange","setCachedFiberAnchor","screenKey","id","resolveAnchorHost","status","isAmbiguous","registered","get","host","cached","currentScreenKey","fiber","measureInWindow","root","getFiber","result"],"sourceRoot":"../../../src","sources":["anchors/resolveAnchorHost.ts"],"mappings":";;AAAA,SAA0BA,cAAc,QAAQ,qBAAkB;AAClE,SAASC,aAAa,QAAQ,0BAAuB;AAErD,SAASC,cAAc,QAAQ,2BAAwB;AACvD,SAASC,eAAe,QAAQ,4BAAyB;AACzD,SAASC,0BAA0B,QAAQ,6BAA0B;AACrE,SAASC,sBAAsB,QAAQ,2BAAwB;AAC/D,SACEC,qBAAqB,IAAIC,UAAU,EACnCC,uBAAuB,EACvBC,oBAAoB,EACpBC,uBAAuB,EACvBC,qBAAqB,IAAIC,qBAAqB,EAC9CC,wBAAwB,IAAIC,oBAAoB,EAChDC,oBAAoB,QACf,uBAAoB;AAO3B;AACA,OAAO,SAASF,wBAAwBA,CAACG,SAAwB,EAAQ;EACvEF,oBAAoB,CAACE,SAAS,CAAC;AACjC;;AAEA;AACA,OAAO,SAASV,qBAAqBA,CAAA,EAAS;EAC5CC,UAAU,CAAC,CAAC;AACd;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,qBAAqBA,CAACM,EAAU,EAAQ;EACtDL,qBAAqB,CAACK,EAAE,CAAC;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACD,EAAU,EAAoB;EAC9D,IAAI,CAACA,EAAE,EAAE,OAAO;IAAEE,MAAM,EAAE;EAAU,CAAC;;EAErC;EACA,IAAInB,cAAc,CAACoB,WAAW,CAACH,EAAE,CAAC,EAAE;IAClC,OAAO;MAAEE,MAAM,EAAE;IAAY,CAAC;EAChC;EACA,MAAME,UAAU,GAAGrB,cAAc,CAACsB,GAAG,CAACL,EAAE,CAAC;EACzC,IAAII,UAAU,EAAE;IACd,OAAO;MAAEF,MAAM,EAAE,OAAO;MAAEI,IAAI,EAAEF;IAAW,CAAC;EAC9C;;EAEA;EACA;EACA,MAAMG,MAAM,GAAGf,oBAAoB,CAACQ,EAAE,CAAC;EACvC,MAAMQ,gBAAgB,GAAGf,uBAAuB,CAAC,CAAC;EAClD,IACEc,MAAM,IACNA,MAAM,CAACR,SAAS,KAAKS,gBAAgB,IACrCvB,cAAc,CAACsB,MAAM,CAACE,KAAK,CAAC,IAC5BrB,sBAAsB,CAACmB,MAAM,CAACE,KAAK,CAAC,EACpC;IACA,OAAO;MACLP,MAAM,EAAE,OAAO;MACfI,IAAI,EAAE;QAAEI,eAAe,EAAEvB,0BAA0B,CAACoB,MAAM,CAACE,KAAK;MAAE,CAAC;MACnEA,KAAK,EAAEF,MAAM,CAACE;IAChB,CAAC;EACH;EACA,IAAIF,MAAM,EAAE;IACVhB,uBAAuB,CAACS,EAAE,CAAC;EAC7B;EAEA,MAAMW,IAAI,GAAG3B,aAAa,CAAC4B,QAAQ,CAAC,CAAC;EACrC,IAAI,CAACD,IAAI,EAAE;IACT,OAAO;MAAET,MAAM,EAAE;IAAU,CAAC;EAC9B;EAEA,MAAMW,MAAM,GAAG3B,eAAe,CAACyB,IAAI,EAAEX,EAAE,CAAC;EACxC,IAAIa,MAAM,CAACX,MAAM,KAAK,WAAW,EAAE;IACjC,OAAO;MAAEA,MAAM,EAAE;IAAY,CAAC;EAChC;EACA,IAAIW,MAAM,CAACX,MAAM,KAAK,SAAS,EAAE;IAC/B,OAAO;MAAEA,MAAM,EAAE;IAAU,CAAC;EAC9B;EAEAJ,oBAAoB,CAACE,EAAE,EAAEa,MAAM,CAACJ,KAAK,CAAC;EACtC,OAAO;IACLP,MAAM,EAAE,OAAO;IACfI,IAAI,EAAE;MAAEI,eAAe,EAAEvB,0BAA0B,CAAC0B,MAAM,CAACJ,KAAK;IAAE,CAAC;IACnEA,KAAK,EAAEI,MAAM,CAACJ;EAChB,CAAC;AACH","ignoreList":[]}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
import { decodeMobileAutoData } from '@userflow-tech/protocol';
|
|
4
4
|
import { fiberFromPublicInstance } from "./fiber/fiberInternals.js";
|
|
5
5
|
import { createFiberMeasureInWindow } from "./fiber/measureHostFiber.js";
|
|
6
|
-
import {
|
|
6
|
+
import { resolveFiberPath } from "./fiber/resolveFiberPath.js";
|
|
7
|
+
import { createVisibleInstanceFilter } from "./isInstanceOnVisibleScreen.js";
|
|
7
8
|
import { resolveAnchorHost } from "./resolveAnchorHost.js";
|
|
8
9
|
import { matchFingerprint } from "./semanticMatcher.js";
|
|
9
10
|
function isMeasurableNode(value) {
|
|
@@ -38,21 +39,8 @@ function fiberFromInstance(inst) {
|
|
|
38
39
|
return fiberFromPublicInstance(inst.ref.current);
|
|
39
40
|
}
|
|
40
41
|
|
|
41
|
-
/**
|
|
42
|
-
* Whether a scored instance is on a screen the user can see.
|
|
43
|
-
*
|
|
44
|
-
* No fiber pointer means we cannot prove the host is covered (tests, and hosts
|
|
45
|
-
* whose public instance has no internals link) — same fail-open as apps without
|
|
46
|
-
* react-native-screens.
|
|
47
|
-
*/
|
|
48
|
-
function isInstanceOnVisibleScreen(inst) {
|
|
49
|
-
const fiber = fiberFromInstance(inst);
|
|
50
|
-
if (!fiber) return true;
|
|
51
|
-
return isFiberOnVisibleScreen(fiber);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
42
|
/** Authoritative id that the existing fiber / manual resolver can look up. */
|
|
55
|
-
function exactIdFromFingerprint(fp) {
|
|
43
|
+
export function exactIdFromFingerprint(fp) {
|
|
56
44
|
if (fp.userflowId) return fp.userflowId;
|
|
57
45
|
if (fp.testID) return fp.testID;
|
|
58
46
|
if (fp.nativeID && !fp.nativeID.startsWith('uf_')) return fp.nativeID;
|
|
@@ -109,9 +97,9 @@ function mapMatch(match) {
|
|
|
109
97
|
* scored and the unfiltered pool still has a hit, that hit is on a covered
|
|
110
98
|
* screen — `absent`, matching MANUAL covered-screen semantics.
|
|
111
99
|
*/
|
|
112
|
-
function
|
|
100
|
+
export function resolveScoredAutoAnchor(fp) {
|
|
113
101
|
const visible = matchFingerprint(fp, {
|
|
114
|
-
instanceFilter:
|
|
102
|
+
instanceFilter: createVisibleInstanceFilter()
|
|
115
103
|
});
|
|
116
104
|
if (visible.instance) return mapMatch(visible);
|
|
117
105
|
if (visible.reason === 'no-candidates') {
|
|
@@ -143,6 +131,25 @@ export function resolveAutoAnchorHost(autoData) {
|
|
|
143
131
|
if (!fp) return {
|
|
144
132
|
status: 'unknown'
|
|
145
133
|
};
|
|
134
|
+
if (decoded.resolver === 'fiber' && decoded.fiberPath) {
|
|
135
|
+
const fiberHit = resolveFiberPath(decoded.fiberPath);
|
|
136
|
+
if (fiberHit.status === 'found') {
|
|
137
|
+
return {
|
|
138
|
+
status: 'found',
|
|
139
|
+
host: {
|
|
140
|
+
measureInWindow: createFiberMeasureInWindow(fiberHit.fiber)
|
|
141
|
+
},
|
|
142
|
+
fiber: fiberHit.fiber,
|
|
143
|
+
fiberCacheId: fiberHit.cacheId
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
if (fiberHit.status === 'ambiguous') return {
|
|
147
|
+
status: 'ambiguous'
|
|
148
|
+
};
|
|
149
|
+
return {
|
|
150
|
+
status: 'unknown'
|
|
151
|
+
};
|
|
152
|
+
}
|
|
146
153
|
const exactId = exactIdFromFingerprint(fp);
|
|
147
154
|
if (exactId) {
|
|
148
155
|
const exact = resolveAnchorHost(exactId);
|
|
@@ -162,6 +169,6 @@ export function resolveAutoAnchorHost(autoData) {
|
|
|
162
169
|
};
|
|
163
170
|
}
|
|
164
171
|
}
|
|
165
|
-
return
|
|
172
|
+
return resolveScoredAutoAnchor(fp);
|
|
166
173
|
}
|
|
167
174
|
//# sourceMappingURL=resolveAutoAnchorHost.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["decodeMobileAutoData","fiberFromPublicInstance","createFiberMeasureInWindow","
|
|
1
|
+
{"version":3,"names":["decodeMobileAutoData","fiberFromPublicInstance","createFiberMeasureInWindow","resolveFiberPath","createVisibleInstanceFilter","resolveAnchorHost","matchFingerprint","isMeasurableNode","value","measureInWindow","hostFromInstance","inst","node","ref","current","callback","scrollIntoView","fiber","fiberFromInstance","exactIdFromFingerprint","fp","userflowId","testID","nativeID","startsWith","decodeInput","autoData","trim","mapMatch","match","instance","host","status","reason","resolveScoredAutoAnchor","visible","instanceFilter","any","resolveAutoAnchorHost","decoded","fingerprint","resolver","fiberPath","fiberHit","fiberCacheId","cacheId","exactId","exact"],"sourceRoot":"../../../src","sources":["anchors/resolveAutoAnchorHost.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Resolve every host an ELEMENT condition should consider.
|
|
5
|
+
*
|
|
6
|
+
* Tooltips fail closed when an id matches more than one view. Conditions follow
|
|
7
|
+
* the web SDK instead: any match counts. AUTO exact ids (`userflowId`, then
|
|
8
|
+
* `testID`, then a real `nativeID`) use that same multi-host lookup, and fall
|
|
9
|
+
* through to scoring only when nothing matched.
|
|
10
|
+
*/
|
|
11
|
+
import { decodeMobileAutoData } from '@userflow-tech/protocol';
|
|
12
|
+
import { anchorRegistry } from "./AnchorRegistry.js";
|
|
13
|
+
import { anchorIdsAboveTap } from "./elementTargetMatch.js";
|
|
14
|
+
import { fiberScanRoot } from "./fiber/FiberScanRoot.js";
|
|
15
|
+
import { publicInstanceFromHostFiber } from "./fiber/fiberInternals.js";
|
|
16
|
+
import { findAnchorFibers } from "./fiber/findAnchorFiber.js";
|
|
17
|
+
import { createLazyHostFiberIndex, lookupHostFiber } from "./fiber/indexHostFibers.js";
|
|
18
|
+
import { createFiberMeasureInWindow } from "./fiber/measureHostFiber.js";
|
|
19
|
+
import { isFiberOnVisibleScreen } from "./fiber/visibleScreens.js";
|
|
20
|
+
import { exactIdFromFingerprint, resolveAutoAnchorHost, resolveScoredAutoAnchor } from "./resolveAutoAnchorHost.js";
|
|
21
|
+
import { resolveManualAnchorId } from "./resolveManualAnchorId.js";
|
|
22
|
+
export function resolveElementTargets(selector) {
|
|
23
|
+
if (selector == null) return {
|
|
24
|
+
status: 'unknown'
|
|
25
|
+
};
|
|
26
|
+
if (selector.type === 'AUTO') {
|
|
27
|
+
return resolveAutoTargets(selector.autoData);
|
|
28
|
+
}
|
|
29
|
+
const anchorId = resolveManualAnchorId(selector.css);
|
|
30
|
+
if (anchorId == null) return {
|
|
31
|
+
status: 'unknown'
|
|
32
|
+
};
|
|
33
|
+
return resolveManualTargets(anchorId);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* False when no target of `selector` can contain `tap`, decided without a tree
|
|
38
|
+
* scan. A fiber-scan target carries its id itself or sits under a composite
|
|
39
|
+
* that does, so a MANUAL id that is neither registered nor on the tap's
|
|
40
|
+
* ancestor chain cannot match. AUTO selectors are not gated: only a scan tells
|
|
41
|
+
* whether the exact id or a scored match applies.
|
|
42
|
+
*/
|
|
43
|
+
export function tapMayHitSelector(selector, tap) {
|
|
44
|
+
if (selector == null) return false;
|
|
45
|
+
if (selector.type === 'AUTO') return true;
|
|
46
|
+
const anchorId = resolveManualAnchorId(selector.css);
|
|
47
|
+
if (anchorId == null) return false;
|
|
48
|
+
return anchorRegistry.get(anchorId) != null || anchorIdsAboveTap(tap).has(anchorId);
|
|
49
|
+
}
|
|
50
|
+
function resolveAutoTargets(autoData) {
|
|
51
|
+
const decoded = decodeMobileAutoData(autoData);
|
|
52
|
+
const fingerprint = decoded?.fingerprint;
|
|
53
|
+
if (!decoded || !fingerprint) return {
|
|
54
|
+
status: 'unknown'
|
|
55
|
+
};
|
|
56
|
+
if (decoded.resolver === 'fiber' && decoded.fiberPath) {
|
|
57
|
+
return fromAutoResolution(resolveAutoAnchorHost(decoded));
|
|
58
|
+
}
|
|
59
|
+
const exactId = exactIdFromFingerprint(fingerprint);
|
|
60
|
+
if (exactId) {
|
|
61
|
+
const manual = resolveManualTargets(exactId);
|
|
62
|
+
if (manual.status === 'found') return manual;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// The exact id already missed above, so go straight to scoring rather than
|
|
66
|
+
// letting resolveAutoAnchorHost scan for it again.
|
|
67
|
+
return fromAutoResolution(resolveScoredAutoAnchor(fingerprint));
|
|
68
|
+
}
|
|
69
|
+
function fromAutoResolution(resolution) {
|
|
70
|
+
if (resolution.status === 'found') {
|
|
71
|
+
// Scored matches only try the direct ref pointer, which Paper release
|
|
72
|
+
// builds null out. Without the index fallback a tap could never match.
|
|
73
|
+
const fiber = resolution.fiber ?? fiberForNode(createLazyHostFiberIndex(), resolution.match?.instance?.ref.current);
|
|
74
|
+
return {
|
|
75
|
+
status: 'found',
|
|
76
|
+
targets: [{
|
|
77
|
+
host: resolution.host,
|
|
78
|
+
...(fiber ? {
|
|
79
|
+
fiber
|
|
80
|
+
} : {})
|
|
81
|
+
}]
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
if (resolution.status === 'absent') return {
|
|
85
|
+
status: 'absent'
|
|
86
|
+
};
|
|
87
|
+
// Ambiguous and unknown both fail closed. Ambiguous is a real tie, not a
|
|
88
|
+
// broken selector, so it does not warn.
|
|
89
|
+
if (resolution.status === 'ambiguous') return {
|
|
90
|
+
status: 'unknown',
|
|
91
|
+
silent: true
|
|
92
|
+
};
|
|
93
|
+
return {
|
|
94
|
+
status: 'unknown'
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function resolveManualTargets(id) {
|
|
98
|
+
const registered = anchorRegistry.getAll(id);
|
|
99
|
+
if (registered.length > 0) {
|
|
100
|
+
const index = createLazyHostFiberIndex();
|
|
101
|
+
// Registered views on a covered navigator screen still measure non-zero,
|
|
102
|
+
// so drop them here the way the fiber scan skips covered screens. A host
|
|
103
|
+
// whose fiber cannot be found is kept.
|
|
104
|
+
const targets = registered.map(host => {
|
|
105
|
+
const fiber = fiberForNode(index, host.node);
|
|
106
|
+
return fiber ? {
|
|
107
|
+
host,
|
|
108
|
+
fiber
|
|
109
|
+
} : {
|
|
110
|
+
host
|
|
111
|
+
};
|
|
112
|
+
}).filter(target => !target.fiber || isFiberOnVisibleScreen(target.fiber));
|
|
113
|
+
return targets.length > 0 ? {
|
|
114
|
+
status: 'found',
|
|
115
|
+
targets
|
|
116
|
+
} : {
|
|
117
|
+
status: 'absent'
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
const root = fiberScanRoot.getFiber();
|
|
121
|
+
if (!root) return {
|
|
122
|
+
status: 'absent'
|
|
123
|
+
};
|
|
124
|
+
const found = findAnchorFibers(root, id);
|
|
125
|
+
if (found.status === 'missing') return {
|
|
126
|
+
status: 'absent'
|
|
127
|
+
};
|
|
128
|
+
return {
|
|
129
|
+
status: 'found',
|
|
130
|
+
targets: found.fibers.map(fiber => {
|
|
131
|
+
const node = publicInstanceFromHostFiber(fiber);
|
|
132
|
+
return {
|
|
133
|
+
host: {
|
|
134
|
+
measureInWindow: createFiberMeasureInWindow(fiber),
|
|
135
|
+
...(node ? {
|
|
136
|
+
node
|
|
137
|
+
} : {})
|
|
138
|
+
},
|
|
139
|
+
fiber
|
|
140
|
+
};
|
|
141
|
+
})
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
function fiberForNode(index, node) {
|
|
145
|
+
if (!node) return undefined;
|
|
146
|
+
try {
|
|
147
|
+
return lookupHostFiber(index, node) ?? undefined;
|
|
148
|
+
} catch {
|
|
149
|
+
return undefined;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=resolveElementTargets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["decodeMobileAutoData","anchorRegistry","anchorIdsAboveTap","fiberScanRoot","publicInstanceFromHostFiber","findAnchorFibers","createLazyHostFiberIndex","lookupHostFiber","createFiberMeasureInWindow","isFiberOnVisibleScreen","exactIdFromFingerprint","resolveAutoAnchorHost","resolveScoredAutoAnchor","resolveManualAnchorId","resolveElementTargets","selector","status","type","resolveAutoTargets","autoData","anchorId","css","resolveManualTargets","tapMayHitSelector","tap","get","has","decoded","fingerprint","resolver","fiberPath","fromAutoResolution","exactId","manual","resolution","fiber","fiberForNode","match","instance","ref","current","targets","host","silent","id","registered","getAll","length","index","map","node","filter","target","root","getFiber","found","fibers","measureInWindow","undefined"],"sourceRoot":"../../../src","sources":["anchors/resolveElementTargets.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -112,7 +112,7 @@ function idAgrees(fp, inst) {
|
|
|
112
112
|
function normalizeText(value) {
|
|
113
113
|
return value.trim().replace(/\d+/g, '#').replace(/\s+/g, ' ');
|
|
114
114
|
}
|
|
115
|
-
function textsAgree(a, b) {
|
|
115
|
+
export function textsAgree(a, b) {
|
|
116
116
|
if (!a || !b) return false;
|
|
117
117
|
return a === b || normalizeText(a) === normalizeText(b);
|
|
118
118
|
}
|
|
@@ -138,7 +138,7 @@ function childTextDisagrees(fp, inst) {
|
|
|
138
138
|
function intrinsicNonTextAgrees(fp, inst) {
|
|
139
139
|
return !!fp.iconName && inst.iconName === fp.iconName || !!fp.imageSrc && inst.imageSrc === fp.imageSrc;
|
|
140
140
|
}
|
|
141
|
-
function scoreInstance(fp, inst) {
|
|
141
|
+
function scoreInstance(fp, inst, ambiguous) {
|
|
142
142
|
if (contradictsStrong(fp, inst)) return -Infinity;
|
|
143
143
|
|
|
144
144
|
// A childText disagreement is disqualifying unless a text-independent identity
|
|
@@ -172,9 +172,20 @@ function scoreInstance(fp, inst) {
|
|
|
172
172
|
// Score next siblings once. The POC added a reversed pass *and* a direct pass,
|
|
173
173
|
// which double-counted the next window.
|
|
174
174
|
score += scoreSiblingWindow(fp.nextSiblings ?? [], window.next);
|
|
175
|
-
if (
|
|
175
|
+
if (ambiguous && !inst.manualId) score -= 40;
|
|
176
176
|
return score;
|
|
177
177
|
}
|
|
178
|
+
/** Each instance's visibility is computed once per match. */
|
|
179
|
+
function memoizeFilter(filter) {
|
|
180
|
+
const memo = new Map();
|
|
181
|
+
return inst => {
|
|
182
|
+
const cached = memo.get(inst.instanceId);
|
|
183
|
+
if (cached !== undefined) return cached;
|
|
184
|
+
const visible = filter(inst);
|
|
185
|
+
memo.set(inst.instanceId, visible);
|
|
186
|
+
return visible;
|
|
187
|
+
};
|
|
188
|
+
}
|
|
178
189
|
function candidatePool(fp, instanceFilter) {
|
|
179
190
|
// Explicit ids are authoritative: a miss is no-candidates, not a full-registry search.
|
|
180
191
|
let pool;
|
|
@@ -212,17 +223,23 @@ function matchFingerprintCore(fp, instanceFilter) {
|
|
|
212
223
|
// Live text / testID must be applied *before* pooling. A shared Babel helper
|
|
213
224
|
// (`const field = () => <TextInput testID={id} />`) reuses one auto-anchor
|
|
214
225
|
// callback, so the runtime bag is last-writer-wins until we read the host.
|
|
215
|
-
|
|
226
|
+
// A filter's verdict is memoized so covered-screen checks run once per instance.
|
|
227
|
+
const filter = instanceFilter ? memoizeFilter(instanceFilter) : undefined;
|
|
228
|
+
const broad = filter ? autoAnchorRegistry.allInstances().filter(filter) : autoAnchorRegistry.allInstances();
|
|
216
229
|
if (broad.length > 0) {
|
|
217
230
|
autoAnchorRegistry.refreshLiveContent(broad);
|
|
218
231
|
}
|
|
219
|
-
const pool = candidatePool(fp,
|
|
232
|
+
const pool = candidatePool(fp, filter);
|
|
220
233
|
if (pool.length === 0) {
|
|
221
234
|
return miss('no-candidates');
|
|
222
235
|
}
|
|
236
|
+
|
|
237
|
+
// Visibility can clear a registry-wide ambiguous flag (a covered twin) but
|
|
238
|
+
// never add one. Unfiltered matches keep the stored flag.
|
|
239
|
+
const ambiguous = inst => filter ? autoAnchorRegistry.isAmbiguousAmong(inst, filter) : inst.ambiguous;
|
|
223
240
|
const scored = pool.map(inst => ({
|
|
224
241
|
inst,
|
|
225
|
-
score: scoreInstance(fp, inst)
|
|
242
|
+
score: scoreInstance(fp, inst, ambiguous(inst))
|
|
226
243
|
})).filter(s => s.score > -Infinity).sort((a, b) => b.score - a.score);
|
|
227
244
|
if (scored.length === 0) {
|
|
228
245
|
return miss('all-contradicted');
|
|
@@ -231,7 +248,7 @@ function matchFingerprintCore(fp, instanceFilter) {
|
|
|
231
248
|
const second = scored[1];
|
|
232
249
|
const secondScore = second?.score ?? 0;
|
|
233
250
|
if ((fp.manualId || fp.userflowId || fp.testID) && best.score >= 90 && (!second || best.score - secondScore >= MATCH_UNIQUENESS_MARGIN)) {
|
|
234
|
-
if (best.inst
|
|
251
|
+
if (ambiguous(best.inst)) {
|
|
235
252
|
return miss('ambiguous-explicit-id', best.score, secondScore);
|
|
236
253
|
}
|
|
237
254
|
return {
|
|
@@ -270,11 +287,11 @@ export function matchFingerprint(fp, opts) {
|
|
|
270
287
|
* Decode an `autoData` envelope (or accept an already-decoded one) and score
|
|
271
288
|
* its fingerprint. Missing / malformed envelopes fail closed.
|
|
272
289
|
*/
|
|
273
|
-
export function matchAutoData(input) {
|
|
290
|
+
export function matchAutoData(input, opts) {
|
|
274
291
|
const decoded = typeof input === 'string' ? decodeMobileAutoData(input) : input;
|
|
275
292
|
if (!decoded?.fingerprint) {
|
|
276
293
|
return miss('no-fingerprint');
|
|
277
294
|
}
|
|
278
|
-
return matchFingerprint(decoded.fingerprint);
|
|
295
|
+
return matchFingerprint(decoded.fingerprint, opts);
|
|
279
296
|
}
|
|
280
297
|
//# sourceMappingURL=semanticMatcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["decodeMobileAutoData","autoAnchorRegistry","MATCH_MIN_SCORE","MATCH_UNIQUENESS_MARGIN","STRUCTURAL_PATH_MAX","pathSegments","path","split","segmentKind","seg","m","exec","segmentLabel","i","indexOf","endsWith","slice","scoreStructuralPath","fpPath","instPath","max","a","b","n","Math","min","length","matchedLabeled","kindAligned","sa","sb","la","lb","score","round","scoreSiblingWindow","expected","actual","len","e","kind","role","userflowId","testID","text","textsAgree","abs","scoreAncestors","eTail","aTail","contradictsStrong","fp","inst","manualId","idAgrees","nativeID","startsWith","normalizeText","value","trim","replace","childTextRawDiffers","childText","childTextDisagrees","intrinsicNonTextAgrees","iconName","imageSrc","scoreInstance","Infinity","isPressable","structuralPath","templatePath","instanceScope","accessibilityLabel","childShape","ancestors","window","siblingWindow","instanceId","previousSiblings","previous","nextSiblings","next","ambiguous","candidatePool","instanceFilter","pool","getInstancesByManualId","allInstances","filtered","filter","miss","reason","secondScore","instance","matchFingerprintCore","broad","refreshLiveContent","scored","map","s","sort","best","second","textDisagreed","matchFingerprint","opts","result","identityStrength","matchAutoData","input","decoded","fingerprint"],"sourceRoot":"../../../src","sources":["anchors/semanticMatcher.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["decodeMobileAutoData","autoAnchorRegistry","MATCH_MIN_SCORE","MATCH_UNIQUENESS_MARGIN","STRUCTURAL_PATH_MAX","pathSegments","path","split","segmentKind","seg","m","exec","segmentLabel","i","indexOf","endsWith","slice","scoreStructuralPath","fpPath","instPath","max","a","b","n","Math","min","length","matchedLabeled","kindAligned","sa","sb","la","lb","score","round","scoreSiblingWindow","expected","actual","len","e","kind","role","userflowId","testID","text","textsAgree","abs","scoreAncestors","eTail","aTail","contradictsStrong","fp","inst","manualId","idAgrees","nativeID","startsWith","normalizeText","value","trim","replace","childTextRawDiffers","childText","childTextDisagrees","intrinsicNonTextAgrees","iconName","imageSrc","scoreInstance","ambiguous","Infinity","isPressable","structuralPath","templatePath","instanceScope","accessibilityLabel","childShape","ancestors","window","siblingWindow","instanceId","previousSiblings","previous","nextSiblings","next","memoizeFilter","filter","memo","Map","cached","get","undefined","visible","set","candidatePool","instanceFilter","pool","getInstancesByManualId","allInstances","filtered","miss","reason","secondScore","instance","matchFingerprintCore","broad","refreshLiveContent","isAmbiguousAmong","scored","map","s","sort","best","second","textDisagreed","matchFingerprint","opts","result","identityStrength","matchAutoData","input","decoded","fingerprint"],"sourceRoot":"../../../src","sources":["anchors/semanticMatcher.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,6 +13,13 @@ export const TARGET_PRESS_TAP_SLOP = 10;
|
|
|
13
13
|
export function pointInRect(x, y, rect) {
|
|
14
14
|
return x >= rect.x && x <= rect.x + rect.width && y >= rect.y && y <= rect.y + rect.height;
|
|
15
15
|
}
|
|
16
|
+
/** True when the finger moved no more than `slop` between start and end. */
|
|
17
|
+
export function withinTapSlop(start, end, slop = TARGET_PRESS_TAP_SLOP) {
|
|
18
|
+
const dx = end.pageX - start.pageX;
|
|
19
|
+
const dy = end.pageY - start.pageY;
|
|
20
|
+
return dx * dx + dy * dy <= slop * slop;
|
|
21
|
+
}
|
|
22
|
+
|
|
16
23
|
/**
|
|
17
24
|
* True when start and end both land in `rect` and movement stays within tap
|
|
18
25
|
* slop — mirrors a DOM click on the target without claiming the responder.
|
|
@@ -20,9 +27,7 @@ export function pointInRect(x, y, rect) {
|
|
|
20
27
|
export function isTargetTap(start, end, rect, slop = TARGET_PRESS_TAP_SLOP) {
|
|
21
28
|
if (!pointInRect(start.pageX, start.pageY, rect)) return false;
|
|
22
29
|
if (!pointInRect(end.pageX, end.pageY, rect)) return false;
|
|
23
|
-
|
|
24
|
-
const dy = end.pageY - start.pageY;
|
|
25
|
-
return dx * dx + dy * dy <= slop * slop;
|
|
30
|
+
return withinTapSlop(start, end, slop);
|
|
26
31
|
}
|
|
27
32
|
|
|
28
33
|
/**
|