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
@@ -1,104 +1,19 @@
1
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
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
5
  Object.defineProperty(exports, "__esModule", { value: true });
39
6
  exports.ConsoleLogCard = void 0;
40
- const react_1 = __importStar(require("react"));
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_i18next_1 = require("react-i18next");
41
9
  const react_native_1 = require("react-native");
42
10
  const AppColors_1 = require("../styles/AppColors");
43
11
  const AppFonts_1 = require("../styles/AppFonts");
12
+ const helpers_1 = require("../helpers");
44
13
  const HighlightText_1 = __importDefault(require("./HighlightText"));
45
14
  const CopyButton_1 = __importDefault(require("./CopyButton"));
46
15
  const NetworkIcons_1 = require("./NetworkIcons");
47
- const JsonViewer_1 = __importDefault(require("./JsonViewer"));
48
- const formatTime = (ts) => {
49
- const d = new Date(ts);
50
- const hh = String(d.getHours()).padStart(2, '0');
51
- const mm = String(d.getMinutes()).padStart(2, '0');
52
- const ss = String(d.getSeconds()).padStart(2, '0');
53
- const ms = String(d.getMilliseconds()).padStart(3, '0');
54
- return `${hh}:${mm}:${ss}.${ms}`;
55
- };
56
- const getJsonContent = (message) => {
57
- if (!message)
58
- return null;
59
- const indices = [];
60
- for (let i = 0; i < message.length; i++) {
61
- if (message[i] === '{' || message[i] === '[') {
62
- indices.push(i);
63
- }
64
- }
65
- for (const index of indices) {
66
- const candidate = message.substring(index).trim();
67
- try {
68
- const parsed = JSON.parse(candidate);
69
- if (parsed !== null && typeof parsed === 'object') {
70
- const header = message.substring(0, index).trim();
71
- return { header, data: parsed };
72
- }
73
- }
74
- catch (e) {
75
- // Ignore
76
- }
77
- }
78
- return null;
79
- };
80
- const getJsonPreviewText = (data) => {
81
- try {
82
- const formatted = JSON.stringify(data, null, 2);
83
- const lines = formatted.split('\n');
84
- if (lines.length > 3) {
85
- return {
86
- text: lines.slice(0, 3).join('\n') + '\n...',
87
- hasMore: true,
88
- };
89
- }
90
- return {
91
- text: formatted,
92
- hasMore: false,
93
- };
94
- }
95
- catch (e) {
96
- return {
97
- text: String(data),
98
- hasMore: false,
99
- };
100
- }
101
- };
16
+ const InspectorContext_1 = require("./Inspector/InspectorContext");
102
17
  const getLogMessageWithBadges = (message, searchStr, textStyle, highlightStyle, numberOfLines) => {
103
18
  if (!message)
104
19
  return null;
@@ -114,94 +29,59 @@ const getLogMessageWithBadges = (message, searchStr, textStyle, highlightStyle,
114
29
  .trim()
115
30
  .toUpperCase();
116
31
  if (cleanTag === 'API')
117
- return '#0284C7';
32
+ return AppColors_1.AppColors.sky600;
118
33
  if (cleanTag === 'TEST')
119
- return '#16A34A';
34
+ return AppColors_1.AppColors.green600;
120
35
  if (cleanTag === 'APP')
121
- return '#4F46E5';
122
- if (cleanTag === 'DETAILS')
123
- return '#7C3AED';
124
- if (cleanTag === 'WEBVIEW')
125
- return '#EA580C';
126
- if (cleanTag === 'MOCK REDUX' || cleanTag === 'REDUX')
127
- return '#DB2777';
128
- let hash = 0;
129
- for (let i = 0; i < cleanTag.length; i++) {
130
- hash = cleanTag.charCodeAt(i) + ((hash << 5) - hash);
131
- }
132
- const colors = [
133
- '#0891B2',
134
- '#0D9488',
135
- '#2563EB',
136
- '#D97706',
137
- '#E11D48',
138
- '#8B5CF6',
139
- ];
140
- return colors[Math.abs(hash) % colors.length];
36
+ return AppColors_1.AppColors.indigo600;
37
+ if (cleanTag === 'WARN')
38
+ return AppColors_1.AppColors.darkOrange || AppColors_1.AppColors.lightOrange;
39
+ if (cleanTag === 'ERROR')
40
+ return AppColors_1.AppColors.errorColor;
41
+ return AppColors_1.AppColors.slate600;
141
42
  };
142
- return (<react_native_1.Text style={textStyle} numberOfLines={numberOfLines}>
143
- {tags.map((tag, idx) => {
43
+ return (<react_native_1.View style={{ flexDirection: 'column', gap: 6 }}>
44
+ <react_native_1.View style={{ flexDirection: 'row', flexWrap: 'wrap', gap: 4 }}>
45
+ {tags.map((tag, i) => {
144
46
  const color = getTagColor(tag);
145
- return (<react_native_1.Text key={idx} style={{
146
- fontWeight: 'bold',
147
- color: color,
148
- fontFamily: AppFonts_1.AppFonts.interBold,
149
- }}>
150
- {tag}{' '}
151
- </react_native_1.Text>);
47
+ return (<react_native_1.View key={i} style={[
48
+ styles.prefixTag,
49
+ {
50
+ backgroundColor: `${color}15`,
51
+ borderColor: `${color}35`,
52
+ },
53
+ ]}>
54
+ <react_native_1.Text style={[styles.prefixTagText, { color }]}>
55
+ {tag.replace(/[\[\]]/g, '')}
56
+ </react_native_1.Text>
57
+ </react_native_1.View>);
152
58
  })}
153
- <HighlightText_1.default text={remainingText} search={searchStr} style={textStyle} highlightStyle={highlightStyle} detectLinks={true}/>
154
- </react_native_1.Text>);
59
+ </react_native_1.View>
60
+ <HighlightText_1.default text={remainingText} search={searchStr} style={textStyle} highlightStyle={highlightStyle} numberOfLines={numberOfLines} detectLinks={true}/>
61
+ </react_native_1.View>);
155
62
  }
156
63
  return (<HighlightText_1.default text={message} search={searchStr} style={textStyle} highlightStyle={highlightStyle} numberOfLines={numberOfLines} detectLinks={true}/>);
157
64
  };
158
- exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, searchStr = '', isWebView = false, }) {
159
- const [expanded, setExpanded] = (0, react_1.useState)(false);
160
- const chevronAnim = (0, react_1.useRef)(new react_native_1.Animated.Value(0)).current;
161
- const jsonContent = getJsonContent(item.message);
65
+ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, searchStr = '', }) {
66
+ const { setSelectedLog } = (0, InspectorContext_1.useInspector)();
67
+ const { t } = (0, react_i18next_1.useTranslation)();
68
+ const jsonContent = (0, helpers_1.getJsonContent)(item.message);
162
69
  const isAnalyticsError = item.message
163
70
  .toLowerCase()
164
71
  .includes('[analytics error]');
165
- const isUserLog = !isWebView && item.sourceMethod === 'log';
166
- const caller = 'caller' in item ? item.caller : undefined;
72
+ const isUserLog = item.sourceMethod === 'log';
73
+ const parsedCaller = item.caller && item.caller !== 'Unknown'
74
+ ? (0, helpers_1.parseStackLine)(item.caller, true)
75
+ : null;
167
76
  const getLogColors = () => {
168
- const isDark = AppColors_1.AppColors.primaryLight !== '#FFFFFF';
169
- if (isWebView) {
170
- const label = item.type.toUpperCase();
171
- switch (item.type) {
172
- case 'error':
173
- return {
174
- border: AppColors_1.AppColors.errorColor,
175
- badgeBg: `${AppColors_1.AppColors.errorColor}15`,
176
- badgeText: AppColors_1.AppColors.errorColor,
177
- label,
178
- cardBg: isDark ? 'rgba(239, 68, 68, 0.15)' : '#FFF5F6',
179
- };
180
- case 'warn':
181
- return {
182
- border: AppColors_1.AppColors.lightOrange,
183
- badgeBg: `${AppColors_1.AppColors.lightOrange}15`,
184
- badgeText: AppColors_1.AppColors.darkOrange || AppColors_1.AppColors.lightOrange,
185
- label,
186
- cardBg: isDark ? 'rgba(245, 158, 11, 0.15)' : '#FFFDF6',
187
- };
188
- default:
189
- return {
190
- border: '#475569',
191
- badgeBg: isDark ? '#374151' : '#F1F5F9',
192
- badgeText: isDark ? '#9CA3AF' : '#475569',
193
- label,
194
- cardBg: isDark ? '#1E1E24' : '#F8FAFC',
195
- };
196
- }
197
- }
77
+ const isDark = AppColors_1.AppColors.primaryLight !== AppColors_1.AppColors.white;
198
78
  if (isAnalyticsError) {
199
79
  return {
200
80
  border: AppColors_1.AppColors.skyBlue,
201
81
  badgeBg: `${AppColors_1.AppColors.skyBlue}15`,
202
82
  badgeText: AppColors_1.AppColors.skyBlue,
203
83
  label: 'ERROR',
204
- cardBg: isDark ? 'rgba(96, 165, 250, 0.15)' : '#E6F2FF',
84
+ cardBg: isDark ? `${AppColors_1.AppColors.skyBlue}26` : AppColors_1.AppColors.blueTintBg,
205
85
  };
206
86
  }
207
87
  switch (item.type) {
@@ -211,7 +91,7 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
211
91
  badgeBg: `${AppColors_1.AppColors.errorColor}15`,
212
92
  badgeText: AppColors_1.AppColors.errorColor,
213
93
  label: 'ERROR',
214
- cardBg: isDark ? 'rgba(239, 68, 68, 0.15)' : '#FFF5F6',
94
+ cardBg: isDark ? `${AppColors_1.AppColors.errorColor}26` : AppColors_1.AppColors.errorCardBg,
215
95
  };
216
96
  case 'warn':
217
97
  return {
@@ -219,16 +99,16 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
219
99
  badgeBg: `${AppColors_1.AppColors.lightOrange}15`,
220
100
  badgeText: AppColors_1.AppColors.darkOrange || AppColors_1.AppColors.lightOrange,
221
101
  label: 'WARN',
222
- cardBg: isDark ? 'rgba(245, 158, 11, 0.15)' : '#FFFDF6',
102
+ cardBg: isDark ? `${AppColors_1.AppColors.amber500}26` : AppColors_1.AppColors.warnCardBg,
223
103
  };
224
104
  default:
225
105
  if (isUserLog) {
226
106
  return {
227
- border: '#475569',
228
- badgeBg: isDark ? '#374151' : '#E2E8F0',
229
- badgeText: isDark ? '#D1D5DB' : '#334155',
107
+ border: AppColors_1.AppColors.slate600,
108
+ badgeBg: isDark ? AppColors_1.AppColors.gray700 : AppColors_1.AppColors.slate200,
109
+ badgeText: isDark ? AppColors_1.AppColors.gray300 : AppColors_1.AppColors.slate700,
230
110
  label: 'INFO',
231
- cardBg: isDark ? '#1E1E24' : '#F1F5F9',
111
+ cardBg: isDark ? AppColors_1.AppColors.primaryLight : AppColors_1.AppColors.slate100,
232
112
  };
233
113
  }
234
114
  return {
@@ -236,279 +116,185 @@ exports.ConsoleLogCard = react_1.default.memo(function ConsoleLogCard({ item, se
236
116
  badgeBg: `${AppColors_1.AppColors.purple}15`,
237
117
  badgeText: AppColors_1.AppColors.purple,
238
118
  label: 'INFO',
239
- cardBg: isDark ? 'rgba(167, 139, 250, 0.12)' : '#F9F5FF',
119
+ cardBg: isDark ? `${AppColors_1.AppColors.purple}1F` : AppColors_1.AppColors.purpleShade50,
240
120
  };
241
121
  }
242
122
  };
243
123
  const colors = getLogColors();
244
- (0, react_1.useEffect)(() => {
245
- if (react_native_1.Platform.OS === 'android') {
246
- react_native_1.UIManager.setLayoutAnimationEnabledExperimental?.(true);
247
- }
248
- }, []);
249
- (0, react_1.useEffect)(() => {
250
- react_native_1.Animated.timing(chevronAnim, {
251
- toValue: expanded ? 1 : 0,
252
- duration: 180,
253
- useNativeDriver: true,
254
- }).start();
255
- }, [chevronAnim, expanded]);
256
- const toggleExpanded = () => {
257
- if (react_native_1.Platform.OS === 'ios') {
258
- react_native_1.LayoutAnimation.configureNext(react_native_1.LayoutAnimation.Presets.easeInEaseOut);
259
- }
260
- setExpanded(prev => !prev);
124
+ const jsonPreview = jsonContent
125
+ ? (0, helpers_1.getJsonPreviewText)(jsonContent.data)
126
+ : null;
127
+ const openDetail = () => {
128
+ setSelectedLog(item);
261
129
  };
262
- const chevronRotate = chevronAnim.interpolate({
263
- inputRange: [0, 1],
264
- outputRange: ['0deg', '180deg'],
265
- });
266
- // Show limited lines unless expanded
267
- const numLines = expanded ? undefined : 5;
268
- const hasLongMessage = jsonContent
269
- ? getJsonPreviewText(jsonContent.data).hasMore ||
270
- jsonContent.header.length > 120 ||
271
- jsonContent.header.includes('\n')
272
- : item.message.length > 120 || item.message.includes('\n');
273
130
  return (<react_native_1.View style={styles.container}>
274
- <react_native_1.View style={[
131
+ <react_native_1.Pressable onPress={openDetail} style={({ pressed }) => [
275
132
  styles.card,
276
133
  {
277
- borderLeftWidth: 4,
278
134
  borderLeftColor: colors.border,
279
135
  backgroundColor: colors.cardBg,
280
- borderColor: AppColors_1.AppColors.grayBorderSecondary,
281
- flexDirection: 'row',
282
- alignItems: 'center',
283
- paddingRight: 4,
284
136
  },
137
+ pressed && styles.cardPressed,
285
138
  ]}>
286
- {/* Left Content Area */}
287
- <react_native_1.Pressable onPress={toggleExpanded} style={{ flex: 1, paddingRight: 6 }}>
288
- <react_native_1.View style={styles.cardHeader}>
289
- <react_native_1.View style={styles.headerLeft}>
290
- <CopyButton_1.default value={item.message} label="Log message"/>
291
- <react_native_1.View style={[styles.badge, { backgroundColor: colors.badgeBg }]}>
292
- <react_native_1.Text style={[styles.badgeText, { color: colors.badgeText }]}>
293
- {colors.label}
294
- </react_native_1.Text>
295
- </react_native_1.View>
296
- <react_native_1.View style={[
297
- styles.badge,
139
+ <react_native_1.View style={styles.cardHeader}>
140
+ <react_native_1.View style={styles.headerLeft}>
141
+ <react_native_1.View style={[styles.typeChip, { backgroundColor: colors.badgeBg }]}>
142
+ <react_native_1.View style={[styles.typeDot, { backgroundColor: colors.badgeText }]}/>
143
+ <react_native_1.Text style={[styles.typeChipText, { color: colors.badgeText }]}>
144
+ {colors.label}
145
+ </react_native_1.Text>
146
+ </react_native_1.View>
147
+ <react_native_1.View style={[
148
+ styles.metaChip,
298
149
  {
299
- backgroundColor: 'rgba(107, 78, 255, 0.08)',
300
- borderColor: 'rgba(107, 78, 255, 0.2)',
301
- borderWidth: 1,
150
+ backgroundColor: `${AppColors_1.AppColors.brandPurple}12`,
151
+ borderColor: `${AppColors_1.AppColors.brandPurple}30`,
302
152
  },
303
153
  ]}>
304
- <react_native_1.Text style={[styles.badgeText, { color: '#6B4EFF' }]}>
305
- console.
306
- {('sourceMethod' in item ? item.sourceMethod : undefined) ||
154
+ <react_native_1.Text style={[styles.metaChipText, { color: AppColors_1.AppColors.brandPurple }]}>
155
+ console.
156
+ {('sourceMethod' in item ? item.sourceMethod : undefined) ||
307
157
  item.type ||
308
158
  'log'}
309
- </react_native_1.Text>
310
- </react_native_1.View>
311
- {jsonContent && (<react_native_1.View style={[
312
- styles.badge,
159
+ </react_native_1.Text>
160
+ </react_native_1.View>
161
+ {jsonContent && (<react_native_1.View style={[
162
+ styles.metaChip,
313
163
  {
314
- backgroundColor: 'rgba(13, 148, 136, 0.08)',
315
- borderColor: 'rgba(13, 148, 136, 0.18)',
316
- borderWidth: 1,
164
+ backgroundColor: `${AppColors_1.AppColors.teal600}12`,
165
+ borderColor: `${AppColors_1.AppColors.teal600}2B`,
317
166
  },
318
167
  ]}>
319
- <react_native_1.Text style={[styles.badgeText, { color: '#0D9488' }]}>
320
- {Array.isArray(jsonContent.data)
168
+ <react_native_1.Text style={[styles.metaChipText, { color: AppColors_1.AppColors.teal600 }]}>
169
+ {Array.isArray(jsonContent.data)
321
170
  ? `Array[${jsonContent.data.length}]`
322
171
  : `Object{${Object.keys(jsonContent.data).length}}`}
323
- </react_native_1.Text>
324
- </react_native_1.View>)}
325
- {/* #9 collapsed duplicate counter */}
326
- {'duplicateCount' in item &&
172
+ </react_native_1.Text>
173
+ </react_native_1.View>)}
174
+ {'duplicateCount' in item &&
327
175
  item.duplicateCount != null &&
328
176
  item.duplicateCount > 1 && (<react_native_1.View style={[
329
- styles.badge,
330
- {
331
- backgroundColor: 'rgba(104, 75, 155, 0.1)',
332
- borderColor: 'rgba(104, 75, 155, 0.25)',
333
- borderWidth: 1,
334
- },
335
- ]}>
336
- <react_native_1.Text style={[
337
- styles.badgeText,
338
- { color: AppColors_1.AppColors.purple, fontWeight: '700' },
339
- ]}>
340
- ×{item.duplicateCount}
341
- </react_native_1.Text>
342
- </react_native_1.View>)}
343
- {isAnalyticsError && (<react_native_1.View style={[
344
- styles.badge,
345
- { backgroundColor: `${AppColors_1.AppColors.skyBlue}15` },
346
- ]}>
347
- <react_native_1.Text style={[styles.badgeText, { color: AppColors_1.AppColors.skyBlue }]}>
348
- Analytics
349
- </react_native_1.Text>
350
- </react_native_1.View>)}
351
- {isUserLog && (<react_native_1.View style={[
352
- styles.badge,
353
- {
354
- backgroundColor: AppColors_1.AppColors.grayBackground,
355
- borderColor: AppColors_1.AppColors.grayBorderSecondary,
356
- borderWidth: 1,
357
- },
358
- ]}>
359
- <react_native_1.Text style={[
360
- styles.badgeText,
361
- { color: AppColors_1.AppColors.grayTextStrong },
362
- ]}>
363
- user-log
364
- </react_native_1.Text>
365
- </react_native_1.View>)}
366
- {isWebView && (<react_native_1.View style={[
367
- styles.badge,
177
+ styles.metaChip,
368
178
  {
369
- backgroundColor: AppColors_1.AppColors.grayBackground,
370
- borderColor: AppColors_1.AppColors.grayBorderSecondary,
371
- borderWidth: 1,
179
+ backgroundColor: `${AppColors_1.AppColors.purple}1A`,
180
+ borderColor: `${AppColors_1.AppColors.purple}3D`,
372
181
  },
373
182
  ]}>
374
- <react_native_1.Text style={[styles.badgeText, { color: AppColors_1.AppColors.grayText }]}>
375
- webview
183
+ <react_native_1.Text style={[styles.metaChipText, { color: AppColors_1.AppColors.purple }]}>
184
+ ×{item.duplicateCount}
376
185
  </react_native_1.Text>
377
186
  </react_native_1.View>)}
378
- <react_native_1.Text style={[styles.serialNumber, { color: AppColors_1.AppColors.grayTextWeak }]}>
379
- #{item.id + 1}
380
- </react_native_1.Text>
381
- <react_native_1.Text style={[styles.timestamp, { color: AppColors_1.AppColors.grayTextWeak }]}>
382
- {formatTime(item.timestamp)}
383
- </react_native_1.Text>
384
- </react_native_1.View>
187
+ </react_native_1.View>
385
188
 
386
- {caller && caller !== 'Unknown' && (<react_native_1.Text style={[
387
- styles.callerText,
388
- { color: AppColors_1.AppColors.grayTextWeak, marginRight: 4 },
389
- ]} numberOfLines={1} ellipsizeMode="middle">
390
- {caller.split('/').pop() || caller}
391
- </react_native_1.Text>)}
189
+ <react_native_1.View style={styles.headerRight}>
190
+ <CopyButton_1.default value={item.message} label={t('console.logMessage')}/>
191
+ <NetworkIcons_1.ChevronIcon color={AppColors_1.AppColors.grayTextWeak} size={14}/>
392
192
  </react_native_1.View>
193
+ </react_native_1.View>
393
194
 
394
- <react_native_1.View style={[
395
- styles.cardBody,
396
- {
397
- backgroundColor: AppColors_1.AppColors.primaryLight,
398
- borderColor: AppColors_1.AppColors.dividerColor,
399
- },
400
- ]}>
401
- {jsonContent ? (<>
402
- {jsonContent.header ? (<react_native_1.Pressable onPress={toggleExpanded}>
403
- {getLogMessageWithBadges(jsonContent.header, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, numLines)}
404
- </react_native_1.Pressable>) : null}
405
- {expanded ? (<react_native_1.View style={[
406
- styles.jsonContainer,
407
- {
408
- backgroundColor: AppColors_1.AppColors.grayBackground,
409
- borderColor: AppColors_1.AppColors.dividerColor,
410
- },
411
- ]}>
412
- <JsonViewer_1.default data={jsonContent.data} search={searchStr} forceOpen={expanded}/>
413
- </react_native_1.View>) : (<react_native_1.Pressable onPress={toggleExpanded} style={[
414
- styles.jsonPreviewContainer,
415
- {
416
- backgroundColor: AppColors_1.AppColors.grayBackground,
417
- borderColor: AppColors_1.AppColors.dividerColor,
418
- },
419
- ]}>
420
- <HighlightText_1.default text={getJsonPreviewText(jsonContent.data).text} search={searchStr} style={[
195
+ <react_native_1.View style={styles.cardBody}>
196
+ {jsonContent ? (<>
197
+ {jsonContent.header ? (getLogMessageWithBadges(jsonContent.header, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, 2)) : null}
198
+ {jsonPreview && (<react_native_1.View style={styles.jsonPreviewContainer}>
199
+ <HighlightText_1.default text={jsonPreview.text} search={searchStr} style={[
421
200
  styles.jsonPreviewText,
422
201
  { color: AppColors_1.AppColors.primaryBlack },
423
- ]} highlightStyle={styles.highlight} detectLinks={true}/>
424
- </react_native_1.Pressable>)}
425
- </>) : (<react_native_1.Pressable onPress={toggleExpanded}>
426
- {getLogMessageWithBadges(item.message, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, numLines)}
427
- </react_native_1.Pressable>)}
428
- {hasLongMessage && (<react_native_1.Pressable onPress={toggleExpanded} style={styles.seeMoreBtn} hitSlop={8}>
429
- <react_native_1.Text style={styles.seeMoreText}>
430
- {expanded ? 'See Less' : 'See More'}
431
- </react_native_1.Text>
432
- </react_native_1.Pressable>)}
433
- </react_native_1.View>
202
+ ]} highlightStyle={styles.highlight} detectLinks={false} numberOfLines={5}/>
203
+ </react_native_1.View>)}
204
+ </>) : (getLogMessageWithBadges(item.message, searchStr, [styles.messageText, { color: AppColors_1.AppColors.primaryBlack }], styles.highlight, 3))}
205
+ </react_native_1.View>
434
206
 
435
- {expanded && (<react_native_1.View style={[
436
- styles.cardFooter,
437
- { borderTopColor: AppColors_1.AppColors.dividerColor, gap: 6 },
438
- ]}>
439
- <react_native_1.View style={{
440
- flexDirection: 'row',
441
- justifyContent: 'space-between',
442
- alignItems: 'center',
443
- }}>
444
- <react_native_1.Text style={{
445
- fontFamily: AppFonts_1.AppFonts.interRegular,
446
- fontSize: 10.5,
447
- color: AppColors_1.AppColors.grayTextWeak,
448
- }}>
449
- Length: {item.message.length} chars • Size:{' '}
450
- {encodeURIComponent(item.message).replace(/%[0-9A-F]{2}/g, 'a').length}{' '}
451
- bytes
452
- </react_native_1.Text>
453
- </react_native_1.View>
454
- {caller && caller !== 'Unknown' && (<react_native_1.View style={{
455
- flexDirection: 'row',
456
- alignItems: 'center',
457
- justifyContent: 'space-between',
458
- marginTop: 4,
207
+ <react_native_1.View style={styles.cardFooter}>
208
+ <react_native_1.View style={styles.footerLeft}>
209
+ <react_native_1.Text style={styles.footerText}>#{item.id + 1}</react_native_1.Text>
210
+ <react_native_1.View style={styles.footerDot}/>
211
+ <react_native_1.Text style={styles.footerText}>{(0, helpers_1.formatTime)(item.timestamp)}</react_native_1.Text>
212
+ {parsedCaller && (<>
213
+ <react_native_1.View style={styles.footerDot}/>
214
+ <react_native_1.View style={{ flexDirection: 'row', alignItems: 'center', gap: 4, maxWidth: 170 }}>
215
+ {parsedCaller.fileExt && parsedCaller.fileExt !== 'other' && (<react_native_1.View style={{
216
+ backgroundColor: parsedCaller.fileExt === 'tsx' || parsedCaller.fileExt === 'ts'
217
+ ? `${AppColors_1.AppColors.brandPurple}18`
218
+ : `${AppColors_1.AppColors.teal600}18`,
219
+ borderRadius: 3,
220
+ paddingHorizontal: 3.5,
221
+ paddingVertical: 1,
222
+ }}>
223
+ <react_native_1.Text style={{
224
+ fontFamily: AppFonts_1.AppFonts.interBold,
225
+ fontSize: 8.5,
226
+ color: parsedCaller.fileExt === 'tsx' || parsedCaller.fileExt === 'ts'
227
+ ? AppColors_1.AppColors.brandPurple
228
+ : AppColors_1.AppColors.teal600,
459
229
  }}>
460
- <react_native_1.Text style={[
461
- styles.fullCallerText,
462
- { color: AppColors_1.AppColors.grayText, flex: 1, marginRight: 8 },
463
- ]} numberOfLines={2}>
464
- Caller: {caller}
230
+ {parsedCaller.fileExt.toUpperCase()}
231
+ </react_native_1.Text>
232
+ </react_native_1.View>)}
233
+ <react_native_1.Text style={[styles.footerText, styles.footerCaller]} numberOfLines={1} ellipsizeMode="middle">
234
+ {parsedCaller.fileName}
235
+ {parsedCaller.lineNumber ? `:${parsedCaller.lineNumber}` : ''}
465
236
  </react_native_1.Text>
466
- <CopyButton_1.default value={caller} label="Caller stack frame"/>
467
- </react_native_1.View>)}
468
- </react_native_1.View>)}
469
- </react_native_1.Pressable>
237
+ </react_native_1.View>
238
+ </>)}
239
+ </react_native_1.View>
470
240
 
471
- {/* Right Isolated Chevron Area */}
472
- <react_native_1.Pressable onPress={toggleExpanded} style={{
473
- width: 28,
474
- alignItems: 'center',
475
- justifyContent: 'center',
476
- alignSelf: expanded ? 'flex-start' : 'center',
477
- marginTop: expanded ? 8 : 0,
478
- height: expanded ? 32 : undefined,
479
- }} hitSlop={12}>
480
- <react_native_1.Animated.View style={{ transform: [{ rotate: chevronRotate }] }}>
481
- <NetworkIcons_1.ChevronIcon size={16} color={AppColors_1.AppColors.grayTextWeak}/>
482
- </react_native_1.Animated.View>
483
- </react_native_1.Pressable>
484
- </react_native_1.View>
241
+ <react_native_1.View style={styles.footerRight}>
242
+ {isAnalyticsError && (<react_native_1.View style={[
243
+ styles.footerBadge,
244
+ {
245
+ backgroundColor: `${AppColors_1.AppColors.skyBlue}15`,
246
+ borderColor: `${AppColors_1.AppColors.skyBlue}30`,
247
+ },
248
+ ]}>
249
+ <react_native_1.Text style={[styles.footerBadgeText, { color: AppColors_1.AppColors.skyBlue }]}>
250
+ {t('console.analyticsBadge')}
251
+ </react_native_1.Text>
252
+ </react_native_1.View>)}
253
+ {isUserLog && (<react_native_1.View style={[
254
+ styles.footerBadge,
255
+ {
256
+ backgroundColor: `${AppColors_1.AppColors.slate600}12`,
257
+ borderColor: `${AppColors_1.AppColors.slate600}26`,
258
+ },
259
+ ]}>
260
+ <react_native_1.Text style={[styles.footerBadgeText, { color: AppColors_1.AppColors.grayTextStrong }]}>
261
+ {t('console.userLogBadge')}
262
+ </react_native_1.Text>
263
+ </react_native_1.View>)}
264
+ </react_native_1.View>
265
+ </react_native_1.View>
266
+ </react_native_1.Pressable>
485
267
  </react_native_1.View>);
486
268
  });
487
269
  const styles = react_native_1.StyleSheet.create({
488
270
  container: {
489
271
  paddingHorizontal: 12,
490
- paddingVertical: 3,
272
+ paddingVertical: 4,
491
273
  },
492
274
  card: {
493
275
  alignSelf: 'stretch',
494
- backgroundColor: '#FFFFFF',
495
- borderRadius: 8,
276
+ borderRadius: 12,
496
277
  borderWidth: 1,
497
- borderColor: '#EFEFEF',
498
- padding: 8,
499
- shadowColor: '#000',
500
- shadowOpacity: 0.03,
501
- shadowRadius: 3,
502
- shadowOffset: { width: 0, height: 1 },
503
- elevation: 1,
504
- overflow: 'hidden',
278
+ borderColor: AppColors_1.AppColors.grayBorderSecondary,
279
+ borderLeftWidth: 3.5,
280
+ padding: 12,
281
+ backgroundColor: AppColors_1.AppColors.primaryLight,
282
+ shadowColor: AppColors_1.AppColors.black,
283
+ shadowOpacity: 0.05,
284
+ shadowRadius: 4,
285
+ shadowOffset: { width: 0, height: 2 },
286
+ elevation: 2,
287
+ },
288
+ cardPressed: {
289
+ opacity: 0.85,
290
+ transform: [{ scale: 0.99 }],
505
291
  },
506
292
  cardHeader: {
507
- alignSelf: 'stretch',
508
293
  flexDirection: 'row',
509
294
  justifyContent: 'space-between',
510
295
  alignItems: 'center',
511
- marginBottom: 6,
296
+ marginBottom: 8,
297
+ gap: 8,
512
298
  },
513
299
  headerLeft: {
514
300
  flexDirection: 'row',
@@ -517,93 +303,127 @@ const styles = react_native_1.StyleSheet.create({
517
303
  gap: 6,
518
304
  flex: 1,
519
305
  },
520
- badge: {
521
- paddingHorizontal: 6,
522
- paddingVertical: 3,
523
- borderRadius: 4,
306
+ headerRight: {
307
+ flexDirection: 'row',
308
+ alignItems: 'center',
309
+ gap: 4,
310
+ },
311
+ typeChip: {
312
+ flexDirection: 'row',
313
+ alignItems: 'center',
314
+ gap: 4,
315
+ paddingHorizontal: 7,
316
+ paddingVertical: 2.5,
317
+ borderRadius: 6,
524
318
  },
525
- badgeText: {
319
+ typeDot: {
320
+ width: 5,
321
+ height: 5,
322
+ borderRadius: 2.5,
323
+ },
324
+ typeChipText: {
526
325
  fontFamily: AppFonts_1.AppFonts.interBold,
527
- fontSize: 9,
326
+ fontSize: 9.5,
528
327
  letterSpacing: 0.5,
529
328
  },
530
- timestamp: {
531
- fontFamily: AppFonts_1.AppFonts.interMedium,
532
- fontSize: 11,
533
- color: AppColors_1.AppColors.grayTextWeak,
329
+ metaChip: {
330
+ paddingHorizontal: 6,
331
+ paddingVertical: 2.5,
332
+ borderRadius: 6,
333
+ borderWidth: 1,
534
334
  },
535
- serialNumber: {
335
+ metaChipText: {
536
336
  fontFamily: AppFonts_1.AppFonts.interBold,
537
- color: AppColors_1.AppColors.grayTextWeak,
538
- fontSize: 11,
539
- },
540
- callerText: {
541
- fontFamily: AppFonts_1.AppFonts.interRegular,
542
- fontSize: 10,
543
- color: AppColors_1.AppColors.grayTextWeak,
544
- maxWidth: '50%',
337
+ fontSize: 9.5,
338
+ letterSpacing: 0.2,
545
339
  },
546
340
  cardBody: {
547
- marginTop: 6,
548
- backgroundColor: '#FFFFFF',
549
- paddingHorizontal: 8,
550
- paddingVertical: 5,
551
- borderRadius: 6,
341
+ backgroundColor: AppColors_1.AppColors.primaryLight,
342
+ paddingHorizontal: 10,
343
+ paddingVertical: 8,
344
+ borderRadius: 9,
552
345
  borderWidth: 1,
553
- borderColor: '#EBECEF',
346
+ borderColor: AppColors_1.AppColors.grayBorderSecondary,
554
347
  },
555
348
  messageText: {
556
- fontFamily: react_native_1.Platform.OS === 'ios' ? 'System' : 'sans-serif',
557
- fontSize: 12,
349
+ fontFamily: AppFonts_1.AppFonts.interMedium,
350
+ fontSize: 12.5,
558
351
  color: AppColors_1.AppColors.primaryBlack,
559
- lineHeight: 16,
352
+ lineHeight: 18,
560
353
  },
561
354
  highlight: {
562
- backgroundColor: '#FFE44D',
355
+ backgroundColor: AppColors_1.AppColors.yellowHighlight,
563
356
  color: AppColors_1.AppColors.primaryBlack,
564
357
  borderRadius: 2,
565
358
  },
566
- jsonContainer: {
567
- marginTop: 4,
568
- backgroundColor: '#FFFFFF',
569
- borderRadius: 4,
570
- borderWidth: 1,
571
- borderColor: '#E2E8F0',
572
- padding: 6,
573
- },
574
359
  jsonPreviewContainer: {
575
- marginTop: 4,
576
- backgroundColor: '#FFFFFF',
577
- borderRadius: 4,
360
+ marginTop: 6,
361
+ backgroundColor: AppColors_1.AppColors.grayBackground,
362
+ borderRadius: 7,
578
363
  borderWidth: 1,
579
- borderColor: '#E2E8F0',
580
- padding: 6,
364
+ borderColor: AppColors_1.AppColors.grayBorderSecondary,
365
+ padding: 8,
581
366
  },
582
367
  jsonPreviewText: {
583
- fontFamily: react_native_1.Platform.OS === 'ios' ? 'Menlo' : 'monospace',
368
+ fontFamily: AppFonts_1.AppFonts.interRegular,
584
369
  fontSize: 11,
585
370
  color: AppColors_1.AppColors.primaryBlack,
586
- lineHeight: 15,
371
+ lineHeight: 16,
587
372
  },
588
373
  cardFooter: {
374
+ flexDirection: 'row',
375
+ alignItems: 'center',
376
+ justifyContent: 'space-between',
589
377
  marginTop: 8,
590
- paddingTop: 8,
591
- borderTopWidth: 1,
592
- borderTopColor: AppColors_1.AppColors.dividerColor,
378
+ gap: 6,
379
+ },
380
+ footerLeft: {
381
+ flexDirection: 'row',
382
+ alignItems: 'center',
383
+ gap: 5,
384
+ flex: 1,
385
+ flexWrap: 'wrap',
593
386
  },
594
- fullCallerText: {
387
+ footerRight: {
388
+ flexDirection: 'row',
389
+ alignItems: 'center',
390
+ gap: 4,
391
+ },
392
+ footerDot: {
393
+ width: 3,
394
+ height: 3,
395
+ borderRadius: 1.5,
396
+ backgroundColor: AppColors_1.AppColors.grayTextWeak,
397
+ opacity: 0.6,
398
+ },
399
+ footerText: {
595
400
  fontFamily: AppFonts_1.AppFonts.interRegular,
596
401
  fontSize: 10,
597
- color: AppColors_1.AppColors.grayText,
402
+ color: AppColors_1.AppColors.grayTextWeak,
403
+ letterSpacing: 0.1,
598
404
  },
599
- seeMoreBtn: {
600
- marginTop: 6,
601
- alignSelf: 'flex-start',
405
+ footerCaller: {
406
+ flexShrink: 1,
407
+ },
408
+ footerBadge: {
409
+ paddingHorizontal: 6,
410
+ paddingVertical: 1.5,
411
+ borderRadius: 5,
412
+ borderWidth: 1,
602
413
  },
603
- seeMoreText: {
414
+ footerBadgeText: {
604
415
  fontFamily: AppFonts_1.AppFonts.interBold,
605
- fontSize: 11,
606
- color: AppColors_1.AppColors.purple,
607
- textDecorationLine: 'underline',
416
+ fontSize: 9,
417
+ },
418
+ prefixTag: {
419
+ paddingHorizontal: 6,
420
+ paddingVertical: 1.5,
421
+ borderRadius: 4,
422
+ borderWidth: 1,
423
+ },
424
+ prefixTagText: {
425
+ fontFamily: AppFonts_1.AppFonts.interBold,
426
+ fontSize: 9.5,
427
+ letterSpacing: 0.3,
608
428
  },
609
429
  });