react-native-inapp-inspector 2.4.1 → 2.5.0

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 (295) hide show
  1. package/README.ar.md +163 -0
  2. package/README.de.md +163 -0
  3. package/README.es.md +164 -0
  4. package/README.fr.md +163 -0
  5. package/README.hi.md +163 -0
  6. package/README.ja.md +180 -0
  7. package/README.ko.md +163 -0
  8. package/README.md +340 -243
  9. package/README.pt-BR.md +163 -0
  10. package/README.ru.md +163 -0
  11. package/README.zh-CN.md +387 -0
  12. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +605 -23
  13. package/assets/banner_dark.svg +186 -0
  14. package/assets/banner_light.svg +186 -0
  15. package/assets/icon_circle.svg +148 -0
  16. package/assets/icon_square.svg +369 -0
  17. package/assets/inapp_inspector_icon.gif +0 -0
  18. package/assets/inapp_inspector_icon_original.gif +0 -0
  19. package/assets/social_preview.png +0 -0
  20. package/assets/walkthrough.gif +0 -0
  21. package/dist/commonjs/capture.d.ts +2 -0
  22. package/dist/commonjs/capture.js +1 -1
  23. package/dist/commonjs/components/AnalyticsDetail.js +23 -23
  24. package/dist/commonjs/components/AnalyticsEventCard.js +1 -1
  25. package/dist/commonjs/components/AnalyticsGraph.js +44 -44
  26. package/dist/commonjs/components/AnimatedBrandOwl.d.ts +7 -0
  27. package/dist/commonjs/components/AnimatedBrandOwl.js +175 -0
  28. package/dist/commonjs/components/AppHeaderLogo.d.ts +1 -0
  29. package/dist/commonjs/components/AppHeaderLogo.js +5 -3
  30. package/dist/commonjs/components/BrandCircleIcon.js +28 -28
  31. package/dist/commonjs/components/BrandSquareIcon.d.ts +5 -0
  32. package/dist/commonjs/components/BrandSquareIcon.js +139 -0
  33. package/dist/commonjs/components/ConsoleLogCard.d.ts +2 -1
  34. package/dist/commonjs/components/ConsoleLogCard.js +23 -39
  35. package/dist/commonjs/components/Inspector/AboutModal.js +44 -54
  36. package/dist/commonjs/components/Inspector/AnalyticsTab.js +6 -6
  37. package/dist/commonjs/components/Inspector/ConfirmationModal.d.ts +13 -0
  38. package/dist/commonjs/components/Inspector/ConfirmationModal.js +30 -0
  39. package/dist/commonjs/components/Inspector/ConsoleTab.js +12 -12
  40. package/dist/commonjs/components/Inspector/CrashTab.js +44 -9
  41. package/dist/commonjs/components/Inspector/DebuggingTab.js +17 -17
  42. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +1 -1
  43. package/dist/commonjs/components/Inspector/FabLauncher.js +30 -33
  44. package/dist/commonjs/components/Inspector/FeatureUnderDevNotice.js +2 -2
  45. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
  46. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +54 -0
  47. package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
  48. package/dist/commonjs/components/Inspector/GlobalCrashScreenModal.js +234 -0
  49. package/dist/commonjs/components/Inspector/InspectorHeader.js +137 -127
  50. package/dist/commonjs/components/Inspector/LanguageSelectorModal.d.ts +15 -0
  51. package/dist/commonjs/components/Inspector/LanguageSelectorModal.js +172 -0
  52. package/dist/commonjs/components/Inspector/MainScreen.js +55 -35
  53. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +40 -35
  54. package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +36 -0
  55. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +341 -135
  56. package/dist/commonjs/components/Inspector/NetworkTab.js +50 -50
  57. package/dist/commonjs/components/Inspector/NpmUpdateToast.js +1 -1
  58. package/dist/commonjs/components/Inspector/PushCard.d.ts +3 -2
  59. package/dist/commonjs/components/Inspector/PushCard.js +5 -4
  60. package/dist/commonjs/components/Inspector/PushDetail.js +41 -32
  61. package/dist/commonjs/components/Inspector/PushTab.js +12 -12
  62. package/dist/commonjs/components/Inspector/ReduxDetail.js +32 -32
  63. package/dist/commonjs/components/Inspector/ReduxTab.js +10 -8
  64. package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
  65. package/dist/commonjs/components/Inspector/SecondaryTelemetryStrip.js +43 -0
  66. package/dist/commonjs/components/Inspector/SettingsPanel.js +287 -139
  67. package/dist/commonjs/components/Inspector/SocketCard.d.ts +5 -0
  68. package/dist/commonjs/components/Inspector/SocketCard.js +116 -0
  69. package/dist/commonjs/components/Inspector/SocketDetail.d.ts +4 -0
  70. package/dist/commonjs/components/Inspector/SocketDetail.js +327 -0
  71. package/dist/commonjs/components/Inspector/SocketFilterModal.d.ts +13 -0
  72. package/dist/commonjs/components/Inspector/SocketFilterModal.js +69 -0
  73. package/dist/commonjs/components/Inspector/SocketTab.d.ts +3 -0
  74. package/dist/commonjs/components/Inspector/SocketTab.js +112 -0
  75. package/dist/commonjs/components/Inspector/StorageTab.js +39 -37
  76. package/dist/commonjs/components/Inspector/SupportModal.d.ts +7 -0
  77. package/dist/commonjs/components/Inspector/SupportModal.js +125 -0
  78. package/dist/commonjs/components/Inspector/SupportPage.d.ts +5 -0
  79. package/dist/commonjs/components/Inspector/SupportPage.js +227 -0
  80. package/dist/commonjs/components/Inspector/TabBar.js +24 -23
  81. package/dist/commonjs/components/Inspector/UpdateAvailableModal.js +24 -24
  82. package/dist/commonjs/components/JsonViewer.js +50 -48
  83. package/dist/commonjs/components/LogCard.d.ts +3 -2
  84. package/dist/commonjs/components/LogCard.js +27 -25
  85. package/dist/commonjs/components/LogSyntaxHighlighter.js +5 -5
  86. package/dist/commonjs/components/ModuleErrorBoundary.js +5 -5
  87. package/dist/commonjs/components/NetworkIcons.d.ts +42 -0
  88. package/dist/commonjs/components/NetworkIcons.js +139 -6
  89. package/dist/commonjs/components/SegmentedTabs.js +1 -1
  90. package/dist/commonjs/constants/version.d.ts +1 -1
  91. package/dist/commonjs/constants/version.js +1 -1
  92. package/dist/commonjs/crash.d.ts +1 -1
  93. package/dist/commonjs/crash.js +1 -1
  94. package/dist/commonjs/customHooks/crashHandler.d.ts +2 -1
  95. package/dist/commonjs/customHooks/crashHandler.js +7 -7
  96. package/dist/commonjs/customHooks/socketLogger.d.ts +26 -0
  97. package/dist/commonjs/customHooks/socketLogger.js +2 -0
  98. package/dist/commonjs/editor.d.ts +13 -0
  99. package/dist/commonjs/editor.js +1 -0
  100. package/dist/commonjs/helpers/index.d.ts +1 -0
  101. package/dist/commonjs/helpers/index.js +3 -3
  102. package/dist/commonjs/helpers/memoryManager.d.ts +1 -0
  103. package/dist/commonjs/helpers/memoryManager.js +1 -1
  104. package/dist/commonjs/helpers/searchQueryParser.d.ts +1 -1
  105. package/dist/commonjs/helpers/searchQueryParser.js +5 -1
  106. package/dist/commonjs/helpers/settingsStore.d.ts +1 -0
  107. package/dist/commonjs/helpers/settingsStore.js +1 -1
  108. package/dist/commonjs/helpers/shareFormatter.d.ts +3 -1
  109. package/dist/commonjs/helpers/shareFormatter.js +8 -7
  110. package/dist/commonjs/helpers/telemetry.js +1 -1
  111. package/dist/commonjs/i18n/index.d.ts +99 -1
  112. package/dist/commonjs/i18n/index.js +1 -1
  113. package/dist/commonjs/i18n/locales/ar.json +1 -1
  114. package/dist/commonjs/i18n/locales/bn.json +1 -0
  115. package/dist/commonjs/i18n/locales/de.json +1 -1
  116. package/dist/commonjs/i18n/locales/en.json +1 -1
  117. package/dist/commonjs/i18n/locales/es.json +1 -1
  118. package/dist/commonjs/i18n/locales/fr.json +1 -1
  119. package/dist/commonjs/i18n/locales/gu.json +1 -0
  120. package/dist/commonjs/i18n/locales/hi.json +1 -1
  121. package/dist/commonjs/i18n/locales/id.json +1 -0
  122. package/dist/commonjs/i18n/locales/it.json +1 -0
  123. package/dist/commonjs/i18n/locales/ja.json +1 -1
  124. package/dist/commonjs/i18n/locales/kn.json +1 -0
  125. package/dist/commonjs/i18n/locales/ko.json +1 -1
  126. package/dist/commonjs/i18n/locales/ml.json +1 -0
  127. package/dist/commonjs/i18n/locales/mr.json +1 -0
  128. package/dist/commonjs/i18n/locales/nl.json +1 -0
  129. package/dist/commonjs/i18n/locales/pa.json +1 -0
  130. package/dist/commonjs/i18n/locales/pl.json +1 -0
  131. package/dist/commonjs/i18n/locales/pt.json +1 -1
  132. package/dist/commonjs/i18n/locales/ru.json +1 -1
  133. package/dist/commonjs/i18n/locales/ta.json +1 -0
  134. package/dist/commonjs/i18n/locales/te.json +1 -0
  135. package/dist/commonjs/i18n/locales/tr.json +1 -0
  136. package/dist/commonjs/i18n/locales/vi.json +1 -0
  137. package/dist/commonjs/i18n/locales/zh.json +1 -1
  138. package/dist/commonjs/index.d.ts +16 -13
  139. package/dist/commonjs/index.js +5 -4
  140. package/dist/commonjs/native/NativeInspector.d.ts +4 -0
  141. package/dist/commonjs/native/NativeInspector.js +1 -1
  142. package/dist/commonjs/native/NativeNetworkInspector.d.ts +4 -0
  143. package/dist/commonjs/socket.d.ts +4 -0
  144. package/dist/commonjs/socket.js +1 -0
  145. package/dist/commonjs/styles/AppColors.d.ts +42 -2
  146. package/dist/commonjs/styles/AppColors.js +1 -1
  147. package/dist/commonjs/styles/common.js +1 -1
  148. package/dist/commonjs/styles/index.d.ts +30 -0
  149. package/dist/commonjs/styles/index.js +1 -1
  150. package/dist/commonjs/types/editor.d.ts +96 -0
  151. package/dist/commonjs/types/editor.js +1 -0
  152. package/dist/commonjs/types/enums.d.ts +40 -0
  153. package/dist/commonjs/types/enums.js +1 -1
  154. package/dist/commonjs/types/interfaces.d.ts +143 -1
  155. package/dist/esm/capture.d.ts +2 -0
  156. package/dist/esm/capture.js +1 -1
  157. package/dist/esm/components/AnalyticsDetail.js +31 -31
  158. package/dist/esm/components/AnalyticsEventCard.js +1 -1
  159. package/dist/esm/components/AnalyticsGraph.js +74 -74
  160. package/dist/esm/components/AnimatedBrandOwl.d.ts +7 -0
  161. package/dist/esm/components/AnimatedBrandOwl.js +175 -0
  162. package/dist/esm/components/AppHeaderLogo.d.ts +1 -0
  163. package/dist/esm/components/AppHeaderLogo.js +7 -5
  164. package/dist/esm/components/BrandCircleIcon.js +70 -70
  165. package/dist/esm/components/BrandSquareIcon.d.ts +5 -0
  166. package/dist/esm/components/BrandSquareIcon.js +139 -0
  167. package/dist/esm/components/ConsoleLogCard.d.ts +2 -1
  168. package/dist/esm/components/ConsoleLogCard.js +61 -77
  169. package/dist/esm/components/Inspector/AboutModal.js +85 -95
  170. package/dist/esm/components/Inspector/AnalyticsTab.js +24 -24
  171. package/dist/esm/components/Inspector/ConfirmationModal.d.ts +13 -0
  172. package/dist/esm/components/Inspector/ConfirmationModal.js +30 -0
  173. package/dist/esm/components/Inspector/ConsoleTab.js +48 -48
  174. package/dist/esm/components/Inspector/CrashTab.js +203 -168
  175. package/dist/esm/components/Inspector/DebuggingTab.js +29 -29
  176. package/dist/esm/components/Inspector/DeviceInfoTab.js +75 -75
  177. package/dist/esm/components/Inspector/FabLauncher.js +57 -60
  178. package/dist/esm/components/Inspector/FeatureUnderDevNotice.js +7 -7
  179. package/dist/esm/components/Inspector/FloatingCaptureWidget.d.ts +3 -0
  180. package/dist/esm/components/Inspector/FloatingCaptureWidget.js +54 -0
  181. package/dist/esm/components/Inspector/GlobalCrashScreenModal.d.ts +11 -0
  182. package/dist/esm/components/Inspector/GlobalCrashScreenModal.js +234 -0
  183. package/dist/esm/components/Inspector/InspectorHeader.js +162 -152
  184. package/dist/esm/components/Inspector/LanguageSelectorModal.d.ts +15 -0
  185. package/dist/esm/components/Inspector/LanguageSelectorModal.js +172 -0
  186. package/dist/esm/components/Inspector/MainScreen.js +130 -110
  187. package/dist/esm/components/Inspector/MediaGalleryTab.js +83 -78
  188. package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +36 -0
  189. package/dist/esm/components/Inspector/MediaPreviewModal.js +345 -139
  190. package/dist/esm/components/Inspector/NetworkTab.js +130 -130
  191. package/dist/esm/components/Inspector/NpmUpdateToast.js +1 -1
  192. package/dist/esm/components/Inspector/PushCard.d.ts +3 -2
  193. package/dist/esm/components/Inspector/PushCard.js +23 -22
  194. package/dist/esm/components/Inspector/PushDetail.js +45 -36
  195. package/dist/esm/components/Inspector/PushTab.js +23 -23
  196. package/dist/esm/components/Inspector/ReduxDetail.js +42 -42
  197. package/dist/esm/components/Inspector/ReduxTab.js +20 -18
  198. package/dist/esm/components/Inspector/SecondaryTelemetryStrip.d.ts +2 -0
  199. package/dist/esm/components/Inspector/SecondaryTelemetryStrip.js +43 -0
  200. package/dist/esm/components/Inspector/SettingsPanel.js +526 -378
  201. package/dist/esm/components/Inspector/SocketCard.d.ts +5 -0
  202. package/dist/esm/components/Inspector/SocketCard.js +116 -0
  203. package/dist/esm/components/Inspector/SocketDetail.d.ts +4 -0
  204. package/dist/esm/components/Inspector/SocketDetail.js +327 -0
  205. package/dist/esm/components/Inspector/SocketFilterModal.d.ts +13 -0
  206. package/dist/esm/components/Inspector/SocketFilterModal.js +69 -0
  207. package/dist/esm/components/Inspector/SocketTab.d.ts +3 -0
  208. package/dist/esm/components/Inspector/SocketTab.js +112 -0
  209. package/dist/esm/components/Inspector/StorageTab.js +139 -137
  210. package/dist/esm/components/Inspector/SupportModal.d.ts +7 -0
  211. package/dist/esm/components/Inspector/SupportModal.js +125 -0
  212. package/dist/esm/components/Inspector/SupportPage.d.ts +5 -0
  213. package/dist/esm/components/Inspector/SupportPage.js +227 -0
  214. package/dist/esm/components/Inspector/TabBar.js +36 -35
  215. package/dist/esm/components/Inspector/UpdateAvailableModal.js +22 -22
  216. package/dist/esm/components/JsonViewer.js +66 -64
  217. package/dist/esm/components/LogCard.d.ts +3 -2
  218. package/dist/esm/components/LogCard.js +57 -55
  219. package/dist/esm/components/LogSyntaxHighlighter.js +5 -5
  220. package/dist/esm/components/ModuleErrorBoundary.js +23 -23
  221. package/dist/esm/components/NetworkIcons.d.ts +42 -0
  222. package/dist/esm/components/NetworkIcons.js +139 -6
  223. package/dist/esm/components/SegmentedTabs.js +7 -7
  224. package/dist/esm/constants/version.d.ts +1 -1
  225. package/dist/esm/constants/version.js +1 -1
  226. package/dist/esm/crash.d.ts +1 -1
  227. package/dist/esm/crash.js +1 -1
  228. package/dist/esm/customHooks/crashHandler.d.ts +2 -1
  229. package/dist/esm/customHooks/crashHandler.js +7 -7
  230. package/dist/esm/customHooks/socketLogger.d.ts +26 -0
  231. package/dist/esm/customHooks/socketLogger.js +2 -0
  232. package/dist/esm/editor.d.ts +13 -0
  233. package/dist/esm/editor.js +1 -0
  234. package/dist/esm/helpers/index.d.ts +1 -0
  235. package/dist/esm/helpers/index.js +4 -4
  236. package/dist/esm/helpers/memoryManager.d.ts +1 -0
  237. package/dist/esm/helpers/memoryManager.js +1 -1
  238. package/dist/esm/helpers/searchQueryParser.d.ts +1 -1
  239. package/dist/esm/helpers/searchQueryParser.js +5 -1
  240. package/dist/esm/helpers/settingsStore.d.ts +1 -0
  241. package/dist/esm/helpers/settingsStore.js +1 -1
  242. package/dist/esm/helpers/shareFormatter.d.ts +3 -1
  243. package/dist/esm/helpers/shareFormatter.js +8 -7
  244. package/dist/esm/helpers/telemetry.js +1 -1
  245. package/dist/esm/i18n/index.d.ts +99 -1
  246. package/dist/esm/i18n/index.js +1 -1
  247. package/dist/esm/i18n/locales/ar.json +1 -1
  248. package/dist/esm/i18n/locales/bn.json +1 -0
  249. package/dist/esm/i18n/locales/de.json +1 -1
  250. package/dist/esm/i18n/locales/en.json +1 -1
  251. package/dist/esm/i18n/locales/es.json +1 -1
  252. package/dist/esm/i18n/locales/fr.json +1 -1
  253. package/dist/esm/i18n/locales/gu.json +1 -0
  254. package/dist/esm/i18n/locales/hi.json +1 -1
  255. package/dist/esm/i18n/locales/id.json +1 -0
  256. package/dist/esm/i18n/locales/it.json +1 -0
  257. package/dist/esm/i18n/locales/ja.json +1 -1
  258. package/dist/esm/i18n/locales/kn.json +1 -0
  259. package/dist/esm/i18n/locales/ko.json +1 -1
  260. package/dist/esm/i18n/locales/ml.json +1 -0
  261. package/dist/esm/i18n/locales/mr.json +1 -0
  262. package/dist/esm/i18n/locales/nl.json +1 -0
  263. package/dist/esm/i18n/locales/pa.json +1 -0
  264. package/dist/esm/i18n/locales/pl.json +1 -0
  265. package/dist/esm/i18n/locales/pt.json +1 -1
  266. package/dist/esm/i18n/locales/ru.json +1 -1
  267. package/dist/esm/i18n/locales/ta.json +1 -0
  268. package/dist/esm/i18n/locales/te.json +1 -0
  269. package/dist/esm/i18n/locales/tr.json +1 -0
  270. package/dist/esm/i18n/locales/vi.json +1 -0
  271. package/dist/esm/i18n/locales/zh.json +1 -1
  272. package/dist/esm/index.d.ts +16 -13
  273. package/dist/esm/index.js +8 -7
  274. package/dist/esm/native/NativeInspector.d.ts +4 -0
  275. package/dist/esm/native/NativeInspector.js +1 -1
  276. package/dist/esm/native/NativeNetworkInspector.d.ts +4 -0
  277. package/dist/esm/socket.d.ts +4 -0
  278. package/dist/esm/socket.js +1 -0
  279. package/dist/esm/styles/AppColors.d.ts +42 -2
  280. package/dist/esm/styles/AppColors.js +1 -1
  281. package/dist/esm/styles/common.js +1 -1
  282. package/dist/esm/styles/index.d.ts +30 -0
  283. package/dist/esm/styles/index.js +1 -1
  284. package/dist/esm/types/editor.d.ts +96 -0
  285. package/dist/esm/types/editor.js +1 -0
  286. package/dist/esm/types/enums.d.ts +40 -0
  287. package/dist/esm/types/enums.js +1 -1
  288. package/dist/esm/types/interfaces.d.ts +143 -1
  289. package/editor.d.ts +1 -0
  290. package/editor.js +1 -0
  291. package/ios/NetworkInspectorModule.mm +531 -12
  292. package/package.json +213 -2
  293. package/react-native-inapp-inspector.podspec +1 -1
  294. package/src/native/NativeInspector.ts +65 -4
  295. package/src/native/NativeNetworkInspector.ts +4 -0
@@ -1,218 +1,300 @@
1
- import{useMemo as Qe,useState as G,useEffect as Re,useRef as yo}from"react";import{Alert as O,Animated as Fe,DevSettings as He,Platform as Xe,ScrollView as M,StyleSheet as Ye,Text as S,TextInput as Co,View as C}from"react-native";import So,{Path as Ze}from"react-native-svg";import{animateNextLayout as ie,useInspector as ko}from"./InspectorContext";import V from"../TouchableScale";import To from"../Slider";import{toggleGlobalTheme as Vo}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as x}from"../../styles/AppFonts";import{calculateRamBasedLimits as Bo}from"../../helpers/settingsStore";import{clearNetworkLogs as zo}from"../../customHooks/networkLogger";import{clearConsoleLogs as Ro}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as Fo}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Ho}from"../../customHooks/crashHandler";import{isReduxConnected as Io}from"../../customHooks/reduxLogger";import{isAnalyticsConnected as vo}from"../../customHooks/analyticsLogger";import{useTranslation as Do}from"../../i18n";import{SignalIcon as Cr,TerminalIcon as Sr,AnalyticsIcon as Tr,SettingsIcon as Po,SunIcon as $o,MoonIcon as Lo,ScreenIcon as Vr,MotionIcon as Wo,LayersIcon as Q,EyeIcon as Ie,CheckIcon as U,TrashIcon as E,PackageIcon as Ao,ReduxIcon as Br,CrashIcon as Oo,ShieldAlertIcon as Rr,ForwardChevronIcon as Mo,ChevronDownIcon as Eo,BrainIcon as Fr,SmartphoneIcon as No,DatabaseIcon as Go,QrCodeIcon as Uo,FilmIcon as Hr,ScreencastIcon as Jo,CameraIcon as Ce,VideoCameraIcon as Ir,MicrophoneIcon as Dr,GifIcon as Pr,ImageIcon as $r,BellIcon as Lr}from"../NetworkIcons";import{ScreenCapture as ve}from"../../capture";import{triggerNativeHaptic as H}from"../../native/NativeInspector";import{isLocalDebugEnvironment as Ko}from"../../helpers";import{showToast as R}from"../../helpers/toast";import{pruneAllLogs as _o}from"../../helpers/memoryManager";const Qo=()=>{const{t:w}=Do(),{settingsPage:A,setSettingsPage:De,settingsActiveSubTab:q,setSettingsActiveSubTab:Wr,tabVisibility:T,toggleTabVisibility:Ar,defaultTab:J,setDefaultTab:Or,isDark:_,setIsDark:Mr,modalHeightPercent:X,setModalHeightPercent:Er,modalAnimationType:Nr,setModalAnimationType:Gr,showDuplicateLogs:we,setShowDuplicateLogs:jr,showUpdateToast:xe,setShowUpdateToast:Ur,showConsoleLevels:qr,setShowConsoleLevels:Jr,closeModal:Kr,logs:Pe,consoleLogs:$e,analyticsEvents:Le,reduxState:We,maxConsoleLogs:Se,setMaxConsoleLogs:_r,maxAnalyticsEventsLimit:Ae,setMaxAnalyticsEventsLimit:Qr,isAutoRamLimitEnabled:I,setIsAutoRamLimitEnabled:Xr,deviceFreeRamMb:ke,reduxAutoRefresh:Te,setReduxAutoRefreshState:Yr,reduxExpandDepth:Oe,setReduxExpandDepth:Zr,setSelected:eo,setSelectedEvent:ro,setReduxState:oo,crashRecords:Me,maxCrashLogs:Ee,setMaxCrashLogs:to,pushRecords:io,maxPushLogs:lo,setMaxPushLogs:ao,clearAllPushLogs:no,simulatePush:Y}=ko(),[Z,Ne]=G(X),[Ve,Ge]=G("PNG"),[P,ee]=G(!0),[je,Ue]=G("Muted"),[qe,Je]=G("30"),[L,re]=G(!0);Re(()=>{Ne(X)},[X]);const oe=Bo(ke),$=Qe(()=>[{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)"}].filter(r=>r.key==="debugging"?Xe.OS==="android"&&Ko():!0),[]),[j,Be]=G(()=>({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,debugging:!!T?.debugging,media:!!(T?.media??!0),push:!!(T?.push??!0)}));Re(()=>{Be({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,debugging:!!T?.debugging,media:!!(T?.media??!0),push:!!(T?.push??!0)})},[T]);const K=Qe(()=>$.some(r=>!!j[r.key]!=!!T?.[r.key]),[j,T,$]),so=$.filter(r=>r.key==="apis"||!!j[r.key]).length,co=()=>{K&&O.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:()=>{Be({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,debugging:!!T?.debugging,media:!!(T?.media??!0),push:!!(T?.push??!0)})}},{text:"Save & Reload",style:"default",onPress:()=>{ie(),$.forEach(r=>{if(r.key!=="apis"){const k=!!j[r.key],D=!!T?.[r.key];k!==D&&Ar(r.key)}}),Kr(),setTimeout(()=>{__DEV__&&He&&He.reload&&He.reload()},350)}}])},[ze,Ke]=G(!1),z=r=><C style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
2
- <V disabled={!r.onPress}onPress={r.onPress}style={{flexDirection:"row",alignItems:"center",gap:12}}>
1
+ import{useMemo as he,useState as be,useEffect as ve,useRef as ko}from"react";import{Alert as N,Animated as Le,DevSettings as $e,Platform as er,ScrollView as G,StyleSheet as rr,Text as T,TextInput as To,View as C}from"react-native";import Vo,{Path as Cr}from"react-native-svg";import{animateNextLayout as me,useInspector as zo}from"./InspectorContext";import B from"../TouchableScale";import Sr from"../Slider";import{toggleGlobalTheme as Bo}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as S}from"../../styles/AppFonts";import{calculateRamBasedLimits as Ro}from"../../helpers/settingsStore";import{clearNetworkLogs as Fo}from"../../customHooks/networkLogger";import{clearConsoleLogs as Io}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as Ho,isAnalyticsConnected as kr}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Do}from"../../customHooks/crashHandler";import{isReduxConnected as xr}from"../../customHooks/reduxLogger";import{useTranslation as vo,SUPPORTED_LANGUAGES as Tr,getLanguage as Lo}from"../../i18n";import{LanguageSelectorModal as $o}from"./LanguageSelectorModal";import{GlobeIcon as Vr,SignalIcon as Br,TerminalIcon as Rr,AnalyticsIcon as Fr,SettingsIcon as Wo,SunIcon as Po,MoonIcon as Ao,ScreenIcon as Ir,MotionIcon as Oo,LayersIcon as Y,EyeIcon as Ce,CheckIcon as _,TrashIcon as U,PackageIcon as Mo,ReduxIcon as Hr,CrashIcon as Eo,ShieldAlertIcon as Dr,ForwardChevronIcon as Lr,ChevronDownIcon as No,BrainIcon as $r,SmartphoneIcon as Go,DatabaseIcon as Uo,QrCodeIcon as Ko,FilmIcon as Wr,ScreencastIcon as _o,CameraIcon as Se,VideoCameraIcon as Pr,MicrophoneIcon as Ar,GifIcon as Or,ImageIcon as Mr,BellIcon as Er,WebsocketIcon as Nr,BoltIcon as We}from"../NetworkIcons";import{ScreenCapture as Pe}from"../../capture";import{triggerNativeHaptic as L}from"../../native/NativeInspector";import{isLocalDebugEnvironment as Jo}from"../../helpers";import{showToast as H}from"../../helpers/toast";import{pruneAllLogs as Qo}from"../../helpers/memoryManager";const Xo=()=>{const{t:w}=vo(),{settingsPage:A,setSettingsPage:Ae,settingsActiveSubTab:J,setSettingsActiveSubTab:jr,tabVisibility:R,toggleTabVisibility:Gr,defaultTab:Q,setDefaultTab:Ur,isDark:Z,setIsDark:qr,modalHeightPercent:ee,setModalHeightPercent:Kr,modalAnimationType:_r,setModalAnimationType:Jr,showDuplicateLogs:ke,setShowDuplicateLogs:Qr,showUpdateToast:xe,setShowUpdateToast:Xr,showConsoleLevels:Yr,setShowConsoleLevels:Zr,closeModal:eo,logs:Te,consoleLogs:Ve,analyticsEvents:ze,reduxState:re,maxConsoleLogs:Be,setMaxConsoleLogs:ro,maxAnalyticsEventsLimit:Oe,setMaxAnalyticsEventsLimit:oo,isAutoRamLimitEnabled:W,setIsAutoRamLimitEnabled:to,deviceFreeRamMb:Re,reduxAutoRefresh:Fe,setReduxAutoRefreshState:io,reduxExpandDepth:Me,setReduxExpandDepth:lo,setSelected:ao,setSelectedEvent:no,setReduxState:so,crashRecords:oe,maxCrashLogs:Ee,setMaxCrashLogs:co,pushRecords:te,maxPushLogs:go,setMaxPushLogs:po,clearAllPushLogs:uo,simulatePush:ie,socketRecords:le,maxSocketLogs:yo,setMaxSocketLogs:ho,clearAllSocketLogs:bo,simulateSocket:ae,captureImageFormat:Ie,setCaptureImageFormat:Ne,captureAutoHide:P,setCaptureAutoHide:ne,captureAudioMode:je,setCaptureAudioMode:Ge,captureFps:Ue,setCaptureFps:qe,captureScale:Yo,setCaptureScale:Zo,captureBitrate:et,setCaptureBitrate:rt,captureMaxDurationSeconds:ot,setCaptureMaxDurationSeconds:tt,captureAutoGif:O,setCaptureAutoGif:se,peekOpacity:Ke,setPeekOpacity:mo}=zo(),[de,_e]=be(ee),[fo,Je]=be(!1),Co=Lo(),ce=Tr.find(r=>r.code===Co)||Tr[0];ve(()=>{_e(ee)},[ee]);const ge=Ro(Re),$=he(()=>[{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"?er.OS==="android"&&Jo():!0),[]),[q,pe]=be(()=>({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)}));ve(()=>{pe({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 X=he(()=>$.some(r=>!!q[r.key]!=!!R?.[r.key]),[q,R,$]),Qe=$.filter(r=>r.key==="apis"||!!q[r.key]).length,ue=he(()=>$.filter(r=>!(r.key==="apis"||r.key==="redux"&&!xr()||r.key==="analytics"&&!kr())),[$]),E=he(()=>ue.length===0?!1:ue.every(r=>!!q[r.key]),[ue,q]),Xe=()=>{const r=!E;pe(V=>{const D={...V};return ue.forEach(v=>{D[v.key]=r}),D})},wo=()=>{X&&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:()=>{pe({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:()=>{me(),$.forEach(r=>{if(r.key!=="apis"){const V=!!q[r.key],D=!!R?.[r.key];V!==D&&Gr(r.key)}}),eo(),setTimeout(()=>{__DEV__&&$e&&$e.reload&&$e.reload()},350)}}])},[He,Ye]=be(!1),F=r=><C style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
2
+ <B 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}
5
5
  </C>
6
6
  <C style={{flex:1}}>
7
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
7
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
8
8
  {r.label}
9
- </S>
10
- {r.description?<S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
9
+ </T>
10
+ {r.description?<T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
11
11
  {r.description}
12
- </S>:null}
12
+ </T>:null}
13
13
  </C>
14
14
  {r.right||null}
15
- </V>
15
+ </B>
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
- <Co style={{flex:1,fontFamily:x.interMedium,fontSize:14,lineHeight:18,color:e.primaryBlack,paddingVertical:6}}value={String(r.numericInput.value||"")}onChangeText={k=>{const D=parseInt(k.replace(/[^0-9]/g,""),10);if(!isNaN(D)){const F=Math.max(r.numericInput?.min??1,Math.min(r.numericInput?.max??1e4,D));r.numericInput?.onChange(F)}}}keyboardType={r.numericInput.keyboardType??"number-pad"}placeholder={r.numericInput.placeholder}placeholderTextColor={e.grayTextWeak}maxLength={6}selectTextOnFocus/>
19
- <S style={{fontFamily:x.interBold,fontSize:11,color:e.purple,marginLeft:6}}>
18
+ <To style={{flex:1,fontFamily:S.interMedium,fontSize:14,lineHeight:18,color:e.primaryBlack,paddingVertical:6}}value={String(r.numericInput.value||"")}onChangeText={V=>{const D=parseInt(V.replace(/[^0-9]/g,""),10);if(!isNaN(D)){const v=Math.max(r.numericInput?.min??1,Math.min(r.numericInput?.max??1e4,D));r.numericInput?.onChange(v)}}}keyboardType={r.numericInput.keyboardType??"number-pad"}placeholder={r.numericInput.placeholder}placeholderTextColor={e.grayTextWeak}maxLength={6}selectTextOnFocus/>
19
+ <T style={{fontFamily:S.interBold,fontSize:11,color:e.purple,marginLeft:6}}>
20
20
  MAX
21
- </S>
21
+ </T>
22
22
  </C>
23
- {r.numericInput.min!==void 0||r.numericInput.max!==void 0?<S style={{fontFamily:x.interRegular,fontSize:10,lineHeight:13,color:e.grayTextWeak}}>
23
+ {r.numericInput.min!==void 0||r.numericInput.max!==void 0?<T style={{fontFamily:S.interRegular,fontSize:10,lineHeight:13,color:e.grayTextWeak}}>
24
24
  Range: {r.numericInput.min??1} -{" "}
25
25
  {r.numericInput.max??"\u221E"}
26
- </S>:null}
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(k=>{const D=r.picker.selectedValue===k;return<V key={String(k)}onPress={()=>r.picker.onSelect(k)}style={{flex:1,paddingVertical:6,alignItems:"center",borderRadius:6,backgroundColor:D?e.purple:"transparent"}}>
30
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:D?e.white:e.grayText}}>
31
- {r.picker.formatLabel?r.picker.formatLabel(k):k}
32
- </S>
33
- </V>})}
29
+ {r.picker.options.map(V=>{const D=r.picker.selectedValue===V;return<B key={String(V)}onPress={()=>r.picker.onSelect(V)}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(V):V}
32
+ </T>
33
+ </B>})}
34
34
  </C>}
35
- </C>,go=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
- <M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
35
+ </C>,So=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
+ <G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
37
37
 
38
38
 
39
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
- <M horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:2}}>
41
- {[{key:"module",label:w("settings.modulesAndTools","Modules & Tools"),Icon:Q,badge:`${$.filter(r=>j?.[r.key]||r.key==="apis").length}/${$.length}`},{key:"ui",label:w("settings.uiPreferences","UI Preferences"),Icon:Vr},{key:"limits",label:w("settings.ramLimits","RAM & Limits"),Icon:Fr},{key:"capture",label:w("settings.screenVideoCapture","Screen & Video Capture"),Icon:Ce}].map(r=>{const k=q===r.key,D=r.Icon;return<V key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:k}}onPress={()=>{ie(),Wr(r.key)}}style={{paddingVertical:8,paddingHorizontal:14,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,borderRadius:9,backgroundColor:k?e.purple:"transparent"}}>
42
- <D color={k?e.white:e.grayText}size={13}/>
43
- <S style={{fontFamily:x.interBold,fontSize:12.5,lineHeight:16,color:k?e.white:e.grayText}}>
40
+ <G horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:2}}>
41
+ {[{key:"module",label:w("settings.modulesAndTools","Modules & Tools"),Icon:Y,badge:`${$.filter(r=>q?.[r.key]||r.key==="apis").length}/${$.length}`},{key:"ui",label:w("settings.uiPreferences","UI Preferences"),Icon:Ir},{key:"limits",label:w("settings.ramLimits","RAM & Limits"),Icon:$r},{key:"capture",label:w("settings.screenVideoCapture","Screen & Video Capture"),Icon:Se}].map(r=>{const V=J===r.key,D=r.Icon;return<B key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:V}}onPress={()=>{me(),jr(r.key)}}style={{paddingVertical:8,paddingHorizontal:14,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,borderRadius:9,backgroundColor:V?e.purple:"transparent"}}>
42
+ <D color={V?e.white:e.grayText}size={13}/>
43
+ <T style={{fontFamily:S.interBold,fontSize:12.5,lineHeight:16,color:V?e.white:e.grayText}}>
44
44
  {r.label}
45
- </S>
46
- {r.badge&&<C style={{backgroundColor:k?"rgba(255,255,255,0.25)":`${e.purple}18`,paddingHorizontal:5.5,paddingVertical:1,borderRadius:10}}>
47
- <S style={{fontFamily:x.interBold,fontSize:9.5,color:k?e.white:e.purple}}>
45
+ </T>
46
+ {r.badge&&<C style={{backgroundColor:V?"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:V?e.white:e.purple}}>
48
48
  {r.badge}
49
- </S>
49
+ </T>
50
50
  </C>}
51
- </V>})}
52
- </M>
51
+ </B>})}
52
+ </G>
53
53
  </C>
54
54
 
55
- {q==="module"&&<C style={{gap:12}}>
55
+ {J==="module"&&<C style={{gap:12}}>
56
+
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
+ <B accessible={!0}accessibilityRole="checkbox"accessibilityLabel="Toggle Select All Modules"accessibilityState={{checked:E}}onPress={Xe}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&&<_ 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
+ {Qe} of {$.length} modules active
68
+ </T>
69
+ </C>
70
+ </B>
71
+
72
+ <B onPress={Xe}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"}
75
+ </T>
76
+ </B>
77
+ </C>
78
+
56
79
 
57
80
  <C style={{gap:10}}>
58
- {$.map(r=>{const k=Io(),D=vo(),F=r.key==="redux"&&!k||r.key==="analytics"&&!D,W=r.key==="apis"||F,B=r.key==="apis"||!!j?.[r.key]&&!F,po=r.key==="apis"?`${Pe.length} requests`:r.key==="logs"?`${$e.length} logs \u2022 Limit: ${Se}`:r.key==="crash"?`${Me?.length||0} crashes recorded \u2022 Crash Guard`:r.key==="analytics"?`${Le.length} events logged`:r.key==="redux"?`${Object.keys(We||{}).length} slices \u2022 Depth: ${Oe}`:"";return<C key={r.key}style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1.5,borderColor:B?`${e.purple}38`:e.grayBorderSecondary,padding:14,gap:10,shadowColor:e.black,shadowOpacity:B?.04:.02,shadowRadius:5,shadowOffset:{width:0,height:2}}}>
81
+ {$.map(r=>{const V=xr(),D=kr(),v=r.key==="redux"&&!V||r.key==="analytics"&&!D,M=r.key==="apis"||v,I=r.key==="apis"||!!q?.[r.key]&&!v,De=r.key==="apis"?Te.length>0?`${Te.length} requests`:"":r.key==="logs"?Ve.length>0?`${Ve.length} logs \u2022 Limit: ${Be}`:"":r.key==="crash"?oe&&oe.length>0?`${oe.length} crashes recorded \u2022 Crash Guard`:"":r.key==="analytics"?ze.length>0?`${ze.length} events logged`:"":r.key==="redux"?re&&Object.keys(re).length>0?`${Object.keys(re).length} slices \u2022 Depth: ${Me}`:"":r.key==="push"?te&&te.length>0?`${te.length} notifications logged`:"":r.key==="socket"&&le&&le.length>0?`${le.length} connections active`:"";return<C key={r.key}style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1.5,borderColor:I?`${e.purple}38`:e.grayBorderSecondary,padding:14,gap:10,shadowColor:e.black,shadowOpacity:I?.04:.02,shadowRadius:5,shadowOffset:{width:0,height:2}}}>
59
82
 
60
83
  <C style={{flexDirection:"row",alignItems:"flex-start",gap:10}}>
61
84
 
62
- <V accessible={!0}accessibilityRole="checkbox"accessibilityLabel={`Select ${r.label}`}accessibilityState={{checked:B,disabled:W}}disabled={W}onPress={()=>{W||Be(_e=>({..._e,[r.key]:!_e[r.key]}))}}hitSlop={8}style={{width:22,height:22,borderRadius:6,borderWidth:B?0:1.8,borderColor:W?e.dividerColor:e.grayBorderSecondary,backgroundColor:r.key==="apis"?`${e.blue500}22`:B?e.purple:e.grayBackground,alignItems:"center",justifyContent:"center",marginTop:7,shadowColor:B?e.purple:"transparent",shadowOpacity:B?.25:0,shadowRadius:2,elevation:B?2:0}}>
63
- {r.key==="apis"?<U size={12}color={e.blue500}/>:B?<U size={12}color={e.white}/>:W?<So width={10}height={10}viewBox="0 0 24 24"fill="none">
64
- <Ze d="M7 10V7a5 5 0 0 1 10 0v3"stroke={e.grayText}strokeWidth="2.2"strokeLinecap="round"/>
65
- <Ze d="M5 10h14v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z"fill={e.grayText}/>
66
- </So>:null}
67
- </V>
85
+ <B accessible={!0}accessibilityRole="checkbox"accessibilityLabel={`Select ${r.label}`}accessibilityState={{checked:I,disabled:M}}disabled={M}onPress={()=>{M||pe(Ze=>({...Ze,[r.key]:!Ze[r.key]}))}}hitSlop={8}style={{width:22,height:22,borderRadius:6,borderWidth:I?0:1.8,borderColor:M?e.dividerColor:e.grayBorderSecondary,backgroundColor:r.key==="apis"?`${e.blue500}22`:I?e.purple:e.grayBackground,alignItems:"center",justifyContent:"center",marginTop:7,shadowColor:I?e.purple:"transparent",shadowOpacity:I?.25:0,shadowRadius:2,elevation:I?2:0}}>
86
+ {r.key==="apis"?<_ size={12}color={e.blue500}/>:I?<_ size={12}color={e.white}/>:M?<Vo width={10}height={10}viewBox="0 0 24 24"fill="none">
87
+ <Cr d="M7 10V7a5 5 0 0 1 10 0v3"stroke={e.grayText}strokeWidth="2.2"strokeLinecap="round"/>
88
+ <Cr d="M5 10h14v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z"fill={e.grayText}/>
89
+ </Vo>:null}
90
+ </B>
68
91
 
69
92
 
70
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`${r.label} settings`}disabled={F}onPress={()=>{ie(),De(r.key)}}style={{flex:1,flexDirection:"row",alignItems:"flex-start",gap:10}}>
93
+ <B accessible={!0}accessibilityRole="button"accessibilityLabel={`${r.label} settings`}disabled={v}onPress={()=>{me(),Ae(r.key)}}style={{flex:1,flexDirection:"row",alignItems:"flex-start",gap:10}}>
71
94
 
72
- <C style={{width:36,height:36,borderRadius:10,backgroundColor:W?`${e.grayBorderSecondary}4D`:B?`${e.purple}14`:e.grayBackground,borderWidth:1,borderColor:W?e.dividerColor:B?`${e.purple}33`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",marginTop:1}}>
73
- {r.icon==="apis"&&<Cr color={B?e.purple:e.grayTextWeak}size={16}/>}
74
- {r.icon==="logs"&&<Sr color={B?e.purple:e.grayTextWeak}size={16}/>}
75
- {r.icon==="crash"&&<Oo color={B?e.purple:e.grayTextWeak}size={16}/>}
76
- {r.icon==="analytics"&&<Tr color={B?e.purple:e.grayTextWeak}size={16}/>}
77
- {r.icon==="redux"&&<Br color={B?e.purple:e.grayTextWeak}size={16}/>}
78
- {r.icon==="device"&&<No color={B?e.purple:e.grayTextWeak}size={16}/>}
79
- {r.icon==="storage"&&<Go color={B?e.purple:e.grayTextWeak}size={16}/>}
80
- {r.icon==="debugging"&&<Uo color={B?e.purple:e.grayTextWeak}size={16}/>}
81
- {r.icon==="media"&&<Jo color={B?e.purple:e.grayTextWeak}size={16}/>}
82
- {r.icon==="push"&&<Lr color={B?e.purple:e.grayTextWeak}size={16}/>}
95
+ <C style={{width:36,height:36,borderRadius:10,backgroundColor:M?`${e.grayBorderSecondary}4D`:I?`${e.purple}14`:e.grayBackground,borderWidth:1,borderColor:M?e.dividerColor:I?`${e.purple}33`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",marginTop:1}}>
96
+ {r.icon==="apis"&&<Br color={I?e.purple:e.grayTextWeak}size={16}/>}
97
+ {r.icon==="logs"&&<Rr color={I?e.purple:e.grayTextWeak}size={16}/>}
98
+ {r.icon==="crash"&&<Eo color={I?e.purple:e.grayTextWeak}size={16}/>}
99
+ {r.icon==="analytics"&&<Fr color={I?e.purple:e.grayTextWeak}size={16}/>}
100
+ {r.icon==="redux"&&<Hr color={I?e.purple:e.grayTextWeak}size={16}/>}
101
+ {r.icon==="device"&&<Go color={I?e.purple:e.grayTextWeak}size={16}/>}
102
+ {r.icon==="storage"&&<Uo color={I?e.purple:e.grayTextWeak}size={16}/>}
103
+ {r.icon==="debugging"&&<Ko color={I?e.purple:e.grayTextWeak}size={16}/>}
104
+ {r.icon==="media"&&<_o color={I?e.purple:e.grayTextWeak}size={16}/>}
105
+ {r.icon==="push"&&<Er color={I?e.purple:e.grayTextWeak}size={16}/>}
106
+ {r.icon==="socket"&&<Nr color={I?e.purple:e.grayTextWeak}size={16}/>}
83
107
  </C>
84
108
 
85
109
 
86
110
  <C style={{flex:1,gap:2}}>
87
111
  <C style={{flexDirection:"row",alignItems:"center",gap:6,flexWrap:"wrap"}}>
88
- <C style={{minWidth:22,height:22,paddingHorizontal:5,borderRadius:11,backgroundColor:B?`${e.purple}1C`:`${e.grayBorderSecondary}80`,borderWidth:1,borderColor:B?`${e.purple}44`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center"}}>
89
- <S style={{fontFamily:x.interBold,fontSize:10,lineHeight:13,color:B?e.purple:e.grayText}}>
112
+ <C style={{minWidth:22,height:22,paddingHorizontal:5,borderRadius:11,backgroundColor:I?`${e.purple}1C`:`${e.grayBorderSecondary}80`,borderWidth:1,borderColor:I?`${e.purple}44`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center"}}>
113
+ <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:I?e.purple:e.grayText}}>
90
114
  #{r.id}
91
- </S>
115
+ </T>
92
116
  </C>
93
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:W?e.grayText:e.primaryBlack}}>
117
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:M?e.grayText:e.primaryBlack}}>
94
118
  {r.label}
95
- </S>
119
+ </T>
96
120
 
97
121
 
98
- {r.key===J&&!F&&<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}}>
122
+ {r.key===Q&&!v&&<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}}>
99
123
  <C style={{width:4,height:4,borderRadius:2,backgroundColor:e.purple}}/>
100
- <S style={{fontFamily:x.interBold,fontSize:8,lineHeight:11,color:e.purple,letterSpacing:.4}}>
124
+ <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.purple,letterSpacing:.4}}>
101
125
  {w("settings.defaultBadge")}
102
- </S>
126
+ </T>
103
127
  </C>}
104
128
 
105
129
 
106
130
  {r.key==="apis"?<C style={{backgroundColor:`${e.blue500}14`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.blue500}33`}}>
107
- <S style={{fontFamily:x.interBold,fontSize:8,lineHeight:11,color:e.blue500,letterSpacing:.3}}>
131
+ <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.blue500,letterSpacing:.3}}>
108
132
  {w("settings.coreBadge")}
109
- </S>
110
- </C>:F?<C style={{backgroundColor:`${e.amber500}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.amber500}35`}}>
111
- <S style={{fontFamily:x.interBold,fontSize:8,lineHeight:11,color:e.amber700,letterSpacing:.3}}>
133
+ </T>
134
+ </C>:v?<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}}>
112
136
  {r.key==="redux"?w("settings.notConnectedBadge"):w("settings.notDetectedBadge")}
113
- </S>
114
- </C>:B?<C style={{backgroundColor:`${e.liveGreen}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.liveGreen}38`}}>
115
- <S style={{fontFamily:x.interBold,fontSize:8,lineHeight:11,color:e.green700,letterSpacing:.3}}>
137
+ </T>
138
+ </C>:I?<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}}>
116
140
  {w("settings.activeBadge")}
117
- </S>
141
+ </T>
118
142
  </C>:<C style={{backgroundColor:`${e.grayTextWeak}18`,borderRadius:4,paddingHorizontal:5,paddingVertical:1.5,borderWidth:1,borderColor:`${e.grayTextWeak}2E`}}>
119
- <S style={{fontFamily:x.interBold,fontSize:8,lineHeight:11,color:e.grayTextWeak,letterSpacing:.3}}>
143
+ <T style={{fontFamily:S.interBold,fontSize:8,lineHeight:11,color:e.grayTextWeak,letterSpacing:.3}}>
120
144
  {w("settings.dormantBadge")}
121
- </S>
145
+ </T>
122
146
  </C>}
123
147
  </C>
124
148
 
125
- <S style={{fontFamily:x.interRegular,fontSize:11,color:e.grayText,lineHeight:15,marginTop:1}}>
149
+ <T style={{fontFamily:S.interRegular,fontSize:11,color:e.grayText,lineHeight:15,marginTop:1}}>
126
150
  {r.desc}
127
- </S>
151
+ </T>
128
152
  </C>
129
- </V>
153
+ </B>
130
154
  </C>
131
155
 
132
156
 
133
- {!F&&<C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor}}>
157
+ {!v&&<C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor}}>
134
158
 
135
- <C style={{flexDirection:"row",alignItems:"center",gap:6,flex:1}}>
136
- <C style={{width:6,height:6,borderRadius:3,backgroundColor:B?e.liveGreen:e.grayTextWeak}}/>
137
- <S style={{fontFamily:x.interMedium,fontSize:11,color:e.grayText,lineHeight:14}}>
138
- {po}
139
- </S>
140
- </C>
159
+ {De&&De.trim().length>0?<C style={{flexDirection:"row",alignItems:"center",gap:6,flex:1}}>
160
+ <C style={{width:6,height:6,borderRadius:3,backgroundColor:I?e.liveGreen:e.grayTextWeak}}/>
161
+ <T style={{fontFamily:S.interMedium,fontSize:11,color:e.grayText,lineHeight:14}}>
162
+ {De}
163
+ </T>
164
+ </C>:<C style={{flex:1}}/>}
141
165
 
142
166
 
143
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`Configure ${r.label} settings`}onPress={()=>{ie(),De(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`}}>
144
- <Po color={e.purple}size={11}/>
145
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.purple}}>
167
+ <B accessible={!0}accessibilityRole="button"accessibilityLabel={`Configure ${r.label} settings`}onPress={()=>{me(),Ae(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
+ <Wo color={e.purple}size={11}/>
169
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.purple}}>
146
170
  {w("settings.configure")}
147
- </S>
148
- <Mo color={e.purple}size={9}/>
149
- </V>
171
+ </T>
172
+ <Lr color={e.purple}size={9}/>
173
+ </B>
150
174
  </C>}
151
175
  </C>})}
152
176
  </C>
153
177
  </C>}
154
178
 
155
- {q==="ui"&&<C style={{gap:14}}>
179
+ {J==="ui"&&<C style={{gap:14}}>
156
180
 
157
181
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
158
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
182
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
159
183
  {w("settings.appearanceTheme")}
160
- </S>
184
+ </T>
161
185
 
162
186
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
163
187
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
164
188
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
165
- {_?<$o color={e.purple}size={15}/>:<Lo color={e.purple}size={15}/>}
189
+ {Z?<Po color={e.purple}size={15}/>:<Ao color={e.purple}size={15}/>}
166
190
  </C>
167
191
  <C style={{flex:1}}>
168
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
192
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
169
193
  {w("settings.general.darkMode")}
170
- </S>
171
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
194
+ </T>
195
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
172
196
  {w("settings.general.darkModeDescription")}
173
- </S>
197
+ </T>
174
198
  </C>
175
199
  </C>
176
200
 
177
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:_}}onPress={()=>{const r=!_;Mr(r),Vo(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:_?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:_?"flex-end":"flex-start"}}>
201
+ <B accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:Z}}onPress={()=>{const r=!Z;qr(r),Bo(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:Z?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Z?"flex-end":"flex-start"}}>
178
202
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
179
- </V>
203
+ </B>
204
+ </C>
205
+
206
+ <C style={{height:1,backgroundColor:e.grayBorderSecondary,opacity:.6}}/>
207
+
208
+
209
+ <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
210
+ <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
211
+ <C style={{width:32,height:32,borderRadius:8,backgroundColor:`${e.blue600}14`,alignItems:"center",justifyContent:"center"}}>
212
+ <Vr color={e.blue600}size={15}/>
213
+ </C>
214
+ <C style={{flex:1}}>
215
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
216
+ {w("settings.general.language","Language")}
217
+ </T>
218
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
219
+ {w("settings.general.languageDescription","Choose preferred display language")}
220
+ </T>
221
+ </C>
222
+ </C>
223
+
224
+ <B onPress={()=>{L("light"),Je(!0)}}style={{flexDirection:"row",alignItems:"center",backgroundColor:e.purpleShade50,paddingHorizontal:10,paddingVertical:6,borderRadius:8,gap:5,borderWidth:1,borderColor:`${e.purple}20`}}>
225
+ {ce?.flag?<T style={{fontSize:13}}>{ce.flag}</T>:<Vr size={14}color={e.purple}/>}
226
+ <T style={{fontFamily:S.interSemiBold,fontSize:12,color:e.purple}}>
227
+ {ce?.nativeName||ce?.name||"English"}
228
+ </T>
229
+ <Lr size={11}color={e.purple}/>
230
+ </B>
180
231
  </C>
181
232
  </C>
182
233
 
183
234
 
184
235
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:14}}>
185
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
236
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
186
237
  {w("settings.windowLayout")}
187
- </S>
238
+ </T>
188
239
 
189
240
 
190
241
  <C style={{gap:8}}>
191
242
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
192
243
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
193
244
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
194
- <Vr color={e.purple}size={15}/>
245
+ <Ir color={e.purple}size={15}/>
195
246
  </C>
196
247
  <C style={{flex:1}}>
197
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
248
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
198
249
  {w("settings.general.modalHeight")}
199
- </S>
200
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
250
+ </T>
251
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
201
252
  {w("settings.general.modalHeightDescription")}
202
- </S>
253
+ </T>
203
254
  </C>
204
255
  </C>
205
256
 
206
- {Z!==X&&<V onPress={()=>{Er(Z)}}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}}>
207
- <U size={11}color={e.white}/>
208
- <S style={{fontFamily:x.interBold,fontSize:11,color:e.white}}>
209
- Save ({Z}%)
210
- </S>
211
- </V>}
257
+ {de!==ee&&<B onPress={()=>{Kr(de)}}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
+ <_ size={11}color={e.white}/>
259
+ <T style={{fontFamily:S.interBold,fontSize:11,color:e.white}}>
260
+ Save ({de}%)
261
+ </T>
262
+ </B>}
212
263
  </C>
213
264
 
214
265
  <C style={{marginTop:6}}>
215
- <To value={Z}onValueChange={Ne}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
266
+ <Sr value={de}onValueChange={_e}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
267
+ </C>
268
+ </C>
269
+
270
+ <C style={{height:1,backgroundColor:e.dividerColor}}/>
271
+
272
+
273
+ <C style={{gap:8}}>
274
+ <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
275
+ <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
276
+ <C style={{width:32,height:32,borderRadius:8,backgroundColor:"rgba(6, 182, 212, 0.12)",alignItems:"center",justifyContent:"center"}}>
277
+ <Ce color={"#06B6D4"}size={15}/>
278
+ </C>
279
+ <C style={{flex:1}}>
280
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
281
+ {w("settings.general.peekOpacity","Peek-Through Opacity")}
282
+ </T>
283
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
284
+ {w("settings.general.peekOpacityDescription","Transparency level when the eye icon is enabled")}
285
+ </T>
286
+ </C>
287
+ </C>
288
+
289
+ <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
+ <T style={{fontFamily:S.interBold,fontSize:12,color:"#06B6D4"}}>
291
+ {Ke.toFixed(1)}
292
+ </T>
293
+ </C>
294
+ </C>
295
+
296
+ <C style={{marginTop:6}}>
297
+ <Sr value={Ke}onValueChange={r=>{const V=Math.round(r*10)/10;mo(V)}}min={.1}max={1}step={.1}quickPresets={[.1,.3,.5,.7,1]}formatLabel={r=>r.toFixed(1)}/>
216
298
  </C>
217
299
  </C>
218
300
 
@@ -222,184 +304,184 @@ import{useMemo as Qe,useState as G,useEffect as Re,useRef as yo}from"react";impo
222
304
  <C style={{gap:8}}>
223
305
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
224
306
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
225
- <Wo color={e.purple}size={15}/>
307
+ <Oo color={e.purple}size={15}/>
226
308
  </C>
227
309
  <C style={{flex:1}}>
228
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
310
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
229
311
  {w("settings.general.modalAnimation")}
230
- </S>
231
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
312
+ </T>
313
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
232
314
  {w("settings.general.modalAnimationDescription")}
233
- </S>
315
+ </T>
234
316
  </C>
235
317
  </C>
236
318
 
237
319
  <C style={{flexDirection:"row",backgroundColor:e.grayBackground,borderRadius:10,padding:3,borderWidth:1,borderColor:e.dividerColor}}>
238
- {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const k=Nr===r.key;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:k}}onPress={()=>Gr(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:k?e.purple:"transparent"}}>
239
- <S style={{fontFamily:x.interBold,fontSize:11.5,lineHeight:15,color:k?e.white:e.grayText}}>
320
+ {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const V=_r===r.key;return<B key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:V}}onPress={()=>Jr(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:V?e.purple:"transparent"}}>
321
+ <T style={{fontFamily:S.interBold,fontSize:11.5,lineHeight:15,color:V?e.white:e.grayText}}>
240
322
  {r.label}
241
- </S>
242
- </V>})}
323
+ </T>
324
+ </B>})}
243
325
  </C>
244
326
  </C>
245
327
  </C>
246
328
 
247
329
 
248
330
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
249
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
331
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
250
332
  {w("settings.startupDefault")}
251
- </S>
333
+ </T>
252
334
 
253
335
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
254
336
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
255
- <Q color={e.purple}size={15}/>
337
+ <Y color={e.purple}size={15}/>
256
338
  </C>
257
339
  <C style={{flex:1}}>
258
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
340
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
259
341
  {w("settings.general.defaultOpeningTab")}
260
- </S>
261
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
342
+ </T>
343
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
262
344
  {w("settings.general.defaultOpeningTabDesc")}
263
- </S>
345
+ </T>
264
346
  </C>
265
347
  </C>
266
348
 
267
349
 
268
350
  <C style={{marginTop:6,gap:6}}>
269
- <V accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${$.find(r=>r.key===J)?.label||"APIs"}`}onPress={()=>Ke(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:ze?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
351
+ <B accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${$.find(r=>r.key===Q)?.label||"APIs"}`}onPress={()=>Ye(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:He?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
270
352
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
271
353
  <C style={{width:8,height:8,borderRadius:4,backgroundColor:e.purple}}/>
272
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
273
- {$.find(r=>r.key===J)?`#${$.find(r=>r.key===J)?.id} ${$.find(r=>r.key===J)?.label}`:"#1 APIs (Network)"}
274
- </S>
354
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
355
+ {$.find(r=>r.key===Q)?`#${$.find(r=>r.key===Q)?.id} ${$.find(r=>r.key===Q)?.label}`:"#1 APIs (Network)"}
356
+ </T>
275
357
  <C style={{backgroundColor:`${e.purple}14`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:6}}>
276
- <S style={{fontFamily:x.interBold,fontSize:8.5,color:e.purple}}>
358
+ <T style={{fontFamily:S.interBold,fontSize:8.5,color:e.purple}}>
277
359
  DEFAULT
278
- </S>
360
+ </T>
279
361
  </C>
280
362
  </C>
281
363
 
282
- <C style={{transform:[{rotate:ze?"180deg":"0deg"}]}}>
283
- <Eo color={e.grayText}size={15}/>
364
+ <C style={{transform:[{rotate:He?"180deg":"0deg"}]}}>
365
+ <No color={e.grayText}size={15}/>
284
366
  </C>
285
- </V>
367
+ </B>
286
368
 
287
369
 
288
- {ze&&<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}}>
289
- {$.filter(r=>r.key==="apis"||j?.[r.key]||T?.[r.key]).map((r,k,D)=>{const F=J===r.key,W=k===D.length-1;return<V key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Or(r.key),Ke(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:F?`${e.purple}0F`:"transparent",borderBottomWidth:W?0:1,borderBottomColor:e.dividerColor}}>
370
+ {He&&<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
+ {$.filter(r=>r.key==="apis"||q?.[r.key]||R?.[r.key]).map((r,V,D)=>{const v=Q===r.key,M=V===D.length-1;return<B key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Ur(r.key),Ye(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:v?`${e.purple}0F`:"transparent",borderBottomWidth:M?0:1,borderBottomColor:e.dividerColor}}>
290
372
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
291
- <C style={{width:6,height:6,borderRadius:3,backgroundColor:F?e.purple:e.grayTextWeak}}/>
292
- <S style={{fontFamily:F?x.interBold:x.interMedium,fontSize:13,color:F?e.purple:e.primaryBlack}}>
373
+ <C style={{width:6,height:6,borderRadius:3,backgroundColor:v?e.purple:e.grayTextWeak}}/>
374
+ <T style={{fontFamily:v?S.interBold:S.interMedium,fontSize:13,color:v?e.purple:e.primaryBlack}}>
293
375
  #{r.id} {r.label}
294
- </S>
376
+ </T>
295
377
  </C>
296
- {F&&<U size={14}color={e.purple}/>}
297
- </V>})}
378
+ {v&&<_ size={14}color={e.purple}/>}
379
+ </B>})}
298
380
  </C>}
299
381
  </C>
300
382
  </C>
301
383
 
302
384
 
303
385
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
304
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
386
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
305
387
  NOTIFICATIONS & TOASTS
306
- </S>
388
+ </T>
307
389
 
308
390
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
309
391
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1,marginRight:10}}>
310
392
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
311
- <Ao color={e.purple}size={15}/>
393
+ <Mo color={e.purple}size={15}/>
312
394
  </C>
313
395
  <C style={{flex:1}}>
314
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
396
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
315
397
  NPM Update Toast
316
- </S>
317
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
398
+ </T>
399
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
318
400
  Show a floating toast banner with countdown progress when
319
401
  a newer release is published on npm.
320
- </S>
402
+ </T>
321
403
  </C>
322
404
  </C>
323
405
 
324
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:xe}}onPress={()=>Ur(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:xe?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:xe?"flex-end":"flex-start"}}>
406
+ <B accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:xe}}onPress={()=>Xr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:xe?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:xe?"flex-end":"flex-start"}}>
325
407
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
326
- </V>
408
+ </B>
327
409
  </C>
328
410
  </C>
329
411
  </C>}
330
412
 
331
- {q==="limits"&&<C style={{gap:14}}>
413
+ {J==="limits"&&<C style={{gap:14}}>
332
414
 
333
415
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
334
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
416
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
335
417
  DEVICE MEMORY & AUTO PROFILES
336
- </S>
418
+ </T>
337
419
 
338
420
 
339
421
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
340
422
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
341
423
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
342
- <Fr color={e.purple}size={16}/>
424
+ <$r color={e.purple}size={16}/>
343
425
  </C>
344
426
  <C style={{flex:1}}>
345
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
427
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
346
428
  Auto-Calculate Limits from RAM
347
- </S>
348
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
429
+ </T>
430
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
349
431
  Dynamically sets log limits according to available device
350
432
  memory
351
- </S>
433
+ </T>
352
434
  </C>
353
435
  </C>
354
436
 
355
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:I}}onPress={()=>Xr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:I?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:I?"flex-end":"flex-start"}}>
437
+ <B accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:W}}onPress={()=>to(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"}}>
356
438
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
357
- </V>
439
+ </B>
358
440
  </C>
359
441
 
360
442
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
361
443
 
362
444
 
363
445
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
364
- <C style={{width:32,height:32,borderRadius:8,backgroundColor:I?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
365
- <Cr color={I?e.purple:e.grayTextWeak}size={15}/>
446
+ <C style={{width:32,height:32,borderRadius:8,backgroundColor:W?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
447
+ <Br color={W?e.purple:e.grayTextWeak}size={15}/>
366
448
  </C>
367
449
  <C style={{flex:1}}>
368
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:I?e.primaryBlack:e.grayText}}>
450
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:W?e.primaryBlack:e.grayText}}>
369
451
  Detected Available RAM
370
- </S>
371
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
372
- {ke} MB available on device
373
- </S>
452
+ </T>
453
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
454
+ {Re} MB available on device
455
+ </T>
374
456
  </C>
375
- <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:I?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:I?`${e.purple}26`:e.dividerColor}}>
376
- <S style={{fontFamily:x.interBold,fontSize:12,lineHeight:15,color:I?e.purple:e.grayText}}>
377
- {ke} MB
378
- </S>
457
+ <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:W?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:W?`${e.purple}26`:e.dividerColor}}>
458
+ <T style={{fontFamily:S.interBold,fontSize:12,lineHeight:15,color:W?e.purple:e.grayText}}>
459
+ {Re} MB
460
+ </T>
379
461
  </C>
380
462
  </C>
381
463
 
382
464
 
383
465
  <C style={{marginTop:4,paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor,gap:6}}>
384
466
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
385
- <S style={{fontFamily:x.interBold,fontSize:11.5,lineHeight:15,color:e.purple}}>
386
- Profile: {oe.profileName}
387
- </S>
388
- <C style={{backgroundColor:I?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
389
- <S style={{fontFamily:x.interBold,fontSize:9.5,color:I?e.emerald500:e.purple}}>
390
- {I?"AUTO-TUNED":"MANUAL"}
391
- </S>
467
+ <T style={{fontFamily:S.interBold,fontSize:11.5,lineHeight:15,color:e.purple}}>
468
+ Profile: {ge.profileName}
469
+ </T>
470
+ <C style={{backgroundColor:W?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
471
+ <T style={{fontFamily:S.interBold,fontSize:9.5,color:W?e.emerald500:e.purple}}>
472
+ {W?"AUTO-TUNED":"MANUAL"}
473
+ </T>
392
474
  </C>
393
475
  </C>
394
476
 
395
477
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:8,marginTop:4}}>
396
- {[{label:"Logs",value:I?oe.maxConsoleLogs:Se,color:e.sky500},{label:"Analytics",value:I?oe.maxAnalyticsEvents:Ae,color:e.purple},{label:"Crash",value:I?oe.maxCrashRecords:Ee,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`}}>
397
- <S style={{fontFamily:x.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
478
+ {[{label:"Logs",value:W?ge.maxConsoleLogs:Be,color:e.sky500},{label:"Analytics",value:W?ge.maxAnalyticsEvents:Oe,color:e.purple},{label:"Crash",value:W?ge.maxCrashRecords:Ee,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
+ <T style={{fontFamily:S.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
398
480
  {r.label}:
399
- </S>
400
- <S style={{fontFamily:x.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
481
+ </T>
482
+ <T style={{fontFamily:S.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
401
483
  {r.value} max
402
- </S>
484
+ </T>
403
485
  </C>)}
404
486
  </C>
405
487
  </C>
@@ -407,27 +489,27 @@ import{useMemo as Qe,useState as G,useEffect as Re,useRef as yo}from"react";impo
407
489
 
408
490
 
409
491
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
410
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
492
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
411
493
  LOW MEMORY PRESSURE PROTECTION
412
- </S>
494
+ </T>
413
495
 
414
496
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
415
497
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:`${e.emerald500}14`,alignItems:"center",justifyContent:"center"}}>
416
- <Rr color={e.emerald500}size={15}/>
498
+ <Dr color={e.emerald500}size={15}/>
417
499
  </C>
418
500
  <C style={{flex:1}}>
419
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
501
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
420
502
  OS Memory Warning Guard
421
- </S>
422
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
503
+ </T>
504
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
423
505
  Automatically prunes in-memory buffers by 50% when the OS
424
506
  signals low memory
425
- </S>
507
+ </T>
426
508
  </C>
427
509
  <C style={{paddingHorizontal:8,paddingVertical:3,borderRadius:6,backgroundColor:`${e.emerald500}18`}}>
428
- <S style={{fontFamily:x.interBold,fontSize:10,color:e.emerald500}}>
510
+ <T style={{fontFamily:S.interBold,fontSize:10,color:e.emerald500}}>
429
511
  ACTIVE
430
- </S>
512
+ </T>
431
513
  </C>
432
514
  </C>
433
515
 
@@ -436,297 +518,360 @@ import{useMemo as Qe,useState as G,useEffect as Re,useRef as yo}from"react";impo
436
518
 
437
519
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
438
520
  <C style={{flex:1}}>
439
- <S style={{fontFamily:x.interBold,fontSize:13,color:e.primaryBlack}}>
440
- Manual Memory Cleanup
441
- </S>
442
- <S style={{fontFamily:x.interRegular,fontSize:11,color:e.grayText,marginTop:1}}>
443
- Prune older entries across all log stores and free RAM
444
- </S>
521
+ <T style={{fontFamily:S.interBold,fontSize:13,color:e.primaryBlack}}>
522
+ {w("settings.memory.manualTitle","Manual Memory Cleanup")}
523
+ </T>
524
+ <T style={{fontFamily:S.interRegular,fontSize:11,color:e.grayText,marginTop:1}}>
525
+ {w("settings.memory.manualDescription","Prune older entries across all log stores and free RAM")}
526
+ </T>
445
527
  </C>
446
- <V onPress={()=>{const r=_o("manual",.5);R(`Pruned ${r.totalPruned} items from memory`)}}style={{backgroundColor:e.purple,paddingHorizontal:12,paddingVertical:8,borderRadius:8,flexDirection:"row",alignItems:"center",gap:5}}>
447
- <E size={13}color={e.white}/>
448
- <S style={{fontFamily:x.interBold,fontSize:11.5,color:e.white}}>
528
+ <B onPress={()=>{const r=Qo("manual",.5);H(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}/>
530
+ <T style={{fontFamily:S.interBold,fontSize:11.5,color:e.white}}>
449
531
  Prune Now
450
- </S>
451
- </V>
532
+ </T>
533
+ </B>
452
534
  </C>
453
535
  </C>
454
536
  </C>}
455
- {q==="capture"&&<C style={{gap:12}}>
537
+ {J==="capture"&&<C style={{gap:12}}>
456
538
 
457
539
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
458
540
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
459
541
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
460
- <Ce color={e.purple}size={16}/>
542
+ <Se color={e.purple}size={16}/>
461
543
  </C>
462
544
  <C style={{flex:1}}>
463
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
545
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
464
546
  {w("settings.media.screenshotCardTitle","Screenshot Capture Settings")}
465
- </S>
466
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
547
+ </T>
548
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
467
549
  {w("settings.media.screenshotCardDesc","Image encoding format, compression quality and overlay auto-hide")}
468
- </S>
550
+ </T>
469
551
  </C>
470
552
  </C>
471
553
 
472
- {z({icon:<$r 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}}>
473
- {["PNG","JPEG","WEBP"].map(r=>{const k=Ve===r;return<V key={r}onPress={()=>{H("light"),Ge(r),R(`Screenshot format: ${r}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
474
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
475
- {r}
476
- </S>
477
- </V>})}
554
+ {F({icon:<Mr 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}}>
555
+ {["png","jpeg","webp"].map(r=>{const V=Ie===r;return<B key={r}onPress={()=>{L("light"),Ne(r),H(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
556
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
557
+ {r.toUpperCase()}
558
+ </T>
559
+ </B>})}
478
560
  </C>})}
479
561
 
480
- {z({icon:<Ie 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:()=>{H("light"),ee(r=>!r),R(`Auto-hide overlay: ${P?"OFF":"ON"}`)},right:<V onPress={()=>{H("light"),ee(r=>!r),R(`Auto-hide overlay: ${P?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:P?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:P?`${e.emerald500}4D`:`${e.grayText}33`}}>
481
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:P?e.emerald500:e.grayText}}>
562
+ {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:()=>{L("light"),ne(r=>!r),H(`Auto-hide overlay: ${P?"OFF":"ON"}`)},right:<B onPress={()=>{L("light"),ne(r=>!r),H(`Auto-hide overlay: ${P?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:P?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:P?`${e.emerald500}4D`:`${e.grayText}33`}}>
563
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:P?e.emerald500:e.grayText}}>
482
564
  {P?w("settings.media.enabled","ON"):"OFF"}
483
- </S>
484
- </V>})}
565
+ </T>
566
+ </B>})}
485
567
  </C>
486
568
 
487
569
 
488
570
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
489
571
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
490
572
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
491
- <Ir color={e.purple}size={16}/>
573
+ <Pr color={e.purple}size={16}/>
492
574
  </C>
493
575
  <C style={{flex:1}}>
494
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
576
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
495
577
  {w("settings.media.videoCardTitle","Video Recording & GIF Conversion")}
496
- </S>
497
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
578
+ </T>
579
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
498
580
  {w("settings.media.videoCardDesc","ReplayKit hardware encoding, frame capture fallback and GIF generation")}
499
- </S>
581
+ </T>
500
582
  </C>
501
583
  </C>
502
584
 
503
- {z({icon:<Dr 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}}>
504
- {["Muted","App","Mic"].map(r=>{const k=je===r;return<V key={r}onPress={()=>{H("light"),Ue(r),R(`Audio source: ${r}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
505
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
506
- {r}
507
- </S>
508
- </V>})}
585
+ {F({icon:<Ar 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}}>
586
+ {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const V=je===r.key;return<B key={r.key}onPress={()=>{L("light"),Ge(r.key),H(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
587
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
588
+ {r.label}
589
+ </T>
590
+ </B>})}
509
591
  </C>})}
510
592
 
511
- {z({icon:<Hr 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}}>
512
- {["15","24","30","60"].map(r=>{const k=qe===r;return<V key={r}onPress={()=>{H("light"),Je(r),R(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
513
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
593
+ {F({icon:<Wr 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}}>
594
+ {[15,24,30,60].map(r=>{const V=Ue===r;return<B key={r}onPress={()=>{L("light"),qe(r),H(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
595
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
514
596
  {r}fps
515
- </S>
516
- </V>})}
597
+ </T>
598
+ </B>})}
517
599
  </C>})}
518
600
 
519
- {z({icon:<Pr 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:()=>{H("light"),re(r=>!r),R(`GIF optimization: ${L?"OFF":"ON"}`)},right:<V onPress={()=>{H("light"),re(r=>!r),R(`GIF optimization: ${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`}}>
520
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:L?e.emerald500:e.grayText}}>
521
- {L?"ON":"OFF"}
522
- </S>
523
- </V>})}
601
+ {F({icon:<Or 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:()=>{L("light"),se(r=>!r),H(`GIF optimization: ${O?"OFF":"ON"}`)},right:<B onPress={()=>{L("light"),se(r=>!r),H(`GIF optimization: ${O?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:O?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:O?`${e.emerald500}4D`:`${e.grayText}33`}}>
602
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:O?e.emerald500:e.grayText}}>
603
+ {O?"ON":"OFF"}
604
+ </T>
605
+ </B>})}
524
606
  </C>
525
607
 
526
608
 
527
609
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
528
- {z({icon:<E 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:()=>{O.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 ve.clearAllMedia(),R(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`}}>
529
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
610
+ {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 Pe.clearAllMedia(),H(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`}}>
611
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
530
612
  {w("settings.media.purgeCacheBtn","Purge All")}
531
- </S>
613
+ </T>
532
614
  </C>})}
533
615
  </C>
534
616
  </C>}
535
617
  <C style={{height:48}}/>
536
- </M>
618
+ </G>
537
619
 
538
620
 
539
- {q==="module"&&<C style={{paddingHorizontal:16,paddingTop:12,paddingBottom:Xe.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}}>
621
+ {J==="module"&&<C style={{paddingHorizontal:16,paddingTop:12,paddingBottom:er.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}}>
540
622
  <C style={{flex:1}}>
541
- <S style={{fontFamily:x.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack}}>
542
- {so} of {$.length} Modules Active
543
- </S>
544
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:K?e.purple:e.grayText,marginTop:1}}>
545
- {w(K?"settings.unsavedPending":"settings.allSynchronized")}
546
- </S>
623
+ <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack}}>
624
+ {Qe} of {$.length} Modules Active
625
+ </T>
626
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:X?e.purple:e.grayText,marginTop:1}}>
627
+ {w(X?"settings.unsavedPending":"settings.allSynchronized")}
628
+ </T>
547
629
  </C>
548
630
 
549
- <V accessible={!0}accessibilityRole="button"accessibilityLabel="Save Changes"onPress={co}style={{flexDirection:"row",alignItems:"center",gap:6,backgroundColor:K?e.purple:`${e.purple}22`,paddingHorizontal:18,paddingVertical:10,borderRadius:10}}>
550
- <U size={14}color={K?e.white:e.purple}/>
551
- <S style={{fontFamily:x.interBold,fontSize:13,lineHeight:17,color:K?e.white:e.purple}}>
631
+ <B accessible={!0}accessibilityRole="button"accessibilityLabel="Save Changes"onPress={wo}style={{flexDirection:"row",alignItems:"center",gap:6,backgroundColor:X?e.purple:`${e.purple}22`,paddingHorizontal:18,paddingVertical:10,borderRadius:10}}>
632
+ <_ size={14}color={X?e.white:e.purple}/>
633
+ <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:X?e.white:e.purple}}>
552
634
  {w("settings.saveChanges")}
553
- </S>
554
- </V>
635
+ </T>
636
+ </B>
555
637
  </C>}
556
- </C>;let N=null;A==="apis"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
638
+ </C>;let K=null;A==="apis"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
557
639
 
558
640
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
559
- {z({icon:<E color={e.errorColor}size={16}/>,label:w("settings.apis.clearNetworkLogs"),description:w("settings.apis.clearNetworkLogsDescription",{count:Pe.length}),isLast:!0,onPress:()=>{zo(),eo(null),O.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`}}>
560
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
641
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.apis.clearNetworkLogs"),description:w("settings.apis.clearNetworkLogsDescription",{count:Te.length}),isLast:!0,onPress:()=>{Fo(),ao(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`}}>
642
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
561
643
  {w("common.clear")}
562
- </S>
644
+ </T>
563
645
  </C>})}
564
646
  </C>
565
647
  <C style={{height:48}}/>
566
- </M>:A==="logs"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
648
+ </G>:A==="logs"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
567
649
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
568
- {z({icon:<Sr color={e.purple}size={16}/>,label:w("settings.logs.maxConsoleLogs"),description:w("settings.logs.maxConsoleLogsDescription"),numericInput:{value:Se,onChange:_r,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
650
+ {F({icon:<Rr color={e.purple}size={16}/>,label:w("settings.logs.maxConsoleLogs"),description:w("settings.logs.maxConsoleLogsDescription"),numericInput:{value:Be,onChange:ro,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
569
651
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
570
- <S style={{fontFamily:x.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack,paddingTop:6}}>
652
+ <T style={{fontFamily:S.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack,paddingTop:6}}>
571
653
  {w("settings.logs.logLevels")}
572
- </S>
573
- {["info","warn","error"].map(r=>{const k=qr?.[r],D=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,F=w(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),W=w(r==="info"?"settings.logs.showInfoDesc":r==="warn"?"settings.logs.showWarnDesc":"settings.logs.showErrorDesc");return z({icon:<C style={{width:12,height:12,borderRadius:6,backgroundColor:D}}/>,label:F,description:W,isLast:r==="error",onPress:()=>Jr(B=>({...B,[r]:!B[r]})),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:k?e.purple:e.grayTextWeak,backgroundColor:k?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
574
- {k&&<U size={12}color={e.purple}/>}
654
+ </T>
655
+ {["info","warn","error"].map(r=>{const V=Yr?.[r],D=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,v=w(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),M=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:v,description:M,isLast:r==="error",onPress:()=>Zr(I=>({...I,[r]:!I[r]})),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:V?e.purple:e.grayTextWeak,backgroundColor:V?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
656
+ {V&&<_ size={12}color={e.purple}/>}
575
657
  </C>})})}
576
658
  </C>
577
659
 
578
660
 
579
661
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:16,gap:14}}>
580
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
662
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
581
663
  {w("settings.logFiltersDeduplication")}
582
- </S>
664
+ </T>
583
665
 
584
666
 
585
667
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
586
668
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
587
669
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
588
- <Ie color={e.purple}size={15}/>
670
+ <Ce color={e.purple}size={15}/>
589
671
  </C>
590
672
  <C style={{flex:1}}>
591
- <S style={{fontFamily:x.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
673
+ <T style={{fontFamily:S.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
592
674
  {w("settings.general.duplicateLogs")}
593
- </S>
594
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
675
+ </T>
676
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
595
677
  {w("settings.general.duplicateLogsDescription")}
596
- </S>
678
+ </T>
597
679
  </C>
598
680
  </C>
599
681
 
600
- <V accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:we}}onPress={()=>jr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:we?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:we?"flex-end":"flex-start"}}>
682
+ <B accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:ke}}onPress={()=>Qr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:ke?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:ke?"flex-end":"flex-start"}}>
601
683
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
602
- </V>
684
+ </B>
603
685
  </C>
604
686
  </C>
605
687
 
606
688
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
607
- {z({icon:<E color={e.errorColor}size={16}/>,label:w("settings.logs.clearConsoleLogs"),description:w("settings.logs.clearConsoleLogsDescription",{count:$e.length}),isLast:!0,onPress:()=>{Ro(),O.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`}}>
608
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
689
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.logs.clearConsoleLogs"),description:w("settings.logs.clearConsoleLogsDescription",{count:Ve.length}),isLast:!0,onPress:()=>{Io(),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`}}>
690
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
609
691
  {w("common.clear")}
610
- </S>
692
+ </T>
611
693
  </C>})}
612
694
  </C>
613
695
  <C style={{height:48}}/>
614
- </M>:A==="analytics"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
696
+ </G>:A==="analytics"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
615
697
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary}}>
616
- {z({icon:<Tr color={e.purple}size={16}/>,label:w("settings.analytics.maxAnalyticsEvents"),description:w("settings.analytics.maxAnalyticsEventsDescription",{count:Le.length}),numericInput:{value:Ae,onChange:Qr,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
698
+ {F({icon:<Fr color={e.purple}size={16}/>,label:w("settings.analytics.maxAnalyticsEvents"),description:w("settings.analytics.maxAnalyticsEventsDescription",{count:ze.length}),numericInput:{value:Oe,onChange:oo,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
617
699
  </C>
618
700
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
619
- {z({icon:<E color={e.errorColor}size={16}/>,label:w("settings.analytics.clearAnalyticsEvents"),description:w("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{Fo(),ro(null),O.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`}}>
620
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
701
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.analytics.clearAnalyticsEvents"),description:w("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{Ho(),no(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`}}>
702
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
621
703
  {w("common.clear")}
622
- </S>
704
+ </T>
623
705
  </C>})}
624
706
  </C>
625
707
  <C style={{height:48}}/>
626
- </M>:A==="redux"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
708
+ </G>:A==="redux"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
627
709
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
628
- {z({icon:<Br color={e.purple}size={16}/>,label:w("settings.redux.autoRefresh"),description:w("settings.redux.autoRefreshDescription"),onPress:()=>Yr(r=>!r),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:Te?e.purple:e.grayTextWeak,backgroundColor:Te?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
629
- {Te&&<U size={12}color={e.purple}/>}
710
+ {F({icon:<Hr color={e.purple}size={16}/>,label:w("settings.redux.autoRefresh"),description:w("settings.redux.autoRefreshDescription"),onPress:()=>io(r=>!r),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:Fe?e.purple:e.grayTextWeak,backgroundColor:Fe?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
711
+ {Fe&&<_ size={12}color={e.purple}/>}
630
712
  </C>})}
631
713
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
632
- {z({icon:<Q color={e.purple}size={16}/>,label:w("settings.redux.defaultJsonExpandDepth"),description:w("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:Oe,onSelect:Zr},isLast:!0})}
714
+ {F({icon:<Y color={e.purple}size={16}/>,label:w("settings.redux.defaultJsonExpandDepth"),description:w("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:Me,onSelect:lo},isLast:!0})}
633
715
  </C>
634
716
 
635
717
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
636
- {z({icon:<E color={e.errorColor}size={16}/>,label:w("settings.redux.clearReduxState"),description:w(We?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{oo(null),O.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`}}>
637
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
718
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.redux.clearReduxState"),description:w(re?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{so(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`}}>
719
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
638
720
  {w("common.clear")}
639
- </S>
721
+ </T>
640
722
  </C>})}
641
723
  </C>
642
724
  <C style={{height:48}}/>
643
- </M>:A==="crash"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
725
+ </G>:A==="crash"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
644
726
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
645
- {z({icon:<Q color={e.purple}size={16}/>,label:w("settings.crash.maxCrashLogs"),description:w("settings.crash.maxCrashLogsDesc"),numericInput:{value:Ee,onChange:to,min:5,max:50,placeholder:"Enter max crashes (5-50)"}})}
727
+ {F({icon:<Y color={e.purple}size={16}/>,label:w("settings.crash.maxCrashLogs"),description:w("settings.crash.maxCrashLogsDesc"),numericInput:{value:Ee,onChange:co,min:5,max:50,placeholder:"Enter max crashes (5-50)"}})}
646
728
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
647
- {z({icon:<Rr color={e.greenColor}size={16}/>,label:w("settings.crash.globalGuard"),description:w("settings.crash.globalGuardDesc"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
648
- <S style={{fontFamily:x.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
729
+ {F({icon:<Dr color={e.greenColor}size={16}/>,label:w("settings.crash.globalGuard"),description:w("settings.crash.globalGuardDesc"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
730
+ <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
649
731
  {w("settings.protectedBadge")}
650
- </S>
732
+ </T>
651
733
  </C>})}
652
734
  </C>
653
735
 
654
736
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
655
- {z({icon:<E color={e.errorColor}size={16}/>,label:w("settings.crash.clearHistory"),description:w("settings.crash.clearHistoryDesc",{count:Me?.length||0}),isLast:!0,onPress:()=>{Ho(),O.alert(w("common.success"),w("settings.crash.historyCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
656
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
737
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("settings.crash.clearHistory"),description:w("settings.crash.clearHistoryDesc",{count:oe?.length||0}),isLast:!0,onPress:()=>{Do(),N.alert(w("common.success"),w("settings.crash.historyCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
738
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
657
739
  {w("common.clear")}
658
- </S>
740
+ </T>
659
741
  </C>})}
660
742
  </C>
661
743
  <C style={{height:48}}/>
662
- </M>:A==="push"?N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
744
+ </G>:A==="push"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
663
745
 
664
746
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
665
- {z({icon:<Q color={e.purple}size={16}/>,label:"Max Push Notification Logs",description:"Buffer size limit for recorded push payloads (10-200)",numericInput:{value:lo,onChange:ao,min:10,max:200,placeholder:"Enter max logs (10-200)"}})}
747
+ {F({icon:<Y color={e.purple}size={16}/>,label:"Max Push Notification Logs",description:"Buffer size limit for recorded push payloads (10-200)",numericInput:{value:go,onChange:po,min:10,max:200,placeholder:"Enter max logs (10-200)"}})}
666
748
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
667
- {z({icon:<Lr 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`}}>
668
- <S style={{fontFamily:x.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
749
+ {F({icon:<Er 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`}}>
750
+ <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
669
751
  ACTIVE
670
- </S>
752
+ </T>
671
753
  </C>})}
672
754
  </C>
673
755
 
674
756
 
675
757
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
676
- <S style={{fontFamily:x.interBold,fontSize:12,color:e.primaryBlack,marginBottom:4}}>
677
- ⚡ SIMULATE TEST PUSH NOTIFICATIONS
678
- </S>
758
+ <C style={{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4}}>
759
+ <We size={13}color={e.amber500}/>
760
+ <T style={{fontFamily:S.interBold,fontSize:12,color:e.primaryBlack}}>
761
+ {w("settings.simulatePushTitle","SIMULATE TEST PUSH NOTIFICATIONS")}
762
+ </T>
763
+ </C>
679
764
 
680
765
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:6}}>
681
- <V onPress={()=>{Y("salesforce"),R("Simulated Salesforce Marketing Cloud push")}}style={{backgroundColor:`${e.sky600}14`,borderColor:`${e.sky600}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
682
- <S style={{fontSize:11,fontFamily:x.interSemiBold,color:e.sky600}}>
766
+ <B onPress={()=>{ie("salesforce"),H(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}}>
767
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.sky600}}>
683
768
  + Salesforce MC
684
- </S>
685
- </V>
769
+ </T>
770
+ </B>
686
771
 
687
- <V onPress={()=>{Y("fcm"),R("Simulated Firebase FCM push")}}style={{backgroundColor:`${e.darkOrange}14`,borderColor:`${e.darkOrange}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
688
- <S style={{fontSize:11,fontFamily:x.interSemiBold,color:e.darkOrange}}>
772
+ <B onPress={()=>{ie("fcm"),H(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}}>
773
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.darkOrange}}>
689
774
  + Firebase FCM
690
- </S>
691
- </V>
775
+ </T>
776
+ </B>
692
777
 
693
- <V onPress={()=>{Y("apns"),R("Simulated Apple APNs push")}}style={{backgroundColor:`${e.primaryBlack}10`,borderColor:`${e.primaryBlack}25`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
694
- <S style={{fontSize:11,fontFamily:x.interSemiBold,color:e.primaryBlack}}>
778
+ <B onPress={()=>{ie("apns"),H(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}}>
779
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.primaryBlack}}>
695
780
  + Apple APNs
696
- </S>
697
- </V>
781
+ </T>
782
+ </B>
698
783
 
699
- <V onPress={()=>{Y("deeplink"),R("Simulated Deep Link push")}}style={{backgroundColor:`${e.brandPurple}14`,borderColor:`${e.brandPurple}33`,borderWidth:1,paddingHorizontal:10,paddingVertical:6,borderRadius:8}}>
700
- <S style={{fontSize:11,fontFamily:x.interSemiBold,color:e.brandPurple}}>
784
+ <B onPress={()=>{ie("deeplink"),H(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}}>
785
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.brandPurple}}>
701
786
  + Deep Link
702
- </S>
703
- </V>
787
+ </T>
788
+ </B>
789
+ </C>
790
+ </C>
791
+
792
+
793
+ <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
794
+ {F({icon:<U color={e.errorColor}size={16}/>,label:w("push.clearTitle","Clear Push History"),description:`Permanently remove all ${te?.length||0} recorded notifications`,isLast:!0,onPress:()=>{uo(),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`}}>
795
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
796
+ {w("common.clear")}
797
+ </T>
798
+ </C>})}
799
+ </C>
800
+ <C style={{height:48}}/>
801
+ </G>:A==="socket"?K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
802
+
803
+ <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
804
+ {F({icon:<Y color={e.purple}size={16}/>,label:"Max WebSocket Connections",description:"Ring buffer limit for active & closed socket sessions (10-200)",numericInput:{value:yo,onChange:ho,min:10,max:200,placeholder:"Enter max sockets (10-200)"}})}
805
+ <C style={{height:1,backgroundColor:e.dividerColor}}/>
806
+ {F({icon:<Nr 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`}}>
807
+ <T style={{fontFamily:S.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
808
+ ACTIVE
809
+ </T>
810
+ </C>})}
811
+ </C>
812
+
813
+
814
+ <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
815
+ <C style={{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4}}>
816
+ <We size={13}color={e.amber500}/>
817
+ <T style={{fontFamily:S.interBold,fontSize:12,color:e.primaryBlack}}>
818
+ {w("settings.simulateSocketTitle","SIMULATE TEST SOCKET CONNECTIONS")}
819
+ </T>
820
+ </C>
821
+
822
+ <C style={{flexDirection:"row",flexWrap:"wrap",gap:6}}>
823
+ <B onPress={()=>{ae("chat"),H(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}}>
824
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.blue600}}>
825
+ + Chat Room (WS)
826
+ </T>
827
+ </B>
828
+
829
+ <B onPress={()=>{ae("crypto"),H(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}}>
830
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.emerald600}}>
831
+ + Crypto Feed (WSS)
832
+ </T>
833
+ </B>
834
+
835
+ <B onPress={()=>{ae("socketio"),H(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}}>
836
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.violet600}}>
837
+ + Socket.IO Room
838
+ </T>
839
+ </B>
840
+
841
+ <B onPress={()=>{ae("echo"),H(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}}>
842
+ <T style={{fontSize:11,fontFamily:S.interSemiBold,color:e.brandPurple}}>
843
+ + Echo Test
844
+ </T>
845
+ </B>
704
846
  </C>
705
847
  </C>
706
848
 
707
849
 
708
850
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
709
- {z({icon:<E color={e.errorColor}size={16}/>,label:"Clear Push History",description:`Permanently remove all ${io?.length||0} recorded notifications`,isLast:!0,onPress:()=>{no(),O.alert("Success","Push notification history cleared")},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
710
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
851
+ {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 ${le?.length||0} recorded sessions`,isLast:!0,onPress:()=>{bo(),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`}}>
852
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
711
853
  {w("common.clear")}
712
- </S>
854
+ </T>
713
855
  </C>})}
714
856
  </C>
715
857
  <C style={{height:48}}/>
716
- </M>:A==="media"&&(N=<M style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
858
+ </G>:A==="media"&&(K=<G style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
717
859
 
718
860
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
719
- <S style={{fontFamily:x.interBold,fontSize:12,color:e.primaryBlack,marginBottom:4}}>
720
- ⚡ DIRECT CAPTURE SHORTCUTS
721
- </S>
861
+ <C style={{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4}}>
862
+ <We size={13}color={e.amber500}/>
863
+ <T style={{fontFamily:S.interBold,fontSize:12,color:e.primaryBlack}}>
864
+ {w("settings.directCaptureShortcuts","DIRECT CAPTURE SHORTCUTS")}
865
+ </T>
866
+ </C>
722
867
 
723
868
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:8}}>
724
- <V onPress={async()=>{H("light"),await ve.takeScreenshot({format:Ve.toLowerCase(),quality:.9,hideInspector:P})&&(H("success"),R("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}}>
725
- <Ce color={e.purple}size={14}/>
726
- <S style={{fontSize:11,fontFamily:x.interBold,color:e.purple}}>
869
+ <B onPress={async()=>{L("light"),await Pe.takeScreenshot({format:Ie.toLowerCase(),quality:.9,hideInspector:P})&&(L("success"),H(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}}>
870
+ <Se color={e.purple}size={14}/>
871
+ <T style={{fontSize:11,fontFamily:S.interBold,color:e.purple}}>
727
872
  Take Screenshot
728
- </S>
729
- </V>
873
+ </T>
874
+ </B>
730
875
  </C>
731
876
  </C>
732
877
 
@@ -734,89 +879,92 @@ import{useMemo as Qe,useState as G,useEffect as Re,useRef as yo}from"react";impo
734
879
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
735
880
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
736
881
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
737
- <Ce color={e.purple}size={16}/>
882
+ <Se color={e.purple}size={16}/>
738
883
  </C>
739
884
  <C style={{flex:1}}>
740
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
885
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
741
886
  {w("settings.media.screenshotCardTitle","Screenshot Capture Settings")}
742
- </S>
743
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
887
+ </T>
888
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
744
889
  {w("settings.media.screenshotCardDesc","Image encoding format, compression quality and overlay auto-hide")}
745
- </S>
890
+ </T>
746
891
  </C>
747
892
  </C>
748
893
 
749
- {z({icon:<$r 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}}>
750
- {["PNG","JPEG","WEBP"].map(r=>{const k=Ve===r;return<V key={r}onPress={()=>{H("light"),Ge(r),R(`Screenshot format: ${r}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
751
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
752
- {r}
753
- </S>
754
- </V>})}
894
+ {F({icon:<Mr 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}}>
895
+ {["png","jpeg","webp"].map(r=>{const V=Ie===r;return<B key={r}onPress={()=>{L("light"),Ne(r),H(`Screenshot format: ${r.toUpperCase()}`)}}style={{paddingHorizontal:9,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
896
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
897
+ {r.toUpperCase()}
898
+ </T>
899
+ </B>})}
755
900
  </C>})}
756
901
 
757
- {z({icon:<Ie 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:()=>{H("light"),ee(r=>!r),R(`Auto-hide overlay: ${P?"OFF":"ON"}`)},right:<V onPress={()=>{H("light"),ee(r=>!r),R(`Auto-hide overlay: ${P?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:P?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:P?`${e.emerald500}4D`:`${e.grayText}33`}}>
758
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:P?e.emerald500:e.grayText}}>
902
+ {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:()=>{L("light"),ne(r=>!r),H(`Auto-hide overlay: ${P?"OFF":"ON"}`)},right:<B onPress={()=>{L("light"),ne(r=>!r),H(`Auto-hide overlay: ${P?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:P?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:P?`${e.emerald500}4D`:`${e.grayText}33`}}>
903
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:P?e.emerald500:e.grayText}}>
759
904
  {P?w("settings.media.enabled","ON"):"OFF"}
760
- </S>
761
- </V>})}
905
+ </T>
906
+ </B>})}
762
907
  </C>
763
908
 
764
909
 
765
910
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
766
911
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
767
912
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
768
- <Ir color={e.purple}size={16}/>
913
+ <Pr color={e.purple}size={16}/>
769
914
  </C>
770
915
  <C style={{flex:1}}>
771
- <S style={{fontFamily:x.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
916
+ <T style={{fontFamily:S.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
772
917
  {w("settings.media.videoCardTitle","Video Recording & GIF Conversion")}
773
- </S>
774
- <S style={{fontFamily:x.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
918
+ </T>
919
+ <T style={{fontFamily:S.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
775
920
  {w("settings.media.videoCardDesc","ReplayKit hardware encoding, frame capture fallback and GIF generation")}
776
- </S>
921
+ </T>
777
922
  </C>
778
923
  </C>
779
924
 
780
- {z({icon:<Dr 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}}>
781
- {["Muted","App","Mic"].map(r=>{const k=je===r;return<V key={r}onPress={()=>{H("light"),Ue(r),R(`Audio source: ${r}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
782
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
783
- {r}
784
- </S>
785
- </V>})}
925
+ {F({icon:<Ar 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}}>
926
+ {[{key:"none",label:"Muted"},{key:"app",label:"App"},{key:"mic",label:"Mic"}].map(r=>{const V=je===r.key;return<B key={r.key}onPress={()=>{L("light"),Ge(r.key),H(`Audio source: ${r.label}`)}}style={{paddingHorizontal:8,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
927
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
928
+ {r.label}
929
+ </T>
930
+ </B>})}
786
931
  </C>})}
787
932
 
788
- {z({icon:<Hr 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}}>
789
- {["15","24","30","60"].map(r=>{const k=qe===r;return<V key={r}onPress={()=>{H("light"),Je(r),R(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:k?e.purple:`${e.purple}14`,borderWidth:1,borderColor:k?e.purple:`${e.purple}2E`}}>
790
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:k?e.white:e.purple}}>
933
+ {F({icon:<Wr 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}}>
934
+ {[15,24,30,60].map(r=>{const V=Ue===r;return<B key={r}onPress={()=>{L("light"),qe(r),H(`Recording FPS: ${r}`)}}style={{paddingHorizontal:7,paddingVertical:5,borderRadius:7,backgroundColor:V?e.purple:`${e.purple}14`,borderWidth:1,borderColor:V?e.purple:`${e.purple}2E`}}>
935
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:V?e.white:e.purple}}>
791
936
  {r}fps
792
- </S>
793
- </V>})}
937
+ </T>
938
+ </B>})}
794
939
  </C>})}
795
940
 
796
- {z({icon:<Pr 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:()=>{H("light"),re(r=>!r),R(`GIF optimization: ${L?"OFF":"ON"}`)},right:<V onPress={()=>{H("light"),re(r=>!r),R(`GIF optimization: ${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`}}>
797
- <S style={{fontFamily:x.interBold,fontSize:10.5,color:L?e.emerald500:e.grayText}}>
798
- {L?"ON":"OFF"}
799
- </S>
800
- </V>})}
941
+ {F({icon:<Or 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:()=>{L("light"),se(r=>!r),H(`GIF optimization: ${O?"OFF":"ON"}`)},right:<B onPress={()=>{L("light"),se(r=>!r),H(`GIF optimization: ${O?"OFF":"ON"}`)}}style={{paddingHorizontal:10,paddingVertical:5,borderRadius:7,backgroundColor:O?`${e.emerald500}26`:`${e.grayText}20`,borderWidth:1,borderColor:O?`${e.emerald500}4D`:`${e.grayText}33`}}>
942
+ <T style={{fontFamily:S.interBold,fontSize:10.5,color:O?e.emerald500:e.grayText}}>
943
+ {O?"ON":"OFF"}
944
+ </T>
945
+ </B>})}
801
946
  </C>
802
947
 
803
948
 
804
949
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
805
- {z({icon:<E 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:()=>{O.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 ve.clearAllMedia(),R(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`}}>
806
- <S style={{fontFamily:x.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
950
+ {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 Pe.clearAllMedia(),H(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`}}>
951
+ <T style={{fontFamily:S.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
807
952
  {w("settings.media.purgeCacheBtn","Purge All")}
808
- </S>
953
+ </T>
809
954
  </C>})}
810
955
  </C>
811
956
  <C style={{height:48}}/>
812
- </M>);const te=yo(new Fe.Value(0)).current;return Re(()=>{A!=="main"&&(te.setValue(0),Fe.spring(te,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[A]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
957
+ </G>);const ye=ko(new Le.Value(0)).current;return ve(()=>{A!=="main"&&(ye.setValue(0),Le.spring(ye,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[A]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
813
958
 
814
- <C style={[Ye.absoluteFill,A!=="main"&&{pointerEvents:"none"}]}>
815
- {go()}
959
+ <C style={[rr.absoluteFill,A!=="main"&&{pointerEvents:"none"}]}>
960
+ {So()}
816
961
  </C>
817
962
 
818
963
 
819
- {A!=="main"&&<Fe.View style={[Ye.absoluteFill,{backgroundColor:e.grayBackground,opacity:te,transform:[{translateX:te.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
820
- {N}
821
- </Fe.View>}
822
- </C>};export default Qo;
964
+ {A!=="main"&&<Le.View style={[rr.absoluteFill,{backgroundColor:e.grayBackground,opacity:ye,transform:[{translateX:ye.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
965
+ {K}
966
+ </Le.View>}
967
+
968
+
969
+ <$o visible={fo}onClose={()=>Je(!1)}/>
970
+ </C>};export default Xo;