react-native-debug-toolkit 0.6.4 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +149 -211
- package/README.zh-CN.md +150 -171
- package/lib/commonjs/components/ClipboardTab.js +91 -0
- package/lib/commonjs/components/ClipboardTab.js.map +1 -0
- package/lib/commonjs/components/ConsoleLogTab.js +162 -0
- package/lib/commonjs/components/ConsoleLogTab.js.map +1 -0
- package/lib/commonjs/components/DebugPanel.js +230 -0
- package/lib/commonjs/components/DebugPanel.js.map +1 -0
- package/lib/commonjs/components/DebugView.js +66 -0
- package/lib/commonjs/components/DebugView.js.map +1 -0
- package/lib/commonjs/components/EnvironmentTab.js +287 -0
- package/lib/commonjs/components/EnvironmentTab.js.map +1 -0
- package/lib/commonjs/components/FeatureTabBar.js +182 -0
- package/lib/commonjs/components/FeatureTabBar.js.map +1 -0
- package/lib/commonjs/components/FloatIcon.js +187 -0
- package/lib/commonjs/components/FloatIcon.js.map +1 -0
- package/lib/commonjs/components/FloatPanelView.js +214 -0
- package/lib/commonjs/components/FloatPanelView.js.map +1 -0
- package/lib/commonjs/components/NavigationLogTab.js +131 -0
- package/lib/commonjs/components/NavigationLogTab.js.map +1 -0
- package/lib/commonjs/components/NetworkLogTab.js +404 -0
- package/lib/commonjs/components/NetworkLogTab.js.map +1 -0
- package/lib/commonjs/components/ThirdPartyLibsTab.js +97 -0
- package/lib/commonjs/components/ThirdPartyLibsTab.js.map +1 -0
- package/lib/commonjs/components/TrackLogTab.js +230 -0
- package/lib/commonjs/components/TrackLogTab.js.map +1 -0
- package/lib/commonjs/components/ZustandLogTab.js +311 -0
- package/lib/commonjs/components/ZustandLogTab.js.map +1 -0
- package/lib/commonjs/components/shared/CollapsibleSection.js +84 -0
- package/lib/commonjs/components/shared/CollapsibleSection.js.map +1 -0
- package/lib/commonjs/components/shared/CopyButton.js +64 -0
- package/lib/commonjs/components/shared/CopyButton.js.map +1 -0
- package/lib/commonjs/components/shared/JsonView.js +157 -0
- package/lib/commonjs/components/shared/JsonView.js.map +1 -0
- package/lib/commonjs/components/shared/LogListScreen.js +174 -0
- package/lib/commonjs/components/shared/LogListScreen.js.map +1 -0
- package/lib/commonjs/core/DebugToolkit.js +122 -0
- package/lib/commonjs/core/DebugToolkit.js.map +1 -0
- package/lib/commonjs/core/DebugToolkitProvider.js +66 -0
- package/lib/commonjs/core/DebugToolkitProvider.js.map +1 -0
- package/lib/commonjs/features/ClipboardFeature.js +21 -0
- package/lib/commonjs/features/ClipboardFeature.js.map +1 -0
- package/lib/commonjs/features/ConsoleLogFeature.js +115 -0
- package/lib/commonjs/features/ConsoleLogFeature.js.map +1 -0
- package/lib/commonjs/features/EnvironmentFeature.js +160 -0
- package/lib/commonjs/features/EnvironmentFeature.js.map +1 -0
- package/lib/commonjs/features/NavigationLogFeature.js +39 -0
- package/lib/commonjs/features/NavigationLogFeature.js.map +1 -0
- package/lib/commonjs/features/NetworkFeature.js +107 -0
- package/lib/commonjs/features/NetworkFeature.js.map +1 -0
- package/lib/commonjs/features/ThirdPartyLibsFeature.js +51 -0
- package/lib/commonjs/features/ThirdPartyLibsFeature.js.map +1 -0
- package/lib/commonjs/features/TrackFeature.js +34 -0
- package/lib/commonjs/features/TrackFeature.js.map +1 -0
- package/lib/commonjs/features/ZustandLogFeature.js +59 -0
- package/lib/commonjs/features/ZustandLogFeature.js.map +1 -0
- package/lib/commonjs/hooks/useNavigationLogger.js +78 -0
- package/lib/commonjs/hooks/useNavigationLogger.js.map +1 -0
- package/lib/commonjs/hooks/useSlideDetailAnimation.js +53 -0
- package/lib/commonjs/hooks/useSlideDetailAnimation.js.map +1 -0
- package/lib/commonjs/index.js +152 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/initialize.js +84 -0
- package/lib/commonjs/initialize.js.map +1 -0
- package/lib/commonjs/interceptors/networkInterceptor.js +466 -0
- package/lib/commonjs/interceptors/networkInterceptor.js.map +1 -0
- package/lib/commonjs/native/NativeDebugLibs.js +58 -0
- package/lib/commonjs/native/NativeDebugLibs.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/types/index.js +6 -0
- package/lib/commonjs/types/index.js.map +1 -0
- package/lib/commonjs/utils/colors.js +48 -0
- package/lib/commonjs/utils/colors.js.map +1 -0
- package/lib/commonjs/utils/copyToComputer.js +97 -0
- package/lib/commonjs/utils/copyToComputer.js.map +1 -0
- package/lib/commonjs/utils/createChannelFeature.js +48 -0
- package/lib/commonjs/utils/createChannelFeature.js.map +1 -0
- package/lib/commonjs/utils/createEventChannel.js +21 -0
- package/lib/commonjs/utils/createEventChannel.js.map +1 -0
- package/lib/commonjs/utils/createObservableStore.js +38 -0
- package/lib/commonjs/utils/createObservableStore.js.map +1 -0
- package/lib/commonjs/utils/layout.js +8 -0
- package/lib/commonjs/utils/layout.js.map +1 -0
- package/lib/commonjs/utils/safeStringify.js +27 -0
- package/lib/commonjs/utils/safeStringify.js.map +1 -0
- package/lib/commonjs/utils/urlRewriterRegistry.js +14 -0
- package/lib/commonjs/utils/urlRewriterRegistry.js.map +1 -0
- package/lib/module/components/ClipboardTab.js +86 -0
- package/lib/module/components/ClipboardTab.js.map +1 -0
- package/lib/module/components/ConsoleLogTab.js +157 -0
- package/lib/module/components/ConsoleLogTab.js.map +1 -0
- package/lib/module/components/DebugPanel.js +225 -0
- package/lib/module/components/DebugPanel.js.map +1 -0
- package/lib/module/components/DebugView.js +61 -0
- package/lib/module/components/DebugView.js.map +1 -0
- package/lib/module/components/EnvironmentTab.js +282 -0
- package/lib/module/components/EnvironmentTab.js.map +1 -0
- package/lib/module/components/FeatureTabBar.js +177 -0
- package/lib/module/components/FeatureTabBar.js.map +1 -0
- package/lib/module/components/FloatIcon.js +182 -0
- package/lib/module/components/FloatIcon.js.map +1 -0
- package/lib/module/components/FloatPanelView.js +209 -0
- package/lib/module/components/FloatPanelView.js.map +1 -0
- package/lib/module/components/NavigationLogTab.js +126 -0
- package/lib/module/components/NavigationLogTab.js.map +1 -0
- package/lib/module/components/NetworkLogTab.js +399 -0
- package/lib/module/components/NetworkLogTab.js.map +1 -0
- package/lib/module/components/ThirdPartyLibsTab.js +91 -0
- package/lib/module/components/ThirdPartyLibsTab.js.map +1 -0
- package/lib/module/components/TrackLogTab.js +225 -0
- package/lib/module/components/TrackLogTab.js.map +1 -0
- package/lib/module/components/ZustandLogTab.js +306 -0
- package/lib/module/components/ZustandLogTab.js.map +1 -0
- package/lib/module/components/shared/CollapsibleSection.js +78 -0
- package/lib/module/components/shared/CollapsibleSection.js.map +1 -0
- package/lib/module/components/shared/CopyButton.js +58 -0
- package/lib/module/components/shared/CopyButton.js.map +1 -0
- package/lib/module/components/shared/JsonView.js +152 -0
- package/lib/module/components/shared/JsonView.js.map +1 -0
- package/lib/module/components/shared/LogListScreen.js +169 -0
- package/lib/module/components/shared/LogListScreen.js.map +1 -0
- package/lib/module/core/DebugToolkit.js +118 -0
- package/lib/module/core/DebugToolkit.js.map +1 -0
- package/lib/module/core/DebugToolkitProvider.js +60 -0
- package/lib/module/core/DebugToolkitProvider.js.map +1 -0
- package/lib/module/features/ClipboardFeature.js +16 -0
- package/lib/module/features/ClipboardFeature.js.map +1 -0
- package/lib/module/features/ConsoleLogFeature.js +109 -0
- package/lib/module/features/ConsoleLogFeature.js.map +1 -0
- package/lib/module/features/EnvironmentFeature.js +156 -0
- package/lib/module/features/EnvironmentFeature.js.map +1 -0
- package/lib/module/features/NavigationLogFeature.js +32 -0
- package/lib/module/features/NavigationLogFeature.js.map +1 -0
- package/lib/module/features/NetworkFeature.js +101 -0
- package/lib/module/features/NetworkFeature.js.map +1 -0
- package/lib/module/features/ThirdPartyLibsFeature.js +46 -0
- package/lib/module/features/ThirdPartyLibsFeature.js.map +1 -0
- package/lib/module/features/TrackFeature.js +27 -0
- package/lib/module/features/TrackFeature.js.map +1 -0
- package/lib/module/features/ZustandLogFeature.js +53 -0
- package/lib/module/features/ZustandLogFeature.js.map +1 -0
- package/lib/module/hooks/useNavigationLogger.js +74 -0
- package/lib/module/hooks/useNavigationLogger.js.map +1 -0
- package/lib/module/hooks/useSlideDetailAnimation.js +50 -0
- package/lib/module/hooks/useSlideDetailAnimation.js.map +1 -0
- package/lib/module/index.js +28 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/initialize.js +80 -0
- package/lib/module/initialize.js.map +1 -0
- package/lib/module/interceptors/networkInterceptor.js +460 -0
- package/lib/module/interceptors/networkInterceptor.js.map +1 -0
- package/lib/module/native/NativeDebugLibs.js +54 -0
- package/lib/module/native/NativeDebugLibs.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/types/index.js +4 -0
- package/lib/module/types/index.js.map +1 -0
- package/lib/module/utils/colors.js +43 -0
- package/lib/module/utils/colors.js.map +1 -0
- package/lib/module/utils/copyToComputer.js +91 -0
- package/lib/module/utils/copyToComputer.js.map +1 -0
- package/lib/module/utils/createChannelFeature.js +44 -0
- package/lib/module/utils/createChannelFeature.js.map +1 -0
- package/lib/module/utils/createEventChannel.js +17 -0
- package/lib/module/utils/createEventChannel.js.map +1 -0
- package/lib/module/utils/createObservableStore.js +34 -0
- package/lib/module/utils/createObservableStore.js.map +1 -0
- package/lib/module/utils/layout.js +4 -0
- package/lib/module/utils/layout.js.map +1 -0
- package/lib/module/utils/safeStringify.js +23 -0
- package/lib/module/utils/safeStringify.js.map +1 -0
- package/lib/module/utils/urlRewriterRegistry.js +10 -0
- package/lib/module/utils/urlRewriterRegistry.js.map +1 -0
- package/lib/typescript/src/components/ClipboardTab.d.ts +4 -0
- package/lib/typescript/src/components/ClipboardTab.d.ts.map +1 -0
- package/lib/typescript/src/components/ConsoleLogTab.d.ts +4 -0
- package/lib/typescript/src/components/ConsoleLogTab.d.ts.map +1 -0
- package/lib/typescript/src/components/DebugPanel.d.ts +9 -0
- package/lib/typescript/src/components/DebugPanel.d.ts.map +1 -0
- package/lib/typescript/src/components/DebugView.d.ts +19 -0
- package/lib/typescript/src/components/DebugView.d.ts.map +1 -0
- package/lib/typescript/src/components/EnvironmentTab.d.ts +4 -0
- package/lib/typescript/src/components/EnvironmentTab.d.ts.map +1 -0
- package/lib/typescript/src/components/FeatureTabBar.d.ts +13 -0
- package/lib/typescript/src/components/FeatureTabBar.d.ts.map +1 -0
- package/lib/typescript/src/components/FloatIcon.d.ts +12 -0
- package/lib/typescript/src/components/FloatIcon.d.ts.map +1 -0
- package/lib/typescript/src/components/FloatPanelView.d.ts +9 -0
- package/lib/typescript/src/components/FloatPanelView.d.ts.map +1 -0
- package/lib/typescript/src/components/NavigationLogTab.d.ts +4 -0
- package/lib/typescript/src/components/NavigationLogTab.d.ts.map +1 -0
- package/lib/typescript/src/components/NetworkLogTab.d.ts +4 -0
- package/lib/typescript/src/components/NetworkLogTab.d.ts.map +1 -0
- package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts +4 -0
- package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts.map +1 -0
- package/lib/typescript/src/components/TrackLogTab.d.ts +4 -0
- package/lib/typescript/src/components/TrackLogTab.d.ts.map +1 -0
- package/lib/typescript/src/components/ZustandLogTab.d.ts +4 -0
- package/lib/typescript/src/components/ZustandLogTab.d.ts.map +1 -0
- package/lib/typescript/src/components/shared/CollapsibleSection.d.ts +9 -0
- package/lib/typescript/src/components/shared/CollapsibleSection.d.ts.map +1 -0
- package/lib/typescript/src/components/shared/CopyButton.d.ts +12 -0
- package/lib/typescript/src/components/shared/CopyButton.d.ts.map +1 -0
- package/lib/typescript/src/components/shared/JsonView.d.ts +6 -0
- package/lib/typescript/src/components/shared/JsonView.d.ts.map +1 -0
- package/lib/typescript/src/components/shared/LogListScreen.d.ts +21 -0
- package/lib/typescript/src/components/shared/LogListScreen.d.ts.map +1 -0
- package/lib/typescript/src/core/DebugToolkit.d.ts +20 -0
- package/lib/typescript/src/core/DebugToolkit.d.ts.map +1 -0
- package/lib/typescript/src/core/DebugToolkitProvider.d.ts +15 -0
- package/lib/typescript/src/core/DebugToolkitProvider.d.ts.map +1 -0
- package/lib/typescript/src/features/ClipboardFeature.d.ts +7 -0
- package/lib/typescript/src/features/ClipboardFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/ConsoleLogFeature.d.ts +9 -0
- package/lib/typescript/src/features/ConsoleLogFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/EnvironmentFeature.d.ts +8 -0
- package/lib/typescript/src/features/EnvironmentFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/NavigationLogFeature.d.ts +10 -0
- package/lib/typescript/src/features/NavigationLogFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/NetworkFeature.d.ts +15 -0
- package/lib/typescript/src/features/NetworkFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts +3 -0
- package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/TrackFeature.d.ts +14 -0
- package/lib/typescript/src/features/TrackFeature.d.ts.map +1 -0
- package/lib/typescript/src/features/ZustandLogFeature.d.ts +31 -0
- package/lib/typescript/src/features/ZustandLogFeature.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useNavigationLogger.d.ts +13 -0
- package/lib/typescript/src/hooks/useNavigationLogger.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts +11 -0
- package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +26 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/initialize.d.ts +32 -0
- package/lib/typescript/src/initialize.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/networkInterceptor.d.ts +18 -0
- package/lib/typescript/src/interceptors/networkInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/native/NativeDebugLibs.d.ts +11 -0
- package/lib/typescript/src/native/NativeDebugLibs.d.ts.map +1 -0
- package/lib/typescript/src/types/index.d.ts +109 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -0
- package/lib/typescript/src/utils/colors.d.ts +21 -0
- package/lib/typescript/src/utils/colors.d.ts.map +1 -0
- package/lib/typescript/src/utils/copyToComputer.d.ts +30 -0
- package/lib/typescript/src/utils/copyToComputer.d.ts.map +1 -0
- package/lib/typescript/src/utils/createChannelFeature.d.ts +18 -0
- package/lib/typescript/src/utils/createChannelFeature.d.ts.map +1 -0
- package/lib/typescript/src/utils/createEventChannel.d.ts +7 -0
- package/lib/typescript/src/utils/createEventChannel.d.ts.map +1 -0
- package/lib/typescript/src/utils/createObservableStore.d.ts +9 -0
- package/lib/typescript/src/utils/createObservableStore.d.ts.map +1 -0
- package/lib/typescript/src/utils/layout.d.ts +2 -0
- package/lib/typescript/src/utils/layout.d.ts.map +1 -0
- package/lib/typescript/src/utils/safeStringify.d.ts +6 -0
- package/lib/typescript/src/utils/safeStringify.d.ts.map +1 -0
- package/lib/typescript/src/utils/urlRewriterRegistry.d.ts +7 -0
- package/lib/typescript/src/utils/urlRewriterRegistry.d.ts.map +1 -0
- package/package.json +67 -24
- package/src/components/ClipboardTab.tsx +81 -0
- package/src/components/ConsoleLogTab.tsx +95 -0
- package/src/components/DebugPanel.tsx +215 -0
- package/src/components/DebugView.tsx +80 -0
- package/src/components/EnvironmentTab.tsx +276 -0
- package/src/components/FeatureTabBar.tsx +204 -0
- package/src/components/FloatIcon.tsx +171 -0
- package/src/components/FloatPanelView.tsx +202 -0
- package/src/components/NavigationLogTab.tsx +66 -0
- package/src/components/NetworkLogTab.tsx +270 -0
- package/src/components/ThirdPartyLibsTab.tsx +63 -0
- package/src/components/TrackLogTab.tsx +110 -0
- package/src/components/ZustandLogTab.tsx +203 -0
- package/src/components/shared/CollapsibleSection.tsx +78 -0
- package/src/components/shared/CopyButton.tsx +68 -0
- package/src/components/shared/JsonView.tsx +125 -0
- package/src/components/shared/LogListScreen.tsx +164 -0
- package/src/core/DebugToolkit.tsx +150 -0
- package/src/core/DebugToolkitProvider.tsx +83 -0
- package/src/features/ClipboardFeature.ts +15 -0
- package/src/features/ConsoleLogFeature.ts +116 -0
- package/src/features/EnvironmentFeature.ts +186 -0
- package/src/features/NavigationLogFeature.ts +44 -0
- package/src/features/NetworkFeature.ts +126 -0
- package/src/features/ThirdPartyLibsFeature.ts +42 -0
- package/src/features/TrackFeature.ts +34 -0
- package/src/features/ZustandLogFeature.ts +101 -0
- package/src/hooks/useNavigationLogger.ts +102 -0
- package/src/hooks/useSlideDetailAnimation.ts +45 -0
- package/src/index.ts +48 -0
- package/src/initialize.ts +122 -0
- package/src/interceptors/networkInterceptor.ts +646 -0
- package/src/native/NativeDebugLibs.ts +74 -0
- package/src/types/index.ts +127 -0
- package/src/utils/colors.ts +38 -0
- package/src/utils/copyToComputer.ts +104 -0
- package/src/utils/createChannelFeature.ts +55 -0
- package/src/utils/createEventChannel.ts +22 -0
- package/src/utils/createObservableStore.ts +42 -0
- package/src/utils/layout.ts +1 -0
- package/src/utils/safeStringify.ts +25 -0
- package/src/utils/urlRewriterRegistry.ts +10 -0
- package/.cursor/rules/react-native.mdc +0 -41
- package/index.js +0 -41
- package/ios/BuildTypeModule.h +0 -9
- package/ios/BuildTypeModule.m +0 -42
- package/ios/RNDebugLibs.h +0 -10
- package/ios/RNDebugLibs.m +0 -79
- package/lib/DebugToolKit.js +0 -126
- package/lib/EnvironmentManager.ts +0 -80
- package/lib/NativeDebugLibs.js +0 -67
- package/lib/features/ConsoleLogFeature.js +0 -70
- package/lib/features/NavigationLogFeature.js +0 -45
- package/lib/features/NetworkFeature.js +0 -389
- package/lib/features/PerformanceFeature.js +0 -390
- package/lib/features/ThirdPartyLibsFeature.js +0 -63
- package/lib/features/TrackFeature.js +0 -94
- package/lib/features/ZustandLogFeature.js +0 -44
- package/lib/hooks/useNavigationLogger.js +0 -92
- package/lib/index.js +0 -114
- package/lib/navigation/NavigationLogger.js +0 -1
- package/lib/types/TrackTypes.ts +0 -92
- package/lib/utils/DebugConst.js +0 -67
- package/lib/utils/StorageUtils.js +0 -80
- package/lib/views/ConsoleLogDetails.js +0 -314
- package/lib/views/FloatPanelView.js +0 -697
- package/lib/views/HttpLogDetails.js +0 -648
- package/lib/views/NavigationLogDetails.js +0 -302
- package/lib/views/RestartModal.js +0 -75
- package/lib/views/SubViewConsoleLogs.js +0 -209
- package/lib/views/SubViewEnvironment.js +0 -73
- package/lib/views/SubViewHTTPLogs.js +0 -235
- package/lib/views/SubViewNavigationLogs.js +0 -199
- package/lib/views/SubViewPerformance.js +0 -515
- package/lib/views/SubViewThirdPartyLibs.js +0 -239
- package/lib/views/SubViewTrackLogs.js +0 -318
- package/lib/views/SubViewZustandLogs.js +0 -279
- package/lib/views/TabView.js +0 -66
- package/lib/views/TrackLogDetails.js +0 -481
- package/lib/views/ZustandLogDetails.js +0 -355
- package/react-native-debug-toolkit.podspec +0 -25
- package/react-native.config.js +0 -18
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { NativeModules, Platform } from 'react-native';
|
|
4
|
+
const RNDebugLibs = NativeModules.RNDebugLibs ?? {};
|
|
5
|
+
const BuildTypeModule = NativeModules.BuildTypeModule ?? null;
|
|
6
|
+
export const NativeDebugLibs = {
|
|
7
|
+
getBuildType() {
|
|
8
|
+
if (BuildTypeModule) {
|
|
9
|
+
return BuildTypeModule.getBuildType();
|
|
10
|
+
}
|
|
11
|
+
return Promise.resolve(null);
|
|
12
|
+
},
|
|
13
|
+
getBuildTypeSync() {
|
|
14
|
+
if (BuildTypeModule) {
|
|
15
|
+
return BuildTypeModule.getBuildTypeSync();
|
|
16
|
+
}
|
|
17
|
+
return null;
|
|
18
|
+
},
|
|
19
|
+
isDebugBuild() {
|
|
20
|
+
if (BuildTypeModule) {
|
|
21
|
+
return BuildTypeModule.getBuildTypeSync() === 'debug';
|
|
22
|
+
}
|
|
23
|
+
// Fallback: assume __DEV__ is the source of truth
|
|
24
|
+
return __DEV__;
|
|
25
|
+
},
|
|
26
|
+
// FLEX (iOS only)
|
|
27
|
+
showExplorer() {
|
|
28
|
+
if (Platform.OS === 'ios' && RNDebugLibs.showExplorer) {
|
|
29
|
+
RNDebugLibs.showExplorer();
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
hideExplorer() {
|
|
33
|
+
if (Platform.OS === 'ios' && RNDebugLibs.hideExplorer) {
|
|
34
|
+
RNDebugLibs.hideExplorer();
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
// DoraemonKit
|
|
38
|
+
installDoraemonKit(productId) {
|
|
39
|
+
if (RNDebugLibs.installDoraemonKit) {
|
|
40
|
+
RNDebugLibs.installDoraemonKit(productId);
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
showDoraemonKit() {
|
|
44
|
+
if (RNDebugLibs.showDoraemonKit) {
|
|
45
|
+
RNDebugLibs.showDoraemonKit();
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
hideDoraemonKit() {
|
|
49
|
+
if (RNDebugLibs.hideDoraemonKit) {
|
|
50
|
+
RNDebugLibs.hideDoraemonKit();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=NativeDebugLibs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","RNDebugLibs","BuildTypeModule","NativeDebugLibs","getBuildType","Promise","resolve","getBuildTypeSync","isDebugBuild","__DEV__","showExplorer","OS","hideExplorer","installDoraemonKit","productId","showDoraemonKit","hideDoraemonKit"],"sourceRoot":"../../../src","sources":["native/NativeDebugLibs.ts"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAgBtD,MAAMC,WAA4B,GAAGF,aAAa,CAACE,WAAW,IAAI,CAAC,CAAC;AACpE,MAAMC,eAA2C,GAAGH,aAAa,CAACG,eAAe,IAAI,IAAI;AAEzF,OAAO,MAAMC,eAAe,GAAG;EAC7BC,YAAYA,CAAA,EAA2B;IACrC,IAAIF,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACE,YAAY,CAAC,CAAC;IACvC;IACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;EAC9B,CAAC;EAEDC,gBAAgBA,CAAA,EAAkB;IAChC,IAAIL,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACK,gBAAgB,CAAC,CAAC;IAC3C;IACA,OAAO,IAAI;EACb,CAAC;EAEDC,YAAYA,CAAA,EAAY;IACtB,IAAIN,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACK,gBAAgB,CAAC,CAAC,KAAK,OAAO;IACvD;IACA;IACA,OAAOE,OAAO;EAChB,CAAC;EAED;EACAC,YAAYA,CAAA,EAAS;IACnB,IAAIV,QAAQ,CAACW,EAAE,KAAK,KAAK,IAAIV,WAAW,CAACS,YAAY,EAAE;MACrDT,WAAW,CAACS,YAAY,CAAC,CAAC;IAC5B;EACF,CAAC;EAEDE,YAAYA,CAAA,EAAS;IACnB,IAAIZ,QAAQ,CAACW,EAAE,KAAK,KAAK,IAAIV,WAAW,CAACW,YAAY,EAAE;MACrDX,WAAW,CAACW,YAAY,CAAC,CAAC;IAC5B;EACF,CAAC;EAED;EACAC,kBAAkBA,CAACC,SAAiB,EAAQ;IAC1C,IAAIb,WAAW,CAACY,kBAAkB,EAAE;MAClCZ,WAAW,CAACY,kBAAkB,CAACC,SAAS,CAAC;IAC3C;EACF,CAAC;EAEDC,eAAeA,CAAA,EAAS;IACtB,IAAId,WAAW,CAACc,eAAe,EAAE;MAC/Bd,WAAW,CAACc,eAAe,CAAC,CAAC;IAC/B;EACF,CAAC;EAEDC,eAAeA,CAAA,EAAS;IACtB,IAAIf,WAAW,CAACe,eAAe,EAAE;MAC/Bf,WAAW,CAACe,eAAe,CAAC,CAAC;IAC/B;EACF;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// Apple iOS System Color Palette
|
|
4
|
+
export const Colors = {
|
|
5
|
+
// System
|
|
6
|
+
primary: '#007AFF',
|
|
7
|
+
text: '#1C1C1E',
|
|
8
|
+
textSecondary: '#8E8E93',
|
|
9
|
+
textLight: '#C7C7CC',
|
|
10
|
+
border: '#E5E5EA',
|
|
11
|
+
background: '#F2F2F7',
|
|
12
|
+
surface: '#FFFFFF',
|
|
13
|
+
// Semantic
|
|
14
|
+
success: '#34C759',
|
|
15
|
+
error: '#FF3B30',
|
|
16
|
+
warning: '#FF9500',
|
|
17
|
+
info: '#5AC8FA',
|
|
18
|
+
// Accent
|
|
19
|
+
purple: '#AF52DE',
|
|
20
|
+
// HTTP Method Colors
|
|
21
|
+
get: '#007AFF',
|
|
22
|
+
post: '#34C759',
|
|
23
|
+
put: '#FF9500',
|
|
24
|
+
delete: '#FF3B30',
|
|
25
|
+
patch: '#5AC8FA'
|
|
26
|
+
};
|
|
27
|
+
export function getMethodColor(method) {
|
|
28
|
+
switch (method.toUpperCase()) {
|
|
29
|
+
case 'GET':
|
|
30
|
+
return Colors.get;
|
|
31
|
+
case 'POST':
|
|
32
|
+
return Colors.post;
|
|
33
|
+
case 'PUT':
|
|
34
|
+
return Colors.put;
|
|
35
|
+
case 'DELETE':
|
|
36
|
+
return Colors.delete;
|
|
37
|
+
case 'PATCH':
|
|
38
|
+
return Colors.patch;
|
|
39
|
+
default:
|
|
40
|
+
return Colors.textSecondary;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Colors","primary","text","textSecondary","textLight","border","background","surface","success","error","warning","info","purple","get","post","put","delete","patch","getMethodColor","method","toUpperCase"],"sourceRoot":"../../../src","sources":["utils/colors.ts"],"mappings":";;AAAA;AACA,OAAO,MAAMA,MAAM,GAAG;EACpB;EACAC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,aAAa,EAAE,SAAS;EACxBC,SAAS,EAAE,SAAS;EACpBC,MAAM,EAAE,SAAS;EACjBC,UAAU,EAAE,SAAS;EACrBC,OAAO,EAAE,SAAS;EAElB;EACAC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EAEf;EACAC,MAAM,EAAE,SAAS;EAEjB;EACAC,GAAG,EAAE,SAAS;EACdC,IAAI,EAAE,SAAS;EACfC,GAAG,EAAE,SAAS;EACdC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE;AACT,CAAU;AAEV,OAAO,SAASC,cAAcA,CAACC,MAAc,EAAU;EACrD,QAAQA,MAAM,CAACC,WAAW,CAAC,CAAC;IAC1B,KAAK,KAAK;MAAE,OAAOpB,MAAM,CAACa,GAAG;IAC7B,KAAK,MAAM;MAAE,OAAOb,MAAM,CAACc,IAAI;IAC/B,KAAK,KAAK;MAAE,OAAOd,MAAM,CAACe,GAAG;IAC7B,KAAK,QAAQ;MAAE,OAAOf,MAAM,CAACgB,MAAM;IACnC,KAAK,OAAO;MAAE,OAAOhB,MAAM,CAACiB,KAAK;IACjC;MAAS,OAAOjB,MAAM,CAACG,aAAa;EACtC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
let clipboardModule = null;
|
|
4
|
+
let clipboardChecked = false;
|
|
5
|
+
function getClipboardModule() {
|
|
6
|
+
if (clipboardChecked) return clipboardModule;
|
|
7
|
+
clipboardChecked = true;
|
|
8
|
+
try {
|
|
9
|
+
// Check native module exists first — getEnforcing() inside the clipboard
|
|
10
|
+
// package throws a fatal Invariant Violation that bypasses try/catch.
|
|
11
|
+
const {
|
|
12
|
+
TurboModuleRegistry
|
|
13
|
+
} = require('react-native');
|
|
14
|
+
if (!TurboModuleRegistry.get('RNCClipboard')) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
clipboardModule = require('@react-native-clipboard/clipboard').default;
|
|
18
|
+
} catch {
|
|
19
|
+
clipboardModule = null;
|
|
20
|
+
}
|
|
21
|
+
return clipboardModule;
|
|
22
|
+
}
|
|
23
|
+
const MAX_LOG_SIZE = 10 * 1024; // 10KB
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Format data for copying (pretty JSON or raw string).
|
|
27
|
+
*/
|
|
28
|
+
export function fmt(data) {
|
|
29
|
+
if (!data) return '';
|
|
30
|
+
try {
|
|
31
|
+
return JSON.stringify(typeof data === 'string' ? JSON.parse(data) : data, null, 2);
|
|
32
|
+
} catch {
|
|
33
|
+
return String(data);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Log content to console (Metro terminal / DevTools) with a structured prefix.
|
|
39
|
+
* ConsoleLogFeature intercepts console.log but still calls the original first,
|
|
40
|
+
* so output reliably appears in Metro terminal.
|
|
41
|
+
*/
|
|
42
|
+
export function logToComputer(content, label) {
|
|
43
|
+
try {
|
|
44
|
+
const header = label ? `[DebugToolkit:Copy] ─── ${label} ───` : '[DebugToolkit:Copy] ─── Content ───';
|
|
45
|
+
console.log(header);
|
|
46
|
+
if (content.length > MAX_LOG_SIZE) {
|
|
47
|
+
console.log(content.slice(0, MAX_LOG_SIZE));
|
|
48
|
+
console.log(`[DebugToolkit:Copy] ... truncated (${content.length} bytes total)`);
|
|
49
|
+
} else {
|
|
50
|
+
console.log(content);
|
|
51
|
+
}
|
|
52
|
+
console.log('[DebugToolkit:Copy] ─── END ───');
|
|
53
|
+
} catch {
|
|
54
|
+
// Silently fail — console may not be available in all environments
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Copy content to computer via the best available method.
|
|
60
|
+
*
|
|
61
|
+
* 1. Attempts device clipboard (if @react-native-clipboard/clipboard is installed)
|
|
62
|
+
* 2. Always console.logs with structured prefix (appears in Metro terminal)
|
|
63
|
+
* 3. Returns result indicating what succeeded
|
|
64
|
+
*/
|
|
65
|
+
export function copyToComputer(content, options) {
|
|
66
|
+
let method = 'none';
|
|
67
|
+
|
|
68
|
+
// Try clipboard
|
|
69
|
+
try {
|
|
70
|
+
const clipboard = getClipboardModule();
|
|
71
|
+
if (clipboard) {
|
|
72
|
+
clipboard.setString(content);
|
|
73
|
+
method = 'clipboard';
|
|
74
|
+
}
|
|
75
|
+
} catch {
|
|
76
|
+
// Clipboard may fail, continue
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// Always log to computer console (unless silent)
|
|
80
|
+
if (!options?.silent) {
|
|
81
|
+
logToComputer(content, options?.label);
|
|
82
|
+
if (method === 'none') {
|
|
83
|
+
method = 'console';
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return {
|
|
87
|
+
success: true,
|
|
88
|
+
method
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=copyToComputer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["clipboardModule","clipboardChecked","getClipboardModule","TurboModuleRegistry","require","get","default","MAX_LOG_SIZE","fmt","data","JSON","stringify","parse","String","logToComputer","content","label","header","console","log","length","slice","copyToComputer","options","method","clipboard","setString","silent","success"],"sourceRoot":"../../../src","sources":["utils/copyToComputer.ts"],"mappings":";;AAEA,IAAIA,eAAuC,GAAG,IAAI;AAClD,IAAIC,gBAAgB,GAAG,KAAK;AAE5B,SAASC,kBAAkBA,CAAA,EAA2B;EACpD,IAAID,gBAAgB,EAAE,OAAOD,eAAe;EAC5CC,gBAAgB,GAAG,IAAI;EACvB,IAAI;IACF;IACA;IACA,MAAM;MAAEE;IAAoB,CAAC,GAAGC,OAAO,CAAC,cAAc,CAAC;IACvD,IAAI,CAACD,mBAAmB,CAACE,GAAG,CAAC,cAAc,CAAC,EAAE;MAC5C,OAAO,IAAI;IACb;IACAL,eAAe,GAAGI,OAAO,CAAC,mCAAmC,CAAC,CAACE,OAAO;EACxE,CAAC,CAAC,MAAM;IACNN,eAAe,GAAG,IAAI;EACxB;EACA,OAAOA,eAAe;AACxB;AAgBA,MAAMO,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;;AAEhC;AACA;AACA;AACA,OAAO,SAASC,GAAGA,CAACC,IAAa,EAAU;EACzC,IAAI,CAACA,IAAI,EAAE,OAAO,EAAE;EACpB,IAAI;IACF,OAAOC,IAAI,CAACC,SAAS,CAAC,OAAOF,IAAI,KAAK,QAAQ,GAAGC,IAAI,CAACE,KAAK,CAACH,IAAI,CAAC,GAAGA,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;EACpF,CAAC,CAAC,MAAM;IACN,OAAOI,MAAM,CAACJ,IAAI,CAAC;EACrB;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASK,aAAaA,CAACC,OAAe,EAAEC,KAAc,EAAQ;EACnE,IAAI;IACF,MAAMC,MAAM,GAAGD,KAAK,GAAG,2BAA2BA,KAAK,MAAM,GAAG,qCAAqC;IACrGE,OAAO,CAACC,GAAG,CAACF,MAAM,CAAC;IAEnB,IAAIF,OAAO,CAACK,MAAM,GAAGb,YAAY,EAAE;MACjCW,OAAO,CAACC,GAAG,CAACJ,OAAO,CAACM,KAAK,CAAC,CAAC,EAAEd,YAAY,CAAC,CAAC;MAC3CW,OAAO,CAACC,GAAG,CAAC,sCAAsCJ,OAAO,CAACK,MAAM,eAAe,CAAC;IAClF,CAAC,MAAM;MACLF,OAAO,CAACC,GAAG,CAACJ,OAAO,CAAC;IACtB;IAEAG,OAAO,CAACC,GAAG,CAAC,iCAAiC,CAAC;EAChD,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASG,cAAcA,CAACP,OAAe,EAAEQ,OAAqB,EAAc;EACjF,IAAIC,MAAkB,GAAG,MAAM;;EAE/B;EACA,IAAI;IACF,MAAMC,SAAS,GAAGvB,kBAAkB,CAAC,CAAC;IACtC,IAAIuB,SAAS,EAAE;MACbA,SAAS,CAACC,SAAS,CAACX,OAAO,CAAC;MAC5BS,MAAM,GAAG,WAAW;IACtB;EACF,CAAC,CAAC,MAAM;IACN;EAAA;;EAGF;EACA,IAAI,CAACD,OAAO,EAAEI,MAAM,EAAE;IACpBb,aAAa,CAACC,OAAO,EAAEQ,OAAO,EAAEP,KAAK,CAAC;IACtC,IAAIQ,MAAM,KAAK,MAAM,EAAE;MACrBA,MAAM,GAAG,SAAS;IACpB;EACF;EAEA,OAAO;IAAEI,OAAO,EAAE,IAAI;IAAEJ;EAAO,CAAC;AAClC","ignoreList":[]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createObservableStore } from './createObservableStore';
|
|
4
|
+
const DEFAULT_MAX_LOGS = 200;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Generic factory for features that subscribe to an event channel.
|
|
8
|
+
* Eliminates boilerplate across channel-based features (Track, Navigation, Zustand).
|
|
9
|
+
*
|
|
10
|
+
* @param getChannel - Function returning the current channel (supports test resets)
|
|
11
|
+
* @param toEntry - Maps a payload + auto-generated id to a typed log entry
|
|
12
|
+
* @param options - Feature name, label, render component, and optional maxLogs
|
|
13
|
+
*/
|
|
14
|
+
export function createChannelFeature(getChannel, toEntry, options) {
|
|
15
|
+
const maxLogs = options.maxLogs ?? DEFAULT_MAX_LOGS;
|
|
16
|
+
const logStore = createObservableStore();
|
|
17
|
+
let nextId = 0;
|
|
18
|
+
let initialized = false;
|
|
19
|
+
let unsubscribe = null;
|
|
20
|
+
return {
|
|
21
|
+
name: options.name,
|
|
22
|
+
label: options.label,
|
|
23
|
+
renderContent: options.renderContent,
|
|
24
|
+
setup: () => {
|
|
25
|
+
if (initialized) return;
|
|
26
|
+
unsubscribe = getChannel().subscribe(payload => {
|
|
27
|
+
logStore.push(toEntry(payload, String(nextId++)), maxLogs);
|
|
28
|
+
});
|
|
29
|
+
initialized = true;
|
|
30
|
+
},
|
|
31
|
+
getData: () => logStore.getData(),
|
|
32
|
+
clear: () => {
|
|
33
|
+
logStore.clear();
|
|
34
|
+
},
|
|
35
|
+
cleanup: () => {
|
|
36
|
+
unsubscribe?.();
|
|
37
|
+
unsubscribe = null;
|
|
38
|
+
logStore.clear();
|
|
39
|
+
initialized = false;
|
|
40
|
+
},
|
|
41
|
+
subscribe: listener => logStore.subscribe(listener)
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=createChannelFeature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createObservableStore","DEFAULT_MAX_LOGS","createChannelFeature","getChannel","toEntry","options","maxLogs","logStore","nextId","initialized","unsubscribe","name","label","renderContent","setup","subscribe","payload","push","String","getData","clear","cleanup","listener"],"sourceRoot":"../../../src","sources":["utils/createChannelFeature.ts"],"mappings":";;AAGA,SAASA,qBAAqB,QAAQ,yBAAyB;AAE/D,MAAMC,gBAAgB,GAAG,GAAG;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAClCC,UAAwC,EACxCC,OAAkD,EAClDC,OAKC,EACqB;EACtB,MAAMC,OAAO,GAAGD,OAAO,CAACC,OAAO,IAAIL,gBAAgB;EACnD,MAAMM,QAAQ,GAAGP,qBAAqB,CAAS,CAAC;EAChD,IAAIQ,MAAM,GAAG,CAAC;EACd,IAAIC,WAAW,GAAG,KAAK;EACvB,IAAIC,WAAgC,GAAG,IAAI;EAE3C,OAAO;IACLC,IAAI,EAAEN,OAAO,CAACM,IAAI;IAClBC,KAAK,EAAEP,OAAO,CAACO,KAAK;IACpBC,aAAa,EAAER,OAAO,CAACQ,aAAa;IACpCC,KAAK,EAAEA,CAAA,KAAM;MACX,IAAIL,WAAW,EAAE;MACjBC,WAAW,GAAGP,UAAU,CAAC,CAAC,CAACY,SAAS,CAAEC,OAAO,IAAK;QAChDT,QAAQ,CAACU,IAAI,CAACb,OAAO,CAACY,OAAO,EAAEE,MAAM,CAACV,MAAM,EAAE,CAAC,CAAC,EAAEF,OAAO,CAAC;MAC5D,CAAC,CAAC;MACFG,WAAW,GAAG,IAAI;IACpB,CAAC;IACDU,OAAO,EAAEA,CAAA,KAAMZ,QAAQ,CAACY,OAAO,CAAC,CAAC;IACjCC,KAAK,EAAEA,CAAA,KAAM;MACXb,QAAQ,CAACa,KAAK,CAAC,CAAC;IAClB,CAAC;IACDC,OAAO,EAAEA,CAAA,KAAM;MACbX,WAAW,GAAG,CAAC;MACfA,WAAW,GAAG,IAAI;MAClBH,QAAQ,CAACa,KAAK,CAAC,CAAC;MAChBX,WAAW,GAAG,KAAK;IACrB,CAAC;IACDM,SAAS,EAAGO,QAA8B,IAAKf,QAAQ,CAACQ,SAAS,CAACO,QAAQ;EAC5E,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function createEventChannel() {
|
|
4
|
+
const listeners = new Set();
|
|
5
|
+
return {
|
|
6
|
+
emit: event => {
|
|
7
|
+
listeners.forEach(listener => listener(event));
|
|
8
|
+
},
|
|
9
|
+
subscribe: listener => {
|
|
10
|
+
listeners.add(listener);
|
|
11
|
+
return () => {
|
|
12
|
+
listeners.delete(listener);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=createEventChannel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEventChannel","listeners","Set","emit","event","forEach","listener","subscribe","add","delete"],"sourceRoot":"../../../src","sources":["utils/createEventChannel.ts"],"mappings":";;AAOA,OAAO,SAASA,kBAAkBA,CAAA,EAAiC;EACjE,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAwB,CAAC;EAElD,OAAO;IACLC,IAAI,EAAGC,KAAK,IAAK;MACfH,SAAS,CAACI,OAAO,CAAEC,QAAQ,IAAKA,QAAQ,CAACF,KAAK,CAAC,CAAC;IAClD,CAAC;IACDG,SAAS,EAAGD,QAAQ,IAAK;MACvBL,SAAS,CAACO,GAAG,CAACF,QAAQ,CAAC;MACvB,OAAO,MAAM;QACXL,SAAS,CAACQ,MAAM,CAACH,QAAQ,CAAC;MAC5B,CAAC;IACH;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function createObservableStore() {
|
|
4
|
+
let data = [];
|
|
5
|
+
const listeners = new Set();
|
|
6
|
+
const notify = () => {
|
|
7
|
+
listeners.forEach(listener => listener());
|
|
8
|
+
};
|
|
9
|
+
return {
|
|
10
|
+
getData: () => data,
|
|
11
|
+
push: (item, maxEntries) => {
|
|
12
|
+
if (maxEntries && data.length >= maxEntries) {
|
|
13
|
+
data = [...data.slice(data.length - maxEntries + 1), item];
|
|
14
|
+
} else {
|
|
15
|
+
data = [...data, item];
|
|
16
|
+
}
|
|
17
|
+
notify();
|
|
18
|
+
},
|
|
19
|
+
clear: () => {
|
|
20
|
+
if (data.length === 0) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
data = [];
|
|
24
|
+
notify();
|
|
25
|
+
},
|
|
26
|
+
subscribe: listener => {
|
|
27
|
+
listeners.add(listener);
|
|
28
|
+
return () => {
|
|
29
|
+
listeners.delete(listener);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=createObservableStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createObservableStore","data","listeners","Set","notify","forEach","listener","getData","push","item","maxEntries","length","slice","clear","subscribe","add","delete"],"sourceRoot":"../../../src","sources":["utils/createObservableStore.ts"],"mappings":";;AASA,OAAO,SAASA,qBAAqBA,CAAA,EAA0B;EAC7D,IAAIC,IAAS,GAAG,EAAE;EAClB,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAgB,CAAC;EAE1C,MAAMC,MAAM,GAAGA,CAAA,KAAM;IACnBF,SAAS,CAACG,OAAO,CAAEC,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;EAC7C,CAAC;EAED,OAAO;IACLC,OAAO,EAAEA,CAAA,KAAMN,IAAI;IACnBO,IAAI,EAAEA,CAACC,IAAI,EAAEC,UAAU,KAAK;MAC1B,IAAIA,UAAU,IAAIT,IAAI,CAACU,MAAM,IAAID,UAAU,EAAE;QAC3CT,IAAI,GAAG,CAAC,GAAGA,IAAI,CAACW,KAAK,CAACX,IAAI,CAACU,MAAM,GAAGD,UAAU,GAAG,CAAC,CAAC,EAAED,IAAI,CAAC;MAC5D,CAAC,MAAM;QACLR,IAAI,GAAG,CAAC,GAAGA,IAAI,EAAEQ,IAAI,CAAC;MACxB;MACAL,MAAM,CAAC,CAAC;IACV,CAAC;IACDS,KAAK,EAAEA,CAAA,KAAM;MACX,IAAIZ,IAAI,CAACU,MAAM,KAAK,CAAC,EAAE;QACrB;MACF;MACAV,IAAI,GAAG,EAAE;MACTG,MAAM,CAAC,CAAC;IACV,CAAC;IACDU,SAAS,EAAGR,QAAQ,IAAK;MACvBJ,SAAS,CAACa,GAAG,CAACT,QAAQ,CAAC;MACvB,OAAO,MAAM;QACXJ,SAAS,CAACc,MAAM,CAACV,QAAQ,CAAC;MAC5B,CAAC;IACH;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ICON_SIZE"],"sourceRoot":"../../../src","sources":["utils/layout.ts"],"mappings":";;AAAA,OAAO,MAAMA,SAAS,GAAG,EAAE","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Safely stringify a value to JSON, handling circular references
|
|
5
|
+
* and values that can't be serialized.
|
|
6
|
+
*/
|
|
7
|
+
export function safeStringify(value, space) {
|
|
8
|
+
try {
|
|
9
|
+
const seen = new WeakSet();
|
|
10
|
+
return JSON.stringify(value, (_, val) => {
|
|
11
|
+
if (typeof val === 'object' && val !== null) {
|
|
12
|
+
if (seen.has(val)) {
|
|
13
|
+
return '[Circular]';
|
|
14
|
+
}
|
|
15
|
+
seen.add(val);
|
|
16
|
+
}
|
|
17
|
+
return val;
|
|
18
|
+
}, space);
|
|
19
|
+
} catch {
|
|
20
|
+
return String(value);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=safeStringify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["safeStringify","value","space","seen","WeakSet","JSON","stringify","_","val","has","add","String"],"sourceRoot":"../../../src","sources":["utils/safeStringify.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA,OAAO,SAASA,aAAaA,CAACC,KAAc,EAAEC,KAAc,EAAU;EACpE,IAAI;IACF,MAAMC,IAAI,GAAG,IAAIC,OAAO,CAAC,CAAC;IAE1B,OAAOC,IAAI,CAACC,SAAS,CACnBL,KAAK,EACL,CAACM,CAAC,EAAEC,GAAG,KAAK;MACV,IAAI,OAAOA,GAAG,KAAK,QAAQ,IAAIA,GAAG,KAAK,IAAI,EAAE;QAC3C,IAAIL,IAAI,CAACM,GAAG,CAACD,GAAG,CAAC,EAAE;UACjB,OAAO,YAAY;QACrB;QACAL,IAAI,CAACO,GAAG,CAACF,GAAG,CAAC;MACf;MACA,OAAOA,GAAG;IACZ,CAAC,EACDN,KACF,CAAC;EACH,CAAC,CAAC,MAAM;IACN,OAAOS,MAAM,CAACV,KAAK,CAAC;EACtB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["current","urlRewriter","get","set","rewriter"],"sourceRoot":"../../../src","sources":["utils/urlRewriterRegistry.ts"],"mappings":";;AAEA,IAAIA,OAA2B,GAAG,IAAI;AAEtC,OAAO,MAAMC,WAAW,GAAG;EACzBC,GAAG,EAAEA,CAAA,KAA0BF,OAAO;EACtCG,GAAG,EAAGC,QAA4B,IAAW;IAC3CJ,OAAO,GAAGI,QAAQ;EACpB;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClipboardTab.d.ts","sourceRoot":"","sources":["../../../../src/components/ClipboardTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAIrD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAExD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAqC/D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsoleLogTab.d.ts","sourceRoot":"","sources":["../../../../src/components/ConsoleLogTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAgBzE,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAiD3E,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface DebugPanelProps {
|
|
3
|
+
onClose: () => void;
|
|
4
|
+
onClearAll: () => void;
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare function DebugPanel({ onClose, onClearAll, children }: DebugPanelProps): React.JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=DebugPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DebugPanel.d.ts","sourceRoot":"","sources":["../../../../src/components/DebugPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAa9D,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,eAAe,qBAwG5E"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FeatureConfigs } from '../initialize';
|
|
3
|
+
import type { EnvironmentConfig, NavigationContainerRef } from '../types';
|
|
4
|
+
export interface DebugViewProps {
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
/**
|
|
7
|
+
* Enable/disable specific features. Omitted features default to enabled.
|
|
8
|
+
* Set to `false` to disable a feature.
|
|
9
|
+
*/
|
|
10
|
+
features?: Partial<FeatureConfigs>;
|
|
11
|
+
/** Navigation container ref for route tracking. */
|
|
12
|
+
navigationRef?: React.RefObject<NavigationContainerRef | null>;
|
|
13
|
+
/** Environment configs for runtime host switching. */
|
|
14
|
+
environments?: EnvironmentConfig[];
|
|
15
|
+
/** Force enable/disable (default: `__DEV__`). */
|
|
16
|
+
enabled?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export declare function DebugView({ children, features, navigationRef, environments, enabled, }: DebugViewProps): React.JSX.Element;
|
|
19
|
+
//# sourceMappingURL=DebugView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DebugView.d.ts","sourceRoot":"","sources":["../../../../src/components/DebugView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAGzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAI1E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,mDAAmD;IACnD,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAC/D,sDAAsD;IACtD,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACnC,iDAAiD;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAeD,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,OAAO,GACR,EAAE,cAAc,qBAoChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnvironmentTab.d.ts","sourceRoot":"","sources":["../../../../src/components/EnvironmentTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAY1E,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CA+F7E,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface TabItem {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
interface FeatureTabBarProps {
|
|
7
|
+
tabs: TabItem[];
|
|
8
|
+
activeIndex: number;
|
|
9
|
+
onSelectTab: (index: number) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare function FeatureTabBar({ tabs, activeIndex, onSelectTab }: FeatureTabBarProps): React.JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=FeatureTabBar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeatureTabBar.d.ts","sourceRoot":"","sources":["../../../../src/components/FeatureTabBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAWxE,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,kBAAkB,qBAmJnF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface FloatIconProps {
|
|
3
|
+
visible: boolean;
|
|
4
|
+
onPress: () => void;
|
|
5
|
+
badge: {
|
|
6
|
+
label: string;
|
|
7
|
+
color: string;
|
|
8
|
+
} | null;
|
|
9
|
+
}
|
|
10
|
+
export declare function FloatIcon({ visible, onPress, badge }: FloatIconProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=FloatIcon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FloatIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/FloatIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAatC,UAAU,cAAc;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAChD;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,cAAc,qBAiGpE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { AnyDebugFeature } from '../types';
|
|
3
|
+
interface FloatPanelViewProps {
|
|
4
|
+
features: AnyDebugFeature[];
|
|
5
|
+
onClearAll: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function FloatPanelView({ features, onClearAll }: FloatPanelViewProps): React.JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=FloatPanelView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FloatPanelView.d.ts","sourceRoot":"","sources":["../../../../src/components/FloatPanelView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8D,MAAM,OAAO,CAAC;AASnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAgChD,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,mBAAmB,qBAuI3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationLogTab.d.ts","sourceRoot":"","sources":["../../../../src/components/NavigationLogTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE5E,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CA6CjF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NetworkLogTab.d.ts","sourceRoot":"","sources":["../../../../src/components/NetworkLogTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAcxC,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAyBzE,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,eAAe,CAAC,CA8I3E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThirdPartyLibsTab.d.ts","sourceRoot":"","sources":["../../../../src/components/ThirdPartyLibsTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,aAAa,EAAuB,MAAM,UAAU,CAAC;AAE5F,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAgC9E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrackLogTab.d.ts","sourceRoot":"","sources":["../../../../src/components/TrackLogTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEvE,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAiEvE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ZustandLogTab.d.ts","sourceRoot":"","sources":["../../../../src/components/ZustandLogTab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AA4BzE,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAyF3E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CollapsibleSection.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/CollapsibleSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAmC9C,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface CopyButtonProps {
|
|
3
|
+
/** Content to copy */
|
|
4
|
+
text: string;
|
|
5
|
+
/** Label for console.log identification */
|
|
6
|
+
label?: string;
|
|
7
|
+
/** Compact mode for inline use */
|
|
8
|
+
compact?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare const CopyButton: React.FC<CopyButtonProps>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=CopyButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyButton.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/CopyButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAKrD,UAAU,eAAe;IACvB,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA+BhD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonView.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/JsonView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAgBnE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface LogListItem {
|
|
3
|
+
id: string;
|
|
4
|
+
}
|
|
5
|
+
interface LogListScreenProps<T extends LogListItem> {
|
|
6
|
+
data: T[];
|
|
7
|
+
renderRow: (item: T) => React.ReactElement;
|
|
8
|
+
renderListHeader?: () => React.ReactElement;
|
|
9
|
+
renderDetailHeader?: (item: T) => React.ReactNode;
|
|
10
|
+
renderDetailBody: (item: T) => React.ReactElement;
|
|
11
|
+
emptyText: string;
|
|
12
|
+
reversed?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Shared list→detail screen with slide animation.
|
|
16
|
+
* Handles: selected state, FlatList, empty state, back button, push navigation.
|
|
17
|
+
* Each tab provides renderRow, renderDetailBody, and optional renderDetailHeader.
|
|
18
|
+
*/
|
|
19
|
+
export declare function LogListScreen<T extends LogListItem>({ data, renderRow, renderListHeader, renderDetailHeader, renderDetailBody, emptyText, reversed, }: LogListScreenProps<T>): React.JSX.Element;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=LogListScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogListScreen.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/LogListScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAYjD,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,UAAU,kBAAkB,CAAC,CAAC,SAAS,WAAW;IAChD,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;IAC3C,gBAAgB,CAAC,EAAE,MAAM,KAAK,CAAC,YAAY,CAAC;IAC5C,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAClD,gBAAgB,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,WAAW,EAAE,EACnD,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,QAAe,GAChB,EAAE,kBAAkB,CAAC,CAAC,CAAC,qBAuEvB"}
|