react-native-debug-toolkit 0.6.4 → 2.0.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.
Files changed (277) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +150 -212
  3. package/lib/commonjs/components/ClipboardTab.js +92 -0
  4. package/lib/commonjs/components/ClipboardTab.js.map +1 -0
  5. package/lib/commonjs/components/ConsoleLogTab.js +295 -0
  6. package/lib/commonjs/components/ConsoleLogTab.js.map +1 -0
  7. package/lib/commonjs/components/EnvironmentTab.js +288 -0
  8. package/lib/commonjs/components/EnvironmentTab.js.map +1 -0
  9. package/lib/commonjs/components/FloatPanelView.js +797 -0
  10. package/lib/commonjs/components/FloatPanelView.js.map +1 -0
  11. package/lib/commonjs/components/NavigationLogTab.js +131 -0
  12. package/lib/commonjs/components/NavigationLogTab.js.map +1 -0
  13. package/lib/commonjs/components/NetworkLogTab.js +575 -0
  14. package/lib/commonjs/components/NetworkLogTab.js.map +1 -0
  15. package/lib/commonjs/components/ThirdPartyLibsTab.js +97 -0
  16. package/lib/commonjs/components/ThirdPartyLibsTab.js.map +1 -0
  17. package/lib/commonjs/components/TrackLogTab.js +372 -0
  18. package/lib/commonjs/components/TrackLogTab.js.map +1 -0
  19. package/lib/commonjs/components/ZustandLogTab.js +451 -0
  20. package/lib/commonjs/components/ZustandLogTab.js.map +1 -0
  21. package/lib/commonjs/components/shared/CollapsibleSection.js +84 -0
  22. package/lib/commonjs/components/shared/CollapsibleSection.js.map +1 -0
  23. package/lib/commonjs/components/shared/CopyButton.js +64 -0
  24. package/lib/commonjs/components/shared/CopyButton.js.map +1 -0
  25. package/lib/commonjs/components/shared/JsonView.js +157 -0
  26. package/lib/commonjs/components/shared/JsonView.js.map +1 -0
  27. package/lib/commonjs/core/DebugToolkit.js +142 -0
  28. package/lib/commonjs/core/DebugToolkit.js.map +1 -0
  29. package/lib/commonjs/core/DebugToolkitProvider.js +64 -0
  30. package/lib/commonjs/core/DebugToolkitProvider.js.map +1 -0
  31. package/lib/commonjs/features/ClipboardFeature.js +17 -0
  32. package/lib/commonjs/features/ClipboardFeature.js.map +1 -0
  33. package/lib/commonjs/features/ConsoleLogFeature.js +98 -0
  34. package/lib/commonjs/features/ConsoleLogFeature.js.map +1 -0
  35. package/lib/commonjs/features/EnvironmentFeature.js +168 -0
  36. package/lib/commonjs/features/EnvironmentFeature.js.map +1 -0
  37. package/lib/commonjs/features/NavigationLogFeature.js +60 -0
  38. package/lib/commonjs/features/NavigationLogFeature.js.map +1 -0
  39. package/lib/commonjs/features/NetworkFeature.js +328 -0
  40. package/lib/commonjs/features/NetworkFeature.js.map +1 -0
  41. package/lib/commonjs/features/ThirdPartyLibsFeature.js +51 -0
  42. package/lib/commonjs/features/ThirdPartyLibsFeature.js.map +1 -0
  43. package/lib/commonjs/features/TrackFeature.js +55 -0
  44. package/lib/commonjs/features/TrackFeature.js.map +1 -0
  45. package/lib/commonjs/features/ZustandLogFeature.js +76 -0
  46. package/lib/commonjs/features/ZustandLogFeature.js.map +1 -0
  47. package/lib/commonjs/hooks/useNavigationLogger.js +78 -0
  48. package/lib/commonjs/hooks/useNavigationLogger.js.map +1 -0
  49. package/lib/commonjs/hooks/useSlideDetailAnimation.js +53 -0
  50. package/lib/commonjs/hooks/useSlideDetailAnimation.js.map +1 -0
  51. package/lib/commonjs/index.js +165 -0
  52. package/lib/commonjs/index.js.map +1 -0
  53. package/lib/commonjs/initialize.js +161 -0
  54. package/lib/commonjs/initialize.js.map +1 -0
  55. package/lib/commonjs/native/NativeDebugLibs.js +58 -0
  56. package/lib/commonjs/native/NativeDebugLibs.js.map +1 -0
  57. package/lib/commonjs/package.json +1 -0
  58. package/lib/commonjs/types/index.js +6 -0
  59. package/lib/commonjs/types/index.js.map +1 -0
  60. package/lib/commonjs/utils/constants.js +135 -0
  61. package/lib/commonjs/utils/constants.js.map +1 -0
  62. package/lib/commonjs/utils/copyToComputer.js +97 -0
  63. package/lib/commonjs/utils/copyToComputer.js.map +1 -0
  64. package/lib/commonjs/utils/createEventChannel.js +21 -0
  65. package/lib/commonjs/utils/createEventChannel.js.map +1 -0
  66. package/lib/commonjs/utils/createObservableStore.js +38 -0
  67. package/lib/commonjs/utils/createObservableStore.js.map +1 -0
  68. package/lib/commonjs/utils/safeStringify.js +27 -0
  69. package/lib/commonjs/utils/safeStringify.js.map +1 -0
  70. package/lib/module/components/ClipboardTab.js +86 -0
  71. package/lib/module/components/ClipboardTab.js.map +1 -0
  72. package/lib/module/components/ConsoleLogTab.js +290 -0
  73. package/lib/module/components/ConsoleLogTab.js.map +1 -0
  74. package/lib/module/components/EnvironmentTab.js +282 -0
  75. package/lib/module/components/EnvironmentTab.js.map +1 -0
  76. package/lib/module/components/FloatPanelView.js +791 -0
  77. package/lib/module/components/FloatPanelView.js.map +1 -0
  78. package/lib/module/components/NavigationLogTab.js +126 -0
  79. package/lib/module/components/NavigationLogTab.js.map +1 -0
  80. package/lib/module/components/NetworkLogTab.js +570 -0
  81. package/lib/module/components/NetworkLogTab.js.map +1 -0
  82. package/lib/module/components/ThirdPartyLibsTab.js +91 -0
  83. package/lib/module/components/ThirdPartyLibsTab.js.map +1 -0
  84. package/lib/module/components/TrackLogTab.js +367 -0
  85. package/lib/module/components/TrackLogTab.js.map +1 -0
  86. package/lib/module/components/ZustandLogTab.js +446 -0
  87. package/lib/module/components/ZustandLogTab.js.map +1 -0
  88. package/lib/module/components/shared/CollapsibleSection.js +78 -0
  89. package/lib/module/components/shared/CollapsibleSection.js.map +1 -0
  90. package/lib/module/components/shared/CopyButton.js +58 -0
  91. package/lib/module/components/shared/CopyButton.js.map +1 -0
  92. package/lib/module/components/shared/JsonView.js +152 -0
  93. package/lib/module/components/shared/JsonView.js.map +1 -0
  94. package/lib/module/core/DebugToolkit.js +137 -0
  95. package/lib/module/core/DebugToolkit.js.map +1 -0
  96. package/lib/module/core/DebugToolkitProvider.js +58 -0
  97. package/lib/module/core/DebugToolkitProvider.js.map +1 -0
  98. package/lib/module/features/ClipboardFeature.js +12 -0
  99. package/lib/module/features/ClipboardFeature.js.map +1 -0
  100. package/lib/module/features/ConsoleLogFeature.js +93 -0
  101. package/lib/module/features/ConsoleLogFeature.js.map +1 -0
  102. package/lib/module/features/EnvironmentFeature.js +164 -0
  103. package/lib/module/features/EnvironmentFeature.js.map +1 -0
  104. package/lib/module/features/NavigationLogFeature.js +54 -0
  105. package/lib/module/features/NavigationLogFeature.js.map +1 -0
  106. package/lib/module/features/NetworkFeature.js +322 -0
  107. package/lib/module/features/NetworkFeature.js.map +1 -0
  108. package/lib/module/features/ThirdPartyLibsFeature.js +46 -0
  109. package/lib/module/features/ThirdPartyLibsFeature.js.map +1 -0
  110. package/lib/module/features/TrackFeature.js +49 -0
  111. package/lib/module/features/TrackFeature.js.map +1 -0
  112. package/lib/module/features/ZustandLogFeature.js +69 -0
  113. package/lib/module/features/ZustandLogFeature.js.map +1 -0
  114. package/lib/module/hooks/useNavigationLogger.js +74 -0
  115. package/lib/module/hooks/useNavigationLogger.js.map +1 -0
  116. package/lib/module/hooks/useSlideDetailAnimation.js +50 -0
  117. package/lib/module/hooks/useSlideDetailAnimation.js.map +1 -0
  118. package/lib/module/index.js +29 -0
  119. package/lib/module/index.js.map +1 -0
  120. package/lib/module/initialize.js +156 -0
  121. package/lib/module/initialize.js.map +1 -0
  122. package/lib/module/native/NativeDebugLibs.js +54 -0
  123. package/lib/module/native/NativeDebugLibs.js.map +1 -0
  124. package/lib/module/package.json +1 -0
  125. package/lib/module/types/index.js +4 -0
  126. package/lib/module/types/index.js.map +1 -0
  127. package/lib/module/utils/constants.js +130 -0
  128. package/lib/module/utils/constants.js.map +1 -0
  129. package/lib/module/utils/copyToComputer.js +91 -0
  130. package/lib/module/utils/copyToComputer.js.map +1 -0
  131. package/lib/module/utils/createEventChannel.js +17 -0
  132. package/lib/module/utils/createEventChannel.js.map +1 -0
  133. package/lib/module/utils/createObservableStore.js +34 -0
  134. package/lib/module/utils/createObservableStore.js.map +1 -0
  135. package/lib/module/utils/safeStringify.js +23 -0
  136. package/lib/module/utils/safeStringify.js.map +1 -0
  137. package/lib/typescript/src/components/ClipboardTab.d.ts +4 -0
  138. package/lib/typescript/src/components/ClipboardTab.d.ts.map +1 -0
  139. package/lib/typescript/src/components/ConsoleLogTab.d.ts +4 -0
  140. package/lib/typescript/src/components/ConsoleLogTab.d.ts.map +1 -0
  141. package/lib/typescript/src/components/EnvironmentTab.d.ts +4 -0
  142. package/lib/typescript/src/components/EnvironmentTab.d.ts.map +1 -0
  143. package/lib/typescript/src/components/FloatPanelView.d.ts +64 -0
  144. package/lib/typescript/src/components/FloatPanelView.d.ts.map +1 -0
  145. package/lib/typescript/src/components/NavigationLogTab.d.ts +4 -0
  146. package/lib/typescript/src/components/NavigationLogTab.d.ts.map +1 -0
  147. package/lib/typescript/src/components/NetworkLogTab.d.ts +4 -0
  148. package/lib/typescript/src/components/NetworkLogTab.d.ts.map +1 -0
  149. package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts +4 -0
  150. package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts.map +1 -0
  151. package/lib/typescript/src/components/TrackLogTab.d.ts +4 -0
  152. package/lib/typescript/src/components/TrackLogTab.d.ts.map +1 -0
  153. package/lib/typescript/src/components/ZustandLogTab.d.ts +4 -0
  154. package/lib/typescript/src/components/ZustandLogTab.d.ts.map +1 -0
  155. package/lib/typescript/src/components/shared/CollapsibleSection.d.ts +9 -0
  156. package/lib/typescript/src/components/shared/CollapsibleSection.d.ts.map +1 -0
  157. package/lib/typescript/src/components/shared/CopyButton.d.ts +12 -0
  158. package/lib/typescript/src/components/shared/CopyButton.d.ts.map +1 -0
  159. package/lib/typescript/src/components/shared/JsonView.d.ts +6 -0
  160. package/lib/typescript/src/components/shared/JsonView.d.ts.map +1 -0
  161. package/lib/typescript/src/core/DebugToolkit.d.ts +27 -0
  162. package/lib/typescript/src/core/DebugToolkit.d.ts.map +1 -0
  163. package/lib/typescript/src/core/DebugToolkitProvider.d.ts +18 -0
  164. package/lib/typescript/src/core/DebugToolkitProvider.d.ts.map +1 -0
  165. package/lib/typescript/src/features/ClipboardFeature.d.ts +3 -0
  166. package/lib/typescript/src/features/ClipboardFeature.d.ts.map +1 -0
  167. package/lib/typescript/src/features/ConsoleLogFeature.d.ts +7 -0
  168. package/lib/typescript/src/features/ConsoleLogFeature.d.ts.map +1 -0
  169. package/lib/typescript/src/features/EnvironmentFeature.d.ts +8 -0
  170. package/lib/typescript/src/features/EnvironmentFeature.d.ts.map +1 -0
  171. package/lib/typescript/src/features/NavigationLogFeature.d.ts +8 -0
  172. package/lib/typescript/src/features/NavigationLogFeature.d.ts.map +1 -0
  173. package/lib/typescript/src/features/NetworkFeature.d.ts +28 -0
  174. package/lib/typescript/src/features/NetworkFeature.d.ts.map +1 -0
  175. package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts +3 -0
  176. package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts.map +1 -0
  177. package/lib/typescript/src/features/TrackFeature.d.ts +12 -0
  178. package/lib/typescript/src/features/TrackFeature.d.ts.map +1 -0
  179. package/lib/typescript/src/features/ZustandLogFeature.d.ts +29 -0
  180. package/lib/typescript/src/features/ZustandLogFeature.d.ts.map +1 -0
  181. package/lib/typescript/src/hooks/useNavigationLogger.d.ts +20 -0
  182. package/lib/typescript/src/hooks/useNavigationLogger.d.ts.map +1 -0
  183. package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts +11 -0
  184. package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts.map +1 -0
  185. package/lib/typescript/src/index.d.ts +26 -0
  186. package/lib/typescript/src/index.d.ts.map +1 -0
  187. package/lib/typescript/src/initialize.d.ts +51 -0
  188. package/lib/typescript/src/initialize.d.ts.map +1 -0
  189. package/lib/typescript/src/native/NativeDebugLibs.d.ts +11 -0
  190. package/lib/typescript/src/native/NativeDebugLibs.d.ts.map +1 -0
  191. package/lib/typescript/src/types/index.d.ts +112 -0
  192. package/lib/typescript/src/types/index.d.ts.map +1 -0
  193. package/lib/typescript/src/utils/constants.d.ts +96 -0
  194. package/lib/typescript/src/utils/constants.d.ts.map +1 -0
  195. package/lib/typescript/src/utils/copyToComputer.d.ts +30 -0
  196. package/lib/typescript/src/utils/copyToComputer.d.ts.map +1 -0
  197. package/lib/typescript/src/utils/createEventChannel.d.ts +7 -0
  198. package/lib/typescript/src/utils/createEventChannel.d.ts.map +1 -0
  199. package/lib/typescript/src/utils/createObservableStore.d.ts +9 -0
  200. package/lib/typescript/src/utils/createObservableStore.d.ts.map +1 -0
  201. package/lib/typescript/src/utils/safeStringify.d.ts +6 -0
  202. package/lib/typescript/src/utils/safeStringify.d.ts.map +1 -0
  203. package/package.json +63 -24
  204. package/src/components/ClipboardTab.tsx +81 -0
  205. package/src/components/ConsoleLogTab.tsx +209 -0
  206. package/src/components/EnvironmentTab.tsx +276 -0
  207. package/src/components/FloatPanelView.tsx +714 -0
  208. package/src/components/NavigationLogTab.tsx +66 -0
  209. package/src/components/NetworkLogTab.tsx +411 -0
  210. package/src/components/ThirdPartyLibsTab.tsx +63 -0
  211. package/src/components/TrackLogTab.tsx +245 -0
  212. package/src/components/ZustandLogTab.tsx +305 -0
  213. package/src/components/shared/CollapsibleSection.tsx +78 -0
  214. package/src/components/shared/CopyButton.tsx +68 -0
  215. package/src/components/shared/JsonView.tsx +125 -0
  216. package/src/core/DebugToolkit.tsx +174 -0
  217. package/src/core/DebugToolkitProvider.tsx +89 -0
  218. package/src/features/ClipboardFeature.ts +11 -0
  219. package/src/features/ConsoleLogFeature.ts +118 -0
  220. package/src/features/EnvironmentFeature.ts +194 -0
  221. package/src/features/NavigationLogFeature.ts +74 -0
  222. package/src/features/NetworkFeature.ts +488 -0
  223. package/src/features/ThirdPartyLibsFeature.ts +42 -0
  224. package/src/features/TrackFeature.ts +69 -0
  225. package/src/features/ZustandLogFeature.ts +127 -0
  226. package/src/hooks/useNavigationLogger.ts +107 -0
  227. package/src/hooks/useSlideDetailAnimation.ts +45 -0
  228. package/src/index.ts +52 -0
  229. package/src/initialize.ts +214 -0
  230. package/src/native/NativeDebugLibs.ts +74 -0
  231. package/src/types/index.ts +138 -0
  232. package/src/utils/constants.ts +91 -0
  233. package/src/utils/copyToComputer.ts +104 -0
  234. package/src/utils/createEventChannel.ts +22 -0
  235. package/src/utils/createObservableStore.ts +42 -0
  236. package/src/utils/safeStringify.ts +25 -0
  237. package/.cursor/rules/react-native.mdc +0 -41
  238. package/README.zh-CN.md +0 -230
  239. package/index.js +0 -41
  240. package/ios/BuildTypeModule.h +0 -9
  241. package/ios/BuildTypeModule.m +0 -42
  242. package/ios/RNDebugLibs.h +0 -10
  243. package/ios/RNDebugLibs.m +0 -79
  244. package/lib/DebugToolKit.js +0 -126
  245. package/lib/EnvironmentManager.ts +0 -80
  246. package/lib/NativeDebugLibs.js +0 -67
  247. package/lib/features/ConsoleLogFeature.js +0 -70
  248. package/lib/features/NavigationLogFeature.js +0 -45
  249. package/lib/features/NetworkFeature.js +0 -389
  250. package/lib/features/PerformanceFeature.js +0 -390
  251. package/lib/features/ThirdPartyLibsFeature.js +0 -63
  252. package/lib/features/TrackFeature.js +0 -94
  253. package/lib/features/ZustandLogFeature.js +0 -44
  254. package/lib/hooks/useNavigationLogger.js +0 -92
  255. package/lib/index.js +0 -114
  256. package/lib/navigation/NavigationLogger.js +0 -1
  257. package/lib/types/TrackTypes.ts +0 -92
  258. package/lib/utils/DebugConst.js +0 -67
  259. package/lib/utils/StorageUtils.js +0 -80
  260. package/lib/views/ConsoleLogDetails.js +0 -314
  261. package/lib/views/FloatPanelView.js +0 -697
  262. package/lib/views/HttpLogDetails.js +0 -648
  263. package/lib/views/NavigationLogDetails.js +0 -302
  264. package/lib/views/RestartModal.js +0 -75
  265. package/lib/views/SubViewConsoleLogs.js +0 -209
  266. package/lib/views/SubViewEnvironment.js +0 -73
  267. package/lib/views/SubViewHTTPLogs.js +0 -235
  268. package/lib/views/SubViewNavigationLogs.js +0 -199
  269. package/lib/views/SubViewPerformance.js +0 -515
  270. package/lib/views/SubViewThirdPartyLibs.js +0 -239
  271. package/lib/views/SubViewTrackLogs.js +0 -318
  272. package/lib/views/SubViewZustandLogs.js +0 -279
  273. package/lib/views/TabView.js +0 -66
  274. package/lib/views/TrackLogDetails.js +0 -481
  275. package/lib/views/ZustandLogDetails.js +0 -355
  276. package/react-native-debug-toolkit.podspec +0 -25
  277. package/react-native.config.js +0 -18
@@ -0,0 +1,570 @@
1
+ "use strict";
2
+
3
+ import React, { useState, useEffect, useRef } from 'react';
4
+ import { View, Text, FlatList, TouchableOpacity, StyleSheet, TextInput, Animated, ScrollView } from 'react-native';
5
+ import { Colors, getMethodColor } from '../utils/constants';
6
+ import { CollapsibleSection } from './shared/CollapsibleSection';
7
+ import { JsonView } from './shared/JsonView';
8
+ import { CopyButton } from './shared/CopyButton';
9
+ import { fmt } from '../utils/copyToComputer';
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ const formatSize = data => {
12
+ if (!data) return '';
13
+ try {
14
+ const len = (typeof data === 'string' ? data : JSON.stringify(data)).length;
15
+ if (len < 1024) return `(${len} B)`;
16
+ if (len < 1024 * 1024) return `(${(len / 1024).toFixed(1)} KB)`;
17
+ return `(${(len / (1024 * 1024)).toFixed(1)} MB)`;
18
+ } catch {
19
+ return '';
20
+ }
21
+ };
22
+
23
+ // --- Detail view (in-panel push) ---
24
+ const NetworkLogDetail = ({
25
+ log,
26
+ onBack
27
+ }) => {
28
+ const statusColor = log.error || log.response && log.response.status >= 400 ? Colors.error : Colors.success;
29
+ const curl = () => {
30
+ let c = `curl -X ${log.request.method} '${log.request.url}'`;
31
+ if (log.request.headers) {
32
+ Object.entries(log.request.headers).forEach(([k, v]) => c += ` \\\n -H '${k}: ${v}'`);
33
+ }
34
+ if (log.request.body) {
35
+ c += ` \\\n -d '${typeof log.request.body === 'string' ? log.request.body : JSON.stringify(log.request.body)}'`;
36
+ }
37
+ return c;
38
+ };
39
+ return /*#__PURE__*/_jsxs(View, {
40
+ style: s.detailWrap,
41
+ children: [/*#__PURE__*/_jsxs(View, {
42
+ style: s.detailHeader,
43
+ children: [/*#__PURE__*/_jsxs(TouchableOpacity, {
44
+ onPress: onBack,
45
+ style: s.backBtn,
46
+ activeOpacity: 0.6,
47
+ children: [/*#__PURE__*/_jsx(Text, {
48
+ style: s.backIcon,
49
+ children: "\u2039"
50
+ }), /*#__PURE__*/_jsx(Text, {
51
+ style: s.backText,
52
+ children: "Back"
53
+ })]
54
+ }), /*#__PURE__*/_jsxs(View, {
55
+ style: s.detailHeaderCenter,
56
+ children: [/*#__PURE__*/_jsx(View, {
57
+ style: [s.methodBadge, {
58
+ backgroundColor: getMethodColor(log.request.method)
59
+ }],
60
+ children: /*#__PURE__*/_jsx(Text, {
61
+ style: s.methodBadgeText,
62
+ children: log.request.method
63
+ })
64
+ }), /*#__PURE__*/_jsx(View, {
65
+ style: [s.statusPill, {
66
+ backgroundColor: statusColor
67
+ }],
68
+ children: /*#__PURE__*/_jsx(Text, {
69
+ style: s.statusPillText,
70
+ children: log.response?.status ?? 'ERR'
71
+ })
72
+ }), log.duration != null && /*#__PURE__*/_jsxs(Text, {
73
+ style: s.durationText,
74
+ children: [log.duration, "ms"]
75
+ })]
76
+ })]
77
+ }), /*#__PURE__*/_jsxs(ScrollView, {
78
+ style: s.detailBody,
79
+ contentContainerStyle: s.detailBodyContent,
80
+ children: [/*#__PURE__*/_jsxs(View, {
81
+ style: s.urlCard,
82
+ children: [/*#__PURE__*/_jsx(Text, {
83
+ style: s.urlText,
84
+ selectable: true,
85
+ numberOfLines: 3,
86
+ children: log.request.url
87
+ }), /*#__PURE__*/_jsx(CopyButton, {
88
+ text: log.request.url,
89
+ label: "URL"
90
+ })]
91
+ }), /*#__PURE__*/_jsx(CollapsibleSection, {
92
+ title: "Request Body",
93
+ initiallyExpanded: true,
94
+ children: log.request.body != null ? /*#__PURE__*/_jsxs(View, {
95
+ style: s.sectionWithCopy,
96
+ children: [/*#__PURE__*/_jsx(CopyButton, {
97
+ text: fmt(log.request.body),
98
+ label: "Request Body"
99
+ }), /*#__PURE__*/_jsx(JsonView, {
100
+ data: log.request.body,
101
+ maxHeight: 250
102
+ })]
103
+ }) : /*#__PURE__*/_jsx(Text, {
104
+ style: s.emptySection,
105
+ children: "No request body"
106
+ })
107
+ }), /*#__PURE__*/_jsx(CollapsibleSection, {
108
+ title: "Request Headers",
109
+ children: log.request.headers ? /*#__PURE__*/_jsxs(View, {
110
+ style: s.sectionWithCopy,
111
+ children: [/*#__PURE__*/_jsx(CopyButton, {
112
+ text: fmt(log.request.headers),
113
+ label: "Request Headers"
114
+ }), /*#__PURE__*/_jsx(JsonView, {
115
+ data: log.request.headers,
116
+ maxHeight: 200
117
+ })]
118
+ }) : /*#__PURE__*/_jsx(Text, {
119
+ style: s.emptySection,
120
+ children: "No headers"
121
+ })
122
+ }), /*#__PURE__*/_jsxs(CollapsibleSection, {
123
+ title: `Response ${formatSize(log.response?.data)}`,
124
+ initiallyExpanded: true,
125
+ children: [log.error && /*#__PURE__*/_jsxs(View, {
126
+ style: s.errorBox,
127
+ children: [/*#__PURE__*/_jsx(Text, {
128
+ style: s.errorIcon,
129
+ children: "\u26A0"
130
+ }), /*#__PURE__*/_jsx(Text, {
131
+ style: s.errorText,
132
+ children: log.error
133
+ })]
134
+ }), log.response?.data != null ? /*#__PURE__*/_jsxs(View, {
135
+ style: s.sectionWithCopy,
136
+ children: [/*#__PURE__*/_jsx(CopyButton, {
137
+ text: fmt(log.response.data),
138
+ label: "Response Body"
139
+ }), /*#__PURE__*/_jsx(JsonView, {
140
+ data: log.response.data,
141
+ maxHeight: 300
142
+ })]
143
+ }) : /*#__PURE__*/_jsx(Text, {
144
+ style: s.emptySection,
145
+ children: "No response body"
146
+ })]
147
+ }), log.response?.headers && /*#__PURE__*/_jsx(CollapsibleSection, {
148
+ title: "Response Headers",
149
+ children: /*#__PURE__*/_jsxs(View, {
150
+ style: s.sectionWithCopy,
151
+ children: [/*#__PURE__*/_jsx(CopyButton, {
152
+ text: fmt(log.response.headers),
153
+ label: "Response Headers"
154
+ }), /*#__PURE__*/_jsx(JsonView, {
155
+ data: log.response.headers,
156
+ maxHeight: 200
157
+ })]
158
+ })
159
+ }), /*#__PURE__*/_jsx(CollapsibleSection, {
160
+ title: "cURL",
161
+ children: /*#__PURE__*/_jsxs(View, {
162
+ style: s.sectionWithCopy,
163
+ children: [/*#__PURE__*/_jsx(CopyButton, {
164
+ text: curl(),
165
+ label: "cURL"
166
+ }), /*#__PURE__*/_jsx(View, {
167
+ style: s.codeBlock,
168
+ children: /*#__PURE__*/_jsx(Text, {
169
+ style: s.codeText,
170
+ selectable: true,
171
+ children: curl()
172
+ })
173
+ })]
174
+ })
175
+ })]
176
+ })]
177
+ });
178
+ };
179
+
180
+ // --- List view ---
181
+ export const NetworkLogTab = /*#__PURE__*/React.memo(({
182
+ data
183
+ }) => {
184
+ const [selectedLog, setSelectedLog] = useState(null);
185
+ const [search, setSearch] = useState('');
186
+ const slideAnim = useRef(new Animated.Value(0)).current;
187
+ const listSlideAnim = useRef(new Animated.Value(0)).current;
188
+ useEffect(() => {
189
+ if (selectedLog) {
190
+ listSlideAnim.setValue(0);
191
+ Animated.parallel([Animated.spring(slideAnim, {
192
+ toValue: 1,
193
+ friction: 9,
194
+ tension: 60,
195
+ useNativeDriver: true
196
+ }), Animated.spring(listSlideAnim, {
197
+ toValue: 1,
198
+ friction: 9,
199
+ tension: 60,
200
+ useNativeDriver: true
201
+ })]).start();
202
+ } else {
203
+ slideAnim.setValue(0);
204
+ listSlideAnim.setValue(0);
205
+ }
206
+ }, [selectedLog]);
207
+ const detailTranslateX = slideAnim.interpolate({
208
+ inputRange: [0, 1],
209
+ outputRange: [300, 0]
210
+ });
211
+ const listTranslateX = listSlideAnim.interpolate({
212
+ inputRange: [0, 1],
213
+ outputRange: [0, -60]
214
+ });
215
+ const listOpacity = listSlideAnim.interpolate({
216
+ inputRange: [0, 1],
217
+ outputRange: [1, 0]
218
+ });
219
+ const filtered = search ? data.filter(l => l.request.url.toLowerCase().includes(search.toLowerCase()) || l.request.method.toLowerCase().includes(search.toLowerCase())) : data;
220
+ const sorted = [...filtered].sort((a, b) => b.timestamp - a.timestamp);
221
+ const renderItem = ({
222
+ item
223
+ }) => {
224
+ const ok = !item.error && (!item.response || item.response.status < 400);
225
+ const sc = ok ? Colors.success : Colors.error;
226
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
227
+ style: s.card,
228
+ onPress: () => setSelectedLog(item),
229
+ activeOpacity: 0.6,
230
+ children: /*#__PURE__*/_jsxs(View, {
231
+ style: s.cardRow,
232
+ children: [/*#__PURE__*/_jsx(View, {
233
+ style: [s.statusIndicator, {
234
+ backgroundColor: sc
235
+ }]
236
+ }), /*#__PURE__*/_jsxs(View, {
237
+ style: s.cardBody,
238
+ children: [/*#__PURE__*/_jsxs(View, {
239
+ style: s.cardMeta,
240
+ children: [/*#__PURE__*/_jsx(Text, {
241
+ style: [s.methodText, {
242
+ color: getMethodColor(item.request.method)
243
+ }],
244
+ children: item.request.method
245
+ }), /*#__PURE__*/_jsx(View, {
246
+ style: [s.miniPill, {
247
+ backgroundColor: sc
248
+ }],
249
+ children: /*#__PURE__*/_jsx(Text, {
250
+ style: s.miniPillText,
251
+ children: item.response?.status ?? 'ERR'
252
+ })
253
+ }), item.duration != null && /*#__PURE__*/_jsxs(Text, {
254
+ style: s.durationText,
255
+ children: [item.duration, "ms"]
256
+ })]
257
+ }), /*#__PURE__*/_jsx(Text, {
258
+ style: [s.url, !ok && {
259
+ color: Colors.error
260
+ }],
261
+ numberOfLines: 2,
262
+ children: item.request.url
263
+ }), /*#__PURE__*/_jsx(Text, {
264
+ style: s.time,
265
+ children: new Date(item.timestamp).toLocaleTimeString()
266
+ })]
267
+ })]
268
+ })
269
+ });
270
+ };
271
+ return /*#__PURE__*/_jsxs(View, {
272
+ style: s.container,
273
+ children: [/*#__PURE__*/_jsxs(Animated.View, {
274
+ style: [s.listWrap, selectedLog ? {
275
+ opacity: listOpacity,
276
+ transform: [{
277
+ translateX: listTranslateX
278
+ }]
279
+ } : null],
280
+ children: [/*#__PURE__*/_jsx(View, {
281
+ style: s.searchContainer,
282
+ children: /*#__PURE__*/_jsxs(View, {
283
+ style: s.searchBar,
284
+ children: [/*#__PURE__*/_jsx(Text, {
285
+ style: s.searchIcon,
286
+ children: "\u2315"
287
+ }), /*#__PURE__*/_jsx(TextInput, {
288
+ style: s.search,
289
+ placeholder: "Search URLs...",
290
+ placeholderTextColor: Colors.textLight,
291
+ value: search,
292
+ onChangeText: setSearch
293
+ })]
294
+ })
295
+ }), sorted.length === 0 ? /*#__PURE__*/_jsxs(View, {
296
+ style: s.emptyContainer,
297
+ children: [/*#__PURE__*/_jsx(Text, {
298
+ style: s.emptyIcon,
299
+ children: "~"
300
+ }), /*#__PURE__*/_jsx(Text, {
301
+ style: s.empty,
302
+ children: "No HTTP requests logged"
303
+ })]
304
+ }) : /*#__PURE__*/_jsx(FlatList, {
305
+ data: sorted,
306
+ renderItem: renderItem,
307
+ keyExtractor: item => item.id,
308
+ contentContainerStyle: s.listContent,
309
+ initialNumToRender: 20,
310
+ maxToRenderPerBatch: 10,
311
+ windowSize: 5,
312
+ removeClippedSubviews: true
313
+ })]
314
+ }), selectedLog && /*#__PURE__*/_jsx(Animated.View, {
315
+ style: [s.detailOverlay, {
316
+ transform: [{
317
+ translateX: detailTranslateX
318
+ }]
319
+ }],
320
+ children: /*#__PURE__*/_jsx(NetworkLogDetail, {
321
+ log: selectedLog,
322
+ onBack: () => setSelectedLog(null)
323
+ })
324
+ })]
325
+ });
326
+ });
327
+ const s = StyleSheet.create({
328
+ container: {
329
+ flex: 1,
330
+ backgroundColor: Colors.background
331
+ },
332
+ listWrap: {
333
+ position: 'absolute',
334
+ top: 0,
335
+ left: 0,
336
+ right: 0,
337
+ bottom: 0
338
+ },
339
+ // Search
340
+ searchContainer: {
341
+ paddingHorizontal: 12,
342
+ paddingTop: 10,
343
+ paddingBottom: 6,
344
+ backgroundColor: Colors.background
345
+ },
346
+ searchBar: {
347
+ flexDirection: 'row',
348
+ alignItems: 'center',
349
+ backgroundColor: Colors.surface,
350
+ borderRadius: 10,
351
+ paddingHorizontal: 10,
352
+ height: 38
353
+ },
354
+ searchIcon: {
355
+ fontSize: 16,
356
+ color: Colors.textLight,
357
+ marginRight: 6
358
+ },
359
+ search: {
360
+ flex: 1,
361
+ fontSize: 14,
362
+ color: Colors.text,
363
+ padding: 0
364
+ },
365
+ // Empty
366
+ emptyContainer: {
367
+ flex: 1,
368
+ alignItems: 'center',
369
+ justifyContent: 'center'
370
+ },
371
+ emptyIcon: {
372
+ fontSize: 40,
373
+ color: Colors.textLight,
374
+ marginBottom: 4
375
+ },
376
+ empty: {
377
+ textAlign: 'center',
378
+ color: Colors.textLight,
379
+ fontSize: 14
380
+ },
381
+ // List
382
+ listContent: {
383
+ padding: 12
384
+ },
385
+ card: {
386
+ backgroundColor: Colors.surface,
387
+ borderRadius: 12,
388
+ marginBottom: 8,
389
+ overflow: 'hidden'
390
+ },
391
+ cardRow: {
392
+ flexDirection: 'row',
393
+ padding: 14
394
+ },
395
+ statusIndicator: {
396
+ width: 3,
397
+ borderRadius: 2,
398
+ marginRight: 12
399
+ },
400
+ cardBody: {
401
+ flex: 1
402
+ },
403
+ cardMeta: {
404
+ flexDirection: 'row',
405
+ alignItems: 'center',
406
+ marginBottom: 6,
407
+ gap: 6
408
+ },
409
+ methodText: {
410
+ fontSize: 13,
411
+ fontWeight: '700'
412
+ },
413
+ miniPill: {
414
+ paddingHorizontal: 7,
415
+ paddingVertical: 2,
416
+ borderRadius: 4
417
+ },
418
+ miniPillText: {
419
+ color: '#FFF',
420
+ fontSize: 10,
421
+ fontWeight: '700'
422
+ },
423
+ durationText: {
424
+ fontSize: 12,
425
+ color: Colors.textSecondary,
426
+ fontWeight: '500'
427
+ },
428
+ url: {
429
+ fontSize: 13,
430
+ color: Colors.textSecondary,
431
+ marginBottom: 4,
432
+ lineHeight: 18
433
+ },
434
+ time: {
435
+ fontSize: 11,
436
+ color: Colors.textLight
437
+ },
438
+ // Detail overlay
439
+ detailOverlay: {
440
+ position: 'absolute',
441
+ top: 0,
442
+ left: 0,
443
+ right: 0,
444
+ bottom: 0,
445
+ backgroundColor: Colors.background
446
+ },
447
+ detailWrap: {
448
+ flex: 1,
449
+ backgroundColor: Colors.background
450
+ },
451
+ detailHeader: {
452
+ flexDirection: 'row',
453
+ alignItems: 'center',
454
+ paddingHorizontal: 8,
455
+ paddingVertical: 10,
456
+ backgroundColor: Colors.surface,
457
+ borderBottomWidth: StyleSheet.hairlineWidth,
458
+ borderBottomColor: Colors.border
459
+ },
460
+ backBtn: {
461
+ flexDirection: 'row',
462
+ alignItems: 'center',
463
+ paddingHorizontal: 6,
464
+ paddingVertical: 4,
465
+ borderRadius: 8,
466
+ marginRight: 8
467
+ },
468
+ backIcon: {
469
+ fontSize: 24,
470
+ fontWeight: '300',
471
+ color: Colors.primary,
472
+ marginTop: -2,
473
+ marginRight: 2
474
+ },
475
+ backText: {
476
+ fontSize: 16,
477
+ color: Colors.primary,
478
+ fontWeight: '500'
479
+ },
480
+ detailHeaderCenter: {
481
+ flexDirection: 'row',
482
+ alignItems: 'center',
483
+ gap: 8,
484
+ flex: 1
485
+ },
486
+ methodBadge: {
487
+ paddingHorizontal: 10,
488
+ paddingVertical: 4,
489
+ borderRadius: 6
490
+ },
491
+ methodBadgeText: {
492
+ color: '#FFF',
493
+ fontSize: 12,
494
+ fontWeight: '700'
495
+ },
496
+ statusPill: {
497
+ paddingHorizontal: 9,
498
+ paddingVertical: 3,
499
+ borderRadius: 6
500
+ },
501
+ statusPillText: {
502
+ color: '#FFF',
503
+ fontSize: 11,
504
+ fontWeight: '700'
505
+ },
506
+ detailBody: {
507
+ flex: 1
508
+ },
509
+ detailBodyContent: {
510
+ padding: 12,
511
+ paddingBottom: 40
512
+ },
513
+ // Detail content
514
+ urlCard: {
515
+ flexDirection: 'row',
516
+ alignItems: 'center',
517
+ backgroundColor: Colors.surface,
518
+ borderRadius: 12,
519
+ padding: 14,
520
+ marginBottom: 8,
521
+ gap: 8
522
+ },
523
+ urlText: {
524
+ flex: 1,
525
+ fontSize: 13,
526
+ color: Colors.textSecondary,
527
+ lineHeight: 18
528
+ },
529
+ sectionWithCopy: {
530
+ gap: 8
531
+ },
532
+ emptySection: {
533
+ fontSize: 13,
534
+ color: Colors.textLight,
535
+ paddingVertical: 4
536
+ },
537
+ errorBox: {
538
+ backgroundColor: 'rgba(255,59,48,0.06)',
539
+ borderWidth: 1,
540
+ borderColor: 'rgba(255,59,48,0.15)',
541
+ borderRadius: 10,
542
+ padding: 12,
543
+ marginBottom: 10,
544
+ flexDirection: 'row',
545
+ alignItems: 'flex-start',
546
+ gap: 8
547
+ },
548
+ errorIcon: {
549
+ fontSize: 14,
550
+ color: Colors.error
551
+ },
552
+ errorText: {
553
+ flex: 1,
554
+ fontSize: 13,
555
+ color: Colors.error,
556
+ lineHeight: 18
557
+ },
558
+ codeBlock: {
559
+ backgroundColor: '#1E1E2E',
560
+ borderRadius: 12,
561
+ padding: 12
562
+ },
563
+ codeText: {
564
+ fontFamily: 'Courier',
565
+ fontSize: 12,
566
+ color: '#CDD6F4',
567
+ lineHeight: 18
568
+ }
569
+ });
570
+ //# sourceMappingURL=NetworkLogTab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useState","useEffect","useRef","View","Text","FlatList","TouchableOpacity","StyleSheet","TextInput","Animated","ScrollView","Colors","getMethodColor","CollapsibleSection","JsonView","CopyButton","fmt","jsx","_jsx","jsxs","_jsxs","formatSize","data","len","JSON","stringify","length","toFixed","NetworkLogDetail","log","onBack","statusColor","error","response","status","success","curl","c","request","method","url","headers","Object","entries","forEach","k","v","body","style","s","detailWrap","children","detailHeader","onPress","backBtn","activeOpacity","backIcon","backText","detailHeaderCenter","methodBadge","backgroundColor","methodBadgeText","statusPill","statusPillText","duration","durationText","detailBody","contentContainerStyle","detailBodyContent","urlCard","urlText","selectable","numberOfLines","text","label","title","initiallyExpanded","sectionWithCopy","maxHeight","emptySection","errorBox","errorIcon","errorText","codeBlock","codeText","NetworkLogTab","memo","selectedLog","setSelectedLog","search","setSearch","slideAnim","Value","current","listSlideAnim","setValue","parallel","spring","toValue","friction","tension","useNativeDriver","start","detailTranslateX","interpolate","inputRange","outputRange","listTranslateX","listOpacity","filtered","filter","l","toLowerCase","includes","sorted","sort","a","b","timestamp","renderItem","item","ok","sc","card","cardRow","statusIndicator","cardBody","cardMeta","methodText","color","miniPill","miniPillText","time","Date","toLocaleTimeString","container","listWrap","opacity","transform","translateX","searchContainer","searchBar","searchIcon","placeholder","placeholderTextColor","textLight","value","onChangeText","emptyContainer","emptyIcon","empty","keyExtractor","id","listContent","initialNumToRender","maxToRenderPerBatch","windowSize","removeClippedSubviews","detailOverlay","create","flex","background","position","top","left","right","bottom","paddingHorizontal","paddingTop","paddingBottom","flexDirection","alignItems","surface","borderRadius","height","fontSize","marginRight","padding","justifyContent","marginBottom","textAlign","overflow","width","gap","fontWeight","paddingVertical","textSecondary","lineHeight","borderBottomWidth","hairlineWidth","borderBottomColor","border","primary","marginTop","borderWidth","borderColor","fontFamily"],"sourceRoot":"../../../src","sources":["components/NetworkLogTab.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { View, Text, TouchableOpacity, StyleSheet } from 'react-native';
5
+ import { Colors } from '../utils/constants';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ export const ThirdPartyLibsTab = ({
8
+ data
9
+ }) => {
10
+ if (data.length === 0) {
11
+ return /*#__PURE__*/_jsx(View, {
12
+ style: styles.container,
13
+ children: /*#__PURE__*/_jsx(Text, {
14
+ style: styles.empty,
15
+ children: "No debug libraries available for this platform"
16
+ })
17
+ });
18
+ }
19
+ return /*#__PURE__*/_jsx(View, {
20
+ style: styles.container,
21
+ children: data.map(lib => /*#__PURE__*/_jsxs(View, {
22
+ style: styles.libCard,
23
+ children: [/*#__PURE__*/_jsx(Text, {
24
+ style: styles.libName,
25
+ children: lib.name
26
+ }), /*#__PURE__*/_jsx(Text, {
27
+ style: styles.libDesc,
28
+ children: lib.description
29
+ }), /*#__PURE__*/_jsx(View, {
30
+ style: styles.actions,
31
+ children: lib.actions.map(action => /*#__PURE__*/_jsx(TouchableOpacity, {
32
+ style: styles.actionButton,
33
+ onPress: action.onPress,
34
+ children: /*#__PURE__*/_jsx(Text, {
35
+ style: styles.actionText,
36
+ children: action.label
37
+ })
38
+ }, action.id))
39
+ })]
40
+ }, lib.id))
41
+ });
42
+ };
43
+ const styles = StyleSheet.create({
44
+ container: {
45
+ flex: 1,
46
+ backgroundColor: Colors.surface,
47
+ padding: 15
48
+ },
49
+ empty: {
50
+ textAlign: 'center',
51
+ color: Colors.textLight,
52
+ marginTop: 20
53
+ },
54
+ libCard: {
55
+ backgroundColor: Colors.background,
56
+ borderRadius: 8,
57
+ padding: 15,
58
+ marginBottom: 12,
59
+ borderWidth: 1,
60
+ borderColor: Colors.border
61
+ },
62
+ libName: {
63
+ fontSize: 16,
64
+ fontWeight: 'bold',
65
+ color: Colors.text,
66
+ marginBottom: 4
67
+ },
68
+ libDesc: {
69
+ fontSize: 13,
70
+ color: Colors.textSecondary,
71
+ marginBottom: 12
72
+ },
73
+ actions: {
74
+ flexDirection: 'row',
75
+ flexWrap: 'wrap'
76
+ },
77
+ actionButton: {
78
+ backgroundColor: Colors.primary,
79
+ paddingHorizontal: 14,
80
+ paddingVertical: 8,
81
+ borderRadius: 6,
82
+ marginRight: 8,
83
+ marginBottom: 8
84
+ },
85
+ actionText: {
86
+ color: '#FFF',
87
+ fontSize: 14,
88
+ fontWeight: '600'
89
+ }
90
+ });
91
+ //# sourceMappingURL=ThirdPartyLibsTab.js.map