react-native-network-lens 0.1.1 → 0.2.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 +254 -98
- package/lib/module/components/BodyViewer.js +30 -24
- package/lib/module/components/BodyViewer.js.map +1 -1
- package/lib/module/components/JsonTree/JsonTreeView.js +10 -6
- package/lib/module/components/JsonTree/JsonTreeView.js.map +1 -1
- package/lib/module/components/NetworkLens.js +4 -8
- package/lib/module/components/NetworkLens.js.map +1 -1
- package/lib/module/components/NetworkLensOverlay.js +67 -22
- package/lib/module/components/NetworkLensOverlay.js.map +1 -1
- package/lib/module/components/RawTextView.js +10 -6
- package/lib/module/components/RawTextView.js.map +1 -1
- package/lib/module/components/RequestDetails/RequestDetails.js +35 -17
- package/lib/module/components/RequestDetails/RequestDetails.js.map +1 -1
- package/lib/module/components/RequestList/RequestList.js +4 -5
- package/lib/module/components/RequestList/RequestList.js.map +1 -1
- package/lib/module/components/ui/Button.js +5 -3
- package/lib/module/components/ui/Button.js.map +1 -1
- package/lib/module/components/ui/Pill.js +13 -6
- package/lib/module/components/ui/Pill.js.map +1 -1
- package/lib/module/settings.js +48 -0
- package/lib/module/settings.js.map +1 -0
- package/lib/module/theme.js +4 -4
- package/lib/typescript/src/components/BodyViewer.d.ts.map +1 -1
- package/lib/typescript/src/components/JsonTree/JsonTreeView.d.ts.map +1 -1
- package/lib/typescript/src/components/NetworkLens.d.ts +0 -3
- package/lib/typescript/src/components/NetworkLens.d.ts.map +1 -1
- package/lib/typescript/src/components/NetworkLensOverlay.d.ts +1 -1
- package/lib/typescript/src/components/NetworkLensOverlay.d.ts.map +1 -1
- package/lib/typescript/src/components/RawTextView.d.ts.map +1 -1
- package/lib/typescript/src/components/RequestDetails/RequestDetails.d.ts.map +1 -1
- package/lib/typescript/src/components/RequestList/RequestList.d.ts +1 -4
- package/lib/typescript/src/components/RequestList/RequestList.d.ts.map +1 -1
- package/lib/typescript/src/components/ui/Button.d.ts +3 -1
- package/lib/typescript/src/components/ui/Button.d.ts.map +1 -1
- package/lib/typescript/src/components/ui/Pill.d.ts +1 -0
- package/lib/typescript/src/components/ui/Pill.d.ts.map +1 -1
- package/lib/typescript/src/settings.d.ts +18 -0
- package/lib/typescript/src/settings.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/BodyViewer.tsx +36 -28
- package/src/components/JsonTree/JsonTreeView.tsx +11 -5
- package/src/components/NetworkLens.tsx +2 -11
- package/src/components/NetworkLensOverlay.tsx +54 -23
- package/src/components/RawTextView.tsx +11 -6
- package/src/components/RequestDetails/RequestDetails.tsx +26 -16
- package/src/components/RequestList/RequestList.tsx +1 -5
- package/src/components/ui/Button.tsx +17 -5
- package/src/components/ui/Pill.tsx +14 -5
- package/src/settings.ts +55 -0
- package/src/theme.ts +2 -2
|
@@ -23,8 +23,7 @@ const RequestList = ({
|
|
|
23
23
|
paused,
|
|
24
24
|
loggingEnabled,
|
|
25
25
|
onPressItem,
|
|
26
|
-
menuActions
|
|
27
|
-
header
|
|
26
|
+
menuActions
|
|
28
27
|
}) => {
|
|
29
28
|
const theme = useTheme();
|
|
30
29
|
const [search, setSearch] = useState('');
|
|
@@ -70,12 +69,12 @@ const RequestList = ({
|
|
|
70
69
|
style: [styles.container, {
|
|
71
70
|
backgroundColor: theme.colors.background
|
|
72
71
|
}],
|
|
73
|
-
children: [/*#__PURE__*/
|
|
72
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
74
73
|
style: [styles.toolbar, {
|
|
75
74
|
backgroundColor: theme.colors.surface,
|
|
76
75
|
borderBottomColor: theme.colors.border
|
|
77
76
|
}],
|
|
78
|
-
children:
|
|
77
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
79
78
|
style: styles.searchRow,
|
|
80
79
|
children: [/*#__PURE__*/_jsx(SearchInput, {
|
|
81
80
|
value: search,
|
|
@@ -92,7 +91,7 @@ const RequestList = ({
|
|
|
92
91
|
accessibilityLabel: "More options",
|
|
93
92
|
onPress: () => setMenuVisible(true)
|
|
94
93
|
})]
|
|
95
|
-
})
|
|
94
|
+
})
|
|
96
95
|
}), showFilters && /*#__PURE__*/_jsx(FilterBar, {
|
|
97
96
|
filter: filter,
|
|
98
97
|
onChange: setFilter,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useMemo","useState","FlatList","Share","StyleSheet","Text","View","useTheme","ActionSheet","EmptyState","IconButton","SearchInput","FilterBar","RequestRow","applyFilter","collectHosts","collectMethods","emptyFilter","isFilterActive","jsx","_jsx","jsxs","_jsxs","keyExtractor","row","id","summaryText","total","shown","failed","parts","push","join","RequestList","requests","sort","compact","maxRows","paused","loggingEnabled","onPressItem","menuActions","
|
|
1
|
+
{"version":3,"names":["useCallback","useMemo","useState","FlatList","Share","StyleSheet","Text","View","useTheme","ActionSheet","EmptyState","IconButton","SearchInput","FilterBar","RequestRow","applyFilter","collectHosts","collectMethods","emptyFilter","isFilterActive","jsx","_jsx","jsxs","_jsxs","keyExtractor","row","id","summaryText","total","shown","failed","parts","push","join","RequestList","requests","sort","compact","maxRows","paused","loggingEnabled","onPressItem","menuActions","theme","search","setSearch","filter","setFilter","showFilters","setShowFilters","menuVisible","setMenuVisible","rows","mapped","map","request","toRow","reverse","filtered","result","slice","methods","hosts","failedCount","r","statusGroup","length","onLongPress","find","share","message","curl","catch","undefined","renderItem","item","onPress","emptyState","title","subtitle","style","styles","container","backgroundColor","colors","background","children","toolbar","surface","borderBottomColor","border","searchRow","value","onChangeText","placeholder","glyph","accessibilityLabel","active","v","onChange","onClear","statusBar","statusWarning","surfaceAlt","statusText","statusTextPaused","color","textMuted","numberOfLines","data","keyboardShouldPersistTaps","keyboardDismissMode","initialNumToRender","windowSize","ListEmptyComponent","contentContainerStyle","emptyContent","visible","onClose","actions","create","flex","paddingHorizontal","paddingVertical","borderBottomWidth","hairlineWidth","flexDirection","alignItems","marginRight","fontSize","fontWeight","flexGrow"],"sourceRoot":"../../../../src","sources":["components/RequestList/RequestList.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,6 +22,7 @@ export const TextButton = ({
|
|
|
22
22
|
onPress,
|
|
23
23
|
disabled,
|
|
24
24
|
active,
|
|
25
|
+
plain,
|
|
25
26
|
style,
|
|
26
27
|
textStyle
|
|
27
28
|
}) => {
|
|
@@ -34,11 +35,11 @@ export const TextButton = ({
|
|
|
34
35
|
style: ({
|
|
35
36
|
pressed
|
|
36
37
|
}) => [styles.button, {
|
|
37
|
-
backgroundColor: active ? theme.colors.primary : theme.colors.surfaceAlt
|
|
38
|
+
backgroundColor: plain ? 'transparent' : active ? theme.colors.primary : theme.colors.surfaceAlt
|
|
38
39
|
}, disabled ? styles.disabled : pressed && styles.pressed, style],
|
|
39
40
|
children: /*#__PURE__*/_jsx(Text, {
|
|
40
41
|
style: [styles.label, {
|
|
41
|
-
color: active ? theme.colors.onPrimary : theme.colors.text
|
|
42
|
+
color: plain ? theme.colors.primary : active ? theme.colors.onPrimary : theme.colors.text
|
|
42
43
|
}, textStyle],
|
|
43
44
|
children: label
|
|
44
45
|
})
|
|
@@ -84,7 +85,8 @@ const styles = StyleSheet.create({
|
|
|
84
85
|
fontWeight: '600'
|
|
85
86
|
},
|
|
86
87
|
icon: {
|
|
87
|
-
|
|
88
|
+
minWidth: 32,
|
|
89
|
+
paddingHorizontal: 6,
|
|
88
90
|
height: 32,
|
|
89
91
|
borderRadius: 8,
|
|
90
92
|
alignItems: 'center',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Pressable","StyleSheet","Text","useTheme","jsx","_jsx","HIT_SLOP_SMALL","top","bottom","left","right","HIT_SLOP","TextButton","label","onPress","disabled","active","style","textStyle","theme","accessibilityRole","hitSlop","pressed","styles","button","backgroundColor","colors","primary","surfaceAlt","children","color","onPrimary","text","IconButton","glyph","accessibilityLabel","icon","create","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","fontSize","fontWeight","
|
|
1
|
+
{"version":3,"names":["Pressable","StyleSheet","Text","useTheme","jsx","_jsx","HIT_SLOP_SMALL","top","bottom","left","right","HIT_SLOP","TextButton","label","onPress","disabled","active","plain","style","textStyle","theme","accessibilityRole","hitSlop","pressed","styles","button","backgroundColor","colors","primary","surfaceAlt","children","color","onPrimary","text","IconButton","glyph","accessibilityLabel","icon","create","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","fontSize","fontWeight","minWidth","height","opacity"],"sourceRoot":"../../../../src","sources":["components/ui/Button.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { StyleSheet, Text, View } from 'react-native';
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
/** Fixed-height badge so filled and outlined variants align on one row. */
|
|
5
6
|
export const Pill = ({
|
|
6
7
|
label,
|
|
7
8
|
color,
|
|
@@ -24,27 +25,33 @@ export const Pill = ({
|
|
|
24
25
|
});
|
|
25
26
|
const styles = StyleSheet.create({
|
|
26
27
|
pill: {
|
|
28
|
+
height: 24,
|
|
29
|
+
minWidth: 44,
|
|
30
|
+
paddingHorizontal: 8,
|
|
27
31
|
borderWidth: 1,
|
|
28
32
|
borderRadius: 6,
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
alignItems: 'center',
|
|
34
|
+
justifyContent: 'center',
|
|
31
35
|
alignSelf: 'flex-start'
|
|
32
36
|
},
|
|
33
37
|
pillSmall: {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
38
|
+
height: 20,
|
|
39
|
+
minWidth: 40,
|
|
40
|
+
paddingHorizontal: 6,
|
|
41
|
+
borderRadius: 5
|
|
37
42
|
},
|
|
38
43
|
outline: {
|
|
39
44
|
backgroundColor: 'transparent'
|
|
40
45
|
},
|
|
41
46
|
text: {
|
|
42
47
|
fontSize: 12,
|
|
48
|
+
lineHeight: 14,
|
|
43
49
|
fontWeight: '700',
|
|
44
50
|
letterSpacing: 0.3
|
|
45
51
|
},
|
|
46
52
|
textSmall: {
|
|
47
|
-
fontSize: 11
|
|
53
|
+
fontSize: 11,
|
|
54
|
+
lineHeight: 13
|
|
48
55
|
},
|
|
49
56
|
textFilled: {
|
|
50
57
|
color: '#ffffff'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","Text","View","jsx","_jsx","Pill","label","color","filled","small","style","styles","pill","pillSmall","borderColor","backgroundColor","outline","children","numberOfLines","text","textSmall","textFilled","create","borderWidth","borderRadius","
|
|
1
|
+
{"version":3,"names":["StyleSheet","Text","View","jsx","_jsx","Pill","label","color","filled","small","style","styles","pill","pillSmall","borderColor","backgroundColor","outline","children","numberOfLines","text","textSmall","textFilled","create","height","minWidth","paddingHorizontal","borderWidth","borderRadius","alignItems","justifyContent","alignSelf","fontSize","lineHeight","fontWeight","letterSpacing"],"sourceRoot":"../../../../src","sources":["components/ui/Pill.tsx"],"mappings":";;AAAA,SACEA,UAAU,EACVC,IAAI,EACJC,IAAI,QAGC,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUtB;AACA,OAAO,MAAMC,IAAI,GAAGA,CAAC;EAAEC,KAAK;EAAEC,KAAK;EAAEC,MAAM;EAAEC,KAAK;EAAEC;AAAa,CAAC,kBAChEN,IAAA,CAACF,IAAI;EACHQ,KAAK,EAAE,CACLC,MAAM,CAACC,IAAI,EACXH,KAAK,IAAIE,MAAM,CAACE,SAAS,EACzB;IAAEC,WAAW,EAAEP;EAAM,CAAC,EACtBC,MAAM,GAAG;IAAEO,eAAe,EAAER;EAAM,CAAC,GAAGI,MAAM,CAACK,OAAO,EACpDN,KAAK,CACL;EAAAO,QAAA,eAEFb,IAAA,CAACH,IAAI;IACHiB,aAAa,EAAE,CAAE;IACjBR,KAAK,EAAE,CACLC,MAAM,CAACQ,IAAI,EACXV,KAAK,IAAIE,MAAM,CAACS,SAAS,EACzBZ,MAAM,GAAGG,MAAM,CAACU,UAAU,GAAG;MAAEd;IAAM,CAAC,CACtC;IAAAU,QAAA,EAEDX;EAAK,CACF;AAAC,CACH,CACP;AAED,MAAMK,MAAM,GAAGX,UAAU,CAACsB,MAAM,CAAC;EAC/BV,IAAI,EAAE;IACJW,MAAM,EAAE,EAAE;IACVC,QAAQ,EAAE,EAAE;IACZC,iBAAiB,EAAE,CAAC;IACpBC,WAAW,EAAE,CAAC;IACdC,YAAY,EAAE,CAAC;IACfC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,SAAS,EAAE;EACb,CAAC;EACDjB,SAAS,EAAE;IACTU,MAAM,EAAE,EAAE;IACVC,QAAQ,EAAE,EAAE;IACZC,iBAAiB,EAAE,CAAC;IACpBE,YAAY,EAAE;EAChB,CAAC;EACDX,OAAO,EAAE;IAAED,eAAe,EAAE;EAAc,CAAC;EAC3CI,IAAI,EAAE;IAAEY,QAAQ,EAAE,EAAE;IAAEC,UAAU,EAAE,EAAE;IAAEC,UAAU,EAAE,KAAK;IAAEC,aAAa,EAAE;EAAI,CAAC;EAC7Ed,SAAS,EAAE;IAAEW,QAAQ,EAAE,EAAE;IAAEC,UAAU,EAAE;EAAG,CAAC;EAC3CX,UAAU,EAAE;IAAEd,KAAK,EAAE;EAAU;AACjC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useSyncExternalStore } from 'react';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Tiny in-memory preferences shared by every viewer in the session, e.g. the
|
|
7
|
+
* code font scale the user picks with the "Aa" button.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
const SCALE_FACTOR = {
|
|
11
|
+
small: 0.85,
|
|
12
|
+
medium: 1,
|
|
13
|
+
large: 1.2
|
|
14
|
+
};
|
|
15
|
+
const ORDER = ['small', 'medium', 'large'];
|
|
16
|
+
let scale = 'medium';
|
|
17
|
+
const listeners = new Set();
|
|
18
|
+
const subscribe = listener => {
|
|
19
|
+
listeners.add(listener);
|
|
20
|
+
return () => {
|
|
21
|
+
listeners.delete(listener);
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
const getScale = () => scale;
|
|
25
|
+
export const setCodeFontScale = next => {
|
|
26
|
+
if (scale === next) return;
|
|
27
|
+
scale = next;
|
|
28
|
+
listeners.forEach(listener => listener());
|
|
29
|
+
};
|
|
30
|
+
export const cycleCodeFontScale = () => {
|
|
31
|
+
setCodeFontScale(ORDER[(ORDER.indexOf(scale) + 1) % ORDER.length] ?? 'medium');
|
|
32
|
+
};
|
|
33
|
+
export const useCodeFontScale = () => useSyncExternalStore(subscribe, getScale, getScale);
|
|
34
|
+
|
|
35
|
+
/** Font metrics for code views: the theme's base size times the chosen scale. */
|
|
36
|
+
export const useCodeFont = theme => {
|
|
37
|
+
const current = useCodeFontScale();
|
|
38
|
+
const factor = SCALE_FACTOR[current];
|
|
39
|
+
const fontSize = Math.round(theme.sizes.codeFontSize * factor);
|
|
40
|
+
return {
|
|
41
|
+
scale: current,
|
|
42
|
+
fontSize,
|
|
43
|
+
lineHeight: Math.round(fontSize * 1.5),
|
|
44
|
+
/** Average glyph advance for monospace fonts; used to size horizontal scroll areas. */
|
|
45
|
+
charWidth: fontSize * 0.62
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSyncExternalStore","SCALE_FACTOR","small","medium","large","ORDER","scale","listeners","Set","subscribe","listener","add","delete","getScale","setCodeFontScale","next","forEach","cycleCodeFontScale","indexOf","length","useCodeFontScale","useCodeFont","theme","current","factor","fontSize","Math","round","sizes","codeFontSize","lineHeight","charWidth"],"sourceRoot":"../../src","sources":["settings.ts"],"mappings":";;AAAA,SAASA,oBAAoB,QAAQ,OAAO;;AAG5C;AACA;AACA;AACA;;AAGA,MAAMC,YAA2C,GAAG;EAClDC,KAAK,EAAE,IAAI;EACXC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE;AACT,CAAC;AACD,MAAMC,KAAsB,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;AAE3D,IAAIC,KAAoB,GAAG,QAAQ;AACnC,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;AAEvC,MAAMC,SAAS,GAAIC,QAAoB,IAAK;EAC1CH,SAAS,CAACI,GAAG,CAACD,QAAQ,CAAC;EACvB,OAAO,MAAM;IACXH,SAAS,CAACK,MAAM,CAACF,QAAQ,CAAC;EAC5B,CAAC;AACH,CAAC;AACD,MAAMG,QAAQ,GAAGA,CAAA,KAAMP,KAAK;AAE5B,OAAO,MAAMQ,gBAAgB,GAAIC,IAAmB,IAAK;EACvD,IAAIT,KAAK,KAAKS,IAAI,EAAE;EACpBT,KAAK,GAAGS,IAAI;EACZR,SAAS,CAACS,OAAO,CAAEN,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,MAAMO,kBAAkB,GAAGA,CAAA,KAAM;EACtCH,gBAAgB,CACdT,KAAK,CAAC,CAACA,KAAK,CAACa,OAAO,CAACZ,KAAK,CAAC,GAAG,CAAC,IAAID,KAAK,CAACc,MAAM,CAAC,IAAI,QACtD,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAC9BpB,oBAAoB,CAACS,SAAS,EAAEI,QAAQ,EAAEA,QAAQ,CAAC;;AAErD;AACA,OAAO,MAAMQ,WAAW,GAAIC,KAAY,IAAK;EAC3C,MAAMC,OAAO,GAAGH,gBAAgB,CAAC,CAAC;EAClC,MAAMI,MAAM,GAAGvB,YAAY,CAACsB,OAAO,CAAC;EACpC,MAAME,QAAQ,GAAGC,IAAI,CAACC,KAAK,CAACL,KAAK,CAACM,KAAK,CAACC,YAAY,GAAGL,MAAM,CAAC;EAC9D,OAAO;IACLlB,KAAK,EAAEiB,OAAO;IACdE,QAAQ;IACRK,UAAU,EAAEJ,IAAI,CAACC,KAAK,CAACF,QAAQ,GAAG,GAAG,CAAC;IACtC;IACAM,SAAS,EAAEN,QAAQ,GAAG;EACxB,CAAC;AACH,CAAC","ignoreList":[]}
|
package/lib/module/theme.js
CHANGED
|
@@ -41,8 +41,8 @@ export const lightTheme = {
|
|
|
41
41
|
mono: mono ?? 'monospace'
|
|
42
42
|
},
|
|
43
43
|
sizes: {
|
|
44
|
-
codeFontSize:
|
|
45
|
-
codeLineHeight:
|
|
44
|
+
codeFontSize: 14,
|
|
45
|
+
codeLineHeight: 21
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
export const darkTheme = {
|
|
@@ -79,8 +79,8 @@ export const darkTheme = {
|
|
|
79
79
|
mono: mono ?? 'monospace'
|
|
80
80
|
},
|
|
81
81
|
sizes: {
|
|
82
|
-
codeFontSize:
|
|
83
|
-
codeLineHeight:
|
|
82
|
+
codeFontSize: 14,
|
|
83
|
+
codeLineHeight: 21
|
|
84
84
|
}
|
|
85
85
|
};
|
|
86
86
|
export const ThemeContext = /*#__PURE__*/createContext('auto');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyViewer.d.ts","sourceRoot":"","sources":["../../../../src/components/BodyViewer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BodyViewer.d.ts","sourceRoot":"","sources":["../../../../src/components/BodyViewer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAU,CAAC;AAgB3C,UAAU,KAAK;IACb,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAeD;;;;GAIG;AACH,QAAA,MAAM,UAAU,GAAI,gEAMjB,KAAK,gCA2LP,CAAC;AAmBF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JsonTreeView.d.ts","sourceRoot":"","sources":["../../../../../src/components/JsonTree/JsonTreeView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"JsonTreeView.d.ts","sourceRoot":"","sources":["../../../../../src/components/JsonTree/JsonTreeView.tsx"],"names":[],"mappings":"AA4BA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,UAAU,KAAK;IACb,KAAK,EAAE,OAAO,CAAC;IACf,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAKD,QAAA,MAAM,YAAY,kGAmIjB,CAAC;AAkIF,eAAe,YAAY,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type ReactNode } from 'react';
|
|
2
1
|
import { type ThemeInput } from '../theme.js';
|
|
3
2
|
export interface NetworkLensProps {
|
|
4
3
|
/**
|
|
@@ -19,8 +18,6 @@ export interface NetworkLensProps {
|
|
|
19
18
|
* `copyToClipboard={Clipboard.setString}`.
|
|
20
19
|
*/
|
|
21
20
|
copyToClipboard?: (text: string) => void;
|
|
22
|
-
/** Rendered above the request list's search bar (the overlay uses it for its title bar). */
|
|
23
|
-
header?: ReactNode;
|
|
24
21
|
}
|
|
25
22
|
export interface NetworkLensHandle {
|
|
26
23
|
/** Returns to the list if a request is open. Returns `true` when it handled the action. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkLens.d.ts","sourceRoot":"","sources":["../../../../src/components/NetworkLens.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NetworkLens.d.ts","sourceRoot":"","sources":["../../../../src/components/NetworkLens.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAA0B,KAAK,UAAU,EAAE,MAAM,aAAU,CAAC;AAKnE,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qEAAqE;IACrE,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACtB,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,2FAA2F;IAC3F,MAAM,EAAE,MAAM,OAAO,CAAC;CACvB;AAED,QAAA,MAAM,WAAW,gHAyBhB,CAAC;AA6FF,eAAe,WAAW,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ThemeInput } from '../theme.js';
|
|
2
2
|
import { type NetworkLensProps } from './NetworkLens.js';
|
|
3
|
-
export interface NetworkLensOverlayProps extends Omit<NetworkLensProps, 'enabled' | 'theme'
|
|
3
|
+
export interface NetworkLensOverlayProps extends Omit<NetworkLensProps, 'enabled' | 'theme'> {
|
|
4
4
|
/**
|
|
5
5
|
* Render nothing when `false`, e.g.
|
|
6
6
|
* `<NetworkLensOverlay enabled={__DEV__ || flags.networkInspector} />`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NetworkLensOverlay.d.ts","sourceRoot":"","sources":["../../../../src/components/NetworkLensOverlay.tsx"],"names":[],"mappings":"AAYA,OAAO,EAA0B,KAAK,UAAU,EAAE,MAAM,aAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"NetworkLensOverlay.d.ts","sourceRoot":"","sources":["../../../../src/components/NetworkLensOverlay.tsx"],"names":[],"mappings":"AAYA,OAAO,EAA0B,KAAK,UAAU,EAAE,MAAM,aAAU,CAAC;AAGnE,OAAoB,EAElB,KAAK,gBAAgB,EACtB,MAAM,kBAAe,CAAC;AAEvB,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CACnD,gBAAgB,EAChB,SAAS,GAAG,OAAO,CACpB;IACC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,CAAC;IACrE,sEAAsE;IACtE,MAAM,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,oDAAoD;IACpD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,QAAA,MAAM,kBAAkB,GAAI,8BAIzB,uBAAuB,uCAOzB,CAAC;AA8JF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RawTextView.d.ts","sourceRoot":"","sources":["../../../../src/components/RawTextView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"RawTextView.d.ts","sourceRoot":"","sources":["../../../../src/components/RawTextView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAO/D,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED;;;GAGG;AACH,QAAA,MAAM,WAAW,GAAI,mDAKlB,KAAK,sBAuDP,CAAC;AAyFF,eAAe,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestDetails.d.ts","sourceRoot":"","sources":["../../../../../src/components/RequestDetails/RequestDetails.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,cAAc,MAAM,8BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestDetails.d.ts","sourceRoot":"","sources":["../../../../../src/components/RequestDetails/RequestDetails.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,cAAc,MAAM,8BAA2B,CAAC;AAoB5D,UAAU,KAAK;IACb,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAWD,QAAA,MAAM,cAAc,GAAI,uCAAuC,KAAK,gCAgInE,CAAC;AAwJF,eAAe,cAAc,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type ReactNode } from 'react';
|
|
2
1
|
import type NetworkRequest from '../../core/NetworkRequest.js';
|
|
3
2
|
import { type ActionItem } from '../ui/index.js';
|
|
4
3
|
interface Props {
|
|
@@ -10,9 +9,7 @@ interface Props {
|
|
|
10
9
|
loggingEnabled: boolean;
|
|
11
10
|
onPressItem: (id: string) => void;
|
|
12
11
|
menuActions: ActionItem[];
|
|
13
|
-
/** Optional row rendered above the search bar (used by the overlay for title + close). */
|
|
14
|
-
header?: ReactNode;
|
|
15
12
|
}
|
|
16
|
-
declare const RequestList: ({ requests, sort, compact, maxRows, paused, loggingEnabled, onPressItem, menuActions,
|
|
13
|
+
declare const RequestList: ({ requests, sort, compact, maxRows, paused, loggingEnabled, onPressItem, menuActions, }: Props) => import("react").JSX.Element;
|
|
17
14
|
export default RequestList;
|
|
18
15
|
//# sourceMappingURL=RequestList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestList.d.ts","sourceRoot":"","sources":["../../../../../src/components/RequestList/RequestList.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RequestList.d.ts","sourceRoot":"","sources":["../../../../../src/components/RequestList/RequestList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,8BAA2B,CAAC;AAG5D,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,gBAAO,CAAC;AAYf,UAAU,KAAK;IACb,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAWD,QAAA,MAAM,WAAW,GAAI,yFASlB,KAAK,gCAwJP,CAAC;AAiBF,eAAe,WAAW,CAAC"}
|
|
@@ -4,10 +4,12 @@ interface TextButtonProps {
|
|
|
4
4
|
onPress?: () => void;
|
|
5
5
|
disabled?: boolean;
|
|
6
6
|
active?: boolean;
|
|
7
|
+
/** Text-only button in the primary colour, for navigation actions like Back. */
|
|
8
|
+
plain?: boolean;
|
|
7
9
|
style?: StyleProp<ViewStyle>;
|
|
8
10
|
textStyle?: StyleProp<TextStyle>;
|
|
9
11
|
}
|
|
10
|
-
export declare const TextButton: ({ label, onPress, disabled, active, style, textStyle, }: TextButtonProps) => import("react").JSX.Element;
|
|
12
|
+
export declare const TextButton: ({ label, onPress, disabled, active, plain, style, textStyle, }: TextButtonProps) => import("react").JSX.Element;
|
|
11
13
|
interface IconButtonProps {
|
|
12
14
|
/** A unicode glyph; the library ships no image assets. */
|
|
13
15
|
glyph: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,UAAU,GAAI,
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,eAAO,MAAM,UAAU,GAAI,gEAQxB,eAAe,gCAsCjB,CAAC;AAEF,UAAU,eAAe;IACvB,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,UAAU,GAAI,2DAMxB,eAAe,gCAyBjB,CAAC"}
|
|
@@ -6,6 +6,7 @@ interface Props {
|
|
|
6
6
|
small?: boolean;
|
|
7
7
|
style?: StyleProp<ViewStyle>;
|
|
8
8
|
}
|
|
9
|
+
/** Fixed-height badge so filled and outlined variants align on one row. */
|
|
9
10
|
export declare const Pill: ({ label, color, filled, small, style }: Props) => import("react").JSX.Element;
|
|
10
11
|
export {};
|
|
11
12
|
//# sourceMappingURL=Pill.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pill.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Pill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,IAAI,GAAI,wCAAwC,KAAK,gCAqBjE,CAAC"}
|
|
1
|
+
{"version":3,"file":"Pill.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Pill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,2EAA2E;AAC3E,eAAO,MAAM,IAAI,GAAI,wCAAwC,KAAK,gCAqBjE,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Theme } from './theme.js';
|
|
2
|
+
/**
|
|
3
|
+
* Tiny in-memory preferences shared by every viewer in the session, e.g. the
|
|
4
|
+
* code font scale the user picks with the "Aa" button.
|
|
5
|
+
*/
|
|
6
|
+
export type CodeFontScale = 'small' | 'medium' | 'large';
|
|
7
|
+
export declare const setCodeFontScale: (next: CodeFontScale) => void;
|
|
8
|
+
export declare const cycleCodeFontScale: () => void;
|
|
9
|
+
export declare const useCodeFontScale: () => CodeFontScale;
|
|
10
|
+
/** Font metrics for code views: the theme's base size times the chosen scale. */
|
|
11
|
+
export declare const useCodeFont: (theme: Theme) => {
|
|
12
|
+
scale: CodeFontScale;
|
|
13
|
+
fontSize: number;
|
|
14
|
+
lineHeight: number;
|
|
15
|
+
/** Average glyph advance for monospace fonts; used to size horizontal scroll areas. */
|
|
16
|
+
charWidth: number;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/settings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAS,CAAC;AAErC;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAoBzD,eAAO,MAAM,gBAAgB,GAAI,MAAM,aAAa,SAInD,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAI9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,aACiB,CAAC;AAEtD,iFAAiF;AACjF,eAAO,MAAM,WAAW,GAAI,OAAO,KAAK;;;;IAQpC,uFAAuF;;CAG1F,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-network-lens",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "In-app HTTP network inspector for React Native with a tabbed request viewer, collapsible JSON tree, search and zero dependencies",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -6,12 +6,13 @@ import { bodySize, stringifyJson } from '../utils/body';
|
|
|
6
6
|
import { formatBytes } from '../utils/format';
|
|
7
7
|
import JsonTreeView, { type JsonTreeHandle } from './JsonTree/JsonTreeView';
|
|
8
8
|
import RawTextView from './RawTextView';
|
|
9
|
+
import { cycleCodeFontScale, useCodeFontScale } from '../settings';
|
|
9
10
|
import {
|
|
10
11
|
ActionSheet,
|
|
11
12
|
EmptyState,
|
|
13
|
+
IconButton,
|
|
12
14
|
SearchInput,
|
|
13
15
|
SegmentedControl,
|
|
14
|
-
TextButton,
|
|
15
16
|
} from './ui';
|
|
16
17
|
|
|
17
18
|
type ViewMode = 'tree' | 'raw';
|
|
@@ -60,6 +61,8 @@ const BodyViewer = ({
|
|
|
60
61
|
value: unknown;
|
|
61
62
|
} | null>(null);
|
|
62
63
|
const treeRef = useRef<JsonTreeHandle>(null);
|
|
64
|
+
const [menuVisible, setMenuVisible] = useState(false);
|
|
65
|
+
const fontScale = useCodeFontScale();
|
|
63
66
|
|
|
64
67
|
const effectiveMode: ViewMode = structured ? mode : 'raw';
|
|
65
68
|
|
|
@@ -122,31 +125,15 @@ const BodyViewer = ({
|
|
|
122
125
|
</Text>
|
|
123
126
|
)}
|
|
124
127
|
<View style={styles.spacer} />
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
onPress={() => treeRef.current?.collapseAll()}
|
|
135
|
-
style={styles.toolButton}
|
|
136
|
-
/>
|
|
137
|
-
</>
|
|
138
|
-
)}
|
|
139
|
-
{copyToClipboard && body.kind !== 'binary' && (
|
|
140
|
-
<TextButton
|
|
141
|
-
label="Copy"
|
|
142
|
-
onPress={() => copyToClipboard(body.text)}
|
|
143
|
-
style={styles.toolButton}
|
|
144
|
-
/>
|
|
145
|
-
)}
|
|
146
|
-
<TextButton
|
|
147
|
-
label="Share"
|
|
148
|
-
onPress={() => share(body.text)}
|
|
149
|
-
style={styles.toolButton}
|
|
128
|
+
<IconButton
|
|
129
|
+
glyph="Aa"
|
|
130
|
+
accessibilityLabel={`Text size: ${fontScale}. Tap to change`}
|
|
131
|
+
onPress={cycleCodeFontScale}
|
|
132
|
+
/>
|
|
133
|
+
<IconButton
|
|
134
|
+
glyph="⋮"
|
|
135
|
+
accessibilityLabel="More options"
|
|
136
|
+
onPress={() => setMenuVisible(true)}
|
|
150
137
|
/>
|
|
151
138
|
</View>
|
|
152
139
|
{body.kind !== 'binary' && (
|
|
@@ -193,6 +180,28 @@ const BodyViewer = ({
|
|
|
193
180
|
/>
|
|
194
181
|
)}
|
|
195
182
|
</View>
|
|
183
|
+
<ActionSheet
|
|
184
|
+
visible={menuVisible}
|
|
185
|
+
onClose={() => setMenuVisible(false)}
|
|
186
|
+
actions={[
|
|
187
|
+
...(effectiveMode === 'tree'
|
|
188
|
+
? [
|
|
189
|
+
{
|
|
190
|
+
label: 'Expand all',
|
|
191
|
+
onPress: () => treeRef.current?.expandAll(),
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
label: 'Collapse all',
|
|
195
|
+
onPress: () => treeRef.current?.collapseAll(),
|
|
196
|
+
},
|
|
197
|
+
]
|
|
198
|
+
: []),
|
|
199
|
+
...(copyToClipboard && body.kind !== 'binary'
|
|
200
|
+
? [{ label: 'Copy', onPress: () => copyToClipboard(body.text) }]
|
|
201
|
+
: []),
|
|
202
|
+
{ label: 'Share', onPress: () => share(body.text) },
|
|
203
|
+
]}
|
|
204
|
+
/>
|
|
196
205
|
<ActionSheet
|
|
197
206
|
visible={nodeMenu !== null}
|
|
198
207
|
onClose={() => setNodeMenu(null)}
|
|
@@ -238,8 +247,7 @@ const styles = StyleSheet.create({
|
|
|
238
247
|
paddingHorizontal: 12,
|
|
239
248
|
paddingTop: 10,
|
|
240
249
|
},
|
|
241
|
-
modeSwitch: { width:
|
|
242
|
-
toolButton: { marginLeft: 6 },
|
|
250
|
+
modeSwitch: { width: 140 },
|
|
243
251
|
spacer: { flex: 1 },
|
|
244
252
|
search: { marginHorizontal: 12, marginTop: 8 },
|
|
245
253
|
meta: { fontSize: 12, flexShrink: 1 },
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
useState,
|
|
9
9
|
} from 'react';
|
|
10
10
|
import { Pressable, StyleSheet, Text } from 'react-native';
|
|
11
|
+
import { useCodeFont } from '../../settings';
|
|
11
12
|
import { useTheme, type Theme } from '../../theme';
|
|
12
13
|
import { splitHighlights } from '../../utils/search';
|
|
13
14
|
import { CodeList } from '../CodeList';
|
|
@@ -58,6 +59,7 @@ const JsonTreeView = forwardRef<JsonTreeHandle, Props>(
|
|
|
58
59
|
ref
|
|
59
60
|
) {
|
|
60
61
|
const theme = useTheme();
|
|
62
|
+
const font = useCodeFont(theme);
|
|
61
63
|
const [expanded, setExpanded] = useState<Set<string>>(() =>
|
|
62
64
|
pathsToDepth(value, initialDepth)
|
|
63
65
|
);
|
|
@@ -118,8 +120,8 @@ const JsonTreeView = forwardRef<JsonTreeHandle, Props>(
|
|
|
118
120
|
let maxChars = 0;
|
|
119
121
|
for (const row of rows)
|
|
120
122
|
maxChars = Math.max(maxChars, rowCharCount(row, INDENT_CHARS));
|
|
121
|
-
return maxChars *
|
|
122
|
-
}, [rows,
|
|
123
|
+
return maxChars * font.charWidth + 40;
|
|
124
|
+
}, [rows, font.charWidth]);
|
|
123
125
|
|
|
124
126
|
const toggle = useCallback((row: JsonRow) => {
|
|
125
127
|
setExpanded((prev) => {
|
|
@@ -135,13 +137,14 @@ const JsonTreeView = forwardRef<JsonTreeHandle, Props>(
|
|
|
135
137
|
});
|
|
136
138
|
}, []);
|
|
137
139
|
|
|
138
|
-
const rowHeight =
|
|
140
|
+
const rowHeight = font.lineHeight + 4;
|
|
139
141
|
|
|
140
142
|
const renderItem = useCallback(
|
|
141
143
|
({ item }: { item: JsonRow }) => (
|
|
142
144
|
<TreeRow
|
|
143
145
|
row={item}
|
|
144
146
|
theme={theme}
|
|
147
|
+
font={font}
|
|
145
148
|
query={query}
|
|
146
149
|
matched={matchedPaths.has(item.path)}
|
|
147
150
|
active={item.path === activePath}
|
|
@@ -152,6 +155,7 @@ const JsonTreeView = forwardRef<JsonTreeHandle, Props>(
|
|
|
152
155
|
),
|
|
153
156
|
[
|
|
154
157
|
theme,
|
|
158
|
+
font,
|
|
155
159
|
query,
|
|
156
160
|
matchedPaths,
|
|
157
161
|
activePath,
|
|
@@ -180,6 +184,7 @@ const keyExtractor = (row: JsonRow) => row.path;
|
|
|
180
184
|
const TreeRow = memo(function TreeRowInner({
|
|
181
185
|
row,
|
|
182
186
|
theme,
|
|
187
|
+
font,
|
|
183
188
|
query,
|
|
184
189
|
matched,
|
|
185
190
|
active,
|
|
@@ -189,6 +194,7 @@ const TreeRow = memo(function TreeRowInner({
|
|
|
189
194
|
}: {
|
|
190
195
|
row: JsonRow;
|
|
191
196
|
theme: Theme;
|
|
197
|
+
font: ReturnType<typeof useCodeFont>;
|
|
192
198
|
query: string;
|
|
193
199
|
matched: boolean;
|
|
194
200
|
active: boolean;
|
|
@@ -198,8 +204,8 @@ const TreeRow = memo(function TreeRowInner({
|
|
|
198
204
|
}) {
|
|
199
205
|
const codeStyle = {
|
|
200
206
|
fontFamily: theme.fonts.mono,
|
|
201
|
-
fontSize:
|
|
202
|
-
lineHeight:
|
|
207
|
+
fontSize: font.fontSize,
|
|
208
|
+
lineHeight: font.lineHeight,
|
|
203
209
|
};
|
|
204
210
|
const valueColor = (() => {
|
|
205
211
|
switch (row.type) {
|