react-native-inapp-inspector 1.1.14 → 1.1.16

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 (246) hide show
  1. package/README.md +133 -151
  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 +34 -51
  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/CopyButton.d.ts +1 -1
  25. package/dist/commonjs/components/CopyButton.js +4 -4
  26. package/dist/commonjs/components/DiffViewer.js +4 -2
  27. package/dist/commonjs/components/DomainHeader.js +66 -41
  28. package/dist/commonjs/components/EmptyState.d.ts +2 -2
  29. package/dist/commonjs/components/EmptyState.js +2 -2
  30. package/dist/commonjs/components/EndOfListFooter.d.ts +8 -0
  31. package/dist/commonjs/components/EndOfListFooter.js +89 -0
  32. package/dist/commonjs/components/ErrorBoundary.d.ts +5 -14
  33. package/dist/commonjs/components/ErrorBoundary.js +28 -28
  34. package/dist/commonjs/components/FloatingBubble.d.ts +14 -0
  35. package/dist/commonjs/components/FloatingBubble.js +75 -0
  36. package/dist/commonjs/components/HeadersSection.js +5 -3
  37. package/dist/commonjs/components/HighlightText.d.ts +1 -1
  38. package/dist/commonjs/components/HighlightText.js +5 -7
  39. package/dist/commonjs/components/Inspector/AnalyticsTab.d.ts +3 -0
  40. package/dist/commonjs/components/Inspector/AnalyticsTab.js +231 -0
  41. package/dist/commonjs/components/Inspector/ConsoleTab.d.ts +3 -0
  42. package/dist/commonjs/components/Inspector/ConsoleTab.js +410 -0
  43. package/dist/commonjs/components/Inspector/FabLauncher.d.ts +3 -0
  44. package/dist/commonjs/components/Inspector/FabLauncher.js +54 -0
  45. package/dist/commonjs/components/Inspector/InsightsDashboard.d.ts +3 -0
  46. package/dist/commonjs/components/Inspector/InsightsDashboard.js +619 -0
  47. package/dist/commonjs/components/Inspector/InspectorContext.d.ts +5 -0
  48. package/dist/commonjs/components/Inspector/InspectorContext.js +18 -0
  49. package/dist/commonjs/components/Inspector/InspectorHeader.d.ts +3 -0
  50. package/dist/commonjs/components/Inspector/InspectorHeader.js +452 -0
  51. package/dist/commonjs/components/Inspector/LogDetail.d.ts +3 -0
  52. package/dist/commonjs/components/Inspector/LogDetail.js +963 -0
  53. package/dist/commonjs/components/Inspector/MainScreen.d.ts +3 -0
  54. package/dist/commonjs/components/Inspector/MainScreen.js +68 -0
  55. package/dist/commonjs/components/Inspector/NavigationTracker.d.ts +3 -0
  56. package/dist/commonjs/components/Inspector/NavigationTracker.js +12 -0
  57. package/dist/commonjs/components/Inspector/NetworkDetail.d.ts +3 -0
  58. package/dist/commonjs/components/Inspector/NetworkDetail.js +405 -0
  59. package/dist/commonjs/components/Inspector/NetworkTab.d.ts +3 -0
  60. package/dist/commonjs/components/Inspector/NetworkTab.js +282 -0
  61. package/dist/commonjs/components/Inspector/ReduxTab.d.ts +3 -0
  62. package/dist/commonjs/components/Inspector/ReduxTab.js +75 -0
  63. package/dist/commonjs/components/Inspector/SettingsPanel.d.ts +3 -0
  64. package/dist/commonjs/components/Inspector/SettingsPanel.js +1476 -0
  65. package/dist/commonjs/components/Inspector/TabBar.d.ts +3 -0
  66. package/dist/commonjs/components/Inspector/TabBar.js +95 -0
  67. package/dist/commonjs/components/Inspector/WebViewTab.d.ts +3 -0
  68. package/dist/commonjs/components/Inspector/WebViewTab.js +757 -0
  69. package/dist/commonjs/components/InspectorHeader.d.ts +19 -0
  70. package/dist/commonjs/components/InspectorHeader.js +329 -0
  71. package/dist/commonjs/components/InspectorTabBar.d.ts +16 -0
  72. package/dist/commonjs/components/InspectorTabBar.js +90 -0
  73. package/dist/commonjs/components/JsonViewer.d.ts +5 -2
  74. package/dist/commonjs/components/JsonViewer.js +111 -172
  75. package/dist/commonjs/components/LogCard.js +109 -86
  76. package/dist/commonjs/components/MetaAccordion.d.ts +1 -10
  77. package/dist/commonjs/components/MetaAccordion.js +23 -21
  78. package/dist/commonjs/components/NavigationTracker.d.ts +7 -0
  79. package/dist/commonjs/components/NavigationTracker.js +76 -0
  80. package/dist/commonjs/components/NetworkIcons.d.ts +6 -0
  81. package/dist/commonjs/components/NetworkIcons.js +54 -8
  82. package/dist/commonjs/components/ReduxTabView.d.ts +9 -0
  83. package/dist/commonjs/components/ReduxTabView.js +56 -0
  84. package/dist/commonjs/components/ReduxTreeView.d.ts +2 -2
  85. package/dist/commonjs/components/ReduxTreeView.js +243 -203
  86. package/dist/commonjs/components/SegmentedTabs.d.ts +15 -0
  87. package/dist/commonjs/components/SegmentedTabs.js +52 -0
  88. package/dist/commonjs/components/SettingsView.d.ts +13 -0
  89. package/dist/commonjs/components/SettingsView.js +328 -0
  90. package/dist/commonjs/components/TouchableScale.d.ts +2 -2
  91. package/dist/commonjs/components/TouchableScale.js +2 -2
  92. package/dist/commonjs/components/TreeNode.js +2 -2
  93. package/dist/commonjs/constants/index.js +1 -12
  94. package/dist/commonjs/constants/version.d.ts +1 -1
  95. package/dist/commonjs/constants/version.js +1 -1
  96. package/dist/commonjs/customHooks/consoleLogger.js +137 -13
  97. package/dist/commonjs/customHooks/networkLogger.d.ts +0 -1
  98. package/dist/commonjs/customHooks/networkLogger.js +0 -1
  99. package/dist/commonjs/customHooks/reduxLogger.d.ts +2 -9
  100. package/dist/commonjs/enums/index.d.ts +39 -0
  101. package/dist/commonjs/enums/index.js +50 -0
  102. package/dist/commonjs/helpers/index.d.ts +27 -1
  103. package/dist/commonjs/helpers/index.js +187 -12
  104. package/dist/commonjs/helpers/settingsStore.d.ts +2 -24
  105. package/dist/commonjs/i18n/en.json +144 -0
  106. package/dist/commonjs/i18n/index.d.ts +2 -0
  107. package/dist/commonjs/i18n/index.js +27 -0
  108. package/dist/commonjs/i18n/locales/en.json +314 -0
  109. package/dist/commonjs/index.d.ts +1 -2
  110. package/dist/commonjs/index.js +196 -4800
  111. package/dist/commonjs/styles/AppColors.d.ts +148 -0
  112. package/dist/commonjs/styles/AppColors.js +176 -0
  113. package/dist/commonjs/styles/common.d.ts +3 -0
  114. package/dist/commonjs/styles/common.js +201 -0
  115. package/dist/commonjs/styles/index.d.ts +167 -442
  116. package/dist/commonjs/styles/index.js +239 -471
  117. package/dist/commonjs/types/enums.d.ts +9 -0
  118. package/dist/commonjs/types/enums.js +4 -0
  119. package/dist/commonjs/types/index.d.ts +4 -111
  120. package/dist/commonjs/types/index.js +16 -0
  121. package/dist/commonjs/types/interfaces.d.ts +337 -0
  122. package/dist/commonjs/types/interfaces.js +2 -0
  123. package/dist/esm/assets/svgAssets.d.ts +3 -0
  124. package/dist/esm/assets/svgAssets.js +14 -0
  125. package/dist/esm/components/AnalyticsEventCard.d.ts +1 -14
  126. package/dist/esm/components/AnalyticsEventCard.js +32 -49
  127. package/dist/esm/components/AnalyticsGraph.d.ts +2 -6
  128. package/dist/esm/components/AnalyticsGraph.js +8 -8
  129. package/dist/esm/components/AnalyticsTabView.d.ts +15 -0
  130. package/dist/esm/components/AnalyticsTabView.js +151 -0
  131. package/dist/esm/components/AnimatedEntrance.d.ts +1 -1
  132. package/dist/esm/components/AnimatedEntrance.js +2 -2
  133. package/dist/esm/components/ApiDetailView.d.ts +22 -0
  134. package/dist/esm/components/ApiDetailView.js +264 -0
  135. package/dist/esm/components/ApisTabView.d.ts +33 -0
  136. package/dist/esm/components/ApisTabView.js +196 -0
  137. package/dist/esm/components/CodeSnippet.d.ts +1 -5
  138. package/dist/esm/components/CodeSnippet.js +34 -34
  139. package/dist/esm/components/ConsoleLogCard.d.ts +1 -8
  140. package/dist/esm/components/ConsoleLogCard.js +262 -409
  141. package/dist/esm/components/ConsoleLogDetailView.d.ts +9 -0
  142. package/dist/esm/components/ConsoleLogDetailView.js +271 -0
  143. package/dist/esm/components/ConsoleLogsTabView.d.ts +24 -0
  144. package/dist/esm/components/ConsoleLogsTabView.js +348 -0
  145. package/dist/esm/components/CopyButton.d.ts +1 -1
  146. package/dist/esm/components/CopyButton.js +5 -5
  147. package/dist/esm/components/DiffViewer.js +4 -2
  148. package/dist/esm/components/DomainHeader.js +66 -41
  149. package/dist/esm/components/EmptyState.d.ts +2 -2
  150. package/dist/esm/components/EmptyState.js +2 -2
  151. package/dist/esm/components/EndOfListFooter.d.ts +8 -0
  152. package/dist/esm/components/EndOfListFooter.js +83 -0
  153. package/dist/esm/components/ErrorBoundary.d.ts +5 -14
  154. package/dist/esm/components/ErrorBoundary.js +29 -29
  155. package/dist/esm/components/FloatingBubble.d.ts +14 -0
  156. package/dist/esm/components/FloatingBubble.js +68 -0
  157. package/dist/esm/components/HeadersSection.js +5 -3
  158. package/dist/esm/components/HighlightText.d.ts +1 -1
  159. package/dist/esm/components/HighlightText.js +5 -7
  160. package/dist/esm/components/Inspector/AnalyticsTab.d.ts +3 -0
  161. package/dist/esm/components/Inspector/AnalyticsTab.js +193 -0
  162. package/dist/esm/components/Inspector/ConsoleTab.d.ts +3 -0
  163. package/dist/esm/components/Inspector/ConsoleTab.js +372 -0
  164. package/dist/esm/components/Inspector/FabLauncher.d.ts +3 -0
  165. package/dist/esm/components/Inspector/FabLauncher.js +49 -0
  166. package/dist/esm/components/Inspector/InsightsDashboard.d.ts +3 -0
  167. package/dist/esm/components/Inspector/InsightsDashboard.js +614 -0
  168. package/dist/esm/components/Inspector/InspectorContext.d.ts +5 -0
  169. package/dist/esm/components/Inspector/InspectorContext.js +13 -0
  170. package/dist/esm/components/Inspector/InspectorHeader.d.ts +3 -0
  171. package/dist/esm/components/Inspector/InspectorHeader.js +447 -0
  172. package/dist/esm/components/Inspector/LogDetail.d.ts +3 -0
  173. package/dist/esm/components/Inspector/LogDetail.js +925 -0
  174. package/dist/esm/components/Inspector/MainScreen.d.ts +3 -0
  175. package/dist/esm/components/Inspector/MainScreen.js +63 -0
  176. package/dist/esm/components/Inspector/NavigationTracker.d.ts +3 -0
  177. package/dist/esm/components/Inspector/NavigationTracker.js +10 -0
  178. package/dist/esm/components/Inspector/NetworkDetail.d.ts +3 -0
  179. package/dist/esm/components/Inspector/NetworkDetail.js +367 -0
  180. package/dist/esm/components/Inspector/NetworkTab.d.ts +3 -0
  181. package/dist/esm/components/Inspector/NetworkTab.js +244 -0
  182. package/dist/esm/components/Inspector/ReduxTab.d.ts +3 -0
  183. package/dist/esm/components/Inspector/ReduxTab.js +70 -0
  184. package/dist/esm/components/Inspector/SettingsPanel.d.ts +3 -0
  185. package/dist/esm/components/Inspector/SettingsPanel.js +1438 -0
  186. package/dist/esm/components/Inspector/TabBar.d.ts +3 -0
  187. package/dist/esm/components/Inspector/TabBar.js +90 -0
  188. package/dist/esm/components/Inspector/WebViewTab.d.ts +3 -0
  189. package/dist/esm/components/Inspector/WebViewTab.js +752 -0
  190. package/dist/esm/components/InspectorHeader.d.ts +19 -0
  191. package/dist/esm/components/InspectorHeader.js +323 -0
  192. package/dist/esm/components/InspectorTabBar.d.ts +16 -0
  193. package/dist/esm/components/InspectorTabBar.js +84 -0
  194. package/dist/esm/components/JsonViewer.d.ts +5 -2
  195. package/dist/esm/components/JsonViewer.js +112 -173
  196. package/dist/esm/components/LogCard.js +111 -88
  197. package/dist/esm/components/MetaAccordion.d.ts +1 -10
  198. package/dist/esm/components/MetaAccordion.js +23 -21
  199. package/dist/esm/components/NavigationTracker.d.ts +7 -0
  200. package/dist/esm/components/NavigationTracker.js +39 -0
  201. package/dist/esm/components/NetworkIcons.d.ts +6 -0
  202. package/dist/esm/components/NetworkIcons.js +46 -6
  203. package/dist/esm/components/ReduxTabView.d.ts +9 -0
  204. package/dist/esm/components/ReduxTabView.js +50 -0
  205. package/dist/esm/components/ReduxTreeView.d.ts +2 -2
  206. package/dist/esm/components/ReduxTreeView.js +245 -204
  207. package/dist/esm/components/SegmentedTabs.d.ts +15 -0
  208. package/dist/esm/components/SegmentedTabs.js +47 -0
  209. package/dist/esm/components/SettingsView.d.ts +13 -0
  210. package/dist/esm/components/SettingsView.js +321 -0
  211. package/dist/esm/components/TouchableScale.d.ts +2 -2
  212. package/dist/esm/components/TouchableScale.js +2 -2
  213. package/dist/esm/components/TreeNode.js +2 -2
  214. package/dist/esm/constants/index.js +1 -12
  215. package/dist/esm/constants/version.d.ts +1 -1
  216. package/dist/esm/constants/version.js +1 -1
  217. package/dist/esm/customHooks/consoleLogger.js +137 -13
  218. package/dist/esm/customHooks/networkLogger.d.ts +0 -1
  219. package/dist/esm/customHooks/networkLogger.js +0 -1
  220. package/dist/esm/customHooks/reduxLogger.d.ts +2 -9
  221. package/dist/esm/enums/index.d.ts +39 -0
  222. package/dist/esm/enums/index.js +47 -0
  223. package/dist/esm/helpers/index.d.ts +27 -1
  224. package/dist/esm/helpers/index.js +180 -11
  225. package/dist/esm/helpers/settingsStore.d.ts +2 -24
  226. package/dist/esm/i18n/en.json +144 -0
  227. package/dist/esm/i18n/index.d.ts +2 -0
  228. package/dist/esm/i18n/index.js +22 -0
  229. package/dist/esm/i18n/locales/en.json +314 -0
  230. package/dist/esm/index.d.ts +1 -2
  231. package/dist/esm/index.js +200 -4796
  232. package/dist/esm/styles/AppColors.d.ts +148 -0
  233. package/dist/esm/styles/AppColors.js +176 -0
  234. package/dist/esm/styles/common.d.ts +3 -0
  235. package/dist/esm/styles/common.js +197 -0
  236. package/dist/esm/styles/index.d.ts +167 -442
  237. package/dist/esm/styles/index.js +239 -471
  238. package/dist/esm/types/enums.d.ts +9 -0
  239. package/dist/esm/types/enums.js +3 -0
  240. package/dist/esm/types/index.d.ts +4 -111
  241. package/dist/esm/types/index.js +2 -1
  242. package/dist/esm/types/interfaces.d.ts +337 -0
  243. package/dist/esm/types/interfaces.js +1 -0
  244. package/example/App.tsx +145 -2
  245. package/example/README.md +33 -77
  246. package/package.json +3 -1
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const react_1 = __importStar(require("react"));
40
+ const react_i18next_1 = require("react-i18next");
40
41
  const react_native_1 = require("react-native");
41
42
  // Components
42
43
  const CopyButton_1 = __importDefault(require("./CopyButton"));
@@ -96,6 +97,7 @@ const HeaderRow = react_1.default.memo(function HeaderRow({ headerKey, value, is
96
97
  </react_native_1.Animated.View>);
97
98
  });
98
99
  const HeadersSection = ({ title, headers, search, resetKey, }) => {
100
+ const { t } = (0, react_i18next_1.useTranslation)();
99
101
  const { toggleOpen, forceOpen, chevronStyle, bodyStyle } = (0, useAccordion_1.default)(false, 2400, 300);
100
102
  (0, react_1.useEffect)(() => {
101
103
  forceOpen(false);
@@ -142,12 +144,12 @@ const HeadersSection = ({ title, headers, search, resetKey, }) => {
142
144
 
143
145
  <react_native_1.Animated.View style={bodyStyle}>
144
146
  <react_native_1.View style={styles_1.default.htColHeadRow}>
145
- <react_native_1.Text style={[styles_1.default.htColHead, { width: '30%' }]}>KEY</react_native_1.Text>
146
- <react_native_1.Text style={[styles_1.default.htColHead, { flex: 1 }]}>VALUE</react_native_1.Text>
147
+ <react_native_1.Text style={[styles_1.default.htColHead, { width: '30%' }]}>{t('network.jsonViewer.key')}</react_native_1.Text>
148
+ <react_native_1.Text style={[styles_1.default.htColHead, { flex: 1 }]}>{t('network.jsonViewer.value')}</react_native_1.Text>
147
149
  </react_native_1.View>
148
150
 
149
151
  {filtered.length > 0 ? (filtered.map(([k, v], i) => (<HeaderRow key={k} headerKey={k} value={v} isLast={i === filtered.length - 1} index={i}/>))) : (<react_native_1.View style={styles_1.default.htEmpty}>
150
- <react_native_1.Text style={styles_1.default.htEmptyText}>No matching headers</react_native_1.Text>
152
+ <react_native_1.Text style={styles_1.default.htEmptyText}>{t('network.noMatchingHeaders')}</react_native_1.Text>
151
153
  </react_native_1.View>)}
152
154
  </react_native_1.Animated.View>
153
155
  </react_native_1.View>);
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
- declare const HighlightText: ({ text, search, style, highlightStyle, detectLinks, ...rest }: any) => React.JSX.Element;
2
+ declare const HighlightText: React.NamedExoticComponent<any>;
3
3
  export default HighlightText;
@@ -7,9 +7,7 @@ const react_1 = __importDefault(require("react"));
7
7
  const react_native_1 = require("react-native");
8
8
  // Helpers
9
9
  const helpers_1 = require("../helpers");
10
- const HighlightText = ({ text, search, style, highlightStyle, detectLinks, ...rest }) => {
11
- const hasNumberOfLines = 'numberOfLines' in rest;
12
- const numLines = hasNumberOfLines ? rest.numberOfLines : 1;
10
+ const HighlightText = react_1.default.memo(function HighlightText({ text, search, style, highlightStyle, detectLinks, numberOfLines, ...rest }) {
13
11
  // Regex to detect absolute URLs
14
12
  const URL_REGEX = /(https?:\/\/[^\s]+)/g;
15
13
  const renderNormalOrHighlighted = (subText, keyPrefix) => {
@@ -26,7 +24,7 @@ const HighlightText = ({ text, search, style, highlightStyle, detectLinks, ...re
26
24
  };
27
25
  if (detectLinks && text) {
28
26
  const parts = text.split(URL_REGEX);
29
- return (<react_native_1.Text style={style} numberOfLines={numLines} {...rest}>
27
+ return (<react_native_1.Text style={style} numberOfLines={numberOfLines} {...rest}>
30
28
  {parts.map((part, i) => {
31
29
  if (part.match(URL_REGEX)) {
32
30
  return (<react_native_1.Text key={`link-${i}`} style={{
@@ -43,15 +41,15 @@ const HighlightText = ({ text, search, style, highlightStyle, detectLinks, ...re
43
41
  </react_native_1.Text>);
44
42
  }
45
43
  if (!search)
46
- return (<react_native_1.Text style={style} numberOfLines={numLines} {...rest}>
44
+ return (<react_native_1.Text style={style} numberOfLines={numberOfLines} {...rest}>
47
45
  {text}
48
46
  </react_native_1.Text>);
49
47
  const regex = new RegExp(`(${(0, helpers_1.escapeRegex)(search)})`, 'gi');
50
48
  const parts = text.split(regex);
51
- return (<react_native_1.Text style={style} numberOfLines={numLines} {...rest}>
49
+ return (<react_native_1.Text style={style} numberOfLines={numberOfLines} {...rest}>
52
50
  {parts.map((part, i) => part.toLowerCase() === search.toLowerCase() ? (<react_native_1.Text key={i} style={highlightStyle}>
53
51
  {part}
54
52
  </react_native_1.Text>) : (<react_native_1.Text key={i}>{part}</react_native_1.Text>))}
55
53
  </react_native_1.Text>);
56
- };
54
+ });
57
55
  exports.default = HighlightText;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const AnalyticsTab: React.MemoExoticComponent<() => React.JSX.Element>;
3
+ export default AnalyticsTab;
@@ -0,0 +1,231 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const react_1 = __importStar(require("react"));
40
+ const react_native_1 = require("react-native");
41
+ const InspectorContext_1 = require("./InspectorContext");
42
+ const AnalyticsEventCard_1 = __importDefault(require("../AnalyticsEventCard"));
43
+ const AnalyticsDetail_1 = __importDefault(require("../AnalyticsDetail"));
44
+ const EndOfListFooter_1 = __importDefault(require("../EndOfListFooter"));
45
+ const styles_1 = __importDefault(require("../../styles"));
46
+ const AppColors_1 = require("../../styles/AppColors");
47
+ const analyticsLogger_1 = require("../../customHooks/analyticsLogger");
48
+ const NetworkIcons_1 = require("../NetworkIcons");
49
+ const AnalyticsHeader = react_1.default.memo(() => {
50
+ const { filteredAnalyticsEvents, analyticsHeaderExpanded, setAnalyticsHeaderExpanded, } = (0, InspectorContext_1.useInspector)();
51
+ const userId = (0, analyticsLogger_1.getCurrentUserId)();
52
+ const userProperties = (0, analyticsLogger_1.getCurrentUserProperties)();
53
+ const defaultParams = (0, analyticsLogger_1.getDefaultEventParameters)();
54
+ const isTrackingEnabled = (0, analyticsLogger_1.getCollectionEnabled)();
55
+ const hasUserProps = Object.keys(userProperties).length > 0;
56
+ const hasDefaultParams = Object.keys(defaultParams).length > 0;
57
+ const totalEvents = filteredAnalyticsEvents.length;
58
+ return (<react_native_1.View style={styles_1.default.analyticsHeaderCard}>
59
+ <react_native_1.View style={[styles_1.default.analyticsHeaderTop, !analyticsHeaderExpanded && { marginBottom: 0 }]}>
60
+ <react_native_1.View style={{ flex: 1 }}>
61
+ <react_native_1.View style={{ flexDirection: 'row', alignItems: 'center', gap: 6 }}>
62
+ <react_native_1.Text style={styles_1.default.analyticsHeaderTitle}>Session Info</react_native_1.Text>
63
+ <react_native_1.View style={[
64
+ styles_1.default.statusDot,
65
+ { backgroundColor: isTrackingEnabled ? AppColors_1.AppColors.greenColor : AppColors_1.AppColors.errorColor }
66
+ ]}/>
67
+ <react_native_1.Text style={styles_1.default.statusText}>
68
+ {isTrackingEnabled ? 'Active' : 'Paused'}
69
+ </react_native_1.Text>
70
+ </react_native_1.View>
71
+ <react_native_1.Text style={styles_1.default.analyticsHeaderSubtitle} numberOfLines={1}>
72
+ {userId ? `User ID: ${userId}` : 'Anonymous Session'}
73
+ </react_native_1.Text>
74
+ </react_native_1.View>
75
+
76
+ <react_native_1.TouchableOpacity style={styles_1.default.analyticsHeaderToggle} activeOpacity={0.7} onPress={() => {
77
+ (0, InspectorContext_1.animateNextLayout)();
78
+ setAnalyticsHeaderExpanded(!analyticsHeaderExpanded);
79
+ }}>
80
+ <react_native_1.Text style={styles_1.default.analyticsHeaderToggleText}>
81
+ {analyticsHeaderExpanded ? 'Collapse' : 'Expand'}
82
+ </react_native_1.Text>
83
+ </react_native_1.TouchableOpacity>
84
+ </react_native_1.View>
85
+
86
+ {analyticsHeaderExpanded && (<>
87
+ {/* Stats Row */}
88
+ <react_native_1.View style={styles_1.default.analyticsStatsRow}>
89
+ <react_native_1.View style={styles_1.default.analyticsStatBox}>
90
+ <react_native_1.Text style={styles_1.default.analyticsStatValue}>{totalEvents}</react_native_1.Text>
91
+ <react_native_1.Text style={styles_1.default.analyticsStatLabel}>Events</react_native_1.Text>
92
+ </react_native_1.View>
93
+ <react_native_1.View style={styles_1.default.analyticsStatBox}>
94
+ <react_native_1.Text style={styles_1.default.analyticsStatValue}>
95
+ {Object.keys(userProperties).length}
96
+ </react_native_1.Text>
97
+ <react_native_1.Text style={styles_1.default.analyticsStatLabel}>User Props</react_native_1.Text>
98
+ </react_native_1.View>
99
+ <react_native_1.View style={styles_1.default.analyticsStatBox}>
100
+ <react_native_1.Text style={styles_1.default.analyticsStatValue}>
101
+ {Object.keys(defaultParams).length}
102
+ </react_native_1.Text>
103
+ <react_native_1.Text style={styles_1.default.analyticsStatLabel}>Defaults</react_native_1.Text>
104
+ </react_native_1.View>
105
+ </react_native_1.View>
106
+
107
+ {/* Details Section */}
108
+ {(hasUserProps || hasDefaultParams) && (<react_native_1.View style={styles_1.default.analyticsHeaderDetails}>
109
+ {hasUserProps && (<react_native_1.View style={{ marginBottom: 10 }}>
110
+ <react_native_1.Text style={styles_1.default.detailsGroupTitle}>Active User Properties</react_native_1.Text>
111
+ {Object.entries(userProperties).map(([k, v]) => (<react_native_1.View key={k} style={styles_1.default.detailsRow}>
112
+ <react_native_1.Text style={styles_1.default.detailsKey} selectable={true}>{k}</react_native_1.Text>
113
+ <react_native_1.Text style={styles_1.default.detailsValue} selectable={true}>{String(v)}</react_native_1.Text>
114
+ </react_native_1.View>))}
115
+ </react_native_1.View>)}
116
+
117
+ {hasDefaultParams && (<react_native_1.View>
118
+ <react_native_1.Text style={styles_1.default.detailsGroupTitle}>Default Event Parameters</react_native_1.Text>
119
+ {Object.entries(defaultParams).map(([k, v]) => (<react_native_1.View key={k} style={styles_1.default.detailsRow}>
120
+ <react_native_1.Text style={styles_1.default.detailsKey} selectable={true}>{k}</react_native_1.Text>
121
+ <react_native_1.Text style={styles_1.default.detailsValue} selectable={true}>{String(v)}</react_native_1.Text>
122
+ </react_native_1.View>))}
123
+ </react_native_1.View>)}
124
+ </react_native_1.View>)}
125
+ </>)}
126
+ </react_native_1.View>);
127
+ });
128
+ const AnalyticsTab = react_1.default.memo(() => {
129
+ const { filteredAnalyticsEvents, analyticsSearch, setAnalyticsSearch, handleDelete, selectedEvent, setSelectedEvent, newEventIds, logRouteMapRef, isAnalyticsLayoutReady, setIsAnalyticsLayoutReady, isAnalyticsPaused, setIsAnalyticsPaused, } = (0, InspectorContext_1.useInspector)();
130
+ const keyExtractor = (0, react_1.useCallback)((item, index) => item?.id?.toString() ?? index.toString(), []);
131
+ const renderItem = (0, react_1.useCallback)(({ item, index }) => {
132
+ const prev = filteredAnalyticsEvents[index + 1];
133
+ const next = filteredAnalyticsEvents[index - 1];
134
+ const msSincePrev = prev
135
+ ? item.timestamp - prev.timestamp
136
+ : undefined;
137
+ const thisMin = Math.floor(item.timestamp / 60000);
138
+ const nextMin = next
139
+ ? Math.floor(next.timestamp / 60000)
140
+ : -1;
141
+ const showTimestamp = index === 0 || thisMin !== nextMin;
142
+ return (<AnalyticsEventCard_1.default event={item} onPress={() => {
143
+ (0, InspectorContext_1.animateNextLayout)();
144
+ setSelectedEvent(item);
145
+ }} isNew={newEventIds.has(item.id)} searchStr={analyticsSearch} isFirst={index === 0} isLast={index === filteredAnalyticsEvents.length - 1} msSincePrev={msSincePrev} showTimestamp={showTimestamp} computedScreenName={(() => {
146
+ if (!item)
147
+ return '';
148
+ const rawScreenName = item.screenName ||
149
+ item.screenClass ||
150
+ item.pageTitle ||
151
+ item.pageLocation ||
152
+ item.params?.firebase_screen ||
153
+ item.params?.screen_name ||
154
+ item.params?.firebase_screen_class ||
155
+ item.params?.screen_class;
156
+ let screenName = typeof rawScreenName === 'string'
157
+ ? rawScreenName
158
+ : (rawScreenName ? JSON.stringify(rawScreenName) : '');
159
+ const routeInfo = logRouteMapRef.current.get(item.id + 1000000);
160
+ if (!screenName) {
161
+ if (routeInfo &&
162
+ routeInfo.path !== 'Navigators') {
163
+ const parts = routeInfo.path.split(' ➔ ');
164
+ screenName = parts[parts.length - 1];
165
+ }
166
+ }
167
+ return screenName;
168
+ })()}/>);
169
+ }, [filteredAnalyticsEvents, analyticsSearch, newEventIds, setSelectedEvent, logRouteMapRef]);
170
+ return (<>
171
+ {/* ─── Search + Shared Toolbar for Analytics ──────────────────────── */}
172
+ {selectedEvent == null && (<react_native_1.View style={[
173
+ styles_1.default.toolbarRow,
174
+ { marginTop: 12, marginBottom: 8 },
175
+ ]}>
176
+ <react_native_1.View style={styles_1.default.searchContainer}>
177
+ <NetworkIcons_1.SearchIcon color={AppColors_1.AppColors.grayTextWeak} size={16}/>
178
+ <react_native_1.TextInput placeholder="Search events..." placeholderTextColor={AppColors_1.AppColors.grayTextWeak} value={analyticsSearch} onChangeText={setAnalyticsSearch} style={styles_1.default.searchInput} autoCorrect={false} autoCapitalize="none"/>
179
+ {analyticsSearch.length > 0 && (<react_native_1.Pressable onPress={() => setAnalyticsSearch('')} hitSlop={10} style={styles_1.default.clearBtn}>
180
+ <NetworkIcons_1.ClearIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
181
+ </react_native_1.Pressable>)}
182
+ </react_native_1.View>
183
+ <react_native_1.View style={styles_1.default.toolbarRight}>
184
+ <react_native_1.TouchableOpacity style={[
185
+ styles_1.default.toolbarBtn,
186
+ isAnalyticsPaused && {
187
+ borderColor: `${AppColors_1.AppColors.darkOrange}50`,
188
+ backgroundColor: `${AppColors_1.AppColors.darkOrange}18`,
189
+ },
190
+ ]} onPress={() => setIsAnalyticsPaused(p => !p)} hitSlop={6}>
191
+ <NetworkIcons_1.HeaderPauseIcon isPaused={isAnalyticsPaused} color={isAnalyticsPaused
192
+ ? AppColors_1.AppColors.darkOrange
193
+ : AppColors_1.AppColors.grayTextStrong} size={16}/>
194
+ </react_native_1.TouchableOpacity>
195
+ <react_native_1.TouchableOpacity style={[
196
+ styles_1.default.toolbarBtn,
197
+ {
198
+ borderColor: `${AppColors_1.AppColors.errorColor}38`,
199
+ backgroundColor: `${AppColors_1.AppColors.errorColor}0F`,
200
+ },
201
+ ]} onPress={handleDelete} hitSlop={6}>
202
+ <NetworkIcons_1.TrashIcon color={AppColors_1.AppColors.errorColor} size={15}/>
203
+ </react_native_1.TouchableOpacity>
204
+ </react_native_1.View>
205
+ </react_native_1.View>)}
206
+
207
+ <react_native_1.View style={{ flex: 1 }} onLayout={() => setIsAnalyticsLayoutReady(true)}>
208
+ {selectedEvent != null ? (<AnalyticsDetail_1.default event={selectedEvent}/>) : isAnalyticsLayoutReady ? (<react_native_1.FlatList data={filteredAnalyticsEvents} keyExtractor={keyExtractor} ListHeaderComponent={AnalyticsHeader} renderItem={renderItem} initialNumToRender={20} maxToRenderPerBatch={20} windowSize={5} removeClippedSubviews={false} ListEmptyComponent={<react_native_1.View style={styles_1.default.emptyContainer}>
209
+ <react_native_1.View style={styles_1.default.emptyIconWrap}>
210
+ <NetworkIcons_1.EmptyRadarIcon color={AppColors_1.AppColors.purple} size={32}/>
211
+ </react_native_1.View>
212
+ <react_native_1.Text style={styles_1.default.emptyTitle}>
213
+ {analyticsSearch.length > 0
214
+ ? 'No matching events'
215
+ : 'No analytics events yet'}
216
+ </react_native_1.Text>
217
+ <react_native_1.Text style={styles_1.default.emptySub}>
218
+ {analyticsSearch.length > 0
219
+ ? 'Try adjusting your search.'
220
+ : 'Call setupAnalyticsLogger(analytics()) at app start.'}
221
+ </react_native_1.Text>
222
+ </react_native_1.View>} ListFooterComponent={filteredAnalyticsEvents.length > 0 ? (<EndOfListFooter_1.default count={filteredAnalyticsEvents.length} label="events"/>) : null} contentContainerStyle={[
223
+ styles_1.default.listContent,
224
+ filteredAnalyticsEvents.length === 0 && {
225
+ flexGrow: 1,
226
+ },
227
+ ]} keyboardShouldPersistTaps="handled"/>) : null}
228
+ </react_native_1.View>
229
+ </>);
230
+ });
231
+ exports.default = AnalyticsTab;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const ConsoleTab: React.MemoExoticComponent<() => React.JSX.Element>;
3
+ export default ConsoleTab;