react-native-inapp-inspector 2.3.23 → 2.3.25

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 (149) hide show
  1. package/dist/commonjs/components/AnalyticsDetail.js +8 -8
  2. package/dist/commonjs/components/AnalyticsEventCard.js +11 -8
  3. package/dist/commonjs/components/AppHeaderLogo.js +1 -1
  4. package/dist/commonjs/components/BrandSquareIcon.js +12 -12
  5. package/dist/commonjs/components/ConsoleLogCard.d.ts +1 -0
  6. package/dist/commonjs/components/ConsoleLogCard.js +92 -80
  7. package/dist/commonjs/components/EndOfListFooter.d.ts +5 -1
  8. package/dist/commonjs/components/EndOfListFooter.js +27 -5
  9. package/dist/commonjs/components/Inspector/AnalyticsTab.js +30 -298
  10. package/dist/commonjs/components/Inspector/ConsoleTab.js +38 -93
  11. package/dist/commonjs/components/Inspector/CrashDetail.js +12 -12
  12. package/dist/commonjs/components/Inspector/CrashTab.js +43 -33
  13. package/dist/commonjs/components/Inspector/DebuggingTab.js +9 -9
  14. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +54 -52
  15. package/dist/commonjs/components/Inspector/InspectorHeader.js +1 -1
  16. package/dist/commonjs/components/Inspector/LogDetail.js +6 -6
  17. package/dist/commonjs/components/Inspector/MainScreen.js +23 -25
  18. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +1 -1
  19. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +3 -3
  20. package/dist/commonjs/components/Inspector/NetworkTab.js +31 -31
  21. package/dist/commonjs/components/Inspector/NpmStarPrompt.js +3 -3
  22. package/dist/commonjs/components/Inspector/NpmUpdateToast.js +21 -22
  23. package/dist/commonjs/components/Inspector/ReduxDetail.js +1 -1
  24. package/dist/commonjs/components/Inspector/ReduxTab.js +110 -97
  25. package/dist/commonjs/components/Inspector/SettingsPanel.js +48 -100
  26. package/dist/commonjs/components/Inspector/StorageTab.js +56 -52
  27. package/dist/commonjs/components/Inspector/TabBar.js +29 -26
  28. package/dist/commonjs/components/JsonViewer.js +169 -164
  29. package/dist/commonjs/components/LogCard.js +34 -38
  30. package/dist/commonjs/components/LogSyntaxHighlighter.js +3 -3
  31. package/dist/commonjs/components/SegmentedTabs.d.ts +4 -1
  32. package/dist/commonjs/components/SegmentedTabs.js +8 -8
  33. package/dist/commonjs/constants/index.js +1 -1
  34. package/dist/commonjs/constants/version.d.ts +1 -1
  35. package/dist/commonjs/constants/version.js +1 -1
  36. package/dist/commonjs/customHooks/networkLogger.js +1 -2
  37. package/dist/commonjs/helpers/index.d.ts +6 -0
  38. package/dist/commonjs/helpers/index.js +4 -4
  39. package/dist/commonjs/helpers/memoryManager.d.ts +0 -1
  40. package/dist/commonjs/helpers/memoryManager.js +1 -1
  41. package/dist/commonjs/helpers/remoteConfig.js +1 -1
  42. package/dist/commonjs/helpers/settingsStore.js +1 -1
  43. package/dist/commonjs/i18n/index.d.ts +35 -0
  44. package/dist/commonjs/i18n/index.js +1 -1
  45. package/dist/commonjs/i18n/locales/ar.json +1 -0
  46. package/dist/commonjs/i18n/locales/de.json +1 -0
  47. package/dist/commonjs/i18n/locales/en.json +1 -1
  48. package/dist/commonjs/i18n/locales/es.json +1 -0
  49. package/dist/commonjs/i18n/locales/fr.json +1 -0
  50. package/dist/commonjs/i18n/locales/hi.json +1 -0
  51. package/dist/commonjs/i18n/locales/ja.json +1 -0
  52. package/dist/commonjs/i18n/locales/ko.json +1 -0
  53. package/dist/commonjs/i18n/locales/pt.json +1 -0
  54. package/dist/commonjs/i18n/locales/ru.json +1 -0
  55. package/dist/commonjs/i18n/locales/zh.json +1 -0
  56. package/dist/commonjs/index.d.ts +2 -4
  57. package/dist/commonjs/index.js +2 -2
  58. package/dist/commonjs/styles/AppColors.d.ts +40 -0
  59. package/dist/commonjs/styles/AppColors.js +1 -1
  60. package/dist/commonjs/styles/index.js +1 -1
  61. package/dist/commonjs/types/enums.d.ts +0 -20
  62. package/dist/commonjs/types/enums.js +1 -1
  63. package/dist/esm/components/AnalyticsDetail.js +75 -75
  64. package/dist/esm/components/AnalyticsEventCard.js +20 -17
  65. package/dist/esm/components/AppHeaderLogo.js +5 -5
  66. package/dist/esm/components/BrandSquareIcon.js +39 -39
  67. package/dist/esm/components/ConsoleLogCard.d.ts +1 -0
  68. package/dist/esm/components/ConsoleLogCard.js +98 -86
  69. package/dist/esm/components/EndOfListFooter.d.ts +5 -1
  70. package/dist/esm/components/EndOfListFooter.js +36 -14
  71. package/dist/esm/components/Inspector/AnalyticsTab.js +47 -315
  72. package/dist/esm/components/Inspector/ConsoleTab.js +61 -116
  73. package/dist/esm/components/Inspector/CrashDetail.js +49 -49
  74. package/dist/esm/components/Inspector/CrashTab.js +75 -65
  75. package/dist/esm/components/Inspector/DebuggingTab.js +31 -31
  76. package/dist/esm/components/Inspector/DeviceInfoTab.js +146 -144
  77. package/dist/esm/components/Inspector/InspectorHeader.js +5 -5
  78. package/dist/esm/components/Inspector/LogDetail.js +1 -1
  79. package/dist/esm/components/Inspector/MainScreen.js +51 -53
  80. package/dist/esm/components/Inspector/MediaGalleryTab.js +1 -1
  81. package/dist/esm/components/Inspector/MediaPreviewModal.js +31 -31
  82. package/dist/esm/components/Inspector/NetworkTab.js +63 -63
  83. package/dist/esm/components/Inspector/NpmStarPrompt.js +42 -42
  84. package/dist/esm/components/Inspector/NpmUpdateToast.js +45 -46
  85. package/dist/esm/components/Inspector/ReduxDetail.js +1 -1
  86. package/dist/esm/components/Inspector/ReduxTab.js +163 -150
  87. package/dist/esm/components/Inspector/SettingsPanel.js +136 -188
  88. package/dist/esm/components/Inspector/StorageTab.js +88 -84
  89. package/dist/esm/components/Inspector/TabBar.js +37 -34
  90. package/dist/esm/components/JsonViewer.js +173 -168
  91. package/dist/esm/components/LogCard.js +38 -42
  92. package/dist/esm/components/LogSyntaxHighlighter.js +1 -1
  93. package/dist/esm/components/SegmentedTabs.d.ts +4 -1
  94. package/dist/esm/components/SegmentedTabs.js +8 -8
  95. package/dist/esm/constants/index.js +1 -1
  96. package/dist/esm/constants/version.d.ts +1 -1
  97. package/dist/esm/constants/version.js +1 -1
  98. package/dist/esm/customHooks/networkLogger.js +1 -2
  99. package/dist/esm/helpers/index.d.ts +6 -0
  100. package/dist/esm/helpers/index.js +4 -4
  101. package/dist/esm/helpers/memoryManager.d.ts +0 -1
  102. package/dist/esm/helpers/memoryManager.js +1 -1
  103. package/dist/esm/helpers/remoteConfig.js +1 -1
  104. package/dist/esm/helpers/settingsStore.js +1 -1
  105. package/dist/esm/i18n/index.d.ts +35 -0
  106. package/dist/esm/i18n/index.js +1 -1
  107. package/dist/esm/i18n/locales/ar.json +1 -0
  108. package/dist/esm/i18n/locales/de.json +1 -0
  109. package/dist/esm/i18n/locales/en.json +1 -1
  110. package/dist/esm/i18n/locales/es.json +1 -0
  111. package/dist/esm/i18n/locales/fr.json +1 -0
  112. package/dist/esm/i18n/locales/hi.json +1 -0
  113. package/dist/esm/i18n/locales/ja.json +1 -0
  114. package/dist/esm/i18n/locales/ko.json +1 -0
  115. package/dist/esm/i18n/locales/pt.json +1 -0
  116. package/dist/esm/i18n/locales/ru.json +1 -0
  117. package/dist/esm/i18n/locales/zh.json +1 -0
  118. package/dist/esm/index.d.ts +2 -4
  119. package/dist/esm/index.js +5 -5
  120. package/dist/esm/styles/AppColors.d.ts +40 -0
  121. package/dist/esm/styles/AppColors.js +1 -1
  122. package/dist/esm/styles/index.js +1 -1
  123. package/dist/esm/types/enums.d.ts +0 -20
  124. package/dist/esm/types/enums.js +1 -1
  125. package/package.json +1 -15
  126. package/dist/commonjs/bundle.d.ts +0 -2
  127. package/dist/commonjs/bundle.js +0 -1
  128. package/dist/commonjs/components/Inspector/BundleTab.d.ts +0 -48
  129. package/dist/commonjs/components/Inspector/BundleTab.js +0 -1297
  130. package/dist/commonjs/components/Inspector/PerformanceTab.d.ts +0 -27
  131. package/dist/commonjs/components/Inspector/PerformanceTab.js +0 -454
  132. package/dist/commonjs/customHooks/bundleAnalyzer.d.ts +0 -115
  133. package/dist/commonjs/customHooks/bundleAnalyzer.js +0 -1
  134. package/dist/commonjs/customHooks/performanceTracker.d.ts +0 -144
  135. package/dist/commonjs/customHooks/performanceTracker.js +0 -63
  136. package/dist/commonjs/performance.d.ts +0 -2
  137. package/dist/commonjs/performance.js +0 -1
  138. package/dist/esm/bundle.d.ts +0 -2
  139. package/dist/esm/bundle.js +0 -1
  140. package/dist/esm/components/Inspector/BundleTab.d.ts +0 -48
  141. package/dist/esm/components/Inspector/BundleTab.js +0 -1297
  142. package/dist/esm/components/Inspector/PerformanceTab.d.ts +0 -27
  143. package/dist/esm/components/Inspector/PerformanceTab.js +0 -454
  144. package/dist/esm/customHooks/bundleAnalyzer.d.ts +0 -115
  145. package/dist/esm/customHooks/bundleAnalyzer.js +0 -1
  146. package/dist/esm/customHooks/performanceTracker.d.ts +0 -144
  147. package/dist/esm/customHooks/performanceTracker.js +0 -63
  148. package/dist/esm/performance.d.ts +0 -2
  149. package/dist/esm/performance.js +0 -1
@@ -1,5 +1,5 @@
1
- import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";import{Alert as W,Animated as Ee,DevSettings as Oe,Platform as je,ScrollView as A,StatusBar as ao,StyleSheet as rr,Text as S,TextInput as Co,View as C}from"react-native";import So,{Path as Cr}from"react-native-svg";import{animateNextLayout as Q,useInspector as To}from"./InspectorContext";import H from"../TouchableScale";import Vo from"../Slider";import{toggleGlobalTheme as Bo}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as k}from"../../styles/AppFonts";import{isPersistentStorageAvailable as zo,calculateRamBasedLimits as Ro}from"../../helpers/settingsStore";import{clearNetworkLogs as vo}from"../../customHooks/networkLogger";import{clearConsoleLogs as Ho}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as Do}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Lo}from"../../customHooks/crashHandler";import{clearCachedBundleAnalysis as Io}from"../../customHooks/bundleAnalyzer";import{clearPerformanceEvents as Fo}from"../../customHooks/performanceTracker";import{isReduxConnected as Wo}from"../../customHooks/reduxLogger";import{isAnalyticsConnected as Ao}from"../../customHooks/analyticsLogger";import{useTranslation as Po}from"../../i18n";import{SignalIcon as Z,TerminalIcon as Ne,AnalyticsIcon as Ge,SettingsIcon as $o,SunIcon as Mo,MoonIcon as Eo,ScreenIcon as Sr,MotionIcon as Oo,LayersIcon as Ce,EyeIcon as Tr,CheckIcon as N,TrashIcon as P,PackageIcon as Se,ReduxIcon as Ue,PerformanceIcon as Je,CrashIcon as Vr,ShieldAlertIcon as Br,ForwardChevronIcon as No,ChevronDownIcon as Go,BrainIcon as Rr,SmartphoneIcon as Uo,DatabaseIcon as Jo,QrCodeIcon as _o,FilmIcon as Ko,ScreencastIcon as Qo,CameraIcon as Hr,VideoCameraIcon as Xo,MicrophoneIcon as Yo,GifIcon as Zo,ImageIcon as Ct}from"../NetworkIcons";import{ScreenCapture as xt}from"../../capture";import{isLocalDebugEnvironment as kt}from"../../helpers";import{showToast as Dr}from"../../helpers/toast";import{pruneAllLogs as St}from"../../helpers/memoryManager";const Tt=()=>{const{t:x}=Po(),{settingsPage:F,setSettingsPage:Te,settingsActiveSubTab:G,setSettingsActiveSubTab:Lr,tabVisibility:T,toggleTabVisibility:Ir,defaultTab:U,setDefaultTab:Fr,isDark:J,setIsDark:Wr,modalHeightPercent:_,setModalHeightPercent:Ar,modalAnimationType:Pr,setModalAnimationType:$r,showDuplicateLogs:Ve,setShowDuplicateLogs:Mr,showUpdateToast:Be,setShowUpdateToast:Er,showConsoleLevels:Or,setShowConsoleLevels:jr,resetToDefaults:Vt,closeModal:Nr,storage:Bt,logs:ze,consoleLogs:Re,analyticsEvents:ve,reduxState:He,maxNetworkLogs:De,setMaxNetworkLogs:Gr,maxConsoleLogs:Le,setMaxConsoleLogs:Ur,maxAnalyticsEventsLimit:_e,setMaxAnalyticsEventsLimit:qr,isAutoRamLimitEnabled:R,setIsAutoRamLimitEnabled:Jr,deviceFreeRamMb:Ie,reduxAutoRefresh:Fe,setReduxAutoRefreshState:_r,reduxExpandDepth:Ke,setReduxExpandDepth:Kr,switchActiveTab:zt,setSelected:Qr,setSelectedEvent:Xr,setReduxState:Yr,crashRecords:We,maxCrashLogs:Qe,setMaxCrashLogs:Zr,updateAvailable:Rt,latestNpmVersion:vt}=To(),[X,Xe]=$e(_);Me(()=>{Xe(_)},[_]);const K=Ro(Ie),Ht=zo(),eo=je.OS==="android"?ao.currentHeight||24:44,Dt=_>=95?eo:0,L=er(()=>[{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:"bundle",label:"Bundle Analyzer",category:"diagnostic",icon:"bundle",desc:"Metro packager dependencies, source maps & asset breakdown"},{id:9,key:"performance",label:"Performance & Tracker",category:"diagnostic",icon:"performance",desc:"60 FPS monitor, Hermes memory telemetry & re-render profiler"},{id:10,key:"debugging",label:"Multi-Device Debugging",category:"diagnostic",icon:"debugging",desc:"QR Code bridge for direct Debug APK download & Metro live-reload sync"},{id:11,key:"media",label:"Screencast",category:"diagnostic",icon:"media",desc:"Screenshots, video recordings, audio narration & animated GIFs"}].filter(r=>r.key==="debugging"?je.OS==="android"&&kt():!0),[]),[M,Ae]=$e(()=>({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,bundle:!!T?.bundle,performance:!!T?.performance,debugging:!!T?.debugging,media:!!(T?.media??!0)}));Me(()=>{Ae({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,bundle:!!T?.bundle,performance:!!T?.performance,debugging:!!T?.debugging,media:!!(T?.media??!0)})},[T]);const q=er(()=>L.some(r=>!!M[r.key]!=!!T?.[r.key]),[M,T,L]),ro=L.filter(r=>r.key==="apis"||!!M[r.key]).length,oo=()=>{q&&W.alert("Apply Changes & Reload","Are you sure you want to save module changes? The inspector will close and reload the app to apply the new configuration.",[{text:"Cancel",style:"cancel",onPress:()=>{Ae({apis:!0,logs:!!T?.logs,analytics:!!T?.analytics,redux:!!T?.redux,storage:!!T?.storage,device:!!T?.device,crash:!!T?.crash,bundle:!!T?.bundle,performance:!!T?.performance,debugging:!!T?.debugging,media:!!(T?.media??!0)})}},{text:"Save & Reload",style:"default",onPress:()=>{Q(),L.forEach(r=>{if(r.key!=="apis"){const V=!!M[r.key],D=!!T?.[r.key];V!==D&&Ir(r.key)}}),Nr(),setTimeout(()=>{__DEV__&&Oe&&Oe.reload&&Oe.reload()},350)}}])},[Pe,Ye]=$e(!1),Lt=()=>{Q(),Te("main")},z=r=><C style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
2
- <H disabled={!r.onPress}onPress={r.onPress}style={{flexDirection:"row",alignItems:"center",gap:12}}>
1
+ import{useMemo as Qe,useState as We,useEffect as Ae,useRef as ro}from"react";import{Alert as A,Animated as Pe,DevSettings as $e,Platform as Me,ScrollView as P,StatusBar as oo,StyleSheet as Xe,Text as S,TextInput as Co,View as C}from"react-native";import So,{Path as Ye}from"react-native-svg";import{animateNextLayout as Q,useInspector as To}from"./InspectorContext";import I from"../TouchableScale";import Vo from"../Slider";import{toggleGlobalTheme as Bo}from"../../styles";import{AppColors as e}from"../../styles/AppColors";import{AppFonts as k}from"../../styles/AppFonts";import{isPersistentStorageAvailable as Ro,calculateRamBasedLimits as zo}from"../../helpers/settingsStore";import{clearNetworkLogs as vo}from"../../customHooks/networkLogger";import{clearConsoleLogs as Io}from"../../customHooks/consoleLogger";import{clearAnalyticsEvents as Ho}from"../../customHooks/analyticsLogger";import{clearCrashRecords as Do}from"../../customHooks/crashHandler";import{isReduxConnected as Lo}from"../../customHooks/reduxLogger";import{isAnalyticsConnected as Fo}from"../../customHooks/analyticsLogger";import{useTranslation as Wo}from"../../i18n";import{SignalIcon as Z,TerminalIcon as Oe,AnalyticsIcon as Ee,SettingsIcon as Ao,SunIcon as Po,MoonIcon as $o,ScreenIcon as Ze,MotionIcon as Mo,LayersIcon as Ce,EyeIcon as Cr,CheckIcon as $,TrashIcon as M,PackageIcon as Oo,ReduxIcon as Ne,CrashIcon as Sr,ShieldAlertIcon as Tr,ForwardChevronIcon as Eo,ChevronDownIcon as No,BrainIcon as Vr,SmartphoneIcon as Go,DatabaseIcon as Uo,QrCodeIcon as Jo,FilmIcon as _o,ScreencastIcon as Ko,CameraIcon as Br,VideoCameraIcon as Qo,MicrophoneIcon as Xo,GifIcon as Yo,ImageIcon as Zo}from"../NetworkIcons";import{ScreenCapture as et}from"../../capture";import{isLocalDebugEnvironment as rt}from"../../helpers";import{showToast as Rr}from"../../helpers/toast";import{pruneAllLogs as ot}from"../../helpers/memoryManager";const tt=()=>{const{t:x}=Wo(),{settingsPage:F,setSettingsPage:xe,settingsActiveSubTab:O,setSettingsActiveSubTab:zr,tabVisibility:V,toggleTabVisibility:vr,defaultTab:E,setDefaultTab:Ir,isDark:G,setIsDark:Hr,modalHeightPercent:U,setModalHeightPercent:Dr,modalAnimationType:Lr,setModalAnimationType:Fr,showDuplicateLogs:ke,setShowDuplicateLogs:Wr,showUpdateToast:Se,setShowUpdateToast:Ar,showConsoleLevels:Pr,setShowConsoleLevels:$r,resetToDefaults:it,closeModal:Mr,storage:lt,logs:Te,consoleLogs:Ve,analyticsEvents:Be,reduxState:Re,maxNetworkLogs:ze,setMaxNetworkLogs:Or,maxConsoleLogs:ve,setMaxConsoleLogs:Er,maxAnalyticsEventsLimit:Ge,setMaxAnalyticsEventsLimit:jr,isAutoRamLimitEnabled:z,setIsAutoRamLimitEnabled:Nr,deviceFreeRamMb:Ie,reduxAutoRefresh:He,setReduxAutoRefreshState:Gr,reduxExpandDepth:Ue,setReduxExpandDepth:Ur,switchActiveTab:at,setSelected:qr,setSelectedEvent:Jr,setReduxState:_r,crashRecords:De,maxCrashLogs:qe,setMaxCrashLogs:Kr,updateAvailable:nt,latestNpmVersion:st}=To(),[X,Je]=We(U);Ae(()=>{Je(U)},[U]);const q=zo(Ie),dt=Ro(),Qr=Me.OS==="android"?oo.currentHeight||24:44,ct=U>=95?Qr:0,D=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"}].filter(r=>r.key==="debugging"?Me.OS==="android"&&rt():!0),[]),[W,Le]=We(()=>({apis:!0,logs:!!V?.logs,analytics:!!V?.analytics,redux:!!V?.redux,storage:!!V?.storage,device:!!V?.device,crash:!!V?.crash,debugging:!!V?.debugging,media:!!(V?.media??!0)}));Ae(()=>{Le({apis:!0,logs:!!V?.logs,analytics:!!V?.analytics,redux:!!V?.redux,storage:!!V?.storage,device:!!V?.device,crash:!!V?.crash,debugging:!!V?.debugging,media:!!(V?.media??!0)})},[V]);const j=Qe(()=>D.some(r=>!!W[r.key]!=!!V?.[r.key]),[W,V,D]),Xr=D.filter(r=>r.key==="apis"||!!W[r.key]).length,Yr=()=>{j&&A.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:()=>{Le({apis:!0,logs:!!V?.logs,analytics:!!V?.analytics,redux:!!V?.redux,storage:!!V?.storage,device:!!V?.device,crash:!!V?.crash,debugging:!!V?.debugging,media:!!(V?.media??!0)})}},{text:"Save & Reload",style:"default",onPress:()=>{Q(),D.forEach(r=>{if(r.key!=="apis"){const T=!!W[r.key],H=!!V?.[r.key];T!==H&&vr(r.key)}}),Mr(),setTimeout(()=>{__DEV__&&$e&&$e.reload&&$e.reload()},350)}}])},[Fe,_e]=We(!1),gt=()=>{Q(),xe("main")},R=r=><C style={{paddingVertical:12,borderBottomWidth:r.isLast?0:1,borderBottomColor:e.dividerColor}}>
2
+ <I 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>
@@ -12,10 +12,10 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
12
12
  </S>:null}
13
13
  </C>
14
14
  {r.right||null}
15
- </H>
15
+ </I>
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:k.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/>
18
+ <Co style={{flex:1,fontFamily:k.interMedium,fontSize:14,lineHeight:18,color:e.primaryBlack,paddingVertical:6}}value={String(r.numericInput.value||"")}onChangeText={T=>{const H=parseInt(T.replace(/[^0-9]/g,""),10);if(!isNaN(H)){const v=Math.max(r.numericInput?.min??1,Math.min(r.numericInput?.max??1e4,H));r.numericInput?.onChange(v)}}}keyboardType={r.numericInput.keyboardType??"number-pad"}placeholder={r.numericInput.placeholder}placeholderTextColor={e.grayTextWeak}maxLength={6}selectTextOnFocus/>
19
19
  <S style={{fontFamily:k.interBold,fontSize:11,color:e.purple,marginLeft:6}}>
20
20
  MAX
21
21
  </S>
@@ -26,61 +26,59 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
26
26
  </S>: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(V=>{const D=r.picker.selectedValue===V;return<H key={String(V)}onPress={()=>r.picker.onSelect(V)}style={{flex:1,paddingVertical:6,alignItems:"center",borderRadius:6,backgroundColor:D?e.purple:"transparent"}}>
30
- <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:D?e.white:e.grayText}}>
31
- {r.picker.formatLabel?r.picker.formatLabel(V):V}
29
+ {r.picker.options.map(T=>{const H=r.picker.selectedValue===T;return<I key={String(T)}onPress={()=>r.picker.onSelect(T)}style={{flex:1,paddingVertical:6,alignItems:"center",borderRadius:6,backgroundColor:H?e.purple:"transparent"}}>
30
+ <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:H?e.white:e.grayText}}>
31
+ {r.picker.formatLabel?r.picker.formatLabel(T):T}
32
32
  </S>
33
- </H>})}
33
+ </I>})}
34
34
  </C>}
35
- </C>,to=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
- <A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:14}}showsVerticalScrollIndicator={!1}>
35
+ </C>,Zr=()=><C style={{flex:1,backgroundColor:e.grayBackground}}>
36
+ <P 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
- <A horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:2}}>
41
- {[{key:"module",label:x("settings.modulesAndTools","Modules & Tools"),Icon:Ce,badge:`${L.filter(r=>M?.[r.key]||r.key==="apis").length}/${L.length}`},{key:"ui",label:x("settings.uiPreferences","UI Preferences"),Icon:Sr},{key:"limits",label:x("settings.ramLimits","RAM & Limits"),Icon:Rr},{key:"capture",label:x("settings.screenVideoCapture","Screen & Video Capture"),Icon:Hr}].map(r=>{const V=G===r.key,D=r.Icon;return<H key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:V}}onPress={()=>{Q(),Lr(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
- <S style={{fontFamily:k.interBold,fontSize:12.5,lineHeight:16,color:V?e.white:e.grayText}}>
40
+ <P horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:2}}>
41
+ {[{key:"module",label:x("settings.modulesAndTools","Modules & Tools"),Icon:Ce,badge:`${D.filter(r=>W?.[r.key]||r.key==="apis").length}/${D.length}`},{key:"ui",label:x("settings.uiPreferences","UI Preferences"),Icon:Ze},{key:"limits",label:x("settings.ramLimits","RAM & Limits"),Icon:Vr},{key:"capture",label:x("settings.screenVideoCapture","Screen & Video Capture"),Icon:Br}].map(r=>{const T=O===r.key,H=r.Icon;return<I key={r.key}accessible={!0}accessibilityRole="tab"accessibilityLabel={r.label}accessibilityState={{selected:T}}onPress={()=>{Q(),zr(r.key)}}style={{paddingVertical:8,paddingHorizontal:14,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,borderRadius:9,backgroundColor:T?e.purple:"transparent"}}>
42
+ <H color={T?e.white:e.grayText}size={13}/>
43
+ <S style={{fontFamily:k.interBold,fontSize:12.5,lineHeight:16,color:T?e.white:e.grayText}}>
44
44
  {r.label}
45
45
  </S>
46
- {r.badge&&<C style={{backgroundColor:V?"rgba(255,255,255,0.25)":`${e.purple}18`,paddingHorizontal:5.5,paddingVertical:1,borderRadius:10}}>
47
- <S style={{fontFamily:k.interBold,fontSize:9.5,color:V?e.white:e.purple}}>
46
+ {r.badge&&<C style={{backgroundColor:T?"rgba(255,255,255,0.25)":`${e.purple}18`,paddingHorizontal:5.5,paddingVertical:1,borderRadius:10}}>
47
+ <S style={{fontFamily:k.interBold,fontSize:9.5,color:T?e.white:e.purple}}>
48
48
  {r.badge}
49
49
  </S>
50
50
  </C>}
51
- </H>})}
52
- </A>
51
+ </I>})}
52
+ </P>
53
53
  </C>
54
54
 
55
- {G==="module"&&<C style={{gap:12}}>
55
+ {O==="module"&&<C style={{gap:12}}>
56
56
 
57
57
  <C style={{gap:10}}>
58
- {L.map(r=>{const V=Wo(),D=Ao(),v=r.key==="redux"&&!V||r.key==="analytics"&&!D,I=r.key==="apis"||v,B=r.key==="apis"||!!M?.[r.key]&&!v,io=r.key==="apis"?`${ze.length} requests \u2022 Limit: ${De}`:r.key==="logs"?`${Re.length} logs \u2022 Limit: ${Le}`:r.key==="performance"?"60 FPS Target \u2022 Memory Telemetry":r.key==="bundle"?"Metro Packager \u2022 Dependency Map":r.key==="crash"?`${We?.length||0} crashes recorded \u2022 Crash Guard`:r.key==="analytics"?`${ve.length} events logged`:r.key==="redux"?`${Object.keys(He||{}).length} slices \u2022 Depth: ${Ke}`:"";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}}}>
58
+ {D.map(r=>{const T=Lo(),H=Fo(),v=r.key==="redux"&&!T||r.key==="analytics"&&!H,L=r.key==="apis"||v,B=r.key==="apis"||!!W?.[r.key]&&!v,eo=r.key==="apis"?`${Te.length} requests \u2022 Limit: ${ze}`:r.key==="logs"?`${Ve.length} logs \u2022 Limit: ${ve}`:r.key==="crash"?`${De?.length||0} crashes recorded \u2022 Crash Guard`:r.key==="analytics"?`${Be.length} events logged`:r.key==="redux"?`${Object.keys(Re||{}).length} slices \u2022 Depth: ${Ue}`:"";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}}}>
59
59
 
60
60
  <C style={{flexDirection:"row",alignItems:"flex-start",gap:10}}>
61
61
 
62
- <H accessible={!0}accessibilityRole="checkbox"accessibilityLabel={`Select ${r.label}`}accessibilityState={{checked:B,disabled:I}}disabled={I}onPress={()=>{I||Ae(Ze=>({...Ze,[r.key]:!Ze[r.key]}))}}hitSlop={8}style={{width:22,height:22,borderRadius:6,borderWidth:B?0:1.8,borderColor:I?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"?<N size={12}color={e.blue500}/>:B?<N size={12}color={e.white}/>:I?<So width={10}height={10}viewBox="0 0 24 24"fill="none">
64
- <Cr d="M7 10V7a5 5 0 0 1 10 0v3"stroke={e.grayText}strokeWidth="2.2"strokeLinecap="round"/>
65
- <Cr d="M5 10h14v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z"fill={e.grayText}/>
62
+ <I accessible={!0}accessibilityRole="checkbox"accessibilityLabel={`Select ${r.label}`}accessibilityState={{checked:B,disabled:L}}disabled={L}onPress={()=>{L||Le(Ke=>({...Ke,[r.key]:!Ke[r.key]}))}}hitSlop={8}style={{width:22,height:22,borderRadius:6,borderWidth:B?0:1.8,borderColor:L?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"?<$ size={12}color={e.blue500}/>:B?<$ size={12}color={e.white}/>:L?<So width={10}height={10}viewBox="0 0 24 24"fill="none">
64
+ <Ye d="M7 10V7a5 5 0 0 1 10 0v3"stroke={e.grayText}strokeWidth="2.2"strokeLinecap="round"/>
65
+ <Ye d="M5 10h14v9a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z"fill={e.grayText}/>
66
66
  </So>:null}
67
- </H>
67
+ </I>
68
68
 
69
69
 
70
- <H accessible={!0}accessibilityRole="button"accessibilityLabel={`${r.label} settings`}disabled={v}onPress={()=>{Q(),Te(r.key)}}style={{flex:1,flexDirection:"row",alignItems:"flex-start",gap:10}}>
70
+ <I accessible={!0}accessibilityRole="button"accessibilityLabel={`${r.label} settings`}disabled={v}onPress={()=>{Q(),xe(r.key)}}style={{flex:1,flexDirection:"row",alignItems:"flex-start",gap:10}}>
71
71
 
72
- <C style={{width:36,height:36,borderRadius:10,backgroundColor:I?`${e.grayBorderSecondary}4D`:B?`${e.purple}14`:e.grayBackground,borderWidth:1,borderColor:I?e.dividerColor:B?`${e.purple}33`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",marginTop:1}}>
72
+ <C style={{width:36,height:36,borderRadius:10,backgroundColor:L?`${e.grayBorderSecondary}4D`:B?`${e.purple}14`:e.grayBackground,borderWidth:1,borderColor:L?e.dividerColor:B?`${e.purple}33`:e.grayBorderSecondary,alignItems:"center",justifyContent:"center",marginTop:1}}>
73
73
  {r.icon==="apis"&&<Z color={B?e.purple:e.grayTextWeak}size={16}/>}
74
- {r.icon==="logs"&&<Ne color={B?e.purple:e.grayTextWeak}size={16}/>}
75
- {r.icon==="performance"&&<Je color={B?e.purple:e.grayTextWeak}size={16}/>}
76
- {r.icon==="bundle"&&<Se color={B?e.purple:e.grayTextWeak}size={16}/>}
77
- {r.icon==="crash"&&<Vr color={B?e.purple:e.grayTextWeak}size={16}/>}
78
- {r.icon==="analytics"&&<Ge color={B?e.purple:e.grayTextWeak}size={16}/>}
79
- {r.icon==="redux"&&<Ue color={B?e.purple:e.grayTextWeak}size={16}/>}
80
- {r.icon==="device"&&<Uo color={B?e.purple:e.grayTextWeak}size={16}/>}
81
- {r.icon==="storage"&&<Jo color={B?e.purple:e.grayTextWeak}size={16}/>}
82
- {r.icon==="debugging"&&<_o color={B?e.purple:e.grayTextWeak}size={16}/>}
83
- {r.icon==="media"&&<Qo color={B?e.purple:e.grayTextWeak}size={16}/>}
74
+ {r.icon==="logs"&&<Oe color={B?e.purple:e.grayTextWeak}size={16}/>}
75
+ {r.icon==="crash"&&<Sr color={B?e.purple:e.grayTextWeak}size={16}/>}
76
+ {r.icon==="analytics"&&<Ee color={B?e.purple:e.grayTextWeak}size={16}/>}
77
+ {r.icon==="redux"&&<Ne color={B?e.purple:e.grayTextWeak}size={16}/>}
78
+ {r.icon==="device"&&<Go color={B?e.purple:e.grayTextWeak}size={16}/>}
79
+ {r.icon==="storage"&&<Uo color={B?e.purple:e.grayTextWeak}size={16}/>}
80
+ {r.icon==="debugging"&&<Jo color={B?e.purple:e.grayTextWeak}size={16}/>}
81
+ {r.icon==="media"&&<Ko color={B?e.purple:e.grayTextWeak}size={16}/>}
84
82
  </C>
85
83
 
86
84
 
@@ -91,12 +89,12 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
91
89
  #{r.id}
92
90
  </S>
93
91
  </C>
94
- <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:I?e.grayText:e.primaryBlack}}>
92
+ <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:L?e.grayText:e.primaryBlack}}>
95
93
  {r.label}
96
94
  </S>
97
95
 
98
96
 
99
- {r.key===U&&!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}}>
97
+ {r.key===E&&!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}}>
100
98
  <C style={{width:4,height:4,borderRadius:2,backgroundColor:e.purple}}/>
101
99
  <S style={{fontFamily:k.interBold,fontSize:8,lineHeight:11,color:e.purple,letterSpacing:.4}}>
102
100
  {x("settings.defaultBadge")}
@@ -127,7 +125,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
127
125
  {r.desc}
128
126
  </S>
129
127
  </C>
130
- </H>
128
+ </I>
131
129
  </C>
132
130
 
133
131
 
@@ -136,24 +134,24 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
136
134
  <C style={{flexDirection:"row",alignItems:"center",gap:6,flex:1}}>
137
135
  <C style={{width:6,height:6,borderRadius:3,backgroundColor:B?e.liveGreen:e.grayTextWeak}}/>
138
136
  <S style={{fontFamily:k.interMedium,fontSize:11,color:e.grayText,lineHeight:14}}>
139
- {io}
137
+ {eo}
140
138
  </S>
141
139
  </C>
142
140
 
143
141
 
144
- <H accessible={!0}accessibilityRole="button"accessibilityLabel={`Configure ${r.label} settings`}onPress={()=>{Q(),Te(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`}}>
145
- <$o color={e.purple}size={11}/>
142
+ <I accessible={!0}accessibilityRole="button"accessibilityLabel={`Configure ${r.label} settings`}onPress={()=>{Q(),xe(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`}}>
143
+ <Ao color={e.purple}size={11}/>
146
144
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.purple}}>
147
145
  {x("settings.configure")}
148
146
  </S>
149
- <No color={e.purple}size={9}/>
150
- </H>
147
+ <Eo color={e.purple}size={9}/>
148
+ </I>
151
149
  </C>}
152
150
  </C>})}
153
151
  </C>
154
152
  </C>}
155
153
 
156
- {G==="ui"&&<C style={{gap:14}}>
154
+ {O==="ui"&&<C style={{gap:14}}>
157
155
 
158
156
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
159
157
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
@@ -163,7 +161,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
163
161
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
164
162
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
165
163
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
166
- {J?<Mo color={e.purple}size={15}/>:<Eo color={e.purple}size={15}/>}
164
+ {G?<Po color={e.purple}size={15}/>:<$o color={e.purple}size={15}/>}
167
165
  </C>
168
166
  <C style={{flex:1}}>
169
167
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -175,9 +173,9 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
175
173
  </C>
176
174
  </C>
177
175
 
178
- <H accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:J}}onPress={()=>{const r=!J;Wr(r),Bo(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:J?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:J?"flex-end":"flex-start"}}>
176
+ <I accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle Dark Theme"accessibilityState={{checked:G}}onPress={()=>{const r=!G;Hr(r),Bo(r)}}style={{width:42,height:24,borderRadius:12,backgroundColor:G?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:G?"flex-end":"flex-start"}}>
179
177
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
180
- </H>
178
+ </I>
181
179
  </C>
182
180
  </C>
183
181
 
@@ -192,7 +190,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
192
190
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:10}}>
193
191
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
194
192
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
195
- <Sr color={e.purple}size={15}/>
193
+ <Ze color={e.purple}size={15}/>
196
194
  </C>
197
195
  <C style={{flex:1}}>
198
196
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -204,16 +202,16 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
204
202
  </C>
205
203
  </C>
206
204
 
207
- {X!==_&&<H onPress={()=>{Ar(X)}}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}}>
208
- <N size={11}color={e.white}/>
205
+ {X!==U&&<I onPress={()=>{Dr(X)}}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}}>
206
+ <$ size={11}color={e.white}/>
209
207
  <S style={{fontFamily:k.interBold,fontSize:11,color:e.white}}>
210
208
  Save ({X}%)
211
209
  </S>
212
- </H>}
210
+ </I>}
213
211
  </C>
214
212
 
215
213
  <C style={{marginTop:6}}>
216
- <Vo value={X}onValueChange={Xe}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
214
+ <Vo value={X}onValueChange={Je}min={50}max={90}step={5}quickPresets={[50,60,70,80,90]}formatLabel={r=>`${Math.round(r)}%`}/>
217
215
  </C>
218
216
  </C>
219
217
 
@@ -223,7 +221,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
223
221
  <C style={{gap:8}}>
224
222
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
225
223
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
226
- <Oo color={e.purple}size={15}/>
224
+ <Mo color={e.purple}size={15}/>
227
225
  </C>
228
226
  <C style={{flex:1}}>
229
227
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -236,11 +234,11 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
236
234
  </C>
237
235
 
238
236
  <C style={{flexDirection:"row",backgroundColor:e.grayBackground,borderRadius:10,padding:3,borderWidth:1,borderColor:e.dividerColor}}>
239
- {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const V=Pr===r.key;return<H key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:V}}onPress={()=>$r(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:V?e.purple:"transparent"}}>
240
- <S style={{fontFamily:k.interBold,fontSize:11.5,lineHeight:15,color:V?e.white:e.grayText}}>
237
+ {[{key:"slide",label:"Slide Up"},{key:"fade",label:"Fade"},{key:"none",label:"None"}].map(r=>{const T=Lr===r.key;return<I key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Set transition animation to ${r.label}`}accessibilityState={{selected:T}}onPress={()=>Fr(r.key)}style={{flex:1,paddingVertical:7,alignItems:"center",borderRadius:8,backgroundColor:T?e.purple:"transparent"}}>
238
+ <S style={{fontFamily:k.interBold,fontSize:11.5,lineHeight:15,color:T?e.white:e.grayText}}>
241
239
  {r.label}
242
240
  </S>
243
- </H>})}
241
+ </I>})}
244
242
  </C>
245
243
  </C>
246
244
  </C>
@@ -267,11 +265,11 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
267
265
 
268
266
 
269
267
  <C style={{marginTop:6,gap:6}}>
270
- <H accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${L.find(r=>r.key===U)?.label||"APIs"}`}onPress={()=>Ye(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:Pe?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
268
+ <I accessible={!0}accessibilityRole="button"accessibilityLabel={`Default opening tab: ${D.find(r=>r.key===E)?.label||"APIs"}`}onPress={()=>_e(r=>!r)}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",backgroundColor:e.grayBackground,borderRadius:10,borderWidth:1.5,borderColor:Fe?e.purple:e.grayBorderSecondary,paddingHorizontal:14,paddingVertical:11}}>
271
269
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
272
270
  <C style={{width:8,height:8,borderRadius:4,backgroundColor:e.purple}}/>
273
271
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
274
- {L.find(r=>r.key===U)?`#${L.find(r=>r.key===U)?.id} ${L.find(r=>r.key===U)?.label}`:"#1 APIs (Network)"}
272
+ {D.find(r=>r.key===E)?`#${D.find(r=>r.key===E)?.id} ${D.find(r=>r.key===E)?.label}`:"#1 APIs (Network)"}
275
273
  </S>
276
274
  <C style={{backgroundColor:`${e.purple}14`,paddingHorizontal:6,paddingVertical:1.5,borderRadius:6}}>
277
275
  <S style={{fontFamily:k.interBold,fontSize:8.5,color:e.purple}}>
@@ -280,22 +278,22 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
280
278
  </C>
281
279
  </C>
282
280
 
283
- <C style={{transform:[{rotate:Pe?"180deg":"0deg"}]}}>
284
- <Go color={e.grayText}size={15}/>
281
+ <C style={{transform:[{rotate:Fe?"180deg":"0deg"}]}}>
282
+ <No color={e.grayText}size={15}/>
285
283
  </C>
286
- </H>
284
+ </I>
287
285
 
288
286
 
289
- {Pe&&<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}}>
290
- {L.filter(r=>r.key==="apis"||M?.[r.key]||T?.[r.key]).map((r,V,D)=>{const v=U===r.key,I=V===D.length-1;return<H key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Fr(r.key),Ye(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:v?`${e.purple}0F`:"transparent",borderBottomWidth:I?0:1,borderBottomColor:e.dividerColor}}>
287
+ {Fe&&<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}}>
288
+ {D.filter(r=>r.key==="apis"||W?.[r.key]||V?.[r.key]).map((r,T,H)=>{const v=E===r.key,L=T===H.length-1;return<I key={r.key}accessible={!0}accessibilityRole="button"accessibilityLabel={`Select ${r.label} as default tab`}onPress={()=>{Ir(r.key),_e(!1)}}style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:14,paddingVertical:11,backgroundColor:v?`${e.purple}0F`:"transparent",borderBottomWidth:L?0:1,borderBottomColor:e.dividerColor}}>
291
289
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
292
290
  <C style={{width:6,height:6,borderRadius:3,backgroundColor:v?e.purple:e.grayTextWeak}}/>
293
291
  <S style={{fontFamily:v?k.interBold:k.interMedium,fontSize:13,color:v?e.purple:e.primaryBlack}}>
294
292
  #{r.id} {r.label}
295
293
  </S>
296
294
  </C>
297
- {v&&<N size={14}color={e.purple}/>}
298
- </H>})}
295
+ {v&&<$ size={14}color={e.purple}/>}
296
+ </I>})}
299
297
  </C>}
300
298
  </C>
301
299
  </C>
@@ -309,7 +307,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
309
307
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
310
308
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1,marginRight:10}}>
311
309
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
312
- <Se color={e.purple}size={15}/>
310
+ <Oo color={e.purple}size={15}/>
313
311
  </C>
314
312
  <C style={{flex:1}}>
315
313
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -322,14 +320,14 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
322
320
  </C>
323
321
  </C>
324
322
 
325
- <H accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:Be}}onPress={()=>Er(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:Be?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Be?"flex-end":"flex-start"}}>
323
+ <I accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle NPM Update Toast"accessibilityState={{checked:Se}}onPress={()=>Ar(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:Se?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Se?"flex-end":"flex-start"}}>
326
324
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
327
- </H>
325
+ </I>
328
326
  </C>
329
327
  </C>
330
328
  </C>}
331
329
 
332
- {G==="limits"&&<C style={{gap:14}}>
330
+ {O==="limits"&&<C style={{gap:14}}>
333
331
 
334
332
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,overflow:"hidden",padding:14,gap:12}}>
335
333
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.grayTextWeak,letterSpacing:.8}}>
@@ -340,7 +338,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
340
338
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
341
339
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
342
340
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
343
- <Rr color={e.purple}size={16}/>
341
+ <Vr color={e.purple}size={16}/>
344
342
  </C>
345
343
  <C style={{flex:1}}>
346
344
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -353,28 +351,28 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
353
351
  </C>
354
352
  </C>
355
353
 
356
- <H accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:R}}onPress={()=>Jr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:R?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:R?"flex-end":"flex-start"}}>
354
+ <I accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle auto RAM limit calculation"accessibilityState={{checked:z}}onPress={()=>Nr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:z?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:z?"flex-end":"flex-start"}}>
357
355
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
358
- </H>
356
+ </I>
359
357
  </C>
360
358
 
361
359
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
362
360
 
363
361
 
364
362
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
365
- <C style={{width:32,height:32,borderRadius:8,backgroundColor:R?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
366
- <Z color={R?e.purple:e.grayTextWeak}size={15}/>
363
+ <C style={{width:32,height:32,borderRadius:8,backgroundColor:z?`${e.purple}14`:e.grayBackground,alignItems:"center",justifyContent:"center"}}>
364
+ <Z color={z?e.purple:e.grayTextWeak}size={15}/>
367
365
  </C>
368
366
  <C style={{flex:1}}>
369
- <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:R?e.primaryBlack:e.grayText}}>
367
+ <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:z?e.primaryBlack:e.grayText}}>
370
368
  Detected Available RAM
371
369
  </S>
372
370
  <S style={{fontFamily:k.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
373
371
  {Ie} MB available on device
374
372
  </S>
375
373
  </C>
376
- <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:R?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:R?`${e.purple}26`:e.dividerColor}}>
377
- <S style={{fontFamily:k.interBold,fontSize:12,lineHeight:15,color:R?e.purple:e.grayText}}>
374
+ <C style={{paddingHorizontal:10,paddingVertical:5,borderRadius:8,backgroundColor:z?`${e.purple}12`:e.grayBackground,borderWidth:1,borderColor:z?`${e.purple}26`:e.dividerColor}}>
375
+ <S style={{fontFamily:k.interBold,fontSize:12,lineHeight:15,color:z?e.purple:e.grayText}}>
378
376
  {Ie} MB
379
377
  </S>
380
378
  </C>
@@ -384,17 +382,17 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
384
382
  <C style={{marginTop:4,paddingTop:8,borderTopWidth:1,borderTopColor:e.dividerColor,gap:6}}>
385
383
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
386
384
  <S style={{fontFamily:k.interBold,fontSize:11.5,lineHeight:15,color:e.purple}}>
387
- Profile: {K.profileName}
385
+ Profile: {q.profileName}
388
386
  </S>
389
- <C style={{backgroundColor:R?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
390
- <S style={{fontFamily:k.interBold,fontSize:9.5,color:R?e.emerald500:e.purple}}>
391
- {R?"AUTO-TUNED":"MANUAL"}
387
+ <C style={{backgroundColor:z?`${e.emerald500}18`:`${e.purple}18`,paddingHorizontal:7,paddingVertical:2.5,borderRadius:4}}>
388
+ <S style={{fontFamily:k.interBold,fontSize:9.5,color:z?e.emerald500:e.purple}}>
389
+ {z?"AUTO-TUNED":"MANUAL"}
392
390
  </S>
393
391
  </C>
394
392
  </C>
395
393
 
396
394
  <C style={{flexDirection:"row",flexWrap:"wrap",gap:8,marginTop:4}}>
397
- {[{label:"APIs",value:R?K.maxNetworkLogs:De,color:e.blue500},{label:"Logs",value:R?K.maxConsoleLogs:Le,color:e.sky500},{label:"Analytics",value:R?K.maxAnalyticsEvents:_e,color:e.purple},{label:"Crash",value:R?K.maxCrashRecords:Qe,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`}}>
395
+ {[{label:"APIs",value:z?q.maxNetworkLogs:ze,color:e.blue500},{label:"Logs",value:z?q.maxConsoleLogs:ve,color:e.sky500},{label:"Analytics",value:z?q.maxAnalyticsEvents:Ge,color:e.purple},{label:"Crash",value:z?q.maxCrashRecords:qe,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`}}>
398
396
  <S style={{fontFamily:k.interBold,fontSize:10.5,lineHeight:14,color:r.color}}>
399
397
  {r.label}:
400
398
  </S>
@@ -414,7 +412,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
414
412
 
415
413
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
416
414
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:`${e.emerald500}14`,alignItems:"center",justifyContent:"center"}}>
417
- <Br color={e.emerald500}size={15}/>
415
+ <Tr color={e.emerald500}size={15}/>
418
416
  </C>
419
417
  <C style={{flex:1}}>
420
418
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -444,21 +442,21 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
444
442
  Prune older entries across all log stores and free RAM
445
443
  </S>
446
444
  </C>
447
- <H onPress={()=>{const r=St("manual",.5);Dr(`Pruned ${r.totalPruned} items from memory`)}}style={{backgroundColor:e.purple,paddingHorizontal:12,paddingVertical:8,borderRadius:8,flexDirection:"row",alignItems:"center",gap:5}}>
448
- <P size={13}color={e.white}/>
445
+ <I onPress={()=>{const r=ot("manual",.5);Rr(`Pruned ${r.totalPruned} items from memory`)}}style={{backgroundColor:e.purple,paddingHorizontal:12,paddingVertical:8,borderRadius:8,flexDirection:"row",alignItems:"center",gap:5}}>
446
+ <M size={13}color={e.white}/>
449
447
  <S style={{fontFamily:k.interBold,fontSize:11.5,color:e.white}}>
450
448
  Prune Now
451
449
  </S>
452
- </H>
450
+ </I>
453
451
  </C>
454
452
  </C>
455
453
  </C>}
456
- {G==="capture"&&<C style={{gap:12}}>
454
+ {O==="capture"&&<C style={{gap:12}}>
457
455
 
458
456
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
459
457
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
460
458
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
461
- <Hr color={e.purple}size={16}/>
459
+ <Br color={e.purple}size={16}/>
462
460
  </C>
463
461
  <C style={{flex:1}}>
464
462
  <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
@@ -470,7 +468,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
470
468
  </C>
471
469
  </C>
472
470
 
473
- {z({icon:<Ct color={e.purple}size={16}/>,label:x("settings.media.imageFormat","Image Format"),description:x("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:4}}>
471
+ {R({icon:<Zo color={e.purple}size={16}/>,label:x("settings.media.imageFormat","Image Format"),description:x("settings.media.imageFormatDesc","Export formats (PNG lossless, JPEG lossy, WebP)"),right:<C style={{flexDirection:"row",gap:4}}>
474
472
  {["PNG","JPEG","WEBP"].map(r=><C key={r}style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:r==="PNG"?e.purple:`${e.purple}1A`}}>
475
473
  <S style={{fontFamily:k.interBold,fontSize:10,color:r==="PNG"?e.white:e.purple}}>
476
474
  {r}
@@ -478,7 +476,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
478
476
  </C>)}
479
477
  </C>})}
480
478
 
481
- {z({icon:<Tr color={e.purple}size={16}/>,label:x("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:x("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.emerald500}26`}}>
479
+ {R({icon:<Cr color={e.purple}size={16}/>,label:x("settings.media.autoHide","Auto-Hide Inspector During Capture"),description:x("settings.media.autoHideDesc","Temporarily hides the inspector overlay during screen capture"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.emerald500}26`}}>
482
480
  <S style={{fontFamily:k.interBold,fontSize:10,color:e.emerald500}}>
483
481
  {x("settings.media.enabled","ON")}
484
482
  </S>
@@ -489,7 +487,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
489
487
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:12}}>
490
488
  <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
491
489
  <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
492
- <Xo color={e.purple}size={16}/>
490
+ <Qo color={e.purple}size={16}/>
493
491
  </C>
494
492
  <C style={{flex:1}}>
495
493
  <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
@@ -501,15 +499,15 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
501
499
  </C>
502
500
  </C>
503
501
 
504
- {z({icon:<Yo color={e.purple}size={16}/>,label:x("settings.media.audioMode","Audio Source"),description:x("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:4}}>
505
- {["Muted","App","Mic"].map((r,V)=><C key={r}style={{paddingHorizontal:7,paddingVertical:4,borderRadius:6,backgroundColor:V===0?e.purple:`${e.purple}1A`}}>
506
- <S style={{fontFamily:k.interBold,fontSize:10,color:V===0?e.white:e.purple}}>
502
+ {R({icon:<Xo color={e.purple}size={16}/>,label:x("settings.media.audioMode","Audio Source"),description:x("settings.media.audioModeDesc","Record video with muted, app audio, or microphone commentary"),right:<C style={{flexDirection:"row",gap:4}}>
503
+ {["Muted","App","Mic"].map((r,T)=><C key={r}style={{paddingHorizontal:7,paddingVertical:4,borderRadius:6,backgroundColor:T===0?e.purple:`${e.purple}1A`}}>
504
+ <S style={{fontFamily:k.interBold,fontSize:10,color:T===0?e.white:e.purple}}>
507
505
  {r}
508
506
  </S>
509
507
  </C>)}
510
508
  </C>})}
511
509
 
512
- {z({icon:<Ko color={e.purple}size={16}/>,label:x("settings.media.frameRate","Recording Frame Rate (FPS)"),description:x("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:4}}>
510
+ {R({icon:<_o color={e.purple}size={16}/>,label:x("settings.media.frameRate","Recording Frame Rate (FPS)"),description:x("settings.media.frameRateDesc","Target video smoothness: 15, 24, 30, or 60 FPS"),right:<C style={{flexDirection:"row",gap:4}}>
513
511
  {["15","24","30","60"].map(r=><C key={r}style={{paddingHorizontal:6,paddingVertical:4,borderRadius:6,backgroundColor:r==="24"?e.purple:`${e.purple}1A`}}>
514
512
  <S style={{fontFamily:k.interBold,fontSize:10,color:r==="24"?e.white:e.purple}}>
515
513
  {r}fps
@@ -517,7 +515,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
517
515
  </C>)}
518
516
  </C>})}
519
517
 
520
- {z({icon:<Zo color={e.purple}size={16}/>,label:x("settings.media.gifAutoOpt","Auto GIF Optimization"),description:x("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.emerald500}26`}}>
518
+ {R({icon:<Yo color={e.purple}size={16}/>,label:x("settings.media.gifAutoOpt","Auto GIF Optimization"),description:x("settings.media.gifAutoOptDesc","Automatic palette reduction and frame skip for lightweight animated GIFs"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.emerald500}26`}}>
521
519
  <S style={{fontFamily:k.interBold,fontSize:10,color:e.emerald500}}>
522
520
  ON
523
521
  </S>
@@ -526,7 +524,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
526
524
 
527
525
 
528
526
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
529
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.media.purgeAll","Purge Captured Media Cache"),description:x("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{W.alert(x("settings.media.purgeConfirmTitle","Purge Media Storage?"),x("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:x("common.cancel","Cancel"),style:"cancel"},{text:x("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await xt.clearAllMedia(),Dr(x("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`}}>
527
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.media.purgeAll","Purge Captured Media Cache"),description:x("settings.media.purgeAllDesc","Delete all local screenshots, screen recordings and converted GIFs"),isLast:!0,onPress:()=>{A.alert(x("settings.media.purgeConfirmTitle","Purge Media Storage?"),x("settings.media.purgeConfirmMessage","This will permanently delete all captured screenshots and videos from disk."),[{text:x("common.cancel","Cancel"),style:"cancel"},{text:x("settings.media.purgeCacheBtn","Purge All"),style:"destructive",onPress:async()=>{await et.clearAllMedia(),Rr(x("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`}}>
530
528
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
531
529
  {x("settings.media.purgeCacheBtn","Purge All")}
532
530
  </S>
@@ -534,48 +532,48 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
534
532
  </C>
535
533
  </C>}
536
534
  <C style={{height:48}}/>
537
- </A>
535
+ </P>
538
536
 
539
537
 
540
- {G==="module"&&<C style={{paddingHorizontal:16,paddingTop:12,paddingBottom:je.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}}>
538
+ {O==="module"&&<C style={{paddingHorizontal:16,paddingTop:12,paddingBottom:Me.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}}>
541
539
  <C style={{flex:1}}>
542
540
  <S style={{fontFamily:k.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack}}>
543
- {ro} of {L.length} Modules Active
541
+ {Xr} of {D.length} Modules Active
544
542
  </S>
545
- <S style={{fontFamily:k.interRegular,fontSize:11,lineHeight:15,color:q?e.purple:e.grayText,marginTop:1}}>
546
- {x(q?"settings.unsavedPending":"settings.allSynchronized")}
543
+ <S style={{fontFamily:k.interRegular,fontSize:11,lineHeight:15,color:j?e.purple:e.grayText,marginTop:1}}>
544
+ {x(j?"settings.unsavedPending":"settings.allSynchronized")}
547
545
  </S>
548
546
  </C>
549
547
 
550
- <H accessible={!0}accessibilityRole="button"accessibilityLabel="Save Changes"onPress={oo}style={{flexDirection:"row",alignItems:"center",gap:6,backgroundColor:q?e.purple:`${e.purple}22`,paddingHorizontal:18,paddingVertical:10,borderRadius:10}}>
551
- <N size={14}color={q?e.white:e.purple}/>
552
- <S style={{fontFamily:k.interBold,fontSize:13,lineHeight:17,color:q?e.white:e.purple}}>
548
+ <I accessible={!0}accessibilityRole="button"accessibilityLabel="Save Changes"onPress={Yr}style={{flexDirection:"row",alignItems:"center",gap:6,backgroundColor:j?e.purple:`${e.purple}22`,paddingHorizontal:18,paddingVertical:10,borderRadius:10}}>
549
+ <$ size={14}color={j?e.white:e.purple}/>
550
+ <S style={{fontFamily:k.interBold,fontSize:13,lineHeight:17,color:j?e.white:e.purple}}>
553
551
  {x("settings.saveChanges")}
554
552
  </S>
555
- </H>
553
+ </I>
556
554
  </C>}
557
- </C>;let $=null,E="",O=null,j="";F==="apis"?(E=x("settings.apis.title"),O=<Z color={e.white}size={16}/>,j=x("settings.apis.total",{count:ze.length}),$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
555
+ </C>;let N=null,J="",_=null,K="";F==="apis"?(J=x("settings.apis.title"),_=<Z color={e.white}size={16}/>,K=x("settings.apis.total",{count:Te.length}),N=<P style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
558
556
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary}}>
559
- {z({icon:<Z color={e.purple}size={16}/>,label:x("settings.apis.maxRequestLogs"),description:x("settings.apis.maxRequestLogsDescription"),numericInput:{value:De,onChange:Gr,min:10,max:100,placeholder:"Enter max requests (10-100)"},isLast:!0})}
557
+ {R({icon:<Z color={e.purple}size={16}/>,label:x("settings.apis.maxRequestLogs"),description:x("settings.apis.maxRequestLogsDescription"),numericInput:{value:ze,onChange:Or,min:10,max:100,placeholder:"Enter max requests (10-100)"},isLast:!0})}
560
558
  </C>
561
559
 
562
560
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
563
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.apis.clearNetworkLogs"),description:x("settings.apis.clearNetworkLogsDescription",{count:ze.length}),isLast:!0,onPress:()=>{vo(),Qr(null),W.alert(x("common.success"),x("settings.apis.networkLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
561
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.apis.clearNetworkLogs"),description:x("settings.apis.clearNetworkLogsDescription",{count:Te.length}),isLast:!0,onPress:()=>{vo(),qr(null),A.alert(x("common.success"),x("settings.apis.networkLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
564
562
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
565
563
  {x("common.clear")}
566
564
  </S>
567
565
  </C>})}
568
566
  </C>
569
567
  <C style={{height:48}}/>
570
- </A>):F==="logs"?(E=x("settings.logs.title"),O=<Ne color={e.white}size={16}/>,j=x("settings.logs.total",{count:Re.length}),$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
568
+ </P>):F==="logs"?(J=x("settings.logs.title"),_=<Oe color={e.white}size={16}/>,K=x("settings.logs.total",{count:Ve.length}),N=<P style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
571
569
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
572
- {z({icon:<Ne color={e.purple}size={16}/>,label:x("settings.logs.maxConsoleLogs"),description:x("settings.logs.maxConsoleLogsDescription"),numericInput:{value:Le,onChange:Ur,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
570
+ {R({icon:<Oe color={e.purple}size={16}/>,label:x("settings.logs.maxConsoleLogs"),description:x("settings.logs.maxConsoleLogsDescription"),numericInput:{value:ve,onChange:Er,min:10,max:100,placeholder:"Enter max logs (10-100)"}})}
573
571
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
574
572
  <S style={{fontFamily:k.interBold,fontSize:13,lineHeight:17,color:e.primaryBlack,paddingTop:6}}>
575
573
  {x("settings.logs.logLevels")}
576
574
  </S>
577
- {["info","warn","error"].map(r=>{const V=Or?.[r],D=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,v=x(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),I=x(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:v,description:I,isLast:r==="error",onPress:()=>jr(B=>({...B,[r]:!B[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"}}>
578
- {V&&<N size={12}color={e.purple}/>}
575
+ {["info","warn","error"].map(r=>{const T=Pr?.[r],H=r==="error"?e.errorColor:r==="warn"?e.warningIconGold:e.skyBlue,v=x(r==="info"?"settings.logs.showInfo":r==="warn"?"settings.logs.showWarn":"settings.logs.showError"),L=x(r==="info"?"settings.logs.showInfoDesc":r==="warn"?"settings.logs.showWarnDesc":"settings.logs.showErrorDesc");return R({icon:<C style={{width:12,height:12,borderRadius:6,backgroundColor:H}}/>,label:v,description:L,isLast:r==="error",onPress:()=>$r(B=>({...B,[r]:!B[r]})),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:T?e.purple:e.grayTextWeak,backgroundColor:T?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
576
+ {T&&<$ size={12}color={e.purple}/>}
579
577
  </C>})})}
580
578
  </C>
581
579
 
@@ -589,7 +587,7 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
589
587
  <C style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between"}}>
590
588
  <C style={{flexDirection:"row",alignItems:"center",gap:10,flex:1}}>
591
589
  <C style={{width:32,height:32,borderRadius:8,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
592
- <Tr color={e.purple}size={15}/>
590
+ <Cr color={e.purple}size={15}/>
593
591
  </C>
594
592
  <C style={{flex:1}}>
595
593
  <S style={{fontFamily:k.interBold,fontSize:13.5,lineHeight:18,color:e.primaryBlack}}>
@@ -601,54 +599,54 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
601
599
  </C>
602
600
  </C>
603
601
 
604
- <H accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:Ve}}onPress={()=>Mr(r=>!r)}style={{width:42,height:24,borderRadius:12,backgroundColor:Ve?e.purple:e.grayBorderSecondary,padding:2,justifyContent:"center",alignItems:Ve?"flex-end":"flex-start"}}>
602
+ <I accessible={!0}accessibilityRole="switch"accessibilityLabel="Toggle show duplicate logs"accessibilityState={{checked:ke}}onPress={()=>Wr(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"}}>
605
603
  <C style={{width:20,height:20,borderRadius:10,backgroundColor:e.white,shadowColor:e.black,shadowOpacity:.18,shadowRadius:2,shadowOffset:{width:0,height:1}}}/>
606
- </H>
604
+ </I>
607
605
  </C>
608
606
  </C>
609
607
 
610
608
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
611
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.logs.clearConsoleLogs"),description:x("settings.logs.clearConsoleLogsDescription",{count:Re.length}),isLast:!0,onPress:()=>{Ho(),W.alert(x("common.success"),x("settings.logs.consoleLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
609
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.logs.clearConsoleLogs"),description:x("settings.logs.clearConsoleLogsDescription",{count:Ve.length}),isLast:!0,onPress:()=>{Io(),A.alert(x("common.success"),x("settings.logs.consoleLogsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
612
610
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
613
611
  {x("common.clear")}
614
612
  </S>
615
613
  </C>})}
616
614
  </C>
617
615
  <C style={{height:48}}/>
618
- </A>):F==="analytics"?(E=x("settings.analytics.title"),O=<Ge color={e.white}size={16}/>,j=x("settings.analytics.total",{count:ve.length}),$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
616
+ </P>):F==="analytics"?(J=x("settings.analytics.title"),_=<Ee color={e.white}size={16}/>,K=x("settings.analytics.total",{count:Be.length}),N=<P style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
619
617
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary}}>
620
- {z({icon:<Ge color={e.purple}size={16}/>,label:x("settings.analytics.maxAnalyticsEvents"),description:x("settings.analytics.maxAnalyticsEventsDescription",{count:ve.length}),numericInput:{value:_e,onChange:qr,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
618
+ {R({icon:<Ee color={e.purple}size={16}/>,label:x("settings.analytics.maxAnalyticsEvents"),description:x("settings.analytics.maxAnalyticsEventsDescription",{count:Be.length}),numericInput:{value:Ge,onChange:jr,min:10,max:75,placeholder:"Enter max events (10-75)"},isLast:!0})}
621
619
  </C>
622
620
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
623
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.analytics.clearAnalyticsEvents"),description:x("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{Do(),Xr(null),W.alert(x("common.success"),x("settings.analytics.analyticsEventsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
621
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.analytics.clearAnalyticsEvents"),description:x("settings.analytics.clearAnalyticsEventsDescription"),isLast:!0,onPress:()=>{Ho(),Jr(null),A.alert(x("common.success"),x("settings.analytics.analyticsEventsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
624
622
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
625
623
  {x("common.clear")}
626
624
  </S>
627
625
  </C>})}
628
626
  </C>
629
627
  <C style={{height:48}}/>
630
- </A>):F==="redux"?(E=x("settings.redux.title"),O=<Ue color={e.white}size={16}/>,j=x("settings.redux.reducers",{count:Object.keys(He||{}).length}),$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
628
+ </P>):F==="redux"?(J=x("settings.redux.title"),_=<Ne color={e.white}size={16}/>,K=x("settings.redux.reducers",{count:Object.keys(Re||{}).length}),N=<P style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
631
629
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
632
- {z({icon:<Ue color={e.purple}size={16}/>,label:x("settings.redux.autoRefresh"),description:x("settings.redux.autoRefreshDescription"),onPress:()=>_r(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"}}>
633
- {Fe&&<N size={12}color={e.purple}/>}
630
+ {R({icon:<Ne color={e.purple}size={16}/>,label:x("settings.redux.autoRefresh"),description:x("settings.redux.autoRefreshDescription"),onPress:()=>Gr(r=>!r),right:<C style={{width:22,height:22,borderRadius:6,borderWidth:2,borderColor:He?e.purple:e.grayTextWeak,backgroundColor:He?`${e.purple}1A`:"transparent",alignItems:"center",justifyContent:"center"}}>
631
+ {He&&<$ size={12}color={e.purple}/>}
634
632
  </C>})}
635
633
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
636
- {z({icon:<Ce color={e.purple}size={16}/>,label:x("settings.redux.defaultJsonExpandDepth"),description:x("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:Ke,onSelect:Kr},isLast:!0})}
634
+ {R({icon:<Ce color={e.purple}size={16}/>,label:x("settings.redux.defaultJsonExpandDepth"),description:x("settings.redux.defaultJsonExpandDepthDescription"),picker:{options:[1,2,3,5],selectedValue:Ue,onSelect:Ur},isLast:!0})}
637
635
  </C>
638
636
 
639
637
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
640
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.redux.clearReduxState"),description:x(He?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{Yr(null),W.alert(x("common.success"),x("settings.redux.reduxStateCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
638
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.redux.clearReduxState"),description:x(Re?"settings.redux.clearReduxStateDescription":"settings.redux.clearReduxStateEmpty"),isLast:!0,onPress:()=>{_r(null),A.alert(x("common.success"),x("settings.redux.reduxStateCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
641
639
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
642
640
  {x("common.clear")}
643
641
  </S>
644
642
  </C>})}
645
643
  </C>
646
644
  <C style={{height:48}}/>
647
- </A>):F==="crash"?(E=x("settings.crash.title"),O=<Vr color={e.white}size={16}/>,j=`Total: ${We?.length||0}`,$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
645
+ </P>):F==="crash"&&(J=x("settings.crash.title"),_=<Sr color={e.white}size={16}/>,K=`Total: ${De?.length||0}`,N=<P style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
648
646
  <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:4}}>
649
- {z({icon:<Ce color={e.purple}size={16}/>,label:x("settings.crash.maxCrashLogs"),description:x("settings.crash.maxCrashLogsDesc"),numericInput:{value:Qe,onChange:Zr,min:5,max:50,placeholder:"Enter max crashes (5-50)"}})}
647
+ {R({icon:<Ce color={e.purple}size={16}/>,label:x("settings.crash.maxCrashLogs"),description:x("settings.crash.maxCrashLogsDesc"),numericInput:{value:qe,onChange:Kr,min:5,max:50,placeholder:"Enter max crashes (5-50)"}})}
650
648
  <C style={{height:1,backgroundColor:e.dividerColor}}/>
651
- {z({icon:<Br color={e.greenColor}size={16}/>,label:x("settings.crash.globalGuard"),description:x("settings.crash.globalGuardDesc"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
649
+ {R({icon:<Tr color={e.greenColor}size={16}/>,label:x("settings.crash.globalGuard"),description:x("settings.crash.globalGuardDesc"),isLast:!0,right:<C style={{paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${e.greenColor}1F`}}>
652
650
  <S style={{fontFamily:k.interBold,fontSize:10,lineHeight:13,color:e.greenColor}}>
653
651
  {x("settings.protectedBadge")}
654
652
  </S>
@@ -656,71 +654,21 @@ import{useMemo as er,useState as $e,useEffect as Me,useRef as lo}from"react";imp
656
654
  </C>
657
655
 
658
656
  <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
659
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.crash.clearHistory"),description:x("settings.crash.clearHistoryDesc",{count:We?.length||0}),isLast:!0,onPress:()=>{Lo(),W.alert(x("common.success"),x("settings.crash.historyCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
660
- <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
661
- {x("common.clear")}
662
- </S>
663
- </C>})}
664
- </C>
665
- <C style={{height:48}}/>
666
- </A>):F==="bundle"?(E=x("settings.bundle.title"),O=<Se color={e.white}size={16}/>,j="Metro",$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
667
- <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
668
- <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
669
- <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
670
- <Se color={e.purple}size={16}/>
671
- </C>
672
- <C style={{flex:1}}>
673
- <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
674
- {x("settings.bundle.sourceBundler")}
675
- </S>
676
- <S style={{fontFamily:k.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
677
- {x("settings.bundle.sourceBundlerDesc")}
678
- </S>
679
- </C>
680
- </C>
681
- </C>
682
-
683
- <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
684
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.bundle.clearCache"),description:x("settings.bundle.clearCacheDesc"),isLast:!0,onPress:()=>{Io(),W.alert(x("common.success"),x("settings.bundle.cacheCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
685
- <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
686
- {x("common.clear")}
687
- </S>
688
- </C>})}
689
- </C>
690
- <C style={{height:48}}/>
691
- </A>):F==="performance"&&(E=x("settings.performance.title"),O=<Je color={e.white}size={16}/>,j="60 FPS Target",$=<A style={{flex:1}}contentContainerStyle={{padding:16,paddingBottom:100,gap:12}}>
692
- <C style={{backgroundColor:e.primaryLight,padding:16,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,gap:8}}>
693
- <C style={{flexDirection:"row",alignItems:"center",gap:10}}>
694
- <C style={{width:36,height:36,borderRadius:10,backgroundColor:e.purpleShade50,alignItems:"center",justifyContent:"center"}}>
695
- <Je color={e.purple}size={16}/>
696
- </C>
697
- <C style={{flex:1}}>
698
- <S style={{fontFamily:k.interBold,fontSize:14,lineHeight:18,color:e.primaryBlack}}>
699
- {x("settings.performance.frameMeasurement")}
700
- </S>
701
- <S style={{fontFamily:k.interRegular,fontSize:11,lineHeight:15,color:e.grayText,marginTop:1}}>
702
- {x("settings.performance.frameMeasurementDesc")}
703
- </S>
704
- </C>
705
- </C>
706
- </C>
707
-
708
- <C style={{backgroundColor:e.primaryLight,borderRadius:14,borderWidth:1,borderColor:e.grayBorderSecondary,padding:16}}>
709
- {z({icon:<P color={e.errorColor}size={16}/>,label:x("settings.performance.clearEvents"),description:x("settings.performance.clearEventsDesc"),isLast:!0,onPress:()=>{Fo(),W.alert(x("common.success"),x("settings.performance.eventsCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
657
+ {R({icon:<M color={e.errorColor}size={16}/>,label:x("settings.crash.clearHistory"),description:x("settings.crash.clearHistoryDesc",{count:De?.length||0}),isLast:!0,onPress:()=>{Do(),A.alert(x("common.success"),x("settings.crash.historyCleared"))},right:<C style={{paddingHorizontal:12,paddingVertical:6,borderRadius:8,backgroundColor:`${e.errorColor}14`,borderWidth:1,borderColor:`${e.errorColor}33`}}>
710
658
  <S style={{fontFamily:k.interBold,fontSize:11,lineHeight:14,color:e.errorColor}}>
711
659
  {x("common.clear")}
712
660
  </S>
713
661
  </C>})}
714
662
  </C>
715
663
  <C style={{height:48}}/>
716
- </A>);const Y=lo(new Ee.Value(0)).current;return Me(()=>{F!=="main"&&(Y.setValue(0),Ee.spring(Y,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[F]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
664
+ </P>);const Y=ro(new Pe.Value(0)).current;return Ae(()=>{F!=="main"&&(Y.setValue(0),Pe.spring(Y,{toValue:1,friction:8,tension:65,useNativeDriver:!0}).start())},[F]),<C style={{flex:1,backgroundColor:e.grayBackground}}>
717
665
 
718
- <C style={[rr.absoluteFill,F!=="main"&&{pointerEvents:"none"}]}>
719
- {to()}
666
+ <C style={[Xe.absoluteFill,F!=="main"&&{pointerEvents:"none"}]}>
667
+ {Zr()}
720
668
  </C>
721
669
 
722
670
 
723
- {F!=="main"&&<Ee.View style={[rr.absoluteFill,{backgroundColor:e.grayBackground,opacity:Y,transform:[{translateX:Y.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
724
- {$}
725
- </Ee.View>}
726
- </C>};export default Tt;
671
+ {F!=="main"&&<Pe.View style={[Xe.absoluteFill,{backgroundColor:e.grayBackground,opacity:Y,transform:[{translateX:Y.interpolate({inputRange:[0,1],outputRange:[30,0]})}]}]}>
672
+ {N}
673
+ </Pe.View>}
674
+ </C>};export default tt;