react-native-inapp-inspector 1.1.21 → 1.1.23
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/dist/commonjs/components/AnalyticsDetail.js +5 -3
- package/dist/commonjs/components/AnalyticsEventCard.d.ts +0 -1
- package/dist/commonjs/components/AnalyticsEventCard.js +89 -97
- package/dist/commonjs/components/ErrorBoundary.js +17 -8
- package/dist/commonjs/components/Inspector/BundleTab.d.ts +1 -0
- package/dist/commonjs/components/Inspector/BundleTab.js +607 -685
- package/dist/commonjs/components/Inspector/LogDetail.js +12 -6
- package/dist/commonjs/components/Inspector/PerformanceTab.js +195 -254
- package/dist/commonjs/components/Inspector/ReduxDetail.js +2 -2
- package/dist/commonjs/components/Inspector/ReduxTab.js +9 -6
- package/dist/commonjs/components/NetworkIcons.d.ts +12 -0
- package/dist/commonjs/components/NetworkIcons.js +92 -1
- package/dist/commonjs/components/TreeNode.js +1 -1
- package/dist/commonjs/constants/version.d.ts +1 -1
- package/dist/commonjs/constants/version.js +1 -1
- package/dist/commonjs/customHooks/bundleAnalyzer.d.ts +115 -0
- package/dist/commonjs/customHooks/bundleAnalyzer.js +561 -0
- package/dist/commonjs/customHooks/performanceTracker.d.ts +84 -0
- package/dist/commonjs/customHooks/performanceTracker.js +541 -0
- package/dist/commonjs/helpers/index.d.ts +15 -0
- package/dist/commonjs/helpers/index.js +112 -1
- package/dist/commonjs/i18n/locales/en.json +225 -2
- package/dist/commonjs/styles/AppColors.d.ts +110 -0
- package/dist/commonjs/styles/AppColors.js +114 -0
- package/dist/esm/components/AnalyticsDetail.js +5 -3
- package/dist/esm/components/AnalyticsEventCard.d.ts +0 -1
- package/dist/esm/components/AnalyticsEventCard.js +89 -96
- package/dist/esm/components/ErrorBoundary.js +17 -8
- package/dist/esm/components/Inspector/BundleTab.d.ts +1 -0
- package/dist/esm/components/Inspector/BundleTab.js +612 -690
- package/dist/esm/components/Inspector/LogDetail.js +13 -7
- package/dist/esm/components/Inspector/PerformanceTab.js +196 -255
- package/dist/esm/components/Inspector/ReduxDetail.js +2 -2
- package/dist/esm/components/Inspector/ReduxTab.js +10 -7
- package/dist/esm/components/NetworkIcons.d.ts +12 -0
- package/dist/esm/components/NetworkIcons.js +79 -0
- package/dist/esm/components/TreeNode.js +2 -2
- package/dist/esm/constants/version.d.ts +1 -1
- package/dist/esm/constants/version.js +1 -1
- package/dist/esm/customHooks/bundleAnalyzer.d.ts +115 -0
- package/dist/esm/customHooks/bundleAnalyzer.js +554 -0
- package/dist/esm/customHooks/performanceTracker.d.ts +84 -0
- package/dist/esm/customHooks/performanceTracker.js +537 -0
- package/dist/esm/helpers/index.d.ts +15 -0
- package/dist/esm/helpers/index.js +107 -0
- package/dist/esm/i18n/locales/en.json +225 -2
- package/dist/esm/styles/AppColors.d.ts +110 -0
- package/dist/esm/styles/AppColors.js +114 -0
- package/package.json +1 -1
|
@@ -332,7 +332,7 @@ const reduxDetailStyles = StyleSheet.create({
|
|
|
332
332
|
paddingVertical: 2,
|
|
333
333
|
borderRadius: 4,
|
|
334
334
|
borderWidth: 1,
|
|
335
|
-
borderColor:
|
|
335
|
+
borderColor: AppColors.emeraldBorder,
|
|
336
336
|
},
|
|
337
337
|
persistedChipText: {
|
|
338
338
|
fontFamily: AppFonts.interBold,
|
|
@@ -503,7 +503,7 @@ const reduxDetailStyles = StyleSheet.create({
|
|
|
503
503
|
alignItems: 'center',
|
|
504
504
|
justifyContent: 'center',
|
|
505
505
|
gap: 6,
|
|
506
|
-
backgroundColor:
|
|
506
|
+
backgroundColor: AppColors.errorCardBg,
|
|
507
507
|
borderWidth: 1,
|
|
508
508
|
borderColor: '#FEE2E2',
|
|
509
509
|
borderRadius: 8,
|
|
@@ -10,7 +10,7 @@ import { getSize } from '../../helpers';
|
|
|
10
10
|
import styles from '../../styles';
|
|
11
11
|
import { AppColors } from '../../styles/AppColors';
|
|
12
12
|
import { AppFonts } from '../../styles/AppFonts';
|
|
13
|
-
import { TerminalIcon, SearchIcon, ClearIcon, ClockIcon, ForwardChevronIcon, SortArrowIcon, } from '../NetworkIcons';
|
|
13
|
+
import { TerminalIcon, SearchIcon, ClearIcon, ClockIcon, ForwardChevronIcon, SortArrowIcon, BoltIcon, TextAaIcon, } from '../NetworkIcons';
|
|
14
14
|
const ReduxTab = React.memo(() => {
|
|
15
15
|
const { reduxState, reduxLastActionMap, reduxSearch, setReduxSearch, setSelectedReduxSlice, } = useInspector();
|
|
16
16
|
// Sort mode: 'latest' (newest updated first) vs 'alpha' (A-Z)
|
|
@@ -183,9 +183,12 @@ const ReduxTab = React.memo(() => {
|
|
|
183
183
|
<Text style={reduxTabStyles.resultCount}>
|
|
184
184
|
Showing {filteredSlices.length} of {sliceItems.length} state slices
|
|
185
185
|
</Text>
|
|
186
|
-
<
|
|
187
|
-
{sortMode === 'latest' ?
|
|
188
|
-
|
|
186
|
+
<View style={{ flexDirection: 'row', alignItems: 'center', gap: 4 }}>
|
|
187
|
+
{sortMode === 'latest' ? (<BoltIcon color={AppColors.brandPurple} size={11}/>) : (<TextAaIcon color={AppColors.brandPurple} size={11}/>)}
|
|
188
|
+
<Text style={reduxTabStyles.sortLabel}>
|
|
189
|
+
{sortMode === 'latest' ? 'Newest Updates First' : 'Alphabetical (A-Z)'}
|
|
190
|
+
</Text>
|
|
191
|
+
</View>
|
|
189
192
|
</View>
|
|
190
193
|
</View>
|
|
191
194
|
|
|
@@ -371,18 +374,18 @@ const reduxTabStyles = StyleSheet.create({
|
|
|
371
374
|
flexDirection: 'row',
|
|
372
375
|
alignItems: 'center',
|
|
373
376
|
gap: 4,
|
|
374
|
-
backgroundColor:
|
|
377
|
+
backgroundColor: AppColors.emeraldBg,
|
|
375
378
|
paddingHorizontal: 6,
|
|
376
379
|
paddingVertical: 3,
|
|
377
380
|
borderRadius: 5,
|
|
378
381
|
borderWidth: 1,
|
|
379
|
-
borderColor:
|
|
382
|
+
borderColor: AppColors.emeraldBorder,
|
|
380
383
|
},
|
|
381
384
|
liveDot: {
|
|
382
385
|
width: 6,
|
|
383
386
|
height: 6,
|
|
384
387
|
borderRadius: 3,
|
|
385
|
-
backgroundColor:
|
|
388
|
+
backgroundColor: AppColors.emerald500,
|
|
386
389
|
},
|
|
387
390
|
livePillText: {
|
|
388
391
|
fontFamily: AppFonts.interBold,
|
|
@@ -66,3 +66,15 @@ export declare const StorageIcon: ({ color, size, }: any) => React.JSX.Element;
|
|
|
66
66
|
export declare const MetadataIcon: ({ color, size, }: any) => React.JSX.Element;
|
|
67
67
|
export declare const ReduxIcon: ({ color, size, }: any) => React.JSX.Element;
|
|
68
68
|
export declare const PerformanceIcon: ({ color, size, }: any) => React.JSX.Element;
|
|
69
|
+
export declare const BoltIcon: ({ color, size }: any) => React.JSX.Element;
|
|
70
|
+
export declare const BanIcon: ({ color, size }: any) => React.JSX.Element;
|
|
71
|
+
export declare const FolderOpenIcon: ({ color, size }: any) => React.JSX.Element;
|
|
72
|
+
export declare const DocIcon: ({ color, size }: any) => React.JSX.Element;
|
|
73
|
+
export declare const LightbulbIcon: ({ color, size }: any) => React.JSX.Element;
|
|
74
|
+
export declare const SparkleIcon: ({ color, size }: any) => React.JSX.Element;
|
|
75
|
+
export declare const MapIcon: ({ color, size }: any) => React.JSX.Element;
|
|
76
|
+
export declare const AtomIcon: ({ color, size }: any) => React.JSX.Element;
|
|
77
|
+
export declare const BrainIcon: ({ color, size }: any) => React.JSX.Element;
|
|
78
|
+
export declare const TextAaIcon: ({ color, size }: any) => React.JSX.Element;
|
|
79
|
+
export declare const CartIcon: ({ color, size }: any) => React.JSX.Element;
|
|
80
|
+
export declare const MoneyIcon: ({ color, size }: any) => React.JSX.Element;
|
|
@@ -402,3 +402,82 @@ export const PerformanceIcon = ({ color = AppColors.purple, size = 14, }) => {
|
|
|
402
402
|
<Circle cx="12" cy="12" r="1.5" fill={color}/>
|
|
403
403
|
</Svg>);
|
|
404
404
|
};
|
|
405
|
+
// ─── App-wide Vector Icons (emoji-free, render on every device) ─────────────
|
|
406
|
+
export const BoltIcon = ({ color = AppColors.amber500, size = 14 }) => {
|
|
407
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
408
|
+
<Path d="M13 2 4.5 13.5 H10.5 L9 22 19.5 9.5 H13.5 Z" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
409
|
+
</Svg>);
|
|
410
|
+
};
|
|
411
|
+
export const BanIcon = ({ color = AppColors.errorColor, size = 14 }) => {
|
|
412
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
413
|
+
<Circle cx="12" cy="12" r="8.5" stroke={color} strokeWidth="1.8"/>
|
|
414
|
+
<Path d="M5.5 5.5 18.5 18.5" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
415
|
+
</Svg>);
|
|
416
|
+
};
|
|
417
|
+
export const FolderOpenIcon = ({ color = AppColors.amber500, size = 14 }) => {
|
|
418
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
419
|
+
<Path d="M8.4 11 10 5.5a2 2 0 0 1 1.9-1.5h3.7a1.5 1.5 0 0 1 1.4 2L15.5 11" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
420
|
+
<Path d="M6.7 20.4 4.3 12.9A1.6 1.6 0 0 1 5.8 11h14.6a1.6 1.6 0 0 1 1.6 1.9l-2.4 7.5a2 2 0 0 1-2 1.4H8.7a2 2 0 0 1-2-1.4Z" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
421
|
+
</Svg>);
|
|
422
|
+
};
|
|
423
|
+
export const DocIcon = ({ color = AppColors.grayTextWeak, size = 14 }) => {
|
|
424
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
425
|
+
<Path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
426
|
+
<Path d="M14 2v4a2 2 0 0 0 2 2h4" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
427
|
+
<Path d="M8 13h8 M8 17h8" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
428
|
+
</Svg>);
|
|
429
|
+
};
|
|
430
|
+
export const LightbulbIcon = ({ color = AppColors.amber500, size = 14 }) => {
|
|
431
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
432
|
+
<Path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1.3.5 2.6 1.5 3.5.8.8 1.3 1.5 1.5 2.5" stroke={color} strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"/>
|
|
433
|
+
<Path d="M9 18h6" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
434
|
+
<Path d="M10 22h4" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
435
|
+
</Svg>);
|
|
436
|
+
};
|
|
437
|
+
export const SparkleIcon = ({ color = AppColors.amber500, size = 14 }) => {
|
|
438
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
439
|
+
<Path d="M11.1 3.9c.2-.6 1-.6 1.2 0l1.2 4.2 4.2 1.2c.6.2.6 1 0 1.2l-4.2 1.2-1.2 4.2c-.2.6-1 .6-1.2 0l-1.2-4.2-4.2-1.2c-.6-.2-.6-1 0-1.2l4.2-1.2Z" fill={color}/>
|
|
440
|
+
<Path d="M18.5 3.5v4 M16.5 5.5h4" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
441
|
+
</Svg>);
|
|
442
|
+
};
|
|
443
|
+
export const MapIcon = ({ color = AppColors.grayTextWeak, size = 14 }) => {
|
|
444
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
445
|
+
<Path d="M3 5.5 9 3.5l6 2 6-2v15l-6 2-6-2-6 2Z" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
446
|
+
<Path d="M9 3.5v15M15 5.5v15" stroke={color} strokeWidth="1.8"/>
|
|
447
|
+
<Circle cx="12" cy="11" r="1.9" stroke={color} strokeWidth="1.6"/>
|
|
448
|
+
</Svg>);
|
|
449
|
+
};
|
|
450
|
+
export const AtomIcon = ({ color = AppColors.grayTextWeak, size = 14 }) => {
|
|
451
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
452
|
+
<Ellipse cx="12" cy="12" rx="9" ry="3.8" stroke={color} strokeWidth="1.6"/>
|
|
453
|
+
<Ellipse cx="12" cy="12" rx="9" ry="3.8" stroke={color} strokeWidth="1.6" transform="rotate(60 12 12)"/>
|
|
454
|
+
<Ellipse cx="12" cy="12" rx="9" ry="3.8" stroke={color} strokeWidth="1.6" transform="rotate(120 12 12)"/>
|
|
455
|
+
<Circle cx="12" cy="12" r="1.6" fill={color}/>
|
|
456
|
+
</Svg>);
|
|
457
|
+
};
|
|
458
|
+
export const BrainIcon = ({ color = AppColors.grayTextWeak, size = 14 }) => {
|
|
459
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
460
|
+
<Path d="M9.5 2a2.5 2.5 0 0 0-2.5 2.5v.5a2.5 2.5 0 0 0-3 3.17A2.5 2.5 0 0 0 2 10.5c0 .76.34 1.44.88 1.9A2.5 2.5 0 0 0 2 15.5c0 .76.34 1.44.88 1.9A2.5 2.5 0 0 0 5 19.75c0 .75.5 1.5 1.25 1.75A2.5 2.5 0 0 0 8.5 23h.25a2.5 2.5 0 0 0 2.5-2.5V4a2.5 2.5 0 0 0-1.75-2ZM14.5 2a2.5 2.5 0 0 1 2.5 2.5v.5a2.5 2.5 0 0 1 3 3.17A2.5 2.5 0 0 1 22 10.5c0 .76-.34 1.44-.88 1.9a2.5 2.5 0 0 1 .88 1.9c0 .76-.34 1.44-.88 1.9A2.5 2.5 0 0 1 19 19.75c0 .75-.5 1.5-1.25 1.75A2.5 2.5 0 0 1 15.5 23h-.25a2.5 2.5 0 0 1-2.5-2.5V4a2.5 2.5 0 0 1 1.75-2Z" stroke={color} strokeWidth="1.6" strokeLinejoin="round"/>
|
|
461
|
+
</Svg>);
|
|
462
|
+
};
|
|
463
|
+
export const TextAaIcon = ({ color = AppColors.grayTextWeak, size = 14 }) => {
|
|
464
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
465
|
+
<Path d="M4 19 7.5 7 11 19" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
466
|
+
<Path d="M5.5 15h4" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
467
|
+
<Path d="M16 19l1.7-6.6 1.7 6.6" stroke={color} strokeWidth="1.8" strokeLinejoin="round"/>
|
|
468
|
+
<Path d="M16.9 15.8h1.6" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
469
|
+
</Svg>);
|
|
470
|
+
};
|
|
471
|
+
export const CartIcon = ({ color = AppColors.amber500, size = 14 }) => {
|
|
472
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
473
|
+
<Circle cx="9.5" cy="20" r="1.3" stroke={color} strokeWidth="1.8"/>
|
|
474
|
+
<Circle cx="18.5" cy="20" r="1.3" stroke={color} strokeWidth="1.8"/>
|
|
475
|
+
<Path d="M3 3.5h1.8a1 1 0 0 1 .97.75l3.1 9.75a1.5 1.5 0 0 0 1.44 1.1h9.2a1 1 0 0 0 .95-.7l2.5-7.5a.8.8 0 0 0-.75-1.05H7" stroke={color} strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round"/>
|
|
476
|
+
</Svg>);
|
|
477
|
+
};
|
|
478
|
+
export const MoneyIcon = ({ color = AppColors.emerald500, size = 14 }) => {
|
|
479
|
+
return (<Svg width={size} height={size} viewBox="0 0 24 24" fill="none">
|
|
480
|
+
<Circle cx="12" cy="12" r="8.5" stroke={color} strokeWidth="1.8"/>
|
|
481
|
+
<Path d="M12 7v10M14.5 9.5c-.6-1-1.5-1.5-2.5-1.5-1.5 0-2.5.9-2.5 2s1 1.8 2.5 2 2.5.8 2.5 2-1 2-2.5 2c-1 0-1.9-.5-2.5-1.5" stroke={color} strokeWidth="1.8" strokeLinecap="round"/>
|
|
482
|
+
</Svg>);
|
|
483
|
+
};
|
|
@@ -3,7 +3,7 @@ import { Text, View, Image, Animated, Pressable } from 'react-native';
|
|
|
3
3
|
// Helpers
|
|
4
4
|
import { escapeRegex } from '../helpers';
|
|
5
5
|
// Assets
|
|
6
|
-
import { ChevronIcon } from './NetworkIcons';
|
|
6
|
+
import { ChevronIcon, DocIcon } from './NetworkIcons';
|
|
7
7
|
// Stylesheet
|
|
8
8
|
import { AppColors } from '../styles/AppColors';
|
|
9
9
|
import styles from '../styles';
|
|
@@ -43,7 +43,7 @@ const TreeNode = React.memo(function TreeNode({ data, name, level = 0, search, f
|
|
|
43
43
|
{name !== undefined && (<Text style={[styles.codeKey, { marginBottom: 4 }]}>{`"${String(name)}": `}</Text>)}
|
|
44
44
|
<View style={styles.filePreviewCard}>
|
|
45
45
|
{isImage ? (<Image source={{ uri: file.uri }} style={styles.filePreviewThumb} resizeMode="cover"/>) : (<View style={styles.filePreviewDoc}>
|
|
46
|
-
<
|
|
46
|
+
<DocIcon color={AppColors.grayTextWeak} size={20}/>
|
|
47
47
|
</View>)}
|
|
48
48
|
<View style={{ flex: 1 }}>
|
|
49
49
|
<Text style={styles.filePreviewName} numberOfLines={1}>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const LIB_VERSION = "1.1.
|
|
1
|
+
export declare const LIB_VERSION = "1.1.23";
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
export type FileTypeCategory = 'image' | 'typescript' | 'javascript' | 'font' | 'json';
|
|
2
|
+
export interface HostBundleFileItem {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
path: string;
|
|
6
|
+
ext: string;
|
|
7
|
+
category: FileTypeCategory;
|
|
8
|
+
sizeKb: number;
|
|
9
|
+
meta: string;
|
|
10
|
+
color: string;
|
|
11
|
+
status?: 'optimal' | 'warning' | 'info';
|
|
12
|
+
advice?: string;
|
|
13
|
+
isConsumed?: boolean;
|
|
14
|
+
previewUri?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface HostBundlePackageItem {
|
|
17
|
+
id: string;
|
|
18
|
+
name: string;
|
|
19
|
+
version: string;
|
|
20
|
+
latestVersion?: string;
|
|
21
|
+
sizeKb: number;
|
|
22
|
+
percentage: number;
|
|
23
|
+
type: 'direct' | 'peer' | 'transitive';
|
|
24
|
+
isDirectDefined?: boolean;
|
|
25
|
+
parentPackageName?: string;
|
|
26
|
+
subpackages?: HostBundlePackageItem[];
|
|
27
|
+
category: 'core' | 'navigation' | 'network' | 'ui' | 'utils';
|
|
28
|
+
color: string;
|
|
29
|
+
description: string;
|
|
30
|
+
npmUrl?: string;
|
|
31
|
+
isDeprecated?: boolean;
|
|
32
|
+
deprecationReason?: string;
|
|
33
|
+
lastActive?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface HostBinaryComponentItem {
|
|
36
|
+
id: string;
|
|
37
|
+
name: string;
|
|
38
|
+
category: 'js' | 'native' | 'frameworks' | 'assets' | 'meta';
|
|
39
|
+
sizeMb: number;
|
|
40
|
+
pct: number;
|
|
41
|
+
color: string;
|
|
42
|
+
description: string;
|
|
43
|
+
advice: string;
|
|
44
|
+
}
|
|
45
|
+
export interface HostBundleAnalysisResult {
|
|
46
|
+
isLive: boolean;
|
|
47
|
+
scriptURL: string;
|
|
48
|
+
totalDevBytes: number;
|
|
49
|
+
totalDevMb: number;
|
|
50
|
+
totalDevKb: number;
|
|
51
|
+
isHermes: boolean;
|
|
52
|
+
moduleCount: number;
|
|
53
|
+
packageCount: number;
|
|
54
|
+
filesCount: number;
|
|
55
|
+
splitUp: {
|
|
56
|
+
appSource: {
|
|
57
|
+
kb: number;
|
|
58
|
+
mb: number;
|
|
59
|
+
pct: number;
|
|
60
|
+
};
|
|
61
|
+
nodeModules: {
|
|
62
|
+
kb: number;
|
|
63
|
+
mb: number;
|
|
64
|
+
pct: number;
|
|
65
|
+
};
|
|
66
|
+
assetsMedia: {
|
|
67
|
+
kb: number;
|
|
68
|
+
mb: number;
|
|
69
|
+
pct: number;
|
|
70
|
+
};
|
|
71
|
+
metroDevOverhead: {
|
|
72
|
+
kb: number;
|
|
73
|
+
mb: number;
|
|
74
|
+
pct: number;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
files: HostBundleFileItem[];
|
|
78
|
+
packages: HostBundlePackageItem[];
|
|
79
|
+
production: {
|
|
80
|
+
ios: {
|
|
81
|
+
totalInstallMb: number;
|
|
82
|
+
totalDownloadMb: number;
|
|
83
|
+
compressionRatioPct: number;
|
|
84
|
+
components: HostBinaryComponentItem[];
|
|
85
|
+
};
|
|
86
|
+
androidAab: {
|
|
87
|
+
totalInstallMb: number;
|
|
88
|
+
totalDownloadMb: number;
|
|
89
|
+
compressionRatioPct: number;
|
|
90
|
+
components: HostBinaryComponentItem[];
|
|
91
|
+
};
|
|
92
|
+
androidApk: {
|
|
93
|
+
totalInstallMb: number;
|
|
94
|
+
totalDownloadMb: number;
|
|
95
|
+
compressionRatioPct: number;
|
|
96
|
+
components: HostBinaryComponentItem[];
|
|
97
|
+
};
|
|
98
|
+
android: {
|
|
99
|
+
totalInstallMb: number;
|
|
100
|
+
totalDownloadMb: number;
|
|
101
|
+
compressionRatioPct: number;
|
|
102
|
+
components: HostBinaryComponentItem[];
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
export declare const getHostScriptURL: () => string;
|
|
107
|
+
/**
|
|
108
|
+
* Parses raw Metro bundle source code to discover real modules and packages in the host app.
|
|
109
|
+
*/
|
|
110
|
+
export declare const parseBundleSource: (bundleText: string, totalBytes: number, scriptURL: string) => HostBundleAnalysisResult;
|
|
111
|
+
/**
|
|
112
|
+
* Automatically fetch and analyze the real running bundle for the host app.
|
|
113
|
+
*/
|
|
114
|
+
export declare const analyzeHostAppBundle: () => Promise<HostBundleAnalysisResult>;
|
|
115
|
+
export declare const getCachedBundleAnalysis: () => HostBundleAnalysisResult | null;
|