react-native-inapp-inspector 1.1.23 → 1.1.25

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 (79) hide show
  1. package/dist/commonjs/components/AnalyticsEventCard.js +94 -88
  2. package/dist/commonjs/components/ConsoleLogCard.js +49 -25
  3. package/dist/commonjs/components/Inspector/AnalyticsFilterModal.d.ts +7 -0
  4. package/dist/commonjs/components/Inspector/AnalyticsFilterModal.js +1002 -0
  5. package/dist/commonjs/components/Inspector/AnalyticsTab.js +637 -10
  6. package/dist/commonjs/components/Inspector/BundleTab.d.ts +1 -1
  7. package/dist/commonjs/components/Inspector/BundleTab.js +859 -402
  8. package/dist/commonjs/components/Inspector/InspectorContext.js +6 -1
  9. package/dist/commonjs/components/Inspector/InspectorHeader.js +13 -5
  10. package/dist/commonjs/components/Inspector/LogDetail.js +223 -111
  11. package/dist/commonjs/components/Inspector/MainScreen.js +1 -1
  12. package/dist/commonjs/components/Inspector/NetworkDetail.js +131 -81
  13. package/dist/commonjs/components/Inspector/PerformanceTab.js +20 -10
  14. package/dist/commonjs/components/NetworkIcons.d.ts +14 -0
  15. package/dist/commonjs/components/NetworkIcons.js +93 -1
  16. package/dist/commonjs/components/SegmentedTabs.js +31 -22
  17. package/dist/commonjs/components/TreeNode.js +13 -12
  18. package/dist/commonjs/constants/version.d.ts +1 -1
  19. package/dist/commonjs/constants/version.js +1 -1
  20. package/dist/commonjs/customHooks/bundleAnalyzer.d.ts +6 -2
  21. package/dist/commonjs/customHooks/bundleAnalyzer.js +552 -114
  22. package/dist/commonjs/customHooks/consoleLogger.js +83 -45
  23. package/dist/commonjs/customHooks/networkLogger.js +10 -1
  24. package/dist/commonjs/customHooks/performanceTracker.d.ts +8 -0
  25. package/dist/commonjs/customHooks/performanceTracker.js +44 -3
  26. package/dist/commonjs/decorators/index.d.ts +49 -0
  27. package/dist/commonjs/decorators/index.js +142 -0
  28. package/dist/commonjs/helpers/gaAnalyticsRegistry.d.ts +18 -0
  29. package/dist/commonjs/helpers/gaAnalyticsRegistry.js +174 -0
  30. package/dist/commonjs/helpers/index.d.ts +7 -4
  31. package/dist/commonjs/helpers/index.js +102 -64
  32. package/dist/commonjs/i18n/locales/en.json +53 -4
  33. package/dist/commonjs/index.d.ts +4 -0
  34. package/dist/commonjs/index.js +216 -8
  35. package/dist/commonjs/styles/index.d.ts +4 -1
  36. package/dist/commonjs/styles/index.js +22 -19
  37. package/dist/commonjs/types/enums.d.ts +115 -9
  38. package/dist/commonjs/types/enums.js +103 -2
  39. package/dist/commonjs/types/interfaces.d.ts +19 -0
  40. package/dist/esm/components/AnalyticsEventCard.js +95 -89
  41. package/dist/esm/components/ConsoleLogCard.js +49 -25
  42. package/dist/esm/components/Inspector/AnalyticsFilterModal.d.ts +7 -0
  43. package/dist/esm/components/Inspector/AnalyticsFilterModal.js +964 -0
  44. package/dist/esm/components/Inspector/AnalyticsTab.js +639 -12
  45. package/dist/esm/components/Inspector/BundleTab.d.ts +1 -1
  46. package/dist/esm/components/Inspector/BundleTab.js +860 -403
  47. package/dist/esm/components/Inspector/InspectorContext.js +1 -0
  48. package/dist/esm/components/Inspector/InspectorHeader.js +14 -6
  49. package/dist/esm/components/Inspector/LogDetail.js +223 -111
  50. package/dist/esm/components/Inspector/MainScreen.js +2 -2
  51. package/dist/esm/components/Inspector/NetworkDetail.js +132 -49
  52. package/dist/esm/components/Inspector/PerformanceTab.js +20 -10
  53. package/dist/esm/components/NetworkIcons.d.ts +14 -0
  54. package/dist/esm/components/NetworkIcons.js +78 -0
  55. package/dist/esm/components/SegmentedTabs.js +31 -22
  56. package/dist/esm/components/TreeNode.js +13 -12
  57. package/dist/esm/constants/version.d.ts +1 -1
  58. package/dist/esm/constants/version.js +1 -1
  59. package/dist/esm/customHooks/bundleAnalyzer.d.ts +6 -2
  60. package/dist/esm/customHooks/bundleAnalyzer.js +549 -114
  61. package/dist/esm/customHooks/consoleLogger.js +83 -45
  62. package/dist/esm/customHooks/networkLogger.js +10 -1
  63. package/dist/esm/customHooks/performanceTracker.d.ts +8 -0
  64. package/dist/esm/customHooks/performanceTracker.js +38 -1
  65. package/dist/esm/decorators/index.d.ts +49 -0
  66. package/dist/esm/decorators/index.js +137 -0
  67. package/dist/esm/helpers/gaAnalyticsRegistry.d.ts +18 -0
  68. package/dist/esm/helpers/gaAnalyticsRegistry.js +169 -0
  69. package/dist/esm/helpers/index.d.ts +7 -4
  70. package/dist/esm/helpers/index.js +100 -63
  71. package/dist/esm/i18n/locales/en.json +53 -4
  72. package/dist/esm/index.d.ts +4 -0
  73. package/dist/esm/index.js +190 -8
  74. package/dist/esm/styles/index.d.ts +4 -1
  75. package/dist/esm/styles/index.js +22 -19
  76. package/dist/esm/types/enums.d.ts +115 -9
  77. package/dist/esm/types/enums.js +102 -3
  78. package/dist/esm/types/interfaces.d.ts +19 -0
  79. package/package.json +1 -1
@@ -610,10 +610,10 @@ const getRawStyles = (colors) => ({
610
610
  flexDirection: 'row',
611
611
  alignItems: 'center',
612
612
  justifyContent: 'space-between',
613
- backgroundColor: colors.grayBackground,
614
- borderRadius: 7,
613
+ backgroundColor: `${colors.brandPurple}08`,
614
+ borderRadius: 8,
615
615
  borderWidth: 1,
616
- borderColor: colors.grayBorderSecondary,
616
+ borderColor: `${colors.brandPurple}18`,
617
617
  paddingHorizontal: 8,
618
618
  paddingVertical: 5,
619
619
  marginVertical: 5,
@@ -628,12 +628,16 @@ const getRawStyles = (colors) => ({
628
628
  slugTag: {
629
629
  fontFamily: AppFonts_1.AppFonts.interBold,
630
630
  fontSize: 8.5,
631
- color: colors.grayTextWeak,
631
+ color: colors.brandPurple,
632
632
  letterSpacing: 0.5,
633
+ backgroundColor: `${colors.brandPurple}15`,
634
+ paddingHorizontal: 4,
635
+ paddingVertical: 1,
636
+ borderRadius: 4,
633
637
  },
634
638
  slugText: {
635
639
  fontFamily: AppFonts_1.AppFonts.interBold,
636
- fontSize: 12.5,
640
+ fontSize: 12,
637
641
  color: colors.primaryBlack,
638
642
  flexShrink: 1,
639
643
  },
@@ -1369,11 +1373,11 @@ const getRawStyles = (colors) => ({
1369
1373
  backgroundColor: colors.primaryLight,
1370
1374
  borderRadius: 12,
1371
1375
  borderWidth: 1,
1372
- borderColor: colors.grayBorderSecondary,
1373
- padding: 14,
1374
- marginHorizontal: 12,
1376
+ borderColor: `${colors.brandPurple}20`,
1377
+ padding: 12,
1378
+ marginHorizontal: 10,
1375
1379
  marginTop: 8,
1376
- marginBottom: 8,
1380
+ marginBottom: 6,
1377
1381
  shadowColor: colors.black,
1378
1382
  shadowOpacity: 0.03,
1379
1383
  shadowRadius: 4,
@@ -1384,11 +1388,10 @@ const getRawStyles = (colors) => ({
1384
1388
  flexDirection: 'row',
1385
1389
  justifyContent: 'space-between',
1386
1390
  alignItems: 'center',
1387
- marginBottom: 10,
1388
1391
  },
1389
1392
  analyticsHeaderTitle: {
1390
1393
  fontFamily: AppFonts_1.AppFonts.interBold,
1391
- fontSize: 14,
1394
+ fontSize: 13.5,
1392
1395
  color: colors.primaryBlack,
1393
1396
  },
1394
1397
  statusDot: {
@@ -1399,21 +1402,21 @@ const getRawStyles = (colors) => ({
1399
1402
  analyticsHeaderSubtitle: {
1400
1403
  fontFamily: AppFonts_1.AppFonts.interMedium,
1401
1404
  fontSize: 11,
1402
- color: colors.grayText,
1405
+ color: colors.grayTextWeak,
1403
1406
  marginTop: 2,
1404
1407
  },
1405
1408
  analyticsHeaderToggle: {
1406
- paddingVertical: 4,
1407
- paddingHorizontal: 8,
1408
- borderRadius: 4,
1409
- backgroundColor: colors.grayBackground,
1409
+ paddingVertical: 4.5,
1410
+ paddingHorizontal: 9,
1411
+ borderRadius: 7,
1412
+ backgroundColor: `${colors.brandPurple}12`,
1410
1413
  borderWidth: 1,
1411
- borderColor: colors.grayBorderSecondary,
1414
+ borderColor: `${colors.brandPurple}25`,
1412
1415
  },
1413
1416
  analyticsHeaderToggleText: {
1414
1417
  fontFamily: AppFonts_1.AppFonts.interBold,
1415
- fontSize: 10,
1416
- color: colors.purple,
1418
+ fontSize: 10.5,
1419
+ color: colors.brandPurple,
1417
1420
  },
1418
1421
  analyticsStatsRow: {
1419
1422
  flexDirection: 'row',
@@ -1,9 +1,115 @@
1
- export type ActiveTab = 'apis' | 'analytics' | 'logs' | 'redux' | 'bundle' | 'performance';
2
- export type Method = 'ALL' | 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
3
- export type StatusFilter = 'ALL' | '2xx' | '3xx' | '4xx' | '5xx' | 'Failed';
4
- export type SortOrder = 'newest' | 'oldest';
5
- export type LocalFilter = 'success' | 'failed' | 'loading';
6
- export type ModalAnimationType = 'slide' | 'fade' | 'none';
7
- export type SettingsPage = 'main' | 'apis' | 'logs' | 'analytics' | 'redux' | 'bundle' | 'performance' | null;
8
- export type SettingsSubTab = 'module' | 'ui';
9
- export type LogFilter = 'all' | 'info' | 'warn' | 'error' | 'user-log' | 'analytics';
1
+ export declare const ActiveTab: {
2
+ readonly Apis: "apis";
3
+ readonly Analytics: "analytics";
4
+ readonly Logs: "logs";
5
+ readonly Redux: "redux";
6
+ readonly Bundle: "bundle";
7
+ readonly Performance: "performance";
8
+ };
9
+ export type ActiveTab = (typeof ActiveTab)[keyof typeof ActiveTab];
10
+ export declare const Method: {
11
+ readonly All: "ALL";
12
+ readonly Get: "GET";
13
+ readonly Post: "POST";
14
+ readonly Put: "PUT";
15
+ readonly Patch: "PATCH";
16
+ readonly Delete: "DELETE";
17
+ };
18
+ export type Method = (typeof Method)[keyof typeof Method];
19
+ export declare const StatusFilter: {
20
+ readonly All: "ALL";
21
+ readonly TwoXx: "2xx";
22
+ readonly ThreeXx: "3xx";
23
+ readonly FourXx: "4xx";
24
+ readonly FiveXx: "5xx";
25
+ readonly Failed: "Failed";
26
+ };
27
+ export type StatusFilter = (typeof StatusFilter)[keyof typeof StatusFilter];
28
+ export declare const SortOrder: {
29
+ readonly Newest: "newest";
30
+ readonly Oldest: "oldest";
31
+ };
32
+ export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder];
33
+ export declare const LocalFilter: {
34
+ readonly Success: "success";
35
+ readonly Failed: "failed";
36
+ readonly Loading: "loading";
37
+ };
38
+ export type LocalFilter = (typeof LocalFilter)[keyof typeof LocalFilter];
39
+ export declare const ModalAnimationType: {
40
+ readonly Slide: "slide";
41
+ readonly Fade: "fade";
42
+ readonly None: "none";
43
+ };
44
+ export type ModalAnimationType = (typeof ModalAnimationType)[keyof typeof ModalAnimationType];
45
+ export declare const SettingsPage: {
46
+ readonly Main: "main";
47
+ readonly Apis: "apis";
48
+ readonly Logs: "logs";
49
+ readonly Analytics: "analytics";
50
+ readonly Redux: "redux";
51
+ readonly Bundle: "bundle";
52
+ readonly Performance: "performance";
53
+ };
54
+ export type SettingsPage = (typeof SettingsPage)[keyof typeof SettingsPage] | null;
55
+ export declare const SettingsSubTab: {
56
+ readonly Module: "module";
57
+ readonly Ui: "ui";
58
+ };
59
+ export type SettingsSubTab = (typeof SettingsSubTab)[keyof typeof SettingsSubTab];
60
+ export declare const LogFilter: {
61
+ readonly All: "all";
62
+ readonly Info: "info";
63
+ readonly Warn: "warn";
64
+ readonly Error: "error";
65
+ readonly UserLog: "user-log";
66
+ readonly Analytics: "analytics";
67
+ };
68
+ export type LogFilter = (typeof LogFilter)[keyof typeof LogFilter];
69
+ export declare const ConsoleLogType: {
70
+ readonly Info: "info";
71
+ readonly Warn: "warn";
72
+ readonly Error: "error";
73
+ };
74
+ export type ConsoleLogType = (typeof ConsoleLogType)[keyof typeof ConsoleLogType];
75
+ export declare const AnalyticsEventSource: {
76
+ readonly Firebase: "firebase";
77
+ readonly Manual: "manual";
78
+ };
79
+ export type AnalyticsEventSource = (typeof AnalyticsEventSource)[keyof typeof AnalyticsEventSource];
80
+ export declare const GAEventCategory: {
81
+ readonly PageView: "page_view";
82
+ readonly Ecommerce: "ecommerce";
83
+ readonly System: "system";
84
+ readonly Custom: "custom";
85
+ };
86
+ export type GAEventCategory = (typeof GAEventCategory)[keyof typeof GAEventCategory];
87
+ export declare const StackFrameType: {
88
+ readonly App: "app";
89
+ readonly Dependency: "dependency";
90
+ readonly Runtime: "runtime";
91
+ readonly Native: "native";
92
+ };
93
+ export type StackFrameType = (typeof StackFrameType)[keyof typeof StackFrameType];
94
+ export declare const DiffResultType: {
95
+ readonly Added: "added";
96
+ readonly Removed: "removed";
97
+ readonly Changed: "changed";
98
+ };
99
+ export type DiffResultType = (typeof DiffResultType)[keyof typeof DiffResultType];
100
+ export declare const BundleSubTab: {
101
+ readonly Overview: "overview";
102
+ readonly Production: "production";
103
+ readonly Files: "files";
104
+ readonly Packages: "packages";
105
+ readonly Media: "media";
106
+ readonly Optimizer: "optimizer";
107
+ };
108
+ export type BundleSubTab = (typeof BundleSubTab)[keyof typeof BundleSubTab];
109
+ export declare const PerformanceSubTab: {
110
+ readonly Overview: "overview";
111
+ readonly Renders: "renders";
112
+ readonly Interactions: "interactions";
113
+ readonly Memory: "memory";
114
+ };
115
+ export type PerformanceSubTab = (typeof PerformanceSubTab)[keyof typeof PerformanceSubTab];
@@ -1,4 +1,105 @@
1
1
  "use strict";
2
- // ─── Enum-like union types ────────────────────────────────────────────────────
3
- // The codebase treats these as string enums (used for tab keys, filters, etc.).
2
+ // ─── Enums & Constants ─────────────────────────────────────────────────────────
3
+ // Universal TypeScript Enum Objects and Type Aliases.
4
+ // Allows both enum-style access (e.g. ActiveTab.Apis) and string literals ('apis').
4
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PerformanceSubTab = exports.BundleSubTab = exports.DiffResultType = exports.StackFrameType = exports.GAEventCategory = exports.AnalyticsEventSource = exports.ConsoleLogType = exports.LogFilter = exports.SettingsSubTab = exports.SettingsPage = exports.ModalAnimationType = exports.LocalFilter = exports.SortOrder = exports.StatusFilter = exports.Method = exports.ActiveTab = void 0;
7
+ exports.ActiveTab = {
8
+ Apis: 'apis',
9
+ Analytics: 'analytics',
10
+ Logs: 'logs',
11
+ Redux: 'redux',
12
+ Bundle: 'bundle',
13
+ Performance: 'performance',
14
+ };
15
+ exports.Method = {
16
+ All: 'ALL',
17
+ Get: 'GET',
18
+ Post: 'POST',
19
+ Put: 'PUT',
20
+ Patch: 'PATCH',
21
+ Delete: 'DELETE',
22
+ };
23
+ exports.StatusFilter = {
24
+ All: 'ALL',
25
+ TwoXx: '2xx',
26
+ ThreeXx: '3xx',
27
+ FourXx: '4xx',
28
+ FiveXx: '5xx',
29
+ Failed: 'Failed',
30
+ };
31
+ exports.SortOrder = {
32
+ Newest: 'newest',
33
+ Oldest: 'oldest',
34
+ };
35
+ exports.LocalFilter = {
36
+ Success: 'success',
37
+ Failed: 'failed',
38
+ Loading: 'loading',
39
+ };
40
+ exports.ModalAnimationType = {
41
+ Slide: 'slide',
42
+ Fade: 'fade',
43
+ None: 'none',
44
+ };
45
+ exports.SettingsPage = {
46
+ Main: 'main',
47
+ Apis: 'apis',
48
+ Logs: 'logs',
49
+ Analytics: 'analytics',
50
+ Redux: 'redux',
51
+ Bundle: 'bundle',
52
+ Performance: 'performance',
53
+ };
54
+ exports.SettingsSubTab = {
55
+ Module: 'module',
56
+ Ui: 'ui',
57
+ };
58
+ exports.LogFilter = {
59
+ All: 'all',
60
+ Info: 'info',
61
+ Warn: 'warn',
62
+ Error: 'error',
63
+ UserLog: 'user-log',
64
+ Analytics: 'analytics',
65
+ };
66
+ exports.ConsoleLogType = {
67
+ Info: 'info',
68
+ Warn: 'warn',
69
+ Error: 'error',
70
+ };
71
+ exports.AnalyticsEventSource = {
72
+ Firebase: 'firebase',
73
+ Manual: 'manual',
74
+ };
75
+ exports.GAEventCategory = {
76
+ PageView: 'page_view',
77
+ Ecommerce: 'ecommerce',
78
+ System: 'system',
79
+ Custom: 'custom',
80
+ };
81
+ exports.StackFrameType = {
82
+ App: 'app',
83
+ Dependency: 'dependency',
84
+ Runtime: 'runtime',
85
+ Native: 'native',
86
+ };
87
+ exports.DiffResultType = {
88
+ Added: 'added',
89
+ Removed: 'removed',
90
+ Changed: 'changed',
91
+ };
92
+ exports.BundleSubTab = {
93
+ Overview: 'overview',
94
+ Production: 'production',
95
+ Files: 'files',
96
+ Packages: 'packages',
97
+ Media: 'media',
98
+ Optimizer: 'optimizer',
99
+ };
100
+ exports.PerformanceSubTab = {
101
+ Overview: 'overview',
102
+ Renders: 'renders',
103
+ Interactions: 'interactions',
104
+ Memory: 'memory',
105
+ };
@@ -32,6 +32,21 @@ export interface AnalyticsEvent {
32
32
  pageTitle?: string;
33
33
  pageLocation?: string;
34
34
  }
35
+ export interface AnalyticsFilters {
36
+ categories: Set<string>;
37
+ screens: Set<string>;
38
+ sources: Set<string>;
39
+ userTypes: Set<string>;
40
+ timeWindow: 'all' | '1m' | '5m' | '15m' | '1h';
41
+ payloadComplexity: 'all' | 'none' | 'simple' | 'heavy';
42
+ hasRevenue: boolean;
43
+ hasItems: boolean;
44
+ hasUserProps: boolean;
45
+ hasParams: boolean;
46
+ onlyDuplicates: boolean;
47
+ onlyConversions: boolean;
48
+ sortBy: 'time_desc' | 'time_asc' | 'revenue_desc' | 'count_desc';
49
+ }
35
50
  export interface NetworkLog {
36
51
  id: number;
37
52
  url: string;
@@ -192,6 +207,10 @@ export interface InspectorContextValue {
192
207
  })[];
193
208
  analyticsSearch: string;
194
209
  setAnalyticsSearch: React.Dispatch<React.SetStateAction<string>>;
210
+ analyticsFilters: AnalyticsFilters;
211
+ setAnalyticsFilters: React.Dispatch<React.SetStateAction<AnalyticsFilters>>;
212
+ isAnalyticsFilterApplied: boolean;
213
+ resetAnalyticsFilters: () => void;
195
214
  newEventIds: Set<number>;
196
215
  isAnalyticsLayoutReady: boolean;
197
216
  setIsAnalyticsLayoutReady: React.Dispatch<React.SetStateAction<boolean>>;