react-native-inapp-inspector 2.3.24 → 2.4.0

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 (207) hide show
  1. package/README.md +26 -5
  2. package/dist/commonjs/components/AnalyticsDetail.js +15 -12
  3. package/dist/commonjs/components/AnalyticsEventCard.js +11 -8
  4. package/dist/commonjs/components/AppHeaderLogo.js +4 -6
  5. package/dist/commonjs/components/ConsoleLogCard.d.ts +1 -0
  6. package/dist/commonjs/components/ConsoleLogCard.js +92 -80
  7. package/dist/commonjs/components/EndOfListFooter.d.ts +5 -1
  8. package/dist/commonjs/components/EndOfListFooter.js +27 -5
  9. package/dist/commonjs/components/Inspector/AnalyticsFilterModal.js +1 -1
  10. package/dist/commonjs/components/Inspector/AnalyticsTab.js +27 -299
  11. package/dist/commonjs/components/Inspector/ConsoleTab.js +36 -94
  12. package/dist/commonjs/components/Inspector/CrashDetail.js +11 -10
  13. package/dist/commonjs/components/Inspector/CrashTab.js +43 -33
  14. package/dist/commonjs/components/Inspector/DebuggingTab.js +13 -13
  15. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +107 -71
  16. package/dist/commonjs/components/Inspector/FabLauncher.js +8 -9
  17. package/dist/commonjs/components/Inspector/InspectorHeader.js +93 -70
  18. package/dist/commonjs/components/Inspector/LogDetail.js +10 -7
  19. package/dist/commonjs/components/Inspector/MainScreen.js +66 -30
  20. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +1 -1
  21. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +3 -3
  22. package/dist/commonjs/components/Inspector/NetworkDetail.js +29 -28
  23. package/dist/commonjs/components/Inspector/NetworkFilterModal.js +1 -1
  24. package/dist/commonjs/components/Inspector/NetworkTab.js +87 -85
  25. package/dist/commonjs/components/Inspector/NpmStarPrompt.js +3 -3
  26. package/dist/commonjs/components/Inspector/NpmUpdateToast.js +21 -22
  27. package/dist/commonjs/components/Inspector/PushCard.d.ts +4 -0
  28. package/dist/commonjs/components/Inspector/PushCard.js +89 -0
  29. package/dist/commonjs/components/Inspector/PushDetail.d.ts +4 -0
  30. package/dist/commonjs/components/Inspector/PushDetail.js +190 -0
  31. package/dist/commonjs/components/Inspector/PushTab.d.ts +3 -0
  32. package/dist/commonjs/components/Inspector/PushTab.js +45 -0
  33. package/dist/commonjs/components/Inspector/ReduxDetail.js +16 -13
  34. package/dist/commonjs/components/Inspector/ReduxTab.js +109 -106
  35. package/dist/commonjs/components/Inspector/SettingsPanel.js +230 -134
  36. package/dist/commonjs/components/Inspector/StorageTab.js +55 -51
  37. package/dist/commonjs/components/Inspector/TabBar.js +30 -26
  38. package/dist/commonjs/components/Inspector/UpdateAvailableModal.js +2 -2
  39. package/dist/commonjs/components/JsonViewer.js +151 -159
  40. package/dist/commonjs/components/LogCard.js +34 -38
  41. package/dist/commonjs/components/LogSyntaxHighlighter.js +3 -3
  42. package/dist/commonjs/components/ModuleErrorBoundary.d.ts +24 -0
  43. package/dist/commonjs/components/ModuleErrorBoundary.js +33 -0
  44. package/dist/commonjs/components/NetworkIcons.d.ts +3 -3
  45. package/dist/commonjs/components/NetworkIcons.js +10 -6
  46. package/dist/commonjs/components/SegmentedTabs.d.ts +8 -2
  47. package/dist/commonjs/components/SegmentedTabs.js +11 -7
  48. package/dist/commonjs/components/ShareButton.d.ts +11 -0
  49. package/dist/commonjs/components/ShareButton.js +6 -0
  50. package/dist/commonjs/constants/index.js +1 -1
  51. package/dist/commonjs/constants/version.d.ts +1 -1
  52. package/dist/commonjs/constants/version.js +1 -1
  53. package/dist/commonjs/customHooks/crashHandler.js +4 -4
  54. package/dist/commonjs/customHooks/networkLogger.js +1 -2
  55. package/dist/commonjs/customHooks/pushNotificationLogger.d.ts +19 -0
  56. package/dist/commonjs/customHooks/pushNotificationLogger.js +1 -0
  57. package/dist/commonjs/helpers/index.d.ts +6 -0
  58. package/dist/commonjs/helpers/index.js +4 -4
  59. package/dist/commonjs/helpers/memoryManager.d.ts +2 -2
  60. package/dist/commonjs/helpers/memoryManager.js +1 -1
  61. package/dist/commonjs/helpers/remoteConfig.js +1 -1
  62. package/dist/commonjs/helpers/settingsStore.d.ts +1 -0
  63. package/dist/commonjs/helpers/settingsStore.js +1 -1
  64. package/dist/commonjs/helpers/shareFormatter.d.ts +13 -0
  65. package/dist/commonjs/helpers/shareFormatter.js +7 -0
  66. package/dist/commonjs/i18n/index.d.ts +35 -0
  67. package/dist/commonjs/i18n/index.js +1 -1
  68. package/dist/commonjs/i18n/locales/ar.json +1 -0
  69. package/dist/commonjs/i18n/locales/de.json +1 -0
  70. package/dist/commonjs/i18n/locales/en.json +1 -1
  71. package/dist/commonjs/i18n/locales/es.json +1 -0
  72. package/dist/commonjs/i18n/locales/fr.json +1 -0
  73. package/dist/commonjs/i18n/locales/hi.json +1 -0
  74. package/dist/commonjs/i18n/locales/ja.json +1 -0
  75. package/dist/commonjs/i18n/locales/ko.json +1 -0
  76. package/dist/commonjs/i18n/locales/pt.json +1 -0
  77. package/dist/commonjs/i18n/locales/ru.json +1 -0
  78. package/dist/commonjs/i18n/locales/zh.json +1 -0
  79. package/dist/commonjs/index.d.ts +6 -5
  80. package/dist/commonjs/index.js +4 -4
  81. package/dist/commonjs/push.d.ts +4 -0
  82. package/dist/commonjs/push.js +1 -0
  83. package/dist/commonjs/styles/AppColors.d.ts +40 -0
  84. package/dist/commonjs/styles/AppColors.js +1 -1
  85. package/dist/commonjs/styles/index.js +1 -1
  86. package/dist/commonjs/types/enums.d.ts +30 -20
  87. package/dist/commonjs/types/enums.js +1 -1
  88. package/dist/commonjs/types/index.d.ts +10 -0
  89. package/dist/commonjs/types/interfaces.d.ts +63 -7
  90. package/dist/esm/components/AnalyticsDetail.js +84 -81
  91. package/dist/esm/components/AnalyticsEventCard.js +20 -17
  92. package/dist/esm/components/AppHeaderLogo.js +5 -7
  93. package/dist/esm/components/ConsoleLogCard.d.ts +1 -0
  94. package/dist/esm/components/ConsoleLogCard.js +98 -86
  95. package/dist/esm/components/EndOfListFooter.d.ts +5 -1
  96. package/dist/esm/components/EndOfListFooter.js +36 -14
  97. package/dist/esm/components/Inspector/AnalyticsFilterModal.js +14 -14
  98. package/dist/esm/components/Inspector/AnalyticsTab.js +44 -316
  99. package/dist/esm/components/Inspector/ConsoleTab.js +55 -113
  100. package/dist/esm/components/Inspector/CrashDetail.js +53 -52
  101. package/dist/esm/components/Inspector/CrashTab.js +74 -64
  102. package/dist/esm/components/Inspector/DebuggingTab.js +33 -33
  103. package/dist/esm/components/Inspector/DeviceInfoTab.js +174 -138
  104. package/dist/esm/components/Inspector/FabLauncher.js +41 -42
  105. package/dist/esm/components/Inspector/InspectorHeader.js +138 -115
  106. package/dist/esm/components/Inspector/LogDetail.js +24 -21
  107. package/dist/esm/components/Inspector/MainScreen.js +98 -62
  108. package/dist/esm/components/Inspector/MediaGalleryTab.js +1 -1
  109. package/dist/esm/components/Inspector/MediaPreviewModal.js +31 -31
  110. package/dist/esm/components/Inspector/NetworkDetail.js +88 -87
  111. package/dist/esm/components/Inspector/NetworkFilterModal.js +8 -8
  112. package/dist/esm/components/Inspector/NetworkTab.js +132 -130
  113. package/dist/esm/components/Inspector/NpmStarPrompt.js +42 -42
  114. package/dist/esm/components/Inspector/NpmUpdateToast.js +45 -46
  115. package/dist/esm/components/Inspector/PushCard.d.ts +4 -0
  116. package/dist/esm/components/Inspector/PushCard.js +89 -0
  117. package/dist/esm/components/Inspector/PushDetail.d.ts +4 -0
  118. package/dist/esm/components/Inspector/PushDetail.js +190 -0
  119. package/dist/esm/components/Inspector/PushTab.d.ts +3 -0
  120. package/dist/esm/components/Inspector/PushTab.js +45 -0
  121. package/dist/esm/components/Inspector/ReduxDetail.js +40 -37
  122. package/dist/esm/components/Inspector/ReduxTab.js +155 -152
  123. package/dist/esm/components/Inspector/SettingsPanel.js +380 -284
  124. package/dist/esm/components/Inspector/StorageTab.js +177 -173
  125. package/dist/esm/components/Inspector/TabBar.js +38 -34
  126. package/dist/esm/components/Inspector/UpdateAvailableModal.js +1 -1
  127. package/dist/esm/components/JsonViewer.js +161 -169
  128. package/dist/esm/components/LogCard.js +38 -42
  129. package/dist/esm/components/LogSyntaxHighlighter.js +1 -1
  130. package/dist/esm/components/ModuleErrorBoundary.d.ts +24 -0
  131. package/dist/esm/components/ModuleErrorBoundary.js +33 -0
  132. package/dist/esm/components/NetworkIcons.d.ts +3 -3
  133. package/dist/esm/components/NetworkIcons.js +7 -3
  134. package/dist/esm/components/SegmentedTabs.d.ts +8 -2
  135. package/dist/esm/components/SegmentedTabs.js +12 -8
  136. package/dist/esm/components/ShareButton.d.ts +11 -0
  137. package/dist/esm/components/ShareButton.js +6 -0
  138. package/dist/esm/constants/index.js +1 -1
  139. package/dist/esm/constants/version.d.ts +1 -1
  140. package/dist/esm/constants/version.js +1 -1
  141. package/dist/esm/customHooks/crashHandler.js +6 -6
  142. package/dist/esm/customHooks/networkLogger.js +1 -2
  143. package/dist/esm/customHooks/pushNotificationLogger.d.ts +19 -0
  144. package/dist/esm/customHooks/pushNotificationLogger.js +1 -0
  145. package/dist/esm/helpers/index.d.ts +6 -0
  146. package/dist/esm/helpers/index.js +4 -4
  147. package/dist/esm/helpers/memoryManager.d.ts +2 -2
  148. package/dist/esm/helpers/memoryManager.js +1 -1
  149. package/dist/esm/helpers/remoteConfig.js +1 -1
  150. package/dist/esm/helpers/settingsStore.d.ts +1 -0
  151. package/dist/esm/helpers/settingsStore.js +1 -1
  152. package/dist/esm/helpers/shareFormatter.d.ts +13 -0
  153. package/dist/esm/helpers/shareFormatter.js +7 -0
  154. package/dist/esm/i18n/index.d.ts +35 -0
  155. package/dist/esm/i18n/index.js +1 -1
  156. package/dist/esm/i18n/locales/ar.json +1 -0
  157. package/dist/esm/i18n/locales/de.json +1 -0
  158. package/dist/esm/i18n/locales/en.json +1 -1
  159. package/dist/esm/i18n/locales/es.json +1 -0
  160. package/dist/esm/i18n/locales/fr.json +1 -0
  161. package/dist/esm/i18n/locales/hi.json +1 -0
  162. package/dist/esm/i18n/locales/ja.json +1 -0
  163. package/dist/esm/i18n/locales/ko.json +1 -0
  164. package/dist/esm/i18n/locales/pt.json +1 -0
  165. package/dist/esm/i18n/locales/ru.json +1 -0
  166. package/dist/esm/i18n/locales/zh.json +1 -0
  167. package/dist/esm/index.d.ts +6 -5
  168. package/dist/esm/index.js +7 -7
  169. package/dist/esm/push.d.ts +4 -0
  170. package/dist/esm/push.js +1 -0
  171. package/dist/esm/styles/AppColors.d.ts +40 -0
  172. package/dist/esm/styles/AppColors.js +1 -1
  173. package/dist/esm/styles/index.js +1 -1
  174. package/dist/esm/types/enums.d.ts +30 -20
  175. package/dist/esm/types/enums.js +1 -1
  176. package/dist/esm/types/index.d.ts +10 -0
  177. package/dist/esm/types/interfaces.d.ts +63 -7
  178. package/package.json +53 -24
  179. package/src/native/NativeInspector.ts +0 -1
  180. package/dist/commonjs/bundle.d.ts +0 -2
  181. package/dist/commonjs/bundle.js +0 -1
  182. package/dist/commonjs/components/BrandSquareIcon.d.ts +0 -5
  183. package/dist/commonjs/components/BrandSquareIcon.js +0 -112
  184. package/dist/commonjs/components/Inspector/BundleTab.d.ts +0 -48
  185. package/dist/commonjs/components/Inspector/BundleTab.js +0 -1297
  186. package/dist/commonjs/components/Inspector/PerformanceTab.d.ts +0 -27
  187. package/dist/commonjs/components/Inspector/PerformanceTab.js +0 -454
  188. package/dist/commonjs/customHooks/bundleAnalyzer.d.ts +0 -115
  189. package/dist/commonjs/customHooks/bundleAnalyzer.js +0 -1
  190. package/dist/commonjs/customHooks/performanceTracker.d.ts +0 -144
  191. package/dist/commonjs/customHooks/performanceTracker.js +0 -63
  192. package/dist/commonjs/performance.d.ts +0 -2
  193. package/dist/commonjs/performance.js +0 -1
  194. package/dist/esm/bundle.d.ts +0 -2
  195. package/dist/esm/bundle.js +0 -1
  196. package/dist/esm/components/BrandSquareIcon.d.ts +0 -5
  197. package/dist/esm/components/BrandSquareIcon.js +0 -112
  198. package/dist/esm/components/Inspector/BundleTab.d.ts +0 -48
  199. package/dist/esm/components/Inspector/BundleTab.js +0 -1297
  200. package/dist/esm/components/Inspector/PerformanceTab.d.ts +0 -27
  201. package/dist/esm/components/Inspector/PerformanceTab.js +0 -454
  202. package/dist/esm/customHooks/bundleAnalyzer.d.ts +0 -115
  203. package/dist/esm/customHooks/bundleAnalyzer.js +0 -1
  204. package/dist/esm/customHooks/performanceTracker.d.ts +0 -144
  205. package/dist/esm/customHooks/performanceTracker.js +0 -63
  206. package/dist/esm/performance.d.ts +0 -2
  207. package/dist/esm/performance.js +0 -1
@@ -1,11 +1,11 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(i,o,n,r){r===void 0&&(r=n);var l=Object.getOwnPropertyDescriptor(o,n);(!l||("get"in l?!o.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return o[n]}}),Object.defineProperty(i,r,l)}):(function(i,o,n,r){r===void 0&&(r=n),i[r]=o[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(i,o){Object.defineProperty(i,"default",{enumerable:!0,value:o})}):function(i,o){i.default=o}),__importStar=this&&this.__importStar||(function(){var i=function(o){return i=Object.getOwnPropertyNames||function(n){var r=[];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(r[r.length]=l);return r},i(o)};return function(o){if(o&&o.__esModule)return o;var n={};if(o!=null)for(var r=i(o),l=0;l<r.length;l++)r[l]!=="default"&&__createBinding(n,o,r[l]);return __setModuleDefault(n,o),n}})(),__importDefault=this&&this.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),react_native_1=require("react-native"),react_native_linear_gradient_1=__importDefault(require("react-native-linear-gradient")),InspectorContext_1=require("./InspectorContext"),TouchableScale_1=__importDefault(require("../TouchableScale")),AppHeaderLogo_1=__importDefault(require("../AppHeaderLogo")),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),constants_1=require("../../constants"),constants_2=require("../../constants"),helpers_1=require("../../helpers"),NativeInspector_1=require("../../native/NativeInspector"),capture_1=require("../../capture"),toast_1=require("../../helpers/toast"),UpdateAvailableModal_1=require("./UpdateAvailableModal"),MediaPreviewModal_1=require("./MediaPreviewModal"),NetworkIcons_1=require("../NetworkIcons"),i18n_1=require("../../i18n"),InspectorHeader=react_1.default.memo(()=>{const{t:i}=(0,i18n_1.useTranslation)(),{modalHeightPercent:o,appIcon:n,selected:r,setSelected:l,selectedEvent:d,setSelectedEvent:L,selectedLog:p,setSelectedLog:E,selectedReduxSlice:w,setSelectedReduxSlice:q,selectedReduxAction:b,setSelectedReduxAction:W,reduxState:N,reduxLastActionMap:j,showHeaderInfo:se,setShowHeaderInfo:de,updateAvailable:V,latestNpmVersion:U,clearAnim:$,activePulseAnim:G,unreadPulseAnim:K,runClearAllWithAnimation:Q,settingsPage:f,setSettingsPage:z,isAboutOpen:I,setIsAboutOpen:H,resetToDefaults:J,closeModal:O,minimizeInspector:X,detailTitle:Y,activeTab:c,environment:B,visible:ce,selectedCrash:s,setSelectedCrash:Z,refreshMediaCount:_}=(0,InspectorContext_1.useInspector)(),{width:m}=(0,react_native_1.useWindowDimensions)(),e=m<360,C=m<400,pe=m>=600,[ee,D]=react_1.default.useState(!1),[te,ue]=react_1.default.useState(()=>(0,helpers_1.getAppVersionAndBuild)().formatted),[u,T]=react_1.default.useState(!1),[ie,R]=react_1.default.useState(0),g=react_1.default.useRef(null);react_1.default.useEffect(()=>{capture_1.ScreenCapture.isRecording().then(t=>{T(t)}).catch(()=>{})},[]),react_1.default.useEffect(()=>(u?(R(0),g.current=setInterval(()=>{R(t=>t+1)},1e3)):(g.current&&(clearInterval(g.current),g.current=null),R(0)),()=>{g.current&&clearInterval(g.current)}),[u]);const[k,y]=react_1.default.useState(null),re=react_1.default.useCallback(async()=>{try{(0,NativeInspector_1.triggerNativeHaptic)("light");const t=await capture_1.ScreenCapture.takeScreenshot({format:"png",quality:.9,hideInspector:!0});if(t){(0,NativeInspector_1.triggerNativeHaptic)("success");const a={id:`screenshot_${t.timestamp}.png`,type:"image",format:t.format,uri:t.uri,filename:t.uri.split("/").pop()||`screenshot_${t.timestamp}.png`,sizeBytes:t.sizeBytes,timestamp:t.timestamp,width:t.width,height:t.height};y(a),_?.().catch(()=>{}),(0,toast_1.showToast)(i("header.screenshotCaptured"))}else(0,toast_1.showToast)(i("header.screenshotFailed"))}catch{(0,toast_1.showToast)(i("header.screenshotError"))}},[_,i]),ae=react_1.default.useCallback(async()=>{try{if(u){(0,NativeInspector_1.triggerNativeHaptic)("medium");const t=await capture_1.ScreenCapture.stopRecording();if(T(!1),t){(0,NativeInspector_1.triggerNativeHaptic)("success");const a={id:`video_${t.timestamp}.${t.format}`,type:t.format==="gif"?"gif":"video",format:t.format,uri:t.uri,filename:t.uri.split("/").pop()||`video_${t.timestamp}.${t.format}`,sizeBytes:t.sizeBytes,timestamp:t.timestamp,durationMs:t.durationMs,width:t.width,height:t.height,hasAudio:t.hasAudio};y(a),_?.().catch(()=>{}),(0,toast_1.showToast)(i("header.recordingSaved",{duration:(t.durationMs/1e3).toFixed(1)}))}}else(0,NativeInspector_1.triggerNativeHaptic)("medium"),await capture_1.ScreenCapture.startRecording({fps:24,audioSource:"none"})?(T(!0),(0,toast_1.showToast)(i("header.recordingStarted"))):(0,toast_1.showToast)(i("header.recordingStartFailed"))}catch{(0,toast_1.showToast)(i("header.recordingError")),T(!1)}},[u,i]),oe=t=>{const a=Math.floor(t/60),M=t%60;return`${a.toString().padStart(2,"0")}:${M.toString().padStart(2,"0")}`},v=(0,react_1.useMemo)(()=>{const t=(B||(__DEV__?"DEV":"PROD")).trim(),a=t.toUpperCase();return a==="DEV"||a.includes("DEV")||a==="LOCAL"?{label:t,bg:`${AppColors_1.AppColors.emerald500}40`,border:`${AppColors_1.AppColors.emerald400}8C`,text:AppColors_1.AppColors.mintGreenBorder}:a==="UAT"||a==="QA"||a==="TEST"?{label:t,bg:`${AppColors_1.AppColors.amber500}47`,border:`${AppColors_1.AppColors.amber400}99`,text:AppColors_1.AppColors.amberWarmBorder}:a==="PREPROD"||a==="STAGE"||a==="STAGING"?{label:t,bg:`${AppColors_1.AppColors.purple500}47`,border:`${AppColors_1.AppColors.purple400}99`,text:AppColors_1.AppColors.violetSoftBorder}:{label:t,bg:`${AppColors_1.AppColors.rose500}40`,border:`${AppColors_1.AppColors.roseBorder}8C`,text:AppColors_1.AppColors.errorBorder}},[B]),S=c==="apis"&&r!=null||c==="analytics"&&d!=null||c==="logs"&&p!=null||c==="redux"&&(w!=null||b!=null)||c==="crash"&&s!=null,x=f!==null,A=S||x||I,le=(0,react_1.useMemo)(()=>{switch(f){case"apis":return"APIs (Network)";case"logs":return"Console Logs";case"performance":return"Performance Tracker";case"bundle":return"Bundle Analyzer";case"crash":return"Crash Protection";case"analytics":return"Analytics Logger";case"redux":return"Redux Inspector";default:return"Settings & Modules"}},[f]),P=(0,react_1.useMemo)(()=>react_native_1.Platform.OS==="ios"?o>=98?m>=390?50:44:0:react_native_1.Platform.OS==="android"&&o>=98?react_native_1.StatusBar.currentHeight||24:0,[o,m]),h=e?28:C?30:32,ne=e?42:C?46:50;return<>
2
- <react_native_1.View style={[styles_1.default.headerGradient,{minHeight:(e?58:62)+P}]}>
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(i,o,n,r){r===void 0&&(r=n);var l=Object.getOwnPropertyDescriptor(o,n);(!l||("get"in l?!o.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return o[n]}}),Object.defineProperty(i,r,l)}):(function(i,o,n,r){r===void 0&&(r=n),i[r]=o[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(i,o){Object.defineProperty(i,"default",{enumerable:!0,value:o})}):function(i,o){i.default=o}),__importStar=this&&this.__importStar||(function(){var i=function(o){return i=Object.getOwnPropertyNames||function(n){var r=[];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(r[r.length]=l);return r},i(o)};return function(o){if(o&&o.__esModule)return o;var n={};if(o!=null)for(var r=i(o),l=0;l<r.length;l++)r[l]!=="default"&&__createBinding(n,o,r[l]);return __setModuleDefault(n,o),n}})(),__importDefault=this&&this.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),react_native_1=require("react-native"),react_native_linear_gradient_1=__importDefault(require("react-native-linear-gradient")),InspectorContext_1=require("./InspectorContext"),TouchableScale_1=__importDefault(require("../TouchableScale")),AppHeaderLogo_1=__importDefault(require("../AppHeaderLogo")),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),constants_1=require("../../constants"),constants_2=require("../../constants"),helpers_1=require("../../helpers"),NativeInspector_1=require("../../native/NativeInspector"),capture_1=require("../../capture"),toast_1=require("../../helpers/toast"),UpdateAvailableModal_1=require("./UpdateAvailableModal"),MediaPreviewModal_1=require("./MediaPreviewModal"),NetworkIcons_1=require("../NetworkIcons"),i18n_1=require("../../i18n"),InspectorHeader=react_1.default.memo(()=>{const{t:i}=(0,i18n_1.useTranslation)(),{modalHeightPercent:o,appIcon:n,selected:r,setSelected:l,selectedEvent:p,setSelectedEvent:E,selectedLog:u,setSelectedLog:W,selectedReduxSlice:_,setSelectedReduxSlice:q,selectedReduxAction:C,setSelectedReduxAction:N,reduxState:j,reduxLastActionMap:U,updateAvailable:z,latestNpmVersion:G,clearAnim:k,activePulseAnim:K,unreadPulseAnim:Q,runClearAllWithAnimation:J,settingsPage:f,setSettingsPage:D,isAboutOpen:I,setIsAboutOpen:H,resetToDefaults:X,closeModal:O,minimizeInspector:Y,detailTitle:Z,activeTab:d,environment:P,selectedCrash:c,setSelectedCrash:ee,selectedPush:s,setSelectedPush:te,refreshMediaCount:m}=(0,InspectorContext_1.useInspector)(),{width:y}=(0,react_native_1.useWindowDimensions)(),e=y<360,T=y<400,[ie,R]=react_1.default.useState(!1),[re]=react_1.default.useState(()=>(0,helpers_1.getAppVersionAndBuild)().formatted),[g,S]=react_1.default.useState(!1),[ae,M]=react_1.default.useState(0),w=react_1.default.useRef(null);react_1.default.useEffect(()=>{capture_1.ScreenCapture.isRecording().then(t=>{S(t)}).catch(()=>{})},[]),react_1.default.useEffect(()=>(g?(M(0),w.current=setInterval(()=>{M(t=>t+1)},1e3)):(w.current&&(clearInterval(w.current),w.current=null),M(0)),()=>{w.current&&clearInterval(w.current)}),[g]);const[B,b]=react_1.default.useState(null),oe=react_1.default.useCallback(async()=>{try{(0,NativeInspector_1.triggerNativeHaptic)("light");const t=await capture_1.ScreenCapture.takeScreenshot({format:"png",quality:.9,hideInspector:!0});if(t){(0,NativeInspector_1.triggerNativeHaptic)("success");const a={id:`screenshot_${t.timestamp}.png`,type:"image",format:t.format,uri:t.uri,filename:t.uri.split("/").pop()||`screenshot_${t.timestamp}.png`,sizeBytes:t.sizeBytes,timestamp:t.timestamp,width:t.width,height:t.height};b(a),m?.().catch(()=>{}),(0,toast_1.showToast)(i("header.screenshotCaptured"))}else(0,toast_1.showToast)(i("header.screenshotFailed"))}catch{(0,toast_1.showToast)(i("header.screenshotError"))}},[m,i]),le=react_1.default.useCallback(async()=>{try{if(g){(0,NativeInspector_1.triggerNativeHaptic)("medium");const t=await capture_1.ScreenCapture.stopRecording();if(S(!1),t){(0,NativeInspector_1.triggerNativeHaptic)("success");const a={id:`video_${t.timestamp}.${t.format}`,type:t.format==="gif"?"gif":"video",format:t.format,uri:t.uri,filename:t.uri.split("/").pop()||`video_${t.timestamp}.${t.format}`,sizeBytes:t.sizeBytes,timestamp:t.timestamp,durationMs:t.durationMs,width:t.width,height:t.height,hasAudio:t.hasAudio};b(a),m?.().catch(()=>{}),(0,toast_1.showToast)(i("header.recordingSaved",{duration:(t.durationMs/1e3).toFixed(1)}))}}else(0,NativeInspector_1.triggerNativeHaptic)("medium"),await capture_1.ScreenCapture.startRecording({fps:24,audioSource:"none"})?(S(!0),(0,toast_1.showToast)(i("header.recordingStarted"))):(0,toast_1.showToast)(i("header.recordingStartFailed"))}catch{(0,toast_1.showToast)(i("header.recordingError")),S(!1)}},[g,i]),ne=t=>{const a=Math.floor(t/60),$=t%60;return`${a.toString().padStart(2,"0")}:${$.toString().padStart(2,"0")}`},v=(0,react_1.useMemo)(()=>{const t=(P||(__DEV__?"DEV":"PROD")).trim(),a=t.toUpperCase();return a==="DEV"||a.includes("DEV")||a==="LOCAL"?{label:t,bg:`${AppColors_1.AppColors.emerald500}40`,border:`${AppColors_1.AppColors.emerald400}8C`,text:AppColors_1.AppColors.mintGreenBorder}:a==="UAT"||a==="QA"||a==="TEST"?{label:t,bg:`${AppColors_1.AppColors.amber500}47`,border:`${AppColors_1.AppColors.amber400}99`,text:AppColors_1.AppColors.amberWarmBorder}:a==="PREPROD"||a==="STAGE"||a==="STAGING"?{label:t,bg:`${AppColors_1.AppColors.purple500}47`,border:`${AppColors_1.AppColors.purple400}99`,text:AppColors_1.AppColors.violetSoftBorder}:{label:t,bg:`${AppColors_1.AppColors.rose500}40`,border:`${AppColors_1.AppColors.roseBorder}8C`,text:AppColors_1.AppColors.errorBorder}},[P]),x=d==="apis"&&r!=null||d==="analytics"&&p!=null||d==="logs"&&u!=null||d==="redux"&&(_!=null||C!=null)||d==="crash"&&c!=null||d==="push"&&s!=null,A=f!==null,V=x||A||I,se=(0,react_1.useMemo)(()=>{switch(f){case"apis":return"APIs (Network)";case"logs":return"Console Logs";case"crash":return"Crash Protection";case"analytics":return"Analytics Logger";case"redux":return"Redux Inspector";case"media":return"Screencast (Media)";case"push":return"Push Notifications";default:return"Settings & Modules"}},[f]),F=(0,react_1.useMemo)(()=>react_native_1.Platform.OS==="ios"?o>=98?y>=390?50:44:0:react_native_1.Platform.OS==="android"&&o>=98?react_native_1.StatusBar.currentHeight||24:0,[o,y]),h=e?28:T?30:32,de=e?48:T?52:56;return<>
2
+ <react_native_1.View style={[styles_1.default.headerGradient,{minHeight:(e?62:66)+F}]}>
3
3
 
4
4
  <react_native_linear_gradient_1.default colors={[AppColors_1.AppColors.indigo600,AppColors_1.AppColors.violet600]}start={{x:0,y:0}}end={{x:1,y:1}}style={{position:"absolute",top:0,left:0,right:0,bottom:0,borderTopLeftRadius:20,borderTopRightRadius:20}}pointerEvents="none"/>
5
- <react_native_1.View style={{paddingTop:P,width:"100%"}}>
5
+ <react_native_1.View style={{paddingTop:F,width:"100%"}}>
6
6
  <react_native_1.View style={[styles_1.default.header,{width:"100%",justifyContent:"space-between",paddingHorizontal:e?12:16,paddingVertical:e?8:10,minHeight:e?52:56}]}>
7
- <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?8:10,flex:S?void 0:1,flexShrink:S?0:1,minWidth:0}}>
8
- {A&&<TouchableScale_1.default onPress={()=>{if(I){H(!1);return}if(x){z(f==="main"?null:"main");return}l(null),L(null),E(null),q(null),W(null),Z(null)}}hitSlop={15}style={{width:e?32:36,height:e?32:36,borderRadius:e?16:18,alignItems:"center",justifyContent:"center",backgroundColor:`${AppColors_1.AppColors.white}2E`,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}4D`}}>
7
+ <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?8:10,flex:x?void 0:1,flexShrink:x?0:1,minWidth:0}}>
8
+ {V&&<TouchableScale_1.default onPress={()=>{if(I){H(!1);return}if(A){D(f==="main"?null:"main");return}l(null),E(null),W(null),q(null),N(null),ee(null),te(null)}}hitSlop={15}style={{width:e?32:36,height:e?32:36,borderRadius:e?16:18,alignItems:"center",justifyContent:"center",backgroundColor:`${AppColors_1.AppColors.white}2E`,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}4D`}}>
9
9
  <react_native_1.View style={{position:"absolute",width:e?40:44,height:e?40:44,borderRadius:22,backgroundColor:`${AppColors_1.AppColors.white}1A`}}/>
10
10
  <NetworkIcons_1.WhiteBackNavigation/>
11
11
  </TouchableScale_1.default>}
@@ -24,10 +24,10 @@
24
24
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:e?10:11,lineHeight:e?14:15,color:`${AppColors_1.AppColors.white}CC`,marginTop:1}}numberOfLines={1}>
25
25
  Package info, runtime specs & diagnostic payload
26
26
  </react_native_1.Text>
27
- </react_native_1.View>:x?<react_native_1.View style={{gap:3,flex:1,minWidth:0,justifyContent:"center"}}>
27
+ </react_native_1.View>:A?<react_native_1.View style={{gap:3,flex:1,minWidth:0,justifyContent:"center"}}>
28
28
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
29
29
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:e?15:16.5,lineHeight:e?19:21,color:AppColors_1.AppColors.white,letterSpacing:-.2}}numberOfLines={1}>
30
- {le}
30
+ {se}
31
31
  </react_native_1.Text>
32
32
  {f==="main"&&<react_native_1.View style={{backgroundColor:`${AppColors_1.AppColors.white}26`,paddingHorizontal:e?5:6,paddingVertical:2,borderRadius:8,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}20`}}>
33
33
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:e?8.5:9.5,lineHeight:12,color:AppColors_1.AppColors.white}}>
@@ -38,11 +38,11 @@
38
38
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:e?10:11,lineHeight:e?14:15,color:`${AppColors_1.AppColors.white}CC`,marginTop:1}}numberOfLines={1}>
39
39
  {f==="main"?"Manage modules and preferences":"Configure module parameters"}
40
40
  </react_native_1.Text>
41
- </react_native_1.View>:A?null:<react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?10:12,flex:1,minWidth:0,marginRight:4}}>
42
- <AppHeaderLogo_1.default size={ne}customIcon={n}/>
41
+ </react_native_1.View>:V?null:<react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?10:12,flex:1,minWidth:0,marginRight:4}}>
42
+ <AppHeaderLogo_1.default size={de}customIcon={n}/>
43
43
  <react_native_1.View style={{gap:4,flex:1,minWidth:0,justifyContent:"center"}}>
44
44
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?6:7,minWidth:0}}>
45
- <react_native_1.Text style={[styles_1.default.headerTitle,{fontSize:e?15:C?16:17,lineHeight:e?20:C?22:23,flexShrink:1,paddingBottom:0}]}numberOfLines={1}ellipsizeMode="tail">
45
+ <react_native_1.Text style={[styles_1.default.headerTitle,{fontSize:e?15:T?16:17,lineHeight:e?20:T?22:23,flexShrink:1,paddingBottom:0}]}numberOfLines={1}ellipsizeMode="tail">
46
46
  {(0,helpers_1.getAppName)()}
47
47
  </react_native_1.Text>
48
48
  <react_native_1.View style={[styles_1.default.envBadge,{backgroundColor:v.bg,borderColor:v.border,flexShrink:0,paddingHorizontal:e?6:7,paddingVertical:2.5,borderRadius:6,marginBottom:0}]}>
@@ -50,8 +50,8 @@
50
50
  {v.label}
51
51
  </react_native_1.Text>
52
52
  </react_native_1.View>
53
- {V&&<react_native_1.Pressable hitSlop={10}onPress={()=>D(!0)}style={{flexDirection:"row",alignItems:"center",backgroundColor:AppColors_1.AppColors.warningAmber,borderRadius:6,paddingHorizontal:e?5:6.5,paddingVertical:2.5,gap:3.5,shadowColor:AppColors_1.AppColors.warningAmber,shadowOffset:{width:0,height:1.5},shadowOpacity:.35,shadowRadius:3,elevation:3,flexShrink:0}}>
54
- <react_native_1.Animated.View style={{width:5,height:5,borderRadius:2.5,backgroundColor:AppColors_1.AppColors.white,opacity:G,transform:[{scale:K}]}}/>
53
+ {z&&<react_native_1.Pressable hitSlop={10}onPress={()=>R(!0)}style={{flexDirection:"row",alignItems:"center",backgroundColor:AppColors_1.AppColors.warningAmber,borderRadius:6,paddingHorizontal:e?5:6.5,paddingVertical:2.5,gap:3.5,shadowColor:AppColors_1.AppColors.warningAmber,shadowOffset:{width:0,height:1.5},shadowOpacity:.35,shadowRadius:3,elevation:3,flexShrink:0}}>
54
+ <react_native_1.Animated.View style={{width:5,height:5,borderRadius:2.5,backgroundColor:AppColors_1.AppColors.white,opacity:K,transform:[{scale:Q}]}}/>
55
55
  {!e&&<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,lineHeight:11,color:AppColors_1.AppColors.white,letterSpacing:.3}}>
56
56
  UPDATE
57
57
  </react_native_1.Text>}
@@ -64,16 +64,16 @@
64
64
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",backgroundColor:`${AppColors_1.AppColors.white}1F`,borderRadius:6,paddingHorizontal:e?6:7,paddingVertical:3,gap:4,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}2E`,flexShrink:1,minWidth:0}}>
65
65
  {react_native_1.Platform.OS==="ios"?<NetworkIcons_1.AppleIcon color={`${AppColors_1.AppColors.white}E6`}size={e?9.5:10.5}/>:<NetworkIcons_1.AndroidIcon color={`${AppColors_1.AppColors.white}E6`}size={e?9.5:10.5}/>}
66
66
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:e?9:10,lineHeight:13,color:`${AppColors_1.AppColors.white}EB`,letterSpacing:.1}}numberOfLines={1}ellipsizeMode="tail">
67
- {te}
67
+ {re}
68
68
  </react_native_1.Text>
69
69
  </react_native_1.View>
70
70
 
71
- <react_native_1.Pressable onPress={()=>{V?D(!0):react_native_1.Linking.openURL("https://www.npmjs.com/package/react-native-inapp-inspector").catch(()=>{})}}style={{flexDirection:"row",alignItems:"center",backgroundColor:`${AppColors_1.AppColors.white}1F`,borderRadius:6,paddingHorizontal:e?6:7,paddingVertical:3,gap:4,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}2E`,flexShrink:0}}>
71
+ <react_native_1.Pressable onPress={()=>{z?R(!0):react_native_1.Linking.openURL("https://www.npmjs.com/package/react-native-inapp-inspector").catch(()=>{})}}style={{flexDirection:"row",alignItems:"center",backgroundColor:`${AppColors_1.AppColors.white}1F`,borderRadius:6,paddingHorizontal:e?6:7,paddingVertical:3,gap:4,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}2E`,flexShrink:0}}>
72
72
  <NetworkIcons_1.NpmIcon size={e?9.5:10.5}color={AppColors_1.AppColors.npmRedLight}/>
73
73
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:e?9:10,lineHeight:13,color:`${AppColors_1.AppColors.white}EB`,letterSpacing:.1}}numberOfLines={1}>
74
74
  v{constants_2.LIB_VERSION}
75
75
  </react_native_1.Text>
76
- {V&&<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,color:AppColors_1.AppColors.warningAmber}}>
76
+ {z&&<react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,color:AppColors_1.AppColors.warningAmber}}>
77
77
  ●
78
78
  </react_native_1.Text>}
79
79
  </react_native_1.Pressable>
@@ -82,8 +82,8 @@
82
82
  </react_native_1.View>}
83
83
  </react_native_1.View>
84
84
 
85
- {S&&<react_native_1.View style={[styles_1.default.headerCenter,{paddingHorizontal:e?2:6}]}>
86
- {c==="apis"&&r!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
85
+ {x&&<react_native_1.View style={[styles_1.default.headerCenter,{paddingHorizontal:e?2:6}]}>
86
+ {d==="apis"&&r!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
87
87
  <react_native_1.View style={styles_1.default.headerDetailRow}>
88
88
  <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:constants_1.METHOD_COLORS[r.method]??AppColors_1.AppColors.grayText,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
89
89
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
@@ -91,7 +91,7 @@
91
91
  </react_native_1.Text>
92
92
  </react_native_1.View>
93
93
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
94
- {Y}
94
+ {Z}
95
95
  </react_native_1.Text>
96
96
  </react_native_1.View>
97
97
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
@@ -114,49 +114,49 @@
114
114
  </react_native_1.Text>
115
115
  </react_native_1.View>}
116
116
  </react_native_1.View>
117
- </react_native_1.View>:c==="analytics"&&d!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
117
+ </react_native_1.View>:d==="analytics"&&p!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
118
118
  <react_native_1.View style={styles_1.default.headerDetailRow}>
119
- <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:d.source==="firebase"?`${AppColors_1.AppColors.firebaseOrange}4D`:`${AppColors_1.AppColors.purple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
119
+ <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:p.source==="firebase"?`${AppColors_1.AppColors.firebaseOrange}4D`:`${AppColors_1.AppColors.purple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
120
120
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
121
- {d.source==="firebase"?"FB":"MAN"}
121
+ {p.source==="firebase"?"FB":"MAN"}
122
122
  </react_native_1.Text>
123
123
  </react_native_1.View>
124
124
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
125
- #{d.id!=null?d.id+1:1}{" "}
126
- {d.name}
125
+ #{p.id!=null?p.id+1:1}{" "}
126
+ {p.name}
127
127
  </react_native_1.Text>
128
128
  </react_native_1.View>
129
129
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
130
- <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:d.source==="firebase"?AppColors_1.AppColors.firebaseOrange:AppColors_1.AppColors.purple,width:e?6:7,height:e?6:7}]}/>
130
+ <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:p.source==="firebase"?AppColors_1.AppColors.firebaseOrange:AppColors_1.AppColors.purple,width:e?6:7,height:e?6:7}]}/>
131
131
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
132
- {Object.keys(d.params).length} param
133
- {Object.keys(d.params).length!==1?"s":""}
132
+ {Object.keys(p.params).length} param
133
+ {Object.keys(p.params).length!==1?"s":""}
134
134
  {" \xB7 "}
135
- {d.source}
135
+ {p.source}
136
136
  </react_native_1.Text>
137
137
  </react_native_1.View>
138
- </react_native_1.View>:c==="logs"&&p!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
138
+ </react_native_1.View>:d==="logs"&&u!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
139
139
  <react_native_1.View style={styles_1.default.headerDetailRow}>
140
- <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:p.type==="error"?`${AppColors_1.AppColors.errorColor}4D`:p.type==="warn"?`${AppColors_1.AppColors.lightOrange}4D`:`${AppColors_1.AppColors.purple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
140
+ <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:u.type==="error"?`${AppColors_1.AppColors.errorColor}4D`:u.type==="warn"?`${AppColors_1.AppColors.lightOrange}4D`:`${AppColors_1.AppColors.purple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
141
141
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
142
- {p.type.toUpperCase()}
142
+ {u.type.toUpperCase()}
143
143
  </react_native_1.Text>
144
144
  </react_native_1.View>
145
145
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
146
- #{p.id!=null?p.id+1:1}{" "}
146
+ #{u.id!=null?u.id+1:1}{" "}
147
147
  console.
148
- {p.sourceMethod||p.type||"log"}
148
+ {u.sourceMethod||u.type||"log"}
149
149
  </react_native_1.Text>
150
150
  </react_native_1.View>
151
151
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
152
152
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:e?6:8,paddingVertical:2.5,borderRadius:20,backgroundColor:`${AppColors_1.AppColors.white}29`}}>
153
153
  <NetworkIcons_1.ClockIcon color={AppColors_1.AppColors.white}size={e?10:11}/>
154
154
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
155
- {(0,helpers_1.formatTime)(p.timestamp)}
155
+ {(0,helpers_1.formatTime)(u.timestamp)}
156
156
  </react_native_1.Text>
157
157
  </react_native_1.View>
158
158
  </react_native_1.View>
159
- </react_native_1.View>:c==="redux"&&w!=null?(()=>{const t=N?.[w],a=t&&typeof t=="object"?Object.keys(t).length:typeof t<"u"?1:0,M=(0,helpers_1.getSize)(t),F=j[w];return<react_native_1.View style={styles_1.default.headerDetailCenter}>
159
+ </react_native_1.View>:d==="redux"&&_!=null?(()=>{const t=j?.[_],a=t&&typeof t=="object"?Object.keys(t).length:typeof t<"u"?1:0,$=(0,helpers_1.getSize)(t),L=U[_];return<react_native_1.View style={styles_1.default.headerDetailCenter}>
160
160
  <react_native_1.View style={styles_1.default.headerDetailRow}>
161
161
  <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:`${AppColors_1.AppColors.purple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
162
162
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
@@ -164,7 +164,7 @@
164
164
  </react_native_1.Text>
165
165
  </react_native_1.View>
166
166
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
167
- {w}
167
+ {_}
168
168
  </react_native_1.Text>
169
169
  </react_native_1.View>
170
170
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
@@ -182,21 +182,21 @@
182
182
  •
183
183
  </react_native_1.Text>
184
184
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
185
- {M}
185
+ {$}
186
186
  </react_native_1.Text>
187
- {F?.timestamp&&<>
187
+ {L?.timestamp&&<>
188
188
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{opacity:.6,fontSize:e?10:11}]}>
189
189
  •
190
190
  </react_native_1.Text>
191
191
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:3}}>
192
192
  <NetworkIcons_1.ClockIcon color={AppColors_1.AppColors.white}size={e?9:10}/>
193
193
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
194
- {F.timestamp}
194
+ {L.timestamp}
195
195
  </react_native_1.Text>
196
196
  </react_native_1.View>
197
197
  </>}
198
198
  </react_native_1.View>
199
- </react_native_1.View>})():c==="redux"&&b!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
199
+ </react_native_1.View>})():d==="redux"&&C!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
200
200
  <react_native_1.View style={styles_1.default.headerDetailRow}>
201
201
  <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:`${AppColors_1.AppColors.brandPurple}4D`,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
202
202
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
@@ -204,70 +204,93 @@
204
204
  </react_native_1.Text>
205
205
  </react_native_1.View>
206
206
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
207
- {b.type}
207
+ {C.type}
208
208
  </react_native_1.Text>
209
209
  </react_native_1.View>
210
210
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
211
211
  <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:AppColors_1.AppColors.purple,width:e?6:7,height:e?6:7}]}/>
212
212
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
213
- {b.timestamp||"Dispatched"}
213
+ {C.timestamp||"Dispatched"}
214
214
  </react_native_1.Text>
215
215
  </react_native_1.View>
216
- </react_native_1.View>:c==="crash"&&s!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
216
+ </react_native_1.View>:d==="crash"&&c!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
217
217
  <react_native_1.View style={styles_1.default.headerDetailRow}>
218
- <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:s.isFatal?AppColors_1.AppColors.red600:AppColors_1.AppColors.amber600,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
218
+ <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:c.isFatal?AppColors_1.AppColors.red600:AppColors_1.AppColors.amber600,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
219
219
  <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
220
- {s.isFatal?"FATAL":s.type.toUpperCase()}
220
+ {c.isFatal?"FATAL":c.type.toUpperCase()}
221
221
  </react_native_1.Text>
222
222
  </react_native_1.View>
223
223
  <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13.5:15}]}numberOfLines={1}ellipsizeMode="middle">
224
- {s.name||s.message}
224
+ {c.name||c.message}
225
225
  </react_native_1.Text>
226
226
  </react_native_1.View>
227
227
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1}}>
228
- <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:s.isFatal?AppColors_1.AppColors.red600:AppColors_1.AppColors.amber500,width:e?6:7,height:e?6:7}]}/>
228
+ <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:c.isFatal?AppColors_1.AppColors.red600:AppColors_1.AppColors.amber500,width:e?6:7,height:e?6:7}]}/>
229
229
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
230
- {s.timeStr||new Date(s.timestamp).toLocaleTimeString()}
230
+ {c.timeStr||new Date(c.timestamp).toLocaleTimeString()}
231
231
  </react_native_1.Text>
232
- {s.deviceInfo?.platform&&<>
232
+ {c.deviceInfo?.platform&&<>
233
233
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{opacity:.6,fontSize:e?10:11}]}>
234
234
  •
235
235
  </react_native_1.Text>
236
236
  <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?10:11}]}>
237
- {s.deviceInfo.platform.toUpperCase()}
237
+ {c.deviceInfo.platform.toUpperCase()}
238
238
  </react_native_1.Text>
239
239
  </>}
240
240
  </react_native_1.View>
241
+ </react_native_1.View>:d==="push"&&s!=null?<react_native_1.View style={styles_1.default.headerDetailCenter}>
242
+ <react_native_1.View style={styles_1.default.headerDetailRow}>
243
+ <react_native_1.View style={[styles_1.default.headerMethodBadge,{backgroundColor:AppColors_1.AppColors.brandPurple,paddingHorizontal:e?5:6,paddingVertical:e?2:3}]}>
244
+ <react_native_1.Text style={[styles_1.default.headerMethodText,{fontSize:e?9:10}]}>
245
+ {(s.source||"PUSH").toUpperCase()}
246
+ </react_native_1.Text>
247
+ </react_native_1.View>
248
+ <react_native_1.Text style={[styles_1.default.headerDetailTitle,{fontSize:e?13:14.5,flex:1,minWidth:0}]}numberOfLines={1}ellipsizeMode="tail">
249
+ {s.title||s.body||"Push Notification"}
250
+ </react_native_1.Text>
251
+ </react_native_1.View>
252
+ <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:e?4:6,marginTop:3,paddingVertical:1,maxWidth:"100%"}}>
253
+ <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:e?6:8,paddingVertical:2,borderRadius:20,backgroundColor:`${s.appState==="foreground"?AppColors_1.AppColors.greenColor:s.appState==="background"?AppColors_1.AppColors.amber500:AppColors_1.AppColors.brandPurple}26`,borderWidth:1,borderColor:`${s.appState==="foreground"?AppColors_1.AppColors.greenColor:s.appState==="background"?AppColors_1.AppColors.amber500:AppColors_1.AppColors.brandPurple}55`}}>
254
+ <react_native_1.View style={[styles_1.default.headerStatusDot,{backgroundColor:s.appState==="foreground"?AppColors_1.AppColors.greenColor:s.appState==="background"?AppColors_1.AppColors.amber500:AppColors_1.AppColors.brandPurple,width:e?6:7,height:e?6:7}]}/>
255
+ <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:e?9.5:10.5}]}>
256
+ {s.appState?s.appState.toUpperCase():"DELIVERED"}
257
+ </react_native_1.Text>
258
+ </react_native_1.View>
259
+ <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:e?6:8,paddingVertical:2,borderRadius:20,backgroundColor:`${AppColors_1.AppColors.white}29`}}>
260
+ <NetworkIcons_1.ClockIcon color={AppColors_1.AppColors.white}size={e?9.5:10.5}/>
261
+ <react_native_1.Text style={[styles_1.default.headerSubTitle,{fontSize:e?9.5:10.5}]}>
262
+ {(0,helpers_1.formatTimeShort)(s.timestamp)}
263
+ </react_native_1.Text>
264
+ </react_native_1.View>
265
+ </react_native_1.View>
241
266
  </react_native_1.View>:null}
242
267
  </react_native_1.View>}
243
268
 
244
- <react_native_1.View style={[styles_1.default.headerRight,{flexDirection:"row",alignItems:"center",justifyContent:"flex-end",flexShrink:0,gap:e?4:5}]}>
269
+ <react_native_1.View style={[styles_1.default.headerRight,{flexDirection:"row",alignItems:"center",justifyContent:"flex-end",flexShrink:0,gap:e?4:6}]}>
270
+
271
+ <react_native_1.TouchableOpacity onPress={Y||O}hitSlop={{top:12,bottom:12,left:12,right:12}}activeOpacity={.7}accessibilityRole="button"accessibilityLabel={i("common.minimize","Minimize")}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7,backgroundColor:"rgba(56, 189, 248, 0.22)",borderColor:"rgba(125, 211, 252, 0.40)",borderWidth:1}]}>
272
+ <NetworkIcons_1.ChevronDownIcon size={e?14:16}color={AppColors_1.AppColors.white}/>
273
+ </react_native_1.TouchableOpacity>
245
274
 
246
- {x&&<TouchableScale_1.default onPress={()=>{react_native_1.Alert.alert("Reset All Settings","This restores all module visibility and UI preferences to defaults. Continue?",[{text:"Cancel",style:"cancel"},{text:"Reset",style:"destructive",onPress:J}])}}hitSlop={15}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7}]}>
275
+
276
+ {A?<TouchableScale_1.default onPress={()=>{react_native_1.Alert.alert("Reset All Settings","This restores all module visibility and UI preferences to defaults. Continue?",[{text:"Cancel",style:"cancel"},{text:"Reset",style:"destructive",onPress:X}])}}hitSlop={15}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7,backgroundColor:"rgba(245, 158, 11, 0.26)",borderColor:"rgba(252, 211, 77, 0.45)",borderWidth:1}]}>
247
277
  <NetworkIcons_1.ResetIcon color={AppColors_1.AppColors.white}size={e?12:14}/>
248
- </TouchableScale_1.default>}
249
-
250
- {!A&&<TouchableScale_1.default accessible={!0}accessibilityRole="button"accessibilityLabel="Settings"onPress={()=>z("main")}hitSlop={15}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7}]}>
278
+ </TouchableScale_1.default>:V?null:<TouchableScale_1.default accessible={!0}accessibilityRole="button"accessibilityLabel="Settings"onPress={()=>D("main")}hitSlop={15}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7,backgroundColor:"rgba(168, 85, 247, 0.28)",borderColor:"rgba(216, 180, 254, 0.45)",borderWidth:1}]}>
251
279
  <NetworkIcons_1.SettingsIcon color={AppColors_1.AppColors.white}size={e?12:14}/>
252
280
  </TouchableScale_1.default>}
253
281
 
254
282
 
255
- <react_native_1.TouchableOpacity onPress={X||O}hitSlop={{top:12,bottom:12,left:12,right:12}}activeOpacity={.6}accessibilityRole="button"accessibilityLabel={i("common.minimize","Minimize")}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7}]}>
256
- <NetworkIcons_1.ChevronDownIcon size={e?14:16}color={AppColors_1.AppColors.white}/>
257
- </react_native_1.TouchableOpacity>
258
-
259
-
260
- <react_native_1.TouchableOpacity onPress={O}hitSlop={{top:12,bottom:12,left:12,right:12}}activeOpacity={.6}accessibilityRole="button"accessibilityLabel={i("common.close","Close")}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7}]}>
283
+ <react_native_1.TouchableOpacity onPress={O}hitSlop={{top:12,bottom:12,left:12,right:12}}activeOpacity={.7}accessibilityRole="button"accessibilityLabel={i("common.close","Close")}style={[styles_1.default.closeButtonSquare,{width:h,height:h,borderRadius:e?6:7,backgroundColor:"rgba(244, 63, 94, 0.28)",borderColor:"rgba(251, 113, 133, 0.48)",borderWidth:1}]}>
261
284
  <NetworkIcons_1.CloseWhite size={e?12:14}/>
262
285
  </react_native_1.TouchableOpacity>
263
286
  </react_native_1.View>
264
287
  </react_native_1.View>
265
288
 
266
289
 
267
- {!A&&<react_native_1.View style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:e?10:14,paddingBottom:e?8:10,paddingTop:2,gap:6}}>
290
+ {!V&&<react_native_1.View style={{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:e?10:14,paddingBottom:e?8:10,paddingTop:2,gap:6}}>
268
291
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
269
292
 
270
- <TouchableScale_1.default onPress={re}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}33`}}>
293
+ <TouchableScale_1.default onPress={oe}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}33`}}>
271
294
  <NetworkIcons_1.CameraIcon size={e?12:13}color={AppColors_1.AppColors.white}/>
272
295
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:e?10.5:11.5,lineHeight:e?13:14,color:AppColors_1.AppColors.white}}>
273
296
  {i("header.photo")}
@@ -275,18 +298,18 @@
275
298
  </TouchableScale_1.default>
276
299
 
277
300
 
278
- <TouchableScale_1.default onPress={ae}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:u?`${AppColors_1.AppColors.red500}33`:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:u?AppColors_1.AppColors.red500:`${AppColors_1.AppColors.white}33`}}>
279
- {u?<react_native_1.Animated.View style={{width:6,height:6,borderRadius:3,backgroundColor:AppColors_1.AppColors.red500}}/>:<NetworkIcons_1.VideoCameraIcon size={e?12:13}color={AppColors_1.AppColors.white}/>}
280
- <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:e?10.5:11.5,lineHeight:e?13:14,color:u?AppColors_1.AppColors.red300:AppColors_1.AppColors.white}}>
281
- {u?`${i("header.rec")} ${oe(ie)}`:i("header.record")}
301
+ <TouchableScale_1.default onPress={le}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:g?`${AppColors_1.AppColors.red500}33`:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:g?AppColors_1.AppColors.red500:`${AppColors_1.AppColors.white}33`}}>
302
+ {g?<react_native_1.Animated.View style={{width:6,height:6,borderRadius:3,backgroundColor:AppColors_1.AppColors.red500}}/>:<NetworkIcons_1.VideoCameraIcon size={e?12:13}color={AppColors_1.AppColors.white}/>}
303
+ <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:e?10.5:11.5,lineHeight:e?13:14,color:g?AppColors_1.AppColors.red300:AppColors_1.AppColors.white}}>
304
+ {g?`${i("header.rec")} ${ne(ae)}`:i("header.record")}
282
305
  </react_native_1.Text>
283
306
  </TouchableScale_1.default>
284
307
  </react_native_1.View>
285
308
 
286
309
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
287
310
 
288
- <TouchableScale_1.default accessible={!0}accessibilityRole="button"accessibilityLabel={i("common.clearAll")}onPress={()=>{react_native_1.Alert.alert(i("header.clearEverythingTitle"),i("header.clearEverythingMessage"),[{text:i("common.cancel"),style:"cancel"},{text:i("common.clearAll"),onPress:Q,style:"destructive"}])}}hitSlop={10}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}33`}}>
289
- <react_native_1.Animated.View style={{transform:[{rotate:$.interpolate({inputRange:[0,1],outputRange:["0deg","-25deg"]})},{scale:$.interpolate({inputRange:[0,.5,1],outputRange:[1,1.25,1]})}]}}>
311
+ <TouchableScale_1.default accessible={!0}accessibilityRole="button"accessibilityLabel={i("common.clearAll")}onPress={()=>{react_native_1.Alert.alert(i("header.clearEverythingTitle"),i("header.clearEverythingMessage"),[{text:i("common.cancel"),style:"cancel"},{text:i("common.clearAll"),onPress:J,style:"destructive"}])}}hitSlop={10}style={{flexDirection:"row",alignItems:"center",gap:5,backgroundColor:`${AppColors_1.AppColors.white}24`,paddingHorizontal:e?9:11,paddingVertical:e?5:6,borderRadius:7,borderWidth:1,borderColor:`${AppColors_1.AppColors.white}33`}}>
312
+ <react_native_1.Animated.View style={{transform:[{rotate:k.interpolate({inputRange:[0,1],outputRange:["0deg","-25deg"]})},{scale:k.interpolate({inputRange:[0,.5,1],outputRange:[1,1.25,1]})}]}}>
290
313
  <NetworkIcons_1.TrashIcon color={AppColors_1.AppColors.white}size={e?12:13}/>
291
314
  </react_native_1.Animated.View>
292
315
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:e?10.5:11.5,lineHeight:e?13:14,color:AppColors_1.AppColors.white}}>
@@ -307,8 +330,8 @@
307
330
  </react_native_1.View>
308
331
 
309
332
 
310
- <UpdateAvailableModal_1.UpdateAvailableModal visible={ee}latestVersion={U}onClose={()=>D(!1)}/>
333
+ <UpdateAvailableModal_1.UpdateAvailableModal visible={ie}latestVersion={G}onClose={()=>R(!1)}/>
311
334
 
312
335
 
313
- <MediaPreviewModal_1.MediaPreviewModal item={k}visible={!!k}onClose={()=>y(null)}onDelete={async t=>{await capture_1.ScreenCapture.deleteMedia(t.uri),_?.().catch(()=>{}),y(null)}}onConvertToGif={async t=>{const a=await capture_1.ScreenCapture.convertToGif(t.uri,{fps:12,width:480});a&&(_?.().catch(()=>{}),y({id:`anim_${a.timestamp}.gif`,type:"gif",format:"gif",uri:a.uri,filename:a.uri.split("/").pop()||`anim_${a.timestamp}.gif`,sizeBytes:a.sizeBytes,timestamp:a.timestamp,durationMs:a.durationMs}))}}/>
336
+ <MediaPreviewModal_1.MediaPreviewModal item={B}visible={!!B}onClose={()=>b(null)}onDelete={async t=>{await capture_1.ScreenCapture.deleteMedia(t.uri),m?.().catch(()=>{}),b(null)}}onConvertToGif={async t=>{const a=await capture_1.ScreenCapture.convertToGif(t.uri,{fps:12,width:480});a&&(m?.().catch(()=>{}),b({id:`anim_${a.timestamp}.gif`,type:"gif",format:"gif",uri:a.uri,filename:a.uri.split("/").pop()||`anim_${a.timestamp}.gif`,sizeBytes:a.sizeBytes,timestamp:a.timestamp,durationMs:a.durationMs}))}}/>
314
337
  </>});exports.default=InspectorHeader;
@@ -1,5 +1,5 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(o,t,l,i){i===void 0&&(i=l);var a=Object.getOwnPropertyDescriptor(t,l);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[l]}}),Object.defineProperty(o,i,a)}):(function(o,t,l,i){i===void 0&&(i=l),o[i]=t[l]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(o,t){Object.defineProperty(o,"default",{enumerable:!0,value:t})}):function(o,t){o.default=t}),__importStar=this&&this.__importStar||(function(){var o=function(t){return o=Object.getOwnPropertyNames||function(l){var i=[];for(var a in l)Object.prototype.hasOwnProperty.call(l,a)&&(i[i.length]=a);return i},o(t)};return function(t){if(t&&t.__esModule)return t;var l={};if(t!=null)for(var i=o(t),a=0;a<i.length;a++)i[a]!=="default"&&__createBinding(l,t,i[a]);return __setModuleDefault(l,t),l}})(),__importDefault=this&&this.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),i18n_1=require("../../i18n"),react_native_1=require("react-native"),InspectorContext_1=require("./InspectorContext"),HighlightText_1=__importDefault(require("../HighlightText")),JsonViewer_1=__importDefault(require("../JsonViewer")),CopyButton_1=__importDefault(require("../CopyButton")),SegmentedTabs_1=__importDefault(require("../SegmentedTabs")),NetworkIcons_1=require("../NetworkIcons"),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),styles_1=__importDefault(require("../../styles")),helpers_1=require("../../helpers"),getRelativeTime=o=>{const l=Date.now()-o,i=Math.floor(l/1e3),a=Math.floor(i/60),C=Math.floor(a/60),b=Math.floor(C/24);return i<60?`${i}s ago`:a<60?`${a}m ago`:C<24?`${C}h ago`:`${b}d ago`},LogDetail=react_1.default.memo(()=>{const{t:o}=(0,i18n_1.useTranslation)(),{selectedLog:t}=(0,InspectorContext_1.useInspector)(),[l,i]=(0,react_1.useState)("output"),[a,C]=(0,react_1.useState)(""),[b,v]=(0,react_1.useState)("raw"),p=(0,react_1.useMemo)(()=>t?(0,helpers_1.getJsonContent)(t.message):null,[t]),[d,h]=(0,react_1.useState)("structured"),[m,V]=(0,react_1.useState)("caller"),[_,k]=(0,react_1.useState)("app"),y=(0,react_1.useMemo)(()=>t?m==="error"&&t.errorStack?t.errorStack:t.stack||t.caller||"":"",[t,m]),s=(0,react_1.useMemo)(()=>y?y.split(`
2
- `).map(e=>e.trim()).filter(e=>e.length>0).map((e,n)=>(0,helpers_1.parseStackLine)(e,n===0)):[],[y]),u=(0,react_1.useMemo)(()=>s.filter(e=>e.frameType==="app"||!e.isRuntimeNoise),[s]),x=(0,react_1.useMemo)(()=>_==="app"&&u.length>0?u:s,[_,u,s]),r=(0,react_1.useMemo)(()=>t?u.length>0?u[0]:t.caller&&t.caller!=="Unknown"?(0,helpers_1.parseStackLine)(t.caller,!0):s.length>0?s[0]:null:null,[t,u,s]);if(!t)return null;const g=AppColors_1.AppColors.primaryLight!==AppColors_1.AppColors.white,f=(()=>{const e=(t.type||"log").toLowerCase(),n=(t.sourceMethod||e).toLowerCase();return e==="error"||n==="error"?{border:AppColors_1.AppColors.red500,badgeBg:AppColors_1.AppColors.red100,badgeText:AppColors_1.AppColors.redErrorText,label:"ERROR",methodBorder:AppColors_1.AppColors.errorBorder,methodBg:AppColors_1.AppColors.red100,methodText:AppColors_1.AppColors.redErrorText}:e==="warn"||n==="warn"?{border:AppColors_1.AppColors.amber500,badgeBg:AppColors_1.AppColors.amber100,badgeText:AppColors_1.AppColors.amber800Warm,label:"WARN",methodBorder:AppColors_1.AppColors.amber200,methodBg:AppColors_1.AppColors.amber100,methodText:AppColors_1.AppColors.amber800Warm}:e==="debug"||n==="debug"?{border:AppColors_1.AppColors.violet500,badgeBg:AppColors_1.AppColors.purple100,badgeText:AppColors_1.AppColors.violet600,label:"DEBUG",methodBorder:AppColors_1.AppColors.purple200,methodBg:AppColors_1.AppColors.purple100,methodText:AppColors_1.AppColors.violet600}:e==="info"||n==="info"?{border:AppColors_1.AppColors.sky500,badgeBg:AppColors_1.AppColors.sky100,badgeText:AppColors_1.AppColors.sky600,label:"INFO",methodBorder:AppColors_1.AppColors.sky400,methodBg:AppColors_1.AppColors.sky100,methodText:AppColors_1.AppColors.sky600}:{border:AppColors_1.AppColors.indigo500,badgeBg:AppColors_1.AppColors.indigo50,badgeText:AppColors_1.AppColors.indigo600Alt,label:"LOG",methodBorder:AppColors_1.AppColors.indigo400,methodBg:AppColors_1.AppColors.indigo50,methodText:AppColors_1.AppColors.indigo600Alt}})(),T=t.rawArgs!=null&&t.rawArgs.length>1,S=!!(t.stack&&t.stack.trim().length>0),B=[{key:"output",label:o("console.tabOutput"),icon:e=><NetworkIcons_1.TerminalIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>},...T?[{key:"arguments",label:o("console.tabArgs",{count:t.rawArgs?.length}),icon:e=><NetworkIcons_1.RequestIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}]:[],...S?[{key:"stack",label:o("console.tabStack"),icon:e=><NetworkIcons_1.LayersIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}]:[],{key:"metadata",label:o("console.tabMetadata"),icon:e=><NetworkIcons_1.InfoCircleIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}];return<react_native_1.View style={{flex:1}}>
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(o,t,l,i){i===void 0&&(i=l);var a=Object.getOwnPropertyDescriptor(t,l);(!a||("get"in a?!t.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return t[l]}}),Object.defineProperty(o,i,a)}):(function(o,t,l,i){i===void 0&&(i=l),o[i]=t[l]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(o,t){Object.defineProperty(o,"default",{enumerable:!0,value:t})}):function(o,t){o.default=t}),__importStar=this&&this.__importStar||(function(){var o=function(t){return o=Object.getOwnPropertyNames||function(l){var i=[];for(var a in l)Object.prototype.hasOwnProperty.call(l,a)&&(i[i.length]=a);return i},o(t)};return function(t){if(t&&t.__esModule)return t;var l={};if(t!=null)for(var i=o(t),a=0;a<i.length;a++)i[a]!=="default"&&__createBinding(l,t,i[a]);return __setModuleDefault(l,t),l}})(),__importDefault=this&&this.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),i18n_1=require("../../i18n"),react_native_1=require("react-native"),InspectorContext_1=require("./InspectorContext"),HighlightText_1=__importDefault(require("../HighlightText")),JsonViewer_1=__importDefault(require("../JsonViewer")),CopyButton_1=__importDefault(require("../CopyButton")),ShareButton_1=__importDefault(require("../ShareButton")),SegmentedTabs_1=__importDefault(require("../SegmentedTabs")),NetworkIcons_1=require("../NetworkIcons"),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),styles_1=__importDefault(require("../../styles")),helpers_1=require("../../helpers"),shareFormatter_1=require("../../helpers/shareFormatter"),getRelativeTime=o=>{const l=Date.now()-o,i=Math.floor(l/1e3),a=Math.floor(i/60),y=Math.floor(a/60),b=Math.floor(y/24);return i<60?`${i}s ago`:a<60?`${a}m ago`:y<24?`${y}h ago`:`${b}d ago`},LogDetail=react_1.default.memo(()=>{const{t:o}=(0,i18n_1.useTranslation)(),{selectedLog:t}=(0,InspectorContext_1.useInspector)(),[l,i]=(0,react_1.useState)("output"),[a,y]=(0,react_1.useState)(""),[b,v]=(0,react_1.useState)("raw"),p=(0,react_1.useMemo)(()=>t?(0,helpers_1.getJsonContent)(t.message):null,[t]),[d,h]=(0,react_1.useState)("structured"),[m,V]=(0,react_1.useState)("caller"),[_,k]=(0,react_1.useState)("app"),C=(0,react_1.useMemo)(()=>t?m==="error"&&t.errorStack?t.errorStack:t.stack||t.caller||"":"",[t,m]),s=(0,react_1.useMemo)(()=>C?C.split(`
2
+ `).map(e=>e.trim()).filter(e=>e.length>0).map((e,n)=>(0,helpers_1.parseStackLine)(e,n===0)):[],[C]),u=(0,react_1.useMemo)(()=>s.filter(e=>e.frameType==="app"||!e.isRuntimeNoise),[s]),x=(0,react_1.useMemo)(()=>_==="app"&&u.length>0?u:s,[_,u,s]),r=(0,react_1.useMemo)(()=>t?u.length>0?u[0]:t.caller&&t.caller!=="Unknown"?(0,helpers_1.parseStackLine)(t.caller,!0):s.length>0?s[0]:null:null,[t,u,s]);if(!t)return null;const g=AppColors_1.AppColors.primaryLight!==AppColors_1.AppColors.white,f=(()=>{const e=(t.type||"log").toLowerCase(),n=(t.sourceMethod||e).toLowerCase();return e==="error"||n==="error"?{border:AppColors_1.AppColors.red500,badgeBg:AppColors_1.AppColors.red100,badgeText:AppColors_1.AppColors.redErrorText,label:"ERROR",methodBorder:AppColors_1.AppColors.errorBorder,methodBg:AppColors_1.AppColors.red100,methodText:AppColors_1.AppColors.redErrorText}:e==="warn"||n==="warn"?{border:AppColors_1.AppColors.amber500,badgeBg:AppColors_1.AppColors.amber100,badgeText:AppColors_1.AppColors.amber800Warm,label:"WARN",methodBorder:AppColors_1.AppColors.amber200,methodBg:AppColors_1.AppColors.amber100,methodText:AppColors_1.AppColors.amber800Warm}:e==="debug"||n==="debug"?{border:AppColors_1.AppColors.violet500,badgeBg:AppColors_1.AppColors.purple100,badgeText:AppColors_1.AppColors.violet600,label:"DEBUG",methodBorder:AppColors_1.AppColors.purple200,methodBg:AppColors_1.AppColors.purple100,methodText:AppColors_1.AppColors.violet600}:e==="info"||n==="info"?{border:AppColors_1.AppColors.sky500,badgeBg:AppColors_1.AppColors.sky100,badgeText:AppColors_1.AppColors.sky600,label:"INFO",methodBorder:AppColors_1.AppColors.sky400,methodBg:AppColors_1.AppColors.sky100,methodText:AppColors_1.AppColors.sky600}:{border:AppColors_1.AppColors.indigo500,badgeBg:AppColors_1.AppColors.indigo50,badgeText:AppColors_1.AppColors.indigo600Alt,label:"LOG",methodBorder:AppColors_1.AppColors.indigo400,methodBg:AppColors_1.AppColors.indigo50,methodText:AppColors_1.AppColors.indigo600Alt}})(),T=t.rawArgs!=null&&t.rawArgs.length>1,S=!!(t.stack&&t.stack.trim().length>0),B=[{key:"output",label:o("console.tabOutput"),icon:e=><NetworkIcons_1.TerminalIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>},...T?[{key:"arguments",label:o("console.tabArgs",{count:t.rawArgs?.length}),icon:e=><NetworkIcons_1.RequestIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}]:[],...S?[{key:"stack",label:o("console.tabStack"),icon:e=><NetworkIcons_1.LayersIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}]:[],{key:"metadata",label:o("console.tabMetadata"),icon:e=><NetworkIcons_1.InfoCircleIcon color={e?AppColors_1.AppColors.white:AppColors_1.AppColors.grayTextWeak}size={12}/>}];return<react_native_1.View style={{flex:1}}>
3
3
 
4
4
  <react_native_1.View style={styles_1.default.detailInfoBar}>
5
5
  <react_native_1.View style={{flexDirection:"column",gap:10}}>
@@ -45,7 +45,10 @@
45
45
  </react_native_1.View>
46
46
 
47
47
 
48
- <CopyButton_1.default value={t.message}label={o("console.logMessage")}/>
48
+ <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:6}}>
49
+ <ShareButton_1.default onShare={()=>(0,shareFormatter_1.shareLogReport)(t)}/>
50
+ <CopyButton_1.default value={t.message}label={o("console.logMessage")}/>
51
+ </react_native_1.View>
49
52
  </react_native_1.View>
50
53
 
51
54
 
@@ -102,8 +105,8 @@
102
105
  <react_native_1.View style={[styles_1.default.detailSearchRow,{marginBottom:0}]}>
103
106
  <react_native_1.View style={[styles_1.default.detailSearchBox,{backgroundColor:g?`${AppColors_1.AppColors.brandPurple}10`:AppColors_1.AppColors.purpleShade50,borderWidth:1,borderColor:AppColors_1.AppColors.dividerColor}]}>
104
107
  <NetworkIcons_1.SearchIcon color={AppColors_1.AppColors.grayTextWeak}size={15}/>
105
- <react_native_1.TextInput placeholder="Search in log details..."placeholderTextColor={AppColors_1.AppColors.grayTextWeak}value={a}onChangeText={C}style={styles_1.default.detailSearchInput}autoCorrect={!1}autoCapitalize="none"/>
106
- {a.length>0&&<react_native_1.Pressable onPress={()=>C("")}hitSlop={10}style={{padding:6}}>
108
+ <react_native_1.TextInput placeholder="Search in log details..."placeholderTextColor={AppColors_1.AppColors.grayTextWeak}value={a}onChangeText={y}style={styles_1.default.detailSearchInput}autoCorrect={!1}autoCapitalize="none"/>
109
+ {a.length>0&&<react_native_1.Pressable onPress={()=>y("")}hitSlop={10}style={{padding:6}}>
107
110
  <NetworkIcons_1.ClearIcon color={AppColors_1.AppColors.grayTextWeak}size={13}/>
108
111
  </react_native_1.Pressable>}
109
112
  </react_native_1.View>
@@ -191,7 +194,7 @@
191
194
  </react_native_1.Pressable>
192
195
  </react_native_1.View>
193
196
 
194
- <CopyButton_1.default value={y}label={o("console.fullStackTrace")}/>
197
+ <CopyButton_1.default value={C}label={o("console.fullStackTrace")}/>
195
198
  </react_native_1.View>
196
199
  </react_native_1.View>
197
200
 
@@ -259,7 +262,7 @@
259
262
  {o("console.noStackAvailable")}
260
263
  </react_native_1.Text>}
261
264
  </react_native_1.View>:<react_native_1.View style={{backgroundColor:AppColors_1.AppColors.primaryLight,padding:12}}>
262
- {y.split(`
265
+ {C.split(`
263
266
  `).filter(e=>e.trim().length>0).map((e,n)=><react_native_1.View key={n}style={{flexDirection:"row",alignItems:"flex-start",paddingVertical:2}}>
264
267
  <react_native_1.Text style={{width:28,textAlign:"right",paddingRight:8,fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,color:AppColors_1.AppColors.grayTextWeak,lineHeight:17}}>
265
268
  {n+1}