@momo-kits/native-kits 0.0.1-beta.4 → 0.0.1-beta.5
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.
- package/example/ios/Example/ComponentModel.swift +7 -2
- package/example/ios/Example/ContentView.swift +0 -14
- package/example/ios/Example/Foundation/ImageDemo.swift +43 -0
- package/example/ios/Example/Foundation/Popup/Popups.swift +2 -52
- package/example/ios/Example/Foundation/PopupDemo.swift +44 -21
- package/example/ios/Example/Foundation/TextInputDemo.swift +13 -8
- package/example/ios/Example/Library/CheckboxDemo.swift +19 -0
- package/example/ios/Example/Library/SwitchDemo.swift +19 -0
- package/example/ios/Example/Main.swift +17 -1
- package/example/ios/Example/Resource/foundation.json +2 -2
- package/example/ios/Example/Resource/library.json +10 -0
- package/example/ios/Example.xcodeproj/project.pbxproj +12 -1
- package/example/ios/Example.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +1 -1
- package/example/ios/Example.xcworkspace/xcuserdata/wem.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/example/ios/Podfile +2 -1
- package/example/ios/Podfile.lock +22 -3
- package/example/ios/Pods/Local Podspecs/MoMoUIKits.podspec.json +8 -0
- package/example/ios/Pods/Manifest.lock +22 -3
- package/example/ios/Pods/Pods.xcodeproj/project.pbxproj +1551 -165
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImage.xcscheme +58 -0
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SDWebImageSwiftUI.xcscheme +58 -0
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/SkeletonUI.xcscheme +58 -0
- package/example/ios/Pods/Pods.xcodeproj/xcuserdata/wem.xcuserdatad/xcschemes/xcschememanagement.plist +21 -0
- package/example/ios/Pods/SDWebImage/LICENSE +20 -0
- package/example/ios/Pods/SDWebImage/README.md +352 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.h +340 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.m +172 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.h +63 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.m +165 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.h +67 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.m +120 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.h +114 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.m +392 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.h +112 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.m +420 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.h +23 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.m +133 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.h +168 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.m +79 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.h +110 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.m +540 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.h +145 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.m +326 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.h +73 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.m +256 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.h +19 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.m +58 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.h +23 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.m +98 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.h +450 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.m +1030 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.h +153 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.m +68 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.h +156 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.m +138 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.h +81 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.m +556 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.h +297 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.m +26 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.h +153 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.m +822 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.h +58 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.m +130 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.h +36 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.m +28 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.h +22 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.m +58 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.h +28 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.m +127 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.h +25 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.m +101 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.h +58 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.m +807 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.h +30 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.m +420 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.h +146 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.m +170 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.h +40 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.m +123 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.h +241 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.m +331 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.h +78 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.m +158 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.h +32 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.m +39 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.h +36 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.m +39 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.h +95 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.m +17 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.h +352 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.m +149 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.h +314 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.m +658 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.h +113 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.m +60 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.h +49 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.m +55 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.h +191 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.m +722 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.h +69 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.m +71 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.h +69 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.m +73 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.h +32 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.m +16 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.h +115 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.m +275 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.h +290 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.m +775 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.h +27 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.m +14 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.h +72 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.m +59 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.h +143 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.m +303 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.h +131 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.m +194 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.h +387 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.m +234 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.h +24 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.m +23 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.h +46 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.m +60 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.h +26 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.m +22 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.h +27 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.m +47 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.h +89 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.m +221 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.h +80 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.m +47 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.h +146 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.m +824 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.h +129 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.m +76 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.h +194 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.m +67 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.h +110 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.m +446 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.h +48 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.m +82 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.h +24 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.m +42 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.h +14 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.m +29 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.h +21 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.m +92 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.h +18 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.m +32 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.h +29 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.m +227 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.h +19 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.m +127 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.h +23 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.m +164 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.h +21 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.m +83 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageIOAnimatedCoderInternal.h +39 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.h +122 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.m +13 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.h +20 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.m +79 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDWebImageTransitionInternal.h +19 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/SDmetamacros.h +667 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.h +18 -0
- package/example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.m +42 -0
- package/example/ios/Pods/SDWebImage/WebImage/SDWebImage.h +89 -0
- package/example/ios/Pods/SDWebImageSwiftUI/LICENSE +19 -0
- package/example/ios/Pods/SDWebImageSwiftUI/README.md +690 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/AnimatedImage.swift +870 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Backport.swift +59 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/OnChange.swift +52 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/Overlay.swift +124 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Backports/StateObject.swift +151 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Image.swift +78 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageManager.swift +132 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImagePlayer.swift +122 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/ImageViewWrapper.swift +133 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ActivityIndicator.swift +82 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/Indicator.swift +97 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Indicator/ProgressIndicator.swift +114 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SDWebImageSwiftUI.swift +64 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/SwiftUICompatibility.swift +92 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/Transition/Transition.swift +93 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Classes/WebImage.swift +509 -0
- package/example/ios/Pods/SDWebImageSwiftUI/SDWebImageSwiftUI/Module/SDWebImageSwiftUI.h +15 -0
- package/example/ios/Pods/SkeletonUI/LICENSE +21 -0
- package/example/ios/Pods/SkeletonUI/README.md +137 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AngleInteractor.swift +29 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Angle/AnglePresenter.swift +7 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Animation/AnimationInteractor.swift +56 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearanceInteractor.swift +58 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Appearance/AppearancePresenter.swift +5 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ClosedRange+Normalize.swift +16 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Image+OptionalType.swift +102 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/ModifiedContent+SkeletonModifier.swift +26 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Optional+OptionalType.swift +5 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/SecureField+OptionalType.swift +19 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Text+OptionalType.swift +27 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/TextField+OptionalType.swift +35 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/Toggle+OptionalType.swift +29 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/UnitPoint+Angle.swift +8 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Extensions/View+SkeletonModifier.swift +8 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Modifiers/SkeletonModifier.swift +52 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilineInteractor.swift +41 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Multiline/MultilinePresenter.swift +9 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityInteractor.swift +29 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Opacity/OpacityPresenter.swift +7 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionInteractor.swift +29 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Position/PositionPresenter.swift +7 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Protocols/OptionalType.swift +4 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusInteractor.swift +29 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Radius/RadiusPresenter.swift +7 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapeInteractor.swift +33 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Shape/ShapePresenter.swift +5 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonForEach.swift +20 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonInteractor.swift +27 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonList.swift +20 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonPresenter.swift +15 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonShape.swift +64 -0
- package/example/ios/Pods/SkeletonUI/Sources/SkeletonUI/Skeleton/SkeletonView.swift +25 -0
- package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.debug.xcconfig +4 -1
- package/example/ios/Pods/Target Support Files/MoMoUIKits/MoMoUIKits.release.xcconfig +4 -1
- package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.markdown +72 -0
- package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example-acknowledgements.plist +90 -0
- package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.debug.xcconfig +6 -5
- package/example/ios/Pods/Target Support Files/Pods-Example/Pods-Example.release.xcconfig +6 -5
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-dummy.m +5 -0
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-prefix.pch +12 -0
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-umbrella.h +75 -0
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.debug.xcconfig +14 -0
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.modulemap +6 -0
- package/example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.release.xcconfig +14 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-dummy.m +5 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-prefix.pch +12 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI-umbrella.h +17 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.debug.xcconfig +17 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.modulemap +6 -0
- package/example/ios/Pods/Target Support Files/SDWebImageSwiftUI/SDWebImageSwiftUI.release.xcconfig +17 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-dummy.m +5 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-prefix.pch +12 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI-umbrella.h +16 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.debug.xcconfig +12 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.modulemap +6 -0
- package/example/ios/Pods/Target Support Files/SkeletonUI/SkeletonUI.release.xcconfig +12 -0
- package/ios/Checkbox/Checkbox.swift +38 -0
- package/ios/{Colors+Spacing → Colors+Radius+Spacing}/Colors.swift +0 -0
- package/ios/Colors+Radius+Spacing/Radius.swift +22 -0
- package/ios/{Colors+Spacing → Colors+Radius+Spacing}/Spacing.swift +0 -0
- package/ios/Extensions/View++.swift +9 -0
- package/ios/Image/Image.swift +60 -0
- package/ios/Input/Input.swift +88 -38
- package/ios/OTPKeyboard/OTPKeyboard.swift +1 -1
- package/ios/Popup/PopupDisplay.swift +178 -0
- package/ios/PopupView/FullscreenPopup.swift +251 -0
- package/ios/{Popup → PopupView}/Modifiers.swift +6 -20
- package/ios/{Popup → PopupView}/PopupView.swift +38 -146
- package/ios/PopupView/Utils++.swift +281 -0
- package/ios/Switch/Switch.swift +44 -0
- package/ios/native-kits.podspec +2 -0
- package/package.json +1 -1
- package/ios/Colors+Spacing/Radius.swift +0 -11
- package/ios/Popup/Utils++.swift +0 -163
|
@@ -0,0 +1,164 @@
|
|
|
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 "SDImageAssetManager.h"
|
|
10
|
+
#import "SDInternalMacros.h"
|
|
11
|
+
|
|
12
|
+
static NSArray *SDBundlePreferredScales() {
|
|
13
|
+
static NSArray *scales;
|
|
14
|
+
static dispatch_once_t onceToken;
|
|
15
|
+
dispatch_once(&onceToken, ^{
|
|
16
|
+
#if SD_WATCH
|
|
17
|
+
CGFloat screenScale = [WKInterfaceDevice currentDevice].screenScale;
|
|
18
|
+
#elif SD_UIKIT
|
|
19
|
+
CGFloat screenScale = [UIScreen mainScreen].scale;
|
|
20
|
+
#elif SD_MAC
|
|
21
|
+
NSScreen *mainScreen = nil;
|
|
22
|
+
if (@available(macOS 10.12, *)) {
|
|
23
|
+
mainScreen = [NSScreen mainScreen];
|
|
24
|
+
} else {
|
|
25
|
+
mainScreen = [NSScreen screens].firstObject;
|
|
26
|
+
}
|
|
27
|
+
CGFloat screenScale = mainScreen.backingScaleFactor ?: 1.0f;
|
|
28
|
+
#endif
|
|
29
|
+
if (screenScale <= 1) {
|
|
30
|
+
scales = @[@1,@2,@3];
|
|
31
|
+
} else if (screenScale <= 2) {
|
|
32
|
+
scales = @[@2,@3,@1];
|
|
33
|
+
} else {
|
|
34
|
+
scales = @[@3,@2,@1];
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
return scales;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@implementation SDImageAssetManager {
|
|
41
|
+
SD_LOCK_DECLARE(_lock);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
+ (instancetype)sharedAssetManager {
|
|
45
|
+
static dispatch_once_t onceToken;
|
|
46
|
+
static SDImageAssetManager *assetManager;
|
|
47
|
+
dispatch_once(&onceToken, ^{
|
|
48
|
+
assetManager = [[SDImageAssetManager alloc] init];
|
|
49
|
+
});
|
|
50
|
+
return assetManager;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
- (instancetype)init {
|
|
54
|
+
self = [super init];
|
|
55
|
+
if (self) {
|
|
56
|
+
NSPointerFunctionsOptions valueOptions;
|
|
57
|
+
#if SD_MAC
|
|
58
|
+
// Apple says that NSImage use a weak reference to value
|
|
59
|
+
valueOptions = NSPointerFunctionsWeakMemory;
|
|
60
|
+
#else
|
|
61
|
+
// Apple says that UIImage use a strong reference to value
|
|
62
|
+
valueOptions = NSPointerFunctionsStrongMemory;
|
|
63
|
+
#endif
|
|
64
|
+
_imageTable = [NSMapTable mapTableWithKeyOptions:NSPointerFunctionsCopyIn valueOptions:valueOptions];
|
|
65
|
+
SD_LOCK_INIT(_lock);
|
|
66
|
+
#if SD_UIKIT
|
|
67
|
+
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveMemoryWarning:) name:UIApplicationDidReceiveMemoryWarningNotification object:nil];
|
|
68
|
+
#endif
|
|
69
|
+
}
|
|
70
|
+
return self;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
- (void)dealloc {
|
|
74
|
+
#if SD_UIKIT
|
|
75
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationDidReceiveMemoryWarningNotification object:nil];
|
|
76
|
+
#endif
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
- (void)didReceiveMemoryWarning:(NSNotification *)notification {
|
|
80
|
+
SD_LOCK(_lock);
|
|
81
|
+
[self.imageTable removeAllObjects];
|
|
82
|
+
SD_UNLOCK(_lock);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
- (NSString *)getPathForName:(NSString *)name bundle:(NSBundle *)bundle preferredScale:(CGFloat *)scale {
|
|
86
|
+
NSParameterAssert(name);
|
|
87
|
+
NSParameterAssert(bundle);
|
|
88
|
+
NSString *path;
|
|
89
|
+
if (name.length == 0) {
|
|
90
|
+
return path;
|
|
91
|
+
}
|
|
92
|
+
if ([name hasSuffix:@"/"]) {
|
|
93
|
+
return path;
|
|
94
|
+
}
|
|
95
|
+
NSString *extension = name.pathExtension;
|
|
96
|
+
if (extension.length == 0) {
|
|
97
|
+
// If no extension, follow Apple's doc, check PNG format
|
|
98
|
+
extension = @"png";
|
|
99
|
+
}
|
|
100
|
+
name = [name stringByDeletingPathExtension];
|
|
101
|
+
|
|
102
|
+
CGFloat providedScale = *scale;
|
|
103
|
+
NSArray *scales = SDBundlePreferredScales();
|
|
104
|
+
|
|
105
|
+
// Check if file name contains scale
|
|
106
|
+
for (size_t i = 0; i < scales.count; i++) {
|
|
107
|
+
NSNumber *scaleValue = scales[i];
|
|
108
|
+
if ([name hasSuffix:[NSString stringWithFormat:@"@%@x", scaleValue]]) {
|
|
109
|
+
path = [bundle pathForResource:name ofType:extension];
|
|
110
|
+
if (path) {
|
|
111
|
+
*scale = scaleValue.doubleValue; // override
|
|
112
|
+
return path;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Search with provided scale first
|
|
118
|
+
if (providedScale != 0) {
|
|
119
|
+
NSString *scaledName = [name stringByAppendingFormat:@"@%@x", @(providedScale)];
|
|
120
|
+
path = [bundle pathForResource:scaledName ofType:extension];
|
|
121
|
+
if (path) {
|
|
122
|
+
return path;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// Search with preferred scale
|
|
127
|
+
for (size_t i = 0; i < scales.count; i++) {
|
|
128
|
+
NSNumber *scaleValue = scales[i];
|
|
129
|
+
if (scaleValue.doubleValue == providedScale) {
|
|
130
|
+
// Ignore provided scale
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
NSString *scaledName = [name stringByAppendingFormat:@"@%@x", scaleValue];
|
|
134
|
+
path = [bundle pathForResource:scaledName ofType:extension];
|
|
135
|
+
if (path) {
|
|
136
|
+
*scale = scaleValue.doubleValue; // override
|
|
137
|
+
return path;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
// Search without scale
|
|
142
|
+
path = [bundle pathForResource:name ofType:extension];
|
|
143
|
+
|
|
144
|
+
return path;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
- (UIImage *)imageForName:(NSString *)name {
|
|
148
|
+
NSParameterAssert(name);
|
|
149
|
+
UIImage *image;
|
|
150
|
+
SD_LOCK(_lock);
|
|
151
|
+
image = [self.imageTable objectForKey:name];
|
|
152
|
+
SD_UNLOCK(_lock);
|
|
153
|
+
return image;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
- (void)storeImage:(UIImage *)image forName:(NSString *)name {
|
|
157
|
+
NSParameterAssert(image);
|
|
158
|
+
NSParameterAssert(name);
|
|
159
|
+
SD_LOCK(_lock);
|
|
160
|
+
[self.imageTable setObject:image forKey:name];
|
|
161
|
+
SD_UNLOCK(_lock);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
@end
|
|
@@ -0,0 +1,21 @@
|
|
|
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
|
+
|
|
12
|
+
/// This is used for operation management, but not for operation queue execute
|
|
13
|
+
@interface SDImageCachesManagerOperation : NSOperation
|
|
14
|
+
|
|
15
|
+
@property (nonatomic, assign, readonly) NSUInteger pendingCount;
|
|
16
|
+
|
|
17
|
+
- (void)beginWithTotalCount:(NSUInteger)totalCount;
|
|
18
|
+
- (void)completeOne;
|
|
19
|
+
- (void)done;
|
|
20
|
+
|
|
21
|
+
@end
|
|
@@ -0,0 +1,83 @@
|
|
|
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 "SDImageCachesManagerOperation.h"
|
|
10
|
+
#import "SDInternalMacros.h"
|
|
11
|
+
|
|
12
|
+
@implementation SDImageCachesManagerOperation {
|
|
13
|
+
SD_LOCK_DECLARE(_pendingCountLock);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@synthesize executing = _executing;
|
|
17
|
+
@synthesize finished = _finished;
|
|
18
|
+
@synthesize cancelled = _cancelled;
|
|
19
|
+
@synthesize pendingCount = _pendingCount;
|
|
20
|
+
|
|
21
|
+
- (instancetype)init {
|
|
22
|
+
if (self = [super init]) {
|
|
23
|
+
SD_LOCK_INIT(_pendingCountLock);
|
|
24
|
+
_pendingCount = 0;
|
|
25
|
+
}
|
|
26
|
+
return self;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
- (void)beginWithTotalCount:(NSUInteger)totalCount {
|
|
30
|
+
self.executing = YES;
|
|
31
|
+
self.finished = NO;
|
|
32
|
+
_pendingCount = totalCount;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
- (NSUInteger)pendingCount {
|
|
36
|
+
SD_LOCK(_pendingCountLock);
|
|
37
|
+
NSUInteger pendingCount = _pendingCount;
|
|
38
|
+
SD_UNLOCK(_pendingCountLock);
|
|
39
|
+
return pendingCount;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
- (void)completeOne {
|
|
43
|
+
SD_LOCK(_pendingCountLock);
|
|
44
|
+
_pendingCount = _pendingCount > 0 ? _pendingCount - 1 : 0;
|
|
45
|
+
SD_UNLOCK(_pendingCountLock);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
- (void)cancel {
|
|
49
|
+
self.cancelled = YES;
|
|
50
|
+
[self reset];
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
- (void)done {
|
|
54
|
+
self.finished = YES;
|
|
55
|
+
self.executing = NO;
|
|
56
|
+
[self reset];
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
- (void)reset {
|
|
60
|
+
SD_LOCK(_pendingCountLock);
|
|
61
|
+
_pendingCount = 0;
|
|
62
|
+
SD_UNLOCK(_pendingCountLock);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
- (void)setFinished:(BOOL)finished {
|
|
66
|
+
[self willChangeValueForKey:@"isFinished"];
|
|
67
|
+
_finished = finished;
|
|
68
|
+
[self didChangeValueForKey:@"isFinished"];
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
- (void)setExecuting:(BOOL)executing {
|
|
72
|
+
[self willChangeValueForKey:@"isExecuting"];
|
|
73
|
+
_executing = executing;
|
|
74
|
+
[self didChangeValueForKey:@"isExecuting"];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
- (void)setCancelled:(BOOL)cancelled {
|
|
78
|
+
[self willChangeValueForKey:@"isCancelled"];
|
|
79
|
+
_cancelled = cancelled;
|
|
80
|
+
[self didChangeValueForKey:@"isCancelled"];
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
@end
|
|
@@ -0,0 +1,39 @@
|
|
|
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 <ImageIO/ImageIO.h>
|
|
11
|
+
#import "SDImageIOAnimatedCoder.h"
|
|
12
|
+
|
|
13
|
+
// AVFileTypeHEIC/AVFileTypeHEIF is defined in AVFoundation via iOS 11, we use this without import AVFoundation
|
|
14
|
+
#define kSDUTTypeHEIC ((__bridge CFStringRef)@"public.heic")
|
|
15
|
+
#define kSDUTTypeHEIF ((__bridge CFStringRef)@"public.heif")
|
|
16
|
+
// HEIC Sequence (Animated Image)
|
|
17
|
+
#define kSDUTTypeHEICS ((__bridge CFStringRef)@"public.heics")
|
|
18
|
+
// kSDUTTypeWebP seems not defined in public UTI framework, Apple use the hardcode string, we define them :)
|
|
19
|
+
#define kSDUTTypeWebP ((__bridge CFStringRef)@"org.webmproject.webp")
|
|
20
|
+
|
|
21
|
+
#define kSDUTTypeImage ((__bridge CFStringRef)@"public.image")
|
|
22
|
+
#define kSDUTTypeJPEG ((__bridge CFStringRef)@"public.jpeg")
|
|
23
|
+
#define kSDUTTypePNG ((__bridge CFStringRef)@"public.png")
|
|
24
|
+
#define kSDUTTypeTIFF ((__bridge CFStringRef)@"public.tiff")
|
|
25
|
+
#define kSDUTTypeSVG ((__bridge CFStringRef)@"public.svg-image")
|
|
26
|
+
#define kSDUTTypeGIF ((__bridge CFStringRef)@"com.compuserve.gif")
|
|
27
|
+
#define kSDUTTypePDF ((__bridge CFStringRef)@"com.adobe.pdf")
|
|
28
|
+
#define kSDUTTypeBMP ((__bridge CFStringRef)@"com.microsoft.bmp")
|
|
29
|
+
#define kSDUTTypeRAW ((__bridge CFStringRef)@"public.camera-raw-image")
|
|
30
|
+
|
|
31
|
+
@interface SDImageIOAnimatedCoder ()
|
|
32
|
+
|
|
33
|
+
+ (NSTimeInterval)frameDurationAtIndex:(NSUInteger)index source:(nonnull CGImageSourceRef)source;
|
|
34
|
+
+ (NSUInteger)imageLoopCountWithSource:(nonnull CGImageSourceRef)source;
|
|
35
|
+
+ (nullable UIImage *)createFrameAtIndex:(NSUInteger)index source:(nonnull CGImageSourceRef)source scale:(CGFloat)scale preserveAspectRatio:(BOOL)preserveAspectRatio thumbnailSize:(CGSize)thumbnailSize lazyDecode:(BOOL)lazyDecode animatedImage:(BOOL)animatedImage;
|
|
36
|
+
+ (BOOL)canEncodeToFormat:(SDImageFormat)format;
|
|
37
|
+
+ (BOOL)canDecodeFromFormat:(SDImageFormat)format;
|
|
38
|
+
|
|
39
|
+
@end
|
|
@@ -0,0 +1,122 @@
|
|
|
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 <os/lock.h>
|
|
11
|
+
#import <libkern/OSAtomic.h>
|
|
12
|
+
#import "SDmetamacros.h"
|
|
13
|
+
|
|
14
|
+
#define SD_USE_OS_UNFAIR_LOCK TARGET_OS_MACCATALYST ||\
|
|
15
|
+
(__IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_10_0) ||\
|
|
16
|
+
(__MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_12) ||\
|
|
17
|
+
(__TV_OS_VERSION_MIN_REQUIRED >= __TVOS_10_0) ||\
|
|
18
|
+
(__WATCH_OS_VERSION_MIN_REQUIRED >= __WATCHOS_3_0)
|
|
19
|
+
|
|
20
|
+
#ifndef SD_LOCK_DECLARE
|
|
21
|
+
#if SD_USE_OS_UNFAIR_LOCK
|
|
22
|
+
#define SD_LOCK_DECLARE(lock) os_unfair_lock lock
|
|
23
|
+
#else
|
|
24
|
+
#define SD_LOCK_DECLARE(lock) os_unfair_lock lock API_AVAILABLE(ios(10.0), tvos(10), watchos(3), macos(10.12)); \
|
|
25
|
+
OSSpinLock lock##_deprecated;
|
|
26
|
+
#endif
|
|
27
|
+
#endif
|
|
28
|
+
|
|
29
|
+
#ifndef SD_LOCK_DECLARE_STATIC
|
|
30
|
+
#if SD_USE_OS_UNFAIR_LOCK
|
|
31
|
+
#define SD_LOCK_DECLARE_STATIC(lock) static os_unfair_lock lock
|
|
32
|
+
#else
|
|
33
|
+
#define SD_LOCK_DECLARE_STATIC(lock) static os_unfair_lock lock API_AVAILABLE(ios(10.0), tvos(10), watchos(3), macos(10.12)); \
|
|
34
|
+
static OSSpinLock lock##_deprecated;
|
|
35
|
+
#endif
|
|
36
|
+
#endif
|
|
37
|
+
|
|
38
|
+
#ifndef SD_LOCK_INIT
|
|
39
|
+
#if SD_USE_OS_UNFAIR_LOCK
|
|
40
|
+
#define SD_LOCK_INIT(lock) lock = OS_UNFAIR_LOCK_INIT
|
|
41
|
+
#else
|
|
42
|
+
#define SD_LOCK_INIT(lock) if (@available(iOS 10, tvOS 10, watchOS 3, macOS 10.12, *)) lock = OS_UNFAIR_LOCK_INIT; \
|
|
43
|
+
else lock##_deprecated = OS_SPINLOCK_INIT;
|
|
44
|
+
#endif
|
|
45
|
+
#endif
|
|
46
|
+
|
|
47
|
+
#ifndef SD_LOCK
|
|
48
|
+
#if SD_USE_OS_UNFAIR_LOCK
|
|
49
|
+
#define SD_LOCK(lock) os_unfair_lock_lock(&lock)
|
|
50
|
+
#else
|
|
51
|
+
#define SD_LOCK(lock) if (@available(iOS 10, tvOS 10, watchOS 3, macOS 10.12, *)) os_unfair_lock_lock(&lock); \
|
|
52
|
+
else OSSpinLockLock(&lock##_deprecated);
|
|
53
|
+
#endif
|
|
54
|
+
#endif
|
|
55
|
+
|
|
56
|
+
#ifndef SD_UNLOCK
|
|
57
|
+
#if SD_USE_OS_UNFAIR_LOCK
|
|
58
|
+
#define SD_UNLOCK(lock) os_unfair_lock_unlock(&lock)
|
|
59
|
+
#else
|
|
60
|
+
#define SD_UNLOCK(lock) if (@available(iOS 10, tvOS 10, watchOS 3, macOS 10.12, *)) os_unfair_lock_unlock(&lock); \
|
|
61
|
+
else OSSpinLockUnlock(&lock##_deprecated);
|
|
62
|
+
#endif
|
|
63
|
+
#endif
|
|
64
|
+
|
|
65
|
+
#ifndef SD_OPTIONS_CONTAINS
|
|
66
|
+
#define SD_OPTIONS_CONTAINS(options, value) (((options) & (value)) == (value))
|
|
67
|
+
#endif
|
|
68
|
+
|
|
69
|
+
#ifndef SD_CSTRING
|
|
70
|
+
#define SD_CSTRING(str) #str
|
|
71
|
+
#endif
|
|
72
|
+
|
|
73
|
+
#ifndef SD_NSSTRING
|
|
74
|
+
#define SD_NSSTRING(str) @(SD_CSTRING(str))
|
|
75
|
+
#endif
|
|
76
|
+
|
|
77
|
+
#ifndef SD_SEL_SPI
|
|
78
|
+
#define SD_SEL_SPI(name) NSSelectorFromString([NSString stringWithFormat:@"_%@", SD_NSSTRING(name)])
|
|
79
|
+
#endif
|
|
80
|
+
|
|
81
|
+
#ifndef weakify
|
|
82
|
+
#define weakify(...) \
|
|
83
|
+
sd_keywordify \
|
|
84
|
+
metamacro_foreach_cxt(sd_weakify_,, __weak, __VA_ARGS__)
|
|
85
|
+
#endif
|
|
86
|
+
|
|
87
|
+
#ifndef strongify
|
|
88
|
+
#define strongify(...) \
|
|
89
|
+
sd_keywordify \
|
|
90
|
+
_Pragma("clang diagnostic push") \
|
|
91
|
+
_Pragma("clang diagnostic ignored \"-Wshadow\"") \
|
|
92
|
+
metamacro_foreach(sd_strongify_,, __VA_ARGS__) \
|
|
93
|
+
_Pragma("clang diagnostic pop")
|
|
94
|
+
#endif
|
|
95
|
+
|
|
96
|
+
#define sd_weakify_(INDEX, CONTEXT, VAR) \
|
|
97
|
+
CONTEXT __typeof__(VAR) metamacro_concat(VAR, _weak_) = (VAR);
|
|
98
|
+
|
|
99
|
+
#define sd_strongify_(INDEX, VAR) \
|
|
100
|
+
__strong __typeof__(VAR) VAR = metamacro_concat(VAR, _weak_);
|
|
101
|
+
|
|
102
|
+
#if DEBUG
|
|
103
|
+
#define sd_keywordify autoreleasepool {}
|
|
104
|
+
#else
|
|
105
|
+
#define sd_keywordify try {} @catch (...) {}
|
|
106
|
+
#endif
|
|
107
|
+
|
|
108
|
+
#ifndef onExit
|
|
109
|
+
#define onExit \
|
|
110
|
+
sd_keywordify \
|
|
111
|
+
__strong sd_cleanupBlock_t metamacro_concat(sd_exitBlock_, __LINE__) __attribute__((cleanup(sd_executeCleanupBlock), unused)) = ^
|
|
112
|
+
#endif
|
|
113
|
+
|
|
114
|
+
typedef void (^sd_cleanupBlock_t)(void);
|
|
115
|
+
|
|
116
|
+
#if defined(__cplusplus)
|
|
117
|
+
extern "C" {
|
|
118
|
+
#endif
|
|
119
|
+
void sd_executeCleanupBlock (__strong sd_cleanupBlock_t *block);
|
|
120
|
+
#if defined(__cplusplus)
|
|
121
|
+
}
|
|
122
|
+
#endif
|
|
@@ -0,0 +1,13 @@
|
|
|
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 "SDInternalMacros.h"
|
|
10
|
+
|
|
11
|
+
void sd_executeCleanupBlock (__strong sd_cleanupBlock_t *block) {
|
|
12
|
+
(*block)();
|
|
13
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
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
|
+
|
|
12
|
+
/// A weak proxy which forward all the message to the target
|
|
13
|
+
@interface SDWeakProxy : NSProxy
|
|
14
|
+
|
|
15
|
+
@property (nonatomic, weak, readonly, nullable) id target;
|
|
16
|
+
|
|
17
|
+
- (nonnull instancetype)initWithTarget:(nonnull id)target;
|
|
18
|
+
+ (nonnull instancetype)proxyWithTarget:(nonnull id)target;
|
|
19
|
+
|
|
20
|
+
@end
|
|
@@ -0,0 +1,79 @@
|
|
|
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 "SDWeakProxy.h"
|
|
10
|
+
|
|
11
|
+
@implementation SDWeakProxy
|
|
12
|
+
|
|
13
|
+
- (instancetype)initWithTarget:(id)target {
|
|
14
|
+
_target = target;
|
|
15
|
+
return self;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
+ (instancetype)proxyWithTarget:(id)target {
|
|
19
|
+
return [[SDWeakProxy alloc] initWithTarget:target];
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
- (id)forwardingTargetForSelector:(SEL)selector {
|
|
23
|
+
return _target;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
- (void)forwardInvocation:(NSInvocation *)invocation {
|
|
27
|
+
void *null = NULL;
|
|
28
|
+
[invocation setReturnValue:&null];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
- (NSMethodSignature *)methodSignatureForSelector:(SEL)selector {
|
|
32
|
+
return [NSObject instanceMethodSignatureForSelector:@selector(init)];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
- (BOOL)respondsToSelector:(SEL)aSelector {
|
|
36
|
+
return [_target respondsToSelector:aSelector];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
- (BOOL)isEqual:(id)object {
|
|
40
|
+
return [_target isEqual:object];
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
- (NSUInteger)hash {
|
|
44
|
+
return [_target hash];
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
- (Class)superclass {
|
|
48
|
+
return [_target superclass];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
- (Class)class {
|
|
52
|
+
return [_target class];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
- (BOOL)isKindOfClass:(Class)aClass {
|
|
56
|
+
return [_target isKindOfClass:aClass];
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
- (BOOL)isMemberOfClass:(Class)aClass {
|
|
60
|
+
return [_target isMemberOfClass:aClass];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
- (BOOL)conformsToProtocol:(Protocol *)aProtocol {
|
|
64
|
+
return [_target conformsToProtocol:aProtocol];
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
- (BOOL)isProxy {
|
|
68
|
+
return YES;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
- (NSString *)description {
|
|
72
|
+
return [_target description];
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
- (NSString *)debugDescription {
|
|
76
|
+
return [_target debugDescription];
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@end
|
|
@@ -0,0 +1,19 @@
|
|
|
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 "SDWebImageCompat.h"
|
|
10
|
+
|
|
11
|
+
#if SD_MAC
|
|
12
|
+
|
|
13
|
+
#import <QuartzCore/QuartzCore.h>
|
|
14
|
+
|
|
15
|
+
/// Helper method for Core Animation transition
|
|
16
|
+
FOUNDATION_EXPORT CAMediaTimingFunction * _Nullable SDTimingFunctionFromAnimationOptions(SDWebImageAnimationOptions options);
|
|
17
|
+
FOUNDATION_EXPORT CATransition * _Nullable SDTransitionFromAnimationOptions(SDWebImageAnimationOptions options);
|
|
18
|
+
|
|
19
|
+
#endif
|