react-native-inapp-inspector 1.1.13 → 1.1.15

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 (250) hide show
  1. package/README.md +9 -34
  2. package/dist/commonjs/assets/svgAssets.d.ts +3 -0
  3. package/dist/commonjs/assets/svgAssets.js +17 -0
  4. package/dist/commonjs/components/AnalyticsEventCard.d.ts +1 -14
  5. package/dist/commonjs/components/AnalyticsEventCard.js +120 -50
  6. package/dist/commonjs/components/AnalyticsGraph.d.ts +2 -6
  7. package/dist/commonjs/components/AnalyticsGraph.js +8 -8
  8. package/dist/commonjs/components/AnalyticsTabView.d.ts +15 -0
  9. package/dist/commonjs/components/AnalyticsTabView.js +157 -0
  10. package/dist/commonjs/components/AnimatedEntrance.d.ts +1 -1
  11. package/dist/commonjs/components/AnimatedEntrance.js +2 -2
  12. package/dist/commonjs/components/ApiDetailView.d.ts +22 -0
  13. package/dist/commonjs/components/ApiDetailView.js +304 -0
  14. package/dist/commonjs/components/ApisTabView.d.ts +33 -0
  15. package/dist/commonjs/components/ApisTabView.js +235 -0
  16. package/dist/commonjs/components/CodeSnippet.d.ts +1 -5
  17. package/dist/commonjs/components/CodeSnippet.js +34 -34
  18. package/dist/commonjs/components/ConsoleLogCard.d.ts +1 -8
  19. package/dist/commonjs/components/ConsoleLogCard.js +262 -442
  20. package/dist/commonjs/components/ConsoleLogDetailView.d.ts +9 -0
  21. package/dist/commonjs/components/ConsoleLogDetailView.js +278 -0
  22. package/dist/commonjs/components/ConsoleLogsTabView.d.ts +24 -0
  23. package/dist/commonjs/components/ConsoleLogsTabView.js +354 -0
  24. package/dist/commonjs/components/DiffViewer.js +4 -2
  25. package/dist/commonjs/components/DomainHeader.js +66 -41
  26. package/dist/commonjs/components/EmptyState.d.ts +2 -2
  27. package/dist/commonjs/components/EmptyState.js +2 -2
  28. package/dist/commonjs/components/EndOfListFooter.d.ts +8 -0
  29. package/dist/commonjs/components/EndOfListFooter.js +90 -0
  30. package/dist/commonjs/components/ErrorBoundary.d.ts +5 -14
  31. package/dist/commonjs/components/ErrorBoundary.js +28 -28
  32. package/dist/commonjs/components/FloatingBubble.d.ts +14 -0
  33. package/dist/commonjs/components/FloatingBubble.js +75 -0
  34. package/dist/commonjs/components/HeadersSection.js +5 -3
  35. package/dist/commonjs/components/HighlightText.d.ts +1 -1
  36. package/dist/commonjs/components/HighlightText.js +5 -7
  37. package/dist/commonjs/components/Inspector/AnalyticsTab.d.ts +3 -0
  38. package/dist/commonjs/components/Inspector/AnalyticsTab.js +232 -0
  39. package/dist/commonjs/components/Inspector/ConsoleTab.d.ts +3 -0
  40. package/dist/commonjs/components/Inspector/ConsoleTab.js +410 -0
  41. package/dist/commonjs/components/Inspector/FabLauncher.d.ts +3 -0
  42. package/dist/commonjs/components/Inspector/FabLauncher.js +54 -0
  43. package/dist/commonjs/components/Inspector/InsightsDashboard.d.ts +3 -0
  44. package/dist/commonjs/components/Inspector/InsightsDashboard.js +619 -0
  45. package/dist/commonjs/components/Inspector/InspectorContext.d.ts +5 -0
  46. package/dist/commonjs/components/Inspector/InspectorContext.js +18 -0
  47. package/dist/commonjs/components/Inspector/InspectorHeader.d.ts +3 -0
  48. package/dist/commonjs/components/Inspector/InspectorHeader.js +452 -0
  49. package/dist/commonjs/components/Inspector/LogDetail.d.ts +3 -0
  50. package/dist/commonjs/components/Inspector/LogDetail.js +963 -0
  51. package/dist/commonjs/components/Inspector/MainScreen.d.ts +3 -0
  52. package/dist/commonjs/components/Inspector/MainScreen.js +68 -0
  53. package/dist/commonjs/components/Inspector/NavigationTracker.d.ts +3 -0
  54. package/dist/commonjs/components/Inspector/NavigationTracker.js +12 -0
  55. package/dist/commonjs/components/Inspector/NetworkDetail.d.ts +3 -0
  56. package/dist/commonjs/components/Inspector/NetworkDetail.js +405 -0
  57. package/dist/commonjs/components/Inspector/NetworkTab.d.ts +3 -0
  58. package/dist/commonjs/components/Inspector/NetworkTab.js +281 -0
  59. package/dist/commonjs/components/Inspector/ReduxTab.d.ts +3 -0
  60. package/dist/commonjs/components/Inspector/ReduxTab.js +75 -0
  61. package/dist/commonjs/components/Inspector/SettingsPanel.d.ts +3 -0
  62. package/dist/commonjs/components/Inspector/SettingsPanel.js +1476 -0
  63. package/dist/commonjs/components/Inspector/TabBar.d.ts +3 -0
  64. package/dist/commonjs/components/Inspector/TabBar.js +95 -0
  65. package/dist/commonjs/components/Inspector/WebViewTab.d.ts +3 -0
  66. package/dist/commonjs/components/Inspector/WebViewTab.js +757 -0
  67. package/dist/commonjs/components/InspectorHeader.d.ts +19 -0
  68. package/dist/commonjs/components/InspectorHeader.js +329 -0
  69. package/dist/commonjs/components/InspectorTabBar.d.ts +16 -0
  70. package/dist/commonjs/components/InspectorTabBar.js +90 -0
  71. package/dist/commonjs/components/JsonViewer.d.ts +4 -1
  72. package/dist/commonjs/components/JsonViewer.js +110 -171
  73. package/dist/commonjs/components/LogCard.js +109 -86
  74. package/dist/commonjs/components/MetaAccordion.d.ts +1 -10
  75. package/dist/commonjs/components/MetaAccordion.js +23 -21
  76. package/dist/commonjs/components/NavigationTracker.d.ts +7 -0
  77. package/dist/commonjs/components/NavigationTracker.js +76 -0
  78. package/dist/commonjs/components/NetworkIcons.d.ts +6 -0
  79. package/dist/commonjs/components/NetworkIcons.js +54 -8
  80. package/dist/commonjs/components/ReduxTabView.d.ts +9 -0
  81. package/dist/commonjs/components/ReduxTabView.js +56 -0
  82. package/dist/commonjs/components/ReduxTreeView.js +241 -200
  83. package/dist/commonjs/components/SegmentedTabs.d.ts +15 -0
  84. package/dist/commonjs/components/SegmentedTabs.js +52 -0
  85. package/dist/commonjs/components/SettingsView.d.ts +13 -0
  86. package/dist/commonjs/components/SettingsView.js +328 -0
  87. package/dist/commonjs/components/TouchableScale.d.ts +2 -2
  88. package/dist/commonjs/components/TouchableScale.js +2 -2
  89. package/dist/commonjs/components/TreeNode.js +2 -2
  90. package/dist/commonjs/constants/index.js +1 -12
  91. package/dist/commonjs/constants/version.d.ts +1 -1
  92. package/dist/commonjs/constants/version.js +1 -1
  93. package/dist/commonjs/customHooks/analyticsLogger.d.ts +8 -0
  94. package/dist/commonjs/customHooks/analyticsLogger.js +42 -1
  95. package/dist/commonjs/customHooks/consoleLogger.js +137 -13
  96. package/dist/commonjs/customHooks/networkLogger.d.ts +0 -1
  97. package/dist/commonjs/customHooks/networkLogger.js +0 -1
  98. package/dist/commonjs/customHooks/reduxLogger.d.ts +2 -9
  99. package/dist/commonjs/enums/index.d.ts +39 -0
  100. package/dist/commonjs/enums/index.js +50 -0
  101. package/dist/commonjs/helpers/index.d.ts +27 -1
  102. package/dist/commonjs/helpers/index.js +187 -12
  103. package/dist/commonjs/helpers/settingsStore.d.ts +2 -24
  104. package/dist/commonjs/i18n/en.json +144 -0
  105. package/dist/commonjs/i18n/index.d.ts +2 -0
  106. package/dist/commonjs/i18n/index.js +27 -0
  107. package/dist/commonjs/i18n/locales/en.json +314 -0
  108. package/dist/commonjs/index.d.ts +2 -3
  109. package/dist/commonjs/index.js +207 -4927
  110. package/dist/commonjs/styles/AppColors.d.ts +148 -0
  111. package/dist/commonjs/styles/AppColors.js +176 -0
  112. package/dist/commonjs/styles/common.d.ts +3 -0
  113. package/dist/commonjs/styles/common.js +201 -0
  114. package/dist/commonjs/styles/index.d.ts +219 -435
  115. package/dist/commonjs/styles/index.js +312 -488
  116. package/dist/commonjs/types/enums.d.ts +9 -0
  117. package/dist/commonjs/types/enums.js +4 -0
  118. package/dist/commonjs/types/index.d.ts +4 -111
  119. package/dist/commonjs/types/index.js +16 -0
  120. package/dist/commonjs/types/interfaces.d.ts +337 -0
  121. package/dist/commonjs/types/interfaces.js +2 -0
  122. package/dist/esm/assets/svgAssets.d.ts +3 -0
  123. package/dist/esm/assets/svgAssets.js +14 -0
  124. package/dist/esm/components/AnalyticsEventCard.d.ts +1 -14
  125. package/dist/esm/components/AnalyticsEventCard.js +118 -48
  126. package/dist/esm/components/AnalyticsGraph.d.ts +2 -6
  127. package/dist/esm/components/AnalyticsGraph.js +8 -8
  128. package/dist/esm/components/AnalyticsTabView.d.ts +15 -0
  129. package/dist/esm/components/AnalyticsTabView.js +151 -0
  130. package/dist/esm/components/AnimatedEntrance.d.ts +1 -1
  131. package/dist/esm/components/AnimatedEntrance.js +2 -2
  132. package/dist/esm/components/ApiDetailView.d.ts +22 -0
  133. package/dist/esm/components/ApiDetailView.js +264 -0
  134. package/dist/esm/components/ApisTabView.d.ts +33 -0
  135. package/dist/esm/components/ApisTabView.js +196 -0
  136. package/dist/esm/components/CodeSnippet.d.ts +1 -5
  137. package/dist/esm/components/CodeSnippet.js +34 -34
  138. package/dist/esm/components/ConsoleLogCard.d.ts +1 -8
  139. package/dist/esm/components/ConsoleLogCard.js +262 -409
  140. package/dist/esm/components/ConsoleLogDetailView.d.ts +9 -0
  141. package/dist/esm/components/ConsoleLogDetailView.js +271 -0
  142. package/dist/esm/components/ConsoleLogsTabView.d.ts +24 -0
  143. package/dist/esm/components/ConsoleLogsTabView.js +348 -0
  144. package/dist/esm/components/DiffViewer.js +4 -2
  145. package/dist/esm/components/DomainHeader.js +66 -41
  146. package/dist/esm/components/EmptyState.d.ts +2 -2
  147. package/dist/esm/components/EmptyState.js +2 -2
  148. package/dist/esm/components/EndOfListFooter.d.ts +8 -0
  149. package/dist/esm/components/EndOfListFooter.js +83 -0
  150. package/dist/esm/components/ErrorBoundary.d.ts +5 -14
  151. package/dist/esm/components/ErrorBoundary.js +29 -29
  152. package/dist/esm/components/FloatingBubble.d.ts +14 -0
  153. package/dist/esm/components/FloatingBubble.js +68 -0
  154. package/dist/esm/components/HeadersSection.js +5 -3
  155. package/dist/esm/components/HighlightText.d.ts +1 -1
  156. package/dist/esm/components/HighlightText.js +5 -7
  157. package/dist/esm/components/Inspector/AnalyticsTab.d.ts +3 -0
  158. package/dist/esm/components/Inspector/AnalyticsTab.js +194 -0
  159. package/dist/esm/components/Inspector/ConsoleTab.d.ts +3 -0
  160. package/dist/esm/components/Inspector/ConsoleTab.js +372 -0
  161. package/dist/esm/components/Inspector/FabLauncher.d.ts +3 -0
  162. package/dist/esm/components/Inspector/FabLauncher.js +49 -0
  163. package/dist/esm/components/Inspector/InsightsDashboard.d.ts +3 -0
  164. package/dist/esm/components/Inspector/InsightsDashboard.js +614 -0
  165. package/dist/esm/components/Inspector/InspectorContext.d.ts +5 -0
  166. package/dist/esm/components/Inspector/InspectorContext.js +13 -0
  167. package/dist/esm/components/Inspector/InspectorHeader.d.ts +3 -0
  168. package/dist/esm/components/Inspector/InspectorHeader.js +447 -0
  169. package/dist/esm/components/Inspector/LogDetail.d.ts +3 -0
  170. package/dist/esm/components/Inspector/LogDetail.js +925 -0
  171. package/dist/esm/components/Inspector/MainScreen.d.ts +3 -0
  172. package/dist/esm/components/Inspector/MainScreen.js +63 -0
  173. package/dist/esm/components/Inspector/NavigationTracker.d.ts +3 -0
  174. package/dist/esm/components/Inspector/NavigationTracker.js +10 -0
  175. package/dist/esm/components/Inspector/NetworkDetail.d.ts +3 -0
  176. package/dist/esm/components/Inspector/NetworkDetail.js +367 -0
  177. package/dist/esm/components/Inspector/NetworkTab.d.ts +3 -0
  178. package/dist/esm/components/Inspector/NetworkTab.js +243 -0
  179. package/dist/esm/components/Inspector/ReduxTab.d.ts +3 -0
  180. package/dist/esm/components/Inspector/ReduxTab.js +70 -0
  181. package/dist/esm/components/Inspector/SettingsPanel.d.ts +3 -0
  182. package/dist/esm/components/Inspector/SettingsPanel.js +1438 -0
  183. package/dist/esm/components/Inspector/TabBar.d.ts +3 -0
  184. package/dist/esm/components/Inspector/TabBar.js +90 -0
  185. package/dist/esm/components/Inspector/WebViewTab.d.ts +3 -0
  186. package/dist/esm/components/Inspector/WebViewTab.js +752 -0
  187. package/dist/esm/components/InspectorHeader.d.ts +19 -0
  188. package/dist/esm/components/InspectorHeader.js +323 -0
  189. package/dist/esm/components/InspectorTabBar.d.ts +16 -0
  190. package/dist/esm/components/InspectorTabBar.js +84 -0
  191. package/dist/esm/components/JsonViewer.d.ts +4 -1
  192. package/dist/esm/components/JsonViewer.js +111 -172
  193. package/dist/esm/components/LogCard.js +111 -88
  194. package/dist/esm/components/MetaAccordion.d.ts +1 -10
  195. package/dist/esm/components/MetaAccordion.js +23 -21
  196. package/dist/esm/components/NavigationTracker.d.ts +7 -0
  197. package/dist/esm/components/NavigationTracker.js +39 -0
  198. package/dist/esm/components/NetworkIcons.d.ts +6 -0
  199. package/dist/esm/components/NetworkIcons.js +46 -6
  200. package/dist/esm/components/ReduxTabView.d.ts +9 -0
  201. package/dist/esm/components/ReduxTabView.js +50 -0
  202. package/dist/esm/components/ReduxTreeView.js +243 -202
  203. package/dist/esm/components/SegmentedTabs.d.ts +15 -0
  204. package/dist/esm/components/SegmentedTabs.js +47 -0
  205. package/dist/esm/components/SettingsView.d.ts +13 -0
  206. package/dist/esm/components/SettingsView.js +321 -0
  207. package/dist/esm/components/TouchableScale.d.ts +2 -2
  208. package/dist/esm/components/TouchableScale.js +2 -2
  209. package/dist/esm/components/TreeNode.js +2 -2
  210. package/dist/esm/constants/index.js +1 -12
  211. package/dist/esm/constants/version.d.ts +1 -1
  212. package/dist/esm/constants/version.js +1 -1
  213. package/dist/esm/customHooks/analyticsLogger.d.ts +8 -0
  214. package/dist/esm/customHooks/analyticsLogger.js +37 -0
  215. package/dist/esm/customHooks/consoleLogger.js +137 -13
  216. package/dist/esm/customHooks/networkLogger.d.ts +0 -1
  217. package/dist/esm/customHooks/networkLogger.js +0 -1
  218. package/dist/esm/customHooks/reduxLogger.d.ts +2 -9
  219. package/dist/esm/enums/index.d.ts +39 -0
  220. package/dist/esm/enums/index.js +47 -0
  221. package/dist/esm/helpers/index.d.ts +27 -1
  222. package/dist/esm/helpers/index.js +180 -11
  223. package/dist/esm/helpers/settingsStore.d.ts +2 -24
  224. package/dist/esm/i18n/en.json +144 -0
  225. package/dist/esm/i18n/index.d.ts +2 -0
  226. package/dist/esm/i18n/index.js +22 -0
  227. package/dist/esm/i18n/locales/en.json +314 -0
  228. package/dist/esm/index.d.ts +2 -3
  229. package/dist/esm/index.js +207 -4923
  230. package/dist/esm/styles/AppColors.d.ts +148 -0
  231. package/dist/esm/styles/AppColors.js +176 -0
  232. package/dist/esm/styles/common.d.ts +3 -0
  233. package/dist/esm/styles/common.js +197 -0
  234. package/dist/esm/styles/index.d.ts +219 -435
  235. package/dist/esm/styles/index.js +312 -488
  236. package/dist/esm/types/enums.d.ts +9 -0
  237. package/dist/esm/types/enums.js +3 -0
  238. package/dist/esm/types/index.d.ts +4 -111
  239. package/dist/esm/types/index.js +2 -1
  240. package/dist/esm/types/interfaces.d.ts +337 -0
  241. package/dist/esm/types/interfaces.js +1 -0
  242. package/example/App.tsx +88 -1
  243. package/example/android/app/build.gradle +29 -1
  244. package/example/android/app/src/main/java/com/example/MainApplication.kt +25 -0
  245. package/example/android/build.gradle +31 -4
  246. package/example/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  247. package/example/android/gradle.properties +1 -0
  248. package/example/android/settings.gradle +20 -1
  249. package/example/package-lock.json +1 -1
  250. package/package.json +3 -1
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { Animated } from 'react-native';
3
+ import { NetworkLog, AnalyticsEvent, ConsoleLog } from '../types';
4
+ interface InspectorHeaderProps {
5
+ headerTopPadding: number;
6
+ selected: NetworkLog | null;
7
+ selectedEvent: AnalyticsEvent | null;
8
+ selectedConsoleLog: ConsoleLog | null;
9
+ detailTitle: string;
10
+ showHeaderInfo: boolean;
11
+ clearAnim: Animated.Value;
12
+ onBack: () => void;
13
+ onToggleHeaderInfo: () => void;
14
+ onClearAll: () => void;
15
+ onOpenSettings: () => void;
16
+ onCloseModal: () => void;
17
+ }
18
+ export declare const InspectorHeader: React.FC<InspectorHeaderProps>;
19
+ export default InspectorHeader;
@@ -0,0 +1,329 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InspectorHeader = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_native_1 = require("react-native");
9
+ const react_native_linear_gradient_1 = __importDefault(require("react-native-linear-gradient"));
10
+ const react_i18next_1 = require("react-i18next");
11
+ const TouchableScale_1 = __importDefault(require("./TouchableScale"));
12
+ const NetworkIcons_1 = require("./NetworkIcons");
13
+ const AppColors_1 = require("../styles/AppColors");
14
+ const AppFonts_1 = require("../styles/AppFonts");
15
+ const styles_1 = __importDefault(require("../styles"));
16
+ const constants_1 = require("../constants");
17
+ const helpers_1 = require("../helpers");
18
+ exports.InspectorHeader = react_1.default.memo(({ headerTopPadding, selected, selectedEvent, selectedConsoleLog, detailTitle, showHeaderInfo, clearAnim, onBack, onToggleHeaderInfo, onClearAll, onOpenSettings, onCloseModal, }) => {
19
+ const { t } = (0, react_i18next_1.useTranslation)();
20
+ const isNoDetailSelected = selected == null && selectedEvent == null && selectedConsoleLog == null;
21
+ return (<react_native_linear_gradient_1.default colors={[AppColors_1.AppColors.purple, AppColors_1.AppColors.gradientPurpleStart]} style={styles_1.default.headerGradient}>
22
+ <react_native_1.View style={{ paddingTop: headerTopPadding, width: '100%' }}>
23
+ <react_native_1.View style={styles_1.default.header}>
24
+ <react_native_1.View style={[
25
+ styles_1.default.headerLeft,
26
+ {
27
+ flexDirection: 'row',
28
+ alignItems: 'center',
29
+ gap: 16,
30
+ flex: isNoDetailSelected ? 5 : 1,
31
+ },
32
+ ]}>
33
+ <TouchableScale_1.default onPress={onBack} hitSlop={15} style={[
34
+ {
35
+ width: 38,
36
+ height: 38,
37
+ borderRadius: 19,
38
+ alignItems: 'center',
39
+ justifyContent: 'center',
40
+ backgroundColor: 'rgba(255,255,255,0.18)',
41
+ borderWidth: 1,
42
+ borderColor: 'rgba(255,255,255,0.30)',
43
+ },
44
+ isNoDetailSelected && { display: 'none' },
45
+ ]}>
46
+ <react_native_1.View style={{
47
+ position: 'absolute',
48
+ width: 48,
49
+ height: 48,
50
+ borderRadius: 24,
51
+ backgroundColor: 'rgba(255,255,255,0.10)',
52
+ }}/>
53
+ <NetworkIcons_1.WhiteBackNavigation />
54
+ </TouchableScale_1.default>
55
+
56
+ {isNoDetailSelected ? (<TouchableScale_1.default onPress={onToggleHeaderInfo} style={{
57
+ flexDirection: 'row',
58
+ alignItems: 'center',
59
+ gap: 10,
60
+ flex: 1,
61
+ }}>
62
+ <react_native_1.View style={{
63
+ width: 38,
64
+ height: 38,
65
+ borderRadius: 19,
66
+ backgroundColor: 'rgba(255,255,255,0.13)',
67
+ borderWidth: 1.5,
68
+ borderColor: 'rgba(255,255,255,0.25)',
69
+ alignItems: 'center',
70
+ justifyContent: 'center',
71
+ }}>
72
+ <NetworkIcons_1.BrandCircleIcon size={26} color={AppColors_1.AppColors.white}/>
73
+ </react_native_1.View>
74
+ <react_native_1.View style={styles_1.default.columnFlex1}>
75
+ <react_native_1.View style={styles_1.default.rowGap4}>
76
+ <react_native_1.Text style={[
77
+ styles_1.default.headerTitle,
78
+ { fontSize: 16, color: AppColors_1.AppColors.white },
79
+ ]}>
80
+ {t('header.title')}
81
+ </react_native_1.Text>
82
+ <react_native_1.View style={{
83
+ transform: [
84
+ { rotate: showHeaderInfo ? '180deg' : '0deg' },
85
+ ],
86
+ }}>
87
+ <NetworkIcons_1.ChevronIcon color="rgba(255,255,255,0.7)" size={12}/>
88
+ </react_native_1.View>
89
+ </react_native_1.View>
90
+
91
+ {showHeaderInfo && (<react_native_1.View style={{
92
+ marginTop: 4,
93
+ padding: 8,
94
+ backgroundColor: 'rgba(0,0,0,0.25)',
95
+ borderRadius: 8,
96
+ borderWidth: 1,
97
+ borderColor: 'rgba(255,255,255,0.15)',
98
+ gap: 4,
99
+ }}>
100
+ <react_native_1.Text style={{
101
+ fontFamily: AppFonts_1.AppFonts.interBold,
102
+ fontSize: 11,
103
+ color: AppColors_1.AppColors.white,
104
+ }}>
105
+ {(0, helpers_1.getAppName)()}
106
+ </react_native_1.Text>
107
+ <react_native_1.View style={{
108
+ flexDirection: 'row',
109
+ alignItems: 'center',
110
+ gap: 6,
111
+ }}>
112
+ <react_native_1.Text style={{
113
+ fontFamily: AppFonts_1.AppFonts.interMedium,
114
+ fontSize: 10,
115
+ color: 'rgba(255,255,255,0.8)',
116
+ }}>
117
+ {t('header.engine')}
118
+ </react_native_1.Text>
119
+ <react_native_1.View style={{
120
+ paddingHorizontal: 6,
121
+ paddingVertical: 1,
122
+ borderRadius: 4,
123
+ backgroundColor: 'rgba(255,255,255,0.2)',
124
+ }}>
125
+ <react_native_1.Text style={{
126
+ fontFamily: AppFonts_1.AppFonts.interBold,
127
+ fontSize: 9,
128
+ color: AppColors_1.AppColors.white,
129
+ }}>
130
+ v{constants_1.LIB_VERSION}
131
+ </react_native_1.Text>
132
+ </react_native_1.View>
133
+ </react_native_1.View>
134
+ </react_native_1.View>)}
135
+ </react_native_1.View>
136
+ </TouchableScale_1.default>) : null}
137
+ </react_native_1.View>
138
+
139
+ {!isNoDetailSelected && (<react_native_1.View style={styles_1.default.headerCenter}>
140
+ {selected != null ? (<react_native_1.View style={styles_1.default.headerDetailCenter}>
141
+ <react_native_1.View style={styles_1.default.headerDetailRow}>
142
+ <react_native_1.View style={[
143
+ styles_1.default.headerMethodBadge,
144
+ {
145
+ backgroundColor: constants_1.METHOD_COLORS[selected.method] ??
146
+ AppColors_1.AppColors.grayText,
147
+ },
148
+ ]}>
149
+ <react_native_1.Text style={styles_1.default.headerMethodText}>
150
+ {selected.method}
151
+ </react_native_1.Text>
152
+ </react_native_1.View>
153
+ <react_native_1.Text style={styles_1.default.headerDetailTitle} numberOfLines={1} ellipsizeMode="middle">
154
+ {detailTitle}
155
+ </react_native_1.Text>
156
+ </react_native_1.View>
157
+ <react_native_1.View style={styles_1.default.headerDetailSubRow}>
158
+ <react_native_1.View style={{
159
+ flexDirection: 'row',
160
+ alignItems: 'center',
161
+ gap: 5,
162
+ paddingHorizontal: 8,
163
+ paddingVertical: 3,
164
+ borderRadius: 20,
165
+ backgroundColor: `${(0, helpers_1.getStatusColor)(selected.status)}26`,
166
+ borderWidth: 1,
167
+ borderColor: `${(0, helpers_1.getStatusColor)(selected.status)}55`,
168
+ }}>
169
+ <react_native_1.View style={[
170
+ styles_1.default.headerStatusDot,
171
+ {
172
+ backgroundColor: (0, helpers_1.getStatusColor)(selected.status),
173
+ },
174
+ ]}/>
175
+ <react_native_1.Text style={[
176
+ styles_1.default.headerSubTitle,
177
+ { fontFamily: AppFonts_1.AppFonts.interBold },
178
+ ]}>
179
+ {selected.status === 0
180
+ ? 'Failed'
181
+ : selected.status ?? 'Pending'}
182
+ </react_native_1.Text>
183
+ </react_native_1.View>
184
+ <react_native_1.View style={{
185
+ flexDirection: 'row',
186
+ alignItems: 'center',
187
+ gap: 4,
188
+ paddingHorizontal: 8,
189
+ paddingVertical: 3,
190
+ borderRadius: 20,
191
+ backgroundColor: 'rgba(255,255,255,0.16)',
192
+ }}>
193
+ <NetworkIcons_1.ClockIcon color={AppColors_1.AppColors.white} size={11}/>
194
+ <react_native_1.Text style={styles_1.default.headerSubTitle}>
195
+ {selected.duration != null
196
+ ? `${selected.duration}ms`
197
+ : '—'}
198
+ </react_native_1.Text>
199
+ </react_native_1.View>
200
+ </react_native_1.View>
201
+ </react_native_1.View>) : selectedEvent != null ? (<react_native_1.View style={styles_1.default.headerDetailCenter}>
202
+ <react_native_1.View style={styles_1.default.headerDetailRow}>
203
+ <react_native_1.View style={[
204
+ styles_1.default.headerMethodBadge,
205
+ {
206
+ backgroundColor: selectedEvent.source === 'firebase'
207
+ ? 'rgba(224,123,26,0.3)'
208
+ : 'rgba(124,92,191,0.3)',
209
+ },
210
+ ]}>
211
+ <react_native_1.Text style={styles_1.default.headerMethodText}>
212
+ {selectedEvent.source === 'firebase' ? 'FB' : 'MAN'}
213
+ </react_native_1.Text>
214
+ </react_native_1.View>
215
+ <react_native_1.Text style={styles_1.default.headerDetailTitle} numberOfLines={1} ellipsizeMode="middle">
216
+ {selectedEvent.name}
217
+ </react_native_1.Text>
218
+ </react_native_1.View>
219
+ <react_native_1.View style={styles_1.default.headerDetailSubRow}>
220
+ <react_native_1.View style={[
221
+ styles_1.default.headerStatusDot,
222
+ {
223
+ backgroundColor: selectedEvent.source === 'firebase'
224
+ ? AppColors_1.AppColors.amber
225
+ : AppColors_1.AppColors.purple,
226
+ },
227
+ ]}/>
228
+ <react_native_1.Text style={styles_1.default.headerSubTitle}>
229
+ {Object.keys(selectedEvent.params ?? {}).length} param
230
+ {Object.keys(selectedEvent.params ?? {}).length !== 1
231
+ ? 's'
232
+ : ''}
233
+ {' · '}
234
+ {selectedEvent.source}
235
+ </react_native_1.Text>
236
+ </react_native_1.View>
237
+ </react_native_1.View>) : selectedConsoleLog != null ? (<react_native_1.View style={styles_1.default.headerDetailCenter}>
238
+ <react_native_1.View style={styles_1.default.headerDetailRow}>
239
+ <react_native_1.View style={[
240
+ styles_1.default.headerMethodBadge,
241
+ {
242
+ backgroundColor: selectedConsoleLog.type === 'error'
243
+ ? AppColors_1.AppColors.errorColor
244
+ : selectedConsoleLog.type === 'warn'
245
+ ? AppColors_1.AppColors.lightOrange
246
+ : AppColors_1.AppColors.purple,
247
+ },
248
+ ]}>
249
+ <react_native_1.Text style={styles_1.default.headerMethodText}>
250
+ {selectedConsoleLog.type?.toUpperCase() || 'LOG'}
251
+ </react_native_1.Text>
252
+ </react_native_1.View>
253
+ <react_native_1.Text style={styles_1.default.headerDetailTitle} numberOfLines={1} ellipsizeMode="middle">
254
+ {t('details.console_log')} #{selectedConsoleLog.id + 1}
255
+ </react_native_1.Text>
256
+ </react_native_1.View>
257
+ <react_native_1.View style={styles_1.default.headerDetailSubRow}>
258
+ <react_native_1.Text style={styles_1.default.headerSubTitle}>
259
+ console.
260
+ {selectedConsoleLog.sourceMethod ||
261
+ selectedConsoleLog.type ||
262
+ 'log'}
263
+ </react_native_1.Text>
264
+ </react_native_1.View>
265
+ </react_native_1.View>) : null}
266
+ </react_native_1.View>)}
267
+
268
+ <react_native_1.View style={[
269
+ styles_1.default.headerRight,
270
+ isNoDetailSelected && {
271
+ flexShrink: 0,
272
+ minWidth: 116,
273
+ },
274
+ ]}>
275
+ {isNoDetailSelected && (<TouchableScale_1.default onPress={() => {
276
+ react_native_1.Alert.alert(t('header.clear_all'), t('header.clear_all_confirm'), [
277
+ { text: t('header.cancel'), style: 'cancel' },
278
+ {
279
+ text: t('header.clear'),
280
+ onPress: onClearAll,
281
+ style: 'destructive',
282
+ },
283
+ ]);
284
+ }} hitSlop={15} style={[
285
+ styles_1.default.closeButtonSquare,
286
+ {
287
+ marginRight: 8,
288
+ backgroundColor: 'rgba(255,255,255,0.15)',
289
+ },
290
+ ]}>
291
+ <react_native_1.Animated.View style={{
292
+ transform: [
293
+ {
294
+ rotate: clearAnim.interpolate({
295
+ inputRange: [0, 1],
296
+ outputRange: ['0deg', '-25deg'],
297
+ }),
298
+ },
299
+ {
300
+ scale: clearAnim.interpolate({
301
+ inputRange: [0, 0.5, 1],
302
+ outputRange: [1, 1.25, 1],
303
+ }),
304
+ },
305
+ ],
306
+ }}>
307
+ <NetworkIcons_1.WipeIcon color={AppColors_1.AppColors.white} size={16}/>
308
+ </react_native_1.Animated.View>
309
+ </TouchableScale_1.default>)}
310
+
311
+ {isNoDetailSelected && (<TouchableScale_1.default onPress={onOpenSettings} hitSlop={15} style={[
312
+ styles_1.default.closeButtonSquare,
313
+ {
314
+ marginRight: 8,
315
+ backgroundColor: 'rgba(255,255,255,0.15)',
316
+ },
317
+ ]}>
318
+ <NetworkIcons_1.SettingsIcon color={AppColors_1.AppColors.white} size={16}/>
319
+ </TouchableScale_1.default>)}
320
+
321
+ <TouchableScale_1.default onPress={onCloseModal} hitSlop={15} style={styles_1.default.closeButtonSquare}>
322
+ <NetworkIcons_1.CloseWhite size={16}/>
323
+ </TouchableScale_1.default>
324
+ </react_native_1.View>
325
+ </react_native_1.View>
326
+ </react_native_1.View>
327
+ </react_native_linear_gradient_1.default>);
328
+ });
329
+ exports.default = exports.InspectorHeader;
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { Animated } from 'react-native';
3
+ import { ActiveTab } from '../types';
4
+ interface InspectorTabBarProps {
5
+ activeTab: ActiveTab;
6
+ tabVisibility: Record<string, boolean>;
7
+ apisCount: number;
8
+ logsCount: number;
9
+ analyticsCount: number;
10
+ hasUnreadApis: boolean;
11
+ hasUnreadLogs: boolean;
12
+ unreadPulseAnim: Animated.Value;
13
+ onSelectTab: (tabKey: ActiveTab) => void;
14
+ }
15
+ export declare const InspectorTabBar: React.FC<InspectorTabBarProps>;
16
+ export default InspectorTabBar;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.InspectorTabBar = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_native_1 = require("react-native");
9
+ const react_i18next_1 = require("react-i18next");
10
+ const TouchableScale_1 = __importDefault(require("./TouchableScale"));
11
+ const NetworkIcons_1 = require("./NetworkIcons");
12
+ const enums_1 = require("../enums");
13
+ const AppColors_1 = require("../styles/AppColors");
14
+ const styles_1 = __importDefault(require("../styles"));
15
+ exports.InspectorTabBar = react_1.default.memo(({ activeTab, tabVisibility, apisCount, logsCount, analyticsCount, hasUnreadApis, hasUnreadLogs, unreadPulseAnim, onSelectTab, }) => {
16
+ const { t } = (0, react_i18next_1.useTranslation)();
17
+ const tabs = [
18
+ {
19
+ key: enums_1.InspectorTab.APIs,
20
+ label: t('tabs.apis'),
21
+ count: apisCount,
22
+ hasUnread: hasUnreadApis,
23
+ icon: (color) => <NetworkIcons_1.SignalIcon color={color} size={14}/>,
24
+ },
25
+ {
26
+ key: enums_1.InspectorTab.Logs,
27
+ label: t('tabs.logs'),
28
+ count: logsCount,
29
+ hasUnread: hasUnreadLogs,
30
+ icon: (color) => <NetworkIcons_1.TerminalIcon color={color} size={14}/>,
31
+ },
32
+ {
33
+ key: enums_1.InspectorTab.Analytics,
34
+ label: t('tabs.analytics'),
35
+ count: analyticsCount,
36
+ hasUnread: false,
37
+ icon: (color) => <NetworkIcons_1.AnalyticsIcon color={color} size={14}/>,
38
+ },
39
+ {
40
+ key: enums_1.InspectorTab.Redux,
41
+ label: t('tabs.redux'),
42
+ count: null,
43
+ hasUnread: false,
44
+ icon: (color) => (<react_native_1.View style={{ width: 14, height: 14, alignItems: 'center', justifyContent: 'center' }}>
45
+ <react_native_1.Text style={{ fontSize: 10, color, fontWeight: '700' }}>⚛︎</react_native_1.Text>
46
+ </react_native_1.View>),
47
+ },
48
+ ];
49
+ return (<react_native_1.View style={styles_1.default.tabBarContainer}>
50
+ <react_native_1.ScrollView horizontal showsHorizontalScrollIndicator={false} contentContainerStyle={{ paddingRight: 16 }}>
51
+ {tabs
52
+ .filter(tab => tabVisibility?.[tab.key])
53
+ .map(tab => {
54
+ const isActive = activeTab === tab.key;
55
+ const iconColor = isActive ? AppColors_1.AppColors.white : AppColors_1.AppColors.grayText;
56
+ const countLabel = tab.count > 99 ? '99+' : String(tab.count);
57
+ const showUnread = (tab.key === 'apis' && hasUnreadApis) ||
58
+ (tab.key === 'logs' && hasUnreadLogs);
59
+ return (<TouchableScale_1.default key={tab.key} onPress={() => onSelectTab(tab.key)} style={[
60
+ styles_1.default.contentTabButton,
61
+ isActive && styles_1.default.contentTabButtonActive,
62
+ ]}>
63
+ <react_native_1.View style={{
64
+ flexDirection: 'row',
65
+ alignItems: 'center',
66
+ gap: 6,
67
+ }}>
68
+ {typeof tab.icon === 'function' ? tab.icon(iconColor) : null}
69
+ <react_native_1.Text numberOfLines={1} ellipsizeMode="tail" style={[
70
+ styles_1.default.contentTabButtonText,
71
+ isActive && styles_1.default.contentTabButtonTextActive,
72
+ ]}>
73
+ {tab.label} {tab.count > 0 ? `(${countLabel})` : ''}
74
+ </react_native_1.Text>
75
+ {showUnread && (<react_native_1.Animated.View style={{
76
+ width: 6,
77
+ height: 6,
78
+ borderRadius: 3,
79
+ backgroundColor: AppColors_1.AppColors.errorColor,
80
+ marginLeft: 4,
81
+ alignSelf: 'center',
82
+ transform: [{ scale: unreadPulseAnim }],
83
+ }}/>)}
84
+ </react_native_1.View>
85
+ </TouchableScale_1.default>);
86
+ })}
87
+ </react_native_1.ScrollView>
88
+ </react_native_1.View>);
89
+ });
90
+ exports.default = exports.InspectorTabBar;
@@ -1,11 +1,14 @@
1
1
  import React from 'react';
2
- declare const JsonViewer: ({ data, search, forceOpen, defaultExpandDepth, wrap, fullHeight, onModeChange, }: {
2
+ declare const JsonViewer: ({ data, search, forceOpen, defaultExpandDepth, wrap, fullHeight, maxHeight, mode: externalMode, onModeChange, hideTabs, }: {
3
3
  data: unknown;
4
4
  search?: string;
5
5
  forceOpen?: boolean;
6
6
  defaultExpandDepth?: number;
7
7
  wrap?: boolean;
8
8
  fullHeight?: boolean;
9
+ maxHeight?: number;
10
+ mode?: "pretty" | "raw" | "table";
9
11
  onModeChange?: (mode: "pretty" | "raw" | "table") => void;
12
+ hideTabs?: boolean;
10
13
  }) => React.JSX.Element;
11
14
  export default JsonViewer;