react-native-inapp-inspector 1.0.9 → 1.0.11
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 +5 -6
- package/dist/commonjs/components/AnalyticsDetail.js +28 -23
- package/dist/commonjs/components/AnalyticsEventCard.js +9 -9
- package/dist/commonjs/components/BrandSquareIcon.d.ts +5 -0
- package/dist/commonjs/components/BrandSquareIcon.js +180 -0
- package/dist/commonjs/components/CodeSnippet.js +32 -24
- package/dist/commonjs/components/ConsoleLogCard.js +127 -70
- package/dist/commonjs/components/JsonViewer.d.ts +2 -1
- package/dist/commonjs/components/JsonViewer.js +2 -2
- package/dist/commonjs/components/MetaAccordion.d.ts +1 -1
- package/dist/commonjs/components/MetaAccordion.js +45 -2
- package/dist/commonjs/components/NetworkIcons.d.ts +7 -0
- package/dist/commonjs/components/NetworkIcons.js +42 -1
- package/dist/commonjs/components/ReduxTreeView.d.ts +17 -0
- package/dist/commonjs/components/ReduxTreeView.js +630 -0
- package/dist/commonjs/components/TouchableScale.js +15 -1
- package/dist/commonjs/components/TreeNode.js +3 -3
- package/dist/commonjs/customHooks/reduxLogger.d.ts +12 -0
- package/dist/commonjs/customHooks/reduxLogger.js +71 -2
- package/dist/commonjs/index.js +1568 -505
- package/dist/commonjs/styles/index.d.ts +11 -1
- package/dist/commonjs/styles/index.js +19 -9
- package/dist/commonjs/types/index.d.ts +4 -0
- package/dist/esm/components/AnalyticsDetail.js +28 -23
- package/dist/esm/components/AnalyticsEventCard.js +9 -9
- package/dist/esm/components/BrandSquareIcon.d.ts +5 -0
- package/dist/esm/components/BrandSquareIcon.js +140 -0
- package/dist/esm/components/CodeSnippet.js +32 -24
- package/dist/esm/components/ConsoleLogCard.js +127 -70
- package/dist/esm/components/JsonViewer.d.ts +2 -1
- package/dist/esm/components/JsonViewer.js +2 -2
- package/dist/esm/components/MetaAccordion.d.ts +1 -1
- package/dist/esm/components/MetaAccordion.js +46 -3
- package/dist/esm/components/NetworkIcons.d.ts +7 -0
- package/dist/esm/components/NetworkIcons.js +34 -0
- package/dist/esm/components/ReduxTreeView.d.ts +17 -0
- package/dist/esm/components/ReduxTreeView.js +592 -0
- package/dist/esm/components/TouchableScale.js +16 -2
- package/dist/esm/components/TreeNode.js +3 -3
- package/dist/esm/customHooks/reduxLogger.d.ts +12 -0
- package/dist/esm/customHooks/reduxLogger.js +64 -1
- package/dist/esm/index.js +1571 -508
- package/dist/esm/styles/index.d.ts +11 -1
- package/dist/esm/styles/index.js +19 -9
- package/dist/esm/types/index.d.ts +4 -0
- package/example/App.tsx +46 -0
- package/package.json +7 -5
|
@@ -154,6 +154,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
154
154
|
const isUserLog = !isWebView && item.sourceMethod === 'log';
|
|
155
155
|
const caller = 'caller' in item ? item.caller : undefined;
|
|
156
156
|
const getLogColors = () => {
|
|
157
|
+
const isDark = AppColors_1.AppColors.primaryLight !== '#FFFFFF';
|
|
157
158
|
if (isWebView) {
|
|
158
159
|
const label = item.type.toUpperCase();
|
|
159
160
|
switch (item.type) {
|
|
@@ -163,7 +164,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
163
164
|
badgeBg: `${AppColors_1.AppColors.errorColor}15`,
|
|
164
165
|
badgeText: AppColors_1.AppColors.errorColor,
|
|
165
166
|
label,
|
|
166
|
-
cardBg: '#FFF5F6',
|
|
167
|
+
cardBg: isDark ? 'rgba(239, 68, 68, 0.15)' : '#FFF5F6',
|
|
167
168
|
};
|
|
168
169
|
case 'warn':
|
|
169
170
|
return {
|
|
@@ -171,15 +172,15 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
171
172
|
badgeBg: `${AppColors_1.AppColors.lightOrange}15`,
|
|
172
173
|
badgeText: AppColors_1.AppColors.darkOrange || AppColors_1.AppColors.lightOrange,
|
|
173
174
|
label,
|
|
174
|
-
cardBg: '#FFFDF6',
|
|
175
|
+
cardBg: isDark ? 'rgba(245, 158, 11, 0.15)' : '#FFFDF6',
|
|
175
176
|
};
|
|
176
177
|
default:
|
|
177
178
|
return {
|
|
178
179
|
border: '#475569',
|
|
179
|
-
badgeBg: '#F1F5F9',
|
|
180
|
-
badgeText: '#475569',
|
|
180
|
+
badgeBg: isDark ? '#374151' : '#F1F5F9',
|
|
181
|
+
badgeText: isDark ? '#9CA3AF' : '#475569',
|
|
181
182
|
label,
|
|
182
|
-
cardBg: '#F8FAFC',
|
|
183
|
+
cardBg: isDark ? '#1E1E24' : '#F8FAFC',
|
|
183
184
|
};
|
|
184
185
|
}
|
|
185
186
|
}
|
|
@@ -189,7 +190,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
189
190
|
badgeBg: `${AppColors_1.AppColors.skyBlue}15`,
|
|
190
191
|
badgeText: AppColors_1.AppColors.skyBlue,
|
|
191
192
|
label: 'ERROR',
|
|
192
|
-
cardBg: '
|
|
193
|
+
cardBg: isDark ? 'rgba(96, 165, 250, 0.15)' : '#E6F2FF',
|
|
193
194
|
};
|
|
194
195
|
}
|
|
195
196
|
switch (item.type) {
|
|
@@ -199,7 +200,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
199
200
|
badgeBg: `${AppColors_1.AppColors.errorColor}15`,
|
|
200
201
|
badgeText: AppColors_1.AppColors.errorColor,
|
|
201
202
|
label: 'ERROR',
|
|
202
|
-
cardBg: '
|
|
203
|
+
cardBg: isDark ? 'rgba(239, 68, 68, 0.15)' : '#FFF5F6',
|
|
203
204
|
};
|
|
204
205
|
case 'warn':
|
|
205
206
|
return {
|
|
@@ -207,16 +208,16 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
207
208
|
badgeBg: `${AppColors_1.AppColors.lightOrange}15`,
|
|
208
209
|
badgeText: AppColors_1.AppColors.darkOrange || AppColors_1.AppColors.lightOrange,
|
|
209
210
|
label: 'WARN',
|
|
210
|
-
cardBg: '
|
|
211
|
+
cardBg: isDark ? 'rgba(245, 158, 11, 0.15)' : '#FFFDF6',
|
|
211
212
|
};
|
|
212
213
|
default:
|
|
213
214
|
if (isUserLog) {
|
|
214
215
|
return {
|
|
215
216
|
border: '#475569',
|
|
216
|
-
badgeBg: '#E2E8F0',
|
|
217
|
-
badgeText: '#334155',
|
|
217
|
+
badgeBg: isDark ? '#374151' : '#E2E8F0',
|
|
218
|
+
badgeText: isDark ? '#D1D5DB' : '#334155',
|
|
218
219
|
label: 'INFO',
|
|
219
|
-
cardBg: '#F1F5F9',
|
|
220
|
+
cardBg: isDark ? '#1E1E24' : '#F1F5F9',
|
|
220
221
|
};
|
|
221
222
|
}
|
|
222
223
|
return {
|
|
@@ -224,7 +225,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
224
225
|
badgeBg: `${AppColors_1.AppColors.purple}15`,
|
|
225
226
|
badgeText: AppColors_1.AppColors.purple,
|
|
226
227
|
label: 'INFO',
|
|
227
|
-
cardBg: '
|
|
228
|
+
cardBg: isDark ? 'rgba(167, 139, 250, 0.12)' : '#F9F5FF',
|
|
228
229
|
};
|
|
229
230
|
}
|
|
230
231
|
};
|
|
@@ -243,84 +244,138 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
|
|
|
243
244
|
borderLeftWidth: 4,
|
|
244
245
|
borderLeftColor: colors.border,
|
|
245
246
|
backgroundColor: colors.cardBg,
|
|
247
|
+
borderColor: AppColors_1.AppColors.grayBorderSecondary,
|
|
248
|
+
flexDirection: 'row',
|
|
249
|
+
alignItems: 'center',
|
|
250
|
+
paddingRight: 4,
|
|
246
251
|
},
|
|
247
252
|
]}>
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
253
|
+
|
|
254
|
+
{/* Left Content Area */}
|
|
255
|
+
<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)} style={{ flex: 1, paddingRight: 6 }}>
|
|
256
|
+
|
|
257
|
+
<react_native_1.View style={styles.cardHeader}>
|
|
258
|
+
<react_native_1.View style={styles.headerLeft}>
|
|
259
|
+
<CopyButton_1.default value={item.message} label="Log message"/>
|
|
260
|
+
<react_native_1.View style={[styles.badge, { backgroundColor: colors.badgeBg }]}>
|
|
261
|
+
<react_native_1.Text style={[styles.badgeText, { color: colors.badgeText }]}>
|
|
262
|
+
{colors.label}
|
|
263
|
+
</react_native_1.Text>
|
|
264
|
+
</react_native_1.View>
|
|
265
|
+
<react_native_1.View style={[
|
|
266
|
+
styles.badge,
|
|
267
|
+
{
|
|
268
|
+
backgroundColor: 'rgba(107, 78, 255, 0.08)',
|
|
269
|
+
borderColor: 'rgba(107, 78, 255, 0.2)',
|
|
270
|
+
borderWidth: 1,
|
|
271
|
+
},
|
|
272
|
+
]}>
|
|
273
|
+
<react_native_1.Text style={[styles.badgeText, { color: '#6B4EFF' }]}>
|
|
274
|
+
console.{('sourceMethod' in item ? item.sourceMethod : undefined) || item.type || 'log'}
|
|
275
|
+
</react_native_1.Text>
|
|
276
|
+
</react_native_1.View>
|
|
277
|
+
{jsonContent && (<react_native_1.View style={[
|
|
278
|
+
styles.badge,
|
|
279
|
+
{
|
|
280
|
+
backgroundColor: 'rgba(13, 148, 136, 0.08)',
|
|
281
|
+
borderColor: 'rgba(13, 148, 136, 0.18)',
|
|
282
|
+
borderWidth: 1,
|
|
283
|
+
},
|
|
284
|
+
]}>
|
|
285
|
+
<react_native_1.Text style={[styles.badgeText, { color: '#0D9488' }]}>
|
|
286
|
+
{Array.isArray(jsonContent.data) ? `Array[${jsonContent.data.length}]` : `Object{${Object.keys(jsonContent.data).length}}`}
|
|
287
|
+
</react_native_1.Text>
|
|
288
|
+
</react_native_1.View>)}
|
|
289
|
+
{isAnalyticsError && (<react_native_1.View style={[
|
|
257
290
|
styles.badge,
|
|
258
291
|
{ backgroundColor: `${AppColors_1.AppColors.skyBlue}15` },
|
|
259
292
|
]}>
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
293
|
+
<react_native_1.Text style={[styles.badgeText, { color: AppColors_1.AppColors.skyBlue }]}>
|
|
294
|
+
Analytics
|
|
295
|
+
</react_native_1.Text>
|
|
296
|
+
</react_native_1.View>)}
|
|
297
|
+
{isUserLog && (<react_native_1.View style={[
|
|
265
298
|
styles.badge,
|
|
266
299
|
{
|
|
267
|
-
backgroundColor:
|
|
268
|
-
borderColor:
|
|
300
|
+
backgroundColor: AppColors_1.AppColors.grayBackground,
|
|
301
|
+
borderColor: AppColors_1.AppColors.grayBorderSecondary,
|
|
269
302
|
borderWidth: 1,
|
|
270
303
|
},
|
|
271
304
|
]}>
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
305
|
+
<react_native_1.Text style={[styles.badgeText, { color: AppColors_1.AppColors.grayTextStrong }]}>
|
|
306
|
+
user-log
|
|
307
|
+
</react_native_1.Text>
|
|
308
|
+
</react_native_1.View>)}
|
|
309
|
+
{isWebView && (<react_native_1.View style={[
|
|
277
310
|
styles.badge,
|
|
278
311
|
{
|
|
279
|
-
backgroundColor:
|
|
280
|
-
borderColor:
|
|
312
|
+
backgroundColor: AppColors_1.AppColors.grayBackground,
|
|
313
|
+
borderColor: AppColors_1.AppColors.grayBorderSecondary,
|
|
281
314
|
borderWidth: 1,
|
|
282
315
|
},
|
|
283
316
|
]}>
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
{caller && caller !== 'Unknown' && (<react_native_1.Text style={styles.callerText} numberOfLines={1} ellipsizeMode="middle">
|
|
317
|
+
<react_native_1.Text style={[styles.badgeText, { color: AppColors_1.AppColors.grayText }]}>
|
|
318
|
+
webview
|
|
319
|
+
</react_native_1.Text>
|
|
320
|
+
</react_native_1.View>)}
|
|
321
|
+
<react_native_1.Text style={[styles.serialNumber, { color: AppColors_1.AppColors.grayTextWeak }]}>#{item.id + 1}</react_native_1.Text>
|
|
322
|
+
<react_native_1.Text style={[styles.timestamp, { color: AppColors_1.AppColors.grayTextWeak }]}>{formatTime(item.timestamp)}</react_native_1.Text>
|
|
323
|
+
</react_native_1.View>
|
|
324
|
+
|
|
325
|
+
{caller && caller !== 'Unknown' && (<react_native_1.Text style={[styles.callerText, { color: AppColors_1.AppColors.grayTextWeak, marginRight: 4 }]} numberOfLines={1} ellipsizeMode="middle">
|
|
293
326
|
{caller.split('/').pop() || caller}
|
|
294
327
|
</react_native_1.Text>)}
|
|
295
|
-
<react_native_1.View style={{ transform: [{ rotate: expanded ? '180deg' : '0deg' }] }}>
|
|
296
|
-
<NetworkIcons_1.ChevronIcon size={14} color={AppColors_1.AppColors.grayTextWeak}/>
|
|
297
|
-
</react_native_1.View>
|
|
298
328
|
</react_native_1.View>
|
|
329
|
+
|
|
330
|
+
<react_native_1.View style={[styles.cardBody, { backgroundColor: AppColors_1.AppColors.primaryLight, borderColor: AppColors_1.AppColors.dividerColor }]}>
|
|
331
|
+
{jsonContent ? (<>
|
|
332
|
+
{jsonContent.header ? (<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)}>
|
|
333
|
+
{getLogMessageWithBadges(jsonContent.header, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, numLines)}
|
|
334
|
+
</react_native_1.Pressable>) : null}
|
|
335
|
+
{expanded ? (<react_native_1.View style={[styles.jsonContainer, { backgroundColor: AppColors_1.AppColors.grayBackground, borderColor: AppColors_1.AppColors.dividerColor }]}>
|
|
336
|
+
<JsonViewer_1.default data={jsonContent.data} search={searchStr} forceOpen={expanded}/>
|
|
337
|
+
</react_native_1.View>) : (<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)} style={[styles.jsonPreviewContainer, { backgroundColor: AppColors_1.AppColors.grayBackground, borderColor: AppColors_1.AppColors.dividerColor }]}>
|
|
338
|
+
<HighlightText_1.default text={getJsonPreviewText(jsonContent.data).text} search={searchStr} style={[styles.jsonPreviewText, { color: AppColors_1.AppColors.primaryBlack }]} highlightStyle={styles.highlight} detectLinks={true}/>
|
|
339
|
+
</react_native_1.Pressable>)}
|
|
340
|
+
</>) : (<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)}>
|
|
341
|
+
{getLogMessageWithBadges(item.message, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, numLines)}
|
|
342
|
+
</react_native_1.Pressable>)}
|
|
343
|
+
{hasLongMessage && (<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)} style={styles.seeMoreBtn} hitSlop={8}>
|
|
344
|
+
<react_native_1.Text style={styles.seeMoreText}>
|
|
345
|
+
{expanded ? 'See Less' : 'See More'}
|
|
346
|
+
</react_native_1.Text>
|
|
347
|
+
</react_native_1.Pressable>)}
|
|
348
|
+
</react_native_1.View>
|
|
349
|
+
|
|
350
|
+
{expanded && (<react_native_1.View style={[styles.cardFooter, { borderTopColor: AppColors_1.AppColors.dividerColor, gap: 6 }]}>
|
|
351
|
+
<react_native_1.View style={{ flexDirection: 'row', justifyContent: 'space-between', alignItems: 'center' }}>
|
|
352
|
+
<react_native_1.Text style={{ fontFamily: AppFonts_1.AppFonts.interRegular, fontSize: 10.5, color: AppColors_1.AppColors.grayTextWeak }}>
|
|
353
|
+
Length: {item.message.length} chars • Size: {encodeURIComponent(item.message).replace(/%[0-9A-F]{2}/g, 'a').length} bytes
|
|
354
|
+
</react_native_1.Text>
|
|
355
|
+
</react_native_1.View>
|
|
356
|
+
{caller && caller !== 'Unknown' && (<react_native_1.View style={{ flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', marginTop: 4 }}>
|
|
357
|
+
<react_native_1.Text style={[styles.fullCallerText, { color: AppColors_1.AppColors.grayText, flex: 1, marginRight: 8 }]} numberOfLines={2}>
|
|
358
|
+
Caller: {caller}
|
|
359
|
+
</react_native_1.Text>
|
|
360
|
+
<CopyButton_1.default value={caller} label="Caller stack frame"/>
|
|
361
|
+
</react_native_1.View>)}
|
|
362
|
+
</react_native_1.View>)}
|
|
299
363
|
</react_native_1.Pressable>
|
|
300
364
|
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
{hasLongMessage && (<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)} style={styles.seeMoreBtn} hitSlop={8}>
|
|
315
|
-
<react_native_1.Text style={styles.seeMoreText}>
|
|
316
|
-
{expanded ? 'See Less' : 'See More'}
|
|
317
|
-
</react_native_1.Text>
|
|
318
|
-
</react_native_1.Pressable>)}
|
|
319
|
-
</react_native_1.View>
|
|
365
|
+
{/* Right Isolated Chevron Area */}
|
|
366
|
+
<react_native_1.Pressable onPress={() => setExpanded(prev => !prev)} style={{
|
|
367
|
+
width: 28,
|
|
368
|
+
alignItems: 'center',
|
|
369
|
+
justifyContent: 'center',
|
|
370
|
+
alignSelf: expanded ? 'flex-start' : 'center',
|
|
371
|
+
marginTop: expanded ? 8 : 0,
|
|
372
|
+
height: expanded ? 32 : undefined,
|
|
373
|
+
}} hitSlop={12}>
|
|
374
|
+
<react_native_1.View style={{ transform: [{ rotate: expanded ? '180deg' : '0deg' }] }}>
|
|
375
|
+
<NetworkIcons_1.ChevronIcon size={16} color={AppColors_1.AppColors.grayTextWeak}/>
|
|
376
|
+
</react_native_1.View>
|
|
377
|
+
</react_native_1.Pressable>
|
|
320
378
|
|
|
321
|
-
{caller && caller !== 'Unknown' && expanded && (<react_native_1.View style={styles.cardFooter}>
|
|
322
|
-
<react_native_1.Text style={styles.fullCallerText}>Caller: {caller}</react_native_1.Text>
|
|
323
|
-
</react_native_1.View>)}
|
|
324
379
|
</react_native_1.View>
|
|
325
380
|
</react_native_1.View>);
|
|
326
381
|
});
|
|
@@ -353,7 +408,9 @@ const styles = react_native_1.StyleSheet.create({
|
|
|
353
408
|
headerLeft: {
|
|
354
409
|
flexDirection: 'row',
|
|
355
410
|
alignItems: 'center',
|
|
356
|
-
|
|
411
|
+
flexWrap: 'wrap',
|
|
412
|
+
gap: 6,
|
|
413
|
+
flex: 1,
|
|
357
414
|
},
|
|
358
415
|
badge: {
|
|
359
416
|
paddingHorizontal: 6,
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const JsonViewer: ({ data, search, forceOpen, }: {
|
|
2
|
+
declare const JsonViewer: ({ data, search, forceOpen, defaultExpandDepth, }: {
|
|
3
3
|
data: unknown;
|
|
4
4
|
search?: string;
|
|
5
5
|
forceOpen?: boolean;
|
|
6
|
+
defaultExpandDepth?: number;
|
|
6
7
|
}) => React.JSX.Element;
|
|
7
8
|
export default JsonViewer;
|
|
@@ -9,10 +9,10 @@ const react_native_1 = require("react-native");
|
|
|
9
9
|
const TreeNode_1 = __importDefault(require("./TreeNode"));
|
|
10
10
|
// Stylesheet
|
|
11
11
|
const styles_1 = __importDefault(require("../styles"));
|
|
12
|
-
const JsonViewer = ({ data, search, forceOpen, }) => {
|
|
12
|
+
const JsonViewer = ({ data, search, forceOpen, defaultExpandDepth, }) => {
|
|
13
13
|
return (<react_native_1.ScrollView horizontal showsHorizontalScrollIndicator={true} style={styles_1.default.codeBlockScroll}>
|
|
14
14
|
<react_native_1.View style={styles_1.default.codeBlock}>
|
|
15
|
-
<TreeNode_1.default data={data} search={search} forceOpen={forceOpen}/>
|
|
15
|
+
<TreeNode_1.default data={data} search={search} forceOpen={forceOpen} defaultExpandDepth={defaultExpandDepth}/>
|
|
16
16
|
</react_native_1.View>
|
|
17
17
|
</react_native_1.ScrollView>);
|
|
18
18
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { MetaAccordionProps } from '../types';
|
|
3
|
-
declare const MetaAccordion: ({ status, statusColor, duration, size, triggeredAt, }: MetaAccordionProps) => React.JSX.Element;
|
|
3
|
+
declare const MetaAccordion: ({ status, statusColor, duration, size, triggeredAt, method, contentType, url, }: MetaAccordionProps) => React.JSX.Element;
|
|
4
4
|
export default MetaAccordion;
|
|
@@ -16,8 +16,9 @@ const NetworkIcons_1 = require("./NetworkIcons");
|
|
|
16
16
|
// Stylesheet
|
|
17
17
|
const AppColors_1 = require("../styles/AppColors");
|
|
18
18
|
const styles_1 = __importDefault(require("../styles"));
|
|
19
|
-
const
|
|
20
|
-
|
|
19
|
+
const AppFonts_1 = require("../styles/AppFonts");
|
|
20
|
+
const MetaAccordion = ({ status, statusColor, duration, size, triggeredAt, method, contentType, url, }) => {
|
|
21
|
+
const { toggleOpen, chevronStyle, bodyStyle } = (0, useAccordion_1.default)(true, 400, 390);
|
|
21
22
|
const isFailed = status === 0 || status == null;
|
|
22
23
|
return (<react_native_1.View style={styles_1.default.metaContainer}>
|
|
23
24
|
<react_native_1.Pressable onPress={toggleOpen} hitSlop={12}>
|
|
@@ -44,6 +45,26 @@ const MetaAccordion = ({ status, statusColor, duration, size, triggeredAt, }) =>
|
|
|
44
45
|
</react_native_1.Text>
|
|
45
46
|
</react_native_1.View>
|
|
46
47
|
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
48
|
+
|
|
49
|
+
<react_native_1.View style={styles_1.default.metaRow}>
|
|
50
|
+
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
51
|
+
<NetworkIcons_1.TerminalIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
|
|
52
|
+
<react_native_1.Text style={styles_1.default.metaLabel}>Method</react_native_1.Text>
|
|
53
|
+
</react_native_1.View>
|
|
54
|
+
<react_native_1.View style={[
|
|
55
|
+
styles_1.default.statusChip,
|
|
56
|
+
{
|
|
57
|
+
borderColor: 'rgba(107, 78, 255, 0.25)',
|
|
58
|
+
backgroundColor: 'rgba(107, 78, 255, 0.08)',
|
|
59
|
+
}
|
|
60
|
+
]}>
|
|
61
|
+
<react_native_1.Text style={[styles_1.default.statusText, { color: AppColors_1.AppColors.purple, fontFamily: AppFonts_1.AppFonts.interBold }]}>
|
|
62
|
+
{method || 'GET'}
|
|
63
|
+
</react_native_1.Text>
|
|
64
|
+
</react_native_1.View>
|
|
65
|
+
</react_native_1.View>
|
|
66
|
+
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
67
|
+
|
|
47
68
|
<react_native_1.View style={styles_1.default.metaRow}>
|
|
48
69
|
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
49
70
|
<NetworkIcons_1.StatusIcon color={AppColors_1.AppColors.grayTextWeak}/>
|
|
@@ -69,6 +90,16 @@ const MetaAccordion = ({ status, statusColor, duration, size, triggeredAt, }) =>
|
|
|
69
90
|
</react_native_1.View>
|
|
70
91
|
</react_native_1.View>
|
|
71
92
|
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
93
|
+
|
|
94
|
+
<react_native_1.View style={styles_1.default.metaRow}>
|
|
95
|
+
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
96
|
+
<NetworkIcons_1.GlobeIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
|
|
97
|
+
<react_native_1.Text style={styles_1.default.metaLabel}>Content Type</react_native_1.Text>
|
|
98
|
+
</react_native_1.View>
|
|
99
|
+
<react_native_1.Text style={styles_1.default.metaValue}>{contentType || 'application/json'}</react_native_1.Text>
|
|
100
|
+
</react_native_1.View>
|
|
101
|
+
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
102
|
+
|
|
72
103
|
<react_native_1.View style={styles_1.default.metaRow}>
|
|
73
104
|
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
74
105
|
<NetworkIcons_1.ClockIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
|
|
@@ -99,6 +130,7 @@ const MetaAccordion = ({ status, statusColor, duration, size, triggeredAt, }) =>
|
|
|
99
130
|
</react_native_1.View>
|
|
100
131
|
</react_native_1.View>
|
|
101
132
|
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
133
|
+
|
|
102
134
|
<react_native_1.View style={styles_1.default.metaRow}>
|
|
103
135
|
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
104
136
|
<NetworkIcons_1.SizeIcon color={AppColors_1.AppColors.grayTextWeak}/>
|
|
@@ -106,6 +138,17 @@ const MetaAccordion = ({ status, statusColor, duration, size, triggeredAt, }) =>
|
|
|
106
138
|
</react_native_1.View>
|
|
107
139
|
<react_native_1.Text style={styles_1.default.metaValue}>{size}</react_native_1.Text>
|
|
108
140
|
</react_native_1.View>
|
|
141
|
+
<react_native_1.View style={styles_1.default.metaDivider}/>
|
|
142
|
+
|
|
143
|
+
<react_native_1.View style={[styles_1.default.metaRow, { alignItems: 'flex-start' }]}>
|
|
144
|
+
<react_native_1.View style={styles_1.default.metaLabelRow}>
|
|
145
|
+
<NetworkIcons_1.GlobeIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
|
|
146
|
+
<react_native_1.Text style={styles_1.default.metaLabel}>Full URL</react_native_1.Text>
|
|
147
|
+
</react_native_1.View>
|
|
148
|
+
<react_native_1.Text selectable={true} numberOfLines={3} ellipsizeMode="tail" style={[styles_1.default.metaValue, { fontSize: 11.5, color: AppColors_1.AppColors.grayTextWeak, flex: 1, textAlign: 'right', lineHeight: 16 }]}>
|
|
149
|
+
{url || '—'}
|
|
150
|
+
</react_native_1.Text>
|
|
151
|
+
</react_native_1.View>
|
|
109
152
|
</react_native_1.View>
|
|
110
153
|
</react_native_1.Animated.View>
|
|
111
154
|
</react_native_1.View>);
|
|
@@ -35,3 +35,10 @@ export declare const DebugIcon: ({ color, size }: any) => React.JSX.Element;
|
|
|
35
35
|
export declare const SunIcon: ({ color, size }: any) => React.JSX.Element;
|
|
36
36
|
export declare const MoonIcon: ({ color, size }: any) => React.JSX.Element;
|
|
37
37
|
export { BrandCircleIcon } from './BrandCircleIcon';
|
|
38
|
+
export { BrandSquareIcon } from './BrandSquareIcon';
|
|
39
|
+
export declare const HtmlIcon: ({ color, size }: any) => React.JSX.Element;
|
|
40
|
+
export declare const CssIcon: ({ color, size }: any) => React.JSX.Element;
|
|
41
|
+
export declare const JsIcon: ({ color, size }: any) => React.JSX.Element;
|
|
42
|
+
export declare const EyeIcon: ({ color, size }: any) => React.JSX.Element;
|
|
43
|
+
export declare const SettingsIcon: ({ color, size }: any) => React.JSX.Element;
|
|
44
|
+
export declare const FolderIcon: ({ color, size }: any) => React.JSX.Element;
|
|
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.BrandCircleIcon = exports.MoonIcon = exports.SunIcon = exports.DebugIcon = exports.InsightsIcon = exports.AnalyticsIcon = exports.WhiteBackNavigation = exports.CloseWhite = exports.DownloadIcon = exports.FilterIcon = exports.ChevronIcon = exports.SortArrowIcon = exports.GlobeIcon = exports.DiffIcon = exports.SignalIcon = exports.ExportIcon = exports.HeaderPauseIcon = exports.TrashIcon = exports.FailIcon = exports.CheckIcon = exports.TerminalIcon = exports.FetchIcon = exports.CopyIcon = exports.HeadersIcon = exports.ResponseIcon = exports.RequestIcon = exports.SizeIcon = exports.StatusIcon = exports.CalendarIcon = exports.ClockIcon = exports.ClearIcon = exports.SearchIcon = exports.ExpandCollapseIcon = exports.ScreenIcon = exports.MapPinIcon = exports.EmptyRadarIcon = void 0;
|
|
39
|
+
exports.FolderIcon = exports.SettingsIcon = exports.EyeIcon = exports.JsIcon = exports.CssIcon = exports.HtmlIcon = exports.BrandSquareIcon = exports.BrandCircleIcon = exports.MoonIcon = exports.SunIcon = exports.DebugIcon = exports.InsightsIcon = exports.AnalyticsIcon = exports.WhiteBackNavigation = exports.CloseWhite = exports.DownloadIcon = exports.FilterIcon = exports.ChevronIcon = exports.SortArrowIcon = exports.GlobeIcon = exports.DiffIcon = exports.SignalIcon = exports.ExportIcon = exports.HeaderPauseIcon = exports.TrashIcon = exports.FailIcon = exports.CheckIcon = exports.TerminalIcon = exports.FetchIcon = exports.CopyIcon = exports.HeadersIcon = exports.ResponseIcon = exports.RequestIcon = exports.SizeIcon = exports.StatusIcon = exports.CalendarIcon = exports.ClockIcon = exports.ClearIcon = exports.SearchIcon = exports.ExpandCollapseIcon = exports.ScreenIcon = exports.MapPinIcon = exports.EmptyRadarIcon = void 0;
|
|
40
40
|
const react_1 = __importDefault(require("react"));
|
|
41
41
|
const react_native_svg_1 = __importStar(require("react-native-svg"));
|
|
42
42
|
// Stylesheet
|
|
@@ -289,3 +289,44 @@ const MoonIcon = ({ color = '#FFFFFF', size = 16 }) => {
|
|
|
289
289
|
exports.MoonIcon = MoonIcon;
|
|
290
290
|
var BrandCircleIcon_1 = require("./BrandCircleIcon");
|
|
291
291
|
Object.defineProperty(exports, "BrandCircleIcon", { enumerable: true, get: function () { return BrandCircleIcon_1.BrandCircleIcon; } });
|
|
292
|
+
var BrandSquareIcon_1 = require("./BrandSquareIcon");
|
|
293
|
+
Object.defineProperty(exports, "BrandSquareIcon", { enumerable: true, get: function () { return BrandSquareIcon_1.BrandSquareIcon; } });
|
|
294
|
+
const HtmlIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
295
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
296
|
+
<react_native_svg_1.Path d="M17.5 8.5L21 12l-3.5 3.5M6.5 8.5L3 12l3.5 3.5M14 4.5l-4 15" stroke={color} strokeWidth="2.5" strokeLinecap="round" strokeLinejoin="round"/>
|
|
297
|
+
</react_native_svg_1.default>);
|
|
298
|
+
};
|
|
299
|
+
exports.HtmlIcon = HtmlIcon;
|
|
300
|
+
const CssIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
301
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
302
|
+
<react_native_svg_1.Path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
|
303
|
+
</react_native_svg_1.default>);
|
|
304
|
+
};
|
|
305
|
+
exports.CssIcon = CssIcon;
|
|
306
|
+
const JsIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
307
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
308
|
+
<react_native_svg_1.Rect x="3" y="3" width="18" height="18" rx="4" stroke={color} strokeWidth="2"/>
|
|
309
|
+
<react_native_svg_1.Path d="M8 12v2.5a1.5 1.5 0 003 0V11M13 15.5a1 1 0 001.5.8h.5a1 1 0 001-1v-.5a1 1 0 00-1-1h-1a1 1 0 01-1-1v-.5a1 1 0 011-1h.5a1 1 0 011.5.8" stroke={color} strokeWidth="2" strokeLinecap="round"/>
|
|
310
|
+
</react_native_svg_1.default>);
|
|
311
|
+
};
|
|
312
|
+
exports.JsIcon = JsIcon;
|
|
313
|
+
const EyeIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
314
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
315
|
+
<react_native_svg_1.Path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
|
316
|
+
<react_native_svg_1.Circle cx="12" cy="12" r="3" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
|
317
|
+
</react_native_svg_1.default>);
|
|
318
|
+
};
|
|
319
|
+
exports.EyeIcon = EyeIcon;
|
|
320
|
+
const SettingsIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
321
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
322
|
+
<react_native_svg_1.Path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
|
323
|
+
<react_native_svg_1.Circle cx="12" cy="12" r="3" stroke={color} strokeWidth="2"/>
|
|
324
|
+
</react_native_svg_1.default>);
|
|
325
|
+
};
|
|
326
|
+
exports.SettingsIcon = SettingsIcon;
|
|
327
|
+
const FolderIcon = ({ color = AppColors_1.AppColors.grayTextWeak, size = 14 }) => {
|
|
328
|
+
return (<react_native_svg_1.default width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
329
|
+
<react_native_svg_1.Path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z" stroke={color} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
|
|
330
|
+
</react_native_svg_1.default>);
|
|
331
|
+
};
|
|
332
|
+
exports.FolderIcon = FolderIcon;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare const ReduxTreeView: ({ state, lastActionMap, search, }: {
|
|
3
|
+
state: any;
|
|
4
|
+
lastActionMap: Record<string, any>;
|
|
5
|
+
search?: string;
|
|
6
|
+
}) => React.JSX.Element;
|
|
7
|
+
export declare const ReduxActionTimeline: ({ history, onClear, search, }: {
|
|
8
|
+
history: Array<{
|
|
9
|
+
id: number;
|
|
10
|
+
type: string;
|
|
11
|
+
payload: any;
|
|
12
|
+
timestamp: string;
|
|
13
|
+
affectedSlices: string[];
|
|
14
|
+
}>;
|
|
15
|
+
onClear: () => void;
|
|
16
|
+
search?: string;
|
|
17
|
+
}) => React.JSX.Element;
|