react-native-inapp-inspector 2.5.11 → 2.5.13

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 (412) hide show
  1. package/README.ar.md +0 -8
  2. package/README.de.md +0 -8
  3. package/README.es.md +0 -8
  4. package/README.fr.md +0 -8
  5. package/README.hi.md +0 -8
  6. package/README.ja.md +0 -8
  7. package/README.ko.md +0 -8
  8. package/README.md +54 -26
  9. package/README.pt-BR.md +0 -8
  10. package/README.ru.md +0 -8
  11. package/README.zh-CN.md +0 -8
  12. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  13. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  14. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  15. package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
  16. package/android/src/main/AndroidManifest.xml +11 -0
  17. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +379 -19
  18. package/android/src/main/res/xml/inappinspector_file_paths.xml +7 -0
  19. package/dist/commonjs/components/ConsoleLogCard.js +32 -26
  20. package/dist/commonjs/components/Inspector/AboutModal.js +1 -4
  21. package/dist/commonjs/components/Inspector/AnalyticsFilterModal.js +47 -49
  22. package/dist/commonjs/components/Inspector/BoxModelVisualizer.d.ts +8 -0
  23. package/dist/commonjs/components/Inspector/BoxModelVisualizer.js +76 -0
  24. package/dist/commonjs/components/Inspector/ConsoleExportModal.js +51 -51
  25. package/dist/commonjs/components/Inspector/ConsoleTab.js +19 -14
  26. package/dist/commonjs/components/Inspector/CrashTab.js +17 -17
  27. package/dist/commonjs/components/Inspector/DebuggingTab.js +24 -24
  28. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +2 -2
  29. package/dist/commonjs/components/Inspector/FabLauncher.js +2 -2
  30. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +2 -2
  31. package/dist/commonjs/components/Inspector/InspectorHeader.js +15 -15
  32. package/dist/commonjs/components/Inspector/MainScreen.js +9 -6
  33. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +187 -90
  34. package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +1 -0
  35. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +222 -222
  36. package/dist/commonjs/components/Inspector/NetworkDetail.js +11 -8
  37. package/dist/commonjs/components/Inspector/NetworkExportModal.d.ts +10 -0
  38. package/dist/commonjs/components/Inspector/NetworkExportModal.js +333 -0
  39. package/dist/commonjs/components/Inspector/NetworkTab.js +48 -42
  40. package/dist/commonjs/components/Inspector/NpmStarPrompt.js +11 -12
  41. package/dist/commonjs/components/Inspector/PerformanceTab.d.ts +2 -0
  42. package/dist/commonjs/components/Inspector/PerformanceTab.js +652 -0
  43. package/dist/commonjs/components/Inspector/ReduxDetail.js +17 -19
  44. package/dist/commonjs/components/Inspector/ReduxTab.js +5 -5
  45. package/dist/commonjs/components/Inspector/SettingsPanel.js +259 -255
  46. package/dist/commonjs/components/Inspector/SocketCard.js +2 -2
  47. package/dist/commonjs/components/Inspector/SupportPage.js +5 -5
  48. package/dist/commonjs/components/Inspector/TabBar.js +17 -16
  49. package/dist/commonjs/components/Inspector/UiA11yAuditPanel.d.ts +7 -0
  50. package/dist/commonjs/components/Inspector/UiA11yAuditPanel.js +97 -0
  51. package/dist/commonjs/components/Inspector/UiInspectorDetail.d.ts +2 -0
  52. package/dist/commonjs/components/Inspector/UiInspectorDetail.js +485 -0
  53. package/dist/commonjs/components/Inspector/UiInspectorOverlay.d.ts +2 -0
  54. package/dist/commonjs/components/Inspector/UiInspectorOverlay.js +199 -0
  55. package/dist/commonjs/components/Inspector/UiInspectorTab.d.ts +2 -0
  56. package/dist/commonjs/components/Inspector/UiInspectorTab.js +117 -0
  57. package/dist/commonjs/components/Inspector/UiLiveStyleTweaker.d.ts +10 -0
  58. package/dist/commonjs/components/Inspector/UiLiveStyleTweaker.js +148 -0
  59. package/dist/commonjs/components/Inspector/index.d.ts +28 -0
  60. package/dist/commonjs/components/Inspector/index.js +1 -0
  61. package/dist/commonjs/components/LogCard.js +15 -10
  62. package/dist/commonjs/components/NetworkIcons.d.ts +6 -0
  63. package/dist/commonjs/components/NetworkIcons.js +35 -3
  64. package/dist/commonjs/constants/index.d.ts +1 -0
  65. package/dist/commonjs/constants/index.js +1 -1
  66. package/dist/commonjs/constants/version.d.ts +1 -1
  67. package/dist/commonjs/constants/version.js +1 -1
  68. package/dist/commonjs/customHooks/crashHandler.d.ts +1 -1
  69. package/dist/commonjs/customHooks/crashHandler.js +6 -6
  70. package/dist/commonjs/customHooks/uiInspectorManager.d.ts +22 -0
  71. package/dist/commonjs/customHooks/uiInspectorManager.js +1 -0
  72. package/dist/commonjs/helpers/index.d.ts +3 -0
  73. package/dist/commonjs/helpers/index.js +6 -6
  74. package/dist/commonjs/helpers/performanceSampler.d.ts +88 -0
  75. package/dist/commonjs/helpers/performanceSampler.js +1 -0
  76. package/dist/commonjs/helpers/remoteConfig.d.ts +0 -2
  77. package/dist/commonjs/helpers/remoteConfig.js +1 -1
  78. package/dist/commonjs/helpers/searchQueryParser.d.ts +1 -0
  79. package/dist/commonjs/helpers/searchQueryParser.js +7 -5
  80. package/dist/commonjs/helpers/shareFormatter.d.ts +16 -0
  81. package/dist/commonjs/helpers/shareFormatter.js +16 -9
  82. package/dist/commonjs/helpers/uiInspectorEngine.d.ts +62 -0
  83. package/dist/commonjs/helpers/uiInspectorEngine.js +19 -0
  84. package/dist/commonjs/i18n/locales/ar.json +1 -1
  85. package/dist/commonjs/i18n/locales/bn.json +1 -1
  86. package/dist/commonjs/i18n/locales/de.json +1 -1
  87. package/dist/commonjs/i18n/locales/en.json +1 -1
  88. package/dist/commonjs/i18n/locales/es.json +1 -1
  89. package/dist/commonjs/i18n/locales/fr.json +1 -1
  90. package/dist/commonjs/i18n/locales/gu.json +1 -1
  91. package/dist/commonjs/i18n/locales/hi.json +1 -1
  92. package/dist/commonjs/i18n/locales/id.json +1 -1
  93. package/dist/commonjs/i18n/locales/it.json +1 -1
  94. package/dist/commonjs/i18n/locales/ja.json +1 -1
  95. package/dist/commonjs/i18n/locales/kn.json +1 -1
  96. package/dist/commonjs/i18n/locales/ko.json +1 -1
  97. package/dist/commonjs/i18n/locales/ml.json +1 -1
  98. package/dist/commonjs/i18n/locales/mr.json +1 -1
  99. package/dist/commonjs/i18n/locales/nl.json +1 -1
  100. package/dist/commonjs/i18n/locales/pa.json +1 -1
  101. package/dist/commonjs/i18n/locales/pl.json +1 -1
  102. package/dist/commonjs/i18n/locales/pt.json +1 -1
  103. package/dist/commonjs/i18n/locales/ru.json +1 -1
  104. package/dist/commonjs/i18n/locales/ta.json +1 -1
  105. package/dist/commonjs/i18n/locales/te.json +1 -1
  106. package/dist/commonjs/i18n/locales/tr.json +1 -1
  107. package/dist/commonjs/i18n/locales/vi.json +1 -1
  108. package/dist/commonjs/i18n/locales/zh.json +1 -1
  109. package/dist/commonjs/index.d.ts +6 -4
  110. package/dist/commonjs/index.js +3 -3
  111. package/dist/commonjs/native/NativeInspector.d.ts +2 -0
  112. package/dist/commonjs/native/NativeInspector.js +1 -1
  113. package/dist/commonjs/native/NativeNetworkInspector.d.ts +2 -0
  114. package/dist/commonjs/styles/index.js +1 -1
  115. package/dist/commonjs/types/editor.d.ts +31 -0
  116. package/dist/commonjs/types/enums.d.ts +1 -0
  117. package/dist/commonjs/types/enums.js +1 -1
  118. package/dist/commonjs/types/interfaces.d.ts +8 -0
  119. package/dist/esm/components/ConsoleLogCard.js +67 -61
  120. package/dist/esm/components/Inspector/AboutModal.js +14 -17
  121. package/dist/esm/components/Inspector/AnalyticsFilterModal.js +73 -75
  122. package/dist/esm/components/Inspector/BoxModelVisualizer.d.ts +8 -0
  123. package/dist/esm/components/Inspector/BoxModelVisualizer.js +76 -0
  124. package/dist/esm/components/Inspector/ConsoleExportModal.js +67 -67
  125. package/dist/esm/components/Inspector/ConsoleTab.js +33 -28
  126. package/dist/esm/components/Inspector/CrashTab.js +58 -58
  127. package/dist/esm/components/Inspector/DebuggingTab.js +89 -89
  128. package/dist/esm/components/Inspector/DeviceInfoTab.js +2 -2
  129. package/dist/esm/components/Inspector/FabLauncher.js +21 -21
  130. package/dist/esm/components/Inspector/FloatingCaptureWidget.js +23 -23
  131. package/dist/esm/components/Inspector/InspectorHeader.js +31 -31
  132. package/dist/esm/components/Inspector/MainScreen.js +61 -58
  133. package/dist/esm/components/Inspector/MediaGalleryTab.js +244 -147
  134. package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +1 -0
  135. package/dist/esm/components/Inspector/MediaPreviewModal.js +468 -468
  136. package/dist/esm/components/Inspector/NetworkDetail.js +62 -59
  137. package/dist/esm/components/Inspector/NetworkExportModal.d.ts +10 -0
  138. package/dist/esm/components/Inspector/NetworkExportModal.js +333 -0
  139. package/dist/esm/components/Inspector/NetworkTab.js +76 -70
  140. package/dist/esm/components/Inspector/NpmStarPrompt.js +32 -33
  141. package/dist/esm/components/Inspector/PerformanceTab.d.ts +2 -0
  142. package/dist/esm/components/Inspector/PerformanceTab.js +652 -0
  143. package/dist/esm/components/Inspector/ReduxDetail.js +54 -56
  144. package/dist/esm/components/Inspector/ReduxTab.js +9 -9
  145. package/dist/esm/components/Inspector/SettingsPanel.js +302 -298
  146. package/dist/esm/components/Inspector/SocketCard.js +13 -13
  147. package/dist/esm/components/Inspector/SupportPage.js +5 -5
  148. package/dist/esm/components/Inspector/TabBar.js +4 -3
  149. package/dist/esm/components/Inspector/UiA11yAuditPanel.d.ts +7 -0
  150. package/dist/esm/components/Inspector/UiA11yAuditPanel.js +97 -0
  151. package/dist/esm/components/Inspector/UiInspectorDetail.d.ts +2 -0
  152. package/dist/esm/components/Inspector/UiInspectorDetail.js +422 -0
  153. package/dist/esm/components/Inspector/UiInspectorOverlay.d.ts +2 -0
  154. package/dist/esm/components/Inspector/UiInspectorOverlay.js +138 -0
  155. package/dist/esm/components/Inspector/UiInspectorTab.d.ts +2 -0
  156. package/dist/esm/components/Inspector/UiInspectorTab.js +117 -0
  157. package/dist/esm/components/Inspector/UiLiveStyleTweaker.d.ts +10 -0
  158. package/dist/esm/components/Inspector/UiLiveStyleTweaker.js +148 -0
  159. package/dist/esm/components/Inspector/index.d.ts +28 -0
  160. package/dist/esm/components/Inspector/index.js +1 -0
  161. package/dist/esm/components/LogCard.js +60 -55
  162. package/dist/esm/components/NetworkIcons.d.ts +6 -0
  163. package/dist/esm/components/NetworkIcons.js +32 -0
  164. package/dist/esm/constants/index.d.ts +1 -0
  165. package/dist/esm/constants/index.js +1 -1
  166. package/dist/esm/constants/version.d.ts +1 -1
  167. package/dist/esm/constants/version.js +1 -1
  168. package/dist/esm/customHooks/crashHandler.d.ts +1 -1
  169. package/dist/esm/customHooks/crashHandler.js +6 -6
  170. package/dist/esm/customHooks/uiInspectorManager.d.ts +22 -0
  171. package/dist/esm/customHooks/uiInspectorManager.js +1 -0
  172. package/dist/esm/helpers/index.d.ts +3 -0
  173. package/dist/esm/helpers/index.js +6 -6
  174. package/dist/esm/helpers/performanceSampler.d.ts +88 -0
  175. package/dist/esm/helpers/performanceSampler.js +1 -0
  176. package/dist/esm/helpers/remoteConfig.d.ts +0 -2
  177. package/dist/esm/helpers/remoteConfig.js +1 -1
  178. package/dist/esm/helpers/searchQueryParser.d.ts +1 -0
  179. package/dist/esm/helpers/searchQueryParser.js +7 -5
  180. package/dist/esm/helpers/shareFormatter.d.ts +16 -0
  181. package/dist/esm/helpers/shareFormatter.js +20 -13
  182. package/dist/esm/helpers/uiInspectorEngine.d.ts +48 -0
  183. package/dist/esm/helpers/uiInspectorEngine.js +19 -0
  184. package/dist/esm/i18n/locales/ar.json +1 -1
  185. package/dist/esm/i18n/locales/bn.json +1 -1
  186. package/dist/esm/i18n/locales/de.json +1 -1
  187. package/dist/esm/i18n/locales/en.json +1 -1
  188. package/dist/esm/i18n/locales/es.json +1 -1
  189. package/dist/esm/i18n/locales/fr.json +1 -1
  190. package/dist/esm/i18n/locales/gu.json +1 -1
  191. package/dist/esm/i18n/locales/hi.json +1 -1
  192. package/dist/esm/i18n/locales/id.json +1 -1
  193. package/dist/esm/i18n/locales/it.json +1 -1
  194. package/dist/esm/i18n/locales/ja.json +1 -1
  195. package/dist/esm/i18n/locales/kn.json +1 -1
  196. package/dist/esm/i18n/locales/ko.json +1 -1
  197. package/dist/esm/i18n/locales/ml.json +1 -1
  198. package/dist/esm/i18n/locales/mr.json +1 -1
  199. package/dist/esm/i18n/locales/nl.json +1 -1
  200. package/dist/esm/i18n/locales/pa.json +1 -1
  201. package/dist/esm/i18n/locales/pl.json +1 -1
  202. package/dist/esm/i18n/locales/pt.json +1 -1
  203. package/dist/esm/i18n/locales/ru.json +1 -1
  204. package/dist/esm/i18n/locales/ta.json +1 -1
  205. package/dist/esm/i18n/locales/te.json +1 -1
  206. package/dist/esm/i18n/locales/tr.json +1 -1
  207. package/dist/esm/i18n/locales/vi.json +1 -1
  208. package/dist/esm/i18n/locales/zh.json +1 -1
  209. package/dist/esm/index.d.ts +6 -4
  210. package/dist/esm/index.js +8 -8
  211. package/dist/esm/native/NativeInspector.d.ts +2 -0
  212. package/dist/esm/native/NativeInspector.js +1 -1
  213. package/dist/esm/native/NativeNetworkInspector.d.ts +2 -0
  214. package/dist/esm/styles/index.js +1 -1
  215. package/dist/esm/types/editor.d.ts +31 -0
  216. package/dist/esm/types/enums.d.ts +1 -0
  217. package/dist/esm/types/enums.js +1 -1
  218. package/dist/esm/types/interfaces.d.ts +8 -0
  219. package/ios/NetworkInspectorModule.mm +314 -16
  220. package/package.json +24 -1
  221. package/src/native/NativeInspector.ts +37 -0
  222. package/src/native/NativeNetworkInspector.ts +2 -0
  223. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/results.bin +0 -1
  224. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/BuildConfig.dex +0 -0
  225. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView$iconView$1.dex +0 -0
  226. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/InAppInspectorFloatingView.dex +0 -0
  227. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NativeNetworkInspectorSpec.dex +0 -0
  228. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$Companion.dex +0 -0
  229. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$activityEventListener$1.dex +0 -0
  230. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$frameCallback$1.dex +0 -0
  231. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.dex +0 -0
  232. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$shakeListener$1.dex +0 -0
  233. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.dex +0 -0
  234. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorModule.dex +0 -0
  235. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/inappinspector/NetworkInspectorPackage.dex +0 -0
  236. package/android/build/.transforms/ad628164ecef2a7cc593f0fd2f4050ce/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  237. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/results.bin +0 -1
  238. package/android/build/.transforms/c93e459e24d856bde563ebb048265732/transformed/classes/classes_dex/classes.dex +0 -0
  239. package/android/build/generated/source/buildConfig/debug/com/inappinspector/BuildConfig.java +0 -10
  240. package/android/build/generated/source/codegen/java/com/inappinspector/NativeNetworkInspectorSpec.java +0 -160
  241. package/android/build/generated/source/codegen/jni/CMakeLists.txt +0 -28
  242. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec-generated.cpp +0 -212
  243. package/android/build/generated/source/codegen/jni/RNInAppInspectorSpec.h +0 -31
  244. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.cpp +0 -22
  245. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ComponentDescriptors.h +0 -24
  246. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.cpp +0 -16
  247. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/EventEmitters.h +0 -17
  248. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.cpp +0 -19
  249. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/Props.h +0 -18
  250. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/RNInAppInspectorSpecJSI.h +0 -300
  251. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.cpp +0 -17
  252. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/ShadowNodes.h +0 -23
  253. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.cpp +0 -16
  254. package/android/build/generated/source/codegen/jni/react/renderer/components/RNInAppInspectorSpec/States.h +0 -20
  255. package/android/build/generated/source/codegen/schema.json +0 -1
  256. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -7
  257. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  258. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  259. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  260. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  261. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  262. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  263. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  264. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  265. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  266. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  267. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  268. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  269. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/BuildConfig.class +0 -0
  270. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  271. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  272. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -7
  273. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -7
  274. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  275. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  276. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  277. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/BuildConfig.class +0 -0
  278. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  279. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  280. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NativeNetworkInspectorSpec.class +0 -0
  281. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  282. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$activityEventListener$1.class +0 -0
  283. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  284. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.class +0 -0
  285. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  286. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.class +0 -0
  287. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorModule.class +0 -0
  288. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  289. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  290. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  291. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  292. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  293. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  294. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  295. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  296. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  297. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  298. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  299. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  300. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  301. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  302. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  303. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  304. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  305. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  306. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  307. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  308. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  309. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  310. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  311. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  312. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  313. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  314. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  315. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  316. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  317. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  318. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  319. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  320. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  321. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  322. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  323. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  324. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  325. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  326. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  327. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  328. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  329. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  330. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  331. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  332. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  333. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  334. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  335. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  336. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  337. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  338. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  339. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  340. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  341. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  342. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  343. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  344. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  345. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  346. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  347. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  348. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  349. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  350. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  351. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  352. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  353. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  354. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  355. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  356. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  357. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  358. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  359. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  360. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  361. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  362. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  363. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  364. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  365. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  366. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  367. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  368. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  369. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  370. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  371. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  372. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  373. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  374. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  375. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  376. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  377. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  378. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  379. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
  380. package/android/build/reports/problems/problems-report.html +0 -659
  381. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  382. package/android/build/tmp/kotlin-classes/debug/META-INF/react-native-inapp-inspector_debug.kotlin_module +0 -0
  383. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView$iconView$1.class +0 -0
  384. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/InAppInspectorFloatingView.class +0 -0
  385. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$Companion.class +0 -0
  386. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$activityEventListener$1.class +0 -0
  387. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$frameCallback$1.class +0 -0
  388. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$getCapturedMedia$lambda$57$$inlined$sortedByDescending$1.class +0 -0
  389. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$shakeListener$1.class +0 -0
  390. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule$startVideoRecording$2$1.class +0 -0
  391. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorModule.class +0 -0
  392. package/android/build/tmp/kotlin-classes/debug/com/inappinspector/NetworkInspectorPackage.class +0 -0
  393. package/dist/commonjs/a11y.d.ts +0 -2
  394. package/dist/commonjs/a11y.js +0 -1
  395. package/dist/commonjs/components/Inspector/A11yTab.d.ts +0 -2
  396. package/dist/commonjs/components/Inspector/A11yTab.js +0 -268
  397. package/dist/commonjs/components/Inspector/DeveloperSponsorCard.d.ts +0 -9
  398. package/dist/commonjs/components/Inspector/DeveloperSponsorCard.js +0 -52
  399. package/dist/commonjs/customHooks/a11yAdapter.d.ts +0 -11
  400. package/dist/commonjs/customHooks/a11yAdapter.js +0 -1
  401. package/dist/commonjs/helpers/sponsorService.d.ts +0 -20
  402. package/dist/commonjs/helpers/sponsorService.js +0 -1
  403. package/dist/esm/a11y.d.ts +0 -2
  404. package/dist/esm/a11y.js +0 -1
  405. package/dist/esm/components/Inspector/A11yTab.d.ts +0 -2
  406. package/dist/esm/components/Inspector/A11yTab.js +0 -268
  407. package/dist/esm/components/Inspector/DeveloperSponsorCard.d.ts +0 -9
  408. package/dist/esm/components/Inspector/DeveloperSponsorCard.js +0 -52
  409. package/dist/esm/customHooks/a11yAdapter.d.ts +0 -11
  410. package/dist/esm/customHooks/a11yAdapter.js +0 -1
  411. package/dist/esm/helpers/sponsorService.d.ts +0 -20
  412. package/dist/esm/helpers/sponsorService.js +0 -1
@@ -1 +1 @@
1
- {"common":{"cancel":"Cancelar","clear":"Limpiar","clearAll":"Limpiar todo","close":"Cerrar","loading":"Cargando...","success":"Éxito","pending":"Pendiente","failed":"Fallido","copy":"Copiar","copied":"¡Copiado!","copyJson":"Copiar JSON","collapseAll":"Contraer todo","expandAll":"Expandir todo","viewOnNpm":"Ver en NPM","later":"Más tarde","source":"ORIGEN","minimize":"Minimizar","tapToExpand":"Toca para expandir","open":"Abrir","share":"Compartir","openInBrowser":"Abrir en navegador","openInBrowserPrompt":"¿Estás seguro de que deseas abrir esta URL en tu navegador externo?","delete":"Eliminar","reset":"Restablecer","save":"Guardar","edit":"Editar","add":"Añadir","search":"Buscar","filter":"Filtrar","sort":"Ordenar","refresh":"Actualizar","retry":"Reintentar","confirm":"Confirmar","yes":"Sí","no":"No","ok":"Aceptar","done":"Hecho","back":"Atrás","next":"Siguiente","show":"Mostrar","hide":"Ocultar","select":"Seleccionar","selectAll":"Seleccionar todo","deselectAll":"Deseleccionar todo","noResults":"No se encontraron resultados","items":"elementos","of":"de","showing":"Mostrando","active":"Activo","inactive":"Inactivo","enabled":"Habilitado","disabled":"Deshabilitado","live":"En vivo","connected":"Conectado","disconnected":"Desconectado","version":"Versión","update":"ACTUALIZAR","unknown":"Desconocido","all":"Todo","dragToHide":"Arrastra aquí para ocultar","releaseToHide":"Suelta para ocultar inspector","expand":"Expandir","undo":"Deshacer","inActiveDevelopment":"En desarrollo activo","inspectorDismissed":"Inspector cerrado","noMatches":"Sin resultados coincidentes","moreFilters":"Más filtros"},"header":{"updateAvailableTitle":"Actualización disponible","updateAvailableMessage":"react-native-inapp-inspector v{{version}} está disponible en NPM (instalado: v{{installed}}).","clearEverythingTitle":"Borrar todo","clearEverythingMessage":"Esto borra todas las pestañas: API, registros, análisis, línea de tiempo de Redux e historial de fallos. ¿Continuar?","photo":"Foto","record":"Registro","rec":"REC","clear":"Borrar","about":"Acerca de","screenshotCaptured":"📸 Captura de pantalla capturada y guardada","screenshotFailed":"No se pudo realizar la captura de pantalla","screenshotError":"Error al tomar captura de pantalla","recordingStarted":"🔴 Comenzó la grabación de video","recordingSaved":"🎥 Grabación guardada ({{duration}}s)","recordingError":"Error de grabación","recordingStartFailed":"No se pudo iniciar la grabación","paramCount":"{{count}} parámetro","paramCount_plural":"{{count}} parámetros","sourceFirebase":"FB","sourceManual":"MAN","firebase":"base de fuego","manual":"manuales","aboutSpecs":"Acerca de y especificaciones","live":"En vivo","keys":"{{count}} claves","frames":"{{count}} fotogramas","sliceBadge":"REBANADA","recordScreen":"Grabar pantalla","newVersionAvailable":"Actualización disponible","updateAvailable":"Actualización de react-native-inapp-inspector v{{latestVersion}} lista","updateAvailableSubtitle":"Una nueva versión de react-native-inapp-inspector está lista para instalar","upgradeCommand":"COMANDO DE ACTUALIZACIÓN","copyCommand":"Copiar","viewNpm":"Ver","screenshot":"Captura","videoCapture":"Grabar"},"tabs":{"apis":"API","logs":"Registros","analytics":"Analítica","redux":"redux","crash":"Bloqueos","push":"empujar","device":"Dispositivo","storage":"Almacenamiento","media":"Captura","debugging":"Depuración","socket":"WebSocket"},"settings":{"mainTitle":"Configuraciones y módulos","mainSubtitle":"Administrar módulos y preferencias","requiredBadge":"REQUERIDO","defaultBadge":"PREDETERMINADO","notConnectedBadge":"NO CONECTADO","notDetectedBadge":"NO DETECTADO","readOnlyBadge":"SOLO LEER","coreBadge":"NÚCLEO","activeBadge":"ACTIVO","dormantBadge":"LATENTE","protectedBadge":"PROTEGIDO","modulesAndTools":"Módulos y herramientas","uiPreferences":"Interfaz de usuario y pantalla","ramLimits":"RAM y límites","screenVideoCapture":"Captura de pantalla y vídeo","zeroOverheadTitle":"Sobrecarga de fondo cero","zeroOverheadDesc":"Marque los módulos que desea activar. Los módulos deshabilitados consumen 0% de CPU y memoria hasta que se guardan.","unsavedPending":"● Selecciones no guardadas pendientes","allSynchronized":"Todos los módulos sincronizados","modulesActive":"{{active}} de {{total}} módulos activos","saveChanges":"Guardar cambios","settingsSaved":"Configuración guardada","settingsSavedDesc":"Las configuraciones del módulo activo se han actualizado correctamente.","configure":"Configurar","appearanceTheme":"APARIENCIA Y TEMA","windowLayout":"VENTANA Y DISEÑO","startupDefault":"PANTALLA DE INICIO Y PREDETERMINADO","logFiltersDeduplication":"FILTROS DE REGISTRO Y DEDUPLICACIÓN","resetSettings":"Restablecer todas las configuraciones","resetSettingsDesc":"Borrar las preferencias personalizadas a los valores predeterminados","reset":"Reiniciar","reduxNotConnectedTip":"La tienda Redux no está conectada. Llame a connectReduxStore(store) o utilice inspectorReduxMiddleware para habilitarlo.","analyticsNotConnectedTip":"Analytics no se inicializa. Llame a setupAnalyticsLogger(analytics()) para habilitarlo.","tabVisibility":"Visibilidad de pestañas","tabVisibilityDescription":"Elija qué módulos aparecen en el inspector","settingsTitle":"Configuración","back":"Atrás","apis":{"title":"Configuración de API","maxRequestLogs":"Registros de solicitudes máximas","maxRequestLogsDescription":"Tamaño del búfer de las solicitudes de red conservadas en la memoria","clearNetworkLogs":"Borrar registros de red","clearNetworkLogsDescription":"{{count}} solicitudes almacenadas","networkLogsCleared":"Registros de red borrados.","showStatusFilter":"Filtro de estado","showStatusFilterDescription":"Mostrar chips de estado en la lista de API","showMethodFilter":"Filtro de método","showMethodFilterDescription":"Mostrar chips de método en la lista de API","defaultTabDescription":"Pestaña en la que se abre el inspector","total":"Total: {{count}}"},"logs":{"title":"Configuración de registros","maxConsoleLogs":"Registros máximos de consola","maxConsoleLogsDescription":"¿Cuántos mensajes de consola conservar?","logLevels":"Gravedades de registro","logLevelsDescription":"Seleccione qué gravedades capturar en Registros","showInfo":"Mostrar registros de información","showInfoDesc":"Registros informativos e impresiones de depuración","showWarn":"Mostrar registros de advertencia","showWarnDesc":"Avisos de advertencia y obsolescencias","showError":"Mostrar registros de errores","showErrorDesc":"Errores y excepciones en tiempo de ejecución","clearConsoleLogs":"Borrar registros de la consola","clearConsoleLogsDescription":"{{count}} registros almacenados","consoleLogsCleared":"Se borraron los registros de la consola.","total":"Total: {{count}}"},"analytics":{"title":"Configuración de análisis","total":"Eventos: {{count}}","maxAnalyticsEvents":"Eventos capturados","maxAnalyticsEventsDescription":"{{count}} eventos de análisis almacenados en el búfer","clearAnalyticsEvents":"Borrar historial de análisis","clearAnalyticsEventsDescription":"Borrar todos los eventos de telemetría capturados","analyticsEventsCleared":"Eventos de análisis borrados."},"redux":{"title":"Configuración de redux","reducers":"Reductores: {{count}}","autoRefresh":"Tienda de actualización automática","autoRefreshDescription":"Capture el árbol de estado de la tienda Redux en cada envío","defaultJsonExpandDepth":"Profundidad de expansión JSON predeterminada","defaultJsonExpandDepthDescription":"Profundidad inicial del árbol de estado de Redux para expandirse automáticamente","clearReduxState":"Borrar estado de Redux","clearReduxStateDescription":"Restablecer la instantánea del estado actual en el inspector","clearReduxStateEmpty":"No se ha registrado ninguna instantánea de la tienda","reduxStateCleared":"Se borró la instantánea del estado de Redux.","clearReduxTimeline":"Borrar línea de tiempo de Redux","clearReduxTimelineDescription":"Eliminar todo el historial de acciones capturadas","reduxTimelineCleared":"Se borró el historial de acciones de Redux."},"bundle":{"title":"Configuración del paquete","sourceBundler":"Paquete de fuente Metro","sourceBundlerDesc":"Analiza árboles de módulos activos y calcula desgloses de tamaño binario","clearCache":"Borrar caché de paquete","clearCacheDesc":"Forzar la recuperación y el análisis del paquete JS","cacheCleared":"Se borró la caché de análisis de paquetes."},"performance":{"title":"Configuración de rendimiento","frameMeasurement":"Medición de cuadros en vivo","frameMeasurementDesc":"Muestra velocidades de fotogramas UI/JS y detecta renderizados innecesarios","clearEvents":"Borrar eventos de rendimiento","clearEventsDesc":"Restablecer el historial de caídas de FPS y jank registrados","eventsCleared":"Eventos de rendimiento borrados."},"crash":{"title":"Configuración de bloqueo","maxCrashLogs":"Registros máximos de fallos","maxCrashLogsDesc":"¿Cuántos registros de accidentes preservar en la historia?","globalGuard":"Guardia global contra accidentes","globalGuardDesc":"Intercepta errores nativos, JS y de renderizado directamente","clearHistory":"Borrar historial de fallos","clearHistoryDesc":"{{count}} registros de fallas almacenados","historyCleared":"Se borraron los registros de fallos."},"media":{"title":"Captura de pantalla y vídeo","badge":"H.264 nativo/GIF","desc":"Configure formatos de captura de pantalla, calidad, FPS de video, narración de audio, grabación y almacenamiento de GIF","screenshotCardTitle":"Formatos y calidad de captura de pantalla","screenshotCardDesc":"Configuración de instantáneas de ventana completa de alta resolución","imageFormat":"Formato de imagen","imageFormatDesc":"PNG (sin pérdidas), JPEG (compacto) o WEBP","autoHide":"Superposición de inspector de ocultación automática","autoHideDesc":"Excluye la interfaz de usuario del inspector de las capturas de pantalla","enabled":"HABILITADO","videoCardTitle":"Grabación de vídeo y GIF","videoCardDesc":"Grabación MP4 H.264 y exportación de GIF animados","audioMode":"Modo de narración de audio","audioModeDesc":"Silenciado, audio de aplicación o narración de voz","frameRate":"Velocidad de fotogramas","frameRateDesc":"Un FPS más alto produce grabaciones más fluidas","gifAutoOpt":"Optimización automática de GIF","gifAutoOptDesc":"Convierte grabaciones de video para GitHub PR y Slack","purgeAll":"Purgar todos los medios capturados","purgeAllDesc":"Elimina todas las capturas de pantalla, videos y GIF almacenados","purgeCacheBtn":"Purgar caché","purgeConfirmTitle":"Purgar almacenamiento de medios","purgeConfirmMessage":"Esto elimina todos los archivos multimedia capturados del caché local. ¿Continuar?","purgedSuccess":"Almacenamiento de medios eliminado"},"general":{"darkMode":"Tema del modo oscuro","darkModeDescription":"Alternar estética elegante y oscura o contraste claro","modalHeight":"Altura de la ventana de inspección","modalHeightDescription":"Porcentaje de cobertura de pantalla modal","modalAnimation":"Animación de transición","modalAnimationDescription":"Estilo de presentación de entrada y salida.","duplicateLogs":"Mostrar registros duplicados","duplicateLogsDescription":"Desactivado: las entradas repetidas idénticas se colapsan en insignias ×N","defaultOpeningTab":"Pestaña de apertura predeterminada","defaultOpeningTabDesc":"Pestaña inicial activa cuando se toca el botón del iniciador","activeConsoleLogLevels":"Niveles de registro de consola activa","activeConsoleLogLevelsDesc":"Seleccione qué gravedades capturar en Registros","resetToDefaults":"Restablecer los valores predeterminados","resetToDefaultsDescription":"Restaurar todas las configuraciones del inspector","resetConfirmationTitle":"Restablecer configuración","resetConfirmationMessage":"Todas las configuraciones se han restablecido a los valores predeterminados.","storageStatus":"Almacenamiento persistente","storageStatusEnabled":"Almacenamiento de configuración: persistente ({{type}})","storageStatusEnabledDesc":"Sus preferencias y visibilidad del módulo persisten después de reiniciar la aplicación.","storageStatusDisabled":"Almacenamiento de configuración: en memoria (temporal)","storageStatusDisabledDesc":"Las preferencias se restablecen al cerrar la aplicación. Pase el almacenamiento personalizado a <NetworkInspector Storage={...} /> para persistir en Android.","language":"Idioma","languageDescription":"Seleccionar idioma de visualización de la interfaz","selectLanguage":"Seleccionar idioma","peekOpacity":"Opacidad de transparencia","peekOpacityDescription":"Nivel de transparencia cuando el icono de ojo está activado"},"configureSubtitle":"Configurar parámetros del módulo","resetAlertTitle":"Restablecer toda la configuración","resetAlertMessage":"Esto restaura la visibilidad de módulos y preferencias de interfaz a sus valores predeterminados. ¿Continuar?","settingsReset":"Configuración restablecida","settingsResetMessage":"Toda la configuración ha sido restablecida.","pushHistoryCleared":"Historial de notificaciones push borrado","socketHistoryCleared":"Historial de WebSocket borrado","memory":{"manualTitle":"Limpieza manual de memoria","manualDescription":"Elimine las entradas más antiguas en todos los almacenes de registros y libere RAM","pruned":"{{count}} elementos eliminados de la memoria"},"simulator":{"salesforce":"Impulso simulado de Salesforce Marketing Cloud","fcm":"Empuje simulado de Firebase FCM","apns":"Empuje de APN de Apple simulado","deepLink":"Empuje de enlace profundo simulado","chat":"Sesión WebSocket de chat en tiempo real simulada","crypto":"Flujo simulado de Binance Crypto Ticker","socketio":"Sesión simulada de Socket.IO v4","echo":"Prueba simulada de eco de WebSocket","screenshotSaved":"¡Captura de pantalla capturada y guardada!"},"simulatePushTitle":"SIMULAR NOTIFICACIONES PUSH DE PRUEBA","simulateSocketTitle":"SIMULAR CONEXIONES SOCKET DE PRUEBA","directCaptureShortcuts":"ACCESOS DIRECTOS DE CAPTURA DIRECTA"},"network":{"title":"API","searchPlaceholder":"Buscar por URL, estado o método...","emptyTitle":"Aún no se han capturado llamadas API","emptySubtitle":"Las solicitudes de red aparecerán aquí a medida que utilice la aplicación.","reload":"recargar","clearTitle":"Borrar registros de red","clearMessage":"¿Está seguro de que desea borrar todos los registros de red capturados?","detailTabs":{"metadata":"Metadatos","headers":"Encabezados","request":"Solicitar","response":"Respuesta"},"requestTitle":"Solicitar","responseTitle":"Respuesta","searchRequest":"Solicitud de búsqueda...","searchResponse":"Respuesta de búsqueda...","searchHeaders":"Buscar encabezados...","requestHeaders":"Encabezados de solicitud","responseHeaders":"Encabezados de respuesta","diffTitle":"diferencia","noResponse":"Sin cuerpo de respuesta","noRequest":"Sin cuerpo de solicitud","statusFailed":"Fallido","urlHeader":"URL","methodHeader":"Método","statusHeader":"Estado","durationHeader":"Duración","sizeHeader":"Tamaño","triggeredAt":"Activado en","contentType":"Tipo de contenido","sourcePage":"Página fuente","sourcePageUnknown":"Fuente desconocida","loadMore":"Cargar más","groupByPage":"Agrupar por página","groupByDomain":"Agrupar por dominio","groupByNone":"Lista","domain":"Dominio","page":"Página","requests":"{{count}} solicitudes","requests_plural":"{{count}} solicitudes","noFilteredResults":"Ninguna solicitud coincide con los filtros actuales","scrollToTop":"Desplazarse hacia arriba","copyCurl":"Copiar rizo","copyFetch":"Copiar fragmento de recuperación","emptyResponse":"respuesta vacía","bodyHidden":"{Cuerpo oculto}","queryParams":"Parámetros de consulta","fullUrl":"URL completa","open":"Abierto","showMore":"Mostrar más","showLess":"Mostrar menos","failedNetworkError":"Error (error de red)","noMatchingHeaders":"No hay encabezados coincidentes","diffHidden":"{ Diferencia oculta }","noDiff":"No hay diferencias con la API anterior.","healthTitle":"Estado de la red y telemetría","successRate":"Tasa de éxito","avgLatency":"Latencia promedio","p95Latency":"Latencia P95","bandwidth":"Ancho de banda","fastest":"Más rápido","slowest":"mas lento","timingWaterfall":"Cascada de sincronización y latencia","throughput":"Rendimiento","performanceTier":"Nivel de rendimiento","perf":{"fast":"Rápido (< 200 ms)","moderate":"Moderado (200-800 ms)","slow":"Lento (> 800 ms)"},"jsonViewer":{"pretty":"bonita","raw":"Raw","table":"mesa","emptyObject":"Objeto vacío","emptyTable":"Objeto vacío","key":"Key","value":"VALOR","keyProperty":"CLAVE / PROPIEDAD","noMatchingKeys":"No se encontraron claves o valores coincidentes","emptyPayload":"No hay datos de carga útil disponibles"},"showingRequests":"Mostrando {{count}} peticiones","showingFilteredRequests":"Mostrando {{filtered}} de {{total}} peticiones","status200":"200 bien","status201":"201 Creado","status204":"204 Sin contenido","status304":"304 No modificado","status400":"400 Petición incorrecta","status401":"401 No autorizado","status403":"403 Prohibido","status404":"404 No encontrado","status500":"error 500","shareError":"Error al compartir","shareErrorMessage":"No se pudo abrir la hoja de compartir","clearLogsTitle":"Borrar registros de red","clearLogsMsg":"¿Estás seguro de que deseas borrar todos los registros de red?","moreFilters":"Más filtros"},"console":{"title":"Registros","searchPlaceholder":"Buscar registros...","emptyTitle":"Aún no hay registros de consola","emptySubtitle":"La salida de la consola de su aplicación aparecerá aquí.","analyticsBadge":"Analítica","userLogBadge":"registro de usuario","jsonTitle":"Registrar JSON","messageTitle":"Mensaje de registro","search":"Registro de búsqueda...","searchJson":"Registro de búsqueda JSON...","logMessage":"Mensaje de registro","consoleLog":"Registro de consola","characters":"{{count}} caracteres","duplicates":"×{{count}} duplicados","showMore":"Mostrar más","showLess":"Mostrar menos","clearTitle":"Borrar registros","clearMessage":"¿Está seguro de que desea borrar todos los registros de la consola?","seeMore":"Mostrar más","noResults":"Ningún registro coincide con los filtros actuales","filterAll":"All","filterInfo":"Información","filterWarn":"Advertir","filterError":"error","filterUserLog":"Registro de usuario","filterAnalytics":"Analítica","tabOutput":"Salida","tabArgs":"Argumentos ({{count}})","tabStack":"Seguimiento de pila","tabMetadata":"Metadatos","callStack":"Pila de llamadas ({{count}} fotogramas)","errorStack":"Pila de excepción de error ({{count}} marcos)","callOriginStack":"Pila de origen de llamada","errorThrownStack":"Pila de errores arrojados","appCodeScope":"🎯 Código de aplicación ({{count}})","allFramesScope":"📜 Todos los fotogramas ({{count}})","cardsView":"Tarjetas","rawTraceView":"Raw","noStackAvailable":"No se encontraron marcos de pila de llamadas que coincidan con el filtro activo.","originBadge":"#1 ORIGEN","appCodeBadge":"Código de aplicación","dependencyBadge":"dependencia","nativeBadge":"Nativo","fullStackTrace":"Seguimiento de pila completa","lineCol":"Línea {{line}}, Col {{col}}","searchInLogDetails":"Buscar en los detalles del registro...","showingLogs":"Mostrando {{count}} registros","showingFilteredLogs":"Mostrando {{filtered}} de {{total}} registros","filteredBy":"Filtrado por {{filters}} ({{filtered}} de {{total}} registros)","log":"Registro","info":"Información","warning":"Advertencia","error":"error","debug":"Depuración","hermesVmBadge":"Hermes VM","lineColShort":"L{{line}}:C{{col}}","clearLogsTitle":"Borrar registros de consola","clearLogsMsg":"¿Estás seguro de que deseas borrar todos los registros de consola?","analytics":"Analítica","exportTitle":"Exportar registros de consola","exportScope":"ÁMBITO DE ORIGEN DE REGISTROS","filteredView":"Filtro activo","allLogsScope":"Todos los registros","howManyLogs":"¿CUÁNTOS REGISTROS DESEA EXPORTAR?","enterCount":"Ingrese el número de registros:","exportFormat":"FORMATO DE EXPORTACIÓN","exportSummary":"Tamaño estimado de exportación","selectedLogs":"REGISTROS SELECCIONADOS","estSize":"TAMAÑO ESTIMADO","format":"FORMATO","exportLogsAction":"Exportar {{count}} registros ({{size}})","exportingLogs":"Exportando registros de consola...","processingItem":"Procesando","records":"registros","exportSuccessTitle":"¡Exportación de registros lista!","exportSuccessDesc":"Paquete completo de registros formateado y listo para compartir o guardar.","shareReport":"Compartir registros","saveToDisk":"Guardar en disco","copyToClipboard":"Copiar contenido","exportAnother":"← Exportar otro","noLogsToExport":"No hay registros disponibles para exportar","savePromptOpened":"Diálogo de guardar en disco abierto","copiedLogs":"¡Registros copiados al portapapeles!","ignorePatterns":"Ignorar patrones (Regex)","ignorePatternsDesc":"Los registros que coincidan se excluirán de la exportación.","invalidRegex":"Sintaxis de expresión regular no válida","logsExcluded":"{{count}} registros excluidos"},"analytics":{"title":"Analítica","searchPlaceholder":"Buscar eventos...","emptyTitle":"Aún no hay eventos de análisis","emptySubtitle":"Los eventos de análisis aparecerán aquí a medida que su aplicación los rastree.","clearTitle":"Análisis claros","clearMessage":"¿Está seguro de que desea borrar todos los eventos de análisis?","eventParams":"{{count}} parámetros","eventCount":"{{count}} eventos","userProperties":"Propiedades de usuario","userId":"ID de usuario","defaultParameters":"Parámetros predeterminados","collectionEnabled":"Colección habilitada","screenView":"vista_pantalla","eventDetails":"Detalles del evento","parameters":"Parámetros","noParams":"Sin parámetros","recentEvents":"Eventos recientes","analyticsError":"Error de análisis","duplicate":"Duplicar","params":"parámetros","props":"accesorios","item":"artículo","items":"artículos","pageViewCategory":"Vista de página","ecommerceCategory":"Comercio electrónico","systemCategory":"Sistema","customCategory":"personalizado","realtimeStream":"Actividad en tiempo real","liveTelemetry":"Telemetría en vivo","eventsInWindow":"eventos en ventana","peakVolume":"Pico: {{count}}","timeNow":"NOW","selectedBucket":"Depósito: {{time}} ({{count}} eventos)","totalRevenue":"Ingresos","activeDistribution":"División de categoría","allCategory":"All","screensCategory":"Pantallas","overviewTab":"Descripción general","jsonTreeTab":"Árbol JSON","rawPayloadTab":"Carga útil sin procesar","sessionContext":"Contexto de la sesión","userPropertiesSnapshot":"Instantánea de propiedades de usuario","parameterKeys":"Parámetros ({{count}})","searchParameters":"Parámetros de búsqueda...","noParamsFound":"Ningún parámetro coincide con su búsqueda","sourceFirebase":"BASE DE FUEGO GA4","sourceCustom":"PERSONALIZADO / MANUAL","eventVelocity":"{{rate}} ev/min","time30mAgo":"-30m","time20mAgo":"-20m","time10mAgo":"-10m","dataVisualization":"Visualización de datos","dataTypesBreakdown":"Desglose de tipos de datos","highestPayloadStrings":"Cadenas de mayor carga útil","topLevelMetrics":"Métricas de nivel superior","importantDates":"Fechas importantes","itemPrices":"Precios de artículos","sessionIdentity":"SESIÓN E IDENTIDAD","metricParams":"Parámetros:","metricUserProps":"Props de usuario:","metricSize":"Tamaño:","metricItems":"{{count}} artículos","sessionId":"ID de sesión","trackingId":"ID de seguimiento","eventParameters":"PARÁMETROS DEL EVENTO ({{count}})","keyValueAttributes":"Atributos clave-valor","filterParamsPlaceholder":"Filtrar parámetros por clave o valor...","noParamsRecorded":"No se registraron parámetros personalizados para este evento.","noParamsMatching":"Ningún parámetro coincide con \"{{search}}\"","clearEventsTitle":"Borrar analítica","clearEventsMsg":"¿Estás seguro de que deseas borrar todos los eventos de analítica?"},"redux":{"title":"redux","searchPlaceholder":"Buscar estado o acciones...","emptyTitle":"Ningún almacén Redux conectado","emptySubtitle":"Conecta tu almacén para inspeccionar el estado y las acciones.","stateTab":"Estado","actionsTab":"Acciones","clearTitle":"Borrar línea de tiempo de Redux","clearMessage":"¿Está seguro de que desea borrar el historial de acciones enviadas?","noActions":"Aún no se han enviado acciones. Activa una acción en la aplicación para completar el historial.","noSearchResults":"Ninguna acción coincide con tu búsqueda.","lastAction":"Última acción","actionHistory":"Historial de acción","affectedSlices":"Rebanadas afectadas","noAffectedSlices":"Ninguno","dispatchTime":"Enviado a","prevState":"Estado anterior","nextState":"Estado siguiente","viewDiff":"Ver diferencia","emptyState":"el estado esta vacio","rootState":"Estado raíz","connectionStatus":"Conectado","connectionStatusNone":"No conectado","autoRefresh":"Actualización automática","paused":"En pausa","liveState":"Estado vivo","timeline":"Línea de tiempo","persisted":"persistió","storage":"Almacenamiento","metadata":"Metadatos","inMemory":"En memoria","slice":"REBANADA","rootKeys":"Claves raíz","size":"Tamaño","actions":"acciones","keys":"llaves","last":"último","live":"en vivo","loading":"Cargando","error":"error","empty":"vacio","payload":"Carga útil","actionPayload":"Carga útil de acción:","stateChangesDiff":"Cambios de estado (diferenciación):","tapToInspectAction":"Toque para inspeccionar la carga útil de la acción y los cambios de diferencias","noDispatchedActions":"Aún no se han registrado acciones enviadas para este segmento.","sliceJson":"Cortar JSON","originUi":"UI","originDirect":"DIRECTO","originListener":"OYENTE","triggeredFrom":"Activado desde:","openInEditor":"Abrir en el editor","callStack":"Seguimiento de pila de llamadas","sliceOrigin":"Rebanada / Origen","activeSlices":"SLICES ACTIVOS","totalState":"ESTADO TOTAL","lastActionHeader":"ÚLTIMA ACCIÓN","initialState":"Estado inicial (sin acciones despachadas)","noStoreConnected":"Ningún almacén Redux conectado","connectStoreTip":"Llama a connectReduxStore(store) o usa inspectorReduxMiddleware al iniciar la app.","clearPersistedTitle":"Borrar estado persistido","clearPersistedMessage":"¿Está seguro de que desea eliminar el almacenamiento persistido del slice \"{{slice}}\"?","clearedPersisted":"El estado persistido ha sido borrado.","clearPersistedError":"Error al borrar el estado persistido.","originSaga":"SAGA","originThunk":"THUNK","clearTimelineTitle":"Borrar línea de tiempo de Redux","clearTimelineMsg":"¿Estás seguro de que deseas borrar el historial de acciones enviadas?","diff":"Diferencia de estado"},"device":{"title":"Dispositivo","searchPlaceholder":"Buscar especificaciones, UDID, IP, pantalla...","subTabs":{"overview":"Resumen","hardware":"Ferretería","network":"Red e IP","display":"Pantalla","runtime":"Ejecución y App","security":"Seguridad e IDs"},"sections":{"overview":"RESUMEN DEL DISPOSITIVO","hardware":"ESPECIFICACIONES DE HARDWARE Y SISTEMA","network":"RED Y CONECTIVIDAD","display":"PANTALLA Y GEOMETRÍA","runtime":"EJECUCIÓN Y ENTORNO","security":"IDENTIFICADORES Y SEGURIDAD"},"copied":"Copiado {{label}}","copiedJson":"¡Informe JSON completo del dispositivo copiado!","copiedMarkdown":"¡Informe Markdown copiado al portapapeles!","live":"EN VIVO","ipAddress":"DIRECCIÓN IP","ramUsedTotal":"RAM (USADA/TOTAL)","uptime":"TIEMPO ACTIVO","copiedUuid":"ID único de dispositivo copiado (UUID)"},"storage":{"title":"Almacenamiento","searchPlaceholder":"Buscar claves, valores, tipos...","subTabs":{"asyncStorage":"Almacenamiento asíncrono","mmkv":"MMKV"},"clearTitle":"Limpiar almacenamiento","clearMessage":"¿Estás seguro de que deseas eliminar todas las claves en {{driver}}?","clearConfirm":"Limpiar todo","emptyTitle":"Sin entradas de almacenamiento","emptySubtitle":"El almacenamiento está vacío para este controlador.","addKey":"Añadir clave","add":"Añadir","editKey":"Editar clave","createKey":"Crear clave","save":"Guardar","saveKey":"Guardar clave","keyName":"Nombre de clave","value":"Valor","valueContent":"Contenido del valor","type":"Tipo","beautifyJson":"Formatear JSON","loading":"Cargando entradas de almacenamiento...","deleteKeyTitle":"Eliminar clave","deleteKeyMessage":"¿Estás seguro de que deseas eliminar la clave \"{{key}}\"?","asyncStorage":"Almacenamiento asíncrono","deleteConfirm":"Eliminar","cleared":"Almacenamiento borrado","mmkv":"MMKV","keyNameEmpty":"El nombre de la clave no puede estar vacío","saveError":"Error al guardar la clave de almacenamiento"},"footer":{"endOfList":"Has llegado al final de la lista","loadMore":"Cargar {{count}} más","loadMoreRequests":"Cargar {{count}} Más solicitudes","allLoaded":"Todas las {{count}} solicitudes cargadas","showingOf":"Mostrando {{count}} de {{total}} {{label}}"},"performance":{"title":"Rendimiento","fpsTarget":"Monitor de objetivo de 60 FPS","healthScore":"Puntuación de salud FPS","excellent":"Excelente (60 FPS)","good":"Bueno (janks menores)","needsOptimization":"Necesita optimización","liveFps":"FPS en vivo y ciclo de actualización","realtimeWindow":"Tiempo real (ventana de 1 s)","uiRenderThread":"Hilo de renderizado de la interfaz de usuario","optimalFrame":"Óptimo (<16,6 ms)","slowFrame":"Fotograma lento (>16,6 ms)","budgetUsage":"Uso del presupuesto de 60 FPS","avgFrameTime":"Tiempo medio de fotograma","peakTime":"Hora pico","jsThread":"Hilo JS","uiThread":"Hilo de interfaz de usuario","jsiLatency":"Latencia JSI","heapImpact":"Impacto del montón","optimizationTip":"Consejo de optimización:","recordedEvents":"Eventos e interacciones grabados","liveStream":"Transmisión de sesión en vivo","emptyTitle":"Aún no se han capturado eventos de rendimiento","emptySubtitle":"Realice acciones en su aplicación para ver los tiempos de los subprocesos, el costo de procesamiento y el seguimiento de FPS.","tabOverview":"Descripción general","tabRenders":"renderiza","tabInteractions":"Interacciones","tabMemory":"Memoria","filterAll":"All","filterSlow":"Lento (>16ms)","filterCritical":"Crítico (>33ms)","searchPlaceholder":"Componente de búsqueda, interacción...","avgRenderTime":"Promedio de renderizado","totalRenders":"Representaciones totales","renderCost":"Costo de renderizado","slowRenders":"renderizados lentos","unnecessaryRenders":"Renders derrochadores","heapAllocated":"Montón asignado","heapLimit":"Límite de montón","gcEvents":"Eventos de la general","leakRisk":"Riesgo de fuga","lowRisk":"Bajo riesgo","mediumRisk":"Riesgo medio","highRisk":"Alto riesgo","memoryTimeline":"Línea de tiempo de la memoria","clearPerformance":"Borrar datos de rendimiento","clearConfirmation":"¿Está seguro de que desea borrar todos los datos de seguimiento del rendimiento?","liveFpsDip":"Caída de la velocidad de cuadros en vivo ({{fps}} FPS)","liveFpsDipDetail":"La duración del marco del hilo principal se extendió a {{duration}}ms durante la actualización de la vista.","liveFpsDipAdvice":"Ejecución intensa de JavaScript durante la presentación de visualización retrasada del paso de fotogramas.","yogaLayout":"Diseño de caja flexible de yoga","hermesGc":"Recolección de basura de Hermes","jsEngine":"Motor JS","uiReconciler":"Conciliador de interfaz de usuario","memoryHeap":"montón de memoria","allLogs":"Todos los registros","jankySlow":"Janky / Lento","navigation":"Navegación","components":"Componentes","memoryGc":"Memoria y GC","networkIo":"Red y E/S","catAll":"All","catNavigation":"Navegación","catRender":"Componentes","catMemory":"Memoria","catIo":"I/O","recording":"Grabación","paused":"En pausa","budgetHeadroom":"~{{time}}ms de margen libre ({{percent}}%)","jsExec":"Ejecutivo de JS: {{time}}ms","yogaLayoutTime":"Diseño de yoga: {{time}}ms","uiRenderTime":"Representación de la interfaz de usuario: {{time}}ms","freeTime":"Gratis: {{time}}ms","heapAllocatedSub":"{{allocated}} MB asignados","jscEngine":"JSC","bytecodeCompiled":"Código de bytes compilado","jitEngine":"Motor JIT","webkitEngine":"Motor Webkit","fabricJsi":"Tela/JSI","paperBridge":"Papel / Puente","directCppBindings":"Enlaces directos de C++","asyncJsonBridge":"Puente JSON asíncrono","fpsUnit":"FPS","jsLag":"Retraso JS","jankRate":"Tasa de Jank","fpsAreaChartTitle":"Flujo y fluctuación de FPS en tiempo real (30 s)","fpsAreaChartSub":"Objetivo en vivo de 60 FPS con medición continua de la variación del cuadro","frameLatencyDistTitle":"Distribución de latencia de fotogramas","frameLatencyDistSub":"Proporción de fotogramas entregados dentro del presupuesto de 16,6 ms","optimalBucket":"< 16,6 ms (60 fps)","minorJankBucket":"16,7 - 33,3 ms (30-60 fotogramas por segundo)","noticeableJankBucket":"33,4 - 50,0 ms (20-30 fotogramas por segundo)","severeFreezeBucket":"> 50,0 ms (< 20 fps)","hermesHeapTrendTitle":"Memoria y dinámica del montón de Hermes","hermesHeapTrendSub":"Asignación en vivo versus ciclos de recuperación de GC generacional","live":"en vivo","msTotal":"{{duration}}ms totales • {{time}}","droppedFrames":"{{count}} Eliminado","zeroDropped":"0 caído","frameBudgetMs":"{{time}}ms/cuadro ({{budget}}% presupuesto)","target60Fps":"Objetivo 60 FPS • Real {{fps}} FPS","frameDuration":"Duración del cuadro","frameDurationVal":"{{time}} ms (presupuesto de 16,67 ms)","frameUtilization":"Presupuesto del marco excedido","frameBudgetOk":"Espacio libre económico del marco","bottleneck":"Cuello de botella","jsBound":"JS hilo enlazado","uiBound":"Hilo de interfaz de usuario vinculado","balanced":"equilibrado","smooth":"Suave 60 FPS","minorJank":"tartamudeo menor","noticeableJank":"Jank notable","severeFreeze":"Congelación severa","screenContext":"Contexto de pantalla","profileReason1":"Accesorios de función de flecha en línea pasados a los niños (onAddToCart={() => ...})","profileReason2":"Selector Redux no memorizado que crea una nueva referencia de objeto en cada envío","profileReason3":"Objeto de estilo dinámico creado en el cuerpo del renderizado ({ marginTop: insets.top + 10 })","profileReason4":"A FlatList le falta getItemLayout, lo que provoca pases de medición de diseño asíncronos","profileReason5":"Función renderItem definida de forma anónima dentro del cuerpo JSX","profileReason6":"Listar los componentes del elemento que no están incluidos en React.memo","profileReason7":"La pantalla principal se volvió a representar en el teclado para mostrar/ocultar evento","profileReason8":"Referencia de devolución de llamada inestable pasada al botón de pago","profileReason9":"El estado del valor de TextInput activa la reproducción principal con cada pulsación de tecla sin rebote","profileReason10":"Pasar un objeto de filtro no memorizado ({categoría, minPrice}) a chips secundarios","profileReason11":"Revalidación de caché de imagen de avatar al actualizar la sesión de autenticación","fixUseCallbackTitle":"Ajustar controladores de eventos en usoCallback","fixUseCallbackDesc":"Las funciones en línea recrean una nueva referencia de memoria en cada renderizado, invalidando React.memo en los componentes secundarios.","fixCreateSelectorTitle":"Memoizar selectores Redux / Zustand con superficialEqual","fixCreateSelectorDesc":"Devolver nuevas referencias a objetos o matrices dentro de useSelector fuerza una nueva representación automática en cada envío de estado.","fixUseMemoStylesTitle":"Estilos de elevación o uso useMemo para dimensiones dinámicas","fixUseMemoStylesDesc":"Los objetos de estilo en línea crean nuevas identidades de objetos en cada paso de fotograma, lo que provoca diferencias de conciliación en Yoga Flexbox.","fixGetItemLayoutTitle":"Implementar getItemLayout para elementos de altura fija","fixGetItemLayoutDesc":"Proporcionar getItemLayout permite a FlatList calcular inmediatamente los desplazamientos de desplazamiento y las ventanas virtuales sin medir las vistas de forma asincrónica.","fixReactMemoTitle":"Ajustar elementos de la lista en React.memo","fixReactMemoDesc":"Evita que los más de 50 elementos visibles de la lista se vuelvan a representar cuando se actualiza el estado de la lista principal (por ejemplo, posición de desplazamiento o paginación).","fixComponentSplittingTitle":"Aislar el estado que cambia rápidamente en los componentes de la hoja","fixComponentSplittingDesc":"Mueva los oyentes del teclado y el estado de la animación modal a subcomponentes autónomos para que el padre no se vuelva a renderizar.","fixDebouncedInputTitle":"Entrada de búsqueda antirrebote o uso del estado controlado local","fixDebouncedInputDesc":"No propague el estado de pulsación de tecla al almacén global inmediatamente. Utilice un rebote de 250 ms o una referencia incontrolada.","fixPrimitivePropsTitle":"Pase accesorios primitivos en lugar de objetos grandes","fixPrimitivePropsDesc":"Pasar solo la cadena de ID de categoría en lugar del objeto de categoría completo evita que se vuelva a representar cuando se actualizan los metadatos de otras categorías.","fixUseRefForTrackingTitle":"Utilice useRef para valores de seguimiento no visuales","fixUseRefForTrackingDesc":"No almacene temporizadores de análisis, desplazamientos de desplazamiento ni ID de seguimiento en useState si no modifican directamente el árbol JSX.","highImpact":"Alto Impacto","mediumImpact":"Impacto medio","bestPractice":"Mejores prácticas","beforeUseCallback":"// ❌ Antes en <{{comp}} /> (recrea la referencia de función en cada renderizado):","afterUseCallback":"// ✅ Después (referencia de devolución de llamada memorizada estable):","beforeCreateSelector":"// ❌ Antes en <{{comp}} /> (devuelve una nueva referencia de objeto en cada renderizado):","afterCreateSelector":"// ✅ Después (shallowEqual evita que se vuelva a renderizar a menos que los valores cambien):","beforeMemo":"// ❌ Antes (<{{comp}} />):","afterMemo":"// ✅ Después (omite el renderizado si los accesorios son superficialmente idénticos):","flatListOptimization":"// Optimización de FlatList para <{{comp}} />","customComparator":"// Función de igualdad personalizada para <{{comp}} />","debounceInput":"// Antirrebote de entrada dentro de <{{comp}} /> para evitar renderizaciones por pulsación de tecla:","isolateState":"// Aislar el estado que cambia rápidamente desde <{{comp}} /> al subárbol secundario // ✅ Encapsular el diseño animado dentro del componente aislado:","beforeUseRef":"// ❌ Antes en <{{comp}} /> (activa la renderización completa del componente al cambiar el valor):","afterUseRef":"// ✅ Después (conserva la referencia mutable entre renderizados sin volver a renderizar):","fixInteractionManagerTitle":"Aplazar la lógica fuera de la pantalla con InteractionManager","fixInteractionManagerDesc":"El procesamiento intensivo de datos durante las animaciones de la pantalla reduce los fotogramas. Aplazar hasta que finalice la transición.","beforeInteractionManager":"// ❌ Antes en <{{comp}} /> (ejecuta cálculos pesados mientras se anima la transición): useEffect(() => { loadHeavyData(); }, []);","afterInteractionManager":"// ✅ Después (espera hasta que la transición se complete sin problemas): useEffect(() => { const task = InteractionManager.runAfterInteractions(() => { loadHeavyData(); }); return () => task.cancel(); }, []);","fixFlatListWindowingTitle":"Ajustar las propiedades de ventanas FlatList","fixFlatListWindowingDesc":"Configure maxToRenderPerBatch y windowSize para minimizar las asignaciones de vistas virtualizadas fuera de la pantalla.","beforeFlatListWindowing":"// Optimización de ventanas FlatList para <{{comp}} />: <FlatList data={items} maxToRenderPerBatch={10} windowSize={5} inicialNumToRender={8} removeClippedSubviews={true} />","fixImageCachingTitle":"Optimice el almacenamiento en caché y la reducción de escala de imágenes","fixImageCachingDesc":"Utilice encabezados de prioridad o resizeMode para evitar asignaciones masivas de mapas de bits en el montón de Hermes.","beforeImageCaching":"// Optimización de imagen para <{{comp}} />: <Image source={{ uri: imageUrl, cache: 'force-cache' }} resizeMode=\"cover\" fadeDuration={100} />","fixContextSplittingTitle":"Dividir el contexto monolítico en proveedores granulares","fixContextSplittingDesc":"Los componentes que se suscriben a un contexto grande se vuelven a representar incluso cuando cambian las propiedades de estado no utilizadas.","beforeContextSplitting":"// ❌ Antes (<{{comp}} /> consume todo el AppContext): const { usuario, carrito, tema } = useAppContext();","afterContextSplitting":"// ✅ Después (suscríbete al contexto de segmento dedicado): const theme = useThemeContext();","fixInlineStylesHoistTitle":"Estilos estáticos de polipasto con StyleSheet.create","fixInlineStylesHoistDesc":"Los objetos de estilo en línea asignan nuevas referencias de memoria en cada pasada de renderizado, lo que provoca una sobrecarga de conciliación de Yoga.","beforeInlineStyles":"// ❌ Antes (<{{comp}} /> asigna objetos en línea en cada cuadro): <View style={{ flex: 1, padding: 16, backgroundColor: '#ffffff' }} />","afterInlineStyles":"// ✅ Después (referencia de hoja de estilo elevada): const estilos = StyleSheet.create({ contenedor: { flex: 1, padding: 16, backgroundColor: '#ffffff' } }); <Ver estilo={styles.container} />","transitionEventLabel":"Transición de pantalla: {{screen}}","transitionEventDetail":"La transición se completó en {{duration}}ms (TTI: {{tti}}ms).","transitionEventAdvice":"La interacción se completó dentro del presupuesto objetivo de 60 FPS.","heavyTaskEventLabel":"Tarea sincrónica pesada: {{taskName}}","heavyTaskEventDetail":"El hilo JS se bloqueó durante {{duration}}ms durante la ejecución de la tarea.","heavyTaskEventAdvice":"Considere la posibilidad de descargarlo a un trabajador web, InteractionManager o realizar lotes en partes.","asyncOpEventLabel":"Operación asincrónica lenta: {{opName}}","asyncOpEventDetail":"La tarea asincrónica tardó {{duration}}ms en resolverse.","renderLoopWarningLabel":"Pico rápido de renderizado en <{{comp}} />","renderLoopWarningDetail":"El componente se volvió a renderizar {{count}} veces en 500 ms. Potencial bucle infinito o dependencias inestables.","renderLoopWarningAdvice":"Verifique las matrices de dependencia useEffect / useCallback para referencias de funciones o objetos inestables.","event1Label":"Pico del hilo principal durante la navegación","event1Detail":"La transición de pantalla provocó una gran conciliación del diseño y montajes simultáneos de componentes.","event1Advice":"Posponga ganchos fuera de pantalla no críticos con InteractionManager.runAfterInteractions para preservar 60 FPS.","event2Label":"Pase de renderizado de virtualización FlatList","event2Detail":"FlatList representó 25 elementos simultáneamente en el cambio de orientación sin componente de fila memorizado.","event2Advice":"Implemente getItemLayout y React.memo(LogCard) para omitir pases de diferenciación redundantes.","event3Label":"Transición deslizable modal nativa","event3Detail":"La transformación animada del controlador nativo acelerada por hardware se ejecuta sin problemas a 60 FPS sostenidos.","event3Advice":"El uso de NativeDriver: true evita con éxito el bloqueo de subprocesos JS durante las animaciones.","event4Label":"Recolección de basura generacional de Hermes","event4Detail":"El ciclo de GC generacional menor rescató objetos de montón efímeros de 4,2 MB con una pausa de hilo de menos de un milisegundo.","event4Advice":"El recolector de basura generacional de Hermes funciona dentro de límites óptimos inferiores a 5 ms.","gcCycleLabel":"Ciclo de recolección de basura manual","gcCycleDetail":"~{{amount}} MB recuperados de objetos de montón sin referencia y vivero de memoria compactada.","gcCycleAdvice":"Uso del montón optimizado. Guardería generacional despejada.","liveFpsDropLabel":"Caída de la velocidad de cuadros en vivo ({{fps}} FPS)","liveFpsDropDetail":"La duración del marco del hilo principal se extendió a {{duration}}ms durante la actualización de la vista.","liveFpsDropAdvice":"Ejecución intensa de JavaScript durante la presentación de visualización retrasada del paso de fotogramas.","event5Label":"Deserialización de carga útil JSON grande","event5Detail":"Gastos generales de análisis de respuesta API de 50 elementos en el adaptador de red (cadena sin formato JSON de 185 KB).","event5Advice":"Considere paginar cargas útiles de API o transmitir respuestas si el tamaño de la carga supera los 250 KB.","event6Label":"Decodificación y rasterización de mapas de bits de imágenes","event6Detail":"Decodificación de ráster Retina para banner_dark.png (asignación de búfer de ráster de 1200 × 630 px).","event6Advice":"Reduzca las dimensiones de los activos o conviértalos a WebP para reducir la latencia de decodificación en aproximadamente un 65 %.","event7Label":"Invocación nativa de TurboModule JSI","event7Detail":"Transacción de preferencias de AsyncStorage/MMKV leída en 32 claves de configuración.","event7Advice":"Los enlaces directos de C++ JSI Turbomodule evitan por completo la sobrecarga de serialización del puente JSON heredado.","event8Label":"Diferenciación del árbol de estado de acción de Redux","event8Detail":"El pase de envío de Redux evaluó 6 sectores reductores y emitió una notificación de estado en 4,8 ms.","event8Advice":"Se conserva la inmutabilidad del árbol de estado. Los selectores memorizados impidieron renderizaciones de componentes redundantes.","event9Label":"Latencia de eventos de tocar para renderizar","event9Detail":"El respondedor de gestos envió un evento de toque al botón TabBar con una respuesta inmediata de 60 FPS.","event9Advice":"La latencia del respondedor táctil está dentro del presupuesto de fotograma estándar de 16,67 ms.","event10Label":"Pase de diseño de C++ Yoga Flexbox","event10Detail":"El recálculo del diseño de la tarjeta de varias pestañas de la interfaz de usuario del inspector y las métricas de fuentes pasan en el motor C++ Yoga.","event10Advice":"Las restricciones de diseño de Flexbox se almacenan en caché y se calculan de manera eficiente sin penalizaciones por reflujo.","catJanky":"Janky","hermesAot":"Hermes (AOT)","v8Jit":"V8 (JIT)"},"bundle":{"heroTitle":"Arquitectura de paquetes y activos","heroSubtitle":"Desglose del tamaño en tiempo real de todos los activos, códigos y dependencias","heroSubtitleLive":"Análisis en vivo de {{scriptUrl}}","liveAnalysisUnavailable":"Análisis de paquetes en vivo no disponible","liveAnalysisUnavailableSub":"No se pudo conectar con el servidor de desarrollo de Metro, por lo que los valores son estimaciones. Asegúrese de que la aplicación se ejecute en desarrollo a través de `npx react-native start` y que el Inspector pueda llegar a su puerto Metro (8081, 8082, ...).","bundleOverviewJson":"Descripción general del paquete JSON","devBundleSize":"TAMAÑO DEL PAQUETE DE DESARROLLO","devBundleHint":"{{kb}} KB • {{modules}} módulos","trackedFilesHint":"{{count}} Archivos rastreados","imagesMedia":"IMÁGENES Y MEDIOS","pctOfTrackedAssets":"{{pct}}% de los activos rastreados","tsJsSource":"FUENTE TS/JS","jsEngine":"MOTOR JS","bytecodeAot":"Código de bytes AOT","standard":"Estándar","splitUpTitle":"División del paquete de desarrollo","splitUpSub":"{{mb}} paquete MB JS medido • {{files}} archivos • {{packages}} paquetes","splitUpJson":"JSON dividido","splitAppSource":"Código fuente de la aplicación","splitNodeModules":"node_modules Dependencias","splitAssetsMedia":"Activos y medios","splitMetroOverhead":"Gastos generales de desarrollo de Metro","productionFootprint":"HUELLA DE PRODUCCIÓN","productionDownload":"Descargar: iOS ~{{ios}} MB • AAB ~{{aab}} MB • APK ~{{apk}} MB","treemapTitle":"Mapa de árbol de proporción de tipos de archivos y activos","treemapJson":"Mapa de árbol de proporciones JSON","legendImages":"Imágenes:","legendJs":"Bibliotecas JS:","legendFonts":"Fuentes:","categoryBreakdown":"Desglose de categorías","categoriesJson":"Categorías Desglose JSON","catImagesTitle":"Imágenes y recursos multimedia","catImagesDesc":"Recursos PNG, WebP, SVG y JPG en paquete","catJsTitle":"Módulos de nodo compilados y JS","catJsDesc":"Dependencias de terceros y puentes nativos","catFontsTitle":"Fuentes personalizadas y glifos vectoriales","catFontsDesc":"Recursos de fuentes en paquete","catTsTitle":"Componentes TypeScript y JSX","catTsDesc":"Componentes de la pantalla de la aplicación, enlaces y lógica empresarial","catJsonTitle":"Datos JSON y localizaciones","catJsonDesc":"Diccionarios de traducción i18n y configuraciones estáticas","totalBundleAssets":"TOTAL DE ARCHIVOS DE PROYECTO HOST","totalFormula":"Suma de archivos fuente del host: {{images}} KB + {{js}} KB + {{fonts}} KB + {{ts}} KB + {{json}} KB = {{total}} KB ({{count}} elementos)","prodIosApp":"Aplicación iOS (.ipa)","prodAndroidApk":"APK universal (.apk)","prodHeroTitleIos":"Huella binaria de producción de iOS","prodHeroTitleAab":"Paquete de aplicaciones de Google Play (.aab)","prodHeroTitleApk":"APK independiente universal (.apk)","prodHeroSubIos":"Estimaciones de instalación de App Store y descargas móviles inalámbricas","prodHeroSubAab":"Arquitectura de APK dividida de entrega dinámica optimizada por dispositivo","prodHeroSubApk":"Archivo de instalación universal Multi-ABI para descarga y distribución directa","prodInstallSize":"TAMAÑO DE INSTALACIÓN","prodInstallHint":"Huella sin comprimir en el dispositivo","prodDownloadSize":"DESCARGAR TAMAÑO","prodDownloadHint":"Almacenar carga útil de transferencia de red","prodCompression":"COMPRESIÓN","prodCompressionHint":"Código de bytes y proporción de activos","prodFormatArch":"ARQUITECTURA DE FORMATO","prodFormatHintIos":"Tiempo de ejecución de Apple ARM64","prodFormatHintAab":"Entrega dinámica de Google Play","prodFormatHintApk":"Paquete universal de carga lateral","prodArchTitle":"Arquitectura de componentes binarios","prodArchSub":"Bibliotecas nativas compiladas, códigos de bytes en tiempo de ejecución, activos y bloques de firmas","prodTotalIos":"TOTAL APLICACIÓN IOS BINARIO","prodTotalAab":"PAQUETE TOTAL DE ANDROID AAB","prodTotalFormula":"Desde {{devKb}} KB (~{{devMb}} MB • {{count}} activos totales) paquete fuente de desarrollo → {{installMb}} MB binario nativo optimizado ({{pct}}% de código de bytes/compresión de activos).","tabOverview":"Descripción general","tabProduction":"Producción ({{count}})","tabFiles":"Archivos ({{count}})","tabPackages":"Paquetes ({{count}})","tabMedia":"Medios ({{count}})","tabOptimizer":"Optimizador","analyzingTitle":"Analizando el paquete de aplicaciones host de Metro...","analyzingHint":"Obteniendo paquete y extrayendo módulos reales","searchFilesPlaceholder":"Buscar por nombre de archivo (.png, .tsx, .ttf, ruta)...","filteredFilesJson":"Archivos filtrados JSON","catAll":"Todos los archivos","catUnused":"No consumido (muerto)","catConsumed":"En uso/activo","catImages":"Imágenes y medios","catTypescript":"Mecanografiado/TSX","catJavascript":"JS y módulos de nodo","catFonts":"Fuentes y glifos","catJson":"JSON y datos","treeView":"Vista de árbol","flatList":"Lista plana","expand":"Expandir","collapse":"Colapso","showingFilesOf":"Mostrando {{shown}} de {{total}} archivos","filesOf":"{{count}} de {{total}} Archivos","notConsumed":"No consumido","consumed":"consumido","copyFileInfo":"Copiar {{name}} información","fileDetailsJson":"Detalles del archivo JSON","file":"archivo","files":"archivos","mbValue":"~{{size}}MB","searchPackagesPlaceholder":"Paquete de búsqueda (react-native, axios, navegación)...","dependenciesJson":"Dependencias JSON","showingDependencies":"Mostrando {{count}} dependencias","bundled":"incluido","deprecated":"DESPRECADO","updateAvailable":"Actualización: v{{version}}","upToDate":"actualizado","bundledBadge":"incluido","packageDetailsJson":"Detalles del paquete JSON","direct":"directo","transitive":"transitivo","minified":"~{{size}} KB minimizados","npmLink":"mpn ↗","dependenciesCount":"{{count}} Dependencias","mediaAuditorTitle":"Auditor de Compresión de Medios","mediaAssetsJson":"Recursos de medios JSON","mediaAuditorPrefix":"Imágenes y fuentes constituyen","mediaAuditorMid":"de activos totales (~{{kb}} KB). La conversión de PNG a WebP y el subconjunto de fuentes pueden reducir el tamaño hasta","mediaAuditorSuffix":"KB.","mediaAssetsList":"Recursos multimedia y fuentes ({{count}} elementos)","mediaItemJson":"Elemento multimedia JSON","mediaAndFonts":"{{count}} Medios y fuentes","optimizerTitle":"Lista de verificación de optimización del paquete React Native","optimizationChecklist":"Lista de verificación de optimización","optTip1Title":"Convierta archivos PNG pesados a WebP/SVG","optTip1Desc":"Las imágenes representan >40% del tamaño final de descarga de la aplicación. La conversión de archivos PNG rasterizados 2x/3x a WebP ahorra entre un 60% y un 70% de tamaño sin pérdida visible de fidelidad.","optTip2Title":"Habilitar el motor de código de bytes de Hermes","optTip2DescActive":"¡Hermes está activo! JavaScript se compila en un código de bytes optimizado con antelación.","optTip2DescInactive":"Hermes está discapacitado. Habilite Hermes en la configuración de su aplicación para obtener una carga útil aproximadamente un 40 % más pequeña y un inicio instantáneo de TTI.","optTip3Title":"Subconjunto de fuentes y poda de peso","optTip3Desc":"Incluya solo los pesos de fuente que utiliza activamente (por ejemplo, Regular y Negrita). Elimine los rangos de glifos no utilizados para ahorrar más de 100 KB por archivo de fuente.","optTip4Title":"Importaciones de ruta selectivas (sacudida de árboles)","optTip4Desc":"Importe desde subrutas específicas (por ejemplo, lodash/get o conjuntos de iconos vectoriales específicos) en lugar de importar grandes paquetes monolíticos.","optTip5Title":"Carga diferida de pantalla","optTip5Desc":"Cargue de forma diferida pantallas secundarias y hojas modales pesadas mediante importaciones dinámicas e InteractionManager para reducir la evaluación inicial del paquete.","highImpact":"Alto Impacto","mediumImpact":"Impacto medio","bestPractice":"Mejores prácticas","actionRequired":"Acción requerida","active":"Activo","tipDetails":"Detalles de la propina","iosComp1Name":"Marcos y pods dinámicos","iosComp1Desc":"Marcos de trabajo nativos de React, Hermes y {{count}}.","iosComp1Advice":"Asegúrese de eliminar el código muerto (STRIP_INSTALLED_PRODUCT = YES) en el modo de lanzamiento.","iosComp2Name":"Ejecutable Mach-O (ARM64)","iosComp2Desc":"La aplicación host compiló puentes nativos Swift/Objective-C y C++.","iosComp2Advice":"Habilite LTO monolítico (optimización del tiempo de enlace) en el esquema Xcode.","iosComp3Name":"Catálogo de activos (Assets.car)","iosComp3Desc":"AppIcons, pantallas de presentación, glifos vectoriales y fuentes empaquetadas.","iosComp3Advice":"Compile imágenes en Xcode Asset Catalog para la reducción automática de aplicaciones.","iosComp4Name":"Código de bytes de Hermes (main.jsbundle)","iosComp4Desc":"La aplicación host JavaScript compiló AOT en código de bytes de Hermes (archivos {{count}}).","iosComp4Advice":"El código de bytes AOT se carga con una latencia de compilación de 0 ms al iniciar el dispositivo.","iosComp5Name":"Metadatos y firmas de código","iosComp5Desc":"_CodeSignature, Info.plist y bloque de derechos.","iosComp5Advice":"Firma de aprovisionamiento y firma de código Apple estándar.","andComp1Name":"Bibliotecas nativas de C++ (.so)","andComp1Desc":"Adaptadores nativos libhermes.so, libfbjni.so y {{count}} C++.","andComp1Advice":"Implemente con Android App Bundle (.aab) para entregar APK divididos por ABI.","andComp2Name":"DEX compilado (classes.dex)","andComp2Desc":"Compilé puentes en tiempo de ejecución de Java y Kotlin, AndroidX y React Native.","andComp2Advice":"Habilite la reducción de R8/ProGuard (minifyEnabled true) en build.gradle.","andComp3Name":"Recursos de Android (res/)","andComp3Desc":"Dibujables, XML vectoriales, densidades de mapas mip, recursos.arsc, fuentes.","andComp3Advice":"Utilice WebP y VectorDrawables para evitar la duplicación de activos de densidad múltiple.","andComp4Name":"Código de bytes de Hermes (Android)","andComp4Desc":"JavaScript de la aplicación host compilado en código de bytes de Hermes (archivos {{count}}).","andComp4Advice":"Código de bytes precompilado durante la tarea de gradle ensamblarRelease.","andComp5Name":"Manifiesto y firmas (META-INF)","andComp5Desc":"AndroidManifest.xml, firma de certificados, bloques del esquema de firma APK v2/v3/v4.","andComp5Advice":"Bloqueo de firma y firma oficial de Google Play.","apkComp1Name":"Bibliotecas C++ multi-ABI (.so)","apkComp1Desc":"Bibliotecas universales compartidas de arquitectura múltiple (.so) incluidas para descarga directa.","apkComp1Advice":"Utilice Android App Bundle (.aab) para Google Play para reducir el tamaño de la instalación en un 60 %.","apkComp2Name":"Código de bytes DEX compilado (classes.dex)","apkComp2Desc":"Tiempo de ejecución compilado de Java y Kotlin, bibliotecas de AndroidX y módulos puente nativos.","apkComp2Advice":"Habilite la reducción de R8/ProGuard (minifyEnabled verdadero) y reducirResources verdadero.","apkComp3Name":"Recursos y activos de Android (res/)","apkComp3Desc":"Dibujables, XML vectoriales, densidades de mapas mip, recursos.arsc, fuentes.","apkComp3Advice":"Utilice WebP y VectorDrawables para evitar la duplicación de activos de densidad múltiple.","apkComp4Name":"Paquete de código de bytes de Hermes (Android)","apkComp4Desc":"JavaScript de la aplicación host compilado en código de bytes de Hermes (archivos {{count}}).","apkComp4Advice":"Código de bytes precompilado durante la tarea de gradle ensamblarRelease.","apkComp5Name":"Manifiesto y firmas (META-INF)","apkComp5Desc":"AndroidManifest.xml, firma de certificados, esquema de firma de APK JAR y v2/v3/v4.","apkComp5Advice":"Bloque de firma de instalación directa y carga local empresarial.","splitSize":"{{kb}} KB • {{mb}} MB","productionValue":"iOS {{ios}} MB • Android {{android}} MB","treemapSub":"Total ~{{mb}} MB","legendTs":"TS/TSX:","legendJson":"JSON:","totalBundleValue":"{{kb}} KB (~{{mb}} MB)","prodAndroidAab":"Android AAB (.aab)","prodTotalApk":"TOTAL UNIVERSAL APK","fileSizeKb":"{{size}} KB","fileSizeMb":"{{size}} MB","kbMbValue":"{{kb}} KB ({{mb}} MB)","legendValue":"{{kb}} KB ({{pct}}%)","mediaSavings":"{{size}} KB","versionPrefix":"v{{version}}"},"errors":{"title":"algo salió mal","message":"Se produjo un error inesperado.","retry":"Inténtalo de nuevo","reset":"Reiniciar","close":"Cerrar","errorReport":"Informe de errores","modalTitle":"El inspector se estrelló","modalMessage":"El inspector cometió un error inesperado. Puedes restablecerlo a continuación.","inlineTitle":"error del inspector","inlineMessage":"Se produjo un error inesperado dentro del inspector.","networkError":"Error en la solicitud de red","crashIntercepted":"ACCIDENTE INTERCEPTADO","protected":"PROTEGIDO","rootCauseTitle":"Diagnóstico de causa raíz","rootCauseSubtitle":"El inspector detectó este error de tiempo de ejecución para evitar la finalización de la aplicación","exactLocation":"UBICACIÓN EXACTA DE LA FUENTE","file":"Archivo:","lineCol":"Línea/Col:","lineColVal":"Línea {{line}}, Col {{col}}","function":"Función:","callStack":"MARCOS DE PILA DE LLAMADA","framesCount":"{{count}} cuadros","tryAgainRecover":"Inténtalo de nuevo/Recuperar","copyDiagnostics":"Copiar diagnóstico","appTag":"APP","copy":"Copiar"},"jsonViewer":{"pretty":"Estructurado","raw":"Crudo","table":"Tabla","emptyObject":"Objeto vacío","emptyPayload":"Carga útil vacía","emptyTable":"Objeto vacío","fold":"Plegar","expand":"Expandir","min":"Min","indent":"Indentar","wrap":"Ajustar","copied":"¡Copiado!","copy":"Copiar JSON","key":"Clave","value":"Valor","lines":"líneas","line":"línea"},"codeSnippet":{"copy":"Copiar","copied":"¡Copiado!","matchCount":"{{count}} coincide","matchCount_plural":"{{count}} coincidencias","noMatches":"No hay coincidencias","searchPlaceholder":"Buscar...","prevMatch":"Partido anterior","nextMatch":"Próximo partido","clearSearch":"Borrar búsqueda"},"diffViewer":{"added":"añadido","removed":"eliminado","changed":"cambiado","noDiff":"Sin diferencias","emptyTitle":"No se encontraron diferencias","emptySubtitle":"Las dos cargas útiles son idénticas."},"logCard":{"seeMore":"Mostrar más","seeLess":"Mostrar menos","copy":"Copiar","copied":"¡Copiado!"},"emptyState":{"title":"Nada aquí todavía","subtitle":"Los datos aparecerán aquí a medida que utilice la aplicación.","reload":"recargar"},"errorBoundary":{"title":"algo salió mal","message":"Se produjo un error inesperado.","retry":"Inténtalo de nuevo","reset":"Reiniciar","close":"Cerrar"},"crash":{"title":"Choque","searchPlaceholder":"Error de búsqueda, mensaje, pila...","searchDetailPlaceholder":"Buscar en trace o JSON...","statCrashes":"Accidentes","statFatal":"fatal","statJsErrors":"Errores de JS","statPromises":"Promesas","statRender":"renderizar","statNative":"Nativo","filterAll":"All","filterFatal":"fatal","filterJsError":"Error JS","filterPromise":"Promesa","filterRender":"renderizar","filterNative":"Nativo","handledBadge":"MANEJADO","fatalCrash":"ACCIDENTE FATAL","handledException":"EXCEPCIÓN MANEJADA","unknownException":"Excepción desconocida","report":"Informe","inspect":"inspeccionar","copyReport":"Copiar informe","copied":"copiado","clearTitle":"Borrar historial de fallos","clearMessage":"¿Está seguro de que desea borrar todos los registros de accidentes interceptados?","clearCancel":"Cancelar","clearConfirm":"Borrar todo","emptyTitle":"Cero accidentes detectados","emptySubtitle":"La protección global contra accidentes está activa. Todas las excepciones nativas y de JavaScript son interceptadas y protegidas.","emptySearchSubtitle":"Ninguna entrada de bloqueo coincidió con su consulta de búsqueda.","tabStack":"Pila ({{count}})","tabDiagnostics":"Diagnóstico","tabTrail":"Ruta ({{count}})","tabRawJson":"JSON sin formato","appFrames":"Marcos de aplicaciones ({{count}})","allFrames":"Todos los fotogramas ({{count}})","frameApp":"APP","frameLib":"LIB","anonymous":"<anónimo>","noStackTrace":"No se ha capturado ningún seguimiento de pila para este evento.","deviceEnvironment":"Dispositivo y entorno","platform":"Plataforma","osVersion":"Versión del sistema operativo","reactNative":"Reaccionar nativo","jsEngine":"Motor JS","hermesEngine":"Motor Hermes","jsc":"JSC","architecture":"Arquitectura","fabricNewArch":"Tela (Nuevo Arco)","paperLegacy":"Papel (heredado)","appState":"Estado de la aplicación","jsHeapMemory":"Memoria de montón JS","usedHeap":"Montón usado","totalHeap":"montón total","noBreadcrumbs":"No se registraron eventos de ruta de navegación antes de este bloqueo.","simNativeMessage":"Excepción fatal nativa simulada","simPromiseMessage":"Rechazo de promesa no controlado simulado","simRenderMessage":"Error de representación del componente React simulado","simJsMessage":"Excepción de JavaScript simulada","reportTitle":"INFORME DE DIAGNÓSTICO DE ACCIDENTE","reportErrorName":"Nombre del error:","reportMessage":"Mensaje:","reportType":"Tipo:","reportFatalYes":"SÍ (Fatal)","reportFatalNo":"NO (Atrapado/Manejado)","reportFatal":"fatal:","reportTimestamp":"Marca de tiempo:","reportUptime":"Tiempo de actividad de la aplicación:","reportUptimeValue":"{{seconds}} segundos","reportPlatform":"Plataforma:","reportReactNative":"Reaccionar nativo:","reportEnabled":"Habilitado","reportDisabled":"Discapacitado","reportArchitecture":"Arquitectura:","reportFabricNew":"Tela (nueva)","reportPaperLegacy":"Papel (heredado)","reportScreenSize":"Tamaño de pantalla:","reportAppState":"Estado de la aplicación:","reportJsMemory":"Memoria JS:","reportStackTrace":"SEGUIMIENTO DE PILA:","reportNoStackTrace":"No hay seguimiento de pila disponible","reportComponentHierarchy":"JERARQUÍA DE COMPONENTES:","reportRecentBreadcrumbs":"MIGAS DE PAN RECIENTES:","mdReportTitle":"🚨 Informe de fallo: {{name}}","mdStackTrace":"📦 Seguimiento de pila","mdComponentHierarchy":"🌲 Jerarquía de componentes","mdRecentBreadcrumbs":"👣 Migas de pan recientes","mdSeverityHandled":"MANEJADO","breadcrumbNavigation":"Navegó de \"{{from}}\" a \"{{to}}\"","breadcrumbAction":"Acción: {{actionType}}","unknown":"Desconocido","runtimeException":"Excepción de tiempo de ejecución","logFatalCrash":"Accidente fatal","logUnhandledError":"Error no controlado","errorNameFatal":"Error fatal","errorNameUnhandled":"Excepción no controlada","nativeCrashTitle":"Accidente nativo","nativeUncaughtException":"Excepción nativa no detectada","nativeException":"Excepción nativa","unhandledPromiseRejection":"Rechazo de promesa no controlado","filterTitle":"Filtros de fallos","filterSubtitle":"Diagnósticos e informes","filterReset":"Restablecer todo","filterTypeSection":"TIPO DE ACCIDENTE","filterTypeAll":"Todos los tipos","filterTimeSection":"HORIZONTE DEL TIEMPO","filterTimeAll":"Todo el tiempo","filterTime15m":"Últimos 15 minutos","filterTime1h":"Última 1 hora","filterTime24h":"Últimas 24 horas","filterTime7d":"últimos 7 días","filterPlatformSection":"PLATAFORMA","filterPlatformAll":"Todas las plataformas","filterPlatformIos":"iOS","filterPlatformAndroid":"androide","filterEngineSection":"MOTOR JS","filterEngineAll":"Todos los motores","filterSortSection":"ORDEN DE CLASIFICACIÓN","filterSortNewest":"Más reciente primero (predeterminado)","filterSortOldest":"El más viejo primero","filterDiscard":"Descartar","filterApply":"Aplicar ({{count}} fallas)","frameCopy":"Copiar","frameCopied":"copiado","componentHierarchy":"Jerarquía de componentes","fatalBadge":"FATAL","reportHermes":"Hermes:","mdSeverityFatal":"FATAL","filterEngineHermes":"Hermes","breadcrumbTrail":"RASTRO DE ACTIVIDAD Y REGISTRO DE EVENTOS","deviceDiagnostics":"DIAGNÓSTICO DEL DISPOSITIVO AL MOMENTO DEL ERROR","openInInspector":"Abrir en el inspector"},"mediaGallery":{"all":"Todos ({{count}})","photos":"Fotos","videos":"Vídeos","gifs":"GIF","purge":"Purgar ({{size}})","purgeTitle":"Purgar todos los medios","purgeMessage":"Esto eliminará permanentemente todas las {{count}} capturas de pantalla, videos y GIF capturados ({{size}}). ¿Continuar?","noMediaTitle":"Sin medios capturados","noMediaDesc":"Utilice el botón Grabar foto o vídeo en la barra de herramientas para capturar capturas de pantalla de toda la aplicación, grabaciones de pantalla o GIF.","deleted":"Elemento multimedia eliminado","allPurged":"Todos los medios capturados eliminados","converting":"Convirtiendo...","convertToGif":"Convertir a GIF","playVideo":"Reproducir vídeo","playError":"No se puede reproducir el vídeo","convertedSuccess":"¡Convertido a GIF animado con éxito!","convertFailed":"No se pudo convertir a GIF","share":"Compartir","copyUri":"Copiar URI","uriCopied":"URI del archivo copiado al portapapeles","delete":"Eliminar","deleteSelected":"Eliminar ({{count}})","deleteSelectedTitle":"Eliminar seleccionado","deleteSelectedMessage":"¿Estás seguro de que deseas eliminar {{count}} elementos multimedia seleccionados?","deletedCount":"{{count}} elementos multimedia eliminados","deleteTitle":"Eliminar medios","deleteMessage":"¿Estás seguro de que deseas eliminar {{filename}}?","shareUnavailable":"Compartir no está disponible en este dispositivo","showingResults":"Mostrando resultados de {{count}}","showingFilteredResults":"Mostrando {{count}} de {{total}} resultados","selectedOfResults":"{{selected}} seleccionado de {{total}} resultados","minimize":"minimizar","expand":"Expandir pantalla completa","collapse":"Salir de pantalla completa","speed":"Velocidad","loop":"Bucle","pause":"Pausa","play":"Jugar","hideGridlines":"Ocultar cuadrícula de Instagram (3×3)","showGridlines":"Mostrar cuadrícula de Instagram (3×3)","hideWatermark":"Ocultar marca de agua QA","showWatermark":"Mostrar marca de agua QA","exportGif":"Exportar como GIF animado","snapshotFrame":"Capturar fotograma (PNG)","tapToPlaceStep":"Toca o arrastra en la imagen para colocar el paso","resetAdjustments":"Ajustes restablecidos","tagPlaced":"Etiqueta colocada","tapToAddText":"Toca cualquier lugar de la imagen para agregar texto","textAdded":"Texto superpuesto agregado","redone":"Rehecho","undone":"Deshecho","videoSaved":"Video editado guardado en la galería","savedSuccess":"Guardado con éxito","saveFailed":"Error al guardar el medio","snapshotSaved":"Fotograma guardado en la galería","snapshotFailed":"Error al capturar el fotograma","shareSuccess":"Medio compartido con éxito","cropFailed":"Error al recortar el medio","croppedSuccess":"Medio recortado con éxito","resizeFailed":"Error al redimensionar","resizedSuccess":"Medio redimensionado con éxito","trimFailed":"Error al recortar el video","trimmedSuccess":"Video recortado con éxito","muteFailed":"Error al actualizar audio del video","mutedSuccess":"Audio modificado con éxito","resetSuccess":"Imagen restablecida al original","openCameraRoll":"Abrir carrete","importPhotos":"Importar fotos de la biblioteca","importVideos":"Importar videos de la biblioteca","importedPhoto":"Foto importada del carrete","importedVideo":"Video importado del carrete","importFailed":"Error al importar medios","preview":"Vista previa"},"socket":{"messages":"Mensajes","overview":"Descripción general","params":"parámetros","rawAndCode":"Sin formato y código","totalFrames":"MARCOS TOTALES","sentRecv":"ENVIADO / RECV","dataTransferred":"DATOS TRANSFERIDOS","searchFramesPlaceholder":"Buscar cargas útiles de fotogramas o nombres de eventos...","sent":"Enviado","recv":"recv","emptyFrames":"No se capturaron fotogramas para esta conexión","searchSocketsPlaceholder":"Buscar URL o mensajes de WebSocket...","noSockets":"Sin conexiones WebSocket","noSocketsDesc":"Las conexiones WebSocket, Socket.IO y WSS capturadas aparecerán aquí en tiempo real.","noMatching":"No hay WebSockets coincidentes","adjustSearchFilter":"Intente ajustar su consulta de búsqueda o filtrar chips.","simulateTraffic":"Simular el tráfico de WebSocket de demostración","clearTitle":"Borrar todos los registros de WebSocket","clearMessage":"¿Está seguro de que desea eliminar todas las sesiones de WebSocket grabadas?","cleared":"Todos los registros de WebSocket borrados","deleteSelectedTitle":"Eliminar WebSockets seleccionados","deleteSelectedMsg":"¿Está seguro de que desea eliminar {{count}} registros de WebSocket seleccionados?","filterTitle":"Filtrar conexiones WebSocket","showingConnections":"Mostrando {{count}} conexiones","showingFilteredConnections":"Mostrando {{filtered}} de {{total}} conexiones","deletedCount":"{{count}} registros de WebSocket eliminados","copiedUrls":"{{count}} URLs copiadas","webSocketTraffic":"Tráfico WebSocket ({{count}} conexiones)","title":"WebSocket","connectionDetails":"DETALLES DE LA CONEXIÓN","url":"URL","clientEngine":"Motor cliente","readyState":"Estado","connectedAt":"Conectado a las","closedAt":"Cerrado a las","closeCodeReason":"Código y motivo de cierre","subprotocols":"Subprotocolos","callerStack":"Pila de llamada","error":"Error","handshakeHeaders":"Encabezados del Handshake","handshakeParams":"PARÁMETROS DE CONSULTA DEL HANDSHAKE","noQueryParams":"No se pasaron parámetros de consulta en la URL de conexión","jsClientCode":"CÓDIGO CLIENTE JAVASCRIPT","terminalWscat":"COMANDO DE TERMINAL WSCAT","rawDump":"VOLCADO JSON DE CONEXIÓN BRUTA"},"push":{"title":"Notificaciones push","preview":"Vista previa","payload":"Carga útil personalizada","deliveryMetadata":"Metadatos de entrega y mensaje","rawPayload":"Carga útil sin procesar","link":"Enlace","appNotification":"Notificación de aplicación","now":"ahora","domainFields":"Campos específicos del dominio","searchPlaceholder":"Buscar notificaciones push...","noNotifications":"Sin notificaciones automáticas","noNotificationsDesc":"Los eventos push capturados de Firebase FCM, Apple APN, OneSignal y personalizados aparecerán aquí en tiempo real.","filterTitle":"Filtrar notificaciones push","clearTitle":"Borrar historial de push","clearMessage":"¿Está seguro de que desea borrar todos los registros de notificaciones push?","cleared":"Historial de notificaciones push borrado","foreground":"Primer plano","background":"Segundo plano","quit":"Cerrado","messageId":"ID del mensaje:","sourceDomain":"Origen / Dominio:","appState":"Estado de la app:","actionType":"Tipo de acción:","timestamp":"Marca de tiempo:","channelId":"ID del canal:","sound":"Sonido:","badgeCount":"Contador de insignias:","collapseKey":"Clave de colapso:","noCustomData":"No se encontraron datos clave-valor personalizados en la carga útil","noMatching":"Sin notificaciones push coincidentes","adjustSearchFilter":"Intenta ajustar tu búsqueda o los filtros."},"debugging":{"title":"Depuración y herramientas","buildSuccess":"¡Compilación de APK generada con éxito!","buildFailed":"Error de compilación: {{error}}","buildCancelled":"Construcción cancelada por el usuario"},"about":{"title":"Acerca de y especificaciones","subtitle":"Información del paquete, especificaciones de ejecución y diagnóstico","heroTitle":"Inspector integrado","heroDescription":"La herramienta todo-en-uno de depuración, registro y QA en el dispositivo para aplicaciones React Native y Expo.","upToDate":"Actualizado","versionAvailable":"v{{version}} Disponible","copyUpgradeCommand":"Copiar comando de actualización (v{{version}})","copiedUpgradeCommand":"¡Comando npm copiado!","appInformation":"INFORMACIÓN DE LA APP","appName":"Nombre de la app","packageIdentifier":"Identificador del paquete","appVersion":"Versión de la app","environment":"Entorno","developmentDebug":"Desarrollo (Depuración)","productionRelease":"Producción (Release)","platform":"Plataforma","googleAndroid":"android","features":"QUÉ HACE EL INSPECTOR","featureNetwork":"Monitor de tráfico de red","featureNetworkDesc":"Inspecciona peticiones HTTP y HTTPS, respuestas, encabezados y latencia del servidor.","featureConsole":"Registro de consola","featureConsoleDesc":"Ve registros de consola, advertencias y errores en tiempo real con trazas de pila formateadas.","featureAnalytics":"Telemetría analítica","featureAnalyticsDesc":"Rastrea eventos de Firebase y analíticos personalizados en vivo en el dispositivo.","featureRedux":"Estado y acciones de Redux","featureReduxDesc":"Inspecciona acciones despachadas, cargas útiles y diferencias del árbol de estado.","featureCapture":"Captura de pantalla y video","featureCaptureDesc":"Toma capturas de pantalla y graba sesiones de prueba para compartir con equipos de QA.","featureCrash":"Captura de fallos y diagnóstico","featureCrashDesc":"Protege contra fallos nativos y proporciona métricas de salud del dispositivo.","githubSub":"Estrella y código fuente","npmRegistry":"Registro NPM","npmRegistrySub":"Actualizaciones del paquete","documentation":"Documentación","documentationSub":"Guía de integración","reportIssue":"Reportar problema","reportIssueSub":"Ayuda y soporte","releaseNotes":"Notas de la versión","releaseNotesSub":"Novedades","copyInstall":"Copiar instalación","copyInstallSub":"comando npm / yarn","copiedInstallCommand":"¡Comando de instalación copiado!","footerLicense":"React Native In-App Inspector · Licencia MIT","footerTagline":"Herramienta de depuración sin configuración","appleIos":"Apple iOS","github":"GitHub"},"telemetry":{"fps":"FPS","liveTraffic":"RED EN VIVO","ram":"RAM","active":"ACTIVO","networkSpeed":"Velocidad de red","fpsLive":"FPS en vivo","ramUsage":"Uso de RAM","battery":"Batería","livePerformanceStrip":"Franja de rendimiento en vivo"},"media":{"animatedGif":"GIF ANIMADO","cropDefect":"Recortar defecto","rotate90":"Girar 90°","redactPii":"Ocultar PII","trim5s":"Recortar 5s","muteAudio":"Silenciar audio","toGif":"A GIF","play":"Reproducir","trim":"Recortar","audio":"Audio","speed":"Velocidad","snapshot":"Captura"},"language":{"confirmTitle":"¿Cambiar idioma?","confirmMessage":"¿Deseas cambiar el idioma del inspector a {{newLang}}?","confirmApply":"Aplicar idioma","current":"Actual","new":"Nuevo"},"support":{"title":"Soporte y Comunidad","subtitle":"React Native In-App Inspector","heroDescription":"Creado con pasión para ofrecer una suite completa de depuración en el dispositivo para equipos móviles de todo el mundo. Tus patrocinios, estrellas y comentarios impulsan mejoras continuas y lanzamientos rápidos.","sponsor":"Patrocinar en GitHub","sponsorBadge":"PATROCINAR","sponsorDesc":"Apoya el mantenimiento continuo, nuevas funciones y mejoras.","sponsorBtn":"Convertirse en patrocinador","copiedSponsor":"¡Enlace de GitHub Sponsors copiado!","star":"Destacar en GitHub","starDesc":"Destaca nuestro repositorio para que más desarrolladores descubran esta herramienta.","issues":"Reportar problema / Sugerencia","issuesDesc":"¿Encontraste un error o tienes una idea? Abre un issue en GitHub.","docs":"Documentación oficial","docsDesc":"Guías de funciones interactivas, sintaxis de búsqueda y configuración.","contact":"Contactar al autor","contactDesc":"vengatmacuser@gmail.com • Soporte directo y consultas empresariales.","waysToSupport":"FORMAS DE CONTRIBUIR Y APOYAR","npmRegistry":"Registro de paquetes NPM","npmRegistryDesc":"Explora notas de versión, tamaños de tarball y estadísticas.","shareTitle":"COMPARTE CON OTROS","shareDesc":"Ayuda a tus compañeros de equipo y especialistas de control de calidad a depurar redes, consola y Redux más rápido.","shareWithTeam":"Compartir con el equipo","copiedRepo":"¡Enlace del repositorio copiado!","copyRepo":"Copiar URL del repo","maintainer":"MANTENEDOR DEL PROYECTO","sendEmail":"Enviar correo","copiedEmail":"¡Dirección de correo copiada!","copyEmail":"Copiar correo","close":"Cerrar"}}
1
+ {"common":{"cancel":"Cancelar","clear":"Limpiar","clearAll":"Limpiar todo","close":"Cerrar","loading":"Cargando...","success":"Éxito","pending":"Pendiente","failed":"Fallido","copy":"Copiar","copied":"¡Copiado!","copyJson":"Copiar JSON","collapseAll":"Contraer todo","expandAll":"Expandir todo","viewOnNpm":"Ver en NPM","later":"Más tarde","source":"ORIGEN","minimize":"Minimizar","tapToExpand":"Toca para expandir","open":"Abrir","share":"Compartir","openInBrowser":"Abrir en navegador","openInBrowserPrompt":"¿Estás seguro de que deseas abrir esta URL en tu navegador externo?","delete":"Eliminar","reset":"Restablecer","save":"Guardar","edit":"Editar","add":"Añadir","search":"Buscar","filter":"Filtrar","sort":"Ordenar","refresh":"Actualizar","retry":"Reintentar","confirm":"Confirmar","yes":"Sí","no":"No","ok":"Aceptar","done":"Hecho","back":"Atrás","next":"Siguiente","show":"Mostrar","hide":"Ocultar","select":"Seleccionar","selectAll":"Seleccionar todo","deselectAll":"Deseleccionar todo","noResults":"No se encontraron resultados","items":"elementos","of":"de","showing":"Mostrando","active":"Activo","inactive":"Inactivo","enabled":"Habilitado","disabled":"Deshabilitado","live":"En vivo","connected":"Conectado","disconnected":"Desconectado","version":"Versión","update":"ACTUALIZAR","unknown":"Desconocido","all":"Todo","dragToHide":"Arrastra aquí para ocultar","releaseToHide":"Suelta para ocultar inspector","expand":"Expandir","undo":"Deshacer","inActiveDevelopment":"En desarrollo activo","inspectorDismissed":"Inspector cerrado","noMatches":"Sin resultados coincidentes","moreFilters":"Más filtros","resetAll":"Restablecer Todo","discard":"Descartar","custom":"Personalizado","clearSearchFilters":"Limpiar Búsqueda y Filtros","clearSearch":"Limpiar Búsqueda","clearAllFilters":"Limpiar Todos los Filtros","more":"más","aboutSpecs":"Acerca de y Especificaciones","aboutSpecsSubtitle":"Info del paquete, especificaciones y diagnóstico","purgeAll":"Purgar Todo","free100":"100% Gratis","endpointUrl":"URL DEL ENDPOINT","logProperties":"Propiedades del Registro","snapshotCurrentFrame":"Capturar Fotograma Actual (PNG)","takeScreenshotAction":"Tomar Captura"},"header":{"updateAvailableTitle":"Actualización disponible","updateAvailableMessage":"react-native-inapp-inspector v{{version}} está disponible en NPM (instalado: v{{installed}}).","clearEverythingTitle":"Borrar todo","clearEverythingMessage":"Esto borra todas las pestañas: API, registros, análisis, línea de tiempo de Redux e historial de fallos. ¿Continuar?","photo":"Foto","record":"Registro","rec":"REC","clear":"Borrar","about":"Acerca de","screenshotCaptured":"📸 Captura de pantalla capturada y guardada","screenshotFailed":"No se pudo realizar la captura de pantalla","screenshotError":"Error al tomar captura de pantalla","recordingStarted":"🔴 Comenzó la grabación de video","recordingSaved":"🎥 Grabación guardada ({{duration}}s)","recordingError":"Error de grabación","recordingStartFailed":"No se pudo iniciar la grabación","paramCount":"{{count}} parámetro","paramCount_plural":"{{count}} parámetros","sourceFirebase":"FB","sourceManual":"MAN","firebase":"base de fuego","manual":"manuales","aboutSpecs":"Acerca de y especificaciones","live":"En vivo","keys":"{{count}} claves","frames":"{{count}} fotogramas","sliceBadge":"REBANADA","recordScreen":"Grabar pantalla","newVersionAvailable":"Actualización disponible","updateAvailable":"Actualización de react-native-inapp-inspector v{{latestVersion}} lista","updateAvailableSubtitle":"Una nueva versión de react-native-inapp-inspector está lista para instalar","upgradeCommand":"COMANDO DE ACTUALIZACIÓN","copyCommand":"Copiar","viewNpm":"Ver","screenshot":"Captura","videoCapture":"Grabar"},"tabs":{"apis":"API","logs":"Registros","analytics":"Analítica","redux":"redux","crash":"Bloqueos","push":"empujar","device":"Dispositivo","storage":"Almacenamiento","media":"Captura","debugging":"Depuración","socket":"WebSocket"},"settings":{"mainTitle":"Configuraciones y módulos","mainSubtitle":"Administrar módulos y preferencias","requiredBadge":"REQUERIDO","defaultBadge":"PREDETERMINADO","notConnectedBadge":"NO CONECTADO","notDetectedBadge":"NO DETECTADO","readOnlyBadge":"SOLO LEER","coreBadge":"NÚCLEO","activeBadge":"ACTIVO","dormantBadge":"LATENTE","protectedBadge":"PROTEGIDO","modulesAndTools":"Módulos y herramientas","uiPreferences":"Interfaz de usuario y pantalla","ramLimits":"RAM y límites","screenVideoCapture":"Captura de pantalla y vídeo","zeroOverheadTitle":"Sobrecarga de fondo cero","zeroOverheadDesc":"Marque los módulos que desea activar. Los módulos deshabilitados consumen 0% de CPU y memoria hasta que se guardan.","unsavedPending":"● Selecciones no guardadas pendientes","allSynchronized":"Todos los módulos sincronizados","modulesActive":"{{active}} de {{total}} módulos activos","saveChanges":"Guardar cambios","settingsSaved":"Configuración guardada","settingsSavedDesc":"Las configuraciones del módulo activo se han actualizado correctamente.","configure":"Configurar","appearanceTheme":"APARIENCIA Y TEMA","windowLayout":"VENTANA Y DISEÑO","startupDefault":"PANTALLA DE INICIO Y PREDETERMINADO","logFiltersDeduplication":"FILTROS DE REGISTRO Y DEDUPLICACIÓN","resetSettings":"Restablecer todas las configuraciones","resetSettingsDesc":"Borrar las preferencias personalizadas a los valores predeterminados","reset":"Reiniciar","reduxNotConnectedTip":"La tienda Redux no está conectada. Llame a connectReduxStore(store) o utilice inspectorReduxMiddleware para habilitarlo.","analyticsNotConnectedTip":"Analytics no se inicializa. Llame a setupAnalyticsLogger(analytics()) para habilitarlo.","tabVisibility":"Visibilidad de pestañas","tabVisibilityDescription":"Elija qué módulos aparecen en el inspector","settingsTitle":"Configuración","back":"Atrás","apis":{"title":"Configuración de API","maxRequestLogs":"Registros de solicitudes máximas","maxRequestLogsDescription":"Tamaño del búfer de las solicitudes de red conservadas en la memoria","clearNetworkLogs":"Borrar registros de red","clearNetworkLogsDescription":"{{count}} solicitudes almacenadas","networkLogsCleared":"Registros de red borrados.","showStatusFilter":"Filtro de estado","showStatusFilterDescription":"Mostrar chips de estado en la lista de API","showMethodFilter":"Filtro de método","showMethodFilterDescription":"Mostrar chips de método en la lista de API","defaultTabDescription":"Pestaña en la que se abre el inspector","total":"Total: {{count}}"},"logs":{"title":"Configuración de registros","maxConsoleLogs":"Registros máximos de consola","maxConsoleLogsDescription":"¿Cuántos mensajes de consola conservar?","logLevels":"Gravedades de registro","logLevelsDescription":"Seleccione qué gravedades capturar en Registros","showInfo":"Mostrar registros de información","showInfoDesc":"Registros informativos e impresiones de depuración","showWarn":"Mostrar registros de advertencia","showWarnDesc":"Avisos de advertencia y obsolescencias","showError":"Mostrar registros de errores","showErrorDesc":"Errores y excepciones en tiempo de ejecución","clearConsoleLogs":"Borrar registros de la consola","clearConsoleLogsDescription":"{{count}} registros almacenados","consoleLogsCleared":"Se borraron los registros de la consola.","total":"Total: {{count}}"},"analytics":{"title":"Configuración de análisis","total":"Eventos: {{count}}","maxAnalyticsEvents":"Eventos capturados","maxAnalyticsEventsDescription":"{{count}} eventos de análisis almacenados en el búfer","clearAnalyticsEvents":"Borrar historial de análisis","clearAnalyticsEventsDescription":"Borrar todos los eventos de telemetría capturados","analyticsEventsCleared":"Eventos de análisis borrados."},"redux":{"title":"Configuración de redux","reducers":"Reductores: {{count}}","autoRefresh":"Tienda de actualización automática","autoRefreshDescription":"Capture el árbol de estado de la tienda Redux en cada envío","defaultJsonExpandDepth":"Profundidad de expansión JSON predeterminada","defaultJsonExpandDepthDescription":"Profundidad inicial del árbol de estado de Redux para expandirse automáticamente","clearReduxState":"Borrar estado de Redux","clearReduxStateDescription":"Restablecer la instantánea del estado actual en el inspector","clearReduxStateEmpty":"No se ha registrado ninguna instantánea de la tienda","reduxStateCleared":"Se borró la instantánea del estado de Redux.","clearReduxTimeline":"Borrar línea de tiempo de Redux","clearReduxTimelineDescription":"Eliminar todo el historial de acciones capturadas","reduxTimelineCleared":"Se borró el historial de acciones de Redux."},"bundle":{"title":"Configuración del paquete","sourceBundler":"Paquete de fuente Metro","sourceBundlerDesc":"Analiza árboles de módulos activos y calcula desgloses de tamaño binario","clearCache":"Borrar caché de paquete","clearCacheDesc":"Forzar la recuperación y el análisis del paquete JS","cacheCleared":"Se borró la caché de análisis de paquetes."},"performance":{"title":"Configuración de rendimiento","frameMeasurement":"Medición de cuadros en vivo","frameMeasurementDesc":"Muestra velocidades de fotogramas UI/JS y detecta renderizados innecesarios","clearEvents":"Borrar eventos de rendimiento","clearEventsDesc":"Restablecer el historial de caídas de FPS y jank registrados","eventsCleared":"Eventos de rendimiento borrados."},"crash":{"title":"Configuración de bloqueo","maxCrashLogs":"Registros máximos de fallos","maxCrashLogsDesc":"¿Cuántos registros de accidentes preservar en la historia?","globalGuard":"Guardia global contra accidentes","globalGuardDesc":"Intercepta errores nativos, JS y de renderizado directamente","clearHistory":"Borrar historial de fallos","clearHistoryDesc":"{{count}} registros de fallas almacenados","historyCleared":"Se borraron los registros de fallos."},"media":{"title":"Captura de pantalla y vídeo","badge":"H.264 nativo/GIF","desc":"Configure formatos de captura de pantalla, calidad, FPS de video, narración de audio, grabación y almacenamiento de GIF","screenshotCardTitle":"Formatos y calidad de captura de pantalla","screenshotCardDesc":"Configuración de instantáneas de ventana completa de alta resolución","imageFormat":"Formato de imagen","imageFormatDesc":"PNG (sin pérdidas), JPEG (compacto) o WEBP","autoHide":"Superposición de inspector de ocultación automática","autoHideDesc":"Excluye la interfaz de usuario del inspector de las capturas de pantalla","enabled":"HABILITADO","videoCardTitle":"Grabación de vídeo y GIF","videoCardDesc":"Grabación MP4 H.264 y exportación de GIF animados","audioMode":"Modo de narración de audio","audioModeDesc":"Silenciado, audio de aplicación o narración de voz","frameRate":"Velocidad de fotogramas","frameRateDesc":"Un FPS más alto produce grabaciones más fluidas","gifAutoOpt":"Optimización automática de GIF","gifAutoOptDesc":"Convierte grabaciones de video para GitHub PR y Slack","purgeAll":"Purgar todos los medios capturados","purgeAllDesc":"Elimina todas las capturas de pantalla, videos y GIF almacenados","purgeCacheBtn":"Purgar caché","purgeConfirmTitle":"Purgar almacenamiento de medios","purgeConfirmMessage":"Esto elimina todos los archivos multimedia capturados del caché local. ¿Continuar?","purgedSuccess":"Almacenamiento de medios eliminado"},"general":{"darkMode":"Tema del modo oscuro","darkModeDescription":"Alternar estética elegante y oscura o contraste claro","modalHeight":"Altura de la ventana de inspección","modalHeightDescription":"Porcentaje de cobertura de pantalla modal","modalAnimation":"Animación de transición","modalAnimationDescription":"Estilo de presentación de entrada y salida.","duplicateLogs":"Mostrar registros duplicados","duplicateLogsDescription":"Desactivado: las entradas repetidas idénticas se colapsan en insignias ×N","defaultOpeningTab":"Pestaña de apertura predeterminada","defaultOpeningTabDesc":"Pestaña inicial activa cuando se toca el botón del iniciador","activeConsoleLogLevels":"Niveles de registro de consola activa","activeConsoleLogLevelsDesc":"Seleccione qué gravedades capturar en Registros","resetToDefaults":"Restablecer los valores predeterminados","resetToDefaultsDescription":"Restaurar todas las configuraciones del inspector","resetConfirmationTitle":"Restablecer configuración","resetConfirmationMessage":"Todas las configuraciones se han restablecido a los valores predeterminados.","storageStatus":"Almacenamiento persistente","storageStatusEnabled":"Almacenamiento de configuración: persistente ({{type}})","storageStatusEnabledDesc":"Sus preferencias y visibilidad del módulo persisten después de reiniciar la aplicación.","storageStatusDisabled":"Almacenamiento de configuración: en memoria (temporal)","storageStatusDisabledDesc":"Las preferencias se restablecen al cerrar la aplicación. Pase el almacenamiento personalizado a <NetworkInspector Storage={...} /> para persistir en Android.","language":"Idioma","languageDescription":"Seleccionar idioma de visualización de la interfaz","selectLanguage":"Seleccionar idioma","peekOpacity":"Opacidad de transparencia","peekOpacityDescription":"Nivel de transparencia cuando el icono de ojo está activado"},"configureSubtitle":"Configurar parámetros del módulo","resetAlertTitle":"Restablecer toda la configuración","resetAlertMessage":"Esto restaura la visibilidad de módulos y preferencias de interfaz a sus valores predeterminados. ¿Continuar?","settingsReset":"Configuración restablecida","settingsResetMessage":"Toda la configuración ha sido restablecida.","pushHistoryCleared":"Historial de notificaciones push borrado","socketHistoryCleared":"Historial de WebSocket borrado","memory":{"manualTitle":"Limpieza manual de memoria","manualDescription":"Elimine las entradas más antiguas en todos los almacenes de registros y libere RAM","pruned":"{{count}} elementos eliminados de la memoria"},"simulator":{"salesforce":"Impulso simulado de Salesforce Marketing Cloud","fcm":"Empuje simulado de Firebase FCM","apns":"Empuje de APN de Apple simulado","deepLink":"Empuje de enlace profundo simulado","chat":"Sesión WebSocket de chat en tiempo real simulada","crypto":"Flujo simulado de Binance Crypto Ticker","socketio":"Sesión simulada de Socket.IO v4","echo":"Prueba simulada de eco de WebSocket","screenshotSaved":"¡Captura de pantalla capturada y guardada!"},"simulatePushTitle":"SIMULAR NOTIFICACIONES PUSH DE PRUEBA","simulateSocketTitle":"SIMULAR CONEXIONES SOCKET DE PRUEBA","directCaptureShortcuts":"ACCESOS DIRECTOS DE CAPTURA DIRECTA","activeModules":"Módulos Activos","notificationsAndToasts":"NOTIFICACIONES Y AVISOS","npmUpdateToast":"Aviso de Actualización NPM","npmUpdateToastDesc":"Muestra un aviso flotante cuando hay una versión más nueva en npm.","deviceMemoryAutoProfiles":"MEMORIA DEL DISPOSITIVO Y PERFILES","autoCalculateLimitsRam":"Auto-Calcular Límites según RAM","autoCalculateLimitsRamDesc":"Ajusta dinámicamente los límites según la memoria disponible","detectedAvailableRam":"RAM Disponible Detectada","lowMemoryProtection":"PROTECCIÓN POR BAJA MEMORIA","osMemoryWarningGuard":"Guardián de Alerta de Memoria del SO","osMemoryWarningGuardDesc":"Reduce búferes al 50% ante alertas de baja memoria del SO","pruneNow":"Purgar Ahora"},"network":{"title":"API","searchPlaceholder":"Buscar por URL, estado o método...","emptyTitle":"Aún no se han capturado llamadas API","emptySubtitle":"Las solicitudes de red aparecerán aquí a medida que utilice la aplicación.","reload":"recargar","clearTitle":"Borrar registros de red","clearMessage":"¿Está seguro de que desea borrar todos los registros de red capturados?","detailTabs":{"metadata":"Metadatos","headers":"Encabezados","request":"Solicitar","response":"Respuesta"},"requestTitle":"Solicitar","responseTitle":"Respuesta","searchRequest":"Solicitud de búsqueda...","searchResponse":"Respuesta de búsqueda...","searchHeaders":"Buscar encabezados...","requestHeaders":"Encabezados de solicitud","responseHeaders":"Encabezados de respuesta","diffTitle":"diferencia","noResponse":"Sin cuerpo de respuesta","noRequest":"Sin cuerpo de solicitud","statusFailed":"Fallido","urlHeader":"URL","methodHeader":"Método","statusHeader":"Estado","durationHeader":"Duración","sizeHeader":"Tamaño","triggeredAt":"Activado en","contentType":"Tipo de contenido","sourcePage":"Página fuente","sourcePageUnknown":"Fuente desconocida","loadMore":"Cargar más","groupByPage":"Agrupar por página","groupByDomain":"Agrupar por dominio","groupByNone":"Lista","domain":"Dominio","page":"Página","requests":"{{count}} solicitudes","requests_plural":"{{count}} solicitudes","noFilteredResults":"Ninguna solicitud coincide con los filtros actuales","scrollToTop":"Desplazarse hacia arriba","copyCurl":"Copiar rizo","copyFetch":"Copiar fragmento de recuperación","emptyResponse":"respuesta vacía","bodyHidden":"{Cuerpo oculto}","queryParams":"Parámetros de consulta","fullUrl":"URL completa","open":"Abierto","showMore":"Mostrar más","showLess":"Mostrar menos","failedNetworkError":"Error (error de red)","noMatchingHeaders":"No hay encabezados coincidentes","diffHidden":"{ Diferencia oculta }","noDiff":"No hay diferencias con la API anterior.","healthTitle":"Estado de la red y telemetría","successRate":"Tasa de éxito","avgLatency":"Latencia promedio","p95Latency":"Latencia P95","bandwidth":"Ancho de banda","fastest":"Más rápido","slowest":"mas lento","timingWaterfall":"Cascada de sincronización y latencia","throughput":"Rendimiento","performanceTier":"Nivel de rendimiento","perf":{"fast":"Rápido (< 200 ms)","moderate":"Moderado (200-800 ms)","slow":"Lento (> 800 ms)"},"jsonViewer":{"pretty":"bonita","raw":"Raw","table":"mesa","emptyObject":"Objeto vacío","emptyTable":"Objeto vacío","key":"Key","value":"VALOR","keyProperty":"CLAVE / PROPIEDAD","noMatchingKeys":"No se encontraron claves o valores coincidentes","emptyPayload":"No hay datos de carga útil disponibles"},"showingRequests":"Mostrando {{count}} peticiones","showingFilteredRequests":"Mostrando {{filtered}} de {{total}} peticiones","status200":"200 bien","status201":"201 Creado","status204":"204 Sin contenido","status304":"304 No modificado","status400":"400 Petición incorrecta","status401":"401 No autorizado","status403":"403 Prohibido","status404":"404 No encontrado","status500":"error 500","shareError":"Error al compartir","shareErrorMessage":"No se pudo abrir la hoja de compartir","clearLogsTitle":"Borrar registros de red","clearLogsMsg":"¿Estás seguro de que deseas borrar todos los registros de red?","moreFilters":"Más filtros","endpointUrl":"URL DEL ENDPOINT","exportTitle":"Exportar registros de API","exportScope":"ÁMBITO DE ORIGEN DE SOLICITUDES","filteredView":"Filtro activo","allLogsScope":"Todas las solicitudes","howManyLogs":"¿CUÁNTAS SOLICITUDES EXPORTAR?","enterCount":"Introduce el número de solicitudes:","exportFormat":"FORMATO DE EXPORTACIÓN","exportSummary":"Tamaño estimado de exportación","selectedLogs":"SOLICITUDES SELECCIONADAS","estSize":"TAMAÑO ESTIMADO","format":"FORMATO","exportLogsAction":"Exportar {{count}} solicitudes ({{size}})","exportingLogs":"Exportando solicitudes de API...","processingItem":"Procesando","records":"registros","exportSuccessTitle":"¡Exportación de API lista!","exportSuccessDesc":"Paquete de solicitudes de API completamente formateado y listo para compartir o guardar.","shareReport":"Compartir solicitudes","saveToDisk":"Guardar en disco","copyToClipboard":"Copiar contenido","exportAnother":"← Exportar otra","noLogsToExport":"No hay solicitudes de API disponibles para exportar","savePromptOpened":"Diálogo de guardar en disco abierto","copiedLogs":"¡Solicitudes de API copiadas al portapapeles!","ignorePatterns":"Ignorar patrones (Regex)","ignorePatternsDesc":"Las solicitudes que coincidan con esta expresión regular en URL, encabezados o cuerpo se excluirán.","invalidRegex":"Sintaxis de expresión regular no válida","logsExcluded":"{{count}} solicitudes excluidas","logCategoryFilter":"FILTRO DE CATEGORÍA DE SOLICITUD","logsCountRange":"RANGO DE CANTIDAD DE SOLICITUDES","contentOptions":"OPCIONES DE CONTENIDO","exportFileLabel":"Archivo:","exportLogCountLabel":"Cantidad de solicitudes:","exportFinalSizeLabel":"Tamaño final:","exportFormatLabel":"Formato:"},"console":{"title":"Registros","searchPlaceholder":"Buscar registros...","emptyTitle":"Aún no hay registros de consola","emptySubtitle":"La salida de la consola de su aplicación aparecerá aquí.","analyticsBadge":"Analítica","userLogBadge":"registro de usuario","jsonTitle":"Registrar JSON","messageTitle":"Mensaje de registro","search":"Registro de búsqueda...","searchJson":"Registro de búsqueda JSON...","logMessage":"Mensaje de registro","consoleLog":"Registro de consola","characters":"{{count}} caracteres","duplicates":"×{{count}} duplicados","showMore":"Mostrar más","showLess":"Mostrar menos","clearTitle":"Borrar registros","clearMessage":"¿Está seguro de que desea borrar todos los registros de la consola?","seeMore":"Mostrar más","noResults":"Ningún registro coincide con los filtros actuales","filterAll":"All","filterInfo":"Información","filterWarn":"Advertir","filterError":"error","filterUserLog":"Registro de usuario","filterAnalytics":"Analítica","tabOutput":"Salida","tabArgs":"Argumentos ({{count}})","tabStack":"Seguimiento de pila","tabMetadata":"Metadatos","callStack":"Pila de llamadas ({{count}} fotogramas)","errorStack":"Pila de excepción de error ({{count}} marcos)","callOriginStack":"Pila de origen de llamada","errorThrownStack":"Pila de errores arrojados","appCodeScope":"🎯 Código de aplicación ({{count}})","allFramesScope":"📜 Todos los fotogramas ({{count}})","cardsView":"Tarjetas","rawTraceView":"Raw","noStackAvailable":"No se encontraron marcos de pila de llamadas que coincidan con el filtro activo.","originBadge":"#1 ORIGEN","appCodeBadge":"Código de aplicación","dependencyBadge":"dependencia","nativeBadge":"Nativo","fullStackTrace":"Seguimiento de pila completa","lineCol":"Línea {{line}}, Col {{col}}","searchInLogDetails":"Buscar en los detalles del registro...","showingLogs":"Mostrando {{count}} registros","showingFilteredLogs":"Mostrando {{filtered}} de {{total}} registros","filteredBy":"Filtrado por {{filters}} ({{filtered}} de {{total}} registros)","log":"Registro","info":"Información","warning":"Advertencia","error":"error","debug":"Depuración","hermesVmBadge":"Hermes VM","lineColShort":"L{{line}}:C{{col}}","clearLogsTitle":"Borrar registros de consola","clearLogsMsg":"¿Estás seguro de que deseas borrar todos los registros de consola?","analytics":"Analítica","exportTitle":"Exportar registros de consola","exportScope":"ÁMBITO DE ORIGEN DE REGISTROS","filteredView":"Filtro activo","allLogsScope":"Todos los registros","howManyLogs":"¿CUÁNTOS REGISTROS DESEA EXPORTAR?","enterCount":"Ingrese el número de registros:","exportFormat":"FORMATO DE EXPORTACIÓN","exportSummary":"Tamaño estimado de exportación","selectedLogs":"REGISTROS SELECCIONADOS","estSize":"TAMAÑO ESTIMADO","format":"FORMATO","exportLogsAction":"Exportar {{count}} registros ({{size}})","exportingLogs":"Exportando registros de consola...","processingItem":"Procesando","records":"registros","exportSuccessTitle":"¡Exportación de registros lista!","exportSuccessDesc":"Paquete completo de registros formateado y listo para compartir o guardar.","shareReport":"Compartir registros","saveToDisk":"Guardar en disco","copyToClipboard":"Copiar contenido","exportAnother":"← Exportar otro","noLogsToExport":"No hay registros disponibles para exportar","savePromptOpened":"Diálogo de guardar en disco abierto","copiedLogs":"¡Registros copiados al portapapeles!","ignorePatterns":"Ignorar patrones (Regex)","ignorePatternsDesc":"Los registros que coincidan se excluirán de la exportación.","invalidRegex":"Sintaxis de expresión regular no válida","logsExcluded":"{{count}} registros excluidos","logLevelFilter":"FILTRO DE NIVEL DE REGISTRO","logsCountRange":"RANGO DE REGISTROS","contentOptions":"OPCIONES DE CONTENIDO","exportFileLabel":"Archivo:","exportLogCountLabel":"Cantidad:","exportFinalSizeLabel":"Tamaño Final:","exportFormatLabel":"Formato:"},"analytics":{"title":"Analítica","searchPlaceholder":"Buscar eventos...","emptyTitle":"Aún no hay eventos de análisis","emptySubtitle":"Los eventos de análisis aparecerán aquí a medida que su aplicación los rastree.","clearTitle":"Análisis claros","clearMessage":"¿Está seguro de que desea borrar todos los eventos de análisis?","eventParams":"{{count}} parámetros","eventCount":"{{count}} eventos","userProperties":"Propiedades de usuario","userId":"ID de usuario","defaultParameters":"Parámetros predeterminados","collectionEnabled":"Colección habilitada","screenView":"vista_pantalla","eventDetails":"Detalles del evento","parameters":"Parámetros","noParams":"Sin parámetros","recentEvents":"Eventos recientes","analyticsError":"Error de análisis","duplicate":"Duplicar","params":"parámetros","props":"accesorios","item":"artículo","items":"artículos","pageViewCategory":"Vista de página","ecommerceCategory":"Comercio electrónico","systemCategory":"Sistema","customCategory":"personalizado","realtimeStream":"Actividad en tiempo real","liveTelemetry":"Telemetría en vivo","eventsInWindow":"eventos en ventana","peakVolume":"Pico: {{count}}","timeNow":"NOW","selectedBucket":"Depósito: {{time}} ({{count}} eventos)","totalRevenue":"Ingresos","activeDistribution":"División de categoría","allCategory":"All","screensCategory":"Pantallas","overviewTab":"Descripción general","jsonTreeTab":"Árbol JSON","rawPayloadTab":"Carga útil sin procesar","sessionContext":"Contexto de la sesión","userPropertiesSnapshot":"Instantánea de propiedades de usuario","parameterKeys":"Parámetros ({{count}})","searchParameters":"Parámetros de búsqueda...","noParamsFound":"Ningún parámetro coincide con su búsqueda","sourceFirebase":"BASE DE FUEGO GA4","sourceCustom":"PERSONALIZADO / MANUAL","eventVelocity":"{{rate}} ev/min","time30mAgo":"-30m","time20mAgo":"-20m","time10mAgo":"-10m","dataVisualization":"Visualización de datos","dataTypesBreakdown":"Desglose de tipos de datos","highestPayloadStrings":"Cadenas de mayor carga útil","topLevelMetrics":"Métricas de nivel superior","importantDates":"Fechas importantes","itemPrices":"Precios de artículos","sessionIdentity":"SESIÓN E IDENTIDAD","metricParams":"Parámetros:","metricUserProps":"Props de usuario:","metricSize":"Tamaño:","metricItems":"{{count}} artículos","sessionId":"ID de sesión","trackingId":"ID de seguimiento","eventParameters":"PARÁMETROS DEL EVENTO ({{count}})","keyValueAttributes":"Atributos clave-valor","filterParamsPlaceholder":"Filtrar parámetros por clave o valor...","noParamsRecorded":"No se registraron parámetros personalizados para este evento.","noParamsMatching":"Ningún parámetro coincide con \"{{search}}\"","clearEventsTitle":"Borrar analítica","clearEventsMsg":"¿Estás seguro de que deseas borrar todos los eventos de analítica?","filtersTitle":"Filtros de Analíticas","filtersSubtitle":"Dimensiones y Métricas GA4","applyFilters":"Aplicar Filtros","applyFiltersWithCount":"Aplicar Filtros ({{count}} coincidentes)","timeHorizon":"HORIZONTE TEMPORAL","eventCategories":"CATEGORÍAS DE EVENTOS","monetizationAttributes":"MONETIZACIÓN Y ATRIBUTOS","userIdentification":"IDENTIFICACIÓN DE USUARIO","eventSource":"FUENTE DEL EVENTO","payloadComplexity":"COMPLEJIDAD DEL PAYLOAD","sortOrder":"ORDEN DE CLASIFICACIÓN","allTime":"Todo el Tiempo","last1m":"Último 1 min","last5m":"Últimos 5 mins","last15m":"Últimos 15 mins","last1h":"Última 1 hora","allCategories":"Todas las Categorías","ecommerce":"Comercio Electrónico","screensAndPages":"Pantallas y Páginas","systemAndLifecycle":"Sistema y Ciclo de Vida","customEvents":"Eventos Personalizados","conversionEventsOnly":"Solo Eventos de Conversión","withRevenue":"Con Ingresos (Valor > 0)","withItemsPayload":"Con Elementos","withUserProperties":"Con Propiedades de Usuario","withCustomParams":"Con Parámetros Personalizados","frequentOnly":"Solo Frecuentes (> 1×)","allUsers":"Todos los Usuarios","identifiedUser":"Identificado (User ID)","anonymousUser":"Anónimo","allSources":"Todas las Fuentes","firebaseGaSdk":"SDK Firebase / GA","inAppLogger":"Registrador en App","allComplexities":"Todas las Complejidades","noParamsZero":"Sin Parámetros (0)","simpleParams":"Simple (1–5 Parámetros)","heavyPayload":"Pesado (> 5 Parámetros)","newestFirstDefault":"Más Reciente Primero","oldestFirst":"Más Antiguo Primero","highestRevenue":"Mayor Ingreso","mostFrequent":"Más Frecuente"},"redux":{"title":"redux","searchPlaceholder":"Buscar estado o acciones...","emptyTitle":"Ningún almacén Redux conectado","emptySubtitle":"Conecta tu almacén para inspeccionar el estado y las acciones.","stateTab":"Estado","actionsTab":"Acciones","clearTitle":"Borrar línea de tiempo de Redux","clearMessage":"¿Está seguro de que desea borrar el historial de acciones enviadas?","noActions":"Aún no se han enviado acciones. Activa una acción en la aplicación para completar el historial.","noSearchResults":"Ninguna acción coincide con tu búsqueda.","lastAction":"Última acción","actionHistory":"Historial de acción","affectedSlices":"Rebanadas afectadas","noAffectedSlices":"Ninguno","dispatchTime":"Enviado a","prevState":"Estado anterior","nextState":"Estado siguiente","viewDiff":"Ver diferencia","emptyState":"el estado esta vacio","rootState":"Estado raíz","connectionStatus":"Conectado","connectionStatusNone":"No conectado","autoRefresh":"Actualización automática","paused":"En pausa","liveState":"Estado vivo","timeline":"Línea de tiempo","persisted":"persistió","storage":"Almacenamiento","metadata":"Metadatos","inMemory":"En memoria","slice":"REBANADA","rootKeys":"Claves raíz","size":"Tamaño","actions":"acciones","keys":"llaves","last":"último","live":"en vivo","loading":"Cargando","error":"error","empty":"vacio","payload":"Carga útil","actionPayload":"Carga útil de acción:","stateChangesDiff":"Cambios de estado (diferenciación):","tapToInspectAction":"Toque para inspeccionar la carga útil de la acción y los cambios de diferencias","noDispatchedActions":"Aún no se han registrado acciones enviadas para este segmento.","sliceJson":"Cortar JSON","originUi":"UI","originDirect":"DIRECTO","originListener":"OYENTE","triggeredFrom":"Activado desde:","openInEditor":"Abrir en Editor","callStack":"Seguimiento de pila de llamadas","sliceOrigin":"Rebanada / Origen","activeSlices":"SLICES ACTIVOS","totalState":"ESTADO TOTAL","lastActionHeader":"ÚLTIMA ACCIÓN","initialState":"Estado inicial (sin acciones despachadas)","noStoreConnected":"Ningún almacén Redux conectado","connectStoreTip":"Llama a connectReduxStore(store) o usa inspectorReduxMiddleware al iniciar la app.","clearPersistedTitle":"Borrar estado persistido","clearPersistedMessage":"¿Está seguro de que desea eliminar el almacenamiento persistido del slice \"{{slice}}\"?","clearedPersisted":"El estado persistido ha sido borrado.","clearPersistedError":"Error al borrar el estado persistido.","originSaga":"SAGA","originThunk":"THUNK","clearTimelineTitle":"Borrar línea de tiempo de Redux","clearTimelineMsg":"¿Estás seguro de que deseas borrar el historial de acciones enviadas?","diff":"Diferencia de estado","clearPersistedStorageSlice":"Limpiar Almacenamiento Persistido de este Slice","notPersistedInStorage":"No Persistido en Almacenamiento","notPersistedDesc":"Este slice no está almacenado en AsyncStorage.\nEl estado existe únicamente en memoria JavaScript.","actionNoPayload":"Esta acción no tiene payload emitido.","dispatchedFromCallStack":"Emitido desde pila de llamadas:","noCallStackCaptured":"No se capturó traza para esta acción.","noSliceSelected":"Ningún Slice de Redux Seleccionado","selectSlicePrompt":"Selecciona un slice de la pestaña Redux para inspeccionar su estado.","initialStateNoActions":"Estado inicial (sin acciones emitidas aún)"},"device":{"title":"Dispositivo","searchPlaceholder":"Buscar especificaciones, UDID, IP, pantalla...","subTabs":{"overview":"Resumen","hardware":"Ferretería","network":"Red e IP","display":"Pantalla","runtime":"Ejecución y App","security":"Seguridad e IDs"},"sections":{"overview":"RESUMEN DEL DISPOSITIVO","hardware":"ESPECIFICACIONES DE HARDWARE Y SISTEMA","network":"RED Y CONECTIVIDAD","display":"PANTALLA Y GEOMETRÍA","runtime":"EJECUCIÓN Y ENTORNO","security":"IDENTIFICADORES Y SEGURIDAD"},"copied":"Copiado {{label}}","copiedJson":"¡Informe JSON completo del dispositivo copiado!","copiedMarkdown":"¡Informe Markdown copiado al portapapeles!","live":"EN VIVO","ipAddress":"DIRECCIÓN IP","ramUsedTotal":"RAM (USADA/TOTAL)","uptime":"TIEMPO ACTIVO","copiedUuid":"ID único de dispositivo copiado (UUID)","deviceUuid":"UUID DEL DISPOSITIVO","pseudoIdentifierDesc":"Pseudoidentificador de hardware determinista"},"storage":{"title":"Almacenamiento","searchPlaceholder":"Buscar claves, valores, tipos...","subTabs":{"asyncStorage":"Almacenamiento asíncrono","mmkv":"MMKV"},"clearTitle":"Limpiar almacenamiento","clearMessage":"¿Estás seguro de que deseas eliminar todas las claves en {{driver}}?","clearConfirm":"Limpiar todo","emptyTitle":"Sin entradas de almacenamiento","emptySubtitle":"El almacenamiento está vacío para este controlador.","addKey":"Añadir clave","add":"Añadir","editKey":"Editar clave","createKey":"Crear clave","save":"Guardar","saveKey":"Guardar clave","keyName":"Nombre de clave","value":"Valor","valueContent":"Contenido del valor","type":"Tipo","beautifyJson":"Formatear JSON","loading":"Cargando entradas de almacenamiento...","deleteKeyTitle":"Eliminar clave","deleteKeyMessage":"¿Estás seguro de que deseas eliminar la clave \"{{key}}\"?","asyncStorage":"Almacenamiento asíncrono","deleteConfirm":"Eliminar","cleared":"Almacenamiento borrado","mmkv":"MMKV","keyNameEmpty":"El nombre de la clave no puede estar vacío","saveError":"Error al guardar la clave de almacenamiento"},"footer":{"endOfList":"Has llegado al final de la lista","loadMore":"Cargar {{count}} más","loadMoreRequests":"Cargar {{count}} Más solicitudes","allLoaded":"Todas las {{count}} solicitudes cargadas","showingOf":"Mostrando {{count}} de {{total}} {{label}}"},"performance":{"title":"Rendimiento","fpsTarget":"Monitor de objetivo de 60 FPS","healthScore":"Puntuación de salud FPS","excellent":"Excelente (60 FPS)","good":"Bueno (janks menores)","needsOptimization":"Necesita optimización","liveFps":"FPS en vivo y ciclo de actualización","realtimeWindow":"Tiempo real (ventana de 1 s)","uiRenderThread":"Hilo de renderizado de la interfaz de usuario","optimalFrame":"Óptimo (<16,6 ms)","slowFrame":"Fotograma lento (>16,6 ms)","budgetUsage":"Uso del presupuesto de 60 FPS","avgFrameTime":"Tiempo medio de fotograma","peakTime":"Hora pico","jsThread":"Hilo JS","uiThread":"Hilo de interfaz de usuario","jsiLatency":"Latencia JSI","heapImpact":"Impacto del montón","optimizationTip":"Consejo de optimización:","recordedEvents":"Eventos e interacciones grabados","liveStream":"Transmisión de sesión en vivo","emptyTitle":"Aún no se han capturado eventos de rendimiento","emptySubtitle":"Realice acciones en su aplicación para ver los tiempos de los subprocesos, el costo de procesamiento y el seguimiento de FPS.","tabOverview":"Descripción general","tabRenders":"renderiza","tabInteractions":"Interacciones","tabMemory":"Memoria","filterAll":"All","filterSlow":"Lento (>16ms)","filterCritical":"Crítico (>33ms)","searchPlaceholder":"Componente de búsqueda, interacción...","avgRenderTime":"Promedio de renderizado","totalRenders":"Representaciones totales","renderCost":"Costo de renderizado","slowRenders":"renderizados lentos","unnecessaryRenders":"Renders derrochadores","heapAllocated":"Montón asignado","heapLimit":"Límite de montón","gcEvents":"Eventos de la general","leakRisk":"Riesgo de fuga","lowRisk":"Bajo riesgo","mediumRisk":"Riesgo medio","highRisk":"Alto riesgo","memoryTimeline":"Línea de tiempo de la memoria","clearPerformance":"Borrar datos de rendimiento","clearConfirmation":"¿Está seguro de que desea borrar todos los datos de seguimiento del rendimiento?","liveFpsDip":"Caída de la velocidad de cuadros en vivo ({{fps}} FPS)","liveFpsDipDetail":"La duración del marco del hilo principal se extendió a {{duration}}ms durante la actualización de la vista.","liveFpsDipAdvice":"Ejecución intensa de JavaScript durante la presentación de visualización retrasada del paso de fotogramas.","yogaLayout":"Diseño de caja flexible de yoga","hermesGc":"Recolección de basura de Hermes","jsEngine":"Motor JS","uiReconciler":"Conciliador de interfaz de usuario","memoryHeap":"montón de memoria","allLogs":"Todos los registros","jankySlow":"Janky / Lento","navigation":"Navegación","components":"Componentes","memoryGc":"Memoria y GC","networkIo":"Red y E/S","catAll":"All","catNavigation":"Navegación","catRender":"Componentes","catMemory":"Memoria","catIo":"I/O","recording":"Grabación","paused":"En pausa","budgetHeadroom":"~{{time}}ms de margen libre ({{percent}}%)","jsExec":"Ejecutivo de JS: {{time}}ms","yogaLayoutTime":"Diseño de yoga: {{time}}ms","uiRenderTime":"Representación de la interfaz de usuario: {{time}}ms","freeTime":"Gratis: {{time}}ms","heapAllocatedSub":"{{allocated}} MB asignados","jscEngine":"JSC","bytecodeCompiled":"Código de bytes compilado","jitEngine":"Motor JIT","webkitEngine":"Motor Webkit","fabricJsi":"Tela/JSI","paperBridge":"Papel / Puente","directCppBindings":"Enlaces directos de C++","asyncJsonBridge":"Puente JSON asíncrono","fpsUnit":"FPS","jsLag":"Retraso JS","jankRate":"Tasa de Jank","fpsAreaChartTitle":"Flujo y fluctuación de FPS en tiempo real (30 s)","fpsAreaChartSub":"Objetivo en vivo de 60 FPS con medición continua de la variación del cuadro","frameLatencyDistTitle":"Distribución de latencia de fotogramas","frameLatencyDistSub":"Proporción de fotogramas entregados dentro del presupuesto de 16,6 ms","optimalBucket":"< 16,6 ms (60 fps)","minorJankBucket":"16,7 - 33,3 ms (30-60 fotogramas por segundo)","noticeableJankBucket":"33,4 - 50,0 ms (20-30 fotogramas por segundo)","severeFreezeBucket":"> 50,0 ms (< 20 fps)","hermesHeapTrendTitle":"Memoria y dinámica del montón de Hermes","hermesHeapTrendSub":"Asignación en vivo versus ciclos de recuperación de GC generacional","live":"en vivo","msTotal":"{{duration}}ms totales • {{time}}","droppedFrames":"{{count}} Eliminado","zeroDropped":"0 caído","frameBudgetMs":"{{time}}ms/cuadro ({{budget}}% presupuesto)","target60Fps":"Objetivo 60 FPS • Real {{fps}} FPS","frameDuration":"Duración del cuadro","frameDurationVal":"{{time}} ms (presupuesto de 16,67 ms)","frameUtilization":"Presupuesto del marco excedido","frameBudgetOk":"Espacio libre económico del marco","bottleneck":"Cuello de botella","jsBound":"JS hilo enlazado","uiBound":"Hilo de interfaz de usuario vinculado","balanced":"equilibrado","smooth":"Suave 60 FPS","minorJank":"tartamudeo menor","noticeableJank":"Jank notable","severeFreeze":"Congelación severa","screenContext":"Contexto de pantalla","profileReason1":"Accesorios de función de flecha en línea pasados a los niños (onAddToCart={() => ...})","profileReason2":"Selector Redux no memorizado que crea una nueva referencia de objeto en cada envío","profileReason3":"Objeto de estilo dinámico creado en el cuerpo del renderizado ({ marginTop: insets.top + 10 })","profileReason4":"A FlatList le falta getItemLayout, lo que provoca pases de medición de diseño asíncronos","profileReason5":"Función renderItem definida de forma anónima dentro del cuerpo JSX","profileReason6":"Listar los componentes del elemento que no están incluidos en React.memo","profileReason7":"La pantalla principal se volvió a representar en el teclado para mostrar/ocultar evento","profileReason8":"Referencia de devolución de llamada inestable pasada al botón de pago","profileReason9":"El estado del valor de TextInput activa la reproducción principal con cada pulsación de tecla sin rebote","profileReason10":"Pasar un objeto de filtro no memorizado ({categoría, minPrice}) a chips secundarios","profileReason11":"Revalidación de caché de imagen de avatar al actualizar la sesión de autenticación","fixUseCallbackTitle":"Ajustar controladores de eventos en usoCallback","fixUseCallbackDesc":"Las funciones en línea recrean una nueva referencia de memoria en cada renderizado, invalidando React.memo en los componentes secundarios.","fixCreateSelectorTitle":"Memoizar selectores Redux / Zustand con superficialEqual","fixCreateSelectorDesc":"Devolver nuevas referencias a objetos o matrices dentro de useSelector fuerza una nueva representación automática en cada envío de estado.","fixUseMemoStylesTitle":"Estilos de elevación o uso useMemo para dimensiones dinámicas","fixUseMemoStylesDesc":"Los objetos de estilo en línea crean nuevas identidades de objetos en cada paso de fotograma, lo que provoca diferencias de conciliación en Yoga Flexbox.","fixGetItemLayoutTitle":"Implementar getItemLayout para elementos de altura fija","fixGetItemLayoutDesc":"Proporcionar getItemLayout permite a FlatList calcular inmediatamente los desplazamientos de desplazamiento y las ventanas virtuales sin medir las vistas de forma asincrónica.","fixReactMemoTitle":"Ajustar elementos de la lista en React.memo","fixReactMemoDesc":"Evita que los más de 50 elementos visibles de la lista se vuelvan a representar cuando se actualiza el estado de la lista principal (por ejemplo, posición de desplazamiento o paginación).","fixComponentSplittingTitle":"Aislar el estado que cambia rápidamente en los componentes de la hoja","fixComponentSplittingDesc":"Mueva los oyentes del teclado y el estado de la animación modal a subcomponentes autónomos para que el padre no se vuelva a renderizar.","fixDebouncedInputTitle":"Entrada de búsqueda antirrebote o uso del estado controlado local","fixDebouncedInputDesc":"No propague el estado de pulsación de tecla al almacén global inmediatamente. Utilice un rebote de 250 ms o una referencia incontrolada.","fixPrimitivePropsTitle":"Pase accesorios primitivos en lugar de objetos grandes","fixPrimitivePropsDesc":"Pasar solo la cadena de ID de categoría en lugar del objeto de categoría completo evita que se vuelva a representar cuando se actualizan los metadatos de otras categorías.","fixUseRefForTrackingTitle":"Utilice useRef para valores de seguimiento no visuales","fixUseRefForTrackingDesc":"No almacene temporizadores de análisis, desplazamientos de desplazamiento ni ID de seguimiento en useState si no modifican directamente el árbol JSX.","highImpact":"Alto Impacto","mediumImpact":"Impacto medio","bestPractice":"Mejores prácticas","beforeUseCallback":"// ❌ Antes en <{{comp}} /> (recrea la referencia de función en cada renderizado):","afterUseCallback":"// ✅ Después (referencia de devolución de llamada memorizada estable):","beforeCreateSelector":"// ❌ Antes en <{{comp}} /> (devuelve una nueva referencia de objeto en cada renderizado):","afterCreateSelector":"// ✅ Después (shallowEqual evita que se vuelva a renderizar a menos que los valores cambien):","beforeMemo":"// ❌ Antes (<{{comp}} />):","afterMemo":"// ✅ Después (omite el renderizado si los accesorios son superficialmente idénticos):","flatListOptimization":"// Optimización de FlatList para <{{comp}} />","customComparator":"// Función de igualdad personalizada para <{{comp}} />","debounceInput":"// Antirrebote de entrada dentro de <{{comp}} /> para evitar renderizaciones por pulsación de tecla:","isolateState":"// Aislar el estado que cambia rápidamente desde <{{comp}} /> al subárbol secundario // ✅ Encapsular el diseño animado dentro del componente aislado:","beforeUseRef":"// ❌ Antes en <{{comp}} /> (activa la renderización completa del componente al cambiar el valor):","afterUseRef":"// ✅ Después (conserva la referencia mutable entre renderizados sin volver a renderizar):","fixInteractionManagerTitle":"Aplazar la lógica fuera de la pantalla con InteractionManager","fixInteractionManagerDesc":"El procesamiento intensivo de datos durante las animaciones de la pantalla reduce los fotogramas. Aplazar hasta que finalice la transición.","beforeInteractionManager":"// ❌ Antes en <{{comp}} /> (ejecuta cálculos pesados mientras se anima la transición): useEffect(() => { loadHeavyData(); }, []);","afterInteractionManager":"// ✅ Después (espera hasta que la transición se complete sin problemas): useEffect(() => { const task = InteractionManager.runAfterInteractions(() => { loadHeavyData(); }); return () => task.cancel(); }, []);","fixFlatListWindowingTitle":"Ajustar las propiedades de ventanas FlatList","fixFlatListWindowingDesc":"Configure maxToRenderPerBatch y windowSize para minimizar las asignaciones de vistas virtualizadas fuera de la pantalla.","beforeFlatListWindowing":"// Optimización de ventanas FlatList para <{{comp}} />: <FlatList data={items} maxToRenderPerBatch={10} windowSize={5} inicialNumToRender={8} removeClippedSubviews={true} />","fixImageCachingTitle":"Optimice el almacenamiento en caché y la reducción de escala de imágenes","fixImageCachingDesc":"Utilice encabezados de prioridad o resizeMode para evitar asignaciones masivas de mapas de bits en el montón de Hermes.","beforeImageCaching":"// Optimización de imagen para <{{comp}} />: <Image source={{ uri: imageUrl, cache: 'force-cache' }} resizeMode=\"cover\" fadeDuration={100} />","fixContextSplittingTitle":"Dividir el contexto monolítico en proveedores granulares","fixContextSplittingDesc":"Los componentes que se suscriben a un contexto grande se vuelven a representar incluso cuando cambian las propiedades de estado no utilizadas.","beforeContextSplitting":"// ❌ Antes (<{{comp}} /> consume todo el AppContext): const { usuario, carrito, tema } = useAppContext();","afterContextSplitting":"// ✅ Después (suscríbete al contexto de segmento dedicado): const theme = useThemeContext();","fixInlineStylesHoistTitle":"Estilos estáticos de polipasto con StyleSheet.create","fixInlineStylesHoistDesc":"Los objetos de estilo en línea asignan nuevas referencias de memoria en cada pasada de renderizado, lo que provoca una sobrecarga de conciliación de Yoga.","beforeInlineStyles":"// ❌ Antes (<{{comp}} /> asigna objetos en línea en cada cuadro): <View style={{ flex: 1, padding: 16, backgroundColor: '#ffffff' }} />","afterInlineStyles":"// ✅ Después (referencia de hoja de estilo elevada): const estilos = StyleSheet.create({ contenedor: { flex: 1, padding: 16, backgroundColor: '#ffffff' } }); <Ver estilo={styles.container} />","transitionEventLabel":"Transición de pantalla: {{screen}}","transitionEventDetail":"La transición se completó en {{duration}}ms (TTI: {{tti}}ms).","transitionEventAdvice":"La interacción se completó dentro del presupuesto objetivo de 60 FPS.","heavyTaskEventLabel":"Tarea sincrónica pesada: {{taskName}}","heavyTaskEventDetail":"El hilo JS se bloqueó durante {{duration}}ms durante la ejecución de la tarea.","heavyTaskEventAdvice":"Considere la posibilidad de descargarlo a un trabajador web, InteractionManager o realizar lotes en partes.","asyncOpEventLabel":"Operación asincrónica lenta: {{opName}}","asyncOpEventDetail":"La tarea asincrónica tardó {{duration}}ms en resolverse.","renderLoopWarningLabel":"Pico rápido de renderizado en <{{comp}} />","renderLoopWarningDetail":"El componente se volvió a renderizar {{count}} veces en 500 ms. Potencial bucle infinito o dependencias inestables.","renderLoopWarningAdvice":"Verifique las matrices de dependencia useEffect / useCallback para referencias de funciones o objetos inestables.","event1Label":"Pico del hilo principal durante la navegación","event1Detail":"La transición de pantalla provocó una gran conciliación del diseño y montajes simultáneos de componentes.","event1Advice":"Posponga ganchos fuera de pantalla no críticos con InteractionManager.runAfterInteractions para preservar 60 FPS.","event2Label":"Pase de renderizado de virtualización FlatList","event2Detail":"FlatList representó 25 elementos simultáneamente en el cambio de orientación sin componente de fila memorizado.","event2Advice":"Implemente getItemLayout y React.memo(LogCard) para omitir pases de diferenciación redundantes.","event3Label":"Transición deslizable modal nativa","event3Detail":"La transformación animada del controlador nativo acelerada por hardware se ejecuta sin problemas a 60 FPS sostenidos.","event3Advice":"El uso de NativeDriver: true evita con éxito el bloqueo de subprocesos JS durante las animaciones.","event4Label":"Recolección de basura generacional de Hermes","event4Detail":"El ciclo de GC generacional menor rescató objetos de montón efímeros de 4,2 MB con una pausa de hilo de menos de un milisegundo.","event4Advice":"El recolector de basura generacional de Hermes funciona dentro de límites óptimos inferiores a 5 ms.","gcCycleLabel":"Ciclo de recolección de basura manual","gcCycleDetail":"~{{amount}} MB recuperados de objetos de montón sin referencia y vivero de memoria compactada.","gcCycleAdvice":"Uso del montón optimizado. Guardería generacional despejada.","liveFpsDropLabel":"Caída de la velocidad de cuadros en vivo ({{fps}} FPS)","liveFpsDropDetail":"La duración del marco del hilo principal se extendió a {{duration}}ms durante la actualización de la vista.","liveFpsDropAdvice":"Ejecución intensa de JavaScript durante la presentación de visualización retrasada del paso de fotogramas.","event5Label":"Deserialización de carga útil JSON grande","event5Detail":"Gastos generales de análisis de respuesta API de 50 elementos en el adaptador de red (cadena sin formato JSON de 185 KB).","event5Advice":"Considere paginar cargas útiles de API o transmitir respuestas si el tamaño de la carga supera los 250 KB.","event6Label":"Decodificación y rasterización de mapas de bits de imágenes","event6Detail":"Decodificación de ráster Retina para banner_dark.png (asignación de búfer de ráster de 1200 × 630 px).","event6Advice":"Reduzca las dimensiones de los activos o conviértalos a WebP para reducir la latencia de decodificación en aproximadamente un 65 %.","event7Label":"Invocación nativa de TurboModule JSI","event7Detail":"Transacción de preferencias de AsyncStorage/MMKV leída en 32 claves de configuración.","event7Advice":"Los enlaces directos de C++ JSI Turbomodule evitan por completo la sobrecarga de serialización del puente JSON heredado.","event8Label":"Diferenciación del árbol de estado de acción de Redux","event8Detail":"El pase de envío de Redux evaluó 6 sectores reductores y emitió una notificación de estado en 4,8 ms.","event8Advice":"Se conserva la inmutabilidad del árbol de estado. Los selectores memorizados impidieron renderizaciones de componentes redundantes.","event9Label":"Latencia de eventos de tocar para renderizar","event9Detail":"El respondedor de gestos envió un evento de toque al botón TabBar con una respuesta inmediata de 60 FPS.","event9Advice":"La latencia del respondedor táctil está dentro del presupuesto de fotograma estándar de 16,67 ms.","event10Label":"Pase de diseño de C++ Yoga Flexbox","event10Detail":"El recálculo del diseño de la tarjeta de varias pestañas de la interfaz de usuario del inspector y las métricas de fuentes pasan en el motor C++ Yoga.","event10Advice":"Las restricciones de diseño de Flexbox se almacenan en caché y se calculan de manera eficiente sin penalizaciones por reflujo.","catJanky":"Janky","hermesAot":"Hermes (AOT)","v8Jit":"V8 (JIT)"},"bundle":{"heroTitle":"Arquitectura de paquetes y activos","heroSubtitle":"Desglose del tamaño en tiempo real de todos los activos, códigos y dependencias","heroSubtitleLive":"Análisis en vivo de {{scriptUrl}}","liveAnalysisUnavailable":"Análisis de paquetes en vivo no disponible","liveAnalysisUnavailableSub":"No se pudo conectar con el servidor de desarrollo de Metro, por lo que los valores son estimaciones. Asegúrese de que la aplicación se ejecute en desarrollo a través de `npx react-native start` y que el Inspector pueda llegar a su puerto Metro (8081, 8082, ...).","bundleOverviewJson":"Descripción general del paquete JSON","devBundleSize":"TAMAÑO DEL PAQUETE DE DESARROLLO","devBundleHint":"{{kb}} KB • {{modules}} módulos","trackedFilesHint":"{{count}} Archivos rastreados","imagesMedia":"IMÁGENES Y MEDIOS","pctOfTrackedAssets":"{{pct}}% de los activos rastreados","tsJsSource":"FUENTE TS/JS","jsEngine":"MOTOR JS","bytecodeAot":"Código de bytes AOT","standard":"Estándar","splitUpTitle":"División del paquete de desarrollo","splitUpSub":"{{mb}} paquete MB JS medido • {{files}} archivos • {{packages}} paquetes","splitUpJson":"JSON dividido","splitAppSource":"Código fuente de la aplicación","splitNodeModules":"node_modules Dependencias","splitAssetsMedia":"Activos y medios","splitMetroOverhead":"Gastos generales de desarrollo de Metro","productionFootprint":"HUELLA DE PRODUCCIÓN","productionDownload":"Descargar: iOS ~{{ios}} MB • AAB ~{{aab}} MB • APK ~{{apk}} MB","treemapTitle":"Mapa de árbol de proporción de tipos de archivos y activos","treemapJson":"Mapa de árbol de proporciones JSON","legendImages":"Imágenes:","legendJs":"Bibliotecas JS:","legendFonts":"Fuentes:","categoryBreakdown":"Desglose de categorías","categoriesJson":"Categorías Desglose JSON","catImagesTitle":"Imágenes y recursos multimedia","catImagesDesc":"Recursos PNG, WebP, SVG y JPG en paquete","catJsTitle":"Módulos de nodo compilados y JS","catJsDesc":"Dependencias de terceros y puentes nativos","catFontsTitle":"Fuentes personalizadas y glifos vectoriales","catFontsDesc":"Recursos de fuentes en paquete","catTsTitle":"Componentes TypeScript y JSX","catTsDesc":"Componentes de la pantalla de la aplicación, enlaces y lógica empresarial","catJsonTitle":"Datos JSON y localizaciones","catJsonDesc":"Diccionarios de traducción i18n y configuraciones estáticas","totalBundleAssets":"TOTAL DE ARCHIVOS DE PROYECTO HOST","totalFormula":"Suma de archivos fuente del host: {{images}} KB + {{js}} KB + {{fonts}} KB + {{ts}} KB + {{json}} KB = {{total}} KB ({{count}} elementos)","prodIosApp":"Aplicación iOS (.ipa)","prodAndroidApk":"APK universal (.apk)","prodHeroTitleIos":"Huella binaria de producción de iOS","prodHeroTitleAab":"Paquete de aplicaciones de Google Play (.aab)","prodHeroTitleApk":"APK independiente universal (.apk)","prodHeroSubIos":"Estimaciones de instalación de App Store y descargas móviles inalámbricas","prodHeroSubAab":"Arquitectura de APK dividida de entrega dinámica optimizada por dispositivo","prodHeroSubApk":"Archivo de instalación universal Multi-ABI para descarga y distribución directa","prodInstallSize":"TAMAÑO DE INSTALACIÓN","prodInstallHint":"Huella sin comprimir en el dispositivo","prodDownloadSize":"DESCARGAR TAMAÑO","prodDownloadHint":"Almacenar carga útil de transferencia de red","prodCompression":"COMPRESIÓN","prodCompressionHint":"Código de bytes y proporción de activos","prodFormatArch":"ARQUITECTURA DE FORMATO","prodFormatHintIos":"Tiempo de ejecución de Apple ARM64","prodFormatHintAab":"Entrega dinámica de Google Play","prodFormatHintApk":"Paquete universal de carga lateral","prodArchTitle":"Arquitectura de componentes binarios","prodArchSub":"Bibliotecas nativas compiladas, códigos de bytes en tiempo de ejecución, activos y bloques de firmas","prodTotalIos":"TOTAL APLICACIÓN IOS BINARIO","prodTotalAab":"PAQUETE TOTAL DE ANDROID AAB","prodTotalFormula":"Desde {{devKb}} KB (~{{devMb}} MB • {{count}} activos totales) paquete fuente de desarrollo → {{installMb}} MB binario nativo optimizado ({{pct}}% de código de bytes/compresión de activos).","tabOverview":"Descripción general","tabProduction":"Producción ({{count}})","tabFiles":"Archivos ({{count}})","tabPackages":"Paquetes ({{count}})","tabMedia":"Medios ({{count}})","tabOptimizer":"Optimizador","analyzingTitle":"Analizando el paquete de aplicaciones host de Metro...","analyzingHint":"Obteniendo paquete y extrayendo módulos reales","searchFilesPlaceholder":"Buscar por nombre de archivo (.png, .tsx, .ttf, ruta)...","filteredFilesJson":"Archivos filtrados JSON","catAll":"Todos los archivos","catUnused":"No consumido (muerto)","catConsumed":"En uso/activo","catImages":"Imágenes y medios","catTypescript":"Mecanografiado/TSX","catJavascript":"JS y módulos de nodo","catFonts":"Fuentes y glifos","catJson":"JSON y datos","treeView":"Vista de árbol","flatList":"Lista plana","expand":"Expandir","collapse":"Colapso","showingFilesOf":"Mostrando {{shown}} de {{total}} archivos","filesOf":"{{count}} de {{total}} Archivos","notConsumed":"No consumido","consumed":"consumido","copyFileInfo":"Copiar {{name}} información","fileDetailsJson":"Detalles del archivo JSON","file":"archivo","files":"archivos","mbValue":"~{{size}}MB","searchPackagesPlaceholder":"Paquete de búsqueda (react-native, axios, navegación)...","dependenciesJson":"Dependencias JSON","showingDependencies":"Mostrando {{count}} dependencias","bundled":"incluido","deprecated":"DESPRECADO","updateAvailable":"Actualización: v{{version}}","upToDate":"actualizado","bundledBadge":"incluido","packageDetailsJson":"Detalles del paquete JSON","direct":"directo","transitive":"transitivo","minified":"~{{size}} KB minimizados","npmLink":"mpn ↗","dependenciesCount":"{{count}} Dependencias","mediaAuditorTitle":"Auditor de Compresión de Medios","mediaAssetsJson":"Recursos de medios JSON","mediaAuditorPrefix":"Imágenes y fuentes constituyen","mediaAuditorMid":"de activos totales (~{{kb}} KB). La conversión de PNG a WebP y el subconjunto de fuentes pueden reducir el tamaño hasta","mediaAuditorSuffix":"KB.","mediaAssetsList":"Recursos multimedia y fuentes ({{count}} elementos)","mediaItemJson":"Elemento multimedia JSON","mediaAndFonts":"{{count}} Medios y fuentes","optimizerTitle":"Lista de verificación de optimización del paquete React Native","optimizationChecklist":"Lista de verificación de optimización","optTip1Title":"Convierta archivos PNG pesados a WebP/SVG","optTip1Desc":"Las imágenes representan >40% del tamaño final de descarga de la aplicación. La conversión de archivos PNG rasterizados 2x/3x a WebP ahorra entre un 60% y un 70% de tamaño sin pérdida visible de fidelidad.","optTip2Title":"Habilitar el motor de código de bytes de Hermes","optTip2DescActive":"¡Hermes está activo! JavaScript se compila en un código de bytes optimizado con antelación.","optTip2DescInactive":"Hermes está discapacitado. Habilite Hermes en la configuración de su aplicación para obtener una carga útil aproximadamente un 40 % más pequeña y un inicio instantáneo de TTI.","optTip3Title":"Subconjunto de fuentes y poda de peso","optTip3Desc":"Incluya solo los pesos de fuente que utiliza activamente (por ejemplo, Regular y Negrita). Elimine los rangos de glifos no utilizados para ahorrar más de 100 KB por archivo de fuente.","optTip4Title":"Importaciones de ruta selectivas (sacudida de árboles)","optTip4Desc":"Importe desde subrutas específicas (por ejemplo, lodash/get o conjuntos de iconos vectoriales específicos) en lugar de importar grandes paquetes monolíticos.","optTip5Title":"Carga diferida de pantalla","optTip5Desc":"Cargue de forma diferida pantallas secundarias y hojas modales pesadas mediante importaciones dinámicas e InteractionManager para reducir la evaluación inicial del paquete.","highImpact":"Alto Impacto","mediumImpact":"Impacto medio","bestPractice":"Mejores prácticas","actionRequired":"Acción requerida","active":"Activo","tipDetails":"Detalles de la propina","iosComp1Name":"Marcos y pods dinámicos","iosComp1Desc":"Marcos de trabajo nativos de React, Hermes y {{count}}.","iosComp1Advice":"Asegúrese de eliminar el código muerto (STRIP_INSTALLED_PRODUCT = YES) en el modo de lanzamiento.","iosComp2Name":"Ejecutable Mach-O (ARM64)","iosComp2Desc":"La aplicación host compiló puentes nativos Swift/Objective-C y C++.","iosComp2Advice":"Habilite LTO monolítico (optimización del tiempo de enlace) en el esquema Xcode.","iosComp3Name":"Catálogo de activos (Assets.car)","iosComp3Desc":"AppIcons, pantallas de presentación, glifos vectoriales y fuentes empaquetadas.","iosComp3Advice":"Compile imágenes en Xcode Asset Catalog para la reducción automática de aplicaciones.","iosComp4Name":"Código de bytes de Hermes (main.jsbundle)","iosComp4Desc":"La aplicación host JavaScript compiló AOT en código de bytes de Hermes (archivos {{count}}).","iosComp4Advice":"El código de bytes AOT se carga con una latencia de compilación de 0 ms al iniciar el dispositivo.","iosComp5Name":"Metadatos y firmas de código","iosComp5Desc":"_CodeSignature, Info.plist y bloque de derechos.","iosComp5Advice":"Firma de aprovisionamiento y firma de código Apple estándar.","andComp1Name":"Bibliotecas nativas de C++ (.so)","andComp1Desc":"Adaptadores nativos libhermes.so, libfbjni.so y {{count}} C++.","andComp1Advice":"Implemente con Android App Bundle (.aab) para entregar APK divididos por ABI.","andComp2Name":"DEX compilado (classes.dex)","andComp2Desc":"Compilé puentes en tiempo de ejecución de Java y Kotlin, AndroidX y React Native.","andComp2Advice":"Habilite la reducción de R8/ProGuard (minifyEnabled true) en build.gradle.","andComp3Name":"Recursos de Android (res/)","andComp3Desc":"Dibujables, XML vectoriales, densidades de mapas mip, recursos.arsc, fuentes.","andComp3Advice":"Utilice WebP y VectorDrawables para evitar la duplicación de activos de densidad múltiple.","andComp4Name":"Código de bytes de Hermes (Android)","andComp4Desc":"JavaScript de la aplicación host compilado en código de bytes de Hermes (archivos {{count}}).","andComp4Advice":"Código de bytes precompilado durante la tarea de gradle ensamblarRelease.","andComp5Name":"Manifiesto y firmas (META-INF)","andComp5Desc":"AndroidManifest.xml, firma de certificados, bloques del esquema de firma APK v2/v3/v4.","andComp5Advice":"Bloqueo de firma y firma oficial de Google Play.","apkComp1Name":"Bibliotecas C++ multi-ABI (.so)","apkComp1Desc":"Bibliotecas universales compartidas de arquitectura múltiple (.so) incluidas para descarga directa.","apkComp1Advice":"Utilice Android App Bundle (.aab) para Google Play para reducir el tamaño de la instalación en un 60 %.","apkComp2Name":"Código de bytes DEX compilado (classes.dex)","apkComp2Desc":"Tiempo de ejecución compilado de Java y Kotlin, bibliotecas de AndroidX y módulos puente nativos.","apkComp2Advice":"Habilite la reducción de R8/ProGuard (minifyEnabled verdadero) y reducirResources verdadero.","apkComp3Name":"Recursos y activos de Android (res/)","apkComp3Desc":"Dibujables, XML vectoriales, densidades de mapas mip, recursos.arsc, fuentes.","apkComp3Advice":"Utilice WebP y VectorDrawables para evitar la duplicación de activos de densidad múltiple.","apkComp4Name":"Paquete de código de bytes de Hermes (Android)","apkComp4Desc":"JavaScript de la aplicación host compilado en código de bytes de Hermes (archivos {{count}}).","apkComp4Advice":"Código de bytes precompilado durante la tarea de gradle ensamblarRelease.","apkComp5Name":"Manifiesto y firmas (META-INF)","apkComp5Desc":"AndroidManifest.xml, firma de certificados, esquema de firma de APK JAR y v2/v3/v4.","apkComp5Advice":"Bloque de firma de instalación directa y carga local empresarial.","splitSize":"{{kb}} KB • {{mb}} MB","productionValue":"iOS {{ios}} MB • Android {{android}} MB","treemapSub":"Total ~{{mb}} MB","legendTs":"TS/TSX:","legendJson":"JSON:","totalBundleValue":"{{kb}} KB (~{{mb}} MB)","prodAndroidAab":"Android AAB (.aab)","prodTotalApk":"TOTAL UNIVERSAL APK","fileSizeKb":"{{size}} KB","fileSizeMb":"{{size}} MB","kbMbValue":"{{kb}} KB ({{mb}} MB)","legendValue":"{{kb}} KB ({{pct}}%)","mediaSavings":"{{size}} KB","versionPrefix":"v{{version}}"},"errors":{"title":"algo salió mal","message":"Se produjo un error inesperado.","retry":"Inténtalo de nuevo","reset":"Reiniciar","close":"Cerrar","errorReport":"Informe de errores","modalTitle":"El inspector se estrelló","modalMessage":"El inspector cometió un error inesperado. Puedes restablecerlo a continuación.","inlineTitle":"error del inspector","inlineMessage":"Se produjo un error inesperado dentro del inspector.","networkError":"Error en la solicitud de red","crashIntercepted":"ACCIDENTE INTERCEPTADO","protected":"PROTEGIDO","rootCauseTitle":"Diagnóstico de causa raíz","rootCauseSubtitle":"El inspector detectó este error de tiempo de ejecución para evitar la finalización de la aplicación","exactLocation":"UBICACIÓN EXACTA DE LA FUENTE","file":"Archivo:","lineCol":"Línea/Col:","lineColVal":"Línea {{line}}, Col {{col}}","function":"Función:","callStack":"MARCOS DE PILA DE LLAMADA","framesCount":"{{count}} cuadros","tryAgainRecover":"Inténtalo de nuevo/Recuperar","copyDiagnostics":"Copiar diagnóstico","appTag":"APP","copy":"Copiar"},"jsonViewer":{"pretty":"Estructurado","raw":"Crudo","table":"Tabla","emptyObject":"Objeto vacío","emptyPayload":"Carga útil vacía","emptyTable":"Objeto vacío","fold":"Plegar","expand":"Expandir","min":"Min","indent":"Indentar","wrap":"Ajustar","copied":"¡Copiado!","copy":"Copiar JSON","key":"Clave","value":"Valor","lines":"líneas","line":"línea"},"codeSnippet":{"copy":"Copiar","copied":"¡Copiado!","matchCount":"{{count}} coincide","matchCount_plural":"{{count}} coincidencias","noMatches":"No hay coincidencias","searchPlaceholder":"Buscar...","prevMatch":"Partido anterior","nextMatch":"Próximo partido","clearSearch":"Borrar búsqueda"},"diffViewer":{"added":"añadido","removed":"eliminado","changed":"cambiado","noDiff":"Sin diferencias","emptyTitle":"No se encontraron diferencias","emptySubtitle":"Las dos cargas útiles son idénticas."},"logCard":{"seeMore":"Mostrar más","seeLess":"Mostrar menos","copy":"Copiar","copied":"¡Copiado!"},"emptyState":{"title":"Nada aquí todavía","subtitle":"Los datos aparecerán aquí a medida que utilice la aplicación.","reload":"recargar"},"errorBoundary":{"title":"algo salió mal","message":"Se produjo un error inesperado.","retry":"Inténtalo de nuevo","reset":"Reiniciar","close":"Cerrar"},"crash":{"title":"Choque","searchPlaceholder":"Error de búsqueda, mensaje, pila...","searchDetailPlaceholder":"Buscar en trace o JSON...","statCrashes":"Accidentes","statFatal":"fatal","statJsErrors":"Errores de JS","statPromises":"Promesas","statRender":"renderizar","statNative":"Nativo","filterAll":"All","filterFatal":"fatal","filterJsError":"Error JS","filterPromise":"Promesa","filterRender":"renderizar","filterNative":"Nativo","handledBadge":"MANEJADO","fatalCrash":"ACCIDENTE FATAL","handledException":"EXCEPCIÓN MANEJADA","unknownException":"Excepción desconocida","report":"Informe","inspect":"inspeccionar","copyReport":"Copiar informe","copied":"copiado","clearTitle":"Borrar historial de fallos","clearMessage":"¿Está seguro de que desea borrar todos los registros de accidentes interceptados?","clearCancel":"Cancelar","clearConfirm":"Borrar todo","emptyTitle":"Cero accidentes detectados","emptySubtitle":"La protección global contra accidentes está activa. Todas las excepciones nativas y de JavaScript son interceptadas y protegidas.","emptySearchSubtitle":"Ninguna entrada de bloqueo coincidió con su consulta de búsqueda.","tabStack":"Pila ({{count}})","tabDiagnostics":"Diagnóstico","tabTrail":"Ruta ({{count}})","tabRawJson":"JSON sin formato","appFrames":"Marcos de aplicaciones ({{count}})","allFrames":"Todos los fotogramas ({{count}})","frameApp":"APP","frameLib":"LIB","anonymous":"<anónimo>","noStackTrace":"No se ha capturado ningún seguimiento de pila para este evento.","deviceEnvironment":"Dispositivo y entorno","platform":"Plataforma","osVersion":"Versión del sistema operativo","reactNative":"Reaccionar nativo","jsEngine":"Motor JS","hermesEngine":"Motor Hermes","jsc":"JSC","architecture":"Arquitectura","fabricNewArch":"Tela (Nuevo Arco)","paperLegacy":"Papel (heredado)","appState":"Estado de la aplicación","jsHeapMemory":"Memoria de montón JS","usedHeap":"Montón usado","totalHeap":"montón total","noBreadcrumbs":"No se registraron eventos de ruta de navegación antes de este bloqueo.","simNativeMessage":"Excepción fatal nativa simulada","simPromiseMessage":"Rechazo de promesa no controlado simulado","simRenderMessage":"Error de representación del componente React simulado","simJsMessage":"Excepción de JavaScript simulada","reportTitle":"INFORME DE DIAGNÓSTICO DE ACCIDENTE","reportErrorName":"Nombre del error:","reportMessage":"Mensaje:","reportType":"Tipo:","reportFatalYes":"SÍ (Fatal)","reportFatalNo":"NO (Atrapado/Manejado)","reportFatal":"fatal:","reportTimestamp":"Marca de tiempo:","reportUptime":"Tiempo de actividad de la aplicación:","reportUptimeValue":"{{seconds}} segundos","reportPlatform":"Plataforma:","reportReactNative":"Reaccionar nativo:","reportEnabled":"Habilitado","reportDisabled":"Discapacitado","reportArchitecture":"Arquitectura:","reportFabricNew":"Tela (nueva)","reportPaperLegacy":"Papel (heredado)","reportScreenSize":"Tamaño de pantalla:","reportAppState":"Estado de la aplicación:","reportJsMemory":"Memoria JS:","reportStackTrace":"SEGUIMIENTO DE PILA:","reportNoStackTrace":"No hay seguimiento de pila disponible","reportComponentHierarchy":"JERARQUÍA DE COMPONENTES:","reportRecentBreadcrumbs":"MIGAS DE PAN RECIENTES:","mdReportTitle":"🚨 Informe de fallo: {{name}}","mdStackTrace":"📦 Seguimiento de pila","mdComponentHierarchy":"🌲 Jerarquía de componentes","mdRecentBreadcrumbs":"👣 Migas de pan recientes","mdSeverityHandled":"MANEJADO","breadcrumbNavigation":"Navegó de \"{{from}}\" a \"{{to}}\"","breadcrumbAction":"Acción: {{actionType}}","unknown":"Desconocido","runtimeException":"Excepción de tiempo de ejecución","logFatalCrash":"Accidente fatal","logUnhandledError":"Error no controlado","errorNameFatal":"Error fatal","errorNameUnhandled":"Excepción no controlada","nativeCrashTitle":"Accidente nativo","nativeUncaughtException":"Excepción nativa no detectada","nativeException":"Excepción nativa","unhandledPromiseRejection":"Rechazo de promesa no controlado","filterTitle":"Filtros de fallos","filterSubtitle":"Diagnósticos e informes","filterReset":"Restablecer todo","filterTypeSection":"TIPO DE ACCIDENTE","filterTypeAll":"Todos los tipos","filterTimeSection":"HORIZONTE DEL TIEMPO","filterTimeAll":"Todo el tiempo","filterTime15m":"Últimos 15 minutos","filterTime1h":"Última 1 hora","filterTime24h":"Últimas 24 horas","filterTime7d":"últimos 7 días","filterPlatformSection":"PLATAFORMA","filterPlatformAll":"Todas las plataformas","filterPlatformIos":"iOS","filterPlatformAndroid":"androide","filterEngineSection":"MOTOR JS","filterEngineAll":"Todos los motores","filterSortSection":"ORDEN DE CLASIFICACIÓN","filterSortNewest":"Más reciente primero (predeterminado)","filterSortOldest":"El más viejo primero","filterDiscard":"Descartar","filterApply":"Aplicar ({{count}} fallas)","frameCopy":"Copiar","frameCopied":"copiado","componentHierarchy":"Jerarquía de componentes","fatalBadge":"FATAL","reportHermes":"Hermes:","mdSeverityFatal":"FATAL","filterEngineHermes":"Hermes","breadcrumbTrail":"RASTRO DE ACTIVIDAD Y REGISTRO DE EVENTOS","deviceDiagnostics":"DIAGNÓSTICO DEL DISPOSITIVO AL MOMENTO DEL ERROR","openInInspector":"Abrir en el inspector","testCrashSentinel":"PROBAR CENTINELA DE FALLOS","simulateJsCrash":"Simular Fallo JS","simulateNativeCrash":"Simular Fallo Nativo","simulatePromise":"Simular Promesa","simulateRender":"Simular Render"},"mediaGallery":{"all":"Todos ({{count}})","photos":"Fotos","videos":"Vídeos","gifs":"GIF","purge":"Purgar ({{size}})","purgeTitle":"Purgar todos los medios","purgeMessage":"Esto eliminará permanentemente todas las {{count}} capturas de pantalla, videos y GIF capturados ({{size}}). ¿Continuar?","noMediaTitle":"Sin medios capturados","noMediaDesc":"Utilice el botón Grabar foto o vídeo en la barra de herramientas para capturar capturas de pantalla de toda la aplicación, grabaciones de pantalla o GIF.","deleted":"Elemento multimedia eliminado","allPurged":"Todos los medios capturados eliminados","converting":"Convirtiendo...","convertToGif":"Convertir a GIF","playVideo":"Reproducir vídeo","playError":"No se puede reproducir el vídeo","convertedSuccess":"¡Convertido a GIF animado con éxito!","convertFailed":"No se pudo convertir a GIF","share":"Compartir","copyUri":"Copiar URI","uriCopied":"URI del archivo copiado al portapapeles","delete":"Eliminar","deleteSelected":"Eliminar ({{count}})","deleteSelectedTitle":"Eliminar seleccionado","deleteSelectedMessage":"¿Estás seguro de que deseas eliminar {{count}} elementos multimedia seleccionados?","deletedCount":"{{count}} elementos multimedia eliminados","deleteTitle":"Eliminar medios","deleteMessage":"¿Estás seguro de que deseas eliminar {{filename}}?","shareUnavailable":"Compartir no está disponible en este dispositivo","showingResults":"Mostrando resultados de {{count}}","showingFilteredResults":"Mostrando {{count}} de {{total}} resultados","selectedOfResults":"{{selected}} seleccionado de {{total}} resultados","minimize":"minimizar","expand":"Expandir pantalla completa","collapse":"Salir de pantalla completa","speed":"Velocidad","loop":"Bucle","pause":"Pausa","play":"Jugar","hideGridlines":"Ocultar cuadrícula de Instagram (3×3)","showGridlines":"Mostrar cuadrícula de Instagram (3×3)","hideWatermark":"Ocultar marca de agua QA","showWatermark":"Mostrar marca de agua QA","exportGif":"Exportar como GIF animado","snapshotFrame":"Capturar fotograma (PNG)","tapToPlaceStep":"Toca o arrastra en la imagen para colocar el paso","resetAdjustments":"Ajustes restablecidos","tagPlaced":"Etiqueta colocada","tapToAddText":"Toca cualquier lugar de la imagen para agregar texto","textAdded":"Texto superpuesto agregado","redone":"Rehecho","undone":"Deshecho","videoSaved":"Video editado guardado en la galería","savedSuccess":"Guardado con éxito","saveFailed":"Error al guardar el medio","snapshotSaved":"Fotograma guardado en la galería","snapshotFailed":"Error al capturar el fotograma","shareSuccess":"Medio compartido con éxito","cropFailed":"Error al recortar el medio","croppedSuccess":"Medio recortado con éxito","resizeFailed":"Error al redimensionar","resizedSuccess":"Medio redimensionado con éxito","trimFailed":"Error al recortar el video","trimmedSuccess":"Video recortado con éxito","muteFailed":"Error al actualizar audio del video","mutedSuccess":"Audio modificado con éxito","resetSuccess":"Imagen restablecida al original","openCameraRoll":"Abrir carrete","importPhotos":"Importar fotos de la biblioteca","importVideos":"Importar videos de la biblioteca","importedPhoto":"Foto importada del carrete","importedVideo":"Video importado del carrete","importFailed":"Error al importar medios","preview":"Vista previa"},"socket":{"messages":"Mensajes","overview":"Descripción general","params":"parámetros","rawAndCode":"Sin formato y código","totalFrames":"MARCOS TOTALES","sentRecv":"ENVIADO / RECV","dataTransferred":"DATOS TRANSFERIDOS","searchFramesPlaceholder":"Buscar cargas útiles de fotogramas o nombres de eventos...","sent":"Enviado","recv":"recv","emptyFrames":"No se capturaron fotogramas para esta conexión","searchSocketsPlaceholder":"Buscar URL o mensajes de WebSocket...","noSockets":"Sin conexiones WebSocket","noSocketsDesc":"Las conexiones WebSocket, Socket.IO y WSS capturadas aparecerán aquí en tiempo real.","noMatching":"No hay WebSockets coincidentes","adjustSearchFilter":"Intente ajustar su consulta de búsqueda o filtrar chips.","simulateTraffic":"Simular el tráfico de WebSocket de demostración","clearTitle":"Borrar todos los registros de WebSocket","clearMessage":"¿Está seguro de que desea eliminar todas las sesiones de WebSocket grabadas?","cleared":"Todos los registros de WebSocket borrados","deleteSelectedTitle":"Eliminar WebSockets seleccionados","deleteSelectedMsg":"¿Está seguro de que desea eliminar {{count}} registros de WebSocket seleccionados?","filterTitle":"Filtrar conexiones WebSocket","showingConnections":"Mostrando {{count}} conexiones","showingFilteredConnections":"Mostrando {{filtered}} de {{total}} conexiones","deletedCount":"{{count}} registros de WebSocket eliminados","copiedUrls":"{{count}} URLs copiadas","webSocketTraffic":"Tráfico WebSocket ({{count}} conexiones)","title":"WebSocket","connectionDetails":"DETALLES DE LA CONEXIÓN","url":"URL","clientEngine":"Motor cliente","readyState":"Estado","connectedAt":"Conectado a las","closedAt":"Cerrado a las","closeCodeReason":"Código y motivo de cierre","subprotocols":"Subprotocolos","callerStack":"Pila de llamada","error":"Error","handshakeHeaders":"Encabezados del Handshake","handshakeParams":"PARÁMETROS DE CONSULTA DEL HANDSHAKE","noQueryParams":"No se pasaron parámetros de consulta en la URL de conexión","jsClientCode":"CÓDIGO CLIENTE JAVASCRIPT","terminalWscat":"COMANDO DE TERMINAL WSCAT","rawDump":"VOLCADO JSON DE CONEXIÓN BRUTA"},"push":{"title":"Notificaciones push","preview":"Vista previa","payload":"Carga útil personalizada","deliveryMetadata":"Metadatos de entrega y mensaje","rawPayload":"Carga útil sin procesar","link":"Enlace","appNotification":"Notificación de aplicación","now":"ahora","domainFields":"Campos específicos del dominio","searchPlaceholder":"Buscar notificaciones push...","noNotifications":"Sin notificaciones automáticas","noNotificationsDesc":"Los eventos push capturados de Firebase FCM, Apple APN, OneSignal y personalizados aparecerán aquí en tiempo real.","filterTitle":"Filtrar notificaciones push","clearTitle":"Borrar historial de push","clearMessage":"¿Está seguro de que desea borrar todos los registros de notificaciones push?","cleared":"Historial de notificaciones push borrado","foreground":"Primer plano","background":"Segundo plano","quit":"Cerrado","messageId":"ID del mensaje:","sourceDomain":"Origen / Dominio:","appState":"Estado de la app:","actionType":"Tipo de acción:","timestamp":"Marca de tiempo:","channelId":"ID del canal:","sound":"Sonido:","badgeCount":"Contador de insignias:","collapseKey":"Clave de colapso:","noCustomData":"No se encontraron datos clave-valor personalizados en la carga útil","noMatching":"Sin notificaciones push coincidentes","adjustSearchFilter":"Intenta ajustar tu búsqueda o los filtros."},"debugging":{"title":"Depuración y herramientas","buildSuccess":"¡Compilación de APK generada con éxito!","buildFailed":"Error de compilación: {{error}}","buildCancelled":"Construcción cancelada por el usuario","apkInstallerTitle":"Instalador de APK Multidispositivo","apkInstallerSubtitle":"Escanea el código QR con otro dispositivo Android para descargar","liveMetro":"Metro en Vivo","hostIp":"IP HOST","port":"PUERTO","apkSize":"TAMAÑO APK","status":"ESTADO","ready":"Listo","qrCodeTitle":"CÓDIGO QR Y DESCARGA DIRECTA","buildGeneratorTitle":"GENERADOR DE COMPILACIÓN (GRADLE)","ready100":"100% Listo","releaseBuild":"Release (assembleRelease)","debugBuild":"Debug (assembleDebug)","cleanBuild":"(./gradlew clean)","gradleVerboseOutput":"SALIDA DETALLADA DE GRADLE","waitingForGradle":"Esperando salida de Gradle...","stopBuild":"Detener Compilación","sameWifiNote":"Asegúrate de que ambos dispositivos estén en la misma red Wi-Fi."},"about":{"title":"Acerca de y especificaciones","subtitle":"Información del paquete, especificaciones de ejecución y diagnóstico","heroTitle":"Inspector integrado","heroDescription":"La herramienta todo-en-uno de depuración, registro y QA en el dispositivo para aplicaciones React Native y Expo.","upToDate":"Actualizado","versionAvailable":"v{{version}} Disponible","copyUpgradeCommand":"Copiar comando de actualización (v{{version}})","copiedUpgradeCommand":"¡Comando npm copiado!","appInformation":"INFORMACIÓN DE LA APP","appName":"Nombre de la app","packageIdentifier":"Identificador del paquete","appVersion":"Versión de la app","environment":"Entorno","developmentDebug":"Desarrollo (Depuración)","productionRelease":"Producción (Release)","platform":"Plataforma","googleAndroid":"android","features":"QUÉ HACE EL INSPECTOR","featureNetwork":"Monitor de tráfico de red","featureNetworkDesc":"Inspecciona peticiones HTTP y HTTPS, respuestas, encabezados y latencia del servidor.","featureConsole":"Registro de consola","featureConsoleDesc":"Ve registros de consola, advertencias y errores en tiempo real con trazas de pila formateadas.","featureAnalytics":"Telemetría analítica","featureAnalyticsDesc":"Rastrea eventos de Firebase y analíticos personalizados en vivo en el dispositivo.","featureRedux":"Estado y acciones de Redux","featureReduxDesc":"Inspecciona acciones despachadas, cargas útiles y diferencias del árbol de estado.","featureCapture":"Captura de pantalla y video","featureCaptureDesc":"Toma capturas de pantalla y graba sesiones de prueba para compartir con equipos de QA.","featureCrash":"Captura de fallos y diagnóstico","featureCrashDesc":"Protege contra fallos nativos y proporciona métricas de salud del dispositivo.","githubSub":"Estrella y código fuente","npmRegistry":"Registro NPM","npmRegistrySub":"Actualizaciones del paquete","documentation":"Documentación","documentationSub":"Guía de integración","reportIssue":"Reportar problema","reportIssueSub":"Ayuda y soporte","releaseNotes":"Notas de la versión","releaseNotesSub":"Novedades","copyInstall":"Copiar instalación","copyInstallSub":"comando npm / yarn","copiedInstallCommand":"¡Comando de instalación copiado!","footerLicense":"React Native In-App Inspector · Licencia MIT","footerTagline":"Herramienta de depuración sin configuración","appleIos":"Apple iOS","github":"GitHub"},"telemetry":{"fps":"FPS","liveTraffic":"RED EN VIVO","ram":"RAM","active":"ACTIVO","networkSpeed":"Velocidad de red","fpsLive":"FPS en vivo","ramUsage":"Uso de RAM","battery":"Batería","livePerformanceStrip":"Franja de rendimiento en vivo"},"media":{"animatedGif":"GIF ANIMADO","cropDefect":"Recortar defecto","rotate90":"Rotar 90°","redactPii":"Ocultar PII","trim5s":"Recortar 5s","muteAudio":"Silenciar audio","toGif":"A GIF","play":"Reproducir","trim":"Recortar","audio":"Audio","speed":"Velocidad","snapshot":"Instantánea","stopAndSave":"Detener y Guardar","takeScreenshot":"Capturar Pantalla","takeScreenshotSub":"PNG sin pérdida","recordScreenVideo":"Grabar Pantalla","recordScreenVideoSub":"MP4 con audio","importFromCameraRoll":"Importar de Galería","importFromCameraRollSub":"Fotos y videos del dispositivo","zeroOverhead":"⚡ Cero Sobrecarga","cropAndAnnotate":"✂️ Recortar y Anotar","convertToGif":"🎞️ Convertir a GIF","first3s":"Primeros 3s","first5s":"Primeros 5s","first10s":"Primeros 10s","applyTrim":"Aplicar Recorte","stripAudio":"Eliminar Audio","playVideo":"Reproducir Video","trimClip":"Recortar Clip","exportGif":"Exportar GIF","brush":"Pincel","highlighter":"Resaltador","arrow":"Flecha","rectangle":"Rectángulo","circle":"Círculo","spotlight":"Enfoque","redact":"Censurar","pixelate":"Pixelar","grid3x3":"Cuadrícula 3×3","flipH":"Voltear H","flipV":"Voltear V","customNote":"+ Nota Personalizada","markup":"Marcado","crop":"Recortar","adjust":"Ajustar","addText":"Agregar Texto","addTextNoteTitle":"Agregar Nota de Texto","placeText":"Colocar Texto","textPlaceholder":"ej. Defecto: Botón superpuesto","purgeAll":"Purgar Todo","snapshotCurrentFrame":"Capturar Fotograma Actual (PNG)"},"language":{"confirmTitle":"¿Cambiar idioma?","confirmMessage":"¿Deseas cambiar el idioma del inspector a {{newLang}}?","confirmApply":"Aplicar idioma","current":"Actual","new":"Nuevo"},"support":{"title":"Soporte y Comunidad","subtitle":"React Native In-App Inspector","heroDescription":"Creado con pasión para ofrecer una suite completa de depuración en el dispositivo para equipos móviles de todo el mundo. Tus patrocinios, estrellas y comentarios impulsan mejoras continuas y lanzamientos rápidos.","sponsor":"Patrocinar en GitHub","sponsorBadge":"PATROCINAR","sponsorDesc":"Apoya el mantenimiento continuo, nuevas funciones y mejoras.","sponsorBtn":"Convertirse en patrocinador","copiedSponsor":"¡Enlace de GitHub Sponsors copiado!","star":"Destacar en GitHub","starDesc":"Destaca nuestro repositorio para que más desarrolladores descubran esta herramienta.","issues":"Reportar problema / Sugerencia","issuesDesc":"¿Encontraste un error o tienes una idea? Abre un issue en GitHub.","docs":"Documentación oficial","docsDesc":"Guías de funciones interactivas, sintaxis de búsqueda y configuración.","contact":"Contactar al autor","contactDesc":"vengatmacuser@gmail.com • Soporte directo y consultas empresariales.","waysToSupport":"FORMAS DE CONTRIBUIR Y APOYAR","npmRegistry":"Registro de paquetes NPM","npmRegistryDesc":"Explora notas de versión, tamaños de tarball y estadísticas.","shareTitle":"COMPARTE CON OTROS","shareDesc":"Ayuda a tus compañeros de equipo y especialistas de control de calidad a depurar redes, consola y Redux más rápido.","shareWithTeam":"Compartir con el equipo","copiedRepo":"¡Enlace del repositorio copiado!","copyRepo":"Copiar URL del repo","maintainer":"MANTENEDOR DEL PROYECTO","sendEmail":"Enviar correo","copiedEmail":"¡Dirección de correo copiada!","copyEmail":"Copiar correo","close":"Cerrar","supportOpenSource":"APOYAR CÓDIGO ABIERTO","enjoyingTitle":"¿Te gusta In-App Inspector?","enjoyingSubtitle":"Si esta herramienta te ahorra tiempo, por favor danos una estrella en GitHub y npm.","githubStar":"Estrella en GitHub","npmPackage":"Paquete npm","starOnGithubNpm":"Estrella en GitHub y npm","alreadyStarred":"Ya di mi estrella","remindMeLater":"Recordar Más Tarde","dontAskAgain":"No volver a preguntar","mitLicense":"LICENCIA MIT","zeroConfig":"CERO CONFIGURACIÓN","fabricTurbo":"FABRIC Y TURBO","recommended":"RECOMENDADO","creatorMaintainer":"Creador y Mantenedor Principal • @vengatmacuser","free100":"100% Gratis"},"perf":{"title":"Estudio de Rendimiento y FPS","target60Fps":"Objetivo 60 FPS","triggerGc":"GC","gcTriggered":"Recolección de basura ejecutada","resetStats":"Reiniciar","statsReset":"Contadores reiniciados","copySummary":"Copiar","summaryCopied":"Resumen copiado al portapapeles","exportReport":"Exportar","shareUnavailable":"Compartir no disponible","liveApm":"APM EN VIVO","statusExcellent":"EXCELENTE","statusGood":"BUENO","statusFair":"REGULAR","statusPoor":"DEFICIENTE","descExcellent":"Los hilos de interfaz y JS son fluidos. Cero cuellos de botella.","descGood":"Buen rendimiento con leves caídas de frames en tareas pesadas.","descPoor":"Jank detectado. El bucle de eventos JS está bloqueado.","session":"Sesión","apdex":"Apdex","uiFps":"FPS de UI","avg":"Prom","min":"Mín","frameTime":"Tiempo de Frame","target":"Objetivo","jsThreadLag":"Retardo Hilo JS","peak":"Pico","jsHeap":"Memoria JS","engineProtected":"Protegido por motor","vsyncBudgetConsumption":"16.6ms Vsync Budget Consumption","budgetHeadroomAvailable":"budget headroom available","budgetExceededBy":"Budget exceeded by","budgetTarget":"Budget: 16.6ms","tabOverview":"Resumen y Vitales","tabPercentiles":"Percentiles y Latencia","tabEngine":"Motor y Memoria","tabJanks":"Registro de Janks","tabBenchmark":"Pruebas de Estrés","datadogVitalsTitle":"Métricas Vitales Datadog y New Relic","datadogVitalsDesc":"Real-time Mobile APM metrics computed via official New Relic Apdex (T=16.6ms) and Datadog RUM Mobile Vitals algorithms.","satisfiedFrames":"Satisfechos (≤16.6ms)","slowFrames":"Frames Lentos (17-66ms)","frozenFrames":"Frames Congelados (>66ms)","longTasks":"Tareas Largas JS (>50ms)","distributionTitle":"Distribución de Duración de Frames","framesSampled":"frames muestreados","ultraSmooth":"Ultra fluido","normalUiLayout":"Diseño UI normal","minorVariance":"Variación menor","droppedFrame":"Frame perdido","frozenFrame":"Frame congelado","percentilesTitle":"Matriz de Percentiles de Latencia","percentilesSubtitle":"Computed from Live Frames","percentilesDesc":"Exact mathematical distribution of frame times sampled from the active rolling window.","p50Label":"p50 (Mediana)","p50Sub":"50% of frames faster","p90Label":"p90","p90Sub":"90% of frames faster","p95Label":"p95","p95Sub":"95% of frames faster","p99Label":"p99 (Latencia cola)","p99Sub":"Worst 1% outlier frames","realtimeFrameTimes":"Tiempos de Frame en Tiempo Real","target60FpsLabel":"16.6ms Target (60fps)","past50Frames":"← Past 50 Frames","nowInstant":"Now (Instantaneous) →","smoothLegend":"Fluido (<18ms)","jankLegend":"Jank (18-33ms)","frozenLegend":"Congelado (>33ms)","jsResponsiveness":"Capacidad de Respuesta JS","instantaneous":"⚡ Instantáneo","lagUnit":"ms Lag","avgJsQueueLag":"Retardo Promedio Cola JS","peakLagSpike":"Pico Máximo de Retardo","engineTelemetryTitle":"Telemetría de Motor y Runtime","engineTelemetryDesc":"Deep inspection of the active JavaScript Virtual Machine, memory allocations, and React Native architecture.","jsEngine":"Motor JavaScript","architectureMode":"Modo de Arquitectura","turboModulesBridge":"Puente TurboModules","turboModulesEnabled":"⚡ Enabled (JSI Direct)","standardBridge":"Standard Bridge","liveHeapSize":"Tamaño Heap en Vivo","totalHeapAllocated":"Total Heap Asignado","sessionPeakHeap":"Pico Máximo Heap","gcCollections":"Recolecciones GC","gcCpuTime":"Tiempo CPU GC","nativeManaged":"Native Managed","triggerHermesGc":"Ejecutar Recolección Hermes","invokedHermesGc":"Invoked Hermes GC cycle","jankIncidentLog":"Registro de Incidentes de Jank","janksCount":"janks","allFilter":"TODOS","moderateFilter":"MODERADO","severeFilter":"SEVERO","frozenFilter":"CONGELADO","zeroJanksDetected":"Cero Janks Detectados","zeroJanksDesc":"All frames rendered smoothly within the target vsync budget.","inspect":"Inspeccionar","hide":"Ocultar","incidentDiagnostics":"Diagnóstico de Incidente","delayedBy":"Frame delayed by","beyondDeadline":"beyond standard vsync deadline","stressTitle":"Suite de Pruebas de Estrés y Benchmark","stressDesc":"Trigger synchronous workloads or render bursts to watch the live FPS and JS lag meters react dynamically.","jsStressTitle":"Estrés Bucle JS (120ms)","jsStressSub":"Simulates heavy compute / blocking synchronous loop","jsStressRan":"Ran 120ms synchronous JS blocking loop","renderStressTitle":"Ráfaga de Re-render (25 frames)","renderStressSub":"Simulates rapid state & layout reconciliation passes","renderStressRan":"Fired 25 rapid re-render cycles"},"logs":{"logProperties":"Propiedades del Registro"}}