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
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fetchNativeCachedPage = exports.pushNativeLogRecord = exports.getNativeSystemMetrics = exports.triggerNativeHaptic = exports.setNativeStorageItem = exports.getNativeStorageItem = exports.subscribeNativeDeviceShake = exports.getNativeFpsMetrics = exports.stopNativeFpsMonitoring = exports.startNativeFpsMonitoring = exports.subscribeNativeFloatingButtonPress = exports.setNativeFloatingButtonBadge = exports.hideNativeFloatingButton = exports.showNativeFloatingButton = exports.subscribeNativeCrashes = exports.enableNativeCrashProtection = exports.getNativeDeviceMetrics = exports.isNativeModuleAvailable = void 0;
6
+ exports.clearAllCapturedMediaFiles = exports.deleteCapturedMediaFile = exports.fetchCapturedMediaList = exports.convertNativeVideoToGif = exports.isNativeRecordingActive = exports.stopNativeVideoRecording = exports.startNativeVideoRecording = exports.takeNativeScreenshot = exports.fetchNativeCachedPage = exports.pushNativeLogRecord = exports.getNativeSystemMetrics = exports.triggerNativeHaptic = exports.setNativeStorageItem = exports.getNativeStorageItem = exports.subscribeNativeDeviceShake = exports.getNativeFpsMetrics = exports.stopNativeFpsMonitoring = exports.startNativeFpsMonitoring = exports.subscribeNativeFloatingButtonPress = exports.setNativeFloatingButtonBadge = exports.hideNativeFloatingButton = exports.showNativeFloatingButton = exports.subscribeNativeCrashes = exports.enableNativeCrashProtection = exports.getNativeDeviceMetrics = exports.isNativeModuleAvailable = void 0;
7
7
  const react_native_1 = require("react-native");
8
8
  const NativeNetworkInspector_1 = __importDefault(require("./NativeNetworkInspector"));
9
9
  const NativeModule = NativeNetworkInspector_1.default || react_native_1.NativeModules.NetworkInspectorModule;
@@ -40,7 +40,7 @@ const enableNativeCrashProtection = async (options) => {
40
40
  }
41
41
  try {
42
42
  const result = await NativeModule.enableNativeCrashProtection();
43
- if (options?.showFloatingButton !== false) {
43
+ if (options?.showFloatingButton === true) {
44
44
  await (0, exports.showNativeFloatingButton)();
45
45
  }
46
46
  return !!result;
@@ -293,3 +293,110 @@ const fetchNativeCachedPage = async (pageKey, offset = 0, limit = 50, query = ''
293
293
  }
294
294
  };
295
295
  exports.fetchNativeCachedPage = fetchNativeCachedPage;
296
+ const takeNativeScreenshot = async (options) => {
297
+ if (!NativeModule || !NativeModule.takeScreenshot) {
298
+ return null;
299
+ }
300
+ try {
301
+ const result = await NativeModule.takeScreenshot(options || {});
302
+ return result;
303
+ }
304
+ catch {
305
+ return null;
306
+ }
307
+ };
308
+ exports.takeNativeScreenshot = takeNativeScreenshot;
309
+ const startNativeVideoRecording = async (options) => {
310
+ if (!NativeModule || !NativeModule.startVideoRecording) {
311
+ return false;
312
+ }
313
+ try {
314
+ const result = await NativeModule.startVideoRecording(options || {});
315
+ return !!result;
316
+ }
317
+ catch {
318
+ return false;
319
+ }
320
+ };
321
+ exports.startNativeVideoRecording = startNativeVideoRecording;
322
+ const stopNativeVideoRecording = async () => {
323
+ if (!NativeModule || !NativeModule.stopVideoRecording) {
324
+ return null;
325
+ }
326
+ try {
327
+ const result = await NativeModule.stopVideoRecording();
328
+ return result;
329
+ }
330
+ catch {
331
+ return null;
332
+ }
333
+ };
334
+ exports.stopNativeVideoRecording = stopNativeVideoRecording;
335
+ const isNativeRecordingActive = async () => {
336
+ if (!NativeModule || !NativeModule.isRecording) {
337
+ return false;
338
+ }
339
+ try {
340
+ const result = await NativeModule.isRecording();
341
+ return !!result;
342
+ }
343
+ catch {
344
+ return false;
345
+ }
346
+ };
347
+ exports.isNativeRecordingActive = isNativeRecordingActive;
348
+ const convertNativeVideoToGif = async (videoUri, options) => {
349
+ if (!NativeModule || !NativeModule.convertToGif) {
350
+ return null;
351
+ }
352
+ try {
353
+ const result = await NativeModule.convertToGif(videoUri, options || {});
354
+ return result;
355
+ }
356
+ catch {
357
+ return null;
358
+ }
359
+ };
360
+ exports.convertNativeVideoToGif = convertNativeVideoToGif;
361
+ const fetchCapturedMediaList = async () => {
362
+ if (!NativeModule || !NativeModule.getCapturedMedia) {
363
+ return [];
364
+ }
365
+ try {
366
+ const jsonStr = await NativeModule.getCapturedMedia();
367
+ if (!jsonStr)
368
+ return [];
369
+ const parsed = JSON.parse(jsonStr);
370
+ return Array.isArray(parsed) ? parsed : [];
371
+ }
372
+ catch {
373
+ return [];
374
+ }
375
+ };
376
+ exports.fetchCapturedMediaList = fetchCapturedMediaList;
377
+ const deleteCapturedMediaFile = async (uri) => {
378
+ if (!NativeModule || !NativeModule.deleteCapturedMedia) {
379
+ return false;
380
+ }
381
+ try {
382
+ const result = await NativeModule.deleteCapturedMedia(uri);
383
+ return !!result;
384
+ }
385
+ catch {
386
+ return false;
387
+ }
388
+ };
389
+ exports.deleteCapturedMediaFile = deleteCapturedMediaFile;
390
+ const clearAllCapturedMediaFiles = async () => {
391
+ if (!NativeModule || !NativeModule.clearAllCapturedMedia) {
392
+ return false;
393
+ }
394
+ try {
395
+ const result = await NativeModule.clearAllCapturedMedia();
396
+ return !!result;
397
+ }
398
+ catch {
399
+ return false;
400
+ }
401
+ };
402
+ exports.clearAllCapturedMediaFiles = clearAllCapturedMediaFiles;
@@ -15,6 +15,14 @@ export interface Spec extends TurboModule {
15
15
  getNativeSystemMetrics(): Promise<Object>;
16
16
  pushNativeLogRecord(pageKey: string, jsonPayload: string): Promise<boolean>;
17
17
  checkFloatingButtonPress(): Promise<boolean>;
18
+ takeScreenshot(options: Object): Promise<Object>;
19
+ startVideoRecording(options: Object): Promise<boolean>;
20
+ stopVideoRecording(): Promise<Object>;
21
+ isRecording(): Promise<boolean>;
22
+ convertToGif(videoUri: string, options: Object): Promise<Object>;
23
+ getCapturedMedia(): Promise<string>;
24
+ deleteCapturedMedia(uri: string): Promise<boolean>;
25
+ clearAllCapturedMedia(): Promise<boolean>;
18
26
  addListener(eventName: string): void;
19
27
  removeListeners(count: number): void;
20
28
  }
@@ -168,6 +168,24 @@ declare const LightColors: {
168
168
  skySoftBg: string;
169
169
  skySoftBorder: string;
170
170
  skySoftText: string;
171
+ warningAmber: string;
172
+ npmRedLight: string;
173
+ red300: string;
174
+ overlayDark: string;
175
+ headerGlassDark: string;
176
+ badgeGlassDark: string;
177
+ borderGlassLight: string;
178
+ borderGlassMedium: string;
179
+ whiteAlpha06: string;
180
+ whiteAlpha08: string;
181
+ whiteAlpha10: string;
182
+ whiteAlpha12: string;
183
+ whiteAlpha15: string;
184
+ whiteAlpha20: string;
185
+ whiteAlpha24: string;
186
+ whiteAlpha30: string;
187
+ whiteAlpha33: string;
188
+ whiteAlpha60: string;
171
189
  domainColors: string[];
172
190
  };
173
191
  export declare const getThemeColors: (isDark: boolean) => {
@@ -340,6 +358,24 @@ export declare const getThemeColors: (isDark: boolean) => {
340
358
  skySoftBg: string;
341
359
  skySoftBorder: string;
342
360
  skySoftText: string;
361
+ warningAmber: string;
362
+ npmRedLight: string;
363
+ red300: string;
364
+ overlayDark: string;
365
+ headerGlassDark: string;
366
+ badgeGlassDark: string;
367
+ borderGlassLight: string;
368
+ borderGlassMedium: string;
369
+ whiteAlpha06: string;
370
+ whiteAlpha08: string;
371
+ whiteAlpha10: string;
372
+ whiteAlpha12: string;
373
+ whiteAlpha15: string;
374
+ whiteAlpha20: string;
375
+ whiteAlpha24: string;
376
+ whiteAlpha30: string;
377
+ whiteAlpha33: string;
378
+ whiteAlpha60: string;
343
379
  domainColors: string[];
344
380
  };
345
381
  export declare const AppColors: typeof LightColors;
@@ -171,6 +171,24 @@ const LightColors = {
171
171
  skySoftBg: '#E0F2FE',
172
172
  skySoftBorder: '#BAE6FD',
173
173
  skySoftText: '#0284C7',
174
+ warningAmber: '#F59E0B',
175
+ npmRedLight: '#FF6B6B',
176
+ red300: '#FCA5A5',
177
+ overlayDark: 'rgba(8, 12, 22, 0.95)',
178
+ headerGlassDark: 'rgba(15, 23, 42, 0.9)',
179
+ badgeGlassDark: 'rgba(15, 23, 42, 0.85)',
180
+ borderGlassLight: 'rgba(255, 255, 255, 0.08)',
181
+ borderGlassMedium: 'rgba(255, 255, 255, 0.15)',
182
+ whiteAlpha06: 'rgba(255, 255, 255, 0.06)',
183
+ whiteAlpha08: 'rgba(255, 255, 255, 0.08)',
184
+ whiteAlpha10: 'rgba(255, 255, 255, 0.1)',
185
+ whiteAlpha12: 'rgba(255, 255, 255, 0.12)',
186
+ whiteAlpha15: 'rgba(255, 255, 255, 0.15)',
187
+ whiteAlpha20: 'rgba(255, 255, 255, 0.2)',
188
+ whiteAlpha24: 'rgba(255, 255, 255, 0.24)',
189
+ whiteAlpha30: 'rgba(255, 255, 255, 0.3)',
190
+ whiteAlpha33: 'rgba(255, 255, 255, 0.33)',
191
+ whiteAlpha60: 'rgba(255, 255, 255, 0.6)',
174
192
  domainColors: [
175
193
  '#5C2D91',
176
194
  '#9B2677',
@@ -260,6 +278,24 @@ const DarkColors = {
260
278
  skySoftBg: '#082F4966',
261
279
  skySoftBorder: '#0284C788',
262
280
  skySoftText: '#38BDF8',
281
+ warningAmber: '#F59E0B',
282
+ npmRedLight: '#FF6B6B',
283
+ red300: '#FCA5A5',
284
+ overlayDark: 'rgba(8, 12, 22, 0.95)',
285
+ headerGlassDark: 'rgba(15, 23, 42, 0.9)',
286
+ badgeGlassDark: 'rgba(15, 23, 42, 0.85)',
287
+ borderGlassLight: 'rgba(255, 255, 255, 0.08)',
288
+ borderGlassMedium: 'rgba(255, 255, 255, 0.15)',
289
+ whiteAlpha06: 'rgba(255, 255, 255, 0.06)',
290
+ whiteAlpha08: 'rgba(255, 255, 255, 0.08)',
291
+ whiteAlpha10: 'rgba(255, 255, 255, 0.1)',
292
+ whiteAlpha12: 'rgba(255, 255, 255, 0.12)',
293
+ whiteAlpha15: 'rgba(255, 255, 255, 0.15)',
294
+ whiteAlpha20: 'rgba(255, 255, 255, 0.2)',
295
+ whiteAlpha24: 'rgba(255, 255, 255, 0.24)',
296
+ whiteAlpha30: 'rgba(255, 255, 255, 0.3)',
297
+ whiteAlpha33: 'rgba(255, 255, 255, 0.33)',
298
+ whiteAlpha60: 'rgba(255, 255, 255, 0.6)',
263
299
  green600: '#16A34A',
264
300
  green700: '#15803D',
265
301
  green800: '#166534',
@@ -61,7 +61,8 @@ export declare const getRawStyles: (colors: typeof AppColors) => {
61
61
  headerDetailCenter: {
62
62
  alignItems: string;
63
63
  justifyContent: string;
64
- width: string;
64
+ flex: number;
65
+ minWidth: number;
65
66
  };
66
67
  headerDetailRow: {
67
68
  flexDirection: string;
@@ -1464,6 +1465,7 @@ export declare const getRawStyles: (colors: typeof AppColors) => {
1464
1465
  borderTopLeftRadius: number;
1465
1466
  borderTopRightRadius: number;
1466
1467
  overflow: string;
1468
+ flexShrink: number;
1467
1469
  };
1468
1470
  statusChip: {
1469
1471
  paddingHorizontal: number;
@@ -96,7 +96,8 @@ const getRawStyles = (colors) => ({
96
96
  headerDetailCenter: {
97
97
  alignItems: 'center',
98
98
  justifyContent: 'center',
99
- width: '100%',
99
+ flex: 1,
100
+ minWidth: 0,
100
101
  },
101
102
  headerDetailRow: {
102
103
  flexDirection: 'row',
@@ -1398,6 +1399,7 @@ const getRawStyles = (colors) => ({
1398
1399
  borderTopLeftRadius: 20,
1399
1400
  borderTopRightRadius: 20,
1400
1401
  overflow: 'hidden',
1402
+ flexShrink: 0,
1401
1403
  },
1402
1404
  statusChip: {
1403
1405
  paddingHorizontal: 10,
@@ -67,6 +67,7 @@ export declare const SettingsSubTab: {
67
67
  readonly Module: "module";
68
68
  readonly Ui: "ui";
69
69
  readonly Limits: "limits";
70
+ readonly Capture: "capture";
70
71
  readonly About: "about";
71
72
  };
72
73
  export type SettingsSubTab = (typeof SettingsSubTab)[keyof typeof SettingsSubTab];
@@ -63,6 +63,7 @@ exports.SettingsSubTab = {
63
63
  Module: 'module',
64
64
  Ui: 'ui',
65
65
  Limits: 'limits',
66
+ Capture: 'capture',
66
67
  About: 'about',
67
68
  };
68
69
  exports.LogFilter = {
@@ -4,7 +4,7 @@ export * from './interfaces';
4
4
  export * from './enums';
5
5
  export type GroupedListItem = {
6
6
  type: 'header';
7
- id: string;
7
+ id: string | number;
8
8
  pageName: string;
9
9
  color: string;
10
10
  stats: {
@@ -18,7 +18,7 @@ export type GroupedListItem = {
18
18
  isFirst: boolean;
19
19
  } | {
20
20
  type: 'log';
21
- id: number;
21
+ id: string | number;
22
22
  log: NetworkLog;
23
23
  isLast: boolean;
24
24
  color: string;
@@ -0,0 +1,26 @@
1
+ import { ScreenshotOptions, ScreenshotResult, RecordingOptions, RecordingResult, GifConversionOptions, CapturedMediaItem } from './native/NativeInspector';
2
+ export type { ScreenshotOptions, ScreenshotResult, RecordingOptions, RecordingResult, GifConversionOptions, CapturedMediaItem, };
3
+ export type ImageFormat = 'png' | 'jpeg' | 'webp';
4
+ export type AudioSource = 'none' | 'app' | 'mic' | 'mixed';
5
+ export type RecordingFormat = 'mp4' | 'gif';
6
+ export declare const ScreenCapture: {
7
+ takeScreenshot: (options?: ScreenshotOptions) => Promise<ScreenshotResult | null>;
8
+ startRecording: (options?: RecordingOptions) => Promise<boolean>;
9
+ stopRecording: () => Promise<RecordingResult | null>;
10
+ isRecording: () => Promise<boolean>;
11
+ convertToGif: (videoUri: string, options?: GifConversionOptions) => Promise<RecordingResult | null>;
12
+ getMediaList: () => Promise<CapturedMediaItem[]>;
13
+ deleteMedia: (uri: string) => Promise<boolean>;
14
+ clearAllMedia: () => Promise<boolean>;
15
+ };
16
+ export declare const ScreenRecorder: {
17
+ takeScreenshot: (options?: ScreenshotOptions) => Promise<ScreenshotResult | null>;
18
+ startRecording: (options?: RecordingOptions) => Promise<boolean>;
19
+ stopRecording: () => Promise<RecordingResult | null>;
20
+ isRecording: () => Promise<boolean>;
21
+ convertToGif: (videoUri: string, options?: GifConversionOptions) => Promise<RecordingResult | null>;
22
+ getMediaList: () => Promise<CapturedMediaItem[]>;
23
+ deleteMedia: (uri: string) => Promise<boolean>;
24
+ clearAllMedia: () => Promise<boolean>;
25
+ };
26
+ export default ScreenCapture;
@@ -0,0 +1,29 @@
1
+ import { takeNativeScreenshot, startNativeVideoRecording, stopNativeVideoRecording, isNativeRecordingActive, convertNativeVideoToGif, fetchCapturedMediaList, deleteCapturedMediaFile, clearAllCapturedMediaFiles, } from './native/NativeInspector';
2
+ export const ScreenCapture = {
3
+ takeScreenshot: async (options) => {
4
+ return takeNativeScreenshot(options);
5
+ },
6
+ startRecording: async (options) => {
7
+ return startNativeVideoRecording(options);
8
+ },
9
+ stopRecording: async () => {
10
+ return stopNativeVideoRecording();
11
+ },
12
+ isRecording: async () => {
13
+ return isNativeRecordingActive();
14
+ },
15
+ convertToGif: async (videoUri, options) => {
16
+ return convertNativeVideoToGif(videoUri, options);
17
+ },
18
+ getMediaList: async () => {
19
+ return fetchCapturedMediaList();
20
+ },
21
+ deleteMedia: async (uri) => {
22
+ return deleteCapturedMediaFile(uri);
23
+ },
24
+ clearAllMedia: async () => {
25
+ return clearAllCapturedMediaFiles();
26
+ },
27
+ };
28
+ export const ScreenRecorder = ScreenCapture;
29
+ export default ScreenCapture;
@@ -22,7 +22,7 @@ const AnalyticsEventCard = React.memo(function AnalyticsEventCard({ event, onPre
22
22
  Animated.timing(flashOpacity, {
23
23
  toValue: 0,
24
24
  duration: 1200,
25
- useNativeDriver: true,
25
+ useNativeDriver: false,
26
26
  }).start();
27
27
  }
28
28
  }, [isNew]);
@@ -52,16 +52,16 @@ const AnalyticsEventCard = React.memo(function AnalyticsEventCard({ event, onPre
52
52
  borderLeftColor: tagColors.text,
53
53
  },
54
54
  ]}>
55
- <Animated.View style={[
56
- StyleSheet.absoluteFill,
57
- {
58
- backgroundColor: color,
59
- opacity: flashOpacity.interpolate({
60
- inputRange: [0, 1],
61
- outputRange: [0, 0.08],
62
- }),
63
- },
64
- ]}/>
55
+ {isNew && (<Animated.View style={[
56
+ StyleSheet.absoluteFill,
57
+ {
58
+ backgroundColor: color,
59
+ opacity: flashOpacity.interpolate({
60
+ inputRange: [0, 1],
61
+ outputRange: [0, 0.08],
62
+ }),
63
+ },
64
+ ]}/>)}
65
65
 
66
66
 
67
67
  <View style={cardStyles.cardHeader}>
@@ -1,40 +1,6 @@
1
- import React, { useEffect, useRef } from 'react';
2
- import { Animated, Platform, View } from 'react-native';
3
- const AnimatedEntrance = React.memo(function AnimatedEntrance({ children, delay = 0, distance = 10, duration = 220, index = 0, style, }) {
4
- if (Platform.OS === 'android') {
5
- return <View style={style}>{children}</View>;
6
- }
7
- const progress = useRef(new Animated.Value(0)).current;
8
- const initialIndex = useRef(index).current;
9
- useEffect(() => {
10
- Animated.timing(progress, {
11
- toValue: 1,
12
- duration,
13
- delay: delay + Math.min(initialIndex, 8) * 12,
14
- useNativeDriver: true,
15
- }).start();
16
- }, []);
17
- return (<Animated.View style={[
18
- style,
19
- {
20
- opacity: progress,
21
- transform: [
22
- {
23
- translateY: progress.interpolate({
24
- inputRange: [0, 1],
25
- outputRange: [distance, 0],
26
- }),
27
- },
28
- {
29
- scale: progress.interpolate({
30
- inputRange: [0, 1],
31
- outputRange: [0.985, 1],
32
- }),
33
- },
34
- ],
35
- },
36
- ]}>
37
- {children}
38
- </Animated.View>);
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ const AnimatedEntrance = React.memo(function AnimatedEntrance({ children, style, }) {
4
+ return <View style={style}>{children}</View>;
39
5
  });
40
6
  export default AnimatedEntrance;
@@ -1,23 +1,11 @@
1
- import React, { useEffect, useRef } from 'react';
2
- import { Animated, Pressable, View, Text } from 'react-native';
1
+ import React from 'react';
2
+ import { Pressable, View, Text } from 'react-native';
3
3
  import { AppColors } from '../styles/AppColors';
4
4
  import { AppFonts } from '../styles/AppFonts';
5
5
  import { formatDateTime } from '../helpers';
6
6
  import { ChevronIcon, ScreenIcon, CheckIcon, FailIcon, ClockIcon, } from './NetworkIcons';
7
7
  import styles from '../styles';
8
8
  const DomainHeader = ({ pageName, color, stats, activeFilters, onToggleFilter, isCollapsed, onToggleCollapse, isFirst, timestamp, }) => {
9
- const chevronAnim = useRef(new Animated.Value(isCollapsed ? 0 : 1)).current;
10
- useEffect(() => {
11
- Animated.timing(chevronAnim, {
12
- toValue: isCollapsed ? 0 : 1,
13
- duration: 220,
14
- useNativeDriver: true,
15
- }).start();
16
- }, [isCollapsed]);
17
- const chevronRotate = chevronAnim.interpolate({
18
- inputRange: [0, 1],
19
- outputRange: ['-90deg', '0deg'],
20
- });
21
9
  const visibleStats = ['success', 'failed', 'loading'];
22
10
  const total = stats.success + stats.failed + stats.loading;
23
11
  const pctSuccess = total > 0 ? Math.round((stats.success / total) * 100) : 0;
@@ -29,9 +17,9 @@ const DomainHeader = ({ pageName, color, stats, activeFilters, onToggleFilter, i
29
17
  ]} onPress={() => onToggleCollapse(pageName)}>
30
18
  <View style={styles.domainHeaderTopRow}>
31
19
  <View style={styles.domainHeaderLeft}>
32
- <Animated.View style={{ transform: [{ rotate: chevronRotate }], flexShrink: 0 }}>
20
+ <View style={{ transform: [{ rotate: isCollapsed ? '-90deg' : '0deg' }], flexShrink: 0 }}>
33
21
  <ChevronIcon color={AppColors.grayTextWeak} size={13}/>
34
- </Animated.View>
22
+ </View>
35
23
  <View style={[styles.domainIconWrap, { backgroundColor: `${color}18`, flexShrink: 0 }]}>
36
24
  <ScreenIcon color={color} size={14}/>
37
25
  </View>
@@ -12,12 +12,12 @@ const EmptyState = React.memo(function EmptyState({ isSearch, searchQuery, custo
12
12
  Animated.timing(iconPulse, {
13
13
  toValue: 1.06,
14
14
  duration: 900,
15
- useNativeDriver: true,
15
+ useNativeDriver: false,
16
16
  }),
17
17
  Animated.timing(iconPulse, {
18
18
  toValue: 1,
19
19
  duration: 900,
20
- useNativeDriver: true,
20
+ useNativeDriver: false,
21
21
  }),
22
22
  ]));
23
23
  loop.start();
@@ -1,6 +1,6 @@
1
- import React, { useEffect, useMemo, useRef, useState } from 'react';
1
+ import React, { useEffect, useMemo, useState } from 'react';
2
2
  import { useTranslation } from '../i18n';
3
- import { View, Pressable, Text, Animated } from 'react-native';
3
+ import { View, Pressable, Text } from 'react-native';
4
4
  import CopyButton from './CopyButton';
5
5
  import TouchableScale from './TouchableScale';
6
6
  import { copyToClipboard } from '../helpers';
@@ -11,27 +11,7 @@ import styles from '../styles';
11
11
  const HeaderRow = React.memo(function HeaderRow({ headerKey, value, isLast, index, }) {
12
12
  const [expanded, setExpanded] = useState(false);
13
13
  const isLong = value.length > 35;
14
- const entryAnim = useRef(new Animated.Value(0)).current;
15
- useEffect(() => {
16
- Animated.timing(entryAnim, {
17
- toValue: 1,
18
- duration: 220,
19
- delay: index * 30,
20
- useNativeDriver: true,
21
- }).start();
22
- }, []);
23
- const rowAnimStyle = {
24
- opacity: entryAnim,
25
- transform: [
26
- {
27
- translateY: entryAnim.interpolate({
28
- inputRange: [0, 1],
29
- outputRange: [8, 0],
30
- }),
31
- },
32
- ],
33
- };
34
- return (<Animated.View style={[styles.htRow, !isLast && styles.htRowBorder, rowAnimStyle]}>
14
+ return (<View style={[styles.htRow, !isLast && styles.htRowBorder]}>
35
15
  <View style={styles.htKeyCell}>
36
16
  <Text style={styles.htKey} numberOfLines={2}>
37
17
  {headerKey}
@@ -52,11 +32,11 @@ const HeaderRow = React.memo(function HeaderRow({ headerKey, value, isLast, inde
52
32
  <TouchableScale onPress={() => copyToClipboard(value, headerKey)} hitSlop={8} style={styles.htCopyBtn}>
53
33
  <CopyIcon color={AppColors.grayTextWeak} size={14}/>
54
34
  </TouchableScale>
55
- </Animated.View>);
35
+ </View>);
56
36
  });
57
37
  const HeadersSection = ({ title, headers, search, resetKey, }) => {
58
38
  const { t } = useTranslation();
59
- const { toggleOpen, forceOpen, chevronStyle, bodyStyle } = useAccordion(false, 2400, 300);
39
+ const { isOpen, toggleOpen, forceOpen, chevronStyle } = useAccordion(false);
60
40
  useEffect(() => {
61
41
  forceOpen(false);
62
42
  }, [resetKey]);
@@ -93,23 +73,23 @@ const HeadersSection = ({ title, headers, search, resetKey, }) => {
93
73
  <View style={styles.htHeaderSpacer}/>
94
74
  <CopyButton value={headers} label={title}/>
95
75
  <View style={styles.htChevronBtn}>
96
- <Animated.View style={chevronStyle}>
76
+ <View style={chevronStyle}>
97
77
  <ChevronIcon color={AppColors.grayTextStrong} size={14}/>
98
- </Animated.View>
78
+ </View>
99
79
  </View>
100
80
  </View>
101
81
  </Pressable>
102
82
 
103
- <Animated.View style={bodyStyle}>
104
- <View style={styles.htColHeadRow}>
105
- <Text style={[styles.htColHead, { width: '30%' }]}>{t('network.jsonViewer.key')}</Text>
106
- <Text style={[styles.htColHead, { flex: 1 }]}>{t('network.jsonViewer.value')}</Text>
107
- </View>
83
+ {isOpen && (<View>
84
+ <View style={styles.htColHeadRow}>
85
+ <Text style={[styles.htColHead, { width: '30%' }]}>{t('network.jsonViewer.key')}</Text>
86
+ <Text style={[styles.htColHead, { flex: 1 }]}>{t('network.jsonViewer.value')}</Text>
87
+ </View>
108
88
 
109
- {filtered.length > 0 ? (filtered.map(([k, v], i) => (<HeaderRow key={k} headerKey={k} value={v} isLast={i === filtered.length - 1} index={i}/>))) : (<View style={styles.htEmpty}>
110
- <Text style={styles.htEmptyText}>{t('network.noMatchingHeaders')}</Text>
111
- </View>)}
112
- </Animated.View>
89
+ {filtered.length > 0 ? (filtered.map(([k, v], i) => (<HeaderRow key={k} headerKey={k} value={v} isLast={i === filtered.length - 1} index={i}/>))) : (<View style={styles.htEmpty}>
90
+ <Text style={styles.htEmptyText}>{t('network.noMatchingHeaders')}</Text>
91
+ </View>)}
92
+ </View>)}
113
93
  </View>);
114
94
  };
115
95
  export default HeadersSection;
@@ -1,5 +1,5 @@
1
1
  import React, { useCallback, useState, useMemo, useEffect, useRef } from 'react';
2
- import { FlatList, Pressable, Text, TextInput, TouchableOpacity, View, } from 'react-native';
2
+ import { FlatList, Platform, Pressable, Text, TextInput, TouchableOpacity, View, } from 'react-native';
3
3
  import { animateNextLayout, useInspector } from './InspectorContext';
4
4
  import AnalyticsEventCard from '../AnalyticsEventCard';
5
5
  import AnalyticsFilterModal from './AnalyticsFilterModal';
@@ -810,7 +810,6 @@ const AnalyticsTab = React.memo(() => {
810
810
  : -1;
811
811
  const showTimestamp = index === 0 || thisMin !== nextMin;
812
812
  return (<AnalyticsEventCard event={item} onPress={() => {
813
- animateNextLayout();
814
813
  setSelectedEvent(item);
815
814
  }} isNew={newEventIds.has(item.id)} searchStr={analyticsSearch} isFirst={index === 0} isLast={index === filteredAnalyticsEvents.length - 1} msSincePrev={msSincePrev} showTimestamp={showTimestamp} computedScreenName={(() => {
816
815
  if (!item)
@@ -924,7 +923,7 @@ const AnalyticsTab = React.memo(() => {
924
923
 
925
924
  <View style={{ flex: 1 }} onLayout={() => setIsAnalyticsLayoutReady(true)}>
926
925
  {isAnalyticsLayoutReady ? (<>
927
- <FlatList ref={listRef} data={filteredAnalyticsEvents} keyExtractor={keyExtractor} ListHeaderComponent={AnalyticsHeader} renderItem={renderItem} initialNumToRender={12} maxToRenderPerBatch={8} windowSize={5} removeClippedSubviews={true} renderToHardwareTextureAndroid={true} ListEmptyComponent={<EmptyState isSearch={analyticsSearch.length > 0} searchQuery={analyticsSearch} customTitle={analyticsSearch.length > 0
926
+ <FlatList ref={listRef} data={filteredAnalyticsEvents} keyExtractor={keyExtractor} ListHeaderComponent={AnalyticsHeader} renderItem={renderItem} initialNumToRender={12} maxToRenderPerBatch={8} windowSize={5} removeClippedSubviews={Platform.OS === 'android'} renderToHardwareTextureAndroid={true} ListEmptyComponent={<EmptyState isSearch={analyticsSearch.length > 0} searchQuery={analyticsSearch} customTitle={analyticsSearch.length > 0
928
927
  ? 'No matching analytics events'
929
928
  : 'No analytics events yet'} customSub={analyticsSearch.length > 0
930
929
  ? `No events matched "${analyticsSearch}"`
@@ -1,5 +1,5 @@
1
1
  import React, { useCallback, useMemo, useRef } from 'react';
2
- import { FlatList, Pressable, ScrollView, Text, TextInput, View, } from 'react-native';
2
+ import { FlatList, Platform, Pressable, ScrollView, Text, TextInput, View, } from 'react-native';
3
3
  import { useInspector } from './InspectorContext';
4
4
  import { useTranslation } from '../../i18n';
5
5
  import TouchableScale from '../TouchableScale';
@@ -490,7 +490,7 @@ const ConsoleTab = React.memo(() => {
490
490
  </ScrollView>
491
491
  </View>
492
492
 
493
- <FlatList ref={listRef} data={filteredConsoleLogs} keyExtractor={keyExtractor} ListHeaderComponent={listHeader} renderItem={renderItem} initialNumToRender={12} maxToRenderPerBatch={8} windowSize={5} removeClippedSubviews={true} renderToHardwareTextureAndroid={true} ListEmptyComponent={<EmptyState isSearch={logSearch.length > 0 || !logFilters.has('all')} searchQuery={logSearch} customTitle={logSearch.length > 0
493
+ <FlatList ref={listRef} data={filteredConsoleLogs} keyExtractor={keyExtractor} ListHeaderComponent={listHeader} renderItem={renderItem} initialNumToRender={12} maxToRenderPerBatch={8} windowSize={5} removeClippedSubviews={Platform.OS === 'android'} renderToHardwareTextureAndroid={true} ListEmptyComponent={<EmptyState isSearch={logSearch.length > 0 || !logFilters.has('all')} searchQuery={logSearch} customTitle={logSearch.length > 0
494
494
  ? 'No matching console logs'
495
495
  : 'No console logs'} onClearSearch={() => {
496
496
  setLogSearch('');