react-native-inapp-inspector 2.3.13 → 2.3.15

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 (284) hide show
  1. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  2. package/android/.gradle/8.9/checksums/md5-checksums.bin +0 -0
  3. package/android/.gradle/8.9/checksums/sha1-checksums.bin +0 -0
  4. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  5. package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
  6. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  7. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  8. package/android/.gradle/8.9/gc.properties +0 -0
  9. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  10. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  11. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  12. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  13. package/android/.gradle/9.2.0/gc.properties +0 -0
  14. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  15. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  16. package/android/.gradle/vcs-1/gc.properties +0 -0
  17. package/android/build/.transforms/6683d6eeaa3e1dfa689c3385111a0386/results.bin +1 -0
  18. package/android/build/.transforms/6683d6eeaa3e1dfa689c3385111a0386/transformed/classes/classes_dex/classes.dex +0 -0
  19. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/results.bin +1 -0
  20. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/BuildConfig.dex +0 -0
  21. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView$iconView$1.dex +0 -0
  22. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView.dex +0 -0
  23. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NativeNetworkInspectorSpec.dex +0 -0
  24. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$Companion.dex +0 -0
  25. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$frameCallback$1.dex +0 -0
  26. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$shakeListener$1.dex +0 -0
  27. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule.dex +0 -0
  28. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorPackage.dex +0 -0
  29. package/android/build/.transforms/9d2a3e5e0f0ea07cafb0c0bf290630ee/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  30. package/android/build/generated/source/buildConfig/debug/com/inappinspector/BuildConfig.java +10 -0
  31. package/android/build/generated/source/codegen/java/com/inappinspector/NativeNetworkInspectorSpec.java +104 -0
  32. package/android/build/generated/source/codegen/jni/CMakeLists.txt +28 -0
  33. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec-generated.cpp +128 -0
  34. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec.h +31 -0
  35. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.cpp +22 -0
  36. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.h +24 -0
  37. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.cpp +16 -0
  38. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.h +17 -0
  39. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.cpp +19 -0
  40. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.h +18 -0
  41. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/RNInAppInspectorSpecJSI.h +177 -0
  42. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.cpp +17 -0
  43. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.h +23 -0
  44. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.cpp +16 -0
  45. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.h +20 -0
  46. package/android/build/generated/source/codegen/schema.json +1 -0
  47. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +7 -0
  48. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  49. package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
  50. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  51. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  52. package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
  53. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  54. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  55. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  56. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -0
  57. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  58. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  59. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  60. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  61. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  62. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  63. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/BuildConfig.class +0 -0
  64. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  65. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +2 -0
  66. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +7 -0
  67. package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-react-native-inapp-inspector.jar +0 -0
  68. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +7 -0
  69. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  70. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  71. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  72. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/BuildConfig.class +0 -0
  73. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  74. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  75. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  76. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  77. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  78. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  79. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule.class +0 -0
  80. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  81. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  82. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +1 -0
  83. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  84. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  85. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  86. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  87. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  88. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  89. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  90. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  91. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  92. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  93. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  94. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  95. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  96. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  97. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  98. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  99. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  100. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  101. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  102. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  103. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  104. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  105. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  106. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  107. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  108. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  109. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  110. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  111. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  112. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  113. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  114. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  115. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  116. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  117. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  118. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  119. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  120. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  121. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  122. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  123. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  124. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  125. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  126. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  127. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  128. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  129. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  130. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  131. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  132. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  133. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  134. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  135. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  136. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  137. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  138. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  139. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  140. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  141. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  142. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  143. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  144. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  145. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  146. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
  147. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  148. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  149. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  150. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  151. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  152. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  153. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  154. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  155. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  156. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  157. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  158. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  159. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  160. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  161. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  162. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  163. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  164. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  165. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  166. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  167. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  168. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  169. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  170. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  171. package/android/build/outputs/aar/react-native-inapp-inspector-debug.aar +0 -0
  172. package/android/build/outputs/logs/manifest-merger-debug-report.txt +17 -0
  173. package/android/build/reports/problems/problems-report.html +659 -0
  174. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  175. package/android/build/tmp/kotlin-classes/debug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  176. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  177. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  178. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  179. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  180. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  181. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule.class +0 -0
  182. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  183. package/bin/cli.js +6 -0
  184. package/dist/commonjs/components/AnimatedEntrance.js +3 -3
  185. package/dist/commonjs/components/ConsoleLogCard.js +174 -100
  186. package/dist/commonjs/components/Inspector/ConsoleTab.js +25 -16
  187. package/dist/commonjs/components/Inspector/CrashTab.js +19 -5
  188. package/dist/commonjs/components/Inspector/DebuggingTab.js +741 -438
  189. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +198 -98
  190. package/dist/commonjs/components/Inspector/InspectorHeader.js +2 -2
  191. package/dist/commonjs/components/Inspector/MainScreen.js +58 -55
  192. package/dist/commonjs/components/Inspector/NetworkTab.js +1 -335
  193. package/dist/commonjs/components/Inspector/PerformanceTab.js +32 -6
  194. package/dist/commonjs/components/Inspector/ReduxTab.js +3 -1
  195. package/dist/commonjs/components/Inspector/SettingsPanel.js +6 -4
  196. package/dist/commonjs/components/Inspector/StorageTab.js +23 -5
  197. package/dist/commonjs/components/Inspector/TabBar.js +6 -2
  198. package/dist/commonjs/components/JsonViewer.js +14 -2
  199. package/dist/commonjs/components/LogCard.js +428 -227
  200. package/dist/commonjs/components/QRCodeView.js +1 -1
  201. package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
  202. package/dist/commonjs/constants/telemetryConfig.js +3 -3
  203. package/dist/commonjs/constants/version.d.ts +1 -1
  204. package/dist/commonjs/constants/version.js +1 -1
  205. package/dist/commonjs/customHooks/analyticsLogger.js +1 -1
  206. package/dist/commonjs/customHooks/consoleLogger.js +34 -2
  207. package/dist/commonjs/customHooks/crashHandler.js +1 -1
  208. package/dist/commonjs/customHooks/networkLogger.js +184 -26
  209. package/dist/commonjs/helpers/index.d.ts +1 -0
  210. package/dist/commonjs/helpers/index.js +11 -1
  211. package/dist/commonjs/helpers/qrGenerator.d.ts +1 -0
  212. package/dist/commonjs/helpers/qrGenerator.js +356 -33
  213. package/dist/commonjs/helpers/searchQueryParser.d.ts +1 -1
  214. package/dist/commonjs/helpers/searchQueryParser.js +37 -291
  215. package/dist/commonjs/index.d.ts +1 -0
  216. package/dist/commonjs/index.js +146 -30
  217. package/dist/commonjs/metro.d.ts +25 -0
  218. package/dist/commonjs/metro.js +478 -0
  219. package/dist/esm/components/AnimatedEntrance.js +3 -3
  220. package/dist/esm/components/ConsoleLogCard.js +141 -100
  221. package/dist/esm/components/Inspector/ConsoleTab.js +25 -16
  222. package/dist/esm/components/Inspector/CrashTab.js +19 -5
  223. package/dist/esm/components/Inspector/DebuggingTab.js +744 -441
  224. package/dist/esm/components/Inspector/DeviceInfoTab.js +198 -98
  225. package/dist/esm/components/Inspector/InspectorHeader.js +3 -3
  226. package/dist/esm/components/Inspector/MainScreen.js +58 -55
  227. package/dist/esm/components/Inspector/NetworkTab.js +2 -336
  228. package/dist/esm/components/Inspector/PerformanceTab.js +32 -6
  229. package/dist/esm/components/Inspector/ReduxTab.js +3 -1
  230. package/dist/esm/components/Inspector/SettingsPanel.js +7 -5
  231. package/dist/esm/components/Inspector/StorageTab.js +23 -5
  232. package/dist/esm/components/Inspector/TabBar.js +7 -3
  233. package/dist/esm/components/JsonViewer.js +14 -2
  234. package/dist/esm/components/LogCard.js +422 -221
  235. package/dist/esm/components/QRCodeView.js +1 -1
  236. package/dist/esm/constants/telemetryConfig.d.ts +3 -3
  237. package/dist/esm/constants/telemetryConfig.js +3 -3
  238. package/dist/esm/constants/version.d.ts +1 -1
  239. package/dist/esm/constants/version.js +1 -1
  240. package/dist/esm/customHooks/analyticsLogger.js +1 -1
  241. package/dist/esm/customHooks/consoleLogger.js +34 -2
  242. package/dist/esm/customHooks/crashHandler.js +1 -1
  243. package/dist/esm/customHooks/networkLogger.js +184 -26
  244. package/dist/esm/helpers/index.d.ts +1 -0
  245. package/dist/esm/helpers/index.js +9 -0
  246. package/dist/esm/helpers/qrGenerator.d.ts +1 -0
  247. package/dist/esm/helpers/qrGenerator.js +356 -30
  248. package/dist/esm/helpers/searchQueryParser.d.ts +1 -1
  249. package/dist/esm/helpers/searchQueryParser.js +37 -291
  250. package/dist/esm/index.d.ts +1 -0
  251. package/dist/esm/index.js +144 -29
  252. package/dist/esm/metro.d.ts +25 -0
  253. package/dist/esm/metro.js +469 -0
  254. package/metro.d.ts +1 -0
  255. package/metro.js +1 -0
  256. package/package.json +16 -5
  257. package/src/components/AnimatedEntrance.tsx +3 -3
  258. package/src/components/ConsoleLogCard.tsx +154 -103
  259. package/src/components/Inspector/ConsoleTab.tsx +27 -18
  260. package/src/components/Inspector/CrashTab.tsx +19 -5
  261. package/src/components/Inspector/DebuggingTab.tsx +842 -514
  262. package/src/components/Inspector/DeviceInfoTab.tsx +224 -102
  263. package/src/components/Inspector/InspectorHeader.tsx +5 -3
  264. package/src/components/Inspector/MainScreen.tsx +6 -4
  265. package/src/components/Inspector/NetworkTab.tsx +1 -402
  266. package/src/components/Inspector/PerformanceTab.tsx +36 -7
  267. package/src/components/Inspector/ReduxTab.tsx +9 -1
  268. package/src/components/Inspector/SettingsPanel.tsx +85 -75
  269. package/src/components/Inspector/StorageTab.tsx +27 -7
  270. package/src/components/Inspector/TabBar.tsx +16 -2
  271. package/src/components/JsonViewer.tsx +15 -2
  272. package/src/components/LogCard.tsx +528 -339
  273. package/src/components/QRCodeView.tsx +2 -2
  274. package/src/constants/telemetryConfig.ts +5 -3
  275. package/src/constants/version.ts +1 -1
  276. package/src/customHooks/analyticsLogger.ts +1 -1
  277. package/src/customHooks/consoleLogger.ts +36 -3
  278. package/src/customHooks/crashHandler.ts +1 -1
  279. package/src/customHooks/networkLogger.ts +214 -26
  280. package/src/helpers/index.ts +15 -0
  281. package/src/helpers/qrGenerator.ts +418 -37
  282. package/src/helpers/searchQueryParser.ts +40 -285
  283. package/src/index.tsx +337 -214
  284. package/src/metro.ts +598 -0
@@ -0,0 +1,469 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import os from 'os';
4
+ import { spawn } from 'child_process';
5
+ let activeBuildJob = {
6
+ status: 'idle',
7
+ scheme: 'assembleRelease',
8
+ clean: true,
9
+ progress: 0,
10
+ currentTask: '',
11
+ logs: [],
12
+ error: null,
13
+ startedAt: null,
14
+ completedAt: null,
15
+ apkName: null,
16
+ apkSize: null,
17
+ };
18
+ export function getLanIpAddresses() {
19
+ const interfaces = os.networkInterfaces();
20
+ const validIps = [];
21
+ for (const name of Object.keys(interfaces)) {
22
+ const netList = interfaces[name];
23
+ if (!netList)
24
+ continue;
25
+ for (const net of netList) {
26
+ if ((net.family === 'IPv4' || net.family === 4) &&
27
+ !net.internal &&
28
+ net.address) {
29
+ validIps.push(net.address);
30
+ }
31
+ }
32
+ }
33
+ const prioritized = validIps.find(ip => ip.startsWith('192.168.')) ||
34
+ validIps.find(ip => ip.startsWith('10.')) ||
35
+ validIps.find(ip => /^172\.(1[6-9]|2\d|3[01])\./.test(ip)) ||
36
+ validIps[0] ||
37
+ '127.0.0.1';
38
+ return { primary: prioritized, all: validIps };
39
+ }
40
+ function findDebugApk(customPath) {
41
+ if (customPath && fs.existsSync(customPath)) {
42
+ return customPath;
43
+ }
44
+ const root = process.cwd();
45
+ const searchCandidates = [
46
+ path.join(root, 'android', 'app', 'build', 'outputs', 'apk', 'release'),
47
+ path.join(root, 'android', 'app', 'build', 'outputs', 'apk', 'debug'),
48
+ path.join(root, 'example', 'android', 'app', 'build', 'outputs', 'apk', 'release'),
49
+ path.join(root, 'example', 'android', 'app', 'build', 'outputs', 'apk', 'debug'),
50
+ path.join(root, 'app', 'build', 'outputs', 'apk', 'release'),
51
+ path.join(root, 'app', 'build', 'outputs', 'apk', 'debug'),
52
+ path.join(root, 'build', 'outputs', 'apk', 'release'),
53
+ path.join(root, 'build', 'outputs', 'apk', 'debug'),
54
+ ];
55
+ for (const candidate of searchCandidates) {
56
+ if (fs.existsSync(candidate)) {
57
+ const stats = fs.statSync(candidate);
58
+ if (stats.isFile() && candidate.endsWith('.apk')) {
59
+ return candidate;
60
+ }
61
+ if (stats.isDirectory()) {
62
+ try {
63
+ const files = fs.readdirSync(candidate);
64
+ const apkFiles = files
65
+ .filter(f => f.endsWith('.apk'))
66
+ .map(f => ({
67
+ file: path.join(candidate, f),
68
+ mtime: fs.statSync(path.join(candidate, f)).mtimeMs,
69
+ }))
70
+ .sort((a, b) => b.mtime - a.mtime);
71
+ if (apkFiles.length > 0 && apkFiles[0]) {
72
+ return apkFiles[0].file;
73
+ }
74
+ }
75
+ catch { }
76
+ }
77
+ }
78
+ }
79
+ return null;
80
+ }
81
+ function findGradleDirectory() {
82
+ const root = process.cwd();
83
+ const isWindows = process.platform === 'win32';
84
+ const gradlewName = isWindows ? 'gradlew.bat' : 'gradlew';
85
+ const candidates = [
86
+ path.join(root, 'android'),
87
+ path.join(root, 'example', 'android'),
88
+ path.join(root, '..', 'android'),
89
+ root,
90
+ ];
91
+ for (const candidate of candidates) {
92
+ const fullGradlew = path.join(candidate, gradlewName);
93
+ if (fs.existsSync(fullGradlew)) {
94
+ return { dir: candidate, cmd: fullGradlew };
95
+ }
96
+ }
97
+ return {
98
+ dir: path.join(root, 'android'),
99
+ cmd: isWindows ? 'gradlew.bat' : './gradlew',
100
+ };
101
+ }
102
+ let currentGradleProcess = null;
103
+ function startGradleBuild(scheme = 'assembleRelease', clean = true) {
104
+ if (activeBuildJob.status === 'running') {
105
+ return activeBuildJob;
106
+ }
107
+ const isWindows = process.platform === 'win32';
108
+ const { dir: androidDir, cmd: gradlewCmd } = findGradleDirectory();
109
+ if (!isWindows && fs.existsSync(gradlewCmd)) {
110
+ try {
111
+ fs.chmodSync(gradlewCmd, '755');
112
+ }
113
+ catch { }
114
+ }
115
+ const args = clean ? ['clean', scheme, '--console=plain'] : [scheme, '--console=plain'];
116
+ activeBuildJob = {
117
+ status: 'running',
118
+ scheme,
119
+ clean,
120
+ progress: 5,
121
+ currentTask: clean ? 'Cleaning build cache...' : 'Starting build...',
122
+ logs: [
123
+ `šŸš€ Initializing Gradle build (${scheme})...`,
124
+ `šŸ“ Working Directory: ${androidDir}`,
125
+ clean ? '🧹 Running: gradlew clean ' + scheme : '⚔ Running: gradlew ' + scheme,
126
+ ],
127
+ error: null,
128
+ startedAt: new Date().toISOString(),
129
+ completedAt: null,
130
+ apkName: null,
131
+ apkSize: null,
132
+ };
133
+ try {
134
+ const child = spawn(gradlewCmd, args, {
135
+ cwd: androidDir,
136
+ env: { ...process.env, CI: 'true' },
137
+ });
138
+ currentGradleProcess = child;
139
+ let taskCount = 0;
140
+ const estimatedTotalTasks = clean ? 42 : 32;
141
+ child.stdout.on('data', data => {
142
+ const output = data.toString();
143
+ const lines = output.split('\n');
144
+ for (const line of lines) {
145
+ const trimmed = line.trim();
146
+ if (trimmed) {
147
+ activeBuildJob.logs.push(trimmed);
148
+ if (activeBuildJob.logs.length > 150) {
149
+ activeBuildJob.logs.shift();
150
+ }
151
+ }
152
+ if (trimmed.startsWith('> Task :')) {
153
+ taskCount++;
154
+ const taskName = trimmed.replace('> Task ', '');
155
+ const calculatedProgress = Math.min(94, Math.round(10 + (taskCount / estimatedTotalTasks) * 80));
156
+ activeBuildJob.progress = calculatedProgress;
157
+ activeBuildJob.currentTask = taskName;
158
+ }
159
+ else if (trimmed.includes('BUILD SUCCESSFUL')) {
160
+ activeBuildJob.progress = 98;
161
+ activeBuildJob.currentTask = 'Finalizing APK package...';
162
+ }
163
+ }
164
+ });
165
+ child.stderr.on('data', data => {
166
+ const errStr = data.toString();
167
+ const lines = errStr.split('\n');
168
+ for (const line of lines) {
169
+ const trimmed = line.trim();
170
+ if (trimmed) {
171
+ activeBuildJob.logs.push(trimmed);
172
+ if (activeBuildJob.logs.length > 150) {
173
+ activeBuildJob.logs.shift();
174
+ }
175
+ }
176
+ }
177
+ if (errStr.includes('FAILURE') || errStr.includes('error:')) {
178
+ activeBuildJob.error = (activeBuildJob.error || '') + errStr.slice(0, 300);
179
+ }
180
+ });
181
+ child.on('close', code => {
182
+ currentGradleProcess = null;
183
+ activeBuildJob.completedAt = new Date().toISOString();
184
+ if (code === 0) {
185
+ activeBuildJob.status = 'completed';
186
+ activeBuildJob.progress = 100;
187
+ activeBuildJob.currentTask = 'Build finished successfully!';
188
+ activeBuildJob.logs.push('✨ BUILD SUCCESSFUL! APK generated.');
189
+ const apk = findDebugApk();
190
+ if (apk && fs.existsSync(apk)) {
191
+ const stats = fs.statSync(apk);
192
+ activeBuildJob.apkName = path.basename(apk);
193
+ activeBuildJob.apkSize = stats.size;
194
+ }
195
+ }
196
+ else {
197
+ activeBuildJob.status = 'failed';
198
+ activeBuildJob.currentTask = 'Build failed';
199
+ activeBuildJob.logs.push(`āŒ Gradle build failed with exit code ${code}`);
200
+ if (!activeBuildJob.error) {
201
+ activeBuildJob.error = `Gradle exited with code ${code}`;
202
+ }
203
+ }
204
+ });
205
+ child.on('error', err => {
206
+ currentGradleProcess = null;
207
+ activeBuildJob.status = 'failed';
208
+ activeBuildJob.error = err.message;
209
+ activeBuildJob.currentTask = 'Failed to spawn Gradle';
210
+ activeBuildJob.logs.push(`āŒ Failed to spawn Gradle: ${err.message}`);
211
+ });
212
+ }
213
+ catch (err) {
214
+ currentGradleProcess = null;
215
+ activeBuildJob.status = 'failed';
216
+ activeBuildJob.error = err?.message || 'Unknown spawn error';
217
+ activeBuildJob.currentTask = 'Error launching build';
218
+ activeBuildJob.logs.push(`āŒ Error: ${err?.message || 'Unknown spawn error'}`);
219
+ }
220
+ return activeBuildJob;
221
+ }
222
+ export function stopGradleBuild() {
223
+ if (currentGradleProcess) {
224
+ try {
225
+ if (process.platform === 'win32') {
226
+ const { exec } = require('child_process');
227
+ exec(`taskkill /pid ${currentGradleProcess.pid} /T /F`);
228
+ }
229
+ else {
230
+ currentGradleProcess.kill('SIGTERM');
231
+ setTimeout(() => {
232
+ try {
233
+ currentGradleProcess?.kill('SIGKILL');
234
+ }
235
+ catch { }
236
+ }, 1000);
237
+ }
238
+ }
239
+ catch { }
240
+ currentGradleProcess = null;
241
+ }
242
+ activeBuildJob.status = 'idle';
243
+ activeBuildJob.currentTask = 'Build cancelled';
244
+ activeBuildJob.error = 'Build cancelled by user';
245
+ activeBuildJob.logs.push('šŸ›‘ Build cancelled by user.');
246
+ activeBuildJob.completedAt = new Date().toISOString();
247
+ return activeBuildJob;
248
+ }
249
+ export function withInAppInspector(metroConfig = {}, options = {}) {
250
+ const customMiddleware = (req, res, next) => {
251
+ const url = req.url || '';
252
+ const cleanUrl = url.split('?')[0];
253
+ const serverPort = req.socket?.localPort || 8081;
254
+ const { primary: hostIp, all: allIps } = getLanIpAddresses();
255
+ if (cleanUrl === '/__inapp_inspector/build-status') {
256
+ res.writeHead(200, {
257
+ 'Content-Type': 'application/json',
258
+ 'Access-Control-Allow-Origin': '*',
259
+ });
260
+ return res.end(JSON.stringify(activeBuildJob));
261
+ }
262
+ if (cleanUrl === '/__inapp_inspector/stop-build' ||
263
+ cleanUrl === '/__inapp_inspector/cancel-build') {
264
+ const job = stopGradleBuild();
265
+ res.writeHead(200, {
266
+ 'Content-Type': 'application/json',
267
+ 'Access-Control-Allow-Origin': '*',
268
+ });
269
+ return res.end(JSON.stringify(job));
270
+ }
271
+ if (cleanUrl === '/__inapp_inspector/build-apk') {
272
+ res.writeHead(200, {
273
+ 'Content-Type': 'application/json',
274
+ 'Access-Control-Allow-Origin': '*',
275
+ });
276
+ const queryParams = new URLSearchParams(url.includes('?') ? url.split('?')[1] : '');
277
+ const scheme = queryParams.get('scheme') || 'assembleRelease';
278
+ const clean = queryParams.get('clean') !== 'false';
279
+ const job = startGradleBuild(scheme, clean);
280
+ return res.end(JSON.stringify(job));
281
+ }
282
+ if (cleanUrl === '/__inapp_inspector/status' ||
283
+ cleanUrl === '/__inapp_inspector/apk-info') {
284
+ const apk = findDebugApk(options.apkPath);
285
+ res.writeHead(200, {
286
+ 'Content-Type': 'application/json',
287
+ 'Access-Control-Allow-Origin': '*',
288
+ });
289
+ const apkName = apk ? path.basename(apk) : 'app-debug.apk';
290
+ const dynamicApkUrl = `http://${hostIp}:${serverPort}/${apkName}`;
291
+ if (apk && fs.existsSync(apk)) {
292
+ const stats = fs.statSync(apk);
293
+ return res.end(JSON.stringify({
294
+ status: 'ready',
295
+ hasApk: true,
296
+ hostIp,
297
+ allIps,
298
+ port: serverPort,
299
+ apkName,
300
+ apkUrl: dynamicApkUrl,
301
+ apkSize: stats.size,
302
+ apkSizeBytes: stats.size,
303
+ modifiedAt: stats.mtime.toISOString(),
304
+ }));
305
+ }
306
+ else {
307
+ return res.end(JSON.stringify({
308
+ status: 'ready',
309
+ hasApk: false,
310
+ hostIp,
311
+ allIps,
312
+ port: serverPort,
313
+ apkName,
314
+ apkUrl: dynamicApkUrl,
315
+ message: 'Debug APK not built yet. Run ./gradlew assembleDebug inside android directory.',
316
+ }));
317
+ }
318
+ }
319
+ if (cleanUrl === '/app-debug.apk' ||
320
+ cleanUrl === '/__inapp_inspector/apk' ||
321
+ cleanUrl.endsWith('.apk') ||
322
+ (options.endpoint && cleanUrl === options.endpoint)) {
323
+ const apk = findDebugApk(options.apkPath);
324
+ if (apk && fs.existsSync(apk)) {
325
+ const stats = fs.statSync(apk);
326
+ const fileName = path.basename(apk);
327
+ res.writeHead(200, {
328
+ 'Content-Type': 'application/vnd.android.package-archive',
329
+ 'Content-Disposition': `attachment; filename="${fileName}"`,
330
+ 'Content-Length': stats.size,
331
+ 'Access-Control-Allow-Origin': '*',
332
+ });
333
+ return fs.createReadStream(apk).pipe(res);
334
+ }
335
+ else {
336
+ res.writeHead(404, {
337
+ 'Content-Type': 'text/html; charset=utf-8',
338
+ 'Access-Control-Allow-Origin': '*',
339
+ });
340
+ return res.end(`
341
+ <!DOCTYPE html>
342
+ <html>
343
+ <head><title>Debug APK Not Found</title></head>
344
+ <body style="font-family: sans-serif; padding: 30px; text-align: center;">
345
+ <h2>Debug APK not built yet</h2>
346
+ <p>Please build the debug APK on your computer:</p>
347
+ <pre style="background: #f4f4f5; padding: 12px; display: inline-block; border-radius: 6px;">cd android && ./gradlew assembleDebug</pre>
348
+ <p>Once built, refresh this page or re-scan the QR code to install!</p>
349
+ </body>
350
+ </html>
351
+ `);
352
+ }
353
+ }
354
+ return next();
355
+ };
356
+ const prevEnhanceMiddleware = metroConfig.server?.enhanceMiddleware;
357
+ metroConfig.server = metroConfig.server || {};
358
+ metroConfig.server.enhanceMiddleware = (middleware, server) => {
359
+ const enhanced = prevEnhanceMiddleware
360
+ ? prevEnhanceMiddleware(middleware, server)
361
+ : middleware;
362
+ return (req, res, next) => {
363
+ customMiddleware(req, res, () => {
364
+ if (typeof enhanced === 'function') {
365
+ return enhanced(req, res, next);
366
+ }
367
+ return next();
368
+ });
369
+ };
370
+ };
371
+ return metroConfig;
372
+ }
373
+ export function startStandaloneServer(port = 8083) {
374
+ const http = require('http');
375
+ const { primary: hostIp, all: allIps } = getLanIpAddresses();
376
+ const server = http.createServer((req, res) => {
377
+ const url = req.url || '';
378
+ const cleanUrl = url.split('?')[0];
379
+ if (cleanUrl === '/__inapp_inspector/build-status') {
380
+ res.writeHead(200, {
381
+ 'Content-Type': 'application/json',
382
+ 'Access-Control-Allow-Origin': '*',
383
+ });
384
+ return res.end(JSON.stringify(activeBuildJob));
385
+ }
386
+ if (cleanUrl === '/__inapp_inspector/stop-build' ||
387
+ cleanUrl === '/__inapp_inspector/cancel-build') {
388
+ const job = stopGradleBuild();
389
+ res.writeHead(200, {
390
+ 'Content-Type': 'application/json',
391
+ 'Access-Control-Allow-Origin': '*',
392
+ });
393
+ return res.end(JSON.stringify(job));
394
+ }
395
+ if (cleanUrl === '/__inapp_inspector/build-apk') {
396
+ res.writeHead(200, {
397
+ 'Content-Type': 'application/json',
398
+ 'Access-Control-Allow-Origin': '*',
399
+ });
400
+ const queryParams = new URLSearchParams(url.includes('?') ? url.split('?')[1] : '');
401
+ const scheme = queryParams.get('scheme') || 'assembleRelease';
402
+ const clean = queryParams.get('clean') !== 'false';
403
+ const job = startGradleBuild(scheme, clean);
404
+ return res.end(JSON.stringify(job));
405
+ }
406
+ if (cleanUrl === '/__inapp_inspector/status' ||
407
+ cleanUrl === '/__inapp_inspector/apk-info' ||
408
+ cleanUrl === '/apk-info') {
409
+ const apk = findDebugApk();
410
+ res.writeHead(200, {
411
+ 'Content-Type': 'application/json',
412
+ 'Access-Control-Allow-Origin': '*',
413
+ });
414
+ const apkName = apk ? path.basename(apk) : 'app-debug.apk';
415
+ const dynamicApkUrl = `http://${hostIp}:${port}/${apkName}`;
416
+ if (apk && fs.existsSync(apk)) {
417
+ const stats = fs.statSync(apk);
418
+ return res.end(JSON.stringify({
419
+ status: 'ready',
420
+ hasApk: true,
421
+ hostIp,
422
+ allIps,
423
+ port,
424
+ apkName,
425
+ apkUrl: dynamicApkUrl,
426
+ apkSize: stats.size,
427
+ apkSizeBytes: stats.size,
428
+ modifiedAt: stats.mtime.toISOString(),
429
+ }));
430
+ }
431
+ else {
432
+ return res.end(JSON.stringify({
433
+ status: 'ready',
434
+ hasApk: false,
435
+ hostIp,
436
+ allIps,
437
+ port,
438
+ apkName,
439
+ apkUrl: dynamicApkUrl,
440
+ message: 'Debug APK not built yet. Run ./gradlew assembleDebug inside android directory.',
441
+ }));
442
+ }
443
+ }
444
+ if (cleanUrl === '/app-debug.apk' ||
445
+ cleanUrl === '/__inapp_inspector/apk' ||
446
+ cleanUrl.endsWith('.apk')) {
447
+ const apk = findDebugApk();
448
+ if (apk && fs.existsSync(apk)) {
449
+ const stats = fs.statSync(apk);
450
+ const fileName = path.basename(apk);
451
+ res.writeHead(200, {
452
+ 'Content-Type': 'application/vnd.android.package-archive',
453
+ 'Content-Disposition': `attachment; filename="${fileName}"`,
454
+ 'Content-Length': stats.size,
455
+ 'Access-Control-Allow-Origin': '*',
456
+ });
457
+ return fs.createReadStream(apk).pipe(res);
458
+ }
459
+ }
460
+ res.writeHead(404, { 'Content-Type': 'text/plain', 'Access-Control-Allow-Origin': '*' });
461
+ return res.end('Not Found');
462
+ });
463
+ server.listen(port, '0.0.0.0', () => {
464
+ console.log(`\nšŸ“¦ [InAppInspector] APK Server listening at http://0.0.0.0:${port}`);
465
+ console.log(`šŸ“² Dynamic LAN IP: http://${hostIp}:${port}/app-debug.apk\n`);
466
+ });
467
+ return server;
468
+ }
469
+ export default withInAppInspector;
package/metro.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './dist/esm/metro';
package/metro.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = require('./dist/commonjs/metro');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-inapp-inspector",
3
- "version": "2.3.13",
3
+ "version": "2.3.15",
4
4
  "description": "The zero-config, all-in-one in-app debugger for React Native & Expo. Inspect Network (fetch/axios), Console logs, Stack Traces, Redux State, Firebase Analytics, and JS Bundle size directly on device.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -80,11 +80,20 @@
80
80
  "require": "./dist/commonjs/storage.js",
81
81
  "default": "./dist/commonjs/storage.js"
82
82
  },
83
+ "./metro": {
84
+ "types": "./dist/commonjs/metro.d.ts",
85
+ "import": "./dist/esm/metro.js",
86
+ "require": "./dist/commonjs/metro.js",
87
+ "default": "./dist/commonjs/metro.js"
88
+ },
83
89
  "./package.json": "./package.json"
84
90
  },
85
91
  "files": [
86
92
  "dist",
87
93
  "src",
94
+ "bin",
95
+ "metro.js",
96
+ "metro.d.ts",
88
97
  "README.md",
89
98
  "android",
90
99
  "ios",
@@ -106,7 +115,11 @@
106
115
  "watch": "tsc -w",
107
116
  "prepack": "npm run build",
108
117
  "release": "node release.cjs",
109
- "bundle-visualizer": "react-native-bundle-visualizer"
118
+ "bundle-visualizer": "react-native-bundle-visualizer",
119
+ "serve-apk": "node ./bin/cli.js 8083"
120
+ },
121
+ "bin": {
122
+ "react-native-inapp-inspector": "./bin/cli.js"
110
123
  },
111
124
  "keywords": [
112
125
  "react-native",
@@ -174,8 +187,6 @@
174
187
  "typescript": "5.8.3"
175
188
  },
176
189
  "dependencies": {
177
- "@react-native-clipboard/clipboard": "1.16.3",
178
- "@types/qrcode-generator": "^0.0.16",
179
- "qrcode-generator": "^2.0.4"
190
+ "@react-native-clipboard/clipboard": "1.16.3"
180
191
  }
181
192
  }
@@ -23,16 +23,16 @@ const AnimatedEntrance = React.memo(function AnimatedEntrance({
23
23
  }
24
24
 
25
25
  const progress = useRef(new Animated.Value(0)).current;
26
+ const initialIndex = useRef(index).current;
26
27
 
27
28
  useEffect(() => {
28
- progress.setValue(0);
29
29
  Animated.timing(progress, {
30
30
  toValue: 1,
31
31
  duration,
32
- delay: delay + Math.min(index, 12) * 18,
32
+ delay: delay + Math.min(initialIndex, 8) * 12,
33
33
  useNativeDriver: true,
34
34
  }).start();
35
- }, [delay, duration, index, progress]);
35
+ }, []);
36
36
 
37
37
  return (
38
38
  <Animated.View