@userflow-tech/react-native 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +116 -77
- 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/deep-linking.md +70 -33
- package/docs/isolation.md +75 -0
- package/docs/troubleshooting.md +40 -17
- package/docs/webview-custom-banner-poc.md +64 -0
- package/expo-plugin/withUserflow.d.ts +3 -2
- package/expo-plugin/withUserflow.d.ts.map +1 -1
- package/expo-plugin/withUserflow.js +14 -8
- package/expo-plugin/withUserflow.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/fiber/fiberPath.js +122 -0
- package/lib/commonjs/anchors/fiber/fiberPath.js.map +1 -0
- package/lib/commonjs/anchors/fiber/findAnchorFiber.js +60 -50
- 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/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/resolveAutoAnchorHost.js +22 -15
- package/lib/commonjs/anchors/resolveAutoAnchorHost.js.map +1 -1
- package/lib/commonjs/anchors/semanticMatcher.js +26 -8
- package/lib/commonjs/anchors/semanticMatcher.js.map +1 -1
- package/lib/commonjs/anonymousId.js +4 -1
- 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 +118 -43
- package/lib/commonjs/index.js.map +1 -1
- 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 +47 -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 +19 -12
- 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 +135 -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/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 +23 -0
- package/lib/commonjs/surfaces/safeArea.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/anchors/AutoAnchorRegistry.js +37 -11
- package/lib/module/anchors/AutoAnchorRegistry.js.map +1 -1
- 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 +60 -50
- 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/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/resolveAutoAnchorHost.js +22 -15
- package/lib/module/anchors/resolveAutoAnchorHost.js.map +1 -1
- package/lib/module/anchors/semanticMatcher.js +26 -9
- package/lib/module/anchors/semanticMatcher.js.map +1 -1
- package/lib/module/anonymousId.js +4 -2
- 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 +114 -45
- package/lib/module/index.js.map +1 -1
- 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 +41 -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 +19 -12
- 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 +136 -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/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 +22 -0
- package/lib/module/surfaces/safeArea.js.map +1 -1
- package/lib/module/version.js +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/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 +5 -4
- 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/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/resolveAutoAnchorHost.d.ts.map +1 -1
- 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/anonymousId.d.ts +1 -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/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.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/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 +6 -0
- 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/AutoAnchorRegistry.d.ts +14 -0
- package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts.map +1 -1
- 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 +5 -4
- 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/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/resolveAutoAnchorHost.d.ts.map +1 -1
- 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/anonymousId.d.ts +1 -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/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.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/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 +6 -0
- 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 +4 -3
- package/src/anchors/AutoAnchorRegistry.ts +41 -11
- package/src/anchors/fiber/fiberPath.ts +117 -0
- package/src/anchors/fiber/findAnchorFiber.ts +57 -47
- package/src/anchors/fiber/resolveFiberPath.ts +215 -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/resolveAutoAnchorHost.ts +17 -15
- package/src/anchors/semanticMatcher.ts +38 -14
- package/src/anonymousId.ts +2 -1
- 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 +129 -45
- 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 +43 -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 +19 -12
- package/src/runtime/UserflowOverlay.tsx +118 -0
- package/src/runtime/UserflowProvider.tsx +139 -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/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 +29 -0
- 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/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/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 +47 -27
- 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 +4 -1
- 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
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.MATCH_UNIQUENESS_MARGIN = exports.MATCH_MIN_SCORE = void 0;
|
|
7
7
|
exports.matchAutoData = matchAutoData;
|
|
8
8
|
exports.matchFingerprint = matchFingerprint;
|
|
9
|
+
exports.textsAgree = textsAgree;
|
|
9
10
|
var _protocol = require("@userflow-tech/protocol");
|
|
10
11
|
var _AutoAnchorRegistry = require("./AutoAnchorRegistry.js");
|
|
11
12
|
/**
|
|
@@ -143,7 +144,7 @@ function childTextDisagrees(fp, inst) {
|
|
|
143
144
|
function intrinsicNonTextAgrees(fp, inst) {
|
|
144
145
|
return !!fp.iconName && inst.iconName === fp.iconName || !!fp.imageSrc && inst.imageSrc === fp.imageSrc;
|
|
145
146
|
}
|
|
146
|
-
function scoreInstance(fp, inst) {
|
|
147
|
+
function scoreInstance(fp, inst, ambiguous) {
|
|
147
148
|
if (contradictsStrong(fp, inst)) return -Infinity;
|
|
148
149
|
|
|
149
150
|
// A childText disagreement is disqualifying unless a text-independent identity
|
|
@@ -177,9 +178,20 @@ function scoreInstance(fp, inst) {
|
|
|
177
178
|
// Score next siblings once. The POC added a reversed pass *and* a direct pass,
|
|
178
179
|
// which double-counted the next window.
|
|
179
180
|
score += scoreSiblingWindow(fp.nextSiblings ?? [], window.next);
|
|
180
|
-
if (
|
|
181
|
+
if (ambiguous && !inst.manualId) score -= 40;
|
|
181
182
|
return score;
|
|
182
183
|
}
|
|
184
|
+
/** Each instance's visibility is computed once per match. */
|
|
185
|
+
function memoizeFilter(filter) {
|
|
186
|
+
const memo = new Map();
|
|
187
|
+
return inst => {
|
|
188
|
+
const cached = memo.get(inst.instanceId);
|
|
189
|
+
if (cached !== undefined) return cached;
|
|
190
|
+
const visible = filter(inst);
|
|
191
|
+
memo.set(inst.instanceId, visible);
|
|
192
|
+
return visible;
|
|
193
|
+
};
|
|
194
|
+
}
|
|
183
195
|
function candidatePool(fp, instanceFilter) {
|
|
184
196
|
// Explicit ids are authoritative: a miss is no-candidates, not a full-registry search.
|
|
185
197
|
let pool;
|
|
@@ -217,17 +229,23 @@ function matchFingerprintCore(fp, instanceFilter) {
|
|
|
217
229
|
// Live text / testID must be applied *before* pooling. A shared Babel helper
|
|
218
230
|
// (`const field = () => <TextInput testID={id} />`) reuses one auto-anchor
|
|
219
231
|
// callback, so the runtime bag is last-writer-wins until we read the host.
|
|
220
|
-
|
|
232
|
+
// A filter's verdict is memoized so covered-screen checks run once per instance.
|
|
233
|
+
const filter = instanceFilter ? memoizeFilter(instanceFilter) : undefined;
|
|
234
|
+
const broad = filter ? _AutoAnchorRegistry.autoAnchorRegistry.allInstances().filter(filter) : _AutoAnchorRegistry.autoAnchorRegistry.allInstances();
|
|
221
235
|
if (broad.length > 0) {
|
|
222
236
|
_AutoAnchorRegistry.autoAnchorRegistry.refreshLiveContent(broad);
|
|
223
237
|
}
|
|
224
|
-
const pool = candidatePool(fp,
|
|
238
|
+
const pool = candidatePool(fp, filter);
|
|
225
239
|
if (pool.length === 0) {
|
|
226
240
|
return miss('no-candidates');
|
|
227
241
|
}
|
|
242
|
+
|
|
243
|
+
// Visibility can clear a registry-wide ambiguous flag (a covered twin) but
|
|
244
|
+
// never add one. Unfiltered matches keep the stored flag.
|
|
245
|
+
const ambiguous = inst => filter ? _AutoAnchorRegistry.autoAnchorRegistry.isAmbiguousAmong(inst, filter) : inst.ambiguous;
|
|
228
246
|
const scored = pool.map(inst => ({
|
|
229
247
|
inst,
|
|
230
|
-
score: scoreInstance(fp, inst)
|
|
248
|
+
score: scoreInstance(fp, inst, ambiguous(inst))
|
|
231
249
|
})).filter(s => s.score > -Infinity).sort((a, b) => b.score - a.score);
|
|
232
250
|
if (scored.length === 0) {
|
|
233
251
|
return miss('all-contradicted');
|
|
@@ -236,7 +254,7 @@ function matchFingerprintCore(fp, instanceFilter) {
|
|
|
236
254
|
const second = scored[1];
|
|
237
255
|
const secondScore = second?.score ?? 0;
|
|
238
256
|
if ((fp.manualId || fp.userflowId || fp.testID) && best.score >= 90 && (!second || best.score - secondScore >= MATCH_UNIQUENESS_MARGIN)) {
|
|
239
|
-
if (best.inst
|
|
257
|
+
if (ambiguous(best.inst)) {
|
|
240
258
|
return miss('ambiguous-explicit-id', best.score, secondScore);
|
|
241
259
|
}
|
|
242
260
|
return {
|
|
@@ -275,11 +293,11 @@ function matchFingerprint(fp, opts) {
|
|
|
275
293
|
* Decode an `autoData` envelope (or accept an already-decoded one) and score
|
|
276
294
|
* its fingerprint. Missing / malformed envelopes fail closed.
|
|
277
295
|
*/
|
|
278
|
-
function matchAutoData(input) {
|
|
296
|
+
function matchAutoData(input, opts) {
|
|
279
297
|
const decoded = typeof input === 'string' ? (0, _protocol.decodeMobileAutoData)(input) : input;
|
|
280
298
|
if (!decoded?.fingerprint) {
|
|
281
299
|
return miss('no-fingerprint');
|
|
282
300
|
}
|
|
283
|
-
return matchFingerprint(decoded.fingerprint);
|
|
301
|
+
return matchFingerprint(decoded.fingerprint, opts);
|
|
284
302
|
}
|
|
285
303
|
//# sourceMappingURL=semanticMatcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_protocol","require","_AutoAnchorRegistry","MATCH_MIN_SCORE","exports","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","autoAnchorRegistry","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","decodeMobileAutoData","fingerprint"],"sourceRoot":"../../../src","sources":["anchors/semanticMatcher.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_protocol","require","_AutoAnchorRegistry","MATCH_MIN_SCORE","exports","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","autoAnchorRegistry","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","decodeMobileAutoData","fingerprint"],"sourceRoot":"../../../src","sources":["anchors/semanticMatcher.ts"],"mappings":";;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AASA,IAAAC,mBAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA2BO,MAAME,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,EAAE;AAC1B,MAAME,uBAAuB,GAAAD,OAAA,CAAAC,uBAAA,GAAG,EAAE;AACzC;AACA,MAAMC,mBAAmB,GAAG,EAAE;AAE9B,SAASC,YAAYA,CAACC,IAAY,EAAY;EAC5C,OAAOA,IAAI,CAACC,KAAK,CAAC,KAAK,CAAC;AAC1B;;AAEA;AACA,SAASC,WAAWA,CAACC,GAAW,EAAU;EACxC,MAAMC,CAAC,GAAG,oBAAoB,CAACC,IAAI,CAACF,GAAG,CAAC;EACxC,OAAOC,CAAC,GAAGA,CAAC,CAAC,CAAC,CAAC,GAAID,GAAG;AACxB;;AAEA;AACA,SAASG,YAAYA,CAACH,GAAW,EAAiB;EAChD,MAAMI,CAAC,GAAGJ,GAAG,CAACK,OAAO,CAAC,GAAG,CAAC;EAC1B,OAAOD,CAAC,IAAI,CAAC,IAAIJ,GAAG,CAACM,QAAQ,CAAC,GAAG,CAAC,GAAGN,GAAG,CAACO,KAAK,CAACH,CAAC,CAAC,GAAG,IAAI;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,mBAAmBA,CAC1BC,MAA0B,EAC1BC,QAA4B,EAC5BC,GAAG,GAAGhB,mBAAmB,EACjB;EACR,IAAI,CAACc,MAAM,IAAI,CAACC,QAAQ,EAAE,OAAO,CAAC;EAClC,IAAID,MAAM,KAAKC,QAAQ,EAAE,OAAOC,GAAG;EAEnC,MAAMC,CAAC,GAAGhB,YAAY,CAACa,MAAM,CAAC;EAC9B,MAAMI,CAAC,GAAGjB,YAAY,CAACc,QAAQ,CAAC;EAChC,MAAMI,CAAC,GAAGC,IAAI,CAACC,GAAG,CAACJ,CAAC,CAACK,MAAM,EAAEJ,CAAC,CAACI,MAAM,CAAC;EACtC,IAAIC,cAAc,GAAG,CAAC;EACtB,IAAIC,WAAW,GAAG,CAAC;EAEnB,KAAK,IAAIf,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGU,CAAC,EAAEV,CAAC,IAAI,CAAC,EAAE;IAC7B,MAAMgB,EAAE,GAAGR,CAAC,CAACR,CAAC,CAAE;IAChB,MAAMiB,EAAE,GAAGR,CAAC,CAACT,CAAC,CAAE;IAChB,IAAIL,WAAW,CAACqB,EAAE,CAAC,KAAKrB,WAAW,CAACsB,EAAE,CAAC,EAAE;IACzCF,WAAW,IAAI,CAAC;IAChB,MAAMG,EAAE,GAAGnB,YAAY,CAACiB,EAAE,CAAC;IAC3B,MAAMG,EAAE,GAAGpB,YAAY,CAACkB,EAAE,CAAC;IAC3B,IAAIC,EAAE,KAAK,IAAI,IAAIA,EAAE,KAAKC,EAAE,EAAEL,cAAc,IAAI,CAAC;EACnD;EAEA,MAAMM,KAAK,GAAGN,cAAc,GAAG,EAAE,GAAGC,WAAW,GAAG,CAAC,IAAIP,CAAC,CAACK,MAAM,KAAKJ,CAAC,CAACI,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;EACrF,OAAOF,IAAI,CAACC,GAAG,CAACL,GAAG,EAAEI,IAAI,CAACU,KAAK,CAACD,KAAK,IAAIb,GAAG,GAAGhB,mBAAmB,CAAC,CAAC,CAAC;AACvE;AAEA,SAAS+B,kBAAkBA,CAACC,QAA6B,EAAEC,MAA2B,EAAU;EAC9F,IAAID,QAAQ,CAACV,MAAM,KAAK,CAAC,EAAE,OAAO,CAAC;EACnC,IAAIO,KAAK,GAAG,CAAC;EACb,MAAMK,GAAG,GAAGd,IAAI,CAACC,GAAG,CAACW,QAAQ,CAACV,MAAM,EAAEW,MAAM,CAACX,MAAM,CAAC;EACpD,KAAK,IAAIb,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGyB,GAAG,EAAEzB,CAAC,IAAI,CAAC,EAAE;IAC/B,MAAM0B,CAAC,GAAGH,QAAQ,CAACA,QAAQ,CAACV,MAAM,GAAG,CAAC,GAAGb,CAAC,CAAE;IAC5C,MAAMQ,CAAC,GAAGgB,MAAM,CAACA,MAAM,CAACX,MAAM,GAAG,CAAC,GAAGb,CAAC,CAAE;IACxC,IAAI0B,CAAC,CAACC,IAAI,KAAKnB,CAAC,CAACmB,IAAI,EAAEP,KAAK,IAAI,CAAC;IACjC,IAAIM,CAAC,CAACE,IAAI,IAAIpB,CAAC,CAACoB,IAAI,IAAIF,CAAC,CAACE,IAAI,KAAKpB,CAAC,CAACoB,IAAI,EAAER,KAAK,IAAI,CAAC;IACrD,IAAIM,CAAC,CAACG,UAAU,IAAIrB,CAAC,CAACqB,UAAU,IAAIH,CAAC,CAACG,UAAU,KAAKrB,CAAC,CAACqB,UAAU,EAAET,KAAK,IAAI,EAAE;IAC9E,IAAIM,CAAC,CAACI,MAAM,IAAItB,CAAC,CAACsB,MAAM,IAAIJ,CAAC,CAACI,MAAM,KAAKtB,CAAC,CAACsB,MAAM,EAAEV,KAAK,IAAI,CAAC;IAC7D,IAAIM,CAAC,CAACK,IAAI,IAAIvB,CAAC,CAACuB,IAAI,IAAIC,UAAU,CAACN,CAAC,CAACK,IAAI,EAAEvB,CAAC,CAACuB,IAAI,CAAC,EAAEX,KAAK,IAAI,CAAC;EAChE;EACAA,KAAK,IAAIT,IAAI,CAACsB,GAAG,CAACV,QAAQ,CAACV,MAAM,GAAGW,MAAM,CAACX,MAAM,CAAC,GAAG,CAAC;EACtD,OAAOF,IAAI,CAACJ,GAAG,CAAC,CAAC,EAAEa,KAAK,CAAC;AAC3B;AAEA,SAASc,cAAcA,CAACX,QAA2B,EAAEC,MAAyB,EAAU;EACtF,IAAID,QAAQ,CAACV,MAAM,KAAK,CAAC,EAAE,OAAO,CAAC;EACnC,IAAIO,KAAK,GAAG,CAAC;EACb,MAAMe,KAAK,GAAGZ,QAAQ,CAACpB,KAAK,CAAC,CAAC,CAAC,CAAC;EAChC,MAAMiC,KAAK,GAAGZ,MAAM,CAACrB,KAAK,CAAC,CAAC,CAAC,CAAC;EAC9B,MAAMsB,GAAG,GAAGd,IAAI,CAACC,GAAG,CAACuB,KAAK,CAACtB,MAAM,EAAEuB,KAAK,CAACvB,MAAM,CAAC;EAChD,KAAK,IAAIb,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGyB,GAAG,EAAEzB,CAAC,IAAI,CAAC,EAAE;IAC/B,MAAM0B,CAAC,GAAGS,KAAK,CAACA,KAAK,CAACtB,MAAM,GAAG,CAAC,GAAGb,CAAC,CAAE;IACtC,MAAMQ,CAAC,GAAG4B,KAAK,CAACA,KAAK,CAACvB,MAAM,GAAG,CAAC,GAAGb,CAAC,CAAE;IACtC,IAAI0B,CAAC,CAACC,IAAI,KAAKnB,CAAC,CAACmB,IAAI,EAAEP,KAAK,IAAI,CAAC;IACjC,IAAIM,CAAC,CAACE,IAAI,IAAIpB,CAAC,CAACoB,IAAI,IAAIF,CAAC,CAACE,IAAI,KAAKpB,CAAC,CAACoB,IAAI,EAAER,KAAK,IAAI,CAAC;IACrD,IAAIM,CAAC,CAACG,UAAU,IAAIrB,CAAC,CAACqB,UAAU,IAAIH,CAAC,CAACG,UAAU,KAAKrB,CAAC,CAACqB,UAAU,EAAET,KAAK,IAAI,EAAE;IAC9E,IAAIM,CAAC,CAACI,MAAM,IAAItB,CAAC,CAACsB,MAAM,IAAIJ,CAAC,CAACI,MAAM,KAAKtB,CAAC,CAACsB,MAAM,EAAEV,KAAK,IAAI,EAAE;EAChE;EACA,OAAOA,KAAK;AACd;AAEA,SAASiB,iBAAiBA,CAACC,EAAqB,EAAEC,IAAwB,EAAW;EACnF,IAAID,EAAE,CAACT,UAAU,IAAIU,IAAI,CAACV,UAAU,IAAIS,EAAE,CAACT,UAAU,KAAKU,IAAI,CAACV,UAAU,EAAE,OAAO,IAAI;EACtF,IAAIS,EAAE,CAACR,MAAM,IAAIS,IAAI,CAACT,MAAM,IAAIQ,EAAE,CAACR,MAAM,KAAKS,IAAI,CAACT,MAAM,EAAE,OAAO,IAAI;EACtE,IAAIQ,EAAE,CAACE,QAAQ,IAAID,IAAI,CAACC,QAAQ,IAAIF,EAAE,CAACE,QAAQ,KAAKD,IAAI,CAACC,QAAQ,EAAE,OAAO,IAAI;EAC9E,IAAIF,EAAE,CAACX,IAAI,IAAIY,IAAI,CAACZ,IAAI,IAAIW,EAAE,CAACX,IAAI,KAAKY,IAAI,CAACZ,IAAI,EAAE,OAAO,IAAI;EAC9D,OAAO,KAAK;AACd;;AAEA;AACA,SAASc,QAAQA,CAACH,EAAqB,EAAEC,IAAwB,EAAW;EAC1E,OACG,CAAC,CAACD,EAAE,CAACE,QAAQ,IAAID,IAAI,CAACC,QAAQ,KAAKF,EAAE,CAACE,QAAQ,IAC9C,CAAC,CAACF,EAAE,CAACT,UAAU,IAAIU,IAAI,CAACV,UAAU,KAAKS,EAAE,CAACT,UAAW,IACrD,CAAC,CAACS,EAAE,CAACR,MAAM,IAAIS,IAAI,CAACT,MAAM,KAAKQ,EAAE,CAACR,MAAO,IACzC,CAAC,CAACQ,EAAE,CAACI,QAAQ,IAAIH,IAAI,CAACG,QAAQ,KAAKJ,EAAE,CAACI,QAAQ,IAAI,CAACJ,EAAE,CAACI,QAAQ,CAACC,UAAU,CAAC,KAAK,CAAE;AAEtF;;AAEA;AACA,SAASC,aAAaA,CAACC,KAAa,EAAU;EAC5C,OAAOA,KAAK,CAACC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;AAC/D;AAEO,SAASf,UAAUA,CAACxB,CAAqB,EAAEC,CAAqB,EAAW;EAChF,IAAI,CAACD,CAAC,IAAI,CAACC,CAAC,EAAE,OAAO,KAAK;EAC1B,OAAOD,CAAC,KAAKC,CAAC,IAAImC,aAAa,CAACpC,CAAC,CAAC,KAAKoC,aAAa,CAACnC,CAAC,CAAC;AACzD;;AAEA;AACA,SAASuC,mBAAmBA,CAACV,EAAqB,EAAEC,IAAwB,EAAW;EACrF,OAAO,CAAC,CAACD,EAAE,CAACW,SAAS,IAAI,CAAC,CAACV,IAAI,CAACU,SAAS,IAAIX,EAAE,CAACW,SAAS,KAAKV,IAAI,CAACU,SAAS;AAC9E;;AAEA;AACA;AACA;AACA;AACA,SAASC,kBAAkBA,CAACZ,EAAqB,EAAEC,IAAwB,EAAW;EACpF,OAAOS,mBAAmB,CAACV,EAAE,EAAEC,IAAI,CAAC,IAAI,CAACP,UAAU,CAACM,EAAE,CAACW,SAAS,EAAEV,IAAI,CAACU,SAAS,CAAC;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA,SAASE,sBAAsBA,CAACb,EAAqB,EAAEC,IAAwB,EAAW;EACxF,OACG,CAAC,CAACD,EAAE,CAACc,QAAQ,IAAIb,IAAI,CAACa,QAAQ,KAAKd,EAAE,CAACc,QAAQ,IAC9C,CAAC,CAACd,EAAE,CAACe,QAAQ,IAAId,IAAI,CAACc,QAAQ,KAAKf,EAAE,CAACe,QAAS;AAEpD;AAEA,SAASC,aAAaA,CACpBhB,EAAqB,EACrBC,IAAwB,EACxBgB,SAAkB,EACV;EACR,IAAIlB,iBAAiB,CAACC,EAAE,EAAEC,IAAI,CAAC,EAAE,OAAO,CAACiB,QAAQ;;EAEjD;EACA;EACA,IAAIN,kBAAkB,CAACZ,EAAE,EAAEC,IAAI,CAAC,IAAI,CAACE,QAAQ,CAACH,EAAE,EAAEC,IAAI,CAAC,IAAI,CAACY,sBAAsB,CAACb,EAAE,EAAEC,IAAI,CAAC,EAAE;IAC5F,OAAO,CAACiB,QAAQ;EAClB;EAEA,IAAIpC,KAAK,GAAG,CAAC;EAEb,IAAIkB,EAAE,CAACE,QAAQ,IAAID,IAAI,CAACC,QAAQ,KAAKF,EAAE,CAACE,QAAQ,EAAEpB,KAAK,IAAI,GAAG;EAC9D,IAAIkB,EAAE,CAACT,UAAU,IAAIU,IAAI,CAACV,UAAU,KAAKS,EAAE,CAACT,UAAU,EAAET,KAAK,IAAI,GAAG;EACpE,IAAIkB,EAAE,CAACR,MAAM,IAAIS,IAAI,CAACT,MAAM,KAAKQ,EAAE,CAACR,MAAM,EAAEV,KAAK,IAAI,EAAE;EACvD,IAAIkB,EAAE,CAACI,QAAQ,IAAIH,IAAI,CAACG,QAAQ,KAAKJ,EAAE,CAACI,QAAQ,IAAI,CAACJ,EAAE,CAACI,QAAQ,CAACC,UAAU,CAAC,KAAK,CAAC,EAAE;IAClFvB,KAAK,IAAI,EAAE;EACb;EAEA,IAAIkB,EAAE,CAACX,IAAI,KAAKY,IAAI,CAACZ,IAAI,EAAEP,KAAK,IAAI,EAAE;EACtC,IAAIkB,EAAE,CAACV,IAAI,KAAKW,IAAI,CAACX,IAAI,EAAER,KAAK,IAAI,EAAE;EACtC,IAAIkB,EAAE,CAACmB,WAAW,KAAK,IAAI,IAAIlB,IAAI,CAACkB,WAAW,EAAErC,KAAK,IAAI,CAAC;EAE3DA,KAAK,IAAIhB,mBAAmB,CAACkC,EAAE,CAACoB,cAAc,EAAEnB,IAAI,CAACmB,cAAc,EAAEnE,mBAAmB,CAAC;EACzF6B,KAAK,IAAIhB,mBAAmB,CAACkC,EAAE,CAACqB,YAAY,EAAEpB,IAAI,CAACoB,YAAY,EAAE,EAAE,CAAC;EACpE,IAAIrB,EAAE,CAACsB,aAAa,IAAIrB,IAAI,CAACqB,aAAa,KAAKtB,EAAE,CAACsB,aAAa,EAAExC,KAAK,IAAI,EAAE;EAE5E,IAAIkB,EAAE,CAACW,SAAS,IAAIV,IAAI,CAACU,SAAS,KAAKX,EAAE,CAACW,SAAS,EAAE7B,KAAK,IAAI,EAAE,CAAC,KAC5D,IAAIkB,EAAE,CAACW,SAAS,IAAIV,IAAI,CAACU,SAAS,IAAIjB,UAAU,CAACM,EAAE,CAACW,SAAS,EAAEV,IAAI,CAACU,SAAS,CAAC,EAAE7B,KAAK,IAAI,EAAE;EAChG,IAAIkB,EAAE,CAACuB,kBAAkB,IAAItB,IAAI,CAACsB,kBAAkB,KAAKvB,EAAE,CAACuB,kBAAkB,EAAE;IAC9EzC,KAAK,IAAI,EAAE;EACb;EACA,IAAIkB,EAAE,CAACc,QAAQ,IAAIb,IAAI,CAACa,QAAQ,EAAEhC,KAAK,IAAIkB,EAAE,CAACc,QAAQ,KAAKb,IAAI,CAACa,QAAQ,GAAG,EAAE,GAAG,CAAC,EAAE;EACnF,IAAId,EAAE,CAACe,QAAQ,IAAId,IAAI,CAACc,QAAQ,EAAEjC,KAAK,IAAIkB,EAAE,CAACe,QAAQ,KAAKd,IAAI,CAACc,QAAQ,GAAG,EAAE,GAAG,CAAC,EAAE;EACnF,IAAIf,EAAE,CAACwB,UAAU,IAAIvB,IAAI,CAACuB,UAAU,KAAKxB,EAAE,CAACwB,UAAU,EAAE1C,KAAK,IAAI,EAAE;EAEnEA,KAAK,IAAIc,cAAc,CAACI,EAAE,CAACyB,SAAS,IAAI,EAAE,EAAExB,IAAI,CAACwB,SAAS,IAAI,EAAE,CAAC;EAEjE,MAAMC,MAAM,GAAGC,sCAAkB,CAACC,aAAa,CAAC3B,IAAI,CAAC4B,UAAU,EAAE,CAAC,CAAC;EACnE/C,KAAK,IAAIE,kBAAkB,CAACgB,EAAE,CAAC8B,gBAAgB,IAAI,EAAE,EAAEJ,MAAM,CAACK,QAAQ,CAAC;EACvE;EACA;EACAjD,KAAK,IAAIE,kBAAkB,CAACgB,EAAE,CAACgC,YAAY,IAAI,EAAE,EAAEN,MAAM,CAACO,IAAI,CAAC;EAE/D,IAAIhB,SAAS,IAAI,CAAChB,IAAI,CAACC,QAAQ,EAAEpB,KAAK,IAAI,EAAE;EAE5C,OAAOA,KAAK;AACd;AAQA;AACA,SAASoD,aAAaA,CAACC,MAAsB,EAAkB;EAC7D,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAAkB,CAAC;EACvC,OAAQpC,IAAI,IAAK;IACf,MAAMqC,MAAM,GAAGF,IAAI,CAACG,GAAG,CAACtC,IAAI,CAAC4B,UAAU,CAAC;IACxC,IAAIS,MAAM,KAAKE,SAAS,EAAE,OAAOF,MAAM;IACvC,MAAMG,OAAO,GAAGN,MAAM,CAAClC,IAAI,CAAC;IAC5BmC,IAAI,CAACM,GAAG,CAACzC,IAAI,CAAC4B,UAAU,EAAEY,OAAO,CAAC;IAClC,OAAOA,OAAO;EAChB,CAAC;AACH;AAEA,SAASE,aAAaA,CACpB3C,EAAqB,EACrB4C,cAA+B,EACT;EACtB;EACA,IAAIC,IAA0B;EAC9B,IAAI7C,EAAE,CAACE,QAAQ,EAAE;IACf2C,IAAI,GAAGlB,sCAAkB,CAACmB,sBAAsB,CAAC9C,EAAE,CAACE,QAAQ,CAAC;EAC/D,CAAC,MAAM,IAAIF,EAAE,CAACT,UAAU,EAAE;IACxBsD,IAAI,GAAGlB,sCAAkB,CAACmB,sBAAsB,CAAC9C,EAAE,CAACT,UAAU,CAAC;EACjE,CAAC,MAAM,IAAIS,EAAE,CAACR,MAAM,EAAE;IACpBqD,IAAI,GAAGlB,sCAAkB,CAACmB,sBAAsB,CAAC9C,EAAE,CAACR,MAAM,CAAC;EAC7D,CAAC,MAAM;IACLqD,IAAI,GAAGlB,sCAAkB,CAACoB,YAAY,CAAC,CAAC;IACxC,IAAI/C,EAAE,CAACV,IAAI,EAAE;MACX,MAAM0D,QAAQ,GAAGH,IAAI,CAACV,MAAM,CAAEzE,CAAC,IAAKA,CAAC,CAAC4B,IAAI,KAAKU,EAAE,CAACV,IAAI,CAAC;MACvD,IAAI0D,QAAQ,CAACzE,MAAM,GAAG,CAAC,EAAEsE,IAAI,GAAGG,QAAQ;IAC1C,CAAC,MAAM,IAAIhD,EAAE,CAACX,IAAI,EAAE;MAClB,MAAM2D,QAAQ,GAAGH,IAAI,CAACV,MAAM,CAAEzE,CAAC,IAAKA,CAAC,CAAC2B,IAAI,KAAKW,EAAE,CAACX,IAAI,CAAC;MACvD,IAAI2D,QAAQ,CAACzE,MAAM,GAAG,CAAC,EAAEsE,IAAI,GAAGG,QAAQ;IAC1C;IACA,IAAIhD,EAAE,CAACmB,WAAW,EAAE;MAClB,MAAM6B,QAAQ,GAAGH,IAAI,CAACV,MAAM,CAAEzE,CAAC,IAAKA,CAAC,CAACyD,WAAW,CAAC;MAClD,IAAI6B,QAAQ,CAACzE,MAAM,GAAG,CAAC,EAAEsE,IAAI,GAAGG,QAAQ;IAC1C;EACF;EACA,OAAOJ,cAAc,GAAGC,IAAI,CAACV,MAAM,CAACS,cAAc,CAAC,GAAGC,IAAI;AAC5D;AAEA,SAASI,IAAIA,CAACC,MAAuB,EAAEpE,KAAK,GAAG,CAAC,EAAEqE,WAAW,GAAG,CAAC,EAAe;EAC9E,OAAO;IAAEC,QAAQ,EAAE,IAAI;IAAEtE,KAAK;IAAEqE,WAAW;IAAED;EAAO,CAAC;AACvD;AAEA,SAASG,oBAAoBA,CAACrD,EAAqB,EAAE4C,cAA+B,EAAe;EACjG;EACA;EACA;EACA;EACA,MAAMT,MAAM,GAAGS,cAAc,GAAGV,aAAa,CAACU,cAAc,CAAC,GAAGJ,SAAS;EACzE,MAAMc,KAAK,GAAGnB,MAAM,GAChBR,sCAAkB,CAACoB,YAAY,CAAC,CAAC,CAACZ,MAAM,CAACA,MAAM,CAAC,GAChDR,sCAAkB,CAACoB,YAAY,CAAC,CAAC;EACrC,IAAIO,KAAK,CAAC/E,MAAM,GAAG,CAAC,EAAE;IACpBoD,sCAAkB,CAAC4B,kBAAkB,CAACD,KAAK,CAAC;EAC9C;EAEA,MAAMT,IAAI,GAAGF,aAAa,CAAC3C,EAAE,EAAEmC,MAAM,CAAC;EACtC,IAAIU,IAAI,CAACtE,MAAM,KAAK,CAAC,EAAE;IACrB,OAAO0E,IAAI,CAAC,eAAe,CAAC;EAC9B;;EAEA;EACA;EACA,MAAMhC,SAAS,GAAIhB,IAAwB,IACzCkC,MAAM,GAAGR,sCAAkB,CAAC6B,gBAAgB,CAACvD,IAAI,EAAEkC,MAAM,CAAC,GAAGlC,IAAI,CAACgB,SAAS;EAE7E,MAAMwC,MAAM,GAAGZ,IAAI,CAChBa,GAAG,CAAEzD,IAAI,KAAM;IAAEA,IAAI;IAAEnB,KAAK,EAAEkC,aAAa,CAAChB,EAAE,EAAEC,IAAI,EAAEgB,SAAS,CAAChB,IAAI,CAAC;EAAE,CAAC,CAAC,CAAC,CAC1EkC,MAAM,CAAEwB,CAAC,IAAKA,CAAC,CAAC7E,KAAK,GAAG,CAACoC,QAAQ,CAAC,CAClC0C,IAAI,CAAC,CAAC1F,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAACW,KAAK,GAAGZ,CAAC,CAACY,KAAK,CAAC;EAEpC,IAAI2E,MAAM,CAAClF,MAAM,KAAK,CAAC,EAAE;IACvB,OAAO0E,IAAI,CAAC,kBAAkB,CAAC;EACjC;EAEA,MAAMY,IAAI,GAAGJ,MAAM,CAAC,CAAC,CAAE;EACvB,MAAMK,MAAM,GAAGL,MAAM,CAAC,CAAC,CAAC;EACxB,MAAMN,WAAW,GAAGW,MAAM,EAAEhF,KAAK,IAAI,CAAC;EAEtC,IACE,CAACkB,EAAE,CAACE,QAAQ,IAAIF,EAAE,CAACT,UAAU,IAAIS,EAAE,CAACR,MAAM,KAC1CqE,IAAI,CAAC/E,KAAK,IAAI,EAAE,KACf,CAACgF,MAAM,IAAID,IAAI,CAAC/E,KAAK,GAAGqE,WAAW,IAAInG,uBAAuB,CAAC,EAChE;IACA,IAAIiE,SAAS,CAAC4C,IAAI,CAAC5D,IAAI,CAAC,EAAE;MACxB,OAAOgD,IAAI,CAAC,uBAAuB,EAAEY,IAAI,CAAC/E,KAAK,EAAEqE,WAAW,CAAC;IAC/D;IACA,OAAO;MACLC,QAAQ,EAAES,IAAI,CAAC5D,IAAI;MACnBnB,KAAK,EAAE+E,IAAI,CAAC/E,KAAK;MACjBqE,WAAW;MACXY,aAAa,EAAErD,mBAAmB,CAACV,EAAE,EAAE6D,IAAI,CAAC5D,IAAI;IAClD,CAAC;EACH;EAEA,IAAI4D,IAAI,CAAC/E,KAAK,GAAGhC,eAAe,EAAE;IAChC,OAAOmG,IAAI,CAAC,iBAAiB,EAAEY,IAAI,CAAC/E,KAAK,EAAEqE,WAAW,CAAC;EACzD;EAEA,IAAIU,IAAI,CAAC/E,KAAK,GAAGqE,WAAW,GAAGnG,uBAAuB,EAAE;IACtD,OAAOiG,IAAI,CAAC,YAAY,EAAEY,IAAI,CAAC/E,KAAK,EAAEqE,WAAW,CAAC;EACpD;EAEA,OAAO;IACLC,QAAQ,EAAES,IAAI,CAAC5D,IAAI;IACnBnB,KAAK,EAAE+E,IAAI,CAAC/E,KAAK;IACjBqE,WAAW;IACXY,aAAa,EAAErD,mBAAmB,CAACV,EAAE,EAAE6D,IAAI,CAAC5D,IAAI;EAClD,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACO,SAAS+D,gBAAgBA,CAAChE,EAAqB,EAAEiE,IAAmB,EAAe;EACxF,MAAMC,MAAM,GAAGb,oBAAoB,CAACrD,EAAE,EAAEiE,IAAI,EAAErB,cAAc,CAAC;EAC7D,IAAI5C,EAAE,CAACmE,gBAAgB,EAAED,MAAM,CAACC,gBAAgB,GAAGnE,EAAE,CAACmE,gBAAgB;EACtE,OAAOD,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACO,SAASE,aAAaA,CAACC,KAA8B,EAAEJ,IAAmB,EAAe;EAC9F,MAAMK,OAAO,GAAG,OAAOD,KAAK,KAAK,QAAQ,GAAG,IAAAE,8BAAoB,EAACF,KAAK,CAAC,GAAGA,KAAK;EAC/E,IAAI,CAACC,OAAO,EAAEE,WAAW,EAAE;IACzB,OAAOvB,IAAI,CAAC,gBAAgB,CAAC;EAC/B;EACA,OAAOe,gBAAgB,CAACM,OAAO,CAACE,WAAW,EAAEP,IAAI,CAAC;AACpD","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.ANONYMOUS_ID_STORAGE_KEY = void 0;
|
|
7
7
|
exports.clearAnonymousId = clearAnonymousId;
|
|
8
8
|
exports.getOrCreateAnonymousId = getOrCreateAnonymousId;
|
|
9
|
+
exports.uuid = uuid;
|
|
9
10
|
var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
|
|
10
11
|
var _core = require("@userflow-tech/core");
|
|
11
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -29,7 +30,9 @@ async function getOrCreateAnonymousId() {
|
|
|
29
30
|
}
|
|
30
31
|
return externalId;
|
|
31
32
|
} catch {
|
|
32
|
-
throw new _core.UserflowAuthError('Userflow.identifyAnonymous() is not supported when persistent storage is unavailable.'
|
|
33
|
+
throw new _core.UserflowAuthError('Userflow.identifyAnonymous() is not supported when persistent storage is unavailable.', {
|
|
34
|
+
isHostContract: true
|
|
35
|
+
});
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
38
|
async function clearAnonymousId() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_asyncStorage","_interopRequireDefault","require","_core","e","__esModule","default","ANONYMOUS_ID_STORAGE_KEY","exports","uuid","webcrypto","globalThis","crypto","randomUUID","replace","char","rand","Math","random","value","toString","getOrCreateAnonymousId","externalId","AsyncStorage","getItem","setItem","UserflowAuthError","clearAnonymousId","removeItem"],"sourceRoot":"../../src","sources":["anonymousId.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_asyncStorage","_interopRequireDefault","require","_core","e","__esModule","default","ANONYMOUS_ID_STORAGE_KEY","exports","uuid","webcrypto","globalThis","crypto","randomUUID","replace","char","rand","Math","random","value","toString","getOrCreateAnonymousId","externalId","AsyncStorage","getItem","setItem","UserflowAuthError","isHostContract","clearAnonymousId","removeItem"],"sourceRoot":"../../src","sources":["anonymousId.ts"],"mappings":";;;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAAwD,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD;AACO,MAAMG,wBAAwB,GAAAC,OAAA,CAAAD,wBAAA,GAAG,sBAAsB;AAEvD,SAASE,IAAIA,CAAA,EAAW;EAC7B,MAAMC,SAAS,GAAGC,UAAU,CAACC,MAAM;EACnC,IAAIF,SAAS,EAAEG,UAAU,EAAE,OAAOH,SAAS,CAACG,UAAU,CAAC,CAAC;EACxD,OAAO,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,IAAI,IAAK;IACvE,MAAMC,IAAI,GAAIC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAI,CAAC;IACrC,MAAMC,KAAK,GAAGJ,IAAI,KAAK,GAAG,GAAGC,IAAI,GAAIA,IAAI,GAAG,GAAG,GAAI,GAAG;IACtD,OAAOG,KAAK,CAACC,QAAQ,CAAC,EAAE,CAAC;EAC3B,CAAC,CAAC;AACJ;AAEO,eAAeC,sBAAsBA,CAAA,EAAoB;EAC9D,IAAI;IACF,IAAIC,UAAU,GAAG,MAAMC,qBAAY,CAACC,OAAO,CAACjB,wBAAwB,CAAC;IACrE,IAAI,CAACe,UAAU,EAAE;MACfA,UAAU,GAAG,QAAQb,IAAI,CAAC,CAAC,EAAE;MAC7B,MAAMc,qBAAY,CAACE,OAAO,CAAClB,wBAAwB,EAAEe,UAAU,CAAC;IAClE;IACA,OAAOA,UAAU;EACnB,CAAC,CAAC,MAAM;IACN,MAAM,IAAII,uBAAiB,CACzB,uFAAuF,EACvF;MAAEC,cAAc,EAAE;IAAK,CACzB,CAAC;EACH;AACF;AAEO,eAAeC,gBAAgBA,CAAA,EAAkB;EACtD,IAAI;IACF,MAAML,qBAAY,CAACM,UAAU,CAACtB,wBAAwB,CAAC;EACzD,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ","ignoreList":[]}
|
|
@@ -14,8 +14,10 @@ var _capturePickerScreenshot = require("./capturePickerScreenshot.js");
|
|
|
14
14
|
var _ChromeBarTransition = require("./chrome/ChromeBarTransition.js");
|
|
15
15
|
var _ChromeBottomSheet = require("./chrome/ChromeBottomSheet.js");
|
|
16
16
|
var _ChromeButton = require("./chrome/ChromeButton.js");
|
|
17
|
+
var _ChromeDialog = require("./chrome/ChromeDialog.js");
|
|
17
18
|
var _ChromeTooltip = require("./chrome/ChromeTooltip.js");
|
|
18
19
|
var _ChromeTopBar = require("./chrome/ChromeTopBar.js");
|
|
20
|
+
var _doubleTapMonitor = require("./chrome/doubleTapMonitor.js");
|
|
19
21
|
var _tokens = require("./chrome/tokens.js");
|
|
20
22
|
var _doubleTap = require("./doubleTap.js");
|
|
21
23
|
var _elementPickerController = require("./elementPickerController.js");
|
|
@@ -23,17 +25,24 @@ var _fingerprintFromInstance = require("./fingerprintFromInstance.js");
|
|
|
23
25
|
var _hitTest = require("./hitTest.js");
|
|
24
26
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
27
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
26
|
-
function
|
|
27
|
-
if (
|
|
28
|
-
return
|
|
28
|
+
function targetText(target) {
|
|
29
|
+
if (target.source === 'registry') {
|
|
30
|
+
return target.instance.childText ?? target.instance.accessibilityLabel ?? null;
|
|
29
31
|
}
|
|
30
|
-
|
|
31
|
-
return 'That fingerprint matches a different element — pick again or add a testID.';
|
|
32
|
-
}
|
|
33
|
-
return 'Could not uniquely match that element at play time.';
|
|
32
|
+
return target.descriptor.childText ?? target.descriptor.accessibilityLabel ?? null;
|
|
34
33
|
}
|
|
35
|
-
const CONFIRM_HELPER = '
|
|
34
|
+
const CONFIRM_HELPER = 'Return to the Userflow app after confirming';
|
|
35
|
+
const WARNING_HELPER = 'Element may have an unreliable ID. This element may be selected but could break later on.';
|
|
36
|
+
const ERROR_LABEL = 'Can’t select this element';
|
|
37
|
+
const ERROR_HELPER = 'Element ID not found — select a different element';
|
|
36
38
|
const ONBOARDING_COPY = 'Double tap anywhere to access the menu';
|
|
39
|
+
const RETURN_NUDGE_TITLE = 'Return to the Userflow app';
|
|
40
|
+
const RETURN_NUDGE_BODY = 'The element was selected successfully. You may now return to the Userflow app to continue editing your flow.';
|
|
41
|
+
function selectionFromAssessment(assessment) {
|
|
42
|
+
if (assessment.kind === 'error') return 'error-unresolvable';
|
|
43
|
+
if (assessment.kind === 'warning') return 'warning';
|
|
44
|
+
return 'ok';
|
|
45
|
+
}
|
|
37
46
|
|
|
38
47
|
/** Yield until chrome has left the native tree so captureScreen cannot include it. */
|
|
39
48
|
function waitForCapturePaint() {
|
|
@@ -62,6 +71,7 @@ function ringStyle(rect, inset) {
|
|
|
62
71
|
/**
|
|
63
72
|
* Overlay chrome for in-app element picking. Mounted by UserflowProvider;
|
|
64
73
|
* renders nothing until {@link elementPickerController.beginSelection}.
|
|
74
|
+
* Every pick shows the menu and onboarding tooltip.
|
|
65
75
|
*/
|
|
66
76
|
function ElementPickerOverlay() {
|
|
67
77
|
const [state, setState] = React.useState(() => _elementPickerController.elementPickerController.getState());
|
|
@@ -70,9 +80,11 @@ function ElementPickerOverlay() {
|
|
|
70
80
|
const [index, setIndex] = React.useState(0);
|
|
71
81
|
const [busy, setBusy] = React.useState(false);
|
|
72
82
|
const [status, setStatus] = React.useState(null);
|
|
83
|
+
const [selection, setSelection] = React.useState('idle');
|
|
73
84
|
const [chromeVisible, setChromeVisible] = React.useState(true);
|
|
74
85
|
const [hidingForCapture, setHidingForCapture] = React.useState(false);
|
|
75
86
|
const [showOnboarding, setShowOnboarding] = React.useState(false);
|
|
87
|
+
const [returnNudge, setReturnNudge] = React.useState(false);
|
|
76
88
|
const [barHeight, setBarHeight] = React.useState(0);
|
|
77
89
|
const [sheetHeight, setSheetHeight] = React.useState(0);
|
|
78
90
|
const tapStartRef = React.useRef(null);
|
|
@@ -103,6 +115,7 @@ function ElementPickerOverlay() {
|
|
|
103
115
|
setIndex(0);
|
|
104
116
|
setBusy(false);
|
|
105
117
|
setStatus(null);
|
|
118
|
+
setSelection('idle');
|
|
106
119
|
setChromeVisible(true);
|
|
107
120
|
setBarHeight(0);
|
|
108
121
|
setSheetHeight(0);
|
|
@@ -123,10 +136,13 @@ function ElementPickerOverlay() {
|
|
|
123
136
|
return;
|
|
124
137
|
}
|
|
125
138
|
// Successful confirm leaves hidingForCapture true so chrome does not
|
|
126
|
-
// flash back during teardown. Clear it with the new
|
|
127
|
-
//
|
|
128
|
-
if (armedRequestIdRef.current !== next.requestId) {
|
|
139
|
+
// flash back during teardown. Clear it with the new pick's setState so
|
|
140
|
+
// the first paint of this pick has its bars.
|
|
141
|
+
if (armedRequestIdRef.current !== next.requestId && next.requestId != null) {
|
|
129
142
|
setHidingForCapture(false);
|
|
143
|
+
setReturnNudge(false);
|
|
144
|
+
setChromeVisible(true);
|
|
145
|
+
setShowOnboarding(true);
|
|
130
146
|
}
|
|
131
147
|
});
|
|
132
148
|
}, [resetTransient]);
|
|
@@ -136,6 +152,7 @@ function ElementPickerOverlay() {
|
|
|
136
152
|
armedRequestIdRef.current = state.requestId;
|
|
137
153
|
resetTransient();
|
|
138
154
|
setShowOnboarding(true);
|
|
155
|
+
setReturnNudge(false);
|
|
139
156
|
}, [resetTransient, state.active, state.requestId]);
|
|
140
157
|
React.useEffect(() => {
|
|
141
158
|
return () => {
|
|
@@ -181,7 +198,7 @@ function ElementPickerOverlay() {
|
|
|
181
198
|
setSheetHeight(Math.max(0, height));
|
|
182
199
|
}, []);
|
|
183
200
|
const selected = candidates[index] ?? null;
|
|
184
|
-
const phase = selected ? 'selected' : mode === 'select' ? 'selecting' : 'navigating';
|
|
201
|
+
const phase = selection === 'error-no-element' ? 'blocked' : selected ? 'selected' : mode === 'select' ? 'selecting' : 'navigating';
|
|
185
202
|
modeRef.current = mode;
|
|
186
203
|
|
|
187
204
|
// Bars slide/fade in with the picker, out on double-tap hide, and out again
|
|
@@ -195,20 +212,26 @@ function ElementPickerOverlay() {
|
|
|
195
212
|
setShowOnboarding(false);
|
|
196
213
|
}
|
|
197
214
|
}, [phase]);
|
|
198
|
-
const
|
|
199
|
-
if (modeRef.current !== 'select') return;
|
|
200
|
-
lastTapRef.current = null;
|
|
201
|
-
setChromeVisible(true);
|
|
215
|
+
const applySelection = React.useCallback(hits => {
|
|
202
216
|
if (hits.length === 0) {
|
|
203
217
|
setCandidates([]);
|
|
204
218
|
setIndex(0);
|
|
205
|
-
|
|
219
|
+
setSelection('error-no-element');
|
|
220
|
+
setStatus(null);
|
|
206
221
|
return;
|
|
207
222
|
}
|
|
223
|
+
const nextIndex = (0, _hitTest.defaultCandidateIndex)(hits);
|
|
208
224
|
setCandidates(hits);
|
|
209
|
-
setIndex(
|
|
225
|
+
setIndex(nextIndex);
|
|
226
|
+
setSelection(selectionFromAssessment((0, _fingerprintFromInstance.assessPickerTarget)(hits[nextIndex].target)));
|
|
210
227
|
setStatus(null);
|
|
211
228
|
}, []);
|
|
229
|
+
const applyHits = React.useCallback(hits => {
|
|
230
|
+
if (modeRef.current !== 'select') return;
|
|
231
|
+
lastTapRef.current = null;
|
|
232
|
+
setChromeVisible(true);
|
|
233
|
+
applySelection(hits);
|
|
234
|
+
}, [applySelection]);
|
|
212
235
|
const scheduleSelection = React.useCallback((pageX, pageY) => {
|
|
213
236
|
cancelPendingSelection();
|
|
214
237
|
const gen = tapGenRef.current;
|
|
@@ -235,7 +258,12 @@ function ElementPickerOverlay() {
|
|
|
235
258
|
}, [applyHits, cancelPendingSelection]);
|
|
236
259
|
const onTap = React.useCallback(async (pageX, pageY) => {
|
|
237
260
|
if (selected && candidates.length > 1 && (0, _targetPressMonitor.pointInRect)(pageX, pageY, selected.rect)) {
|
|
238
|
-
|
|
261
|
+
const next = (0, _hitTest.nextContainingIndex)(candidates, index);
|
|
262
|
+
setIndex(next);
|
|
263
|
+
const nextHit = candidates[next];
|
|
264
|
+
if (nextHit) {
|
|
265
|
+
setSelection(selectionFromAssessment((0, _fingerprintFromInstance.assessPickerTarget)(nextHit.target)));
|
|
266
|
+
}
|
|
239
267
|
setStatus(null);
|
|
240
268
|
return;
|
|
241
269
|
}
|
|
@@ -243,18 +271,32 @@ function ElementPickerOverlay() {
|
|
|
243
271
|
setStatus(null);
|
|
244
272
|
try {
|
|
245
273
|
const hits = await (0, _hitTest.hitTestAt)(pageX, pageY);
|
|
246
|
-
|
|
247
|
-
setCandidates([]);
|
|
248
|
-
setIndex(0);
|
|
249
|
-
setStatus('No stamped element under that tap.');
|
|
250
|
-
return;
|
|
251
|
-
}
|
|
252
|
-
setCandidates(hits);
|
|
253
|
-
setIndex(0);
|
|
274
|
+
applySelection(hits);
|
|
254
275
|
} finally {
|
|
255
276
|
setBusy(false);
|
|
256
277
|
}
|
|
257
|
-
}, [candidates, selected]);
|
|
278
|
+
}, [applySelection, candidates, index, selected]);
|
|
279
|
+
const hideOrShowChrome = React.useCallback(() => {
|
|
280
|
+
cancelPendingSelection();
|
|
281
|
+
lastTapRef.current = null;
|
|
282
|
+
setShowOnboarding(false);
|
|
283
|
+
setChromeVisible(visible => !visible);
|
|
284
|
+
}, [cancelPendingSelection]);
|
|
285
|
+
|
|
286
|
+
// Navigate mode unmounts the capture layer so the host app can receive
|
|
287
|
+
// touches. Double-tap still has to reach the bars, via the screen-wide
|
|
288
|
+
// monitor the preview bar uses. Select mode keeps its own capture handler
|
|
289
|
+
// and must not also subscribe, or one double tap would toggle twice.
|
|
290
|
+
React.useEffect(() => {
|
|
291
|
+
if (!state.active || mode !== 'navigate') return;
|
|
292
|
+
const subscription = {
|
|
293
|
+
onDoubleTap: hideOrShowChrome
|
|
294
|
+
};
|
|
295
|
+
_doubleTapMonitor.doubleTapMonitor.set(subscription);
|
|
296
|
+
return () => {
|
|
297
|
+
_doubleTapMonitor.doubleTapMonitor.clearIfCurrent(subscription);
|
|
298
|
+
};
|
|
299
|
+
}, [hideOrShowChrome, mode, state.active]);
|
|
258
300
|
const onGrant = React.useCallback(event => {
|
|
259
301
|
const {
|
|
260
302
|
pageX,
|
|
@@ -281,51 +323,53 @@ function ElementPickerOverlay() {
|
|
|
281
323
|
pageY,
|
|
282
324
|
timestamp: Date.now()
|
|
283
325
|
};
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
setShowOnboarding(false);
|
|
288
|
-
setChromeVisible(visible => !visible);
|
|
326
|
+
const engaged = selected != null || selection === 'error-no-element';
|
|
327
|
+
if (!engaged && (0, _doubleTap.isDoubleTap)(lastTapRef.current, sample)) {
|
|
328
|
+
hideOrShowChrome();
|
|
289
329
|
return;
|
|
290
330
|
}
|
|
291
331
|
lastTapRef.current = sample;
|
|
292
|
-
if (
|
|
332
|
+
if (engaged) {
|
|
293
333
|
void onTap(pageX, pageY);
|
|
294
334
|
return;
|
|
295
335
|
}
|
|
296
336
|
scheduleSelection(pageX, pageY);
|
|
297
|
-
}, [
|
|
337
|
+
}, [hideOrShowChrome, onTap, scheduleSelection, selected, selection]);
|
|
298
338
|
const deselect = React.useCallback(() => {
|
|
299
339
|
setCandidates([]);
|
|
300
340
|
setIndex(0);
|
|
341
|
+
setSelection('idle');
|
|
301
342
|
setStatus(null);
|
|
302
343
|
setChromeVisible(true);
|
|
303
344
|
}, []);
|
|
304
345
|
const confirm = React.useCallback(async () => {
|
|
305
346
|
if (!selected) return;
|
|
347
|
+
if (selection === 'error-unresolvable' || selection === 'error-no-element') return;
|
|
306
348
|
const requestId = _elementPickerController.elementPickerController.getState().requestId;
|
|
307
349
|
if (!requestId) return;
|
|
308
350
|
setBusy(true);
|
|
309
351
|
setStatus(null);
|
|
310
352
|
try {
|
|
311
|
-
const
|
|
312
|
-
if (
|
|
313
|
-
|
|
353
|
+
const assessed = (0, _fingerprintFromInstance.assessPickerTarget)(selected.target);
|
|
354
|
+
if (assessed.kind === 'error') {
|
|
355
|
+
setSelection('error-unresolvable');
|
|
314
356
|
return;
|
|
315
357
|
}
|
|
316
358
|
setHidingForCapture(true);
|
|
317
359
|
await waitForCapturePaint();
|
|
318
360
|
const screenshot = await (0, _capturePickerScreenshot.capturePickerScreenshot)(selected.rect);
|
|
319
361
|
const delivered = await _elementPickerController.elementPickerController.commit({
|
|
320
|
-
|
|
321
|
-
autoData:
|
|
322
|
-
text: selected.
|
|
362
|
+
target: selected.target,
|
|
363
|
+
autoData: assessed.autoData,
|
|
364
|
+
text: targetText(selected.target),
|
|
323
365
|
rect: selected.rect,
|
|
324
366
|
...(screenshot ? {
|
|
325
367
|
screenshot
|
|
326
368
|
} : {})
|
|
327
369
|
}, requestId);
|
|
328
|
-
if (
|
|
370
|
+
if (delivered && !_elementPickerController.elementPickerController.getState().active) {
|
|
371
|
+
setReturnNudge(true);
|
|
372
|
+
} else if (!delivered && _elementPickerController.elementPickerController.getState().requestId === requestId) {
|
|
329
373
|
setHidingForCapture(false);
|
|
330
374
|
setStatus("Couldn't send to Builder");
|
|
331
375
|
}
|
|
@@ -335,16 +379,39 @@ function ElementPickerOverlay() {
|
|
|
335
379
|
} finally {
|
|
336
380
|
setBusy(false);
|
|
337
381
|
}
|
|
338
|
-
}, [selected]);
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
382
|
+
}, [selected, selection]);
|
|
383
|
+
const dismissReturnNudge = () => {
|
|
384
|
+
setReturnNudge(false);
|
|
385
|
+
};
|
|
386
|
+
if (!state.active && !chromeBarsMounted && !returnNudge) return null;
|
|
387
|
+
const isError = selection === 'error-no-element' || selection === 'error-unresolvable';
|
|
388
|
+
const toneIcon = isError ? {
|
|
389
|
+
name: 'triangle-exclamation',
|
|
390
|
+
tintColor: _tokens.chromeColors.dangerAccent
|
|
391
|
+
} : selection === 'warning' ? {
|
|
392
|
+
name: 'circle-exclamation',
|
|
393
|
+
tintColor: _tokens.chromeColors.warningAccent
|
|
394
|
+
} : undefined;
|
|
395
|
+
const barLabel = isError ? ERROR_LABEL : phase === 'selected' || selection === 'warning' ? 'Confirm selected element' : phase === 'selecting' ? 'Tap an element to select it' : 'Navigate screens';
|
|
396
|
+
const helperText = status ?? (isError ? ERROR_HELPER : selection === 'warning' ? WARNING_HELPER : phase === 'selected' ? CONFIRM_HELPER : undefined);
|
|
397
|
+
const helperIcon = status ? undefined : toneIcon;
|
|
342
398
|
const tooltipVisible = state.active && showOnboarding && chromeVisible && phase === 'selecting';
|
|
343
399
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
344
400
|
pointerEvents: "box-none",
|
|
345
401
|
style: styles.root,
|
|
346
402
|
testID: "userflow-element-picker",
|
|
347
|
-
children: [state.active
|
|
403
|
+
children: [returnNudge && !state.active ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeDialog.ChromeDialog, {
|
|
404
|
+
body: RETURN_NUDGE_BODY,
|
|
405
|
+
onClose: dismissReturnNudge,
|
|
406
|
+
title: RETURN_NUDGE_TITLE,
|
|
407
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeButton.ChromeButton, {
|
|
408
|
+
accessibilityLabel: "Okay",
|
|
409
|
+
flex: true,
|
|
410
|
+
label: "Okay",
|
|
411
|
+
onPress: dismissReturnNudge,
|
|
412
|
+
testID: "userflow-element-picker-return-okay"
|
|
413
|
+
})
|
|
414
|
+
}) : null, state.active && (phase === 'selecting' || phase === 'blocked') ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
348
415
|
pointerEvents: "none",
|
|
349
416
|
style: styles.dim,
|
|
350
417
|
testID: "userflow-element-picker-dim"
|
|
@@ -387,7 +454,11 @@ function ElementPickerOverlay() {
|
|
|
387
454
|
visible: chromeBarsVisible,
|
|
388
455
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeTopBar.ChromeTopBar, {
|
|
389
456
|
label: barLabel,
|
|
390
|
-
onMeasureHeight: onMeasureHeight
|
|
457
|
+
onMeasureHeight: onMeasureHeight,
|
|
458
|
+
tone: isError ? 'error' : 'default',
|
|
459
|
+
...(toneIcon ? {
|
|
460
|
+
icon: toneIcon
|
|
461
|
+
} : {})
|
|
391
462
|
})
|
|
392
463
|
}) : null, tooltipVisible ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
393
464
|
pointerEvents: "none",
|
|
@@ -397,6 +468,7 @@ function ElementPickerOverlay() {
|
|
|
397
468
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeTooltip.ChromeTooltip, {
|
|
398
469
|
onDismiss: () => {
|
|
399
470
|
setShowOnboarding(false);
|
|
471
|
+
setChromeVisible(false);
|
|
400
472
|
},
|
|
401
473
|
children: ONBOARDING_COPY
|
|
402
474
|
})
|
|
@@ -408,7 +480,11 @@ function ElementPickerOverlay() {
|
|
|
408
480
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeBottomSheet.ChromeBottomSheet, {
|
|
409
481
|
helperText: helperText,
|
|
410
482
|
onMeasureHeight: onMeasureSheetHeight,
|
|
411
|
-
|
|
483
|
+
tone: isError ? 'error' : 'default',
|
|
484
|
+
...(helperIcon ? {
|
|
485
|
+
helperIcon
|
|
486
|
+
} : {}),
|
|
487
|
+
children: phase === 'selected' || phase === 'blocked' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
412
488
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeButton.ChromeButton, {
|
|
413
489
|
accessibilityLabel: "Deselect",
|
|
414
490
|
label: "Deselect",
|
|
@@ -417,7 +493,7 @@ function ElementPickerOverlay() {
|
|
|
417
493
|
variant: "secondary"
|
|
418
494
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChromeButton.ChromeButton, {
|
|
419
495
|
accessibilityLabel: "Confirm element",
|
|
420
|
-
disabled: busy,
|
|
496
|
+
disabled: busy || isError,
|
|
421
497
|
label: "Confirm element",
|
|
422
498
|
onPress: () => {
|
|
423
499
|
void confirm();
|