rn-backstage 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -2
- package/lib/commonjs/Backstage.js +46 -33
- package/lib/commonjs/Backstage.js.map +1 -1
- package/lib/commonjs/ThemeContext.js +43 -0
- package/lib/commonjs/ThemeContext.js.map +1 -0
- package/lib/commonjs/components/BackstagePanel.js +35 -12
- package/lib/commonjs/components/BackstagePanel.js.map +1 -1
- package/lib/commonjs/components/FlagsTab.js +60 -57
- package/lib/commonjs/components/FlagsTab.js.map +1 -1
- package/lib/commonjs/components/FloatingPill.js +86 -24
- package/lib/commonjs/components/FloatingPill.js.map +1 -1
- package/lib/commonjs/components/InfoTab.js +77 -107
- package/lib/commonjs/components/InfoTab.js.map +1 -1
- package/lib/commonjs/components/JsonTreeView.js +39 -34
- package/lib/commonjs/components/JsonTreeView.js.map +1 -1
- package/lib/commonjs/components/LogItem.js +39 -29
- package/lib/commonjs/components/LogItem.js.map +1 -1
- package/lib/commonjs/components/LogsTab.js +39 -42
- package/lib/commonjs/components/LogsTab.js.map +1 -1
- package/lib/commonjs/components/NetworkItem.js +111 -135
- package/lib/commonjs/components/NetworkItem.js.map +1 -1
- package/lib/commonjs/components/NetworkTab.js +50 -49
- package/lib/commonjs/components/NetworkTab.js.map +1 -1
- package/lib/commonjs/components/StorageTab.js +655 -0
- package/lib/commonjs/components/StorageTab.js.map +1 -0
- package/lib/commonjs/components/TabBar.js +8 -5
- package/lib/commonjs/components/TabBar.js.map +1 -1
- package/lib/commonjs/constants.js +96 -7
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/index.js +96 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js +1 -0
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/Backstage.js +46 -33
- package/lib/module/Backstage.js.map +1 -1
- package/lib/module/ThemeContext.js +37 -0
- package/lib/module/ThemeContext.js.map +1 -0
- package/lib/module/components/BackstagePanel.js +37 -14
- package/lib/module/components/BackstagePanel.js.map +1 -1
- package/lib/module/components/FlagsTab.js +61 -58
- package/lib/module/components/FlagsTab.js.map +1 -1
- package/lib/module/components/FloatingPill.js +90 -28
- package/lib/module/components/FloatingPill.js.map +1 -1
- package/lib/module/components/InfoTab.js +77 -107
- package/lib/module/components/InfoTab.js.map +1 -1
- package/lib/module/components/JsonTreeView.js +42 -38
- package/lib/module/components/JsonTreeView.js.map +1 -1
- package/lib/module/components/LogItem.js +41 -31
- package/lib/module/components/LogItem.js.map +1 -1
- package/lib/module/components/LogsTab.js +40 -43
- package/lib/module/components/LogsTab.js.map +1 -1
- package/lib/module/components/NetworkItem.js +113 -137
- package/lib/module/components/NetworkItem.js.map +1 -1
- package/lib/module/components/NetworkTab.js +51 -50
- package/lib/module/components/NetworkTab.js.map +1 -1
- package/lib/module/components/StorageTab.js +650 -0
- package/lib/module/components/StorageTab.js.map +1 -0
- package/lib/module/components/TabBar.js +10 -7
- package/lib/module/components/TabBar.js.map +1 -1
- package/lib/module/constants.js +95 -6
- package/lib/module/constants.js.map +1 -1
- package/lib/module/index.js +14 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/Backstage.d.ts.map +1 -1
- package/lib/typescript/ThemeContext.d.ts +11 -0
- package/lib/typescript/ThemeContext.d.ts.map +1 -0
- package/lib/typescript/components/BackstagePanel.d.ts +3 -1
- package/lib/typescript/components/BackstagePanel.d.ts.map +1 -1
- package/lib/typescript/components/FlagsTab.d.ts.map +1 -1
- package/lib/typescript/components/FloatingPill.d.ts +2 -0
- package/lib/typescript/components/FloatingPill.d.ts.map +1 -1
- package/lib/typescript/components/InfoTab.d.ts +1 -0
- package/lib/typescript/components/InfoTab.d.ts.map +1 -1
- package/lib/typescript/components/JsonTreeView.d.ts.map +1 -1
- package/lib/typescript/components/LogItem.d.ts +1 -0
- package/lib/typescript/components/LogItem.d.ts.map +1 -1
- package/lib/typescript/components/LogsTab.d.ts +1 -0
- package/lib/typescript/components/LogsTab.d.ts.map +1 -1
- package/lib/typescript/components/NetworkItem.d.ts +1 -0
- package/lib/typescript/components/NetworkItem.d.ts.map +1 -1
- package/lib/typescript/components/NetworkTab.d.ts +1 -0
- package/lib/typescript/components/NetworkTab.d.ts.map +1 -1
- package/lib/typescript/components/StorageTab.d.ts +9 -0
- package/lib/typescript/components/StorageTab.d.ts.map +1 -0
- package/lib/typescript/components/TabBar.d.ts.map +1 -1
- package/lib/typescript/constants.d.ts +60 -4
- package/lib/typescript/constants.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +14 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +20 -0
- package/lib/typescript/types.d.ts.map +1 -1
- package/package.json +6 -4
- package/src/Backstage.tsx +45 -33
- package/src/ThemeContext.tsx +38 -0
- package/src/components/BackstagePanel.tsx +89 -61
- package/src/components/FlagsTab.tsx +125 -174
- package/src/components/FloatingPill.tsx +127 -30
- package/src/components/InfoTab.tsx +153 -186
- package/src/components/JsonTreeView.tsx +53 -73
- package/src/components/LogItem.tsx +64 -100
- package/src/components/LogsTab.tsx +110 -132
- package/src/components/NetworkItem.tsx +306 -417
- package/src/components/NetworkTab.tsx +129 -163
- package/src/components/StorageTab.tsx +607 -0
- package/src/components/TabBar.tsx +51 -47
- package/src/constants.ts +103 -4
- package/src/index.ts +17 -0
- package/src/types.ts +28 -0
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import React, { useCallback, useMemo, useState } from 'react';
|
|
4
4
|
import { FlatList, StyleSheet, Text, TextInput, TouchableOpacity, View } from 'react-native';
|
|
5
|
-
import {
|
|
5
|
+
import { MonospaceFont, TestIDs } from '../constants';
|
|
6
|
+
import { useBackstageTheme } from '../ThemeContext';
|
|
6
7
|
import { NetworkState } from '../types';
|
|
7
8
|
import { NetworkItem } from './NetworkItem';
|
|
8
9
|
|
|
@@ -14,11 +15,12 @@ export const NetworkTab = ({
|
|
|
14
15
|
entries,
|
|
15
16
|
onRefresh,
|
|
16
17
|
onClear,
|
|
17
|
-
onCopy
|
|
18
|
+
onCopy,
|
|
19
|
+
jsonMaxDepth
|
|
18
20
|
}) => {
|
|
21
|
+
const theme = useBackstageTheme();
|
|
22
|
+
const s = useMemo(() => createStyles(theme), [theme]);
|
|
19
23
|
const [searchText, setSearchText] = useState('');
|
|
20
|
-
|
|
21
|
-
// Filter entries based on search text
|
|
22
24
|
const filteredEntries = useMemo(() => {
|
|
23
25
|
if (!searchText.trim()) return entries;
|
|
24
26
|
const query = searchText.toLowerCase();
|
|
@@ -26,8 +28,6 @@ export const NetworkTab = ({
|
|
|
26
28
|
return entry.url.toLowerCase().includes(query) || entry.method.toLowerCase().includes(query) || entry.status !== undefined && String(entry.status).includes(query) || entry.error && entry.error.toLowerCase().includes(query);
|
|
27
29
|
});
|
|
28
30
|
}, [entries, searchText]);
|
|
29
|
-
|
|
30
|
-
// Summary stats
|
|
31
31
|
const stats = useMemo(() => {
|
|
32
32
|
const total = entries.length;
|
|
33
33
|
const errors = entries.filter(e => e.state === NetworkState.error || e.status !== undefined && e.status >= 400).length;
|
|
@@ -45,23 +45,25 @@ export const NetworkTab = ({
|
|
|
45
45
|
item
|
|
46
46
|
}) => /*#__PURE__*/_jsx(NetworkItem, {
|
|
47
47
|
item: item,
|
|
48
|
-
onCopy: onCopy
|
|
48
|
+
onCopy: onCopy,
|
|
49
|
+
jsonMaxDepth: jsonMaxDepth
|
|
49
50
|
}), [onCopy]);
|
|
50
51
|
const keyExtractor = useCallback(item => item.id, []);
|
|
51
52
|
return /*#__PURE__*/_jsxs(View, {
|
|
52
|
-
|
|
53
|
+
testID: TestIDs.networkTab.container,
|
|
54
|
+
style: s.container,
|
|
53
55
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
54
|
-
style:
|
|
56
|
+
style: s.searchContainer,
|
|
55
57
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
56
|
-
style:
|
|
58
|
+
style: s.searchInputWrapper,
|
|
57
59
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
58
|
-
style:
|
|
60
|
+
style: s.searchIcon,
|
|
59
61
|
children: "\u2315"
|
|
60
62
|
}), /*#__PURE__*/_jsx(TextInput, {
|
|
61
63
|
testID: TestIDs.networkTab.searchInput,
|
|
62
|
-
style:
|
|
64
|
+
style: s.searchInput,
|
|
63
65
|
placeholder: "Filter by URL, method, status...",
|
|
64
|
-
placeholderTextColor:
|
|
66
|
+
placeholderTextColor: theme.textMuted,
|
|
65
67
|
value: searchText,
|
|
66
68
|
onChangeText: setSearchText,
|
|
67
69
|
autoCapitalize: "none",
|
|
@@ -71,36 +73,37 @@ export const NetworkTab = ({
|
|
|
71
73
|
})]
|
|
72
74
|
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
73
75
|
testID: TestIDs.networkTab.clearButton,
|
|
74
|
-
style:
|
|
76
|
+
style: s.clearButton,
|
|
75
77
|
onPress: onClear,
|
|
76
78
|
activeOpacity: 0.7,
|
|
77
79
|
children: /*#__PURE__*/_jsx(Text, {
|
|
78
|
-
style:
|
|
80
|
+
style: s.clearButtonText,
|
|
79
81
|
children: "Clear"
|
|
80
82
|
})
|
|
81
83
|
})]
|
|
82
84
|
}), /*#__PURE__*/_jsxs(View, {
|
|
83
|
-
|
|
85
|
+
testID: TestIDs.networkTab.statsBar,
|
|
86
|
+
style: s.statsBar,
|
|
84
87
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
85
|
-
style:
|
|
88
|
+
style: s.statsRow,
|
|
86
89
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
87
|
-
style:
|
|
90
|
+
style: s.statText,
|
|
88
91
|
children: filteredEntries.length === entries.length ? `${stats.total} request${stats.total !== 1 ? 's' : ''}` : `${filteredEntries.length} of ${stats.total}`
|
|
89
92
|
}), stats.errors > 0 && /*#__PURE__*/_jsx(View, {
|
|
90
|
-
style:
|
|
93
|
+
style: s.statBadge,
|
|
91
94
|
children: /*#__PURE__*/_jsxs(Text, {
|
|
92
|
-
style:
|
|
95
|
+
style: s.statBadgeError,
|
|
93
96
|
children: [stats.errors, " error", stats.errors !== 1 ? 's' : '']
|
|
94
97
|
})
|
|
95
98
|
}), stats.pending > 0 && /*#__PURE__*/_jsx(View, {
|
|
96
|
-
style: [
|
|
99
|
+
style: [s.statBadge, s.statBadgePending],
|
|
97
100
|
children: /*#__PURE__*/_jsxs(Text, {
|
|
98
|
-
style:
|
|
101
|
+
style: s.statBadgePendingText,
|
|
99
102
|
children: [stats.pending, " pending"]
|
|
100
103
|
})
|
|
101
104
|
})]
|
|
102
105
|
}), stats.avgDuration > 0 && /*#__PURE__*/_jsxs(Text, {
|
|
103
|
-
style:
|
|
106
|
+
style: s.avgText,
|
|
104
107
|
children: ["avg ", stats.avgDuration, "ms"]
|
|
105
108
|
})]
|
|
106
109
|
}), /*#__PURE__*/_jsx(FlatList, {
|
|
@@ -110,23 +113,21 @@ export const NetworkTab = ({
|
|
|
110
113
|
keyExtractor: keyExtractor,
|
|
111
114
|
refreshing: false,
|
|
112
115
|
onRefresh: onRefresh,
|
|
113
|
-
style:
|
|
114
|
-
contentContainerStyle: filteredEntries.length === 0 ?
|
|
116
|
+
style: s.list,
|
|
117
|
+
contentContainerStyle: filteredEntries.length === 0 ? s.emptyContainer : undefined,
|
|
115
118
|
ListEmptyComponent: /*#__PURE__*/_jsxs(View, {
|
|
116
|
-
style:
|
|
119
|
+
style: s.emptyState,
|
|
117
120
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
118
|
-
style:
|
|
121
|
+
style: s.emptyIcon,
|
|
119
122
|
children: "\uD83C\uDF10"
|
|
120
123
|
}), /*#__PURE__*/_jsx(Text, {
|
|
121
|
-
style:
|
|
124
|
+
style: s.emptyTitle,
|
|
122
125
|
children: "No network requests"
|
|
123
126
|
}), /*#__PURE__*/_jsx(Text, {
|
|
124
|
-
style:
|
|
127
|
+
style: s.emptySubtitle,
|
|
125
128
|
children: "HTTP requests made via fetch or XMLHttpRequest will appear here"
|
|
126
129
|
})]
|
|
127
|
-
})
|
|
128
|
-
// Perf optimizations
|
|
129
|
-
,
|
|
130
|
+
}),
|
|
130
131
|
maxToRenderPerBatch: 20,
|
|
131
132
|
windowSize: 10,
|
|
132
133
|
initialNumToRender: 20,
|
|
@@ -137,7 +138,7 @@ export const NetworkTab = ({
|
|
|
137
138
|
|
|
138
139
|
// ─── Styles ──────────────────────────────────────────────────────────────────
|
|
139
140
|
|
|
140
|
-
const
|
|
141
|
+
const createStyles = t => StyleSheet.create({
|
|
141
142
|
container: {
|
|
142
143
|
flex: 1
|
|
143
144
|
},
|
|
@@ -148,36 +149,36 @@ const styles = StyleSheet.create({
|
|
|
148
149
|
paddingVertical: 10,
|
|
149
150
|
gap: 10,
|
|
150
151
|
borderBottomWidth: 1,
|
|
151
|
-
borderBottomColor:
|
|
152
|
+
borderBottomColor: t.border
|
|
152
153
|
},
|
|
153
154
|
searchInputWrapper: {
|
|
154
155
|
flex: 1,
|
|
155
156
|
flexDirection: 'row',
|
|
156
157
|
alignItems: 'center',
|
|
157
|
-
backgroundColor:
|
|
158
|
+
backgroundColor: t.surfaceElevated,
|
|
158
159
|
borderRadius: 10,
|
|
159
160
|
borderWidth: 1,
|
|
160
|
-
borderColor:
|
|
161
|
+
borderColor: t.border,
|
|
161
162
|
paddingHorizontal: 12,
|
|
162
163
|
height: 38
|
|
163
164
|
},
|
|
164
165
|
searchIcon: {
|
|
165
166
|
fontSize: 16,
|
|
166
|
-
color:
|
|
167
|
+
color: t.textMuted,
|
|
167
168
|
marginRight: 8
|
|
168
169
|
},
|
|
169
170
|
searchInput: {
|
|
170
171
|
flex: 1,
|
|
171
172
|
fontFamily: MonospaceFont,
|
|
172
173
|
fontSize: 13,
|
|
173
|
-
color:
|
|
174
|
+
color: t.text,
|
|
174
175
|
padding: 0
|
|
175
176
|
},
|
|
176
177
|
clearButton: {
|
|
177
|
-
backgroundColor:
|
|
178
|
+
backgroundColor: t.errorDim,
|
|
178
179
|
borderRadius: 8,
|
|
179
180
|
borderWidth: 1,
|
|
180
|
-
borderColor:
|
|
181
|
+
borderColor: t.error,
|
|
181
182
|
paddingHorizontal: 14,
|
|
182
183
|
height: 38,
|
|
183
184
|
justifyContent: 'center'
|
|
@@ -186,7 +187,7 @@ const styles = StyleSheet.create({
|
|
|
186
187
|
fontFamily: MonospaceFont,
|
|
187
188
|
fontSize: 12,
|
|
188
189
|
fontWeight: '700',
|
|
189
|
-
color:
|
|
190
|
+
color: t.error,
|
|
190
191
|
letterSpacing: 0.5
|
|
191
192
|
},
|
|
192
193
|
statsBar: {
|
|
@@ -195,7 +196,7 @@ const styles = StyleSheet.create({
|
|
|
195
196
|
alignItems: 'center',
|
|
196
197
|
paddingHorizontal: 16,
|
|
197
198
|
paddingVertical: 6,
|
|
198
|
-
backgroundColor:
|
|
199
|
+
backgroundColor: t.surface
|
|
199
200
|
},
|
|
200
201
|
statsRow: {
|
|
201
202
|
flexDirection: 'row',
|
|
@@ -205,10 +206,10 @@ const styles = StyleSheet.create({
|
|
|
205
206
|
statText: {
|
|
206
207
|
fontFamily: MonospaceFont,
|
|
207
208
|
fontSize: 11,
|
|
208
|
-
color:
|
|
209
|
+
color: t.textMuted
|
|
209
210
|
},
|
|
210
211
|
statBadge: {
|
|
211
|
-
backgroundColor:
|
|
212
|
+
backgroundColor: t.errorDim,
|
|
212
213
|
borderRadius: 4,
|
|
213
214
|
paddingHorizontal: 6,
|
|
214
215
|
paddingVertical: 1
|
|
@@ -217,21 +218,21 @@ const styles = StyleSheet.create({
|
|
|
217
218
|
fontFamily: MonospaceFont,
|
|
218
219
|
fontSize: 10,
|
|
219
220
|
fontWeight: '700',
|
|
220
|
-
color:
|
|
221
|
+
color: t.error
|
|
221
222
|
},
|
|
222
223
|
statBadgePending: {
|
|
223
|
-
backgroundColor:
|
|
224
|
+
backgroundColor: t.warningDim
|
|
224
225
|
},
|
|
225
226
|
statBadgePendingText: {
|
|
226
227
|
fontFamily: MonospaceFont,
|
|
227
228
|
fontSize: 10,
|
|
228
229
|
fontWeight: '700',
|
|
229
|
-
color:
|
|
230
|
+
color: t.warning
|
|
230
231
|
},
|
|
231
232
|
avgText: {
|
|
232
233
|
fontFamily: MonospaceFont,
|
|
233
234
|
fontSize: 10,
|
|
234
|
-
color:
|
|
235
|
+
color: t.textMuted,
|
|
235
236
|
fontStyle: 'italic'
|
|
236
237
|
},
|
|
237
238
|
list: {
|
|
@@ -255,13 +256,13 @@ const styles = StyleSheet.create({
|
|
|
255
256
|
fontFamily: MonospaceFont,
|
|
256
257
|
fontSize: 16,
|
|
257
258
|
fontWeight: '700',
|
|
258
|
-
color:
|
|
259
|
+
color: t.textSecondary,
|
|
259
260
|
marginBottom: 8
|
|
260
261
|
},
|
|
261
262
|
emptySubtitle: {
|
|
262
263
|
fontFamily: MonospaceFont,
|
|
263
264
|
fontSize: 13,
|
|
264
|
-
color:
|
|
265
|
+
color: t.textMuted,
|
|
265
266
|
textAlign: 'center',
|
|
266
267
|
lineHeight: 20
|
|
267
268
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useMemo","useState","FlatList","StyleSheet","Text","TextInput","TouchableOpacity","View","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useState","FlatList","StyleSheet","Text","TextInput","TouchableOpacity","View","MonospaceFont","TestIDs","useBackstageTheme","NetworkState","NetworkItem","jsx","_jsx","jsxs","_jsxs","NetworkTab","entries","onRefresh","onClear","onCopy","jsonMaxDepth","theme","s","createStyles","searchText","setSearchText","filteredEntries","trim","query","toLowerCase","filter","entry","url","includes","method","status","undefined","String","error","stats","total","length","errors","e","state","pending","completed","duration","avgDuration","Math","round","reduce","sum","renderItem","item","keyExtractor","id","testID","networkTab","container","style","children","searchContainer","searchInputWrapper","searchIcon","searchInput","placeholder","placeholderTextColor","textMuted","value","onChangeText","autoCapitalize","autoCorrect","clearButtonMode","returnKeyType","clearButton","onPress","activeOpacity","clearButtonText","statsBar","statsRow","statText","statBadge","statBadgeError","statBadgePending","statBadgePendingText","avgText","list","data","refreshing","contentContainerStyle","emptyContainer","ListEmptyComponent","emptyState","emptyIcon","emptyTitle","emptySubtitle","maxToRenderPerBatch","windowSize","initialNumToRender","removeClippedSubviews","t","create","flex","flexDirection","alignItems","paddingHorizontal","paddingVertical","gap","borderBottomWidth","borderBottomColor","border","backgroundColor","surfaceElevated","borderRadius","borderWidth","borderColor","height","fontSize","color","marginRight","fontFamily","text","padding","errorDim","justifyContent","fontWeight","letterSpacing","surface","warningDim","warning","fontStyle","marginBottom","opacity","textSecondary","textAlign","lineHeight"],"sourceRoot":"../../../src","sources":["components/NetworkTab.tsx"],"mappings":"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","ignoreList":[]}
|