@momo-kits/native-kits 0.0.1-beta.5 → 0.89.1-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 (406) hide show
  1. package/README.md +1 -0
  2. package/android/.gradle/8.0/checksums/checksums.lock +0 -0
  3. package/android/.gradle/8.0/dependencies-accessors/dependencies-accessors.lock +0 -0
  4. package/android/.gradle/8.0/dependencies-accessors/gc.properties +0 -0
  5. package/android/.gradle/8.0/fileChanges/last-build.bin +0 -0
  6. package/android/.gradle/8.0/fileHashes/fileHashes.lock +0 -0
  7. package/android/.gradle/8.0/gc.properties +0 -0
  8. package/android/.gradle/config.properties +2 -0
  9. package/android/.gradle/vcs-1/gc.properties +0 -0
  10. package/android/.idea/gradle.xml +12 -0
  11. package/android/.idea/migrations.xml +10 -0
  12. package/android/.idea/misc.xml +10 -0
  13. package/android/.idea/vcs.xml +6 -0
  14. package/android/.idea/workspace.xml +50 -0
  15. package/android/build.gradle +35 -69
  16. package/android/local.properties +8 -0
  17. package/android/proguard-rules.pro +21 -0
  18. package/android/src/main/AndroidManifest.xml +2 -2
  19. package/android/src/main/java/com/momoplatform/nativekits/foundations/Button.kt +16 -0
  20. package/android/src/main/java/com/momoplatform/nativekits/libs/Logo.kt +63 -0
  21. package/android/src/main/java/com/momoplatform/nativekits/libs/TrustBanner.kt +246 -0
  22. package/android/src/main/res/drawable/ic_launcher_background.xml +170 -0
  23. package/android/src/main/res/drawable-v24/ic_launcher_foreground.xml +30 -0
  24. package/android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +6 -0
  25. package/android/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +6 -0
  26. package/android/src/main/res/mipmap-hdpi/ic_launcher.webp +0 -0
  27. package/android/src/main/res/mipmap-hdpi/ic_launcher_round.webp +0 -0
  28. package/android/src/main/res/mipmap-mdpi/ic_launcher.webp +0 -0
  29. package/android/src/main/res/mipmap-mdpi/ic_launcher_round.webp +0 -0
  30. package/android/src/main/res/mipmap-xhdpi/ic_launcher.webp +0 -0
  31. package/android/src/main/res/mipmap-xhdpi/ic_launcher_round.webp +0 -0
  32. package/android/src/main/res/mipmap-xxhdpi/ic_launcher.webp +0 -0
  33. package/android/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp +0 -0
  34. package/android/src/main/res/mipmap-xxxhdpi/ic_launcher.webp +0 -0
  35. package/android/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp +0 -0
  36. package/android/src/main/res/values/colors.xml +10 -0
  37. package/android/src/main/res/values/strings.xml +3 -0
  38. package/android/src/main/res/values/themes.xml +3 -0
  39. package/android/src/main/res/values-night/themes.xml +3 -0
  40. package/android/src/main/res/xml/backup_rules.xml +13 -0
  41. package/android/src/main/res/xml/data_extraction_rules.xml +19 -0
  42. package/build.gradle.kts +18 -0
  43. package/compose/build.gradle.kts +82 -0
  44. package/compose/src/androidMain/AndroidManifest.xml +2 -0
  45. package/compose/src/androidMain/kotlin/vn/momo/kits/utils/Platform.kt +3 -0
  46. package/compose/src/androidMain/kotlin/vn/momo/kits/utils/SetMaskFilter.kt +8 -0
  47. package/compose/src/androidMain/kotlin/vn/momo/kits/utils/Utils.android.kt +14 -0
  48. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Components.kt +194 -0
  49. package/compose/src/commonMain/kotlin/vn/momo/kits/application/NavigationContainer.kt +197 -0
  50. package/compose/src/commonMain/kotlin/vn/momo/kits/application/Screen.kt +133 -0
  51. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Badge.kt +62 -0
  52. package/compose/src/commonMain/kotlin/vn/momo/kits/components/BadgeDot.kt +27 -0
  53. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Button.kt +288 -0
  54. package/compose/src/commonMain/kotlin/vn/momo/kits/components/CheckBox.kt +80 -0
  55. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Divider.kt +23 -0
  56. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Icon.kt +42 -0
  57. package/compose/src/commonMain/kotlin/vn/momo/kits/components/IconButton.kt +126 -0
  58. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Image.kt +51 -0
  59. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Input.kt +299 -0
  60. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputMoney.kt +246 -0
  61. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputSearch.kt +223 -0
  62. package/compose/src/commonMain/kotlin/vn/momo/kits/components/InputTextArea.kt +244 -0
  63. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PopupNotify.kt +281 -0
  64. package/compose/src/commonMain/kotlin/vn/momo/kits/components/PromotionPopup.kt +72 -0
  65. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Radio.kt +65 -0
  66. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Skeleton.kt +64 -0
  67. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Switch.kt +63 -0
  68. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Tag.kt +73 -0
  69. package/compose/src/commonMain/kotlin/vn/momo/kits/components/Text.kt +42 -0
  70. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Colors.kt +150 -0
  71. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Radius.kt +12 -0
  72. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Spacing.kt +13 -0
  73. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Theme.kt +173 -0
  74. package/compose/src/commonMain/kotlin/vn/momo/kits/const/Typography.kt +242 -0
  75. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Card.kt +2 -0
  76. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Item.kt +2 -0
  77. package/compose/src/commonMain/kotlin/vn/momo/kits/layout/Section.kt +2 -0
  78. package/compose/src/commonMain/kotlin/vn/momo/kits/modifier/Shadow.kt +50 -0
  79. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Icons.kt +1321 -0
  80. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Platform.kt +3 -0
  81. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/SetMaskFilter.kt +5 -0
  82. package/compose/src/commonMain/kotlin/vn/momo/kits/utils/Utils.kt +97 -0
  83. package/compose/src/iosMain/kotlin/vn/momo/kits/utils/Platform.kt +3 -0
  84. package/compose/src/iosMain/kotlin/vn/momo/kits/utils/SetMaskFilter.kt +9 -0
  85. package/compose/src/iosMain/kotlin/vn/momo/kits/utils/Utils.ios.kt +18 -0
  86. package/gradle.properties +19 -0
  87. package/gradlew +240 -0
  88. package/gradlew.bat +91 -0
  89. package/ios/Button/Button.swift +9 -2
  90. package/ios/CalculatorKeyboard/CalculatorKeyboard.swift +126 -0
  91. package/ios/Colors+Radius+Spacing/Colors.swift +21 -19
  92. package/ios/Input/Input.swift +1 -0
  93. package/ios/OTPKeyboard/KeyboardButton.swift +12 -4
  94. package/ios/Popup/PopupDisplay.swift +72 -81
  95. package/ios/Popup/PopupInput.swift +96 -0
  96. package/ios/Popup/PopupPromotion.swift +52 -0
  97. package/ios/ScrollIndicator/ScrollIndicator.swift +79 -0
  98. package/ios/Template/Logo/Logo.swift +75 -0
  99. package/ios/Template/TrustBanner/TrustBanner.swift +189 -0
  100. package/ios/native-kits.podspec +1 -1
  101. package/local.properties +8 -0
  102. package/package.json +6 -6
  103. package/publish.sh +1 -10
  104. package/settings.gradle.kts +41 -0
  105. package/android/gradle.properties +0 -5
  106. package/android/src/main/java/com/momoplatform/nativekits/NativeKitsPackage.kt +0 -17
  107. package/android/src/main/java/com/momoplatform/nativekits/NativeKitsViewManager.kt +0 -20
  108. package/example/ios/Example/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -63
  109. package/example/ios/Example/Assets.xcassets/Background.colorset/Contents.json +0 -38
  110. package/example/ios/Example/Assets.xcassets/Border.colorset/Contents.json +0 -38
  111. package/example/ios/Example/Assets.xcassets/Card.colorset/Contents.json +0 -38
  112. package/example/ios/Example/Assets.xcassets/Contents.json +0 -6
  113. package/example/ios/Example/Assets.xcassets/Error.colorset/Contents.json +0 -38
  114. package/example/ios/Example/Assets.xcassets/Primary.colorset/Contents.json +0 -38
  115. package/example/ios/Example/Assets.xcassets/PrimaryDark.colorset/Contents.json +0 -38
  116. package/example/ios/Example/Assets.xcassets/PrimaryLight.colorset/Contents.json +0 -38
  117. package/example/ios/Example/Assets.xcassets/Secondary.colorset/Contents.json +0 -38
  118. package/example/ios/Example/Assets.xcassets/Success.colorset/Contents.json +0 -38
  119. package/example/ios/Example/Assets.xcassets/Text.colorset/Contents.json +0 -38
  120. package/example/ios/Example/Assets.xcassets/TextSecondary.colorset/Contents.json +0 -38
  121. package/example/ios/Example/Assets.xcassets/Warning.colorset/Contents.json +0 -38
  122. package/example/ios/Example/ComponentDetail.swift +0 -35
  123. package/example/ios/Example/ComponentItem.swift +0 -24
  124. package/example/ios/Example/ComponentModel.swift +0 -38
  125. package/example/ios/Example/ContentView.swift +0 -39
  126. package/example/ios/Example/Example.entitlements +0 -10
  127. package/example/ios/Example/Foundation/ButtonDemo.swift +0 -80
  128. package/example/ios/Example/Foundation/ImageDemo.swift +0 -43
  129. package/example/ios/Example/Foundation/Popup/ActionSheets.swift +0 -136
  130. package/example/ios/Example/Foundation/Popup/Floats.swift +0 -127
  131. package/example/ios/Example/Foundation/Popup/Popups.swift +0 -51
  132. package/example/ios/Example/Foundation/PopupDemo.swift +0 -389
  133. package/example/ios/Example/Foundation/TextInputDemo.swift +0 -36
  134. package/example/ios/Example/Foundation/TypographyDemo.swift +0 -53
  135. package/example/ios/Example/Foundation.swift +0 -26
  136. package/example/ios/Example/Info.plist +0 -18
  137. package/example/ios/Example/Library/CheckboxDemo.swift +0 -19
  138. package/example/ios/Example/Library/SwipeableDemo.swift +0 -105
  139. package/example/ios/Example/Library/SwitchDemo.swift +0 -19
  140. package/example/ios/Example/Library.swift +0 -26
  141. package/example/ios/Example/Main.swift +0 -27
  142. package/example/ios/Example/Overview.swift +0 -20
  143. package/example/ios/Example/Preview Content/Preview Assets.xcassets/Contents.json +0 -6
  144. package/example/ios/Example/Resource/SFProText-Black.ttf +0 -0
  145. package/example/ios/Example/Resource/SFProText-Bold.ttf +0 -0
  146. package/example/ios/Example/Resource/SFProText-Heavy.ttf +0 -0
  147. package/example/ios/Example/Resource/SFProText-Light.ttf +0 -0
  148. package/example/ios/Example/Resource/SFProText-Medium.ttf +0 -0
  149. package/example/ios/Example/Resource/SFProText-Regular.ttf +0 -0
  150. package/example/ios/Example/Resource/SFProText-Semibold.ttf +0 -0
  151. package/example/ios/Example/Resource/SFProText-Thin.ttf +0 -0
  152. package/example/ios/Example/Resource/SFProText-Ultralight.ttf +0 -0
  153. package/example/ios/Example/Resource/foundation.json +0 -33
  154. package/example/ios/Example/Resource/library.json +0 -18
  155. package/example/ios/Example/Utils.swift +0 -30
  156. package/example/ios/Example/ViewModifier/DarkViewModifier.swift +0 -22
  157. package/example/ios/Example.xcodeproj/project.pbxproj +0 -581
  158. package/example/ios/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  159. package/example/ios/Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  160. package/example/ios/Example.xcodeproj/project.xcworkspace/xcuserdata/wem.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  161. package/example/ios/Example.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  162. package/example/ios/Example.xcworkspace/contents.xcworkspacedata +0 -10
  163. package/example/ios/Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  164. package/example/ios/Example.xcworkspace/xcuserdata/wem.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  165. package/example/ios/Example.xcworkspace/xcuserdata/wem.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +0 -6
  166. package/example/ios/Podfile +0 -7
  167. package/example/ios/Podfile.lock +0 -35
  168. package/example/ios/Pods/Local Podspecs/MoMoUIKits.podspec.json +0 -37
  169. package/example/ios/Pods/Manifest.lock +0 -35
  170. package/example/ios/Pods/Pods.xcodeproj/project.pbxproj +0 -2047
  171. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/MoMoUIKits.xcscheme +0 -58
  172. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/Pods-Example.xcscheme +0 -58
  173. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImage.xcscheme +0 -58
  174. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +0 -58
  175. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SkeletonUI.xcscheme +0 -58
  176. package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +0 -46
  177. package/example/ios/Pods/SDWebImage/LICENSE +0 -20
  178. package/example/ios/Pods/SDWebImage/README.md +0 -352
  179. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.h +0 -340
  180. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.m +0 -172
  181. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.h +0 -63
  182. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.m +0 -165
  183. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.h +0 -67
  184. package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.m +0 -120
  185. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.h +0 -114
  186. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.m +0 -392
  187. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.h +0 -112
  188. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.m +0 -420
  189. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.h +0 -23
  190. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.m +0 -133
  191. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.h +0 -168
  192. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.m +0 -79
  193. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.h +0 -110
  194. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.m +0 -540
  195. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.h +0 -145
  196. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.m +0 -326
  197. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.h +0 -73
  198. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.m +0 -256
  199. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.h +0 -19
  200. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.m +0 -58
  201. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.h +0 -23
  202. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.m +0 -98
  203. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.h +0 -450
  204. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.m +0 -1030
  205. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.h +0 -153
  206. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.m +0 -68
  207. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.h +0 -156
  208. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.m +0 -138
  209. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.h +0 -81
  210. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.m +0 -556
  211. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.h +0 -297
  212. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.m +0 -26
  213. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.h +0 -153
  214. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.m +0 -822
  215. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.h +0 -58
  216. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.m +0 -130
  217. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.h +0 -36
  218. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.m +0 -28
  219. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.h +0 -22
  220. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.m +0 -58
  221. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.h +0 -28
  222. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.m +0 -127
  223. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.h +0 -25
  224. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.m +0 -101
  225. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.h +0 -58
  226. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.m +0 -807
  227. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.h +0 -30
  228. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.m +0 -420
  229. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.h +0 -146
  230. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.m +0 -170
  231. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.h +0 -40
  232. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.m +0 -123
  233. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.h +0 -241
  234. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.m +0 -331
  235. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.h +0 -78
  236. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.m +0 -158
  237. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.h +0 -32
  238. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.m +0 -39
  239. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.h +0 -36
  240. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.m +0 -39
  241. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.h +0 -95
  242. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.m +0 -17
  243. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.h +0 -352
  244. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.m +0 -149
  245. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.h +0 -314
  246. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.m +0 -658
  247. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.h +0 -113
  248. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.m +0 -60
  249. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.h +0 -49
  250. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.m +0 -55
  251. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.h +0 -191
  252. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.m +0 -722
  253. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.h +0 -69
  254. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.m +0 -71
  255. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.h +0 -69
  256. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.m +0 -73
  257. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.h +0 -32
  258. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.m +0 -16
  259. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.h +0 -115
  260. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.m +0 -275
  261. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.h +0 -290
  262. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.m +0 -775
  263. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.h +0 -27
  264. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.m +0 -14
  265. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.h +0 -72
  266. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.m +0 -59
  267. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.h +0 -143
  268. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.m +0 -303
  269. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.h +0 -131
  270. package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.m +0 -194
  271. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.h +0 -387
  272. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.m +0 -234
  273. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.h +0 -24
  274. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.m +0 -23
  275. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.h +0 -46
  276. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.m +0 -60
  277. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.h +0 -26
  278. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.m +0 -22
  279. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.h +0 -27
  280. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.m +0 -47
  281. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.h +0 -89
  282. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.m +0 -221
  283. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.h +0 -80
  284. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.m +0 -47
  285. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.h +0 -146
  286. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.m +0 -824
  287. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.h +0 -129
  288. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.m +0 -76
  289. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.h +0 -194
  290. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.m +0 -67
  291. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.h +0 -110
  292. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.m +0 -446
  293. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.h +0 -48
  294. package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.m +0 -82
  295. package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.h +0 -24
  296. package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.m +0 -42
  297. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.h +0 -14
  298. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.m +0 -29
  299. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.h +0 -21
  300. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.m +0 -92
  301. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.h +0 -18
  302. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.m +0 -32
  303. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.h +0 -29
  304. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.m +0 -227
  305. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.h +0 -19
  306. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.m +0 -127
  307. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.h +0 -23
  308. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.m +0 -164
  309. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.h +0 -21
  310. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.m +0 -83
  311. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageIOAnimatedCoderInternal.h +0 -39
  312. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.h +0 -122
  313. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.m +0 -13
  314. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.h +0 -20
  315. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.m +0 -79
  316. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWebImageTransitionInternal.h +0 -19
  317. package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDmetamacros.h +0 -667
  318. package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.h +0 -18
  319. package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.m +0 -42
  320. package/example/ios/Pods/SDWebImage/WebImage/SDWebImage.h +0 -89
  321. package/example/ios/Pods/SDWebImageSwiftUI/LICENSE +0 -19
  322. package/example/ios/Pods/SDWebImageSwiftUI/README.md +0 -690
  323. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/AnimatedImage.swift +0 -870
  324. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Backport.swift +0 -59
  325. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/OnChange.swift +0 -52
  326. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Overlay.swift +0 -124
  327. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/StateObject.swift +0 -151
  328. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Image.swift +0 -78
  329. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageManager.swift +0 -132
  330. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImagePlayer.swift +0 -122
  331. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageViewWrapper.swift +0 -133
  332. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ActivityIndicator.swift +0 -82
  333. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/Indicator.swift +0 -97
  334. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ProgressIndicator.swift +0 -114
  335. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SDWebImageSwiftUI.swift +0 -64
  336. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SwiftUICompatibility.swift +0 -92
  337. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Transition/Transition.swift +0 -93
  338. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/WebImage.swift +0 -509
  339. package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Module/SDWebImageSwiftUI.h +0 -15
  340. package/example/ios/Pods/SkeletonUI/LICENSE +0 -21
  341. package/example/ios/Pods/SkeletonUI/README.md +0 -137
  342. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AngleInteractor.swift +0 -29
  343. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AnglePresenter.swift +0 -7
  344. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Animation/AnimationInteractor.swift +0 -56
  345. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearanceInteractor.swift +0 -58
  346. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearancePresenter.swift +0 -5
  347. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ClosedRange+Normalize.swift +0 -16
  348. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Image+OptionalType.swift +0 -102
  349. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ModifiedContent+SkeletonModifier.swift +0 -26
  350. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Optional+OptionalType.swift +0 -5
  351. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/SecureField+OptionalType.swift +0 -19
  352. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Text+OptionalType.swift +0 -27
  353. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/TextField+OptionalType.swift +0 -35
  354. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Toggle+OptionalType.swift +0 -29
  355. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/UnitPoint+Angle.swift +0 -8
  356. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/View+SkeletonModifier.swift +0 -8
  357. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Modifiers/SkeletonModifier.swift +0 -52
  358. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilineInteractor.swift +0 -41
  359. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilinePresenter.swift +0 -9
  360. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityInteractor.swift +0 -29
  361. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityPresenter.swift +0 -7
  362. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionInteractor.swift +0 -29
  363. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionPresenter.swift +0 -7
  364. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Protocols/OptionalType.swift +0 -4
  365. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusInteractor.swift +0 -29
  366. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusPresenter.swift +0 -7
  367. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapeInteractor.swift +0 -33
  368. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapePresenter.swift +0 -5
  369. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonForEach.swift +0 -20
  370. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonInteractor.swift +0 -27
  371. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonList.swift +0 -20
  372. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonPresenter.swift +0 -15
  373. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonShape.swift +0 -64
  374. package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonView.swift +0 -25
  375. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-dummy.m +0 -5
  376. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-prefix.pch +0 -12
  377. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits-umbrella.h +0 -16
  378. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.debug.xcconfig +0 -15
  379. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.modulemap +0 -6
  380. package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.release.xcconfig +0 -15
  381. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.markdown +0 -75
  382. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.plist +0 -119
  383. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-dummy.m +0 -5
  384. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-umbrella.h +0 -16
  385. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.debug.xcconfig +0 -15
  386. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.modulemap +0 -6
  387. package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.release.xcconfig +0 -15
  388. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-dummy.m +0 -5
  389. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-prefix.pch +0 -12
  390. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-umbrella.h +0 -75
  391. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.debug.xcconfig +0 -14
  392. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.modulemap +0 -6
  393. package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.release.xcconfig +0 -14
  394. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-dummy.m +0 -5
  395. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-prefix.pch +0 -12
  396. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-umbrella.h +0 -17
  397. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.debug.xcconfig +0 -17
  398. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.modulemap +0 -6
  399. package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.release.xcconfig +0 -17
  400. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-dummy.m +0 -5
  401. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-prefix.pch +0 -12
  402. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-umbrella.h +0 -16
  403. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.debug.xcconfig +0 -12
  404. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.modulemap +0 -6
  405. package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.release.xcconfig +0 -12
  406. package/ios/Extensions/View++.swift +0 -9
@@ -1,27 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import <Foundation/Foundation.h>
10
-
11
- /// A protocol represents cancelable operation.
12
- @protocol SDWebImageOperation <NSObject>
13
-
14
- /// Cancel the operation
15
- - (void)cancel;
16
-
17
- @optional
18
-
19
- /// Whether the operation has been cancelled.
20
- @property (nonatomic, assign, readonly, getter=isCancelled) BOOL cancelled;
21
-
22
- @end
23
-
24
- /// NSOperation conform to `SDWebImageOperation`.
25
- @interface NSOperation (SDWebImageOperation) <SDWebImageOperation>
26
-
27
- @end
@@ -1,14 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import "SDWebImageOperation.h"
10
-
11
- /// NSOperation conform to `SDWebImageOperation`.
12
- @implementation NSOperation (SDWebImageOperation)
13
-
14
- @end
@@ -1,72 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import <Foundation/Foundation.h>
10
- #import "SDWebImageCompat.h"
11
- #import "SDWebImageDefine.h"
12
-
13
- @class SDWebImageOptionsResult;
14
-
15
- typedef SDWebImageOptionsResult * _Nullable(^SDWebImageOptionsProcessorBlock)(NSURL * _Nullable url, SDWebImageOptions options, SDWebImageContext * _Nullable context);
16
-
17
- /**
18
- The options result contains both options and context.
19
- */
20
- @interface SDWebImageOptionsResult : NSObject
21
-
22
- /**
23
- WebCache options.
24
- */
25
- @property (nonatomic, assign, readonly) SDWebImageOptions options;
26
-
27
- /**
28
- Context options.
29
- */
30
- @property (nonatomic, copy, readonly, nullable) SDWebImageContext *context;
31
-
32
- /**
33
- Create a new options result.
34
-
35
- @param options options
36
- @param context context
37
- @return The options result contains both options and context.
38
- */
39
- - (nonnull instancetype)initWithOptions:(SDWebImageOptions)options context:(nullable SDWebImageContext *)context;
40
-
41
- @end
42
-
43
- /**
44
- This is the protocol for options processor.
45
- Options processor can be used, to control the final result for individual image request's `SDWebImageOptions` and `SDWebImageContext`
46
- Implements the protocol to have a global control for each indivadual image request's option.
47
- */
48
- @protocol SDWebImageOptionsProcessor <NSObject>
49
-
50
- /**
51
- Return the processed options result for specify image URL, with its options and context
52
-
53
- @param url The URL to the image
54
- @param options A mask to specify options to use for this request
55
- @param context A context contains different options to perform specify changes or processes, see `SDWebImageContextOption`. This hold the extra objects which `options` enum can not hold.
56
- @return The processed result, contains both options and context
57
- */
58
- - (nullable SDWebImageOptionsResult *)processedResultForURL:(nullable NSURL *)url
59
- options:(SDWebImageOptions)options
60
- context:(nullable SDWebImageContext *)context;
61
-
62
- @end
63
-
64
- /**
65
- A options processor class with block.
66
- */
67
- @interface SDWebImageOptionsProcessor : NSObject<SDWebImageOptionsProcessor>
68
-
69
- - (nonnull instancetype)initWithBlock:(nonnull SDWebImageOptionsProcessorBlock)block;
70
- + (nonnull instancetype)optionsProcessorWithBlock:(nonnull SDWebImageOptionsProcessorBlock)block;
71
-
72
- @end
@@ -1,59 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import "SDWebImageOptionsProcessor.h"
10
-
11
- @interface SDWebImageOptionsResult ()
12
-
13
- @property (nonatomic, assign) SDWebImageOptions options;
14
- @property (nonatomic, copy, nullable) SDWebImageContext *context;
15
-
16
- @end
17
-
18
- @implementation SDWebImageOptionsResult
19
-
20
- - (instancetype)initWithOptions:(SDWebImageOptions)options context:(SDWebImageContext *)context {
21
- self = [super init];
22
- if (self) {
23
- self.options = options;
24
- self.context = context;
25
- }
26
- return self;
27
- }
28
-
29
- @end
30
-
31
- @interface SDWebImageOptionsProcessor ()
32
-
33
- @property (nonatomic, copy, nonnull) SDWebImageOptionsProcessorBlock block;
34
-
35
- @end
36
-
37
- @implementation SDWebImageOptionsProcessor
38
-
39
- - (instancetype)initWithBlock:(SDWebImageOptionsProcessorBlock)block {
40
- self = [super init];
41
- if (self) {
42
- self.block = block;
43
- }
44
- return self;
45
- }
46
-
47
- + (instancetype)optionsProcessorWithBlock:(SDWebImageOptionsProcessorBlock)block {
48
- SDWebImageOptionsProcessor *optionsProcessor = [[SDWebImageOptionsProcessor alloc] initWithBlock:block];
49
- return optionsProcessor;
50
- }
51
-
52
- - (SDWebImageOptionsResult *)processedResultForURL:(NSURL *)url options:(SDWebImageOptions)options context:(SDWebImageContext *)context {
53
- if (!self.block) {
54
- return nil;
55
- }
56
- return self.block(url, options, context);
57
- }
58
-
59
- @end
@@ -1,143 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import <Foundation/Foundation.h>
10
- #import "SDWebImageManager.h"
11
-
12
- @class SDWebImagePrefetcher;
13
-
14
- /**
15
- A token represents a list of URLs, can be used to cancel the download.
16
- */
17
- @interface SDWebImagePrefetchToken : NSObject <SDWebImageOperation>
18
-
19
- /**
20
- * Cancel the current prefetching.
21
- */
22
- - (void)cancel;
23
-
24
- /**
25
- list of URLs of current prefetching.
26
- */
27
- @property (nonatomic, copy, readonly, nullable) NSArray<NSURL *> *urls;
28
-
29
- @end
30
-
31
- /**
32
- The prefetcher delegate protocol
33
- */
34
- @protocol SDWebImagePrefetcherDelegate <NSObject>
35
-
36
- @optional
37
-
38
- /**
39
- * Called when an image was prefetched. Which means it's called when one URL from any of prefetching finished.
40
- *
41
- * @param imagePrefetcher The current image prefetcher
42
- * @param imageURL The image url that was prefetched
43
- * @param finishedCount The total number of images that were prefetched (successful or not)
44
- * @param totalCount The total number of images that were to be prefetched
45
- */
46
- - (void)imagePrefetcher:(nonnull SDWebImagePrefetcher *)imagePrefetcher didPrefetchURL:(nullable NSURL *)imageURL finishedCount:(NSUInteger)finishedCount totalCount:(NSUInteger)totalCount;
47
-
48
- /**
49
- * Called when all images are prefetched. Which means it's called when all URLs from all of prefetching finished.
50
- * @param imagePrefetcher The current image prefetcher
51
- * @param totalCount The total number of images that were prefetched (whether successful or not)
52
- * @param skippedCount The total number of images that were skipped
53
- */
54
- - (void)imagePrefetcher:(nonnull SDWebImagePrefetcher *)imagePrefetcher didFinishWithTotalCount:(NSUInteger)totalCount skippedCount:(NSUInteger)skippedCount;
55
-
56
- @end
57
-
58
- typedef void(^SDWebImagePrefetcherProgressBlock)(NSUInteger noOfFinishedUrls, NSUInteger noOfTotalUrls);
59
- typedef void(^SDWebImagePrefetcherCompletionBlock)(NSUInteger noOfFinishedUrls, NSUInteger noOfSkippedUrls);
60
-
61
- /**
62
- * Prefetch some URLs in the cache for future use. Images are downloaded in low priority.
63
- */
64
- @interface SDWebImagePrefetcher : NSObject
65
-
66
- /**
67
- * The web image manager used by prefetcher to prefetch images.
68
- * @note You can specify a standalone manager and downloader with custom configuration suitable for image prefetching. Such as `currentDownloadCount` or `downloadTimeout`.
69
- */
70
- @property (strong, nonatomic, readonly, nonnull) SDWebImageManager *manager;
71
-
72
- /**
73
- * Maximum number of URLs to prefetch at the same time. Defaults to 3.
74
- */
75
- @property (nonatomic, assign) NSUInteger maxConcurrentPrefetchCount;
76
-
77
- /**
78
- * The options for prefetcher. Defaults to SDWebImageLowPriority.
79
- */
80
- @property (nonatomic, assign) SDWebImageOptions options;
81
-
82
- /**
83
- * The context for prefetcher. Defaults to nil.
84
- */
85
- @property (nonatomic, copy, nullable) SDWebImageContext *context;
86
-
87
- /**
88
- * Queue options for prefetcher when call the progressBlock, completionBlock and delegate methods. Defaults to Main Queue.
89
- * @note The call is asynchronously to avoid blocking target queue.
90
- * @note The delegate queue should be set before any prefetching start and may not be changed during prefetching to avoid thread-safe problem.
91
- */
92
- @property (strong, nonatomic, nonnull) dispatch_queue_t delegateQueue;
93
-
94
- /**
95
- * The delegate for the prefetcher. Defaults to nil.
96
- */
97
- @property (weak, nonatomic, nullable) id <SDWebImagePrefetcherDelegate> delegate;
98
-
99
- /**
100
- * Returns the global shared image prefetcher instance. It use a standalone manager which is different from shared manager.
101
- */
102
- @property (nonatomic, class, readonly, nonnull) SDWebImagePrefetcher *sharedImagePrefetcher;
103
-
104
- /**
105
- * Allows you to instantiate a prefetcher with any arbitrary image manager.
106
- */
107
- - (nonnull instancetype)initWithImageManager:(nonnull SDWebImageManager *)manager NS_DESIGNATED_INITIALIZER;
108
-
109
- /**
110
- * Assign list of URLs to let SDWebImagePrefetcher to queue the prefetching. It based on the image manager so the image may from the cache and network according to the `options` property.
111
- * Prefetching is separate to each other, which means the progressBlock and completionBlock you provide is bind to the prefetching for the list of urls.
112
- * Attention that call this will not cancel previous fetched urls. You should keep the token return by this to cancel or cancel all the prefetch.
113
- *
114
- * @param urls list of URLs to prefetch
115
- * @return the token to cancel the current prefetching.
116
- */
117
- - (nullable SDWebImagePrefetchToken *)prefetchURLs:(nullable NSArray<NSURL *> *)urls;
118
-
119
- /**
120
- * Assign list of URLs to let SDWebImagePrefetcher to queue the prefetching. It based on the image manager so the image may from the cache and network according to the `options` property.
121
- * Prefetching is separate to each other, which means the progressBlock and completionBlock you provide is bind to the prefetching for the list of urls.
122
- * Attention that call this will not cancel previous fetched urls. You should keep the token return by this to cancel or cancel all the prefetch.
123
- *
124
- * @param urls list of URLs to prefetch
125
- * @param progressBlock block to be called when progress updates;
126
- * first parameter is the number of completed (successful or not) requests,
127
- * second parameter is the total number of images originally requested to be prefetched
128
- * @param completionBlock block to be called when the current prefetching is completed
129
- * first param is the number of completed (successful or not) requests,
130
- * second parameter is the number of skipped requests
131
- * @return the token to cancel the current prefetching.
132
- */
133
- - (nullable SDWebImagePrefetchToken *)prefetchURLs:(nullable NSArray<NSURL *> *)urls
134
- progress:(nullable SDWebImagePrefetcherProgressBlock)progressBlock
135
- completed:(nullable SDWebImagePrefetcherCompletionBlock)completionBlock;
136
-
137
- /**
138
- * Remove and cancel all the prefeching for the prefetcher.
139
- */
140
- - (void)cancelPrefetching;
141
-
142
-
143
- @end
@@ -1,303 +0,0 @@
1
- /*
2
- * This file is part of the SDWebImage package.
3
- * (c) Olivier Poitrey <rs@dailymotion.com>
4
- *
5
- * For the full copyright and license information, please view the LICENSE
6
- * file that was distributed with this source code.
7
- */
8
-
9
- #import "SDWebImagePrefetcher.h"
10
- #import "SDAsyncBlockOperation.h"
11
- #import "SDInternalMacros.h"
12
- #import <stdatomic.h>
13
-
14
- @interface SDWebImagePrefetchToken () {
15
- @public
16
- // Though current implementation, `SDWebImageManager` completion block is always on main queue. But however, there is no guarantee in docs. And we may introduce config to specify custom queue in the future.
17
- // These value are just used as incrementing counter, keep thread-safe using memory_order_relaxed for performance.
18
- atomic_ulong _skippedCount;
19
- atomic_ulong _finishedCount;
20
- atomic_flag _isAllFinished;
21
-
22
- unsigned long _totalCount;
23
-
24
- // Used to ensure NSPointerArray thread safe
25
- SD_LOCK_DECLARE(_prefetchOperationsLock);
26
- SD_LOCK_DECLARE(_loadOperationsLock);
27
- }
28
-
29
- @property (nonatomic, copy, readwrite) NSArray<NSURL *> *urls;
30
- @property (nonatomic, strong) NSPointerArray *loadOperations;
31
- @property (nonatomic, strong) NSPointerArray *prefetchOperations;
32
- @property (nonatomic, weak) SDWebImagePrefetcher *prefetcher;
33
- @property (nonatomic, copy, nullable) SDWebImagePrefetcherCompletionBlock completionBlock;
34
- @property (nonatomic, copy, nullable) SDWebImagePrefetcherProgressBlock progressBlock;
35
-
36
- @end
37
-
38
- @interface SDWebImagePrefetcher ()
39
-
40
- @property (strong, nonatomic, nonnull) SDWebImageManager *manager;
41
- @property (strong, atomic, nonnull) NSMutableSet<SDWebImagePrefetchToken *> *runningTokens;
42
- @property (strong, nonatomic, nonnull) NSOperationQueue *prefetchQueue;
43
-
44
- @end
45
-
46
- @implementation SDWebImagePrefetcher
47
-
48
- + (nonnull instancetype)sharedImagePrefetcher {
49
- static dispatch_once_t once;
50
- static id instance;
51
- dispatch_once(&once, ^{
52
- instance = [self new];
53
- });
54
- return instance;
55
- }
56
-
57
- - (nonnull instancetype)init {
58
- return [self initWithImageManager:[SDWebImageManager new]];
59
- }
60
-
61
- - (nonnull instancetype)initWithImageManager:(SDWebImageManager *)manager {
62
- if ((self = [super init])) {
63
- _manager = manager;
64
- _runningTokens = [NSMutableSet set];
65
- _options = SDWebImageLowPriority;
66
- _delegateQueue = dispatch_get_main_queue();
67
- _prefetchQueue = [NSOperationQueue new];
68
- self.maxConcurrentPrefetchCount = 3;
69
- }
70
- return self;
71
- }
72
-
73
- - (void)setMaxConcurrentPrefetchCount:(NSUInteger)maxConcurrentPrefetchCount {
74
- self.prefetchQueue.maxConcurrentOperationCount = maxConcurrentPrefetchCount;
75
- }
76
-
77
- - (NSUInteger)maxConcurrentPrefetchCount {
78
- return self.prefetchQueue.maxConcurrentOperationCount;
79
- }
80
-
81
- #pragma mark - Prefetch
82
- - (nullable SDWebImagePrefetchToken *)prefetchURLs:(nullable NSArray<NSURL *> *)urls {
83
- return [self prefetchURLs:urls progress:nil completed:nil];
84
- }
85
-
86
- - (nullable SDWebImagePrefetchToken *)prefetchURLs:(nullable NSArray<NSURL *> *)urls
87
- progress:(nullable SDWebImagePrefetcherProgressBlock)progressBlock
88
- completed:(nullable SDWebImagePrefetcherCompletionBlock)completionBlock {
89
- if (!urls || urls.count == 0) {
90
- if (completionBlock) {
91
- completionBlock(0, 0);
92
- }
93
- return nil;
94
- }
95
- SDWebImagePrefetchToken *token = [SDWebImagePrefetchToken new];
96
- token.prefetcher = self;
97
- token.urls = urls;
98
- token->_skippedCount = 0;
99
- token->_finishedCount = 0;
100
- token->_totalCount = token.urls.count;
101
- atomic_flag_clear(&(token->_isAllFinished));
102
- token.loadOperations = [NSPointerArray weakObjectsPointerArray];
103
- token.prefetchOperations = [NSPointerArray weakObjectsPointerArray];
104
- token.progressBlock = progressBlock;
105
- token.completionBlock = completionBlock;
106
- [self addRunningToken:token];
107
- [self startPrefetchWithToken:token];
108
-
109
- return token;
110
- }
111
-
112
- - (void)startPrefetchWithToken:(SDWebImagePrefetchToken * _Nonnull)token {
113
- for (NSURL *url in token.urls) {
114
- @weakify(self);
115
- SDAsyncBlockOperation *prefetchOperation = [SDAsyncBlockOperation blockOperationWithBlock:^(SDAsyncBlockOperation * _Nonnull asyncOperation) {
116
- @strongify(self);
117
- if (!self || asyncOperation.isCancelled) {
118
- return;
119
- }
120
- id<SDWebImageOperation> operation = [self.manager loadImageWithURL:url options:self.options context:self.context progress:nil completed:^(UIImage * _Nullable image, NSData * _Nullable data, NSError * _Nullable error, SDImageCacheType cacheType, BOOL finished, NSURL * _Nullable imageURL) {
121
- @strongify(self);
122
- if (!self) {
123
- return;
124
- }
125
- if (!finished) {
126
- return;
127
- }
128
- atomic_fetch_add_explicit(&(token->_finishedCount), 1, memory_order_relaxed);
129
- if (error) {
130
- // Add last failed
131
- atomic_fetch_add_explicit(&(token->_skippedCount), 1, memory_order_relaxed);
132
- }
133
-
134
- // Current operation finished
135
- [self callProgressBlockForToken:token imageURL:imageURL];
136
-
137
- if (atomic_load_explicit(&(token->_finishedCount), memory_order_relaxed) == token->_totalCount) {
138
- // All finished
139
- if (!atomic_flag_test_and_set_explicit(&(token->_isAllFinished), memory_order_relaxed)) {
140
- [self callCompletionBlockForToken:token];
141
- [self removeRunningToken:token];
142
- }
143
- }
144
- [asyncOperation complete];
145
- }];
146
- NSAssert(operation != nil, @"Operation should not be nil, [SDWebImageManager loadImageWithURL:options:context:progress:completed:] break prefetch logic");
147
- SD_LOCK(token->_loadOperationsLock);
148
- [token.loadOperations addPointer:(__bridge void *)operation];
149
- SD_UNLOCK(token->_loadOperationsLock);
150
- }];
151
- SD_LOCK(token->_prefetchOperationsLock);
152
- [token.prefetchOperations addPointer:(__bridge void *)prefetchOperation];
153
- SD_UNLOCK(token->_prefetchOperationsLock);
154
- [self.prefetchQueue addOperation:prefetchOperation];
155
- }
156
- }
157
-
158
- #pragma mark - Cancel
159
- - (void)cancelPrefetching {
160
- @synchronized(self.runningTokens) {
161
- NSSet<SDWebImagePrefetchToken *> *copiedTokens = [self.runningTokens copy];
162
- [copiedTokens makeObjectsPerformSelector:@selector(cancel)];
163
- [self.runningTokens removeAllObjects];
164
- }
165
- }
166
-
167
- - (void)callProgressBlockForToken:(SDWebImagePrefetchToken *)token imageURL:(NSURL *)url {
168
- if (!token) {
169
- return;
170
- }
171
- BOOL shouldCallDelegate = [self.delegate respondsToSelector:@selector(imagePrefetcher:didPrefetchURL:finishedCount:totalCount:)];
172
- NSUInteger tokenFinishedCount = [self tokenFinishedCount];
173
- NSUInteger tokenTotalCount = [self tokenTotalCount];
174
- NSUInteger finishedCount = atomic_load_explicit(&(token->_finishedCount), memory_order_relaxed);
175
- NSUInteger totalCount = token->_totalCount;
176
- dispatch_async(self.delegateQueue, ^{
177
- if (shouldCallDelegate) {
178
- [self.delegate imagePrefetcher:self didPrefetchURL:url finishedCount:tokenFinishedCount totalCount:tokenTotalCount];
179
- }
180
- if (token.progressBlock) {
181
- token.progressBlock(finishedCount, totalCount);
182
- }
183
- });
184
- }
185
-
186
- - (void)callCompletionBlockForToken:(SDWebImagePrefetchToken *)token {
187
- if (!token) {
188
- return;
189
- }
190
- BOOL shoulCallDelegate = [self.delegate respondsToSelector:@selector(imagePrefetcher:didFinishWithTotalCount:skippedCount:)] && ([self countOfRunningTokens] == 1); // last one
191
- NSUInteger tokenTotalCount = [self tokenTotalCount];
192
- NSUInteger tokenSkippedCount = [self tokenSkippedCount];
193
- NSUInteger finishedCount = atomic_load_explicit(&(token->_finishedCount), memory_order_relaxed);
194
- NSUInteger skippedCount = atomic_load_explicit(&(token->_skippedCount), memory_order_relaxed);
195
- dispatch_async(self.delegateQueue, ^{
196
- if (shoulCallDelegate) {
197
- [self.delegate imagePrefetcher:self didFinishWithTotalCount:tokenTotalCount skippedCount:tokenSkippedCount];
198
- }
199
- if (token.completionBlock) {
200
- token.completionBlock(finishedCount, skippedCount);
201
- }
202
- });
203
- }
204
-
205
- #pragma mark - Helper
206
- - (NSUInteger)tokenTotalCount {
207
- NSUInteger tokenTotalCount = 0;
208
- @synchronized (self.runningTokens) {
209
- for (SDWebImagePrefetchToken *token in self.runningTokens) {
210
- tokenTotalCount += token->_totalCount;
211
- }
212
- }
213
- return tokenTotalCount;
214
- }
215
-
216
- - (NSUInteger)tokenSkippedCount {
217
- NSUInteger tokenSkippedCount = 0;
218
- @synchronized (self.runningTokens) {
219
- for (SDWebImagePrefetchToken *token in self.runningTokens) {
220
- tokenSkippedCount += atomic_load_explicit(&(token->_skippedCount), memory_order_relaxed);
221
- }
222
- }
223
- return tokenSkippedCount;
224
- }
225
-
226
- - (NSUInteger)tokenFinishedCount {
227
- NSUInteger tokenFinishedCount = 0;
228
- @synchronized (self.runningTokens) {
229
- for (SDWebImagePrefetchToken *token in self.runningTokens) {
230
- tokenFinishedCount += atomic_load_explicit(&(token->_finishedCount), memory_order_relaxed);
231
- }
232
- }
233
- return tokenFinishedCount;
234
- }
235
-
236
- - (void)addRunningToken:(SDWebImagePrefetchToken *)token {
237
- if (!token) {
238
- return;
239
- }
240
- @synchronized (self.runningTokens) {
241
- [self.runningTokens addObject:token];
242
- }
243
- }
244
-
245
- - (void)removeRunningToken:(SDWebImagePrefetchToken *)token {
246
- if (!token) {
247
- return;
248
- }
249
- @synchronized (self.runningTokens) {
250
- [self.runningTokens removeObject:token];
251
- }
252
- }
253
-
254
- - (NSUInteger)countOfRunningTokens {
255
- NSUInteger count = 0;
256
- @synchronized (self.runningTokens) {
257
- count = self.runningTokens.count;
258
- }
259
- return count;
260
- }
261
-
262
- @end
263
-
264
- @implementation SDWebImagePrefetchToken
265
-
266
- - (instancetype)init {
267
- self = [super init];
268
- if (self) {
269
- SD_LOCK_INIT(_prefetchOperationsLock);
270
- SD_LOCK_INIT(_loadOperationsLock);
271
- }
272
- return self;
273
- }
274
-
275
- - (void)cancel {
276
- SD_LOCK(_prefetchOperationsLock);
277
- [self.prefetchOperations compact];
278
- for (id operation in self.prefetchOperations) {
279
- id<SDWebImageOperation> strongOperation = operation;
280
- if (strongOperation) {
281
- [strongOperation cancel];
282
- }
283
- }
284
- self.prefetchOperations.count = 0;
285
- SD_UNLOCK(_prefetchOperationsLock);
286
-
287
- SD_LOCK(_loadOperationsLock);
288
- [self.loadOperations compact];
289
- for (id operation in self.loadOperations) {
290
- id<SDWebImageOperation> strongOperation = operation;
291
- if (strongOperation) {
292
- [strongOperation cancel];
293
- }
294
- }
295
- self.loadOperations.count = 0;
296
- SD_UNLOCK(_loadOperationsLock);
297
-
298
- self.completionBlock = nil;
299
- self.progressBlock = nil;
300
- [self.prefetcher removeRunningToken:self];
301
- }
302
-
303
- @end