@scalebun/react-native 1.1.0 → 1.2.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/dist/scalebun.full.js +33132 -0
- package/dist/scalebun.full.js.map +1 -0
- package/dist/scalebun.slim.js +29930 -0
- package/dist/scalebun.slim.js.map +1 -0
- package/lib/commonjs/bootstrap/FeatureRegistry.js +4 -4
- package/lib/commonjs/bootstrap/FeatureRegistry.js.map +1 -1
- package/lib/commonjs/bootstrap/SDKBootstrapper.js +8 -8
- package/lib/commonjs/bootstrap/SDKBootstrapper.js.map +1 -1
- package/lib/commonjs/core/config/schema.js +412 -232
- package/lib/commonjs/core/config/schema.js.map +1 -1
- package/lib/commonjs/core/constants/protocol.js +31 -0
- package/lib/commonjs/core/constants/protocol.js.map +1 -0
- package/lib/commonjs/core/constants/timings.js +4 -1
- package/lib/commonjs/core/constants/timings.js.map +1 -1
- package/lib/commonjs/core/lifecycle/appLifecycle.js +1 -1
- package/lib/commonjs/core/lifecycle/appLifecycle.js.map +1 -1
- package/lib/commonjs/debug/bootstrap.js +30 -10
- package/lib/commonjs/debug/bootstrap.js.map +1 -1
- package/lib/commonjs/debug/exportBridge.js +5 -3
- package/lib/commonjs/debug/exportBridge.js.map +1 -1
- package/lib/commonjs/debug/hostResolver.js +2 -2
- package/lib/commonjs/debug/hostResolver.js.map +1 -1
- package/lib/commonjs/debug/perfWiring.js +4 -4
- package/lib/commonjs/debug/perfWiring.js.map +1 -1
- package/lib/commonjs/debug/replayWiring.js +5 -5
- package/lib/commonjs/debug/replayWiring.js.map +1 -1
- package/lib/commonjs/debug/screenTracking.js +2 -2
- package/lib/commonjs/debug/screenTracking.js.map +1 -1
- package/lib/commonjs/debug/sessionWiring.js +2 -2
- package/lib/commonjs/debug/sessionWiring.js.map +1 -1
- package/lib/commonjs/features/crash/NativeCrashFeature.js +1 -1
- package/lib/commonjs/features/crash/NativeCrashFeature.js.map +1 -1
- package/lib/commonjs/features/crash/globalHandler.js +3 -3
- package/lib/commonjs/features/crash/globalHandler.js.map +1 -1
- package/lib/commonjs/features/crash/nativeCrashBridge.js +7 -7
- package/lib/commonjs/features/crash/nativeCrashBridge.js.map +1 -1
- package/lib/commonjs/features/crash/rejectionHandler.js +2 -2
- package/lib/commonjs/features/crash/rejectionHandler.js.map +1 -1
- package/lib/commonjs/features/engage/EngageArchetypeRenderers.js +0 -9
- package/lib/commonjs/features/engage/EngageArchetypeRenderers.js.map +1 -1
- package/lib/commonjs/features/engage/EngageInAppView.js +1 -1
- package/lib/commonjs/features/engage/EngageInAppView.js.map +1 -1
- package/lib/commonjs/features/engage/EngagePromptProvider.js +17 -17
- package/lib/commonjs/features/engage/EngagePromptProvider.js.map +1 -1
- package/lib/commonjs/features/engage/EngageTransport.js +5 -5
- package/lib/commonjs/features/engage/EngageTransport.js.map +1 -1
- package/lib/commonjs/features/engage/engagePushTokenBridge.js +4 -4
- package/lib/commonjs/features/engage/engagePushTokenBridge.js.map +1 -1
- package/lib/commonjs/features/engage/engageShakeBridge.js +2 -2
- package/lib/commonjs/features/engage/engageShakeBridge.js.map +1 -1
- package/lib/commonjs/features/engage/engageSignals.js +1 -1
- package/lib/commonjs/features/engage/engageSignals.js.map +1 -1
- package/lib/commonjs/features/engage/engageStoreReviewBridge.js +2 -2
- package/lib/commonjs/features/engage/engageStoreReviewBridge.js.map +1 -1
- package/lib/commonjs/features/engage/engageTestSeenStore.js +1 -1
- package/lib/commonjs/features/engage/engageTestSeenStore.js.map +1 -1
- package/lib/commonjs/features/engage/engageThrottle.js +4 -4
- package/lib/commonjs/features/engage/engageThrottle.js.map +1 -1
- package/lib/commonjs/features/engage/engageTriggerEngine.js +4 -4
- package/lib/commonjs/features/engage/engageTriggerEngine.js.map +1 -1
- package/lib/commonjs/features/engage/engageWindowInsets.js +1 -1
- package/lib/commonjs/features/engage/engageWindowInsets.js.map +1 -1
- package/lib/commonjs/features/install-referrer/installReferrer.js +3 -3
- package/lib/commonjs/features/install-referrer/installReferrer.js.map +1 -1
- package/lib/commonjs/features/journey/calibrationContext.js +0 -9
- package/lib/commonjs/features/journey/calibrationContext.js.map +1 -1
- package/lib/commonjs/features/journey/journeyManager.js +4 -1
- package/lib/commonjs/features/journey/journeyManager.js.map +1 -1
- package/lib/commonjs/features/navigation/AutoScreenDetector.js +4 -4
- package/lib/commonjs/features/navigation/AutoScreenDetector.js.map +1 -1
- package/lib/commonjs/features/ota/OtaOrchestrator.js +18 -18
- package/lib/commonjs/features/ota/OtaOrchestrator.js.map +1 -1
- package/lib/commonjs/features/ota/geoCountry.js +2 -2
- package/lib/commonjs/features/ota/geoCountry.js.map +1 -1
- package/lib/commonjs/features/ota/retry.js +2 -2
- package/lib/commonjs/features/ota/retry.js.map +1 -1
- package/lib/commonjs/features/replay/core/logger/logger.js +0 -4
- package/lib/commonjs/features/replay/core/logger/logger.js.map +1 -1
- package/lib/commonjs/features/replay/integrations/network/networkAdapter.js +1 -54
- package/lib/commonjs/features/replay/integrations/network/networkAdapter.js.map +1 -1
- package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js +1 -1
- package/lib/commonjs/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
- package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js +1 -1
- package/lib/commonjs/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
- package/lib/commonjs/features/replay/pipeline/batching/batchManager.js +1 -1
- package/lib/commonjs/features/replay/pipeline/batching/batchManager.js.map +1 -1
- package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js +1 -1
- package/lib/commonjs/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
- package/lib/commonjs/features/replay/public/api.js +7 -7
- package/lib/commonjs/features/replay/public/api.js.map +1 -1
- package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js +9 -9
- package/lib/commonjs/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
- package/lib/commonjs/features/session/BackendSessionAdapter.js +41 -41
- package/lib/commonjs/features/session/BackendSessionAdapter.js.map +1 -1
- package/lib/commonjs/features/session/DesktopSessionTransport.js +5 -2
- package/lib/commonjs/features/session/DesktopSessionTransport.js.map +1 -1
- package/lib/commonjs/features/session/JourneyEventPipeline.js +1 -1
- package/lib/commonjs/features/session/JourneyEventPipeline.js.map +1 -1
- package/lib/commonjs/features/session/ReplayCaptureManager.js +14 -14
- package/lib/commonjs/features/session/ReplayCaptureManager.js.map +1 -1
- package/lib/commonjs/features/session/SessionManager.js +9 -9
- package/lib/commonjs/features/session/SessionManager.js.map +1 -1
- package/lib/commonjs/features/session/SyncDecisionEngine.js +1 -1
- package/lib/commonjs/features/session/SyncDecisionEngine.js.map +1 -1
- package/lib/commonjs/features/skan/skanBridge.js +6 -15
- package/lib/commonjs/features/skan/skanBridge.js.map +1 -1
- package/lib/commonjs/features/skan/skanConversionManager.js +5 -5
- package/lib/commonjs/features/skan/skanConversionManager.js.map +1 -1
- package/lib/commonjs/integrations/fetch/fetchInterceptor.js +1 -1
- package/lib/commonjs/integrations/fetch/fetchInterceptor.js.map +1 -1
- package/lib/commonjs/integrations/xhr/xhrInterceptor.js +1 -1
- package/lib/commonjs/integrations/xhr/xhrInterceptor.js.map +1 -1
- package/lib/commonjs/metro/composeSourceMap.js +105 -0
- package/lib/commonjs/metro/composeSourceMap.js.map +1 -0
- package/lib/commonjs/metro/featureModules.js +131 -0
- package/lib/commonjs/metro/featureModules.js.map +1 -0
- package/lib/commonjs/metro/index.js +123 -2
- package/lib/commonjs/metro/index.js.map +1 -1
- package/lib/commonjs/metro/serializerCompose.js +129 -0
- package/lib/commonjs/metro/serializerCompose.js.map +1 -0
- package/lib/commonjs/pipeline/dispatcher/dispatcher.js +1 -1
- package/lib/commonjs/pipeline/dispatcher/dispatcher.js.map +1 -1
- package/lib/commonjs/pipeline/queue/flushQueue.js +2 -2
- package/lib/commonjs/pipeline/queue/flushQueue.js.map +1 -1
- package/lib/commonjs/pipeline/queue/persistentQueue.js +6 -37
- package/lib/commonjs/pipeline/queue/persistentQueue.js.map +1 -1
- package/lib/commonjs/pipeline/scheduler/flushScheduler.js +1 -1
- package/lib/commonjs/pipeline/scheduler/flushScheduler.js.map +1 -1
- package/lib/commonjs/public/ScaleBunFacade.js +15 -15
- package/lib/commonjs/public/ScaleBunFacade.js.map +1 -1
- package/lib/commonjs/push/PushManager.js +3 -3
- package/lib/commonjs/push/PushManager.js.map +1 -1
- package/lib/commonjs/push/adapters/NativeBridgeAdapter.js +1 -1
- package/lib/commonjs/push/adapters/NativeBridgeAdapter.js.map +1 -1
- package/lib/commonjs/push/native/nativeNotifications.js +7 -18
- package/lib/commonjs/push/native/nativeNotifications.js.map +1 -1
- package/lib/commonjs/storage/StorageBackend.js +1 -1
- package/lib/commonjs/storage/StorageBackend.js.map +1 -1
- package/lib/module/bootstrap/FeatureRegistry.js +4 -4
- package/lib/module/bootstrap/FeatureRegistry.js.map +1 -1
- package/lib/module/bootstrap/SDKBootstrapper.js +8 -8
- package/lib/module/bootstrap/SDKBootstrapper.js.map +1 -1
- package/lib/module/core/config/schema.js +411 -231
- package/lib/module/core/config/schema.js.map +1 -1
- package/lib/module/core/constants/protocol.js +25 -0
- package/lib/module/core/constants/protocol.js.map +1 -0
- package/lib/module/core/constants/timings.js +3 -1
- package/lib/module/core/constants/timings.js.map +1 -1
- package/lib/module/core/lifecycle/appLifecycle.js +1 -1
- package/lib/module/core/lifecycle/appLifecycle.js.map +1 -1
- package/lib/module/debug/bootstrap.js +30 -9
- package/lib/module/debug/bootstrap.js.map +1 -1
- package/lib/module/debug/exportBridge.js +5 -3
- package/lib/module/debug/exportBridge.js.map +1 -1
- package/lib/module/debug/hostResolver.js +2 -2
- package/lib/module/debug/hostResolver.js.map +1 -1
- package/lib/module/debug/perfWiring.js +4 -4
- package/lib/module/debug/perfWiring.js.map +1 -1
- package/lib/module/debug/replayWiring.js +5 -5
- package/lib/module/debug/replayWiring.js.map +1 -1
- package/lib/module/debug/screenTracking.js +2 -2
- package/lib/module/debug/screenTracking.js.map +1 -1
- package/lib/module/debug/sessionWiring.js +2 -2
- package/lib/module/debug/sessionWiring.js.map +1 -1
- package/lib/module/features/crash/NativeCrashFeature.js +1 -1
- package/lib/module/features/crash/NativeCrashFeature.js.map +1 -1
- package/lib/module/features/crash/globalHandler.js +3 -3
- package/lib/module/features/crash/globalHandler.js.map +1 -1
- package/lib/module/features/crash/nativeCrashBridge.js +7 -7
- package/lib/module/features/crash/nativeCrashBridge.js.map +1 -1
- package/lib/module/features/crash/rejectionHandler.js +2 -2
- package/lib/module/features/crash/rejectionHandler.js.map +1 -1
- package/lib/module/features/engage/EngageArchetypeRenderers.js +0 -8
- package/lib/module/features/engage/EngageArchetypeRenderers.js.map +1 -1
- package/lib/module/features/engage/EngageInAppView.js +1 -1
- package/lib/module/features/engage/EngageInAppView.js.map +1 -1
- package/lib/module/features/engage/EngagePromptProvider.js +17 -17
- package/lib/module/features/engage/EngagePromptProvider.js.map +1 -1
- package/lib/module/features/engage/EngageTransport.js +5 -5
- package/lib/module/features/engage/EngageTransport.js.map +1 -1
- package/lib/module/features/engage/engagePushTokenBridge.js +4 -4
- package/lib/module/features/engage/engagePushTokenBridge.js.map +1 -1
- package/lib/module/features/engage/engageShakeBridge.js +2 -2
- package/lib/module/features/engage/engageShakeBridge.js.map +1 -1
- package/lib/module/features/engage/engageSignals.js +1 -1
- package/lib/module/features/engage/engageSignals.js.map +1 -1
- package/lib/module/features/engage/engageStoreReviewBridge.js +2 -2
- package/lib/module/features/engage/engageStoreReviewBridge.js.map +1 -1
- package/lib/module/features/engage/engageTestSeenStore.js +1 -1
- package/lib/module/features/engage/engageTestSeenStore.js.map +1 -1
- package/lib/module/features/engage/engageThrottle.js +4 -4
- package/lib/module/features/engage/engageThrottle.js.map +1 -1
- package/lib/module/features/engage/engageTriggerEngine.js +4 -4
- package/lib/module/features/engage/engageTriggerEngine.js.map +1 -1
- package/lib/module/features/engage/engageWindowInsets.js +1 -1
- package/lib/module/features/engage/engageWindowInsets.js.map +1 -1
- package/lib/module/features/install-referrer/installReferrer.js +3 -3
- package/lib/module/features/install-referrer/installReferrer.js.map +1 -1
- package/lib/module/features/journey/calibrationContext.js +0 -8
- package/lib/module/features/journey/calibrationContext.js.map +1 -1
- package/lib/module/features/journey/journeyManager.js +3 -1
- package/lib/module/features/journey/journeyManager.js.map +1 -1
- package/lib/module/features/navigation/AutoScreenDetector.js +4 -4
- package/lib/module/features/navigation/AutoScreenDetector.js.map +1 -1
- package/lib/module/features/ota/OtaOrchestrator.js +18 -18
- package/lib/module/features/ota/OtaOrchestrator.js.map +1 -1
- package/lib/module/features/ota/geoCountry.js +2 -2
- package/lib/module/features/ota/geoCountry.js.map +1 -1
- package/lib/module/features/ota/retry.js +2 -2
- package/lib/module/features/ota/retry.js.map +1 -1
- package/lib/module/features/replay/core/logger/logger.js +0 -3
- package/lib/module/features/replay/core/logger/logger.js.map +1 -1
- package/lib/module/features/replay/integrations/network/networkAdapter.js +1 -52
- package/lib/module/features/replay/integrations/network/networkAdapter.js.map +1 -1
- package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js +1 -1
- package/lib/module/features/replay/integrations/react-navigation/navigationIntegration.js.map +1 -1
- package/lib/module/features/replay/integrations/touch/ReplayRoot.js +1 -1
- package/lib/module/features/replay/integrations/touch/ReplayRoot.js.map +1 -1
- package/lib/module/features/replay/pipeline/batching/batchManager.js +1 -1
- package/lib/module/features/replay/pipeline/batching/batchManager.js.map +1 -1
- package/lib/module/features/replay/pipeline/retry/retryPolicy.js +1 -1
- package/lib/module/features/replay/pipeline/retry/retryPolicy.js.map +1 -1
- package/lib/module/features/replay/public/api.js +7 -7
- package/lib/module/features/replay/public/api.js.map +1 -1
- package/lib/module/features/replay/replay/session/sessionOrchestrator.js +9 -9
- package/lib/module/features/replay/replay/session/sessionOrchestrator.js.map +1 -1
- package/lib/module/features/session/BackendSessionAdapter.js +41 -41
- package/lib/module/features/session/BackendSessionAdapter.js.map +1 -1
- package/lib/module/features/session/DesktopSessionTransport.js +4 -2
- package/lib/module/features/session/DesktopSessionTransport.js.map +1 -1
- package/lib/module/features/session/JourneyEventPipeline.js +1 -1
- package/lib/module/features/session/JourneyEventPipeline.js.map +1 -1
- package/lib/module/features/session/ReplayCaptureManager.js +14 -14
- package/lib/module/features/session/ReplayCaptureManager.js.map +1 -1
- package/lib/module/features/session/SessionManager.js +9 -9
- package/lib/module/features/session/SessionManager.js.map +1 -1
- package/lib/module/features/session/SyncDecisionEngine.js +1 -1
- package/lib/module/features/session/SyncDecisionEngine.js.map +1 -1
- package/lib/module/features/skan/skanBridge.js +6 -14
- package/lib/module/features/skan/skanBridge.js.map +1 -1
- package/lib/module/features/skan/skanConversionManager.js +5 -5
- package/lib/module/features/skan/skanConversionManager.js.map +1 -1
- package/lib/module/integrations/fetch/fetchInterceptor.js +1 -1
- package/lib/module/integrations/fetch/fetchInterceptor.js.map +1 -1
- package/lib/module/integrations/xhr/xhrInterceptor.js +1 -1
- package/lib/module/integrations/xhr/xhrInterceptor.js.map +1 -1
- package/lib/module/metro/composeSourceMap.js +97 -0
- package/lib/module/metro/composeSourceMap.js.map +1 -0
- package/lib/module/metro/featureModules.js +123 -0
- package/lib/module/metro/featureModules.js.map +1 -0
- package/lib/module/metro/index.js +122 -2
- package/lib/module/metro/index.js.map +1 -1
- package/lib/module/metro/serializerCompose.js +120 -0
- package/lib/module/metro/serializerCompose.js.map +1 -0
- package/lib/module/pipeline/dispatcher/dispatcher.js +1 -1
- package/lib/module/pipeline/dispatcher/dispatcher.js.map +1 -1
- package/lib/module/pipeline/queue/flushQueue.js +2 -2
- package/lib/module/pipeline/queue/flushQueue.js.map +1 -1
- package/lib/module/pipeline/queue/persistentQueue.js +6 -36
- package/lib/module/pipeline/queue/persistentQueue.js.map +1 -1
- package/lib/module/pipeline/scheduler/flushScheduler.js +1 -1
- package/lib/module/pipeline/scheduler/flushScheduler.js.map +1 -1
- package/lib/module/public/ScaleBunFacade.js +15 -15
- package/lib/module/public/ScaleBunFacade.js.map +1 -1
- package/lib/module/push/PushManager.js +3 -3
- package/lib/module/push/PushManager.js.map +1 -1
- package/lib/module/push/adapters/NativeBridgeAdapter.js +1 -1
- package/lib/module/push/adapters/NativeBridgeAdapter.js.map +1 -1
- package/lib/module/push/native/nativeNotifications.js +7 -17
- package/lib/module/push/native/nativeNotifications.js.map +1 -1
- package/lib/module/storage/StorageBackend.js +1 -1
- package/lib/module/storage/StorageBackend.js.map +1 -1
- package/lib/typescript/core/config/schema.d.ts +61 -40
- package/lib/typescript/core/config/schema.d.ts.map +1 -1
- package/lib/typescript/core/constants/protocol.d.ts +23 -0
- package/lib/typescript/core/constants/protocol.d.ts.map +1 -0
- package/lib/typescript/core/constants/timings.d.ts +1 -1
- package/lib/typescript/core/constants/timings.d.ts.map +1 -1
- package/lib/typescript/debug/bootstrap.d.ts +0 -1
- package/lib/typescript/debug/bootstrap.d.ts.map +1 -1
- package/lib/typescript/debug/exportBridge.d.ts.map +1 -1
- package/lib/typescript/features/engage/EngageArchetypeRenderers.d.ts +0 -2
- package/lib/typescript/features/engage/EngageArchetypeRenderers.d.ts.map +1 -1
- package/lib/typescript/features/journey/calibrationContext.d.ts +0 -1
- package/lib/typescript/features/journey/calibrationContext.d.ts.map +1 -1
- package/lib/typescript/features/journey/journeyManager.d.ts.map +1 -1
- package/lib/typescript/features/replay/core/logger/logger.d.ts +0 -1
- package/lib/typescript/features/replay/core/logger/logger.d.ts.map +1 -1
- package/lib/typescript/features/replay/integrations/network/networkAdapter.d.ts +0 -10
- package/lib/typescript/features/replay/integrations/network/networkAdapter.d.ts.map +1 -1
- package/lib/typescript/features/session/DesktopSessionTransport.d.ts.map +1 -1
- package/lib/typescript/features/skan/skanBridge.d.ts +0 -2
- package/lib/typescript/features/skan/skanBridge.d.ts.map +1 -1
- package/lib/typescript/metro/composeSourceMap.d.ts +26 -0
- package/lib/typescript/metro/composeSourceMap.d.ts.map +1 -0
- package/lib/typescript/metro/featureModules.d.ts +49 -0
- package/lib/typescript/metro/featureModules.d.ts.map +1 -0
- package/lib/typescript/metro/index.d.ts +22 -0
- package/lib/typescript/metro/index.d.ts.map +1 -1
- package/lib/typescript/metro/serializerCompose.d.ts +46 -0
- package/lib/typescript/metro/serializerCompose.d.ts.map +1 -0
- package/lib/typescript/pipeline/queue/persistentQueue.d.ts +0 -10
- package/lib/typescript/pipeline/queue/persistentQueue.d.ts.map +1 -1
- package/lib/typescript/push/native/nativeNotifications.d.ts +0 -6
- package/lib/typescript/push/native/nativeNotifications.d.ts.map +1 -1
- package/package.json +15 -11
- package/src/bootstrap/FeatureRegistry.ts +4 -4
- package/src/bootstrap/SDKBootstrapper.ts +8 -8
- package/src/core/config/schema.ts +353 -235
- package/src/core/constants/protocol.ts +24 -0
- package/src/core/constants/timings.ts +3 -1
- package/src/core/lifecycle/appLifecycle.ts +1 -1
- package/src/debug/bootstrap.ts +40 -7
- package/src/debug/exportBridge.ts +5 -3
- package/src/debug/hostResolver.ts +2 -2
- package/src/debug/perfWiring.ts +4 -4
- package/src/debug/replayWiring.ts +5 -5
- package/src/debug/screenTracking.ts +2 -2
- package/src/debug/sessionWiring.ts +2 -2
- package/src/features/crash/NativeCrashFeature.ts +1 -1
- package/src/features/crash/globalHandler.ts +3 -3
- package/src/features/crash/nativeCrashBridge.ts +7 -7
- package/src/features/crash/rejectionHandler.ts +2 -2
- package/src/features/engage/EngageArchetypeRenderers.tsx +0 -11
- package/src/features/engage/EngageInAppView.tsx +1 -1
- package/src/features/engage/EngagePromptProvider.tsx +17 -17
- package/src/features/engage/EngageTransport.ts +5 -5
- package/src/features/engage/engagePushTokenBridge.ts +4 -4
- package/src/features/engage/engageShakeBridge.ts +2 -2
- package/src/features/engage/engageSignals.ts +1 -1
- package/src/features/engage/engageStoreReviewBridge.ts +2 -2
- package/src/features/engage/engageTestSeenStore.ts +1 -1
- package/src/features/engage/engageThrottle.ts +4 -4
- package/src/features/engage/engageTriggerEngine.ts +4 -4
- package/src/features/engage/engageWindowInsets.ts +1 -1
- package/src/features/install-referrer/installReferrer.ts +3 -3
- package/src/features/journey/calibrationContext.ts +0 -9
- package/src/features/journey/journeyManager.ts +3 -1
- package/src/features/navigation/AutoScreenDetector.ts +4 -4
- package/src/features/ota/OtaOrchestrator.ts +18 -18
- package/src/features/ota/geoCountry.ts +2 -2
- package/src/features/ota/retry.ts +2 -2
- package/src/features/replay/core/logger/logger.ts +0 -4
- package/src/features/replay/integrations/network/networkAdapter.ts +1 -56
- package/src/features/replay/integrations/react-navigation/navigationIntegration.ts +1 -1
- package/src/features/replay/integrations/touch/ReplayRoot.tsx +1 -1
- package/src/features/replay/pipeline/batching/batchManager.ts +1 -1
- package/src/features/replay/pipeline/retry/retryPolicy.ts +1 -1
- package/src/features/replay/public/api.ts +7 -7
- package/src/features/replay/replay/session/sessionOrchestrator.ts +9 -9
- package/src/features/session/BackendSessionAdapter.ts +41 -41
- package/src/features/session/DesktopSessionTransport.ts +4 -2
- package/src/features/session/JourneyEventPipeline.ts +1 -1
- package/src/features/session/ReplayCaptureManager.ts +14 -14
- package/src/features/session/SessionManager.ts +9 -9
- package/src/features/session/SyncDecisionEngine.ts +1 -1
- package/src/features/skan/skanBridge.ts +6 -14
- package/src/features/skan/skanConversionManager.ts +5 -5
- package/src/integrations/fetch/fetchInterceptor.ts +1 -1
- package/src/integrations/xhr/xhrInterceptor.ts +1 -1
- package/src/metro/composeSourceMap.ts +104 -0
- package/src/metro/featureModules.ts +143 -0
- package/src/metro/index.ts +173 -1
- package/src/metro/serializerCompose.ts +157 -0
- package/src/pipeline/dispatcher/dispatcher.ts +1 -1
- package/src/pipeline/queue/flushQueue.ts +2 -2
- package/src/pipeline/queue/persistentQueue.ts +6 -35
- package/src/pipeline/scheduler/flushScheduler.ts +1 -1
- package/src/public/ScaleBunFacade.ts +15 -15
- package/src/push/PushManager.ts +3 -3
- package/src/push/adapters/NativeBridgeAdapter.ts +1 -1
- package/src/push/native/nativeNotifications.ts +7 -16
- package/src/storage/StorageBackend.ts +1 -1
|
@@ -87,7 +87,7 @@ export class PersistentQueue {
|
|
|
87
87
|
this.config = { ...DEFAULT_PERSISTENCE_CONFIG, ...config };
|
|
88
88
|
this.meta = this._loadMeta();
|
|
89
89
|
|
|
90
|
-
logger.debug(
|
|
90
|
+
__DEV__ && logger.debug(
|
|
91
91
|
`[PersistentQueue] Initialized: count=${this.meta.count}, ` +
|
|
92
92
|
`bytes=${this.meta.totalBytes}, head=${this.meta.head}, tail=${this.meta.tail}`,
|
|
93
93
|
);
|
|
@@ -150,7 +150,7 @@ export class PersistentQueue {
|
|
|
150
150
|
this.meta.totalBytes -= raw.length;
|
|
151
151
|
} else {
|
|
152
152
|
// Gap — entry was already evicted or corrupted
|
|
153
|
-
logger.debug(`[PersistentQueue] Missing entry at seq=${seq}`);
|
|
153
|
+
__DEV__ && logger.debug(`[PersistentQueue] Missing entry at seq=${seq}`);
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
|
|
@@ -224,7 +224,7 @@ export class PersistentQueue {
|
|
|
224
224
|
drainLeftovers(): Envelope[] {
|
|
225
225
|
if (this.meta.count === 0) return [];
|
|
226
226
|
|
|
227
|
-
logger.info(
|
|
227
|
+
__DEV__ && logger.info(
|
|
228
228
|
`[PersistentQueue] Draining ${this.meta.count} leftover envelopes ` +
|
|
229
229
|
`from previous run (${this.meta.totalBytes} bytes)`,
|
|
230
230
|
);
|
|
@@ -311,7 +311,7 @@ export class PersistentQueue {
|
|
|
311
311
|
totalBytes,
|
|
312
312
|
};
|
|
313
313
|
|
|
314
|
-
logger.info(
|
|
314
|
+
__DEV__ && logger.info(
|
|
315
315
|
`[PersistentQueue] Recovered metadata: ${meta.count} entries, ` +
|
|
316
316
|
`head=${meta.head}, tail=${meta.tail}, bytes=${meta.totalBytes}`,
|
|
317
317
|
);
|
|
@@ -381,34 +381,5 @@ export class PersistentQueue {
|
|
|
381
381
|
}
|
|
382
382
|
}
|
|
383
383
|
|
|
384
|
-
//
|
|
385
|
-
|
|
386
|
-
/**
|
|
387
|
-
* Create a PersistentQueue with the best available backend.
|
|
388
|
-
*
|
|
389
|
-
* If persistence is disabled in config, uses MemoryBackend.
|
|
390
|
-
* Otherwise uses the shared first-party durable backend from createStorageBackend().
|
|
391
|
-
*
|
|
392
|
-
* @param config - Persistence config from SDK init
|
|
393
|
-
* @param backend - Override backend (for tests). If provided, skips auto-detection.
|
|
394
|
-
*/
|
|
395
|
-
export function createPersistentQueue(
|
|
396
|
-
config: Partial<PersistenceConfig> = {},
|
|
397
|
-
backend?: StorageBackend,
|
|
398
|
-
): PersistentQueue {
|
|
399
|
-
if (backend) {
|
|
400
|
-
return new PersistentQueue(backend, config);
|
|
401
|
-
}
|
|
402
|
-
|
|
403
|
-
const mergedConfig = { ...DEFAULT_PERSISTENCE_CONFIG, ...config };
|
|
404
|
-
|
|
405
|
-
if (!mergedConfig.enabled) {
|
|
406
|
-
logger.info('[PersistentQueue] Persistence disabled — using in-memory queue');
|
|
407
|
-
const { MemoryBackend } = require('../../storage/StorageBackend');
|
|
408
|
-
return new PersistentQueue(new MemoryBackend(), mergedConfig);
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
const { createStorageBackend } = require('../../storage/StorageBackend');
|
|
412
|
-
const autoBackend = createStorageBackend();
|
|
413
|
-
return new PersistentQueue(autoBackend, mergedConfig);
|
|
414
|
-
}
|
|
384
|
+
// (A createPersistentQueue factory used to live here; every construction site builds
|
|
385
|
+
// PersistentQueue directly with an explicit backend, so the factory was verified dead and removed.)
|
|
@@ -16,7 +16,7 @@ export class FlushScheduler {
|
|
|
16
16
|
// Skip if the previous tick's flush hasn't settled — avoids
|
|
17
17
|
// overlapping flushes piling up when the network is slow.
|
|
18
18
|
if (this.running) {
|
|
19
|
-
logger.debug('[FlushScheduler] Previous flush still running — skipping tick');
|
|
19
|
+
__DEV__ && logger.debug('[FlushScheduler] Previous flush still running — skipping tick');
|
|
20
20
|
return;
|
|
21
21
|
}
|
|
22
22
|
this.running = true;
|
|
@@ -234,7 +234,7 @@ class ScaleBunFacade {
|
|
|
234
234
|
const realQueue = coreContainer.get<PersistentQueue>('PersistentQueue');
|
|
235
235
|
const buffered = this._preInitBuffer.popBatch(this._preInitBuffer.length());
|
|
236
236
|
if (buffered.length > 0) {
|
|
237
|
-
logger.debug(`[ScaleBun] Draining ${buffered.length} pre-init events into persistent queue`);
|
|
237
|
+
__DEV__ && logger.debug(`[ScaleBun] Draining ${buffered.length} pre-init events into persistent queue`);
|
|
238
238
|
for (const envelope of buffered) {
|
|
239
239
|
realQueue.add(envelope);
|
|
240
240
|
}
|
|
@@ -315,7 +315,7 @@ class ScaleBunFacade {
|
|
|
315
315
|
if (!dbgConfig) return;
|
|
316
316
|
(dbgConfig as any).__skipDeprecationWarning = true;
|
|
317
317
|
this.enableDebug(dbgConfig);
|
|
318
|
-
logger.info('[ScaleBun] Debug auto-connected via init({ debug }).');
|
|
318
|
+
__DEV__ && logger.info('[ScaleBun] Debug auto-connected via init({ debug }).');
|
|
319
319
|
} catch (err: any) {
|
|
320
320
|
logger.warn('[ScaleBun] Auto debug connection failed:', err?.message);
|
|
321
321
|
}
|
|
@@ -332,7 +332,7 @@ class ScaleBunFacade {
|
|
|
332
332
|
const apiBaseUrl = this._apiBaseUrl;
|
|
333
333
|
if (!enabled || !appId || !clientKey || !apiBaseUrl) {
|
|
334
334
|
if (enabled && !appId) {
|
|
335
|
-
logger.info('[ScaleBun] Envelope event tracking disabled — no appId in init config.');
|
|
335
|
+
__DEV__ && logger.info('[ScaleBun] Envelope event tracking disabled — no appId in init config.');
|
|
336
336
|
}
|
|
337
337
|
return;
|
|
338
338
|
}
|
|
@@ -381,7 +381,7 @@ class ScaleBunFacade {
|
|
|
381
381
|
onEvent: (eventName, revenue) => this._skanManager?.onEvent(eventName, revenue),
|
|
382
382
|
});
|
|
383
383
|
this._eventTracker.start();
|
|
384
|
-
logger.info('[ScaleBun] Envelope event tracking started → /v1/batch.');
|
|
384
|
+
__DEV__ && logger.info('[ScaleBun] Envelope event tracking started → /v1/batch.');
|
|
385
385
|
|
|
386
386
|
// Android: capture the Play Install Referrer once per install → feeds the
|
|
387
387
|
// deterministic click_id path + a one-off install_referrer event (UTM/gclid).
|
|
@@ -904,7 +904,7 @@ class ScaleBunFacade {
|
|
|
904
904
|
const cfg = await (this._getEngageTransport()?.fetchEngageConfig(context) ?? Promise.resolve(null));
|
|
905
905
|
const messages = cfg?.inAppMessages ?? [];
|
|
906
906
|
const previews = messages.filter((m) => m.preview === true || m.isTest === true);
|
|
907
|
-
logger.info(
|
|
907
|
+
__DEV__ && logger.info(
|
|
908
908
|
`[Engage] debugFetchInAppMessages → ${messages.length} message(s), ${previews.length} test preview(s)`,
|
|
909
909
|
);
|
|
910
910
|
return messages;
|
|
@@ -1215,7 +1215,7 @@ class ScaleBunFacade {
|
|
|
1215
1215
|
logger.warn('SDK not initialized. Event dropped:', name);
|
|
1216
1216
|
return;
|
|
1217
1217
|
}
|
|
1218
|
-
logger.debug('Tracking event:', name);
|
|
1218
|
+
__DEV__ && logger.debug('Tracking event:', name);
|
|
1219
1219
|
|
|
1220
1220
|
// Fan this event out to the Engage trigger engine. Same single funnel,
|
|
1221
1221
|
// extra observer — lets behavioral triggers (custom_event, failed_action,
|
|
@@ -1355,7 +1355,7 @@ class ScaleBunFacade {
|
|
|
1355
1355
|
]);
|
|
1356
1356
|
return;
|
|
1357
1357
|
}
|
|
1358
|
-
logger.debug('Flushing events from persistent queue...');
|
|
1358
|
+
__DEV__ && logger.debug('Flushing events from persistent queue...');
|
|
1359
1359
|
const httpClient = coreContainer.get<HttpClient>('HttpClient');
|
|
1360
1360
|
await flushQueue(this._getQueue(), httpClient, getDeviceId());
|
|
1361
1361
|
});
|
|
@@ -1383,10 +1383,10 @@ class ScaleBunFacade {
|
|
|
1383
1383
|
const bootstrapPerfFeature = _getPerformanceFeature();
|
|
1384
1384
|
if (bootstrapPerfFeature) {
|
|
1385
1385
|
this._performanceFeature = bootstrapPerfFeature;
|
|
1386
|
-
logger.debug('Performance feature linked from bootstrap');
|
|
1386
|
+
__DEV__ && logger.debug('Performance feature linked from bootstrap');
|
|
1387
1387
|
}
|
|
1388
1388
|
|
|
1389
|
-
logger.info('Debug enabled');
|
|
1389
|
+
__DEV__ && logger.info('Debug enabled');
|
|
1390
1390
|
});
|
|
1391
1391
|
}
|
|
1392
1392
|
|
|
@@ -1541,14 +1541,14 @@ class ScaleBunFacade {
|
|
|
1541
1541
|
return false;
|
|
1542
1542
|
}
|
|
1543
1543
|
sm.startSession(metadata as Parameters<SessionManager['startSession']>[0]);
|
|
1544
|
-
logger.info('session.start() ✅ sessionId:', sm.currentSessionId);
|
|
1544
|
+
__DEV__ && logger.info('session.start() ✅ sessionId:', sm.currentSessionId);
|
|
1545
1545
|
return true;
|
|
1546
1546
|
},
|
|
1547
1547
|
end: (reason?: 'ended' | 'timeout'): boolean => {
|
|
1548
1548
|
const sm = SessionManager.getExistingInstance();
|
|
1549
1549
|
if (!sm || !sm.isActive) return false;
|
|
1550
1550
|
sm.endSession(reason);
|
|
1551
|
-
logger.info('session.end() ✅');
|
|
1551
|
+
__DEV__ && logger.info('session.end() ✅');
|
|
1552
1552
|
return true;
|
|
1553
1553
|
},
|
|
1554
1554
|
emitEvent: (type: string, data?: Record<string, unknown>) => {
|
|
@@ -1604,13 +1604,13 @@ class ScaleBunFacade {
|
|
|
1604
1604
|
/** Set SDK-wide privacy settings for report generation. */
|
|
1605
1605
|
setPrivacy: (config: PrivacyConfig): void => {
|
|
1606
1606
|
this._privacyConfig = { ...this._privacyConfig, ...config };
|
|
1607
|
-
logger.debug('[report] Privacy config updated');
|
|
1607
|
+
__DEV__ && logger.debug('[report] Privacy config updated');
|
|
1608
1608
|
},
|
|
1609
1609
|
|
|
1610
1610
|
/** Set branding for exported reports. */
|
|
1611
1611
|
setBranding: (config: BrandingConfig): void => {
|
|
1612
1612
|
this._brandingConfig = { ...this._brandingConfig, ...config };
|
|
1613
|
-
logger.debug('[report] Branding config updated');
|
|
1613
|
+
__DEV__ && logger.debug('[report] Branding config updated');
|
|
1614
1614
|
},
|
|
1615
1615
|
|
|
1616
1616
|
/** Get current privacy config. */
|
|
@@ -1661,9 +1661,9 @@ class ScaleBunFacade {
|
|
|
1661
1661
|
try {
|
|
1662
1662
|
const { AutoScreenDetector } = require('../features/navigation/AutoScreenDetector');
|
|
1663
1663
|
AutoScreenDetector.getInstance().setNavigationRef(ref);
|
|
1664
|
-
logger.info('[ScaleBun] Navigation ref set → auto screen detection active');
|
|
1664
|
+
__DEV__ && logger.info('[ScaleBun] Navigation ref set → auto screen detection active');
|
|
1665
1665
|
} catch (err: any) {
|
|
1666
|
-
logger.debug('[ScaleBun] Navigation ref stashed (detector not ready):', err?.message);
|
|
1666
|
+
__DEV__ && logger.debug('[ScaleBun] Navigation ref stashed (detector not ready):', err?.message);
|
|
1667
1667
|
}
|
|
1668
1668
|
});
|
|
1669
1669
|
}
|
package/src/push/PushManager.ts
CHANGED
|
@@ -89,7 +89,7 @@ export class PushManager {
|
|
|
89
89
|
return { ok: false, adapter: this.adapter.id, reason: this.reason };
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
logger.info('[push] adapter:', this.adapter.id, '—', selection.reason);
|
|
92
|
+
__DEV__ && logger.info('[push] adapter:', this.adapter.id, '—', selection.reason);
|
|
93
93
|
|
|
94
94
|
// 1) Permission
|
|
95
95
|
if (!options.skipPermissionRequest) {
|
|
@@ -215,7 +215,7 @@ export class PushManager {
|
|
|
215
215
|
*/
|
|
216
216
|
private async syncToken(token: string, force = false): Promise<any> {
|
|
217
217
|
if (!force && token === this.lastSyncedToken) {
|
|
218
|
-
logger.debug('[push] token unchanged since last registration — skipping');
|
|
218
|
+
__DEV__ && logger.debug('[push] token unchanged since last registration — skipping');
|
|
219
219
|
return { ok: true, skipped: true };
|
|
220
220
|
}
|
|
221
221
|
const platform = Platform.OS === 'ios' ? 'ios' : 'android';
|
|
@@ -224,7 +224,7 @@ export class PushManager {
|
|
|
224
224
|
// adapter is set (manual setToken before enable).
|
|
225
225
|
const pushProvider: PushProviderId =
|
|
226
226
|
this.adapter?.pushProvider() ?? (platform === 'ios' ? 'apns' : 'fcm');
|
|
227
|
-
logger.debug(`[push] registering device token with backend (provider=${pushProvider})`);
|
|
227
|
+
__DEV__ && logger.debug(`[push] registering device token with backend (provider=${pushProvider})`);
|
|
228
228
|
const res = await this.deps.registerToken({ pushToken: token, platform, pushProvider, tokenStatus: 'active' });
|
|
229
229
|
this.lastSyncedToken = token;
|
|
230
230
|
return res;
|
|
@@ -84,7 +84,7 @@ export class NativeBridgeAdapter implements PushAdapter {
|
|
|
84
84
|
public async createAndroidChannel(_channel: AndroidChannelConfig): Promise<void> {
|
|
85
85
|
// The native bridge has no JS channel API; FCM uses the manifest-declared
|
|
86
86
|
// fallback channel (default_notification_channel_id). No-op on iOS.
|
|
87
|
-
logger.debug('[push] native adapter relies on FCM fallback channel');
|
|
87
|
+
__DEV__ && logger.debug('[push] native adapter relies on FCM fallback channel');
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
public async getToken(): Promise<string | null> {
|
|
@@ -78,7 +78,7 @@ export async function ensureNativeChannel(config: {
|
|
|
78
78
|
config.description ?? null,
|
|
79
79
|
);
|
|
80
80
|
} catch (err: any) {
|
|
81
|
-
logger.debug(`[Push.native] ensureChannel failed (fail-soft): ${err?.message}`);
|
|
81
|
+
__DEV__ && logger.debug(`[Push.native] ensureChannel failed (fail-soft): ${err?.message}`);
|
|
82
82
|
return false;
|
|
83
83
|
}
|
|
84
84
|
}
|
|
@@ -102,7 +102,7 @@ export async function showNativeNotification(input: {
|
|
|
102
102
|
...(input.notificationId != null ? { notificationId: input.notificationId } : {}),
|
|
103
103
|
});
|
|
104
104
|
} catch (err: any) {
|
|
105
|
-
logger.debug(`[Push.native] showNotification failed (fail-soft): ${err?.message}`);
|
|
105
|
+
__DEV__ && logger.debug(`[Push.native] showNotification failed (fail-soft): ${err?.message}`);
|
|
106
106
|
return false;
|
|
107
107
|
}
|
|
108
108
|
}
|
|
@@ -124,7 +124,7 @@ export function subscribeNativeNotificationOpened(
|
|
|
124
124
|
);
|
|
125
125
|
return () => sub.remove();
|
|
126
126
|
} catch (err: any) {
|
|
127
|
-
logger.debug(`[Push.native] opened subscription failed (fail-soft): ${err?.message}`);
|
|
127
|
+
__DEV__ && logger.debug(`[Push.native] opened subscription failed (fail-soft): ${err?.message}`);
|
|
128
128
|
return () => {};
|
|
129
129
|
}
|
|
130
130
|
}
|
|
@@ -141,20 +141,11 @@ export async function consumeInitialNativeNotification(): Promise<Record<string,
|
|
|
141
141
|
if (!payload) return null;
|
|
142
142
|
return payload.data ?? {};
|
|
143
143
|
} catch (err: any) {
|
|
144
|
-
logger.debug(`[Push.native] consumeInitial failed (fail-soft): ${err?.message}`);
|
|
144
|
+
__DEV__ && logger.debug(`[Push.native] consumeInitial failed (fail-soft): ${err?.message}`);
|
|
145
145
|
return null;
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
/**
|
|
150
|
-
* iOS (UNUserNotificationCenter): the native module owns the full notification
|
|
151
|
-
* surface — request authorization, foreground presentation, taps, and cold-start.
|
|
152
|
-
* Presence == iOS ScaleBunEngage exposes the notification delegate methods.
|
|
153
|
-
*/
|
|
154
|
-
export function hasNativeNotificationDelegate(): boolean {
|
|
155
|
-
const mod = getModule();
|
|
156
|
-
return !!(mod?.requestPushPermission && mod?.consumeInitialNotification);
|
|
157
|
-
}
|
|
158
149
|
|
|
159
150
|
/**
|
|
160
151
|
* iOS: request notification authorization natively. Returns the normalized status
|
|
@@ -166,7 +157,7 @@ export async function requestNativePushPermission(): Promise<string | null> {
|
|
|
166
157
|
if (!mod?.requestPushPermission) return null;
|
|
167
158
|
return await mod.requestPushPermission();
|
|
168
159
|
} catch (err: any) {
|
|
169
|
-
logger.debug(`[Push.native] requestPushPermission failed (fail-soft): ${err?.message}`);
|
|
160
|
+
__DEV__ && logger.debug(`[Push.native] requestPushPermission failed (fail-soft): ${err?.message}`);
|
|
170
161
|
return null;
|
|
171
162
|
}
|
|
172
163
|
}
|
|
@@ -189,7 +180,7 @@ export function subscribeNativeForegroundNotification(
|
|
|
189
180
|
);
|
|
190
181
|
return () => sub.remove();
|
|
191
182
|
} catch (err: any) {
|
|
192
|
-
logger.debug(`[Push.native] foreground subscription failed (fail-soft): ${err?.message}`);
|
|
183
|
+
__DEV__ && logger.debug(`[Push.native] foreground subscription failed (fail-soft): ${err?.message}`);
|
|
193
184
|
return () => {};
|
|
194
185
|
}
|
|
195
186
|
}
|
|
@@ -210,7 +201,7 @@ export async function consumeInitialNativeNotificationFull(): Promise<NativeNoti
|
|
|
210
201
|
data: payload.data ?? {},
|
|
211
202
|
};
|
|
212
203
|
} catch (err: any) {
|
|
213
|
-
logger.debug(`[Push.native] consumeInitialFull failed (fail-soft): ${err?.message}`);
|
|
204
|
+
__DEV__ && logger.debug(`[Push.native] consumeInitialFull failed (fail-soft): ${err?.message}`);
|
|
214
205
|
return null;
|
|
215
206
|
}
|
|
216
207
|
}
|
|
@@ -244,7 +244,7 @@ export function createStorageBackend(): StorageBackend {
|
|
|
244
244
|
if (native) {
|
|
245
245
|
try {
|
|
246
246
|
sharedBackend = new NativeKVBackend(native);
|
|
247
|
-
logger.debug('[StorageBackend] Using native durable backend (ScaleBunStorage)');
|
|
247
|
+
__DEV__ && logger.debug('[StorageBackend] Using native durable backend (ScaleBunStorage)');
|
|
248
248
|
return sharedBackend;
|
|
249
249
|
} catch (e) {
|
|
250
250
|
logger.warn('[StorageBackend] Native durable store failed to initialize; ' +
|