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