react-native-inapp-inspector 2.5.12 → 2.5.13

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 (186) hide show
  1. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  2. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  3. package/android/.gradle/8.9/executionHistory/executionHistory.lock +0 -0
  4. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  5. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  6. package/android/.gradle/8.9/gc.properties +0 -0
  7. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  8. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  9. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  10. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  11. package/android/.gradle/9.2.0/gc.properties +0 -0
  12. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  13. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  14. package/android/.gradle/vcs-1/gc.properties +0 -0
  15. package/android/.settings/org.eclipse.buildship.core.prefs +13 -0
  16. package/android/src/main/AndroidManifest.xml +11 -0
  17. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +379 -19
  18. package/android/src/main/res/xml/inappinspector_file_paths.xml +7 -0
  19. package/dist/commonjs/components/Inspector/AnalyticsFilterModal.js +47 -49
  20. package/dist/commonjs/components/Inspector/BoxModelVisualizer.d.ts +8 -0
  21. package/dist/commonjs/components/Inspector/BoxModelVisualizer.js +76 -0
  22. package/dist/commonjs/components/Inspector/ConsoleExportModal.js +51 -51
  23. package/dist/commonjs/components/Inspector/CrashTab.js +17 -17
  24. package/dist/commonjs/components/Inspector/DebuggingTab.js +24 -24
  25. package/dist/commonjs/components/Inspector/DeviceInfoTab.js +2 -2
  26. package/dist/commonjs/components/Inspector/FabLauncher.js +2 -2
  27. package/dist/commonjs/components/Inspector/FloatingCaptureWidget.js +2 -2
  28. package/dist/commonjs/components/Inspector/InspectorHeader.js +10 -10
  29. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +10 -10
  30. package/dist/commonjs/components/Inspector/MediaPreviewModal.d.ts +1 -0
  31. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +222 -222
  32. package/dist/commonjs/components/Inspector/NetworkExportModal.d.ts +10 -0
  33. package/dist/commonjs/components/Inspector/NetworkExportModal.js +333 -0
  34. package/dist/commonjs/components/Inspector/NetworkTab.js +48 -41
  35. package/dist/commonjs/components/Inspector/NpmStarPrompt.js +11 -12
  36. package/dist/commonjs/components/Inspector/ReduxDetail.js +17 -19
  37. package/dist/commonjs/components/Inspector/ReduxTab.js +5 -5
  38. package/dist/commonjs/components/Inspector/SettingsPanel.js +3 -6
  39. package/dist/commonjs/components/Inspector/SocketCard.js +2 -2
  40. package/dist/commonjs/components/Inspector/SupportPage.js +5 -5
  41. package/dist/commonjs/components/Inspector/UiA11yAuditPanel.d.ts +7 -0
  42. package/dist/commonjs/components/Inspector/UiA11yAuditPanel.js +97 -0
  43. package/dist/commonjs/components/Inspector/UiInspectorDetail.d.ts +2 -0
  44. package/dist/commonjs/components/Inspector/UiInspectorDetail.js +485 -0
  45. package/dist/commonjs/components/Inspector/UiInspectorOverlay.d.ts +2 -0
  46. package/dist/commonjs/components/Inspector/UiInspectorOverlay.js +199 -0
  47. package/dist/commonjs/components/Inspector/UiInspectorTab.d.ts +2 -0
  48. package/dist/commonjs/components/Inspector/UiInspectorTab.js +117 -0
  49. package/dist/commonjs/components/Inspector/UiLiveStyleTweaker.d.ts +10 -0
  50. package/dist/commonjs/components/Inspector/UiLiveStyleTweaker.js +148 -0
  51. package/dist/commonjs/components/Inspector/index.d.ts +28 -0
  52. package/dist/commonjs/components/Inspector/index.js +1 -0
  53. package/dist/commonjs/components/LogCard.js +9 -7
  54. package/dist/commonjs/constants/index.js +1 -1
  55. package/dist/commonjs/constants/telemetryConfig.d.ts +3 -3
  56. package/dist/commonjs/constants/telemetryConfig.js +1 -1
  57. package/dist/commonjs/constants/version.d.ts +1 -1
  58. package/dist/commonjs/constants/version.js +1 -1
  59. package/dist/commonjs/customHooks/crashHandler.d.ts +1 -1
  60. package/dist/commonjs/customHooks/crashHandler.js +6 -6
  61. package/dist/commonjs/customHooks/uiInspectorManager.d.ts +22 -0
  62. package/dist/commonjs/customHooks/uiInspectorManager.js +1 -0
  63. package/dist/commonjs/helpers/index.js +1 -3
  64. package/dist/commonjs/helpers/searchQueryParser.d.ts +1 -0
  65. package/dist/commonjs/helpers/searchQueryParser.js +7 -5
  66. package/dist/commonjs/helpers/shareFormatter.d.ts +16 -0
  67. package/dist/commonjs/helpers/shareFormatter.js +16 -9
  68. package/dist/commonjs/helpers/uiInspectorEngine.d.ts +62 -0
  69. package/dist/commonjs/helpers/uiInspectorEngine.js +19 -0
  70. package/dist/commonjs/i18n/locales/ar.json +1 -1
  71. package/dist/commonjs/i18n/locales/bn.json +1 -1
  72. package/dist/commonjs/i18n/locales/de.json +1 -1
  73. package/dist/commonjs/i18n/locales/en.json +1 -1
  74. package/dist/commonjs/i18n/locales/es.json +1 -1
  75. package/dist/commonjs/i18n/locales/fr.json +1 -1
  76. package/dist/commonjs/i18n/locales/gu.json +1 -1
  77. package/dist/commonjs/i18n/locales/hi.json +1 -1
  78. package/dist/commonjs/i18n/locales/id.json +1 -1
  79. package/dist/commonjs/i18n/locales/it.json +1 -1
  80. package/dist/commonjs/i18n/locales/ja.json +1 -1
  81. package/dist/commonjs/i18n/locales/kn.json +1 -1
  82. package/dist/commonjs/i18n/locales/ko.json +1 -1
  83. package/dist/commonjs/i18n/locales/ml.json +1 -1
  84. package/dist/commonjs/i18n/locales/mr.json +1 -1
  85. package/dist/commonjs/i18n/locales/nl.json +1 -1
  86. package/dist/commonjs/i18n/locales/pa.json +1 -1
  87. package/dist/commonjs/i18n/locales/pl.json +1 -1
  88. package/dist/commonjs/i18n/locales/pt.json +1 -1
  89. package/dist/commonjs/i18n/locales/ru.json +1 -1
  90. package/dist/commonjs/i18n/locales/ta.json +1 -1
  91. package/dist/commonjs/i18n/locales/te.json +1 -1
  92. package/dist/commonjs/i18n/locales/tr.json +1 -1
  93. package/dist/commonjs/i18n/locales/vi.json +1 -1
  94. package/dist/commonjs/i18n/locales/zh.json +1 -1
  95. package/dist/commonjs/index.d.ts +3 -1
  96. package/dist/commonjs/index.js +3 -3
  97. package/dist/commonjs/native/NativeInspector.d.ts +2 -0
  98. package/dist/commonjs/native/NativeInspector.js +1 -1
  99. package/dist/commonjs/native/NativeNetworkInspector.d.ts +2 -0
  100. package/dist/commonjs/types/editor.d.ts +31 -0
  101. package/dist/esm/components/Inspector/AnalyticsFilterModal.js +73 -75
  102. package/dist/esm/components/Inspector/BoxModelVisualizer.d.ts +8 -0
  103. package/dist/esm/components/Inspector/BoxModelVisualizer.js +76 -0
  104. package/dist/esm/components/Inspector/ConsoleExportModal.js +67 -67
  105. package/dist/esm/components/Inspector/CrashTab.js +58 -58
  106. package/dist/esm/components/Inspector/DebuggingTab.js +89 -89
  107. package/dist/esm/components/Inspector/DeviceInfoTab.js +2 -2
  108. package/dist/esm/components/Inspector/FabLauncher.js +21 -21
  109. package/dist/esm/components/Inspector/FloatingCaptureWidget.js +23 -23
  110. package/dist/esm/components/Inspector/InspectorHeader.js +26 -26
  111. package/dist/esm/components/Inspector/MediaGalleryTab.js +151 -151
  112. package/dist/esm/components/Inspector/MediaPreviewModal.d.ts +1 -0
  113. package/dist/esm/components/Inspector/MediaPreviewModal.js +468 -468
  114. package/dist/esm/components/Inspector/NetworkExportModal.d.ts +10 -0
  115. package/dist/esm/components/Inspector/NetworkExportModal.js +333 -0
  116. package/dist/esm/components/Inspector/NetworkTab.js +118 -111
  117. package/dist/esm/components/Inspector/NpmStarPrompt.js +32 -33
  118. package/dist/esm/components/Inspector/ReduxDetail.js +54 -56
  119. package/dist/esm/components/Inspector/ReduxTab.js +9 -9
  120. package/dist/esm/components/Inspector/SettingsPanel.js +3 -6
  121. package/dist/esm/components/Inspector/SocketCard.js +13 -13
  122. package/dist/esm/components/Inspector/SupportPage.js +5 -5
  123. package/dist/esm/components/Inspector/UiA11yAuditPanel.d.ts +7 -0
  124. package/dist/esm/components/Inspector/UiA11yAuditPanel.js +97 -0
  125. package/dist/esm/components/Inspector/UiInspectorDetail.d.ts +2 -0
  126. package/dist/esm/components/Inspector/UiInspectorDetail.js +422 -0
  127. package/dist/esm/components/Inspector/UiInspectorOverlay.d.ts +2 -0
  128. package/dist/esm/components/Inspector/UiInspectorOverlay.js +138 -0
  129. package/dist/esm/components/Inspector/UiInspectorTab.d.ts +2 -0
  130. package/dist/esm/components/Inspector/UiInspectorTab.js +117 -0
  131. package/dist/esm/components/Inspector/UiLiveStyleTweaker.d.ts +10 -0
  132. package/dist/esm/components/Inspector/UiLiveStyleTweaker.js +148 -0
  133. package/dist/esm/components/Inspector/index.d.ts +28 -0
  134. package/dist/esm/components/Inspector/index.js +1 -0
  135. package/dist/esm/components/LogCard.js +57 -55
  136. package/dist/esm/constants/index.js +1 -1
  137. package/dist/esm/constants/telemetryConfig.d.ts +3 -3
  138. package/dist/esm/constants/telemetryConfig.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.d.ts +1 -1
  142. package/dist/esm/customHooks/crashHandler.js +6 -6
  143. package/dist/esm/customHooks/uiInspectorManager.d.ts +22 -0
  144. package/dist/esm/customHooks/uiInspectorManager.js +1 -0
  145. package/dist/esm/helpers/index.js +4 -6
  146. package/dist/esm/helpers/searchQueryParser.d.ts +1 -0
  147. package/dist/esm/helpers/searchQueryParser.js +7 -5
  148. package/dist/esm/helpers/shareFormatter.d.ts +16 -0
  149. package/dist/esm/helpers/shareFormatter.js +20 -13
  150. package/dist/esm/helpers/uiInspectorEngine.d.ts +48 -0
  151. package/dist/esm/helpers/uiInspectorEngine.js +19 -0
  152. package/dist/esm/i18n/locales/ar.json +1 -1
  153. package/dist/esm/i18n/locales/bn.json +1 -1
  154. package/dist/esm/i18n/locales/de.json +1 -1
  155. package/dist/esm/i18n/locales/en.json +1 -1
  156. package/dist/esm/i18n/locales/es.json +1 -1
  157. package/dist/esm/i18n/locales/fr.json +1 -1
  158. package/dist/esm/i18n/locales/gu.json +1 -1
  159. package/dist/esm/i18n/locales/hi.json +1 -1
  160. package/dist/esm/i18n/locales/id.json +1 -1
  161. package/dist/esm/i18n/locales/it.json +1 -1
  162. package/dist/esm/i18n/locales/ja.json +1 -1
  163. package/dist/esm/i18n/locales/kn.json +1 -1
  164. package/dist/esm/i18n/locales/ko.json +1 -1
  165. package/dist/esm/i18n/locales/ml.json +1 -1
  166. package/dist/esm/i18n/locales/mr.json +1 -1
  167. package/dist/esm/i18n/locales/nl.json +1 -1
  168. package/dist/esm/i18n/locales/pa.json +1 -1
  169. package/dist/esm/i18n/locales/pl.json +1 -1
  170. package/dist/esm/i18n/locales/pt.json +1 -1
  171. package/dist/esm/i18n/locales/ru.json +1 -1
  172. package/dist/esm/i18n/locales/ta.json +1 -1
  173. package/dist/esm/i18n/locales/te.json +1 -1
  174. package/dist/esm/i18n/locales/tr.json +1 -1
  175. package/dist/esm/i18n/locales/vi.json +1 -1
  176. package/dist/esm/i18n/locales/zh.json +1 -1
  177. package/dist/esm/index.d.ts +3 -1
  178. package/dist/esm/index.js +7 -7
  179. package/dist/esm/native/NativeInspector.d.ts +2 -0
  180. package/dist/esm/native/NativeInspector.js +1 -1
  181. package/dist/esm/native/NativeNetworkInspector.d.ts +2 -0
  182. package/dist/esm/types/editor.d.ts +31 -0
  183. package/ios/NetworkInspectorModule.mm +314 -16
  184. package/package.json +1 -1
  185. package/src/native/NativeInspector.ts +37 -0
  186. package/src/native/NativeNetworkInspector.ts +2 -0
@@ -1,4 +1,4 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(i,t,a,r){r===void 0&&(r=a);var n=Object.getOwnPropertyDescriptor(t,a);(!n||("get"in n?!t.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(i,r,n)}):(function(i,t,a,r){r===void 0&&(r=a),i[r]=t[a]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(i,t){Object.defineProperty(i,"default",{enumerable:!0,value:t})}):function(i,t){i.default=t}),__importStar=this&&this.__importStar||(function(){var i=function(t){return i=Object.getOwnPropertyNames||function(a){var r=[];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(r[r.length]=n);return r},i(t)};return function(t){if(t&&t.__esModule)return t;var a={};if(t!=null)for(var r=i(t),n=0;n<r.length;n++)r[n]!=="default"&&__createBinding(a,t,r[n]);return __setModuleDefault(a,t),a}})(),__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"),i18n_1=require("../../i18n"),InspectorContext_1=require("./InspectorContext"),TouchableScale_1=__importDefault(require("../TouchableScale")),AnimatedEntrance_1=__importDefault(require("../AnimatedEntrance")),EmptyState_1=__importDefault(require("../EmptyState")),EndOfListFooter_1=__importDefault(require("../EndOfListFooter")),HighlightText_1=__importDefault(require("../HighlightText")),helpers_1=require("../../helpers"),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),reduxLogger_1=require("../../customHooks/reduxLogger"),NetworkIcons_1=require("../NetworkIcons"),getOriginBadge=i=>{switch(i){case"saga":return{label:"SAGA",renderIcon:(t,a=9)=><NetworkIcons_1.BoltIcon color={t}size={a}/>,bg:AppColors_1.AppColors.purple100,text:AppColors_1.AppColors.brandPurple,border:AppColors_1.AppColors.purple200};case"thunk":return{label:"THUNK",renderIcon:(t,a=9)=><NetworkIcons_1.AtomIcon color={t}size={a}/>,bg:AppColors_1.AppColors.amber100,text:AppColors_1.AppColors.amber800Warm,border:AppColors_1.AppColors.amber200};case"ui":return{label:"UI",renderIcon:(t,a=9)=><NetworkIcons_1.ScreenIcon color={t}size={a}/>,bg:AppColors_1.AppColors.sky100,text:AppColors_1.AppColors.sky600,border:AppColors_1.AppColors.sky400};case"listener":return{label:"LISTENER",renderIcon:(t,a=9)=><NetworkIcons_1.ListenerIcon color={t}size={a}/>,bg:AppColors_1.AppColors.teal100,text:AppColors_1.AppColors.teal700,border:AppColors_1.AppColors.teal400};default:return{label:"DIRECT",renderIcon:(t,a=9)=><NetworkIcons_1.BoltIcon color={t}size={a}/>,bg:AppColors_1.AppColors.slate100,text:AppColors_1.AppColors.slate700,border:AppColors_1.AppColors.slate200}}},DEFAULT_PAGE_SIZE=50,LOAD_MORE_STEP=10,ReduxTab=react_1.default.memo(()=>{const{t:i}=(0,i18n_1.useTranslation)(),{reduxState:t,reduxLastActionMap:a,reduxSearch:r,setReduxSearch:n,setSelectedReduxSlice:b}=(0,InspectorContext_1.useInspector)(),x=(0,react_1.useRef)(null),[T,m]=(0,react_1.useState)(DEFAULT_PAGE_SIZE),[u,I]=(0,react_1.useState)("latest");react_1.default.useEffect(()=>{m(DEFAULT_PAGE_SIZE),x.current?.scrollToOffset({offset:0,animated:!1})},[r,u]);const R=(0,react_1.useMemo)(()=>(0,helpers_1.getSize)(t),[t]),v=(0,react_1.useMemo)(()=>(0,reduxLogger_1.getActionHistory)(),[a]),A=(0,react_1.useMemo)(()=>!t||typeof t!="object"?[]:Object.keys(t).map(l=>{const o=t[l],p=Array.isArray(o),w=o&&typeof o=="object";let g="Primitive",d=0;p?(d=o.length,g=`Array [${d}]`):w?(d=Object.keys(o).length,g=`Object {${d}}`):typeof o<"u"&&(d=1,g=typeof o);let f="live",c;w&&(o.loading===!0||o.isLoading===!0||o.status==="loading"||o.status==="pending"?(f="loading",c="Loading"):o.error||o.hasError||o.status==="error"||o.status==="failed"?(f="error",c=typeof o.error=="string"?o.error:"Error"):d===0&&(f="empty",c="Empty"));const s=a[l],B=s?.updatedAt||0,F=v.filter(C=>!C.affectedSlices||C.affectedSlices.length===0?!0:C.affectedSlices.includes(l)).length;let S;if(s){let C;if(s.payload!==void 0&&s.payload!==null)try{if(typeof s.payload=="object"){const V=Object.keys(s.payload);C=`{ ${V.slice(0,3).join(", ")}${V.length>3?"...":""} }`}else C=String(s.payload)}catch{}S={type:s.type,timestamp:s.timestamp,updatedAt:s.updatedAt,payloadPreview:C,originType:s.originType,callerFile:s.callerFile,callerLine:s.callerLine,callerCol:s.callerCol}}return{id:`slice-${l}`,name:l,keysCount:d,sizeStr:(0,helpers_1.getSize)(o),typeLabel:g,status:f,statusMessage:c,timelineCount:F,lastAction:S,updatedAt:B}}),[t,a,v]),y=(0,react_1.useMemo)(()=>{let e=A;if(r&&r.trim().length>0){const l=r.trim().toLowerCase().split(/\s+/).filter(Boolean);e=e.filter(o=>{const p=t?t[o.name]:null,w=[o.name||"",o.lastAction?.type||"",o.lastAction?.payloadPreview||"",o.lastAction?.originType||"",o.status||"",o.statusMessage||"",p?typeof p=="string"?p:JSON.stringify(p):""].join(" ").toLowerCase();return l.every(g=>w.includes(g))})}return[...e].sort((l,o)=>u==="latest"&&o.updatedAt!==l.updatedAt?o.updatedAt-l.updatedAt:l.name.localeCompare(o.name))},[A,r,u,t]),_=(0,react_1.useMemo)(()=>y.slice(0,T),[y,T]),h=(0,react_1.useMemo)(()=>{const e=Object.values(a);return e.length===0?null:e.reduce((l,o)=>l?(o.updatedAt||0)>(l.updatedAt||0)?o:l:o,null)},[a]),z=(0,react_1.useCallback)(({item:e,index:l})=>{const o=e.updatedAt>0&&Date.now()-e.updatedAt<5e3,p=e.status==="error"?AppColors_1.AppColors.errorColor:e.status==="loading"?AppColors_1.AppColors.warningIconGold:e.status==="empty"?AppColors_1.AppColors.grayTextWeak:AppColors_1.AppColors.greenColor,w=e.status==="error"?AppColors_1.AppColors.red100:e.status==="loading"?AppColors_1.AppColors.amber100:e.status==="empty"?AppColors_1.AppColors.grayBackground:AppColors_1.AppColors.emeraldBg,g=e.status==="error"?AppColors_1.AppColors.errorBorder:e.status==="loading"?AppColors_1.AppColors.amber200:e.status==="empty"?AppColors_1.AppColors.dividerColor:AppColors_1.AppColors.emeraldBorder,d=e.status==="error"?AppColors_1.AppColors.red600:e.status==="loading"?AppColors_1.AppColors.amber800Warm:e.status==="empty"?AppColors_1.AppColors.grayTextWeak:AppColors_1.AppColors.emerald700,f=e.lastAction?.callerFile?(0,helpers_1.getCleanCallerDisplay)(e.lastAction.callerFile):null;return<AnimatedEntrance_1.default index={l}distance={8}>
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(i,t,a,r){r===void 0&&(r=a);var n=Object.getOwnPropertyDescriptor(t,a);(!n||("get"in n?!t.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(i,r,n)}):(function(i,t,a,r){r===void 0&&(r=a),i[r]=t[a]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(i,t){Object.defineProperty(i,"default",{enumerable:!0,value:t})}):function(i,t){i.default=t}),__importStar=this&&this.__importStar||(function(){var i=function(t){return i=Object.getOwnPropertyNames||function(a){var r=[];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(r[r.length]=n);return r},i(t)};return function(t){if(t&&t.__esModule)return t;var a={};if(t!=null)for(var r=i(t),n=0;n<r.length;n++)r[n]!=="default"&&__createBinding(a,t,r[n]);return __setModuleDefault(a,t),a}})(),__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"),i18n_1=require("../../i18n"),InspectorContext_1=require("./InspectorContext"),TouchableScale_1=__importDefault(require("../TouchableScale")),AnimatedEntrance_1=__importDefault(require("../AnimatedEntrance")),EmptyState_1=__importDefault(require("../EmptyState")),EndOfListFooter_1=__importDefault(require("../EndOfListFooter")),HighlightText_1=__importDefault(require("../HighlightText")),helpers_1=require("../../helpers"),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),reduxLogger_1=require("../../customHooks/reduxLogger"),NetworkIcons_1=require("../NetworkIcons"),getOriginBadge=i=>{switch(i){case"saga":return{label:"SAGA",renderIcon:(t,a=9)=><NetworkIcons_1.BoltIcon color={t}size={a}/>,bg:AppColors_1.AppColors.purple100,text:AppColors_1.AppColors.brandPurple,border:AppColors_1.AppColors.purple200};case"thunk":return{label:"THUNK",renderIcon:(t,a=9)=><NetworkIcons_1.AtomIcon color={t}size={a}/>,bg:AppColors_1.AppColors.amber100,text:AppColors_1.AppColors.amber800Warm,border:AppColors_1.AppColors.amber200};case"ui":return{label:"UI",renderIcon:(t,a=9)=><NetworkIcons_1.ScreenIcon color={t}size={a}/>,bg:AppColors_1.AppColors.sky100,text:AppColors_1.AppColors.sky600,border:AppColors_1.AppColors.sky400};case"listener":return{label:"LISTENER",renderIcon:(t,a=9)=><NetworkIcons_1.ListenerIcon color={t}size={a}/>,bg:AppColors_1.AppColors.teal100,text:AppColors_1.AppColors.teal700,border:AppColors_1.AppColors.teal400};default:return{label:"DIRECT",renderIcon:(t,a=9)=><NetworkIcons_1.BoltIcon color={t}size={a}/>,bg:AppColors_1.AppColors.slate100,text:AppColors_1.AppColors.slate700,border:AppColors_1.AppColors.slate200}}},DEFAULT_PAGE_SIZE=50,LOAD_MORE_STEP=10,ReduxTab=react_1.default.memo(()=>{const{t:i}=(0,i18n_1.useTranslation)(),{reduxState:t,reduxLastActionMap:a,reduxSearch:r,setReduxSearch:n,setSelectedReduxSlice:b}=(0,InspectorContext_1.useInspector)(),x=(0,react_1.useRef)(null),[T,m]=(0,react_1.useState)(DEFAULT_PAGE_SIZE),[u,I]=(0,react_1.useState)("latest");react_1.default.useEffect(()=>{m(DEFAULT_PAGE_SIZE),x.current?.scrollToOffset({offset:0,animated:!1})},[r,u]);const R=(0,react_1.useMemo)(()=>(0,helpers_1.getSize)(t),[t]),v=(0,react_1.useMemo)(()=>(0,reduxLogger_1.getActionHistory)(),[a]),w=(0,react_1.useMemo)(()=>!t||typeof t!="object"?[]:Object.keys(t).map(l=>{const o=t[l],p=Array.isArray(o),A=o&&typeof o=="object";let g="Primitive",d=0;p?(d=o.length,g=`Array [${d}]`):A?(d=Object.keys(o).length,g=`Object {${d}}`):typeof o<"u"&&(d=1,g=typeof o);let f="live",c;A&&(o.loading===!0||o.isLoading===!0||o.status==="loading"||o.status==="pending"?(f="loading",c="Loading"):o.error||o.hasError||o.status==="error"||o.status==="failed"?(f="error",c=typeof o.error=="string"?o.error:"Error"):d===0&&(f="empty",c="Empty"));const s=a[l],B=s?.updatedAt||0,F=v.filter(C=>!C.affectedSlices||C.affectedSlices.length===0?!0:C.affectedSlices.includes(l)).length;let S;if(s){let C;if(s.payload!==void 0&&s.payload!==null)try{if(typeof s.payload=="object"){const V=Object.keys(s.payload);C=`{ ${V.slice(0,3).join(", ")}${V.length>3?"...":""} }`}else C=String(s.payload)}catch{}S={type:s.type,timestamp:s.timestamp,updatedAt:s.updatedAt,payloadPreview:C,originType:s.originType,callerFile:s.callerFile,callerLine:s.callerLine,callerCol:s.callerCol}}return{id:`slice-${l}`,name:l,keysCount:d,sizeStr:(0,helpers_1.getSize)(o),typeLabel:g,status:f,statusMessage:c,timelineCount:F,lastAction:S,updatedAt:B}}),[t,a,v]),y=(0,react_1.useMemo)(()=>{let e=w;if(r&&r.trim().length>0){const l=r.trim().toLowerCase().split(/\s+/).filter(Boolean);e=e.filter(o=>{const p=t?t[o.name]:null,A=[o.name||"",o.lastAction?.type||"",o.lastAction?.payloadPreview||"",o.lastAction?.originType||"",o.status||"",o.statusMessage||"",p?typeof p=="string"?p:JSON.stringify(p):""].join(" ").toLowerCase();return l.every(g=>A.includes(g))})}return[...e].sort((l,o)=>u==="latest"&&o.updatedAt!==l.updatedAt?o.updatedAt-l.updatedAt:l.name.localeCompare(o.name))},[w,r,u,t]),_=(0,react_1.useMemo)(()=>y.slice(0,T),[y,T]),h=(0,react_1.useMemo)(()=>{const e=Object.values(a);return e.length===0?null:e.reduce((l,o)=>l?(o.updatedAt||0)>(l.updatedAt||0)?o:l:o,null)},[a]),z=(0,react_1.useCallback)(({item:e,index:l})=>{const o=e.updatedAt>0&&Date.now()-e.updatedAt<5e3,p=e.status==="error"?AppColors_1.AppColors.errorColor:e.status==="loading"?AppColors_1.AppColors.warningIconGold:e.status==="empty"?AppColors_1.AppColors.grayTextWeak:AppColors_1.AppColors.greenColor,A=e.status==="error"?AppColors_1.AppColors.red100:e.status==="loading"?AppColors_1.AppColors.amber100:e.status==="empty"?AppColors_1.AppColors.grayBackground:AppColors_1.AppColors.emeraldBg,g=e.status==="error"?AppColors_1.AppColors.errorBorder:e.status==="loading"?AppColors_1.AppColors.amber200:e.status==="empty"?AppColors_1.AppColors.dividerColor:AppColors_1.AppColors.emeraldBorder,d=e.status==="error"?AppColors_1.AppColors.red600:e.status==="loading"?AppColors_1.AppColors.amber800Warm:e.status==="empty"?AppColors_1.AppColors.grayTextWeak:AppColors_1.AppColors.emerald700,f=e.lastAction?.callerFile?(0,helpers_1.getCleanCallerDisplay)(e.lastAction.callerFile):null;return<AnimatedEntrance_1.default index={l}distance={8}>
2
2
  <react_native_1.View style={reduxTabStyles.cardContainer}>
3
3
  <TouchableScale_1.default onPress={()=>{b(e.name)}}style={[reduxTabStyles.card,{borderLeftWidth:3.5,borderLeftColor:p,backgroundColor:e.status==="error"?AppColors_1.AppColors.errorCardBg:AppColors_1.AppColors.white},o&&reduxTabStyles.cardRecentlyUpdated]}>
4
4
  <react_native_1.View style={reduxTabStyles.cardBody}>
@@ -26,7 +26,7 @@
26
26
  </react_native_1.View>
27
27
 
28
28
  <react_native_1.View style={reduxTabStyles.cardHeaderRight}>
29
- <react_native_1.View style={[reduxTabStyles.statusPill,{backgroundColor:w,borderColor:g}]}>
29
+ <react_native_1.View style={[reduxTabStyles.statusPill,{backgroundColor:A,borderColor:g}]}>
30
30
  {e.status==="loading"?<NetworkIcons_1.LoadingSpinnerIcon color={AppColors_1.AppColors.amber800Warm}size={10}/>:e.status==="error"?<NetworkIcons_1.CircleAlertIcon color={AppColors_1.AppColors.red600}size={10}/>:e.status==="empty"?null:<react_native_1.View style={reduxTabStyles.liveDot}/>}
31
31
  <react_native_1.Text style={[reduxTabStyles.statusPillText,{color:d}]}>
32
32
  {e.status==="loading"?"Loading":e.status==="error"?e.statusMessage||"Error":e.status==="empty"?"Empty":"Live"}
@@ -50,7 +50,7 @@
50
50
  <react_native_1.View style={reduxTabStyles.actionPreviewRow}>
51
51
  <NetworkIcons_1.TerminalIcon color={AppColors_1.AppColors.grayTextWeak}size={10}/>
52
52
  {e.lastAction?<HighlightText_1.default text={e.lastAction.type+(e.lastAction.payloadPreview?` \xB7 ${e.lastAction.payloadPreview}`:"")}search={r}style={reduxTabStyles.actionPreviewText}highlightStyle={reduxTabStyles.highlight}numberOfLines={1}/>:<react_native_1.Text style={reduxTabStyles.actionPreviewEmptyText}numberOfLines={1}>
53
- Initial state (no actions dispatched yet)
53
+ {i("redux.initialStateNoActions","Initial state (no actions dispatched yet)")}
54
54
  </react_native_1.Text>}
55
55
  </react_native_1.View>
56
56
  </react_native_1.View>
@@ -98,7 +98,7 @@
98
98
  <react_native_1.View style={reduxTabStyles.overviewCard}>
99
99
  <react_native_1.View style={reduxTabStyles.statCol}>
100
100
  <react_native_1.Text style={reduxTabStyles.statHeading}>{i("redux.activeSlices","ACTIVE SLICES")}</react_native_1.Text>
101
- <react_native_1.Text style={reduxTabStyles.statBigVal}>{A.length}</react_native_1.Text>
101
+ <react_native_1.Text style={reduxTabStyles.statBigVal}>{w.length}</react_native_1.Text>
102
102
  </react_native_1.View>
103
103
  <react_native_1.View style={reduxTabStyles.statDivider}/>
104
104
  <react_native_1.View style={reduxTabStyles.statCol}>
@@ -151,7 +151,7 @@
151
151
 
152
152
  <react_native_1.View style={reduxTabStyles.headerSubRow}>
153
153
  <react_native_1.Text style={reduxTabStyles.resultCount}>
154
- Showing {y.length} of {A.length} state slices
154
+ Showing {y.length} of {w.length} state slices
155
155
  </react_native_1.Text>
156
156
  <react_native_1.View style={{flexDirection:"row",alignItems:"center",gap:4}}>
157
157
  {u==="latest"?<NetworkIcons_1.BoltIcon color={AppColors_1.AppColors.brandPurple}size={11}/>:<NetworkIcons_1.TextAaIcon color={AppColors_1.AppColors.brandPurple}size={11}/>}
@@ -368,8 +368,7 @@
368
368
  NPM Update Toast
369
369
  </react_native_1.Text>
370
370
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,lineHeight:15,color:AppColors_1.AppColors.grayText,marginTop:1}}>
371
- Show a floating toast banner with countdown progress when
372
- a newer release is published on npm.
371
+ {o("settings.npmUpdateToastDesc","Show a floating toast banner with countdown progress when a newer release is published on npm.")}
373
372
  </react_native_1.Text>
374
373
  </react_native_1.View>
375
374
  </react_native_1.View>
@@ -399,8 +398,7 @@
399
398
  Auto-Calculate Limits from RAM
400
399
  </react_native_1.Text>
401
400
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,lineHeight:15,color:AppColors_1.AppColors.grayText,marginTop:1}}>
402
- Dynamically sets log limits according to available device
403
- memory
401
+ {o("settings.autoCalculateLimitsRamDesc","Dynamically sets log limits according to available device memory")}
404
402
  </react_native_1.Text>
405
403
  </react_native_1.View>
406
404
  </react_native_1.View>
@@ -473,8 +471,7 @@
473
471
  OS Memory Warning Guard
474
472
  </react_native_1.Text>
475
473
  <react_native_1.Text style={{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,lineHeight:15,color:AppColors_1.AppColors.grayText,marginTop:1}}>
476
- Automatically prunes in-memory buffers by 50% when the OS
477
- signals low memory
474
+ {o("settings.osMemoryWarningGuardDesc","Automatically prunes in-memory buffers by 50% when the OS signals low memory")}
478
475
  </react_native_1.Text>
479
476
  </react_native_1.View>
480
477
  <react_native_1.View style={{paddingHorizontal:8,paddingVertical:3,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.emerald500}18`}}>
@@ -38,7 +38,7 @@ ${i}`,[{text:d("common.cancel","Cancel"),style:"cancel"},{text:d("common.open","
38
38
  </react_native_1.Text>
39
39
  </react_native_1.View>
40
40
 
41
- <react_native_1.Pressable onPress={x}hitSlop={8}style={styles.globeBtn}accessibilityRole="button"accessibilityLabel="Open in Browser">
41
+ <react_native_1.Pressable onPress={x}hitSlop={{top:6,bottom:6,left:3,right:3}}style={styles.globeBtn}accessibilityRole="button"accessibilityLabel="Open in Browser">
42
42
  <NetworkIcons_1.GlobeIcon color={AppColors_1.AppColors.grayTextWeak}size={12}/>
43
43
  </react_native_1.Pressable>
44
44
 
@@ -113,4 +113,4 @@ ${i}`,[{text:d("common.cancel","Cancel"),style:"cancel"},{text:d("common.open","
113
113
  </react_native_1.View>
114
114
  </react_native_1.View>
115
115
  </TouchableScale_1.default>
116
- </react_native_1.View>}const styles=react_native_1.StyleSheet.create({container:{marginHorizontal:4,marginBottom:6},card:{borderRadius:12,borderWidth:1,borderColor:AppColors_1.AppColors.dividerColor,shadowColor:AppColors_1.AppColors.shadowColorString,shadowOffset:{width:0,height:1},shadowOpacity:.05,shadowRadius:2,elevation:1,overflow:"hidden"},cardNew:{borderColor:`${AppColors_1.AppColors.brandPurple}66`,backgroundColor:`${AppColors_1.AppColors.brandPurple}05`},cardBody:{paddingHorizontal:8,paddingVertical:8},cardHeaderRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:5},cardHeaderLeft:{flexDirection:"row",alignItems:"center",gap:4.5,flex:1,minWidth:0},smallCheckbox:{width:15,height:15,borderRadius:3.5,borderWidth:1.2,borderColor:AppColors_1.AppColors.grayTextWeak,alignItems:"center",justifyContent:"center",backgroundColor:AppColors_1.AppColors.white,marginRight:2},smallCheckboxChecked:{backgroundColor:AppColors_1.AppColors.purple,borderColor:AppColors_1.AppColors.purple},serialNumber:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:10.5,color:AppColors_1.AppColors.grayTextWeak},protocolBadge:{paddingHorizontal:5.5,paddingVertical:1.5,borderRadius:5,borderWidth:1},protocolBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,letterSpacing:.3},chip:{paddingHorizontal:5,paddingVertical:1.5,borderRadius:4,borderWidth:1},chipText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9,letterSpacing:.2},cardHeaderRight:{flexDirection:"row",alignItems:"center",gap:6},statusPill:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:6,paddingVertical:2,borderRadius:5,borderWidth:1},statusPillText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,letterSpacing:.3},pulsingDot:{width:6,height:6,borderRadius:3,backgroundColor:AppColors_1.AppColors.greenColor},globeBtn:{padding:3,borderRadius:4,backgroundColor:`${AppColors_1.AppColors.grayTextWeak}12`},urlBox:{marginBottom:8},urlMainRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:6,marginBottom:3},pathText:{flex:1,fontFamily:AppFonts_1.AppFonts.interBold,fontSize:12.5,color:AppColors_1.AppColors.grayTextStrong,lineHeight:17},highlight:{backgroundColor:"rgba(250, 204, 21, 0.40)",color:AppColors_1.AppColors.grayTextStrong,borderRadius:2},hostRow:{flexDirection:"row",alignItems:"center",gap:5},protoBadge:{flexDirection:"row",alignItems:"center",gap:3,paddingHorizontal:4.5,paddingVertical:1,borderRadius:4,borderWidth:1},protoBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,letterSpacing:.2},hostText:{flex:1,fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11,color:AppColors_1.AppColors.grayTextWeak},cardFooterRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:6,borderTopWidth:1,borderTopColor:AppColors_1.AppColors.dividerColor},footerLeft:{flexDirection:"row",alignItems:"center",flex:1,minWidth:0,marginRight:6},cardDateRow:{flexDirection:"row",alignItems:"center",gap:4},cardDateText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10,color:AppColors_1.AppColors.grayTextWeak},footerRight:{flexDirection:"row",alignItems:"center",gap:4},metaStatChip:{flexDirection:"row",alignItems:"center",gap:3,paddingHorizontal:5,paddingVertical:2,borderRadius:4,borderWidth:1},metaStatText:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:9.5}});function areSocketPropsEqual(e,o){return e.item===o.item&&e.isSelected===o.isSelected&&e.isNew===o.isNew&&e.searchStr===o.searchStr&&e.serialNumber===o.serialNumber&&e.onPress===o.onPress&&e.onToggleSelect===o.onToggleSelect}exports.default=react_1.default.memo(SocketCard,areSocketPropsEqual);
116
+ </react_native_1.View>}const styles=react_native_1.StyleSheet.create({container:{marginHorizontal:4,marginBottom:6},card:{borderRadius:12,borderWidth:1,borderColor:AppColors_1.AppColors.dividerColor,shadowColor:AppColors_1.AppColors.shadowColorString,shadowOffset:{width:0,height:1},shadowOpacity:.05,shadowRadius:2,elevation:1,overflow:"hidden"},cardNew:{borderColor:`${AppColors_1.AppColors.brandPurple}66`,backgroundColor:`${AppColors_1.AppColors.brandPurple}05`},cardBody:{paddingHorizontal:8,paddingVertical:8},cardHeaderRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:5},cardHeaderLeft:{flexDirection:"row",alignItems:"center",gap:4.5,flex:1,minWidth:0},smallCheckbox:{width:15,height:15,borderRadius:3.5,borderWidth:1.2,borderColor:AppColors_1.AppColors.grayTextWeak,alignItems:"center",justifyContent:"center",backgroundColor:AppColors_1.AppColors.white,marginRight:2},smallCheckboxChecked:{backgroundColor:AppColors_1.AppColors.purple,borderColor:AppColors_1.AppColors.purple},serialNumber:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:10.5,color:AppColors_1.AppColors.grayTextWeak},protocolBadge:{paddingHorizontal:5.5,paddingVertical:1.5,borderRadius:5,borderWidth:1},protocolBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,letterSpacing:.3},chip:{paddingHorizontal:5,paddingVertical:1.5,borderRadius:4,borderWidth:1},chipText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9,letterSpacing:.2},cardHeaderRight:{flexDirection:"row",alignItems:"center",gap:7},statusPill:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:6,paddingVertical:2,borderRadius:5,borderWidth:1},statusPillText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9.5,letterSpacing:.3},pulsingDot:{width:6,height:6,borderRadius:3,backgroundColor:AppColors_1.AppColors.greenColor},globeBtn:{width:26,height:22,borderRadius:5,backgroundColor:`${AppColors_1.AppColors.grayTextWeak}14`,borderWidth:1,borderColor:`${AppColors_1.AppColors.grayTextWeak}28`,alignItems:"center",justifyContent:"center"},urlBox:{marginBottom:8},urlMainRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",gap:6,marginBottom:3},pathText:{flex:1,fontFamily:AppFonts_1.AppFonts.interBold,fontSize:12.5,color:AppColors_1.AppColors.grayTextStrong,lineHeight:17},highlight:{backgroundColor:"rgba(250, 204, 21, 0.40)",color:AppColors_1.AppColors.grayTextStrong,borderRadius:2},hostRow:{flexDirection:"row",alignItems:"center",gap:5},protoBadge:{flexDirection:"row",alignItems:"center",gap:3,paddingHorizontal:4.5,paddingVertical:1,borderRadius:4,borderWidth:1},protoBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,letterSpacing:.2},hostText:{flex:1,fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11,color:AppColors_1.AppColors.grayTextWeak},cardFooterRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:6,borderTopWidth:1,borderTopColor:AppColors_1.AppColors.dividerColor},footerLeft:{flexDirection:"row",alignItems:"center",flex:1,minWidth:0,marginRight:6},cardDateRow:{flexDirection:"row",alignItems:"center",gap:4},cardDateText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10,color:AppColors_1.AppColors.grayTextWeak},footerRight:{flexDirection:"row",alignItems:"center",gap:4},metaStatChip:{flexDirection:"row",alignItems:"center",gap:3,paddingHorizontal:5,paddingVertical:2,borderRadius:4,borderWidth:1},metaStatText:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:9.5}});function areSocketPropsEqual(e,o){return e.item===o.item&&e.isSelected===o.isSelected&&e.isNew===o.isNew&&e.searchStr===o.searchStr&&e.serialNumber===o.serialNumber&&e.onPress===o.onPress&&e.onToggleSelect===o.onToggleSelect}exports.default=react_1.default.memo(SocketCard,areSocketPropsEqual);
@@ -29,13 +29,13 @@ https://github.com/vengatmacuser/react-native-inapp-inspector`,url:"https://gith
29
29
 
30
30
  <react_native_1.View style={styles.pillRow}>
31
31
  <react_native_1.View style={styles.pillBadge}>
32
- <react_native_1.Text style={styles.pillBadgeText}>MIT LICENSE</react_native_1.Text>
32
+ <react_native_1.Text style={styles.pillBadgeText}>{e("support.mitLicense","MIT LICENSE")}</react_native_1.Text>
33
33
  </react_native_1.View>
34
34
  <react_native_1.View style={styles.pillBadge}>
35
- <react_native_1.Text style={styles.pillBadgeText}>ZERO CONFIG</react_native_1.Text>
35
+ <react_native_1.Text style={styles.pillBadgeText}>{e("support.zeroConfig","ZERO CONFIG")}</react_native_1.Text>
36
36
  </react_native_1.View>
37
37
  <react_native_1.View style={styles.pillBadge}>
38
- <react_native_1.Text style={styles.pillBadgeText}>FABRIC & TURBO</react_native_1.Text>
38
+ <react_native_1.Text style={styles.pillBadgeText}>{e("support.fabricTurbo","FABRIC & TURBO")}</react_native_1.Text>
39
39
  </react_native_1.View>
40
40
  </react_native_1.View>
41
41
  </react_native_1.View>
@@ -99,7 +99,7 @@ https://github.com/vengatmacuser/react-native-inapp-inspector`,url:"https://gith
99
99
  {e("support.star","Star on GitHub")}
100
100
  </react_native_1.Text>
101
101
  <react_native_1.View style={styles.badgeAmber}>
102
- <react_native_1.Text style={styles.badgeAmberText}>RECOMMENDED</react_native_1.Text>
102
+ <react_native_1.Text style={styles.badgeAmberText}>{e("support.recommended","RECOMMENDED")}</react_native_1.Text>
103
103
  </react_native_1.View>
104
104
  </react_native_1.View>
105
105
  <react_native_1.Text style={styles.itemDesc}>
@@ -196,7 +196,7 @@ https://github.com/vengatmacuser/react-native-inapp-inspector`,url:"https://gith
196
196
  <react_native_1.View style={styles.authorTextCol}>
197
197
  <react_native_1.Text style={styles.authorName}>Vengateswaran Balakrishnan</react_native_1.Text>
198
198
  <react_native_1.Text style={styles.authorRole}>
199
- Creator & Core Maintainer • @vengatmacuser
199
+ {e("support.creatorMaintainer","Creator & Core Maintainer \u2022 @vengatmacuser")}
200
200
  </react_native_1.Text>
201
201
  <react_native_1.Text style={styles.authorEmail}>vengatmacuser@gmail.com</react_native_1.Text>
202
202
  </react_native_1.View>
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { A11yAuditResult } from '../../types';
3
+ interface UiA11yAuditPanelProps {
4
+ a11y: A11yAuditResult;
5
+ }
6
+ export declare const UiA11yAuditPanel: React.FC<UiA11yAuditPanelProps>;
7
+ export {};
@@ -0,0 +1,97 @@
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.UiA11yAuditPanel=void 0;const react_1=__importDefault(require("react")),react_native_1=require("react-native"),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),NetworkIcons_1=require("../NetworkIcons"),UiA11yAuditPanel=({a11y:t})=>{const{hasValidTouchTarget:r,touchTargetWidth:c,touchTargetHeight:d,recommendedMinSize:o,contrastRatio:a,contrastScore:e,textColor:p,backgroundColor:_,hasAccessibilityLabel:l,accessibilityRole:s,accessibilityHint:n,issues:i}=t;return<react_native_1.View style={styles.container}>
2
+
3
+ <react_native_1.View style={styles.card}>
4
+ <react_native_1.View style={styles.cardHeader}>
5
+ <react_native_1.View style={styles.cardTitleRow}>
6
+ <NetworkIcons_1.AccessibilityIcon color={AppColors_1.AppColors.brandPurple}size={18}/>
7
+ <react_native_1.Text style={styles.cardTitle}>Touch Target Size</react_native_1.Text>
8
+ </react_native_1.View>
9
+ <react_native_1.View style={[styles.badge,r?styles.badgeSuccess:styles.badgeWarning]}>
10
+ <react_native_1.Text style={[styles.badgeText,r?styles.badgeTextSuccess:styles.badgeTextWarning]}>
11
+ {r?"COMPLIANT":"SUB-OPTIMAL"}
12
+ </react_native_1.Text>
13
+ </react_native_1.View>
14
+ </react_native_1.View>
15
+
16
+ <react_native_1.View style={styles.metricRow}>
17
+ <react_native_1.View style={styles.metricItem}>
18
+ <react_native_1.Text style={styles.metricLabel}>Actual Size</react_native_1.Text>
19
+ <react_native_1.Text style={styles.metricValue}>
20
+ {Math.round(c)} × {Math.round(d)} pt
21
+ </react_native_1.Text>
22
+ </react_native_1.View>
23
+ <react_native_1.View style={styles.metricItem}>
24
+ <react_native_1.Text style={styles.metricLabel}>Target Guideline</react_native_1.Text>
25
+ <react_native_1.Text style={styles.metricValue}>
26
+ ≥ {o} × {o} pt
27
+ </react_native_1.Text>
28
+ </react_native_1.View>
29
+ </react_native_1.View>
30
+ </react_native_1.View>
31
+
32
+
33
+ <react_native_1.View style={styles.card}>
34
+ <react_native_1.View style={styles.cardHeader}>
35
+ <react_native_1.View style={styles.cardTitleRow}>
36
+ <react_native_1.Text style={styles.cardTitle}>WCAG Color Contrast</react_native_1.Text>
37
+ </react_native_1.View>
38
+ <react_native_1.View style={[styles.badge,e==="AAA"||e==="AA"?styles.badgeSuccess:e==="Fail"?styles.badgeError:styles.badgeNeutral]}>
39
+ <react_native_1.Text style={[styles.badgeText,e==="AAA"||e==="AA"?styles.badgeTextSuccess:e==="Fail"?styles.badgeTextError:styles.badgeTextNeutral]}>
40
+ {e==="N/A"?"NOT APPLICABLE":`WCAG ${e}`}
41
+ </react_native_1.Text>
42
+ </react_native_1.View>
43
+ </react_native_1.View>
44
+
45
+ {a!==void 0?<react_native_1.View style={styles.contrastPreview}>
46
+ <react_native_1.View style={[styles.contrastSwatch,{backgroundColor:_||"#FFFFFF"}]}>
47
+ <react_native_1.Text style={[styles.contrastSampleText,{color:p||"#000000"}]}>
48
+ Sample Text
49
+ </react_native_1.Text>
50
+ </react_native_1.View>
51
+ <react_native_1.View style={styles.contrastDetails}>
52
+ <react_native_1.Text style={styles.contrastRatioValue}>{a}:1</react_native_1.Text>
53
+ <react_native_1.Text style={styles.contrastSubtext}>
54
+ {a>=7?"Passes AAA (Enhanced Contrast)":a>=4.5?"Passes AA (Minimum Standard)":"Fails AA (Low Contrast Warning)"}
55
+ </react_native_1.Text>
56
+ </react_native_1.View>
57
+ </react_native_1.View>:<react_native_1.Text style={styles.naSubtext}>
58
+ Text or background color is transparent or dynamically inherited.
59
+ </react_native_1.Text>}
60
+ </react_native_1.View>
61
+
62
+
63
+ <react_native_1.View style={styles.card}>
64
+ <react_native_1.Text style={[styles.cardTitle,{marginBottom:10}]}>Accessibility Attributes</react_native_1.Text>
65
+
66
+ <react_native_1.View style={styles.attributeRow}>
67
+ <react_native_1.Text style={styles.attributeLabel}>accessibilityLabel:</react_native_1.Text>
68
+ <react_native_1.Text style={[styles.attributeValue,!l&&{color:AppColors_1.AppColors.grayTextWeak,fontStyle:"italic"}]}>
69
+ {l?"Provided":"None specified"}
70
+ </react_native_1.Text>
71
+ </react_native_1.View>
72
+
73
+ <react_native_1.View style={styles.attributeRow}>
74
+ <react_native_1.Text style={styles.attributeLabel}>accessibilityRole:</react_native_1.Text>
75
+ <react_native_1.Text style={[styles.attributeValue,!s&&{color:AppColors_1.AppColors.grayTextWeak,fontStyle:"italic"}]}>
76
+ {s||"None"}
77
+ </react_native_1.Text>
78
+ </react_native_1.View>
79
+
80
+ {n&&<react_native_1.View style={styles.attributeRow}>
81
+ <react_native_1.Text style={styles.attributeLabel}>accessibilityHint:</react_native_1.Text>
82
+ <react_native_1.Text style={styles.attributeValue}>{n}</react_native_1.Text>
83
+ </react_native_1.View>}
84
+ </react_native_1.View>
85
+
86
+
87
+ {i.length>0&&<react_native_1.View style={[styles.card,styles.issuesCard]}>
88
+ <react_native_1.View style={styles.issuesHeader}>
89
+ <NetworkIcons_1.AlertTriangleIcon color="#D97706"size={16}/>
90
+ <react_native_1.Text style={styles.issuesTitle}>Recommendations ({i.length})</react_native_1.Text>
91
+ </react_native_1.View>
92
+ {i.map((u,b)=><react_native_1.View key={b}style={styles.issueItem}>
93
+ <react_native_1.Text style={styles.issueBullet}>•</react_native_1.Text>
94
+ <react_native_1.Text style={styles.issueText}>{u}</react_native_1.Text>
95
+ </react_native_1.View>)}
96
+ </react_native_1.View>}
97
+ </react_native_1.View>};exports.UiA11yAuditPanel=UiA11yAuditPanel;const styles=react_native_1.StyleSheet.create({container:{gap:10,paddingVertical:4},card:{backgroundColor:AppColors_1.AppColors.white,borderRadius:12,padding:14,borderWidth:1,borderColor:AppColors_1.AppColors.grayBorderSecondary},cardHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:10},cardTitleRow:{flexDirection:"row",alignItems:"center",gap:8},cardTitle:{fontSize:14,fontFamily:AppFonts_1.AppFonts.semiBold,color:AppColors_1.AppColors.slate900},badge:{paddingHorizontal:8,paddingVertical:3,borderRadius:6},badgeSuccess:{backgroundColor:"#10B9811A",borderColor:"#10B98144",borderWidth:1},badgeWarning:{backgroundColor:"#F59E0B1A",borderColor:"#F59E0B44",borderWidth:1},badgeError:{backgroundColor:"#E11D481A",borderColor:"#E11D4844",borderWidth:1},badgeNeutral:{backgroundColor:AppColors_1.AppColors.slate100},badgeText:{fontSize:10,fontFamily:AppFonts_1.AppFonts.bold},badgeTextSuccess:{color:"#059669"},badgeTextWarning:{color:"#D97706"},badgeTextError:{color:"#E11D48"},badgeTextNeutral:{color:AppColors_1.AppColors.slate600},metricRow:{flexDirection:"row",gap:16},metricItem:{flex:1,backgroundColor:AppColors_1.AppColors.slate50,padding:10,borderRadius:8},metricLabel:{fontSize:11,fontFamily:AppFonts_1.AppFonts.medium,color:AppColors_1.AppColors.grayTextWeak,marginBottom:4},metricValue:{fontSize:13,fontFamily:AppFonts_1.AppFonts.semiBold,color:AppColors_1.AppColors.slate900},contrastPreview:{flexDirection:"row",alignItems:"center",gap:12},contrastSwatch:{paddingVertical:12,paddingHorizontal:16,borderRadius:8,borderWidth:1,borderColor:AppColors_1.AppColors.grayBorderSecondary},contrastSampleText:{fontSize:13,fontFamily:AppFonts_1.AppFonts.semiBold},contrastDetails:{flex:1},contrastRatioValue:{fontSize:16,fontFamily:AppFonts_1.AppFonts.bold,color:AppColors_1.AppColors.slate900},contrastSubtext:{fontSize:11,fontFamily:AppFonts_1.AppFonts.medium,color:AppColors_1.AppColors.grayTextWeak,marginTop:2},naSubtext:{fontSize:12,fontFamily:AppFonts_1.AppFonts.medium,color:AppColors_1.AppColors.grayTextWeak},attributeRow:{flexDirection:"row",justifyContent:"space-between",paddingVertical:6,borderBottomWidth:1,borderBottomColor:AppColors_1.AppColors.slate100},attributeLabel:{fontSize:12,fontFamily:AppFonts_1.AppFonts.medium,color:AppColors_1.AppColors.slate600},attributeValue:{fontSize:12,fontFamily:AppFonts_1.AppFonts.semiBold,color:AppColors_1.AppColors.slate900},issuesCard:{backgroundColor:"#FEF3C722",borderColor:"#F59E0B44"},issuesHeader:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:8},issuesTitle:{fontSize:13,fontFamily:AppFonts_1.AppFonts.semiBold,color:"#D97706"},issueItem:{flexDirection:"row",alignItems:"flex-start",gap:6,marginVertical:3},issueBullet:{fontSize:12,color:"#D97706"},issueText:{fontSize:12,fontFamily:AppFonts_1.AppFonts.medium,color:AppColors_1.AppColors.slate700,flex:1,lineHeight:16}});
@@ -0,0 +1,2 @@
1
+ import React from 'react';
2
+ export declare const UiInspectorDetail: React.FC;