react-native-inapp-inspector 2.5.11 → 2.5.12

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 (333) hide show
  1. package/README.ar.md +0 -8
  2. package/README.de.md +0 -8
  3. package/README.es.md +0 -8
  4. package/README.fr.md +0 -8
  5. package/README.hi.md +0 -8
  6. package/README.ja.md +0 -8
  7. package/README.ko.md +0 -8
  8. package/README.md +54 -26
  9. package/README.pt-BR.md +0 -8
  10. package/README.ru.md +0 -8
  11. package/README.zh-CN.md +0 -8
  12. package/dist/commonjs/components/ConsoleLogCard.js +32 -26
  13. package/dist/commonjs/components/Inspector/AboutModal.js +1 -4
  14. package/dist/commonjs/components/Inspector/ConsoleTab.js +19 -14
  15. package/dist/commonjs/components/Inspector/InspectorHeader.js +6 -6
  16. package/dist/commonjs/components/Inspector/MainScreen.js +9 -6
  17. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +187 -90
  18. package/dist/commonjs/components/Inspector/NetworkDetail.js +11 -8
  19. package/dist/commonjs/components/Inspector/NetworkTab.js +31 -32
  20. package/dist/commonjs/components/Inspector/PerformanceTab.d.ts +2 -0
  21. package/dist/commonjs/components/Inspector/PerformanceTab.js +652 -0
  22. package/dist/commonjs/components/Inspector/SettingsPanel.js +256 -249
  23. package/dist/commonjs/components/Inspector/TabBar.js +17 -16
  24. package/dist/commonjs/components/LogCard.js +11 -8
  25. package/dist/commonjs/components/NetworkIcons.d.ts +6 -0
  26. package/dist/commonjs/components/NetworkIcons.js +35 -3
  27. package/dist/commonjs/constants/index.d.ts +1 -0
  28. package/dist/commonjs/constants/index.js +1 -1
  29. package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
  30. package/dist/commonjs/constants/telemetryConfig.js +1 -1
  31. package/dist/commonjs/constants/version.d.ts +1 -1
  32. package/dist/commonjs/constants/version.js +1 -1
  33. package/dist/commonjs/helpers/index.d.ts +3 -0
  34. package/dist/commonjs/helpers/index.js +8 -6
  35. package/dist/commonjs/helpers/performanceSampler.d.ts +88 -0
  36. package/dist/commonjs/helpers/performanceSampler.js +1 -0
  37. package/dist/commonjs/helpers/remoteConfig.d.ts +0 -2
  38. package/dist/commonjs/helpers/remoteConfig.js +1 -1
  39. package/dist/commonjs/i18n/locales/ar.json +1 -1
  40. package/dist/commonjs/i18n/locales/bn.json +1 -1
  41. package/dist/commonjs/i18n/locales/de.json +1 -1
  42. package/dist/commonjs/i18n/locales/en.json +1 -1
  43. package/dist/commonjs/i18n/locales/es.json +1 -1
  44. package/dist/commonjs/i18n/locales/fr.json +1 -1
  45. package/dist/commonjs/i18n/locales/gu.json +1 -1
  46. package/dist/commonjs/i18n/locales/hi.json +1 -1
  47. package/dist/commonjs/i18n/locales/id.json +1 -1
  48. package/dist/commonjs/i18n/locales/it.json +1 -1
  49. package/dist/commonjs/i18n/locales/ja.json +1 -1
  50. package/dist/commonjs/i18n/locales/kn.json +1 -1
  51. package/dist/commonjs/i18n/locales/ko.json +1 -1
  52. package/dist/commonjs/i18n/locales/ml.json +1 -1
  53. package/dist/commonjs/i18n/locales/mr.json +1 -1
  54. package/dist/commonjs/i18n/locales/nl.json +1 -1
  55. package/dist/commonjs/i18n/locales/pa.json +1 -1
  56. package/dist/commonjs/i18n/locales/pl.json +1 -1
  57. package/dist/commonjs/i18n/locales/pt.json +1 -1
  58. package/dist/commonjs/i18n/locales/ru.json +1 -1
  59. package/dist/commonjs/i18n/locales/ta.json +1 -1
  60. package/dist/commonjs/i18n/locales/te.json +1 -1
  61. package/dist/commonjs/i18n/locales/tr.json +1 -1
  62. package/dist/commonjs/i18n/locales/vi.json +1 -1
  63. package/dist/commonjs/i18n/locales/zh.json +1 -1
  64. package/dist/commonjs/index.d.ts +3 -3
  65. package/dist/commonjs/index.js +3 -3
  66. package/dist/commonjs/styles/index.js +1 -1
  67. package/dist/commonjs/types/enums.d.ts +1 -0
  68. package/dist/commonjs/types/enums.js +1 -1
  69. package/dist/commonjs/types/interfaces.d.ts +8 -0
  70. package/dist/esm/components/ConsoleLogCard.js +67 -61
  71. package/dist/esm/components/Inspector/AboutModal.js +14 -17
  72. package/dist/esm/components/Inspector/ConsoleTab.js +33 -28
  73. package/dist/esm/components/Inspector/InspectorHeader.js +6 -6
  74. package/dist/esm/components/Inspector/MainScreen.js +61 -58
  75. package/dist/esm/components/Inspector/MediaGalleryTab.js +254 -157
  76. package/dist/esm/components/Inspector/NetworkDetail.js +62 -59
  77. package/dist/esm/components/Inspector/NetworkTab.js +101 -102
  78. package/dist/esm/components/Inspector/PerformanceTab.d.ts +2 -0
  79. package/dist/esm/components/Inspector/PerformanceTab.js +652 -0
  80. package/dist/esm/components/Inspector/SettingsPanel.js +299 -292
  81. package/dist/esm/components/Inspector/TabBar.js +4 -3
  82. package/dist/esm/components/LogCard.js +37 -34
  83. package/dist/esm/components/NetworkIcons.d.ts +6 -0
  84. package/dist/esm/components/NetworkIcons.js +32 -0
  85. package/dist/esm/constants/index.d.ts +1 -0
  86. package/dist/esm/constants/index.js +1 -1
  87. package/dist/esm/constants/telemetryConfig.d.ts +3 -3
  88. package/dist/esm/constants/telemetryConfig.js +1 -1
  89. package/dist/esm/constants/version.d.ts +1 -1
  90. package/dist/esm/constants/version.js +1 -1
  91. package/dist/esm/helpers/index.d.ts +3 -0
  92. package/dist/esm/helpers/index.js +8 -6
  93. package/dist/esm/helpers/performanceSampler.d.ts +88 -0
  94. package/dist/esm/helpers/performanceSampler.js +1 -0
  95. package/dist/esm/helpers/remoteConfig.d.ts +0 -2
  96. package/dist/esm/helpers/remoteConfig.js +1 -1
  97. package/dist/esm/i18n/locales/ar.json +1 -1
  98. package/dist/esm/i18n/locales/bn.json +1 -1
  99. package/dist/esm/i18n/locales/de.json +1 -1
  100. package/dist/esm/i18n/locales/en.json +1 -1
  101. package/dist/esm/i18n/locales/es.json +1 -1
  102. package/dist/esm/i18n/locales/fr.json +1 -1
  103. package/dist/esm/i18n/locales/gu.json +1 -1
  104. package/dist/esm/i18n/locales/hi.json +1 -1
  105. package/dist/esm/i18n/locales/id.json +1 -1
  106. package/dist/esm/i18n/locales/it.json +1 -1
  107. package/dist/esm/i18n/locales/ja.json +1 -1
  108. package/dist/esm/i18n/locales/kn.json +1 -1
  109. package/dist/esm/i18n/locales/ko.json +1 -1
  110. package/dist/esm/i18n/locales/ml.json +1 -1
  111. package/dist/esm/i18n/locales/mr.json +1 -1
  112. package/dist/esm/i18n/locales/nl.json +1 -1
  113. package/dist/esm/i18n/locales/pa.json +1 -1
  114. package/dist/esm/i18n/locales/pl.json +1 -1
  115. package/dist/esm/i18n/locales/pt.json +1 -1
  116. package/dist/esm/i18n/locales/ru.json +1 -1
  117. package/dist/esm/i18n/locales/ta.json +1 -1
  118. package/dist/esm/i18n/locales/te.json +1 -1
  119. package/dist/esm/i18n/locales/tr.json +1 -1
  120. package/dist/esm/i18n/locales/vi.json +1 -1
  121. package/dist/esm/i18n/locales/zh.json +1 -1
  122. package/dist/esm/index.d.ts +3 -3
  123. package/dist/esm/index.js +8 -8
  124. package/dist/esm/styles/index.js +1 -1
  125. package/dist/esm/types/enums.d.ts +1 -0
  126. package/dist/esm/types/enums.js +1 -1
  127. package/dist/esm/types/interfaces.d.ts +8 -0
  128. package/package.json +24 -1
  129. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  130. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  131. package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
  132. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  133. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  134. package/android/.gradle/8.9/gc.properties +0 -0
  135. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  136. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  137. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  138. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  139. package/android/.gradle/9.2.0/gc.properties +0 -0
  140. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  141. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  142. package/android/.gradle/vcs-1/gc.properties +0 -0
  143. package/android/.settings/org.eclipse.buildship.core.prefs +0 -13
  144. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/results.bin +0 -1
  145. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/BuildConfig.dex +0 -0
  146. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView$iconView$1.dex +0 -0
  147. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView.dex +0 -0
  148. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NativeNetworkInspectorSpec.dex +0 -0
  149. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$Companion.dex +0 -0
  150. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$activityEventListener$1.dex +0 -0
  151. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$frameCallback$1.dex +0 -0
  152. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.dex +0 -0
  153. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$shakeListener$1.dex +0 -0
  154. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.dex +0 -0
  155. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule.dex +0 -0
  156. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorPackage.dex +0 -0
  157. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  158. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/results.bin +0 -1
  159. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/transformed/classes/classes_dex/classes.dex +0 -0
  160. package/android/build/generated/source/buildConfig/debug/com/inappinspector/BuildConfig.java +0 -10
  161. package/android/build/generated/source/codegen/java/com/inappinspector/NativeNetworkInspectorSpec.java +0 -160
  162. package/android/build/generated/source/codegen/jni/CMakeLists.txt +0 -28
  163. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec-generated.cpp +0 -212
  164. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec.h +0 -31
  165. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.cpp +0 -22
  166. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.h +0 -24
  167. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.cpp +0 -16
  168. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.h +0 -17
  169. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.cpp +0 -19
  170. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.h +0 -18
  171. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/RNInAppInspectorSpecJSI.h +0 -300
  172. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.cpp +0 -17
  173. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.h +0 -23
  174. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.cpp +0 -16
  175. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.h +0 -20
  176. package/android/build/generated/source/codegen/schema.json +0 -1
  177. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -7
  178. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  179. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  180. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  181. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  182. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  183. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  184. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  185. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  186. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  187. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  188. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  189. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  190. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/BuildConfig.class +0 -0
  191. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  192. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  193. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -7
  194. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -7
  195. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  196. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  197. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  198. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/BuildConfig.class +0 -0
  199. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  200. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  201. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  202. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  203. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$activityEventListener$1.class +0 -0
  204. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  205. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.class +0 -0
  206. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  207. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.class +0 -0
  208. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule.class +0 -0
  209. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  210. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  211. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  212. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  213. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  214. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  215. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  216. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  217. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  218. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  219. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  220. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  221. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  222. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  223. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  224. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  225. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  226. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  227. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  228. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  229. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  230. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  231. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  232. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  233. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  234. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  235. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  236. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  237. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  238. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  239. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  240. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  241. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  242. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  243. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  244. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  245. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  246. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  247. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  248. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  249. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  250. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  251. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  252. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  253. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  254. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  255. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  256. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  257. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  258. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  259. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  260. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  261. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  262. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  263. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  264. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  265. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  266. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  267. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  268. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  269. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  270. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  271. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  272. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  273. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  274. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  275. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  276. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  277. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  278. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  279. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  280. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  281. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  282. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  283. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  284. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  285. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  286. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  287. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  288. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  289. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  290. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  291. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  292. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  293. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  294. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  295. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  296. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  297. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  298. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  299. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  300. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
  301. package/android/build/reports/problems/problems-report.html +0 -659
  302. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  303. package/android/build/tmp/kotlin-classes/debug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  304. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  305. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  306. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  307. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$activityEventListener$1.class +0 -0
  308. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  309. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.class +0 -0
  310. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  311. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.class +0 -0
  312. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule.class +0 -0
  313. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  314. package/dist/commonjs/a11y.d.ts +0 -2
  315. package/dist/commonjs/a11y.js +0 -1
  316. package/dist/commonjs/components/Inspector/A11yTab.d.ts +0 -2
  317. package/dist/commonjs/components/Inspector/A11yTab.js +0 -268
  318. package/dist/commonjs/components/Inspector/DeveloperSponsorCard.d.ts +0 -9
  319. package/dist/commonjs/components/Inspector/DeveloperSponsorCard.js +0 -52
  320. package/dist/commonjs/customHooks/a11yAdapter.d.ts +0 -11
  321. package/dist/commonjs/customHooks/a11yAdapter.js +0 -1
  322. package/dist/commonjs/helpers/sponsorService.d.ts +0 -20
  323. package/dist/commonjs/helpers/sponsorService.js +0 -1
  324. package/dist/esm/a11y.d.ts +0 -2
  325. package/dist/esm/a11y.js +0 -1
  326. package/dist/esm/components/Inspector/A11yTab.d.ts +0 -2
  327. package/dist/esm/components/Inspector/A11yTab.js +0 -268
  328. package/dist/esm/components/Inspector/DeveloperSponsorCard.d.ts +0 -9
  329. package/dist/esm/components/Inspector/DeveloperSponsorCard.js +0 -52
  330. package/dist/esm/customHooks/a11yAdapter.d.ts +0 -11
  331. package/dist/esm/customHooks/a11yAdapter.js +0 -1
  332. package/dist/esm/helpers/sponsorService.d.ts +0 -20
  333. package/dist/esm/helpers/sponsorService.js +0 -1
@@ -1,4 +1,4 @@
1
- import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";import{Alert as N,Animated as or,DevSettings as tr,Platform as Nr,ScrollView as G,StyleSheet as jr,Text as T,TextInput as Ct,View as C}from"react-native";import St,{Path as Gr}from"react-native-svg";import{animateNextLayout as je,useInspector as kt}from"./InspectorContext";import V from"../TouchableScale";import Ur from"../Slider";import{toggleGlobalTheme as xt}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as S}from"../../styles/AppFonts";import{calculateRamBasedLimits as Tt}from"../../helpers/settingsStore";import{clearNetworkLogs as Bt}from"../../customHooks/networkLogger";import{clearConsoleLogs as zt}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as Vt,isAnalyticsConnected as _r}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Rt}from"../../customHooks/crashHandler";import{isReduxConnected as Jr}from"../../customHooks/reduxLogger";import{useTranslation as Ft,SUPPORTED_LANGUAGES as qr,getLanguage as It}from"../../i18n";import{LanguageSelectorModal as Dt}from"./LanguageSelectorModal";import{GlobeIcon as Kr,SignalIcon as Qr,TerminalIcon as Xr,AnalyticsIcon as Yr,SettingsIcon as Ht,SunIcon as Pt,MoonIcon as Wt,ScreenIcon as Zr,MotionIcon as $t,LayersIcon as Ce,EyeIcon as Ge,CheckIcon as K,TrashIcon as U,PackageIcon as Lt,ReduxIcon as Co,CrashIcon as At,ShieldAlertIcon as So,ShieldCheckIcon as To,ScaleBalanceIcon as Ot,VolumeMuteIcon as Mt,JsIcon as Et,ChipIcon as Nt,LayoutIcon as Gt,HourglassIcon as Ut,CodeBracketsIcon as _t,RefreshCcwIcon as Jt,ForwardChevronIcon as Bo,ChevronDownIcon as Kt,BrainIcon as Vo,SmartphoneIcon as Qt,DatabaseIcon as Xt,QrCodeIcon as Yt,FilmIcon as Ro,ScreencastIcon as Zt,CameraIcon as Te,VideoCameraIcon as Cr,MicrophoneIcon as Fo,GifIcon as Io,ImageIcon as Do,BellIcon as Ho,WebsocketIcon as Po,BoltIcon as Sr}from"../NetworkIcons";import{ScreenCapture as kr}from"../../capture";import{triggerNativeHaptic as v}from"../../native/NativeInspector";import{DeveloperSponsorCard as Ci}from"./DeveloperSponsorCard";import{isLocalDebugEnvironment as wi}from"../../helpers";import{showToast as I}from"../../helpers/toast";import{pruneAllLogs as Si}from"../../helpers/memoryManager";const ki=()=>{const{t:w}=Ft(),{settingsPage:O,setSettingsPage:xr,settingsActiveSubTab:Q,setSettingsActiveSubTab:Wo,tabVisibility:R,toggleTabVisibility:$o,defaultTab:X,setDefaultTab:Lo,isDark:we,setIsDark:Ao,modalHeightPercent:Be,setModalHeightPercent:Oo,modalAnimationType:Mo,setModalAnimationType:Eo,showDuplicateLogs:Ue,setShowDuplicateLogs:No,showUpdateToast:_e,setShowUpdateToast:jo,showConsoleLevels:Go,setShowConsoleLevels:Uo,closeModal:_o,logs:Je,consoleLogs:qe,analyticsEvents:Ke,reduxState:ze,maxConsoleLogs:Qe,setMaxConsoleLogs:Jo,maxAnalyticsEventsLimit:Tr,setMaxAnalyticsEventsLimit:qo,isAutoRamLimitEnabled:$,setIsAutoRamLimitEnabled:Ko,deviceFreeRamMb:Xe,reduxAutoRefresh:Ye,setReduxAutoRefreshState:Qo,reduxExpandDepth:Br,setReduxExpandDepth:Xo,setSelected:Yo,setSelectedEvent:Zo,setReduxState:et,crashRecords:Ve,maxCrashLogs:zr,setMaxCrashLogs:Vr,crashIgnoredTypes:P,setCrashIgnoredTypes:rt,crashModalTriggerPolicy:ot,setCrashModalTriggerPolicyState:Rr,applyCrashPolicyPreset:Re,pushRecords:Fe,maxPushLogs:tt,setMaxPushLogs:it,clearAllPushLogs:lt,simulatePush:Ie,socketRecords:De,maxSocketLogs:at,setMaxSocketLogs:nt,clearAllSocketLogs:st,simulateSocket:He,captureImageFormat:Ze,setCaptureImageFormat:Fr,captureAutoHide:A,setCaptureAutoHide:ve,captureAudioMode:Ir,setCaptureAudioMode:Dr,captureFps:Hr,setCaptureFps:vr,captureScale:xi,setCaptureScale:Ti,captureBitrate:Bi,setCaptureBitrate:zi,captureMaxDurationSeconds:Vi,setCaptureMaxDurationSeconds:Ri,captureAutoGif:M,setCaptureAutoGif:Pe,captureWidgetEnabled:Y,setCaptureWidgetEnabled:Pr,peekOpacity:Wr,setPeekOpacity:dt}=kt(),[We,$r]=Ne(Be),[ct,Lr]=Ne(!1),gt=It(),$e=qr.find(r=>r.code===gt)||qr[0];rr(()=>{$r(Be)},[Be]);const Le=Tt(Xe),W=Ee(()=>[{id:1,key:"apis",label:"APIs (Network)",category:"core",icon:"apis",desc:"HTTP/HTTPS requests, GraphQL, Axios & WebSocket inspector"},{id:2,key:"logs",label:"Console Logs",category:"core",icon:"logs",desc:"Terminal console logs, warnings, errors & stack traces"},{id:3,key:"analytics",label:"Analytics Logger",category:"telemetry",icon:"analytics",desc:"Firebase & custom analytics events, user properties & params"},{id:4,key:"redux",label:"Redux Inspector",category:"telemetry",icon:"redux",desc:"Store state diffing, action history & reducer timeline"},{id:5,key:"storage",label:"Storage Inspector",category:"telemetry",icon:"storage",desc:"AsyncStorage & MMKV key-value store viewer with full CRUD support"},{id:6,key:"device",label:"Device Info",category:"diagnostic",icon:"device",desc:"Hardware specs, IP address, screen metrics, UDID & runtime stats"},{id:7,key:"crash",label:"Crash Protection",category:"diagnostic",icon:"crash",desc:"Runtime exception guard, breadcrumbs & memory snapshot"},{id:8,key:"debugging",label:"Multi-Device Debugging",category:"diagnostic",icon:"debugging",desc:"QR Code bridge for direct Debug APK download & Metro live-reload sync"},{id:9,key:"media",label:"Screencast",category:"diagnostic",icon:"media",desc:"Screenshots, video recordings, audio narration & animated GIFs"},{id:10,key:"push",label:"Push Notifications",category:"telemetry",icon:"push",desc:"Universal push & local notification logger (Salesforce, FCM, APNs, Braze, Expo)"},{id:11,key:"socket",label:"WebSocket & Socket.IO",category:"telemetry",icon:"socket",desc:"Real-time WebSocket & Socket.IO message inspector, frames & event logger"}].filter(r=>r.key==="debugging"?Nr.OS==="android"&&wi():!0),[]),[_,Ae]=Ne(()=>({apis:!0,logs:!!(R?.logs??!0),analytics:!!(R?.analytics??!0),redux:!!(R?.redux??!0),storage:!!(R?.storage??!0),device:!!(R?.device??!0),crash:!!(R?.crash??!0),debugging:!!(R?.debugging??!0),media:!!(R?.media??!0),push:!!(R?.push??!0),socket:!!(R?.socket??!0)}));rr(()=>{Ae({apis:!0,logs:!!(R?.logs??!0),analytics:!!(R?.analytics??!0),redux:!!(R?.redux??!0),storage:!!(R?.storage??!0),device:!!(R?.device??!0),crash:!!(R?.crash??!0),debugging:!!(R?.debugging??!0),media:!!(R?.media??!0),push:!!(R?.push??!0),socket:!!(R?.socket??!0)})},[R]);const Z=Ee(()=>W.some(r=>!!_[r.key]!=!!R?.[r.key]),[_,R,W]),Ar=W.filter(r=>r.key==="apis"||!!_[r.key]).length,Oe=Ee(()=>W.filter(r=>!(r.key==="apis"||r.key==="redux"&&!Jr()||r.key==="analytics"&&!_r())),[W]),E=Ee(()=>Oe.length===0?!1:Oe.every(r=>!!_[r.key]),[Oe,_]),Or=()=>{const r=!E;Ae(B=>{const D={...B};return Oe.forEach(H=>{D[H.key]=r}),D})},pt=()=>{Z&&N.alert("Apply Changes & Reload","Are you sure you want to save module changes? The inspector will close and reload the app to apply the new configuration.",[{text:"Cancel",style:"cancel",onPress:()=>{Ae({apis:!0,logs:!!R?.logs,analytics:!!R?.analytics,redux:!!R?.redux,storage:!!R?.storage,device:!!R?.device,crash:!!R?.crash,debugging:!!R?.debugging,media:!!(R?.media??!0),push:!!(R?.push??!0),socket:!!(R?.socket??!1)})}},{text:"Save & Reload",style:"default",onPress:()=>{je(),W.forEach(r=>{if(r.key!=="apis"){const B=!!_[r.key],D=!!R?.[r.key];B!==D&&$o(r.key)}}),_o(),setTimeout(()=>{__DEV__&&tr&&tr.reload&&tr.reload()},350)}}])},[er,Mr]=Ne(!1),F=r=><C key={r.key}style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
1
+ import{useMemo as Xe,useState as Me,useEffect as Ze,useRef as jr}from"react";import{Alert as j,Animated as _,Platform as Ur,ScrollView as J,StyleSheet as Gr,Switch as Tt,Text as T,TextInput as _r,View as C}from"react-native";import{animateNextLayout as Jr,useInspector as Rt}from"./InspectorContext";import V from"../TouchableScale";import Yr from"../Slider";import{toggleGlobalTheme as Vt}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as S}from"../../styles/AppFonts";import{DEFAULT_HIDDEN_URL_PATTERNS as er}from"../../constants";import{calculateRamBasedLimits as zt}from"../../helpers/settingsStore";import{clearNetworkLogs as Bt}from"../../customHooks/networkLogger";import{clearConsoleLogs as Ft}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as It,isAnalyticsConnected as Kr}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Dt}from"../../customHooks/crashHandler";import{isReduxConnected as Qr}from"../../customHooks/reduxLogger";import{useTranslation as $t,SUPPORTED_LANGUAGES as Xr,getLanguage as Ht}from"../../i18n";import{LanguageSelectorModal as Pt}from"./LanguageSelectorModal";import{GlobeIcon as Zr,SignalIcon as Co,TerminalIcon as So,AnalyticsIcon as To,SettingsIcon as Wt,SunIcon as Lt,MoonIcon as At,ScreenIcon as Ro,MotionIcon as Et,LayersIcon as X,EyeIcon as Ce,CheckIcon as Se,TrashIcon as O,PackageIcon as Ot,ReduxIcon as Vo,CrashIcon as Mt,ShieldAlertIcon as Bo,ShieldCheckIcon as Fo,ScaleBalanceIcon as Nt,VolumeMuteIcon as Ut,JsIcon as Gt,ChipIcon as _t,LayoutIcon as Jt,HourglassIcon as Yt,CodeBracketsIcon as Io,LockIcon as Kt,RefreshCcwIcon as Qt,ForwardChevronIcon as Do,ChevronDownIcon as Xt,BrainIcon as $o,SmartphoneIcon as Zt,DatabaseIcon as Ci,QrCodeIcon as Si,FilmIcon as Ho,ScreencastIcon as Ti,CameraIcon as Te,VideoCameraIcon as Cr,MicrophoneIcon as Po,GifIcon as Wo,ImageIcon as Lo,BellIcon as Ao,WebsocketIcon as Eo,SpeedometerIcon as Ri,BoltIcon as Sr}from"../NetworkIcons";import{ScreenCapture as kr}from"../../capture";import{triggerNativeHaptic as D}from"../../native/NativeInspector";import{isLocalDebugEnvironment as Vi}from"../../helpers";import{showToast as B}from"../../helpers/toast";import{pruneAllLogs as zi}from"../../helpers/memoryManager";const Bi=()=>{const{t:w}=$t(),{settingsPage:v,setSettingsPage:Oo,settingsActiveSubTab:q,setSettingsActiveSubTab:xr,tabVisibility:Y,toggleTabVisibility:Tr,defaultTab:K,setDefaultTab:Mo,isDark:Z,setIsDark:No,modalHeightPercent:Re,setModalHeightPercent:jo,modalAnimationType:Uo,setModalAnimationType:Go,showDuplicateLogs:Ne,setShowDuplicateLogs:_o,showUpdateToast:je,setShowUpdateToast:Jo,showConsoleLevels:qo,setShowConsoleLevels:Yo,closeModal:Fi,logs:Ue,consoleLogs:Ge,analyticsEvents:_e,reduxState:Ve,maxConsoleLogs:Rr,setMaxConsoleLogs:Ko,maxAnalyticsEventsLimit:Vr,setMaxAnalyticsEventsLimit:Qo,isAutoRamLimitEnabled:W,setIsAutoRamLimitEnabled:Xo,deviceFreeRamMb:Je,reduxAutoRefresh:qe,setReduxAutoRefreshState:Zo,reduxExpandDepth:et,setReduxExpandDepth:rt,setSelected:ot,setSelectedEvent:tt,setReduxState:it,crashRecords:ze,maxCrashLogs:zr,setMaxCrashLogs:Br,crashIgnoredTypes:H,setCrashIgnoredTypes:lt,crashModalTriggerPolicy:at,setCrashModalTriggerPolicyState:Fr,applyCrashPolicyPreset:Be,pushRecords:Fe,maxPushLogs:nt,setMaxPushLogs:st,clearAllPushLogs:dt,simulatePush:Ie,socketRecords:De,maxSocketLogs:ct,setMaxSocketLogs:gt,clearAllSocketLogs:pt,simulateSocket:$e,captureImageFormat:Ye,setCaptureImageFormat:Ir,captureAutoHide:L,setCaptureAutoHide:He,captureAudioMode:Dr,setCaptureAudioMode:$r,captureFps:Hr,setCaptureFps:Pr,captureScale:Ii,setCaptureScale:Di,captureBitrate:$i,setCaptureBitrate:Hi,captureMaxDurationSeconds:Pi,setCaptureMaxDurationSeconds:Wi,captureAutoGif:A,setCaptureAutoGif:Pe,captureWidgetEnabled:Q,setCaptureWidgetEnabled:Wr,peekOpacity:Lr,setPeekOpacity:yt,hiddenUrlPatterns:ee,setHiddenUrlPatterns:Ke}=Rt(),[We,vr]=Me(""),[Le,Ar]=Me(Re),[ut,Er]=Me(!1),ht=Ht(),ve=Xr.find(r=>r.code===ht)||Xr[0],Or=()=>{const r=We.trim();if(r){if(ee.includes(r)){B("Pattern already exists in filter list");return}try{new RegExp(r)}catch{}D("light"),Ke(R=>[...R,r]),vr(""),B("Hidden URL pattern added")}},bt=r=>{const R=ee[r];if(er.includes(R)){B("Default system filter cannot be removed");return}D("light"),Ke(I=>I.filter((P,E)=>E!==r)),B("Pattern removed")};Ze(()=>{Ar(Re)},[Re]);const M=jr(new _.Value(1)).current;Ze(()=>{M.setValue(0),_.spring(M,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start()},[q]);const Ae=zt(Je),N=Xe(()=>[{id:1,key:"apis",label:"APIs (Network)",category:"core",icon:"apis",desc:"HTTP/HTTPS requests, GraphQL, Axios & WebSocket inspector"},{id:2,key:"logs",label:"Console Logs",category:"core",icon:"logs",desc:"Terminal console logs, warnings, errors & stack traces"},{id:3,key:"perf",label:"Performance & FPS",category:"telemetry",icon:"perf",desc:"Live 60 FPS graph, JS event loop queue lag, memory heap & jank monitor"},{id:4,key:"analytics",label:"Analytics Logger",category:"telemetry",icon:"analytics",desc:"Firebase & custom analytics events, user properties & params"},{id:5,key:"redux",label:"Redux Inspector",category:"telemetry",icon:"redux",desc:"Store state diffing, action history & reducer timeline"},{id:6,key:"storage",label:"Storage Inspector",category:"telemetry",icon:"storage",desc:"AsyncStorage & MMKV key-value store viewer with full CRUD support"},{id:7,key:"device",label:"Device Info",category:"diagnostic",icon:"device",desc:"Hardware specs, IP address, screen metrics, UDID & runtime stats"},{id:8,key:"crash",label:"Crash Protection",category:"diagnostic",icon:"crash",desc:"Runtime exception guard, breadcrumbs & memory snapshot"},{id:9,key:"debugging",label:"Multi-Device Debugging",category:"diagnostic",icon:"debugging",desc:"QR Code bridge for direct Debug APK download & Metro live-reload sync"},{id:10,key:"media",label:"Screencast",category:"diagnostic",icon:"media",desc:"Screenshots, video recordings, audio narration & animated GIFs"},{id:11,key:"push",label:"Push Notifications",category:"telemetry",icon:"push",desc:"Universal push & local notification logger (Salesforce, FCM, APNs, Braze, Expo)"},{id:12,key:"socket",label:"WebSocket & Socket.IO",category:"telemetry",icon:"socket",desc:"Real-time WebSocket & Socket.IO message inspector, frames & event logger"}].filter(r=>r.key==="debugging"?Ur.OS==="android"&&Vi():!0),[]),mt={apis:{color:e.blue500,bg:`${e.blue500}14`,border:`${e.blue500}2E`},logs:{color:e.purple,bg:`${e.purple}14`,border:`${e.purple}2E`},perf:{color:e.purple,bg:`${e.purple}14`,border:`${e.purple}2E`},analytics:{color:e.amber600,bg:`${e.amber600}14`,border:`${e.amber600}2E`},redux:{color:e.violet600,bg:`${e.violet600}14`,border:`${e.violet600}2E`},storage:{color:e.cyan600,bg:`${e.cyan600}14`,border:`${e.cyan600}2E`},device:{color:e.emerald600,bg:`${e.emerald600}14`,border:`${e.emerald600}2E`},crash:{color:e.red600,bg:`${e.red600}14`,border:`${e.red600}2E`},debugging:{color:e.indigo600,bg:`${e.indigo600}14`,border:`${e.indigo600}2E`},media:{color:e.pink600,bg:`${e.pink600}14`,border:`${e.pink600}2E`},push:{color:e.orange600,bg:`${e.orange600}14`,border:`${e.orange600}2E`},socket:{color:e.teal600,bg:`${e.teal600}14`,border:`${e.teal600}2E`}},Ee=Xe(()=>N.filter(r=>!(r.key==="apis"||r.key==="redux"&&!Qr()||r.key==="analytics"&&!Kr())),[N]),ft=N.filter(r=>r.key==="apis"||!!Y?.[r.key]).length,re=Xe(()=>Ee.length===0?!1:Ee.every(r=>!!Y?.[r.key]),[Ee,Y]),Ct=r=>{r!=="apis"&&(D("light"),Tr(r))},wt=()=>{D("medium");const r=!re;Ee.forEach(R=>{!!Y?.[R.key]!==r&&Tr(R.key)}),B(r?"All modules enabled":"Optional modules disabled")},[Qe,Mr]=Me(!1),F=r=><C key={r.key}style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
2
2
  <V disabled={!r.onPress}onPress={r.onPress}style={{flexDirection:"row",alignItems:"center",gap:12}}>
3
3
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,borderWidth:1,borderColor:`${e.purple}2E`,alignItems:"center",justifyContent:"center"}}>
4
4
  {r.icon}
@@ -15,7 +15,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
15
15
  </V>
16
16
  {r.numericInput&&<C style={{marginTop:10,gap:6}}>
17
17
  <C style={{flexDirection:"row",alignItems:"center",backgroundColor:e.grayBackground,borderRadius:8,borderWidth:1,borderColor:e.dividerColor,paddingHorizontal:12,paddingVertical:4}}>
18
- <Ct style={{flex:1,fontFamily:S.interMedium,fontSize:14,lineHeight:18,color:e.primaryBlack,paddingVertical:6}}value={String(r.numericInput.value||"")}onChangeText={B=>{const D=parseInt(B.replace(/[^0-9]/g,""),10);if(!isNaN(D)){const H=Math.max(r.numericInput?.min??1,Math.min(r.numericInput?.max??1e4,D));r.numericInput?.onChange(H)}}}keyboardType={r.numericInput.keyboardType??"number-pad"}placeholder={r.numericInput.placeholder}placeholderTextColor={e.grayTextWeak}maxLength={6}selectTextOnFocus/>
18
+ <_r style={{flex:1,fontFamily:S.interMedium,fontSize:14,lineHeight:18,color:e.primaryBlack,paddingVertical:6}}value={String(r.numericInput.value||"")}onChangeText={R=>{const I=parseInt(R.replace(/[^0-9]/g,""),10);if(!isNaN(I)){const P=Math.max(r.numericInput?.min??1,Math.min(r.numericInput?.max??1e4,I));r.numericInput?.onChange(P)}}}keyboardType={r.numericInput.keyboardType??"number-pad"}placeholder={r.numericInput.placeholder}placeholderTextColor={e.grayTextWeak}maxLength={6}selectTextOnFocus/>
19
19
  <T style={{fontFamily:S.interBold,fontSize:11,color:e.purple,marginLeft:6}}>
20
20
  MAX
21
21
  </T>
@@ -26,157 +26,128 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
26
26
  </T>:null}
27
27
  </C>}
28
28
  {r.picker&&<C style={{flexDirection:"row",backgroundColor:e.grayBackground,borderRadius:8,padding:2.5,marginTop:10,borderWidth:1,borderColor:e.dividerColor}}>
29
- {r.picker.options.map(B=>{const D=r.picker.selectedValue===B;return<V key={String(B)}onPress={()=>r.picker.onSelect(B)}style={{flex:1,paddingVertical:6,alignItems:"center",borderRadius:6,backgroundColor:D?e.purple:"transparent"}}>
30
- <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:D?e.white:e.grayText}}>
31
- {r.picker.formatLabel?r.picker.formatLabel(B):B}
29
+ {r.picker.options.map(R=>{const I=r.picker.selectedValue===R;return<V key={String(R)}onPress={()=>r.picker.onSelect(R)}style={{flex:1,paddingVertical:6,alignItems:"center",borderRadius:6,backgroundColor:I?e.purple:"transparent"}}>
30
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:I?e.white:e.grayText}}>
31
+ {r.picker.formatLabel?r.picker.formatLabel(R):R}
32
32
  </T>
33
33
  </V>})}
34
34
  </C>}
35
- </C>,yt=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
- <G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
35
+ </C>,St=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
+ <J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
37
37
 
38
-
39
- <C style={{backgroundColor:e.primaryLight,borderRadius:13,paddingVertical:4,paddingHorizontal:4,borderWidth:1,borderColor:e.grayBorderSecondary,shadowColor:e.black,shadowOpacity:.04,shadowRadius:4,shadowOffset:{width:0,height:2}}}>
40
- <G horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:2}}>
41
- {[{key:"module",label:w("settings.modulesAndTools","Modules & Tools"),Icon:Ce,badge:`${W.filter(r=>_?.[r.key]||r.key==="apis").length}/${W.length}`},{key:"ui",label:w("settings.uiPreferences","UI Preferences"),Icon:Zr},{key:"limits",label:w("settings.ramLimits","RAM & Limits"),Icon:Vo},{key:"capture",label:w("settings.screenVideoCapture","Screen & Video Capture"),Icon:Te}].map(r=>{const B=Q===r.key,D=r.Icon;return<V key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:B}}onPress={()=>{je(),Wo(r.key)}}style={{paddingVertical:8,paddingHorizontal:14,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,borderRadius:9,backgroundColor:B?e.purple:"transparent"}}>
42
- <D color={B?e.white:e.grayText}size={13}/>
43
- <T style={{fontFamily:S.interBold,fontSize:12.5,lineHeight:16,color:B?e.white:e.grayText}}>
44
- {r.label}
45
- </T>
46
- {r.badge&&<C style={{backgroundColor:B?"rgba(255,255,255,0.25)":`${e.purple}18`,paddingHorizontal:5.5,paddingVertical:1,borderRadius:10}}>
47
- <T style={{fontFamily:S.interBold,fontSize:9.5,color:B?e.white:e.purple}}>
48
- {r.badge}
49
- </T>
50
- </C>}
51
- </V>})}
52
- </G>
38
+ <C style={{backgroundColor:e.primaryLight,borderRadius:12,padding:3,borderWidth:1,borderColor:e.grayBorderSecondary,flexDirection:"row",alignItems:"center",shadowColor:e.black,shadowOpacity:.04,shadowRadius:4,shadowOffset:{width:0,height:2},elevation:2}}>
39
+ {[{key:"module",label:w("settings.navModules","Modules"),Icon:X},{key:"ui",label:w("settings.navDisplay","Display"),Icon:Ro},{key:"limits",label:w("settings.navLimits","Limits"),Icon:$o},{key:"capture",label:w("settings.navCapture","Capture"),Icon:Te}].map(r=>{const R=q===r.key,I=r.Icon;return<V key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:R}}onPress={()=>{D("light"),Jr(),xr(r.key)}}style={{flex:1,minWidth:0,paddingVertical:8,paddingHorizontal:2,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:4,borderRadius:9,backgroundColor:R?e.purple:"transparent"}}>
40
+ <I color={R?e.white:e.grayText}size={12}/>
41
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:R?e.white:e.grayText}}numberOfLines={1}ellipsizeMode="tail">
42
+ {r.label}
43
+ </T>
44
+ </V>})}
53
45
  </C>
54
46
 
55
- {Q==="module"&&<C style={{gap:12}}>
47
+ {q==="module"&&<_.View style={{gap:10,opacity:M,transform:[{translateY:M.interpolate({inputRange:[0,1],outputRange:[10,0]})}]}}>
56
48
 
57
- <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.primaryLight,borderRadius:12,paddingVertical:10,paddingHorizontal:14,borderWidth:1,borderColor:E?`${e.purple}40`:e.grayBorderSecondary,shadowColor:e.black,shadowOpacity:.02,shadowRadius:3,shadowOffset:{width:0,height:1}}}>
58
- <V accessible={!0}accessibilityRole="checkbox"accessibilityLabel="Toggle Select All Modules"accessibilityState={{checked:E}}onPress={Or}style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
59
- <C style={{width:22,height:22,borderRadius:6,borderWidth:E?0:1.8,borderColor:e.grayBorderSecondary,backgroundColor:E?e.purple:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
60
- {E&&<K size={12}color={e.white}/>}
61
- </C>
62
- <C>
63
- <T style={{fontFamily:S.interBold,fontSize:13,color:e.primaryBlack}}>
64
- {E?"Deselect All Modules":"Select All Modules"}
65
- </T>
66
- <T style={{fontFamily:S.interRegular,fontSize:10.5,color:e.grayText,marginTop:1}}>
67
- {Ar} of {W.length} modules active
49
+ <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:4,paddingVertical:2}}>
50
+ <C style={{flexDirection:"row",alignItems:"center",gap:6}}>
51
+ <T style={{fontFamily:S.interBold,fontSize:12.5,lineHeight:16,color:e.primaryBlack}}>
52
+ Active Modules
53
+ </T>
54
+ <C style={{backgroundColor:`${e.purple}14`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:10,borderWidth:1,borderColor:`${e.purple}25`}}>
55
+ <T style={{fontFamily:S.interBold,fontSize:9.5,color:e.purple}}>
56
+ {ft} of {N.length}
68
57
  </T>
69
58
  </C>
70
- </V>
59
+ </C>
71
60
 
72
- <V onPress={Or}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:E?`${e.purple}14`:e.purple,borderWidth:1,borderColor:E?`${e.purple}30`:"transparent"}}>
73
- <T style={{fontFamily:S.interBold,fontSize:11,color:E?e.purple:e.white}}>
74
- {E?"Deselect All":"Select All"}
61
+ <V onPress={wt}hitSlop={6}style={{paddingHorizontal:10,paddingVertical:4.5,borderRadius:7,backgroundColor:re?`${e.purple}14`:e.purple,borderWidth:1,borderColor:re?`${e.purple}30`:"transparent"}}>
62
+ <T style={{fontFamily:S.interBold,fontSize:11,color:re?e.purple:e.white}}>
63
+ {re?"Deselect All":"Select All"}
75
64
  </T>
76
65
  </V>
77
66
  </C>
78
67
 
79
68
 
80
- <C style={{gap:10}}>
81
- {W.map(r=>{const B=Jr(),D=_r(),H=r.key==="redux"&&!B||r.key==="analytics"&&!D,L=r.key==="apis"||H,z=r.key==="apis"||!!_?.[r.key]&&!H,Se=r.key==="apis"?Je.length>0?`${Je.length} requests`:"":r.key==="logs"?qe.length>0?`${qe.length} logs \u2022 Limit: ${Qe}`:"":r.key==="crash"?Ve&&Ve.length>0?`${Ve.length} crashes recorded \u2022 Crash Guard`:"":r.key==="analytics"?Ke.length>0?`${Ke.length} events logged`:"":r.key==="redux"?ze&&Object.keys(ze).length>0?`${Object.keys(ze).length} slices \u2022 Depth: ${Br}`:"":r.key==="push"?Fe&&Fe.length>0?`${Fe.length} notifications logged`:"":r.key==="socket"&&De&&De.length>0?`${De.length} connections active`:"";return<C key={r.key}style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1.5,borderColor:z?`${e.purple}38`:e.grayBorderSecondary,padding:14,gap:10,shadowColor:e.black,shadowOpacity:z?.04:.02,shadowRadius:5,shadowOffset:{width:0,height:2}}}>
69
+ <C style={{gap:8}}>
70
+ {N.map(r=>{const R=Qr(),I=Kr(),P=r.key==="redux"&&!R||r.key==="analytics"&&!I,E=r.key==="apis"||P,z=r.key==="apis"||!!Y?.[r.key]&&!P,$=mt[r.key]||{color:e.purple,bg:`${e.purple}14`,border:`${e.purple}2E`},G=r.key==="apis"||r.key==="logs"||r.key==="analytics"||r.key==="redux"||r.key==="crash"||r.key==="push"||r.key==="socket",oe=r.key==="apis"?Ue.length>0?`${Ue.length} requests`:"":r.key==="logs"?Ge.length>0?`${Ge.length} logs`:"":r.key==="crash"?ze&&ze.length>0?`${ze.length} crashes`:"":r.key==="analytics"?_e.length>0?`${_e.length} events`:"":r.key==="redux"?Ve&&Object.keys(Ve).length>0?`${Object.keys(Ve).length} slices`:"":r.key==="push"?Fe&&Fe.length>0?`${Fe.length} notifications`:"":r.key==="socket"&&De&&De.length>0?`${De.length} sockets`:"";return<C key={r.key}style={{backgroundColor:e.primaryLight,borderRadius:13,borderWidth:1,borderColor:z?`${$.color}38`:e.grayBorderSecondary,padding:12,gap:8,shadowColor:e.black,shadowOpacity:z?.03:.01,shadowRadius:3,shadowOffset:{width:0,height:1.5},elevation:1.5}}>
82
71
 
83
- <C style={{flexDirection:"row",alignItems:"flex-start",gap:10}}>
72
+ <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
84
73
 
85
- <V accessible={!0}accessibilityRole="checkbox"accessibilityLabel={`Select ${r.label}`}accessibilityState={{checked:z,disabled:L}}disabled={L}onPress={()=>{L||Ae(q=>({...q,[r.key]:!q[r.key]}))}}hitSlop={8}style={{width:22,height:22,borderRadius:6,borderWidth:z?0:1.8,borderColor:L?e.dividerColor:e.grayBorderSecondary,backgroundColor:r.key==="apis"?`${e.blue500}22`:z?e.purple:e.grayBackground,alignItems:"center",justifyContent:"center",marginTop:7,shadowColor:z?e.purple:"transparent",shadowOpacity:z?.25:0,shadowRadius:2,elevation:z?2:0}}>
86
- {r.key==="apis"?<K size={12}color={e.blue500}/>:z?<K size={12}color={e.white}/>:L?<St width={10}height={10}viewBox="0 0 24 24"fill="none">
87
- <Gr d="M7 10V7a5 5 0 0 1 10 0v3"stroke={e.grayText}strokeWidth="2.2"strokeLinecap="round"/>
88
- <Gr d="M5 10h14v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z"fill={e.grayText}/>
89
- </St>:null}
90
- </V>
74
+ <C style={{width:38,height:38,borderRadius:10,backgroundColor:z?$.bg:e.grayBackground,borderWidth:1,borderColor:z?$.border:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",flexShrink:0}}>
75
+ {r.icon==="apis"&&<Co color={z?$.color:e.grayTextWeak}size={16}/>}
76
+ {r.icon==="logs"&&<So color={z?$.color:e.grayTextWeak}size={16}/>}
77
+ {r.icon==="perf"&&<Ri color={z?$.color:e.grayTextWeak}size={16}/>}
78
+ {r.icon==="crash"&&<Mt color={z?$.color:e.grayTextWeak}size={16}/>}
79
+ {r.icon==="analytics"&&<To color={z?$.color:e.grayTextWeak}size={16}/>}
80
+ {r.icon==="redux"&&<Vo color={z?$.color:e.grayTextWeak}size={16}/>}
81
+ {r.icon==="device"&&<Zt color={z?$.color:e.grayTextWeak}size={16}/>}
82
+ {r.icon==="storage"&&<Ci color={z?$.color:e.grayTextWeak}size={16}/>}
83
+ {r.icon==="debugging"&&<Si color={z?$.color:e.grayTextWeak}size={16}/>}
84
+ {r.icon==="media"&&<Ti color={z?$.color:e.grayTextWeak}size={16}/>}
85
+ {r.icon==="push"&&<Ao color={z?$.color:e.grayTextWeak}size={16}/>}
86
+ {r.icon==="socket"&&<Eo color={z?$.color:e.grayTextWeak}size={16}/>}
87
+ </C>
91
88
 
92
89
 
93
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`${r.label} settings`}disabled={H}onPress={()=>{je(),xr(r.key)}}style={{flex:1,flexDirection:"row",alignItems:"flex-start",gap:10}}>
94
-
95
- <C style={{width:36,height:36,borderRadius:10,backgroundColor:L?`${e.grayBorderSecondary}4D`:z?`${e.purple}14`:e.grayBackground,borderWidth:1,borderColor:L?e.dividerColor:z?`${e.purple}33`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",marginTop:1}}>
96
- {r.icon==="apis"&&<Qr color={z?e.purple:e.grayTextWeak}size={16}/>}
97
- {r.icon==="logs"&&<Xr color={z?e.purple:e.grayTextWeak}size={16}/>}
98
- {r.icon==="crash"&&<At color={z?e.purple:e.grayTextWeak}size={16}/>}
99
- {r.icon==="analytics"&&<Yr color={z?e.purple:e.grayTextWeak}size={16}/>}
100
- {r.icon==="redux"&&<Co color={z?e.purple:e.grayTextWeak}size={16}/>}
101
- {r.icon==="device"&&<Qt color={z?e.purple:e.grayTextWeak}size={16}/>}
102
- {r.icon==="storage"&&<Xt color={z?e.purple:e.grayTextWeak}size={16}/>}
103
- {r.icon==="debugging"&&<Yt color={z?e.purple:e.grayTextWeak}size={16}/>}
104
- {r.icon==="media"&&<Zt color={z?e.purple:e.grayTextWeak}size={16}/>}
105
- {r.icon==="push"&&<Ho color={z?e.purple:e.grayTextWeak}size={16}/>}
106
- {r.icon==="socket"&&<Po color={z?e.purple:e.grayTextWeak}size={16}/>}
107
- </C>
90
+ <C style={{flex:1,minWidth:0,justifyContent:"center"}}>
91
+ <C style={{flexDirection:"row",alignItems:"center",gap:5}}>
92
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:E?e.grayText:e.primaryBlack}}numberOfLines={1}>
93
+ {r.label}
94
+ </T>
108
95
 
109
-
110
- <C style={{flex:1,gap:2}}>
111
- <C style={{flexDirection:"row",alignItems:"center",gap:6,flexWrap:"wrap"}}>
112
- <C style={{minWidth:22,height:22,paddingHorizontal:5,borderRadius:11,backgroundColor:z?`${e.purple}1C`:`${e.grayBorderSecondary}80`,borderWidth:1,borderColor:z?`${e.purple}44`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center"}}>
113
- <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:z?e.purple:e.grayText}}>
114
- #{r.id}
96
+
97
+ {r.key==="apis"&&<C style={{backgroundColor:`${e.blue500}14`,paddingHorizontal:4.5,paddingVertical:1,borderRadius:4,borderWidth:1,borderColor:`${e.blue500}33`}}>
98
+ <T style={{fontFamily:S.interBold,fontSize:7.5,lineHeight:10,color:e.blue500,letterSpacing:.3}}>
99
+ CORE
115
100
  </T>
116
- </C>
117
- <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:L?e.grayText:e.primaryBlack}}>
118
- {r.label}
119
- </T>
101
+ </C>}
120
102
 
121
-
122
- {r.key===X&&!H&&<C style={{flexDirection:"row",alignItems:"center",backgroundColor:`${e.purple}14`,borderRadius:12,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.purple}2E`,gap:3}}>
123
- <C style={{width:4,height:4,borderRadius:2,backgroundColor:e.purple}}/>
124
- <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.purple,letterSpacing:.4}}>
125
- {w("settings.defaultBadge")}
126
- </T>
127
- </C>}
128
-
129
-
130
- {r.key==="apis"?<C style={{backgroundColor:`${e.blue500}14`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.blue500}33`}}>
131
- <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.blue500,letterSpacing:.3}}>
132
- {w("settings.coreBadge")}
133
- </T>
134
- </C>:H?<C style={{backgroundColor:`${e.amber500}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.amber500}35`}}>
135
- <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.amber700,letterSpacing:.3}}>
136
- {r.key==="redux"?w("settings.notConnectedBadge"):w("settings.notDetectedBadge")}
137
- </T>
138
- </C>:z?<C style={{backgroundColor:`${e.liveGreen}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.liveGreen}38`}}>
139
- <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.green700,letterSpacing:.3}}>
140
- {w("settings.activeBadge")}
141
- </T>
142
- </C>:<C style={{backgroundColor:`${e.grayTextWeak}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.grayTextWeak}2E`}}>
143
- <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.grayTextWeak,letterSpacing:.3}}>
144
- {w("settings.dormantBadge")}
145
- </T>
146
- </C>}
147
- </C>
148
-
149
- <T style={{fontFamily:S.interRegular,fontSize:11,color:e.grayText,lineHeight:15,marginTop:1}}>
150
- {r.desc}
151
- </T>
103
+ {r.key===K&&<C style={{backgroundColor:`${e.purple}14`,paddingHorizontal:4.5,paddingVertical:1,borderRadius:4,borderWidth:1,borderColor:`${e.purple}2E`}}>
104
+ <T style={{fontFamily:S.interBold,fontSize:7.5,lineHeight:10,color:e.purple,letterSpacing:.3}}>
105
+ DEFAULT
106
+ </T>
107
+ </C>}
108
+
109
+ {P&&<C style={{backgroundColor:`${e.amber500}14`,paddingHorizontal:4.5,paddingVertical:1,borderRadius:4,borderWidth:1,borderColor:`${e.amber500}33`}}>
110
+ <T style={{fontFamily:S.interBold,fontSize:7.5,lineHeight:10,color:e.amber700,letterSpacing:.3}}>
111
+ OFFLINE
112
+ </T>
113
+ </C>}
152
114
  </C>
153
- </V>
115
+
116
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayTextWeak,marginTop:1.5}}numberOfLines={1}ellipsizeMode="tail">
117
+ {r.desc}
118
+ </T>
119
+ </C>
120
+
121
+
122
+ <Tt value={z}disabled={E}onValueChange={()=>Ct(r.key)}trackColor={{false:e.grayBorderSecondary,true:e.purple}}thumbColor={e.white}ios_backgroundColor={e.grayBorderSecondary}style={{transform:[{scaleX:.8},{scaleY:.8}]}}/>
154
123
  </C>
155
124
 
156
125
 
157
- {!H&&<C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor}}>
126
+ {(oe||G||r.key==="media")&&<C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:7,borderTopWidth:1,borderTopColor:`${e.dividerColor}99`,marginTop:1}}>
158
127
 
159
- {Se&&Se.trim().length>0?<C style={{flexDirection:"row",alignItems:"center",gap:6,flex:1}}>
160
- <C style={{width:6,height:6,borderRadius:3,backgroundColor:z?e.liveGreen:e.grayTextWeak}}/>
161
- <T style={{fontFamily:S.interMedium,fontSize:11,color:e.grayText,lineHeight:14}}>
162
- {Se}
163
- </T>
164
- </C>:<C style={{flex:1}}/>}
128
+ <C style={{flexDirection:"row",alignItems:"center",gap:5,flex:1}}>
129
+ {oe?<C style={{flexDirection:"row",alignItems:"center",gap:5}}>
130
+ <C style={{width:5.5,height:5.5,borderRadius:3,backgroundColor:z?$.color:e.grayTextWeak}}/>
131
+ <T style={{fontFamily:S.interMedium,fontSize:10.5,lineHeight:14,color:z?e.grayTextStrong:e.grayTextWeak}}>
132
+ {oe}
133
+ </T>
134
+ </C>:<C/>}
135
+ </C>
165
136
 
166
137
 
167
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`Configure ${r.label} settings`}onPress={()=>{je(),xr(r.key)}}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:`${e.purple}12`,paddingHorizontal:10,paddingVertical:5,borderRadius:8,borderWidth:1,borderColor:`${e.purple}26`}}>
168
- <Ht color={e.purple}size={11}/>
169
- <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.purple}}>
170
- {w("settings.configure")}
171
- </T>
172
- <Bo color={e.purple}size={9}/>
173
- </V>
138
+ {(G||r.key==="media")&&<V onPress={()=>{D("light"),r.key==="media"?(Jr(),xr("capture")):Oo(r.key)}}hitSlop={6}style={{flexDirection:"row",alignItems:"center",gap:3.5,paddingHorizontal:8.5,paddingVertical:4,borderRadius:6.5,backgroundColor:`${$.color}14`,borderWidth:1,borderColor:`${$.color}2A`}}>
139
+ <Wt color={$.color}size={10}/>
140
+ <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:$.color}}>
141
+ {w("settings.configure","Configure")}
142
+ </T>
143
+ <Do color={$.color}size={8}/>
144
+ </V>}
174
145
  </C>}
175
146
  </C>})}
176
147
  </C>
177
- </C>}
148
+ </_.View>}
178
149
 
179
- {Q==="ui"&&<C style={{gap:14}}>
150
+ {q==="ui"&&<_.View style={{gap:14,opacity:M,transform:[{translateY:M.interpolate({inputRange:[0,1],outputRange:[10,0]})}]}}>
180
151
 
181
152
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
182
153
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
@@ -186,7 +157,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
186
157
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
187
158
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
188
159
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
189
- {we?<Pt color={e.purple}size={15}/>:<Wt color={e.purple}size={15}/>}
160
+ {Z?<Lt color={e.purple}size={15}/>:<At color={e.purple}size={15}/>}
190
161
  </C>
191
162
  <C style={{flex:1}}>
192
163
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -198,7 +169,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
198
169
  </C>
199
170
  </C>
200
171
 
201
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:we}}onPress={()=>{const r=!we;Ao(r),xt(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:we?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:we?"flex-end":"flex-start"}}>
172
+ <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:Z}}onPress={()=>{const r=!Z;No(r),Vt(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:Z?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Z?"flex-end":"flex-start"}}>
202
173
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
203
174
  </V>
204
175
  </C>
@@ -209,7 +180,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
209
180
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
210
181
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
211
182
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:`${e.blue600}14`,alignItems:"center",justifyContent:"center"}}>
212
- <Kr color={e.blue600}size={15}/>
183
+ <Zr color={e.blue600}size={15}/>
213
184
  </C>
214
185
  <C style={{flex:1}}>
215
186
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -221,12 +192,12 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
221
192
  </C>
222
193
  </C>
223
194
 
224
- <V onPress={()=>{v("light"),Lr(!0)}}style={{flexDirection:"row",alignItems:"center",backgroundColor:e.purpleShade50,paddingHorizontal:10,paddingVertical:6,borderRadius:8,gap:5,borderWidth:1,borderColor:`${e.purple}20`}}>
225
- {$e?.flag?<T style={{fontSize:13}}>{$e.flag}</T>:<Kr size={14}color={e.purple}/>}
195
+ <V onPress={()=>{D("light"),Er(!0)}}style={{flexDirection:"row",alignItems:"center",backgroundColor:e.purpleShade50,paddingHorizontal:10,paddingVertical:6,borderRadius:8,gap:5,borderWidth:1,borderColor:`${e.purple}20`}}>
196
+ {ve?.flag?<T style={{fontSize:13}}>{ve.flag}</T>:<Zr size={14}color={e.purple}/>}
226
197
  <T style={{fontFamily:S.interSemiBold,fontSize:12,color:e.purple}}>
227
- {$e?.nativeName||$e?.name||"English"}
198
+ {ve?.nativeName||ve?.name||"English"}
228
199
  </T>
229
- <Bo size={11}color={e.purple}/>
200
+ <Do size={11}color={e.purple}/>
230
201
  </V>
231
202
  </C>
232
203
  </C>
@@ -242,7 +213,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
242
213
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
243
214
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
244
215
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
245
- <Zr color={e.purple}size={15}/>
216
+ <Ro color={e.purple}size={15}/>
246
217
  </C>
247
218
  <C style={{flex:1}}>
248
219
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -254,16 +225,16 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
254
225
  </C>
255
226
  </C>
256
227
 
257
- {We!==Be&&<V onPress={()=>{Oo(We)}}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:e.purple,paddingHorizontal:10,paddingVertical:5,borderRadius:7,shadowColor:e.purple,shadowOffset:{width:0,height:1},shadowOpacity:.28,shadowRadius:2,elevation:2}}>
258
- <K size={11}color={e.white}/>
228
+ {Le!==Re&&<V onPress={()=>{jo(Le)}}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:e.purple,paddingHorizontal:10,paddingVertical:5,borderRadius:7,shadowColor:e.purple,shadowOffset:{width:0,height:1},shadowOpacity:.28,shadowRadius:2,elevation:2}}>
229
+ <Se size={11}color={e.white}/>
259
230
  <T style={{fontFamily:S.interBold,fontSize:11,color:e.white}}>
260
- Save ({We}%)
231
+ Save ({Le}%)
261
232
  </T>
262
233
  </V>}
263
234
  </C>
264
235
 
265
236
  <C style={{marginTop:6}}>
266
- <Ur value={We}onValueChange={$r}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
237
+ <Yr value={Le}onValueChange={Ar}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
267
238
  </C>
268
239
  </C>
269
240
 
@@ -274,7 +245,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
274
245
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
275
246
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
276
247
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:"rgba(6, 182, 212, 0.12)",alignItems:"center",justifyContent:"center"}}>
277
- <Ge color={"#06B6D4"}size={15}/>
248
+ <Ce color={"#06B6D4"}size={15}/>
278
249
  </C>
279
250
  <C style={{flex:1}}>
280
251
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -288,13 +259,13 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
288
259
 
289
260
  <C style={{backgroundColor:"rgba(6, 182, 212, 0.14)",paddingHorizontal:8,paddingVertical:3,borderRadius:6,borderWidth:1,borderColor:"rgba(6, 182, 212, 0.30)"}}>
290
261
  <T style={{fontFamily:S.interBold,fontSize:12,color:"#06B6D4"}}>
291
- {Wr.toFixed(1)}
262
+ {Lr.toFixed(1)}
292
263
  </T>
293
264
  </C>
294
265
  </C>
295
266
 
296
267
  <C style={{marginTop:6}}>
297
- <Ur value={Wr}onValueChange={r=>{const B=Math.round(r*10)/10;dt(B)}}min={.1}max={1}step={.1}quickPresets={[.1,.3,.5,.7,1]}formatLabel={r=>r.toFixed(1)}/>
268
+ <Yr value={Lr}onValueChange={r=>{const R=Math.round(r*10)/10;yt(R)}}min={.1}max={1}step={.1}quickPresets={[.1,.3,.5,.7,1]}formatLabel={r=>r.toFixed(1)}/>
298
269
  </C>
299
270
  </C>
300
271
 
@@ -304,7 +275,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
304
275
  <C style={{gap:8}}>
305
276
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
306
277
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
307
- <$t color={e.purple}size={15}/>
278
+ <Et color={e.purple}size={15}/>
308
279
  </C>
309
280
  <C style={{flex:1}}>
310
281
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -317,8 +288,8 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
317
288
  </C>
318
289
 
319
290
  <C style={{flexDirection:"row",backgroundColor:e.grayBackground,borderRadius:10,padding:3,borderWidth:1,borderColor:e.dividerColor}}>
320
- {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const B=Mo===r.key;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:B}}onPress={()=>Eo(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:B?e.purple:"transparent"}}>
321
- <T style={{fontFamily:S.interBold,fontSize:11.5,lineHeight:15,color:B?e.white:e.grayText}}>
291
+ {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const R=Uo===r.key;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:R}}onPress={()=>Go(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:R?e.purple:"transparent"}}>
292
+ <T style={{fontFamily:S.interBold,fontSize:11.5,lineHeight:15,color:R?e.white:e.grayText}}>
322
293
  {r.label}
323
294
  </T>
324
295
  </V>})}
@@ -334,7 +305,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
334
305
 
335
306
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
336
307
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
337
- <Ce color={e.purple}size={15}/>
308
+ <X color={e.purple}size={15}/>
338
309
  </C>
339
310
  <C style={{flex:1}}>
340
311
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -348,11 +319,11 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
348
319
 
349
320
 
350
321
  <C style={{marginTop:6,gap:6}}>
351
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${W.find(r=>r.key===X)?.label||"APIs"}`}onPress={()=>Mr(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:er?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
322
+ <V accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${N.find(r=>r.key===K)?.label||"APIs"}`}onPress={()=>Mr(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:Qe?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
352
323
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
353
324
  <C style={{width:8,height:8,borderRadius:4,backgroundColor:e.purple}}/>
354
325
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
355
- {W.find(r=>r.key===X)?`#${W.find(r=>r.key===X)?.id} ${W.find(r=>r.key===X)?.label}`:"#1 APIs (Network)"}
326
+ {N.find(r=>r.key===K)?`#${N.find(r=>r.key===K)?.id} ${N.find(r=>r.key===K)?.label}`:"#1 APIs (Network)"}
356
327
  </T>
357
328
  <C style={{backgroundColor:`${e.purple}14`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:6}}>
358
329
  <T style={{fontFamily:S.interBold,fontSize:8.5,color:e.purple}}>
@@ -361,21 +332,21 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
361
332
  </C>
362
333
  </C>
363
334
 
364
- <C style={{transform:[{rotate:er?"180deg":"0deg"}]}}>
365
- <Kt color={e.grayText}size={15}/>
335
+ <C style={{transform:[{rotate:Qe?"180deg":"0deg"}]}}>
336
+ <Xt color={e.grayText}size={15}/>
366
337
  </C>
367
338
  </V>
368
339
 
369
340
 
370
- {er&&<C style={{backgroundColor:e.primaryLight,borderRadius:10,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",shadowColor:e.black,shadowOpacity:.08,shadowRadius:6,shadowOffset:{width:0,height:3},elevation:4}}>
371
- {W.filter(r=>r.key==="apis"||_?.[r.key]||R?.[r.key]).map((r,B,D)=>{const H=X===r.key,L=B===D.length-1;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Lo(r.key),Mr(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:H?`${e.purple}0F`:"transparent",borderBottomWidth:L?0:1,borderBottomColor:e.dividerColor}}>
341
+ {Qe&&<C style={{backgroundColor:e.primaryLight,borderRadius:10,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",shadowColor:e.black,shadowOpacity:.08,shadowRadius:6,shadowOffset:{width:0,height:3},elevation:4}}>
342
+ {N.filter(r=>r.key==="apis"||Y?.[r.key]).map((r,R,I)=>{const P=K===r.key,E=R===I.length-1;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Mo(r.key),Mr(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:P?`${e.purple}0F`:"transparent",borderBottomWidth:E?0:1,borderBottomColor:e.dividerColor}}>
372
343
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
373
- <C style={{width:6,height:6,borderRadius:3,backgroundColor:H?e.purple:e.grayTextWeak}}/>
374
- <T style={{fontFamily:H?S.interBold:S.interMedium,fontSize:13,color:H?e.purple:e.primaryBlack}}>
344
+ <C style={{width:6,height:6,borderRadius:3,backgroundColor:P?e.purple:e.grayTextWeak}}/>
345
+ <T style={{fontFamily:P?S.interBold:S.interMedium,fontSize:13,color:P?e.purple:e.primaryBlack}}>
375
346
  #{r.id} {r.label}
376
347
  </T>
377
348
  </C>
378
- {H&&<K size={14}color={e.purple}/>}
349
+ {P&&<Se size={14}color={e.purple}/>}
379
350
  </V>})}
380
351
  </C>}
381
352
  </C>
@@ -390,7 +361,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
390
361
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
391
362
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1,marginRight:10}}>
392
363
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
393
- <Lt color={e.purple}size={15}/>
364
+ <Ot color={e.purple}size={15}/>
394
365
  </C>
395
366
  <C style={{flex:1}}>
396
367
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -403,14 +374,14 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
403
374
  </C>
404
375
  </C>
405
376
 
406
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:_e}}onPress={()=>jo(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:_e?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:_e?"flex-end":"flex-start"}}>
377
+ <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:je}}onPress={()=>Jo(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:je?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:je?"flex-end":"flex-start"}}>
407
378
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
408
379
  </V>
409
380
  </C>
410
381
  </C>
411
- </C>}
382
+ </_.View>}
412
383
 
413
- {Q==="limits"&&<C style={{gap:14}}>
384
+ {q==="limits"&&<_.View style={{gap:14,opacity:M,transform:[{translateY:M.interpolate({inputRange:[0,1],outputRange:[10,0]})}]}}>
414
385
 
415
386
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
416
387
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
@@ -421,7 +392,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
421
392
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
422
393
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
423
394
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
424
- <Vo color={e.purple}size={16}/>
395
+ <$o color={e.purple}size={16}/>
425
396
  </C>
426
397
  <C style={{flex:1}}>
427
398
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -434,7 +405,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
434
405
  </C>
435
406
  </C>
436
407
 
437
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:$}}onPress={()=>Ko(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:$?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:$?"flex-end":"flex-start"}}>
408
+ <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:W}}onPress={()=>Xo(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:W?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:W?"flex-end":"flex-start"}}>
438
409
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
439
410
  </V>
440
411
  </C>
@@ -443,20 +414,20 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
443
414
 
444
415
 
445
416
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
446
- <C style={{width:32,height:32,borderRadius:8,backgroundColor:$?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
447
- <Qr color={$?e.purple:e.grayTextWeak}size={15}/>
417
+ <C style={{width:32,height:32,borderRadius:8,backgroundColor:W?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
418
+ <Co color={W?e.purple:e.grayTextWeak}size={15}/>
448
419
  </C>
449
420
  <C style={{flex:1}}>
450
- <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:$?e.primaryBlack:e.grayText}}>
421
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:W?e.primaryBlack:e.grayText}}>
451
422
  Detected Available RAM
452
423
  </T>
453
424
  <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
454
- {Xe} MB available on device
425
+ {Je} MB available on device
455
426
  </T>
456
427
  </C>
457
- <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:$?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:$?`${e.purple}26`:e.dividerColor}}>
458
- <T style={{fontFamily:S.interBold,fontSize:12,lineHeight:15,color:$?e.purple:e.grayText}}>
459
- {Xe} MB
428
+ <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:W?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:W?`${e.purple}26`:e.dividerColor}}>
429
+ <T style={{fontFamily:S.interBold,fontSize:12,lineHeight:15,color:W?e.purple:e.grayText}}>
430
+ {Je} MB
460
431
  </T>
461
432
  </C>
462
433
  </C>
@@ -465,17 +436,17 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
465
436
  <C style={{marginTop:4,paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor,gap:6}}>
466
437
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
467
438
  <T style={{fontFamily:S.interBold,fontSize:11.5,lineHeight:15,color:e.purple}}>
468
- Profile: {Le.profileName}
439
+ Profile: {Ae.profileName}
469
440
  </T>
470
- <C style={{backgroundColor:$?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
471
- <T style={{fontFamily:S.interBold,fontSize:9.5,color:$?e.emerald500:e.purple}}>
472
- {$?"AUTO-TUNED":"MANUAL"}
441
+ <C style={{backgroundColor:W?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
442
+ <T style={{fontFamily:S.interBold,fontSize:9.5,color:W?e.emerald500:e.purple}}>
443
+ {W?"AUTO-TUNED":"MANUAL"}
473
444
  </T>
474
445
  </C>
475
446
  </C>
476
447
 
477
448
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:8,marginTop:4}}>
478
- {[{label:"Logs",value:$?Le.maxConsoleLogs:Qe,color:e.sky500},{label:"Analytics",value:$?Le.maxAnalyticsEvents:Tr,color:e.purple},{label:"Crash",value:$?Le.maxCrashRecords:zr,color:e.errorColor}].map(r=><C key={r.label}style={{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${r.color}14`,borderWidth:1,borderColor:`${r.color}33`}}>
449
+ {[{label:"Logs",value:W?Ae.maxConsoleLogs:Rr,color:e.sky500},{label:"Analytics",value:W?Ae.maxAnalyticsEvents:Vr,color:e.purple},{label:"Crash",value:W?Ae.maxCrashRecords:zr,color:e.errorColor}].map(r=><C key={r.label}style={{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${r.color}14`,borderWidth:1,borderColor:`${r.color}33`}}>
479
450
  <T style={{fontFamily:S.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
480
451
  {r.label}:
481
452
  </T>
@@ -495,7 +466,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
495
466
 
496
467
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
497
468
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:`${e.emerald500}14`,alignItems:"center",justifyContent:"center"}}>
498
- <So color={e.emerald500}size={15}/>
469
+ <Bo color={e.emerald500}size={15}/>
499
470
  </C>
500
471
  <C style={{flex:1}}>
501
472
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -525,16 +496,16 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
525
496
  {w("settings.memory.manualDescription","Prune older entries across all log stores and free RAM")}
526
497
  </T>
527
498
  </C>
528
- <V onPress={()=>{const r=Si("manual",.5);I(w("settings.memory.pruned",{count:r.totalPruned},`Pruned ${r.totalPruned} items from memory`))}}style={{backgroundColor:e.purple,paddingHorizontal:12,paddingVertical:8,borderRadius:8,flexDirection:"row",alignItems:"center",gap:5}}>
529
- <U size={13}color={e.white}/>
499
+ <V onPress={()=>{const r=zi("manual",.5);B(w("settings.memory.pruned",{count:r.totalPruned},`Pruned ${r.totalPruned} items from memory`))}}style={{backgroundColor:e.purple,paddingHorizontal:12,paddingVertical:8,borderRadius:8,flexDirection:"row",alignItems:"center",gap:5}}>
500
+ <O size={13}color={e.white}/>
530
501
  <T style={{fontFamily:S.interBold,fontSize:11.5,color:e.white}}>
531
502
  Prune Now
532
503
  </T>
533
504
  </V>
534
505
  </C>
535
506
  </C>
536
- </C>}
537
- {Q==="capture"&&<C style={{gap:16}}>
507
+ </_.View>}
508
+ {q==="capture"&&<_.View style={{gap:16,opacity:M,transform:[{translateY:M.interpolate({inputRange:[0,1],outputRange:[10,0]})}]}}>
538
509
 
539
510
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
540
511
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
@@ -551,9 +522,9 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
551
522
  </C>
552
523
  </C>
553
524
 
554
- {F({icon:<Te color={e.purple}size={16}/>,label:w("settings.media.enableFloatingWidget","Enable Floating Widget"),description:w("settings.media.enableFloatingWidgetDesc","Shows draggable quick screenshot & video recording button on screen"),isLast:!0,onPress:()=>{v("light"),Pr(r=>!r),I(`Capture widget: ${Y?"OFF":"ON"}`)},right:<V onPress={()=>{v("light"),Pr(r=>!r),I(`Capture widget: ${Y?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:Y?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:Y?`${e.emerald500}4D`:`${e.grayText}33`}}>
555
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:Y?e.emerald500:e.grayText}}>
556
- {Y?w("settings.media.enabled","ON"):"OFF"}
525
+ {F({icon:<Te color={e.purple}size={16}/>,label:w("settings.media.enableFloatingWidget","Enable Floating Widget"),description:w("settings.media.enableFloatingWidgetDesc","Shows draggable quick screenshot & video recording button on screen"),isLast:!0,onPress:()=>{D("light"),Wr(r=>!r),B(`Capture widget: ${Q?"OFF":"ON"}`)},right:<V onPress={()=>{D("light"),Wr(r=>!r),B(`Capture widget: ${Q?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:Q?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:Q?`${e.emerald500}4D`:`${e.grayText}33`}}>
526
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:Q?e.emerald500:e.grayText}}>
527
+ {Q?w("settings.media.enabled","ON"):"OFF"}
557
528
  </T>
558
529
  </V>})}
559
530
  </C>
@@ -574,17 +545,17 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
574
545
  </C>
575
546
  </C>
576
547
 
577
- {F({icon:<Do color={e.purple}size={16}/>,label:w("settings.media.imageFormat","Image Format"),description:w("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:5}}>
578
- {["png","jpeg","webp"].map(r=>{const B=Ze===r;return<V key={r}onPress={()=>{v("light"),Fr(r),I(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
579
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
548
+ {F({icon:<Lo color={e.purple}size={16}/>,label:w("settings.media.imageFormat","Image Format"),description:w("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:5}}>
549
+ {["png","jpeg","webp"].map(r=>{const R=Ye===r;return<V key={r}onPress={()=>{D("light"),Ir(r),B(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
550
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
580
551
  {r.toUpperCase()}
581
552
  </T>
582
553
  </V>})}
583
554
  </C>})}
584
555
 
585
- {F({icon:<Ge color={e.purple}size={16}/>,label:w("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:w("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,onPress:()=>{v("light"),ve(r=>!r),I(`Auto-hide overlay: ${A?"OFF":"ON"}`)},right:<V onPress={()=>{v("light"),ve(r=>!r),I(`Auto-hide overlay: ${A?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:A?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:A?`${e.emerald500}4D`:`${e.grayText}33`}}>
586
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:A?e.emerald500:e.grayText}}>
587
- {A?w("settings.media.enabled","ON"):"OFF"}
556
+ {F({icon:<Ce color={e.purple}size={16}/>,label:w("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:w("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,onPress:()=>{D("light"),He(r=>!r),B(`Auto-hide overlay: ${L?"OFF":"ON"}`)},right:<V onPress={()=>{D("light"),He(r=>!r),B(`Auto-hide overlay: ${L?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:L?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:L?`${e.emerald500}4D`:`${e.grayText}33`}}>
557
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:L?e.emerald500:e.grayText}}>
558
+ {L?w("settings.media.enabled","ON"):"OFF"}
588
559
  </T>
589
560
  </V>})}
590
561
  </C>
@@ -605,82 +576,118 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
605
576
  </C>
606
577
  </C>
607
578
 
608
- {F({icon:<Fo color={e.purple}size={16}/>,label:w("settings.media.audioMode","Audio Source"),description:w("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:5}}>
609
- {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const B=Ir===r.key;return<V key={r.key}onPress={()=>{v("light"),Dr(r.key),I(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
610
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
579
+ {F({icon:<Po color={e.purple}size={16}/>,label:w("settings.media.audioMode","Audio Source"),description:w("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:5}}>
580
+ {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const R=Dr===r.key;return<V key={r.key}onPress={()=>{D("light"),$r(r.key),B(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
581
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
611
582
  {r.label}
612
583
  </T>
613
584
  </V>})}
614
585
  </C>})}
615
586
 
616
- {F({icon:<Ro color={e.purple}size={16}/>,label:w("settings.media.frameRate","Recording Frame Rate (FPS)"),description:w("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:5}}>
617
- {[15,24,30,60].map(r=>{const B=Hr===r;return<V key={r}onPress={()=>{v("light"),vr(r),I(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
618
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
587
+ {F({icon:<Ho color={e.purple}size={16}/>,label:w("settings.media.frameRate","Recording Frame Rate (FPS)"),description:w("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:5}}>
588
+ {[15,24,30,60].map(r=>{const R=Hr===r;return<V key={r}onPress={()=>{D("light"),Pr(r),B(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
589
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
619
590
  {r}fps
620
591
  </T>
621
592
  </V>})}
622
593
  </C>})}
623
594
 
624
- {F({icon:<Io color={e.purple}size={16}/>,label:w("settings.media.gifAutoOpt","Auto GIF Optimization"),description:w("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,onPress:()=>{v("light"),Pe(r=>!r),I(`GIF optimization: ${M?"OFF":"ON"}`)},right:<V onPress={()=>{v("light"),Pe(r=>!r),I(`GIF optimization: ${M?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:M?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:M?`${e.emerald500}4D`:`${e.grayText}33`}}>
625
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:M?e.emerald500:e.grayText}}>
626
- {M?"ON":"OFF"}
595
+ {F({icon:<Wo color={e.purple}size={16}/>,label:w("settings.media.gifAutoOpt","Auto GIF Optimization"),description:w("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,onPress:()=>{D("light"),Pe(r=>!r),B(`GIF optimization: ${A?"OFF":"ON"}`)},right:<V onPress={()=>{D("light"),Pe(r=>!r),B(`GIF optimization: ${A?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:A?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:A?`${e.emerald500}4D`:`${e.grayText}33`}}>
596
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:A?e.emerald500:e.grayText}}>
597
+ {A?"ON":"OFF"}
627
598
  </T>
628
599
  </V>})}
629
600
  </C>
630
601
 
631
602
 
632
603
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
633
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.media.purgeAll","Purge Captured Media Cache"),description:w("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{N.alert(w("settings.media.purgeConfirmTitle","Purge Media Storage?"),w("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:w("common.cancel","Cancel"),style:"cancel"},{text:w("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await kr.clearAllMedia(),I(w("settings.media.purgedSuccess","Media cache cleared successfully"))}}])},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
604
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.media.purgeAll","Purge Captured Media Cache"),description:w("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{j.alert(w("settings.media.purgeConfirmTitle","Purge Media Storage?"),w("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:w("common.cancel","Cancel"),style:"cancel"},{text:w("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await kr.clearAllMedia(),B(w("settings.media.purgedSuccess","Media cache cleared successfully"))}}])},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
634
605
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
635
606
  {w("settings.media.purgeCacheBtn","Purge All")}
636
607
  </T>
637
608
  </C>})}
638
609
  </C>
639
- </C>}
640
-
641
-
642
- <Ci containerStyle={{marginTop:14}}/>
610
+ </_.View>}
643
611
 
644
612
  <C style={{height:48}}/>
645
- </G>
613
+ </J>
614
+ </C>;let U=null;if(v==="apis")U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
646
615
 
647
-
648
- {Q==="module"&&<C style={{paddingHorizontal:16,paddingTop:12,paddingBottom:Nr.OS==="ios"?36:24,backgroundColor:e.primaryLight,borderTopWidth:1,borderTopColor:e.dividerColor,flexDirection:"row",alignItems:"center",gap:12,shadowColor:e.black,shadowOpacity:.08,shadowRadius:8,shadowOffset:{width:0,height:-3},elevation:8}}>
649
- <C style={{flex:1}}>
650
- <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack}}>
651
- {Ar} of {W.length} Modules Active
652
- </T>
653
- <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:Z?e.purple:e.grayText,marginTop:1}}>
654
- {w(Z?"settings.unsavedPending":"settings.allSynchronized")}
655
- </T>
616
+
617
+ <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16,gap:12}}>
618
+ <C style={{flexDirection:"row",alignItems:"flex-start",justifyContent:"space-between",gap:8}}>
619
+ <C style={{flexDirection:"row",alignItems:"center",gap:8,flex:1}}>
620
+ <Ce color={e.purple}size={16}/>
621
+ <C style={{flex:1}}>
622
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
623
+ {w("settings.apis.hideUrlRegexTitle","Hidden URL Filters (Regex)")}
624
+ </T>
625
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayTextWeak,marginTop:2}}>
626
+ {w("settings.apis.hideUrlRegexDesc","Hide matching URLs from Network list and search results (calls will still execute normally).")}
627
+ </T>
628
+ </C>
629
+ </C>
630
+ {ee.length>0&&<V onPress={()=>{D("light"),Ke([...er]),B(w("settings.apis.resetFilterToast","Reset to default URL filters"))}}hitSlop={8}style={{paddingHorizontal:8,paddingVertical:4.5,borderRadius:6,backgroundColor:`${e.purple}14`,borderWidth:1,borderColor:`${e.purple}33`,alignSelf:"flex-start"}}>
631
+ <T style={{fontFamily:S.interSemiBold,fontSize:10,lineHeight:13,color:e.purple}}>
632
+ {w("common.resetDefaults","Reset Defaults")}
633
+ </T>
634
+ </V>}
656
635
  </C>
657
636
 
658
- <V accessible={!0}accessibilityRole="button"accessibilityLabel="Save Changes"onPress={pt}style={{flexDirection:"row",alignItems:"center",gap:6,backgroundColor:Z?e.purple:`${e.purple}22`,paddingHorizontal:18,paddingVertical:10,borderRadius:10}}>
659
- <K size={14}color={Z?e.white:e.purple}/>
660
- <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:Z?e.white:e.purple}}>
661
- {w("settings.saveChanges")}
662
- </T>
663
- </V>
664
- </C>}
665
- </C>;let J=null;if(O==="apis")J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
637
+
638
+ <C style={{flexDirection:"row",alignItems:"center",gap:8,backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1,borderColor:e.grayBorderSecondary,paddingHorizontal:10,paddingVertical:Ur.OS==="ios"?8:4}}>
639
+ <Io size={14}color={e.grayTextWeak}/>
640
+ <_r style={{flex:1,fontFamily:S.interMedium,fontSize:12,lineHeight:16,color:e.primaryBlack,padding:0}}placeholder={w("settings.apis.addPatternPlaceholder","e.g. https://api.example.com or .*analytics.*")}placeholderTextColor={e.grayTextWeak}value={We}onChangeText={vr}autoCapitalize="none"autoCorrect={!1}onSubmitEditing={Or}returnKeyType="done"/>
641
+ <V onPress={Or}disabled={!We.trim()}style={{paddingHorizontal:10,paddingVertical:5.5,borderRadius:7,backgroundColor:We.trim()?e.purple:`${e.purple}33`}}>
642
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.white}}>
643
+ {w("common.add","+ Add")}
644
+ </T>
645
+ </V>
646
+ </C>
666
647
 
648
+
649
+ <C style={{gap:6}}>
650
+ {ee.map((r,R)=>{const I=er.includes(r);return<C key={`${r}-${R}`}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:I?`${e.slate200}44`:e.grayBackground,borderRadius:8,paddingHorizontal:10,paddingVertical:7,borderWidth:1,borderColor:I?`${e.grayBorderSecondary}`:e.grayBorderSecondary,gap:8}}>
651
+ <C style={{flexDirection:"row",alignItems:"center",gap:6,flex:1,minWidth:0}}>
652
+ <C style={{paddingHorizontal:5,paddingVertical:1.5,borderRadius:4,backgroundColor:I?`${e.blue500}18`:`${e.purple}1F`}}>
653
+ <T style={{fontFamily:S.interBold,fontSize:9,lineHeight:11,color:I?e.blue600:e.purple}}>
654
+ {I?"DEFAULT":"CUSTOM"}
655
+ </T>
656
+ </C>
657
+ <T style={{fontFamily:S.interMedium,fontSize:11.5,lineHeight:15,color:I?e.grayTextStrong:e.primaryBlack,flex:1}}numberOfLines={1}ellipsizeMode="middle">
658
+ {r}
659
+ </T>
660
+ </C>
661
+ {I?<C style={{padding:5,borderRadius:5,backgroundColor:`${e.grayTextWeak}18`,alignItems:"center",justifyContent:"center"}}>
662
+ <Kt size={12}color={e.grayTextWeak}/>
663
+ </C>:<V onPress={()=>bt(R)}hitSlop={8}style={{padding:5,borderRadius:5,backgroundColor:`${e.errorColor}14`}}>
664
+ <O size={12}color={e.errorColor}/>
665
+ </V>}
666
+ </C>})}
667
+ {ee.length===0&&<T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayTextWeak,textAlign:"center",paddingVertical:8}}>
668
+ {w("settings.apis.noFiltersActive","No URL filters active. All URLs will be displayed.")}
669
+ </T>}
670
+ </C>
671
+ </C>
672
+
673
+
667
674
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
668
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.apis.clearNetworkLogs"),description:w("settings.apis.clearNetworkLogsDescription",{count:Je.length}),isLast:!0,onPress:()=>{Bt(),Yo(null),N.alert(w("common.success"),w("settings.apis.networkLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
675
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.apis.clearNetworkLogs"),description:w("settings.apis.clearNetworkLogsDescription",{count:Ue.length}),isLast:!0,onPress:()=>{Bt(),ot(null),j.alert(w("common.success"),w("settings.apis.networkLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
669
676
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
670
677
  {w("common.clear")}
671
678
  </T>
672
679
  </C>})}
673
680
  </C>
674
681
  <C style={{height:48}}/>
675
- </G>;else if(O==="logs")J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
682
+ </J>;else if(v==="logs")U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
676
683
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
677
- {F({icon:<Xr color={e.purple}size={16}/>,label:w("settings.logs.maxConsoleLogs"),description:w("settings.logs.maxConsoleLogsDescription"),numericInput:{value:Qe,onChange:Jo,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
684
+ {F({icon:<So color={e.purple}size={16}/>,label:w("settings.logs.maxConsoleLogs"),description:w("settings.logs.maxConsoleLogsDescription"),numericInput:{value:Rr,onChange:Ko,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
678
685
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
679
686
  <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack,paddingTop:6}}>
680
687
  {w("settings.logs.logLevels")}
681
688
  </T>
682
- {["info","warn","error"].map(r=>{const B=Go?.[r],D=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,H=w(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),L=w(r==="info"?"settings.logs.showInfoDesc":r==="warn"?"settings.logs.showWarnDesc":"settings.logs.showErrorDesc");return F({icon:<C style={{width:12,height:12,borderRadius:6,backgroundColor:D}}/>,label:H,description:L,isLast:r==="error",onPress:()=>Uo(z=>({...z,[r]:!z[r]})),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:B?e.purple:e.grayTextWeak,backgroundColor:B?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
683
- {B&&<K size={12}color={e.purple}/>}
689
+ {["info","warn","error"].map(r=>{const R=qo?.[r],I=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,P=w(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),E=w(r==="info"?"settings.logs.showInfoDesc":r==="warn"?"settings.logs.showWarnDesc":"settings.logs.showErrorDesc");return F({icon:<C style={{width:12,height:12,borderRadius:6,backgroundColor:I}}/>,label:P,description:E,isLast:r==="error",onPress:()=>Yo(z=>({...z,[r]:!z[r]})),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:R?e.purple:e.grayTextWeak,backgroundColor:R?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
690
+ {R&&<Se size={12}color={e.purple}/>}
684
691
  </C>})})}
685
692
  </C>
686
693
 
@@ -694,7 +701,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
694
701
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
695
702
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
696
703
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
697
- <Ge color={e.purple}size={15}/>
704
+ <Ce color={e.purple}size={15}/>
698
705
  </C>
699
706
  <C style={{flex:1}}>
700
707
  <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -706,92 +713,92 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
706
713
  </C>
707
714
  </C>
708
715
 
709
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:Ue}}onPress={()=>No(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:Ue?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Ue?"flex-end":"flex-start"}}>
716
+ <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:Ne}}onPress={()=>_o(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:Ne?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Ne?"flex-end":"flex-start"}}>
710
717
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
711
718
  </V>
712
719
  </C>
713
720
  </C>
714
721
 
715
722
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
716
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.logs.clearConsoleLogs"),description:w("settings.logs.clearConsoleLogsDescription",{count:qe.length}),isLast:!0,onPress:()=>{zt(),N.alert(w("common.success"),w("settings.logs.consoleLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
723
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.logs.clearConsoleLogs"),description:w("settings.logs.clearConsoleLogsDescription",{count:Ge.length}),isLast:!0,onPress:()=>{Ft(),j.alert(w("common.success"),w("settings.logs.consoleLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
717
724
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
718
725
  {w("common.clear")}
719
726
  </T>
720
727
  </C>})}
721
728
  </C>
722
729
  <C style={{height:48}}/>
723
- </G>;else if(O==="analytics")J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
730
+ </J>;else if(v==="analytics")U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
724
731
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary}}>
725
- {F({icon:<Yr color={e.purple}size={16}/>,label:w("settings.analytics.maxAnalyticsEvents"),description:w("settings.analytics.maxAnalyticsEventsDescription",{count:Ke.length}),numericInput:{value:Tr,onChange:qo,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
732
+ {F({icon:<To color={e.purple}size={16}/>,label:w("settings.analytics.maxAnalyticsEvents"),description:w("settings.analytics.maxAnalyticsEventsDescription",{count:_e.length}),numericInput:{value:Vr,onChange:Qo,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
726
733
  </C>
727
734
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
728
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.analytics.clearAnalyticsEvents"),description:w("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{Vt(),Zo(null),N.alert(w("common.success"),w("settings.analytics.analyticsEventsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
735
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.analytics.clearAnalyticsEvents"),description:w("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{It(),tt(null),j.alert(w("common.success"),w("settings.analytics.analyticsEventsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
729
736
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
730
737
  {w("common.clear")}
731
738
  </T>
732
739
  </C>})}
733
740
  </C>
734
741
  <C style={{height:48}}/>
735
- </G>;else if(O==="redux")J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
742
+ </J>;else if(v==="redux")U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
736
743
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
737
- {F({icon:<Co color={e.purple}size={16}/>,label:w("settings.redux.autoRefresh"),description:w("settings.redux.autoRefreshDescription"),onPress:()=>Qo(r=>!r),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:Ye?e.purple:e.grayTextWeak,backgroundColor:Ye?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
738
- {Ye&&<K size={12}color={e.purple}/>}
744
+ {F({icon:<Vo color={e.purple}size={16}/>,label:w("settings.redux.autoRefresh"),description:w("settings.redux.autoRefreshDescription"),onPress:()=>Zo(r=>!r),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:qe?e.purple:e.grayTextWeak,backgroundColor:qe?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
745
+ {qe&&<Se size={12}color={e.purple}/>}
739
746
  </C>})}
740
747
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
741
- {F({icon:<Ce color={e.purple}size={16}/>,label:w("settings.redux.defaultJsonExpandDepth"),description:w("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:Br,onSelect:Xo},isLast:!0})}
748
+ {F({icon:<X color={e.purple}size={16}/>,label:w("settings.redux.defaultJsonExpandDepth"),description:w("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:et,onSelect:rt},isLast:!0})}
742
749
  </C>
743
750
 
744
751
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
745
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.redux.clearReduxState"),description:w(ze?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{et(null),N.alert(w("common.success"),w("settings.redux.reduxStateCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
752
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.redux.clearReduxState"),description:w(Ve?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{it(null),j.alert(w("common.success"),w("settings.redux.reduxStateCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
746
753
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
747
754
  {w("common.clear")}
748
755
  </T>
749
756
  </C>})}
750
757
  </C>
751
758
  <C style={{height:48}}/>
752
- </G>;else if(O==="crash"){const r=!!P?.js&&!P?.native&&!!P?.render&&!P?.promise&&!P?.custom,B=!P?.js&&!P?.native&&!P?.render&&!P?.promise&&!P?.custom,D=!!P?.js&&!!P?.native&&!!P?.render&&!!P?.promise&&!!P?.custom,H=["js","native","render","promise","custom"].filter(z=>!P?.[z]).length,L=[{key:"js",label:w("settings.crash.ignoreJs","Ignore JS Runtime Crashes"),desc:w("settings.crash.ignoreJsDesc","Bypasses unhandled JS runtime exceptions, TypeError, SyntaxError & ErrorUtils"),icon:<Et size={16}color={e.yellow400}/>},{key:"native",label:w("settings.crash.ignoreNative","Ignore Native Platform Crashes"),desc:w("settings.crash.ignoreNativeDesc","Bypasses iOS Mach-O signals, SIGSEGV, NullPointerException & ExceptionsManager"),icon:<Nt size={16}color={e.cyan600}/>},{key:"render",label:w("settings.crash.ignoreRender","Ignore React Render Errors"),desc:w("settings.crash.ignoreRenderDesc","Bypasses React component tree render failures & ErrorBoundary"),icon:<Gt size={16}color={e.purple400}/>},{key:"promise",label:w("settings.crash.ignorePromise","Ignore Promise Rejections"),desc:w("settings.crash.ignorePromiseDesc","Bypasses unhandled asynchronous Promise rejections"),icon:<Ut size={16}color={e.amber400}/>},{key:"custom",label:w("settings.crash.ignoreCustom","Ignore Custom Recorded Errors"),desc:w("settings.crash.ignoreCustomDesc","Bypasses manual recordCustomCrash exceptions & telemetry triggers"),icon:<_t size={16}color={e.emerald400}/>}];J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
759
+ </J>;else if(v==="crash"){const r=!!H?.js&&!H?.native&&!!H?.render&&!H?.promise&&!H?.custom,R=!H?.js&&!H?.native&&!H?.render&&!H?.promise&&!H?.custom,I=!!H?.js&&!!H?.native&&!!H?.render&&!!H?.promise&&!!H?.custom,P=["js","native","render","promise","custom"].filter(z=>!H?.[z]).length,E=[{key:"js",label:w("settings.crash.ignoreJs","Ignore JS Runtime Crashes"),desc:w("settings.crash.ignoreJsDesc","Bypasses unhandled JS runtime exceptions, TypeError, SyntaxError & ErrorUtils"),icon:<Gt size={16}color={e.yellow400}/>},{key:"native",label:w("settings.crash.ignoreNative","Ignore Native Platform Crashes"),desc:w("settings.crash.ignoreNativeDesc","Bypasses iOS Mach-O signals, SIGSEGV, NullPointerException & ExceptionsManager"),icon:<_t size={16}color={e.cyan600}/>},{key:"render",label:w("settings.crash.ignoreRender","Ignore React Render Errors"),desc:w("settings.crash.ignoreRenderDesc","Bypasses React component tree render failures & ErrorBoundary"),icon:<Jt size={16}color={e.purple400}/>},{key:"promise",label:w("settings.crash.ignorePromise","Ignore Promise Rejections"),desc:w("settings.crash.ignorePromiseDesc","Bypasses unhandled asynchronous Promise rejections"),icon:<Yt size={16}color={e.amber400}/>},{key:"custom",label:w("settings.crash.ignoreCustom","Ignore Custom Recorded Errors"),desc:w("settings.crash.ignoreCustomDesc","Bypasses manual recordCustomCrash exceptions & telemetry triggers"),icon:<Io size={16}color={e.emerald400}/>}];U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
753
760
 
754
761
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
755
762
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
756
763
  <C style={{flexDirection:"row",alignItems:"center",gap:8}}>
757
- <To size={16}color={e.purple}/>
764
+ <Fo size={16}color={e.purple}/>
758
765
  <T style={{fontFamily:S.interBold,fontSize:12.5,letterSpacing:.5,color:e.purple}}>
759
766
  {w("settings.crash.governancePresets","GOVERNANCE PRESETS")}
760
767
  </T>
761
768
  </C>
762
769
  <C style={{paddingHorizontal:8,paddingVertical:3,borderRadius:6,backgroundColor:`${e.purple}14`}}>
763
770
  <T style={{fontFamily:S.interBold,fontSize:10.5,color:e.purple}}>
764
- {H} / 5 PROTECTED
771
+ {P} / 5 PROTECTED
765
772
  </T>
766
773
  </C>
767
774
  </C>
768
775
 
769
776
 
770
777
  <C style={{flexDirection:"row",gap:8}}>
771
- <V onPress={()=>Re("balanced")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:r?e.purple:e.grayBorderSecondary,backgroundColor:r?`${e.purple}12`:e.grayBackground,alignItems:"center",gap:4}}>
772
- <Ot size={16}color={r?e.purple:e.grayText}/>
778
+ <V onPress={()=>Be("balanced")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:r?e.purple:e.grayBorderSecondary,backgroundColor:r?`${e.purple}12`:e.grayBackground,alignItems:"center",gap:4}}>
779
+ <Nt size={16}color={r?e.purple:e.grayText}/>
773
780
  <T style={{fontFamily:S.interBold,fontSize:11,color:r?e.purple:e.primaryBlack}}>
774
781
  {w("settings.crash.presetBalanced","Balanced")}
775
782
  </T>
776
783
  </V>
777
784
 
778
- <V onPress={()=>Re("max_shield")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:B?e.greenColor:e.grayBorderSecondary,backgroundColor:B?`${e.greenColor}12`:e.grayBackground,alignItems:"center",gap:4}}>
779
- <To size={16}color={B?e.greenColor:e.grayText}/>
780
- <T style={{fontFamily:S.interBold,fontSize:11,color:B?e.greenColor:e.primaryBlack}}>
785
+ <V onPress={()=>Be("max_shield")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:R?e.greenColor:e.grayBorderSecondary,backgroundColor:R?`${e.greenColor}12`:e.grayBackground,alignItems:"center",gap:4}}>
786
+ <Fo size={16}color={R?e.greenColor:e.grayText}/>
787
+ <T style={{fontFamily:S.interBold,fontSize:11,color:R?e.greenColor:e.primaryBlack}}>
781
788
  {w("settings.crash.presetMaxShield","Max Shield")}
782
789
  </T>
783
790
  </V>
784
791
 
785
- <V onPress={()=>Re("silent")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:D?e.grayTextWeak:e.grayBorderSecondary,backgroundColor:D?`${e.grayTextWeak}1A`:e.grayBackground,alignItems:"center",gap:4}}>
786
- <Mt size={16}color={D?e.grayText:e.grayTextWeak}/>
787
- <T style={{fontFamily:S.interBold,fontSize:11,color:D?e.grayText:e.primaryBlack}}>
792
+ <V onPress={()=>Be("silent")}style={{flex:1,paddingVertical:10,paddingHorizontal:6,borderRadius:10,borderWidth:1.5,borderColor:I?e.grayTextWeak:e.grayBorderSecondary,backgroundColor:I?`${e.grayTextWeak}1A`:e.grayBackground,alignItems:"center",gap:4}}>
793
+ <Ut size={16}color={I?e.grayText:e.grayTextWeak}/>
794
+ <T style={{fontFamily:S.interBold,fontSize:11,color:I?e.grayText:e.primaryBlack}}>
788
795
  {w("settings.crash.presetSilent","Silent Mode")}
789
796
  </T>
790
797
  </V>
791
798
  </C>
792
799
 
793
800
  <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText}}>
794
- {r?w("settings.crash.presetBalancedDesc","Recommended: Native & Promise protected; JS & Render ignored for clean dev workflow"):B?w("settings.crash.presetMaxShieldDesc","100% Protection: Intercepts & captures all 5 error categories"):D?w("settings.crash.presetSilentDesc","Bypasses all error modals & badges for screencasts & clean demos"):w("settings.crash.categoryMatrix","Customized rule matrix actively configured below")}
801
+ {r?w("settings.crash.presetBalancedDesc","Recommended: Native & Promise protected; JS & Render ignored for clean dev workflow"):R?w("settings.crash.presetMaxShieldDesc","100% Protection: Intercepts & captures all 5 error categories"):I?w("settings.crash.presetSilentDesc","Bypasses all error modals & badges for screencasts & clean demos"):w("settings.crash.categoryMatrix","Customized rule matrix actively configured below")}
795
802
  </T>
796
803
  </C>
797
804
 
@@ -801,46 +808,46 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
801
808
  {w("settings.crash.categoryMatrix","ERROR INTERCEPTION & IGNORED CATEGORIES")}
802
809
  </T>
803
810
 
804
- {L.map((z,Se)=>{const q=!!P?.[z.key],ut=Se===L.length-1;return F({key:z.key,icon:z.icon,label:z.label,description:z.desc,isLast:ut,onPress:()=>{rt(Er=>({...Er,[z.key]:!Er[z.key]}))},right:<C style={{flexDirection:"row",alignItems:"center",gap:8}}>
805
- <C style={{paddingHorizontal:6,paddingVertical:2.5,borderRadius:5,backgroundColor:q?`${e.warningIconGold}18`:`${e.greenColor}18`}}>
806
- <T style={{fontFamily:S.interBold,fontSize:9.5,color:q?e.warningIconGold:e.greenColor}}>
807
- {q?w("settings.crash.ignoredBadge","IGNORED"):w("settings.crash.protectedBadge","PROTECTED")}
811
+ {E.map((z,$)=>{const G=!!H?.[z.key],oe=$===E.length-1;return F({key:z.key,icon:z.icon,label:z.label,description:z.desc,isLast:oe,onPress:()=>{lt(Nr=>({...Nr,[z.key]:!Nr[z.key]}))},right:<C style={{flexDirection:"row",alignItems:"center",gap:8}}>
812
+ <C style={{paddingHorizontal:6,paddingVertical:2.5,borderRadius:5,backgroundColor:G?`${e.warningIconGold}18`:`${e.greenColor}18`}}>
813
+ <T style={{fontFamily:S.interBold,fontSize:9.5,color:G?e.warningIconGold:e.greenColor}}>
814
+ {G?w("settings.crash.ignoredBadge","IGNORED"):w("settings.crash.protectedBadge","PROTECTED")}
808
815
  </T>
809
816
  </C>
810
- <C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:q?e.purple:e.grayTextWeak,backgroundColor:q?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
811
- {q&&<K size={12}color={e.purple}/>}
817
+ <C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:G?e.purple:e.grayTextWeak,backgroundColor:G?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
818
+ {G&&<Se size={12}color={e.purple}/>}
812
819
  </C>
813
820
  </C>})})}
814
821
  </C>
815
822
 
816
823
 
817
824
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary}}>
818
- {F({icon:<So color={e.purple}size={16}/>,label:w("settings.crash.modalTriggerTitle","Modal Alert Display Policy"),description:w("settings.crash.modalTriggerDesc","Configure when the full-screen diagnostic modal appears"),isLast:!0,picker:{options:["fatal_only","all_errors","silent_tab_only"],selectedValue:ot||"fatal_only",onSelect:z=>Rr(z),formatLabel:z=>z==="fatal_only"?w("settings.crash.policyFatalOnly","Fatal Only"):z==="all_errors"?w("settings.crash.policyAllErrors","All Caught"):w("settings.crash.policySilent","Silent Only")}})}
825
+ {F({icon:<Bo color={e.purple}size={16}/>,label:w("settings.crash.modalTriggerTitle","Modal Alert Display Policy"),description:w("settings.crash.modalTriggerDesc","Configure when the full-screen diagnostic modal appears"),isLast:!0,picker:{options:["fatal_only","all_errors","silent_tab_only"],selectedValue:at||"fatal_only",onSelect:z=>Fr(z),formatLabel:z=>z==="fatal_only"?w("settings.crash.policyFatalOnly","Fatal Only"):z==="all_errors"?w("settings.crash.policyAllErrors","All Caught"):w("settings.crash.policySilent","Silent Only")}})}
819
826
  </C>
820
827
 
821
828
 
822
829
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
823
- {F({icon:<Ce color={e.purple}size={16}/>,label:w("settings.crash.maxCrashLogs","Max Crash Logs Buffer"),description:w("settings.crash.maxCrashLogsDesc","How many crash records to preserve in history (5-100)"),numericInput:{value:zr,onChange:Vr,min:5,max:100,placeholder:"Enter max crashes (5-100)"}})}
830
+ {F({icon:<X color={e.purple}size={16}/>,label:w("settings.crash.maxCrashLogs","Max Crash Logs Buffer"),description:w("settings.crash.maxCrashLogsDesc","How many crash records to preserve in history (5-100)"),numericInput:{value:zr,onChange:Br,min:5,max:100,placeholder:"Enter max crashes (5-100)"}})}
824
831
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
825
- {F({icon:<Jt color={e.purple}size={16}/>,label:w("settings.crash.resetDefaults","Reset to Defaults"),description:w("settings.crash.resetDefaultsDesc","Restore recommended balanced crash protection settings"),onPress:()=>{Re("balanced"),Vr(50),Rr("fatal_only"),N.alert(w("common.success","Success"),w("settings.crash.resetDefaultsDesc","Restore recommended balanced crash protection settings"))},right:<C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:`${e.purple}14`,borderWidth:1,borderColor:`${e.purple}33`}}>
832
+ {F({icon:<Qt color={e.purple}size={16}/>,label:w("settings.crash.resetDefaults","Reset to Defaults"),description:w("settings.crash.resetDefaultsDesc","Restore recommended balanced crash protection settings"),onPress:()=>{Be("balanced"),Br(50),Fr("fatal_only"),j.alert(w("common.success","Success"),w("settings.crash.resetDefaultsDesc","Restore recommended balanced crash protection settings"))},right:<C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:`${e.purple}14`,borderWidth:1,borderColor:`${e.purple}33`}}>
826
833
  <T style={{fontFamily:S.interBold,fontSize:11,color:e.purple}}>
827
834
  {w("settings.reset","Reset")}
828
835
  </T>
829
836
  </C>})}
830
837
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
831
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.crash.clearHistory","Clear Crash History"),description:w("settings.crash.clearHistoryDesc",{count:Ve?.length||0}),isLast:!0,onPress:()=>{Rt(),N.alert(w("common.success","Success"),w("settings.crash.historyCleared","Crash logs cleared."))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
838
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.crash.clearHistory","Clear Crash History"),description:w("settings.crash.clearHistoryDesc",{count:ze?.length||0}),isLast:!0,onPress:()=>{Dt(),j.alert(w("common.success","Success"),w("settings.crash.historyCleared","Crash logs cleared."))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
832
839
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
833
840
  {w("common.clear","Clear")}
834
841
  </T>
835
842
  </C>})}
836
843
  </C>
837
844
  <C style={{height:48}}/>
838
- </G>}else O==="push"?J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
845
+ </J>}else v==="push"?U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
839
846
 
840
847
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
841
- {F({icon:<Ce color={e.purple}size={16}/>,label:"Max Push Notification Logs",description:"Buffer size limit for recorded push payloads (10-200)",numericInput:{value:tt,onChange:it,min:10,max:200,placeholder:"Enter max logs (10-200)"}})}
848
+ {F({icon:<X color={e.purple}size={16}/>,label:"Max Push Notification Logs",description:"Buffer size limit for recorded push payloads (10-200)",numericInput:{value:nt,onChange:st,min:10,max:200,placeholder:"Enter max logs (10-200)"}})}
842
849
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
843
- {F({icon:<Ho color={e.greenColor}size={16}/>,label:"Universal Ingestion Engine",description:"Captures any push domain (Salesforce, FCM, APNs, Expo, Braze, Custom)",isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
850
+ {F({icon:<Ao color={e.greenColor}size={16}/>,label:"Universal Ingestion Engine",description:"Captures any push domain (Salesforce, FCM, APNs, Expo, Braze, Custom)",isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
844
851
  <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
845
852
  ACTIVE
846
853
  </T>
@@ -857,25 +864,25 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
857
864
  </C>
858
865
 
859
866
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:6}}>
860
- <V onPress={()=>{Ie("salesforce"),I(w("settings.simulator.salesforce","Simulated Salesforce Marketing Cloud push"))}}style={{backgroundColor:`${e.sky600}14`,borderColor:`${e.sky600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
867
+ <V onPress={()=>{Ie("salesforce"),B(w("settings.simulator.salesforce","Simulated Salesforce Marketing Cloud push"))}}style={{backgroundColor:`${e.sky600}14`,borderColor:`${e.sky600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
861
868
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.sky600}}>
862
869
  + Salesforce MC
863
870
  </T>
864
871
  </V>
865
872
 
866
- <V onPress={()=>{Ie("fcm"),I(w("settings.simulator.fcm","Simulated Firebase FCM push"))}}style={{backgroundColor:`${e.darkOrange}14`,borderColor:`${e.darkOrange}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
873
+ <V onPress={()=>{Ie("fcm"),B(w("settings.simulator.fcm","Simulated Firebase FCM push"))}}style={{backgroundColor:`${e.darkOrange}14`,borderColor:`${e.darkOrange}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
867
874
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.darkOrange}}>
868
875
  + Firebase FCM
869
876
  </T>
870
877
  </V>
871
878
 
872
- <V onPress={()=>{Ie("apns"),I(w("settings.simulator.apns","Simulated Apple APNs push"))}}style={{backgroundColor:`${e.primaryBlack}10`,borderColor:`${e.primaryBlack}25`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
879
+ <V onPress={()=>{Ie("apns"),B(w("settings.simulator.apns","Simulated Apple APNs push"))}}style={{backgroundColor:`${e.primaryBlack}10`,borderColor:`${e.primaryBlack}25`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
873
880
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.primaryBlack}}>
874
881
  + Apple APNs
875
882
  </T>
876
883
  </V>
877
884
 
878
- <V onPress={()=>{Ie("deeplink"),I(w("settings.simulator.deepLink","Simulated Deep Link push"))}}style={{backgroundColor:`${e.brandPurple}14`,borderColor:`${e.brandPurple}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
885
+ <V onPress={()=>{Ie("deeplink"),B(w("settings.simulator.deepLink","Simulated Deep Link push"))}}style={{backgroundColor:`${e.brandPurple}14`,borderColor:`${e.brandPurple}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
879
886
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.brandPurple}}>
880
887
  + Deep Link
881
888
  </T>
@@ -885,19 +892,19 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
885
892
 
886
893
 
887
894
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
888
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("push.clearTitle","Clear Push History"),description:`Permanently remove all ${Fe?.length||0} recorded notifications`,isLast:!0,onPress:()=>{lt(),N.alert(w("common.success","Success"),w("settings.pushHistoryCleared","Push notification history cleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
895
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("push.clearTitle","Clear Push History"),description:`Permanently remove all ${Fe?.length||0} recorded notifications`,isLast:!0,onPress:()=>{dt(),j.alert(w("common.success","Success"),w("settings.pushHistoryCleared","Push notification history cleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
889
896
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
890
897
  {w("common.clear")}
891
898
  </T>
892
899
  </C>})}
893
900
  </C>
894
901
  <C style={{height:48}}/>
895
- </G>:O==="socket"?J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
902
+ </J>:v==="socket"?U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
896
903
 
897
904
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
898
- {F({icon:<Ce color={e.purple}size={16}/>,label:"Max WebSocket Connections",description:"Ring buffer limit for active & closed socket sessions (10-200)",numericInput:{value:at,onChange:nt,min:10,max:200,placeholder:"Enter max sockets (10-200)"}})}
905
+ {F({icon:<X color={e.purple}size={16}/>,label:"Max WebSocket Connections",description:"Ring buffer limit for active & closed socket sessions (10-200)",numericInput:{value:ct,onChange:gt,min:10,max:200,placeholder:"Enter max sockets (10-200)"}})}
899
906
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
900
- {F({icon:<Po color={e.greenColor}size={16}/>,label:"Global WebSocket Interceptor",description:"Automatic capture for WebSocket, WSS & Socket.IO traffic",isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
907
+ {F({icon:<Eo color={e.greenColor}size={16}/>,label:"Global WebSocket Interceptor",description:"Automatic capture for WebSocket, WSS & Socket.IO traffic",isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
901
908
  <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
902
909
  ACTIVE
903
910
  </T>
@@ -914,25 +921,25 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
914
921
  </C>
915
922
 
916
923
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:6}}>
917
- <V onPress={()=>{He("chat"),I(w("settings.simulator.chat","Simulated Real-time Chat WebSocket session"))}}style={{backgroundColor:`${e.blue600}14`,borderColor:`${e.blue600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
924
+ <V onPress={()=>{$e("chat"),B(w("settings.simulator.chat","Simulated Real-time Chat WebSocket session"))}}style={{backgroundColor:`${e.blue600}14`,borderColor:`${e.blue600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
918
925
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.blue600}}>
919
926
  + Chat Room (WS)
920
927
  </T>
921
928
  </V>
922
929
 
923
- <V onPress={()=>{He("crypto"),I(w("settings.simulator.crypto","Simulated Binance Crypto Ticker stream"))}}style={{backgroundColor:`${e.emerald600}14`,borderColor:`${e.emerald600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
930
+ <V onPress={()=>{$e("crypto"),B(w("settings.simulator.crypto","Simulated Binance Crypto Ticker stream"))}}style={{backgroundColor:`${e.emerald600}14`,borderColor:`${e.emerald600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
924
931
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.emerald600}}>
925
932
  + Crypto Feed (WSS)
926
933
  </T>
927
934
  </V>
928
935
 
929
- <V onPress={()=>{He("socketio"),I(w("settings.simulator.socketio","Simulated Socket.IO v4 session"))}}style={{backgroundColor:`${e.violet600}14`,borderColor:`${e.violet600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
936
+ <V onPress={()=>{$e("socketio"),B(w("settings.simulator.socketio","Simulated Socket.IO v4 session"))}}style={{backgroundColor:`${e.violet600}14`,borderColor:`${e.violet600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
930
937
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.violet600}}>
931
938
  + Socket.IO Room
932
939
  </T>
933
940
  </V>
934
941
 
935
- <V onPress={()=>{He("echo"),I(w("settings.simulator.echo","Simulated WebSocket Echo test"))}}style={{backgroundColor:`${e.brandPurple}14`,borderColor:`${e.brandPurple}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
942
+ <V onPress={()=>{$e("echo"),B(w("settings.simulator.echo","Simulated WebSocket Echo test"))}}style={{backgroundColor:`${e.brandPurple}14`,borderColor:`${e.brandPurple}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
936
943
  <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.brandPurple}}>
937
944
  + Echo Test
938
945
  </T>
@@ -942,14 +949,14 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
942
949
 
943
950
 
944
951
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
945
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("socket.clearTitle","Clear All WebSocket Logs").replace("All WebSocket Logs","Socket History"),description:`Permanently remove all ${De?.length||0} recorded sessions`,isLast:!0,onPress:()=>{st(),N.alert(w("common.success","Success"),w("settings.socketHistoryCleared","WebSocket history cleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
952
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("socket.clearTitle","Clear All WebSocket Logs").replace("All WebSocket Logs","Socket History"),description:`Permanently remove all ${De?.length||0} recorded sessions`,isLast:!0,onPress:()=>{pt(),j.alert(w("common.success","Success"),w("settings.socketHistoryCleared","WebSocket history cleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
946
953
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
947
954
  {w("common.clear")}
948
955
  </T>
949
956
  </C>})}
950
957
  </C>
951
958
  <C style={{height:48}}/>
952
- </G>:O==="media"&&(J=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
959
+ </J>:v==="media"&&(U=<J style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
953
960
 
954
961
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
955
962
  <C style={{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4}}>
@@ -960,7 +967,7 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
960
967
  </C>
961
968
 
962
969
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:8}}>
963
- <V onPress={async()=>{v("light"),await kr.takeScreenshot({format:Ze.toLowerCase(),quality:.9,hideInspector:A})&&(v("success"),I(w("settings.simulator.screenshotSaved","Screenshot captured and saved!")))}}style={{backgroundColor:`${e.purple}14`,borderColor:`${e.purple}33`,borderWidth:1,paddingHorizontal:12,paddingVertical:7,borderRadius:8,flexDirection:"row",alignItems:"center",gap:6}}>
970
+ <V onPress={async()=>{D("light"),await kr.takeScreenshot({format:Ye.toLowerCase(),quality:.9,hideInspector:L})&&(D("success"),B(w("settings.simulator.screenshotSaved","Screenshot captured and saved!")))}}style={{backgroundColor:`${e.purple}14`,borderColor:`${e.purple}33`,borderWidth:1,paddingHorizontal:12,paddingVertical:7,borderRadius:8,flexDirection:"row",alignItems:"center",gap:6}}>
964
971
  <Te color={e.purple}size={14}/>
965
972
  <T style={{fontSize:11,fontFamily:S.interBold,color:e.purple}}>
966
973
  Take Screenshot
@@ -985,17 +992,17 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
985
992
  </C>
986
993
  </C>
987
994
 
988
- {F({icon:<Do color={e.purple}size={16}/>,label:w("settings.media.imageFormat","Image Format"),description:w("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:5}}>
989
- {["png","jpeg","webp"].map(r=>{const B=Ze===r;return<V key={r}onPress={()=>{v("light"),Fr(r),I(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
990
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
995
+ {F({icon:<Lo color={e.purple}size={16}/>,label:w("settings.media.imageFormat","Image Format"),description:w("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:5}}>
996
+ {["png","jpeg","webp"].map(r=>{const R=Ye===r;return<V key={r}onPress={()=>{D("light"),Ir(r),B(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
997
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
991
998
  {r.toUpperCase()}
992
999
  </T>
993
1000
  </V>})}
994
1001
  </C>})}
995
1002
 
996
- {F({icon:<Ge color={e.purple}size={16}/>,label:w("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:w("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,onPress:()=>{v("light"),ve(r=>!r),I(`Auto-hide overlay: ${A?"OFF":"ON"}`)},right:<V onPress={()=>{v("light"),ve(r=>!r),I(`Auto-hide overlay: ${A?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:A?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:A?`${e.emerald500}4D`:`${e.grayText}33`}}>
997
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:A?e.emerald500:e.grayText}}>
998
- {A?w("settings.media.enabled","ON"):"OFF"}
1003
+ {F({icon:<Ce color={e.purple}size={16}/>,label:w("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:w("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,onPress:()=>{D("light"),He(r=>!r),B(`Auto-hide overlay: ${L?"OFF":"ON"}`)},right:<V onPress={()=>{D("light"),He(r=>!r),B(`Auto-hide overlay: ${L?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:L?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:L?`${e.emerald500}4D`:`${e.grayText}33`}}>
1004
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:L?e.emerald500:e.grayText}}>
1005
+ {L?w("settings.media.enabled","ON"):"OFF"}
999
1006
  </T>
1000
1007
  </V>})}
1001
1008
  </C>
@@ -1016,49 +1023,49 @@ import{useMemo as Ee,useState as Ne,useEffect as rr,useRef as ht}from"react";imp
1016
1023
  </C>
1017
1024
  </C>
1018
1025
 
1019
- {F({icon:<Fo color={e.purple}size={16}/>,label:w("settings.media.audioMode","Audio Source"),description:w("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:5}}>
1020
- {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const B=Ir===r.key;return<V key={r.key}onPress={()=>{v("light"),Dr(r.key),I(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
1021
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
1026
+ {F({icon:<Po color={e.purple}size={16}/>,label:w("settings.media.audioMode","Audio Source"),description:w("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:5}}>
1027
+ {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const R=Dr===r.key;return<V key={r.key}onPress={()=>{D("light"),$r(r.key),B(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
1028
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
1022
1029
  {r.label}
1023
1030
  </T>
1024
1031
  </V>})}
1025
1032
  </C>})}
1026
1033
 
1027
- {F({icon:<Ro color={e.purple}size={16}/>,label:w("settings.media.frameRate","Recording Frame Rate (FPS)"),description:w("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:5}}>
1028
- {[15,24,30,60].map(r=>{const B=Hr===r;return<V key={r}onPress={()=>{v("light"),vr(r),I(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:B?e.purple:`${e.purple}14`,borderWidth:1,borderColor:B?e.purple:`${e.purple}2E`}}>
1029
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:B?e.white:e.purple}}>
1034
+ {F({icon:<Ho color={e.purple}size={16}/>,label:w("settings.media.frameRate","Recording Frame Rate (FPS)"),description:w("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:5}}>
1035
+ {[15,24,30,60].map(r=>{const R=Hr===r;return<V key={r}onPress={()=>{D("light"),Pr(r),B(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:R?e.purple:`${e.purple}14`,borderWidth:1,borderColor:R?e.purple:`${e.purple}2E`}}>
1036
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:R?e.white:e.purple}}>
1030
1037
  {r}fps
1031
1038
  </T>
1032
1039
  </V>})}
1033
1040
  </C>})}
1034
1041
 
1035
- {F({icon:<Io color={e.purple}size={16}/>,label:w("settings.media.gifAutoOpt","Auto GIF Optimization"),description:w("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,onPress:()=>{v("light"),Pe(r=>!r),I(`GIF optimization: ${M?"OFF":"ON"}`)},right:<V onPress={()=>{v("light"),Pe(r=>!r),I(`GIF optimization: ${M?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:M?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:M?`${e.emerald500}4D`:`${e.grayText}33`}}>
1036
- <T style={{fontFamily:S.interBold,fontSize:10.5,color:M?e.emerald500:e.grayText}}>
1037
- {M?"ON":"OFF"}
1042
+ {F({icon:<Wo color={e.purple}size={16}/>,label:w("settings.media.gifAutoOpt","Auto GIF Optimization"),description:w("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,onPress:()=>{D("light"),Pe(r=>!r),B(`GIF optimization: ${A?"OFF":"ON"}`)},right:<V onPress={()=>{D("light"),Pe(r=>!r),B(`GIF optimization: ${A?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:A?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:A?`${e.emerald500}4D`:`${e.grayText}33`}}>
1043
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:A?e.emerald500:e.grayText}}>
1044
+ {A?"ON":"OFF"}
1038
1045
  </T>
1039
1046
  </V>})}
1040
1047
  </C>
1041
1048
 
1042
1049
 
1043
1050
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
1044
- {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.media.purgeAll","Purge Captured Media Cache"),description:w("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{N.alert(w("settings.media.purgeConfirmTitle","Purge Media Storage?"),w("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:w("common.cancel","Cancel"),style:"cancel"},{text:w("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await kr.clearAllMedia(),I(w("settings.media.purgedSuccess","Media cache cleared successfully"))}}])},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
1051
+ {F({icon:<O color={e.errorColor}size={16}/>,label:w("settings.media.purgeAll","Purge Captured Media Cache"),description:w("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{j.alert(w("settings.media.purgeConfirmTitle","Purge Media Storage?"),w("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:w("common.cancel","Cancel"),style:"cancel"},{text:w("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await kr.clearAllMedia(),B(w("settings.media.purgedSuccess","Media cache cleared successfully"))}}])},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
1045
1052
  <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
1046
1053
  {w("settings.media.purgeCacheBtn","Purge All")}
1047
1054
  </T>
1048
1055
  </C>})}
1049
1056
  </C>
1050
1057
  <C style={{height:48}}/>
1051
- </G>);const Me=ht(new or.Value(0)).current;return rr(()=>{O!=="main"&&(Me.setValue(0),or.spring(Me,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[O]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
1058
+ </J>);const Oe=jr(new _.Value(0)).current;return Ze(()=>{v!=="main"&&(Oe.setValue(0),_.spring(Oe,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[v]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
1052
1059
 
1053
- <C style={[jr.absoluteFill,O!=="main"&&{pointerEvents:"none"}]}>
1054
- {yt()}
1060
+ <C style={[Gr.absoluteFill,v!=="main"&&{pointerEvents:"none"}]}>
1061
+ {St()}
1055
1062
  </C>
1056
1063
 
1057
1064
 
1058
- {O!=="main"&&<or.View style={[jr.absoluteFill,{backgroundColor:e.grayBackground,opacity:Me,transform:[{translateX:Me.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
1059
- {J}
1060
- </or.View>}
1065
+ {v!=="main"&&<_.View style={[Gr.absoluteFill,{backgroundColor:e.grayBackground,opacity:Oe,transform:[{translateX:Oe.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
1066
+ {U}
1067
+ </_.View>}
1061
1068
 
1062
1069
 
1063
- <Dt visible={ct}onClose={()=>Lr(!1)}/>
1064
- </C>};export default ki;
1070
+ <Pt visible={ut}onClose={()=>Er(!1)}/>
1071
+ </C>};export default Bi;