@userflow-tech/react-native 0.1.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/LICENSE +76 -0
- package/README.md +337 -0
- package/docs/anchoring.md +264 -0
- package/docs/deep-linking.md +271 -0
- package/docs/identity-verification.md +95 -0
- package/docs/theme-mapping.md +101 -0
- package/docs/troubleshooting.md +107 -0
- package/lib/commonjs/anchors/AnchorRegistry.js +72 -0
- package/lib/commonjs/anchors/AnchorRegistry.js.map +1 -0
- package/lib/commonjs/anchors/AutoAnchorRegistry.js +315 -0
- package/lib/commonjs/anchors/AutoAnchorRegistry.js.map +1 -0
- package/lib/commonjs/anchors/ScrollContainerRegistry.js +93 -0
- package/lib/commonjs/anchors/ScrollContainerRegistry.js.map +1 -0
- package/lib/commonjs/anchors/anchorChangeTicker.js +83 -0
- package/lib/commonjs/anchors/anchorChangeTicker.js.map +1 -0
- package/lib/commonjs/anchors/animationFrame.js +90 -0
- package/lib/commonjs/anchors/animationFrame.js.map +1 -0
- package/lib/commonjs/anchors/autoAnchor.js +253 -0
- package/lib/commonjs/anchors/autoAnchor.js.map +1 -0
- package/lib/commonjs/anchors/elementConditionEvaluator.js +82 -0
- package/lib/commonjs/anchors/elementConditionEvaluator.js.map +1 -0
- package/lib/commonjs/anchors/fiber/FiberScanRoot.js +90 -0
- package/lib/commonjs/anchors/fiber/FiberScanRoot.js.map +1 -0
- package/lib/commonjs/anchors/fiber/fiberInternals.js +180 -0
- package/lib/commonjs/anchors/fiber/fiberInternals.js.map +1 -0
- package/lib/commonjs/anchors/fiber/findAnchorFiber.js +214 -0
- package/lib/commonjs/anchors/fiber/findAnchorFiber.js.map +1 -0
- package/lib/commonjs/anchors/fiber/findScrollAncestors.js +176 -0
- package/lib/commonjs/anchors/fiber/findScrollAncestors.js.map +1 -0
- package/lib/commonjs/anchors/fiber/measureHostFiber.js +75 -0
- package/lib/commonjs/anchors/fiber/measureHostFiber.js.map +1 -0
- package/lib/commonjs/anchors/fiber/visibleScreens.js +165 -0
- package/lib/commonjs/anchors/fiber/visibleScreens.js.map +1 -0
- package/lib/commonjs/anchors/hintsCodec.js +120 -0
- package/lib/commonjs/anchors/hintsCodec.js.map +1 -0
- package/lib/commonjs/anchors/resolveAnchorHost.js +112 -0
- package/lib/commonjs/anchors/resolveAnchorHost.js.map +1 -0
- package/lib/commonjs/anchors/resolveManualAnchorId.js +17 -0
- package/lib/commonjs/anchors/resolveManualAnchorId.js.map +1 -0
- package/lib/commonjs/anchors/scrollAnchorIntoView.js +227 -0
- package/lib/commonjs/anchors/scrollAnchorIntoView.js.map +1 -0
- package/lib/commonjs/anchors/scrollConfig.js +48 -0
- package/lib/commonjs/anchors/scrollConfig.js.map +1 -0
- package/lib/commonjs/anchors/targetPressMonitor.js +113 -0
- package/lib/commonjs/anchors/targetPressMonitor.js.map +1 -0
- package/lib/commonjs/anchors/useUserflowAnchor.js +91 -0
- package/lib/commonjs/anchors/useUserflowAnchor.js.map +1 -0
- package/lib/commonjs/anchors/useUserflowScrollContainer.js +76 -0
- package/lib/commonjs/anchors/useUserflowScrollContainer.js.map +1 -0
- package/lib/commonjs/anonymousId.js +42 -0
- package/lib/commonjs/anonymousId.js.map +1 -0
- package/lib/commonjs/content/RichContentRenderer.js +675 -0
- package/lib/commonjs/content/RichContentRenderer.js.map +1 -0
- package/lib/commonjs/content/StepButton.js +57 -0
- package/lib/commonjs/content/StepButton.js.map +1 -0
- package/lib/commonjs/content/buttonAppearance.js +18 -0
- package/lib/commonjs/content/buttonAppearance.js.map +1 -0
- package/lib/commonjs/content/deserialize.js +129 -0
- package/lib/commonjs/content/deserialize.js.map +1 -0
- package/lib/commonjs/content/imageLayout.js +24 -0
- package/lib/commonjs/content/imageLayout.js.map +1 -0
- package/lib/commonjs/content/migrateFlowBlocks.js +39 -0
- package/lib/commonjs/content/migrateFlowBlocks.js.map +1 -0
- package/lib/commonjs/content/openSafeUrl.js +37 -0
- package/lib/commonjs/content/openSafeUrl.js.map +1 -0
- package/lib/commonjs/content/resolveStepButtonChrome.js +95 -0
- package/lib/commonjs/content/resolveStepButtonChrome.js.map +1 -0
- package/lib/commonjs/content/themeColor.js +106 -0
- package/lib/commonjs/content/themeColor.js.map +1 -0
- package/lib/commonjs/content/types.js +2 -0
- package/lib/commonjs/content/types.js.map +1 -0
- package/lib/commonjs/deepLinking.js +162 -0
- package/lib/commonjs/deepLinking.js.map +1 -0
- package/lib/commonjs/expo-router/UserflowExpoRouterScreenTracker.js +13 -0
- package/lib/commonjs/expo-router/UserflowExpoRouterScreenTracker.js.map +1 -0
- package/lib/commonjs/expo-router/getExpoRouterScreenTracker.js +44 -0
- package/lib/commonjs/expo-router/getExpoRouterScreenTracker.js.map +1 -0
- package/lib/commonjs/expo-router/index.js +20 -0
- package/lib/commonjs/expo-router/index.js.map +1 -0
- package/lib/commonjs/expo-router/useUserflowExpoRouter.js +45 -0
- package/lib/commonjs/expo-router/useUserflowExpoRouter.js.map +1 -0
- package/lib/commonjs/index.js +356 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/lifecycle.js +200 -0
- package/lib/commonjs/lifecycle.js.map +1 -0
- package/lib/commonjs/navigation/WithUserflowReactNavigation.js +69 -0
- package/lib/commonjs/navigation/WithUserflowReactNavigation.js.map +1 -0
- package/lib/commonjs/navigation/chainCallbacks.js +16 -0
- package/lib/commonjs/navigation/chainCallbacks.js.map +1 -0
- package/lib/commonjs/navigation/getActiveRouteName.js +18 -0
- package/lib/commonjs/navigation/getActiveRouteName.js.map +1 -0
- package/lib/commonjs/navigation/index.js +50 -0
- package/lib/commonjs/navigation/index.js.map +1 -0
- package/lib/commonjs/navigation/openFlowNavigateUrl.js +110 -0
- package/lib/commonjs/navigation/openFlowNavigateUrl.js.map +1 -0
- package/lib/commonjs/network.js +90 -0
- package/lib/commonjs/network.js.map +1 -0
- package/lib/commonjs/pairing/PairingController.js +290 -0
- package/lib/commonjs/pairing/PairingController.js.map +1 -0
- package/lib/commonjs/pairing/PreviewModeBanner.js +118 -0
- package/lib/commonjs/pairing/PreviewModeBanner.js.map +1 -0
- package/lib/commonjs/pairing/deepLink.js +141 -0
- package/lib/commonjs/pairing/deepLink.js.map +1 -0
- package/lib/commonjs/pairing/diagnostics.js +115 -0
- package/lib/commonjs/pairing/diagnostics.js.map +1 -0
- package/lib/commonjs/pairing/index.js +58 -0
- package/lib/commonjs/pairing/index.js.map +1 -0
- package/lib/commonjs/pairing/pairingRuntime.js +85 -0
- package/lib/commonjs/pairing/pairingRuntime.js.map +1 -0
- package/lib/commonjs/pairing/tokenStorage.js +70 -0
- package/lib/commonjs/pairing/tokenStorage.js.map +1 -0
- package/lib/commonjs/pairing/usePairingState.js +40 -0
- package/lib/commonjs/pairing/usePairingState.js.map +1 -0
- package/lib/commonjs/runtime/FlowRenderer.js +57 -0
- package/lib/commonjs/runtime/FlowRenderer.js.map +1 -0
- package/lib/commonjs/runtime/FlowSurfaceFade.js +53 -0
- package/lib/commonjs/runtime/FlowSurfaceFade.js.map +1 -0
- package/lib/commonjs/runtime/TargetPressBridge.js +96 -0
- package/lib/commonjs/runtime/TargetPressBridge.js.map +1 -0
- package/lib/commonjs/runtime/UserflowProvider.js +91 -0
- package/lib/commonjs/runtime/UserflowProvider.js.map +1 -0
- package/lib/commonjs/runtime/clientConditions.js +50 -0
- package/lib/commonjs/runtime/clientConditions.js.map +1 -0
- package/lib/commonjs/runtime/flowEngine.js +63 -0
- package/lib/commonjs/runtime/flowEngine.js.map +1 -0
- package/lib/commonjs/runtime/flowSessionViewState.js +48 -0
- package/lib/commonjs/runtime/flowSessionViewState.js.map +1 -0
- package/lib/commonjs/runtime/useFlowSessionState.js +25 -0
- package/lib/commonjs/runtime/useFlowSessionState.js.map +1 -0
- package/lib/commonjs/runtime/userflowCore.js +13 -0
- package/lib/commonjs/runtime/userflowCore.js.map +1 -0
- package/lib/commonjs/screenTracker.js +87 -0
- package/lib/commonjs/screenTracker.js.map +1 -0
- package/lib/commonjs/surfaces/CloseButton.js +52 -0
- package/lib/commonjs/surfaces/CloseButton.js.map +1 -0
- package/lib/commonjs/surfaces/MadeWithUserflow.js +90 -0
- package/lib/commonjs/surfaces/MadeWithUserflow.js.map +1 -0
- package/lib/commonjs/surfaces/ModalSurface.js +170 -0
- package/lib/commonjs/surfaces/ModalSurface.js.map +1 -0
- package/lib/commonjs/surfaces/ProgressBar.js +116 -0
- package/lib/commonjs/surfaces/ProgressBar.js.map +1 -0
- package/lib/commonjs/surfaces/TooltipSurface.js +638 -0
- package/lib/commonjs/surfaces/TooltipSurface.js.map +1 -0
- package/lib/commonjs/surfaces/absoluteFill.js +29 -0
- package/lib/commonjs/surfaces/absoluteFill.js.map +1 -0
- package/lib/commonjs/surfaces/assets/png.d.js +2 -0
- package/lib/commonjs/surfaces/assets/png.d.js.map +1 -0
- package/lib/commonjs/surfaces/assets/userflow-logomark.png +0 -0
- package/lib/commonjs/surfaces/parseBackdropOpacity.js +20 -0
- package/lib/commonjs/surfaces/parseBackdropOpacity.js.map +1 -0
- package/lib/commonjs/surfaces/progress.js +35 -0
- package/lib/commonjs/surfaces/progress.js.map +1 -0
- package/lib/commonjs/surfaces/resolveCloseButtonColor.js +24 -0
- package/lib/commonjs/surfaces/resolveCloseButtonColor.js.map +1 -0
- package/lib/commonjs/surfaces/resolveModalLayout.js +67 -0
- package/lib/commonjs/surfaces/resolveModalLayout.js.map +1 -0
- package/lib/commonjs/surfaces/resolveTooltipLayout.js +64 -0
- package/lib/commonjs/surfaces/resolveTooltipLayout.js.map +1 -0
- package/lib/commonjs/surfaces/safeArea.js +46 -0
- package/lib/commonjs/surfaces/safeArea.js.map +1 -0
- package/lib/commonjs/surfaces/themeChrome.js +90 -0
- package/lib/commonjs/surfaces/themeChrome.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/TooltipBubble.js +108 -0
- package/lib/commonjs/surfaces/tooltip/TooltipBubble.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/TooltipCutout.js +103 -0
- package/lib/commonjs/surfaces/tooltip/TooltipCutout.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/TooltipNotch.js +64 -0
- package/lib/commonjs/surfaces/tooltip/TooltipNotch.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/computeTooltipPosition.js +102 -0
- package/lib/commonjs/surfaces/tooltip/computeTooltipPosition.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/inferTooltipPlacement.js +100 -0
- package/lib/commonjs/surfaces/tooltip/inferTooltipPlacement.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/parseBackdropPadding.js +15 -0
- package/lib/commonjs/surfaces/tooltip/parseBackdropPadding.js.map +1 -0
- package/lib/commonjs/surfaces/tooltip/rect.js +51 -0
- package/lib/commonjs/surfaces/tooltip/rect.js.map +1 -0
- package/lib/commonjs/useUserflowScreen.js +24 -0
- package/lib/commonjs/useUserflowScreen.js.map +1 -0
- package/lib/commonjs/version.js +9 -0
- package/lib/commonjs/version.js.map +1 -0
- package/lib/module/anchors/AnchorRegistry.js +67 -0
- package/lib/module/anchors/AnchorRegistry.js.map +1 -0
- package/lib/module/anchors/AutoAnchorRegistry.js +309 -0
- package/lib/module/anchors/AutoAnchorRegistry.js.map +1 -0
- package/lib/module/anchors/ScrollContainerRegistry.js +86 -0
- package/lib/module/anchors/ScrollContainerRegistry.js.map +1 -0
- package/lib/module/anchors/anchorChangeTicker.js +79 -0
- package/lib/module/anchors/anchorChangeTicker.js.map +1 -0
- package/lib/module/anchors/animationFrame.js +83 -0
- package/lib/module/anchors/animationFrame.js.map +1 -0
- package/lib/module/anchors/autoAnchor.js +248 -0
- package/lib/module/anchors/autoAnchor.js.map +1 -0
- package/lib/module/anchors/elementConditionEvaluator.js +79 -0
- package/lib/module/anchors/elementConditionEvaluator.js.map +1 -0
- package/lib/module/anchors/fiber/FiberScanRoot.js +84 -0
- package/lib/module/anchors/fiber/FiberScanRoot.js.map +1 -0
- package/lib/module/anchors/fiber/fiberInternals.js +164 -0
- package/lib/module/anchors/fiber/fiberInternals.js.map +1 -0
- package/lib/module/anchors/fiber/findAnchorFiber.js +210 -0
- package/lib/module/anchors/fiber/findAnchorFiber.js.map +1 -0
- package/lib/module/anchors/fiber/findScrollAncestors.js +172 -0
- package/lib/module/anchors/fiber/findScrollAncestors.js.map +1 -0
- package/lib/module/anchors/fiber/measureHostFiber.js +70 -0
- package/lib/module/anchors/fiber/measureHostFiber.js.map +1 -0
- package/lib/module/anchors/fiber/visibleScreens.js +159 -0
- package/lib/module/anchors/fiber/visibleScreens.js.map +1 -0
- package/lib/module/anchors/hintsCodec.js +111 -0
- package/lib/module/anchors/hintsCodec.js.map +1 -0
- package/lib/module/anchors/resolveAnchorHost.js +105 -0
- package/lib/module/anchors/resolveAnchorHost.js.map +1 -0
- package/lib/module/anchors/resolveManualAnchorId.js +13 -0
- package/lib/module/anchors/resolveManualAnchorId.js.map +1 -0
- package/lib/module/anchors/scrollAnchorIntoView.js +222 -0
- package/lib/module/anchors/scrollAnchorIntoView.js.map +1 -0
- package/lib/module/anchors/scrollConfig.js +40 -0
- package/lib/module/anchors/scrollConfig.js.map +1 -0
- package/lib/module/anchors/targetPressMonitor.js +105 -0
- package/lib/module/anchors/targetPressMonitor.js.map +1 -0
- package/lib/module/anchors/useUserflowAnchor.js +87 -0
- package/lib/module/anchors/useUserflowAnchor.js.map +1 -0
- package/lib/module/anchors/useUserflowScrollContainer.js +71 -0
- package/lib/module/anchors/useUserflowScrollContainer.js.map +1 -0
- package/lib/module/anonymousId.js +36 -0
- package/lib/module/anonymousId.js.map +1 -0
- package/lib/module/content/RichContentRenderer.js +670 -0
- package/lib/module/content/RichContentRenderer.js.map +1 -0
- package/lib/module/content/StepButton.js +52 -0
- package/lib/module/content/StepButton.js.map +1 -0
- package/lib/module/content/buttonAppearance.js +14 -0
- package/lib/module/content/buttonAppearance.js.map +1 -0
- package/lib/module/content/deserialize.js +116 -0
- package/lib/module/content/deserialize.js.map +1 -0
- package/lib/module/content/imageLayout.js +20 -0
- package/lib/module/content/imageLayout.js.map +1 -0
- package/lib/module/content/migrateFlowBlocks.js +35 -0
- package/lib/module/content/migrateFlowBlocks.js.map +1 -0
- package/lib/module/content/openSafeUrl.js +32 -0
- package/lib/module/content/openSafeUrl.js.map +1 -0
- package/lib/module/content/resolveStepButtonChrome.js +90 -0
- package/lib/module/content/resolveStepButtonChrome.js.map +1 -0
- package/lib/module/content/themeColor.js +99 -0
- package/lib/module/content/themeColor.js.map +1 -0
- package/lib/module/content/types.js +2 -0
- package/lib/module/content/types.js.map +1 -0
- package/lib/module/deepLinking.js +152 -0
- package/lib/module/deepLinking.js.map +1 -0
- package/lib/module/expo-router/UserflowExpoRouterScreenTracker.js +10 -0
- package/lib/module/expo-router/UserflowExpoRouterScreenTracker.js.map +1 -0
- package/lib/module/expo-router/getExpoRouterScreenTracker.js +39 -0
- package/lib/module/expo-router/getExpoRouterScreenTracker.js.map +1 -0
- package/lib/module/expo-router/index.js +5 -0
- package/lib/module/expo-router/index.js.map +1 -0
- package/lib/module/expo-router/useUserflowExpoRouter.js +42 -0
- package/lib/module/expo-router/useUserflowExpoRouter.js.map +1 -0
- package/lib/module/index.js +259 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/lifecycle.js +195 -0
- package/lib/module/lifecycle.js.map +1 -0
- package/lib/module/navigation/WithUserflowReactNavigation.js +65 -0
- package/lib/module/navigation/WithUserflowReactNavigation.js.map +1 -0
- package/lib/module/navigation/chainCallbacks.js +12 -0
- package/lib/module/navigation/chainCallbacks.js.map +1 -0
- package/lib/module/navigation/getActiveRouteName.js +14 -0
- package/lib/module/navigation/getActiveRouteName.js.map +1 -0
- package/lib/module/navigation/index.js +5 -0
- package/lib/module/navigation/index.js.map +1 -0
- package/lib/module/navigation/openFlowNavigateUrl.js +100 -0
- package/lib/module/navigation/openFlowNavigateUrl.js.map +1 -0
- package/lib/module/network.js +85 -0
- package/lib/module/network.js.map +1 -0
- package/lib/module/pairing/PairingController.js +286 -0
- package/lib/module/pairing/PairingController.js.map +1 -0
- package/lib/module/pairing/PreviewModeBanner.js +113 -0
- package/lib/module/pairing/PreviewModeBanner.js.map +1 -0
- package/lib/module/pairing/deepLink.js +134 -0
- package/lib/module/pairing/deepLink.js.map +1 -0
- package/lib/module/pairing/diagnostics.js +101 -0
- package/lib/module/pairing/diagnostics.js.map +1 -0
- package/lib/module/pairing/index.js +7 -0
- package/lib/module/pairing/index.js.map +1 -0
- package/lib/module/pairing/pairingRuntime.js +77 -0
- package/lib/module/pairing/pairingRuntime.js.map +1 -0
- package/lib/module/pairing/tokenStorage.js +65 -0
- package/lib/module/pairing/tokenStorage.js.map +1 -0
- package/lib/module/pairing/usePairingState.js +35 -0
- package/lib/module/pairing/usePairingState.js.map +1 -0
- package/lib/module/runtime/FlowRenderer.js +52 -0
- package/lib/module/runtime/FlowRenderer.js.map +1 -0
- package/lib/module/runtime/FlowSurfaceFade.js +48 -0
- package/lib/module/runtime/FlowSurfaceFade.js.map +1 -0
- package/lib/module/runtime/TargetPressBridge.js +91 -0
- package/lib/module/runtime/TargetPressBridge.js.map +1 -0
- package/lib/module/runtime/UserflowProvider.js +85 -0
- package/lib/module/runtime/UserflowProvider.js.map +1 -0
- package/lib/module/runtime/clientConditions.js +43 -0
- package/lib/module/runtime/clientConditions.js.map +1 -0
- package/lib/module/runtime/flowEngine.js +54 -0
- package/lib/module/runtime/flowEngine.js.map +1 -0
- package/lib/module/runtime/flowSessionViewState.js +42 -0
- package/lib/module/runtime/flowSessionViewState.js.map +1 -0
- package/lib/module/runtime/useFlowSessionState.js +21 -0
- package/lib/module/runtime/useFlowSessionState.js.map +1 -0
- package/lib/module/runtime/userflowCore.js +10 -0
- package/lib/module/runtime/userflowCore.js.map +1 -0
- package/lib/module/screenTracker.js +79 -0
- package/lib/module/screenTracker.js.map +1 -0
- package/lib/module/surfaces/CloseButton.js +47 -0
- package/lib/module/surfaces/CloseButton.js.map +1 -0
- package/lib/module/surfaces/MadeWithUserflow.js +83 -0
- package/lib/module/surfaces/MadeWithUserflow.js.map +1 -0
- package/lib/module/surfaces/ModalSurface.js +165 -0
- package/lib/module/surfaces/ModalSurface.js.map +1 -0
- package/lib/module/surfaces/ProgressBar.js +111 -0
- package/lib/module/surfaces/ProgressBar.js.map +1 -0
- package/lib/module/surfaces/TooltipSurface.js +633 -0
- package/lib/module/surfaces/TooltipSurface.js.map +1 -0
- package/lib/module/surfaces/absoluteFill.js +25 -0
- package/lib/module/surfaces/absoluteFill.js.map +1 -0
- package/lib/module/surfaces/assets/png.d.js +2 -0
- package/lib/module/surfaces/assets/png.d.js.map +1 -0
- package/lib/module/surfaces/assets/userflow-logomark.png +0 -0
- package/lib/module/surfaces/parseBackdropOpacity.js +16 -0
- package/lib/module/surfaces/parseBackdropOpacity.js.map +1 -0
- package/lib/module/surfaces/progress.js +31 -0
- package/lib/module/surfaces/progress.js.map +1 -0
- package/lib/module/surfaces/resolveCloseButtonColor.js +20 -0
- package/lib/module/surfaces/resolveCloseButtonColor.js.map +1 -0
- package/lib/module/surfaces/resolveModalLayout.js +59 -0
- package/lib/module/surfaces/resolveModalLayout.js.map +1 -0
- package/lib/module/surfaces/resolveTooltipLayout.js +57 -0
- package/lib/module/surfaces/resolveTooltipLayout.js.map +1 -0
- package/lib/module/surfaces/safeArea.js +41 -0
- package/lib/module/surfaces/safeArea.js.map +1 -0
- package/lib/module/surfaces/themeChrome.js +86 -0
- package/lib/module/surfaces/themeChrome.js.map +1 -0
- package/lib/module/surfaces/tooltip/TooltipBubble.js +103 -0
- package/lib/module/surfaces/tooltip/TooltipBubble.js.map +1 -0
- package/lib/module/surfaces/tooltip/TooltipCutout.js +98 -0
- package/lib/module/surfaces/tooltip/TooltipCutout.js.map +1 -0
- package/lib/module/surfaces/tooltip/TooltipNotch.js +55 -0
- package/lib/module/surfaces/tooltip/TooltipNotch.js.map +1 -0
- package/lib/module/surfaces/tooltip/computeTooltipPosition.js +97 -0
- package/lib/module/surfaces/tooltip/computeTooltipPosition.js.map +1 -0
- package/lib/module/surfaces/tooltip/inferTooltipPlacement.js +95 -0
- package/lib/module/surfaces/tooltip/inferTooltipPlacement.js.map +1 -0
- package/lib/module/surfaces/tooltip/parseBackdropPadding.js +11 -0
- package/lib/module/surfaces/tooltip/parseBackdropPadding.js.map +1 -0
- package/lib/module/surfaces/tooltip/rect.js +44 -0
- package/lib/module/surfaces/tooltip/rect.js.map +1 -0
- package/lib/module/useUserflowScreen.js +21 -0
- package/lib/module/useUserflowScreen.js.map +1 -0
- package/lib/module/version.js +5 -0
- package/lib/module/version.js.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/anchors/AnchorRegistry.d.ts +32 -0
- package/lib/typescript/commonjs/src/anchors/AnchorRegistry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts +113 -0
- package/lib/typescript/commonjs/src/anchors/AutoAnchorRegistry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/ScrollContainerRegistry.d.ts +46 -0
- package/lib/typescript/commonjs/src/anchors/ScrollContainerRegistry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/anchorChangeTicker.d.ts +30 -0
- package/lib/typescript/commonjs/src/anchors/anchorChangeTicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/animationFrame.d.ts +21 -0
- package/lib/typescript/commonjs/src/anchors/animationFrame.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/autoAnchor.d.ts +31 -0
- package/lib/typescript/commonjs/src/anchors/autoAnchor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/elementConditionEvaluator.d.ts +21 -0
- package/lib/typescript/commonjs/src/anchors/elementConditionEvaluator.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/FiberScanRoot.d.ts +41 -0
- package/lib/typescript/commonjs/src/anchors/fiber/FiberScanRoot.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/fiberInternals.d.ts +48 -0
- package/lib/typescript/commonjs/src/anchors/fiber/fiberInternals.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/findAnchorFiber.d.ts +33 -0
- package/lib/typescript/commonjs/src/anchors/fiber/findAnchorFiber.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/findScrollAncestors.d.ts +47 -0
- package/lib/typescript/commonjs/src/anchors/fiber/findScrollAncestors.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/measureHostFiber.d.ts +20 -0
- package/lib/typescript/commonjs/src/anchors/fiber/measureHostFiber.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/fiber/visibleScreens.d.ts +42 -0
- package/lib/typescript/commonjs/src/anchors/fiber/visibleScreens.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/hintsCodec.d.ts +40 -0
- package/lib/typescript/commonjs/src/anchors/hintsCodec.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts +32 -0
- package/lib/typescript/commonjs/src/anchors/resolveAnchorHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/resolveManualAnchorId.d.ts +6 -0
- package/lib/typescript/commonjs/src/anchors/resolveManualAnchorId.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/scrollAnchorIntoView.d.ts +59 -0
- package/lib/typescript/commonjs/src/anchors/scrollAnchorIntoView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/scrollConfig.d.ts +30 -0
- package/lib/typescript/commonjs/src/anchors/scrollConfig.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts +64 -0
- package/lib/typescript/commonjs/src/anchors/targetPressMonitor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/useUserflowAnchor.d.ts +30 -0
- package/lib/typescript/commonjs/src/anchors/useUserflowAnchor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anchors/useUserflowScrollContainer.d.ts +34 -0
- package/lib/typescript/commonjs/src/anchors/useUserflowScrollContainer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/anonymousId.d.ts +5 -0
- package/lib/typescript/commonjs/src/anonymousId.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/RichContentRenderer.d.ts +21 -0
- package/lib/typescript/commonjs/src/content/RichContentRenderer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/StepButton.d.ts +13 -0
- package/lib/typescript/commonjs/src/content/StepButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/buttonAppearance.d.ts +8 -0
- package/lib/typescript/commonjs/src/content/buttonAppearance.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/deserialize.d.ts +27 -0
- package/lib/typescript/commonjs/src/content/deserialize.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/imageLayout.d.ts +13 -0
- package/lib/typescript/commonjs/src/content/imageLayout.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/migrateFlowBlocks.d.ts +12 -0
- package/lib/typescript/commonjs/src/content/migrateFlowBlocks.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/openSafeUrl.d.ts +12 -0
- package/lib/typescript/commonjs/src/content/openSafeUrl.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/resolveStepButtonChrome.d.ts +24 -0
- package/lib/typescript/commonjs/src/content/resolveStepButtonChrome.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/themeColor.d.ts +43 -0
- package/lib/typescript/commonjs/src/content/themeColor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/content/types.d.ts +144 -0
- package/lib/typescript/commonjs/src/content/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/deepLinking.d.ts +54 -0
- package/lib/typescript/commonjs/src/deepLinking.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/UserflowExpoRouterScreenTracker.d.ts +3 -0
- package/lib/typescript/commonjs/src/expo-router/UserflowExpoRouterScreenTracker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/getExpoRouterScreenTracker.d.ts +13 -0
- package/lib/typescript/commonjs/src/expo-router/getExpoRouterScreenTracker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/index.d.ts +3 -0
- package/lib/typescript/commonjs/src/expo-router/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/expo-router/useUserflowExpoRouter.d.ts +17 -0
- package/lib/typescript/commonjs/src/expo-router/useUserflowExpoRouter.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +112 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/lifecycle.d.ts +96 -0
- package/lib/typescript/commonjs/src/lifecycle.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/navigation/WithUserflowReactNavigation.d.ts +21 -0
- package/lib/typescript/commonjs/src/navigation/WithUserflowReactNavigation.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/navigation/chainCallbacks.d.ts +3 -0
- package/lib/typescript/commonjs/src/navigation/chainCallbacks.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/navigation/getActiveRouteName.d.ts +6 -0
- package/lib/typescript/commonjs/src/navigation/getActiveRouteName.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/navigation/index.d.ts +5 -0
- package/lib/typescript/commonjs/src/navigation/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/navigation/openFlowNavigateUrl.d.ts +33 -0
- package/lib/typescript/commonjs/src/navigation/openFlowNavigateUrl.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/network.d.ts +42 -0
- package/lib/typescript/commonjs/src/network.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/PairingController.d.ts +104 -0
- package/lib/typescript/commonjs/src/pairing/PairingController.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/PreviewModeBanner.d.ts +11 -0
- package/lib/typescript/commonjs/src/pairing/PreviewModeBanner.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/deepLink.d.ts +53 -0
- package/lib/typescript/commonjs/src/pairing/deepLink.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/diagnostics.d.ts +52 -0
- package/lib/typescript/commonjs/src/pairing/diagnostics.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/index.d.ts +10 -0
- package/lib/typescript/commonjs/src/pairing/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/pairingRuntime.d.ts +24 -0
- package/lib/typescript/commonjs/src/pairing/pairingRuntime.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/tokenStorage.d.ts +16 -0
- package/lib/typescript/commonjs/src/pairing/tokenStorage.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/pairing/usePairingState.d.ts +4 -0
- package/lib/typescript/commonjs/src/pairing/usePairingState.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/FlowRenderer.d.ts +13 -0
- package/lib/typescript/commonjs/src/runtime/FlowRenderer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/FlowSurfaceFade.d.ts +13 -0
- package/lib/typescript/commonjs/src/runtime/FlowSurfaceFade.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts +16 -0
- package/lib/typescript/commonjs/src/runtime/TargetPressBridge.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/UserflowProvider.d.ts +32 -0
- package/lib/typescript/commonjs/src/runtime/UserflowProvider.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/clientConditions.d.ts +10 -0
- package/lib/typescript/commonjs/src/runtime/clientConditions.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/flowEngine.d.ts +17 -0
- package/lib/typescript/commonjs/src/runtime/flowEngine.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/flowSessionViewState.d.ts +18 -0
- package/lib/typescript/commonjs/src/runtime/flowSessionViewState.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/useFlowSessionState.d.ts +10 -0
- package/lib/typescript/commonjs/src/runtime/useFlowSessionState.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/runtime/userflowCore.d.ts +3 -0
- package/lib/typescript/commonjs/src/runtime/userflowCore.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/screenTracker.d.ts +28 -0
- package/lib/typescript/commonjs/src/screenTracker.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/CloseButton.d.ts +8 -0
- package/lib/typescript/commonjs/src/surfaces/CloseButton.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/MadeWithUserflow.d.ts +28 -0
- package/lib/typescript/commonjs/src/surfaces/MadeWithUserflow.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/ModalSurface.d.ts +23 -0
- package/lib/typescript/commonjs/src/surfaces/ModalSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/ProgressBar.d.ts +19 -0
- package/lib/typescript/commonjs/src/surfaces/ProgressBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/TooltipSurface.d.ts +17 -0
- package/lib/typescript/commonjs/src/surfaces/TooltipSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/absoluteFill.d.ts +18 -0
- package/lib/typescript/commonjs/src/surfaces/absoluteFill.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/parseBackdropOpacity.d.ts +5 -0
- package/lib/typescript/commonjs/src/surfaces/parseBackdropOpacity.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/progress.d.ts +14 -0
- package/lib/typescript/commonjs/src/surfaces/progress.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/resolveCloseButtonColor.d.ts +9 -0
- package/lib/typescript/commonjs/src/surfaces/resolveCloseButtonColor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/resolveModalLayout.d.ts +36 -0
- package/lib/typescript/commonjs/src/surfaces/resolveModalLayout.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/resolveTooltipLayout.d.ts +24 -0
- package/lib/typescript/commonjs/src/surfaces/resolveTooltipLayout.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/safeArea.d.ts +11 -0
- package/lib/typescript/commonjs/src/surfaces/safeArea.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/themeChrome.d.ts +36 -0
- package/lib/typescript/commonjs/src/surfaces/themeChrome.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipBubble.d.ts +23 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipBubble.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipCutout.d.ts +31 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipCutout.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipNotch.d.ts +29 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/TooltipNotch.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/computeTooltipPosition.d.ts +43 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/computeTooltipPosition.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/inferTooltipPlacement.d.ts +34 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/inferTooltipPlacement.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/parseBackdropPadding.d.ts +3 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/parseBackdropPadding.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/rect.d.ts +29 -0
- package/lib/typescript/commonjs/src/surfaces/tooltip/rect.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/useUserflowScreen.d.ts +10 -0
- package/lib/typescript/commonjs/src/useUserflowScreen.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/version.d.ts +3 -0
- package/lib/typescript/commonjs/src/version.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/anchors/AnchorRegistry.d.ts +32 -0
- package/lib/typescript/module/src/anchors/AnchorRegistry.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts +113 -0
- package/lib/typescript/module/src/anchors/AutoAnchorRegistry.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/ScrollContainerRegistry.d.ts +46 -0
- package/lib/typescript/module/src/anchors/ScrollContainerRegistry.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/anchorChangeTicker.d.ts +30 -0
- package/lib/typescript/module/src/anchors/anchorChangeTicker.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/animationFrame.d.ts +21 -0
- package/lib/typescript/module/src/anchors/animationFrame.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/autoAnchor.d.ts +31 -0
- package/lib/typescript/module/src/anchors/autoAnchor.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/elementConditionEvaluator.d.ts +21 -0
- package/lib/typescript/module/src/anchors/elementConditionEvaluator.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/FiberScanRoot.d.ts +41 -0
- package/lib/typescript/module/src/anchors/fiber/FiberScanRoot.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/fiberInternals.d.ts +48 -0
- package/lib/typescript/module/src/anchors/fiber/fiberInternals.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/findAnchorFiber.d.ts +33 -0
- package/lib/typescript/module/src/anchors/fiber/findAnchorFiber.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/findScrollAncestors.d.ts +47 -0
- package/lib/typescript/module/src/anchors/fiber/findScrollAncestors.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/measureHostFiber.d.ts +20 -0
- package/lib/typescript/module/src/anchors/fiber/measureHostFiber.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/fiber/visibleScreens.d.ts +42 -0
- package/lib/typescript/module/src/anchors/fiber/visibleScreens.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/hintsCodec.d.ts +40 -0
- package/lib/typescript/module/src/anchors/hintsCodec.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts +32 -0
- package/lib/typescript/module/src/anchors/resolveAnchorHost.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/resolveManualAnchorId.d.ts +6 -0
- package/lib/typescript/module/src/anchors/resolveManualAnchorId.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/scrollAnchorIntoView.d.ts +59 -0
- package/lib/typescript/module/src/anchors/scrollAnchorIntoView.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/scrollConfig.d.ts +30 -0
- package/lib/typescript/module/src/anchors/scrollConfig.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts +64 -0
- package/lib/typescript/module/src/anchors/targetPressMonitor.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/useUserflowAnchor.d.ts +30 -0
- package/lib/typescript/module/src/anchors/useUserflowAnchor.d.ts.map +1 -0
- package/lib/typescript/module/src/anchors/useUserflowScrollContainer.d.ts +34 -0
- package/lib/typescript/module/src/anchors/useUserflowScrollContainer.d.ts.map +1 -0
- package/lib/typescript/module/src/anonymousId.d.ts +5 -0
- package/lib/typescript/module/src/anonymousId.d.ts.map +1 -0
- package/lib/typescript/module/src/content/RichContentRenderer.d.ts +21 -0
- package/lib/typescript/module/src/content/RichContentRenderer.d.ts.map +1 -0
- package/lib/typescript/module/src/content/StepButton.d.ts +13 -0
- package/lib/typescript/module/src/content/StepButton.d.ts.map +1 -0
- package/lib/typescript/module/src/content/buttonAppearance.d.ts +8 -0
- package/lib/typescript/module/src/content/buttonAppearance.d.ts.map +1 -0
- package/lib/typescript/module/src/content/deserialize.d.ts +27 -0
- package/lib/typescript/module/src/content/deserialize.d.ts.map +1 -0
- package/lib/typescript/module/src/content/imageLayout.d.ts +13 -0
- package/lib/typescript/module/src/content/imageLayout.d.ts.map +1 -0
- package/lib/typescript/module/src/content/migrateFlowBlocks.d.ts +12 -0
- package/lib/typescript/module/src/content/migrateFlowBlocks.d.ts.map +1 -0
- package/lib/typescript/module/src/content/openSafeUrl.d.ts +12 -0
- package/lib/typescript/module/src/content/openSafeUrl.d.ts.map +1 -0
- package/lib/typescript/module/src/content/resolveStepButtonChrome.d.ts +24 -0
- package/lib/typescript/module/src/content/resolveStepButtonChrome.d.ts.map +1 -0
- package/lib/typescript/module/src/content/themeColor.d.ts +43 -0
- package/lib/typescript/module/src/content/themeColor.d.ts.map +1 -0
- package/lib/typescript/module/src/content/types.d.ts +144 -0
- package/lib/typescript/module/src/content/types.d.ts.map +1 -0
- package/lib/typescript/module/src/deepLinking.d.ts +54 -0
- package/lib/typescript/module/src/deepLinking.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/UserflowExpoRouterScreenTracker.d.ts +3 -0
- package/lib/typescript/module/src/expo-router/UserflowExpoRouterScreenTracker.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/getExpoRouterScreenTracker.d.ts +13 -0
- package/lib/typescript/module/src/expo-router/getExpoRouterScreenTracker.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/index.d.ts +3 -0
- package/lib/typescript/module/src/expo-router/index.d.ts.map +1 -0
- package/lib/typescript/module/src/expo-router/useUserflowExpoRouter.d.ts +17 -0
- package/lib/typescript/module/src/expo-router/useUserflowExpoRouter.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +112 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/lib/typescript/module/src/lifecycle.d.ts +96 -0
- package/lib/typescript/module/src/lifecycle.d.ts.map +1 -0
- package/lib/typescript/module/src/navigation/WithUserflowReactNavigation.d.ts +21 -0
- package/lib/typescript/module/src/navigation/WithUserflowReactNavigation.d.ts.map +1 -0
- package/lib/typescript/module/src/navigation/chainCallbacks.d.ts +3 -0
- package/lib/typescript/module/src/navigation/chainCallbacks.d.ts.map +1 -0
- package/lib/typescript/module/src/navigation/getActiveRouteName.d.ts +6 -0
- package/lib/typescript/module/src/navigation/getActiveRouteName.d.ts.map +1 -0
- package/lib/typescript/module/src/navigation/index.d.ts +5 -0
- package/lib/typescript/module/src/navigation/index.d.ts.map +1 -0
- package/lib/typescript/module/src/navigation/openFlowNavigateUrl.d.ts +33 -0
- package/lib/typescript/module/src/navigation/openFlowNavigateUrl.d.ts.map +1 -0
- package/lib/typescript/module/src/network.d.ts +42 -0
- package/lib/typescript/module/src/network.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/PairingController.d.ts +104 -0
- package/lib/typescript/module/src/pairing/PairingController.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/PreviewModeBanner.d.ts +11 -0
- package/lib/typescript/module/src/pairing/PreviewModeBanner.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/deepLink.d.ts +53 -0
- package/lib/typescript/module/src/pairing/deepLink.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/diagnostics.d.ts +52 -0
- package/lib/typescript/module/src/pairing/diagnostics.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/index.d.ts +10 -0
- package/lib/typescript/module/src/pairing/index.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/pairingRuntime.d.ts +24 -0
- package/lib/typescript/module/src/pairing/pairingRuntime.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/tokenStorage.d.ts +16 -0
- package/lib/typescript/module/src/pairing/tokenStorage.d.ts.map +1 -0
- package/lib/typescript/module/src/pairing/usePairingState.d.ts +4 -0
- package/lib/typescript/module/src/pairing/usePairingState.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/FlowRenderer.d.ts +13 -0
- package/lib/typescript/module/src/runtime/FlowRenderer.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/FlowSurfaceFade.d.ts +13 -0
- package/lib/typescript/module/src/runtime/FlowSurfaceFade.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts +16 -0
- package/lib/typescript/module/src/runtime/TargetPressBridge.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/UserflowProvider.d.ts +32 -0
- package/lib/typescript/module/src/runtime/UserflowProvider.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/clientConditions.d.ts +10 -0
- package/lib/typescript/module/src/runtime/clientConditions.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/flowEngine.d.ts +17 -0
- package/lib/typescript/module/src/runtime/flowEngine.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/flowSessionViewState.d.ts +18 -0
- package/lib/typescript/module/src/runtime/flowSessionViewState.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/useFlowSessionState.d.ts +10 -0
- package/lib/typescript/module/src/runtime/useFlowSessionState.d.ts.map +1 -0
- package/lib/typescript/module/src/runtime/userflowCore.d.ts +3 -0
- package/lib/typescript/module/src/runtime/userflowCore.d.ts.map +1 -0
- package/lib/typescript/module/src/screenTracker.d.ts +28 -0
- package/lib/typescript/module/src/screenTracker.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/CloseButton.d.ts +8 -0
- package/lib/typescript/module/src/surfaces/CloseButton.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/MadeWithUserflow.d.ts +28 -0
- package/lib/typescript/module/src/surfaces/MadeWithUserflow.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/ModalSurface.d.ts +23 -0
- package/lib/typescript/module/src/surfaces/ModalSurface.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/ProgressBar.d.ts +19 -0
- package/lib/typescript/module/src/surfaces/ProgressBar.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/TooltipSurface.d.ts +17 -0
- package/lib/typescript/module/src/surfaces/TooltipSurface.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/absoluteFill.d.ts +18 -0
- package/lib/typescript/module/src/surfaces/absoluteFill.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/parseBackdropOpacity.d.ts +5 -0
- package/lib/typescript/module/src/surfaces/parseBackdropOpacity.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/progress.d.ts +14 -0
- package/lib/typescript/module/src/surfaces/progress.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/resolveCloseButtonColor.d.ts +9 -0
- package/lib/typescript/module/src/surfaces/resolveCloseButtonColor.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/resolveModalLayout.d.ts +36 -0
- package/lib/typescript/module/src/surfaces/resolveModalLayout.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/resolveTooltipLayout.d.ts +24 -0
- package/lib/typescript/module/src/surfaces/resolveTooltipLayout.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/safeArea.d.ts +11 -0
- package/lib/typescript/module/src/surfaces/safeArea.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/themeChrome.d.ts +36 -0
- package/lib/typescript/module/src/surfaces/themeChrome.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipBubble.d.ts +23 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipBubble.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipCutout.d.ts +31 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipCutout.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipNotch.d.ts +29 -0
- package/lib/typescript/module/src/surfaces/tooltip/TooltipNotch.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/computeTooltipPosition.d.ts +43 -0
- package/lib/typescript/module/src/surfaces/tooltip/computeTooltipPosition.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/inferTooltipPlacement.d.ts +34 -0
- package/lib/typescript/module/src/surfaces/tooltip/inferTooltipPlacement.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/parseBackdropPadding.d.ts +3 -0
- package/lib/typescript/module/src/surfaces/tooltip/parseBackdropPadding.d.ts.map +1 -0
- package/lib/typescript/module/src/surfaces/tooltip/rect.d.ts +29 -0
- package/lib/typescript/module/src/surfaces/tooltip/rect.d.ts.map +1 -0
- package/lib/typescript/module/src/useUserflowScreen.d.ts +10 -0
- package/lib/typescript/module/src/useUserflowScreen.d.ts.map +1 -0
- package/lib/typescript/module/src/version.d.ts +3 -0
- package/lib/typescript/module/src/version.d.ts.map +1 -0
- package/package.json +144 -0
- package/src/anchors/AnchorRegistry.ts +81 -0
- package/src/anchors/AutoAnchorRegistry.ts +439 -0
- package/src/anchors/ScrollContainerRegistry.ts +108 -0
- package/src/anchors/anchorChangeTicker.ts +84 -0
- package/src/anchors/animationFrame.ts +88 -0
- package/src/anchors/autoAnchor.ts +310 -0
- package/src/anchors/elementConditionEvaluator.ts +108 -0
- package/src/anchors/fiber/FiberScanRoot.tsx +98 -0
- package/src/anchors/fiber/fiberInternals.ts +181 -0
- package/src/anchors/fiber/findAnchorFiber.ts +225 -0
- package/src/anchors/fiber/findScrollAncestors.ts +229 -0
- package/src/anchors/fiber/measureHostFiber.ts +85 -0
- package/src/anchors/fiber/visibleScreens.ts +173 -0
- package/src/anchors/hintsCodec.ts +125 -0
- package/src/anchors/resolveAnchorHost.ts +102 -0
- package/src/anchors/resolveManualAnchorId.ts +10 -0
- package/src/anchors/scrollAnchorIntoView.ts +251 -0
- package/src/anchors/scrollConfig.ts +61 -0
- package/src/anchors/targetPressMonitor.ts +127 -0
- package/src/anchors/useUserflowAnchor.ts +88 -0
- package/src/anchors/useUserflowScrollContainer.ts +86 -0
- package/src/anonymousId.ts +38 -0
- package/src/content/RichContentRenderer.tsx +721 -0
- package/src/content/StepButton.tsx +70 -0
- package/src/content/buttonAppearance.ts +11 -0
- package/src/content/deserialize.ts +147 -0
- package/src/content/imageLayout.ts +29 -0
- package/src/content/migrateFlowBlocks.ts +39 -0
- package/src/content/openSafeUrl.ts +30 -0
- package/src/content/resolveStepButtonChrome.ts +122 -0
- package/src/content/themeColor.ts +98 -0
- package/src/content/types.ts +189 -0
- package/src/deepLinking.ts +182 -0
- package/src/expo-router/UserflowExpoRouterScreenTracker.tsx +7 -0
- package/src/expo-router/getExpoRouterScreenTracker.ts +49 -0
- package/src/expo-router/index.ts +2 -0
- package/src/expo-router/useUserflowExpoRouter.ts +40 -0
- package/src/index.ts +362 -0
- package/src/lifecycle.ts +253 -0
- package/src/navigation/WithUserflowReactNavigation.tsx +87 -0
- package/src/navigation/chainCallbacks.ts +12 -0
- package/src/navigation/getActiveRouteName.ts +18 -0
- package/src/navigation/index.ts +11 -0
- package/src/navigation/openFlowNavigateUrl.ts +113 -0
- package/src/network.ts +113 -0
- package/src/pairing/PairingController.ts +356 -0
- package/src/pairing/PreviewModeBanner.tsx +130 -0
- package/src/pairing/deepLink.ts +128 -0
- package/src/pairing/diagnostics.ts +135 -0
- package/src/pairing/index.ts +19 -0
- package/src/pairing/pairingRuntime.ts +76 -0
- package/src/pairing/tokenStorage.ts +76 -0
- package/src/pairing/usePairingState.ts +43 -0
- package/src/runtime/FlowRenderer.tsx +60 -0
- package/src/runtime/FlowSurfaceFade.tsx +55 -0
- package/src/runtime/TargetPressBridge.tsx +86 -0
- package/src/runtime/UserflowProvider.tsx +89 -0
- package/src/runtime/clientConditions.ts +42 -0
- package/src/runtime/flowEngine.ts +53 -0
- package/src/runtime/flowSessionViewState.ts +55 -0
- package/src/runtime/useFlowSessionState.ts +36 -0
- package/src/runtime/userflowCore.ts +8 -0
- package/src/screenTracker.ts +83 -0
- package/src/surfaces/CloseButton.tsx +41 -0
- package/src/surfaces/MadeWithUserflow.tsx +103 -0
- package/src/surfaces/ModalSurface.tsx +215 -0
- package/src/surfaces/ProgressBar.tsx +142 -0
- package/src/surfaces/TooltipSurface.tsx +743 -0
- package/src/surfaces/absoluteFill.ts +24 -0
- package/src/surfaces/assets/png.d.ts +4 -0
- package/src/surfaces/assets/userflow-logomark.png +0 -0
- package/src/surfaces/parseBackdropOpacity.ts +13 -0
- package/src/surfaces/progress.ts +37 -0
- package/src/surfaces/resolveCloseButtonColor.ts +23 -0
- package/src/surfaces/resolveModalLayout.ts +85 -0
- package/src/surfaces/resolveTooltipLayout.ts +73 -0
- package/src/surfaces/safeArea.ts +48 -0
- package/src/surfaces/themeChrome.ts +126 -0
- package/src/surfaces/tooltip/TooltipBubble.tsx +123 -0
- package/src/surfaces/tooltip/TooltipCutout.tsx +110 -0
- package/src/surfaces/tooltip/TooltipNotch.tsx +67 -0
- package/src/surfaces/tooltip/computeTooltipPosition.ts +125 -0
- package/src/surfaces/tooltip/inferTooltipPlacement.ts +109 -0
- package/src/surfaces/tooltip/parseBackdropPadding.ts +8 -0
- package/src/surfaces/tooltip/rect.ts +62 -0
- package/src/useUserflowScreen.ts +17 -0
- package/src/version.ts +2 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** React-facing view of the active flow session (derived from engine events). */
|
|
4
|
+
|
|
5
|
+
export function initialFlowSessionViewState(session) {
|
|
6
|
+
return {
|
|
7
|
+
session,
|
|
8
|
+
currentStepId: session?.currentStep?.id ?? null
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Reduces engine events into view state.
|
|
14
|
+
*
|
|
15
|
+
* Important: `goToStep` updates `currentStepId` without requiring a new
|
|
16
|
+
* `sessionChange` — the engine mutates `session.currentStep` in place and
|
|
17
|
+
* `ForceGoToStep` does not update it at all.
|
|
18
|
+
*/
|
|
19
|
+
export function reduceFlowSessionViewState(state, event) {
|
|
20
|
+
switch (event.type) {
|
|
21
|
+
case 'sessionChange':
|
|
22
|
+
return {
|
|
23
|
+
session: event.session,
|
|
24
|
+
currentStepId: event.session?.currentStep?.id ?? null
|
|
25
|
+
};
|
|
26
|
+
case 'goToStep':
|
|
27
|
+
return {
|
|
28
|
+
...state,
|
|
29
|
+
currentStepId: event.stepId
|
|
30
|
+
};
|
|
31
|
+
case 'flowEnded':
|
|
32
|
+
return {
|
|
33
|
+
session: null,
|
|
34
|
+
currentStepId: null
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function resolveCurrentStep(session, currentStepId) {
|
|
39
|
+
if (!session || !currentStepId) return null;
|
|
40
|
+
return session.version.steps.find(step => step.id === currentStepId) ?? null;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=flowSessionViewState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["initialFlowSessionViewState","session","currentStepId","currentStep","id","reduceFlowSessionViewState","state","event","type","stepId","resolveCurrentStep","version","steps","find","step"],"sourceRoot":"../../../src","sources":["runtime/flowSessionViewState.ts"],"mappings":";;AAGA;;AAMA,OAAO,SAASA,2BAA2BA,CACzCC,OAAmC,EACb;EACtB,OAAO;IACLA,OAAO;IACPC,aAAa,EAAED,OAAO,EAAEE,WAAW,EAAEC,EAAE,IAAI;EAC7C,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,0BAA0BA,CACxCC,KAA2B,EAC3BC,KAA6B,EACP;EACtB,QAAQA,KAAK,CAACC,IAAI;IAChB,KAAK,eAAe;MAClB,OAAO;QACLP,OAAO,EAAEM,KAAK,CAACN,OAAO;QACtBC,aAAa,EAAEK,KAAK,CAACN,OAAO,EAAEE,WAAW,EAAEC,EAAE,IAAI;MACnD,CAAC;IACH,KAAK,UAAU;MACb,OAAO;QACL,GAAGE,KAAK;QACRJ,aAAa,EAAEK,KAAK,CAACE;MACvB,CAAC;IACH,KAAK,WAAW;MACd,OAAO;QACLR,OAAO,EAAE,IAAI;QACbC,aAAa,EAAE;MACjB,CAAC;EACL;AACF;AAEA,OAAO,SAASQ,kBAAkBA,CAChCT,OAAmC,EACnCC,aAA4B,EACH;EACzB,IAAI,CAACD,OAAO,IAAI,CAACC,aAAa,EAAE,OAAO,IAAI;EAC3C,OAAOD,OAAO,CAACU,OAAO,CAACC,KAAK,CAACC,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACV,EAAE,KAAKF,aAAa,CAAC,IAAI,IAAI;AAChF","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useEffect, useReducer } from 'react';
|
|
4
|
+
import { initialFlowSessionViewState, reduceFlowSessionViewState, resolveCurrentStep } from "./flowSessionViewState.js";
|
|
5
|
+
/** Subscribe to a {@link FlowSessionEngine} and derive React-friendly session/step state. */
|
|
6
|
+
export function useFlowSessionState(engine) {
|
|
7
|
+
const [state, dispatch] = useReducer(reduceFlowSessionViewState, undefined, () => initialFlowSessionViewState(engine.getFlowSession()));
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
dispatch({
|
|
10
|
+
type: 'sessionChange',
|
|
11
|
+
session: engine.getFlowSession()
|
|
12
|
+
});
|
|
13
|
+
return engine.on(dispatch);
|
|
14
|
+
}, [engine]);
|
|
15
|
+
return {
|
|
16
|
+
session: state.session,
|
|
17
|
+
currentStepId: state.currentStepId,
|
|
18
|
+
currentStep: resolveCurrentStep(state.session, state.currentStepId)
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=useFlowSessionState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useReducer","initialFlowSessionViewState","reduceFlowSessionViewState","resolveCurrentStep","useFlowSessionState","engine","state","dispatch","undefined","getFlowSession","type","session","on","currentStepId","currentStep"],"sourceRoot":"../../../src","sources":["runtime/useFlowSessionState.ts"],"mappings":";;AAEA,SAASA,SAAS,EAAEC,UAAU,QAAQ,OAAO;AAE7C,SACEC,2BAA2B,EAC3BC,0BAA0B,EAC1BC,kBAAkB,QACb,2BAAwB;AAQ/B;AACA,OAAO,SAASC,mBAAmBA,CAACC,MAAyB,EAAoB;EAC/E,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGP,UAAU,CAACE,0BAA0B,EAAEM,SAAS,EAAE,MAC1EP,2BAA2B,CAACI,MAAM,CAACI,cAAc,CAAC,CAAC,CACrD,CAAC;EAEDV,SAAS,CAAC,MAAM;IACdQ,QAAQ,CAAC;MACPG,IAAI,EAAE,eAAe;MACrBC,OAAO,EAAEN,MAAM,CAACI,cAAc,CAAC;IACjC,CAAC,CAAC;IACF,OAAOJ,MAAM,CAACO,EAAE,CAACL,QAAQ,CAAC;EAC5B,CAAC,EAAE,CAACF,MAAM,CAAC,CAAC;EAEZ,OAAO;IACLM,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBE,aAAa,EAAEP,KAAK,CAACO,aAAa;IAClCC,WAAW,EAAEX,kBAAkB,CAACG,KAAK,CAACK,OAAO,EAAEL,KAAK,CAACO,aAAa;EACpE,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { UserflowCore } from '@userflow-tech/core';
|
|
4
|
+
|
|
5
|
+
/** Shared {@link UserflowCore} singleton for the RN package facade + provider. */
|
|
6
|
+
const core = new UserflowCore();
|
|
7
|
+
export function getUserflowCore() {
|
|
8
|
+
return core;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=userflowCore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["UserflowCore","core","getUserflowCore"],"sourceRoot":"../../../src","sources":["runtime/userflowCore.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,qBAAqB;;AAElD;AACA,MAAMC,IAAI,GAAG,IAAID,YAAY,CAAC,CAAC;AAE/B,OAAO,SAASE,eAAeA,CAAA,EAAiB;EAC9C,OAAOD,IAAI;AACb","ignoreList":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** Called when a new location is accepted (after enable + dedupe). */
|
|
4
|
+
|
|
5
|
+
let enabled = false;
|
|
6
|
+
let currentKey = null;
|
|
7
|
+
/** Latest location seen while tracking was disabled; flushed on enable. */
|
|
8
|
+
let pendingLocation = null;
|
|
9
|
+
let reporter = null;
|
|
10
|
+
function locationKey(location) {
|
|
11
|
+
return 'path' in location ? `path:${location.path}` : `screen:${location.screen}`;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Registers the callback invoked when the active screen/path changes.
|
|
16
|
+
* The React Native facade wires this to `UserflowCore.updateScreen`.
|
|
17
|
+
*/
|
|
18
|
+
export function setScreenChangeReporter(next) {
|
|
19
|
+
reporter = next;
|
|
20
|
+
}
|
|
21
|
+
function report(location) {
|
|
22
|
+
currentKey = locationKey(location);
|
|
23
|
+
reporter?.(location);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** Activates screen-change tracking after a successful {@link Userflow.init}. */
|
|
27
|
+
export function enableScreenTracking() {
|
|
28
|
+
enabled = true;
|
|
29
|
+
if (pendingLocation && locationKey(pendingLocation) !== currentKey) {
|
|
30
|
+
const location = pendingLocation;
|
|
31
|
+
pendingLocation = null;
|
|
32
|
+
report(location);
|
|
33
|
+
} else {
|
|
34
|
+
pendingLocation = null;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/** Deactivates screen-change tracking and clears the last known screen. */
|
|
39
|
+
export function disableScreenTracking() {
|
|
40
|
+
enabled = false;
|
|
41
|
+
currentKey = null;
|
|
42
|
+
pendingLocation = null;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Records a navigation to `location` when tracking is enabled.
|
|
47
|
+
* Duplicate consecutive locations are ignored. On change, notifies the reporter
|
|
48
|
+
* so the SDK can push `UpdateClientContext` to the backend.
|
|
49
|
+
*
|
|
50
|
+
* Locations observed before {@link enableScreenTracking} are remembered and
|
|
51
|
+
* flushed when tracking is enabled (so init-after-mount still picks up the
|
|
52
|
+
* active route).
|
|
53
|
+
*
|
|
54
|
+
* - Expo Router: `{ path: "/settings/billing" }` → wire `screenPath`
|
|
55
|
+
* - React Navigation / manual: `{ screen: "BillingSettings" }` → wire `screenName`
|
|
56
|
+
*/
|
|
57
|
+
export function handleScreenChange(location) {
|
|
58
|
+
if (!location) return;
|
|
59
|
+
if ('path' in location) {
|
|
60
|
+
if (!location.path) return;
|
|
61
|
+
} else if (!location.screen) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (!enabled) {
|
|
65
|
+
pendingLocation = location;
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
if (locationKey(location) === currentKey) return;
|
|
69
|
+
pendingLocation = null;
|
|
70
|
+
report(location);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** @internal Resets tracker state between tests. Does not clear the reporter. */
|
|
74
|
+
export function resetScreenTrackerForTests() {
|
|
75
|
+
enabled = false;
|
|
76
|
+
currentKey = null;
|
|
77
|
+
pendingLocation = null;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=screenTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["enabled","currentKey","pendingLocation","reporter","locationKey","location","path","screen","setScreenChangeReporter","next","report","enableScreenTracking","disableScreenTracking","handleScreenChange","resetScreenTrackerForTests"],"sourceRoot":"../../src","sources":["screenTracker.ts"],"mappings":";;AAEA;;AAGA,IAAIA,OAAO,GAAG,KAAK;AACnB,IAAIC,UAAyB,GAAG,IAAI;AACpC;AACA,IAAIC,eAA4C,GAAG,IAAI;AACvD,IAAIC,QAAqC,GAAG,IAAI;AAEhD,SAASC,WAAWA,CAACC,QAA8B,EAAU;EAC3D,OAAO,MAAM,IAAIA,QAAQ,GAAG,QAAQA,QAAQ,CAACC,IAAI,EAAE,GAAG,UAAUD,QAAQ,CAACE,MAAM,EAAE;AACnF;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CAACC,IAAiC,EAAQ;EAC/EN,QAAQ,GAAGM,IAAI;AACjB;AAEA,SAASC,MAAMA,CAACL,QAA8B,EAAQ;EACpDJ,UAAU,GAAGG,WAAW,CAACC,QAAQ,CAAC;EAClCF,QAAQ,GAAGE,QAAQ,CAAC;AACtB;;AAEA;AACA,OAAO,SAASM,oBAAoBA,CAAA,EAAS;EAC3CX,OAAO,GAAG,IAAI;EACd,IAAIE,eAAe,IAAIE,WAAW,CAACF,eAAe,CAAC,KAAKD,UAAU,EAAE;IAClE,MAAMI,QAAQ,GAAGH,eAAe;IAChCA,eAAe,GAAG,IAAI;IACtBQ,MAAM,CAACL,QAAQ,CAAC;EAClB,CAAC,MAAM;IACLH,eAAe,GAAG,IAAI;EACxB;AACF;;AAEA;AACA,OAAO,SAASU,qBAAqBA,CAAA,EAAS;EAC5CZ,OAAO,GAAG,KAAK;EACfC,UAAU,GAAG,IAAI;EACjBC,eAAe,GAAG,IAAI;AACxB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASW,kBAAkBA,CAACR,QAA0C,EAAQ;EACnF,IAAI,CAACA,QAAQ,EAAE;EACf,IAAI,MAAM,IAAIA,QAAQ,EAAE;IACtB,IAAI,CAACA,QAAQ,CAACC,IAAI,EAAE;EACtB,CAAC,MAAM,IAAI,CAACD,QAAQ,CAACE,MAAM,EAAE;IAC3B;EACF;EAEA,IAAI,CAACP,OAAO,EAAE;IACZE,eAAe,GAAGG,QAAQ;IAC1B;EACF;EAEA,IAAID,WAAW,CAACC,QAAQ,CAAC,KAAKJ,UAAU,EAAE;EAC1CC,eAAe,GAAG,IAAI;EACtBQ,MAAM,CAACL,QAAQ,CAAC;AAClB;;AAEA;AACA,OAAO,SAASS,0BAA0BA,CAAA,EAAS;EACjDd,OAAO,GAAG,KAAK;EACfC,UAAU,GAAG,IAAI;EACjBC,eAAe,GAAG,IAAI;AACxB","ignoreList":[]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Pressable, StyleSheet, Text } from 'react-native';
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
/** Web close control: 24×24 hit target, 8px from the top-trailing corner. Pass muted color from {@link resolveCloseButtonColor}. */
|
|
7
|
+
export function CloseButton({
|
|
8
|
+
onPress,
|
|
9
|
+
color
|
|
10
|
+
}) {
|
|
11
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
12
|
+
testID: "userflow-modal-close",
|
|
13
|
+
accessibilityRole: "button",
|
|
14
|
+
accessibilityLabel: "Close",
|
|
15
|
+
onPress: onPress,
|
|
16
|
+
style: ({
|
|
17
|
+
pressed
|
|
18
|
+
}) => [styles.button, {
|
|
19
|
+
opacity: pressed ? 0.6 : 1
|
|
20
|
+
}],
|
|
21
|
+
hitSlop: 8,
|
|
22
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
23
|
+
style: [styles.icon, {
|
|
24
|
+
color
|
|
25
|
+
}],
|
|
26
|
+
children: "\xD7"
|
|
27
|
+
})
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
const styles = StyleSheet.create({
|
|
31
|
+
button: {
|
|
32
|
+
position: 'absolute',
|
|
33
|
+
top: 8,
|
|
34
|
+
right: 8,
|
|
35
|
+
zIndex: 2,
|
|
36
|
+
width: 24,
|
|
37
|
+
height: 24,
|
|
38
|
+
alignItems: 'center',
|
|
39
|
+
justifyContent: 'center'
|
|
40
|
+
},
|
|
41
|
+
icon: {
|
|
42
|
+
fontSize: 18,
|
|
43
|
+
fontWeight: '300',
|
|
44
|
+
lineHeight: 22
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=CloseButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Pressable","StyleSheet","Text","jsx","_jsx","CloseButton","onPress","color","testID","accessibilityRole","accessibilityLabel","style","pressed","styles","button","opacity","hitSlop","children","icon","create","position","top","right","zIndex","width","height","alignItems","justifyContent","fontSize","fontWeight","lineHeight"],"sourceRoot":"../../../src","sources":["surfaces/CloseButton.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO3D;AACA,OAAO,SAASC,WAAWA,CAAC;EAAEC,OAAO;EAAEC;AAAwB,CAAC,EAAsB;EACpF,oBACEH,IAAA,CAACJ,SAAS;IACRQ,MAAM,EAAC,sBAAsB;IAC7BC,iBAAiB,EAAC,QAAQ;IAC1BC,kBAAkB,EAAC,OAAO;IAC1BJ,OAAO,EAAEA,OAAQ;IACjBK,KAAK,EAAEA,CAAC;MAAEC;IAAQ,CAAC,KAAK,CAACC,MAAM,CAACC,MAAM,EAAE;MAAEC,OAAO,EAAEH,OAAO,GAAG,GAAG,GAAG;IAAE,CAAC,CAAE;IACxEI,OAAO,EAAE,CAAE;IAAAC,QAAA,eAEXb,IAAA,CAACF,IAAI;MAACS,KAAK,EAAE,CAACE,MAAM,CAACK,IAAI,EAAE;QAAEX;MAAM,CAAC,CAAE;MAAAU,QAAA,EAAC;IAAC,CAAM;EAAC,CACtC,CAAC;AAEhB;AAEA,MAAMJ,MAAM,GAAGZ,UAAU,CAACkB,MAAM,CAAC;EAC/BL,MAAM,EAAE;IACNM,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDT,IAAI,EAAE;IACJU,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Image, Pressable, StyleSheet, Text, View } from 'react-native';
|
|
5
|
+
import { openSafeUrl } from "../content/openSafeUrl.js";
|
|
6
|
+
import logomark from './assets/userflow-logomark.png';
|
|
7
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
/**
|
|
9
|
+
* Web "Made with Userflow" attribution (FlowChrome). Shown when the company
|
|
10
|
+
* has `flowBranding` enabled; opens the Userflow homepage with UTM params.
|
|
11
|
+
*
|
|
12
|
+
* Rendered as a card footer (not absolutely pinned to the card corner) so left
|
|
13
|
+
* and bottom insets match the surface content padding.
|
|
14
|
+
*/
|
|
15
|
+
export function MadeWithUserflow({
|
|
16
|
+
company,
|
|
17
|
+
color,
|
|
18
|
+
contentPadding,
|
|
19
|
+
embedded = false
|
|
20
|
+
}) {
|
|
21
|
+
if (!company.flowBranding) return null;
|
|
22
|
+
const href = `https://userflow.com/?utm_source=made-with-userflow&utm_medium=link&utm_campaign=made-with-userflow-` + company.slug;
|
|
23
|
+
return /*#__PURE__*/_jsx(View, {
|
|
24
|
+
style: [styles.footer, embedded ? {
|
|
25
|
+
marginTop: MADE_WITH_USERFLOW_GAP,
|
|
26
|
+
paddingBottom: contentPadding
|
|
27
|
+
} : {
|
|
28
|
+
paddingHorizontal: contentPadding,
|
|
29
|
+
paddingBottom: contentPadding
|
|
30
|
+
}],
|
|
31
|
+
pointerEvents: "box-none",
|
|
32
|
+
children: /*#__PURE__*/_jsxs(Pressable, {
|
|
33
|
+
testID: "userflow-made-with-userflow",
|
|
34
|
+
accessibilityRole: "link",
|
|
35
|
+
accessibilityLabel: "Made with Userflow",
|
|
36
|
+
onPress: () => {
|
|
37
|
+
void openSafeUrl(href);
|
|
38
|
+
},
|
|
39
|
+
style: ({
|
|
40
|
+
pressed
|
|
41
|
+
}) => [styles.link, {
|
|
42
|
+
opacity: pressed ? 0.75 : 0.5
|
|
43
|
+
}],
|
|
44
|
+
hitSlop: 4,
|
|
45
|
+
children: [/*#__PURE__*/_jsx(Image, {
|
|
46
|
+
source: logomark,
|
|
47
|
+
style: [styles.logomark, {
|
|
48
|
+
tintColor: color
|
|
49
|
+
}],
|
|
50
|
+
accessibilityIgnoresInvertColors: true
|
|
51
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
52
|
+
style: [styles.label, {
|
|
53
|
+
color
|
|
54
|
+
}],
|
|
55
|
+
children: "Made with Userflow"
|
|
56
|
+
})]
|
|
57
|
+
})
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/** Gap between step content/buttons and the branding footer (web spacer height). */
|
|
62
|
+
export const MADE_WITH_USERFLOW_GAP = 16;
|
|
63
|
+
const styles = StyleSheet.create({
|
|
64
|
+
footer: {
|
|
65
|
+
flexShrink: 0
|
|
66
|
+
},
|
|
67
|
+
link: {
|
|
68
|
+
flexDirection: 'row',
|
|
69
|
+
alignItems: 'center',
|
|
70
|
+
alignSelf: 'flex-start'
|
|
71
|
+
},
|
|
72
|
+
logomark: {
|
|
73
|
+
width: 14,
|
|
74
|
+
height: 14,
|
|
75
|
+
marginRight: 6
|
|
76
|
+
},
|
|
77
|
+
label: {
|
|
78
|
+
fontSize: 12,
|
|
79
|
+
fontWeight: '500',
|
|
80
|
+
lineHeight: 14
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=MadeWithUserflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Image","Pressable","StyleSheet","Text","View","openSafeUrl","logomark","jsx","_jsx","jsxs","_jsxs","MadeWithUserflow","company","color","contentPadding","embedded","flowBranding","href","slug","style","styles","footer","marginTop","MADE_WITH_USERFLOW_GAP","paddingBottom","paddingHorizontal","pointerEvents","children","testID","accessibilityRole","accessibilityLabel","onPress","pressed","link","opacity","hitSlop","source","tintColor","accessibilityIgnoresInvertColors","label","create","flexShrink","flexDirection","alignItems","alignSelf","width","height","marginRight","fontSize","fontWeight","lineHeight"],"sourceRoot":"../../../src","sources":["surfaces/MadeWithUserflow.tsx"],"mappings":";;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,KAAK,EAAEC,SAAS,EAAEC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AAEvE,SAASC,WAAW,QAAQ,2BAAwB;AAEpD,OAAOC,QAAQ,MAAM,gCAAgC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAkBtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAC;EAC/BC,OAAO;EACPC,KAAK;EACLC,cAAc;EACdC,QAAQ,GAAG;AACU,CAAC,EAA6B;EACnD,IAAI,CAACH,OAAO,CAACI,YAAY,EAAE,OAAO,IAAI;EAEtC,MAAMC,IAAI,GACR,sGAAsG,GACtGL,OAAO,CAACM,IAAI;EAEd,oBACEV,IAAA,CAACJ,IAAI;IACHe,KAAK,EAAE,CACLC,MAAM,CAACC,MAAM,EACbN,QAAQ,GACJ;MACEO,SAAS,EAAEC,sBAAsB;MACjCC,aAAa,EAAEV;IACjB,CAAC,GACD;MACEW,iBAAiB,EAAEX,cAAc;MACjCU,aAAa,EAAEV;IACjB,CAAC,CACL;IACFY,aAAa,EAAC,UAAU;IAAAC,QAAA,eAExBjB,KAAA,CAACT,SAAS;MACR2B,MAAM,EAAC,6BAA6B;MACpCC,iBAAiB,EAAC,MAAM;MACxBC,kBAAkB,EAAC,oBAAoB;MACvCC,OAAO,EAAEA,CAAA,KAAM;QACb,KAAK1B,WAAW,CAACY,IAAI,CAAC;MACxB,CAAE;MACFE,KAAK,EAAEA,CAAC;QAAEa;MAAQ,CAAC,KAAK,CAACZ,MAAM,CAACa,IAAI,EAAE;QAAEC,OAAO,EAAEF,OAAO,GAAG,IAAI,GAAG;MAAI,CAAC,CAAE;MACzEG,OAAO,EAAE,CAAE;MAAAR,QAAA,gBAEXnB,IAAA,CAACR,KAAK;QACJoC,MAAM,EAAE9B,QAAS;QACjBa,KAAK,EAAE,CAACC,MAAM,CAACd,QAAQ,EAAE;UAAE+B,SAAS,EAAExB;QAAM,CAAC,CAAE;QAC/CyB,gCAAgC;MAAA,CACjC,CAAC,eACF9B,IAAA,CAACL,IAAI;QAACgB,KAAK,EAAE,CAACC,MAAM,CAACmB,KAAK,EAAE;UAAE1B;QAAM,CAAC,CAAE;QAAAc,QAAA,EAAC;MAAkB,CAAM,CAAC;IAAA,CACxD;EAAC,CACR,CAAC;AAEX;;AAEA;AACA,OAAO,MAAMJ,sBAAsB,GAAG,EAAE;AAExC,MAAMH,MAAM,GAAGlB,UAAU,CAACsC,MAAM,CAAC;EAC/BnB,MAAM,EAAE;IACNoB,UAAU,EAAE;EACd,CAAC;EACDR,IAAI,EAAE;IACJS,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,SAAS,EAAE;EACb,CAAC;EACDtC,QAAQ,EAAE;IACRuC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE,EAAE;IACVC,WAAW,EAAE;EACf,CAAC;EACDR,KAAK,EAAE;IACLS,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Pressable, ScrollView, StyleSheet, View, useWindowDimensions } from 'react-native';
|
|
5
|
+
import { RichContentRenderer } from "../content/RichContentRenderer.js";
|
|
6
|
+
import { CloseButton } from "./CloseButton.js";
|
|
7
|
+
import { resolveCloseButtonColor } from "./resolveCloseButtonColor.js";
|
|
8
|
+
import { MadeWithUserflow } from "./MadeWithUserflow.js";
|
|
9
|
+
import { ProgressBar } from "./ProgressBar.js";
|
|
10
|
+
import { ABSOLUTE_FILL } from "./absoluteFill.js";
|
|
11
|
+
import { parseBackdropOpacity } from "./parseBackdropOpacity.js";
|
|
12
|
+
import { resolveStepProgress } from "./progress.js";
|
|
13
|
+
import { useUserflowSafeAreaInsets } from "./safeArea.js";
|
|
14
|
+
import { resolveModalButtonsAlign, resolveModalCardMaxHeight, resolveModalCardMaxWidth, resolveModalCenterPadding } from "./resolveModalLayout.js";
|
|
15
|
+
import { resolveBubbleChrome } from "./themeChrome.js";
|
|
16
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
|
+
/**
|
|
18
|
+
* Modal chrome: full-screen backdrop + centered themed card with TreeDoc body.
|
|
19
|
+
* Also used as a temporary fallback for BUBBLE/HIDDEN until dedicated surfaces.
|
|
20
|
+
*
|
|
21
|
+
* Touch model: backdrop is a full-screen Pressable; the centering wrapper is
|
|
22
|
+
* `box-none` so taps outside the card hit the backdrop, while the card itself
|
|
23
|
+
* uses default `auto` pointer events so children (buttons, scroll) keep working.
|
|
24
|
+
* Do not put `onStartShouldSetResponder` on the card — it steals touches from
|
|
25
|
+
* nested Pressables.
|
|
26
|
+
*/
|
|
27
|
+
export function ModalSurface({
|
|
28
|
+
engine,
|
|
29
|
+
session,
|
|
30
|
+
currentStep,
|
|
31
|
+
theme,
|
|
32
|
+
lookupAttribute
|
|
33
|
+
}) {
|
|
34
|
+
const version = session.version;
|
|
35
|
+
const chrome = resolveBubbleChrome(theme, 'modal');
|
|
36
|
+
const progress = resolveStepProgress(version, currentStep.id);
|
|
37
|
+
const showClose = !version.closeDisabled;
|
|
38
|
+
const backdropOpacity = parseBackdropOpacity(theme.backdropOpacity);
|
|
39
|
+
const canDismissBackdrop = theme.modalBackdropOnclick === 'DISMISS' && showClose;
|
|
40
|
+
const endAsUserClosed = React.useCallback(() => {
|
|
41
|
+
void engine.endFlow('USER_CLOSED');
|
|
42
|
+
}, [engine]);
|
|
43
|
+
const insets = useUserflowSafeAreaInsets();
|
|
44
|
+
const windowDims = useWindowDimensions();
|
|
45
|
+
const centerPadding = resolveModalCenterPadding(insets);
|
|
46
|
+
const cardMaxWidth = resolveModalCardMaxWidth(theme, currentStep.width, windowDims.width);
|
|
47
|
+
const cardMaxHeight = resolveModalCardMaxHeight(windowDims.height, centerPadding);
|
|
48
|
+
const buttonsAlign = resolveModalButtonsAlign(theme, windowDims.width);
|
|
49
|
+
const progressTop = theme.progressBarEnabled && theme.progressBarPosition === 'TOP';
|
|
50
|
+
const progressBottom = theme.progressBarEnabled && theme.progressBarPosition === 'BOTTOM';
|
|
51
|
+
const showBranding = session.flow.company.flowBranding;
|
|
52
|
+
const contentPadding = chrome.contentPadding;
|
|
53
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
54
|
+
style: styles.root,
|
|
55
|
+
testID: "userflow-modal-surface",
|
|
56
|
+
pointerEvents: "box-none",
|
|
57
|
+
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
58
|
+
testID: "userflow-modal-backdrop",
|
|
59
|
+
accessibilityRole: canDismissBackdrop ? 'button' : 'none',
|
|
60
|
+
accessibilityLabel: canDismissBackdrop ? 'Dismiss' : undefined,
|
|
61
|
+
accessibilityElementsHidden: !canDismissBackdrop,
|
|
62
|
+
importantForAccessibility: canDismissBackdrop ? 'yes' : 'no-hide-descendants',
|
|
63
|
+
disabled: !canDismissBackdrop,
|
|
64
|
+
onPress: canDismissBackdrop ? endAsUserClosed : undefined,
|
|
65
|
+
style: [ABSOLUTE_FILL, {
|
|
66
|
+
backgroundColor: theme.backdropColor,
|
|
67
|
+
opacity: backdropOpacity
|
|
68
|
+
}]
|
|
69
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
70
|
+
style: [styles.center, centerPadding],
|
|
71
|
+
pointerEvents: "box-none",
|
|
72
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
73
|
+
testID: "userflow-modal-card",
|
|
74
|
+
accessibilityViewIsModal: true,
|
|
75
|
+
pointerEvents: "auto",
|
|
76
|
+
style: [chrome.cardStyle, styles.cardShadow, {
|
|
77
|
+
maxWidth: cardMaxWidth,
|
|
78
|
+
maxHeight: cardMaxHeight,
|
|
79
|
+
width: '100%',
|
|
80
|
+
borderRadius: chrome.borderRadius
|
|
81
|
+
}],
|
|
82
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
83
|
+
testID: "userflow-modal-card-fill",
|
|
84
|
+
style: [chrome.fillStyle, styles.cardFill, {
|
|
85
|
+
borderRadius: chrome.borderRadius
|
|
86
|
+
}],
|
|
87
|
+
children: [showClose ? /*#__PURE__*/_jsx(CloseButton, {
|
|
88
|
+
onPress: endAsUserClosed,
|
|
89
|
+
color: resolveCloseButtonColor(theme)
|
|
90
|
+
}) : null, progressTop ? /*#__PURE__*/_jsx(ProgressBar, {
|
|
91
|
+
enabled: true,
|
|
92
|
+
fraction: progress.fraction,
|
|
93
|
+
position: "TOP",
|
|
94
|
+
theme: theme,
|
|
95
|
+
totalSteps: progress.total,
|
|
96
|
+
contentPadding: contentPadding
|
|
97
|
+
}) : null, /*#__PURE__*/_jsxs(ScrollView, {
|
|
98
|
+
testID: "userflow-flow-scroll",
|
|
99
|
+
style: styles.scroll,
|
|
100
|
+
contentContainerStyle: [styles.scrollContent, {
|
|
101
|
+
paddingHorizontal: contentPadding,
|
|
102
|
+
paddingTop: contentPadding,
|
|
103
|
+
paddingBottom: showBranding ? 0 : contentPadding
|
|
104
|
+
}],
|
|
105
|
+
keyboardShouldPersistTaps: "handled",
|
|
106
|
+
nestedScrollEnabled: true,
|
|
107
|
+
bounces: false,
|
|
108
|
+
showsVerticalScrollIndicator: true,
|
|
109
|
+
children: [/*#__PURE__*/_jsx(RichContentRenderer, {
|
|
110
|
+
content: currentStep.content,
|
|
111
|
+
buttons: currentStep.buttons,
|
|
112
|
+
theme: theme,
|
|
113
|
+
sessionData: session.data,
|
|
114
|
+
lookupAttribute: lookupAttribute,
|
|
115
|
+
defaultButtonsAlign: buttonsAlign,
|
|
116
|
+
onActions: actions => {
|
|
117
|
+
void engine.handleActions(actions);
|
|
118
|
+
}
|
|
119
|
+
}), /*#__PURE__*/_jsx(MadeWithUserflow, {
|
|
120
|
+
company: session.flow.company,
|
|
121
|
+
color: theme.fontColor,
|
|
122
|
+
contentPadding: contentPadding,
|
|
123
|
+
embedded: true
|
|
124
|
+
})]
|
|
125
|
+
}), progressBottom ? /*#__PURE__*/_jsx(ProgressBar, {
|
|
126
|
+
enabled: true,
|
|
127
|
+
fraction: progress.fraction,
|
|
128
|
+
position: "BOTTOM",
|
|
129
|
+
theme: theme,
|
|
130
|
+
totalSteps: progress.total,
|
|
131
|
+
contentPadding: contentPadding
|
|
132
|
+
}) : null]
|
|
133
|
+
})
|
|
134
|
+
})
|
|
135
|
+
})]
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
const styles = StyleSheet.create({
|
|
139
|
+
root: {
|
|
140
|
+
...ABSOLUTE_FILL
|
|
141
|
+
},
|
|
142
|
+
center: {
|
|
143
|
+
...ABSOLUTE_FILL,
|
|
144
|
+
justifyContent: 'center',
|
|
145
|
+
alignItems: 'center'
|
|
146
|
+
},
|
|
147
|
+
cardFill: {
|
|
148
|
+
flexShrink: 1,
|
|
149
|
+
minHeight: 0,
|
|
150
|
+
width: '100%',
|
|
151
|
+
position: 'relative'
|
|
152
|
+
},
|
|
153
|
+
cardShadow: {
|
|
154
|
+
flexShrink: 1
|
|
155
|
+
},
|
|
156
|
+
scroll: {
|
|
157
|
+
flexGrow: 0,
|
|
158
|
+
flexShrink: 1,
|
|
159
|
+
minHeight: 0
|
|
160
|
+
},
|
|
161
|
+
scrollContent: {
|
|
162
|
+
flexGrow: 1
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
//# sourceMappingURL=ModalSurface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Pressable","ScrollView","StyleSheet","View","useWindowDimensions","RichContentRenderer","CloseButton","resolveCloseButtonColor","MadeWithUserflow","ProgressBar","ABSOLUTE_FILL","parseBackdropOpacity","resolveStepProgress","useUserflowSafeAreaInsets","resolveModalButtonsAlign","resolveModalCardMaxHeight","resolveModalCardMaxWidth","resolveModalCenterPadding","resolveBubbleChrome","jsx","_jsx","jsxs","_jsxs","ModalSurface","engine","session","currentStep","theme","lookupAttribute","version","chrome","progress","id","showClose","closeDisabled","backdropOpacity","canDismissBackdrop","modalBackdropOnclick","endAsUserClosed","useCallback","endFlow","insets","windowDims","centerPadding","cardMaxWidth","width","cardMaxHeight","height","buttonsAlign","progressTop","progressBarEnabled","progressBarPosition","progressBottom","showBranding","flow","company","flowBranding","contentPadding","style","styles","root","testID","pointerEvents","children","accessibilityRole","accessibilityLabel","undefined","accessibilityElementsHidden","importantForAccessibility","disabled","onPress","backgroundColor","backdropColor","opacity","center","accessibilityViewIsModal","cardStyle","cardShadow","maxWidth","maxHeight","borderRadius","fillStyle","cardFill","color","enabled","fraction","position","totalSteps","total","scroll","contentContainerStyle","scrollContent","paddingHorizontal","paddingTop","paddingBottom","keyboardShouldPersistTaps","nestedScrollEnabled","bounces","showsVerticalScrollIndicator","content","buttons","sessionData","data","defaultButtonsAlign","onActions","actions","handleActions","fontColor","embedded","create","justifyContent","alignItems","flexShrink","minHeight","flexGrow"],"sourceRoot":"../../../src","sources":["surfaces/ModalSurface.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { StyleSheet, Text, View } from 'react-native';
|
|
5
|
+
import { foregroundAlpha } from "../content/themeColor.js";
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
const PROGRESS_BAR_NUMBERED = 'NUMBERED';
|
|
8
|
+
function progressBarType(theme) {
|
|
9
|
+
return String(theme.progressBarType ?? 'DEFAULT').toUpperCase();
|
|
10
|
+
}
|
|
11
|
+
function numberedStepLabel(fraction, totalSteps) {
|
|
12
|
+
const maxSteps = Math.max(0, totalSteps);
|
|
13
|
+
if (maxSteps === 0) return '';
|
|
14
|
+
const selected = Math.min(Math.floor(fraction * maxSteps), maxSteps);
|
|
15
|
+
return `${selected} of ${maxSteps}`;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Web bubble progress (`BubbleProgress` / bubble-frame.styl).
|
|
20
|
+
* DEFAULT: 2px track flush to the card edge. NUMBERED: "1 of 3" step label.
|
|
21
|
+
*/
|
|
22
|
+
export function ProgressBar({
|
|
23
|
+
enabled,
|
|
24
|
+
fraction,
|
|
25
|
+
position,
|
|
26
|
+
theme,
|
|
27
|
+
totalSteps = 0,
|
|
28
|
+
contentPadding = 0
|
|
29
|
+
}) {
|
|
30
|
+
if (!enabled) return null;
|
|
31
|
+
const clamped = Math.min(1, Math.max(0, fraction));
|
|
32
|
+
const type = progressBarType(theme);
|
|
33
|
+
const testId = `userflow-progress-${position === 'TOP' ? 'top' : 'bottom'}`;
|
|
34
|
+
if (type === PROGRESS_BAR_NUMBERED) {
|
|
35
|
+
const label = numberedStepLabel(clamped, totalSteps);
|
|
36
|
+
if (!label) return null;
|
|
37
|
+
return /*#__PURE__*/_jsx(View, {
|
|
38
|
+
testID: testId,
|
|
39
|
+
style: [styles.numberedTrack, position === 'TOP' ? styles.top : styles.bottomNumbered, contentPadding > 0 ? {
|
|
40
|
+
paddingHorizontal: contentPadding,
|
|
41
|
+
alignItems: 'flex-start'
|
|
42
|
+
} : styles.numberedCentered],
|
|
43
|
+
accessibilityRole: "text",
|
|
44
|
+
accessibilityLabel: label,
|
|
45
|
+
pointerEvents: "none",
|
|
46
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
47
|
+
testID: "userflow-progress-numbered",
|
|
48
|
+
style: [styles.numberedLabel, {
|
|
49
|
+
color: foregroundAlpha(theme.fontColor, 0.55),
|
|
50
|
+
fontFamily: theme.fontFamily || undefined,
|
|
51
|
+
fontSize: Math.max(12, Math.round(theme.fontSize * 0.875))
|
|
52
|
+
}],
|
|
53
|
+
children: label
|
|
54
|
+
})
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
return /*#__PURE__*/_jsx(View, {
|
|
58
|
+
testID: testId,
|
|
59
|
+
style: [styles.track, position === 'TOP' ? styles.top : styles.bottom],
|
|
60
|
+
accessibilityRole: "progressbar",
|
|
61
|
+
accessibilityValue: {
|
|
62
|
+
min: 0,
|
|
63
|
+
max: 100,
|
|
64
|
+
now: Math.round(clamped * 100)
|
|
65
|
+
},
|
|
66
|
+
pointerEvents: "none",
|
|
67
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
68
|
+
testID: "userflow-progress-fill",
|
|
69
|
+
style: [styles.fill, {
|
|
70
|
+
width: `${clamped * 100}%`,
|
|
71
|
+
backgroundColor: theme.defaultButtonBackgroundColor
|
|
72
|
+
}]
|
|
73
|
+
})
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
const styles = StyleSheet.create({
|
|
77
|
+
track: {
|
|
78
|
+
position: 'absolute',
|
|
79
|
+
left: 0,
|
|
80
|
+
right: 0,
|
|
81
|
+
height: 2,
|
|
82
|
+
backgroundColor: 'rgba(0,0,0,0.08)',
|
|
83
|
+
overflow: 'hidden',
|
|
84
|
+
zIndex: 1
|
|
85
|
+
},
|
|
86
|
+
numberedTrack: {
|
|
87
|
+
position: 'absolute',
|
|
88
|
+
left: 0,
|
|
89
|
+
right: 0,
|
|
90
|
+
zIndex: 1
|
|
91
|
+
},
|
|
92
|
+
numberedCentered: {
|
|
93
|
+
alignItems: 'center'
|
|
94
|
+
},
|
|
95
|
+
top: {
|
|
96
|
+
top: 0
|
|
97
|
+
},
|
|
98
|
+
bottom: {
|
|
99
|
+
bottom: 0
|
|
100
|
+
},
|
|
101
|
+
bottomNumbered: {
|
|
102
|
+
bottom: 8
|
|
103
|
+
},
|
|
104
|
+
fill: {
|
|
105
|
+
height: '100%'
|
|
106
|
+
},
|
|
107
|
+
numberedLabel: {
|
|
108
|
+
fontWeight: '600'
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
//# sourceMappingURL=ProgressBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","Text","View","foregroundAlpha","jsx","_jsx","PROGRESS_BAR_NUMBERED","progressBarType","theme","String","toUpperCase","numberedStepLabel","fraction","totalSteps","maxSteps","Math","max","selected","min","floor","ProgressBar","enabled","position","contentPadding","clamped","type","testId","label","testID","style","styles","numberedTrack","top","bottomNumbered","paddingHorizontal","alignItems","numberedCentered","accessibilityRole","accessibilityLabel","pointerEvents","children","numberedLabel","color","fontColor","fontFamily","undefined","fontSize","round","track","bottom","accessibilityValue","now","fill","width","backgroundColor","defaultButtonBackgroundColor","create","left","right","height","overflow","zIndex","fontWeight"],"sourceRoot":"../../../src","sources":["surfaces/ProgressBar.tsx"],"mappings":"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","ignoreList":[]}
|