react-native-inapp-inspector 2.5.2 → 2.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  2. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  3. package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
  4. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  5. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  6. package/android/.gradle/8.9/gc.properties +0 -0
  7. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  8. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  9. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  10. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  11. package/android/.gradle/9.2.0/gc.properties +0 -0
  12. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  13. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  14. package/android/.gradle/vcs-1/gc.properties +0 -0
  15. package/android/.settings/org.eclipse.buildship.core.prefs +13 -0
  16. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/results.bin +1 -0
  17. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/BuildConfig.dex +0 -0
  18. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView$iconView$1.dex +0 -0
  19. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView.dex +0 -0
  20. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NativeNetworkInspectorSpec.dex +0 -0
  21. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$Companion.dex +0 -0
  22. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$activityEventListener$1.dex +0 -0
  23. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$frameCallback$1.dex +0 -0
  24. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.dex +0 -0
  25. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$shakeListener$1.dex +0 -0
  26. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.dex +0 -0
  27. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule.dex +0 -0
  28. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorPackage.dex +0 -0
  29. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  30. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/results.bin +1 -0
  31. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/transformed/classes/classes_dex/classes.dex +0 -0
  32. package/android/build/generated/source/buildConfig/debug/com/inappinspector/BuildConfig.java +10 -0
  33. package/android/build/generated/source/codegen/java/com/inappinspector/NativeNetworkInspectorSpec.java +160 -0
  34. package/android/build/generated/source/codegen/jni/CMakeLists.txt +28 -0
  35. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec-generated.cpp +212 -0
  36. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec.h +31 -0
  37. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.cpp +22 -0
  38. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.h +24 -0
  39. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.cpp +16 -0
  40. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.h +17 -0
  41. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.cpp +19 -0
  42. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.h +18 -0
  43. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/RNInAppInspectorSpecJSI.h +300 -0
  44. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.cpp +17 -0
  45. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.h +23 -0
  46. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.cpp +16 -0
  47. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.h +20 -0
  48. package/android/build/generated/source/codegen/schema.json +1 -0
  49. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +7 -0
  50. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  51. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  52. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -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/mergeDebugJniLibFolders/merger.xml +2 -0
  59. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  60. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  61. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  62. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/BuildConfig.class +0 -0
  63. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  64. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +2 -0
  65. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +7 -0
  66. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +7 -0
  67. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  68. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  69. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  70. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/BuildConfig.class +0 -0
  71. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  72. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  73. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  74. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  75. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$activityEventListener$1.class +0 -0
  76. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  77. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$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$startVideoRecording$2$1.class +0 -0
  80. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule.class +0 -0
  81. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  82. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  83. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +1 -0
  84. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  85. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  86. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  87. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  88. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  89. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  90. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  91. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  92. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  93. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  94. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  95. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  96. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  97. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  98. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  99. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  100. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  101. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  102. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  103. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  104. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  105. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  106. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  107. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  108. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  109. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  110. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  111. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  112. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  113. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  114. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  115. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  116. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  117. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  118. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  119. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  120. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  121. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  122. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  123. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  124. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  125. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  126. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  127. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  128. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  129. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  130. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  131. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  132. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  133. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  134. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  135. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  136. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  137. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  138. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  139. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  140. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  141. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  142. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  143. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  144. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  145. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  146. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  147. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
  148. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  149. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  150. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  151. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  152. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  153. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  154. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  155. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  156. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  157. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  158. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  159. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  160. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  161. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  162. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  163. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  164. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  165. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  166. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  167. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  168. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  169. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  170. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  171. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +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$activityEventListener$1.class +0 -0
  180. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  181. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.class +0 -0
  182. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  183. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.class +0 -0
  184. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule.class +0 -0
  185. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  186. package/dist/commonjs/components/CountryFlag.d.ts +10 -0
  187. package/dist/commonjs/components/CountryFlag.js +140 -0
  188. package/dist/commonjs/components/EmptyState.js +6 -6
  189. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +36 -36
  190. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +10 -10
  191. package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.js +24 -24
  192. package/dist/commonjs/components/Inspector/InspectorHeader.js +6 -8
  193. package/dist/commonjs/components/Inspector/LanguageSelectorModal.js +23 -18
  194. package/dist/commonjs/components/Inspector/MainScreen.js +9 -9
  195. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +268 -270
  196. package/dist/commonjs/components/Inspector/NetworkFilterModal.js +21 -21
  197. package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.js +6 -6
  198. package/dist/commonjs/components/Inspector/SocketFilterModal.js +12 -12
  199. package/dist/commonjs/components/Inspector/TabBar.js +3 -3
  200. package/dist/commonjs/components/Inspector/UpdateAvailableModal.js +2 -2
  201. package/dist/commonjs/components/MetaAccordion.js +17 -17
  202. package/dist/commonjs/components/ModuleErrorBoundary.js +4 -4
  203. package/dist/commonjs/components/NetworkIcons.d.ts +7 -0
  204. package/dist/commonjs/components/NetworkIcons.js +33 -2
  205. package/dist/commonjs/components/SourcePageCard.js +9 -9
  206. package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
  207. package/dist/commonjs/constants/telemetryConfig.js +1 -1
  208. package/dist/commonjs/constants/version.d.ts +1 -1
  209. package/dist/commonjs/constants/version.js +1 -1
  210. package/dist/commonjs/i18n/locales/en.json +1 -1
  211. package/dist/commonjs/index.js +1 -1
  212. package/dist/commonjs/styles/AppColors.d.ts +76 -0
  213. package/dist/commonjs/styles/AppColors.js +1 -1
  214. package/dist/esm/components/CountryFlag.d.ts +10 -0
  215. package/dist/esm/components/CountryFlag.js +140 -0
  216. package/dist/esm/components/EmptyState.js +13 -13
  217. package/dist/esm/components/Inspector/DeviceInfoTab.js +176 -176
  218. package/dist/esm/components/Inspector/FloatingCaptureWidget.js +29 -29
  219. package/dist/esm/components/Inspector/GlobalCrashScreenModal.js +9 -9
  220. package/dist/esm/components/Inspector/InspectorHeader.js +16 -18
  221. package/dist/esm/components/Inspector/LanguageSelectorModal.js +107 -102
  222. package/dist/esm/components/Inspector/MainScreen.js +16 -16
  223. package/dist/esm/components/Inspector/MediaPreviewModal.js +577 -579
  224. package/dist/esm/components/Inspector/NetworkFilterModal.js +37 -37
  225. package/dist/esm/components/Inspector/SecondaryTelemetryStrip.js +20 -20
  226. package/dist/esm/components/Inspector/SocketFilterModal.js +32 -32
  227. package/dist/esm/components/Inspector/TabBar.js +12 -12
  228. package/dist/esm/components/Inspector/UpdateAvailableModal.js +11 -11
  229. package/dist/esm/components/MetaAccordion.js +24 -24
  230. package/dist/esm/components/ModuleErrorBoundary.js +20 -20
  231. package/dist/esm/components/NetworkIcons.d.ts +7 -0
  232. package/dist/esm/components/NetworkIcons.js +243 -212
  233. package/dist/esm/components/SourcePageCard.js +21 -21
  234. package/dist/esm/constants/telemetryConfig.d.ts +3 -3
  235. package/dist/esm/constants/telemetryConfig.js +1 -1
  236. package/dist/esm/constants/version.d.ts +1 -1
  237. package/dist/esm/constants/version.js +1 -1
  238. package/dist/esm/i18n/locales/en.json +1 -1
  239. package/dist/esm/index.js +1 -1
  240. package/dist/esm/styles/AppColors.d.ts +76 -0
  241. package/dist/esm/styles/AppColors.js +1 -1
  242. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as Ce,Pressable as Y,ScrollView as Te,StyleSheet as we,Text as S,TouchableOpacity as L,View as T}from"react-native";import{useInspector as ke}from"./InspectorContext";import{AppColors as t}from"../../styles/AppColors";import{AppFonts as B}from"../../styles/AppFonts";import{METHOD_COLORS as me}from"../../constants";import{FilterIcon as Se,CloseWhite as Be,ClockIcon as K,CircleCheckIcon as Pe,CircleAlertIcon as X,CircleXIcon as Ie,LayersIcon as A,RepeatIcon as Oe,ShieldAlertIcon as ze,BoltIcon as Ve,GlobeIcon as Re,LockIcon as Fe,UnlockIcon as Le,RocketIcon as We,TurtleIcon as Ee,HourglassIcon as Me,PackageIcon as Ne}from"../NetworkIcons";import J from"../TouchableScale";export const DEFAULT_NETWORK_FILTERS={statusCodes:new Set(["all"]),methods:new Set(["all"]),latency:"all",protocol:"all",sortBy:"time_desc"},isNetworkFiltersDefault=I=>(I.statusCodes.has("all")||I.statusCodes.size===0)&&(I.methods.has("all")||I.methods.size===0)&&I.latency==="all"&&I.protocol==="all"&&I.sortBy==="time_desc",NetworkFilterModal=({visible:I,onClose:E,filters:R,onApply:Z,searchQuery:M=""})=>{const{logs:W}=ke(),[r,F]=le(()=>({...R,statusCodes:new Set(R.statusCodes),methods:new Set(R.methods)}));te(()=>{I&&F({...R,statusCodes:new Set(R.statusCodes),methods:new Set(R.methods)})},[I,R]);const P=N(()=>{const e={all:W.length,"2xx":0,"3xx":0,"4xx":0,"5xx":0,failed:0},l={all:W.length};let C=0,g=0,O=0,v=0,_=0;for(const z of W){const V=typeof z.status=="number"?z.status:parseInt(String(z.status),10);z.status===0||z.status==null?e.failed=(e.failed||0)+1:isNaN(V)||(V>=200&&V<300?e["2xx"]=(e["2xx"]||0)+1:V>=300&&V<400?e["3xx"]=(e["3xx"]||0)+1:V>=400&&V<500?e["4xx"]=(e["4xx"]||0)+1:V>=500&&(e["5xx"]=(e["5xx"]||0)+1));const U=(z.method||"GET").toUpperCase();l[U]=(l[U]||0)+1;const G=z.duration||0;G<200?C++:G<=500?g++:O++,(z.url||"").toLowerCase().startsWith("https")?v++:_++}return{statusMap:e,methodMap:l,fastCount:C,normalCount:g,slowCount:O,httpsCount:v,httpCount:_}},[W]),D=N(()=>W.filter(e=>{if(!r.statusCodes.has("all")&&r.statusCodes.size>0){const g=typeof e.status=="number"?e.status:parseInt(String(e.status),10);let O=!1;if(r.statusCodes.has("failed")&&(e.status===0||e.status==null)&&(O=!0),r.statusCodes.has("2xx")&&!isNaN(g)&&g>=200&&g<300&&(O=!0),r.statusCodes.has("3xx")&&!isNaN(g)&&g>=300&&g<400&&(O=!0),r.statusCodes.has("4xx")&&!isNaN(g)&&g>=400&&g<500&&(O=!0),r.statusCodes.has("5xx")&&!isNaN(g)&&g>=500&&(O=!0),!O)return!1}if(!r.methods.has("all")&&r.methods.size>0){const g=(e.method||"GET").toUpperCase();if(!r.methods.has(g))return!1}const l=e.duration||0;if(r.latency==="fast"&&l>=200||r.latency==="normal"&&(l<200||l>500)||r.latency==="slow"&&l<=500)return!1;const C=(e.url||"").toLowerCase().startsWith("https");if(r.protocol==="https"&&!C||r.protocol==="http"&&C)return!1;if(M.trim().length>0){const g=M.toLowerCase();if(!(e.url||"").toLowerCase().includes(g))return!1}return!0}).length,[W,r,M]),Q=e=>{F(l=>{const C=new Set(l.statusCodes);return e==="all"?{...l,statusCodes:new Set(["all"])}:(C.delete("all"),C.has(e)?(C.delete(e),C.size===0&&C.add("all")):C.add(e),{...l,statusCodes:C})})},H=e=>{F(l=>{const C=new Set(l.methods);return e==="all"?{...l,methods:new Set(["all"])}:(C.delete("all"),C.has(e)?(C.delete(e),C.size===0&&C.add("all")):C.add(e),{...l,methods:C})})},ee=()=>{F({statusCodes:new Set(["all"]),methods:new Set(["all"]),latency:"all",protocol:"all",sortBy:"time_desc"})},oe=()=>{Z(r),E()},$=N(()=>{let e=0;return!r.statusCodes.has("all")&&r.statusCodes.size>0&&(e+=r.statusCodes.size),!r.methods.has("all")&&r.methods.size>0&&(e+=r.methods.size),r.latency!=="all"&&e++,r.protocol!=="all"&&e++,r.sortBy!=="time_desc"&&e++,e},[r]);return<Ce visible={I}transparent animationType="fade"onRequestClose={E}>
1
+ import{useEffect as le,useMemo as N,useState as re}from"react";import{Modal as Ce,Pressable as Y,ScrollView as Te,StyleSheet as me,Text as S,TouchableOpacity as W,View as T}from"react-native";import{useInspector as we}from"./InspectorContext";import{AppColors as t}from"../../styles/AppColors";import{AppFonts as P}from"../../styles/AppFonts";import{METHOD_COLORS as ke}from"../../constants";import{FilterIcon as Se,CloseWhite as Be,ClockIcon as K,CircleCheckIcon as Pe,CircleAlertIcon as X,CircleXIcon as Ie,LayersIcon as D,RepeatIcon as Oe,ShieldAlertIcon as ze,BoltIcon as Ve,GlobeIcon as Fe,LockIcon as Re,UnlockIcon as Le,RocketIcon as We,TurtleIcon as Me,HourglassIcon as Ee,PackageIcon as Ae}from"../NetworkIcons";import J from"../TouchableScale";import{useTranslation as Ne}from"../../i18n";export const DEFAULT_NETWORK_FILTERS={statusCodes:new Set(["all"]),methods:new Set(["all"]),latency:"all",protocol:"all",sortBy:"time_desc"},isNetworkFiltersDefault=O=>(O.statusCodes.has("all")||O.statusCodes.size===0)&&(O.methods.has("all")||O.methods.size===0)&&O.latency==="all"&&O.protocol==="all"&&O.sortBy==="time_desc",NetworkFilterModal=({visible:O,onClose:E,filters:R,onApply:Z,searchQuery:A=""})=>{const{logs:M}=we(),{t:B}=Ne(),[r,L]=re(()=>({...R,statusCodes:new Set(R.statusCodes),methods:new Set(R.methods)}));le(()=>{O&&L({...R,statusCodes:new Set(R.statusCodes),methods:new Set(R.methods)})},[O,R]);const I=N(()=>{const e={all:M.length,"2xx":0,"3xx":0,"4xx":0,"5xx":0,failed:0},l={all:M.length};let C=0,g=0,z=0,v=0,_=0;for(const V of M){const F=typeof V.status=="number"?V.status:parseInt(String(V.status),10);V.status===0||V.status==null?e.failed=(e.failed||0)+1:isNaN(F)||(F>=200&&F<300?e["2xx"]=(e["2xx"]||0)+1:F>=300&&F<400?e["3xx"]=(e["3xx"]||0)+1:F>=400&&F<500?e["4xx"]=(e["4xx"]||0)+1:F>=500&&(e["5xx"]=(e["5xx"]||0)+1));const U=(V.method||"GET").toUpperCase();l[U]=(l[U]||0)+1;const G=V.duration||0;G<200?C++:G<=500?g++:z++,(V.url||"").toLowerCase().startsWith("https")?v++:_++}return{statusMap:e,methodMap:l,fastCount:C,normalCount:g,slowCount:z,httpsCount:v,httpCount:_}},[M]),Q=N(()=>M.filter(e=>{if(!r.statusCodes.has("all")&&r.statusCodes.size>0){const g=typeof e.status=="number"?e.status:parseInt(String(e.status),10);let z=!1;if(r.statusCodes.has("failed")&&(e.status===0||e.status==null)&&(z=!0),r.statusCodes.has("2xx")&&!isNaN(g)&&g>=200&&g<300&&(z=!0),r.statusCodes.has("3xx")&&!isNaN(g)&&g>=300&&g<400&&(z=!0),r.statusCodes.has("4xx")&&!isNaN(g)&&g>=400&&g<500&&(z=!0),r.statusCodes.has("5xx")&&!isNaN(g)&&g>=500&&(z=!0),!z)return!1}if(!r.methods.has("all")&&r.methods.size>0){const g=(e.method||"GET").toUpperCase();if(!r.methods.has(g))return!1}const l=e.duration||0;if(r.latency==="fast"&&l>=200||r.latency==="normal"&&(l<200||l>500)||r.latency==="slow"&&l<=500)return!1;const C=(e.url||"").toLowerCase().startsWith("https");if(r.protocol==="https"&&!C||r.protocol==="http"&&C)return!1;if(A.trim().length>0){const g=A.toLowerCase();if(!(e.url||"").toLowerCase().includes(g))return!1}return!0}).length,[M,r,A]),ee=e=>{L(l=>{const C=new Set(l.statusCodes);return e==="all"?{...l,statusCodes:new Set(["all"])}:(C.delete("all"),C.has(e)?(C.delete(e),C.size===0&&C.add("all")):C.add(e),{...l,statusCodes:C})})},H=e=>{L(l=>{const C=new Set(l.methods);return e==="all"?{...l,methods:new Set(["all"])}:(C.delete("all"),C.has(e)?(C.delete(e),C.size===0&&C.add("all")):C.add(e),{...l,methods:C})})},oe=()=>{L({statusCodes:new Set(["all"]),methods:new Set(["all"]),latency:"all",protocol:"all",sortBy:"time_desc"})},te=()=>{Z(r),E()},$=N(()=>{let e=0;return!r.statusCodes.has("all")&&r.statusCodes.size>0&&(e+=r.statusCodes.size),!r.methods.has("all")&&r.methods.size>0&&(e+=r.methods.size),r.latency!=="all"&&e++,r.protocol!=="all"&&e++,r.sortBy!=="time_desc"&&e++,e},[r]);return<Ce visible={O}transparent animationType="fade"onRequestClose={E}>
2
2
  <Y style={o.overlay}onPress={E}>
3
3
  <Y style={o.modalCard}onPress={e=>e.stopPropagation()}>
4
4
 
@@ -9,27 +9,27 @@ import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as C
9
9
  </T>
10
10
  <T>
11
11
  <T style={{flexDirection:"row",alignItems:"center",gap:6}}>
12
- <S style={o.title}>Network Filters</S>
12
+ <S style={o.title}>{B("filters.networkFiltersTitle","Network Filters")}</S>
13
13
  {$>0&&<T style={o.activeBadge}>
14
- <S style={o.activeBadgeText}>{$} active</S>
14
+ <S style={o.activeBadgeText}>{$} {B("common.active","active")}</S>
15
15
  </T>}
16
16
  </T>
17
- <S style={o.subtitle}>Filter requests by status, method & speed</S>
17
+ <S style={o.subtitle}>{B("filters.networkFiltersSubtitle","Filter requests by status, method & speed")}</S>
18
18
  </T>
19
19
  </T>
20
- <L onPress={E}hitSlop={10}style={o.closeBtn}>
20
+ <W onPress={E}hitSlop={10}style={o.closeBtn}>
21
21
  <Be size={14}color={t.grayText}/>
22
- </L>
22
+ </W>
23
23
  </T>
24
24
 
25
25
  <Te style={o.scrollArea}contentContainerStyle={o.scrollContent}showsVerticalScrollIndicator={!1}>
26
26
 
27
27
  <T style={o.section}>
28
- <S style={o.sectionTitle}>HTTP STATUS CODE</S>
28
+ <S style={o.sectionTitle}>{B("filters.httpStatusCode","HTTP STATUS CODE")}</S>
29
29
  <T style={o.chipsWrap}>
30
- {[{key:"all",label:"All Statuses",color:t.purple,icon:A,count:P.statusMap.all},{key:"2xx",label:"2xx Success",color:t.greenColor,icon:Pe,count:P.statusMap["2xx"]||0},{key:"3xx",label:"3xx Redirect",color:t.warningIconGold,icon:Oe,count:P.statusMap["3xx"]||0},{key:"4xx",label:"4xx Client Error",color:t.darkOrange,icon:X,count:P.statusMap["4xx"]||0},{key:"5xx",label:"5xx Server Error",color:t.errorColor,icon:Ie,count:P.statusMap["5xx"]||0},{key:"failed",label:"Network Failed / 0",color:t.errorColor,icon:ze,count:P.statusMap.failed||0}].map(e=>{const l=r.statusCodes.has(e.key),C=e.icon;return<L key={e.key}activeOpacity={.7}onPress={()=>Q(e.key)}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
30
+ {[{key:"all",label:B("common.all","All Statuses"),color:t.purple,icon:D,count:I.statusMap.all},{key:"2xx",label:"2xx Success",color:t.greenColor,icon:Pe,count:I.statusMap["2xx"]||0},{key:"3xx",label:"3xx Redirect",color:t.warningIconGold,icon:Oe,count:I.statusMap["3xx"]||0},{key:"4xx",label:"4xx Client Error",color:t.darkOrange,icon:X,count:I.statusMap["4xx"]||0},{key:"5xx",label:"5xx Server Error",color:t.errorColor,icon:Ie,count:I.statusMap["5xx"]||0},{key:"failed",label:"Network Failed / 0",color:t.errorColor,icon:ze,count:I.statusMap.failed||0}].map(e=>{const l=r.statusCodes.has(e.key),C=e.icon;return<W key={e.key}activeOpacity={.7}onPress={()=>ee(e.key)}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
31
31
  <C size={13}color={l?e.color:t.grayTextWeak}/>
32
- <S style={[o.chipLabel,l&&{color:e.color,fontFamily:B.interBold}]}>
32
+ <S style={[o.chipLabel,l&&{color:e.color,fontFamily:P.interBold}]}>
33
33
  {e.label}
34
34
  </S>
35
35
  <T style={[o.countPill,l&&{backgroundColor:`${e.color}25`}]}>
@@ -37,29 +37,29 @@ import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as C
37
37
  {e.count}
38
38
  </S>
39
39
  </T>
40
- </L>})}
40
+ </W>})}
41
41
  </T>
42
42
  </T>
43
43
 
44
44
 
45
45
  <T style={o.section}>
46
- <S style={o.sectionTitle}>HTTP METHOD</S>
46
+ <S style={o.sectionTitle}>{B("filters.httpMethod","HTTP METHOD")}</S>
47
47
  <T style={o.chipsWrap}>
48
- <L activeOpacity={.7}onPress={()=>H("all")}style={[o.chip,r.methods.has("all")&&{backgroundColor:`${t.purple}15`,borderColor:t.purple}]}>
49
- <A size={12}color={r.methods.has("all")?t.purple:t.grayTextWeak}/>
50
- <S style={[o.chipLabel,r.methods.has("all")&&{color:t.purple,fontFamily:B.interBold}]}>
51
- All Methods
48
+ <W activeOpacity={.7}onPress={()=>H("all")}style={[o.chip,r.methods.has("all")&&{backgroundColor:`${t.purple}15`,borderColor:t.purple}]}>
49
+ <D size={12}color={r.methods.has("all")?t.purple:t.grayTextWeak}/>
50
+ <S style={[o.chipLabel,r.methods.has("all")&&{color:t.purple,fontFamily:P.interBold}]}>
51
+ {B("common.all","All Methods")}
52
52
  </S>
53
53
  <T style={[o.countPill,r.methods.has("all")&&{backgroundColor:`${t.purple}25`}]}>
54
54
  <S style={[o.countPillText,r.methods.has("all")&&{color:t.purple}]}>
55
- {P.methodMap.all}
55
+ {I.methodMap.all}
56
56
  </S>
57
57
  </T>
58
- </L>
58
+ </W>
59
59
 
60
- {["GET","POST","PUT","DELETE","PATCH","QUERY","OPTIONS","HEAD"].map(e=>{const l=r.methods.has(e),C=me[e]||t.grayText,g=P.methodMap[e]||0;return<L key={e}activeOpacity={.7}onPress={()=>H(e)}style={[o.chip,l&&{backgroundColor:`${C}18`,borderColor:C}]}>
60
+ {["GET","POST","PUT","DELETE","PATCH","QUERY","OPTIONS","HEAD"].map(e=>{const l=r.methods.has(e),C=ke[e]||t.grayText,g=I.methodMap[e]||0;return<W key={e}activeOpacity={.7}onPress={()=>H(e)}style={[o.chip,l&&{backgroundColor:`${C}18`,borderColor:C}]}>
61
61
  <T style={[o.methodDot,{backgroundColor:C}]}/>
62
- <S style={[o.chipLabel,l&&{color:C,fontFamily:B.interBold}]}>
62
+ <S style={[o.chipLabel,l&&{color:C,fontFamily:P.interBold}]}>
63
63
  {e}
64
64
  </S>
65
65
  <T style={[o.countPill,l&&{backgroundColor:`${C}25`}]}>
@@ -67,17 +67,17 @@ import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as C
67
67
  {g}
68
68
  </S>
69
69
  </T>
70
- </L>})}
70
+ </W>})}
71
71
  </T>
72
72
  </T>
73
73
 
74
74
 
75
75
  <T style={o.section}>
76
- <S style={o.sectionTitle}>LATENCY & SPEED</S>
76
+ <S style={o.sectionTitle}>{B("filters.latencySpeed","LATENCY & SPEED")}</S>
77
77
  <T style={o.chipsWrap}>
78
- {[{key:"all",label:"All Speeds",color:t.purple,icon:A},{key:"fast",label:"Fast (<200ms)",color:t.greenColor,icon:Ve,count:P.fastCount},{key:"normal",label:"Normal (200-500ms)",color:t.skyBlue,icon:K,count:P.normalCount},{key:"slow",label:"Slow (>500ms)",color:t.errorColor,icon:X,count:P.slowCount}].map(e=>{const l=r.latency===e.key,C=e.icon;return<L key={e.key}activeOpacity={.7}onPress={()=>F(g=>({...g,latency:e.key}))}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
78
+ {[{key:"all",label:B("common.all","All Speeds"),color:t.purple,icon:D},{key:"fast",label:"Fast (<200ms)",color:t.greenColor,icon:Ve,count:I.fastCount},{key:"normal",label:"Normal (200-500ms)",color:t.skyBlue,icon:K,count:I.normalCount},{key:"slow",label:"Slow (>500ms)",color:t.errorColor,icon:X,count:I.slowCount}].map(e=>{const l=r.latency===e.key,C=e.icon;return<W key={e.key}activeOpacity={.7}onPress={()=>L(g=>({...g,latency:e.key}))}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
79
79
  <C size={13}color={l?e.color:t.grayTextWeak}/>
80
- <S style={[o.chipLabel,l&&{color:e.color,fontFamily:B.interBold}]}>
80
+ <S style={[o.chipLabel,l&&{color:e.color,fontFamily:P.interBold}]}>
81
81
  {e.label}
82
82
  </S>
83
83
  {e.count!=null&&<T style={[o.countPill,l&&{backgroundColor:`${e.color}25`}]}>
@@ -85,17 +85,17 @@ import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as C
85
85
  {e.count}
86
86
  </S>
87
87
  </T>}
88
- </L>})}
88
+ </W>})}
89
89
  </T>
90
90
  </T>
91
91
 
92
92
 
93
93
  <T style={o.section}>
94
- <S style={o.sectionTitle}>PROTOCOL</S>
94
+ <S style={o.sectionTitle}>{B("filters.protocol","PROTOCOL")}</S>
95
95
  <T style={o.chipsWrap}>
96
- {[{key:"all",label:"All Protocols",color:t.purple,icon:Re},{key:"https",label:"HTTPS Secure",color:t.mintGreenText,icon:Fe,count:P.httpsCount},{key:"http",label:"HTTP Insecure",color:t.amber700,icon:Le,count:P.httpCount}].map(e=>{const l=r.protocol===e.key,C=e.icon;return<L key={e.key}activeOpacity={.7}onPress={()=>F(g=>({...g,protocol:e.key}))}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
96
+ {[{key:"all",label:B("common.all","All Protocols"),color:t.purple,icon:Fe},{key:"https",label:"HTTPS Secure",color:t.mintGreenText,icon:Re,count:I.httpsCount},{key:"http",label:"HTTP Insecure",color:t.amber700,icon:Le,count:I.httpCount}].map(e=>{const l=r.protocol===e.key,C=e.icon;return<W key={e.key}activeOpacity={.7}onPress={()=>L(g=>({...g,protocol:e.key}))}style={[o.chip,l&&{backgroundColor:`${e.color}15`,borderColor:e.color}]}>
97
97
  <C size={13}color={l?e.color:t.grayTextWeak}/>
98
- <S style={[o.chipLabel,l&&{color:e.color,fontFamily:B.interBold}]}>
98
+ <S style={[o.chipLabel,l&&{color:e.color,fontFamily:P.interBold}]}>
99
99
  {e.label}
100
100
  </S>
101
101
  {e.count!=null&&<T style={[o.countPill,l&&{backgroundColor:`${e.color}25`}]}>
@@ -103,36 +103,36 @@ import{useEffect as te,useMemo as N,useState as le}from"react";import{Modal as C
103
103
  {e.count}
104
104
  </S>
105
105
  </T>}
106
- </L>})}
106
+ </W>})}
107
107
  </T>
108
108
  </T>
109
109
 
110
110
 
111
111
  <T style={o.section}>
112
- <S style={o.sectionTitle}>SORT BY</S>
112
+ <S style={o.sectionTitle}>{B("filters.sortBy","SORT BY")}</S>
113
113
  <T style={o.chipsWrap}>
114
- {[{key:"time_desc",label:"Newest First (Default)",icon:K},{key:"time_asc",label:"Oldest First",icon:Me},{key:"duration_desc",label:"Slowest Response",icon:Ee},{key:"duration_asc",label:"Fastest Response",icon:We},{key:"size_desc",label:"Largest Response Size",icon:Ne}].map(e=>{const l=r.sortBy===e.key,C=e.icon;return<L key={e.key}activeOpacity={.7}onPress={()=>F(g=>({...g,sortBy:e.key}))}style={[o.chip,l&&{backgroundColor:`${t.purple}15`,borderColor:t.purple}]}>
114
+ {[{key:"time_desc",label:"Newest First",icon:K},{key:"time_asc",label:"Oldest First",icon:Ee},{key:"duration_desc",label:"Slowest Response",icon:Me},{key:"duration_asc",label:"Fastest Response",icon:We},{key:"size_desc",label:"Largest Response Size",icon:Ae}].map(e=>{const l=r.sortBy===e.key,C=e.icon;return<W key={e.key}activeOpacity={.7}onPress={()=>L(g=>({...g,sortBy:e.key}))}style={[o.chip,l&&{backgroundColor:`${t.purple}15`,borderColor:t.purple}]}>
115
115
  <C size={13}color={l?t.purple:t.grayTextWeak}/>
116
- <S style={[o.chipLabel,l&&{color:t.purple,fontFamily:B.interBold}]}>
116
+ <S style={[o.chipLabel,l&&{color:t.purple,fontFamily:P.interBold}]}>
117
117
  {e.label}
118
118
  </S>
119
- </L>})}
119
+ </W>})}
120
120
  </T>
121
121
  </T>
122
122
  </Te>
123
123
 
124
124
 
125
125
  <T style={o.footer}>
126
- <J onPress={ee}style={o.resetBtn}>
127
- <S style={o.resetBtnText}>Reset All</S>
126
+ <J onPress={oe}style={o.resetBtn}>
127
+ <S style={o.resetBtnText}>{B("filters.resetAll","Reset All")}</S>
128
128
  </J>
129
129
 
130
- <J onPress={oe}style={o.applyBtn}>
130
+ <J onPress={te}style={o.applyBtn}>
131
131
  <S style={o.applyBtnText}>
132
- Apply ({D} Request{D===1?"":"s"})
132
+ {B("filters.applyFilters","Apply")} ({Q})
133
133
  </S>
134
134
  </J>
135
135
  </T>
136
136
  </Y>
137
137
  </Y>
138
- </Ce>};const o=we.create({overlay:{flex:1,backgroundColor:"rgba(0, 0, 0, 0.55)",justifyContent:"flex-end"},modalCard:{backgroundColor:t.primaryLight,borderTopLeftRadius:20,borderTopRightRadius:20,maxHeight:"85%",shadowColor:t.black,shadowOffset:{width:0,height:-4},shadowOpacity:.15,shadowRadius:10,elevation:8},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:12,borderBottomWidth:1,borderBottomColor:t.grayBorderSecondary},headerLeft:{flexDirection:"row",alignItems:"center",gap:10,flex:1},iconCircle:{width:34,height:34,borderRadius:10,backgroundColor:`${t.purple}15`,alignItems:"center",justifyContent:"center"},title:{fontFamily:B.interBold,fontSize:16,color:t.primaryBlack},subtitle:{fontFamily:B.interRegular,fontSize:11,color:t.grayText,marginTop:1},activeBadge:{backgroundColor:`${t.purple}20`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:8,borderWidth:1,borderColor:`${t.purple}40`},activeBadgeText:{fontFamily:B.interBold,fontSize:9.5,color:t.purple},closeBtn:{padding:6},scrollArea:{maxHeight:460},scrollContent:{padding:16,gap:16},section:{gap:8},sectionTitle:{fontFamily:B.interBold,fontSize:11,color:t.grayTextWeak,letterSpacing:.8},chipsWrap:{flexDirection:"row",flexWrap:"wrap",gap:8},chip:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:10,paddingVertical:6,borderRadius:8,backgroundColor:t.grayBackground,borderWidth:1,borderColor:t.grayBorderSecondary},chipLabel:{fontFamily:B.interMedium,fontSize:12,color:t.primaryBlack},methodDot:{width:6.5,height:6.5,borderRadius:3.5},countPill:{backgroundColor:`${t.grayBorderSecondary}50`,paddingHorizontal:5,paddingVertical:1,borderRadius:6},countPillText:{fontFamily:B.interBold,fontSize:9.5,color:t.grayText},footer:{flexDirection:"row",alignItems:"center",gap:10,paddingHorizontal:16,paddingVertical:14,borderTopWidth:1,borderTopColor:t.grayBorderSecondary,backgroundColor:t.primaryLight},resetBtn:{flex:1,paddingVertical:11,borderRadius:10,borderWidth:1,borderColor:t.grayBorderSecondary,alignItems:"center",justifyContent:"center",backgroundColor:t.grayBackground},resetBtnText:{fontFamily:B.interBold,fontSize:13,color:t.grayTextStrong},applyBtn:{flex:2,paddingVertical:11,borderRadius:10,alignItems:"center",justifyContent:"center",backgroundColor:t.purple,shadowColor:t.purple,shadowOffset:{width:0,height:2},shadowOpacity:.25,shadowRadius:4,elevation:3},applyBtnText:{fontFamily:B.interBold,fontSize:13,color:t.white}});export default NetworkFilterModal;
138
+ </Ce>};const o=me.create({overlay:{flex:1,backgroundColor:"rgba(0, 0, 0, 0.55)",justifyContent:"flex-end"},modalCard:{backgroundColor:t.primaryLight,borderTopLeftRadius:20,borderTopRightRadius:20,maxHeight:"85%",shadowColor:t.black,shadowOffset:{width:0,height:-4},shadowOpacity:.15,shadowRadius:10,elevation:8},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:12,borderBottomWidth:1,borderBottomColor:t.grayBorderSecondary},headerLeft:{flexDirection:"row",alignItems:"center",gap:10,flex:1},iconCircle:{width:34,height:34,borderRadius:10,backgroundColor:`${t.purple}15`,alignItems:"center",justifyContent:"center"},title:{fontFamily:P.interBold,fontSize:16,color:t.primaryBlack},subtitle:{fontFamily:P.interRegular,fontSize:11,color:t.grayText,marginTop:1},activeBadge:{backgroundColor:`${t.purple}20`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:8,borderWidth:1,borderColor:`${t.purple}40`},activeBadgeText:{fontFamily:P.interBold,fontSize:9.5,color:t.purple},closeBtn:{padding:6},scrollArea:{maxHeight:460},scrollContent:{padding:16,gap:16},section:{gap:8},sectionTitle:{fontFamily:P.interBold,fontSize:11,color:t.grayTextWeak,letterSpacing:.8},chipsWrap:{flexDirection:"row",flexWrap:"wrap",gap:8},chip:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:10,paddingVertical:6,borderRadius:8,backgroundColor:t.grayBackground,borderWidth:1,borderColor:t.grayBorderSecondary},chipLabel:{fontFamily:P.interMedium,fontSize:12,color:t.primaryBlack},methodDot:{width:6.5,height:6.5,borderRadius:3.5},countPill:{backgroundColor:`${t.grayBorderSecondary}50`,paddingHorizontal:5,paddingVertical:1,borderRadius:6},countPillText:{fontFamily:P.interBold,fontSize:9.5,color:t.grayText},footer:{flexDirection:"row",alignItems:"center",gap:10,paddingHorizontal:16,paddingVertical:14,borderTopWidth:1,borderTopColor:t.grayBorderSecondary,backgroundColor:t.primaryLight},resetBtn:{flex:1,paddingVertical:11,borderRadius:10,borderWidth:1,borderColor:t.grayBorderSecondary,alignItems:"center",justifyContent:"center",backgroundColor:t.grayBackground},resetBtnText:{fontFamily:P.interBold,fontSize:13,color:t.grayTextStrong},applyBtn:{flex:2,paddingVertical:11,borderRadius:10,alignItems:"center",justifyContent:"center",backgroundColor:t.purple,shadowColor:t.purple,shadowOffset:{width:0,height:2},shadowOpacity:.25,shadowRadius:4,elevation:3},applyBtnText:{fontFamily:P.interBold,fontSize:13,color:t.white}});export default NetworkFilterModal;
@@ -1,31 +1,31 @@
1
- import{useEffect as H,useMemo as Y,useRef as v,useState as V}from"react";import{StyleSheet as $,Text as I,TouchableOpacity as Z,View as M}from"react-native";import _ from"react-native-linear-gradient";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as K}from"../../styles/AppFonts";import{ActivityIcon as Me,BatteryChargingIcon as Be,BatteryFullIcon as Se,BoltIcon as Fe,SpeedIcon as Ae}from"../NetworkIcons";import{getNativeDeviceMetrics as ve}from"../../native/NativeInspector";import{subscribeNetworkLogs as xe}from"../../customHooks/networkLogger";import{useInspector as Ie}from"./InspectorContext";import{useTranslation as Re}from"../../i18n";export const SecondaryTelemetryStrip=()=>{const{t:L}=Re(),{switchActiveTab:j,peekMode:Ce}=Ie(),[R,U]=V(60),[n,Q]=V(null),[S,F]=V(0),C=v(0),N=v(Date.now());H(()=>{let r;const i=()=>{C.current++;const s=Date.now(),a=s-N.current;if(a>=1e3){const D=Math.min(60,Math.round(C.current*1e3/a));U(D),C.current=0,N.current=s}r=requestAnimationFrame(i)};return r=requestAnimationFrame(i),()=>cancelAnimationFrame(r)},[]);const w=v(0),G=v(Date.now());H(()=>{const r=xe(s=>{if(!s||s.length===0){F(0);return}const a=Date.now(),D=s.slice(0,10);let k=0,z=0,A=0;for(const o of D){let W=0,E=0;o.request&&(W=typeof o.request=="string"?o.request.length:JSON.stringify(o.request).length),o.response&&(E=typeof o.response=="string"?o.response.length:JSON.stringify(o.response).length);const q=W+E;if(q>0&&o.duration&&o.duration>0){const J=q*8/(o.duration/1e3)/1e3;J>0&&A===0&&(A=J),k+=q,z+=o.duration}}let B=0;z>0&&k>0?B=k*8/(z/1e3)/1e3:A>0&&(B=A),B>0?(w.current=B,G.current=a,F(Math.round(B*10)/10)):w.current>0&&a-G.current<12e3&&F(Math.round(w.current*10)/10)}),i=setInterval(()=>{Date.now()-G.current>15e3&&w.current>0&&(w.current=0,F(0))},3e3);return()=>{r(),clearInterval(i)}},[]),H(()=>{let r=!0;const i=async()=>{try{const a=await ve();r&&a&&Q(a)}catch{}};i();const s=setInterval(i,4e3);return()=>{r=!1,clearInterval(s)}},[]);const O=R>=55?e.emerald400:R>=30?e.amber400:e.rose400,P=Y(()=>{if(n?.usedRAM&&n?.totalRAM){const r=(n.usedRAM/1073741824).toFixed(2),i=(n.totalRAM/(1024*1024*1024)).toFixed(1);return`${r} / ${i} GB RAM`}return n?.residentMemory?`${(n.residentMemory/1073741824).toFixed(2)} GB RAM`:n?.usedRAM?`${(n.usedRAM/1073741824).toFixed(2)} GB RAM`:null},[n]),T=n?.batteryPercent,X=n?.isCharging;return<_ colors={[e.telemetrySubHeaderGradStart||"#0B0F1C",e.telemetrySubHeaderGradMid||"#111524",e.telemetrySubHeaderGradEnd||"#0B0F1C"]}start={{x:0,y:0}}end={{x:1,y:0}}style={t.container}>
2
- <Z activeOpacity={.8}onPress={()=>j?.("device")}style={t.inner}>
1
+ import{useEffect as H,useMemo as X,useRef as A,useState as q}from"react";import{StyleSheet as V,Text as F,TouchableOpacity as Y,View as M}from"react-native";import Z from"react-native-linear-gradient";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as J}from"../../styles/AppFonts";import{ActivityIcon as _,BatteryChargingIcon as Me,BatteryFullIcon as Se,BoltIcon as Be,SpeedIcon as Ae}from"../NetworkIcons";import{getNativeDeviceMetrics as Fe}from"../../native/NativeInspector";import{subscribeNetworkLogs as Ie}from"../../customHooks/networkLogger";import{useInspector as Re}from"./InspectorContext";import{useTranslation as Ge}from"../../i18n";export const SecondaryTelemetryStrip=()=>{const{t:K}=Ge(),{switchActiveTab:L,peekMode:Te}=Re(),[I,j]=q(60),[n,U]=q(null),[B,v]=q(0),R=A(0),$=A(Date.now());H(()=>{let r;const i=()=>{R.current++;const s=Date.now(),a=s-$.current;if(a>=1e3){const C=Math.min(60,Math.round(R.current*1e3/a));j(C),R.current=0,$.current=s}r=requestAnimationFrame(i)};return r=requestAnimationFrame(i),()=>cancelAnimationFrame(r)},[]);const S=A(0),G=A(Date.now());H(()=>{const r=Ie(s=>{if(!s||s.length===0){v(0);return}const a=Date.now(),C=s.slice(0,10);let k=0,D=0,x=0;for(const o of C){let P=0,W=0;o.request&&(P=typeof o.request=="string"?o.request.length:JSON.stringify(o.request).length),o.response&&(W=typeof o.response=="string"?o.response.length:JSON.stringify(o.response).length);const z=P+W;if(z>0&&o.duration&&o.duration>0){const E=z*8/(o.duration/1e3)/1e3;E>0&&x===0&&(x=E),k+=z,D+=o.duration}}let w=0;D>0&&k>0?w=k*8/(D/1e3)/1e3:x>0&&(w=x),w>0?(S.current=w,G.current=a,v(Math.round(w*10)/10)):S.current>0&&a-G.current<12e3&&v(Math.round(S.current*10)/10)}),i=setInterval(()=>{Date.now()-G.current>15e3&&S.current>0&&(S.current=0,v(0))},3e3);return()=>{r(),clearInterval(i)}},[]),H(()=>{let r=!0;const i=async()=>{try{const a=await Fe();r&&a&&U(a)}catch{}};i();const s=setInterval(i,4e3);return()=>{r=!1,clearInterval(s)}},[]);const N=I>=55?e.emerald400:I>=30?e.amber400:e.rose400,O=X(()=>{if(n?.usedRAM&&n?.totalRAM){const r=(n.usedRAM/1073741824).toFixed(2),i=(n.totalRAM/(1024*1024*1024)).toFixed(1);return`${r} / ${i} GB RAM`}return n?.residentMemory?`${(n.residentMemory/1073741824).toFixed(2)} GB RAM`:n?.usedRAM?`${(n.usedRAM/1073741824).toFixed(2)} GB RAM`:null},[n]),T=n?.batteryPercent,Q=n?.isCharging;return<Z colors={[e.telemetrySubHeaderGradStart,e.telemetrySubHeaderGradMid,e.telemetrySubHeaderGradEnd]}start={{x:0,y:0}}end={{x:1,y:0}}style={t.container}>
2
+ <Y activeOpacity={.8}onPress={()=>L?.("device")}style={t.inner}>
3
3
 
4
4
  <M style={t.item}>
5
- <Me size={11.5}color={O}/>
6
- <I style={[t.label,{color:O,fontFamily:K.interBold}]}>
7
- {R} {L("telemetry.fps","FPS")}
8
- </I>
5
+ <_ size={11.5}color={N}/>
6
+ <F style={[t.label,{color:N,fontFamily:J.interBold}]}>
7
+ {I} {K("telemetry.fps","FPS")}
8
+ </F>
9
9
  </M>
10
10
 
11
11
  <M style={t.divider}/>
12
12
 
13
13
 
14
14
  <M style={t.item}>
15
- <Ae size={11.5}color={e.sky300||"#7DD3FC"}/>
16
- <I style={[t.label,{color:e.sky300||"#7DD3FC"}]}>
17
- {S>=1e3?`${(S/1e3).toFixed(2)} Mbps`:S>0?`${S.toFixed(1)} kbps`:"0.0 kbps"}
18
- </I>
15
+ <Ae size={11.5}color={e.sky300}/>
16
+ <F style={[t.label,{color:e.sky300}]}>
17
+ {B>=1e3?`${(B/1e3).toFixed(2)} Mbps`:B>0?`${B.toFixed(1)} kbps`:"0.0 kbps"}
18
+ </F>
19
19
  </M>
20
20
 
21
21
 
22
- {P&&<>
22
+ {O&&<>
23
23
  <M style={t.divider}/>
24
24
  <M style={t.item}>
25
- <Fe size={11}color={e.purple400||"#A78BFA"}/>
26
- <I style={[t.label,{color:e.purple400||"#A78BFA"}]}>
27
- {P}
28
- </I>
25
+ <Be size={11}color={e.purple400}/>
26
+ <F style={[t.label,{color:e.purple400}]}>
27
+ {O}
28
+ </F>
29
29
  </M>
30
30
  </>}
31
31
 
@@ -33,11 +33,11 @@ import{useEffect as H,useMemo as Y,useRef as v,useState as V}from"react";import{
33
33
  {T!==void 0&&T>=0&&<>
34
34
  <M style={t.divider}/>
35
35
  <M style={t.item}>
36
- {X?<Be size={11.5}color={e.emerald400}/>:<Se size={11.5}color={e.slate400}/>}
37
- <I style={t.label}>
36
+ {Q?<Me size={11.5}color={e.emerald400}/>:<Se size={11.5}color={e.slate400}/>}
37
+ <F style={t.label}>
38
38
  {Math.round(T)}%
39
- </I>
39
+ </F>
40
40
  </M>
41
41
  </>}
42
- </Z>
43
- </_>};const t=$.create({container:{width:"100%",borderBottomWidth:$.hairlineWidth,borderBottomColor:e.telemetrySubHeaderBorder||"rgba(255, 255, 255, 0.07)",borderTopWidth:$.hairlineWidth,borderTopColor:"rgba(0, 0, 0, 0.25)",zIndex:9},inner:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,paddingVertical:3.5,minHeight:23},item:{flexDirection:"row",alignItems:"center",gap:4},divider:{width:1,height:10,backgroundColor:"rgba(255, 255, 255, 0.08)"},label:{fontFamily:K.interMedium,fontSize:9,lineHeight:11.5,color:"rgba(255, 255, 255, 0.85)",letterSpacing:.1}});
42
+ </Y>
43
+ </Z>};const t=V.create({container:{width:"100%",borderBottomWidth:V.hairlineWidth,borderBottomColor:e.telemetrySubHeaderBorder,borderTopWidth:V.hairlineWidth,borderTopColor:e.telemetrySubHeaderBorder,zIndex:9},inner:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,paddingVertical:3.5,minHeight:23},item:{flexDirection:"row",alignItems:"center",gap:4},divider:{width:1,height:10,backgroundColor:e.borderSubtle},label:{fontFamily:J.interMedium,fontSize:9,lineHeight:11.5,color:e.textPrimary,letterSpacing:.1}});
@@ -1,69 +1,69 @@
1
- import{useEffect as j,useMemo as N,useState as U}from"react";import{Modal as K,Pressable as Y,ScrollView as G,StyleSheet as _,Text as T,TouchableOpacity as V,View as S}from"react-native";import{AppColors as l}from"../../styles/AppColors";import{AppFonts as C}from"../../styles/AppFonts";import{FilterIcon as J,CloseWhite as Q}from"../NetworkIcons";import X from"../TouchableScale";export const DEFAULT_SOCKET_FILTERS={search:"",status:new Set(["all"]),types:new Set(["all"]),sortBy:"time_desc"},isSocketFiltersDefault=k=>(k.status.has("all")||k.status.size===0)&&(k.types.has("all")||k.types.size===0)&&k.sortBy==="time_desc",SocketFilterModal=({visible:k,onClose:O,filters:B,onApply:E,records:W})=>{const[P,F]=U(()=>({...B,status:new Set(B.status),types:new Set(B.types)}));j(()=>{k&&F({...B,status:new Set(B.status),types:new Set(B.types)})},[k,B]);const x=N(()=>{let e=0,o=0,m=0,A=0,I=0,v=0,D=0;return W.forEach(z=>{const R=z.status||"open";R==="open"?e++:R==="closed"?o++:R==="connecting"?m++:R==="error"&&A++,z.client==="socket.io"||z.url.includes("/socket.io")?D++:z.url.startsWith("wss://")?I++:v++}),{all:W.length,open:e,closed:o,connecting:m,error:A,wss:I,ws:v,sio:D}},[W]),L=e=>{const o=new Set(P.status);e==="all"?(o.clear(),o.add("all")):(o.delete("all"),o.has(e)?o.delete(e):o.add(e),o.size===0&&o.add("all")),F(m=>({...m,status:o}))},H=e=>{const o=new Set(P.types);e==="all"?(o.clear(),o.add("all")):(o.delete("all"),o.has(e)?o.delete(e):o.add(e),o.size===0&&o.add("all")),F(m=>({...m,types:o}))},M=()=>{F({search:P.search,status:new Set(["all"]),types:new Set(["all"]),sortBy:"time_desc"})},$=()=>{E(P),O()};return<K visible={k}transparent animationType="fade"onRequestClose={O}>
1
+ import{useEffect as E,useMemo as L,useState as v}from"react";import{Modal as H,Pressable as M,ScrollView as $,StyleSheet as R,Text as T,TouchableOpacity as P,View as S}from"react-native";import{AppColors as o}from"../../styles/AppColors";import{AppFonts as m}from"../../styles/AppFonts";import{FilterIcon as N,CloseWhite as U}from"../NetworkIcons";import K from"../TouchableScale";import{useTranslation as Y}from"../../i18n";export const DEFAULT_SOCKET_FILTERS={search:"",status:new Set(["all"]),types:new Set(["all"]),sortBy:"time_desc"},isSocketFiltersDefault=x=>(x.status.has("all")||x.status.size===0)&&(x.types.has("all")||x.types.size===0)&&x.sortBy==="time_desc",SocketFilterModal=({visible:x,onClose:V,filters:B,onApply:W,records:z})=>{const{t:C}=Y(),[O,F]=v(()=>({...B,status:new Set(B.status),types:new Set(B.types)}));E(()=>{x&&F({...B,status:new Set(B.status),types:new Set(B.types)})},[x,B]);const k=L(()=>{const e={all:z.length,open:0,closed:0,connecting:0,error:0,wss:0,ws:0,sio:0};return z.forEach(l=>{l.status==="open"?e.open++:l.status==="closed"?e.closed++:l.status==="connecting"?e.connecting++:l.status==="error"&&e.error++,l.client==="socket.io"?e.sio++:l.url&&l.url.startsWith("wss://")?e.wss++:e.ws++}),e},[z]),A=e=>{F(l=>{const r=new Set(l.status);return e==="all"?{...l,status:new Set(["all"])}:(r.delete("all"),r.has(e)?(r.delete(e),r.size===0&&r.add("all")):r.add(e),{...l,status:r})})},I=e=>{F(l=>{const r=new Set(l.types);return e==="all"?{...l,types:new Set(["all"])}:(r.delete("all"),r.has(e)?(r.delete(e),r.size===0&&r.add("all")):r.add(e),{...l,types:r})})},D=()=>{F({search:"",status:new Set(["all"]),types:new Set(["all"]),sortBy:"time_desc"})},_=()=>{W(O),V()};return<H visible={x}transparent animationType="fade"onRequestClose={V}>
2
2
  <S style={t.backdrop}>
3
- <Y style={t.backdropPress}onPress={O}/>
3
+ <M style={t.backdropPress}onPress={V}/>
4
4
  <S style={t.container}>
5
5
 
6
6
  <S style={t.header}>
7
7
  <S style={t.headerLeft}>
8
- <J size={18}color={l.brandPurple}/>
9
- <T style={t.headerTitle}>Filter WebSockets</T>
8
+ <N size={18}color={o.brandPurple}/>
9
+ <T style={t.headerTitle}>{C("filters.filterWebSocketsTitle","Filter WebSockets")}</T>
10
10
  </S>
11
- <V onPress={O}hitSlop={{top:8,bottom:8,left:8,right:8}}style={t.closeBtn}>
12
- <Q size={14}color={l.grayTextWeak}/>
13
- </V>
11
+ <P onPress={V}hitSlop={{top:8,bottom:8,left:8,right:8}}style={t.closeBtn}>
12
+ <U size={14}color={o.grayTextWeak}/>
13
+ </P>
14
14
  </S>
15
15
 
16
- <G style={t.content}showsVerticalScrollIndicator={!1}>
16
+ <$ style={t.content}showsVerticalScrollIndicator={!1}>
17
17
 
18
- <T style={t.sectionTitle}>CONNECTION STATUS</T>
18
+ <T style={t.sectionTitle}>{C("filters.connectionStatus","CONNECTION STATUS")}</T>
19
19
  <S style={t.chipRow}>
20
- {[{key:"all",label:"All",count:x.all,color:l.brandPurple},{key:"open",label:"Open",count:x.open,color:l.greenColor},{key:"closed",label:"Closed",count:x.closed,color:l.slate500},{key:"connecting",label:"Connecting",count:x.connecting,color:l.amber600},{key:"error",label:"Error",count:x.error,color:l.errorColor}].map(e=>{const o=P.status.has(e.key);return<V key={e.key}onPress={()=>L(e.key)}style={[t.chip,o&&{backgroundColor:`${e.color}18`,borderColor:e.color}]}>
21
- <T style={[t.chipText,o&&{color:e.color,fontFamily:C.interBold}]}>
20
+ {[{key:"all",label:C("common.all","All"),count:k.all,color:o.brandPurple},{key:"open",label:"Open",count:k.open,color:o.greenColor},{key:"closed",label:"Closed",count:k.closed,color:o.slate500},{key:"connecting",label:"Connecting",count:k.connecting,color:o.amber600},{key:"error",label:"Error",count:k.error,color:o.errorColor}].map(e=>{const l=O.status.has(e.key);return<P key={e.key}onPress={()=>A(e.key)}style={[t.chip,l&&{backgroundColor:`${e.color}18`,borderColor:e.color}]}>
21
+ <T style={[t.chipText,l&&{color:e.color,fontFamily:m.interBold}]}>
22
22
  {e.label}
23
23
  </T>
24
- <S style={[t.countPill,o&&{backgroundColor:`${e.color}30`}]}>
25
- <T style={[t.countText,o&&{color:e.color}]}>
24
+ <S style={[t.countPill,l&&{backgroundColor:`${e.color}30`}]}>
25
+ <T style={[t.countText,l&&{color:e.color}]}>
26
26
  {e.count}
27
27
  </T>
28
28
  </S>
29
- </V>})}
29
+ </P>})}
30
30
  </S>
31
31
 
32
32
 
33
- <T style={t.sectionTitle}>PROTOCOL & CLIENT</T>
33
+ <T style={t.sectionTitle}>{C("filters.protocolClient","PROTOCOL & CLIENT")}</T>
34
34
  <S style={t.chipRow}>
35
- {[{key:"all",label:"All Protocols",count:x.all,color:l.brandPurple},{key:"wss",label:"Secure (WSS)",count:x.wss,color:l.emerald600},{key:"ws",label:"Standard (WS)",count:x.ws,color:l.blue600},{key:"sio",label:"Socket.IO",count:x.sio,color:l.violet600}].map(e=>{const o=P.types.has(e.key);return<V key={e.key}onPress={()=>H(e.key)}style={[t.chip,o&&{backgroundColor:`${e.color}18`,borderColor:e.color}]}>
36
- <T style={[t.chipText,o&&{color:e.color,fontFamily:C.interBold}]}>
35
+ {[{key:"all",label:C("common.all","All Protocols"),count:k.all,color:o.brandPurple},{key:"wss",label:"Secure (WSS)",count:k.wss,color:o.emerald600},{key:"ws",label:"Standard (WS)",count:k.ws,color:o.blue600},{key:"sio",label:"Socket.IO",count:k.sio,color:o.violet600}].map(e=>{const l=O.types.has(e.key);return<P key={e.key}onPress={()=>I(e.key)}style={[t.chip,l&&{backgroundColor:`${e.color}18`,borderColor:e.color}]}>
36
+ <T style={[t.chipText,l&&{color:e.color,fontFamily:m.interBold}]}>
37
37
  {e.label}
38
38
  </T>
39
- <S style={[t.countPill,o&&{backgroundColor:`${e.color}30`}]}>
40
- <T style={[t.countText,o&&{color:e.color}]}>
39
+ <S style={[t.countPill,l&&{backgroundColor:`${e.color}30`}]}>
40
+ <T style={[t.countText,l&&{color:e.color}]}>
41
41
  {e.count}
42
42
  </T>
43
43
  </S>
44
- </V>})}
44
+ </P>})}
45
45
  </S>
46
46
 
47
47
 
48
- <T style={t.sectionTitle}>SORT BY</T>
48
+ <T style={t.sectionTitle}>{C("filters.sortBy","SORT BY")}</T>
49
49
  <S style={t.chipRow}>
50
- {[{key:"time_desc",label:"Newest First"},{key:"time_asc",label:"Oldest First"},{key:"frames_desc",label:"Most Frames"},{key:"duration_desc",label:"Longest Duration"}].map(e=>{const o=P.sortBy===e.key;return<V key={e.key}onPress={()=>F(m=>({...m,sortBy:e.key}))}style={[t.chip,o&&t.chipActiveSort]}>
51
- <T style={[t.chipText,o&&t.chipTextActiveSort]}>
50
+ {[{key:"time_desc",label:"Newest First"},{key:"time_asc",label:"Oldest First"},{key:"frames_desc",label:"Most Frames"},{key:"duration_desc",label:"Longest Duration"}].map(e=>{const l=O.sortBy===e.key;return<P key={e.key}onPress={()=>F(r=>({...r,sortBy:e.key}))}style={[t.chip,l&&t.chipActiveSort]}>
51
+ <T style={[t.chipText,l&&t.chipTextActiveSort]}>
52
52
  {e.label}
53
53
  </T>
54
- </V>})}
54
+ </P>})}
55
55
  </S>
56
- </G>
56
+ </$>
57
57
 
58
58
 
59
59
  <S style={t.footer}>
60
- <V onPress={M}style={t.resetBtn}>
61
- <T style={t.resetBtnText}>Reset</T>
62
- </V>
63
- <X onPress={$}style={t.applyBtn}>
64
- <T style={t.applyBtnText}>Apply Filters</T>
65
- </X>
60
+ <P onPress={D}style={t.resetBtn}>
61
+ <T style={t.resetBtnText}>{C("common.reset","Reset")}</T>
62
+ </P>
63
+ <K onPress={_}style={t.applyBtn}>
64
+ <T style={t.applyBtnText}>{C("filters.applyFilters","Apply Filters")}</T>
65
+ </K>
66
66
  </S>
67
67
  </S>
68
68
  </S>
69
- </K>};export default SocketFilterModal;const t=_.create({backdrop:{flex:1,backgroundColor:"rgba(0,0,0,0.5)",justifyContent:"center",alignItems:"center",padding:16},backdropPress:{..._.absoluteFillObject},container:{width:"100%",maxHeight:"80%",backgroundColor:l.contentBg,borderRadius:16,overflow:"hidden",shadowColor:l.black,shadowOffset:{width:0,height:4},shadowOpacity:.25,shadowRadius:10,elevation:8},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderBottomWidth:1,borderBottomColor:l.dividerColor},headerLeft:{flexDirection:"row",alignItems:"center",gap:8},headerTitle:{fontFamily:C.interBold,fontSize:16,color:l.grayTextStrong},closeBtn:{padding:4},content:{padding:16},sectionTitle:{fontFamily:C.interBold,fontSize:11,color:l.grayTextWeak,letterSpacing:.6,marginBottom:8,marginTop:10},chipRow:{flexDirection:"row",flexWrap:"wrap",gap:8,marginBottom:12},chip:{flexDirection:"row",alignItems:"center",paddingHorizontal:10,paddingVertical:6,borderRadius:8,borderWidth:1,borderColor:l.dividerColor,backgroundColor:l.graySurface,gap:6},chipActiveSort:{backgroundColor:`${l.brandPurple}18`,borderColor:l.brandPurple},chipText:{fontFamily:C.interMedium,fontSize:12,color:l.grayTextStrong},chipTextActiveSort:{color:l.brandPurple,fontFamily:C.interBold},countPill:{backgroundColor:`${l.slate500}18`,paddingHorizontal:5,paddingVertical:1,borderRadius:10},countText:{fontFamily:C.interBold,fontSize:10,color:l.grayTextWeak},footer:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:12,borderTopWidth:1,borderTopColor:l.dividerColor,gap:12},resetBtn:{paddingVertical:10,paddingHorizontal:16,borderRadius:8,borderWidth:1,borderColor:l.dividerColor},resetBtnText:{fontFamily:C.interSemiBold,fontSize:13,color:l.grayTextWeak},applyBtn:{flex:1,backgroundColor:l.brandPurple,paddingVertical:11,borderRadius:8,alignItems:"center",justifyContent:"center"},applyBtnText:{fontFamily:C.interBold,fontSize:13,color:l.white}});
69
+ </H>};export default SocketFilterModal;const t=R.create({backdrop:{flex:1,backgroundColor:"rgba(0,0,0,0.5)",justifyContent:"center",alignItems:"center",padding:16},backdropPress:{...R.absoluteFillObject},container:{width:"100%",maxHeight:"80%",backgroundColor:o.contentBg,borderRadius:16,overflow:"hidden",shadowColor:o.black,shadowOffset:{width:0,height:4},shadowOpacity:.25,shadowRadius:10,elevation:8},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderBottomWidth:1,borderBottomColor:o.dividerColor},headerLeft:{flexDirection:"row",alignItems:"center",gap:8},headerTitle:{fontFamily:m.interBold,fontSize:16,color:o.grayTextStrong},closeBtn:{padding:4},content:{padding:16},sectionTitle:{fontFamily:m.interBold,fontSize:11,color:o.grayTextWeak,letterSpacing:.6,marginBottom:8,marginTop:10},chipRow:{flexDirection:"row",flexWrap:"wrap",gap:8,marginBottom:12},chip:{flexDirection:"row",alignItems:"center",paddingHorizontal:10,paddingVertical:6,borderRadius:8,borderWidth:1,borderColor:o.dividerColor,backgroundColor:o.graySurface,gap:6},chipActiveSort:{backgroundColor:`${o.brandPurple}18`,borderColor:o.brandPurple},chipText:{fontFamily:m.interMedium,fontSize:12,color:o.grayTextStrong},chipTextActiveSort:{color:o.brandPurple,fontFamily:m.interBold},countPill:{backgroundColor:`${o.slate500}18`,paddingHorizontal:5,paddingVertical:1,borderRadius:10},countText:{fontFamily:m.interBold,fontSize:10,color:o.grayTextWeak},footer:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:12,borderTopWidth:1,borderTopColor:o.dividerColor,gap:12},resetBtn:{paddingVertical:10,paddingHorizontal:16,borderRadius:8,borderWidth:1,borderColor:o.dividerColor},resetBtnText:{fontFamily:m.interSemiBold,fontSize:13,color:o.grayTextWeak},applyBtn:{flex:1,backgroundColor:o.brandPurple,paddingVertical:11,borderRadius:8,alignItems:"center",justifyContent:"center"},applyBtnText:{fontFamily:m.interBold,fontSize:13,color:o.white}});
@@ -1,14 +1,14 @@
1
- import ce,{useRef as F,useState as U}from"react";import{Platform as de,ScrollView as Ce,Text as P,TouchableOpacity as _,View as C}from"react-native";import{useInspector as ke}from"./InspectorContext";import{useTranslation as we}from"../../i18n";import T from"../../styles";import{AppColors as o}from"../../styles/AppColors";import{AppFonts as B}from"../../styles/AppFonts";import G from"../TouchableScale";import{SignalIcon as Se,TerminalIcon as Re,AnalyticsIcon as Ie,ReduxIcon as Te,CrashIcon as Be,BellIcon as Pe,SmartphoneIcon as Le,DatabaseIcon as Ae,QrCodeIcon as Oe,ScreencastIcon as Ve,ChevronIcon as Q,WebsocketIcon as De}from"../NetworkIcons";import{isReduxConnected as Ee}from"../../customHooks/reduxLogger";import{isAnalyticsConnected as He}from"../../customHooks/analyticsLogger";import{isLocalDebugEnvironment as je}from"../../helpers";const r={themeColor:o.brandPurple,bgInactive:`${o.brandPurple}0D`,borderInactive:`${o.brandPurple}2B`,iconInactive:o.brandPurple,idBadgeBg:`${o.brandPurple}1C`,idBadgeBorder:`${o.brandPurple}3D`,idBadgeText:o.brandPurple},q={apis:r,logs:r,analytics:r,redux:r,storage:r,device:r,crash:r,push:r,socket:r,debugging:r,media:r},$e=ce.memo(()=>{const{t:J}=we(),{activeTab:k,switchActiveTab:L,tabVisibility:v,logs:A,consoleLogs:O,analyticsEvents:K,crashRecords:V,pushRecords:D,socketRecords:E,unreadPushCount:N,unreadSocketCount:X,lastReadApisCount:Y,lastReadLogsCount:Z,lastReadCrashesCount:ee,lastReadSocketCount:oe,mediaCount:H}=ke(),te=Ee(),ie=He(),w=k==="media",x=(v?.media??!0)&&H>0,j=F(null),[z,ne]=U(!1),[$,re]=U(!0),M=F(0),le=e=>{const{contentOffset:t,layoutMeasurement:i,contentSize:n}=e.nativeEvent,S=t.x;M.current=S;const R=S>8,I=S<n.width-i.width-8;z!==R&&ne(R),$!==I&&re(I)},W=e=>{j.current?.scrollTo({x:Math.max(0,M.current+e),animated:!0})};return<C style={[T.tabBarContainer,{flexDirection:"row",alignItems:"center",paddingHorizontal:0}]}>
1
+ import ce,{useRef as F,useState as U}from"react";import{Platform as de,ScrollView as Ce,Text as P,TouchableOpacity as _,View as C}from"react-native";import{useInspector as ke}from"./InspectorContext";import{useTranslation as we}from"../../i18n";import I from"../../styles";import{AppColors as o}from"../../styles/AppColors";import{AppFonts as T}from"../../styles/AppFonts";import G from"../TouchableScale";import{SignalIcon as Se,TerminalIcon as Re,AnalyticsIcon as Ie,ReduxIcon as Te,CrashIcon as Be,BellIcon as Pe,SmartphoneIcon as Le,DatabaseIcon as Ae,QrCodeIcon as Oe,ScreencastIcon as Ve,ChevronIcon as Q,WebsocketIcon as De}from"../NetworkIcons";import{isReduxConnected as Ee}from"../../customHooks/reduxLogger";import{isAnalyticsConnected as He}from"../../customHooks/analyticsLogger";import{isLocalDebugEnvironment as We}from"../../helpers";const r={themeColor:o.brandPurple,bgInactive:`${o.brandPurple}0D`,borderInactive:`${o.brandPurple}2B`,iconInactive:o.brandPurple,idBadgeBg:`${o.brandPurple}1C`,idBadgeBorder:`${o.brandPurple}3D`,idBadgeText:o.brandPurple},q={apis:r,logs:r,analytics:r,redux:r,storage:r,device:r,crash:r,push:r,socket:r,debugging:r,media:r},je=ce.memo(()=>{const{t:J}=we(),{activeTab:k,switchActiveTab:L,tabVisibility:B,logs:A,consoleLogs:O,analyticsEvents:K,crashRecords:V,pushRecords:D,socketRecords:E,unreadPushCount:N,unreadSocketCount:X,lastReadApisCount:Y,lastReadLogsCount:Z,lastReadCrashesCount:ee,lastReadSocketCount:oe,mediaCount:H}=ke(),te=Ee(),ie=He(),w=k==="media",x=(B?.media??!0)&&H>0,W=F(null),[z,ne]=U(!1),[j,re]=U(!0),$=F(0),le=e=>{const{contentOffset:t,layoutMeasurement:i,contentSize:n}=e.nativeEvent,S=t.x;$.current=S;const R=S>8,v=S<n.width-i.width-8;z!==R&&ne(R),j!==v&&re(v)},M=e=>{W.current?.scrollTo({x:Math.max(0,$.current+e),animated:!0})};return<C style={[I.tabBarContainer,{flexDirection:"row",alignItems:"center",paddingHorizontal:0}]}>
2
2
 
3
- {z&&<_ onPress={()=>W(-160)}hitSlop={{top:6,bottom:6,left:6,right:6}}activeOpacity={.7}style={{paddingLeft:6,paddingRight:2,justifyContent:"center",alignItems:"center"}}>
3
+ {z&&<_ onPress={()=>M(-160)}hitSlop={{top:6,bottom:6,left:6,right:6}}activeOpacity={.7}style={{paddingLeft:6,paddingRight:2,justifyContent:"center",alignItems:"center"}}>
4
4
  <C style={{width:22,height:22,borderRadius:11,backgroundColor:o.grayBorderSecondary,alignItems:"center",justifyContent:"center"}}>
5
5
  <Q direction="left"size={13}color={o.grayTextStrong}/>
6
6
  </C>
7
7
  </_>}
8
8
 
9
9
 
10
- <Ce ref={j}horizontal showsHorizontalScrollIndicator={!1}onScroll={le}scrollEventThrottle={16}style={{flex:1}}contentContainerStyle={{paddingLeft:z?4:12,paddingRight:x?6:12}}>
11
- {[{id:1,key:"apis",label:"APIs",count:A.length,icon:"apis"},{id:2,key:"logs",label:"Logs",count:O.length,icon:"logs"},{id:3,key:"analytics",label:"Analytics",count:K.length,icon:"analytics"},{id:4,key:"redux",label:"Redux",count:0,icon:"redux"},{id:5,key:"storage",label:"Storage",count:0,icon:"storage"},{id:6,key:"device",label:"Device",count:0,icon:"device"},{id:7,key:"crash",label:"Crash",count:V?.length||0,icon:"crash"},{id:8,key:"push",label:"Push",count:D?.length||0,icon:"push"},{id:9,key:"socket",label:"WebSocket",count:E?.length||0,icon:"socket"},{id:10,key:"debugging",label:"Debugging",count:0,icon:"debugging"}].filter(e=>e.key==="debugging"?de.OS==="android"&&je()&&!!v?.debugging:!(!v?.[e.key]||e.key==="redux"&&!te||e.key==="analytics"&&!ie)).map(e=>{const t=k===e.key,i=q[e.key]||q.apis,n=t?o.white:i.iconInactive,S=e.count>99?"99+":String(e.count),R=k!=="apis"&&A.length>Y,I=k!=="logs"&&O.length>Z,ae=k!=="crash"&&(V?.length||0)>(ee||0),se=k!=="socket"&&((E?.length||0)>(oe||0)||X>0);return<G key={e.key}onPress={()=>{L(e.key)}}style={[T.contentTabButton,{backgroundColor:t?i.themeColor:i.bgInactive,borderColor:t?i.themeColor:i.borderInactive},t&&{shadowColor:i.themeColor,shadowOffset:{width:0,height:2},shadowOpacity:.28,shadowRadius:3.5,elevation:3}]}>
10
+ <Ce ref={W}horizontal showsHorizontalScrollIndicator={!1}onScroll={le}scrollEventThrottle={16}style={{flex:1}}contentContainerStyle={{paddingLeft:z?4:12,paddingRight:x?6:12}}>
11
+ {[{id:1,key:"apis",label:"APIs",count:A.length,icon:"apis"},{id:2,key:"logs",label:"Logs",count:O.length,icon:"logs"},{id:3,key:"analytics",label:"Analytics",count:K.length,icon:"analytics"},{id:4,key:"redux",label:"Redux",count:0,icon:"redux"},{id:5,key:"storage",label:"Storage",count:0,icon:"storage"},{id:6,key:"device",label:"Device",count:0,icon:"device"},{id:7,key:"crash",label:"Crash",count:V?.length||0,icon:"crash"},{id:8,key:"push",label:"Push",count:D?.length||0,icon:"push"},{id:9,key:"socket",label:"WebSocket",count:E?.length||0,icon:"socket"},{id:10,key:"debugging",label:"Debugging",count:0,icon:"debugging"}].filter(e=>e.key==="debugging"?de.OS==="android"&&We()&&!!B?.debugging:!(!B?.[e.key]||e.key==="redux"&&!te||e.key==="analytics"&&!ie)).map(e=>{const t=k===e.key,i=q[e.key]||q.apis,n=t?o.white:i.iconInactive,S=e.count>99?"99+":String(e.count),R=k!=="apis"&&A.length>Y,v=k!=="logs"&&O.length>Z,ae=k!=="crash"&&(V?.length||0)>(ee||0),se=k!=="socket"&&((E?.length||0)>(oe||0)||X>0);return<G key={e.key}onPress={()=>{L(e.key)}}style={[I.contentTabButton,{backgroundColor:t?i.themeColor:i.bgInactive,borderColor:t?i.themeColor:i.borderInactive},t&&{shadowColor:i.themeColor,shadowOffset:{width:0,height:2},shadowOpacity:.28,shadowRadius:3.5,elevation:3}]}>
12
12
  <C style={{flexDirection:"row",alignItems:"center",gap:6}}>
13
13
  {e.icon==="apis"&&<Se color={n}size={14}/>}
14
14
  {e.icon==="logs"&&<Re color={n}size={14}/>}
@@ -21,25 +21,25 @@ import ce,{useRef as F,useState as U}from"react";import{Platform as de,ScrollVie
21
21
  {e.icon==="socket"&&<De color={n}size={14}/>}
22
22
  {e.icon==="debugging"&&<Oe color={n}size={14}/>}
23
23
  <C style={{minWidth:20,height:20,paddingHorizontal:4,borderRadius:10,backgroundColor:t?`${o.white}33`:i.idBadgeBg,borderWidth:1,borderColor:t?`${o.white}66`:i.idBadgeBorder,alignItems:"center",justifyContent:"center"}}>
24
- <P style={{fontFamily:B.interBold,fontSize:9.5,lineHeight:12,color:t?o.white:i.idBadgeText}}>
24
+ <P style={{fontFamily:T.interBold,fontSize:9.5,lineHeight:12,color:t?o.white:i.idBadgeText}}>
25
25
  #{e.id}
26
26
  </P>
27
27
  </C>
28
- <P numberOfLines={1}ellipsizeMode="tail"style={[T.contentTabButtonText,{color:t?o.white:o.grayTextStrong,fontFamily:t?B.interBold:B.interSemiBold}]}>
28
+ <P numberOfLines={1}ellipsizeMode="tail"style={[I.contentTabButtonText,{color:t?o.white:o.grayTextStrong,fontFamily:t?T.interBold:T.interSemiBold}]}>
29
29
  {J(`tabs.${e.key}`,e.label)}
30
30
  </P>
31
- {e.count>0&&e.key!=="push"&&<C style={{paddingHorizontal:5,paddingVertical:1,borderRadius:8,backgroundColor:t?"rgba(255,255,255,0.25)":i.idBadgeBg,borderWidth:.5,borderColor:t?"rgba(255,255,255,0.45)":i.idBadgeBorder,marginLeft:1,alignItems:"center",justifyContent:"center"}}>
32
- <P style={{fontFamily:B.interBold,fontSize:9.5,lineHeight:12,color:t?o.white:i.themeColor}}>
31
+ {e.count>0&&e.key!=="push"&&<C style={{paddingHorizontal:5,paddingVertical:1,borderRadius:8,backgroundColor:t?o.overlayWhite25:i.idBadgeBg,borderWidth:.5,borderColor:t?o.overlayWhite45:i.idBadgeBorder,marginLeft:1,alignItems:"center",justifyContent:"center"}}>
32
+ <P style={{fontFamily:T.interBold,fontSize:9.5,lineHeight:12,color:t?o.white:i.themeColor}}>
33
33
  {S}
34
34
  </P>
35
35
  </C>}
36
- {(e.key==="apis"&&R||e.key==="logs"&&I||e.key==="crash"&&ae||e.key==="push"&&((D?.length||0)>0||N>0)||e.key==="socket"&&se)&&<C style={{width:6,height:6,borderRadius:3,backgroundColor:o.errorColor,marginLeft:4,alignSelf:"center"}}/>}
36
+ {(e.key==="apis"&&R||e.key==="logs"&&v||e.key==="crash"&&ae||e.key==="push"&&((D?.length||0)>0||N>0)||e.key==="socket"&&se)&&<C style={{width:6,height:6,borderRadius:3,backgroundColor:o.errorColor,marginLeft:4,alignSelf:"center"}}/>}
37
37
  </C>
38
38
  </G>})}
39
39
  </Ce>
40
40
 
41
41
 
42
- {$&&<_ onPress={()=>W(160)}hitSlop={{top:6,bottom:6,left:6,right:6}}activeOpacity={.7}style={{paddingLeft:2,paddingRight:x?4:8,justifyContent:"center",alignItems:"center"}}>
42
+ {j&&<_ onPress={()=>M(160)}hitSlop={{top:6,bottom:6,left:6,right:6}}activeOpacity={.7}style={{paddingLeft:2,paddingRight:x?4:8,justifyContent:"center",alignItems:"center"}}>
43
43
  <C style={{width:22,height:22,borderRadius:11,backgroundColor:o.grayBorderSecondary,alignItems:"center",justifyContent:"center"}}>
44
44
  <Q direction="right"size={13}color={o.grayTextStrong}/>
45
45
  </C>
@@ -47,11 +47,11 @@ import ce,{useRef as F,useState as U}from"react";import{Platform as de,ScrollVie
47
47
 
48
48
 
49
49
  {x&&<C style={{paddingLeft:6,paddingRight:10,borderLeftWidth:1,borderLeftColor:o.dividerColor,backgroundColor:o.primaryLight,justifyContent:"center",shadowColor:o.shadowColorString,shadowOffset:{width:-3,height:0},shadowOpacity:.12,shadowRadius:4,elevation:4,zIndex:10}}>
50
- <G key="media"onPress={()=>{L("media")}}accessibilityRole="button"accessibilityLabel="Media Gallery"style={[T.contentTabButton,{marginRight:0,borderRadius:8,backgroundColor:w?o.brandPurple:`${o.brandPurple}0D`,borderColor:w?o.brandPurple:`${o.brandPurple}2B`,borderWidth:1,paddingHorizontal:10,paddingVertical:7,alignItems:"center",justifyContent:"center"},w&&{shadowColor:o.brandPurple,shadowOffset:{width:0,height:2},shadowOpacity:.28,shadowRadius:3.5,elevation:3}]}>
50
+ <G key="media"onPress={()=>{L("media")}}accessibilityRole="button"accessibilityLabel="Media Gallery"style={[I.contentTabButton,{marginRight:0,borderRadius:8,backgroundColor:w?o.brandPurple:`${o.brandPurple}0D`,borderColor:w?o.brandPurple:`${o.brandPurple}2B`,borderWidth:1,paddingHorizontal:10,paddingVertical:7,alignItems:"center",justifyContent:"center"},w&&{shadowColor:o.brandPurple,shadowOffset:{width:0,height:2},shadowOpacity:.28,shadowRadius:3.5,elevation:3}]}>
51
51
  <C style={{position:"relative",alignItems:"center",justifyContent:"center"}}>
52
52
  <Ve color={w?o.white:o.brandPurple}size={15}/>
53
53
  {H>0&&<C style={{position:"absolute",top:-3,right:-4,width:7,height:7,borderRadius:3.5,backgroundColor:w?o.white:o.brandPurple,borderWidth:1.2,borderColor:w?o.brandPurple:o.white}}/>}
54
54
  </C>
55
55
  </G>
56
56
  </C>}
57
- </C>});export default $e;
57
+ </C>});export default je;