react-native-inapp-inspector 2.4.0 → 2.4.2

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 (231) hide show
  1. package/README.ar.md +163 -0
  2. package/README.de.md +163 -0
  3. package/README.es.md +164 -0
  4. package/README.fr.md +163 -0
  5. package/README.hi.md +163 -0
  6. package/README.ja.md +180 -0
  7. package/README.ko.md +163 -0
  8. package/README.md +340 -243
  9. package/README.pt-BR.md +163 -0
  10. package/README.ru.md +163 -0
  11. package/README.zh-CN.md +387 -0
  12. package/android/src/main/java/com/inappinspector/NetworkInspectorModule.kt +82 -21
  13. package/assets/banner_dark.svg +186 -0
  14. package/assets/banner_light.svg +186 -0
  15. package/assets/icon_circle.svg +148 -0
  16. package/assets/icon_square.svg +369 -0
  17. package/assets/inapp_inspector_icon.gif +0 -0
  18. package/assets/inapp_inspector_icon_original.gif +0 -0
  19. package/assets/social_preview.png +0 -0
  20. package/assets/walkthrough.gif +0 -0
  21. package/dist/commonjs/components/AnimatedBrandOwl.d.ts +7 -0
  22. package/dist/commonjs/components/AnimatedBrandOwl.js +175 -0
  23. package/dist/commonjs/components/AppHeaderLogo.d.ts +1 -0
  24. package/dist/commonjs/components/AppHeaderLogo.js +7 -5
  25. package/dist/commonjs/components/BrandSquareIcon.d.ts +5 -0
  26. package/dist/commonjs/components/BrandSquareIcon.js +139 -0
  27. package/dist/commonjs/components/ConsoleLogCard.d.ts +2 -1
  28. package/dist/commonjs/components/ConsoleLogCard.js +23 -39
  29. package/dist/commonjs/components/Inspector/AboutModal.js +44 -54
  30. package/dist/commonjs/components/Inspector/AnalyticsTab.js +16 -16
  31. package/dist/commonjs/components/Inspector/ConfirmationModal.d.ts +13 -0
  32. package/dist/commonjs/components/Inspector/ConfirmationModal.js +32 -0
  33. package/dist/commonjs/components/Inspector/ConsoleTab.js +15 -15
  34. package/dist/commonjs/components/Inspector/CrashTab.js +25 -23
  35. package/dist/commonjs/components/Inspector/DebuggingTab.js +17 -17
  36. package/dist/commonjs/components/Inspector/FabLauncher.js +22 -30
  37. package/dist/commonjs/components/Inspector/FeatureUnderDevNotice.js +2 -2
  38. package/dist/commonjs/components/Inspector/LanguageSelectorModal.d.ts +15 -0
  39. package/dist/commonjs/components/Inspector/LanguageSelectorModal.js +90 -0
  40. package/dist/commonjs/components/Inspector/MainScreen.js +46 -33
  41. package/dist/commonjs/components/Inspector/MediaGalleryTab.js +21 -19
  42. package/dist/commonjs/components/Inspector/MediaPreviewModal.js +85 -101
  43. package/dist/commonjs/components/Inspector/NetworkTab.js +50 -50
  44. package/dist/commonjs/components/Inspector/NpmUpdateToast.js +1 -1
  45. package/dist/commonjs/components/Inspector/PushCard.d.ts +3 -2
  46. package/dist/commonjs/components/Inspector/PushCard.js +5 -4
  47. package/dist/commonjs/components/Inspector/PushDetail.js +32 -23
  48. package/dist/commonjs/components/Inspector/PushTab.js +13 -13
  49. package/dist/commonjs/components/Inspector/ReduxDetail.js +32 -32
  50. package/dist/commonjs/components/Inspector/ReduxTab.js +14 -14
  51. package/dist/commonjs/components/Inspector/SettingsPanel.js +258 -139
  52. package/dist/commonjs/components/Inspector/SocketCard.d.ts +5 -0
  53. package/dist/commonjs/components/Inspector/SocketCard.js +116 -0
  54. package/dist/commonjs/components/Inspector/SocketDetail.d.ts +4 -0
  55. package/dist/commonjs/components/Inspector/SocketDetail.js +317 -0
  56. package/dist/commonjs/components/Inspector/SocketFilterModal.d.ts +13 -0
  57. package/dist/commonjs/components/Inspector/SocketFilterModal.js +69 -0
  58. package/dist/commonjs/components/Inspector/SocketTab.d.ts +3 -0
  59. package/dist/commonjs/components/Inspector/SocketTab.js +112 -0
  60. package/dist/commonjs/components/Inspector/StorageTab.js +34 -32
  61. package/dist/commonjs/components/Inspector/SupportModal.d.ts +7 -0
  62. package/dist/commonjs/components/Inspector/SupportModal.js +125 -0
  63. package/dist/commonjs/components/Inspector/SupportPage.d.ts +5 -0
  64. package/dist/commonjs/components/Inspector/SupportPage.js +227 -0
  65. package/dist/commonjs/components/Inspector/TabBar.js +24 -23
  66. package/dist/commonjs/components/Inspector/UpdateAvailableModal.js +24 -24
  67. package/dist/commonjs/components/JsonViewer.js +7 -7
  68. package/dist/commonjs/components/LogCard.d.ts +3 -2
  69. package/dist/commonjs/components/LogCard.js +17 -14
  70. package/dist/commonjs/components/LogSyntaxHighlighter.js +5 -5
  71. package/dist/commonjs/components/ModuleErrorBoundary.js +2 -2
  72. package/dist/commonjs/components/NetworkIcons.d.ts +15 -0
  73. package/dist/commonjs/components/NetworkIcons.js +38 -3
  74. package/dist/commonjs/components/SegmentedTabs.js +1 -1
  75. package/dist/commonjs/constants/version.d.ts +1 -1
  76. package/dist/commonjs/constants/version.js +1 -1
  77. package/dist/commonjs/customHooks/socketLogger.d.ts +26 -0
  78. package/dist/commonjs/customHooks/socketLogger.js +2 -0
  79. package/dist/commonjs/helpers/index.js +3 -3
  80. package/dist/commonjs/helpers/memoryManager.d.ts +1 -0
  81. package/dist/commonjs/helpers/memoryManager.js +1 -1
  82. package/dist/commonjs/helpers/searchQueryParser.d.ts +1 -1
  83. package/dist/commonjs/helpers/searchQueryParser.js +5 -1
  84. package/dist/commonjs/helpers/settingsStore.d.ts +1 -0
  85. package/dist/commonjs/helpers/settingsStore.js +1 -1
  86. package/dist/commonjs/helpers/shareFormatter.d.ts +3 -1
  87. package/dist/commonjs/helpers/shareFormatter.js +8 -7
  88. package/dist/commonjs/i18n/index.d.ts +99 -1
  89. package/dist/commonjs/i18n/index.js +1 -1
  90. package/dist/commonjs/i18n/locales/ar.json +1 -1
  91. package/dist/commonjs/i18n/locales/bn.json +1 -0
  92. package/dist/commonjs/i18n/locales/de.json +1 -1
  93. package/dist/commonjs/i18n/locales/en.json +1 -1
  94. package/dist/commonjs/i18n/locales/es.json +1 -1
  95. package/dist/commonjs/i18n/locales/fr.json +1 -1
  96. package/dist/commonjs/i18n/locales/gu.json +1 -0
  97. package/dist/commonjs/i18n/locales/hi.json +1 -1
  98. package/dist/commonjs/i18n/locales/id.json +1 -0
  99. package/dist/commonjs/i18n/locales/it.json +1 -0
  100. package/dist/commonjs/i18n/locales/ja.json +1 -1
  101. package/dist/commonjs/i18n/locales/kn.json +1 -0
  102. package/dist/commonjs/i18n/locales/ko.json +1 -1
  103. package/dist/commonjs/i18n/locales/ml.json +1 -0
  104. package/dist/commonjs/i18n/locales/mr.json +1 -0
  105. package/dist/commonjs/i18n/locales/nl.json +1 -0
  106. package/dist/commonjs/i18n/locales/pa.json +1 -0
  107. package/dist/commonjs/i18n/locales/pl.json +1 -0
  108. package/dist/commonjs/i18n/locales/pt.json +1 -1
  109. package/dist/commonjs/i18n/locales/ru.json +1 -1
  110. package/dist/commonjs/i18n/locales/ta.json +1 -0
  111. package/dist/commonjs/i18n/locales/te.json +1 -0
  112. package/dist/commonjs/i18n/locales/tr.json +1 -0
  113. package/dist/commonjs/i18n/locales/vi.json +1 -0
  114. package/dist/commonjs/i18n/locales/zh.json +1 -1
  115. package/dist/commonjs/index.d.ts +13 -13
  116. package/dist/commonjs/index.js +5 -4
  117. package/dist/commonjs/native/NativeInspector.d.ts +1 -0
  118. package/dist/commonjs/socket.d.ts +4 -0
  119. package/dist/commonjs/socket.js +1 -0
  120. package/dist/commonjs/styles/index.d.ts +23 -0
  121. package/dist/commonjs/styles/index.js +1 -1
  122. package/dist/commonjs/types/enums.d.ts +40 -0
  123. package/dist/commonjs/types/enums.js +1 -1
  124. package/dist/commonjs/types/interfaces.d.ts +122 -1
  125. package/dist/esm/components/AnimatedBrandOwl.d.ts +7 -0
  126. package/dist/esm/components/AnimatedBrandOwl.js +175 -0
  127. package/dist/esm/components/AppHeaderLogo.d.ts +1 -0
  128. package/dist/esm/components/AppHeaderLogo.js +7 -5
  129. package/dist/esm/components/BrandSquareIcon.d.ts +5 -0
  130. package/dist/esm/components/BrandSquareIcon.js +139 -0
  131. package/dist/esm/components/ConsoleLogCard.d.ts +2 -1
  132. package/dist/esm/components/ConsoleLogCard.js +61 -77
  133. package/dist/esm/components/Inspector/AboutModal.js +85 -95
  134. package/dist/esm/components/Inspector/AnalyticsTab.js +31 -31
  135. package/dist/esm/components/Inspector/ConfirmationModal.d.ts +13 -0
  136. package/dist/esm/components/Inspector/ConfirmationModal.js +32 -0
  137. package/dist/esm/components/Inspector/ConsoleTab.js +49 -49
  138. package/dist/esm/components/Inspector/CrashTab.js +40 -38
  139. package/dist/esm/components/Inspector/DebuggingTab.js +29 -29
  140. package/dist/esm/components/Inspector/FabLauncher.js +50 -58
  141. package/dist/esm/components/Inspector/FeatureUnderDevNotice.js +7 -7
  142. package/dist/esm/components/Inspector/LanguageSelectorModal.d.ts +15 -0
  143. package/dist/esm/components/Inspector/LanguageSelectorModal.js +90 -0
  144. package/dist/esm/components/Inspector/MainScreen.js +123 -110
  145. package/dist/esm/components/Inspector/MediaGalleryTab.js +64 -62
  146. package/dist/esm/components/Inspector/MediaPreviewModal.js +107 -123
  147. package/dist/esm/components/Inspector/NetworkTab.js +90 -90
  148. package/dist/esm/components/Inspector/NpmUpdateToast.js +1 -1
  149. package/dist/esm/components/Inspector/PushCard.d.ts +3 -2
  150. package/dist/esm/components/Inspector/PushCard.js +23 -22
  151. package/dist/esm/components/Inspector/PushDetail.js +34 -25
  152. package/dist/esm/components/Inspector/PushTab.js +25 -25
  153. package/dist/esm/components/Inspector/ReduxDetail.js +42 -42
  154. package/dist/esm/components/Inspector/ReduxTab.js +35 -35
  155. package/dist/esm/components/Inspector/SettingsPanel.js +495 -376
  156. package/dist/esm/components/Inspector/SocketCard.d.ts +5 -0
  157. package/dist/esm/components/Inspector/SocketCard.js +116 -0
  158. package/dist/esm/components/Inspector/SocketDetail.d.ts +4 -0
  159. package/dist/esm/components/Inspector/SocketDetail.js +317 -0
  160. package/dist/esm/components/Inspector/SocketFilterModal.d.ts +13 -0
  161. package/dist/esm/components/Inspector/SocketFilterModal.js +69 -0
  162. package/dist/esm/components/Inspector/SocketTab.d.ts +3 -0
  163. package/dist/esm/components/Inspector/SocketTab.js +112 -0
  164. package/dist/esm/components/Inspector/StorageTab.js +136 -134
  165. package/dist/esm/components/Inspector/SupportModal.d.ts +7 -0
  166. package/dist/esm/components/Inspector/SupportModal.js +125 -0
  167. package/dist/esm/components/Inspector/SupportPage.d.ts +5 -0
  168. package/dist/esm/components/Inspector/SupportPage.js +227 -0
  169. package/dist/esm/components/Inspector/TabBar.js +36 -35
  170. package/dist/esm/components/Inspector/UpdateAvailableModal.js +22 -22
  171. package/dist/esm/components/JsonViewer.js +55 -55
  172. package/dist/esm/components/LogCard.d.ts +3 -2
  173. package/dist/esm/components/LogCard.js +61 -58
  174. package/dist/esm/components/LogSyntaxHighlighter.js +5 -5
  175. package/dist/esm/components/ModuleErrorBoundary.js +23 -23
  176. package/dist/esm/components/NetworkIcons.d.ts +15 -0
  177. package/dist/esm/components/NetworkIcons.js +38 -3
  178. package/dist/esm/components/SegmentedTabs.js +7 -7
  179. package/dist/esm/constants/version.d.ts +1 -1
  180. package/dist/esm/constants/version.js +1 -1
  181. package/dist/esm/customHooks/socketLogger.d.ts +26 -0
  182. package/dist/esm/customHooks/socketLogger.js +2 -0
  183. package/dist/esm/helpers/index.js +3 -3
  184. package/dist/esm/helpers/memoryManager.d.ts +1 -0
  185. package/dist/esm/helpers/memoryManager.js +1 -1
  186. package/dist/esm/helpers/searchQueryParser.d.ts +1 -1
  187. package/dist/esm/helpers/searchQueryParser.js +5 -1
  188. package/dist/esm/helpers/settingsStore.d.ts +1 -0
  189. package/dist/esm/helpers/settingsStore.js +1 -1
  190. package/dist/esm/helpers/shareFormatter.d.ts +3 -1
  191. package/dist/esm/helpers/shareFormatter.js +8 -7
  192. package/dist/esm/i18n/index.d.ts +99 -1
  193. package/dist/esm/i18n/index.js +1 -1
  194. package/dist/esm/i18n/locales/ar.json +1 -1
  195. package/dist/esm/i18n/locales/bn.json +1 -0
  196. package/dist/esm/i18n/locales/de.json +1 -1
  197. package/dist/esm/i18n/locales/en.json +1 -1
  198. package/dist/esm/i18n/locales/es.json +1 -1
  199. package/dist/esm/i18n/locales/fr.json +1 -1
  200. package/dist/esm/i18n/locales/gu.json +1 -0
  201. package/dist/esm/i18n/locales/hi.json +1 -1
  202. package/dist/esm/i18n/locales/id.json +1 -0
  203. package/dist/esm/i18n/locales/it.json +1 -0
  204. package/dist/esm/i18n/locales/ja.json +1 -1
  205. package/dist/esm/i18n/locales/kn.json +1 -0
  206. package/dist/esm/i18n/locales/ko.json +1 -1
  207. package/dist/esm/i18n/locales/ml.json +1 -0
  208. package/dist/esm/i18n/locales/mr.json +1 -0
  209. package/dist/esm/i18n/locales/nl.json +1 -0
  210. package/dist/esm/i18n/locales/pa.json +1 -0
  211. package/dist/esm/i18n/locales/pl.json +1 -0
  212. package/dist/esm/i18n/locales/pt.json +1 -1
  213. package/dist/esm/i18n/locales/ru.json +1 -1
  214. package/dist/esm/i18n/locales/ta.json +1 -0
  215. package/dist/esm/i18n/locales/te.json +1 -0
  216. package/dist/esm/i18n/locales/tr.json +1 -0
  217. package/dist/esm/i18n/locales/vi.json +1 -0
  218. package/dist/esm/i18n/locales/zh.json +1 -1
  219. package/dist/esm/index.d.ts +13 -13
  220. package/dist/esm/index.js +8 -7
  221. package/dist/esm/native/NativeInspector.d.ts +1 -0
  222. package/dist/esm/socket.d.ts +4 -0
  223. package/dist/esm/socket.js +1 -0
  224. package/dist/esm/styles/index.d.ts +23 -0
  225. package/dist/esm/styles/index.js +1 -1
  226. package/dist/esm/types/enums.d.ts +40 -0
  227. package/dist/esm/types/enums.js +1 -1
  228. package/dist/esm/types/interfaces.d.ts +122 -1
  229. package/ios/NetworkInspectorModule.mm +102 -12
  230. package/package.json +204 -2
  231. package/src/native/NativeInspector.ts +8 -0
@@ -0,0 +1,90 @@
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(r,t,a,o){o===void 0&&(o=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(r,o,n)}):(function(r,t,a,o){o===void 0&&(o=a),r[o]=t[a]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(r,t){Object.defineProperty(r,"default",{enumerable:!0,value:t})}):function(r,t){r.default=t}),__importStar=this&&this.__importStar||(function(){var r=function(t){return r=Object.getOwnPropertyNames||function(a){var o=[];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(o[o.length]=n);return o},r(t)};return function(t){if(t&&t.__esModule)return t;var a={};if(t!=null)for(var o=r(t),n=0;n<o.length;n++)o[n]!=="default"&&__createBinding(a,t,o[n]);return __setModuleDefault(a,t),a}})(),__importDefault=this&&this.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LanguageSelectorModal=exports.COUNTRY_OPTIONS=void 0;const react_1=__importStar(require("react")),react_native_1=require("react-native"),TouchableScale_1=__importDefault(require("../TouchableScale")),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),NetworkIcons_1=require("../NetworkIcons"),i18n_1=require("../../i18n"),settingsStore_1=require("../../helpers/settingsStore"),NativeInspector_1=require("../../native/NativeInspector"),toast_1=require("../../helpers/toast");exports.COUNTRY_OPTIONS=[{id:"all",name:"All",flag:"\u{1F310}",badge:"25"},{id:"in",name:"India",flag:"\u{1F1EE}\u{1F1F3}",badge:"38% Vol",langCodes:["hi","ta","te","kn","ml","bn","mr","gu","pa"]},{id:"us",name:"United States",flag:"\u{1F1FA}\u{1F1F8}",badge:"24% Vol",langCodes:["en","es"]},{id:"gb",name:"United Kingdom",flag:"\u{1F1EC}\u{1F1E7}",badge:"15% Vol",langCodes:["en"]},{id:"de",name:"Germany",flag:"\u{1F1E9}\u{1F1EA}",badge:"9% Vol",langCodes:["de"]},{id:"jp",name:"Japan",flag:"\u{1F1EF}\u{1F1F5}",badge:"6% Vol",langCodes:["ja"]},{id:"ca",name:"Canada",flag:"\u{1F1E8}\u{1F1E6}",badge:"5% Vol",langCodes:["en","fr"]},{id:"global",name:"Global / ROW",flag:"\u{1F310}",badge:"3% Vol",langCodes:["it","id","tr","vi","nl","pl","pt","ru","ar","zh","ko"]}],exports.LanguageSelectorModal=react_1.default.memo(({visible:r,onClose:t})=>{const{t:a}=(0,i18n_1.useTranslation)(),[o,n]=(0,react_1.useState)(""),[i,g]=(0,react_1.useState)("all"),u=(0,i18n_1.getLanguage)(),c=AppColors_1.AppColors.primaryLight!==AppColors_1.AppColors.white,s=(0,react_1.useMemo)(()=>exports.COUNTRY_OPTIONS.find(e=>e.id===i)||exports.COUNTRY_OPTIONS[0],[i]),p=(0,react_1.useMemo)(()=>i18n_1.SUPPORTED_LANGUAGES.filter(e=>{if(i!=="all"&&s?.langCodes&&!s.langCodes.includes(e.code))return!1;if(!o.trim())return!0;const l=o.trim().toLowerCase();return e.name.toLowerCase().includes(l)||e.nativeName.toLowerCase().includes(l)||e.code.toLowerCase().includes(l)}),[o,i,s]),h=async(e,l,y)=>{(0,NativeInspector_1.triggerNativeHaptic)("light"),(0,i18n_1.setLanguage)(e);try{const d=await(0,settingsStore_1.loadSettings)();(0,settingsStore_1.saveSettings)({...d,language:e})}catch{}t(),n(""),(0,toast_1.showToast)(`${l} ${y}`)};return<react_native_1.Modal visible={r}transparent={!0}animationType="slide"onRequestClose={t}>
2
+ <react_native_1.View style={styles.overlay}>
3
+
4
+ <react_native_1.Pressable style={styles.backdrop}onPress={t}accessibilityRole="button"accessibilityLabel="Close bottom sheet"/>
5
+
6
+
7
+ <react_native_1.View style={[styles.bottomSheet,{backgroundColor:c?AppColors_1.AppColors.npmDark:AppColors_1.AppColors.white}]}>
8
+
9
+ <react_native_1.View style={styles.handleBarWrap}>
10
+ <react_native_1.View style={[styles.handleBar,{backgroundColor:c?"rgba(255,255,255,0.25)":"rgba(0,0,0,0.18)"}]}/>
11
+ </react_native_1.View>
12
+
13
+
14
+ <react_native_1.View style={styles.header}>
15
+ <react_native_1.View style={styles.headerTitleRow}>
16
+ <react_native_1.View style={styles.globeIconWrap}>
17
+ <NetworkIcons_1.GlobeIcon size={16}color={AppColors_1.AppColors.blue600}/>
18
+ </react_native_1.View>
19
+ <react_native_1.View>
20
+ <react_native_1.Text style={styles.titleText}>
21
+ {a("settings.general.selectLanguage","Select Language")}
22
+ </react_native_1.Text>
23
+ <react_native_1.Text style={styles.subTitleText}>
24
+ {a("settings.general.languageDescription","Choose preferred display language")}
25
+ </react_native_1.Text>
26
+ </react_native_1.View>
27
+ </react_native_1.View>
28
+ <TouchableScale_1.default onPress={t}hitSlop={10}style={styles.closeBtn}>
29
+ <NetworkIcons_1.CloseWhite size={12}color={AppColors_1.AppColors.grayText}/>
30
+ </TouchableScale_1.default>
31
+ </react_native_1.View>
32
+
33
+
34
+ <react_native_1.View style={styles.searchContainer}>
35
+ <react_native_1.TextInput value={o}onChangeText={n}placeholder={a("common.search","Search language, country or code...")}placeholderTextColor={AppColors_1.AppColors.grayTextWeak}style={styles.searchInput}autoCapitalize="none"autoCorrect={!1}clearButtonMode="while-editing"/>
36
+ {o.length>0&&<TouchableScale_1.default onPress={()=>n("")}style={styles.searchClearBtn}>
37
+ <NetworkIcons_1.CloseWhite size={11}color={AppColors_1.AppColors.grayText}/>
38
+ </TouchableScale_1.default>}
39
+ </react_native_1.View>
40
+
41
+
42
+ <react_native_1.View style={styles.countryScrollWrap}>
43
+ <react_native_1.ScrollView horizontal showsHorizontalScrollIndicator={!1}contentContainerStyle={styles.countryScrollContent}>
44
+ {exports.COUNTRY_OPTIONS.map(e=>{const l=e.id===i;return<TouchableScale_1.default key={e.id}onPress={()=>{(0,NativeInspector_1.triggerNativeHaptic)("light"),g(e.id)}}style={[styles.countryChip,l&&styles.countryChipActive]}>
45
+ <react_native_1.Text style={styles.countryChipFlag}>{e.flag}</react_native_1.Text>
46
+ <react_native_1.Text style={[styles.countryChipText,l&&styles.countryChipTextActive]}>
47
+ {e.name}
48
+ </react_native_1.Text>
49
+ {e.badge&&<react_native_1.View style={[styles.countryChipBadge,l&&styles.countryChipBadgeActive]}>
50
+ <react_native_1.Text style={[styles.countryChipBadgeText,l&&styles.countryChipBadgeTextActive]}>
51
+ {e.badge}
52
+ </react_native_1.Text>
53
+ </react_native_1.View>}
54
+ </TouchableScale_1.default>})}
55
+ </react_native_1.ScrollView>
56
+ </react_native_1.View>
57
+
58
+
59
+ <react_native_1.ScrollView style={styles.scrollList}contentContainerStyle={styles.scrollContent}showsVerticalScrollIndicator={!0}keyboardShouldPersistTaps="handled">
60
+ {p.length===0?<react_native_1.View style={styles.emptyStateWrap}>
61
+ <react_native_1.Text style={styles.emptyStateText}>
62
+ {a("common.noMatches","No languages match your search")}
63
+ </react_native_1.Text>
64
+ </react_native_1.View>:p.map(e=>{const l=e.code===u;return<TouchableScale_1.default key={e.code}onPress={()=>h(e.code,e.flag,e.nativeName)}style={[styles.langRow,l&&styles.langRowSelected]}>
65
+ <react_native_1.View style={styles.langRowLeft}>
66
+ <react_native_1.Text style={styles.langFlag}>{e.flag}</react_native_1.Text>
67
+ <react_native_1.View style={styles.langTextCol}>
68
+ <react_native_1.View style={styles.langTitleRow}>
69
+ <react_native_1.Text style={[styles.langNativeName,l&&styles.langNativeNameSelected]}>
70
+ {e.nativeName}
71
+ </react_native_1.Text>
72
+ <react_native_1.View style={styles.codePill}>
73
+ <react_native_1.Text style={styles.codePillText}>
74
+ {e.code.toUpperCase()}
75
+ </react_native_1.Text>
76
+ </react_native_1.View>
77
+ </react_native_1.View>
78
+ <react_native_1.Text style={styles.langEnglishName}>
79
+ {e.name}
80
+ </react_native_1.Text>
81
+ </react_native_1.View>
82
+ </react_native_1.View>
83
+ {l&&<react_native_1.View style={styles.checkIconWrap}>
84
+ <NetworkIcons_1.CheckIcon size={13}color={AppColors_1.AppColors.white}/>
85
+ </react_native_1.View>}
86
+ </TouchableScale_1.default>})}
87
+ </react_native_1.ScrollView>
88
+ </react_native_1.View>
89
+ </react_native_1.View>
90
+ </react_native_1.Modal>});const styles=react_native_1.StyleSheet.create({overlay:{flex:1,backgroundColor:"rgba(0, 0, 0, 0.55)",justifyContent:"flex-end"},backdrop:{...react_native_1.StyleSheet.absoluteFillObject},bottomSheet:{width:"100%",height:Math.min(Math.max(react_native_1.Dimensions.get("window").height*.7,480),580),borderTopLeftRadius:24,borderTopRightRadius:24,paddingTop:8,paddingBottom:react_native_1.Platform.OS==="ios"?28:16,shadowColor:AppColors_1.AppColors.black,shadowOpacity:.25,shadowRadius:16,shadowOffset:{width:0,height:-4},elevation:12},handleBarWrap:{alignItems:"center",paddingVertical:6},handleBar:{width:38,height:4.5,borderRadius:2.5},header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:10,borderBottomWidth:react_native_1.StyleSheet.hairlineWidth,borderBottomColor:AppColors_1.AppColors.grayBorderSecondary},headerTitleRow:{flexDirection:"row",alignItems:"center",gap:10},globeIconWrap:{width:30,height:30,borderRadius:8,backgroundColor:`${AppColors_1.AppColors.blue600}14`,alignItems:"center",justifyContent:"center"},titleText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:15,color:AppColors_1.AppColors.primaryBlack},subTitleText:{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,color:AppColors_1.AppColors.grayText,marginTop:1},closeBtn:{width:28,height:28,borderRadius:14,backgroundColor:AppColors_1.AppColors.grayBackground,alignItems:"center",justifyContent:"center"},closeBtnText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:12,color:AppColors_1.AppColors.grayText},searchContainer:{flexDirection:"row",alignItems:"center",marginHorizontal:14,marginTop:10,marginBottom:6,paddingHorizontal:10,height:38,borderRadius:10,backgroundColor:AppColors_1.AppColors.grayBackground,borderWidth:1,borderColor:AppColors_1.AppColors.grayBorderSecondary},searchInput:{flex:1,height:"100%",fontSize:12.5,fontFamily:AppFonts_1.AppFonts.interRegular,color:AppColors_1.AppColors.primaryBlack,paddingVertical:0},searchClearBtn:{padding:4},searchClearText:{fontSize:12,color:AppColors_1.AppColors.grayText,fontFamily:AppFonts_1.AppFonts.interBold},countryScrollWrap:{borderBottomWidth:react_native_1.StyleSheet.hairlineWidth,borderBottomColor:AppColors_1.AppColors.grayBorderSecondary,paddingVertical:6},countryScrollContent:{paddingHorizontal:14,gap:6,flexDirection:"row",alignItems:"center"},countryChip:{flexDirection:"row",alignItems:"center",paddingHorizontal:10,paddingVertical:6,borderRadius:16,backgroundColor:AppColors_1.AppColors.grayBackground,borderWidth:1,borderColor:AppColors_1.AppColors.grayBorderSecondary,gap:5},countryChipActive:{backgroundColor:`${AppColors_1.AppColors.purple}14`,borderColor:`${AppColors_1.AppColors.purple}55`},countryChipFlag:{fontSize:13},countryChipText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11.5,color:AppColors_1.AppColors.primaryBlack},countryChipTextActive:{fontFamily:AppFonts_1.AppFonts.interBold,color:AppColors_1.AppColors.purple},countryChipBadge:{paddingHorizontal:5,paddingVertical:1,borderRadius:8,backgroundColor:`${AppColors_1.AppColors.black}0A`},countryChipBadgeActive:{backgroundColor:`${AppColors_1.AppColors.purple}22`},countryChipBadgeText:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:9.5,color:AppColors_1.AppColors.grayText},countryChipBadgeTextActive:{color:AppColors_1.AppColors.purple,fontFamily:AppFonts_1.AppFonts.interBold},scrollList:{flex:1},scrollContent:{paddingBottom:16},emptyStateWrap:{padding:30,alignItems:"center",justifyContent:"center"},emptyStateText:{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:12.5,color:AppColors_1.AppColors.grayText},langRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:12,borderBottomWidth:react_native_1.StyleSheet.hairlineWidth,borderBottomColor:AppColors_1.AppColors.grayBorderSecondary},langRowSelected:{backgroundColor:`${AppColors_1.AppColors.purple}10`},langRowLeft:{flexDirection:"row",alignItems:"center",gap:12,flex:1},langFlag:{fontSize:20},langTextCol:{flex:1},langTitleRow:{flexDirection:"row",alignItems:"center",gap:6},langNativeName:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:13.5,color:AppColors_1.AppColors.primaryBlack},langNativeNameSelected:{fontFamily:AppFonts_1.AppFonts.interBold,color:AppColors_1.AppColors.purple},codePill:{backgroundColor:`${AppColors_1.AppColors.purple}14`,paddingHorizontal:5,paddingVertical:1,borderRadius:4},codePillText:{fontSize:9.5,fontFamily:AppFonts_1.AppFonts.interBold,color:AppColors_1.AppColors.purple,letterSpacing:.5},langEnglishName:{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:11,color:AppColors_1.AppColors.grayText,marginTop:1},checkIconWrap:{width:22,height:22,borderRadius:11,backgroundColor:AppColors_1.AppColors.purple,alignItems:"center",justifyContent:"center"}});
@@ -1,76 +1,82 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(a,e,t,o){o===void 0&&(o=t);var l=Object.getOwnPropertyDescriptor(e,t);(!l||("get"in l?!e.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(a,o,l)}):(function(a,e,t,o){o===void 0&&(o=t),a[o]=e[t]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(a,e){Object.defineProperty(a,"default",{enumerable:!0,value:e})}):function(a,e){a.default=e}),__importStar=this&&this.__importStar||(function(){var a=function(e){return a=Object.getOwnPropertyNames||function(t){var o=[];for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(o[o.length]=l);return o},a(e)};return function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var o=a(e),l=0;l<o.length;l++)o[l]!=="default"&&__createBinding(t,e,o[l]);return __setModuleDefault(t,e),t}})(),__importDefault=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(exports,"__esModule",{value:!0});const react_1=__importStar(require("react")),react_native_1=require("react-native"),InspectorContext_1=require("./InspectorContext"),ErrorBoundary_1=__importDefault(require("../ErrorBoundary")),ModuleErrorBoundary_1=__importDefault(require("../ModuleErrorBoundary")),FabLauncher_1=__importDefault(require("./FabLauncher")),InspectorHeader_1=__importDefault(require("./InspectorHeader")),TabBar_1=__importDefault(require("./TabBar")),NetworkTab_1=__importDefault(require("./NetworkTab")),NetworkDetail_1=__importDefault(require("./NetworkDetail")),LogDetail_1=__importDefault(require("./LogDetail")),ConsoleTab_1=__importDefault(require("./ConsoleTab")),AnalyticsTab_1=__importDefault(require("./AnalyticsTab")),AnalyticsDetail_1=__importDefault(require("../AnalyticsDetail")),ReduxTab_1=__importDefault(require("./ReduxTab")),ReduxDetail_1=__importDefault(require("./ReduxDetail")),CrashTab_1=__importDefault(require("./CrashTab")),CrashDetail_1=__importDefault(require("./CrashDetail")),PushTab_1=__importDefault(require("./PushTab")),PushDetail_1=__importDefault(require("./PushDetail")),DeviceInfoTab_1=__importDefault(require("./DeviceInfoTab")),StorageTab_1=__importDefault(require("./StorageTab")),DebuggingTab_1=__importDefault(require("./DebuggingTab")),MediaGalleryTab_1=require("./MediaGalleryTab"),SettingsPanel_1=__importDefault(require("./SettingsPanel")),AboutModal_1=__importDefault(require("./AboutModal")),NpmUpdateToast_1=__importDefault(require("./NpmUpdateToast")),NpmStarPrompt_1=__importDefault(require("./NpmStarPrompt")),Toast_1=__importDefault(require("../Toast")),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),NavigationTracker_1=__importDefault(require("./NavigationTracker")),helpers_1=require("../../helpers"),MainScreen=()=>{const{visible:a,modalAnimationType:e,closeModal:t,modalHeightPercent:o,selected:l,selectedEvent:s,selectedLog:f,selectedReduxSlice:m,selectedReduxAction:_,selectedCrash:p,selectedPush:c,setSelectedPush:y,settingsPage:i,isAboutOpen:n,setIsAboutOpen:b,activeTab:r,isReady:h,enabled:w,hasNavigationContext:S,setNavState:C}=(0,InspectorContext_1.useInspector)(),g=r==="apis"&&l!=null||r==="analytics"&&s!=null||r==="logs"&&f!=null||r==="redux"&&(m!=null||_!=null)||r==="crash"&&p!=null||r==="push"&&c!=null,u=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;(0,react_1.useEffect)(()=>{i!==null&&(u.setValue(0),react_native_1.Animated.spring(u,{toValue:1,friction:8,tension:65,useNativeDriver:!1}).start())},[i!==null]);const d=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;return(0,react_1.useEffect)(()=>{n&&(d.setValue(0),react_native_1.Animated.spring(d,{toValue:1,friction:8,tension:65,useNativeDriver:!1}).start())},[n]),<>
2
- {(react_native_1.Platform.OS==="ios"||react_native_1.Platform.OS==="android")&&w&&!a&&<FabLauncher_1.default/>}
3
- <react_native_1.Modal visible={a}animationType={e}transparent statusBarTranslucent={!0}onRequestClose={t}>
4
- <ErrorBoundary_1.default onClose={t}>
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(o,e,r,a){a===void 0&&(a=r);var l=Object.getOwnPropertyDescriptor(e,r);(!l||("get"in l?!e.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(o,a,l)}):(function(o,e,r,a){a===void 0&&(a=r),o[a]=e[r]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(o,e){Object.defineProperty(o,"default",{enumerable:!0,value:e})}):function(o,e){o.default=e}),__importStar=this&&this.__importStar||(function(){var o=function(e){return o=Object.getOwnPropertyNames||function(r){var a=[];for(var l in r)Object.prototype.hasOwnProperty.call(r,l)&&(a[a.length]=l);return a},o(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var a=o(e),l=0;l<a.length;l++)a[l]!=="default"&&__createBinding(r,e,a[l]);return __setModuleDefault(r,e),r}})(),__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")),react_native_1=require("react-native"),InspectorContext_1=require("./InspectorContext"),ErrorBoundary_1=__importDefault(require("../ErrorBoundary")),ModuleErrorBoundary_1=__importDefault(require("../ModuleErrorBoundary")),FabLauncher_1=__importDefault(require("./FabLauncher")),InspectorHeader_1=__importDefault(require("./InspectorHeader")),TabBar_1=__importDefault(require("./TabBar")),NetworkTab_1=__importDefault(require("./NetworkTab")),NetworkDetail_1=__importDefault(require("./NetworkDetail")),LogDetail_1=__importDefault(require("./LogDetail")),ConsoleTab_1=__importDefault(require("./ConsoleTab")),AnalyticsTab_1=__importDefault(require("./AnalyticsTab")),AnalyticsDetail_1=__importDefault(require("../AnalyticsDetail")),ReduxTab_1=__importDefault(require("./ReduxTab")),ReduxDetail_1=__importDefault(require("./ReduxDetail")),CrashTab_1=__importDefault(require("./CrashTab")),CrashDetail_1=__importDefault(require("./CrashDetail")),PushTab_1=__importDefault(require("./PushTab")),PushDetail_1=__importDefault(require("./PushDetail")),SocketTab_1=__importDefault(require("./SocketTab")),SocketDetail_1=__importDefault(require("./SocketDetail")),DeviceInfoTab_1=__importDefault(require("./DeviceInfoTab")),StorageTab_1=__importDefault(require("./StorageTab")),DebuggingTab_1=__importDefault(require("./DebuggingTab")),MediaGalleryTab_1=require("./MediaGalleryTab"),SettingsPanel_1=__importDefault(require("./SettingsPanel")),AboutModal_1=__importDefault(require("./AboutModal")),SupportPage_1=require("./SupportPage"),NpmUpdateToast_1=__importDefault(require("./NpmUpdateToast")),NpmStarPrompt_1=__importDefault(require("./NpmStarPrompt")),Toast_1=__importDefault(require("../Toast")),styles_1=__importDefault(require("../../styles")),AppColors_1=require("../../styles/AppColors"),NavigationTracker_1=__importDefault(require("./NavigationTracker")),helpers_1=require("../../helpers"),MainScreen=()=>{const{visible:o,modalAnimationType:e,closeModal:r,modalHeightPercent:a,selected:l,selectedEvent:f,selectedLog:m,selectedReduxSlice:b,selectedReduxAction:h,selectedCrash:_,selectedPush:p,setSelectedPush:S,selectedSocket:g,setSelectedSocket:w,settingsPage:i,isAboutOpen:n,setIsAboutOpen:C,isSupportOpen:u,setIsSupportOpen:A,activeTab:t,isReady:v,enabled:k,isDismissed:V,hasNavigationContext:B,setNavState:D}=(0,InspectorContext_1.useInspector)(),y=t==="apis"&&l!=null||t==="analytics"&&f!=null||t==="logs"&&m!=null||t==="redux"&&(b!=null||h!=null)||t==="crash"&&_!=null||t==="push"&&p!=null||t==="socket"&&g!=null,s=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;(0,react_1.useEffect)(()=>{i!==null&&(s.setValue(0),react_native_1.Animated.spring(s,{toValue:1,friction:8,tension:65,useNativeDriver:!1}).start())},[i!==null]);const d=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;(0,react_1.useEffect)(()=>{n&&(d.setValue(0),react_native_1.Animated.spring(d,{toValue:1,friction:8,tension:65,useNativeDriver:!1}).start())},[n]);const c=(0,react_1.useRef)(new react_native_1.Animated.Value(0)).current;return(0,react_1.useEffect)(()=>{u&&(c.setValue(0),react_native_1.Animated.spring(c,{toValue:1,friction:8,tension:65,useNativeDriver:!1}).start())},[u]),<>
2
+ {(react_native_1.Platform.OS==="ios"||react_native_1.Platform.OS==="android")&&k&&!V&&!o&&<FabLauncher_1.default/>}
3
+ <react_native_1.Modal visible={o}animationType={e}transparent statusBarTranslucent={!0}onRequestClose={r}>
4
+ <ErrorBoundary_1.default onClose={r}>
5
5
  <react_native_1.View style={styles_1.default.modalBackdrop}>
6
- <react_native_1.Pressable style={styles_1.default.modalBackdropPressable}onPress={t}/>
7
- <react_native_1.View style={[styles_1.default.modalContentCard,{height:`${o}%`,borderTopLeftRadius:o>=100?0:20,borderTopRightRadius:o>=100?0:20}]}>
6
+ <react_native_1.Pressable style={styles_1.default.modalBackdropPressable}onPress={r}/>
7
+ <react_native_1.View style={[styles_1.default.modalContentCard,{height:`${a}%`,borderTopLeftRadius:a>=100?0:20,borderTopRightRadius:a>=100?0:20,backgroundColor:"transparent"}]}>
8
8
  <react_native_1.StatusBar translucent backgroundColor="transparent"barStyle="light-content"/>
9
9
 
10
10
  <InspectorHeader_1.default/>
11
11
 
12
- <react_native_1.View style={{flex:1}}>
12
+ <react_native_1.View style={{flex:1,overflow:"hidden",backgroundColor:AppColors_1.AppColors.grayBackground}}>
13
13
 
14
- <react_native_1.View style={{flex:1}}pointerEvents={g||i!==null||n?"none":"auto"}>
14
+ <react_native_1.View style={{flex:1}}pointerEvents={y||i!==null||n||u?"none":"auto"}>
15
15
  <TabBar_1.default/>
16
- {h?<react_native_1.View style={{flex:1}}>
17
- {r==="apis"&&<ModuleErrorBoundary_1.default moduleName="Network API Monitor">
16
+ {v?<react_native_1.View style={{flex:1}}>
17
+ {t==="apis"&&<ModuleErrorBoundary_1.default moduleName="Network API Monitor">
18
18
  <NetworkTab_1.default/>
19
19
  </ModuleErrorBoundary_1.default>}
20
- {r==="logs"&&<ModuleErrorBoundary_1.default moduleName="Console Logs Monitor">
20
+ {t==="logs"&&<ModuleErrorBoundary_1.default moduleName="Console Logs Monitor">
21
21
  <ConsoleTab_1.default/>
22
22
  </ModuleErrorBoundary_1.default>}
23
- {r==="analytics"&&<ModuleErrorBoundary_1.default moduleName="Analytics Event Tracker">
23
+ {t==="analytics"&&<ModuleErrorBoundary_1.default moduleName="Analytics Event Tracker">
24
24
  <AnalyticsTab_1.default/>
25
25
  </ModuleErrorBoundary_1.default>}
26
- {r==="redux"&&<ModuleErrorBoundary_1.default moduleName="Redux State Inspector">
26
+ {t==="redux"&&<ModuleErrorBoundary_1.default moduleName="Redux State Inspector">
27
27
  <ReduxTab_1.default/>
28
28
  </ModuleErrorBoundary_1.default>}
29
- {r==="crash"&&<ModuleErrorBoundary_1.default moduleName="Crash Reporter">
29
+ {t==="crash"&&<ModuleErrorBoundary_1.default moduleName="Crash Reporter">
30
30
  <CrashTab_1.default/>
31
31
  </ModuleErrorBoundary_1.default>}
32
- {r==="push"&&<ModuleErrorBoundary_1.default moduleName="Push Notifications">
32
+ {t==="push"&&<ModuleErrorBoundary_1.default moduleName="Push Notifications">
33
33
  <PushTab_1.default/>
34
34
  </ModuleErrorBoundary_1.default>}
35
- {r==="device"&&<ModuleErrorBoundary_1.default moduleName="Device Diagnostics">
35
+ {t==="socket"&&<ModuleErrorBoundary_1.default moduleName="WebSocket & Socket.IO">
36
+ <SocketTab_1.default/>
37
+ </ModuleErrorBoundary_1.default>}
38
+ {t==="device"&&<ModuleErrorBoundary_1.default moduleName="Device Diagnostics">
36
39
  <DeviceInfoTab_1.default/>
37
40
  </ModuleErrorBoundary_1.default>}
38
- {r==="storage"&&<ModuleErrorBoundary_1.default moduleName="Storage Inspector">
41
+ {t==="storage"&&<ModuleErrorBoundary_1.default moduleName="Storage Inspector">
39
42
  <StorageTab_1.default/>
40
43
  </ModuleErrorBoundary_1.default>}
41
- {r==="media"&&<ModuleErrorBoundary_1.default moduleName="Media Gallery">
44
+ {t==="media"&&<ModuleErrorBoundary_1.default moduleName="Media Gallery">
42
45
  <MediaGalleryTab_1.MediaGalleryTab/>
43
46
  </ModuleErrorBoundary_1.default>}
44
- {react_native_1.Platform.OS==="android"&&(0,helpers_1.isLocalDebugEnvironment)()&&r==="debugging"&&<ModuleErrorBoundary_1.default moduleName="Debugging Utilities">
47
+ {react_native_1.Platform.OS==="android"&&(0,helpers_1.isLocalDebugEnvironment)()&&t==="debugging"&&<ModuleErrorBoundary_1.default moduleName="Debugging Utilities">
45
48
  <DebuggingTab_1.default/>
46
49
  </ModuleErrorBoundary_1.default>}
47
50
  </react_native_1.View>:<MainScreenSkeleton/>}
48
51
  </react_native_1.View>
49
52
 
50
53
 
51
- {g&&<react_native_1.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.contentBg,zIndex:10}]}>
52
- {r==="apis"&&l!=null&&<ModuleErrorBoundary_1.default moduleName="Network Request Details">
54
+ {y&&<react_native_1.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.contentBg,zIndex:10}]}>
55
+ {t==="apis"&&l!=null&&<ModuleErrorBoundary_1.default moduleName="Network Request Details">
53
56
  <NetworkDetail_1.default/>
54
57
  </ModuleErrorBoundary_1.default>}
55
- {r==="analytics"&&s!=null&&<ModuleErrorBoundary_1.default moduleName="Analytics Event Details">
56
- <AnalyticsDetail_1.default event={s}/>
58
+ {t==="analytics"&&f!=null&&<ModuleErrorBoundary_1.default moduleName="Analytics Event Details">
59
+ <AnalyticsDetail_1.default event={f}/>
57
60
  </ModuleErrorBoundary_1.default>}
58
- {r==="logs"&&f!=null&&<ModuleErrorBoundary_1.default moduleName="Console Log Details">
61
+ {t==="logs"&&m!=null&&<ModuleErrorBoundary_1.default moduleName="Console Log Details">
59
62
  <LogDetail_1.default/>
60
63
  </ModuleErrorBoundary_1.default>}
61
- {r==="redux"&&<ModuleErrorBoundary_1.default moduleName="Redux Action & State Details">
64
+ {t==="redux"&&<ModuleErrorBoundary_1.default moduleName="Redux Action & State Details">
62
65
  <ReduxDetail_1.default/>
63
66
  </ModuleErrorBoundary_1.default>}
64
- {r==="crash"&&p!=null&&<ModuleErrorBoundary_1.default moduleName="Crash Log Details">
67
+ {t==="crash"&&_!=null&&<ModuleErrorBoundary_1.default moduleName="Crash Log Details">
65
68
  <CrashDetail_1.default/>
66
69
  </ModuleErrorBoundary_1.default>}
67
- {r==="push"&&c!=null&&<ModuleErrorBoundary_1.default moduleName="Push Notification Details">
68
- <PushDetail_1.default item={c}onClose={()=>y(null)}/>
70
+ {t==="push"&&p!=null&&<ModuleErrorBoundary_1.default moduleName="Push Notification Details">
71
+ <PushDetail_1.default item={p}onClose={()=>S(null)}/>
72
+ </ModuleErrorBoundary_1.default>}
73
+ {t==="socket"&&g!=null&&<ModuleErrorBoundary_1.default moduleName="WebSocket & Socket.IO Details">
74
+ <SocketDetail_1.default item={g}onClose={()=>w(null)}/>
69
75
  </ModuleErrorBoundary_1.default>}
70
76
  </react_native_1.View>}
71
77
 
72
78
 
73
- {i!==null&&<react_native_1.Animated.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.grayBackground,opacity:u,transform:[{translateY:u.interpolate({inputRange:[0,1],outputRange:[24,0]})}]}]}>
79
+ {i!==null&&<react_native_1.Animated.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.grayBackground,opacity:s,transform:[{translateY:s.interpolate({inputRange:[0,1],outputRange:[24,0]})}]}]}>
74
80
  <ModuleErrorBoundary_1.default moduleName="Settings Panel">
75
81
  <SettingsPanel_1.default/>
76
82
  </ModuleErrorBoundary_1.default>
@@ -79,7 +85,14 @@
79
85
 
80
86
  {n&&<react_native_1.Animated.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.primaryLight,opacity:d,transform:[{translateY:d.interpolate({inputRange:[0,1],outputRange:[24,0]})}]}]}>
81
87
  <ModuleErrorBoundary_1.default moduleName="About & Diagnostics">
82
- <AboutModal_1.default onClose={()=>b(!1)}/>
88
+ <AboutModal_1.default onClose={()=>C(!1)}/>
89
+ </ModuleErrorBoundary_1.default>
90
+ </react_native_1.Animated.View>}
91
+
92
+
93
+ {u&&<react_native_1.Animated.View style={[react_native_1.StyleSheet.absoluteFill,{backgroundColor:AppColors_1.AppColors.primaryLight,opacity:c,transform:[{translateY:c.interpolate({inputRange:[0,1],outputRange:[24,0]})}]}]}>
94
+ <ModuleErrorBoundary_1.default moduleName="Support & Community">
95
+ <SupportPage_1.SupportPage onClose={()=>A(!1)}/>
83
96
  </ModuleErrorBoundary_1.default>
84
97
  </react_native_1.Animated.View>}
85
98
  </react_native_1.View>
@@ -95,9 +108,9 @@
95
108
  </react_native_1.View>
96
109
  </react_native_1.View>
97
110
  </ErrorBoundary_1.default>
98
- {S&&<NavigationTracker_1.default onStateChange={C}/>}
111
+ {B&&<NavigationTracker_1.default onStateChange={D}/>}
99
112
  </react_native_1.Modal>
100
- </>},MainScreenSkeleton=react_1.default.memo(function(){const e=(0,react_1.useRef)(new react_native_1.Animated.Value(.35)).current;return(0,react_1.useEffect)(()=>{const t=react_native_1.Animated.loop(react_native_1.Animated.sequence([react_native_1.Animated.timing(e,{toValue:.85,duration:750,useNativeDriver:!1}),react_native_1.Animated.timing(e,{toValue:.35,duration:750,useNativeDriver:!1})]));return t.start(),()=>t.stop()},[e]),<react_native_1.View style={skeletonStyles.container}>
113
+ </>},MainScreenSkeleton=react_1.default.memo(function(){const e=(0,react_1.useRef)(new react_native_1.Animated.Value(.35)).current;return(0,react_1.useEffect)(()=>{const r=react_native_1.Animated.loop(react_native_1.Animated.sequence([react_native_1.Animated.timing(e,{toValue:.85,duration:750,useNativeDriver:!1}),react_native_1.Animated.timing(e,{toValue:.35,duration:750,useNativeDriver:!1})]));return r.start(),()=>r.stop()},[e]),<react_native_1.View style={skeletonStyles.container}>
101
114
 
102
115
  <react_native_1.View style={skeletonStyles.toolbarSkeleton}>
103
116
  <react_native_1.Animated.View style={[skeletonStyles.searchBarSkeleton,{opacity:e}]}/>
@@ -116,7 +129,7 @@
116
129
  </react_native_1.View>
117
130
 
118
131
 
119
- {[0,1,2,3].map(t=><react_native_1.Animated.View key={`skeleton_card_${t}`}style={[skeletonStyles.cardSkeleton,{opacity:e}]}>
132
+ {[0,1,2,3].map(r=><react_native_1.Animated.View key={`skeleton_card_${r}`}style={[skeletonStyles.cardSkeleton,{opacity:e}]}>
120
133
  <react_native_1.View style={skeletonStyles.cardTopRow}>
121
134
  <react_native_1.View style={skeletonStyles.badgeGroup}>
122
135
  <react_native_1.View style={skeletonStyles.statusBadgeSkeleton}/>
@@ -1,12 +1,12 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(t,i,n,r){r===void 0&&(r=n);var s=Object.getOwnPropertyDescriptor(i,n);(!s||("get"in s?!i.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return i[n]}}),Object.defineProperty(t,r,s)}):(function(t,i,n,r){r===void 0&&(r=n),t[r]=i[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(t,i){Object.defineProperty(t,"default",{enumerable:!0,value:i})}):function(t,i){t.default=i}),__importStar=this&&this.__importStar||(function(){var t=function(i){return t=Object.getOwnPropertyNames||function(n){var r=[];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[r.length]=s);return r},t(i)};return function(i){if(i&&i.__esModule)return i;var n={};if(i!=null)for(var r=t(i),s=0;s<r.length;s++)r[s]!=="default"&&__createBinding(n,i,r[s]);return __setModuleDefault(n,i),n}})(),__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.MediaGalleryTab=void 0;const react_1=__importStar(require("react")),react_native_1=require("react-native"),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),TouchableScale_1=__importDefault(require("../TouchableScale")),EmptyState_1=__importDefault(require("../EmptyState")),NetworkIcons_1=require("../NetworkIcons"),MediaPreviewModal_1=require("./MediaPreviewModal"),capture_1=require("../../capture"),helpers_1=require("../../helpers"),toast_1=require("../../helpers/toast"),i18n_1=require("../../i18n"),InspectorContext_1=require("./InspectorContext"),MediaGalleryTab=()=>{const{t}=(0,i18n_1.useTranslation)(),{refreshMediaCount:i,switchActiveTab:n}=(0,InspectorContext_1.useInspector)(),[r,s]=(0,react_1.useState)([]),[v,C]=(0,react_1.useState)(!1),[g,S]=(0,react_1.useState)("all"),[f,b]=(0,react_1.useState)(null),[c,y]=(0,react_1.useState)(new Set),[d,w]=(0,react_1.useState)("grid"),u=(0,react_1.useCallback)(async()=>{try{const e=await capture_1.ScreenCapture.getMediaList();s(e),i?.().catch(()=>{})}catch{s([])}},[i]);(0,react_1.useEffect)(()=>{u()},[u]);const x=async()=>{C(!0),await u(),C(!1)},p=(0,react_1.useMemo)(()=>g==="all"?r:r.filter(e=>e.type===g),[r,g]),m=(0,react_1.useMemo)(()=>r.reduce((e,o)=>e+(o.sizeBytes||0),0),[r]),_=(0,react_1.useCallback)(e=>{y(o=>{const l=new Set(o);return l.has(e)?l.delete(e):l.add(e),l})},[]),A=async e=>{await capture_1.ScreenCapture.deleteMedia(e.uri),y(l=>{const a=new Set(l);return a.delete(e.id),a}),await u(),await i?.()===0&&n("apis"),(0,toast_1.showToast)(t("mediaGallery.deleted"))},T=e=>{e?.uri&&(0,helpers_1.copyImageOrMediaToClipboard)(e.uri,e.type==="image"?"Image":"Media")},I=()=>{const e=r.filter(l=>c.has(l.id));if(e.length===0)return;const o=e.map(l=>l.uri).join(`
2
- `);(0,helpers_1.copyToClipboard)(o,`${e.length} Media URIs`),(0,toast_1.showToast)(`${e.length} file URIs copied to clipboard`)},z=async e=>{try{const o=e.uri.startsWith("file://")||e.uri.startsWith("content://")||e.uri.startsWith("http")?e.uri:`file://${e.uri}`;await react_native_1.Share.share({url:o,title:e.filename,message:e.filename})}catch{(0,toast_1.showToast)(t("mediaGallery.shareUnavailable","Sharing not available on this device"))}},B=async()=>{const e=r.filter(o=>c.has(o.id));if(e.length!==0)try{const o=e[0],l=o.uri.startsWith("file://")||o.uri.startsWith("content://")||o.uri.startsWith("http")?o.uri:`file://${o.uri}`;await react_native_1.Share.share({url:l,title:o.filename,message:e.length===1?o.filename:`${e.length} items: ${e.map(a=>a.filename).join(", ")}`})}catch{(0,toast_1.showToast)(t("mediaGallery.shareUnavailable","Sharing not available on this device"))}},k=()=>{const e=c.size;e!==0&&react_native_1.Alert.alert(t("mediaGallery.deleteSelectedTitle"),t("mediaGallery.deleteSelectedMessage",{count:e}),[{text:t("common.cancel"),style:"cancel"},{text:t("mediaGallery.delete"),style:"destructive",onPress:async()=>{const o=r.filter(a=>c.has(a.id));for(const a of o)await capture_1.ScreenCapture.deleteMedia(a.uri);y(new Set),await u(),await i?.()===0&&n("apis"),(0,toast_1.showToast)(t("mediaGallery.deletedCount",{count:o.length}))}}])},V=()=>{react_native_1.Alert.alert(t("mediaGallery.purgeTitle"),t("mediaGallery.purgeMessage",{count:r.length,size:(0,helpers_1.formatBytes)(m)}),[{text:t("common.cancel"),style:"cancel"},{text:t("common.clearAll"),style:"destructive",onPress:async()=>{await capture_1.ScreenCapture.clearAllMedia(),y(new Set),await u(),await i?.(),n("apis"),(0,toast_1.showToast)(t("mediaGallery.allPurged"))}}])},M=async e=>{await capture_1.ScreenCapture.convertToGif(e.uri,{fps:12,width:480})&&(await u(),i?.().catch(()=>{}))},G=(e,o)=>{const l=o?AppColors_1.AppColors.sky400:AppColors_1.AppColors.slate400,a=12;switch(e){case"all":return<NetworkIcons_1.ScreencastIcon size={a}color={l}/>;case"image":return<NetworkIcons_1.ImageIcon size={a}color={l}/>;case"video":return<NetworkIcons_1.FilmIcon size={a}color={l}/>;case"gif":return<NetworkIcons_1.GifIcon size={a}color={l}/>}},D=({item:e})=>{const o=e.type==="video",l=e.type==="gif",a=o?e.thumbnailUri:e.uri,h=c.has(e.id);return<TouchableScale_1.default onPress={()=>b(e)}style={[galleryStyles.card,h&&galleryStyles.cardSelected]}>
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?(function(t,i,n,r){r===void 0&&(r=n);var s=Object.getOwnPropertyDescriptor(i,n);(!s||("get"in s?!i.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return i[n]}}),Object.defineProperty(t,r,s)}):(function(t,i,n,r){r===void 0&&(r=n),t[r]=i[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(t,i){Object.defineProperty(t,"default",{enumerable:!0,value:i})}):function(t,i){t.default=i}),__importStar=this&&this.__importStar||(function(){var t=function(i){return t=Object.getOwnPropertyNames||function(n){var r=[];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[r.length]=s);return r},t(i)};return function(i){if(i&&i.__esModule)return i;var n={};if(i!=null)for(var r=t(i),s=0;s<r.length;s++)r[s]!=="default"&&__createBinding(n,i,r[s]);return __setModuleDefault(n,i),n}})(),__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.MediaGalleryTab=void 0;const react_1=__importStar(require("react")),react_native_1=require("react-native"),AppColors_1=require("../../styles/AppColors"),AppFonts_1=require("../../styles/AppFonts"),TouchableScale_1=__importDefault(require("../TouchableScale")),EmptyState_1=__importDefault(require("../EmptyState")),NetworkIcons_1=require("../NetworkIcons"),MediaPreviewModal_1=require("./MediaPreviewModal"),capture_1=require("../../capture"),helpers_1=require("../../helpers"),toast_1=require("../../helpers/toast"),i18n_1=require("../../i18n"),InspectorContext_1=require("./InspectorContext"),ConfirmationModal_1=require("./ConfirmationModal"),MediaGalleryTab=()=>{const{t}=(0,i18n_1.useTranslation)(),{refreshMediaCount:i,switchActiveTab:n}=(0,InspectorContext_1.useInspector)(),[r,s]=(0,react_1.useState)([]),[x,w]=(0,react_1.useState)(!1),[y,I]=(0,react_1.useState)("all"),[_,f]=(0,react_1.useState)(null),[c,b]=(0,react_1.useState)(new Set),[d,T]=(0,react_1.useState)("grid"),[g,C]=(0,react_1.useState)({visible:!1,title:"",message:"",onConfirm:()=>{}}),u=(0,react_1.useCallback)(async()=>{try{const e=await capture_1.ScreenCapture.getMediaList();s(e),i?.().catch(()=>{})}catch{s([])}},[i]);(0,react_1.useEffect)(()=>{u()},[u]);const z=async()=>{w(!0),await u(),w(!1)},p=(0,react_1.useMemo)(()=>y==="all"?r:r.filter(e=>e.type===y),[r,y]),m=(0,react_1.useMemo)(()=>r.reduce((e,o)=>e+(o.sizeBytes||0),0),[r]),A=(0,react_1.useCallback)(e=>{b(o=>{const l=new Set(o);return l.has(e)?l.delete(e):l.add(e),l})},[]),v=async e=>{await capture_1.ScreenCapture.deleteMedia(e.uri),b(l=>{const a=new Set(l);return a.delete(e.id),a}),await u(),await i?.()===0&&n("apis"),(0,toast_1.showToast)(t("mediaGallery.deleted"))},S=e=>{e?.uri&&(0,helpers_1.copyImageOrMediaToClipboard)(e.uri,e.type==="image"?"Image":"Media")},B=()=>{const e=r.filter(l=>c.has(l.id));if(e.length===0)return;const o=e.map(l=>l.uri).join(`
2
+ `);(0,helpers_1.copyToClipboard)(o,`${e.length} Media URIs`),(0,toast_1.showToast)(`${e.length} file URIs copied to clipboard`)},k=async e=>{try{const o=e.uri.startsWith("file://")||e.uri.startsWith("content://")||e.uri.startsWith("http")?e.uri:`file://${e.uri}`;await react_native_1.Share.share({url:o,title:e.filename,message:e.filename})}catch{(0,toast_1.showToast)(t("mediaGallery.shareUnavailable","Sharing not available on this device"))}},M=async()=>{const e=r.filter(o=>c.has(o.id));if(e.length!==0)try{const o=e[0],l=o.uri.startsWith("file://")||o.uri.startsWith("content://")||o.uri.startsWith("http")?o.uri:`file://${o.uri}`;await react_native_1.Share.share({url:l,title:o.filename,message:e.length===1?o.filename:`${e.length} items: ${e.map(a=>a.filename).join(", ")}`})}catch{(0,toast_1.showToast)(t("mediaGallery.shareUnavailable","Sharing not available on this device"))}},V=()=>{const e=c.size;e!==0&&C({visible:!0,title:t("mediaGallery.deleteSelectedTitle","Delete Selected Media"),message:t("mediaGallery.deleteSelectedMessage",{count:e,defaultValue:`Are you sure you want to permanently delete ${e} media items?`}),confirmText:t("mediaGallery.delete","Delete"),cancelText:t("common.cancel","Cancel"),onConfirm:async()=>{C(a=>({...a,visible:!1}));const o=r.filter(a=>c.has(a.id));for(const a of o)await capture_1.ScreenCapture.deleteMedia(a.uri);b(new Set),await u(),await i?.()===0&&n("apis"),(0,toast_1.showToast)(t("mediaGallery.deletedCount",{count:o.length}))}})},D=()=>{C({visible:!0,title:t("mediaGallery.purgeTitle","Purge Gallery"),message:t("mediaGallery.purgeMessage",{count:r.length,size:(0,helpers_1.formatBytes)(m),defaultValue:`Are you sure you want to delete all ${r.length} media files (${(0,helpers_1.formatBytes)(m)})? This cannot be undone.`}),confirmText:t("common.clearAll","Clear All"),cancelText:t("common.cancel","Cancel"),onConfirm:async()=>{C(e=>({...e,visible:!1})),await capture_1.ScreenCapture.clearAllMedia(),b(new Set),await u(),await i?.(),n("apis"),(0,toast_1.showToast)(t("mediaGallery.allPurged"))}})},G=async e=>{await capture_1.ScreenCapture.convertToGif(e.uri,{fps:12,width:480})&&(await u(),i?.().catch(()=>{}))},O=(e,o)=>{const l=o?AppColors_1.AppColors.sky400:AppColors_1.AppColors.slate400,a=12;switch(e){case"all":return<NetworkIcons_1.ScreencastIcon size={a}color={l}/>;case"image":return<NetworkIcons_1.ImageIcon size={a}color={l}/>;case"video":return<NetworkIcons_1.FilmIcon size={a}color={l}/>;case"gif":return<NetworkIcons_1.GifIcon size={a}color={l}/>}},R=({item:e})=>{const o=e.type==="video",l=e.type==="gif",a=o?e.thumbnailUri:e.uri,h=c.has(e.id);return<TouchableScale_1.default onPress={()=>f(e)}style={[galleryStyles.card,h&&galleryStyles.cardSelected]}>
3
3
  <react_native_1.View style={galleryStyles.thumbnailContainer}>
4
4
  {a?<react_native_1.Image source={{uri:a}}style={galleryStyles.thumbnail}resizeMode="cover"/>:<react_native_1.View style={galleryStyles.thumbnailFallback}>
5
5
  {o?<NetworkIcons_1.FilmIcon size={26}color={AppColors_1.AppColors.sky400}/>:<NetworkIcons_1.ImageIcon size={26}color={AppColors_1.AppColors.slate400}/>}
6
6
  </react_native_1.View>}
7
7
 
8
8
 
9
- <react_native_1.TouchableOpacity onPress={()=>_(e.id)}style={[galleryStyles.checkbox,h&&galleryStyles.checkboxSelected]}hitSlop={{top:8,bottom:8,left:8,right:8}}>
9
+ <react_native_1.TouchableOpacity onPress={()=>A(e.id)}style={[galleryStyles.checkbox,h&&galleryStyles.checkboxSelected]}hitSlop={{top:8,bottom:8,left:8,right:8}}>
10
10
  {h&&<NetworkIcons_1.CheckIcon size={12}color={AppColors_1.AppColors.white}/>}
11
11
  </react_native_1.TouchableOpacity>
12
12
 
@@ -35,14 +35,14 @@
35
35
  {new Date(e.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}
36
36
  </react_native_1.Text>
37
37
  </react_native_1.View>
38
- <react_native_1.TouchableOpacity onPress={()=>T(e)}style={galleryStyles.gridCopyBtn}hitSlop={{top:6,bottom:6,left:6,right:6}}>
38
+ <react_native_1.TouchableOpacity onPress={()=>S(e)}style={galleryStyles.gridCopyBtn}hitSlop={{top:6,bottom:6,left:6,right:6}}>
39
39
  <NetworkIcons_1.CopyIcon size={11}color={AppColors_1.AppColors.slate400}/>
40
40
  </react_native_1.TouchableOpacity>
41
41
  </react_native_1.View>
42
42
  </react_native_1.View>
43
- </TouchableScale_1.default>},O=({item:e})=>{const o=e.type==="video",l=e.type==="gif",a=o?e.thumbnailUri:e.uri,h=c.has(e.id);return<TouchableScale_1.default onPress={()=>b(e)}style={[galleryStyles.listRow,h&&galleryStyles.listRowSelected]}>
43
+ </TouchableScale_1.default>},F=({item:e})=>{const o=e.type==="video",l=e.type==="gif",a=o?e.thumbnailUri:e.uri,h=c.has(e.id);return<TouchableScale_1.default onPress={()=>f(e)}style={[galleryStyles.listRow,h&&galleryStyles.listRowSelected]}>
44
44
 
45
- <react_native_1.TouchableOpacity onPress={()=>_(e.id)}style={[galleryStyles.listCheckbox,h&&galleryStyles.checkboxSelected]}hitSlop={{top:8,bottom:8,left:8,right:8}}>
45
+ <react_native_1.TouchableOpacity onPress={()=>A(e.id)}style={[galleryStyles.listCheckbox,h&&galleryStyles.checkboxSelected]}hitSlop={{top:8,bottom:8,left:8,right:8}}>
46
46
  {h&&<NetworkIcons_1.CheckIcon size={12}color={AppColors_1.AppColors.white}/>}
47
47
  </react_native_1.TouchableOpacity>
48
48
 
@@ -81,15 +81,15 @@
81
81
 
82
82
 
83
83
  <react_native_1.View style={galleryStyles.listActionsRow}>
84
- <react_native_1.TouchableOpacity onPress={()=>T(e)}style={galleryStyles.listCopyBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
84
+ <react_native_1.TouchableOpacity onPress={()=>S(e)}style={galleryStyles.listCopyBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
85
85
  <NetworkIcons_1.CopyIcon size={13}color={AppColors_1.AppColors.slate200}/>
86
86
  </react_native_1.TouchableOpacity>
87
87
 
88
- <react_native_1.TouchableOpacity onPress={()=>z(e)}style={galleryStyles.listShareBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
88
+ <react_native_1.TouchableOpacity onPress={()=>k(e)}style={galleryStyles.listShareBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
89
89
  <NetworkIcons_1.ShareIcon size={13}color={AppColors_1.AppColors.sky400}/>
90
90
  </react_native_1.TouchableOpacity>
91
91
 
92
- <react_native_1.TouchableOpacity onPress={()=>A(e)}style={galleryStyles.listDeleteBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
92
+ <react_native_1.TouchableOpacity onPress={()=>v(e)}style={galleryStyles.listDeleteBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
93
93
  <NetworkIcons_1.TrashIcon size={13}color={AppColors_1.AppColors.red500}/>
94
94
  </react_native_1.TouchableOpacity>
95
95
  </react_native_1.View>
@@ -97,8 +97,8 @@
97
97
 
98
98
  <react_native_1.View style={galleryStyles.filterBar}>
99
99
  <react_native_1.View style={galleryStyles.chipGroup}>
100
- {["all","image","video","gif"].map(e=>{const o=g===e,l=e==="all"?t("mediaGallery.all",{count:r.length}):t(e==="image"?"mediaGallery.photos":e==="video"?"mediaGallery.videos":"mediaGallery.gifs");return<react_native_1.TouchableOpacity key={e}onPress={()=>S(e)}style={[galleryStyles.chip,o&&galleryStyles.chipActive]}>
101
- {G(e,o)}
100
+ {["all","image","video","gif"].map(e=>{const o=y===e,l=e==="all"?t("mediaGallery.all",{count:r.length}):t(e==="image"?"mediaGallery.photos":e==="video"?"mediaGallery.videos":"mediaGallery.gifs");return<react_native_1.TouchableOpacity key={e}onPress={()=>I(e)}style={[galleryStyles.chip,o&&galleryStyles.chipActive]}>
101
+ {O(e,o)}
102
102
  <react_native_1.Text style={[galleryStyles.chipText,o&&galleryStyles.chipTextActive]}>
103
103
  {l}
104
104
  </react_native_1.Text>
@@ -107,10 +107,10 @@
107
107
 
108
108
 
109
109
  <react_native_1.View style={galleryStyles.viewToggleContainer}>
110
- <react_native_1.TouchableOpacity onPress={()=>w("grid")}style={[galleryStyles.viewToggleBtn,d==="grid"&&galleryStyles.viewToggleBtnActive]}>
110
+ <react_native_1.TouchableOpacity onPress={()=>T("grid")}style={[galleryStyles.viewToggleBtn,d==="grid"&&galleryStyles.viewToggleBtnActive]}>
111
111
  <NetworkIcons_1.GridIcon size={13}color={d==="grid"?AppColors_1.AppColors.white:AppColors_1.AppColors.slate400}/>
112
112
  </react_native_1.TouchableOpacity>
113
- <react_native_1.TouchableOpacity onPress={()=>w("list")}style={[galleryStyles.viewToggleBtn,d==="list"&&galleryStyles.viewToggleBtnActive]}>
113
+ <react_native_1.TouchableOpacity onPress={()=>T("list")}style={[galleryStyles.viewToggleBtn,d==="list"&&galleryStyles.viewToggleBtnActive]}>
114
114
  <NetworkIcons_1.ListIcon size={13}color={d==="list"?AppColors_1.AppColors.white:AppColors_1.AppColors.slate400}/>
115
115
  </react_native_1.TouchableOpacity>
116
116
  </react_native_1.View>
@@ -126,21 +126,21 @@
126
126
 
127
127
  <react_native_1.View style={galleryStyles.actionsGroup}>
128
128
  {c.size>0&&<>
129
- <react_native_1.TouchableOpacity onPress={I}style={galleryStyles.copySelectedBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
129
+ <react_native_1.TouchableOpacity onPress={B}style={galleryStyles.copySelectedBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
130
130
  <NetworkIcons_1.CopyIcon size={12}color={AppColors_1.AppColors.slate200}/>
131
131
  <react_native_1.Text style={galleryStyles.copySelectedBtnText}>
132
132
  {t("mediaGallery.copyUri","Copy URI")}
133
133
  </react_native_1.Text>
134
134
  </react_native_1.TouchableOpacity>
135
135
 
136
- <react_native_1.TouchableOpacity onPress={B}style={galleryStyles.shareSelectedBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
136
+ <react_native_1.TouchableOpacity onPress={M}style={galleryStyles.shareSelectedBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
137
137
  <NetworkIcons_1.ShareIcon size={12}color={AppColors_1.AppColors.sky400}/>
138
138
  <react_native_1.Text style={galleryStyles.shareSelectedBtnText}>
139
139
  {t("mediaGallery.share","Share")}
140
140
  </react_native_1.Text>
141
141
  </react_native_1.TouchableOpacity>
142
142
 
143
- <react_native_1.TouchableOpacity onPress={k}style={galleryStyles.deleteBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
143
+ <react_native_1.TouchableOpacity onPress={V}style={galleryStyles.deleteBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
144
144
  <NetworkIcons_1.TrashIcon size={13}color={AppColors_1.AppColors.red500}/>
145
145
  <react_native_1.Text style={galleryStyles.deleteBtnText}>
146
146
  {t("mediaGallery.deleteSelected",{count:c.size})}
@@ -148,7 +148,7 @@
148
148
  </react_native_1.TouchableOpacity>
149
149
  </>}
150
150
 
151
- <react_native_1.TouchableOpacity onPress={V}style={galleryStyles.clearBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
151
+ <react_native_1.TouchableOpacity onPress={D}style={galleryStyles.clearBtn}hitSlop={{top:8,bottom:8,left:8,right:8}}>
152
152
  <NetworkIcons_1.TrashIcon size={13}color={AppColors_1.AppColors.red500}/>
153
153
  <react_native_1.Text style={galleryStyles.clearBtnText}>
154
154
  {t("mediaGallery.purge",{size:(0,helpers_1.formatBytes)(m)})}
@@ -158,8 +158,10 @@
158
158
  </react_native_1.View>}
159
159
 
160
160
 
161
- <react_native_1.FlatList key={d}data={p}keyExtractor={e=>e.id}renderItem={d==="grid"?D:O}numColumns={d==="grid"?2:1}columnWrapperStyle={d==="grid"?galleryStyles.columnWrapper:void 0}contentContainerStyle={galleryStyles.listContent}refreshControl={<react_native_1.RefreshControl refreshing={v}onRefresh={x}tintColor={AppColors_1.AppColors.sky400}/>}ListEmptyComponent={<EmptyState_1.default customTitle={t("mediaGallery.noMediaTitle")}customSub={t("mediaGallery.noMediaDesc")}showReload={!1}/>}/>
161
+ <react_native_1.FlatList key={d}data={p}keyExtractor={e=>e.id}renderItem={d==="grid"?R:F}numColumns={d==="grid"?2:1}columnWrapperStyle={d==="grid"?galleryStyles.columnWrapper:void 0}contentContainerStyle={galleryStyles.listContent}refreshControl={<react_native_1.RefreshControl refreshing={x}onRefresh={z}tintColor={AppColors_1.AppColors.sky400}/>}ListEmptyComponent={<EmptyState_1.default customTitle={t("mediaGallery.noMediaTitle")}customSub={t("mediaGallery.noMediaDesc")}showReload={!1}/>}/>
162
162
 
163
163
 
164
- <MediaPreviewModal_1.MediaPreviewModal item={f}visible={!!f}onClose={()=>b(null)}onDelete={A}onConvertToGif={M}/>
164
+ <MediaPreviewModal_1.MediaPreviewModal item={_}visible={!!_}onClose={()=>f(null)}onDelete={v}onConvertToGif={G}/>
165
+
166
+ <ConfirmationModal_1.ConfirmationModal visible={g.visible}title={g.title}message={g.message}confirmText={g.confirmText}cancelText={g.cancelText}isDestructive={!0}icon="trash"onConfirm={g.onConfirm}onCancel={()=>C(e=>({...e,visible:!1}))}/>
165
167
  </react_native_1.View>};exports.MediaGalleryTab=MediaGalleryTab;const{width:WINDOW_WIDTH}=react_native_1.Dimensions.get("window"),CARD_WIDTH=(WINDOW_WIDTH-36)/2,galleryStyles=react_native_1.StyleSheet.create({container:{flex:1,backgroundColor:AppColors_1.AppColors.slate850},filterBar:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,paddingVertical:9,borderBottomWidth:1,borderBottomColor:AppColors_1.AppColors.borderGlassLight,gap:8},chipGroup:{flexDirection:"row",alignItems:"center",gap:6,flexShrink:1},chip:{flexDirection:"row",alignItems:"center",gap:4.5,paddingHorizontal:8,paddingVertical:4.5,borderRadius:6,backgroundColor:AppColors_1.AppColors.whiteAlpha06,borderWidth:1,borderColor:AppColors_1.AppColors.whiteAlpha10},chipActive:{backgroundColor:`${AppColors_1.AppColors.sky400}2E`,borderColor:AppColors_1.AppColors.sky400},chipText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11,color:AppColors_1.AppColors.slate400},chipTextActive:{fontFamily:AppFonts_1.AppFonts.interBold,color:AppColors_1.AppColors.sky400},subBar:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,paddingVertical:7,backgroundColor:`${AppColors_1.AppColors.slate900}99`,borderBottomWidth:1,borderBottomColor:AppColors_1.AppColors.borderGlassLight,gap:8},resultCountWrapper:{flexDirection:"row",alignItems:"center",flexShrink:1},resultCountText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11,color:AppColors_1.AppColors.slate400},resultCountTextSelected:{fontFamily:AppFonts_1.AppFonts.interSemiBold,color:AppColors_1.AppColors.sky400},actionsGroup:{flexDirection:"row",alignItems:"center",gap:6},viewToggleContainer:{flexDirection:"row",alignItems:"center",backgroundColor:AppColors_1.AppColors.whiteAlpha06,borderRadius:6,padding:2,borderWidth:1,borderColor:AppColors_1.AppColors.whiteAlpha10},viewToggleBtn:{paddingHorizontal:7,paddingVertical:4,borderRadius:4,alignItems:"center",justifyContent:"center"},viewToggleBtnActive:{backgroundColor:`${AppColors_1.AppColors.violet600}80`},deleteBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.red500}26`,borderWidth:1,borderColor:`${AppColors_1.AppColors.red500}80`},deleteBtnText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:10.5,color:AppColors_1.AppColors.red500},clearBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.red500}1F`,borderWidth:1,borderColor:`${AppColors_1.AppColors.red500}4D`},clearBtnText:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:10.5,color:AppColors_1.AppColors.red500},listContent:{padding:12,gap:10},columnWrapper:{gap:12},card:{width:CARD_WIDTH,backgroundColor:AppColors_1.AppColors.slate800,borderRadius:8,borderWidth:1,borderColor:AppColors_1.AppColors.borderGlassLight,overflow:"hidden"},cardSelected:{borderColor:AppColors_1.AppColors.violet600,borderWidth:1.5},thumbnailContainer:{width:"100%",height:110,backgroundColor:AppColors_1.AppColors.slate850,position:"relative"},thumbnail:{width:"100%",height:"100%"},thumbnailFallback:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:AppColors_1.AppColors.slate900},checkbox:{position:"absolute",top:6,left:6,width:22,height:22,borderRadius:5,borderWidth:1.5,borderColor:"rgba(255, 255, 255, 0.65)",backgroundColor:"rgba(15, 23, 42, 0.65)",alignItems:"center",justifyContent:"center",zIndex:10},checkboxSelected:{backgroundColor:AppColors_1.AppColors.violet600,borderColor:AppColors_1.AppColors.violet600},miniPlayCircle:{position:"absolute",top:"50%",left:"50%",width:32,height:32,marginTop:-16,marginLeft:-16,borderRadius:16,backgroundColor:`${AppColors_1.AppColors.sky400}D9`,alignItems:"center",justifyContent:"center",paddingLeft:2,shadowColor:AppColors_1.AppColors.black,shadowOffset:{width:0,height:2},shadowOpacity:.4,shadowRadius:4,elevation:4},typeBadge:{position:"absolute",top:6,right:6,flexDirection:"row",alignItems:"center",gap:3,backgroundColor:AppColors_1.AppColors.badgeGlassDark,paddingHorizontal:5,paddingVertical:2,borderRadius:4,borderWidth:1,borderColor:AppColors_1.AppColors.borderGlassMedium},typeBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:9,color:AppColors_1.AppColors.slate200},cardInfo:{padding:8,gap:3},cardTitle:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:11.5,color:AppColors_1.AppColors.white},cardMetaRow:{flexDirection:"row",alignItems:"center",gap:4},cardMeta:{fontFamily:AppFonts_1.AppFonts.interRegular,fontSize:10,color:AppColors_1.AppColors.slate400},cardMetaDot:{fontSize:10,color:AppColors_1.AppColors.whiteAlpha30},listRow:{flexDirection:"row",alignItems:"center",backgroundColor:AppColors_1.AppColors.slate800,borderRadius:8,borderWidth:1,borderColor:AppColors_1.AppColors.borderGlassLight,padding:8,gap:10},listRowSelected:{borderColor:AppColors_1.AppColors.violet600,borderWidth:1.5,backgroundColor:`${AppColors_1.AppColors.violet600}14`},listCheckbox:{width:20,height:20,borderRadius:4,borderWidth:1.5,borderColor:"rgba(255, 255, 255, 0.65)",backgroundColor:"rgba(15, 23, 42, 0.65)",alignItems:"center",justifyContent:"center"},listThumbContainer:{width:46,height:46,borderRadius:6,backgroundColor:AppColors_1.AppColors.slate850,overflow:"hidden",position:"relative"},listThumb:{width:"100%",height:"100%"},listThumbFallback:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:AppColors_1.AppColors.slate900},listMiniPlay:{position:"absolute",top:"50%",left:"50%",width:20,height:20,marginTop:-10,marginLeft:-10,borderRadius:10,backgroundColor:`${AppColors_1.AppColors.sky400}D9`,alignItems:"center",justifyContent:"center",paddingLeft:1},listInfo:{flex:1,gap:4,minWidth:0},listTitle:{fontFamily:AppFonts_1.AppFonts.interMedium,fontSize:12,color:AppColors_1.AppColors.white},listMetaRow:{flexDirection:"row",alignItems:"center",gap:6,flexWrap:"wrap"},listBadge:{flexDirection:"row",alignItems:"center",gap:3,backgroundColor:AppColors_1.AppColors.badgeGlassDark,paddingHorizontal:4,paddingVertical:1.5,borderRadius:4,borderWidth:1,borderColor:AppColors_1.AppColors.borderGlassMedium},listBadgeText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:8.5,color:AppColors_1.AppColors.slate200},gridCopyBtn:{padding:3,borderRadius:4,backgroundColor:AppColors_1.AppColors.whiteAlpha08},listActionsRow:{flexDirection:"row",alignItems:"center",gap:6},listCopyBtn:{padding:6,borderRadius:6,backgroundColor:AppColors_1.AppColors.whiteAlpha10,borderWidth:1,borderColor:AppColors_1.AppColors.whiteAlpha15},listShareBtn:{padding:6,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.sky400}18`,borderWidth:1,borderColor:`${AppColors_1.AppColors.sky400}40`},listDeleteBtn:{padding:6,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.red500}14`,borderWidth:1,borderColor:`${AppColors_1.AppColors.red500}33`},copySelectedBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:AppColors_1.AppColors.whiteAlpha10,borderWidth:1,borderColor:AppColors_1.AppColors.whiteAlpha20},copySelectedBtnText:{fontFamily:AppFonts_1.AppFonts.interSemiBold,fontSize:10.5,color:AppColors_1.AppColors.slate200},shareSelectedBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingHorizontal:8,paddingVertical:4,borderRadius:6,backgroundColor:`${AppColors_1.AppColors.sky400}20`,borderWidth:1,borderColor:`${AppColors_1.AppColors.sky400}60`},shareSelectedBtnText:{fontFamily:AppFonts_1.AppFonts.interBold,fontSize:10.5,color:AppColors_1.AppColors.sky400}});