@crumbsdk/react-native 0.0.1-rc.3 → 0.0.1-rc.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +280 -8
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/margelo/nitro/crumbsdk/reactnative/CrumbReactNative.kt +121 -3
- package/app.plugin.js +52 -0
- package/ios/CrumbReactNative.swift +135 -3
- package/lib/module/NativeCrumbReactNative.web.js +5 -1
- package/lib/module/NativeCrumbReactNative.web.js.map +1 -1
- package/lib/module/build-release.js +19 -0
- package/lib/module/build-release.js.map +1 -0
- package/lib/module/index.js +94 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/javascript-crash-capture.js +497 -0
- package/lib/module/javascript-crash-capture.js.map +1 -0
- package/lib/module/log-buffer.js +22 -2
- package/lib/module/log-buffer.js.map +1 -1
- package/lib/module/screen-context.js +127 -0
- package/lib/module/screen-context.js.map +1 -0
- package/lib/typescript/src/CrumbReactNative.nitro.d.ts +5 -1
- package/lib/typescript/src/CrumbReactNative.nitro.d.ts.map +1 -1
- package/lib/typescript/src/NativeCrumbReactNative.web.d.ts.map +1 -1
- package/lib/typescript/src/build-release.d.ts +6 -0
- package/lib/typescript/src/build-release.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +8 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/javascript-crash-capture.d.ts +74 -0
- package/lib/typescript/src/javascript-crash-capture.d.ts.map +1 -0
- package/lib/typescript/src/log-buffer.d.ts +1 -0
- package/lib/typescript/src/log-buffer.d.ts.map +1 -1
- package/lib/typescript/src/screen-context.d.ts +19 -0
- package/lib/typescript/src/screen-context.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +38 -0
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/metro.cjs +35 -0
- package/metro.d.cts +2 -0
- package/native/ios/CrumbSDKCore.podspec +28 -0
- package/native/ios/CrumbSDKUI.podspec +38 -0
- package/native/ios/LICENSE +201 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/Info.plist +96 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Info.plist +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Resources/Info.plist +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Resources/Info.plist +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Resources/Info.plist +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Info.plist +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeDirectory +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements-1 +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeResources +462 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeSignature +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Resources/Info.plist +48 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Resources/Info.plist +48 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Resources/Info.plist +48 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Resources/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Info.plist +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/CrashReporter +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/CrashReporter.h +366 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Info.plist +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Modules/module.modulemap +8 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeDirectory +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements-1 +0 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeResources +462 -0
- package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeSignature +0 -0
- package/native/ios/PLCrashReporter/LICENSE.txt +54 -0
- package/native/ios/PLCrashReporter/PLCrashReporter.podspec +19 -0
- package/native/ios/VERSION +1 -0
- package/native/ios/packages/ios/Sources/CrumbCore/Crumb.swift +108 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbConfiguration.swift +212 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbDiagnostics.swift +158 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbFailureStacks.swift +94 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbInfrastructureHealthProbe.swift +110 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptCrashRecovery.swift +136 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptCrashStore.swift +508 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptFailureContext.swift +166 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbLogs.swift +138 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbPolicy.swift +336 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbRendering.swift +68 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportEnvelope.swift +666 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportQueue.swift +543 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportUploader.swift +304 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbRuntime.swift +306 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbSDKVersion.swift +5 -0
- package/native/ios/packages/ios/Sources/CrumbCore/CrumbScreenContext.swift +29 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbDesign.swift +151 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbLocalization.swift +23 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbQualityInstrumentation.swift +30 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbRenderingMonitor.swift +40 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbReporter.swift +1705 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbReporterLifecycle.swift +119 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbScreenshotArtifact.swift +186 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbShakeGestureRecognizer.swift +62 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbUploadCoordinator.swift +113 -0
- package/native/ios/packages/ios/Sources/CrumbUI/CrumbWorkspacePolicyCoordinator.swift +86 -0
- package/native/ios/packages/ios/Sources/CrumbUI/OnDemandDiagnosticsCollector.swift +269 -0
- package/native/ios/packages/ios/Sources/CrumbUI/OnDemandLogCollector.swift +213 -0
- package/native/ios/packages/ios/Sources/CrumbUI/Resources/en.lproj/Localizable.strings +75 -0
- package/native/ios/provenance.json +8 -0
- package/nitrogen/generated/android/c++/JHybridCrumbReactNativeSpec.cpp +32 -3
- package/nitrogen/generated/android/c++/JHybridCrumbReactNativeSpec.hpp +5 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/crumbsdk/reactnative/HybridCrumbReactNativeSpec.kt +17 -1
- package/nitrogen/generated/ios/CrumbReactNative-Swift-Cxx-Bridge.hpp +9 -0
- package/nitrogen/generated/ios/c++/HybridCrumbReactNativeSpecSwift.hpp +30 -2
- package/nitrogen/generated/ios/swift/HybridCrumbReactNativeSpec.swift +5 -1
- package/nitrogen/generated/ios/swift/HybridCrumbReactNativeSpec_cxx.swift +55 -2
- package/nitrogen/generated/shared/c++/HybridCrumbReactNativeSpec.cpp +4 -0
- package/nitrogen/generated/shared/c++/HybridCrumbReactNativeSpec.hpp +5 -1
- package/package.json +29 -5
- package/plugin/build-hooks.cjs +52 -0
- package/plugin/podfile.cjs +21 -0
- package/scripts/ios.rb +23 -0
- package/src/CrumbReactNative.nitro.ts +5 -1
- package/src/NativeCrumbReactNative.web.ts +4 -0
- package/src/build-release.ts +30 -0
- package/src/index.ts +221 -2
- package/src/javascript-crash-capture.ts +774 -0
- package/src/log-buffer.ts +27 -2
- package/src/screen-context.ts +154 -0
- package/src/types.ts +53 -0
- package/tools/cli.cjs +116 -0
- package/tools/config.cjs +72 -0
- package/tools/crumb.gradle +63 -0
- package/tools/expo-export.cjs +122 -0
- package/tools/ios.cjs +93 -0
- package/tools/node.cjs +21 -0
- package/tools/release.cjs +65 -0
- package/tools/setup.cjs +291 -0
- package/tools/upload.cjs +137 -0
package/README.md
CHANGED
|
@@ -4,6 +4,16 @@ The official Nitro Module adapter for Crumb. It is intentionally thin: the
|
|
|
4
4
|
published Swift and Kotlin SDKs continue to own reporter presentation,
|
|
5
5
|
screenshot masking, diagnostics, durable storage, and upload.
|
|
6
6
|
|
|
7
|
+
## Guided setup preview
|
|
8
|
+
|
|
9
|
+
The rc.5 candidate includes guided setup and automatic source-map uploads through
|
|
10
|
+
the React Native package. See the [React Native and Expo setup guide](../../docs/react-native-setup.md).
|
|
11
|
+
These commands are not available in the published rc.4 package yet. The existing
|
|
12
|
+
installation below remains available while the new candidate is validated.
|
|
13
|
+
See the [rc.5 release notes](../../docs/releases/0.0.1-rc.5.md) for exact candidate
|
|
14
|
+
installation and upgrade instructions. The uploader is included automatically;
|
|
15
|
+
its separate package version is an implementation dependency, not another setup step.
|
|
16
|
+
|
|
7
17
|
## Requirements
|
|
8
18
|
|
|
9
19
|
- React Native 0.79 or newer
|
|
@@ -13,27 +23,124 @@ screenshot masking, diagnostics, durable storage, and upload.
|
|
|
13
23
|
|
|
14
24
|
Crumb contains native code and therefore does not run in Expo Go.
|
|
15
25
|
|
|
16
|
-
##
|
|
26
|
+
## Published rc.3 installation
|
|
27
|
+
|
|
28
|
+
Install the public package and its required Nitro runtime as direct
|
|
29
|
+
dependencies:
|
|
17
30
|
|
|
18
31
|
```sh
|
|
19
|
-
|
|
20
|
-
|
|
32
|
+
npm install @crumbsdk/react-native@0.0.1-rc.3 \
|
|
33
|
+
react-native-nitro-modules@0.37.1
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Expo
|
|
37
|
+
|
|
38
|
+
Crumb contains native code and does not run in Expo Go. Add a development
|
|
39
|
+
client and configure the native minimum targets:
|
|
40
|
+
|
|
41
|
+
```sh
|
|
42
|
+
npx expo install expo-dev-client expo-build-properties
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{
|
|
47
|
+
"expo": {
|
|
48
|
+
"plugins": [
|
|
49
|
+
[
|
|
50
|
+
"expo-build-properties",
|
|
51
|
+
{
|
|
52
|
+
"android": { "minSdkVersion": 26 },
|
|
53
|
+
"ios": { "deploymentTarget": "15.1" }
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
}
|
|
21
59
|
```
|
|
22
60
|
|
|
23
|
-
|
|
61
|
+
Create or rebuild the native development client:
|
|
24
62
|
|
|
25
63
|
```sh
|
|
26
|
-
npx expo prebuild
|
|
27
64
|
npx expo run:ios
|
|
28
65
|
# or
|
|
29
66
|
npx expo run:android
|
|
30
67
|
```
|
|
31
68
|
|
|
32
|
-
No Crumb-specific Expo config plugin is required.
|
|
33
|
-
`CrumbSDKCore` and `CrumbSDKUI` from CocoaPods on
|
|
34
|
-
Central on Android.
|
|
69
|
+
No Crumb-specific Expo config plugin is required. Expo Prebuild and React
|
|
70
|
+
Native autolinking install `CrumbSDKCore` and `CrumbSDKUI` from CocoaPods on
|
|
71
|
+
iOS and `crumb-ui` from Maven Central on Android.
|
|
72
|
+
|
|
73
|
+
### Bare React Native
|
|
74
|
+
|
|
75
|
+
React Native autolinking discovers Crumb after installation. Install iOS pods,
|
|
76
|
+
then rebuild the applications:
|
|
77
|
+
|
|
78
|
+
```sh
|
|
79
|
+
npx pod-install
|
|
80
|
+
npm run ios
|
|
81
|
+
# or
|
|
82
|
+
npm run android
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
No manual `AppDelegate`, `MainApplication`, or package-list registration is
|
|
86
|
+
needed. Set `platform :ios, "15.1"` in a manually maintained Podfile and
|
|
87
|
+
`minSdk = 26` in the Android app module. The package uses
|
|
35
88
|
[`react-native-nitro-modules`](https://nitro.margelo.com/) for its JSI bridge.
|
|
36
89
|
|
|
90
|
+
The [complete all-platform guide](../../docs/getting-started.md) covers Expo,
|
|
91
|
+
bare React Native, native iOS, and native Android from installation through a
|
|
92
|
+
submitted test report.
|
|
93
|
+
|
|
94
|
+
## rc.4 candidate installation and migration
|
|
95
|
+
|
|
96
|
+
This setup applies to **0.0.1-rc.4** and reviewed candidate builds, not rc.3.
|
|
97
|
+
Confirm rc.4 is published before installing it from npm. Until then, the rc.3
|
|
98
|
+
quickstart above remains the published path. Full [candidate release notes](../../docs/releases/0.0.1-rc.4.md) describe the release gates.
|
|
99
|
+
|
|
100
|
+
After rc.4 publication:
|
|
101
|
+
|
|
102
|
+
```sh
|
|
103
|
+
npm install @crumbsdk/react-native@0.0.1-rc.4 react-native-nitro-modules@0.37.1
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
The npm artifact includes Crumb's iOS sources, resource bundles and its pinned
|
|
107
|
+
PLCrashReporter dependency. CocoaPods builds those files locally; new Crumb
|
|
108
|
+
releases do not need publication to the public CocoaPods registry. Other
|
|
109
|
+
libraries in your application may still use that registry.
|
|
110
|
+
|
|
111
|
+
### Expo development builds
|
|
112
|
+
|
|
113
|
+
Add `"@crumbsdk/react-native"` to your existing Expo `plugins` array alongside
|
|
114
|
+
`expo-build-properties`. Run a new native prebuild/development build. The plugin
|
|
115
|
+
registers the bundled native dependencies and is safe to run repeatedly.
|
|
116
|
+
Expo Go remains unsupported. Remove old Crumb local-pod plugins or manual
|
|
117
|
+
Crumb pod declarations before enabling this plugin.
|
|
118
|
+
|
|
119
|
+
### Bare React Native
|
|
120
|
+
|
|
121
|
+
Inside each application target in `ios/Podfile`, before `use_react_native!`, add:
|
|
122
|
+
|
|
123
|
+
```ruby
|
|
124
|
+
require File.join(File.dirname(`node --print "require.resolve('@crumbsdk/react-native/package.json')"`.strip), 'scripts', 'ios')
|
|
125
|
+
crumb_native_pods!
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Then run `npx pod-install` and rebuild the app. When upgrading from rc.3, remove
|
|
129
|
+
manual `CrumbSDK`, `CrumbSDKCore` and `CrumbSDKUI` declarations first. If CocoaPods
|
|
130
|
+
reports a lockfile source/version conflict, run
|
|
131
|
+
`bundle exec pod update CrumbSDKCore CrumbSDKUI PLCrashReporter --no-repo-update`
|
|
132
|
+
(or `pod update` without Bundler), then review the lockfile changes. Do not
|
|
133
|
+
remove the entire lockfile or update unrelated pods.
|
|
134
|
+
|
|
135
|
+
If another dependency pins a different PLCrashReporter version, resolve that
|
|
136
|
+
version conflict before installing; do not install two copies or rename the
|
|
137
|
+
framework. The bundled dependency retains its upstream name for CocoaPods to
|
|
138
|
+
check compatibility. Its license and privacy manifest ship with the package.
|
|
139
|
+
|
|
140
|
+
Native Swift applications should use Swift Package Manager and link both
|
|
141
|
+
`CrumbCore` and `CrumbUI`. Remove CocoaPods' Crumb products before adding the SPM
|
|
142
|
+
products to avoid duplicate modules. SPM does not depend on CocoaPods trunk.
|
|
143
|
+
|
|
37
144
|
## Configure
|
|
38
145
|
|
|
39
146
|
```ts
|
|
@@ -54,6 +161,23 @@ await Crumb.start({
|
|
|
54
161
|
logs: {
|
|
55
162
|
captureConsole: true,
|
|
56
163
|
},
|
|
164
|
+
javascriptCrashCapture: {
|
|
165
|
+
enabled: true,
|
|
166
|
+
maximumBreadcrumbs: 32,
|
|
167
|
+
maximumBreadcrumbBytes: 16_384,
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
reporter: {
|
|
171
|
+
theme: 'system',
|
|
172
|
+
visibleFields: ['category', 'description'],
|
|
173
|
+
},
|
|
174
|
+
evidence: ['screenshot', 'performance', 'network', 'logs', 'thread_stacks', 'health_check'],
|
|
175
|
+
customContext: {
|
|
176
|
+
values: { account_tier: 'trial' },
|
|
177
|
+
allowedKeys: ['account_tier'],
|
|
178
|
+
},
|
|
179
|
+
workspacePolicy: {
|
|
180
|
+
url: 'https://policy.example.com/sdk/v1/policy',
|
|
57
181
|
},
|
|
58
182
|
});
|
|
59
183
|
|
|
@@ -73,6 +197,12 @@ const opened = await Crumb.show();
|
|
|
73
197
|
Shake invocation is enabled by default while the app is foregrounded. Configure
|
|
74
198
|
`invocation: ['programmatic']` to disable it.
|
|
75
199
|
|
|
200
|
+
Reporter theme, evidence, custom context, and workspace policy use the same
|
|
201
|
+
native-owned contract as Swift and Kotlin. A configured policy fetch is
|
|
202
|
+
non-blocking and fail-closed: optional evidence stays disabled until a fresh or
|
|
203
|
+
valid cached policy is accepted, while the description-only report path
|
|
204
|
+
remains available. See the [shared configuration contract](../../docs/contracts/sdk-configuration.md).
|
|
205
|
+
|
|
76
206
|
## JavaScript logs
|
|
77
207
|
|
|
78
208
|
```ts
|
|
@@ -95,6 +225,68 @@ Crumb.disableConsoleCapture();
|
|
|
95
225
|
Crumb never captures network bodies, Redux state, navigation history, arbitrary
|
|
96
226
|
application object graphs, or analytics events.
|
|
97
227
|
|
|
228
|
+
## JavaScript crash capture
|
|
229
|
+
|
|
230
|
+
JavaScript crash capture is opt-in and disabled by default. Set
|
|
231
|
+
`diagnostics.javascriptCrashCapture.enabled` to `true` to preserve fatal
|
|
232
|
+
JavaScript exceptions and unhandled promise rejections. The adapter performs a
|
|
233
|
+
bounded, sanitized synchronous handoff through Nitro before calling the
|
|
234
|
+
existing React Native or host handler, so Crashlytics, Sentry, and other host
|
|
235
|
+
handlers remain installed and continue to run.
|
|
236
|
+
|
|
237
|
+
After a relaunch, native code validates and deduplicates the pending record,
|
|
238
|
+
then commits it to the same durable report queue used by the reporter. Offline
|
|
239
|
+
reports remain pending until the normal uploader receives an acknowledgement.
|
|
240
|
+
The record includes the failure type, message, bounded stack, release/bundle
|
|
241
|
+
identity, recent Crumb breadcrumbs, and only custom-context keys explicitly
|
|
242
|
+
allowlisted by the host. It does not include native crash data, arbitrary
|
|
243
|
+
memory, Redux/store state, request bodies, or response bodies.
|
|
244
|
+
|
|
245
|
+
The native handoff also saves a bounded snapshot of the original process ID,
|
|
246
|
+
capture time, CPU, memory, thread count, thermal state and connectivity when the
|
|
247
|
+
corresponding evidence categories are enabled. These are measurements taken
|
|
248
|
+
while handling the JavaScript failure, not measurements from the next launch.
|
|
249
|
+
iOS reads task/thread counters (at most 256 threads for CPU) and waits at most
|
|
250
|
+
30 ms for a local connectivity observation. Android takes one 20 ms CPU sample
|
|
251
|
+
and reads current process/network metadata. Neither runs continuously, calls
|
|
252
|
+
app-provided log/health callbacks, probes HTTP, captures GPU utilization or
|
|
253
|
+
installs native fatal handlers. With thread-stack evidence enabled, iOS also
|
|
254
|
+
captures bounded native frames using PLCrashReporter's live report API, and
|
|
255
|
+
Android captures managed Java/Kotlin stacks. Native image offsets are not dSYM
|
|
256
|
+
source locations. An unavailable measurement remains unavailable.
|
|
257
|
+
|
|
258
|
+
Breadcrumbs come from `Crumb.log` and optional console capture. They remain
|
|
259
|
+
bounded and sanitized; disabling logs removes them at handoff and recovery.
|
|
260
|
+
Corrupt or oversized optional snapshot data is discarded without discarding an
|
|
261
|
+
otherwise valid crash. Existing records without snapshots still recover their
|
|
262
|
+
original JavaScript cause and breadcrumbs.
|
|
263
|
+
|
|
264
|
+
Opt into recent rendering evidence separately with
|
|
265
|
+
`diagnostics.renderingEnabled: true` (default `false`) and install the reporter.
|
|
266
|
+
This enables a foreground-only buffer of five one-second numeric buckets, capped
|
|
267
|
+
at 1,000 observations per bucket, cleared on background or disabled performance
|
|
268
|
+
evidence. The snapshot is frozen before failure stack collection and survives
|
|
269
|
+
relaunch only while current settings still allow it. No frame images are stored.
|
|
270
|
+
|
|
271
|
+
iOS reports `CADisplayLink` intervals and slow observations. Android reports
|
|
272
|
+
window frame duration and, on API 31+ when supplied by the OS, GPU frame duration.
|
|
273
|
+
Slow observations exceed 1.5 times the relevant frame budget. These are bounded
|
|
274
|
+
observations, not complete frame coverage, FPS, or GPU utilization. iOS GPU time
|
|
275
|
+
remains unavailable. Android zero GPU time is distinct from missing GPU time.
|
|
276
|
+
Envelopes with native stacks or rendering use version 1.1; upgrade the consuming
|
|
277
|
+
service before distributing an enabled SDK. Existing 1.0 reports remain valid.
|
|
278
|
+
|
|
279
|
+
The breadcrumb limits default to 32 entries and 16 KiB. They can be lowered or
|
|
280
|
+
raised within the package bounds (50 entries and 65,536 bytes maximum). A
|
|
281
|
+
native termination wrapper with the same fingerprint is folded into the
|
|
282
|
+
JavaScript occurrence without replacing its cause.
|
|
283
|
+
|
|
284
|
+
For a local fatal-fixture check, enable the option in one of the included
|
|
285
|
+
development-build examples and trigger the example's JavaScript failure action.
|
|
286
|
+
The next launch should show one recovered `javascript_crash` occurrence; do not
|
|
287
|
+
enable this option in production without first reviewing the collection notice
|
|
288
|
+
and handler interaction for the host application.
|
|
289
|
+
|
|
98
290
|
## Development
|
|
99
291
|
|
|
100
292
|
This package was created with `create-react-native-library` and includes an Expo
|
|
@@ -107,3 +299,83 @@ corepack yarn quality
|
|
|
107
299
|
corepack yarn example ios
|
|
108
300
|
corepack yarn example android
|
|
109
301
|
```
|
|
302
|
+
|
|
303
|
+
## Publishing
|
|
304
|
+
|
|
305
|
+
Releases publish from the immutable `react-native-v<version>` Git tag through
|
|
306
|
+
the `react-native-npm-publish.yml` GitHub Actions workflow. The workflow uses
|
|
307
|
+
npm trusted publishing (OIDC), so no long-lived npm write token is stored in
|
|
308
|
+
GitHub.
|
|
309
|
+
|
|
310
|
+
Configure the package's npm trusted publisher with these exact values:
|
|
311
|
+
|
|
312
|
+
- Provider: GitHub Actions
|
|
313
|
+
- Organization or user: `alexander126`
|
|
314
|
+
- Repository: `crumb`
|
|
315
|
+
- Workflow: `react-native-npm-publish.yml`
|
|
316
|
+
- Environment: leave empty
|
|
317
|
+
- Allowed action: `npm publish`
|
|
318
|
+
|
|
319
|
+
Use the `next` distribution tag for prereleases and `latest` for stable
|
|
320
|
+
versions. The workflow verifies the package version, immutable Git tag,
|
|
321
|
+
distribution tag, and explicit publication confirmation before it publishes.
|
|
322
|
+
|
|
323
|
+
### Capture the active screen
|
|
324
|
+
|
|
325
|
+
Opt in to a static screen label so reports and recovered JavaScript crashes show
|
|
326
|
+
where the user was. This is separate from native controllers and the source file
|
|
327
|
+
identified by a crash stack. Existing reports cannot gain screen context retroactively.
|
|
328
|
+
|
|
329
|
+
For React Navigation, register once beside the root container. The helper handles
|
|
330
|
+
initial readiness, focused nested routes, modals, subsequent state changes and
|
|
331
|
+
listener cleanup without adding a navigation dependency to Crumb:
|
|
332
|
+
|
|
333
|
+
```tsx
|
|
334
|
+
import { useEffect } from 'react';
|
|
335
|
+
import { NavigationContainer, useNavigationContainerRef } from '@react-navigation/native';
|
|
336
|
+
import Crumb from '@crumbsdk/react-native';
|
|
337
|
+
|
|
338
|
+
function App() {
|
|
339
|
+
const navigationRef = useNavigationContainerRef();
|
|
340
|
+
useEffect(() => Crumb.trackReactNavigation(navigationRef), [navigationRef]);
|
|
341
|
+
return <NavigationContainer ref={navigationRef}>{/* navigators */}</NavigationContainer>;
|
|
342
|
+
}
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
For Expo Router, put this in the root layout. `useSegments()` retains file-based
|
|
346
|
+
templates such as `/orders/[id]`; do not pass `usePathname()` or search parameters:
|
|
347
|
+
|
|
348
|
+
```tsx
|
|
349
|
+
import { Slot, useSegments } from 'expo-router';
|
|
350
|
+
import { useExpoRouterScreen } from '@crumbsdk/react-native';
|
|
351
|
+
|
|
352
|
+
export default function RootLayout() {
|
|
353
|
+
useExpoRouterScreen(useSegments());
|
|
354
|
+
return <Slot />;
|
|
355
|
+
}
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
For a custom navigator, set the current static label when the visible screen changes:
|
|
359
|
+
|
|
360
|
+
```ts
|
|
361
|
+
Crumb.setScreen('Checkout', { route: ['Shop', 'Checkout'] });
|
|
362
|
+
Crumb.setScreen(null); // Clear when no app screen is active.
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
Choose one owner for the current context. Each label is limited to 128 UTF-8 bytes
|
|
366
|
+
and the focused hierarchy to eight labels. Use static names, never user IDs,
|
|
367
|
+
account names, full URLs or search strings. Invalid manual input clears the
|
|
368
|
+
previous label and throws; integrations clear unavailable or invalid state.
|
|
369
|
+
Crumb never reads route parameters or records a navigation history. Standard
|
|
370
|
+
text redaction and the effective `custom_context` evidence policy apply.
|
|
371
|
+
The reporter freezes this context when it opens, including shake invocation;
|
|
372
|
+
a JavaScript failure freezes it at the native handoff. Recovery retains the
|
|
373
|
+
original screen and reapplies current privacy policy, without substituting the
|
|
374
|
+
relaunch screen. This does not identify the cause of a crash or add native fatal
|
|
375
|
+
crash interception.
|
|
376
|
+
|
|
377
|
+
Screen context uses envelope **1.2**. Deploy a consumer supporting 1.2 before
|
|
378
|
+
shipping an app with this integration. Reports without screen context retain
|
|
379
|
+
their existing 1.0/1.1 format.
|
|
380
|
+
|
|
381
|
+
Try the [automatic navigation demos](example/NAVIGATION.md) to validate React Navigation and Expo Router on real native builds.
|
package/android/build.gradle
CHANGED
|
@@ -32,7 +32,6 @@ def reactNativeArchitectures() {
|
|
|
32
32
|
apply plugin: "com.android.library"
|
|
33
33
|
apply plugin: "kotlin-android"
|
|
34
34
|
apply from: "../nitrogen/generated/android/crumbsdk_reactnative+autolinking.gradle"
|
|
35
|
-
apply plugin: "com.facebook.react"
|
|
36
35
|
|
|
37
36
|
def packageJson = new JsonSlurper().parseText(file("../package.json").getText("UTF-8"))
|
|
38
37
|
def crumbNativeVersion = packageJson.crumbNativeVersion
|
|
@@ -74,6 +73,7 @@ android {
|
|
|
74
73
|
}
|
|
75
74
|
jniLibs {
|
|
76
75
|
excludes += [
|
|
76
|
+
"**/libNitroModules.so",
|
|
77
77
|
"**/libc++_shared.so",
|
|
78
78
|
"**/libfbjni.so",
|
|
79
79
|
"**/libjsi.so",
|
|
@@ -3,20 +3,28 @@ package com.margelo.nitro.crumbsdk.reactnative
|
|
|
3
3
|
import android.app.Application
|
|
4
4
|
import android.os.Build
|
|
5
5
|
import com.facebook.react.bridge.UiThreadUtil
|
|
6
|
+
import com.facebook.react.common.LifecycleState
|
|
6
7
|
import com.margelo.nitro.NitroModules
|
|
7
8
|
import com.margelo.nitro.core.Promise
|
|
8
9
|
import dev.crumb.core.Crumb
|
|
9
10
|
import dev.crumb.core.CrumbCaptureOptions
|
|
10
11
|
import dev.crumb.core.CrumbConfiguration
|
|
11
12
|
import dev.crumb.core.CrumbDiagnosticsOptions
|
|
13
|
+
import dev.crumb.core.CrumbEvidenceCategory
|
|
12
14
|
import dev.crumb.core.CrumbInvocation
|
|
13
15
|
import dev.crumb.core.CrumbLogEntry
|
|
14
16
|
import dev.crumb.core.CrumbLogLevel
|
|
15
17
|
import dev.crumb.core.CrumbLogOptions
|
|
16
18
|
import dev.crumb.core.CrumbLogProvider
|
|
19
|
+
import dev.crumb.core.CrumbReporterField
|
|
20
|
+
import dev.crumb.core.CrumbReporterOptions
|
|
17
21
|
import dev.crumb.core.CrumbPrivacyOptions
|
|
18
22
|
import dev.crumb.core.CrumbRelease
|
|
23
|
+
import dev.crumb.core.CrumbTheme
|
|
19
24
|
import dev.crumb.core.CrumbUploadOptions
|
|
25
|
+
import dev.crumb.core.CrumbApplicationMetadata
|
|
26
|
+
import dev.crumb.core.CrumbCustomContextOptions
|
|
27
|
+
import dev.crumb.core.CrumbWorkspacePolicyOptions
|
|
20
28
|
import dev.crumb.ui.CrumbReporter
|
|
21
29
|
import org.json.JSONObject
|
|
22
30
|
|
|
@@ -62,8 +70,12 @@ class CrumbReactNative : HybridCrumbReactNativeSpec() {
|
|
|
62
70
|
invocation = payload.invocations(),
|
|
63
71
|
capture = payload.captureOptions(),
|
|
64
72
|
diagnostics = CrumbDiagnosticsOptions(
|
|
73
|
+
renderingEnabled = diagnostics?.optBoolean("renderingEnabled", false) ?: false,
|
|
65
74
|
healthCheckUrl = diagnostics?.optionalString("healthCheckUrl"),
|
|
66
75
|
timeoutMillis = diagnostics?.optionalLong("timeoutMs") ?: 2_000,
|
|
76
|
+
javascriptCrashCaptureEnabled = diagnostics
|
|
77
|
+
?.optJSONObject("javascriptCrashCapture")
|
|
78
|
+
?.optionalBoolean("enabled") ?: false,
|
|
67
79
|
logs = CrumbLogOptions(
|
|
68
80
|
enabled = logs?.optionalBoolean("enabled") ?: true,
|
|
69
81
|
lookbackMillis = lookbackMillis,
|
|
@@ -77,30 +89,43 @@ class CrumbReactNative : HybridCrumbReactNativeSpec() {
|
|
|
77
89
|
ingestionUrl = payload.optJSONObject("upload")
|
|
78
90
|
?.optionalString("ingestionUrl"),
|
|
79
91
|
),
|
|
92
|
+
reporter = payload.reporterOptions(),
|
|
93
|
+
evidence = payload.evidenceOptions(),
|
|
94
|
+
application = payload.applicationMetadata(),
|
|
95
|
+
customContext = payload.customContextOptions(),
|
|
96
|
+
workspacePolicy = payload.workspacePolicyOptions(),
|
|
80
97
|
),
|
|
81
98
|
)
|
|
82
99
|
}
|
|
83
100
|
|
|
101
|
+
override fun setScreenContext(screenJson: String) {
|
|
102
|
+
Crumb.setScreenContext(screenJson)
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
override fun canCollectLogs(): Boolean = Crumb.canCollectLogs()
|
|
106
|
+
|
|
84
107
|
override fun installReporter(): Promise<Boolean> {
|
|
85
108
|
val promise = Promise<Boolean>()
|
|
86
109
|
UiThreadUtil.runOnUiThread {
|
|
87
110
|
runCatching {
|
|
88
111
|
val context = requireNotNull(NitroModules.applicationContext)
|
|
89
112
|
val application = context.applicationContext as Application
|
|
90
|
-
|
|
113
|
+
val resumedActivity = context.getCurrentActivity()
|
|
114
|
+
.takeIf { context.lifecycleState == LifecycleState.RESUMED }
|
|
115
|
+
CrumbReporter.install(application, resumedActivity)
|
|
91
116
|
}.onSuccess(promise::resolve)
|
|
92
117
|
.onFailure(promise::reject)
|
|
93
118
|
}
|
|
94
119
|
return promise
|
|
95
120
|
}
|
|
96
121
|
|
|
97
|
-
override fun show(): Promise<Boolean> {
|
|
122
|
+
override fun show(screenJson: String): Promise<Boolean> {
|
|
98
123
|
val promise = Promise<Boolean>()
|
|
99
124
|
UiThreadUtil.runOnUiThread {
|
|
100
125
|
runCatching {
|
|
101
126
|
val context = requireNotNull(NitroModules.applicationContext)
|
|
102
127
|
val activity = context.getCurrentActivity() ?: return@runCatching false
|
|
103
|
-
CrumbReporter.show(activity)
|
|
128
|
+
CrumbReporter.show(activity, screenContextJSON = screenJson)
|
|
104
129
|
}.onSuccess(promise::resolve)
|
|
105
130
|
.onFailure(promise::reject)
|
|
106
131
|
}
|
|
@@ -108,6 +133,7 @@ class CrumbReactNative : HybridCrumbReactNativeSpec() {
|
|
|
108
133
|
}
|
|
109
134
|
|
|
110
135
|
override fun addLog(entryJson: String) {
|
|
136
|
+
if (!Crumb.canCollectLogs()) return
|
|
111
137
|
val payload = JSONObject(entryJson)
|
|
112
138
|
logBuffer.append(
|
|
113
139
|
CrumbLogEntry(
|
|
@@ -123,6 +149,26 @@ class CrumbReactNative : HybridCrumbReactNativeSpec() {
|
|
|
123
149
|
override fun clearLogs() {
|
|
124
150
|
logBuffer.clear()
|
|
125
151
|
}
|
|
152
|
+
|
|
153
|
+
override fun recordJavaScriptCrash(recordJson: String) {
|
|
154
|
+
val context = NitroModules.applicationContext ?: return
|
|
155
|
+
Crumb.recordJavaScriptCrash(context, recordJson)
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
override fun recoverJavaScriptCrashes(): Promise<Boolean> {
|
|
159
|
+
val promise = Promise<Boolean>()
|
|
160
|
+
val context = NitroModules.applicationContext
|
|
161
|
+
if (context == null) {
|
|
162
|
+
promise.resolve(false)
|
|
163
|
+
return promise
|
|
164
|
+
}
|
|
165
|
+
Thread({
|
|
166
|
+
runCatching { CrumbReporter.recoverJavaScriptCrashes(context) }
|
|
167
|
+
.onSuccess(promise::resolve)
|
|
168
|
+
.onFailure { promise.resolve(false) }
|
|
169
|
+
}, "Crumb JavaScript crash recovery").start()
|
|
170
|
+
return promise
|
|
171
|
+
}
|
|
126
172
|
}
|
|
127
173
|
|
|
128
174
|
private fun JSONObject.invocations(): Set<CrumbInvocation> {
|
|
@@ -155,6 +201,78 @@ private fun JSONObject.privacyOptions(): CrumbPrivacyOptions {
|
|
|
155
201
|
)
|
|
156
202
|
}
|
|
157
203
|
|
|
204
|
+
private fun JSONObject.reporterOptions(): CrumbReporterOptions {
|
|
205
|
+
val reporter = optJSONObject("reporter") ?: return CrumbReporterOptions()
|
|
206
|
+
val theme = when (reporter.optionalString("theme") ?: "system") {
|
|
207
|
+
"system" -> CrumbTheme.SYSTEM
|
|
208
|
+
"light" -> CrumbTheme.LIGHT
|
|
209
|
+
"dark" -> CrumbTheme.DARK
|
|
210
|
+
else -> error("reporter.theme is unsupported")
|
|
211
|
+
}
|
|
212
|
+
val fields = reporter.optJSONArray("visibleFields")?.let { array ->
|
|
213
|
+
buildSet {
|
|
214
|
+
for (index in 0 until array.length()) {
|
|
215
|
+
when (array.getString(index)) {
|
|
216
|
+
"category" -> add(CrumbReporterField.CATEGORY)
|
|
217
|
+
"description" -> add(CrumbReporterField.DESCRIPTION)
|
|
218
|
+
else -> error("reporter.visibleFields contains an unsupported value")
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
} ?: CrumbReporterOptions().visibleFields
|
|
223
|
+
return CrumbReporterOptions(theme = theme, visibleFields = fields)
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
private fun JSONObject.evidenceOptions(): Set<CrumbEvidenceCategory> {
|
|
227
|
+
val evidence = optJSONArray("evidence") ?: return CrumbEvidenceCategory.entries.toSet()
|
|
228
|
+
return buildSet {
|
|
229
|
+
for (index in 0 until evidence.length()) {
|
|
230
|
+
when (evidence.getString(index)) {
|
|
231
|
+
"screenshot" -> add(CrumbEvidenceCategory.SCREENSHOT)
|
|
232
|
+
"performance" -> add(CrumbEvidenceCategory.PERFORMANCE)
|
|
233
|
+
"network" -> add(CrumbEvidenceCategory.NETWORK)
|
|
234
|
+
"logs" -> add(CrumbEvidenceCategory.LOGS)
|
|
235
|
+
"thread_stacks" -> add(CrumbEvidenceCategory.THREAD_STACKS)
|
|
236
|
+
"health_check" -> add(CrumbEvidenceCategory.HEALTH_CHECK)
|
|
237
|
+
"custom_context" -> add(CrumbEvidenceCategory.CUSTOM_CONTEXT)
|
|
238
|
+
else -> error("evidence contains an unsupported value")
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
private fun JSONObject.applicationMetadata(): CrumbApplicationMetadata {
|
|
245
|
+
val application = optJSONObject("application") ?: return CrumbApplicationMetadata()
|
|
246
|
+
return CrumbApplicationMetadata(name = application.optionalString("name"))
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
private fun JSONObject.customContextOptions(): CrumbCustomContextOptions {
|
|
250
|
+
val customContext = optJSONObject("customContext") ?: return CrumbCustomContextOptions()
|
|
251
|
+
val values = customContext.optJSONObject("values")?.let { valuesObject ->
|
|
252
|
+
buildMap {
|
|
253
|
+
val names = valuesObject.keys()
|
|
254
|
+
while (names.hasNext()) {
|
|
255
|
+
val name = names.next()
|
|
256
|
+
put(name, valuesObject.getString(name))
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
} ?: emptyMap()
|
|
260
|
+
val allowedKeys = customContext.optJSONArray("allowedKeys")?.let { array ->
|
|
261
|
+
buildSet {
|
|
262
|
+
for (index in 0 until array.length()) add(array.getString(index))
|
|
263
|
+
}
|
|
264
|
+
} ?: emptySet()
|
|
265
|
+
return CrumbCustomContextOptions(values = values, allowedKeys = allowedKeys)
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
private fun JSONObject.workspacePolicyOptions(): CrumbWorkspacePolicyOptions {
|
|
269
|
+
val policy = optJSONObject("workspacePolicy") ?: return CrumbWorkspacePolicyOptions()
|
|
270
|
+
return CrumbWorkspacePolicyOptions(
|
|
271
|
+
url = policy.optionalString("url"),
|
|
272
|
+
timeoutMillis = policy.optionalLong("timeoutMs") ?: 2_000,
|
|
273
|
+
)
|
|
274
|
+
}
|
|
275
|
+
|
|
158
276
|
private fun JSONObject.optionalString(name: String): String? =
|
|
159
277
|
if (has(name) && !isNull(name)) getString(name) else null
|
|
160
278
|
|
package/app.plugin.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const { configurePodfile } = require('./plugin/podfile.cjs');
|
|
2
|
+
const { name, version } = require('./package.json');
|
|
3
|
+
const {
|
|
4
|
+
configureXcodeProject,
|
|
5
|
+
configureGradle,
|
|
6
|
+
} = require('./plugin/build-hooks.cjs');
|
|
7
|
+
const { readConfig } = require('./tools/config.cjs');
|
|
8
|
+
|
|
9
|
+
module.exports = function withCrumb(config) {
|
|
10
|
+
// Resolve Expo from the consuming app, including non-hoisted workspaces.
|
|
11
|
+
const {
|
|
12
|
+
withPodfile,
|
|
13
|
+
withXcodeProject,
|
|
14
|
+
withAppBuildGradle,
|
|
15
|
+
createRunOncePlugin,
|
|
16
|
+
} = require(
|
|
17
|
+
require.resolve('expo/config-plugins', {
|
|
18
|
+
paths: [config._internal?.projectRoot ?? process.cwd()],
|
|
19
|
+
})
|
|
20
|
+
);
|
|
21
|
+
return createRunOncePlugin(
|
|
22
|
+
(appConfig) => {
|
|
23
|
+
appConfig = withPodfile(appConfig, (modConfig) => {
|
|
24
|
+
modConfig.modResults.contents = configurePodfile(
|
|
25
|
+
modConfig.modResults.contents
|
|
26
|
+
);
|
|
27
|
+
return modConfig;
|
|
28
|
+
});
|
|
29
|
+
if (
|
|
30
|
+
!readConfig(config._internal?.projectRoot ?? process.cwd()).sourceMaps
|
|
31
|
+
.enabled
|
|
32
|
+
)
|
|
33
|
+
return appConfig;
|
|
34
|
+
appConfig = withXcodeProject(appConfig, (modConfig) => {
|
|
35
|
+
configureXcodeProject(modConfig.modResults);
|
|
36
|
+
return modConfig;
|
|
37
|
+
});
|
|
38
|
+
return withAppBuildGradle(appConfig, (modConfig) => {
|
|
39
|
+
if (modConfig.modResults.language !== 'groovy')
|
|
40
|
+
throw new Error(
|
|
41
|
+
'Crumb automatic setup needs a Groovy app build file. Use the manual build-hook instructions for Kotlin DSL.'
|
|
42
|
+
);
|
|
43
|
+
modConfig.modResults.contents = configureGradle(
|
|
44
|
+
modConfig.modResults.contents
|
|
45
|
+
);
|
|
46
|
+
return modConfig;
|
|
47
|
+
});
|
|
48
|
+
},
|
|
49
|
+
name,
|
|
50
|
+
version
|
|
51
|
+
)(config);
|
|
52
|
+
};
|