react-native-inapp-inspector 1.1.26 → 1.1.28
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/android/build.gradle +1 -0
- package/android/src/main/java/com/inappinspector/NetworkInspectorModule.java +34 -0
- package/dist/commonjs/components/ErrorBoundary.d.ts +1 -1
- package/dist/commonjs/components/ErrorBoundary.js +530 -100
- package/dist/commonjs/components/Inspector/AnalyticsTab.js +176 -126
- package/dist/commonjs/components/Inspector/BundleTab.d.ts +1 -0
- package/dist/commonjs/components/Inspector/BundleTab.js +145 -21
- package/dist/commonjs/components/Inspector/CrashTab.js +0 -8
- package/dist/commonjs/components/Inspector/NetworkDetail.js +41 -0
- package/dist/commonjs/components/Inspector/PerformanceTab.d.ts +5 -0
- package/dist/commonjs/components/Inspector/PerformanceTab.js +588 -155
- package/dist/commonjs/components/Inspector/SettingsPanel.js +57 -22
- package/dist/commonjs/components/Inspector/TabBar.js +13 -1
- package/dist/commonjs/components/LogCard.js +75 -34
- package/dist/commonjs/components/NetworkIcons.d.ts +112 -102
- package/dist/commonjs/constants/version.d.ts +1 -1
- package/dist/commonjs/constants/version.js +1 -1
- package/dist/commonjs/customHooks/analyticsLogger.d.ts +1 -11
- package/dist/commonjs/customHooks/analyticsLogger.js +8 -1
- package/dist/commonjs/customHooks/bundleAnalyzer.js +121 -124
- package/dist/commonjs/customHooks/networkLogger.d.ts +1 -0
- package/dist/commonjs/customHooks/networkLogger.js +16 -0
- package/dist/commonjs/customHooks/performanceTracker.d.ts +74 -0
- package/dist/commonjs/customHooks/performanceTracker.js +546 -392
- package/dist/commonjs/customHooks/reduxLogger.d.ts +1 -0
- package/dist/commonjs/customHooks/reduxLogger.js +3 -1
- package/dist/commonjs/helpers/index.js +27 -3
- package/dist/commonjs/i18n/locales/en.json +225 -4
- package/dist/commonjs/index.d.ts +1 -1
- package/dist/commonjs/index.js +36 -2
- package/dist/commonjs/styles/index.d.ts +3 -1
- package/dist/commonjs/styles/index.js +8 -6
- package/dist/commonjs/types/interfaces.d.ts +3 -0
- package/dist/esm/components/ErrorBoundary.d.ts +1 -1
- package/dist/esm/components/ErrorBoundary.js +498 -101
- package/dist/esm/components/Inspector/AnalyticsTab.js +177 -127
- package/dist/esm/components/Inspector/BundleTab.d.ts +1 -0
- package/dist/esm/components/Inspector/BundleTab.js +145 -23
- package/dist/esm/components/Inspector/CrashTab.js +0 -8
- package/dist/esm/components/Inspector/NetworkDetail.js +41 -0
- package/dist/esm/components/Inspector/PerformanceTab.d.ts +5 -0
- package/dist/esm/components/Inspector/PerformanceTab.js +591 -158
- package/dist/esm/components/Inspector/SettingsPanel.js +57 -22
- package/dist/esm/components/Inspector/TabBar.js +13 -1
- package/dist/esm/components/LogCard.js +75 -34
- package/dist/esm/components/NetworkIcons.d.ts +112 -102
- package/dist/esm/constants/version.d.ts +1 -1
- package/dist/esm/constants/version.js +1 -1
- package/dist/esm/customHooks/analyticsLogger.d.ts +1 -11
- package/dist/esm/customHooks/analyticsLogger.js +6 -0
- package/dist/esm/customHooks/bundleAnalyzer.js +121 -124
- package/dist/esm/customHooks/networkLogger.d.ts +1 -0
- package/dist/esm/customHooks/networkLogger.js +16 -0
- package/dist/esm/customHooks/performanceTracker.d.ts +74 -0
- package/dist/esm/customHooks/performanceTracker.js +531 -391
- package/dist/esm/customHooks/reduxLogger.d.ts +1 -0
- package/dist/esm/customHooks/reduxLogger.js +1 -0
- package/dist/esm/helpers/index.js +27 -3
- package/dist/esm/i18n/locales/en.json +225 -4
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +24 -3
- package/dist/esm/styles/index.d.ts +3 -1
- package/dist/esm/styles/index.js +8 -6
- package/dist/esm/types/interfaces.d.ts +3 -0
- package/ios/NetworkInspectorModule.h +2 -0
- package/ios/NetworkInspectorModule.m +10 -0
- package/package.json +1 -1
|
@@ -13,8 +13,12 @@ import { clearNetworkLogs } from '../../customHooks/networkLogger';
|
|
|
13
13
|
import { clearConsoleLogs } from '../../customHooks/consoleLogger';
|
|
14
14
|
import { clearAnalyticsEvents } from '../../customHooks/analyticsLogger';
|
|
15
15
|
import { clearCrashRecords, } from '../../customHooks/crashHandler';
|
|
16
|
+
import { isReduxConnected } from '../../customHooks/reduxLogger';
|
|
17
|
+
import { isAnalyticsConnected } from '../../customHooks/analyticsLogger';
|
|
18
|
+
import { useTranslation } from '../../i18n';
|
|
16
19
|
import { SignalIcon, TerminalIcon, AnalyticsIcon, SettingsIcon, SunIcon, MoonIcon, ScreenIcon, MotionIcon, LayersIcon, EyeIcon, CheckIcon, TrashIcon, WhiteBackNavigation, PackageIcon, ReduxIcon, PerformanceIcon, CrashIcon, ShieldAlertIcon, } from '../NetworkIcons';
|
|
17
20
|
const SettingsPanel = () => {
|
|
21
|
+
const { t } = useTranslation();
|
|
18
22
|
const { settingsPage, setSettingsPage, settingsActiveSubTab, setSettingsActiveSubTab, tabVisibility, toggleTabVisibility, defaultTab, setDefaultTab, isDark, setIsDark, modalHeightPercent, setModalHeightPercent, modalAnimationType, setModalAnimationType, showDuplicateLogs, setShowDuplicateLogs, showConsoleLevels, setShowConsoleLevels, resetToDefaults, storage, logs, consoleLogs, analyticsEvents, reduxState, maxNetworkLogs, setMaxNetworkLogs, maxConsoleLogs, setMaxConsoleLogs, reduxAutoRefresh, setReduxAutoRefreshState, reduxExpandDepth, setReduxExpandDepth, switchActiveTab, setSelected, setSelectedEvent, setReduxState, crashRecords, maxCrashLogs, setMaxCrashLogs, } = useInspector();
|
|
19
23
|
const isPersistent = isPersistentStorageAvailable();
|
|
20
24
|
const headerTopPadding = Platform.OS === 'ios' && modalHeightPercent >= 95 ? 44 : 0;
|
|
@@ -185,9 +189,14 @@ const SettingsPanel = () => {
|
|
|
185
189
|
</View>
|
|
186
190
|
|
|
187
191
|
{settingsTabs.map((tab, idx) => {
|
|
188
|
-
const
|
|
192
|
+
const isReduxAvail = isReduxConnected();
|
|
193
|
+
const isAnalyticsAvail = isAnalyticsConnected();
|
|
194
|
+
const isUnavailable = (tab.key === 'redux' && !isReduxAvail) ||
|
|
195
|
+
(tab.key === 'analytics' && !isAnalyticsAvail);
|
|
196
|
+
const isLocked = tab.key === 'apis' || isUnavailable;
|
|
197
|
+
const isVisible = tab.key === 'apis' ||
|
|
198
|
+
(Boolean(tabVisibility?.[tab.key]) && !isUnavailable);
|
|
189
199
|
const isLast = idx === settingsTabs.length - 1;
|
|
190
|
-
const isLocked = tab.key === 'apis';
|
|
191
200
|
return (<View key={tab.key} style={{
|
|
192
201
|
flexDirection: 'row',
|
|
193
202
|
alignItems: 'center',
|
|
@@ -203,6 +212,7 @@ const SettingsPanel = () => {
|
|
|
203
212
|
flexDirection: 'row',
|
|
204
213
|
alignItems: 'center',
|
|
205
214
|
gap: 8,
|
|
215
|
+
flexWrap: 'wrap',
|
|
206
216
|
}}>
|
|
207
217
|
{/* Small icon tile */}
|
|
208
218
|
<View style={{
|
|
@@ -251,8 +261,28 @@ const SettingsPanel = () => {
|
|
|
251
261
|
}}>
|
|
252
262
|
{tab.label}
|
|
253
263
|
</Text>
|
|
264
|
+
{/* Unavailable badge */}
|
|
265
|
+
{isUnavailable && (<View style={{
|
|
266
|
+
backgroundColor: `${AppColors.amber500}18`,
|
|
267
|
+
borderRadius: 4,
|
|
268
|
+
paddingHorizontal: 5,
|
|
269
|
+
paddingVertical: 1.5,
|
|
270
|
+
borderWidth: 1,
|
|
271
|
+
borderColor: `${AppColors.amber500}35`,
|
|
272
|
+
}}>
|
|
273
|
+
<Text style={{
|
|
274
|
+
fontFamily: AppFonts.interBold,
|
|
275
|
+
fontSize: 8,
|
|
276
|
+
color: AppColors.amber700,
|
|
277
|
+
letterSpacing: 0.3,
|
|
278
|
+
}}>
|
|
279
|
+
{tab.key === 'redux'
|
|
280
|
+
? t('settings.notConnectedBadge')
|
|
281
|
+
: t('settings.notDetectedBadge')}
|
|
282
|
+
</Text>
|
|
283
|
+
</View>)}
|
|
254
284
|
{/* #6 — badge marks the configured default tab */}
|
|
255
|
-
{tab.key === defaultTab && (<View style={{
|
|
285
|
+
{tab.key === defaultTab && !isUnavailable && (<View style={{
|
|
256
286
|
flexDirection: 'row',
|
|
257
287
|
alignItems: 'center',
|
|
258
288
|
backgroundColor: `${AppColors.purple}14`,
|
|
@@ -281,21 +311,21 @@ const SettingsPanel = () => {
|
|
|
281
311
|
</View>)}
|
|
282
312
|
|
|
283
313
|
{/* Settings gear icon next to label */}
|
|
284
|
-
<TouchableScale onPress={() => {
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
314
|
+
{!isUnavailable && (<TouchableScale onPress={() => {
|
|
315
|
+
animateNextLayout();
|
|
316
|
+
setSettingsPage(tab.key);
|
|
317
|
+
}} hitSlop={8} style={{
|
|
318
|
+
marginLeft: 4,
|
|
319
|
+
padding: 4,
|
|
320
|
+
borderRadius: 6,
|
|
321
|
+
backgroundColor: AppColors.purpleShade50,
|
|
322
|
+
borderWidth: 1,
|
|
323
|
+
borderColor: `${AppColors.purple}26`,
|
|
324
|
+
alignItems: 'center',
|
|
325
|
+
justifyContent: 'center',
|
|
326
|
+
}}>
|
|
327
|
+
<SettingsIcon color={AppColors.purple} size={10}/>
|
|
328
|
+
</TouchableScale>)}
|
|
299
329
|
</View>
|
|
300
330
|
|
|
301
331
|
{/* Visibility Switch in VISIBILITY column */}
|
|
@@ -345,12 +375,17 @@ const SettingsPanel = () => {
|
|
|
345
375
|
</TouchableScale>
|
|
346
376
|
{isLocked && (<Text style={{
|
|
347
377
|
fontFamily: AppFonts.interBold,
|
|
348
|
-
fontSize:
|
|
349
|
-
color:
|
|
350
|
-
|
|
378
|
+
fontSize: 7.5,
|
|
379
|
+
color: isUnavailable
|
|
380
|
+
? AppColors.amber700
|
|
381
|
+
: AppColors.grayTextWeak,
|
|
382
|
+
letterSpacing: 0.3,
|
|
351
383
|
marginTop: 3,
|
|
384
|
+
textAlign: 'right',
|
|
352
385
|
}}>
|
|
353
|
-
|
|
386
|
+
{tab.key === 'apis'
|
|
387
|
+
? t('settings.requiredBadge')
|
|
388
|
+
: t('settings.readOnlyBadge')}
|
|
354
389
|
</Text>)}
|
|
355
390
|
</View>
|
|
356
391
|
</View>);
|
|
@@ -5,8 +5,12 @@ import TouchableScale from '../TouchableScale';
|
|
|
5
5
|
import styles from '../../styles';
|
|
6
6
|
import { AppColors } from '../../styles/AppColors';
|
|
7
7
|
import { SignalIcon, TerminalIcon, AnalyticsIcon, PackageIcon, ReduxIcon, PerformanceIcon, CrashIcon, } from '../NetworkIcons';
|
|
8
|
+
import { isReduxConnected } from '../../customHooks/reduxLogger';
|
|
9
|
+
import { isAnalyticsConnected } from '../../customHooks/analyticsLogger';
|
|
8
10
|
const TabBar = React.memo(() => {
|
|
9
11
|
const { activeTab, switchActiveTab, tabVisibility, logs, consoleLogs, analyticsEvents, crashRecords, lastReadApisCount, lastReadLogsCount, lastReadCrashesCount, unreadPulseAnim, } = useInspector();
|
|
12
|
+
const isReduxAvail = isReduxConnected();
|
|
13
|
+
const isAnalyticsAvail = isAnalyticsConnected();
|
|
10
14
|
return (<View style={styles.tabBarContainer}>
|
|
11
15
|
<ScrollView horizontal showsHorizontalScrollIndicator={false} contentContainerStyle={{ paddingRight: 16 }}>
|
|
12
16
|
{[
|
|
@@ -53,7 +57,15 @@ const TabBar = React.memo(() => {
|
|
|
53
57
|
icon: 'crash',
|
|
54
58
|
},
|
|
55
59
|
]
|
|
56
|
-
.filter(tab =>
|
|
60
|
+
.filter(tab => {
|
|
61
|
+
if (!tabVisibility?.[tab.key])
|
|
62
|
+
return false;
|
|
63
|
+
if (tab.key === 'redux' && !isReduxAvail)
|
|
64
|
+
return false;
|
|
65
|
+
if (tab.key === 'analytics' && !isAnalyticsAvail)
|
|
66
|
+
return false;
|
|
67
|
+
return true;
|
|
68
|
+
})
|
|
57
69
|
.map(tab => {
|
|
58
70
|
const isActive = activeTab === tab.key;
|
|
59
71
|
const iconColor = isActive
|
|
@@ -5,6 +5,7 @@ import { AppColors } from '../styles/AppColors';
|
|
|
5
5
|
import { METHOD_COLORS } from '../constants';
|
|
6
6
|
import { getStatusColor, getDurationColor, getPath, getBaseUrl, formatDateTime, getSize, } from '../helpers';
|
|
7
7
|
import { CalendarIcon, ClockIcon, SizeIcon } from './NetworkIcons';
|
|
8
|
+
import { AppFonts } from '../styles/AppFonts';
|
|
8
9
|
import styles from '../styles';
|
|
9
10
|
import HighlightText from './HighlightText';
|
|
10
11
|
import TouchableScale from './TouchableScale';
|
|
@@ -71,6 +72,46 @@ const LogCard = React.memo(function LogCard({ item, onPress, timelineMinStart, t
|
|
|
71
72
|
</Text>
|
|
72
73
|
</View>
|
|
73
74
|
|
|
75
|
+
{item.client && (<View style={[
|
|
76
|
+
styles.chip,
|
|
77
|
+
{
|
|
78
|
+
backgroundColor: item.client === 'axios'
|
|
79
|
+
? `${AppColors.purple}14`
|
|
80
|
+
: item.client === 'apollo' || item.client === 'graphql'
|
|
81
|
+
? `${AppColors.pink500}14`
|
|
82
|
+
: item.client === 'xhr'
|
|
83
|
+
? `${AppColors.amber500}14`
|
|
84
|
+
: `${AppColors.sky500}14`,
|
|
85
|
+
borderColor: item.client === 'axios'
|
|
86
|
+
? `${AppColors.purple}30`
|
|
87
|
+
: item.client === 'apollo' || item.client === 'graphql'
|
|
88
|
+
? `${AppColors.pink500}30`
|
|
89
|
+
: item.client === 'xhr'
|
|
90
|
+
? `${AppColors.amber500}30`
|
|
91
|
+
: `${AppColors.sky500}30`,
|
|
92
|
+
paddingHorizontal: 4.5,
|
|
93
|
+
paddingVertical: 1,
|
|
94
|
+
borderRadius: 4,
|
|
95
|
+
},
|
|
96
|
+
]}>
|
|
97
|
+
<Text style={[
|
|
98
|
+
styles.chipText,
|
|
99
|
+
{
|
|
100
|
+
fontFamily: AppFonts.interBold,
|
|
101
|
+
fontSize: 8.5,
|
|
102
|
+
color: item.client === 'axios'
|
|
103
|
+
? AppColors.purple
|
|
104
|
+
: item.client === 'apollo' || item.client === 'graphql'
|
|
105
|
+
? AppColors.pink500
|
|
106
|
+
: item.client === 'xhr'
|
|
107
|
+
? AppColors.amber700
|
|
108
|
+
: AppColors.sky600,
|
|
109
|
+
},
|
|
110
|
+
]}>
|
|
111
|
+
{item.client.toUpperCase()}
|
|
112
|
+
</Text>
|
|
113
|
+
</View>)}
|
|
114
|
+
|
|
74
115
|
<HighlightText text={baseUrl || item.url} search={searchStr} style={styles.cardHostText} highlightStyle={styles.highlight} numberOfLines={1} ellipsizeMode="tail"/>
|
|
75
116
|
</View>
|
|
76
117
|
|
|
@@ -108,42 +149,42 @@ const LogCard = React.memo(function LogCard({ item, onPress, timelineMinStart, t
|
|
|
108
149
|
</View>
|
|
109
150
|
</View>
|
|
110
151
|
|
|
111
|
-
{/* Row 2:
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
152
|
+
{/* Row 2: Full URL Capsule Container */}
|
|
153
|
+
<View style={styles.cardSlugBox}>
|
|
154
|
+
<View style={styles.slugLeft}>
|
|
155
|
+
<Text style={styles.slugTag}>URL</Text>
|
|
156
|
+
<HighlightText text={item.url} search={searchStr} style={styles.slugText} highlightStyle={styles.highlight} numberOfLines={2} ellipsizeMode="middle"/>
|
|
157
|
+
</View>
|
|
117
158
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
159
|
+
<View style={styles.slugRight}>
|
|
160
|
+
{isJson && (<View style={[
|
|
161
|
+
styles.chip,
|
|
162
|
+
{
|
|
163
|
+
backgroundColor: `${AppColors.darkOrange}12`,
|
|
164
|
+
borderColor: `${AppColors.darkOrange}28`,
|
|
165
|
+
},
|
|
166
|
+
]}>
|
|
167
|
+
<Text style={[styles.chipText, { color: AppColors.darkOrange }]}>
|
|
168
|
+
.json
|
|
169
|
+
</Text>
|
|
170
|
+
</View>)}
|
|
130
171
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
172
|
+
{item.duplicateCount != null && item.duplicateCount > 1 && (<View style={[
|
|
173
|
+
styles.chip,
|
|
174
|
+
{
|
|
175
|
+
backgroundColor: `${AppColors.purple}12`,
|
|
176
|
+
borderColor: `${AppColors.purple}28`,
|
|
177
|
+
},
|
|
178
|
+
]}>
|
|
179
|
+
<Text style={[
|
|
180
|
+
styles.chipText,
|
|
181
|
+
{ color: AppColors.purple, fontWeight: '700' },
|
|
182
|
+
]}>
|
|
183
|
+
×{item.duplicateCount}
|
|
184
|
+
</Text>
|
|
185
|
+
</View>)}
|
|
186
|
+
</View>
|
|
187
|
+
</View>
|
|
147
188
|
|
|
148
189
|
{/* Row 3: Footer (Timestamp on Left, Response Size & Duration on Right) */}
|
|
149
190
|
<View style={styles.cardFooterRow}>
|
|
@@ -1,105 +1,115 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export declare const
|
|
13
|
-
export declare const
|
|
14
|
-
export declare const
|
|
15
|
-
export declare const
|
|
16
|
-
export declare const
|
|
17
|
-
export declare const
|
|
18
|
-
export declare const
|
|
19
|
-
export declare const
|
|
20
|
-
export declare const
|
|
21
|
-
export declare const
|
|
22
|
-
export declare const
|
|
23
|
-
export declare const
|
|
24
|
-
export declare const
|
|
25
|
-
export declare const
|
|
26
|
-
export declare const
|
|
27
|
-
export declare const
|
|
28
|
-
export declare const
|
|
29
|
-
export declare const
|
|
30
|
-
export declare const
|
|
31
|
-
export declare const
|
|
32
|
-
export declare const
|
|
33
|
-
export declare const
|
|
34
|
-
export declare const
|
|
35
|
-
export declare const
|
|
36
|
-
export declare const
|
|
37
|
-
export declare const
|
|
38
|
-
export declare const
|
|
39
|
-
export declare const
|
|
2
|
+
export interface IconProps {
|
|
3
|
+
color?: string;
|
|
4
|
+
size?: number;
|
|
5
|
+
strokeWidth?: number;
|
|
6
|
+
isExpanded?: boolean;
|
|
7
|
+
isPaused?: boolean;
|
|
8
|
+
active?: boolean;
|
|
9
|
+
direction?: 'up' | 'down' | string;
|
|
10
|
+
ascending?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare const EmptyRadarIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
13
|
+
export declare const MapPinIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
14
|
+
export declare const ScreenIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
15
|
+
export declare const ExpandCollapseIcon: ({ isExpanded, color, size, }: IconProps) => React.JSX.Element;
|
|
16
|
+
export declare const SearchIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
17
|
+
export declare const ClearIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
18
|
+
export declare const ClockIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
19
|
+
export declare const CalendarIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
20
|
+
export declare const StatusIcon: ({ color }: IconProps) => React.JSX.Element;
|
|
21
|
+
export declare const SizeIcon: ({ color }: IconProps) => React.JSX.Element;
|
|
22
|
+
export declare const RequestIcon: ({ color }: IconProps) => React.JSX.Element;
|
|
23
|
+
export declare const ResponseIcon: ({ color }: IconProps) => React.JSX.Element;
|
|
24
|
+
export declare const HeadersIcon: ({ color }: IconProps) => React.JSX.Element;
|
|
25
|
+
export declare const CopyIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
26
|
+
export declare const FetchIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
27
|
+
export declare const TerminalIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
28
|
+
export declare const CheckIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
29
|
+
export declare const CircleCheckIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
30
|
+
export declare const CircleXIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
31
|
+
export declare const CircleAlertIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
32
|
+
export declare const FailIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
33
|
+
export declare const TrashIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
34
|
+
export declare const HeaderPauseIcon: ({ isPaused, color, size, }: IconProps) => React.JSX.Element;
|
|
35
|
+
export declare const ExportIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
36
|
+
export declare const SignalIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
37
|
+
export declare const DiffIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
38
|
+
export declare const GlobeIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
39
|
+
export declare const SortArrowIcon: ({ color, size, direction, }: IconProps) => React.JSX.Element;
|
|
40
|
+
export declare const ChevronIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
41
|
+
export declare const FilterIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
42
|
+
export declare const DownloadIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
43
|
+
export declare const CloseWhite: ({ color, size }: IconProps) => React.JSX.Element;
|
|
44
|
+
export declare const WhiteBackNavigation: ({ color, size }: IconProps) => React.JSX.Element;
|
|
45
|
+
export declare const AnalyticsIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
46
|
+
export declare const InsightsIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
47
|
+
export declare const DebugIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
48
|
+
export declare const SunIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
49
|
+
export declare const MoonIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
40
50
|
export { BrandCircleIcon } from './BrandCircleIcon';
|
|
41
51
|
export { BrandSquareIcon } from './BrandSquareIcon';
|
|
42
|
-
export declare const HtmlIcon: ({ color, size }:
|
|
43
|
-
export declare const CssIcon: ({ color, size }:
|
|
44
|
-
export declare const JsIcon: ({ color, size }:
|
|
45
|
-
export declare const EyeIcon: ({ color, size }:
|
|
46
|
-
export declare const SettingsIcon: ({ color, size, }:
|
|
47
|
-
export declare const FolderIcon: ({ color, size, }:
|
|
48
|
-
export declare const WipeIcon: ({ color, size }:
|
|
49
|
-
export declare const LayersIcon: ({ color, size, }:
|
|
50
|
-
export declare const UserIcon: ({ color, size }:
|
|
51
|
-
export declare const InfoCircleIcon: ({ color, size, }:
|
|
52
|
-
export declare const WarningTriangleIcon: ({ color, size, }:
|
|
53
|
-
export declare const ErrorCircleIcon: ({ color, size, }:
|
|
54
|
-
export declare const TrendingUpIcon: ({ color, size, }:
|
|
55
|
-
export declare const MotionIcon: ({ color, size, }:
|
|
56
|
-
export declare const SortIcon: ({ ascending, color, size, }:
|
|
57
|
-
export declare const PrettyIcon: ({ color, size, }:
|
|
58
|
-
export declare const RawIcon: ({ color, size, }:
|
|
59
|
-
export declare const TableIcon: ({ color, size, }:
|
|
60
|
-
export declare const PackageIcon: ({ color, size, }:
|
|
61
|
-
export declare const ForwardChevronIcon: ({ color, size, }:
|
|
62
|
-
export declare const BundleIcon: ({ color, size, }:
|
|
63
|
-
export declare const LiveStateIcon: ({ color, size, }:
|
|
64
|
-
export declare const TimelineIcon: ({ color, size, }:
|
|
65
|
-
export declare const RefreshCcwIcon: ({ color, size, }:
|
|
66
|
-
export declare const StorageIcon: ({ color, size, }:
|
|
67
|
-
export declare const MetadataIcon: ({ color, size, }:
|
|
68
|
-
export declare const ReduxIcon: ({ color, size, }:
|
|
69
|
-
export declare const PerformanceIcon: ({ color, size, }:
|
|
70
|
-
export declare const BoltIcon: ({ color, size }:
|
|
71
|
-
export declare const BanIcon: ({ color, size }:
|
|
72
|
-
export declare const FolderOpenIcon: ({ color, size }:
|
|
73
|
-
export declare const DocIcon: ({ color, size }:
|
|
74
|
-
export declare const LightbulbIcon: ({ color, size }:
|
|
75
|
-
export declare const SparkleIcon: ({ color, size }:
|
|
76
|
-
export declare const MapIcon: ({ color, size }:
|
|
77
|
-
export declare const AtomIcon: ({ color, size }:
|
|
78
|
-
export declare const BrainIcon: ({ color, size }:
|
|
79
|
-
export declare const TextAaIcon: ({ color, size }:
|
|
80
|
-
export declare const CartIcon: ({ color, size }:
|
|
81
|
-
export declare const MoneyIcon: ({ color, size }:
|
|
82
|
-
export declare const ExternalLinkIcon: ({ color, size, }:
|
|
83
|
-
export declare const PackageBoxIcon: ({ color, size, }:
|
|
84
|
-
export declare const GitHubIcon: ({ color, size, }:
|
|
85
|
-
export declare const LinkChainIcon: ({ color, size, }:
|
|
86
|
-
export declare const AppleIcon: ({ color, size, }:
|
|
87
|
-
export declare const AndroidIcon: ({ color, size, }:
|
|
88
|
-
export declare const CodeBracketsIcon: ({ color, size, }:
|
|
89
|
-
export declare const FlameIcon: ({ color, size, }:
|
|
90
|
-
export declare const HourglassIcon: ({ color, size, }:
|
|
91
|
-
export declare const PinIcon: ({ color, size, }:
|
|
92
|
-
export declare const RepeatIcon: ({ color, size, }:
|
|
93
|
-
export declare const TargetGoalIcon: ({ color, size, }:
|
|
94
|
-
export declare const UserCheckIcon: ({ color, size, }:
|
|
95
|
-
export declare const CrashIcon: ({ color, size, }:
|
|
96
|
-
export declare const ShieldAlertIcon: ({ color, size, }:
|
|
97
|
-
export declare const SkullIcon: ({ color, size, }:
|
|
98
|
-
export declare const ChipIcon: ({ color, size, }:
|
|
99
|
-
export declare const LayoutIcon: ({ color, size, }:
|
|
100
|
-
export declare const StackTraceIcon: ({ color, size, }:
|
|
101
|
-
export declare const DiagnosticsIcon: ({ color, size, }:
|
|
102
|
-
export declare const TrailIcon: ({ color, size, }:
|
|
103
|
-
export declare const RawJsonIcon: ({ color, size, }:
|
|
104
|
-
export declare const AppFramesIcon: ({ color, size, }:
|
|
105
|
-
export declare const AllFramesIcon: ({ color, size, }:
|
|
52
|
+
export declare const HtmlIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
53
|
+
export declare const CssIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
54
|
+
export declare const JsIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
55
|
+
export declare const EyeIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
56
|
+
export declare const SettingsIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
57
|
+
export declare const FolderIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
58
|
+
export declare const WipeIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
59
|
+
export declare const LayersIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
60
|
+
export declare const UserIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
61
|
+
export declare const InfoCircleIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
62
|
+
export declare const WarningTriangleIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
63
|
+
export declare const ErrorCircleIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
64
|
+
export declare const TrendingUpIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
65
|
+
export declare const MotionIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
66
|
+
export declare const SortIcon: ({ ascending, color, size, }: IconProps) => React.JSX.Element;
|
|
67
|
+
export declare const PrettyIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
68
|
+
export declare const RawIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
69
|
+
export declare const TableIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
70
|
+
export declare const PackageIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
71
|
+
export declare const ForwardChevronIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
72
|
+
export declare const BundleIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
73
|
+
export declare const LiveStateIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
74
|
+
export declare const TimelineIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
75
|
+
export declare const RefreshCcwIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
76
|
+
export declare const StorageIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
77
|
+
export declare const MetadataIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
78
|
+
export declare const ReduxIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
79
|
+
export declare const PerformanceIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
80
|
+
export declare const BoltIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
81
|
+
export declare const BanIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
82
|
+
export declare const FolderOpenIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
83
|
+
export declare const DocIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
84
|
+
export declare const LightbulbIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
85
|
+
export declare const SparkleIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
86
|
+
export declare const MapIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
87
|
+
export declare const AtomIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
88
|
+
export declare const BrainIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
89
|
+
export declare const TextAaIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
90
|
+
export declare const CartIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
91
|
+
export declare const MoneyIcon: ({ color, size }: IconProps) => React.JSX.Element;
|
|
92
|
+
export declare const ExternalLinkIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
93
|
+
export declare const PackageBoxIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
94
|
+
export declare const GitHubIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
95
|
+
export declare const LinkChainIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
96
|
+
export declare const AppleIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
97
|
+
export declare const AndroidIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
98
|
+
export declare const CodeBracketsIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
99
|
+
export declare const FlameIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
100
|
+
export declare const HourglassIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
101
|
+
export declare const PinIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
102
|
+
export declare const RepeatIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
103
|
+
export declare const TargetGoalIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
104
|
+
export declare const UserCheckIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
105
|
+
export declare const CrashIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
106
|
+
export declare const ShieldAlertIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
107
|
+
export declare const SkullIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
108
|
+
export declare const ChipIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
109
|
+
export declare const LayoutIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
110
|
+
export declare const StackTraceIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
111
|
+
export declare const DiagnosticsIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
112
|
+
export declare const TrailIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
113
|
+
export declare const RawJsonIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
114
|
+
export declare const AppFramesIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
115
|
+
export declare const AllFramesIcon: ({ color, size, }: IconProps) => React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const LIB_VERSION = "1.1.
|
|
1
|
+
export declare const LIB_VERSION = "1.1.28";
|
|
@@ -15,16 +15,6 @@ export declare const getCollectionEnabled: () => boolean;
|
|
|
15
15
|
* Useful for custom analytics wrappers or testing.
|
|
16
16
|
*/
|
|
17
17
|
export declare const logAnalyticsEvent: (name: string, params?: Record<string, any>, userProperties?: Record<string, any>) => void;
|
|
18
|
-
|
|
19
|
-
* Monkey-patches a @react-native-firebase/analytics instance so all calls
|
|
20
|
-
* are intercepted and forwarded to the NetworkInspector analytics tab.
|
|
21
|
-
*
|
|
22
|
-
* Pass the result of `analytics()` (the default app instance or any named one).
|
|
23
|
-
* Safe to call multiple times with the same instance — won't double-patch.
|
|
24
|
-
*
|
|
25
|
-
* @example
|
|
26
|
-
* import analytics from '@react-native-firebase/analytics';
|
|
27
|
-
* setupAnalyticsLogger(analytics());
|
|
28
|
-
*/
|
|
18
|
+
export declare const isAnalyticsConnected: () => boolean;
|
|
29
19
|
export declare const setupAnalyticsLogger: (analyticsInstance: any) => void;
|
|
30
20
|
export declare const autoSetupAnalyticsLogger: () => boolean;
|
|
@@ -86,11 +86,17 @@ export const logAnalyticsEvent = (name, params = {}, userProperties = {}) => {
|
|
|
86
86
|
* import analytics from '@react-native-firebase/analytics';
|
|
87
87
|
* setupAnalyticsLogger(analytics());
|
|
88
88
|
*/
|
|
89
|
+
let isAnalyticsPatched = false;
|
|
90
|
+
export const isAnalyticsConnected = () => isAnalyticsPatched ||
|
|
91
|
+
events.length > 0 ||
|
|
92
|
+
Object.keys(currentUserProperties).length > 0 ||
|
|
93
|
+
currentUserId != null;
|
|
89
94
|
export const setupAnalyticsLogger = (analyticsInstance) => {
|
|
90
95
|
if (!analyticsInstance) {
|
|
91
96
|
console.warn('[AnalyticsLogger] No analytics instance provided — skipping setup.');
|
|
92
97
|
return;
|
|
93
98
|
}
|
|
99
|
+
isAnalyticsPatched = true;
|
|
94
100
|
// Guard against double-patching the same instance
|
|
95
101
|
if (analyticsInstance.__INSPECTOR_PATCHED__)
|
|
96
102
|
return;
|