react-native-debug-toolkit 3.3.8 → 3.5.1
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.md +40 -26
- package/README.zh-CN.md +52 -38
- package/android/src/main/java/com/reactnativedebugtoolkit/DebugToolkitNativeLogsModule.java +146 -0
- package/android/src/main/java/com/reactnativedebugtoolkit/ReactNativeDebugToolkitPackage.java +5 -3
- package/ios/DebugToolkitNativeLogs.mm +92 -0
- package/lib/commonjs/constants/logLevels.js +19 -0
- package/lib/commonjs/constants/logLevels.js.map +1 -0
- package/lib/commonjs/core/initialize.js +32 -19
- package/lib/commonjs/core/initialize.js.map +1 -1
- package/lib/commonjs/features/console/ConsoleLogTab.js +4 -15
- package/lib/commonjs/features/console/ConsoleLogTab.js.map +1 -1
- package/lib/commonjs/features/console/index.js +15 -8
- package/lib/commonjs/features/console/index.js.map +1 -1
- package/lib/commonjs/features/nativeLogs/NativeLogTab.js +156 -0
- package/lib/commonjs/features/nativeLogs/NativeLogTab.js.map +1 -0
- package/lib/commonjs/features/nativeLogs/index.js +97 -0
- package/lib/commonjs/features/nativeLogs/index.js.map +1 -0
- package/lib/commonjs/features/nativeLogs/nativeLogsBridge.js +71 -0
- package/lib/commonjs/features/nativeLogs/nativeLogsBridge.js.map +1 -0
- package/lib/commonjs/features/network/NetworkLogTab.js +90 -95
- package/lib/commonjs/features/network/NetworkLogTab.js.map +1 -1
- package/lib/commonjs/features/network/index.js +7 -4
- package/lib/commonjs/features/network/index.js.map +1 -1
- package/lib/commonjs/features/sessionHistory/SessionHistoryTab.js +1046 -0
- package/lib/commonjs/features/sessionHistory/SessionHistoryTab.js.map +1 -0
- package/lib/commonjs/features/sessionHistory/index.js +104 -0
- package/lib/commonjs/features/sessionHistory/index.js.map +1 -0
- package/lib/commonjs/features/track/index.js +4 -3
- package/lib/commonjs/features/track/index.js.map +1 -1
- package/lib/commonjs/index.js +27 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/DebugView.js +2 -0
- package/lib/commonjs/ui/DebugView.js.map +1 -1
- package/lib/commonjs/ui/panel/DebugPanel.js +67 -34
- package/lib/commonjs/ui/panel/DebugPanel.js.map +1 -1
- package/lib/commonjs/ui/panel/FeatureIntroCard.js +151 -0
- package/lib/commonjs/ui/panel/FeatureIntroCard.js.map +1 -0
- package/lib/commonjs/ui/panel/FeatureRail.js +163 -0
- package/lib/commonjs/ui/panel/FeatureRail.js.map +1 -0
- package/lib/commonjs/ui/panel/FloatPanelView.js +119 -22
- package/lib/commonjs/ui/panel/FloatPanelView.js.map +1 -1
- package/lib/commonjs/ui/panel/buildFeatureSummary.js +207 -0
- package/lib/commonjs/ui/panel/buildFeatureSummary.js.map +1 -0
- package/lib/commonjs/ui/panel/filterFeatureSnapshot.js +43 -0
- package/lib/commonjs/ui/panel/filterFeatureSnapshot.js.map +1 -0
- package/lib/commonjs/ui/theme/colors.js +6 -0
- package/lib/commonjs/ui/theme/colors.js.map +1 -1
- package/lib/commonjs/utils/DaemonClient.js +30 -8
- package/lib/commonjs/utils/DaemonClient.js.map +1 -1
- package/lib/commonjs/utils/SessionManager.js +132 -0
- package/lib/commonjs/utils/SessionManager.js.map +1 -0
- package/lib/commonjs/utils/StorageAdapter.js +104 -0
- package/lib/commonjs/utils/StorageAdapter.js.map +1 -0
- package/lib/commonjs/utils/createChannelFeature.js +22 -5
- package/lib/commonjs/utils/createChannelFeature.js.map +1 -1
- package/lib/commonjs/utils/createPersistedObservableStore.js +14 -8
- package/lib/commonjs/utils/createPersistedObservableStore.js.map +1 -1
- package/lib/commonjs/utils/debugPreferences.js +28 -5
- package/lib/commonjs/utils/debugPreferences.js.map +1 -1
- package/lib/commonjs/utils/deviceReport.js +5 -1
- package/lib/commonjs/utils/deviceReport.js.map +1 -1
- package/lib/commonjs/utils/logRuntime.js +32 -0
- package/lib/commonjs/utils/logRuntime.js.map +1 -0
- package/lib/module/constants/logLevels.js +15 -0
- package/lib/module/constants/logLevels.js.map +1 -0
- package/lib/module/core/initialize.js +32 -19
- package/lib/module/core/initialize.js.map +1 -1
- package/lib/module/features/console/ConsoleLogTab.js +1 -12
- package/lib/module/features/console/ConsoleLogTab.js.map +1 -1
- package/lib/module/features/console/index.js +15 -8
- package/lib/module/features/console/index.js.map +1 -1
- package/lib/module/features/nativeLogs/NativeLogTab.js +151 -0
- package/lib/module/features/nativeLogs/NativeLogTab.js.map +1 -0
- package/lib/module/features/nativeLogs/index.js +91 -0
- package/lib/module/features/nativeLogs/index.js.map +1 -0
- package/lib/module/features/nativeLogs/nativeLogsBridge.js +63 -0
- package/lib/module/features/nativeLogs/nativeLogsBridge.js.map +1 -0
- package/lib/module/features/network/NetworkLogTab.js +90 -95
- package/lib/module/features/network/NetworkLogTab.js.map +1 -1
- package/lib/module/features/network/index.js +7 -4
- package/lib/module/features/network/index.js.map +1 -1
- package/lib/module/features/sessionHistory/SessionHistoryTab.js +1041 -0
- package/lib/module/features/sessionHistory/SessionHistoryTab.js.map +1 -0
- package/lib/module/features/sessionHistory/index.js +100 -0
- package/lib/module/features/sessionHistory/index.js.map +1 -0
- package/lib/module/features/track/index.js +4 -3
- package/lib/module/features/track/index.js.map +1 -1
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/DebugView.js +2 -0
- package/lib/module/ui/DebugView.js.map +1 -1
- package/lib/module/ui/panel/DebugPanel.js +67 -34
- package/lib/module/ui/panel/DebugPanel.js.map +1 -1
- package/lib/module/ui/panel/FeatureIntroCard.js +146 -0
- package/lib/module/ui/panel/FeatureIntroCard.js.map +1 -0
- package/lib/module/ui/panel/FeatureRail.js +158 -0
- package/lib/module/ui/panel/FeatureRail.js.map +1 -0
- package/lib/module/ui/panel/FloatPanelView.js +119 -22
- package/lib/module/ui/panel/FloatPanelView.js.map +1 -1
- package/lib/module/ui/panel/buildFeatureSummary.js +203 -0
- package/lib/module/ui/panel/buildFeatureSummary.js.map +1 -0
- package/lib/module/ui/panel/filterFeatureSnapshot.js +39 -0
- package/lib/module/ui/panel/filterFeatureSnapshot.js.map +1 -0
- package/lib/module/ui/theme/colors.js +6 -0
- package/lib/module/ui/theme/colors.js.map +1 -1
- package/lib/module/utils/DaemonClient.js +30 -8
- package/lib/module/utils/DaemonClient.js.map +1 -1
- package/lib/module/utils/SessionManager.js +127 -0
- package/lib/module/utils/SessionManager.js.map +1 -0
- package/lib/module/utils/StorageAdapter.js +96 -0
- package/lib/module/utils/StorageAdapter.js.map +1 -0
- package/lib/module/utils/createChannelFeature.js +22 -5
- package/lib/module/utils/createChannelFeature.js.map +1 -1
- package/lib/module/utils/createPersistedObservableStore.js +14 -8
- package/lib/module/utils/createPersistedObservableStore.js.map +1 -1
- package/lib/module/utils/debugPreferences.js +27 -5
- package/lib/module/utils/debugPreferences.js.map +1 -1
- package/lib/module/utils/deviceReport.js +4 -1
- package/lib/module/utils/deviceReport.js.map +1 -1
- package/lib/module/utils/logRuntime.js +26 -0
- package/lib/module/utils/logRuntime.js.map +1 -0
- package/lib/typescript/src/constants/logLevels.d.ts +3 -0
- package/lib/typescript/src/constants/logLevels.d.ts.map +1 -0
- package/lib/typescript/src/core/initialize.d.ts +6 -0
- package/lib/typescript/src/core/initialize.d.ts.map +1 -1
- package/lib/typescript/src/features/console/ConsoleLogTab.d.ts.map +1 -1
- package/lib/typescript/src/features/console/index.d.ts +2 -1
- package/lib/typescript/src/features/console/index.d.ts.map +1 -1
- package/lib/typescript/src/features/nativeLogs/NativeLogTab.d.ts +4 -0
- package/lib/typescript/src/features/nativeLogs/NativeLogTab.d.ts.map +1 -0
- package/lib/typescript/src/features/nativeLogs/index.d.ts +12 -0
- package/lib/typescript/src/features/nativeLogs/index.d.ts.map +1 -0
- package/lib/typescript/src/features/nativeLogs/nativeLogsBridge.d.ts +11 -0
- package/lib/typescript/src/features/nativeLogs/nativeLogsBridge.d.ts.map +1 -0
- package/lib/typescript/src/features/network/NetworkLogTab.d.ts.map +1 -1
- package/lib/typescript/src/features/network/index.d.ts +2 -1
- package/lib/typescript/src/features/network/index.d.ts.map +1 -1
- package/lib/typescript/src/features/sessionHistory/SessionHistoryTab.d.ts +20 -0
- package/lib/typescript/src/features/sessionHistory/SessionHistoryTab.d.ts.map +1 -0
- package/lib/typescript/src/features/sessionHistory/index.d.ts +4 -0
- package/lib/typescript/src/features/sessionHistory/index.d.ts.map +1 -0
- package/lib/typescript/src/features/track/index.d.ts +2 -1
- package/lib/typescript/src/features/track/index.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +7 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types/feature.d.ts +1 -1
- package/lib/typescript/src/types/feature.d.ts.map +1 -1
- package/lib/typescript/src/types/index.d.ts +3 -1
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/lib/typescript/src/types/logs.d.ts +15 -0
- package/lib/typescript/src/types/logs.d.ts.map +1 -1
- package/lib/typescript/src/ui/DebugView.d.ts.map +1 -1
- package/lib/typescript/src/ui/panel/DebugPanel.d.ts +3 -1
- package/lib/typescript/src/ui/panel/DebugPanel.d.ts.map +1 -1
- package/lib/typescript/src/ui/panel/FeatureIntroCard.d.ts +14 -0
- package/lib/typescript/src/ui/panel/FeatureIntroCard.d.ts.map +1 -0
- package/lib/typescript/src/ui/panel/FeatureRail.d.ts +16 -0
- package/lib/typescript/src/ui/panel/FeatureRail.d.ts.map +1 -0
- package/lib/typescript/src/ui/panel/FloatPanelView.d.ts.map +1 -1
- package/lib/typescript/src/ui/panel/buildFeatureSummary.d.ts +13 -0
- package/lib/typescript/src/ui/panel/buildFeatureSummary.d.ts.map +1 -0
- package/lib/typescript/src/ui/panel/filterFeatureSnapshot.d.ts +3 -0
- package/lib/typescript/src/ui/panel/filterFeatureSnapshot.d.ts.map +1 -0
- package/lib/typescript/src/ui/theme/colors.d.ts +5 -0
- package/lib/typescript/src/ui/theme/colors.d.ts.map +1 -1
- package/lib/typescript/src/utils/DaemonClient.d.ts +7 -1
- package/lib/typescript/src/utils/DaemonClient.d.ts.map +1 -1
- package/lib/typescript/src/utils/SessionManager.d.ts +30 -0
- package/lib/typescript/src/utils/SessionManager.d.ts.map +1 -0
- package/lib/typescript/src/utils/StorageAdapter.d.ts +38 -0
- package/lib/typescript/src/utils/StorageAdapter.d.ts.map +1 -0
- package/lib/typescript/src/utils/createChannelFeature.d.ts +2 -0
- package/lib/typescript/src/utils/createChannelFeature.d.ts.map +1 -1
- package/lib/typescript/src/utils/createPersistedObservableStore.d.ts +4 -1
- package/lib/typescript/src/utils/createPersistedObservableStore.d.ts.map +1 -1
- package/lib/typescript/src/utils/debugPreferences.d.ts +1 -3
- package/lib/typescript/src/utils/debugPreferences.d.ts.map +1 -1
- package/lib/typescript/src/utils/deviceReport.d.ts +1 -0
- package/lib/typescript/src/utils/deviceReport.d.ts.map +1 -1
- package/lib/typescript/src/utils/logRuntime.d.ts +13 -0
- package/lib/typescript/src/utils/logRuntime.d.ts.map +1 -0
- package/node/daemon/src/console/console.html +18 -0
- package/node/mcp/src/logs.js +1 -1
- package/package.json +9 -1
- package/src/constants/logLevels.ts +13 -0
- package/src/core/initialize.ts +54 -25
- package/src/features/console/ConsoleLogTab.tsx +1 -14
- package/src/features/console/index.ts +18 -8
- package/src/features/nativeLogs/NativeLogTab.tsx +66 -0
- package/src/features/nativeLogs/index.ts +94 -0
- package/src/features/nativeLogs/nativeLogsBridge.ts +51 -0
- package/src/features/network/NetworkLogTab.tsx +60 -71
- package/src/features/network/index.ts +12 -3
- package/src/features/sessionHistory/SessionHistoryTab.tsx +693 -0
- package/src/features/sessionHistory/index.ts +102 -0
- package/src/features/track/index.ts +10 -3
- package/src/index.ts +16 -0
- package/src/types/feature.ts +3 -1
- package/src/types/index.ts +13 -0
- package/src/types/logs.ts +17 -0
- package/src/ui/DebugView.tsx +2 -0
- package/src/ui/panel/DebugPanel.tsx +60 -30
- package/src/ui/panel/FeatureIntroCard.tsx +147 -0
- package/src/ui/panel/FeatureRail.tsx +165 -0
- package/src/ui/panel/FloatPanelView.tsx +123 -15
- package/src/ui/panel/buildFeatureSummary.ts +288 -0
- package/src/ui/panel/filterFeatureSnapshot.ts +51 -0
- package/src/ui/theme/colors.ts +7 -0
- package/src/utils/DaemonClient.ts +33 -5
- package/src/utils/SessionManager.ts +174 -0
- package/src/utils/StorageAdapter.ts +135 -0
- package/src/utils/createChannelFeature.ts +28 -6
- package/src/utils/createPersistedObservableStore.ts +18 -10
- package/src/utils/debugPreferences.ts +38 -7
- package/src/utils/deviceReport.ts +5 -1
- package/src/utils/logRuntime.ts +39 -0
- package/lib/commonjs/ui/panel/FeatureTabBar.js +0 -182
- package/lib/commonjs/ui/panel/FeatureTabBar.js.map +0 -1
- package/lib/module/ui/panel/FeatureTabBar.js +0 -177
- package/lib/module/ui/panel/FeatureTabBar.js.map +0 -1
- package/lib/typescript/src/ui/panel/FeatureTabBar.d.ts +0 -13
- package/lib/typescript/src/ui/panel/FeatureTabBar.d.ts.map +0 -1
- package/src/ui/panel/FeatureTabBar.tsx +0 -204
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","View","Text","Pressable","TextInput","StyleSheet","Colors","jsx","_jsx","jsxs","_jsxs","hexWithAlpha","hex","alpha","test","signalDefaultBg","FeatureIntroCard","title","summary","filterBad","onFilterBad","searchQuery","onSearchChange","showSearch","statusLabel","statusColor","supportsBadFilter","style","styles","card","children","titleRow","numberOfLines","statusChip","backgroundColor","statusText","color","filterRow","chip","chipActive","onPress","chipText","chipTextActive","chipBadActive","chipTextBad","searchInput","placeholder","placeholderTextColor","textLight","value","onChangeText","returnKeyType","create","paddingHorizontal","paddingTop","paddingBottom","borderBottomWidth","hairlineWidth","borderBottomColor","border","background","flexDirection","alignItems","gap","fontSize","fontWeight","text","paddingVertical","borderRadius","textSecondary","height","justifyContent","borderWidth","borderColor","surface","error","marginTop"],"sourceRoot":"../../../../src","sources":["ui/panel/FeatureIntroCard.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { View, Text, StyleSheet, ScrollView, Pressable } from 'react-native';
|
|
5
|
+
import { Colors } from '../theme/colors';
|
|
6
|
+
|
|
7
|
+
// ─── Label Model ──────────────────────────────────────
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
const SHORT_LABEL_MAP = {
|
|
10
|
+
network: 'network',
|
|
11
|
+
console: 'console',
|
|
12
|
+
native: 'native',
|
|
13
|
+
navigation: 'nav',
|
|
14
|
+
zustand: 'zustand',
|
|
15
|
+
track: 'track',
|
|
16
|
+
clipboard: 'clip',
|
|
17
|
+
environment: 'env',
|
|
18
|
+
devConnect: 'dev',
|
|
19
|
+
sessionHistory: 'session',
|
|
20
|
+
thirdPartyLibs: 'libs'
|
|
21
|
+
};
|
|
22
|
+
export function shortLabelForFeature(label, id) {
|
|
23
|
+
const mapped = SHORT_LABEL_MAP[id];
|
|
24
|
+
if (mapped) return mapped;
|
|
25
|
+
const trimmed = label.trim();
|
|
26
|
+
return trimmed.toLowerCase().slice(0, 7);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// ─── Rail Component ───────────────────────────────────
|
|
30
|
+
|
|
31
|
+
export function FeatureRail({
|
|
32
|
+
items,
|
|
33
|
+
activeIndex,
|
|
34
|
+
onSelectTab
|
|
35
|
+
}) {
|
|
36
|
+
return /*#__PURE__*/_jsx(View, {
|
|
37
|
+
style: styles.rail,
|
|
38
|
+
children: /*#__PURE__*/_jsx(ScrollView, {
|
|
39
|
+
showsVerticalScrollIndicator: false,
|
|
40
|
+
contentContainerStyle: styles.scrollContent,
|
|
41
|
+
children: items.map((item, index) => {
|
|
42
|
+
const isActive = index === activeIndex;
|
|
43
|
+
const short = shortLabelForFeature(item.label, item.id);
|
|
44
|
+
const dotColor = item.dotColor ?? null;
|
|
45
|
+
const hasCount = item.count != null && item.count > 0;
|
|
46
|
+
return /*#__PURE__*/_jsxs(Pressable, {
|
|
47
|
+
onPress: () => onSelectTab(index),
|
|
48
|
+
style: [styles.item, isActive && styles.activeItem],
|
|
49
|
+
accessibilityRole: "tab",
|
|
50
|
+
accessibilityLabel: item.label,
|
|
51
|
+
accessibilityState: {
|
|
52
|
+
selected: isActive
|
|
53
|
+
},
|
|
54
|
+
children: [isActive && /*#__PURE__*/_jsx(View, {
|
|
55
|
+
style: styles.activeBar
|
|
56
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
57
|
+
style: [styles.itemName, isActive && styles.activeItemName],
|
|
58
|
+
numberOfLines: 1,
|
|
59
|
+
children: short
|
|
60
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
61
|
+
style: styles.itemMeta,
|
|
62
|
+
children: [dotColor && /*#__PURE__*/_jsx(View, {
|
|
63
|
+
style: [styles.dot, {
|
|
64
|
+
backgroundColor: dotColor
|
|
65
|
+
}]
|
|
66
|
+
}), hasCount && /*#__PURE__*/_jsx(View, {
|
|
67
|
+
style: styles.countPill,
|
|
68
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
69
|
+
style: styles.countText,
|
|
70
|
+
children: item.count
|
|
71
|
+
})
|
|
72
|
+
})]
|
|
73
|
+
})]
|
|
74
|
+
}, item.id);
|
|
75
|
+
})
|
|
76
|
+
})
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
const RAIL_WIDTH = 80;
|
|
80
|
+
const styles = StyleSheet.create({
|
|
81
|
+
rail: {
|
|
82
|
+
width: RAIL_WIDTH,
|
|
83
|
+
backgroundColor: Colors.railBackground,
|
|
84
|
+
borderRightWidth: StyleSheet.hairlineWidth,
|
|
85
|
+
borderRightColor: Colors.panelDivider
|
|
86
|
+
},
|
|
87
|
+
scrollContent: {
|
|
88
|
+
paddingVertical: 6,
|
|
89
|
+
paddingHorizontal: 6,
|
|
90
|
+
gap: 3
|
|
91
|
+
},
|
|
92
|
+
item: {
|
|
93
|
+
minHeight: 56,
|
|
94
|
+
borderRadius: 8,
|
|
95
|
+
justifyContent: 'center',
|
|
96
|
+
alignItems: 'center',
|
|
97
|
+
paddingVertical: 8,
|
|
98
|
+
paddingHorizontal: 4,
|
|
99
|
+
position: 'relative',
|
|
100
|
+
overflow: 'hidden'
|
|
101
|
+
},
|
|
102
|
+
activeItem: {
|
|
103
|
+
backgroundColor: Colors.surface,
|
|
104
|
+
elevation: 2,
|
|
105
|
+
shadowColor: '#000',
|
|
106
|
+
shadowOffset: {
|
|
107
|
+
width: 0,
|
|
108
|
+
height: 2
|
|
109
|
+
},
|
|
110
|
+
shadowOpacity: 0.06,
|
|
111
|
+
shadowRadius: 4
|
|
112
|
+
},
|
|
113
|
+
activeBar: {
|
|
114
|
+
position: 'absolute',
|
|
115
|
+
left: 0,
|
|
116
|
+
top: 10,
|
|
117
|
+
bottom: 10,
|
|
118
|
+
width: 3,
|
|
119
|
+
borderRadius: 1.5,
|
|
120
|
+
backgroundColor: Colors.primary
|
|
121
|
+
},
|
|
122
|
+
itemName: {
|
|
123
|
+
fontSize: 11,
|
|
124
|
+
fontWeight: '700',
|
|
125
|
+
color: Colors.textSecondary,
|
|
126
|
+
letterSpacing: 0.2
|
|
127
|
+
},
|
|
128
|
+
activeItemName: {
|
|
129
|
+
color: Colors.text,
|
|
130
|
+
fontWeight: '800'
|
|
131
|
+
},
|
|
132
|
+
itemMeta: {
|
|
133
|
+
marginTop: 4,
|
|
134
|
+
flexDirection: 'row',
|
|
135
|
+
alignItems: 'center',
|
|
136
|
+
gap: 3
|
|
137
|
+
},
|
|
138
|
+
dot: {
|
|
139
|
+
width: 6,
|
|
140
|
+
height: 6,
|
|
141
|
+
borderRadius: 3
|
|
142
|
+
},
|
|
143
|
+
countPill: {
|
|
144
|
+
minWidth: 18,
|
|
145
|
+
height: 14,
|
|
146
|
+
borderRadius: 7,
|
|
147
|
+
backgroundColor: Colors.background,
|
|
148
|
+
paddingHorizontal: 4,
|
|
149
|
+
alignItems: 'center',
|
|
150
|
+
justifyContent: 'center'
|
|
151
|
+
},
|
|
152
|
+
countText: {
|
|
153
|
+
fontSize: 10,
|
|
154
|
+
fontWeight: '800',
|
|
155
|
+
color: Colors.textSecondary
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
//# sourceMappingURL=FeatureRail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","View","Text","StyleSheet","ScrollView","Pressable","Colors","jsx","_jsx","jsxs","_jsxs","SHORT_LABEL_MAP","network","console","native","navigation","zustand","track","clipboard","environment","devConnect","sessionHistory","thirdPartyLibs","shortLabelForFeature","label","id","mapped","trimmed","trim","toLowerCase","slice","FeatureRail","items","activeIndex","onSelectTab","style","styles","rail","children","showsVerticalScrollIndicator","contentContainerStyle","scrollContent","map","item","index","isActive","short","dotColor","hasCount","count","onPress","activeItem","accessibilityRole","accessibilityLabel","accessibilityState","selected","activeBar","itemName","activeItemName","numberOfLines","itemMeta","dot","backgroundColor","countPill","countText","RAIL_WIDTH","create","width","railBackground","borderRightWidth","hairlineWidth","borderRightColor","panelDivider","paddingVertical","paddingHorizontal","gap","minHeight","borderRadius","justifyContent","alignItems","position","overflow","surface","elevation","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","left","top","bottom","primary","fontSize","fontWeight","color","textSecondary","letterSpacing","text","marginTop","flexDirection","minWidth","background"],"sourceRoot":"../../../../src","sources":["ui/panel/FeatureRail.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,10 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
import React, { Component, useCallback, useEffect, useRef, useState } from 'react';
|
|
4
4
|
import { View, Text, StyleSheet, Animated } from 'react-native';
|
|
5
|
+
import { Colors } from '../theme/colors';
|
|
5
6
|
import { getPreference, setPreference, KEYS } from '../../utils/debugPreferences';
|
|
6
7
|
import { FloatIcon } from '../floating/FloatIcon';
|
|
7
8
|
import { DebugPanel } from './DebugPanel';
|
|
8
|
-
import {
|
|
9
|
+
import { FeatureRail } from './FeatureRail';
|
|
10
|
+
import { FeatureIntroCard } from './FeatureIntroCard';
|
|
11
|
+
import { buildFeatureSummary } from './buildFeatureSummary';
|
|
12
|
+
import { filterFeatureSnapshot } from './filterFeatureSnapshot';
|
|
9
13
|
import { resolveStoredTabIndex } from './tabPersistence';
|
|
10
14
|
import { useTabAnimation } from './useTabAnimation';
|
|
11
15
|
|
|
@@ -29,6 +33,50 @@ class DebugErrorBoundary extends Component {
|
|
|
29
33
|
return this.props.children;
|
|
30
34
|
}
|
|
31
35
|
}
|
|
36
|
+
|
|
37
|
+
// ─── Snapshot helpers ──────────────────────────────────
|
|
38
|
+
|
|
39
|
+
function snapshotCount(feature) {
|
|
40
|
+
try {
|
|
41
|
+
const snap = feature.getSnapshot();
|
|
42
|
+
if (Array.isArray(snap)) return snap.length;
|
|
43
|
+
if (snap && typeof snap === 'object') {
|
|
44
|
+
const obj = snap;
|
|
45
|
+
if (Array.isArray(obj.items)) return obj.items.length;
|
|
46
|
+
if (Array.isArray(obj.logs)) return obj.logs.length;
|
|
47
|
+
if (Array.isArray(obj.entries)) return obj.entries.length;
|
|
48
|
+
if (Array.isArray(obj.environments)) return obj.environments.length;
|
|
49
|
+
}
|
|
50
|
+
} catch {/* ignore */}
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
function buildPanelConnectionStatus(features) {
|
|
54
|
+
const devConnect = features.find(f => f.name === 'devConnect');
|
|
55
|
+
if (!devConnect) {
|
|
56
|
+
return {
|
|
57
|
+
label: 'offline desktop sync unavailable',
|
|
58
|
+
color: Colors.textLight
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
const snap = devConnect.getSnapshot() ?? {};
|
|
63
|
+
const host = snap.isSimulator ? 'localhost' : snap.computerHost?.trim();
|
|
64
|
+
const port = snap.daemonPort?.trim();
|
|
65
|
+
const target = host && port ? `${host}:${port}` : host || (port ? `port ${port}` : 'not configured');
|
|
66
|
+
return {
|
|
67
|
+
label: `${snap.streaming ? 'live' : 'offline'} ${target}`,
|
|
68
|
+
color: snap.streaming ? Colors.success : Colors.textLight
|
|
69
|
+
};
|
|
70
|
+
} catch {
|
|
71
|
+
return {
|
|
72
|
+
label: 'offline desktop sync unavailable',
|
|
73
|
+
color: Colors.textLight
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// ─── Main Component ────────────────────────────────────
|
|
79
|
+
|
|
32
80
|
export function FloatPanelView({
|
|
33
81
|
features,
|
|
34
82
|
panelOpen,
|
|
@@ -37,6 +85,8 @@ export function FloatPanelView({
|
|
|
37
85
|
onClearAll
|
|
38
86
|
}) {
|
|
39
87
|
const [activeTab, setActiveTab] = useState(0);
|
|
88
|
+
const [searchQuery, setSearchQuery] = useState('');
|
|
89
|
+
const [filterBad, setFilterBad] = useState(false);
|
|
40
90
|
const tabLoaded = useRef(false);
|
|
41
91
|
|
|
42
92
|
// Restore last tab on mount
|
|
@@ -67,6 +117,8 @@ export function FloatPanelView({
|
|
|
67
117
|
tabCount: features.length,
|
|
68
118
|
onTabChange: useCallback(index => {
|
|
69
119
|
tabLoaded.current = true;
|
|
120
|
+
setSearchQuery('');
|
|
121
|
+
setFilterBad(false);
|
|
70
122
|
setActiveTab(index);
|
|
71
123
|
const featureName = features[index]?.name;
|
|
72
124
|
if (featureName) {
|
|
@@ -105,10 +157,31 @@ export function FloatPanelView({
|
|
|
105
157
|
|
|
106
158
|
// Badge (first feature that returns one)
|
|
107
159
|
const envBadge = features.map(f => f.badge?.()).find(b => b != null) ?? null;
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
160
|
+
|
|
161
|
+
// Rail items with counts
|
|
162
|
+
const railItems = features.map(f => {
|
|
163
|
+
const b = f.badge?.();
|
|
164
|
+
return {
|
|
165
|
+
id: f.name,
|
|
166
|
+
label: f.label,
|
|
167
|
+
dotColor: b?.color ?? null,
|
|
168
|
+
count: snapshotCount(f)
|
|
169
|
+
};
|
|
170
|
+
});
|
|
171
|
+
const panelConnectionStatus = buildPanelConnectionStatus(features);
|
|
172
|
+
const handleClearAll = useCallback(() => {
|
|
173
|
+
setSearchQuery('');
|
|
174
|
+
setFilterBad(false);
|
|
175
|
+
onClearAll();
|
|
176
|
+
}, [onClearAll]);
|
|
177
|
+
|
|
178
|
+
// Active feature + summary
|
|
179
|
+
const activeFeature = features[activeTab];
|
|
180
|
+
const activeSnapshot = activeFeature?.getSnapshot();
|
|
181
|
+
const activeSummary = activeFeature ? buildFeatureSummary(activeFeature, activeSnapshot) : null;
|
|
182
|
+
|
|
183
|
+
// Filtered snapshot — reuse activeSnapshot to avoid double getSnapshot()
|
|
184
|
+
const filteredSnapshot = activeFeature ? filterFeatureSnapshot(activeFeature, activeSnapshot, searchQuery, filterBad ? 'bad' : 'all') : null;
|
|
112
185
|
|
|
113
186
|
// Render active feature content
|
|
114
187
|
const renderFeatureContent = () => {
|
|
@@ -123,7 +196,7 @@ export function FloatPanelView({
|
|
|
123
196
|
style: styles.emptyText,
|
|
124
197
|
children: "Feature not found"
|
|
125
198
|
});
|
|
126
|
-
const snapshot =
|
|
199
|
+
const snapshot = filteredSnapshot;
|
|
127
200
|
const TabComponent = feature.renderContent;
|
|
128
201
|
if (TabComponent) return /*#__PURE__*/_jsx(TabComponent, {
|
|
129
202
|
snapshot: snapshot,
|
|
@@ -137,6 +210,7 @@ export function FloatPanelView({
|
|
|
137
210
|
})
|
|
138
211
|
});
|
|
139
212
|
};
|
|
213
|
+
const showSearch = activeSummary ? activeSummary.count != null && activeSummary.count > 0 : false;
|
|
140
214
|
return /*#__PURE__*/_jsx(DebugErrorBoundary, {
|
|
141
215
|
onError: onClosePanel,
|
|
142
216
|
children: /*#__PURE__*/_jsxs(View, {
|
|
@@ -146,23 +220,39 @@ export function FloatPanelView({
|
|
|
146
220
|
visible: !panelOpen,
|
|
147
221
|
onPress: onOpenPanel,
|
|
148
222
|
badge: envBadge
|
|
149
|
-
}), panelOpen && /*#__PURE__*/
|
|
223
|
+
}), panelOpen && /*#__PURE__*/_jsx(DebugPanel, {
|
|
150
224
|
onClose: onClosePanel,
|
|
151
|
-
onClearAll:
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
225
|
+
onClearAll: handleClearAll,
|
|
226
|
+
syncLabel: panelConnectionStatus.label,
|
|
227
|
+
syncColor: panelConnectionStatus.color,
|
|
228
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
229
|
+
style: styles.bodyRow,
|
|
230
|
+
children: [/*#__PURE__*/_jsx(FeatureRail, {
|
|
231
|
+
items: railItems,
|
|
232
|
+
activeIndex: activeTab,
|
|
233
|
+
onSelectTab: switchTab
|
|
234
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
235
|
+
style: styles.contentColumn,
|
|
236
|
+
children: [activeFeature && activeSummary && /*#__PURE__*/_jsx(FeatureIntroCard, {
|
|
237
|
+
title: activeFeature.label,
|
|
238
|
+
summary: activeSummary,
|
|
239
|
+
filterBad: filterBad,
|
|
240
|
+
onFilterBad: setFilterBad,
|
|
241
|
+
searchQuery: searchQuery,
|
|
242
|
+
onSearchChange: setSearchQuery,
|
|
243
|
+
showSearch: showSearch
|
|
244
|
+
}), /*#__PURE__*/_jsx(Animated.View, {
|
|
245
|
+
style: [styles.contentContainer, {
|
|
246
|
+
opacity: contentOpacity,
|
|
247
|
+
transform: [{
|
|
248
|
+
translateX: contentTranslateX
|
|
249
|
+
}]
|
|
250
|
+
}],
|
|
251
|
+
...panHandlers,
|
|
252
|
+
children: renderFeatureContent()
|
|
253
|
+
})]
|
|
254
|
+
})]
|
|
255
|
+
})
|
|
166
256
|
})]
|
|
167
257
|
})
|
|
168
258
|
});
|
|
@@ -176,6 +266,13 @@ const styles = StyleSheet.create({
|
|
|
176
266
|
bottom: 0,
|
|
177
267
|
zIndex: 999
|
|
178
268
|
},
|
|
269
|
+
bodyRow: {
|
|
270
|
+
flex: 1,
|
|
271
|
+
flexDirection: 'row'
|
|
272
|
+
},
|
|
273
|
+
contentColumn: {
|
|
274
|
+
flex: 1
|
|
275
|
+
},
|
|
179
276
|
contentContainer: {
|
|
180
277
|
flex: 1
|
|
181
278
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Component","useCallback","useEffect","useRef","useState","View","Text","StyleSheet","Animated","getPreference","setPreference","KEYS","FloatIcon","DebugPanel","FeatureTabBar","resolveStoredTabIndex","useTabAnimation","jsx","_jsx","jsxs","_jsxs","DebugErrorBoundary","state","hasError","getDerivedStateFromError","componentDidCatch","error","info","console","componentStack","props","onError","render","children","FloatPanelView","features","panelOpen","onOpenPanel","onClosePanel","onClearAll","activeTab","setActiveTab","tabLoaded","current","length","mounted","lastTab","then","val","idx","featureName","name","contentOpacity","contentTranslateX","panHandlers","switchTab","tabCount","onTabChange","index","setTick","refreshQueued","scheduleRefresh","requestAnimationFrame","t","unsubs","map","f","subscribe","filter","u","forEach","envBadge","badge","find","b","tabs","label","id","renderFeatureContent","style","styles","emptyText","feature","snapshot","getSnapshot","TabComponent","renderContent","genericContent","jsonContent","JSON","stringify","container","pointerEvents","visible","onPress","onClose","activeIndex","onSelectTab","contentContainer","opacity","transform","translateX","create","position","top","left","right","bottom","zIndex","flex","padding","textAlign","color","fontSize","fontFamily"],"sourceRoot":"../../../../src","sources":["ui/panel/FloatPanelView.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Component","useCallback","useEffect","useRef","useState","View","Text","StyleSheet","Animated","Colors","getPreference","setPreference","KEYS","FloatIcon","DebugPanel","FeatureRail","FeatureIntroCard","buildFeatureSummary","filterFeatureSnapshot","resolveStoredTabIndex","useTabAnimation","jsx","_jsx","jsxs","_jsxs","DebugErrorBoundary","state","hasError","getDerivedStateFromError","componentDidCatch","error","info","console","componentStack","props","onError","render","children","snapshotCount","feature","snap","getSnapshot","Array","isArray","length","obj","items","logs","entries","environments","undefined","buildPanelConnectionStatus","features","devConnect","find","f","name","label","color","textLight","host","isSimulator","computerHost","trim","port","daemonPort","target","streaming","success","FloatPanelView","panelOpen","onOpenPanel","onClosePanel","onClearAll","activeTab","setActiveTab","searchQuery","setSearchQuery","filterBad","setFilterBad","tabLoaded","current","mounted","lastTab","then","val","idx","featureName","contentOpacity","contentTranslateX","panHandlers","switchTab","tabCount","onTabChange","index","setTick","refreshQueued","scheduleRefresh","requestAnimationFrame","t","unsubs","map","subscribe","filter","u","forEach","envBadge","badge","b","railItems","id","dotColor","count","panelConnectionStatus","handleClearAll","activeFeature","activeSnapshot","activeSummary","filteredSnapshot","renderFeatureContent","style","styles","emptyText","snapshot","TabComponent","renderContent","genericContent","jsonContent","JSON","stringify","showSearch","container","pointerEvents","visible","onPress","onClose","syncLabel","syncColor","bodyRow","activeIndex","onSelectTab","contentColumn","title","summary","onFilterBad","onSearchChange","contentContainer","opacity","transform","translateX","create","position","top","left","right","bottom","zIndex","flex","flexDirection","padding","textAlign","fontSize","fontFamily"],"sourceRoot":"../../../../src","sources":["ui/panel/FloatPanelView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function buildFeatureSummary(feature, snapshot) {
|
|
4
|
+
const name = feature.name;
|
|
5
|
+
if (name === 'network') return buildNetworkSummary(snapshot);
|
|
6
|
+
if (name === 'console') return buildConsoleSummary(snapshot);
|
|
7
|
+
if (name === 'navigation') return buildNavigationSummary(snapshot);
|
|
8
|
+
if (name === 'zustand') return buildZustandSummary(snapshot);
|
|
9
|
+
if (name === 'track') return buildTrackSummary(snapshot);
|
|
10
|
+
if (name === 'clipboard') return buildClipboardSummary(snapshot);
|
|
11
|
+
if (name === 'environment') return buildEnvironmentSummary(snapshot);
|
|
12
|
+
if (name === 'devConnect') return buildDevConnectSummary(snapshot);
|
|
13
|
+
if (name === 'sessionHistory') return buildSessionHistorySummary(snapshot);
|
|
14
|
+
if (name === 'thirdPartyLibs') return buildThirdPartyLibsSummary(snapshot);
|
|
15
|
+
if (name === 'native') return buildNativeSummary(snapshot);
|
|
16
|
+
return buildUnknownSummary(snapshot);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// ─── Per-feature builders ──────────────────────────────
|
|
20
|
+
|
|
21
|
+
function buildNetworkSummary(snapshot) {
|
|
22
|
+
const items = asArray(snapshot);
|
|
23
|
+
const count = items.length;
|
|
24
|
+
let badCount = 0;
|
|
25
|
+
let latestLabel;
|
|
26
|
+
if (count > 0) {
|
|
27
|
+
for (const item of items) {
|
|
28
|
+
const n = item;
|
|
29
|
+
if (n.error || (n.response?.status ?? 0) >= 400) badCount++;
|
|
30
|
+
}
|
|
31
|
+
const last = items[items.length - 1];
|
|
32
|
+
const method = last.request?.method?.toUpperCase() ?? '';
|
|
33
|
+
const url = last.request?.url ?? '';
|
|
34
|
+
const status = last.response?.status;
|
|
35
|
+
const path = extractPath(url);
|
|
36
|
+
latestLabel = [method, path, status].filter(Boolean).join(' ');
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
capabilityText: 'HTTP capture, status, duration, request and response body',
|
|
40
|
+
count,
|
|
41
|
+
badCount: badCount > 0 ? badCount : undefined,
|
|
42
|
+
latestLabel,
|
|
43
|
+
supportsBadFilter: count > 0
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function buildConsoleSummary(snapshot) {
|
|
47
|
+
const items = asArray(snapshot);
|
|
48
|
+
const count = items.length;
|
|
49
|
+
let badCount = 0;
|
|
50
|
+
let latestLabel;
|
|
51
|
+
if (count > 0) {
|
|
52
|
+
for (const item of items) {
|
|
53
|
+
const lvl = item.level ?? '';
|
|
54
|
+
if (lvl === 'warn' || lvl === 'error' || lvl === 'fatal') badCount++;
|
|
55
|
+
}
|
|
56
|
+
const last = items[items.length - 1];
|
|
57
|
+
latestLabel = formatConsoleMessage(last.data);
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
capabilityText: 'Console log capture with level filtering',
|
|
61
|
+
count,
|
|
62
|
+
badCount: badCount > 0 ? badCount : undefined,
|
|
63
|
+
latestLabel,
|
|
64
|
+
supportsBadFilter: count > 0
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
function buildNavigationSummary(snapshot) {
|
|
68
|
+
const items = asArray(snapshot);
|
|
69
|
+
const count = items.length;
|
|
70
|
+
let latestLabel;
|
|
71
|
+
if (count > 0) {
|
|
72
|
+
const last = items[items.length - 1];
|
|
73
|
+
const from = last.from ?? '?';
|
|
74
|
+
const to = last.to ?? '?';
|
|
75
|
+
latestLabel = `${from} → ${to}`;
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
capabilityText: 'Screen navigation tracking with route history',
|
|
79
|
+
count,
|
|
80
|
+
latestLabel,
|
|
81
|
+
supportsBadFilter: false
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
function buildZustandSummary(snapshot) {
|
|
85
|
+
const items = asArray(snapshot);
|
|
86
|
+
const count = items.length;
|
|
87
|
+
let latestLabel;
|
|
88
|
+
if (count > 0) {
|
|
89
|
+
const last = items[items.length - 1];
|
|
90
|
+
const parts = [last.action, last.storeName].filter(Boolean);
|
|
91
|
+
latestLabel = parts.join(' @ ') || undefined;
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
capabilityText: 'State change tracking for Zustand stores',
|
|
95
|
+
count,
|
|
96
|
+
latestLabel,
|
|
97
|
+
supportsBadFilter: false
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
function buildTrackSummary(snapshot) {
|
|
101
|
+
const items = asArray(snapshot);
|
|
102
|
+
const count = items.length;
|
|
103
|
+
let latestLabel;
|
|
104
|
+
if (count > 0) {
|
|
105
|
+
const last = items[items.length - 1];
|
|
106
|
+
latestLabel = last.eventName;
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
capabilityText: 'Analytics event tracking and inspection',
|
|
110
|
+
count,
|
|
111
|
+
latestLabel,
|
|
112
|
+
supportsBadFilter: false
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
function buildClipboardSummary(_snapshot) {
|
|
116
|
+
return {
|
|
117
|
+
capabilityText: 'Clipboard event monitoring',
|
|
118
|
+
supportsBadFilter: false
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function buildEnvironmentSummary(snapshot) {
|
|
122
|
+
const env = snapshot ?? {};
|
|
123
|
+
const envs = env.environments ?? [];
|
|
124
|
+
const current = envs.find(e => e.id === env.currentEnvironmentId);
|
|
125
|
+
return {
|
|
126
|
+
capabilityText: 'Environment configuration and switching',
|
|
127
|
+
count: envs.length || undefined,
|
|
128
|
+
latestLabel: current?.label,
|
|
129
|
+
statusLabel: current?.label,
|
|
130
|
+
supportsBadFilter: false
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
function buildDevConnectSummary(snapshot) {
|
|
134
|
+
const s = snapshot ?? {};
|
|
135
|
+
const host = [s.computerHost, s.daemonPort].filter(Boolean).join(':');
|
|
136
|
+
return {
|
|
137
|
+
capabilityText: 'Desktop sync with daemon connection',
|
|
138
|
+
statusLabel: host ? `${s.streaming ? 'live' : 'offline'} ${host}` : s.streaming ? 'live' : undefined,
|
|
139
|
+
statusColor: s.streaming ? '#34C759' : undefined,
|
|
140
|
+
supportsBadFilter: false
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function buildSessionHistorySummary(snapshot) {
|
|
144
|
+
const s = snapshot ?? {};
|
|
145
|
+
const count = s.sessions?.length;
|
|
146
|
+
return {
|
|
147
|
+
capabilityText: 'Session log recording and replay',
|
|
148
|
+
count: count || undefined,
|
|
149
|
+
latestLabel: s.currentSessionId,
|
|
150
|
+
supportsBadFilter: false
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
function buildThirdPartyLibsSummary(snapshot) {
|
|
154
|
+
const items = asArray(snapshot);
|
|
155
|
+
return {
|
|
156
|
+
capabilityText: 'Third-party library inspection and management',
|
|
157
|
+
count: items.length || undefined,
|
|
158
|
+
supportsBadFilter: false
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
function buildNativeSummary(snapshot) {
|
|
162
|
+
const items = asArray(snapshot);
|
|
163
|
+
let badCount = 0;
|
|
164
|
+
for (const item of items) {
|
|
165
|
+
const lvl = item.level ?? '';
|
|
166
|
+
if (lvl === 'warn' || lvl === 'error' || lvl === 'fatal') badCount++;
|
|
167
|
+
}
|
|
168
|
+
return {
|
|
169
|
+
capabilityText: 'Native log capture',
|
|
170
|
+
count: items.length || undefined,
|
|
171
|
+
badCount: badCount > 0 ? badCount : undefined,
|
|
172
|
+
supportsBadFilter: items.length > 0
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
function buildUnknownSummary(snapshot) {
|
|
176
|
+
const items = asArray(snapshot);
|
|
177
|
+
return {
|
|
178
|
+
capabilityText: `${items.length} item${items.length !== 1 ? 's' : ''} captured`,
|
|
179
|
+
count: items.length || undefined,
|
|
180
|
+
supportsBadFilter: false
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
// ─── Helpers ───────────────────────────────────────────
|
|
185
|
+
|
|
186
|
+
function asArray(snap) {
|
|
187
|
+
if (Array.isArray(snap)) return snap;
|
|
188
|
+
return [];
|
|
189
|
+
}
|
|
190
|
+
function extractPath(url) {
|
|
191
|
+
try {
|
|
192
|
+
const u = new URL(url);
|
|
193
|
+
return u.pathname + u.search;
|
|
194
|
+
} catch {
|
|
195
|
+
return url;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
function formatConsoleMessage(data) {
|
|
199
|
+
if (!data || data.length === 0) return undefined;
|
|
200
|
+
const joined = data.map(d => typeof d === 'string' ? d : JSON.stringify(d)).join(' ').slice(0, 60);
|
|
201
|
+
return joined || undefined;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=buildFeatureSummary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["buildFeatureSummary","feature","snapshot","name","buildNetworkSummary","buildConsoleSummary","buildNavigationSummary","buildZustandSummary","buildTrackSummary","buildClipboardSummary","buildEnvironmentSummary","buildDevConnectSummary","buildSessionHistorySummary","buildThirdPartyLibsSummary","buildNativeSummary","buildUnknownSummary","items","asArray","count","length","badCount","latestLabel","item","n","error","response","status","last","method","request","toUpperCase","url","path","extractPath","filter","Boolean","join","capabilityText","undefined","supportsBadFilter","lvl","level","formatConsoleMessage","data","from","to","parts","action","storeName","eventName","_snapshot","env","envs","environments","current","find","e","id","currentEnvironmentId","label","statusLabel","s","host","computerHost","daemonPort","streaming","statusColor","sessions","currentSessionId","snap","Array","isArray","u","URL","pathname","search","joined","map","d","JSON","stringify","slice"],"sourceRoot":"../../../../src","sources":["ui/panel/buildFeatureSummary.ts"],"mappings":"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","ignoreList":[]}
|