react-native-inapp-inspector 2.3.16 → 2.3.18

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 (346) hide show
  1. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +438 -7
  2. package/bin/cli.js +0 -0
  3. package/dist/commonjs/capture.d.ts +26 -0
  4. package/dist/commonjs/capture.js +32 -0
  5. package/dist/commonjs/components/AnalyticsEventCard.js +11 -11
  6. package/dist/commonjs/components/AnimatedEntrance.js +6 -70
  7. package/dist/commonjs/components/DomainHeader.js +3 -48
  8. package/dist/commonjs/components/EmptyState.js +2 -2
  9. package/dist/commonjs/components/HeadersSection.js +14 -34
  10. package/dist/commonjs/components/Inspector/AnalyticsTab.js +1 -2
  11. package/dist/commonjs/components/Inspector/ConsoleTab.js +1 -1
  12. package/dist/commonjs/components/Inspector/CrashTab.js +4 -2
  13. package/dist/commonjs/components/Inspector/DebuggingTab.js +2 -2
  14. package/dist/commonjs/components/Inspector/InspectorHeader.js +651 -313
  15. package/dist/commonjs/components/Inspector/MainScreen.js +25 -70
  16. package/dist/commonjs/components/Inspector/MediaGalleryTab.d.ts +2 -0
  17. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +307 -0
  18. package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +11 -0
  19. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +393 -0
  20. package/dist/commonjs/components/Inspector/NetworkTab.js +183 -182
  21. package/dist/commonjs/components/Inspector/NpmUpdateToast.js +4 -9
  22. package/dist/commonjs/components/Inspector/ReduxTab.js +4 -2
  23. package/dist/commonjs/components/Inspector/SettingsPanel.js +245 -0
  24. package/dist/commonjs/components/Inspector/SkeletonPlaceholder.js +2 -2
  25. package/dist/commonjs/components/Inspector/StorageTab.js +3 -3
  26. package/dist/commonjs/components/Inspector/TabBar.js +5 -10
  27. package/dist/commonjs/components/Inspector/UpdateAvailableModal.js +5 -10
  28. package/dist/commonjs/components/JsonViewer.js +43 -20
  29. package/dist/commonjs/components/LogCard.js +5 -5
  30. package/dist/commonjs/components/MetaAccordion.js +78 -80
  31. package/dist/commonjs/components/NetworkIcons.d.ts +8 -0
  32. package/dist/commonjs/components/NetworkIcons.js +51 -1
  33. package/dist/commonjs/components/SectionHeader.js +3 -48
  34. package/dist/commonjs/components/SkeletonPlaceholder.js +2 -2
  35. package/dist/commonjs/components/SourcePageCard.js +43 -45
  36. package/dist/commonjs/components/Toast.js +4 -4
  37. package/dist/commonjs/components/TouchableScale.js +9 -65
  38. package/dist/commonjs/components/TreeNode.js +2 -14
  39. package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
  40. package/dist/commonjs/constants/telemetryConfig.js +3 -3
  41. package/dist/commonjs/constants/version.d.ts +1 -1
  42. package/dist/commonjs/constants/version.js +1 -1
  43. package/dist/commonjs/customHooks/useAccordion.d.ts +3 -8
  44. package/dist/commonjs/customHooks/useAccordion.js +6 -36
  45. package/dist/commonjs/helpers/index.d.ts +2 -1
  46. package/dist/commonjs/helpers/index.js +10 -1
  47. package/dist/commonjs/i18n/locales/en.json +66 -2
  48. package/dist/commonjs/index.d.ts +1 -0
  49. package/dist/commonjs/index.js +39 -22
  50. package/dist/commonjs/native/NativeInspector.d.ts +60 -0
  51. package/dist/commonjs/native/NativeInspector.js +109 -2
  52. package/dist/commonjs/native/NativeNetworkInspector.d.ts +8 -0
  53. package/dist/commonjs/styles/AppColors.d.ts +36 -0
  54. package/dist/commonjs/styles/AppColors.js +36 -0
  55. package/dist/commonjs/styles/index.d.ts +3 -1
  56. package/dist/commonjs/styles/index.js +3 -1
  57. package/dist/commonjs/types/enums.d.ts +1 -0
  58. package/dist/commonjs/types/enums.js +1 -0
  59. package/dist/commonjs/types/index.d.ts +2 -2
  60. package/dist/esm/capture.d.ts +26 -0
  61. package/dist/esm/capture.js +29 -0
  62. package/dist/esm/components/AnalyticsEventCard.js +11 -11
  63. package/dist/esm/components/AnimatedEntrance.js +4 -38
  64. package/dist/esm/components/DomainHeader.js +4 -16
  65. package/dist/esm/components/EmptyState.js +2 -2
  66. package/dist/esm/components/HeadersSection.js +16 -36
  67. package/dist/esm/components/Inspector/AnalyticsTab.js +2 -3
  68. package/dist/esm/components/Inspector/ConsoleTab.js +2 -2
  69. package/dist/esm/components/Inspector/CrashTab.js +5 -3
  70. package/dist/esm/components/Inspector/DebuggingTab.js +3 -3
  71. package/dist/esm/components/Inspector/InspectorHeader.js +654 -316
  72. package/dist/esm/components/Inspector/MainScreen.js +25 -70
  73. package/dist/esm/components/Inspector/MediaGalleryTab.d.ts +2 -0
  74. package/dist/esm/components/Inspector/MediaGalleryTab.js +267 -0
  75. package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +11 -0
  76. package/dist/esm/components/Inspector/MediaPreviewModal.js +353 -0
  77. package/dist/esm/components/Inspector/NetworkTab.js +185 -184
  78. package/dist/esm/components/Inspector/NpmUpdateToast.js +5 -10
  79. package/dist/esm/components/Inspector/ReduxTab.js +5 -3
  80. package/dist/esm/components/Inspector/SettingsPanel.js +246 -1
  81. package/dist/esm/components/Inspector/SkeletonPlaceholder.js +2 -2
  82. package/dist/esm/components/Inspector/StorageTab.js +3 -3
  83. package/dist/esm/components/Inspector/TabBar.js +6 -11
  84. package/dist/esm/components/Inspector/UpdateAvailableModal.js +6 -11
  85. package/dist/esm/components/JsonViewer.js +43 -20
  86. package/dist/esm/components/LogCard.js +5 -5
  87. package/dist/esm/components/MetaAccordion.js +79 -81
  88. package/dist/esm/components/NetworkIcons.d.ts +8 -0
  89. package/dist/esm/components/NetworkIcons.js +42 -0
  90. package/dist/esm/components/SectionHeader.js +4 -16
  91. package/dist/esm/components/SkeletonPlaceholder.js +2 -2
  92. package/dist/esm/components/SourcePageCard.js +44 -46
  93. package/dist/esm/components/Toast.js +4 -4
  94. package/dist/esm/components/TouchableScale.js +7 -33
  95. package/dist/esm/components/TreeNode.js +4 -16
  96. package/dist/esm/constants/telemetryConfig.d.ts +3 -3
  97. package/dist/esm/constants/telemetryConfig.js +3 -3
  98. package/dist/esm/constants/version.d.ts +1 -1
  99. package/dist/esm/constants/version.js +1 -1
  100. package/dist/esm/customHooks/useAccordion.d.ts +3 -8
  101. package/dist/esm/customHooks/useAccordion.js +7 -37
  102. package/dist/esm/helpers/index.d.ts +2 -1
  103. package/dist/esm/helpers/index.js +8 -0
  104. package/dist/esm/i18n/locales/en.json +66 -2
  105. package/dist/esm/index.d.ts +1 -0
  106. package/dist/esm/index.js +36 -21
  107. package/dist/esm/native/NativeInspector.d.ts +60 -0
  108. package/dist/esm/native/NativeInspector.js +100 -1
  109. package/dist/esm/native/NativeNetworkInspector.d.ts +8 -0
  110. package/dist/esm/styles/AppColors.d.ts +36 -0
  111. package/dist/esm/styles/AppColors.js +36 -0
  112. package/dist/esm/styles/index.d.ts +3 -1
  113. package/dist/esm/styles/index.js +3 -1
  114. package/dist/esm/types/enums.d.ts +1 -0
  115. package/dist/esm/types/enums.js +1 -0
  116. package/dist/esm/types/index.d.ts +2 -2
  117. package/ios/NetworkInspectorModule.h +1 -0
  118. package/ios/NetworkInspectorModule.mm +736 -7
  119. package/package.json +10 -2
  120. package/react-native-inapp-inspector.podspec +1 -0
  121. package/src/capture.ts +101 -0
  122. package/src/components/AnalyticsEventCard.tsx +15 -13
  123. package/src/components/AnimatedEntrance.tsx +3 -47
  124. package/src/components/DomainHeader.tsx +4 -17
  125. package/src/components/EmptyState.tsx +2 -2
  126. package/src/components/HeadersSection.tsx +31 -56
  127. package/src/components/Inspector/AnalyticsTab.tsx +2 -2
  128. package/src/components/Inspector/ConsoleTab.tsx +2 -1
  129. package/src/components/Inspector/CrashTab.tsx +4 -2
  130. package/src/components/Inspector/DebuggingTab.tsx +2 -2
  131. package/src/components/Inspector/InspectorHeader.tsx +1215 -789
  132. package/src/components/Inspector/MainScreen.tsx +44 -85
  133. package/src/components/Inspector/MediaGalleryTab.tsx +355 -0
  134. package/src/components/Inspector/MediaPreviewModal.tsx +435 -0
  135. package/src/components/Inspector/NetworkTab.tsx +14 -15
  136. package/src/components/Inspector/NpmUpdateToast.tsx +4 -9
  137. package/src/components/Inspector/ReduxTab.tsx +5 -2
  138. package/src/components/Inspector/SettingsPanel.tsx +303 -0
  139. package/src/components/Inspector/SkeletonPlaceholder.tsx +2 -2
  140. package/src/components/Inspector/StorageTab.tsx +3 -3
  141. package/src/components/Inspector/TabBar.tsx +6 -12
  142. package/src/components/Inspector/UpdateAvailableModal.tsx +6 -10
  143. package/src/components/JsonViewer.tsx +101 -60
  144. package/src/components/LogCard.tsx +10 -8
  145. package/src/components/MetaAccordion.tsx +6 -6
  146. package/src/components/NetworkIcons.tsx +150 -0
  147. package/src/components/SectionHeader.tsx +4 -16
  148. package/src/components/SkeletonPlaceholder.tsx +2 -2
  149. package/src/components/SourcePageCard.tsx +57 -55
  150. package/src/components/Toast.tsx +4 -4
  151. package/src/components/TouchableScale.tsx +8 -38
  152. package/src/components/TreeNode.tsx +5 -20
  153. package/src/constants/telemetryConfig.ts +3 -5
  154. package/src/constants/version.ts +1 -1
  155. package/src/customHooks/useAccordion.tsx +10 -43
  156. package/src/helpers/index.ts +10 -1
  157. package/src/i18n/locales/en.json +69 -2
  158. package/src/index.tsx +51 -23
  159. package/src/native/NativeInspector.ts +186 -1
  160. package/src/native/NativeNetworkInspector.ts +9 -0
  161. package/src/styles/AppColors.ts +38 -0
  162. package/src/styles/index.ts +3 -1
  163. package/src/types/enums.ts +3 -0
  164. package/src/types/index.ts +2 -2
  165. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  166. package/android/.gradle/8.9/checksums/md5-checksums.bin +0 -0
  167. package/android/.gradle/8.9/checksums/sha1-checksums.bin +0 -0
  168. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  169. package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
  170. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  171. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  172. package/android/.gradle/8.9/gc.properties +0 -0
  173. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  174. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  175. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  176. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  177. package/android/.gradle/9.2.0/gc.properties +0 -0
  178. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  179. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  180. package/android/.gradle/vcs-1/gc.properties +0 -0
  181. package/android/build/.transforms/6683d6eeaa3e1dfa689c3385111a0386/results.bin +0 -1
  182. package/android/build/.transforms/6683d6eeaa3e1dfa689c3385111a0386/transformed/classes/classes_dex/classes.dex +0 -0
  183. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/results.bin +0 -1
  184. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/BuildConfig.dex +0 -0
  185. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView$iconView$1.dex +0 -0
  186. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView.dex +0 -0
  187. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NativeNetworkInspectorSpec.dex +0 -0
  188. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$Companion.dex +0 -0
  189. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$frameCallback$1.dex +0 -0
  190. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$shakeListener$1.dex +0 -0
  191. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule.dex +0 -0
  192. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorPackage.dex +0 -0
  193. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  194. package/android/build/generated/source/buildConfig/debug/com/inappinspector/BuildConfig.java +0 -10
  195. package/android/build/generated/source/codegen/java/com/inappinspector/NativeNetworkInspectorSpec.java +0 -104
  196. package/android/build/generated/source/codegen/jni/CMakeLists.txt +0 -28
  197. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec-generated.cpp +0 -128
  198. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec.h +0 -31
  199. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.cpp +0 -22
  200. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.h +0 -24
  201. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.cpp +0 -16
  202. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.h +0 -17
  203. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.cpp +0 -19
  204. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.h +0 -18
  205. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/RNInAppInspectorSpecJSI.h +0 -177
  206. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.cpp +0 -17
  207. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.h +0 -23
  208. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.cpp +0 -16
  209. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.h +0 -20
  210. package/android/build/generated/source/codegen/schema.json +0 -1
  211. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -7
  212. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  213. package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
  214. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  215. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  216. package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
  217. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  218. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  219. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  220. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  221. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  222. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  223. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  224. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  225. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  226. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  227. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/BuildConfig.class +0 -0
  228. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  229. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  230. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -7
  231. package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-react-native-inapp-inspector.jar +0 -0
  232. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -7
  233. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  234. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  235. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  236. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/BuildConfig.class +0 -0
  237. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  238. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  239. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  240. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  241. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  242. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  243. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule.class +0 -0
  244. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  245. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  246. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  247. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  248. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  249. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  250. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  251. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  252. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  253. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  254. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  255. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  256. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  257. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  258. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  259. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  260. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  261. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  262. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  263. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  264. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  265. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  266. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  267. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  268. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  269. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  270. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  271. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  272. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  273. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  274. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  275. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  276. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  277. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  278. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  279. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  280. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  281. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  282. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  283. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  284. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  285. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  286. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  287. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  288. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  289. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  290. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  291. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  292. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  293. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  294. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  295. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  296. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  297. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  298. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  299. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  300. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  301. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  302. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  303. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  304. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  305. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  306. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  307. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  308. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  309. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  310. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  311. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  312. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  313. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  314. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  315. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  316. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  317. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  318. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  319. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  320. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  321. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  322. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  323. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  324. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  325. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  326. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  327. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  328. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  329. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  330. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  331. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  332. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  333. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  334. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  335. package/android/build/outputs/aar/react-native-inapp-inspector-debug.aar +0 -0
  336. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
  337. package/android/build/reports/problems/problems-report.html +0 -659
  338. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  339. package/android/build/tmp/kotlin-classes/debug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  340. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  341. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  342. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  343. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  344. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  345. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule.class +0 -0
  346. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorPackage.class +0 -0
@@ -17,7 +17,8 @@ import { clearPerformanceEvents } from '../../customHooks/performanceTracker';
17
17
  import { isReduxConnected } from '../../customHooks/reduxLogger';
18
18
  import { isAnalyticsConnected } from '../../customHooks/analyticsLogger';
19
19
  import { useTranslation } from '../../i18n';
20
- import { SignalIcon, TerminalIcon, AnalyticsIcon, SettingsIcon, SunIcon, MoonIcon, ScreenIcon, MotionIcon, LayersIcon, EyeIcon, CheckIcon, TrashIcon, PackageIcon, ReduxIcon, PerformanceIcon, CrashIcon, ShieldAlertIcon, ForwardChevronIcon, ChevronDownIcon, NpmIcon, BoltIcon, BrainIcon, SmartphoneIcon, DatabaseIcon, QrCodeIcon, GitHubIcon, InfoCircleIcon, CopyIcon, } from '../NetworkIcons';
20
+ import { SignalIcon, TerminalIcon, AnalyticsIcon, SettingsIcon, SunIcon, MoonIcon, ScreenIcon, MotionIcon, LayersIcon, EyeIcon, CheckIcon, TrashIcon, PackageIcon, ReduxIcon, PerformanceIcon, CrashIcon, ShieldAlertIcon, ForwardChevronIcon, ChevronDownIcon, NpmIcon, BoltIcon, BrainIcon, SmartphoneIcon, DatabaseIcon, QrCodeIcon, GitHubIcon, InfoCircleIcon, CopyIcon, FilmIcon, CameraIcon, VideoCameraIcon, MicrophoneIcon, GifIcon, ImageIcon, } from '../NetworkIcons';
21
+ import { ScreenCapture } from '../../capture';
21
22
  import { LIB_VERSION } from '../../constants';
22
23
  import { copyToClipboard, isLocalDebugEnvironment, getAppName, getBundleIdentifier, getAppVersionAndBuild, } from '../../helpers';
23
24
  import { showToast } from '../../helpers/toast';
@@ -365,6 +366,11 @@ const SettingsPanel = () => {
365
366
  label: t('settings.ramLimits', 'RAM & Limits'),
366
367
  Icon: BrainIcon,
367
368
  },
369
+ {
370
+ key: 'capture',
371
+ label: t('settings.screenVideoCapture', 'Screen & Video Capture'),
372
+ Icon: CameraIcon,
373
+ },
368
374
  {
369
375
  key: 'about',
370
376
  label: t('settings.aboutAndSpecs', 'About & Specs'),
@@ -1715,6 +1721,245 @@ const SettingsPanel = () => {
1715
1721
  </View>
1716
1722
  </View>
1717
1723
  </View>)}
1724
+ {settingsActiveSubTab === 'capture' && (<View style={{ gap: 12 }}>
1725
+
1726
+ <View style={{
1727
+ backgroundColor: AppColors.primaryLight,
1728
+ padding: 16,
1729
+ borderRadius: 14,
1730
+ borderWidth: 1,
1731
+ borderColor: AppColors.grayBorderSecondary,
1732
+ gap: 12,
1733
+ }}>
1734
+ <View style={{ flexDirection: 'row', alignItems: 'center', gap: 10 }}>
1735
+ <View style={{
1736
+ width: 36,
1737
+ height: 36,
1738
+ borderRadius: 10,
1739
+ backgroundColor: AppColors.purpleShade50,
1740
+ alignItems: 'center',
1741
+ justifyContent: 'center',
1742
+ }}>
1743
+ <CameraIcon color={AppColors.purple} size={16}/>
1744
+ </View>
1745
+ <View style={{ flex: 1 }}>
1746
+ <Text style={{
1747
+ fontFamily: AppFonts.interBold,
1748
+ fontSize: 14,
1749
+ lineHeight: 18,
1750
+ color: AppColors.primaryBlack,
1751
+ }}>
1752
+ {t('settings.media.screenshotCardTitle', 'Screenshot Capture Settings')}
1753
+ </Text>
1754
+ <Text style={{
1755
+ fontFamily: AppFonts.interRegular,
1756
+ fontSize: 11,
1757
+ lineHeight: 15,
1758
+ color: AppColors.grayText,
1759
+ marginTop: 1,
1760
+ }}>
1761
+ {t('settings.media.screenshotCardDesc', 'Image encoding format, compression quality and overlay auto-hide')}
1762
+ </Text>
1763
+ </View>
1764
+ </View>
1765
+
1766
+ {renderSettingRow({
1767
+ icon: <ImageIcon color={AppColors.purple} size={16}/>,
1768
+ label: t('settings.media.imageFormat', 'Image Format'),
1769
+ description: t('settings.media.imageFormatDesc', 'Export formats (PNG lossless, JPEG lossy, WebP)'),
1770
+ right: (<View style={{ flexDirection: 'row', gap: 4 }}>
1771
+ {['PNG', 'JPEG', 'WEBP'].map(fmt => (<View key={fmt} style={{
1772
+ paddingHorizontal: 8,
1773
+ paddingVertical: 4,
1774
+ borderRadius: 6,
1775
+ backgroundColor: fmt === 'PNG' ? AppColors.purple : `${AppColors.purple}1A`,
1776
+ }}>
1777
+ <Text style={{
1778
+ fontFamily: AppFonts.interBold,
1779
+ fontSize: 10,
1780
+ color: fmt === 'PNG' ? AppColors.white : AppColors.purple,
1781
+ }}>
1782
+ {fmt}
1783
+ </Text>
1784
+ </View>))}
1785
+ </View>),
1786
+ })}
1787
+
1788
+ {renderSettingRow({
1789
+ icon: <EyeIcon color={AppColors.purple} size={16}/>,
1790
+ label: t('settings.media.autoHide', 'Auto-Hide Inspector During Capture'),
1791
+ description: t('settings.media.autoHideDesc', 'Temporarily hides the inspector overlay during screen capture'),
1792
+ isLast: true,
1793
+ right: (<View style={{
1794
+ paddingHorizontal: 8,
1795
+ paddingVertical: 4,
1796
+ borderRadius: 6,
1797
+ backgroundColor: `${AppColors.emerald500}26`,
1798
+ }}>
1799
+ <Text style={{
1800
+ fontFamily: AppFonts.interBold,
1801
+ fontSize: 10,
1802
+ color: AppColors.emerald500,
1803
+ }}>
1804
+ {t('settings.media.enabled', 'ON')}
1805
+ </Text>
1806
+ </View>),
1807
+ })}
1808
+ </View>
1809
+
1810
+
1811
+ <View style={{
1812
+ backgroundColor: AppColors.primaryLight,
1813
+ padding: 16,
1814
+ borderRadius: 14,
1815
+ borderWidth: 1,
1816
+ borderColor: AppColors.grayBorderSecondary,
1817
+ gap: 12,
1818
+ }}>
1819
+ <View style={{ flexDirection: 'row', alignItems: 'center', gap: 10 }}>
1820
+ <View style={{
1821
+ width: 36,
1822
+ height: 36,
1823
+ borderRadius: 10,
1824
+ backgroundColor: AppColors.purpleShade50,
1825
+ alignItems: 'center',
1826
+ justifyContent: 'center',
1827
+ }}>
1828
+ <VideoCameraIcon color={AppColors.purple} size={16}/>
1829
+ </View>
1830
+ <View style={{ flex: 1 }}>
1831
+ <Text style={{
1832
+ fontFamily: AppFonts.interBold,
1833
+ fontSize: 14,
1834
+ lineHeight: 18,
1835
+ color: AppColors.primaryBlack,
1836
+ }}>
1837
+ {t('settings.media.videoCardTitle', 'Video Recording & GIF Conversion')}
1838
+ </Text>
1839
+ <Text style={{
1840
+ fontFamily: AppFonts.interRegular,
1841
+ fontSize: 11,
1842
+ lineHeight: 15,
1843
+ color: AppColors.grayText,
1844
+ marginTop: 1,
1845
+ }}>
1846
+ {t('settings.media.videoCardDesc', 'ReplayKit hardware encoding, frame capture fallback and GIF generation')}
1847
+ </Text>
1848
+ </View>
1849
+ </View>
1850
+
1851
+ {renderSettingRow({
1852
+ icon: <MicrophoneIcon color={AppColors.purple} size={16}/>,
1853
+ label: t('settings.media.audioMode', 'Audio Source'),
1854
+ description: t('settings.media.audioModeDesc', 'Record video with muted, app audio, or microphone commentary'),
1855
+ right: (<View style={{ flexDirection: 'row', gap: 4 }}>
1856
+ {['Muted', 'App', 'Mic'].map((aud, i) => (<View key={aud} style={{
1857
+ paddingHorizontal: 7,
1858
+ paddingVertical: 4,
1859
+ borderRadius: 6,
1860
+ backgroundColor: i === 0 ? AppColors.purple : `${AppColors.purple}1A`,
1861
+ }}>
1862
+ <Text style={{
1863
+ fontFamily: AppFonts.interBold,
1864
+ fontSize: 10,
1865
+ color: i === 0 ? AppColors.white : AppColors.purple,
1866
+ }}>
1867
+ {aud}
1868
+ </Text>
1869
+ </View>))}
1870
+ </View>),
1871
+ })}
1872
+
1873
+ {renderSettingRow({
1874
+ icon: <FilmIcon color={AppColors.purple} size={16}/>,
1875
+ label: t('settings.media.frameRate', 'Recording Frame Rate (FPS)'),
1876
+ description: t('settings.media.frameRateDesc', 'Target video smoothness: 15, 24, 30, or 60 FPS'),
1877
+ right: (<View style={{ flexDirection: 'row', gap: 4 }}>
1878
+ {['15', '24', '30', '60'].map(fps => (<View key={fps} style={{
1879
+ paddingHorizontal: 6,
1880
+ paddingVertical: 4,
1881
+ borderRadius: 6,
1882
+ backgroundColor: fps === '24' ? AppColors.purple : `${AppColors.purple}1A`,
1883
+ }}>
1884
+ <Text style={{
1885
+ fontFamily: AppFonts.interBold,
1886
+ fontSize: 10,
1887
+ color: fps === '24' ? AppColors.white : AppColors.purple,
1888
+ }}>
1889
+ {fps}fps
1890
+ </Text>
1891
+ </View>))}
1892
+ </View>),
1893
+ })}
1894
+
1895
+ {renderSettingRow({
1896
+ icon: <GifIcon color={AppColors.purple} size={16}/>,
1897
+ label: t('settings.media.gifAutoOpt', 'Auto GIF Optimization'),
1898
+ description: t('settings.media.gifAutoOptDesc', 'Automatic palette reduction and frame skip for lightweight animated GIFs'),
1899
+ isLast: true,
1900
+ right: (<View style={{
1901
+ paddingHorizontal: 8,
1902
+ paddingVertical: 4,
1903
+ borderRadius: 6,
1904
+ backgroundColor: `${AppColors.emerald500}26`,
1905
+ }}>
1906
+ <Text style={{
1907
+ fontFamily: AppFonts.interBold,
1908
+ fontSize: 10,
1909
+ color: AppColors.emerald500,
1910
+ }}>
1911
+ ON
1912
+ </Text>
1913
+ </View>),
1914
+ })}
1915
+ </View>
1916
+
1917
+
1918
+ <View style={{
1919
+ backgroundColor: AppColors.primaryLight,
1920
+ borderRadius: 14,
1921
+ borderWidth: 1,
1922
+ borderColor: AppColors.grayBorderSecondary,
1923
+ padding: 16,
1924
+ }}>
1925
+ {renderSettingRow({
1926
+ icon: <TrashIcon color={AppColors.errorColor} size={16}/>,
1927
+ label: t('settings.media.purgeAll', 'Purge Captured Media Cache'),
1928
+ description: t('settings.media.purgeAllDesc', 'Delete all local screenshots, screen recordings and converted GIFs'),
1929
+ isLast: true,
1930
+ onPress: () => {
1931
+ Alert.alert(t('settings.media.purgeConfirmTitle', 'Purge Media Storage?'), t('settings.media.purgeConfirmMessage', 'This will permanently delete all captured screenshots and videos from disk.'), [
1932
+ { text: t('common.cancel', 'Cancel'), style: 'cancel' },
1933
+ {
1934
+ text: t('settings.media.purgeCacheBtn', 'Purge All'),
1935
+ style: 'destructive',
1936
+ onPress: async () => {
1937
+ await ScreenCapture.clearAllMedia();
1938
+ showToast(t('settings.media.purgedSuccess', 'Media cache cleared successfully'));
1939
+ },
1940
+ },
1941
+ ]);
1942
+ },
1943
+ right: (<View style={{
1944
+ paddingHorizontal: 12,
1945
+ paddingVertical: 6,
1946
+ borderRadius: 8,
1947
+ backgroundColor: `${AppColors.errorColor}14`,
1948
+ borderWidth: 1,
1949
+ borderColor: `${AppColors.errorColor}33`,
1950
+ }}>
1951
+ <Text style={{
1952
+ fontFamily: AppFonts.interBold,
1953
+ fontSize: 11,
1954
+ lineHeight: 14,
1955
+ color: AppColors.errorColor,
1956
+ }}>
1957
+ {t('settings.media.purgeCacheBtn', 'Purge All')}
1958
+ </Text>
1959
+ </View>),
1960
+ })}
1961
+ </View>
1962
+ </View>)}
1718
1963
  {settingsActiveSubTab === 'about' && (<View style={{ gap: 14 }}>
1719
1964
 
1720
1965
  <View style={{
@@ -8,12 +8,12 @@ export const SkeletonPlaceholder = React.memo(function SkeletonPlaceholder({ car
8
8
  Animated.timing(shimmerAnim, {
9
9
  toValue: 0.85,
10
10
  duration: 750,
11
- useNativeDriver: true,
11
+ useNativeDriver: false,
12
12
  }),
13
13
  Animated.timing(shimmerAnim, {
14
14
  toValue: 0.35,
15
15
  duration: 750,
16
- useNativeDriver: true,
16
+ useNativeDriver: false,
17
17
  }),
18
18
  ]));
19
19
  animation.start();
@@ -690,7 +690,7 @@ const styles = StyleSheet.create({
690
690
  borderColor: `${AppColors.grayBorderSecondary}80`,
691
691
  },
692
692
  valuePreviewText: {
693
- fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace',
693
+ fontFamily: AppFonts.interRegular,
694
694
  fontSize: 11,
695
695
  color: AppColors.primaryBlack,
696
696
  lineHeight: 16,
@@ -755,7 +755,7 @@ const styles = StyleSheet.create({
755
755
  color: AppColors.purple,
756
756
  },
757
757
  connectGuideCode: {
758
- fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace',
758
+ fontFamily: AppFonts.interRegular,
759
759
  fontSize: 10,
760
760
  color: AppColors.grayText,
761
761
  lineHeight: 15,
@@ -820,7 +820,7 @@ const styles = StyleSheet.create({
820
820
  textAreaInput: {
821
821
  minHeight: 90,
822
822
  maxHeight: 160,
823
- fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace',
823
+ fontFamily: AppFonts.interRegular,
824
824
  fontSize: 11,
825
825
  },
826
826
  typeSelectorStrip: {
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Animated, Platform, ScrollView, Text, View, } from 'react-native';
2
+ import { Platform, ScrollView, Text, View, } from 'react-native';
3
3
  import { useInspector } from './InspectorContext';
4
4
  import styles from '../../styles';
5
5
  import { AppColors } from '../../styles/AppColors';
@@ -109,10 +109,8 @@ const TabBar = React.memo(() => {
109
109
  ? AppColors.errorColor
110
110
  : AppColors.grayText;
111
111
  const countLabel = tab.count > 9 ? '9+' : String(tab.count);
112
- const hasUnreadApis = activeTab !== 'apis' &&
113
- logs.length > lastReadApisCount;
114
- const hasUnreadLogs = activeTab !== 'logs' &&
115
- consoleLogs.length > lastReadLogsCount;
112
+ const hasUnreadApis = activeTab !== 'apis' && logs.length > lastReadApisCount;
113
+ const hasUnreadLogs = activeTab !== 'logs' && consoleLogs.length > lastReadLogsCount;
116
114
  const hasUnreadCrashes = activeTab !== 'crash' &&
117
115
  (crashRecords?.length || 0) > (lastReadCrashesCount || 0);
118
116
  return (<TouchableScale key={tab.key} onPress={() => {
@@ -162,22 +160,19 @@ const TabBar = React.memo(() => {
162
160
  </View>
163
161
  <Text numberOfLines={1} ellipsizeMode="tail" style={[
164
162
  styles.contentTabButtonText,
165
- isActive &&
166
- styles.contentTabButtonTextActive,
163
+ isActive && styles.contentTabButtonTextActive,
167
164
  ]}>
168
- {tab.label}{' '}
169
- {tab.count > 0 ? `(${countLabel})` : ''}
165
+ {tab.label} {tab.count > 0 ? `(${countLabel})` : ''}
170
166
  </Text>
171
167
  {((tab.key === 'apis' && hasUnreadApis) ||
172
168
  (tab.key === 'logs' && hasUnreadLogs) ||
173
- (tab.key === 'crash' && hasUnreadCrashes)) && (<Animated.View style={{
169
+ (tab.key === 'crash' && hasUnreadCrashes)) && (<View style={{
174
170
  width: 6,
175
171
  height: 6,
176
172
  borderRadius: 3,
177
173
  backgroundColor: AppColors.errorColor,
178
174
  marginLeft: 4,
179
175
  alignSelf: 'center',
180
- transform: [{ scale: unreadPulseAnim }],
181
176
  }}/>)}
182
177
  </View>
183
178
  </TouchableScale>);
@@ -1,11 +1,12 @@
1
1
  import React, { useState, useEffect } from 'react';
2
- import { Modal, View, Text, TouchableOpacity, StyleSheet, Animated, Platform, Linking, } from 'react-native';
2
+ import { Modal, View, Text, TouchableOpacity, StyleSheet, Animated, Linking, } from 'react-native';
3
3
  import Svg, { Path } from 'react-native-svg';
4
4
  import { BrandSquareIcon } from '../BrandSquareIcon';
5
5
  import { NpmIcon } from '../NetworkIcons';
6
6
  import { LIB_VERSION } from '../../constants';
7
7
  import { copyToClipboard } from '../../helpers';
8
8
  import { showToast } from '../../helpers/toast';
9
+ import { AppFonts } from '../../styles/AppFonts';
9
10
  const CopySvg = ({ size = 14, color = '#64748B' }) => (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
10
11
  <Path d="M8 4v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2h-8a2 2 0 0 0-2 2z" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
11
12
  <Path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
@@ -168,15 +169,9 @@ export const UpdateAvailableModal = ({ visible, latestVersion, onClose, }) => {
168
169
  </View>
169
170
  </Modal>);
170
171
  };
171
- const fontStack = Platform.select({
172
- ios: {
173
- fontFamily: 'System',
174
- },
175
- android: {
176
- fontFamily: 'sans-serif',
177
- },
178
- default: {},
179
- });
172
+ const fontStack = {
173
+ fontFamily: AppFonts.interRegular,
174
+ };
180
175
  const styles = StyleSheet.create({
181
176
  overlay: {
182
177
  flex: 1,
@@ -377,7 +372,7 @@ const styles = StyleSheet.create({
377
372
  commandText: {
378
373
  flex: 1,
379
374
  fontSize: 11,
380
- fontFamily: Platform.OS === 'ios' ? 'Courier' : 'monospace',
375
+ fontFamily: AppFonts.interRegular,
381
376
  color: '#38BDF8',
382
377
  },
383
378
  copyIconWrapper: {
@@ -168,25 +168,23 @@ const JsonViewer = React.memo(({ data, search, forceOpen, defaultExpandDepth = 1
168
168
  {t('network.jsonViewer.emptyPayload')}
169
169
  </Text>
170
170
  </View>) : (wrap ? (fullHeight ? (<ScrollView style={{ flex: 1 }} contentContainerStyle={{ flexGrow: 1 }}>
171
- <View style={[styles.codeBlock, { width: '100%' }]}>{tree}</View>
172
- </ScrollView>) : (<ScrollView style={scrollStyle} contentContainerStyle={{ flexGrow: 1 }}>
173
- <View style={[styles.codeBlock, { width: '100%' }]}>{tree}</View>
174
- </ScrollView>)) : (fullHeight ? (<ScrollView style={{ flex: 1 }} contentContainerStyle={{ flexGrow: 1 }}>
175
- <View style={styles.codeBlock}>{tree}</View>
176
- </ScrollView>) : (<ScrollView style={scrollStyle}>
177
- <ScrollView horizontal showsHorizontalScrollIndicator={true} style={styles.codeBlockScroll}>
171
+ <View style={[styles.codeBlock, { width: '100%' }]}>{tree}</View>
172
+ </ScrollView>) : (<View style={[styles.codeBlock, { width: '100%' }]}>{tree}</View>)) : (fullHeight ? (<ScrollView style={{ flex: 1 }} contentContainerStyle={{ flexGrow: 1 }}>
173
+ <ScrollView horizontal showsHorizontalScrollIndicator={true} style={styles.codeBlockScroll}>
174
+ <View style={styles.codeBlock}>{tree}</View>
175
+ </ScrollView>
176
+ </ScrollView>) : (<ScrollView horizontal showsHorizontalScrollIndicator={true} style={styles.codeBlockScroll}>
178
177
  <View style={styles.codeBlock}>{tree}</View>
179
- </ScrollView>
180
- </ScrollView>))))}
178
+ </ScrollView>))))}
181
179
 
182
- {mode === 'raw' && (<ScrollView style={scrollStyle} contentContainerStyle={localStyles.rawContainer} showsVerticalScrollIndicator={true} nestedScrollEnabled={true}>
183
- <HighlightText text={displayRawText} search={search} detectLinks={rawText.length < 20000} style={localStyles.rawPlainText} selectable={true} highlightStyle={{
180
+ {mode === 'raw' && (fullHeight ? (<ScrollView style={{ flex: 1 }} contentContainerStyle={localStyles.rawContainer} showsVerticalScrollIndicator={true}>
181
+ <HighlightText text={displayRawText} search={search} detectLinks={rawText.length < 20000} style={localStyles.rawPlainText} selectable={true} highlightStyle={{
184
182
  backgroundColor: AppColors.yellowHighlight,
185
183
  color: AppColors.primaryBlack,
186
184
  borderRadius: 3,
187
185
  paddingHorizontal: 2,
188
186
  }}/>
189
- {isTruncated && (<TouchableOpacity onPress={() => setShowFullRaw(true)} style={{
187
+ {isTruncated && (<TouchableOpacity onPress={() => setShowFullRaw(true)} style={{
190
188
  marginTop: 10,
191
189
  backgroundColor: `${AppColors.brandPurple}15`,
192
190
  paddingVertical: 8,
@@ -196,21 +194,46 @@ const JsonViewer = React.memo(({ data, search, forceOpen, defaultExpandDepth = 1
196
194
  borderWidth: 1,
197
195
  borderColor: `${AppColors.brandPurple}30`,
198
196
  }}>
199
- <Text style={{
197
+ <Text style={{
200
198
  fontFamily: AppFonts.interBold,
201
199
  fontSize: 11,
202
200
  color: AppColors.brandPurple,
203
201
  }}>
204
- Showing first 50 KB ({Math.round(rawText.length / 1024)} KB total) · Tap to load full
205
- </Text>
206
- </TouchableOpacity>)}
207
- </ScrollView>)}
202
+ Showing first 50 KB ({Math.round(rawText.length / 1024)} KB total) · Tap to load full
203
+ </Text>
204
+ </TouchableOpacity>)}
205
+ </ScrollView>) : (<View style={localStyles.rawContainer}>
206
+ <HighlightText text={displayRawText} search={search} detectLinks={rawText.length < 20000} style={localStyles.rawPlainText} selectable={true} highlightStyle={{
207
+ backgroundColor: AppColors.yellowHighlight,
208
+ color: AppColors.primaryBlack,
209
+ borderRadius: 3,
210
+ paddingHorizontal: 2,
211
+ }}/>
212
+ {isTruncated && (<TouchableOpacity onPress={() => setShowFullRaw(true)} style={{
213
+ marginTop: 10,
214
+ backgroundColor: `${AppColors.brandPurple}15`,
215
+ paddingVertical: 8,
216
+ paddingHorizontal: 12,
217
+ borderRadius: 6,
218
+ alignItems: 'center',
219
+ borderWidth: 1,
220
+ borderColor: `${AppColors.brandPurple}30`,
221
+ }}>
222
+ <Text style={{
223
+ fontFamily: AppFonts.interBold,
224
+ fontSize: 11,
225
+ color: AppColors.brandPurple,
226
+ }}>
227
+ Showing first 50 KB ({Math.round(rawText.length / 1024)} KB total) · Tap to load full
228
+ </Text>
229
+ </TouchableOpacity>)}
230
+ </View>))}
208
231
 
209
- {mode === 'table' && (fullHeight ? (<ScrollView style={scrollStyle}>
232
+ {mode === 'table' && (fullHeight ? (<ScrollView style={{ flex: 1 }}>
210
233
  {renderTableMode()}
211
- </ScrollView>) : (<ScrollView style={scrollStyle}>
234
+ </ScrollView>) : (<View style={localStyles.tableView}>
212
235
  {renderTableMode()}
213
- </ScrollView>))}
236
+ </View>))}
214
237
  </View>
215
238
  </View>);
216
239
  });
@@ -63,7 +63,7 @@ const LogCard = React.memo(function LogCard({ item, onPress, timelineMinStart, t
63
63
  Animated.timing(shimmerOpacity, {
64
64
  toValue: 0,
65
65
  duration: 1200,
66
- useNativeDriver: true,
66
+ useNativeDriver: false,
67
67
  }).start();
68
68
  }
69
69
  }, [isNew]);
@@ -321,10 +321,10 @@ const LogCard = React.memo(function LogCard({ item, onPress, timelineMinStart, t
321
321
  </View>)}
322
322
  </View>
323
323
 
324
- <Animated.View pointerEvents="none" style={[
325
- StyleSheet.absoluteFill,
326
- { backgroundColor: methodColor, opacity: shimmerOpacity },
327
- ]}/>
324
+ {isNew && (<Animated.View pointerEvents="none" style={[
325
+ StyleSheet.absoluteFill,
326
+ { backgroundColor: methodColor, opacity: shimmerOpacity },
327
+ ]}/>)}
328
328
  </TouchableScale>
329
329
  </View>);
330
330
  });