@crumbsdk/react-native 0.0.1-rc.3 → 0.0.1-rc.4

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.
Files changed (356) hide show
  1. package/README.md +270 -8
  2. package/android/build.gradle +0 -1
  3. package/android/src/main/java/com/margelo/nitro/crumbsdk/reactnative/CrumbReactNative.kt +121 -3
  4. package/app.plugin.js +22 -0
  5. package/ios/CrumbReactNative.swift +135 -3
  6. package/lib/module/NativeCrumbReactNative.web.js +5 -1
  7. package/lib/module/NativeCrumbReactNative.web.js.map +1 -1
  8. package/lib/module/index.js +91 -1
  9. package/lib/module/index.js.map +1 -1
  10. package/lib/module/javascript-crash-capture.js +497 -0
  11. package/lib/module/javascript-crash-capture.js.map +1 -0
  12. package/lib/module/log-buffer.js +22 -2
  13. package/lib/module/log-buffer.js.map +1 -1
  14. package/lib/module/screen-context.js +127 -0
  15. package/lib/module/screen-context.js.map +1 -0
  16. package/lib/typescript/src/CrumbReactNative.nitro.d.ts +5 -1
  17. package/lib/typescript/src/CrumbReactNative.nitro.d.ts.map +1 -1
  18. package/lib/typescript/src/NativeCrumbReactNative.web.d.ts.map +1 -1
  19. package/lib/typescript/src/index.d.ts +7 -1
  20. package/lib/typescript/src/index.d.ts.map +1 -1
  21. package/lib/typescript/src/javascript-crash-capture.d.ts +74 -0
  22. package/lib/typescript/src/javascript-crash-capture.d.ts.map +1 -0
  23. package/lib/typescript/src/log-buffer.d.ts +1 -0
  24. package/lib/typescript/src/log-buffer.d.ts.map +1 -1
  25. package/lib/typescript/src/screen-context.d.ts +19 -0
  26. package/lib/typescript/src/screen-context.d.ts.map +1 -0
  27. package/lib/typescript/src/types.d.ts +38 -0
  28. package/lib/typescript/src/types.d.ts.map +1 -1
  29. package/native/ios/CrumbSDKCore.podspec +28 -0
  30. package/native/ios/CrumbSDKUI.podspec +38 -0
  31. package/native/ios/LICENSE +201 -0
  32. package/native/ios/PLCrashReporter/CrashReporter.xcframework/Info.plist +96 -0
  33. package/native/ios/PLCrashReporter/CrashReporter.xcframework/PrivacyInfo.xcprivacy +39 -0
  34. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/CrashReporter +0 -0
  35. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  36. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  37. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  38. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  39. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  40. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  41. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  42. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  43. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  44. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  45. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  46. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  47. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  48. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  49. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  50. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  51. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  52. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  53. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  54. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  55. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  56. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  57. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Info.plist +0 -0
  58. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/Modules/module.modulemap +8 -0
  59. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_arm64e/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
  60. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/CrashReporter +0 -0
  61. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  62. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  63. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  64. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  65. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  66. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  67. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  68. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  69. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  70. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  71. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  72. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  73. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  74. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  75. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  76. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  77. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  78. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  79. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  80. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  81. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  82. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  83. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Modules/module.modulemap +8 -0
  84. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Resources/Info.plist +52 -0
  85. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Resources/PrivacyInfo.xcprivacy +39 -0
  86. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/CrashReporter +0 -0
  87. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/CrashReporter.h +366 -0
  88. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashFeatureConfig.h +108 -0
  89. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashMacros.h +143 -0
  90. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashNamespace.h +320 -0
  91. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReport.h +193 -0
  92. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportApplicationInfo.h +52 -0
  93. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  94. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportExceptionInfo.h +59 -0
  95. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportFormatter.h +55 -0
  96. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  97. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachineInfo.h +64 -0
  98. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessInfo.h +80 -0
  99. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessorInfo.h +64 -0
  100. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportRegisterInfo.h +45 -0
  101. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSignalInfo.h +50 -0
  102. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportStackFrameInfo.h +50 -0
  103. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSymbolInfo.h +51 -0
  104. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportSystemInfo.h +158 -0
  105. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportTextFormatter.h +59 -0
  106. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReportThreadInfo.h +75 -0
  107. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReporter.h +131 -0
  108. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Headers/PLCrashReporterConfig.h +193 -0
  109. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Modules/module.modulemap +8 -0
  110. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Resources/Info.plist +52 -0
  111. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/A/Resources/PrivacyInfo.xcprivacy +39 -0
  112. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/CrashReporter +0 -0
  113. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/CrashReporter.h +366 -0
  114. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashFeatureConfig.h +108 -0
  115. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashMacros.h +143 -0
  116. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashNamespace.h +320 -0
  117. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReport.h +193 -0
  118. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportApplicationInfo.h +52 -0
  119. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  120. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportExceptionInfo.h +59 -0
  121. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportFormatter.h +55 -0
  122. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  123. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachineInfo.h +64 -0
  124. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessInfo.h +80 -0
  125. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessorInfo.h +64 -0
  126. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportRegisterInfo.h +45 -0
  127. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSignalInfo.h +50 -0
  128. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportStackFrameInfo.h +50 -0
  129. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSymbolInfo.h +51 -0
  130. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSystemInfo.h +158 -0
  131. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportTextFormatter.h +59 -0
  132. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReportThreadInfo.h +75 -0
  133. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReporter.h +131 -0
  134. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Headers/PLCrashReporterConfig.h +193 -0
  135. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Modules/module.modulemap +8 -0
  136. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Resources/Info.plist +52 -0
  137. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-maccatalyst/CrashReporter.framework/Versions/Current/Resources/PrivacyInfo.xcprivacy +39 -0
  138. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/CrashReporter +0 -0
  139. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  140. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  141. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  142. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  143. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  144. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  145. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  146. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  147. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  148. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  149. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  150. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  151. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  152. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  153. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  154. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  155. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  156. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  157. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  158. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  159. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  160. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  161. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Info.plist +0 -0
  162. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/Modules/module.modulemap +8 -0
  163. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
  164. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeDirectory +0 -0
  165. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements +0 -0
  166. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements-1 +0 -0
  167. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeResources +462 -0
  168. package/native/ios/PLCrashReporter/CrashReporter.xcframework/ios-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeSignature +0 -0
  169. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/CrashReporter +0 -0
  170. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  171. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  172. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  173. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  174. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  175. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  176. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  177. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  178. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  179. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  180. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  181. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  182. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  183. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  184. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  185. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  186. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  187. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  188. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  189. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  190. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  191. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  192. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Modules/module.modulemap +8 -0
  193. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Resources/Info.plist +48 -0
  194. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Resources/PrivacyInfo.xcprivacy +39 -0
  195. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/CrashReporter +0 -0
  196. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/CrashReporter.h +366 -0
  197. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashFeatureConfig.h +108 -0
  198. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashMacros.h +143 -0
  199. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashNamespace.h +320 -0
  200. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReport.h +193 -0
  201. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportApplicationInfo.h +52 -0
  202. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  203. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportExceptionInfo.h +59 -0
  204. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportFormatter.h +55 -0
  205. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  206. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportMachineInfo.h +64 -0
  207. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessInfo.h +80 -0
  208. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportProcessorInfo.h +64 -0
  209. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportRegisterInfo.h +45 -0
  210. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSignalInfo.h +50 -0
  211. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportStackFrameInfo.h +50 -0
  212. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSymbolInfo.h +51 -0
  213. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportSystemInfo.h +158 -0
  214. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportTextFormatter.h +59 -0
  215. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReportThreadInfo.h +75 -0
  216. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReporter.h +131 -0
  217. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Headers/PLCrashReporterConfig.h +193 -0
  218. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Modules/module.modulemap +8 -0
  219. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Resources/Info.plist +48 -0
  220. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/A/Resources/PrivacyInfo.xcprivacy +39 -0
  221. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/CrashReporter +0 -0
  222. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/CrashReporter.h +366 -0
  223. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashFeatureConfig.h +108 -0
  224. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashMacros.h +143 -0
  225. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashNamespace.h +320 -0
  226. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReport.h +193 -0
  227. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportApplicationInfo.h +52 -0
  228. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  229. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportExceptionInfo.h +59 -0
  230. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportFormatter.h +55 -0
  231. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  232. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportMachineInfo.h +64 -0
  233. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessInfo.h +80 -0
  234. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportProcessorInfo.h +64 -0
  235. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportRegisterInfo.h +45 -0
  236. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSignalInfo.h +50 -0
  237. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportStackFrameInfo.h +50 -0
  238. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSymbolInfo.h +51 -0
  239. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportSystemInfo.h +158 -0
  240. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportTextFormatter.h +59 -0
  241. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReportThreadInfo.h +75 -0
  242. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReporter.h +131 -0
  243. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Headers/PLCrashReporterConfig.h +193 -0
  244. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Modules/module.modulemap +8 -0
  245. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Resources/Info.plist +48 -0
  246. package/native/ios/PLCrashReporter/CrashReporter.xcframework/macos-arm64_x86_64/CrashReporter.framework/Versions/Current/Resources/PrivacyInfo.xcprivacy +39 -0
  247. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/CrashReporter +0 -0
  248. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  249. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  250. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  251. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  252. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  253. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  254. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  255. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  256. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  257. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  258. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  259. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  260. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  261. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  262. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  263. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  264. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  265. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  266. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  267. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  268. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  269. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  270. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Info.plist +0 -0
  271. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/Modules/module.modulemap +8 -0
  272. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
  273. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/CrashReporter +0 -0
  274. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/CrashReporter.h +366 -0
  275. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashFeatureConfig.h +108 -0
  276. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashMacros.h +143 -0
  277. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashNamespace.h +320 -0
  278. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReport.h +193 -0
  279. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportApplicationInfo.h +52 -0
  280. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportBinaryImageInfo.h +76 -0
  281. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportExceptionInfo.h +59 -0
  282. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportFormatter.h +55 -0
  283. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachExceptionInfo.h +41 -0
  284. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportMachineInfo.h +64 -0
  285. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessInfo.h +80 -0
  286. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportProcessorInfo.h +64 -0
  287. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportRegisterInfo.h +45 -0
  288. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSignalInfo.h +50 -0
  289. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportStackFrameInfo.h +50 -0
  290. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSymbolInfo.h +51 -0
  291. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportSystemInfo.h +158 -0
  292. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportTextFormatter.h +59 -0
  293. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReportThreadInfo.h +75 -0
  294. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporter.h +131 -0
  295. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Headers/PLCrashReporterConfig.h +193 -0
  296. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Info.plist +0 -0
  297. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/Modules/module.modulemap +8 -0
  298. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/PrivacyInfo.xcprivacy +39 -0
  299. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeDirectory +0 -0
  300. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements +0 -0
  301. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeRequirements-1 +0 -0
  302. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeResources +462 -0
  303. package/native/ios/PLCrashReporter/CrashReporter.xcframework/tvos-arm64_x86_64-simulator/CrashReporter.framework/_CodeSignature/CodeSignature +0 -0
  304. package/native/ios/PLCrashReporter/LICENSE.txt +54 -0
  305. package/native/ios/PLCrashReporter/PLCrashReporter.podspec +19 -0
  306. package/native/ios/VERSION +1 -0
  307. package/native/ios/packages/ios/Sources/CrumbCore/Crumb.swift +108 -0
  308. package/native/ios/packages/ios/Sources/CrumbCore/CrumbConfiguration.swift +212 -0
  309. package/native/ios/packages/ios/Sources/CrumbCore/CrumbDiagnostics.swift +158 -0
  310. package/native/ios/packages/ios/Sources/CrumbCore/CrumbFailureStacks.swift +94 -0
  311. package/native/ios/packages/ios/Sources/CrumbCore/CrumbInfrastructureHealthProbe.swift +110 -0
  312. package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptCrashRecovery.swift +136 -0
  313. package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptCrashStore.swift +502 -0
  314. package/native/ios/packages/ios/Sources/CrumbCore/CrumbJavaScriptFailureContext.swift +166 -0
  315. package/native/ios/packages/ios/Sources/CrumbCore/CrumbLogs.swift +138 -0
  316. package/native/ios/packages/ios/Sources/CrumbCore/CrumbPolicy.swift +336 -0
  317. package/native/ios/packages/ios/Sources/CrumbCore/CrumbRendering.swift +68 -0
  318. package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportEnvelope.swift +666 -0
  319. package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportQueue.swift +543 -0
  320. package/native/ios/packages/ios/Sources/CrumbCore/CrumbReportUploader.swift +304 -0
  321. package/native/ios/packages/ios/Sources/CrumbCore/CrumbRuntime.swift +306 -0
  322. package/native/ios/packages/ios/Sources/CrumbCore/CrumbSDKVersion.swift +5 -0
  323. package/native/ios/packages/ios/Sources/CrumbCore/CrumbScreenContext.swift +29 -0
  324. package/native/ios/packages/ios/Sources/CrumbUI/CrumbDesign.swift +151 -0
  325. package/native/ios/packages/ios/Sources/CrumbUI/CrumbLocalization.swift +23 -0
  326. package/native/ios/packages/ios/Sources/CrumbUI/CrumbQualityInstrumentation.swift +30 -0
  327. package/native/ios/packages/ios/Sources/CrumbUI/CrumbRenderingMonitor.swift +40 -0
  328. package/native/ios/packages/ios/Sources/CrumbUI/CrumbReporter.swift +1705 -0
  329. package/native/ios/packages/ios/Sources/CrumbUI/CrumbReporterLifecycle.swift +119 -0
  330. package/native/ios/packages/ios/Sources/CrumbUI/CrumbScreenshotArtifact.swift +186 -0
  331. package/native/ios/packages/ios/Sources/CrumbUI/CrumbShakeGestureRecognizer.swift +62 -0
  332. package/native/ios/packages/ios/Sources/CrumbUI/CrumbUploadCoordinator.swift +113 -0
  333. package/native/ios/packages/ios/Sources/CrumbUI/CrumbWorkspacePolicyCoordinator.swift +86 -0
  334. package/native/ios/packages/ios/Sources/CrumbUI/OnDemandDiagnosticsCollector.swift +269 -0
  335. package/native/ios/packages/ios/Sources/CrumbUI/OnDemandLogCollector.swift +213 -0
  336. package/native/ios/packages/ios/Sources/CrumbUI/Resources/en.lproj/Localizable.strings +75 -0
  337. package/native/ios/provenance.json +8 -0
  338. package/nitrogen/generated/android/c++/JHybridCrumbReactNativeSpec.cpp +32 -3
  339. package/nitrogen/generated/android/c++/JHybridCrumbReactNativeSpec.hpp +5 -1
  340. package/nitrogen/generated/android/kotlin/com/margelo/nitro/crumbsdk/reactnative/HybridCrumbReactNativeSpec.kt +17 -1
  341. package/nitrogen/generated/ios/CrumbReactNative-Swift-Cxx-Bridge.hpp +9 -0
  342. package/nitrogen/generated/ios/c++/HybridCrumbReactNativeSpecSwift.hpp +30 -2
  343. package/nitrogen/generated/ios/swift/HybridCrumbReactNativeSpec.swift +5 -1
  344. package/nitrogen/generated/ios/swift/HybridCrumbReactNativeSpec_cxx.swift +55 -2
  345. package/nitrogen/generated/shared/c++/HybridCrumbReactNativeSpec.cpp +4 -0
  346. package/nitrogen/generated/shared/c++/HybridCrumbReactNativeSpec.hpp +5 -1
  347. package/package.json +15 -5
  348. package/plugin/podfile.cjs +21 -0
  349. package/scripts/ios.rb +23 -0
  350. package/src/CrumbReactNative.nitro.ts +5 -1
  351. package/src/NativeCrumbReactNative.web.ts +4 -0
  352. package/src/index.ts +218 -1
  353. package/src/javascript-crash-capture.ts +774 -0
  354. package/src/log-buffer.ts +27 -2
  355. package/src/screen-context.ts +154 -0
  356. package/src/types.ts +53 -0
@@ -0,0 +1,666 @@
1
+ import Foundation
2
+
3
+ package struct CrumbReportRuntime: Equatable, Sendable {
4
+ package let osVersion: String
5
+ package let deviceFamily: String
6
+ package let locale: String
7
+ package let timezone: String
8
+
9
+ package init(osVersion: String, deviceFamily: String, locale: String, timezone: String) {
10
+ self.osVersion = osVersion
11
+ self.deviceFamily = deviceFamily
12
+ self.locale = locale
13
+ self.timezone = timezone
14
+ }
15
+ }
16
+
17
+ package enum CrumbScreenshotCaptureState: String, Equatable, Sendable {
18
+ case enabled
19
+ case disabledByConfiguration = "disabled_by_configuration"
20
+ case disabledByPolicy = "disabled_by_policy"
21
+ case unavailable
22
+ }
23
+
24
+ package enum CrumbScreenshotMaskingState: String, Equatable, Sendable {
25
+ case applied
26
+ case notApplicable = "not_applicable"
27
+ case failed
28
+ }
29
+
30
+ package struct CrumbArtifactManifest: Equatable, Sendable {
31
+ package let id: String
32
+ package let kind: String
33
+ package let mimeType: String
34
+ package let byteSize: Int
35
+ package let sha256: String
36
+ package let redactionState: String
37
+ package let uploadID: String
38
+
39
+ package init(
40
+ id: String,
41
+ kind: String,
42
+ mimeType: String,
43
+ byteSize: Int,
44
+ sha256: String,
45
+ redactionState: String,
46
+ uploadID: String
47
+ ) {
48
+ self.id = id
49
+ self.kind = kind
50
+ self.mimeType = mimeType
51
+ self.byteSize = byteSize
52
+ self.sha256 = sha256
53
+ self.redactionState = redactionState
54
+ self.uploadID = uploadID
55
+ }
56
+ }
57
+
58
+ package struct CrumbReportBuildInput: Equatable, Sendable {
59
+ package let reportID: String
60
+ package let trigger: CrumbInvocation
61
+ package let triggeredAt: Date
62
+ package let submittedAt: Date
63
+ package let runtime: CrumbReportRuntime
64
+ package let category: String
65
+ package let description: String
66
+ package let diagnostics: CrumbDiagnosticsSnapshot
67
+ package let screenshotCapture: CrumbScreenshotCaptureState
68
+ package let screenshotMasking: CrumbScreenshotMaskingState
69
+ package let artifacts: [CrumbArtifactManifest]
70
+ package let customContext: [String: String]
71
+ package let policyStatus: CrumbPolicyStatus
72
+ package let workspacePolicyVersion: Int?
73
+ package let javascriptCrash: CrumbJavaScriptCrash?
74
+
75
+ package init(
76
+ reportID: String,
77
+ trigger: CrumbInvocation,
78
+ triggeredAt: Date,
79
+ submittedAt: Date,
80
+ runtime: CrumbReportRuntime,
81
+ category: String,
82
+ description: String,
83
+ diagnostics: CrumbDiagnosticsSnapshot,
84
+ screenshotCapture: CrumbScreenshotCaptureState,
85
+ screenshotMasking: CrumbScreenshotMaskingState,
86
+ artifacts: [CrumbArtifactManifest] = [],
87
+ customContext: [String: String] = [:],
88
+ policyStatus: CrumbPolicyStatus = .notConfigured,
89
+ workspacePolicyVersion: Int? = nil,
90
+ javascriptCrash: CrumbJavaScriptCrash? = nil
91
+ ) {
92
+ self.reportID = reportID
93
+ self.trigger = trigger
94
+ self.triggeredAt = triggeredAt
95
+ self.submittedAt = submittedAt
96
+ self.runtime = runtime
97
+ self.category = category
98
+ self.description = description
99
+ self.diagnostics = diagnostics
100
+ self.screenshotCapture = screenshotCapture
101
+ self.screenshotMasking = screenshotMasking
102
+ self.artifacts = artifacts
103
+ self.customContext = customContext
104
+ self.policyStatus = policyStatus
105
+ self.workspacePolicyVersion = workspacePolicyVersion
106
+ self.javascriptCrash = javascriptCrash
107
+ }
108
+ }
109
+
110
+ package struct CrumbSerializedReportEnvelope: Equatable, Sendable {
111
+ package let reportID: String
112
+ package let submittedAt: Date
113
+ package let data: Data
114
+
115
+ package var json: String { String(decoding: data, as: UTF8.self) }
116
+ }
117
+
118
+ package enum CrumbReportEnvelopeError: Error, Equatable {
119
+ case invalidConfiguration
120
+ case invalidReportID
121
+ case invalidTimestampOrder
122
+ case invalidRuntime
123
+ case invalidCategory
124
+ case invalidDescription
125
+ case tooManyArtifacts
126
+ case invalidArtifact
127
+ case invalidJavaScriptCrash
128
+ }
129
+
130
+ package enum CrumbReportEnvelopeBuilder {
131
+ package static func makeReportID(uuid: UUID = UUID()) -> String {
132
+ "rpt_" + uuid.uuidString.replacingOccurrences(of: "-", with: "")
133
+ }
134
+
135
+ package static func build(
136
+ settings: CrumbReportSettings,
137
+ input: CrumbReportBuildInput
138
+ ) throws -> CrumbSerializedReportEnvelope {
139
+ try validate(settings: settings, input: input)
140
+ let diagnostics = effectiveDiagnostics(input.diagnostics, settings: settings)
141
+ let category = input.category.trimmingCharacters(in: .whitespacesAndNewlines)
142
+ let description = input.description.trimmingCharacters(in: .whitespacesAndNewlines)
143
+ let screenshotEnabled = settings.capture.screenshot
144
+ && settings.evidence.contains(.screenshot)
145
+ let screenshotCapture: CrumbScreenshotCaptureState = if !settings.capture.screenshot {
146
+ .disabledByConfiguration
147
+ } else if !settings.evidence.contains(.screenshot) {
148
+ .disabledByPolicy
149
+ } else {
150
+ input.screenshotCapture
151
+ }
152
+ let screenshotMasking = screenshotEnabled
153
+ ? input.screenshotMasking
154
+ : .notApplicable
155
+ let artifacts = screenshotEnabled ? input.artifacts : []
156
+ let memory: MemoryDTO? = if diagnostics.residentMemoryBytes != nil
157
+ || diagnostics.physicalFootprintBytes != nil {
158
+ MemoryDTO(
159
+ residentBytes: diagnostics.residentMemoryBytes,
160
+ physicalFootprintBytes: diagnostics.physicalFootprintBytes
161
+ )
162
+ } else {
163
+ nil
164
+ }
165
+ let health = diagnostics.network.healthCheck.map {
166
+ HealthDTO(
167
+ host: $0.host,
168
+ succeeded: $0.succeeded,
169
+ statusCode: $0.statusCode,
170
+ latencyMS: $0.latencyMilliseconds,
171
+ failure: $0.failure
172
+ )
173
+ }
174
+ let logCapture = switch diagnostics.logs.status {
175
+ case .disabled: "disabled_by_configuration"
176
+ case .disabledByPolicy: "disabled_by_policy"
177
+ case .unavailable: "unavailable"
178
+ case .captured, .empty: "enabled"
179
+ }
180
+ let customContext = settings.customContext
181
+
182
+ let envelope = EnvelopeDTO(
183
+ schemaVersion: diagnostics.screenContext != nil ? "1.2" : (diagnostics.stackTraces.scope == "native_threads" || diagnostics.rendering != nil) ? "1.1" : "1.0",
184
+ reportID: input.reportID,
185
+ trigger: input.javascriptCrash == nil ? input.trigger.rawValue : "javascript_crash",
186
+ triggeredAt: input.triggeredAt,
187
+ submittedAt: input.submittedAt,
188
+ release: ReleaseDTO(
189
+ platform: "ios",
190
+ appVersion: settings.release.appVersion,
191
+ nativeBuild: settings.release.nativeBuild,
192
+ jsBundleVersion: settings.release.bundleVersion,
193
+ environment: settings.environment
194
+ ),
195
+ application: settings.application.name.map { ApplicationDTO(name: $0) },
196
+ sdk: SDKDTO(name: "crumb-ios", version: CrumbSDKVersion.current, integration: "native"),
197
+ runtime: RuntimeDTO(
198
+ os: "ios",
199
+ osVersion: input.runtime.osVersion,
200
+ deviceFamily: input.runtime.deviceFamily,
201
+ locale: input.runtime.locale,
202
+ timezone: input.runtime.timezone
203
+ ),
204
+ userInput: UserInputDTO(
205
+ category: category.lowercased(),
206
+ description: description
207
+ ),
208
+ diagnostics: DiagnosticsDTO(
209
+ capturedAt: diagnostics.capturedAt,
210
+ location: diagnostics.location,
211
+ process: ProcessDTO(name: diagnostics.processName, id: Int(diagnostics.processID)),
212
+ cpuUsagePercent: finite(diagnostics.cpuUsagePercent),
213
+ memory: memory,
214
+ thermalState: diagnostics.thermalState,
215
+ threads: ThreadsDTO(
216
+ count: diagnostics.threadCount,
217
+ busiest: diagnostics.busiestThreads.map {
218
+ ThreadDTO(
219
+ id: String($0.id),
220
+ name: $0.name,
221
+ state: $0.state,
222
+ cpuUsagePercent: finite($0.cpuUsagePercent)
223
+ )
224
+ }
225
+ ),
226
+ rendering: diagnostics.rendering,
227
+ screenContext: diagnostics.screenContext,
228
+ gpu: GPUDTO(status: "unavailable_on_demand"),
229
+ network: NetworkDTO(
230
+ status: diagnostics.network.status,
231
+ transport: diagnostics.network.transport,
232
+ cellularGeneration: normalizeGeneration(diagnostics.network.cellularGeneration),
233
+ isExpensive: diagnostics.network.isExpensive,
234
+ isConstrained: diagnostics.network.isConstrained,
235
+ healthCheck: health
236
+ ),
237
+ logs: LogsDTO(
238
+ status: diagnostics.logs.status.rawValue,
239
+ sources: diagnostics.logs.sources,
240
+ entries: diagnostics.logs.entries.map {
241
+ LogEntryDTO(
242
+ timestamp: $0.timestamp,
243
+ level: $0.level.rawValue,
244
+ source: $0.source,
245
+ category: $0.category,
246
+ message: $0.message
247
+ )
248
+ },
249
+ truncated: diagnostics.logs.truncated,
250
+ droppedEntryCount: diagnostics.logs.droppedEntryCount,
251
+ failures: diagnostics.logs.failures
252
+ ),
253
+ stackTraces: StackTracesDTO(
254
+ status: diagnostics.stackTraces.status.rawValue,
255
+ scope: diagnostics.stackTraces.scope,
256
+ threads: diagnostics.stackTraces.threads.map {
257
+ ThreadStackDTO(
258
+ id: String($0.id),
259
+ name: $0.name,
260
+ state: $0.state,
261
+ frames: $0.frames
262
+ )
263
+ },
264
+ truncated: diagnostics.stackTraces.truncated,
265
+ unavailableReason: diagnostics.stackTraces.unavailableReason
266
+ )
267
+ ),
268
+ privacy: PrivacyDTO(
269
+ screenshotCapture: screenshotCapture.rawValue,
270
+ screenshotMasking: screenshotMasking.rawValue,
271
+ diagnosticsCapture: diagnostics.rendering == nil ? "on_demand" : "on_demand_with_rendering_buffer",
272
+ logCapture: logCapture,
273
+ policyStatus: settings.policyStatus.rawValue,
274
+ workspacePolicyVersion: settings.workspacePolicyVersion
275
+ ),
276
+ customContext: customContext.isEmpty ? nil : customContext,
277
+ javascriptCrash: input.javascriptCrash.map(JavaScriptCrashDTO.init),
278
+ artifacts: artifacts.map {
279
+ ArtifactDTO(
280
+ id: $0.id,
281
+ kind: $0.kind,
282
+ mimeType: $0.mimeType,
283
+ byteSize: $0.byteSize,
284
+ sha256: $0.sha256,
285
+ redactionState: $0.redactionState,
286
+ uploadID: $0.uploadID
287
+ )
288
+ }
289
+ )
290
+
291
+ let encoder = JSONEncoder()
292
+ encoder.dateEncodingStrategy = .iso8601
293
+ encoder.keyEncodingStrategy = .convertToSnakeCase
294
+ encoder.outputFormatting = [.sortedKeys]
295
+ return CrumbSerializedReportEnvelope(
296
+ reportID: input.reportID,
297
+ submittedAt: input.submittedAt,
298
+ data: try encoder.encode(envelope)
299
+ )
300
+ }
301
+
302
+ private static func validate(
303
+ settings: CrumbReportSettings,
304
+ input: CrumbReportBuildInput
305
+ ) throws {
306
+ guard hasLength(settings.environment, maximum: 64),
307
+ hasLength(settings.release.appVersion, maximum: 64),
308
+ hasLength(settings.release.nativeBuild, maximum: 64),
309
+ settings.release.bundleVersion.map({ hasLength($0, maximum: 128) }) ?? true else {
310
+ throw CrumbReportEnvelopeError.invalidConfiguration
311
+ }
312
+ guard input.reportID.range(
313
+ of: #"^rpt_[A-Za-z0-9_-]{16,80}$"#,
314
+ options: .regularExpression
315
+ ) != nil else {
316
+ throw CrumbReportEnvelopeError.invalidReportID
317
+ }
318
+ guard input.triggeredAt.timeIntervalSinceReferenceDate.isFinite,
319
+ input.submittedAt.timeIntervalSinceReferenceDate.isFinite,
320
+ input.triggeredAt <= input.submittedAt else {
321
+ throw CrumbReportEnvelopeError.invalidTimestampOrder
322
+ }
323
+ guard hasLength(input.runtime.osVersion, maximum: 64),
324
+ hasLength(input.runtime.deviceFamily, maximum: 128),
325
+ hasLength(input.runtime.locale, maximum: 64),
326
+ hasLength(input.runtime.timezone, maximum: 128) else {
327
+ throw CrumbReportEnvelopeError.invalidRuntime
328
+ }
329
+ let category = input.category.trimmingCharacters(in: .whitespacesAndNewlines)
330
+ guard !category.isEmpty, category.unicodeScalars.count <= 64 else {
331
+ throw CrumbReportEnvelopeError.invalidCategory
332
+ }
333
+ let description = input.description.trimmingCharacters(in: .whitespacesAndNewlines)
334
+ guard !description.isEmpty, description.unicodeScalars.count <= 4_000 else {
335
+ throw CrumbReportEnvelopeError.invalidDescription
336
+ }
337
+ guard input.artifacts.count <= 10 else {
338
+ throw CrumbReportEnvelopeError.tooManyArtifacts
339
+ }
340
+ if let crash = input.javascriptCrash {
341
+ guard ["javascript", "native_termination_wrapper"].contains(crash.source),
342
+ ["exception", "unhandled_rejection", "native_termination_wrapper"].contains(crash.kind),
343
+ !crash.type.isEmpty,
344
+ crash.type.utf8.count <= 128,
345
+ !crash.message.isEmpty,
346
+ crash.message.utf8.count <= 4_000,
347
+ crash.stack.map({ $0.utf8.count <= 16_384 }) ?? true,
348
+ crash.breadcrumbs.count <= 32,
349
+ crash.context.count <= 16,
350
+ crash.context.keys.allSatisfy({ CrumbCustomContextSanitizer.isValidKey($0) }) else {
351
+ throw CrumbReportEnvelopeError.invalidJavaScriptCrash
352
+ }
353
+ }
354
+ let artifactIDPattern = try! NSRegularExpression(pattern: "^art_[A-Za-z0-9_-]{12,80}$")
355
+ let uploadIDPattern = try! NSRegularExpression(pattern: "^upl_[A-Za-z0-9_-]{12,80}$")
356
+ let digestPattern = try! NSRegularExpression(pattern: "^[a-f0-9]{64}$")
357
+ let kinds = Set(["screenshot", "annotated_screenshot", "other"])
358
+ let redactionStates = Set(["sanitized", "masked", "not_applicable"])
359
+ for artifact in input.artifacts {
360
+ guard matches(artifact.id, expression: artifactIDPattern),
361
+ kinds.contains(artifact.kind),
362
+ hasLength(artifact.mimeType, maximum: 128),
363
+ artifact.byteSize >= 0,
364
+ artifact.byteSize <= 26_214_400,
365
+ matches(artifact.sha256, expression: digestPattern),
366
+ redactionStates.contains(artifact.redactionState),
367
+ matches(artifact.uploadID, expression: uploadIDPattern) else {
368
+ throw CrumbReportEnvelopeError.invalidArtifact
369
+ }
370
+ }
371
+ }
372
+
373
+ private static func effectiveDiagnostics(
374
+ _ input: CrumbDiagnosticsSnapshot,
375
+ settings: CrumbReportSettings
376
+ ) -> CrumbDiagnosticsSnapshot {
377
+ let performanceEnabled = settings.evidence.contains(.performance)
378
+ let networkEnabled = settings.evidence.contains(.network)
379
+ let healthCheckEnabled = networkEnabled && settings.evidence.contains(.healthCheck)
380
+ let logsEnabled = settings.evidence.contains(.logs)
381
+ let stacksEnabled = settings.evidence.contains(.threadStacks)
382
+ return CrumbDiagnosticsSnapshot(
383
+ capturedAt: input.capturedAt,
384
+ location: input.location,
385
+ processName: input.processName,
386
+ processID: input.processID,
387
+ cpuUsagePercent: performanceEnabled ? input.cpuUsagePercent : nil,
388
+ residentMemoryBytes: performanceEnabled ? input.residentMemoryBytes : nil,
389
+ physicalFootprintBytes: performanceEnabled ? input.physicalFootprintBytes : nil,
390
+ thermalState: performanceEnabled ? input.thermalState : "unavailable",
391
+ threadCount: performanceEnabled ? input.threadCount : 0,
392
+ busiestThreads: performanceEnabled ? input.busiestThreads : [],
393
+ gpuStatus: performanceEnabled ? input.gpuStatus : "unavailable_by_policy",
394
+ network: networkEnabled ? CrumbNetworkDiagnostic(
395
+ status: input.network.status,
396
+ transport: input.network.transport,
397
+ cellularGeneration: input.network.cellularGeneration,
398
+ isExpensive: input.network.isExpensive,
399
+ isConstrained: input.network.isConstrained,
400
+ healthCheck: healthCheckEnabled ? input.network.healthCheck : nil
401
+ ) : CrumbNetworkDiagnostic(
402
+ status: "unknown",
403
+ transport: "unknown",
404
+ cellularGeneration: nil,
405
+ isExpensive: false,
406
+ isConstrained: false,
407
+ healthCheck: nil
408
+ ),
409
+ logs: logsEnabled ? input.logs : CrumbLogDiagnostic(
410
+ status: settings.diagnostics.logs.enabled ? .disabledByPolicy : .disabled,
411
+ sources: [],
412
+ entries: [],
413
+ truncated: false,
414
+ droppedEntryCount: 0,
415
+ failures: []
416
+ ),
417
+ stackTraces: stacksEnabled ? input.stackTraces : CrumbStackTraceDiagnostic(
418
+ status: .unavailable,
419
+ scope: "none",
420
+ threads: [],
421
+ truncated: false,
422
+ unavailableReason: "disabled_by_policy"
423
+ ), rendering: performanceEnabled && settings.diagnostics.renderingEnabled ? input.rendering?.validated() : nil,
424
+ screenContext: settings.evidence.contains(.customContext) ? input.screenContext?.validated() : nil
425
+ )
426
+ }
427
+
428
+ private static func hasLength(_ value: String, maximum: Int) -> Bool {
429
+ let trimmed = value.trimmingCharacters(in: .whitespacesAndNewlines)
430
+ return !trimmed.isEmpty && value.unicodeScalars.count <= maximum
431
+ }
432
+
433
+ private static func matches(_ value: String, expression: NSRegularExpression) -> Bool {
434
+ let range = NSRange(value.startIndex..., in: value)
435
+ return expression.firstMatch(in: value, range: range)?.range == range
436
+ }
437
+
438
+ private static func finite(_ value: Double?) -> Double? {
439
+ value?.isFinite == true ? value : nil
440
+ }
441
+
442
+ private static func normalizeGeneration(_ value: String?) -> String? {
443
+ switch value?.lowercased() {
444
+ case "2g": "2g"
445
+ case "3g": "3g"
446
+ case "4g/lte", "4g_lte": "4g_lte"
447
+ case "5g": "5g"
448
+ case .some: "unknown"
449
+ case nil: nil
450
+ }
451
+ }
452
+ }
453
+
454
+ private struct EnvelopeDTO: Encodable {
455
+ let schemaVersion: String
456
+ let reportID: String
457
+ let trigger: String
458
+ let triggeredAt: Date
459
+ let submittedAt: Date
460
+ let release: ReleaseDTO
461
+ let application: ApplicationDTO?
462
+ let sdk: SDKDTO
463
+ let runtime: RuntimeDTO
464
+ let userInput: UserInputDTO
465
+ let diagnostics: DiagnosticsDTO
466
+ let privacy: PrivacyDTO
467
+ let customContext: [String: String]?
468
+ let javascriptCrash: JavaScriptCrashDTO?
469
+ let artifacts: [ArtifactDTO]
470
+ }
471
+
472
+ private struct JavaScriptCrashDTO: Encodable {
473
+ let source: String
474
+ let kind: String
475
+ let type: String
476
+ let message: String
477
+ let stack: String?
478
+ let occurredAt: Date
479
+ let release: JavaScriptReleaseDTO
480
+ let breadcrumbs: [JavaScriptBreadcrumbDTO]
481
+ let context: [String: String]
482
+ let isFatal: Bool
483
+ let nativeTerminationWrapperObserved: Bool
484
+
485
+ init(_ crash: CrumbJavaScriptCrash) {
486
+ source = crash.source
487
+ kind = crash.kind
488
+ type = crash.type
489
+ message = crash.message
490
+ stack = crash.stack
491
+ occurredAt = crash.occurredAt
492
+ release = JavaScriptReleaseDTO(crash.release)
493
+ breadcrumbs = crash.breadcrumbs.map(JavaScriptBreadcrumbDTO.init)
494
+ context = crash.context
495
+ isFatal = crash.isFatal
496
+ nativeTerminationWrapperObserved = crash.nativeTerminationWrapperObserved
497
+ }
498
+ }
499
+
500
+ private struct JavaScriptReleaseDTO: Encodable {
501
+ let appVersion: String?
502
+ let nativeBuild: String?
503
+ let bundleVersion: String?
504
+
505
+ init(_ release: CrumbJavaScriptCrashRelease) {
506
+ appVersion = release.appVersion
507
+ nativeBuild = release.nativeBuild
508
+ bundleVersion = release.bundleVersion
509
+ }
510
+ }
511
+
512
+ private struct JavaScriptBreadcrumbDTO: Encodable {
513
+ let timestamp: Date
514
+ let source: String
515
+ let category: String
516
+ let message: String
517
+
518
+ init(_ breadcrumb: CrumbJavaScriptBreadcrumb) {
519
+ timestamp = breadcrumb.timestamp
520
+ source = breadcrumb.source
521
+ category = breadcrumb.category
522
+ message = breadcrumb.message
523
+ }
524
+ }
525
+
526
+ private struct ReleaseDTO: Encodable {
527
+ let platform: String
528
+ let appVersion: String
529
+ let nativeBuild: String
530
+ let jsBundleVersion: String?
531
+ let environment: String
532
+ }
533
+
534
+ private struct ApplicationDTO: Encodable {
535
+ let name: String
536
+ }
537
+
538
+ private struct SDKDTO: Encodable {
539
+ let name: String
540
+ let version: String
541
+ let integration: String
542
+ }
543
+
544
+ private struct RuntimeDTO: Encodable {
545
+ let os: String
546
+ let osVersion: String
547
+ let deviceFamily: String
548
+ let locale: String
549
+ let timezone: String
550
+ }
551
+
552
+ private struct UserInputDTO: Encodable {
553
+ let category: String
554
+ let description: String
555
+ }
556
+
557
+ private struct DiagnosticsDTO: Encodable {
558
+ let capturedAt: Date
559
+ let location: String
560
+ let process: ProcessDTO
561
+ let cpuUsagePercent: Double?
562
+ let memory: MemoryDTO?
563
+ let thermalState: String
564
+ let threads: ThreadsDTO
565
+ let rendering: CrumbRenderingSnapshot?
566
+ let screenContext: CrumbScreenContext?
567
+ let gpu: GPUDTO
568
+ let network: NetworkDTO
569
+ let logs: LogsDTO
570
+ let stackTraces: StackTracesDTO
571
+ }
572
+
573
+ private struct ProcessDTO: Encodable { let name: String; let id: Int }
574
+
575
+ private struct MemoryDTO: Encodable {
576
+ let residentBytes: UInt64?
577
+ let physicalFootprintBytes: UInt64?
578
+ }
579
+
580
+ private struct ThreadsDTO: Encodable {
581
+ let count: Int
582
+ let busiest: [ThreadDTO]
583
+ }
584
+
585
+ private struct ThreadDTO: Encodable {
586
+ let id: String
587
+ let name: String
588
+ let state: String
589
+ let cpuUsagePercent: Double?
590
+ }
591
+
592
+ private struct GPUDTO: Encodable { let status: String }
593
+
594
+ private struct NetworkDTO: Encodable {
595
+ let status: String
596
+ let transport: String
597
+ let cellularGeneration: String?
598
+ let isExpensive: Bool
599
+ let isConstrained: Bool
600
+ let healthCheck: HealthDTO?
601
+ }
602
+
603
+ private struct HealthDTO: Encodable {
604
+ let host: String
605
+ let succeeded: Bool
606
+ let statusCode: Int?
607
+ let latencyMS: Int
608
+ let failure: String?
609
+
610
+ private enum CodingKeys: String, CodingKey {
611
+ case host, succeeded, failure
612
+ case statusCode = "status_code"
613
+ case latencyMS = "latency_ms"
614
+ }
615
+ }
616
+
617
+ private struct LogsDTO: Encodable {
618
+ let status: String
619
+ let sources: [String]
620
+ let entries: [LogEntryDTO]
621
+ let truncated: Bool
622
+ let droppedEntryCount: Int
623
+ let failures: [String]
624
+ }
625
+
626
+ private struct LogEntryDTO: Encodable {
627
+ let timestamp: Date
628
+ let level: String
629
+ let source: String
630
+ let category: String
631
+ let message: String
632
+ }
633
+
634
+ private struct StackTracesDTO: Encodable {
635
+ let status: String
636
+ let scope: String
637
+ let threads: [ThreadStackDTO]
638
+ let truncated: Bool
639
+ let unavailableReason: String?
640
+ }
641
+
642
+ private struct ThreadStackDTO: Encodable {
643
+ let id: String
644
+ let name: String
645
+ let state: String
646
+ let frames: [String]
647
+ }
648
+
649
+ private struct PrivacyDTO: Encodable {
650
+ let screenshotCapture: String
651
+ let screenshotMasking: String
652
+ let diagnosticsCapture: String
653
+ let logCapture: String
654
+ let policyStatus: String
655
+ let workspacePolicyVersion: Int?
656
+ }
657
+
658
+ private struct ArtifactDTO: Encodable {
659
+ let id: String
660
+ let kind: String
661
+ let mimeType: String
662
+ let byteSize: Int
663
+ let sha256: String
664
+ let redactionState: String
665
+ let uploadID: String
666
+ }