@xhsreds/reds-rn-next 0.8.3-fix-text-view-cursor202509261611 → 0.8.4-feat-image-optimization202510142122

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 (463) hide show
  1. package/coverage/.tmp/coverage-10.json +1 -1
  2. package/coverage/.tmp/coverage-12.json +1 -1
  3. package/coverage/.tmp/coverage-13.json +1 -1
  4. package/coverage/.tmp/coverage-14.json +1 -1
  5. package/coverage/.tmp/coverage-15.json +1 -1
  6. package/coverage/.tmp/coverage-16.json +1 -1
  7. package/coverage/.tmp/coverage-17.json +1 -1
  8. package/coverage/.tmp/coverage-18.json +1 -1
  9. package/coverage/.tmp/coverage-19.json +1 -1
  10. package/coverage/.tmp/coverage-2.json +1 -1
  11. package/coverage/.tmp/coverage-20.json +1 -1
  12. package/coverage/.tmp/coverage-21.json +1 -1
  13. package/coverage/.tmp/coverage-22.json +1 -1
  14. package/coverage/.tmp/coverage-23.json +1 -1
  15. package/coverage/.tmp/coverage-24.json +1 -1
  16. package/coverage/.tmp/coverage-25.json +1 -1
  17. package/coverage/.tmp/coverage-27.json +1 -1
  18. package/coverage/.tmp/coverage-28.json +1 -1
  19. package/coverage/.tmp/coverage-3.json +1 -1
  20. package/coverage/.tmp/coverage-33.json +1 -1
  21. package/coverage/.tmp/coverage-34.json +1 -1
  22. package/coverage/.tmp/coverage-35.json +1 -1
  23. package/coverage/.tmp/coverage-36.json +1 -1
  24. package/coverage/.tmp/coverage-37.json +1 -1
  25. package/coverage/.tmp/coverage-38.json +1 -1
  26. package/coverage/.tmp/coverage-39.json +1 -1
  27. package/coverage/.tmp/coverage-4.json +1 -1
  28. package/coverage/.tmp/coverage-40.json +1 -1
  29. package/coverage/.tmp/coverage-41.json +1 -1
  30. package/coverage/.tmp/coverage-42.json +1 -1
  31. package/coverage/.tmp/coverage-5.json +1 -1
  32. package/coverage/.tmp/coverage-6.json +1 -1
  33. package/coverage/.tmp/coverage-7.json +1 -1
  34. package/coverage/.tmp/coverage-8.json +1 -1
  35. package/coverage/.tmp/coverage-9.json +1 -1
  36. package/lib/cjs/_chunks/{C9tZEm0t.js → vVKkFPW_.js} +2 -2
  37. package/lib/cjs/_chunks/{C9tZEm0t.js.map → vVKkFPW_.js.map} +1 -1
  38. package/lib/cjs/components/ActionSheets/ActionSheets.js +1 -1
  39. package/lib/cjs/components/ActionSheets/ActionSheetsItem.js +1 -1
  40. package/lib/cjs/components/ActionSheets/api.js +1 -1
  41. package/lib/cjs/components/ActionSheets/hooks.js +1 -1
  42. package/lib/cjs/components/ActionSheets/index.js +1 -1
  43. package/lib/cjs/components/ActionablePopover/ActionablePopover.js +1 -1
  44. package/lib/cjs/components/ActionablePopover/index.js +1 -1
  45. package/lib/cjs/components/Alert/Alert.js +1 -1
  46. package/lib/cjs/components/Alert/hooks/alert.js +1 -1
  47. package/lib/cjs/components/Alert/index.js +1 -1
  48. package/lib/cjs/components/Alert/styles.js +1 -1
  49. package/lib/cjs/components/Avatar/Avatar.js +1 -1
  50. package/lib/cjs/components/Avatar/index.js +1 -1
  51. package/lib/cjs/components/Avatar/styles.js +1 -1
  52. package/lib/cjs/components/AvatarGroup/AvatarGroup.js +1 -1
  53. package/lib/cjs/components/AvatarGroup/index.js +1 -1
  54. package/lib/cjs/components/Badge/Badge.js +1 -1
  55. package/lib/cjs/components/Badge/index.js +1 -1
  56. package/lib/cjs/components/Badge/styles.js +1 -1
  57. package/lib/cjs/components/BottomBar/BottomBar.js +1 -1
  58. package/lib/cjs/components/BottomBar/index.js +1 -1
  59. package/lib/cjs/components/Button/Button.js +1 -1
  60. package/lib/cjs/components/Button/Viewable.js +1 -1
  61. package/lib/cjs/components/Button/index.js +1 -1
  62. package/lib/cjs/components/Button/styleMap.js +1 -1
  63. package/lib/cjs/components/Carousel/Carousel.js +1 -1
  64. package/lib/cjs/components/Carousel/index.js +1 -1
  65. package/lib/cjs/components/CheckBoxGroup/CheckBox.js +1 -1
  66. package/lib/cjs/components/CheckBoxGroup/CheckBoxGroup.js +1 -1
  67. package/lib/cjs/components/CheckBoxGroup/index.js +1 -1
  68. package/lib/cjs/components/CheckBoxGroup/styles.js +1 -1
  69. package/lib/cjs/components/Collapse/Collapse.js +1 -1
  70. package/lib/cjs/components/Collapse/Item/Item.js +1 -1
  71. package/lib/cjs/components/Collapse/Item/styles.js +1 -1
  72. package/lib/cjs/components/Collapse/index.js +1 -1
  73. package/lib/cjs/components/ConfigProvider/ConfigProvider.js +1 -1
  74. package/lib/cjs/components/ConfigProvider/hooks/ConfigCache/ConfigCache.js +1 -1
  75. package/lib/cjs/components/ConfigProvider/hooks/ConfigCache/index.js +1 -1
  76. package/lib/cjs/components/ConfigProvider/hooks/themeToken/index.js +1 -1
  77. package/lib/cjs/components/ConfigProvider/hooks/themeToken/useThemeToken.js +1 -1
  78. package/lib/cjs/components/ConfigProvider/index.js +1 -1
  79. package/lib/cjs/components/DatePicker/DatePicker.js +1 -1
  80. package/lib/cjs/components/DatePicker/api.js +1 -1
  81. package/lib/cjs/components/DatePicker/index.js +1 -1
  82. package/lib/cjs/components/Divider/Divider.js +1 -1
  83. package/lib/cjs/components/Divider/index.js +1 -1
  84. package/lib/cjs/components/Divider/styles.js +1 -1
  85. package/lib/cjs/components/DropDown/DropDown.js +1 -1
  86. package/lib/cjs/components/DropDown/DropDownItem.js +1 -1
  87. package/lib/cjs/components/DropDown/index.js +1 -1
  88. package/lib/cjs/components/Empty/Empty.js +1 -1
  89. package/lib/cjs/components/Empty/index.js +1 -1
  90. package/lib/cjs/components/Empty/styles.js +1 -1
  91. package/lib/cjs/components/FAB/FAB.js +1 -1
  92. package/lib/cjs/components/FAB/index.js +1 -1
  93. package/lib/cjs/components/Form/Form.js +1 -1
  94. package/lib/cjs/components/Form/FormItem.js +1 -1
  95. package/lib/cjs/components/Form/index.js +1 -1
  96. package/lib/cjs/components/Form/styles.js +1 -1
  97. package/lib/cjs/components/Image/Image.js +42 -101
  98. package/lib/cjs/components/Image/Image.js.map +1 -1
  99. package/lib/cjs/components/Image/Image69.js +2 -1
  100. package/lib/cjs/components/Image/Image69.js.map +1 -1
  101. package/lib/cjs/components/Image/VisibilitySensor.js +1 -1
  102. package/lib/cjs/components/Image/hook/index.js +3 -1
  103. package/lib/cjs/components/Image/hook/index.js.map +1 -1
  104. package/lib/cjs/components/Image/hook/useImageId.js +18 -0
  105. package/lib/cjs/components/Image/hook/useImageId.js.map +1 -0
  106. package/lib/cjs/components/Image/index.js +3 -1
  107. package/lib/cjs/components/Image/index.js.map +1 -1
  108. package/lib/cjs/components/Image/manager/ImageAPMManager.js +397 -0
  109. package/lib/cjs/components/Image/manager/ImageAPMManager.js.map +1 -0
  110. package/lib/cjs/components/Image/manager/index.js +12 -0
  111. package/lib/cjs/components/Image/manager/index.js.map +1 -0
  112. package/lib/cjs/components/Image/manager/types.js +3 -0
  113. package/lib/cjs/components/Image/manager/types.js.map +1 -0
  114. package/lib/cjs/components/Image/utils.js +1 -3
  115. package/lib/cjs/components/Image/utils.js.map +1 -1
  116. package/lib/cjs/components/ImagePreview/ImagePreview.js +1 -1
  117. package/lib/cjs/components/ImagePreview/api.js +1 -1
  118. package/lib/cjs/components/ImagePreview/index.js +1 -1
  119. package/lib/cjs/components/LanguageProvider/hooks/useLanguage.js +1 -1
  120. package/lib/cjs/components/LanguageProvider/index.js +1 -1
  121. package/lib/cjs/components/List/List.js +1 -1
  122. package/lib/cjs/components/List/ListItem/ListItem.js +1 -1
  123. package/lib/cjs/components/List/index.js +1 -1
  124. package/lib/cjs/components/List/styles.js +1 -1
  125. package/lib/cjs/components/MiniSnackBar/MiniSnackBar.js +1 -1
  126. package/lib/cjs/components/MiniSnackBar/index.js +1 -1
  127. package/lib/cjs/components/MiniSnackBar/styles.js +1 -1
  128. package/lib/cjs/components/NavigationBar/NavigationBar.js +1 -1
  129. package/lib/cjs/components/NavigationBar/index.js +1 -1
  130. package/lib/cjs/components/NavigationBar/styles.js +1 -1
  131. package/lib/cjs/components/NoticeBar/NoticeBar.js +1 -1
  132. package/lib/cjs/components/NoticeBar/index.js +1 -1
  133. package/lib/cjs/components/Picker/Picker.js +1 -1
  134. package/lib/cjs/components/Picker/api.js +1 -1
  135. package/lib/cjs/components/Picker/index.js +1 -1
  136. package/lib/cjs/components/PickerView/PickerView.js +1 -1
  137. package/lib/cjs/components/PickerView/Wheel.js +1 -1
  138. package/lib/cjs/components/PickerView/index.js +1 -1
  139. package/lib/cjs/components/Popover/Popover.js +1 -1
  140. package/lib/cjs/components/Popover/index.js +1 -1
  141. package/lib/cjs/components/Portal/core/PortalProvider.js +1 -1
  142. package/lib/cjs/components/Portal/index.js +1 -1
  143. package/lib/cjs/components/Progress/Progress.js +1 -1
  144. package/lib/cjs/components/Progress/index.js +1 -1
  145. package/lib/cjs/components/Progress/styles.js +1 -1
  146. package/lib/cjs/components/ProgressIndicator/ProgressIndicator.js +1 -1
  147. package/lib/cjs/components/ProgressIndicator/index.js +1 -1
  148. package/lib/cjs/components/ProgressIndicator/styles.js +1 -1
  149. package/lib/cjs/components/PullRefresh/PullRefresh.js +1 -1
  150. package/lib/cjs/components/PullRefresh/component.js +1 -1
  151. package/lib/cjs/components/PullRefresh/index.js +1 -1
  152. package/lib/cjs/components/Radio/Radio.js +3 -1
  153. package/lib/cjs/components/Radio/Radio.js.map +1 -1
  154. package/lib/cjs/components/Radio/RadioGroup.js +1 -1
  155. package/lib/cjs/components/Radio/index.js +3 -1
  156. package/lib/cjs/components/Radio/index.js.map +1 -1
  157. package/lib/cjs/components/Radio/styles.js +1 -1
  158. package/lib/cjs/components/Rate/Rate.js +1 -1
  159. package/lib/cjs/components/Rate/index.js +1 -1
  160. package/lib/cjs/components/Result/Result.js +1 -1
  161. package/lib/cjs/components/Result/index.js +1 -1
  162. package/lib/cjs/components/Result/styles.js +1 -1
  163. package/lib/cjs/components/Search/Search.js +1 -1
  164. package/lib/cjs/components/Search/index.js +1 -1
  165. package/lib/cjs/components/Search/styles.js +1 -1
  166. package/lib/cjs/components/SegmentedControl/SegmentedControl.js +1 -1
  167. package/lib/cjs/components/SegmentedControl/index.js +1 -1
  168. package/lib/cjs/components/Sheets/AnimatedSheets.js +1 -1
  169. package/lib/cjs/components/Sheets/Sheets.js +1 -1
  170. package/lib/cjs/components/Sheets/api.js +1 -1
  171. package/lib/cjs/components/Sheets/index.js +1 -1
  172. package/lib/cjs/components/Skeleton/Item/SkeletonItem.js +1 -1
  173. package/lib/cjs/components/Skeleton/Item/SkeletonItem69.js +1 -1
  174. package/lib/cjs/components/Skeleton/Skeleton.js +1 -1
  175. package/lib/cjs/components/Skeleton/Skeleton69.js +1 -1
  176. package/lib/cjs/components/Skeleton/index.js +1 -1
  177. package/lib/cjs/components/Slider/Slider.js +1 -1
  178. package/lib/cjs/components/Slider/index.js +1 -1
  179. package/lib/cjs/components/SlimAlert/Alert.js +1 -1
  180. package/lib/cjs/components/SlimAlert/AlertContent.js +1 -1
  181. package/lib/cjs/components/SlimAlert/AlertFooter.js +1 -1
  182. package/lib/cjs/components/SlimAlert/index.js +1 -1
  183. package/lib/cjs/components/SlimAlert/styles.js +1 -1
  184. package/lib/cjs/components/SlimNavigationBar/NavigationBar.js +1 -1
  185. package/lib/cjs/components/SlimNavigationBar/NavigationBarAction.js +1 -1
  186. package/lib/cjs/components/SlimNavigationBar/index.js +1 -1
  187. package/lib/cjs/components/SlimNavigationBar/styles.js +1 -1
  188. package/lib/cjs/components/SlimSheets/AnimatedSheets.js +1 -1
  189. package/lib/cjs/components/SlimSheets/AnimatedSheetsAction.js +1 -1
  190. package/lib/cjs/components/SlimSheets/AnimatedSheetsHeader.js +1 -1
  191. package/lib/cjs/components/SlimSheets/DragAnimatedSheets.js +1 -1
  192. package/lib/cjs/components/SlimSheets/index.js +1 -1
  193. package/lib/cjs/components/SlimTabs/BadgeSlimTabItem.js +1 -1
  194. package/lib/cjs/components/SlimTabs/SlimTab.js +1 -1
  195. package/lib/cjs/components/SlimTabs/SlimTabItem.js +1 -1
  196. package/lib/cjs/components/SlimTabs/SlimTabItemLabel.js +1 -1
  197. package/lib/cjs/components/SlimTabs/SlimTabItemValue.js +1 -1
  198. package/lib/cjs/components/SlimTabs/SlimTabList.js +1 -1
  199. package/lib/cjs/components/SlimTabs/index.js +1 -1
  200. package/lib/cjs/components/SlimTabs/styles.js +1 -1
  201. package/lib/cjs/components/SnackBar/SnackBar.js +1 -1
  202. package/lib/cjs/components/SnackBar/index.js +1 -1
  203. package/lib/cjs/components/SnackBar/styles.js +1 -1
  204. package/lib/cjs/components/Stepper/Stepper.js +1 -1
  205. package/lib/cjs/components/Stepper/index.js +1 -1
  206. package/lib/cjs/components/Switch/Switch.js +1 -1
  207. package/lib/cjs/components/Switch/index.js +1 -1
  208. package/lib/cjs/components/Tab/Tabs.js +1 -1
  209. package/lib/cjs/components/Tab/index.js +1 -1
  210. package/lib/cjs/components/Tab/styles.js +1 -1
  211. package/lib/cjs/components/TabBar/TabBar.js +1 -1
  212. package/lib/cjs/components/TabBar/index.js +1 -1
  213. package/lib/cjs/components/TabBar/styles.js +1 -1
  214. package/lib/cjs/components/Tag/Tag.js +1 -1
  215. package/lib/cjs/components/Tag/index.js +1 -1
  216. package/lib/cjs/components/Text/Text.js +1 -1
  217. package/lib/cjs/components/Text/Viewable.js +1 -1
  218. package/lib/cjs/components/Text/hooks/cloneContainer.js +1 -1
  219. package/lib/cjs/components/Text/hooks/index.js +1 -1
  220. package/lib/cjs/components/Text/hooks/loadFontFromFile.js +1 -1
  221. package/lib/cjs/components/Text/index.js +1 -1
  222. package/lib/cjs/components/Text/styles.js +1 -1
  223. package/lib/cjs/components/TextField/TextField.js +1 -1
  224. package/lib/cjs/components/TextField/index.js +1 -1
  225. package/lib/cjs/components/TextField/styles.js +1 -1
  226. package/lib/cjs/components/TextView/TextView.js +1 -1
  227. package/lib/cjs/components/TextView/index.js +1 -1
  228. package/lib/cjs/components/TextView/styles.js +1 -1
  229. package/lib/cjs/components/Toast/Toast.js +1 -1
  230. package/lib/cjs/components/Toast/api.js +1 -1
  231. package/lib/cjs/components/Toast/index.js +1 -1
  232. package/lib/cjs/components/Toast/styles.js +1 -1
  233. package/lib/cjs/components/Uploader/Uploader.js +1 -1
  234. package/lib/cjs/components/Uploader/index.js +1 -1
  235. package/lib/cjs/components/Uploader/utils.js +1 -1
  236. package/lib/cjs/index.js +3 -1
  237. package/lib/cjs/index.js.map +1 -1
  238. package/lib/esm/_chunks/{CAkwE9ZD.js → DpFbw-p-.js} +2 -2
  239. package/lib/esm/_chunks/{CAkwE9ZD.js.map → DpFbw-p-.js.map} +1 -1
  240. package/lib/esm/components/ActionSheets/ActionSheets.js +1 -1
  241. package/lib/esm/components/ActionSheets/ActionSheetsItem.js +1 -1
  242. package/lib/esm/components/ActionSheets/api.js +1 -1
  243. package/lib/esm/components/ActionSheets/hooks.js +1 -1
  244. package/lib/esm/components/ActionSheets/index.js +1 -1
  245. package/lib/esm/components/ActionablePopover/ActionablePopover.js +1 -1
  246. package/lib/esm/components/ActionablePopover/index.js +1 -1
  247. package/lib/esm/components/Alert/Alert.js +1 -1
  248. package/lib/esm/components/Alert/hooks/alert.js +1 -1
  249. package/lib/esm/components/Alert/index.js +1 -1
  250. package/lib/esm/components/Alert/styles.js +1 -1
  251. package/lib/esm/components/Avatar/Avatar.js +1 -1
  252. package/lib/esm/components/Avatar/index.js +1 -1
  253. package/lib/esm/components/Avatar/styles.js +1 -1
  254. package/lib/esm/components/AvatarGroup/AvatarGroup.js +1 -1
  255. package/lib/esm/components/AvatarGroup/index.js +1 -1
  256. package/lib/esm/components/Badge/Badge.js +1 -1
  257. package/lib/esm/components/Badge/index.js +1 -1
  258. package/lib/esm/components/Badge/styles.js +1 -1
  259. package/lib/esm/components/BottomBar/BottomBar.js +1 -1
  260. package/lib/esm/components/BottomBar/index.js +1 -1
  261. package/lib/esm/components/Button/Button.js +1 -1
  262. package/lib/esm/components/Button/Viewable.js +1 -1
  263. package/lib/esm/components/Button/index.js +1 -1
  264. package/lib/esm/components/Button/styleMap.js +1 -1
  265. package/lib/esm/components/Carousel/Carousel.js +1 -1
  266. package/lib/esm/components/Carousel/index.js +1 -1
  267. package/lib/esm/components/CheckBoxGroup/CheckBox.js +1 -1
  268. package/lib/esm/components/CheckBoxGroup/CheckBoxGroup.js +1 -1
  269. package/lib/esm/components/CheckBoxGroup/index.js +1 -1
  270. package/lib/esm/components/CheckBoxGroup/styles.js +1 -1
  271. package/lib/esm/components/Collapse/Collapse.js +1 -1
  272. package/lib/esm/components/Collapse/Item/Item.js +1 -1
  273. package/lib/esm/components/Collapse/Item/styles.js +1 -1
  274. package/lib/esm/components/Collapse/index.js +1 -1
  275. package/lib/esm/components/ConfigProvider/ConfigProvider.js +1 -1
  276. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/ConfigCache.js +1 -1
  277. package/lib/esm/components/ConfigProvider/hooks/ConfigCache/index.js +1 -1
  278. package/lib/esm/components/ConfigProvider/hooks/themeToken/index.js +1 -1
  279. package/lib/esm/components/ConfigProvider/hooks/themeToken/useThemeToken.js +1 -1
  280. package/lib/esm/components/ConfigProvider/index.js +1 -1
  281. package/lib/esm/components/DatePicker/DatePicker.js +1 -1
  282. package/lib/esm/components/DatePicker/api.js +1 -1
  283. package/lib/esm/components/DatePicker/index.js +1 -1
  284. package/lib/esm/components/Divider/Divider.js +1 -1
  285. package/lib/esm/components/Divider/index.js +1 -1
  286. package/lib/esm/components/Divider/styles.js +1 -1
  287. package/lib/esm/components/DropDown/DropDown.js +1 -1
  288. package/lib/esm/components/DropDown/DropDownItem.js +1 -1
  289. package/lib/esm/components/DropDown/index.js +1 -1
  290. package/lib/esm/components/Empty/Empty.js +1 -1
  291. package/lib/esm/components/Empty/index.js +1 -1
  292. package/lib/esm/components/Empty/styles.js +1 -1
  293. package/lib/esm/components/FAB/FAB.js +1 -1
  294. package/lib/esm/components/FAB/index.js +1 -1
  295. package/lib/esm/components/Form/Form.js +1 -1
  296. package/lib/esm/components/Form/FormItem.js +1 -1
  297. package/lib/esm/components/Form/index.js +1 -1
  298. package/lib/esm/components/Form/styles.js +1 -1
  299. package/lib/esm/components/Image/Image.js +45 -104
  300. package/lib/esm/components/Image/Image.js.map +1 -1
  301. package/lib/esm/components/Image/Image69.js +2 -1
  302. package/lib/esm/components/Image/Image69.js.map +1 -1
  303. package/lib/esm/components/Image/VisibilitySensor.js +1 -1
  304. package/lib/esm/components/Image/hook/index.js +2 -1
  305. package/lib/esm/components/Image/hook/index.js.map +1 -1
  306. package/lib/esm/components/Image/hook/useImageId.js +16 -0
  307. package/lib/esm/components/Image/hook/useImageId.js.map +1 -0
  308. package/lib/esm/components/Image/index.js +3 -1
  309. package/lib/esm/components/Image/index.js.map +1 -1
  310. package/lib/esm/components/Image/manager/ImageAPMManager.js +393 -0
  311. package/lib/esm/components/Image/manager/ImageAPMManager.js.map +1 -0
  312. package/lib/esm/components/Image/manager/index.js +6 -0
  313. package/lib/esm/components/Image/manager/index.js.map +1 -0
  314. package/lib/esm/components/Image/manager/types.js +2 -0
  315. package/lib/esm/components/Image/manager/types.js.map +1 -0
  316. package/lib/esm/components/Image/utils.js +1 -3
  317. package/lib/esm/components/Image/utils.js.map +1 -1
  318. package/lib/esm/components/ImagePreview/ImagePreview.js +1 -1
  319. package/lib/esm/components/ImagePreview/api.js +1 -1
  320. package/lib/esm/components/ImagePreview/index.js +1 -1
  321. package/lib/esm/components/LanguageProvider/hooks/useLanguage.js +1 -1
  322. package/lib/esm/components/LanguageProvider/index.js +1 -1
  323. package/lib/esm/components/List/List.js +1 -1
  324. package/lib/esm/components/List/ListItem/ListItem.js +1 -1
  325. package/lib/esm/components/List/index.js +1 -1
  326. package/lib/esm/components/List/styles.js +1 -1
  327. package/lib/esm/components/MiniSnackBar/MiniSnackBar.js +1 -1
  328. package/lib/esm/components/MiniSnackBar/index.js +1 -1
  329. package/lib/esm/components/MiniSnackBar/styles.js +1 -1
  330. package/lib/esm/components/NavigationBar/NavigationBar.js +1 -1
  331. package/lib/esm/components/NavigationBar/index.js +1 -1
  332. package/lib/esm/components/NavigationBar/styles.js +1 -1
  333. package/lib/esm/components/NoticeBar/NoticeBar.js +1 -1
  334. package/lib/esm/components/NoticeBar/index.js +1 -1
  335. package/lib/esm/components/Picker/Picker.js +1 -1
  336. package/lib/esm/components/Picker/api.js +1 -1
  337. package/lib/esm/components/Picker/index.js +1 -1
  338. package/lib/esm/components/PickerView/PickerView.js +1 -1
  339. package/lib/esm/components/PickerView/Wheel.js +1 -1
  340. package/lib/esm/components/PickerView/index.js +1 -1
  341. package/lib/esm/components/Popover/Popover.js +1 -1
  342. package/lib/esm/components/Popover/index.js +1 -1
  343. package/lib/esm/components/Portal/core/PortalProvider.js +1 -1
  344. package/lib/esm/components/Portal/index.js +1 -1
  345. package/lib/esm/components/Progress/Progress.js +1 -1
  346. package/lib/esm/components/Progress/index.js +1 -1
  347. package/lib/esm/components/Progress/styles.js +1 -1
  348. package/lib/esm/components/ProgressIndicator/ProgressIndicator.js +1 -1
  349. package/lib/esm/components/ProgressIndicator/index.js +1 -1
  350. package/lib/esm/components/ProgressIndicator/styles.js +1 -1
  351. package/lib/esm/components/PullRefresh/PullRefresh.js +1 -1
  352. package/lib/esm/components/PullRefresh/component.js +1 -1
  353. package/lib/esm/components/PullRefresh/index.js +1 -1
  354. package/lib/esm/components/Radio/Radio.js +3 -1
  355. package/lib/esm/components/Radio/Radio.js.map +1 -1
  356. package/lib/esm/components/Radio/RadioGroup.js +1 -1
  357. package/lib/esm/components/Radio/index.js +3 -1
  358. package/lib/esm/components/Radio/index.js.map +1 -1
  359. package/lib/esm/components/Radio/styles.js +1 -1
  360. package/lib/esm/components/Rate/Rate.js +1 -1
  361. package/lib/esm/components/Rate/index.js +1 -1
  362. package/lib/esm/components/Result/Result.js +1 -1
  363. package/lib/esm/components/Result/index.js +1 -1
  364. package/lib/esm/components/Result/styles.js +1 -1
  365. package/lib/esm/components/Search/Search.js +1 -1
  366. package/lib/esm/components/Search/index.js +1 -1
  367. package/lib/esm/components/Search/styles.js +1 -1
  368. package/lib/esm/components/SegmentedControl/SegmentedControl.js +1 -1
  369. package/lib/esm/components/SegmentedControl/index.js +1 -1
  370. package/lib/esm/components/Sheets/AnimatedSheets.js +1 -1
  371. package/lib/esm/components/Sheets/Sheets.js +1 -1
  372. package/lib/esm/components/Sheets/api.js +1 -1
  373. package/lib/esm/components/Sheets/index.js +1 -1
  374. package/lib/esm/components/Skeleton/Item/SkeletonItem.js +1 -1
  375. package/lib/esm/components/Skeleton/Item/SkeletonItem69.js +1 -1
  376. package/lib/esm/components/Skeleton/Skeleton.js +1 -1
  377. package/lib/esm/components/Skeleton/Skeleton69.js +1 -1
  378. package/lib/esm/components/Skeleton/index.js +1 -1
  379. package/lib/esm/components/Slider/Slider.js +1 -1
  380. package/lib/esm/components/Slider/index.js +1 -1
  381. package/lib/esm/components/SlimAlert/Alert.js +1 -1
  382. package/lib/esm/components/SlimAlert/AlertContent.js +1 -1
  383. package/lib/esm/components/SlimAlert/AlertFooter.js +1 -1
  384. package/lib/esm/components/SlimAlert/index.js +1 -1
  385. package/lib/esm/components/SlimAlert/styles.js +1 -1
  386. package/lib/esm/components/SlimNavigationBar/NavigationBar.js +1 -1
  387. package/lib/esm/components/SlimNavigationBar/NavigationBarAction.js +1 -1
  388. package/lib/esm/components/SlimNavigationBar/index.js +1 -1
  389. package/lib/esm/components/SlimNavigationBar/styles.js +1 -1
  390. package/lib/esm/components/SlimSheets/AnimatedSheets.js +1 -1
  391. package/lib/esm/components/SlimSheets/AnimatedSheetsAction.js +1 -1
  392. package/lib/esm/components/SlimSheets/AnimatedSheetsHeader.js +1 -1
  393. package/lib/esm/components/SlimSheets/DragAnimatedSheets.js +1 -1
  394. package/lib/esm/components/SlimSheets/index.js +1 -1
  395. package/lib/esm/components/SlimTabs/BadgeSlimTabItem.js +1 -1
  396. package/lib/esm/components/SlimTabs/SlimTab.js +1 -1
  397. package/lib/esm/components/SlimTabs/SlimTabItem.js +1 -1
  398. package/lib/esm/components/SlimTabs/SlimTabItemLabel.js +1 -1
  399. package/lib/esm/components/SlimTabs/SlimTabItemValue.js +1 -1
  400. package/lib/esm/components/SlimTabs/SlimTabList.js +1 -1
  401. package/lib/esm/components/SlimTabs/index.js +1 -1
  402. package/lib/esm/components/SlimTabs/styles.js +1 -1
  403. package/lib/esm/components/SnackBar/SnackBar.js +1 -1
  404. package/lib/esm/components/SnackBar/index.js +1 -1
  405. package/lib/esm/components/SnackBar/styles.js +1 -1
  406. package/lib/esm/components/Stepper/Stepper.js +1 -1
  407. package/lib/esm/components/Stepper/index.js +1 -1
  408. package/lib/esm/components/Switch/Switch.js +1 -1
  409. package/lib/esm/components/Switch/index.js +1 -1
  410. package/lib/esm/components/Tab/Tabs.js +1 -1
  411. package/lib/esm/components/Tab/index.js +1 -1
  412. package/lib/esm/components/Tab/styles.js +1 -1
  413. package/lib/esm/components/TabBar/TabBar.js +1 -1
  414. package/lib/esm/components/TabBar/index.js +1 -1
  415. package/lib/esm/components/TabBar/styles.js +1 -1
  416. package/lib/esm/components/Tag/Tag.js +1 -1
  417. package/lib/esm/components/Tag/index.js +1 -1
  418. package/lib/esm/components/Text/Text.js +1 -1
  419. package/lib/esm/components/Text/Viewable.js +1 -1
  420. package/lib/esm/components/Text/hooks/cloneContainer.js +1 -1
  421. package/lib/esm/components/Text/hooks/index.js +1 -1
  422. package/lib/esm/components/Text/hooks/loadFontFromFile.js +1 -1
  423. package/lib/esm/components/Text/index.js +1 -1
  424. package/lib/esm/components/Text/styles.js +1 -1
  425. package/lib/esm/components/TextField/TextField.js +1 -1
  426. package/lib/esm/components/TextField/index.js +1 -1
  427. package/lib/esm/components/TextField/styles.js +1 -1
  428. package/lib/esm/components/TextView/TextView.js +1 -1
  429. package/lib/esm/components/TextView/index.js +1 -1
  430. package/lib/esm/components/TextView/styles.js +1 -1
  431. package/lib/esm/components/Toast/Toast.js +1 -1
  432. package/lib/esm/components/Toast/api.js +1 -1
  433. package/lib/esm/components/Toast/index.js +1 -1
  434. package/lib/esm/components/Toast/styles.js +1 -1
  435. package/lib/esm/components/Uploader/Uploader.js +1 -1
  436. package/lib/esm/components/Uploader/index.js +1 -1
  437. package/lib/esm/components/Uploader/utils.js +1 -1
  438. package/lib/esm/index.js +3 -1
  439. package/lib/esm/index.js.map +1 -1
  440. package/lib/src/components/Image/Image.d.ts +1 -1
  441. package/lib/src/components/Image/hook/index.d.ts +1 -0
  442. package/lib/src/components/Image/hook/useImageId.d.ts +7 -0
  443. package/lib/src/components/Image/index.d.ts +1 -1
  444. package/lib/src/components/Image/manager/ImageAPMManager.d.ts +123 -0
  445. package/lib/src/components/Image/manager/index.d.ts +2 -0
  446. package/lib/src/components/Image/manager/types.d.ts +40 -0
  447. package/lib/types/components/Image/Image.d.ts +1 -1
  448. package/lib/types/components/Image/hook/index.d.ts +1 -0
  449. package/lib/types/components/Image/hook/useImageId.d.ts +7 -0
  450. package/lib/types/components/Image/index.d.ts +1 -1
  451. package/lib/types/components/Image/manager/ImageAPMManager.d.ts +123 -0
  452. package/lib/types/components/Image/manager/index.d.ts +2 -0
  453. package/lib/types/components/Image/manager/types.d.ts +40 -0
  454. package/package.json +1 -1
  455. package/src/components/Image/Image.tsx +48 -127
  456. package/src/components/Image/hook/index.ts +2 -0
  457. package/src/components/Image/hook/useImageId.ts +33 -0
  458. package/src/components/Image/manager/ImageAPMManager.ts +389 -0
  459. package/src/components/Image/manager/index.ts +2 -0
  460. package/src/components/Image/manager/types.ts +46 -0
  461. package/src/components/Image/utils.ts +0 -2
  462. package/src/i18n/@types/resources.d.ts +27 -27
  463. package/src/i18n/index.json +31 -31
@@ -1,4 +1,4 @@
1
1
  export { configCache } from './ConfigCache.js';
2
- import '../../../../_chunks/CAkwE9ZD.js';
2
+ import '../../../../_chunks/DpFbw-p-.js';
3
3
  import '@xhsreds/reds-token-next';
4
4
  //# sourceMappingURL=index.js.map
@@ -2,7 +2,7 @@ export { useColorMode } from './useColorMode.js';
2
2
  export { useThemeButtonBorderRadiusById, useThemeColor, useThemeTypography } from './useThemeToken.js';
3
3
  import 'react';
4
4
  import '../ConfigContext/ConfigContext.js';
5
- import '../../../../_chunks/CAkwE9ZD.js';
5
+ import '../../../../_chunks/DpFbw-p-.js';
6
6
  import '@xhsreds/reds-token-next';
7
7
  import '../ConfigCache/ConfigCache.js';
8
8
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray } from '../../../../_chunks/CAkwE9ZD.js';
1
+ import { _ as _slicedToArray } from '../../../../_chunks/DpFbw-p-.js';
2
2
  import { useContext } from 'react';
3
3
  import { typography, fontWeight, lightColor, darkColor, platformLightColor } from '@xhsreds/reds-token-next';
4
4
  import { configCache } from '../ConfigCache/ConfigCache.js';
@@ -3,7 +3,7 @@ export { i as ConfigProviderType } from '../../_chunks/Dy4pCzQH.js';
3
3
  export { useThemeButtonBorderRadiusById, useThemeColor, useThemeTypography } from './hooks/themeToken/useThemeToken.js';
4
4
  export { useColorMode } from './hooks/themeToken/useColorMode.js';
5
5
  import './hooks/ConfigCache/ConfigCache.js';
6
- import '../../_chunks/CAkwE9ZD.js';
6
+ import '../../_chunks/DpFbw-p-.js';
7
7
  import '@xhsreds/reds-token-next';
8
8
  import './hooks/ConfigContext/ConfigContext.js';
9
9
  import 'react';
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { useState, useMemo, useEffect } from 'react';
3
3
  import { D as DatePickerMode, a as DatePickerDefaultProps } from '../../_chunks/Dr5vetot.js';
4
4
  import Picker from '../Picker/Picker.js';
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React from 'react';
3
3
  import DatePicker from './DatePicker.js';
4
4
  import { a as DatePickerDefaultProps } from '../../_chunks/Dr5vetot.js';
@@ -1,7 +1,7 @@
1
1
  import DatePicker from './DatePicker.js';
2
2
  export { i as DatePickerType } from '../../_chunks/Dr5vetot.js';
3
3
  export { useDatePicker } from './api.js';
4
- import '../../_chunks/CAkwE9ZD.js';
4
+ import '../../_chunks/DpFbw-p-.js';
5
5
  import 'react';
6
6
  import '../Picker/Picker.js';
7
7
  import '../../_chunks/3fnqPSWW.js';
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React from 'react';
3
3
  import { View, Text } from 'react-native';
4
4
  import { D as DividerDefaultProps } from '../../_chunks/CLoffREn.js';
@@ -1,6 +1,6 @@
1
1
  import Divider from './Divider.js';
2
2
  export { i as DividerType } from '../../_chunks/CLoffREn.js';
3
- import '../../_chunks/CAkwE9ZD.js';
3
+ import '../../_chunks/DpFbw-p-.js';
4
4
  import 'react';
5
5
  import 'react-native';
6
6
  import './styles.js';
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import { StyleSheet } from 'react-native';
3
3
  import { D as DividerDefaultProps } from '../../_chunks/CLoffREn.js';
4
4
  import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray } from '../../_chunks/CAkwE9ZD.js';
1
+ import { _ as _slicedToArray } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { useState, useMemo } from 'react';
3
3
  import { View, TouchableWithoutFeedback, Text, ScrollView } from 'react-native';
4
4
  import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray, b as _toConsumableArray } from '../../_chunks/CAkwE9ZD.js';
1
+ import { _ as _slicedToArray, b as _toConsumableArray } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { useState, useEffect, useMemo } from 'react';
3
3
  import { View, Text, TouchableWithoutFeedback, TextInput } from 'react-native';
4
4
  import { M as MULTIPLEOPTIONCOLUMN, D as DROPDOWNITEMTYPE, b as DropDownItemDefaultProps } from '../../_chunks/Cadwf4ug.js';
@@ -1,7 +1,7 @@
1
1
  import DropDown from './DropDown.js';
2
2
  export { default as DropDownItem } from './DropDownItem.js';
3
3
  export { i as DropDownType } from '../../_chunks/Cadwf4ug.js';
4
- import '../../_chunks/CAkwE9ZD.js';
4
+ import '../../_chunks/DpFbw-p-.js';
5
5
  import 'react';
6
6
  import 'react-native';
7
7
  import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { useMemo } from 'react';
3
3
  import { Image, View, Text } from 'react-native';
4
4
  import { E as EmptyDefaultProps } from '../../_chunks/BoucDqUg.js';
@@ -1,6 +1,6 @@
1
1
  import Empty from './Empty.js';
2
2
  export { i as EmptyType } from '../../_chunks/BoucDqUg.js';
3
- import '../../_chunks/CAkwE9ZD.js';
3
+ import '../../_chunks/DpFbw-p-.js';
4
4
  import 'react';
5
5
  import 'react-native';
6
6
  import './styles.js';
@@ -3,7 +3,7 @@ import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
3
3
  import 'react';
4
4
  import '@xhs/reds-apm/src/index.native';
5
5
  import { useThemeColor, useThemeTypography } from '../ConfigProvider/hooks/themeToken/useThemeToken.js';
6
- import '../../_chunks/CAkwE9ZD.js';
6
+ import '../../_chunks/DpFbw-p-.js';
7
7
  import '@xhsreds/reds-token-next';
8
8
  import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';
9
9
 
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2, _ as _slicedToArray } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2, _ as _slicedToArray } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { memo, useState } from 'react';
3
3
  import { View } from 'react-native';
4
4
  import { F as FABDefaultProps } from '../../_chunks/BHRAJjD2.js';
@@ -1,6 +1,6 @@
1
1
  import FAB from './FAB.js';
2
2
  export { i as FABType } from '../../_chunks/BHRAJjD2.js';
3
- import '../../_chunks/CAkwE9ZD.js';
3
+ import '../../_chunks/DpFbw-p-.js';
4
4
  import 'react';
5
5
  import 'react-native';
6
6
  import './styles.js';
@@ -1,4 +1,4 @@
1
- import { _ as _slicedToArray, a as _objectSpread2, f as _defineProperty } from '../../_chunks/CAkwE9ZD.js';
1
+ import { _ as _slicedToArray, a as _objectSpread2, f as _defineProperty } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { forwardRef, useState, useImperativeHandle } from 'react';
3
3
  import { F as FormDefaultProps } from '../../_chunks/Co-RjOaG.js';
4
4
  import Button from '../Button/Button.js';
@@ -1,4 +1,4 @@
1
- import { a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { useContext } from 'react';
3
3
  import { View, Text } from 'react-native';
4
4
  import { R as RedsFormItemDefaultProps } from '../../_chunks/Co-RjOaG.js';
@@ -1,7 +1,7 @@
1
1
  import Form from './Form.js';
2
2
  export { default as FormItem } from './FormItem.js';
3
3
  export { i as FormType } from '../../_chunks/Co-RjOaG.js';
4
- import '../../_chunks/CAkwE9ZD.js';
4
+ import '../../_chunks/DpFbw-p-.js';
5
5
  import 'react';
6
6
  import '../Button/Button.js';
7
7
  import 'react-native';
@@ -4,7 +4,7 @@ import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
4
4
  import 'react';
5
5
  import '@xhs/reds-apm/src/index.native';
6
6
  import { useThemeTypography } from '../ConfigProvider/hooks/themeToken/useThemeToken.js';
7
- import '../../_chunks/CAkwE9ZD.js';
7
+ import '../../_chunks/DpFbw-p-.js';
8
8
  import '@xhsreds/reds-token-next';
9
9
  import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';
10
10
 
@@ -1,6 +1,6 @@
1
- import { i as _objectWithoutProperties, _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
2
- import React, { memo, useState, useMemo, useRef, useEffect, useCallback } from 'react';
3
- import { Image as Image$2, View, TouchableOpacity } from 'react-native';
1
+ import { i as _objectWithoutProperties, _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
+ import React, { memo, useState, useMemo, useEffect } from 'react';
3
+ import { View, Image as Image$2, TouchableOpacity } from 'react-native';
4
4
  import { I as IMAGE_STATUS, T as TLoadStyle, b as TErrorStyle, a as ImageDefaultProps } from '../../_chunks/CMnjcQfl.js';
5
5
  import styles from './styles.js';
6
6
  import { useAveColor, useBlur } from './hook/index.js';
@@ -9,15 +9,17 @@ import '../ConfigProvider/hooks/ConfigCache/ConfigCache.js';
9
9
  import useMounted from '../../pvCount/useUnmountedProcess.js';
10
10
  import { lightColor } from '@xhsreds/reds-token-next';
11
11
  import { useColorMode } from '../ConfigProvider/hooks/themeToken/useColorMode.js';
12
- import { formatUri, isLocalFile, isDataUri, convertKeysToSnakeCase } from './utils.js';
12
+ import { formatUri } from './utils.js';
13
13
  import VisibilitySensor from './VisibilitySensor.js';
14
- import { apmPush } from './apm.js';
14
+ import ImageAPMManager from './manager/ImageAPMManager.js';
15
+ import { useImageId } from './hook/useImageId.js';
15
16
  import 'react-native-svg';
16
17
  import '@xhs/reds-apm/src/index.native';
17
18
  import '../../pvCount/pvData.js';
18
19
  import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';
20
+ import './apm.js';
19
21
 
20
- var _excluded = ["src", "source", "width", "height", "borderRadius", "errorStyle", "loadStyle", "style", "abortApmCollection", "fadeDuration", "onFirstDrawFinished"];
22
+ var _excluded = ["src", "source", "width", "height", "borderRadius", "errorStyle", "loadStyle", "style", "abortApmCollection", "fadeDuration", "onFirstDrawFinished", "apmBiz"];
21
23
  var imageReLoad = {
22
24
  light: "https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png",
23
25
  dark: "https://picasso-static.xiaohongshu.com/fe-platform/4f9bfbf2358aa970f1ec3dbf4ba5ff9355b7a41e.png",
@@ -40,8 +42,10 @@ var Image = function Image(_ref) {
40
42
  abortApmCollection = _ref.abortApmCollection,
41
43
  fadeDuration = _ref.fadeDuration,
42
44
  _onFirstDrawFinished = _ref.onFirstDrawFinished,
45
+ apmBiz = _ref.apmBiz,
43
46
  props = _objectWithoutProperties(_ref, _excluded);
44
47
  useMounted("Image");
48
+ var imageId = useImageId();
45
49
  var _useState = useState(IMAGE_STATUS.LOADING),
46
50
  _useState2 = _slicedToArray(_useState, 2),
47
51
  imageStatus = _useState2[0],
@@ -50,6 +54,14 @@ var Image = function Image(_ref) {
50
54
  _useState4 = _slicedToArray(_useState3, 2),
51
55
  progress = _useState4[0],
52
56
  setProgress = _useState4[1];
57
+ var _useState5 = useState(false),
58
+ _useState6 = _slicedToArray(_useState5, 2);
59
+ _useState6[0];
60
+ var setViewable = _useState6[1];
61
+ var _useState7 = useState(false),
62
+ _useState8 = _slicedToArray(_useState7, 2),
63
+ apmDone = _useState8[0],
64
+ setApmDone = _useState8[1];
53
65
  var formatSource = useMemo(function () {
54
66
  if (_source) return {
55
67
  uri: formatUri({
@@ -72,99 +84,26 @@ var Image = function Image(_ref) {
72
84
  var blurSource = useBlur({
73
85
  source: formatSource
74
86
  });
75
- var _useState5 = useState(false),
76
- _useState6 = _slicedToArray(_useState5, 2),
77
- viewable = _useState6[0],
78
- setViewable = _useState6[1];
79
- var hasInit = useRef(false);
80
- var checkIsVisible = function checkIsVisible(isVisible) {
81
- if (abortApmCollection) return;
82
- if (!hasInit.current) {
83
- hasInit.current = true;
84
- apmDataRef.current.isFirstScreen = isVisible ? "true" : "false";
85
- }
86
- setViewable(isVisible);
87
- };
88
- var apmDataRef = useRef({
89
- imageUrl: "",
90
- imageHost: "",
91
- intersectTime: viewable ? Date.now() : 0,
92
- imageSize: 0,
93
- isFirstScreen: "false",
94
- isPrefetch: "",
95
- isSuccess: "false",
96
- errorReason: "",
97
- loadedStartTime: 0,
98
- loadedTime: 0,
99
- loadDuration: 0,
100
- viewDuration: 0
101
- });
102
- var _useState7 = useState(false),
103
- _useState8 = _slicedToArray(_useState7, 2),
104
- apmDoneRef = _useState8[0],
105
- setApmDoneRef = _useState8[1];
106
87
  useEffect(function () {
107
88
  if (abortApmCollection) return;
108
- try {
109
- var apmData = apmDataRef.current;
110
- if (typeof formatSource !== "number" && !isLocalFile(formatSource.uri) && !isDataUri(formatSource.uri)) {
111
- var imageUrl = new URL(formatSource.uri);
112
- apmData.imageHost = "".concat(imageUrl.protocol, "//").concat(imageUrl.host);
113
- apmData.imageUrl = formatSource.uri;
114
- }
115
- } catch (error) {}
116
- }, [formatSource, abortApmCollection]);
117
- useEffect(function () {
118
- if (abortApmCollection) return;
119
- var imageUrl = (formatSource === null || formatSource === void 0 ? void 0 : formatSource.uri) || "";
120
- if (typeof Image$2.queryCache === "function" && !!imageUrl) {
121
- var uriEncodeImageUrl = encodeURI(imageUrl);
122
- Image$2.queryCache([imageUrl]).then(function (res) {
123
- if (res !== null && res !== void 0 && res[uriEncodeImageUrl]) {
124
- apmDataRef.current.isPrefetch = "true";
125
- } else {
126
- apmDataRef.current.isPrefetch = "false";
127
- }
128
- });
129
- }
89
+ var manager = ImageAPMManager.getInstance();
90
+ manager.register(imageId, formatSource, apmBiz);
130
91
  return function () {
131
- apmDataRef.current.isPrefetch = "";
92
+ return manager.unregister(imageId);
132
93
  };
133
- }, [formatSource, abortApmCollection]);
134
- var pushApmData = useCallback(function () {
135
- if (abortApmCollection) return;
136
- var apmData = apmDataRef.current;
137
- var viewDuration = apmData.loadedTime - apmData.intersectTime;
138
- apmData.viewDuration = viewDuration < 0 ? 0 : viewDuration;
139
- var imageSize = apmDataRef.current.imageSize || 0;
140
- if (!apmDataRef.current.isPrefetch) {
141
- apmDataRef.current.isPrefetch = String((imageSize || 0) <= 0);
142
- }
143
- if (!apmDoneRef && apmData.imageUrl && !abortApmCollection) {
144
- setApmDoneRef(true);
145
- apmPush(convertKeysToSnakeCase(apmData));
146
- }
147
- }, [abortApmCollection]);
148
- if ((!apmDataRef.current.isFirstScreen || apmDataRef.current.isFirstScreen === "false") && viewable && !abortApmCollection) {
149
- apmDataRef.current.isFirstScreen = "true";
150
- }
94
+ }, [imageId, abortApmCollection, apmBiz]);
151
95
  useEffect(function () {
152
96
  if (abortApmCollection) return;
153
- var apmData = apmDataRef.current;
154
- if (!apmData.intersectTime && viewable) {
155
- apmData.intersectTime = Date.now();
156
- if (apmData.loadedTime || apmData.errorReason) {
157
- pushApmData();
158
- }
159
- }
160
- }, [viewable, pushApmData, abortApmCollection]);
161
- var onLoadEnd = function onLoadEnd() {
162
- var _props$onLoadEnd;
163
- props === null || props === void 0 || (_props$onLoadEnd = props.onLoadEnd) === null || _props$onLoadEnd === void 0 || _props$onLoadEnd.call(props);
97
+ ImageAPMManager.getInstance().updateSource(imageId, formatSource);
98
+ }, [formatSource, abortApmCollection, imageId]);
99
+ var checkIsVisible = function checkIsVisible(isVisible) {
164
100
  if (abortApmCollection) return;
165
- var apmData = apmDataRef.current;
166
- if (apmData.intersectTime) {
167
- pushApmData();
101
+ ImageAPMManager.getInstance().setViewable(imageId, isVisible);
102
+ setViewable(isVisible);
103
+ };
104
+ var onLoadStart = function onLoadStart() {
105
+ if (!abortApmCollection) {
106
+ ImageAPMManager.getInstance().recordLoadStart(imageId);
168
107
  }
169
108
  };
170
109
  var onProgress = function onProgress(e) {
@@ -175,33 +114,35 @@ var Image = function Image(_ref) {
175
114
  if (total) {
176
115
  setProgress(loaded / total * 100 | 0);
177
116
  }
178
- !abortApmCollection && (apmDataRef.current.imageSize = total);
117
+ if (!abortApmCollection) {
118
+ ImageAPMManager.getInstance().recordProgress(imageId, loaded, total);
119
+ }
179
120
  (_props$onProgress = props.onProgress) === null || _props$onProgress === void 0 || _props$onProgress.call(props, e);
180
121
  };
181
122
  var onLoad = function onLoad(e) {
182
123
  var _props$onLoad;
183
124
  if (!abortApmCollection) {
184
- var now = Date.now();
185
- var loadDuration = now - apmDataRef.current.loadedStartTime;
186
- apmDataRef.current.loadedTime = now;
187
- apmDataRef.current.loadDuration = loadDuration < 0 ? 0 : loadDuration;
188
- apmDataRef.current.isSuccess = "true";
125
+ ImageAPMManager.getInstance().recordLoad(imageId);
189
126
  }
190
127
  (_props$onLoad = props.onLoad) === null || _props$onLoad === void 0 || _props$onLoad.call(props, e);
191
128
  setImageStatus(IMAGE_STATUS.LOADED);
192
129
  };
193
- var onLoadStart = function onLoadStart() {
194
- !abortApmCollection && (apmDataRef.current.loadedStartTime = Date.now());
195
- };
196
130
  var onError = function onError(e) {
197
131
  var _props$onError;
198
132
  if (!abortApmCollection) {
199
- apmDataRef.current.isSuccess = "false";
200
- apmDataRef.current.errorReason = "".concat(e.nativeEvent.error);
133
+ ImageAPMManager.getInstance().recordError(imageId, "".concat(e.nativeEvent.error));
201
134
  }
202
135
  (_props$onError = props.onError) === null || _props$onError === void 0 || _props$onError.call(props, e);
203
136
  setImageStatus(errorStyle === TErrorStyle.ERROR ? IMAGE_STATUS.LOADERROR : IMAGE_STATUS.RELOAD);
204
137
  };
138
+ var onLoadEnd = function onLoadEnd() {
139
+ var _props$onLoadEnd;
140
+ if (!abortApmCollection) {
141
+ ImageAPMManager.getInstance().checkAndPush(imageId);
142
+ setApmDone(true);
143
+ }
144
+ props === null || props === void 0 || (_props$onLoadEnd = props.onLoadEnd) === null || _props$onLoadEnd === void 0 || _props$onLoadEnd.call(props);
145
+ };
205
146
  var onReload = function onReload(e) {
206
147
  var _props$onReload;
207
148
  setImageStatus(IMAGE_STATUS.HIDE);
@@ -219,7 +160,7 @@ var Image = function Image(_ref) {
219
160
  }, style)
220
161
  }, imageStatus !== IMAGE_STATUS.HIDE && (!abortApmCollection ? /* @__PURE__ */React.createElement(VisibilitySensor, {
221
162
  onChange: checkIsVisible,
222
- disabled: apmDoneRef
163
+ disabled: apmDone
223
164
  }, /* @__PURE__ */React.createElement(Image$2, _objectSpread2(_objectSpread2({}, props), {}, {
224
165
  source: formatSource,
225
166
  onLoadStart: onLoadStart,
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import React, { useState, memo, useMemo, useRef, useCallback, useEffect } from \"react\";\nimport {\n View,\n Image as RNImage,\n GestureResponderEvent,\n ImageProps,\n TouchableOpacity,\n ImageLoadEventData,\n NativeSyntheticEvent,\n ImageErrorEventData,\n ImageProgressEventDataIOS,\n ImageSourcePropType,\n ImageURISource,\n} from \"react-native\";\nimport {\n RedsImage,\n ImageDefaultProps,\n IMAGE_STATUS,\n TErrorStyle,\n TLoadStyle,\n ImageTrackerProps,\n} from \"./interface/index\";\nimport styles from \"./styles\";\nimport { useAveColor, useBlur } from \"./hook\";\nimport CircularProgress from \"./CircularProgress\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { lightColor } from \"@xhsreds/reds-token-next\";\nimport { formatUri, isDataUri, isLocalFile, convertKeysToSnakeCase } from \"./utils\";\nimport VisibilitySensor from \"./VisibilitySensor\";\nimport { apmPush } from \"./apm\";\n\nconst imageReLoad = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/4f9bfbf2358aa970f1ec3dbf4ba5ff9355b7a41e.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n};\n\nconst imageError = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/7d8debb5e2c3a1f37299a292342b77d479be6f28.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n};\n\nconst Image = ({\n src,\n source: _source,\n width,\n height,\n borderRadius,\n errorStyle,\n loadStyle,\n style,\n abortApmCollection,\n fadeDuration,\n onFirstDrawFinished,\n ...props\n}: RedsImage & Omit<ImageProps, keyof RedsImage>) => {\n useMounted(\"Image\");\n const [imageStatus, setImageStatus] = useState(IMAGE_STATUS.LOADING);\n const [progress, setProgress] = useState(0);\n\n const formatSource = useMemo(() => {\n // @ts-ignore\n if (_source) return { uri: formatUri({ uri: _source.uri, width }) } as ImageSourcePropTyp;\n // @ts-ignore\n return { uri: formatUri({ uri: src, width }) } as ImageSourcePropType;\n }, [src, _source, width]);\n\n const aveColor = useAveColor({\n source: formatSource,\n defaultColor: lightColor.Fill1,\n loadingAve: loadStyle === TLoadStyle.AVE,\n });\n\n const blurSource = useBlur({ source: formatSource });\n\n const [viewable, setViewable] = useState(false);\n const hasInit = useRef(false);\n const checkIsVisible = (isVisible: boolean) => {\n if (abortApmCollection) return;\n // 判断首屏\n if (!hasInit.current) {\n hasInit.current = true;\n apmDataRef.current.isFirstScreen = isVisible ? \"true\" : \"false\";\n }\n setViewable(isVisible);\n };\n const apmDataRef = useRef<ImageTrackerProps>({\n imageUrl: \"\",\n imageHost: \"\",\n intersectTime: viewable ? Date.now() : 0,\n imageSize: 0,\n isFirstScreen: \"false\",\n isPrefetch: \"\",\n isSuccess: \"false\",\n errorReason: \"\",\n loadedStartTime: 0,\n loadedTime: 0,\n loadDuration: 0,\n viewDuration: 0,\n });\n const [apmDoneRef, setApmDoneRef] = useState(false);\n\n useEffect(() => {\n if (abortApmCollection) return;\n try {\n const apmData = apmDataRef.current;\n if (\n typeof formatSource !== \"number\" &&\n !isLocalFile((formatSource as ImageURISource).uri as string) &&\n !isDataUri((formatSource as ImageURISource).uri as string)\n ) {\n const imageUrl = new URL((formatSource as ImageURISource).uri as string);\n apmData.imageHost = `${imageUrl.protocol}//${imageUrl.host}`;\n apmData.imageUrl = (formatSource as ImageURISource).uri as string;\n }\n } catch (error) {\n //\n }\n }, [formatSource, abortApmCollection]);\n\n useEffect(() => {\n if (abortApmCollection) return;\n const imageUrl = (formatSource as ImageURISource)?.uri || \"\";\n if (typeof RNImage.queryCache === \"function\" && !!imageUrl) {\n const uriEncodeImageUrl = encodeURI(imageUrl);\n RNImage.queryCache([imageUrl]).then((res) => {\n if (res?.[uriEncodeImageUrl]) {\n apmDataRef.current.isPrefetch = \"true\";\n } else {\n apmDataRef.current.isPrefetch = \"false\";\n }\n });\n }\n return () => {\n apmDataRef.current.isPrefetch = \"\";\n };\n }, [formatSource, abortApmCollection]);\n\n const pushApmData = useCallback(() => {\n if (abortApmCollection) return;\n const apmData = apmDataRef.current;\n const viewDuration = apmData.loadedTime - apmData.intersectTime;\n apmData.viewDuration = viewDuration < 0 ? 0 : viewDuration;\n /**\n * 如果Image.queryCache未完成时,通过imageSize来判断\n * 如果image_size是-1,那么认为图片已有缓存\n */\n const imageSize = apmDataRef.current.imageSize || 0;\n if (!apmDataRef.current.isPrefetch) {\n apmDataRef.current.isPrefetch = String((imageSize || 0) <= 0);\n }\n if (!apmDoneRef && apmData.imageUrl && !abortApmCollection) {\n setApmDoneRef(true);\n apmPush(convertKeysToSnakeCase(apmData));\n }\n }, [abortApmCollection]);\n\n // 判断首屏\n if (\n (!apmDataRef.current.isFirstScreen || apmDataRef.current.isFirstScreen === \"false\") &&\n viewable &&\n !abortApmCollection\n ) {\n apmDataRef.current.isFirstScreen = \"true\";\n }\n useEffect(() => {\n if (abortApmCollection) return;\n const apmData = apmDataRef.current;\n if (!apmData.intersectTime && viewable) {\n apmData.intersectTime = Date.now();\n // 进入视窗前加载完成/失败\n if (apmData.loadedTime || apmData.errorReason) {\n pushApmData();\n }\n }\n }, [viewable, pushApmData, abortApmCollection]);\n const onLoadEnd = () => {\n props?.onLoadEnd?.();\n if (abortApmCollection) return;\n const apmData = apmDataRef.current;\n // 进入视窗后加载成功/失败\n if (apmData.intersectTime) {\n pushApmData();\n }\n };\n\n const onProgress = (e: NativeSyntheticEvent<ImageProgressEventDataIOS>) => {\n const {\n nativeEvent: { total, loaded },\n } = e;\n if (total) {\n setProgress(((loaded / total) * 100) | 0);\n }\n !abortApmCollection && (apmDataRef.current.imageSize = total);\n props.onProgress?.(e);\n };\n const onLoad = (e: NativeSyntheticEvent<ImageLoadEventData>) => {\n if (!abortApmCollection) {\n const now = Date.now();\n const loadDuration = now - apmDataRef.current.loadedStartTime;\n apmDataRef.current.loadedTime = now;\n apmDataRef.current.loadDuration = loadDuration < 0 ? 0 : loadDuration;\n apmDataRef.current.isSuccess = \"true\";\n }\n props.onLoad?.(e);\n setImageStatus(IMAGE_STATUS.LOADED);\n };\n\n const onLoadStart = () => {\n !abortApmCollection && (apmDataRef.current.loadedStartTime = Date.now());\n };\n\n const onError = (e: NativeSyntheticEvent<ImageErrorEventData>) => {\n if (!abortApmCollection) {\n apmDataRef.current.isSuccess = \"false\";\n apmDataRef.current.errorReason = `${e.nativeEvent.error}`;\n }\n props.onError?.(e);\n setImageStatus(errorStyle === TErrorStyle.ERROR ? IMAGE_STATUS.LOADERROR : IMAGE_STATUS.RELOAD);\n };\n const onReload = (e: GestureResponderEvent) => {\n setImageStatus(IMAGE_STATUS.HIDE);\n props.onReload?.(e);\n setTimeout(() => {\n setImageStatus(IMAGE_STATUS.LOADING);\n });\n };\n\n const colorMode = useColorMode();\n\n return (\n <View style={{ borderRadius, height, width, ...(style as {}) }}>\n {imageStatus !== IMAGE_STATUS.HIDE &&\n (!abortApmCollection ? (\n <VisibilitySensor onChange={checkIsVisible} disabled={apmDoneRef}>\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n </VisibilitySensor>\n ) : (\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n ))}\n {imageStatus === IMAGE_STATUS.LOADING && loadStyle !== TLoadStyle.NONE && (\n <View\n style={{\n width,\n height,\n borderRadius,\n ...styles.loadingContainer,\n backgroundColor: loadStyle === TLoadStyle.AVE ? aveColor : styles.loadingContainer.backgroundColor,\n ...style,\n }}\n >\n {loadStyle === TLoadStyle.BLUR && (\n <RNImage\n source={blurSource}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {loadStyle === TLoadStyle.LOADING && <CircularProgress progress={progress}></CircularProgress>}\n </View>\n )}\n {(imageStatus === IMAGE_STATUS.LOADERROR || imageStatus === IMAGE_STATUS.RELOAD) &&\n errorStyle !== TErrorStyle.NONE && (\n <TouchableOpacity\n activeOpacity={1}\n onPress={(e) => {\n onReload(e);\n }}\n style={{ width, height, borderRadius, ...styles.loadingContainer }}\n >\n <RNImage\n style={{ width: 40, height: 40 }}\n source={{\n uri: imageStatus === IMAGE_STATUS.RELOAD ? imageReLoad[colorMode] : imageError[colorMode],\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n />\n </TouchableOpacity>\n )}\n </View>\n );\n};\n\nImage.defaultProps = ImageDefaultProps;\n\nexport default memo(Image);\n"],"names":["imageReLoad","light","dark","platformLight","imageError","Image","src","_ref","_source","source","width","height","borderRadius","errorStyle","loadStyle","style","abortApmCollection","fadeDuration","onFirstDrawFinished","props","_objectWithoutProperties","_excluded","useMounted","_useState","useState","IMAGE_STATUS","LOADING","_useState2","_slicedToArray","imageStatus","setImageStatus","_useState3","_useState4","progress","setProgress","formatSource","useMemo","uri","formatUri","aveColor","useAveColor","defaultColor","lightColor","Fill1","loadingAve","TLoadStyle","AVE","blurSource","useBlur","_useState5","_useState6","viewable","setViewable","hasInit","useRef","checkIsVisible","isVisible","current","apmDataRef","isFirstScreen","imageUrl","imageHost","intersectTime","Date","now","imageSize","isPrefetch","isSuccess","errorReason","loadedStartTime","loadedTime","loadDuration","viewDuration","_useState7","_useState8","apmDoneRef","setApmDoneRef","useEffect","apmData","isLocalFile","isDataUri","URL","protocol","concat","host","error","RNImage","queryCache","uriEncodeImageUrl","encodeURI","then","res","pushApmData","useCallback","String","apmPush","convertKeysToSnakeCase","onLoadEnd","_props$onLoadEnd","call","onProgress","e","_props$onProgress","_e$nativeEvent","nativeEvent","total","loaded","onLoad","_props$onLoad","LOADED","onLoadStart","onError","_props$onError","TErrorStyle","ERROR","LOADERROR","RELOAD","onReload","_props$onReload","HIDE","setTimeout","colorMode","useColorMode","React","createElement","View","_objectSpread","VisibilitySensor","onChange","disabled","apmBiz","NONE","styles","loadingContainer","backgroundColor","BLUR","CircularProgress","TouchableOpacity","activeOpacity","onPress","defaultProps","ImageDefaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Image.js","sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import React, { useState, memo, useMemo, useEffect } from \"react\";\nimport {\n View,\n Image as RNImage,\n GestureResponderEvent,\n ImageProps,\n TouchableOpacity,\n ImageLoadEventData,\n NativeSyntheticEvent,\n ImageErrorEventData,\n ImageProgressEventDataIOS,\n ImageSourcePropType,\n} from \"react-native\";\nimport { RedsImage, ImageDefaultProps, IMAGE_STATUS, TErrorStyle, TLoadStyle } from \"./interface/index\";\nimport styles from \"./styles\";\nimport { useAveColor, useBlur, useImageId } from \"./hook\";\nimport CircularProgress from \"./CircularProgress\";\nimport { useColorMode } from \"../ConfigProvider\";\nimport useMounted from \"../../pvCount/useUnmountedProcess\";\nimport { lightColor } from \"@xhsreds/reds-token-next\";\nimport { formatUri } from \"./utils\";\nimport VisibilitySensor from \"./VisibilitySensor\";\nimport { ImageAPMManager } from \"./manager\";\n\nconst imageReLoad = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/4f9bfbf2358aa970f1ec3dbf4ba5ff9355b7a41e.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/06ae169b310c2926e541903b828486a80fcac404.png\",\n};\n\nconst imageError = {\n light: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n dark: \"https://picasso-static.xiaohongshu.com/fe-platform/7d8debb5e2c3a1f37299a292342b77d479be6f28.png\",\n platformLight: \"https://picasso-static.xiaohongshu.com/fe-platform/76fee5bba4ce3bbf3e9ff5fe1935b737bb27625a.png\",\n};\n\nconst Image = ({\n src,\n source: _source,\n width,\n height,\n borderRadius,\n errorStyle,\n loadStyle,\n style,\n abortApmCollection,\n fadeDuration,\n onFirstDrawFinished,\n apmBiz,\n ...props\n}: RedsImage & Omit<ImageProps, keyof RedsImage>) => {\n useMounted(\"Image\");\n\n // Generate stable ID for this image instance\n const imageId = useImageId();\n\n const [imageStatus, setImageStatus] = useState(IMAGE_STATUS.LOADING);\n const [progress, setProgress] = useState(0);\n const [viewable, setViewable] = useState(false);\n const [apmDone, setApmDone] = useState(false);\n\n const formatSource = useMemo(() => {\n // @ts-ignore\n if (_source) return { uri: formatUri({ uri: _source.uri, width }) };\n // @ts-ignore\n return { uri: formatUri({ uri: src, width }) } as ImageSourcePropType;\n }, [src, _source, width]);\n\n const aveColor = useAveColor({\n source: formatSource,\n defaultColor: lightColor.Fill1,\n loadingAve: loadStyle === TLoadStyle.AVE,\n });\n\n const blurSource = useBlur({ source: formatSource });\n\n // APM Manager Integration - Single effect for registration\n useEffect(() => {\n if (abortApmCollection) return;\n\n const manager = ImageAPMManager.getInstance();\n manager.register(imageId, formatSource, apmBiz);\n\n return () => manager.unregister(imageId);\n }, [imageId, abortApmCollection, apmBiz]);\n\n // Update source if it changes\n useEffect(() => {\n if (abortApmCollection) return;\n ImageAPMManager.getInstance().updateSource(imageId, formatSource);\n }, [formatSource, abortApmCollection, imageId]);\n\n // Visibility tracking - simplified\n const checkIsVisible = (isVisible: boolean) => {\n if (abortApmCollection) return;\n ImageAPMManager.getInstance().setViewable(imageId, isVisible);\n setViewable(isVisible);\n };\n\n // Event handlers - simplified to use manager\n const onLoadStart = () => {\n if (!abortApmCollection) {\n ImageAPMManager.getInstance().recordLoadStart(imageId);\n }\n };\n\n const onProgress = (e: NativeSyntheticEvent<ImageProgressEventDataIOS>) => {\n const {\n nativeEvent: { total, loaded },\n } = e;\n if (total) {\n setProgress(((loaded / total) * 100) | 0);\n }\n if (!abortApmCollection) {\n ImageAPMManager.getInstance().recordProgress(imageId, loaded, total);\n }\n props.onProgress?.(e);\n };\n\n const onLoad = (e: NativeSyntheticEvent<ImageLoadEventData>) => {\n if (!abortApmCollection) {\n ImageAPMManager.getInstance().recordLoad(imageId);\n }\n props.onLoad?.(e);\n setImageStatus(IMAGE_STATUS.LOADED);\n };\n\n const onError = (e: NativeSyntheticEvent<ImageErrorEventData>) => {\n if (!abortApmCollection) {\n ImageAPMManager.getInstance().recordError(imageId, `${e.nativeEvent.error}`);\n }\n props.onError?.(e);\n setImageStatus(errorStyle === TErrorStyle.ERROR ? IMAGE_STATUS.LOADERROR : IMAGE_STATUS.RELOAD);\n };\n\n const onLoadEnd = () => {\n if (!abortApmCollection) {\n ImageAPMManager.getInstance().checkAndPush(imageId);\n setApmDone(true);\n }\n props?.onLoadEnd?.();\n };\n\n const onReload = (e: GestureResponderEvent) => {\n setImageStatus(IMAGE_STATUS.HIDE);\n props.onReload?.(e);\n setTimeout(() => {\n setImageStatus(IMAGE_STATUS.LOADING);\n });\n };\n\n const colorMode = useColorMode();\n\n return (\n <View style={{ borderRadius, height, width, ...(style as {}) }}>\n {imageStatus !== IMAGE_STATUS.HIDE &&\n (!abortApmCollection ? (\n <VisibilitySensor onChange={checkIsVisible} disabled={apmDone}>\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n </VisibilitySensor>\n ) : (\n <RNImage\n {...props}\n // @ts-ignore\n source={formatSource}\n onLoadStart={onLoadStart}\n onLoad={onLoad}\n onProgress={onProgress}\n onError={onError}\n onLoadEnd={onLoadEnd}\n fadeDuration={fadeDuration}\n // @ts-ignore\n onFirstDrawFinished={(e) => onFirstDrawFinished(e)}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n // opacity: imageStatus === IMAGE_STATUS.LOADED ? 1 : 0,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n ))}\n {imageStatus === IMAGE_STATUS.LOADING && loadStyle !== TLoadStyle.NONE && (\n <View\n style={{\n width,\n height,\n borderRadius,\n ...styles.loadingContainer,\n backgroundColor: loadStyle === TLoadStyle.AVE ? aveColor : styles.loadingContainer.backgroundColor,\n ...style,\n }}\n >\n {loadStyle === TLoadStyle.BLUR && (\n <RNImage\n source={blurSource}\n style={{\n width: width || style?.width,\n height: height || style?.height,\n borderRadius,\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n ></RNImage>\n )}\n {loadStyle === TLoadStyle.LOADING && <CircularProgress progress={progress}></CircularProgress>}\n </View>\n )}\n {(imageStatus === IMAGE_STATUS.LOADERROR || imageStatus === IMAGE_STATUS.RELOAD) &&\n errorStyle !== TErrorStyle.NONE && (\n <TouchableOpacity\n activeOpacity={1}\n onPress={(e) => {\n onReload(e);\n }}\n style={{ width, height, borderRadius, ...styles.loadingContainer }}\n >\n <RNImage\n style={{ width: 40, height: 40 }}\n source={{\n uri: imageStatus === IMAGE_STATUS.RELOAD ? imageReLoad[colorMode] : imageError[colorMode],\n }}\n // @ts-ignore\n apmBiz={props.apmBiz}\n />\n </TouchableOpacity>\n )}\n </View>\n );\n};\n\nImage.defaultProps = ImageDefaultProps;\n\nexport default memo(Image);\n"],"names":["imageReLoad","light","dark","platformLight","imageError","Image","src","_ref","_source","source","width","height","borderRadius","errorStyle","loadStyle","style","abortApmCollection","fadeDuration","onFirstDrawFinished","apmBiz","props","_objectWithoutProperties","_excluded","useMounted","imageId","useImageId","_useState","useState","IMAGE_STATUS","LOADING","_useState2","_slicedToArray","imageStatus","setImageStatus","_useState3","_useState4","progress","setProgress","_useState5","_useState6","viewable","setViewable","_useState7","_useState8","apmDone","setApmDone","formatSource","useMemo","uri","formatUri","aveColor","useAveColor","defaultColor","lightColor","Fill1","loadingAve","TLoadStyle","AVE","blurSource","useBlur","useEffect","manager","ImageAPMManager","getInstance","register","unregister","updateSource","checkIsVisible","isVisible","onLoadStart","recordLoadStart","onProgress","e","_props$onProgress","_e$nativeEvent","nativeEvent","total","loaded","recordProgress","call","onLoad","_props$onLoad","recordLoad","LOADED","onError","_props$onError","recordError","concat","error","TErrorStyle","ERROR","LOADERROR","RELOAD","onLoadEnd","_props$onLoadEnd","checkAndPush","onReload","_props$onReload","HIDE","setTimeout","colorMode","useColorMode","React","createElement","View","_objectSpread","VisibilitySensor","onChange","disabled","RNImage","NONE","styles","loadingContainer","backgroundColor","BLUR","CircularProgress","TouchableOpacity","activeOpacity","onPress","defaultProps","ImageDefaultProps","memo"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { i as _objectWithoutProperties, _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/CAkwE9ZD.js';
1
+ import { i as _objectWithoutProperties, _ as _slicedToArray, a as _objectSpread2 } from '../../_chunks/DpFbw-p-.js';
2
2
  import React, { memo, useState, useMemo, useRef, useEffect, useCallback } from 'react';
3
3
  import { Image as Image$1, View, TouchableOpacity } from 'react-native';
4
4
  import { I as IMAGE_STATUS, T as TLoadStyle, a as ImageDefaultProps, b as TErrorStyle } from '../../_chunks/CMnjcQfl.js';
@@ -11,6 +11,7 @@ import { useColorMode } from '../ConfigProvider/hooks/themeToken/useColorMode.js
11
11
  import { formatUri, isLocalFile, isDataUri, convertKeysToSnakeCase } from './utils.js';
12
12
  import VisibilitySensor from './VisibilitySensor.js';
13
13
  import { apmPush } from './apm.js';
14
+ import './hook/useImageId.js';
14
15
  import '@xhs/reds-apm/src/index.native';
15
16
  import '../../pvCount/pvData.js';
16
17
  import '../ConfigProvider/hooks/ConfigContext/ConfigContext.js';