react-native-debug-toolkit 3.3.4 → 3.5.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 (258) hide show
  1. package/README.md +48 -46
  2. package/README.zh-CN.md +48 -46
  3. package/android/src/main/java/com/reactnativedebugtoolkit/DebugToolkitDevConnectModule.java +0 -187
  4. package/bin/debug-toolkit.js +0 -16
  5. package/ios/DebugToolkitDevConnect.h +0 -12
  6. package/ios/DebugToolkitDevConnect.mm +0 -321
  7. package/lib/commonjs/constants/logLevels.js +19 -0
  8. package/lib/commonjs/constants/logLevels.js.map +1 -0
  9. package/lib/commonjs/core/initialize.js +36 -18
  10. package/lib/commonjs/core/initialize.js.map +1 -1
  11. package/lib/commonjs/features/console/ConsoleLogTab.js +4 -15
  12. package/lib/commonjs/features/console/ConsoleLogTab.js.map +1 -1
  13. package/lib/commonjs/features/console/index.js +15 -8
  14. package/lib/commonjs/features/console/index.js.map +1 -1
  15. package/lib/commonjs/features/devConnect/DevConnectTab.js +18 -470
  16. package/lib/commonjs/features/devConnect/DevConnectTab.js.map +1 -1
  17. package/lib/commonjs/features/devConnect/devConnectPreferences.js +0 -12
  18. package/lib/commonjs/features/devConnect/devConnectPreferences.js.map +1 -1
  19. package/lib/commonjs/features/devConnect/devConnectUtils.js +2 -57
  20. package/lib/commonjs/features/devConnect/devConnectUtils.js.map +1 -1
  21. package/lib/commonjs/features/devConnect/index.js +1 -23
  22. package/lib/commonjs/features/devConnect/index.js.map +1 -1
  23. package/lib/commonjs/features/devConnect/nativeDevConnect.js +1 -103
  24. package/lib/commonjs/features/devConnect/nativeDevConnect.js.map +1 -1
  25. package/lib/commonjs/features/network/NetworkLogTab.js +91 -93
  26. package/lib/commonjs/features/network/NetworkLogTab.js.map +1 -1
  27. package/lib/commonjs/features/network/index.js +7 -4
  28. package/lib/commonjs/features/network/index.js.map +1 -1
  29. package/lib/commonjs/features/sessionHistory/SessionHistoryTab.js +1044 -0
  30. package/lib/commonjs/features/sessionHistory/SessionHistoryTab.js.map +1 -0
  31. package/lib/commonjs/features/sessionHistory/index.js +103 -0
  32. package/lib/commonjs/features/sessionHistory/index.js.map +1 -0
  33. package/lib/commonjs/features/track/index.js +4 -3
  34. package/lib/commonjs/features/track/index.js.map +1 -1
  35. package/lib/commonjs/index.js +27 -0
  36. package/lib/commonjs/index.js.map +1 -1
  37. package/lib/commonjs/ui/DebugView.js +3 -0
  38. package/lib/commonjs/ui/DebugView.js.map +1 -1
  39. package/lib/commonjs/ui/panel/DebugPanel.js +67 -34
  40. package/lib/commonjs/ui/panel/DebugPanel.js.map +1 -1
  41. package/lib/commonjs/ui/panel/FeatureIntroCard.js +131 -0
  42. package/lib/commonjs/ui/panel/FeatureIntroCard.js.map +1 -0
  43. package/lib/commonjs/ui/panel/FeatureRail.js +163 -0
  44. package/lib/commonjs/ui/panel/FeatureRail.js.map +1 -0
  45. package/lib/commonjs/ui/panel/FloatPanelView.js +169 -32
  46. package/lib/commonjs/ui/panel/FloatPanelView.js.map +1 -1
  47. package/lib/commonjs/ui/panel/buildFeatureSummary.js +207 -0
  48. package/lib/commonjs/ui/panel/buildFeatureSummary.js.map +1 -0
  49. package/lib/commonjs/ui/panel/filterFeatureSnapshot.js +43 -0
  50. package/lib/commonjs/ui/panel/filterFeatureSnapshot.js.map +1 -0
  51. package/lib/commonjs/ui/panel/tabPersistence.js +17 -0
  52. package/lib/commonjs/ui/panel/tabPersistence.js.map +1 -0
  53. package/lib/commonjs/ui/theme/colors.js +6 -0
  54. package/lib/commonjs/ui/theme/colors.js.map +1 -1
  55. package/lib/commonjs/utils/DaemonClient.js +30 -8
  56. package/lib/commonjs/utils/DaemonClient.js.map +1 -1
  57. package/lib/commonjs/utils/SessionManager.js +132 -0
  58. package/lib/commonjs/utils/SessionManager.js.map +1 -0
  59. package/lib/commonjs/utils/StorageAdapter.js +104 -0
  60. package/lib/commonjs/utils/StorageAdapter.js.map +1 -0
  61. package/lib/commonjs/utils/createChannelFeature.js +22 -5
  62. package/lib/commonjs/utils/createChannelFeature.js.map +1 -1
  63. package/lib/commonjs/utils/createDebugTab.js +21 -0
  64. package/lib/commonjs/utils/createDebugTab.js.map +1 -0
  65. package/lib/commonjs/utils/createPersistedObservableStore.js +14 -8
  66. package/lib/commonjs/utils/createPersistedObservableStore.js.map +1 -1
  67. package/lib/commonjs/utils/debugPreferences.js +28 -6
  68. package/lib/commonjs/utils/debugPreferences.js.map +1 -1
  69. package/lib/commonjs/utils/deviceReport.js +5 -1
  70. package/lib/commonjs/utils/deviceReport.js.map +1 -1
  71. package/lib/commonjs/utils/logRuntime.js +32 -0
  72. package/lib/commonjs/utils/logRuntime.js.map +1 -0
  73. package/lib/module/constants/logLevels.js +15 -0
  74. package/lib/module/constants/logLevels.js.map +1 -0
  75. package/lib/module/core/initialize.js +36 -18
  76. package/lib/module/core/initialize.js.map +1 -1
  77. package/lib/module/features/console/ConsoleLogTab.js +1 -12
  78. package/lib/module/features/console/ConsoleLogTab.js.map +1 -1
  79. package/lib/module/features/console/index.js +15 -8
  80. package/lib/module/features/console/index.js.map +1 -1
  81. package/lib/module/features/devConnect/DevConnectTab.js +21 -473
  82. package/lib/module/features/devConnect/DevConnectTab.js.map +1 -1
  83. package/lib/module/features/devConnect/devConnectPreferences.js +1 -12
  84. package/lib/module/features/devConnect/devConnectPreferences.js.map +1 -1
  85. package/lib/module/features/devConnect/devConnectUtils.js +1 -53
  86. package/lib/module/features/devConnect/devConnectUtils.js.map +1 -1
  87. package/lib/module/features/devConnect/index.js +5 -9
  88. package/lib/module/features/devConnect/index.js.map +1 -1
  89. package/lib/module/features/devConnect/nativeDevConnect.js +1 -100
  90. package/lib/module/features/devConnect/nativeDevConnect.js.map +1 -1
  91. package/lib/module/features/network/NetworkLogTab.js +91 -93
  92. package/lib/module/features/network/NetworkLogTab.js.map +1 -1
  93. package/lib/module/features/network/index.js +7 -4
  94. package/lib/module/features/network/index.js.map +1 -1
  95. package/lib/module/features/sessionHistory/SessionHistoryTab.js +1039 -0
  96. package/lib/module/features/sessionHistory/SessionHistoryTab.js.map +1 -0
  97. package/lib/module/features/sessionHistory/index.js +99 -0
  98. package/lib/module/features/sessionHistory/index.js.map +1 -0
  99. package/lib/module/features/track/index.js +4 -3
  100. package/lib/module/features/track/index.js.map +1 -1
  101. package/lib/module/index.js +4 -0
  102. package/lib/module/index.js.map +1 -1
  103. package/lib/module/ui/DebugView.js +3 -0
  104. package/lib/module/ui/DebugView.js.map +1 -1
  105. package/lib/module/ui/panel/DebugPanel.js +67 -34
  106. package/lib/module/ui/panel/DebugPanel.js.map +1 -1
  107. package/lib/module/ui/panel/FeatureIntroCard.js +126 -0
  108. package/lib/module/ui/panel/FeatureIntroCard.js.map +1 -0
  109. package/lib/module/ui/panel/FeatureRail.js +158 -0
  110. package/lib/module/ui/panel/FeatureRail.js.map +1 -0
  111. package/lib/module/ui/panel/FloatPanelView.js +170 -33
  112. package/lib/module/ui/panel/FloatPanelView.js.map +1 -1
  113. package/lib/module/ui/panel/buildFeatureSummary.js +203 -0
  114. package/lib/module/ui/panel/buildFeatureSummary.js.map +1 -0
  115. package/lib/module/ui/panel/filterFeatureSnapshot.js +39 -0
  116. package/lib/module/ui/panel/filterFeatureSnapshot.js.map +1 -0
  117. package/lib/module/ui/panel/tabPersistence.js +13 -0
  118. package/lib/module/ui/panel/tabPersistence.js.map +1 -0
  119. package/lib/module/ui/theme/colors.js +6 -0
  120. package/lib/module/ui/theme/colors.js.map +1 -1
  121. package/lib/module/utils/DaemonClient.js +30 -8
  122. package/lib/module/utils/DaemonClient.js.map +1 -1
  123. package/lib/module/utils/SessionManager.js +127 -0
  124. package/lib/module/utils/SessionManager.js.map +1 -0
  125. package/lib/module/utils/StorageAdapter.js +96 -0
  126. package/lib/module/utils/StorageAdapter.js.map +1 -0
  127. package/lib/module/utils/createChannelFeature.js +22 -5
  128. package/lib/module/utils/createChannelFeature.js.map +1 -1
  129. package/lib/module/utils/createDebugTab.js +17 -0
  130. package/lib/module/utils/createDebugTab.js.map +1 -0
  131. package/lib/module/utils/createPersistedObservableStore.js +14 -8
  132. package/lib/module/utils/createPersistedObservableStore.js.map +1 -1
  133. package/lib/module/utils/debugPreferences.js +27 -6
  134. package/lib/module/utils/debugPreferences.js.map +1 -1
  135. package/lib/module/utils/deviceReport.js +4 -1
  136. package/lib/module/utils/deviceReport.js.map +1 -1
  137. package/lib/module/utils/logRuntime.js +26 -0
  138. package/lib/module/utils/logRuntime.js.map +1 -0
  139. package/lib/typescript/src/constants/logLevels.d.ts +3 -0
  140. package/lib/typescript/src/constants/logLevels.d.ts.map +1 -0
  141. package/lib/typescript/src/core/initialize.d.ts +6 -0
  142. package/lib/typescript/src/core/initialize.d.ts.map +1 -1
  143. package/lib/typescript/src/features/console/ConsoleLogTab.d.ts.map +1 -1
  144. package/lib/typescript/src/features/console/index.d.ts +2 -1
  145. package/lib/typescript/src/features/console/index.d.ts.map +1 -1
  146. package/lib/typescript/src/features/devConnect/DevConnectTab.d.ts.map +1 -1
  147. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts +0 -2
  148. package/lib/typescript/src/features/devConnect/devConnectPreferences.d.ts.map +1 -1
  149. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts +0 -20
  150. package/lib/typescript/src/features/devConnect/devConnectUtils.d.ts.map +1 -1
  151. package/lib/typescript/src/features/devConnect/index.d.ts +2 -2
  152. package/lib/typescript/src/features/devConnect/index.d.ts.map +1 -1
  153. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts +0 -25
  154. package/lib/typescript/src/features/devConnect/nativeDevConnect.d.ts.map +1 -1
  155. package/lib/typescript/src/features/devConnect/types.d.ts +1 -3
  156. package/lib/typescript/src/features/devConnect/types.d.ts.map +1 -1
  157. package/lib/typescript/src/features/network/NetworkLogTab.d.ts.map +1 -1
  158. package/lib/typescript/src/features/network/index.d.ts +2 -1
  159. package/lib/typescript/src/features/network/index.d.ts.map +1 -1
  160. package/lib/typescript/src/features/sessionHistory/SessionHistoryTab.d.ts +20 -0
  161. package/lib/typescript/src/features/sessionHistory/SessionHistoryTab.d.ts.map +1 -0
  162. package/lib/typescript/src/features/sessionHistory/index.d.ts +4 -0
  163. package/lib/typescript/src/features/sessionHistory/index.d.ts.map +1 -0
  164. package/lib/typescript/src/features/track/index.d.ts +2 -1
  165. package/lib/typescript/src/features/track/index.d.ts.map +1 -1
  166. package/lib/typescript/src/index.d.ts +6 -0
  167. package/lib/typescript/src/index.d.ts.map +1 -1
  168. package/lib/typescript/src/types/feature.d.ts +1 -1
  169. package/lib/typescript/src/types/feature.d.ts.map +1 -1
  170. package/lib/typescript/src/types/index.d.ts +2 -0
  171. package/lib/typescript/src/types/index.d.ts.map +1 -1
  172. package/lib/typescript/src/ui/DebugView.d.ts +4 -2
  173. package/lib/typescript/src/ui/DebugView.d.ts.map +1 -1
  174. package/lib/typescript/src/ui/panel/DebugPanel.d.ts +3 -1
  175. package/lib/typescript/src/ui/panel/DebugPanel.d.ts.map +1 -1
  176. package/lib/typescript/src/ui/panel/FeatureIntroCard.d.ts +11 -0
  177. package/lib/typescript/src/ui/panel/FeatureIntroCard.d.ts.map +1 -0
  178. package/lib/typescript/src/ui/panel/FeatureRail.d.ts +16 -0
  179. package/lib/typescript/src/ui/panel/FeatureRail.d.ts.map +1 -0
  180. package/lib/typescript/src/ui/panel/FloatPanelView.d.ts.map +1 -1
  181. package/lib/typescript/src/ui/panel/buildFeatureSummary.d.ts +13 -0
  182. package/lib/typescript/src/ui/panel/buildFeatureSummary.d.ts.map +1 -0
  183. package/lib/typescript/src/ui/panel/filterFeatureSnapshot.d.ts +3 -0
  184. package/lib/typescript/src/ui/panel/filterFeatureSnapshot.d.ts.map +1 -0
  185. package/lib/typescript/src/ui/panel/tabPersistence.d.ts +3 -0
  186. package/lib/typescript/src/ui/panel/tabPersistence.d.ts.map +1 -0
  187. package/lib/typescript/src/ui/theme/colors.d.ts +5 -0
  188. package/lib/typescript/src/ui/theme/colors.d.ts.map +1 -1
  189. package/lib/typescript/src/utils/DaemonClient.d.ts +7 -1
  190. package/lib/typescript/src/utils/DaemonClient.d.ts.map +1 -1
  191. package/lib/typescript/src/utils/SessionManager.d.ts +30 -0
  192. package/lib/typescript/src/utils/SessionManager.d.ts.map +1 -0
  193. package/lib/typescript/src/utils/StorageAdapter.d.ts +38 -0
  194. package/lib/typescript/src/utils/StorageAdapter.d.ts.map +1 -0
  195. package/lib/typescript/src/utils/createChannelFeature.d.ts +2 -0
  196. package/lib/typescript/src/utils/createChannelFeature.d.ts.map +1 -1
  197. package/lib/typescript/src/utils/createDebugTab.d.ts +18 -0
  198. package/lib/typescript/src/utils/createDebugTab.d.ts.map +1 -0
  199. package/lib/typescript/src/utils/createPersistedObservableStore.d.ts +4 -1
  200. package/lib/typescript/src/utils/createPersistedObservableStore.d.ts.map +1 -1
  201. package/lib/typescript/src/utils/debugPreferences.d.ts +1 -4
  202. package/lib/typescript/src/utils/debugPreferences.d.ts.map +1 -1
  203. package/lib/typescript/src/utils/deviceReport.d.ts +1 -0
  204. package/lib/typescript/src/utils/deviceReport.d.ts.map +1 -1
  205. package/lib/typescript/src/utils/logRuntime.d.ts +13 -0
  206. package/lib/typescript/src/utils/logRuntime.d.ts.map +1 -0
  207. package/package.json +10 -6
  208. package/src/constants/logLevels.ts +13 -0
  209. package/src/core/initialize.ts +61 -21
  210. package/src/features/console/ConsoleLogTab.tsx +1 -14
  211. package/src/features/console/index.ts +18 -8
  212. package/src/features/devConnect/DevConnectTab.tsx +17 -381
  213. package/src/features/devConnect/devConnectPreferences.ts +0 -15
  214. package/src/features/devConnect/devConnectUtils.ts +1 -81
  215. package/src/features/devConnect/index.ts +2 -9
  216. package/src/features/devConnect/nativeDevConnect.ts +1 -136
  217. package/src/features/devConnect/types.ts +1 -3
  218. package/src/features/network/NetworkLogTab.tsx +61 -71
  219. package/src/features/network/index.ts +12 -3
  220. package/src/features/sessionHistory/SessionHistoryTab.tsx +691 -0
  221. package/src/features/sessionHistory/index.ts +102 -0
  222. package/src/features/track/index.ts +10 -3
  223. package/src/index.ts +13 -0
  224. package/src/types/feature.ts +2 -1
  225. package/src/types/index.ts +10 -0
  226. package/src/ui/DebugView.tsx +6 -1
  227. package/src/ui/panel/DebugPanel.tsx +60 -30
  228. package/src/ui/panel/FeatureIntroCard.tsx +127 -0
  229. package/src/ui/panel/FeatureRail.tsx +165 -0
  230. package/src/ui/panel/FloatPanelView.tsx +176 -25
  231. package/src/ui/panel/buildFeatureSummary.ts +288 -0
  232. package/src/ui/panel/filterFeatureSnapshot.ts +51 -0
  233. package/src/ui/panel/tabPersistence.ts +22 -0
  234. package/src/ui/theme/colors.ts +7 -0
  235. package/src/utils/DaemonClient.ts +33 -5
  236. package/src/utils/SessionManager.ts +174 -0
  237. package/src/utils/StorageAdapter.ts +135 -0
  238. package/src/utils/createChannelFeature.ts +28 -6
  239. package/src/utils/createDebugTab.ts +32 -0
  240. package/src/utils/createPersistedObservableStore.ts +18 -10
  241. package/src/utils/debugPreferences.ts +38 -8
  242. package/src/utils/deviceReport.ts +5 -1
  243. package/src/utils/logRuntime.ts +39 -0
  244. package/app.plugin.js +0 -51
  245. package/dev-client.js +0 -3
  246. package/lib/commonjs/ui/panel/FeatureTabBar.js +0 -182
  247. package/lib/commonjs/ui/panel/FeatureTabBar.js.map +0 -1
  248. package/lib/module/ui/panel/FeatureTabBar.js +0 -177
  249. package/lib/module/ui/panel/FeatureTabBar.js.map +0 -1
  250. package/lib/typescript/src/ui/panel/FeatureTabBar.d.ts +0 -13
  251. package/lib/typescript/src/ui/panel/FeatureTabBar.d.ts.map +0 -1
  252. package/scripts/bundle/android.js +0 -101
  253. package/scripts/bundle/cli.js +0 -57
  254. package/scripts/bundle/doctor.js +0 -38
  255. package/scripts/bundle/ios.js +0 -179
  256. package/scripts/bundle/setup.js +0 -39
  257. package/scripts/debug-bundle.gradle +0 -147
  258. package/src/ui/panel/FeatureTabBar.tsx +0 -204
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FeatureIntroCard = FeatureIntroCard;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _colors = require("../theme/colors");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ function hexWithAlpha(hex, alpha) {
13
+ if (/^#[0-9a-fA-F]{6}$/.test(hex)) return hex + alpha;
14
+ return _colors.Colors.signalDefaultBg;
15
+ }
16
+ function FeatureIntroCard({
17
+ title,
18
+ summary,
19
+ filterBad,
20
+ onFilterBad
21
+ }) {
22
+ const {
23
+ statusLabel,
24
+ statusColor,
25
+ supportsBadFilter
26
+ } = summary;
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
28
+ style: styles.card,
29
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
30
+ style: styles.titleRow,
31
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
32
+ style: styles.title,
33
+ numberOfLines: 1,
34
+ children: title
35
+ }), statusLabel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
36
+ style: [styles.statusChip, statusColor && {
37
+ backgroundColor: hexWithAlpha(statusColor, '18')
38
+ }],
39
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
40
+ style: [styles.statusText, statusColor && {
41
+ color: statusColor
42
+ }],
43
+ numberOfLines: 1,
44
+ children: statusLabel
45
+ })
46
+ })]
47
+ }), supportsBadFilter && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
48
+ style: styles.actionRow,
49
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
50
+ style: [styles.chip, !filterBad && styles.chipActive],
51
+ onPress: () => onFilterBad(false),
52
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
53
+ style: [styles.chipText, !filterBad && styles.chipTextActive],
54
+ children: "All"
55
+ })
56
+ }), supportsBadFilter && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
57
+ style: [styles.chip, filterBad && styles.chipBadActive],
58
+ onPress: () => onFilterBad(true),
59
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
60
+ style: [styles.chipText, filterBad && styles.chipTextBad],
61
+ children: "Bad"
62
+ })
63
+ })]
64
+ })]
65
+ });
66
+ }
67
+ const styles = _reactNative.StyleSheet.create({
68
+ card: {
69
+ paddingHorizontal: 14,
70
+ paddingVertical: 10,
71
+ borderBottomWidth: _reactNative.StyleSheet.hairlineWidth,
72
+ borderBottomColor: _colors.Colors.border,
73
+ backgroundColor: _colors.Colors.background
74
+ },
75
+ titleRow: {
76
+ flexDirection: 'row',
77
+ alignItems: 'center',
78
+ gap: 8
79
+ },
80
+ title: {
81
+ fontSize: 17,
82
+ fontWeight: '700',
83
+ color: _colors.Colors.text,
84
+ flex: 1
85
+ },
86
+ statusChip: {
87
+ paddingHorizontal: 8,
88
+ paddingVertical: 2,
89
+ borderRadius: 8,
90
+ backgroundColor: _colors.Colors.signalDefaultBg
91
+ },
92
+ statusText: {
93
+ fontSize: 11,
94
+ fontWeight: '700',
95
+ color: _colors.Colors.textSecondary
96
+ },
97
+ actionRow: {
98
+ flexDirection: 'row',
99
+ gap: 6,
100
+ marginTop: 8
101
+ },
102
+ chip: {
103
+ height: 26,
104
+ paddingHorizontal: 12,
105
+ justifyContent: 'center',
106
+ borderRadius: 13,
107
+ borderWidth: 1,
108
+ borderColor: _colors.Colors.border,
109
+ backgroundColor: _colors.Colors.surface
110
+ },
111
+ chipActive: {
112
+ backgroundColor: _colors.Colors.text,
113
+ borderColor: _colors.Colors.text
114
+ },
115
+ chipBadActive: {
116
+ backgroundColor: _colors.Colors.error,
117
+ borderColor: _colors.Colors.error
118
+ },
119
+ chipText: {
120
+ fontSize: 11,
121
+ fontWeight: '700',
122
+ color: _colors.Colors.textSecondary
123
+ },
124
+ chipTextActive: {
125
+ color: '#fff'
126
+ },
127
+ chipTextBad: {
128
+ color: '#fff'
129
+ }
130
+ });
131
+ //# sourceMappingURL=FeatureIntroCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_colors","_jsxRuntime","e","__esModule","default","hexWithAlpha","hex","alpha","test","Colors","signalDefaultBg","FeatureIntroCard","title","summary","filterBad","onFilterBad","statusLabel","statusColor","supportsBadFilter","jsxs","View","style","styles","card","children","titleRow","jsx","Text","numberOfLines","statusChip","backgroundColor","statusText","color","actionRow","Pressable","chip","chipActive","onPress","chipText","chipTextActive","chipBadActive","chipTextBad","StyleSheet","create","paddingHorizontal","paddingVertical","borderBottomWidth","hairlineWidth","borderBottomColor","border","background","flexDirection","alignItems","gap","fontSize","fontWeight","text","flex","borderRadius","textSecondary","marginTop","height","justifyContent","borderWidth","borderColor","surface","error"],"sourceRoot":"../../../../src","sources":["ui/panel/FeatureIntroCard.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FeatureRail = FeatureRail;
7
+ exports.shortLabelForFeature = shortLabelForFeature;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _reactNative = require("react-native");
10
+ var _colors = require("../theme/colors");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ // ─── Label Model ──────────────────────────────────────
14
+ const SHORT_LABEL_MAP = {
15
+ network: 'network',
16
+ console: 'console',
17
+ native: 'native',
18
+ navigation: 'nav',
19
+ zustand: 'zustand',
20
+ track: 'track',
21
+ clipboard: 'clip',
22
+ environment: 'env',
23
+ devConnect: 'dev',
24
+ sessionHistory: 'session',
25
+ thirdPartyLibs: 'libs'
26
+ };
27
+ function shortLabelForFeature(label, id) {
28
+ const mapped = SHORT_LABEL_MAP[id];
29
+ if (mapped) return mapped;
30
+ const trimmed = label.trim();
31
+ return trimmed.toLowerCase().slice(0, 7);
32
+ }
33
+
34
+ // ─── Rail Component ───────────────────────────────────
35
+
36
+ function FeatureRail({
37
+ items,
38
+ activeIndex,
39
+ onSelectTab
40
+ }) {
41
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
42
+ style: styles.rail,
43
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
44
+ showsVerticalScrollIndicator: false,
45
+ contentContainerStyle: styles.scrollContent,
46
+ children: items.map((item, index) => {
47
+ const isActive = index === activeIndex;
48
+ const short = shortLabelForFeature(item.label, item.id);
49
+ const dotColor = item.dotColor ?? null;
50
+ const hasCount = item.count != null && item.count > 0;
51
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
52
+ onPress: () => onSelectTab(index),
53
+ style: [styles.item, isActive && styles.activeItem],
54
+ accessibilityRole: "tab",
55
+ accessibilityLabel: item.label,
56
+ accessibilityState: {
57
+ selected: isActive
58
+ },
59
+ children: [isActive && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
60
+ style: styles.activeBar
61
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
62
+ style: [styles.itemName, isActive && styles.activeItemName],
63
+ numberOfLines: 1,
64
+ children: short
65
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
66
+ style: styles.itemMeta,
67
+ children: [dotColor && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
68
+ style: [styles.dot, {
69
+ backgroundColor: dotColor
70
+ }]
71
+ }), hasCount && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
72
+ style: styles.countPill,
73
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
74
+ style: styles.countText,
75
+ children: item.count
76
+ })
77
+ })]
78
+ })]
79
+ }, item.id);
80
+ })
81
+ })
82
+ });
83
+ }
84
+ const RAIL_WIDTH = 80;
85
+ const styles = _reactNative.StyleSheet.create({
86
+ rail: {
87
+ width: RAIL_WIDTH,
88
+ backgroundColor: _colors.Colors.railBackground,
89
+ borderRightWidth: _reactNative.StyleSheet.hairlineWidth,
90
+ borderRightColor: _colors.Colors.panelDivider
91
+ },
92
+ scrollContent: {
93
+ paddingVertical: 6,
94
+ paddingHorizontal: 6,
95
+ gap: 3
96
+ },
97
+ item: {
98
+ minHeight: 56,
99
+ borderRadius: 8,
100
+ justifyContent: 'center',
101
+ alignItems: 'center',
102
+ paddingVertical: 8,
103
+ paddingHorizontal: 4,
104
+ position: 'relative',
105
+ overflow: 'hidden'
106
+ },
107
+ activeItem: {
108
+ backgroundColor: _colors.Colors.surface,
109
+ elevation: 2,
110
+ shadowColor: '#000',
111
+ shadowOffset: {
112
+ width: 0,
113
+ height: 2
114
+ },
115
+ shadowOpacity: 0.06,
116
+ shadowRadius: 4
117
+ },
118
+ activeBar: {
119
+ position: 'absolute',
120
+ left: 0,
121
+ top: 10,
122
+ bottom: 10,
123
+ width: 3,
124
+ borderRadius: 1.5,
125
+ backgroundColor: _colors.Colors.primary
126
+ },
127
+ itemName: {
128
+ fontSize: 9,
129
+ fontWeight: '700',
130
+ color: _colors.Colors.textSecondary,
131
+ letterSpacing: 0
132
+ },
133
+ activeItemName: {
134
+ color: _colors.Colors.text,
135
+ fontWeight: '800'
136
+ },
137
+ itemMeta: {
138
+ marginTop: 4,
139
+ flexDirection: 'row',
140
+ alignItems: 'center',
141
+ gap: 3
142
+ },
143
+ dot: {
144
+ width: 6,
145
+ height: 6,
146
+ borderRadius: 3
147
+ },
148
+ countPill: {
149
+ minWidth: 18,
150
+ height: 14,
151
+ borderRadius: 7,
152
+ backgroundColor: _colors.Colors.background,
153
+ paddingHorizontal: 4,
154
+ alignItems: 'center',
155
+ justifyContent: 'center'
156
+ },
157
+ countText: {
158
+ fontSize: 8,
159
+ fontWeight: '800',
160
+ color: _colors.Colors.textSecondary
161
+ }
162
+ });
163
+ //# sourceMappingURL=FeatureRail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_colors","_jsxRuntime","e","__esModule","default","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","jsx","View","style","styles","rail","children","ScrollView","showsVerticalScrollIndicator","contentContainerStyle","scrollContent","map","item","index","isActive","short","dotColor","hasCount","count","jsxs","Pressable","onPress","activeItem","accessibilityRole","accessibilityLabel","accessibilityState","selected","activeBar","Text","itemName","activeItemName","numberOfLines","itemMeta","dot","backgroundColor","countPill","countText","RAIL_WIDTH","StyleSheet","create","width","Colors","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":[]}
@@ -6,10 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.FloatPanelView = FloatPanelView;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
+ var _colors = require("../theme/colors");
9
10
  var _debugPreferences = require("../../utils/debugPreferences");
10
11
  var _FloatIcon = require("../floating/FloatIcon");
11
12
  var _DebugPanel = require("./DebugPanel");
12
- var _FeatureTabBar = require("./FeatureTabBar");
13
+ var _FeatureRail = require("./FeatureRail");
14
+ var _FeatureIntroCard = require("./FeatureIntroCard");
15
+ var _buildFeatureSummary = require("./buildFeatureSummary");
16
+ var _filterFeatureSnapshot = require("./filterFeatureSnapshot");
17
+ var _tabPersistence = require("./tabPersistence");
13
18
  var _useTabAnimation = require("./useTabAnimation");
14
19
  var _jsxRuntime = require("react/jsx-runtime");
15
20
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -33,6 +38,50 @@ class DebugErrorBoundary extends _react.Component {
33
38
  return this.props.children;
34
39
  }
35
40
  }
41
+
42
+ // ─── Snapshot helpers ──────────────────────────────────
43
+
44
+ function snapshotCount(feature) {
45
+ try {
46
+ const snap = feature.getSnapshot();
47
+ if (Array.isArray(snap)) return snap.length;
48
+ if (snap && typeof snap === 'object') {
49
+ const obj = snap;
50
+ if (Array.isArray(obj.items)) return obj.items.length;
51
+ if (Array.isArray(obj.logs)) return obj.logs.length;
52
+ if (Array.isArray(obj.entries)) return obj.entries.length;
53
+ if (Array.isArray(obj.environments)) return obj.environments.length;
54
+ }
55
+ } catch {/* ignore */}
56
+ return undefined;
57
+ }
58
+ function buildPanelConnectionStatus(features) {
59
+ const devConnect = features.find(f => f.name === 'devConnect');
60
+ if (!devConnect) {
61
+ return {
62
+ label: 'offline desktop sync unavailable',
63
+ color: _colors.Colors.textLight
64
+ };
65
+ }
66
+ try {
67
+ const snap = devConnect.getSnapshot() ?? {};
68
+ const host = snap.isSimulator ? 'localhost' : snap.computerHost?.trim();
69
+ const port = snap.daemonPort?.trim();
70
+ const target = host && port ? `${host}:${port}` : host || (port ? `port ${port}` : 'not configured');
71
+ return {
72
+ label: `${snap.streaming ? 'live' : 'offline'} ${target}`,
73
+ color: snap.streaming ? _colors.Colors.success : _colors.Colors.textLight
74
+ };
75
+ } catch {
76
+ return {
77
+ label: 'offline desktop sync unavailable',
78
+ color: _colors.Colors.textLight
79
+ };
80
+ }
81
+ }
82
+
83
+ // ─── Main Component ────────────────────────────────────
84
+
36
85
  function FloatPanelView({
37
86
  features,
38
87
  panelOpen,
@@ -41,23 +90,28 @@ function FloatPanelView({
41
90
  onClearAll
42
91
  }) {
43
92
  const [activeTab, setActiveTab] = (0, _react.useState)(0);
93
+ const [searchQuery, setSearchQuery] = (0, _react.useState)('');
94
+ const [filterBad, setFilterBad] = (0, _react.useState)(false);
44
95
  const tabLoaded = (0, _react.useRef)(false);
45
96
 
46
97
  // Restore last tab on mount
47
98
  (0, _react.useEffect)(() => {
99
+ if (tabLoaded.current || features.length === 0) return;
48
100
  let mounted = true;
49
101
  (0, _debugPreferences.getPreference)(_debugPreferences.KEYS.lastTab).then(val => {
50
- if (!mounted || !val) return;
51
- const idx = parseInt(val, 10);
52
- if (!isNaN(idx) && idx >= 0) {
53
- setActiveTab(idx);
54
- tabLoaded.current = true;
102
+ if (!mounted || tabLoaded.current) return;
103
+ const idx = (0, _tabPersistence.resolveStoredTabIndex)(features, val);
104
+ setActiveTab(idx);
105
+ const featureName = features[idx]?.name;
106
+ if (featureName && featureName !== val) {
107
+ (0, _debugPreferences.setPreference)(_debugPreferences.KEYS.lastTab, featureName);
55
108
  }
109
+ tabLoaded.current = true;
56
110
  });
57
111
  return () => {
58
112
  mounted = false;
59
113
  };
60
- }, []);
114
+ }, [features]);
61
115
  const {
62
116
  contentOpacity,
63
117
  contentTranslateX,
@@ -67,9 +121,15 @@ function FloatPanelView({
67
121
  activeTab,
68
122
  tabCount: features.length,
69
123
  onTabChange: (0, _react.useCallback)(index => {
124
+ tabLoaded.current = true;
125
+ setSearchQuery('');
126
+ setFilterBad(false);
70
127
  setActiveTab(index);
71
- (0, _debugPreferences.setPreference)(_debugPreferences.KEYS.lastTab, String(index));
72
- }, [])
128
+ const featureName = features[index]?.name;
129
+ if (featureName) {
130
+ (0, _debugPreferences.setPreference)(_debugPreferences.KEYS.lastTab, featureName);
131
+ }
132
+ }, [features])
73
133
  });
74
134
 
75
135
  // Feature subscription → re-render on data changes
@@ -91,17 +151,42 @@ function FloatPanelView({
91
151
  // Clamp activeTab if features shrink
92
152
  (0, _react.useEffect)(() => {
93
153
  if (features.length > 0 && activeTab >= features.length) {
154
+ tabLoaded.current = true;
94
155
  setActiveTab(0);
95
- (0, _debugPreferences.setPreference)(_debugPreferences.KEYS.lastTab, '0');
156
+ const featureName = features[0]?.name;
157
+ if (featureName) {
158
+ (0, _debugPreferences.setPreference)(_debugPreferences.KEYS.lastTab, featureName);
159
+ }
96
160
  }
97
- }, [features.length, activeTab]);
161
+ }, [features, activeTab]);
98
162
 
99
163
  // Badge (first feature that returns one)
100
164
  const envBadge = features.map(f => f.badge?.()).find(b => b != null) ?? null;
101
- const tabs = features.map(f => ({
102
- label: f.label,
103
- id: f.name
104
- }));
165
+
166
+ // Rail items with counts
167
+ const railItems = features.map(f => {
168
+ const b = f.badge?.();
169
+ return {
170
+ id: f.name,
171
+ label: f.label,
172
+ dotColor: b?.color ?? null,
173
+ count: snapshotCount(f)
174
+ };
175
+ });
176
+ const panelConnectionStatus = buildPanelConnectionStatus(features);
177
+ const handleClearAll = (0, _react.useCallback)(() => {
178
+ setSearchQuery('');
179
+ setFilterBad(false);
180
+ onClearAll();
181
+ }, [onClearAll]);
182
+
183
+ // Active feature + summary
184
+ const activeFeature = features[activeTab];
185
+ const activeSnapshot = activeFeature?.getSnapshot();
186
+ const activeSummary = activeFeature ? (0, _buildFeatureSummary.buildFeatureSummary)(activeFeature, activeSnapshot) : null;
187
+
188
+ // Filtered snapshot — reuse activeSnapshot to avoid double getSnapshot()
189
+ const filteredSnapshot = activeFeature ? (0, _filterFeatureSnapshot.filterFeatureSnapshot)(activeFeature, activeSnapshot, searchQuery, filterBad ? 'bad' : 'all') : null;
105
190
 
106
191
  // Render active feature content
107
192
  const renderFeatureContent = () => {
@@ -116,7 +201,7 @@ function FloatPanelView({
116
201
  style: styles.emptyText,
117
202
  children: "Feature not found"
118
203
  });
119
- const snapshot = feature.getSnapshot();
204
+ const snapshot = filteredSnapshot;
120
205
  const TabComponent = feature.renderContent;
121
206
  if (TabComponent) return /*#__PURE__*/(0, _jsxRuntime.jsx)(TabComponent, {
122
207
  snapshot: snapshot,
@@ -130,6 +215,7 @@ function FloatPanelView({
130
215
  })
131
216
  });
132
217
  };
218
+ const showSearch = activeSummary ? activeSummary.count != null && activeSummary.count > 0 : false;
133
219
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(DebugErrorBoundary, {
134
220
  onError: onClosePanel,
135
221
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
@@ -139,23 +225,46 @@ function FloatPanelView({
139
225
  visible: !panelOpen,
140
226
  onPress: onOpenPanel,
141
227
  badge: envBadge
142
- }), panelOpen && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_DebugPanel.DebugPanel, {
228
+ }), panelOpen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DebugPanel.DebugPanel, {
143
229
  onClose: onClosePanel,
144
- onClearAll: onClearAll,
145
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FeatureTabBar.FeatureTabBar, {
146
- tabs: tabs,
147
- activeIndex: activeTab,
148
- onSelectTab: switchTab
149
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
150
- style: [styles.contentContainer, {
151
- opacity: contentOpacity,
152
- transform: [{
153
- translateX: contentTranslateX
154
- }]
155
- }],
156
- ...panHandlers,
157
- children: renderFeatureContent()
158
- })]
230
+ onClearAll: handleClearAll,
231
+ syncLabel: panelConnectionStatus.label,
232
+ syncColor: panelConnectionStatus.color,
233
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
234
+ style: styles.bodyRow,
235
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FeatureRail.FeatureRail, {
236
+ items: railItems,
237
+ activeIndex: activeTab,
238
+ onSelectTab: switchTab
239
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
240
+ style: styles.contentColumn,
241
+ children: [activeFeature && activeSummary && /*#__PURE__*/(0, _jsxRuntime.jsx)(_FeatureIntroCard.FeatureIntroCard, {
242
+ title: activeFeature.label,
243
+ summary: activeSummary,
244
+ filterBad: filterBad,
245
+ onFilterBad: setFilterBad
246
+ }), showSearch && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
247
+ style: styles.toolbar,
248
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
249
+ style: styles.searchInput,
250
+ placeholder: "Search...",
251
+ placeholderTextColor: _colors.Colors.textLight,
252
+ value: searchQuery,
253
+ onChangeText: setSearchQuery,
254
+ returnKeyType: "search"
255
+ })
256
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
257
+ style: [styles.contentContainer, {
258
+ opacity: contentOpacity,
259
+ transform: [{
260
+ translateX: contentTranslateX
261
+ }]
262
+ }],
263
+ ...panHandlers,
264
+ children: renderFeatureContent()
265
+ })]
266
+ })]
267
+ })
159
268
  })]
160
269
  })
161
270
  });
@@ -169,6 +278,34 @@ const styles = _reactNative.StyleSheet.create({
169
278
  bottom: 0,
170
279
  zIndex: 999
171
280
  },
281
+ bodyRow: {
282
+ flex: 1,
283
+ flexDirection: 'row'
284
+ },
285
+ contentColumn: {
286
+ flex: 1
287
+ },
288
+ toolbar: {
289
+ flexDirection: 'row',
290
+ alignItems: 'center',
291
+ gap: 8,
292
+ paddingHorizontal: 10,
293
+ paddingVertical: 8,
294
+ borderBottomWidth: _reactNative.StyleSheet.hairlineWidth,
295
+ borderBottomColor: _colors.Colors.border,
296
+ backgroundColor: _colors.Colors.background
297
+ },
298
+ searchInput: {
299
+ flex: 1,
300
+ height: 34,
301
+ borderWidth: 1,
302
+ borderColor: _colors.Colors.border,
303
+ borderRadius: 8,
304
+ backgroundColor: _colors.Colors.surface,
305
+ paddingHorizontal: 10,
306
+ fontSize: 13,
307
+ color: _colors.Colors.text
308
+ },
172
309
  contentContainer: {
173
310
  flex: 1
174
311
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_debugPreferences","_FloatIcon","_DebugPanel","_FeatureTabBar","_useTabAnimation","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DebugErrorBoundary","Component","state","hasError","getDerivedStateFromError","componentDidCatch","error","info","console","componentStack","props","onError","render","children","FloatPanelView","features","panelOpen","onOpenPanel","onClosePanel","onClearAll","activeTab","setActiveTab","useState","tabLoaded","useRef","useEffect","mounted","getPreference","KEYS","lastTab","then","val","idx","parseInt","isNaN","current","contentOpacity","contentTranslateX","panHandlers","switchTab","useTabAnimation","tabCount","length","onTabChange","useCallback","index","setPreference","String","setTick","refreshQueued","scheduleRefresh","requestAnimationFrame","unsubs","map","subscribe","filter","u","forEach","envBadge","badge","find","b","tabs","label","id","name","renderFeatureContent","jsx","Text","style","styles","emptyText","feature","snapshot","getSnapshot","TabComponent","renderContent","View","genericContent","jsonContent","JSON","stringify","jsxs","container","pointerEvents","FloatIcon","visible","onPress","DebugPanel","onClose","FeatureTabBar","activeIndex","onSelectTab","Animated","contentContainer","opacity","transform","translateX","StyleSheet","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","_interopRequireWildcard","require","_reactNative","_colors","_debugPreferences","_FloatIcon","_DebugPanel","_FeatureRail","_FeatureIntroCard","_buildFeatureSummary","_filterFeatureSnapshot","_tabPersistence","_useTabAnimation","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DebugErrorBoundary","Component","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","name","label","color","Colors","textLight","host","isSimulator","computerHost","trim","port","daemonPort","target","streaming","success","FloatPanelView","panelOpen","onOpenPanel","onClosePanel","onClearAll","activeTab","setActiveTab","useState","searchQuery","setSearchQuery","filterBad","setFilterBad","tabLoaded","useRef","useEffect","current","mounted","getPreference","KEYS","lastTab","then","val","idx","resolveStoredTabIndex","featureName","setPreference","contentOpacity","contentTranslateX","panHandlers","switchTab","useTabAnimation","tabCount","onTabChange","useCallback","index","setTick","refreshQueued","scheduleRefresh","requestAnimationFrame","unsubs","map","subscribe","filter","u","forEach","envBadge","badge","b","railItems","id","dotColor","count","panelConnectionStatus","handleClearAll","activeFeature","activeSnapshot","activeSummary","buildFeatureSummary","filteredSnapshot","filterFeatureSnapshot","renderFeatureContent","jsx","Text","style","styles","emptyText","snapshot","TabComponent","renderContent","View","genericContent","jsonContent","JSON","stringify","showSearch","jsxs","container","pointerEvents","FloatIcon","visible","onPress","DebugPanel","onClose","syncLabel","syncColor","bodyRow","FeatureRail","activeIndex","onSelectTab","contentColumn","FeatureIntroCard","title","summary","onFilterBad","toolbar","TextInput","searchInput","placeholder","placeholderTextColor","value","onChangeText","returnKeyType","Animated","contentContainer","opacity","transform","translateX","StyleSheet","create","position","top","left","right","bottom","zIndex","flex","flexDirection","alignItems","gap","paddingHorizontal","paddingVertical","borderBottomWidth","hairlineWidth","borderBottomColor","border","backgroundColor","background","height","borderWidth","borderColor","borderRadius","surface","fontSize","text","padding","textAlign","fontFamily"],"sourceRoot":"../../../../src","sources":["ui/panel/FloatPanelView.tsx"],"mappings":"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","ignoreList":[]}