react-native-inapp-inspector 1.1.33 → 1.1.35

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 (75) hide show
  1. package/dist/commonjs/components/ConsoleLogCard.js +57 -56
  2. package/dist/commonjs/components/CopyButton.js +7 -1
  3. package/dist/commonjs/components/Inspector/BundleTab.js +268 -27
  4. package/dist/commonjs/components/Inspector/CrashDetail.js +16 -12
  5. package/dist/commonjs/components/Inspector/InspectorHeader.js +16 -16
  6. package/dist/commonjs/components/Inspector/MainScreen.js +6 -2
  7. package/dist/commonjs/components/Inspector/NetworkTab.js +97 -1
  8. package/dist/commonjs/components/Inspector/ReduxDetail.js +24 -19
  9. package/dist/commonjs/components/Inspector/ReduxTab.js +12 -8
  10. package/dist/commonjs/components/Inspector/SettingsPanel.js +1243 -673
  11. package/dist/commonjs/components/LogCard.js +27 -9
  12. package/dist/commonjs/components/MetaAccordion.js +42 -0
  13. package/dist/commonjs/components/NetworkIcons.d.ts +9 -0
  14. package/dist/commonjs/components/NetworkIcons.js +48 -1
  15. package/dist/commonjs/components/Toast.js +3 -3
  16. package/dist/commonjs/components/TouchableScale.d.ts +4 -2
  17. package/dist/commonjs/components/TouchableScale.js +4 -4
  18. package/dist/commonjs/constants/version.d.ts +1 -1
  19. package/dist/commonjs/constants/version.js +1 -1
  20. package/dist/commonjs/customHooks/analyticsLogger.d.ts +2 -0
  21. package/dist/commonjs/customHooks/analyticsLogger.js +10 -1
  22. package/dist/commonjs/customHooks/bundleAnalyzer.d.ts +2 -0
  23. package/dist/commonjs/customHooks/bundleAnalyzer.js +80 -33
  24. package/dist/commonjs/customHooks/consoleLogger.d.ts +2 -0
  25. package/dist/commonjs/customHooks/consoleLogger.js +10 -1
  26. package/dist/commonjs/customHooks/crashHandler.d.ts +2 -0
  27. package/dist/commonjs/customHooks/crashHandler.js +10 -1
  28. package/dist/commonjs/customHooks/networkLogger.d.ts +2 -0
  29. package/dist/commonjs/customHooks/networkLogger.js +12 -1
  30. package/dist/commonjs/customHooks/performanceTracker.d.ts +3 -1
  31. package/dist/commonjs/customHooks/performanceTracker.js +18 -4
  32. package/dist/commonjs/customHooks/reduxLogger.d.ts +2 -0
  33. package/dist/commonjs/customHooks/reduxLogger.js +10 -1
  34. package/dist/commonjs/i18n/locales/en.json +96 -28
  35. package/dist/commonjs/index.js +78 -34
  36. package/dist/commonjs/styles/AppColors.d.ts +28 -0
  37. package/dist/commonjs/styles/AppColors.js +30 -0
  38. package/dist/esm/components/ConsoleLogCard.js +58 -57
  39. package/dist/esm/components/CopyButton.js +7 -1
  40. package/dist/esm/components/Inspector/BundleTab.js +268 -27
  41. package/dist/esm/components/Inspector/CrashDetail.js +16 -12
  42. package/dist/esm/components/Inspector/InspectorHeader.js +16 -16
  43. package/dist/esm/components/Inspector/MainScreen.js +6 -2
  44. package/dist/esm/components/Inspector/NetworkTab.js +99 -3
  45. package/dist/esm/components/Inspector/ReduxDetail.js +24 -19
  46. package/dist/esm/components/Inspector/ReduxTab.js +12 -8
  47. package/dist/esm/components/Inspector/SettingsPanel.js +1246 -676
  48. package/dist/esm/components/LogCard.js +27 -9
  49. package/dist/esm/components/MetaAccordion.js +42 -0
  50. package/dist/esm/components/NetworkIcons.d.ts +9 -0
  51. package/dist/esm/components/NetworkIcons.js +38 -0
  52. package/dist/esm/components/Toast.js +3 -3
  53. package/dist/esm/components/TouchableScale.d.ts +4 -2
  54. package/dist/esm/components/TouchableScale.js +4 -4
  55. package/dist/esm/constants/version.d.ts +1 -1
  56. package/dist/esm/constants/version.js +1 -1
  57. package/dist/esm/customHooks/analyticsLogger.d.ts +2 -0
  58. package/dist/esm/customHooks/analyticsLogger.js +7 -0
  59. package/dist/esm/customHooks/bundleAnalyzer.d.ts +2 -0
  60. package/dist/esm/customHooks/bundleAnalyzer.js +77 -32
  61. package/dist/esm/customHooks/consoleLogger.d.ts +2 -0
  62. package/dist/esm/customHooks/consoleLogger.js +7 -0
  63. package/dist/esm/customHooks/crashHandler.d.ts +2 -0
  64. package/dist/esm/customHooks/crashHandler.js +7 -0
  65. package/dist/esm/customHooks/networkLogger.d.ts +2 -0
  66. package/dist/esm/customHooks/networkLogger.js +9 -0
  67. package/dist/esm/customHooks/performanceTracker.d.ts +3 -1
  68. package/dist/esm/customHooks/performanceTracker.js +15 -3
  69. package/dist/esm/customHooks/reduxLogger.d.ts +2 -0
  70. package/dist/esm/customHooks/reduxLogger.js +7 -0
  71. package/dist/esm/i18n/locales/en.json +96 -28
  72. package/dist/esm/index.js +64 -20
  73. package/dist/esm/styles/AppColors.d.ts +28 -0
  74. package/dist/esm/styles/AppColors.js +30 -0
  75. package/package.json +3 -2
@@ -164,6 +164,21 @@ const LightColors = {
164
164
  greyBorder: '#E3DFEC',
165
165
  paperBg: '#FBF9FC',
166
166
  contentBg: '#F8F7FB',
167
+ // ─── Toast / Glass / Chip Tokens ───
168
+ toastBg: '#0F172AEE',
169
+ toastBorder: '#33415588',
170
+ mintGreenBg: '#ECFDF5',
171
+ mintGreenBorder: '#A7F3D0',
172
+ mintGreenText: '#059669',
173
+ amberWarmBg: '#FFFBEB',
174
+ amberWarmBorder: '#FDE68A',
175
+ amberWarmText: '#92400E',
176
+ violetSoftBg: '#EDE9FE',
177
+ violetSoftBorder: '#DDD6FE',
178
+ violetSoftText: '#7C3AED',
179
+ skySoftBg: '#E0F2FE',
180
+ skySoftBorder: '#BAE6FD',
181
+ skySoftText: '#0284C7',
167
182
  // ─── Domain Colors (Thai Airways Themed) ───
168
183
  domainColors: [
169
184
  '#5C2D91',
@@ -240,6 +255,21 @@ const DarkColors = {
240
255
  amber700: '#C5A059',
241
256
  amber800: '#B89758',
242
257
  green500: '#22C55E',
258
+ // ─── Toast / Glass / Chip Tokens (Dark) ───
259
+ toastBg: '#1E293BEE',
260
+ toastBorder: '#47556988',
261
+ mintGreenBg: '#064E3B66',
262
+ mintGreenBorder: '#05966988',
263
+ mintGreenText: '#34D399',
264
+ amberWarmBg: '#451A0366',
265
+ amberWarmBorder: '#D9770688',
266
+ amberWarmText: '#FCD34D',
267
+ violetSoftBg: '#3B076466',
268
+ violetSoftBorder: '#7C3AED88',
269
+ violetSoftText: '#C084FC',
270
+ skySoftBg: '#082F4966',
271
+ skySoftBorder: '#0284C788',
272
+ skySoftText: '#38BDF8',
243
273
  green600: '#16A34A',
244
274
  green700: '#15803D',
245
275
  green800: '#166534',
@@ -6,7 +6,7 @@ import { AppFonts } from '../styles/AppFonts';
6
6
  import { formatTime, getJsonContent, getJsonPreviewText, parseStackLine, openInVSCode, } from '../helpers';
7
7
  import HighlightText from './HighlightText';
8
8
  import CopyButton from './CopyButton';
9
- import { ChevronIcon, ExternalLinkIcon } from './NetworkIcons';
9
+ import { ChevronIcon, ExternalLinkIcon, FlaskIcon, ZapIcon, GlobeIcon, DiceIcon, AtomIcon, BarChartIcon, KeyIcon, SmartphoneIcon, AlertTriangleIcon, BugIcon, TagIcon, } from './NetworkIcons';
10
10
  import { useInspector } from './Inspector/InspectorContext';
11
11
  const getLogMessageWithBadges = (message, searchStr, textStyle, highlightStyle, numberOfLines) => {
12
12
  if (!message)
@@ -20,44 +20,45 @@ const getLogMessageWithBadges = (message, searchStr, textStyle, highlightStyle,
20
20
  const getTagDecorator = (tag) => {
21
21
  const clean = tag.replace(/[\[\]]/g, '').trim().toUpperCase();
22
22
  if (clean === 'AXIOS') {
23
- return { color: AppColors.emerald600, icon: '⚡', label: 'AXIOS' };
23
+ return { color: AppColors.emerald600, Icon: ZapIcon, label: 'AXIOS' };
24
24
  }
25
25
  if (clean === 'API' || clean === 'FETCH' || clean === 'HTTP' || clean === 'NETWORK') {
26
- return { color: AppColors.sky600, icon: '🌐', label: clean };
26
+ return { color: AppColors.sky600, Icon: GlobeIcon, label: clean };
27
27
  }
28
28
  if (clean === 'SAMPLE' || clean === 'BATCH') {
29
- return { color: AppColors.indigo600Alt, icon: '🎲', label: clean };
29
+ return { color: AppColors.indigo600Alt, Icon: DiceIcon, label: clean };
30
30
  }
31
31
  if (clean === 'REDUX' || clean === 'STORE' || clean === 'STATE') {
32
- return { color: AppColors.violet600, icon: '⚛️', label: clean };
32
+ return { color: AppColors.violet600, Icon: AtomIcon, label: clean };
33
33
  }
34
34
  if (clean === 'ANALYTICS' || clean === 'FIREBASE' || clean === 'GA4' || clean === 'GA') {
35
- return { color: AppColors.teal600, icon: '📊', label: clean };
35
+ return { color: AppColors.teal600, Icon: BarChartIcon, label: clean };
36
36
  }
37
37
  if (clean === 'AUTH' || clean === 'TOKEN' || clean === 'SESSION') {
38
- return { color: AppColors.amber600, icon: '🔑', label: clean };
38
+ return { color: AppColors.amber600, Icon: KeyIcon, label: clean };
39
39
  }
40
40
  if (clean === 'APP') {
41
- return { color: AppColors.indigo600Alt, icon: '📱', label: 'APP' };
41
+ return { color: AppColors.indigo600Alt, Icon: SmartphoneIcon, label: 'APP' };
42
42
  }
43
43
  if (clean === 'TEST') {
44
- return { color: AppColors.emerald500, icon: '🧪', label: 'TEST' };
44
+ return { color: AppColors.emerald500, Icon: FlaskIcon, label: 'TEST' };
45
45
  }
46
46
  if (clean === 'WARN' || clean === 'WARNING') {
47
- return { color: AppColors.amber600, icon: '⚠️', label: 'WARN' };
47
+ return { color: AppColors.amber600, Icon: AlertTriangleIcon, label: 'WARN' };
48
48
  }
49
49
  if (clean === 'ERROR' || clean === 'CRASH' || clean === 'BUG') {
50
- return { color: AppColors.red600, icon: '💥', label: 'ERROR' };
50
+ return { color: AppColors.red600, Icon: BugIcon, label: 'ERROR' };
51
51
  }
52
52
  if (clean === 'PERF' || clean === 'RENDER') {
53
- return { color: AppColors.violet500, icon: '⚡', label: clean };
53
+ return { color: AppColors.violet500, Icon: ZapIcon, label: clean };
54
54
  }
55
- return { color: AppColors.slate600, icon: '🏷️', label: clean };
55
+ return { color: AppColors.slate600, Icon: TagIcon, label: clean };
56
56
  };
57
57
  return (<View style={{ flexDirection: 'column', gap: 6 }}>
58
58
  <View style={{ flexDirection: 'row', flexWrap: 'wrap', gap: 5 }}>
59
59
  {tags.map((tag, i) => {
60
60
  const dec = getTagDecorator(tag);
61
+ const IconComp = dec.Icon;
61
62
  return (<View key={i} style={[
62
63
  styles.prefixTag,
63
64
  {
@@ -65,7 +66,7 @@ const getLogMessageWithBadges = (message, searchStr, textStyle, highlightStyle,
65
66
  borderColor: `${dec.color}35`,
66
67
  },
67
68
  ]}>
68
- <Text style={{ fontSize: 9.5 }}>{dec.icon}</Text>
69
+ <IconComp color={dec.color} size={10}/>
69
70
  <Text style={[styles.prefixTagText, { color: dec.color }]}>
70
71
  {dec.label}
71
72
  </Text>
@@ -93,67 +94,67 @@ export const ConsoleLogCard = React.memo(function ConsoleLogCard({ item, searchS
93
94
  const method = (item.sourceMethod || type).toLowerCase();
94
95
  if (isAnalyticsError || type === 'error' || method === 'error') {
95
96
  return {
96
- border: '#EF4444',
97
- badgeBg: '#FEE2E2',
98
- badgeText: '#DC2626',
97
+ border: AppColors.errorColor,
98
+ badgeBg: AppColors.errorCardBg,
99
+ badgeText: AppColors.rose600,
99
100
  label: 'ERROR',
100
- cardBg: '#FEF2F2',
101
- methodBorder: '#FECACA',
102
- methodBg: '#FEE2E2',
103
- methodText: '#DC2626',
104
- textColor: '#991B1B',
101
+ cardBg: AppColors.errorCardBg,
102
+ methodBorder: AppColors.errorBorder,
103
+ methodBg: AppColors.errorCardBg,
104
+ methodText: AppColors.rose600,
105
+ textColor: AppColors.redErrorText,
105
106
  };
106
107
  }
107
108
  if (type === 'warn' || method === 'warn') {
108
109
  return {
109
- border: '#F59E0B',
110
- badgeBg: '#FEF3C7',
111
- badgeText: '#D97706',
110
+ border: AppColors.amber600,
111
+ badgeBg: AppColors.amberBg,
112
+ badgeText: AppColors.amber700,
112
113
  label: 'WARN',
113
- cardBg: '#FFFBEB',
114
- methodBorder: '#FDE68A',
115
- methodBg: '#FEF3C7',
116
- methodText: '#D97706',
117
- textColor: '#92400E',
114
+ cardBg: AppColors.amberWarmBg,
115
+ methodBorder: AppColors.amberWarmBorder,
116
+ methodBg: AppColors.amberBg,
117
+ methodText: AppColors.amber700,
118
+ textColor: AppColors.amberWarmText,
118
119
  };
119
120
  }
120
121
  if (type === 'debug' || method === 'debug') {
121
122
  return {
122
- border: '#8B5CF6',
123
- badgeBg: '#EDE9FE',
124
- badgeText: '#7C3AED',
123
+ border: AppColors.purple500,
124
+ badgeBg: AppColors.violetSoftBg,
125
+ badgeText: AppColors.violetSoftText,
125
126
  label: 'DEBUG',
126
- cardBg: '#F5F3FF',
127
- methodBorder: '#DDD6FE',
128
- methodBg: '#EDE9FE',
129
- methodText: '#7C3AED',
130
- textColor: '#4C1D95',
127
+ cardBg: AppColors.purpleShade50,
128
+ methodBorder: AppColors.violetSoftBorder,
129
+ methodBg: AppColors.violetSoftBg,
130
+ methodText: AppColors.violetSoftText,
131
+ textColor: AppColors.purpleText,
131
132
  };
132
133
  }
133
134
  if (type === 'info' || method === 'info') {
134
135
  return {
135
- border: '#0EA5E9',
136
- badgeBg: '#E0F2FE',
137
- badgeText: '#0284C7',
136
+ border: AppColors.sky500,
137
+ badgeBg: AppColors.skySoftBg,
138
+ badgeText: AppColors.skySoftText,
138
139
  label: 'INFO',
139
- cardBg: '#F0F9FF',
140
- methodBorder: '#BAE6FD',
141
- methodBg: '#E0F2FE',
142
- methodText: '#0284C7',
143
- textColor: '#075985',
140
+ cardBg: AppColors.blueBg,
141
+ methodBorder: AppColors.skySoftBorder,
142
+ methodBg: AppColors.skySoftBg,
143
+ methodText: AppColors.skySoftText,
144
+ textColor: AppColors.blue800,
144
145
  };
145
146
  }
146
147
  // Default / Standard console.log
147
148
  return {
148
- border: '#6366F1',
149
- badgeBg: '#EEF2FF',
150
- badgeText: '#4F46E5',
149
+ border: AppColors.indigo500,
150
+ badgeBg: AppColors.indigo50,
151
+ badgeText: AppColors.indigo600Alt,
151
152
  label: 'LOG',
152
- cardBg: '#FFFFFF',
153
- methodBorder: '#E0E7FF',
154
- methodBg: '#EEF2FF',
155
- methodText: '#4F46E5',
156
- textColor: '#0F172A',
153
+ cardBg: AppColors.primaryLight,
154
+ methodBorder: AppColors.dividerColor,
155
+ methodBg: AppColors.indigo50,
156
+ methodText: AppColors.indigo600Alt,
157
+ textColor: AppColors.primaryBlack,
157
158
  };
158
159
  };
159
160
  const colors = getLogColors();
@@ -198,11 +199,11 @@ export const ConsoleLogCard = React.memo(function ConsoleLogCard({ item, searchS
198
199
  {jsonContent && (<View style={[
199
200
  styles.metaChip,
200
201
  {
201
- backgroundColor: '#ECFDF5',
202
- borderColor: '#A7F3D0',
202
+ backgroundColor: AppColors.mintGreenBg,
203
+ borderColor: AppColors.mintGreenBorder,
203
204
  },
204
205
  ]}>
205
- <Text style={[styles.metaChipText, { color: '#059669', fontFamily: AppFonts.interBold }]}>
206
+ <Text style={[styles.metaChipText, { color: AppColors.mintGreenText, fontFamily: AppFonts.interBold }]}>
206
207
  {Array.isArray(jsonContent.data)
207
208
  ? `Array[${jsonContent.data.length}]`
208
209
  : `Object{${Object.keys(jsonContent.data).length}}`}
@@ -39,7 +39,13 @@ const CopyButton = React.memo(({ value, label, iconType = 'copy' }) => {
39
39
  : iconType === 'fetch'
40
40
  ? FetchIcon
41
41
  : CopyIcon;
42
- return (<TouchableScale onPress={handlePress} onLongPress={handleLongPress} hitSlop={12} style={containerStyle}>
42
+ return (<TouchableScale accessible={true} accessibilityRole="button" accessibilityLabel={label
43
+ ? copied
44
+ ? `${label} copied`
45
+ : `Copy ${label}`
46
+ : copied
47
+ ? 'Copied to clipboard'
48
+ : 'Copy to clipboard'} accessibilityHint="Double tap to copy, long press to share" onPress={handlePress} onLongPress={handleLongPress} hitSlop={12} style={containerStyle}>
43
49
  {copied ? (<CheckIcon color={AppColors.greenColor} size={14}/>) : (<IconComponent color={AppColors.grayTextWeak} size={14}/>)}
44
50
  </TouchableScale>);
45
51
  });