├── .gitignore ├── Cartfile.resolved ├── Carthage ├── Build │ └── iOS │ │ ├── 2AA92067-E420-39C6-972B-CF480CFD273E.bcsymbolmap │ │ ├── AFNetworking.framework.dSYM │ │ └── Contents │ │ │ ├── Info.plist │ │ │ └── Resources │ │ │ └── DWARF │ │ │ └── AFNetworking │ │ ├── AFNetworking.framework │ │ ├── AFNetworking │ │ ├── Headers │ │ │ ├── AFAutoPurgingImageCache.h │ │ │ ├── AFHTTPSessionManager.h │ │ │ ├── AFImageDownloader.h │ │ │ ├── AFNetworkActivityIndicatorManager.h │ │ │ ├── AFNetworkReachabilityManager.h │ │ │ ├── AFNetworking.h │ │ │ ├── AFSecurityPolicy.h │ │ │ ├── AFURLRequestSerialization.h │ │ │ ├── AFURLResponseSerialization.h │ │ │ ├── AFURLSessionManager.h │ │ │ ├── UIActivityIndicatorView+AFNetworking.h │ │ │ ├── UIButton+AFNetworking.h │ │ │ ├── UIImage+AFNetworking.h │ │ │ ├── UIImageView+AFNetworking.h │ │ │ ├── UIProgressView+AFNetworking.h │ │ │ ├── UIRefreshControl+AFNetworking.h │ │ │ └── UIWebView+AFNetworking.h │ │ ├── Info.plist │ │ └── Modules │ │ │ └── module.modulemap │ │ ├── DAD2DFF8-96E9-3220-B58B-6EA0B41EB70D.bcsymbolmap │ │ ├── E2895028-276E-34E0-8DDC-85B241AD0A1C.bcsymbolmap │ │ ├── ECE5583A-4B57-36FB-B6A3-AC929F98119A.bcsymbolmap │ │ ├── WebImage.framework.dSYM │ │ └── Contents │ │ │ ├── Info.plist │ │ │ └── Resources │ │ │ └── DWARF │ │ │ └── WebImage │ │ └── WebImage.framework │ │ ├── Headers │ │ ├── MKAnnotationView+WebCache.h │ │ ├── NSData+ImageContentType.h │ │ ├── SDImageCache.h │ │ ├── SDWebImageCompat.h │ │ ├── SDWebImageDecoder.h │ │ ├── SDWebImageDownloader.h │ │ ├── SDWebImageDownloaderOperation.h │ │ ├── SDWebImageManager.h │ │ ├── SDWebImageOperation.h │ │ ├── SDWebImagePrefetcher.h │ │ ├── UIButton+WebCache.h │ │ ├── UIImage+GIF.h │ │ ├── UIImage+MultiFormat.h │ │ ├── UIImage+WebP.h │ │ ├── UIImageView+HighlightedWebCache.h │ │ ├── UIImageView+WebCache.h │ │ ├── UIView+WebCacheOperation.h │ │ └── WebImage.h │ │ ├── Info.plist │ │ ├── Modules │ │ └── module.modulemap │ │ └── WebImage └── Checkouts │ ├── AFNetworking │ ├── .cocoadocs.yml │ ├── .gitignore │ ├── .travis.yml │ ├── AFNetworking.podspec │ ├── AFNetworking.xcodeproj │ │ ├── project.pbxproj │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ ├── AFNetworking OS X.xcscheme │ │ │ ├── AFNetworking iOS.xcscheme │ │ │ ├── AFNetworking tvOS.xcscheme │ │ │ └── AFNetworking watchOS.xcscheme │ ├── AFNetworking │ │ ├── AFHTTPSessionManager.h │ │ ├── AFHTTPSessionManager.m │ │ ├── AFNetworkReachabilityManager.h │ │ ├── AFNetworkReachabilityManager.m │ │ ├── AFNetworking.h │ │ ├── AFSecurityPolicy.h │ │ ├── AFSecurityPolicy.m │ │ ├── AFURLRequestSerialization.h │ │ ├── AFURLRequestSerialization.m │ │ ├── AFURLResponseSerialization.h │ │ ├── AFURLResponseSerialization.m │ │ ├── AFURLSessionManager.h │ │ └── AFURLSessionManager.m │ ├── CHANGELOG.md │ ├── CONTRIBUTING.md │ ├── Carthage │ │ └── Build │ ├── Example │ │ ├── AFNetworking Example.entitlements │ │ ├── AFNetworking Example.xcodeproj │ │ │ ├── project.pbxproj │ │ │ └── xcshareddata │ │ │ │ └── xcschemes │ │ │ │ ├── OS X Example.xcscheme │ │ │ │ ├── Today Extension Example.xcscheme │ │ │ │ ├── iOS Example.xcscheme │ │ │ │ ├── tvOS Example.xcscheme │ │ │ │ └── watchOS Example.xcscheme │ │ ├── AFNetworking tvOS Example.xcodeproj │ │ │ └── project.pbxproj │ │ ├── AFNetworking watchOS │ │ │ ├── Assets.xcassets │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ └── Interface.storyboard │ │ │ └── Info.plist │ │ ├── Assets.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ ├── Contents.json │ │ │ │ ├── Icon-40.png │ │ │ │ ├── Icon-40@2x.png │ │ │ │ ├── Icon-40@3x.png │ │ │ │ ├── Icon-60@2x.png │ │ │ │ ├── Icon-60@3x.png │ │ │ │ ├── Icon-76.png │ │ │ │ ├── Icon-76@2x.png │ │ │ │ ├── Icon-Small.png │ │ │ │ ├── Icon-Small@2x.png │ │ │ │ └── Icon-Small@3x.png │ │ │ ├── Contents.json │ │ │ └── profile-image-placeholder.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── profile-image-placeholder.png │ │ │ │ └── profile-image-placeholder@2x.png │ │ ├── Certificates │ │ │ ├── adn.cer │ │ │ ├── digicert_ca_3.cer │ │ │ └── root_ca.cer │ │ ├── Classes │ │ │ ├── Models │ │ │ │ ├── Post.h │ │ │ │ ├── Post.m │ │ │ │ ├── User.h │ │ │ │ └── User.m │ │ │ └── Networking Extensions │ │ │ │ ├── AFAppDotNetAPIClient.h │ │ │ │ └── AFAppDotNetAPIClient.m │ │ ├── OS X Example │ │ │ ├── AppDelegate.h │ │ │ ├── AppDelegate.m │ │ │ ├── Assets.xcassets │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ ├── Info.plist │ │ │ ├── MainMenu.xib │ │ │ └── main.m │ │ ├── Prefix.pch │ │ ├── Today Extension Example │ │ │ ├── Base.lproj │ │ │ │ └── MainInterface.storyboard │ │ │ ├── Info.plist │ │ │ ├── TodayViewController.h │ │ │ └── TodayViewController.m │ │ ├── en.lproj │ │ │ └── MainMenu.xib │ │ ├── iOS Example │ │ │ ├── AppDelegate.h │ │ │ ├── AppDelegate.m │ │ │ ├── Controllers │ │ │ │ ├── GlobalTimelineViewController.h │ │ │ │ └── GlobalTimelineViewController.m │ │ │ ├── Info.plist │ │ │ ├── Launchscreen.storyboard │ │ │ └── Views │ │ │ │ ├── PostTableViewCell.h │ │ │ │ └── PostTableViewCell.m │ │ ├── main.m │ │ ├── tvOS Example │ │ │ ├── AFNetworking tvOS Example-Bridging-Header.h │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets │ │ │ │ ├── App Icon & Top Shelf Image.brandassets │ │ │ │ │ ├── App Icon - Large.imagestack │ │ │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── App Icon - Small.imagestack │ │ │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── Top Shelf Image.imageset │ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ └── LaunchImage.launchimage │ │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ │ └── Main.storyboard │ │ │ ├── Gravatar.swift │ │ │ ├── Info.plist │ │ │ └── ViewController.swift │ │ ├── watchOS Example Extension │ │ │ ├── Assets.xcassets │ │ │ │ └── README__ignoredByTemplate__ │ │ │ ├── ExtensionDelegate.h │ │ │ ├── ExtensionDelegate.m │ │ │ ├── Info.plist │ │ │ ├── InterfaceController.h │ │ │ └── InterfaceController.m │ │ └── watchOS Example │ │ │ ├── Assets.xcassets │ │ │ └── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj │ │ │ └── Interface.storyboard │ │ │ └── Info.plist │ ├── Framework │ │ ├── AFNetworking.h │ │ ├── Info.plist │ │ └── module.modulemap │ ├── LICENSE │ ├── README.md │ ├── Tests │ │ ├── Info.plist │ │ ├── Resources │ │ │ ├── ADN.net │ │ │ │ └── ADNNetServerTrustChain │ │ │ │ │ ├── adn_0.cer │ │ │ │ │ ├── adn_1.cer │ │ │ │ │ └── adn_2.cer │ │ │ ├── Google.com │ │ │ │ ├── Equifax_Secure_Certificate_Authority_Root.cer │ │ │ │ ├── GeoTrust_Global_CA-cross.cer │ │ │ │ ├── GeoTrust_Global_CA_Root.cer │ │ │ │ ├── GoogleComServerTrustChainPath1 │ │ │ │ │ ├── googlecom_0.cer │ │ │ │ │ └── googlecom_1.cer │ │ │ │ ├── GoogleComServerTrustChainPath2 │ │ │ │ │ ├── googlecom_0.cer │ │ │ │ │ ├── googlecom_1.cer │ │ │ │ │ └── googlecom_2.cer │ │ │ │ ├── GoogleInternetAuthorityG2.cer │ │ │ │ └── google.com.cer │ │ │ ├── HTTPBin.org │ │ │ │ ├── AddTrust_External_CA_Root.cer │ │ │ │ ├── COMODO_RSA_Certification_Authority.cer │ │ │ │ ├── COMODO_RSA_Domain_Validation_Secure_Server_CA.cer │ │ │ │ ├── HTTPBinOrgServerTrustChain │ │ │ │ │ ├── httpbin_0.cer │ │ │ │ │ ├── httpbin_1.cer │ │ │ │ │ ├── httpbin_2.cer │ │ │ │ │ └── httpbin_3.cer │ │ │ │ └── httpbinorg_01162016.cer │ │ │ ├── SelfSigned │ │ │ │ ├── AltName.cer │ │ │ │ ├── NoDomains.cer │ │ │ │ └── foobar.com.cer │ │ │ └── logo.png │ │ ├── Tests-Prefix.pch │ │ └── Tests │ │ │ ├── AFAutoPurgingImageCacheTests.m │ │ │ ├── AFCompoundResponseSerializerTests.m │ │ │ ├── AFHTTPRequestSerializationTests.m │ │ │ ├── AFHTTPResponseSerializationTests.m │ │ │ ├── AFHTTPSessionManagerTests.m │ │ │ ├── AFImageDownloaderTests.m │ │ │ ├── AFJSONSerializationTests.m │ │ │ ├── AFNetworkActivityManagerTests.m │ │ │ ├── AFNetworkReachabilityManagerTests.m │ │ │ ├── AFPropertyListResponseSerializerTests.m │ │ │ ├── AFSecurityPolicyTests.m │ │ │ ├── AFTestCase.h │ │ │ ├── AFTestCase.m │ │ │ ├── AFUIActivityIndicatorViewTests.m │ │ │ ├── AFUIButtonTests.m │ │ │ ├── AFUIImageViewTests.m │ │ │ ├── AFUIRefreshControlTests.m │ │ │ └── AFURLSessionManagerTests.m │ ├── UIKit+AFNetworking │ │ ├── AFAutoPurgingImageCache.h │ │ ├── AFAutoPurgingImageCache.m │ │ ├── AFImageDownloader.h │ │ ├── AFImageDownloader.m │ │ ├── AFNetworkActivityIndicatorManager.h │ │ ├── AFNetworkActivityIndicatorManager.m │ │ ├── UIActivityIndicatorView+AFNetworking.h │ │ ├── UIActivityIndicatorView+AFNetworking.m │ │ ├── UIButton+AFNetworking.h │ │ ├── UIButton+AFNetworking.m │ │ ├── UIImage+AFNetworking.h │ │ ├── UIImageView+AFNetworking.h │ │ ├── UIImageView+AFNetworking.m │ │ ├── UIKit+AFNetworking.h │ │ ├── UIProgressView+AFNetworking.h │ │ ├── UIProgressView+AFNetworking.m │ │ ├── UIRefreshControl+AFNetworking.h │ │ ├── UIRefreshControl+AFNetworking.m │ │ ├── UIWebView+AFNetworking.h │ │ └── UIWebView+AFNetworking.m │ └── fastlane │ │ ├── .env │ │ ├── .env.default │ │ ├── .env.deploy │ │ ├── .env.ios81_xcode7 │ │ ├── .env.ios82 │ │ ├── .env.ios83 │ │ ├── .env.ios84 │ │ ├── .env.ios90_xcode7 │ │ ├── .env.ios91_xcode71 │ │ ├── .env.ios92 │ │ ├── .env.osx │ │ ├── .env.tvos90_xcode71 │ │ ├── .env.tvos91 │ │ └── Fastfile │ └── SDWebImage │ ├── .gitignore │ ├── .gitmodules │ ├── .travis.yml │ ├── Carthage │ └── Build │ ├── Examples │ ├── CustomPathImages │ │ └── 4ad9ae8eabfec60b40bf48f0bfc2d120 │ ├── Default-568h@2x.png │ ├── SDWebImage Demo.xcodeproj │ │ └── project.pbxproj │ └── SDWebImage Demo │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── DetailViewController.h │ │ ├── DetailViewController.m │ │ ├── MasterViewController.h │ │ ├── MasterViewController.m │ │ ├── SDWebImage Demo-Info.plist │ │ ├── SDWebImage Demo-Prefix.pch │ │ ├── en.lproj │ │ ├── DetailViewController.xib │ │ └── MasterViewController.xib │ │ ├── main.m │ │ ├── placeholder.png │ │ └── placeholder@2x.png │ ├── LICENSE │ ├── README.md │ ├── SDWebImage.podspec │ ├── SDWebImage.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── WebImage.xcscheme │ ├── SDWebImage.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ ├── SDWebImage Demo.xcscheme │ │ ├── SDWebImage+MKAnnotation.xcscheme │ │ ├── SDWebImage+WebP.xcscheme │ │ ├── SDWebImage.xcscheme │ │ ├── SDWebImageFramework.xcscheme │ │ ├── Tests.xcscheme │ │ └── WebImage.xcscheme │ ├── SDWebImage │ ├── MKAnnotationView+WebCache.h │ ├── MKAnnotationView+WebCache.m │ ├── NSData+ImageContentType.h │ ├── NSData+ImageContentType.m │ ├── SDImageCache.h │ ├── SDImageCache.m │ ├── SDWebImageCompat.h │ ├── SDWebImageCompat.m │ ├── SDWebImageDecoder.h │ ├── SDWebImageDecoder.m │ ├── SDWebImageDownloader.h │ ├── SDWebImageDownloader.m │ ├── SDWebImageDownloaderOperation.h │ ├── SDWebImageDownloaderOperation.m │ ├── SDWebImageManager.h │ ├── SDWebImageManager.m │ ├── SDWebImageOperation.h │ ├── SDWebImagePrefetcher.h │ ├── SDWebImagePrefetcher.m │ ├── UIButton+WebCache.h │ ├── UIButton+WebCache.m │ ├── UIImage+GIF.h │ ├── UIImage+GIF.m │ ├── UIImage+MultiFormat.h │ ├── UIImage+MultiFormat.m │ ├── UIImage+WebP.h │ ├── UIImage+WebP.m │ ├── UIImageView+HighlightedWebCache.h │ ├── UIImageView+HighlightedWebCache.m │ ├── UIImageView+WebCache.h │ ├── UIImageView+WebCache.m │ ├── UIView+WebCacheOperation.h │ └── UIView+WebCacheOperation.m │ ├── Tests │ ├── Podfile │ ├── SDWebImage Tests.xcodeproj │ │ └── project.pbxproj │ └── Tests │ │ ├── SDImageCacheTests.m │ │ ├── SDWebImageManagerTests.m │ │ ├── Tests-Info.plist │ │ ├── Tests-Prefix.pch │ │ ├── UIImageMultiFormatTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings │ ├── Vendors │ └── libwebp │ │ ├── AUTHORS │ │ ├── Android.mk │ │ ├── COPYING │ │ ├── ChangeLog │ │ ├── Makefile.am │ │ ├── Makefile.vc │ │ ├── NEWS │ │ ├── PATENTS │ │ ├── README │ │ ├── README.mux │ │ ├── autogen.sh │ │ ├── configure.ac │ │ ├── doc │ │ ├── README │ │ ├── TODO │ │ ├── template.html │ │ ├── webp-container-spec.txt │ │ └── webp-lossless-bitstream-spec.txt │ │ ├── examples │ │ ├── Android.mk │ │ ├── Makefile.am │ │ ├── cwebp.c │ │ ├── dwebp.c │ │ ├── example_util.c │ │ ├── example_util.h │ │ ├── gif2webp.c │ │ ├── gif2webp_util.c │ │ ├── gif2webp_util.h │ │ ├── jpegdec.c │ │ ├── jpegdec.h │ │ ├── metadata.c │ │ ├── metadata.h │ │ ├── pngdec.c │ │ ├── pngdec.h │ │ ├── stopwatch.h │ │ ├── test.webp │ │ ├── test_ref.ppm │ │ ├── tiffdec.c │ │ ├── tiffdec.h │ │ ├── vwebp.c │ │ ├── webpdec.c │ │ ├── webpdec.h │ │ ├── webpmux.c │ │ ├── wicdec.c │ │ └── wicdec.h │ │ ├── iosbuild.sh │ │ ├── m4 │ │ └── ax_pthread.m4 │ │ ├── makefile.unix │ │ ├── man │ │ ├── Makefile.am │ │ ├── cwebp.1 │ │ ├── dwebp.1 │ │ ├── gif2webp.1 │ │ ├── vwebp.1 │ │ └── webpmux.1 │ │ ├── src │ │ ├── Makefile.am │ │ ├── dec │ │ │ ├── Makefile.am │ │ │ ├── alpha.c │ │ │ ├── alphai.h │ │ │ ├── buffer.c │ │ │ ├── decode_vp8.h │ │ │ ├── frame.c │ │ │ ├── idec.c │ │ │ ├── io.c │ │ │ ├── quant.c │ │ │ ├── tree.c │ │ │ ├── vp8.c │ │ │ ├── vp8i.h │ │ │ ├── vp8l.c │ │ │ ├── vp8li.h │ │ │ ├── webp.c │ │ │ └── webpi.h │ │ ├── demux │ │ │ ├── Makefile.am │ │ │ ├── demux.c │ │ │ └── libwebpdemux.pc.in │ │ ├── dsp │ │ │ ├── Makefile.am │ │ │ ├── alpha_processing.c │ │ │ ├── alpha_processing_sse2.c │ │ │ ├── cpu.c │ │ │ ├── dec.c │ │ │ ├── dec_clip_tables.c │ │ │ ├── dec_mips32.c │ │ │ ├── dec_neon.c │ │ │ ├── dec_sse2.c │ │ │ ├── dsp.h │ │ │ ├── enc.c │ │ │ ├── enc_avx2.c │ │ │ ├── enc_mips32.c │ │ │ ├── enc_neon.c │ │ │ ├── enc_sse2.c │ │ │ ├── lossless.c │ │ │ ├── lossless.h │ │ │ ├── lossless_mips32.c │ │ │ ├── lossless_neon.c │ │ │ ├── lossless_sse2.c │ │ │ ├── neon.h │ │ │ ├── upsampling.c │ │ │ ├── upsampling_neon.c │ │ │ ├── upsampling_sse2.c │ │ │ ├── yuv.c │ │ │ ├── yuv.h │ │ │ ├── yuv_mips32.c │ │ │ ├── yuv_sse2.c │ │ │ └── yuv_tables_sse2.h │ │ ├── enc │ │ │ ├── Makefile.am │ │ │ ├── alpha.c │ │ │ ├── analysis.c │ │ │ ├── backward_references.c │ │ │ ├── backward_references.h │ │ │ ├── config.c │ │ │ ├── cost.c │ │ │ ├── cost.h │ │ │ ├── filter.c │ │ │ ├── frame.c │ │ │ ├── histogram.c │ │ │ ├── histogram.h │ │ │ ├── iterator.c │ │ │ ├── picture.c │ │ │ ├── picture_csp.c │ │ │ ├── picture_psnr.c │ │ │ ├── picture_rescale.c │ │ │ ├── picture_tools.c │ │ │ ├── quant.c │ │ │ ├── syntax.c │ │ │ ├── token.c │ │ │ ├── tree.c │ │ │ ├── vp8enci.h │ │ │ ├── vp8l.c │ │ │ ├── vp8li.h │ │ │ └── webpenc.c │ │ ├── libwebp.pc.in │ │ ├── libwebpdecoder.pc.in │ │ ├── mux │ │ │ ├── Makefile.am │ │ │ ├── libwebpmux.pc.in │ │ │ ├── muxedit.c │ │ │ ├── muxi.h │ │ │ ├── muxinternal.c │ │ │ └── muxread.c │ │ ├── utils │ │ │ ├── Makefile.am │ │ │ ├── bit_reader.c │ │ │ ├── bit_reader.h │ │ │ ├── bit_reader_inl.h │ │ │ ├── bit_writer.c │ │ │ ├── bit_writer.h │ │ │ ├── color_cache.c │ │ │ ├── color_cache.h │ │ │ ├── endian_inl.h │ │ │ ├── filters.c │ │ │ ├── filters.h │ │ │ ├── huffman.c │ │ │ ├── huffman.h │ │ │ ├── huffman_encode.c │ │ │ ├── huffman_encode.h │ │ │ ├── quant_levels.c │ │ │ ├── quant_levels.h │ │ │ ├── quant_levels_dec.c │ │ │ ├── quant_levels_dec.h │ │ │ ├── random.c │ │ │ ├── random.h │ │ │ ├── rescaler.c │ │ │ ├── rescaler.h │ │ │ ├── thread.c │ │ │ ├── thread.h │ │ │ ├── utils.c │ │ │ └── utils.h │ │ └── webp │ │ │ ├── decode.h │ │ │ ├── demux.h │ │ │ ├── encode.h │ │ │ ├── format_constants.h │ │ │ ├── mux.h │ │ │ ├── mux_types.h │ │ │ └── types.h │ │ └── swig │ │ ├── README │ │ ├── libwebp.go │ │ ├── libwebp.jar │ │ ├── libwebp.py │ │ ├── libwebp.swig │ │ ├── libwebp_gc.c │ │ ├── libwebp_go_wrap.c │ │ ├── libwebp_java_wrap.c │ │ ├── libwebp_python_wrap.c │ │ └── setup.py │ └── WebImage │ ├── Info.plist │ └── WebImage.h ├── LICENSE ├── PrefixHeader.pch ├── README.md ├── Reveal.framework ├── Headers ├── Reveal └── Versions │ ├── A │ ├── Headers │ │ ├── IBANetServiceTypes.h │ │ ├── IBARevealLoader.h │ │ ├── IBARevealLogger.h │ │ └── Reveal.h │ └── Reveal │ └── Current ├── WSDZhihuDaily.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ └── contents.xcworkspacedata └── xcuserdata │ └── wangshudao.xcuserdatad │ ├── xcdebugger │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ ├── WSDZhihuDaily.xcscheme │ └── xcschememanagement.plist ├── WSDZhihuDaily ├── Assets.xcassets │ ├── menubg.imageset │ │ ├── menubg.png │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ ├── AppIcon60x60@2x.png │ │ ├── AppIcon60x60@3x.png │ │ └── Contents.json │ ├── Contents.json │ ├── Dark_Management_Add.imageset │ │ ├── Contents.json │ │ └── Dark_Management_Add@2x.png │ ├── Field_Back.imageset │ │ ├── Contents.json │ │ └── Field_Back@2x.png │ ├── Field_Mask_Bg.imageset │ │ ├── Contents.json │ │ └── Field_Mask_Bg@2x.png │ ├── Home │ │ ├── Contents.json │ │ └── side_menu.imageset │ │ │ ├── Contents.json │ │ │ └── Home_Icon@2x.png │ ├── Home_Morepic.imageset │ │ ├── Contents.json │ │ └── Home_Morepic@2x.png │ ├── Image_Preview.imageset │ │ ├── Contents.json │ │ └── Image_Preview@2x.png │ ├── Menu │ │ ├── Contents.json │ │ ├── menu_avatar.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Avatar@2x.png │ │ ├── menu_cell_arrow.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Enter@2x.png │ │ ├── menu_favor.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Icon_Collect@2x.png │ │ ├── menu_message.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Icon_Message@2x.png │ │ ├── menu_offline.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Download@2x.png │ │ ├── menu_setting.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Icon_Setting@2x.png │ │ ├── menu_theme_dark.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Dark@2x.png │ │ └── menu_theme_light.imageset │ │ │ ├── Contents.json │ │ │ └── Menu_Day@2x.png │ ├── Menu_Follow.imageset │ │ ├── Contents.json │ │ └── Menu_Follow@2x.png │ ├── Menu_Icon_Home.imageset │ │ ├── Contents.json │ │ └── Menu_Icon_Home@2x.png │ ├── News_Arrow.imageset │ │ ├── Contents.json │ │ └── News_Arrow@2x.png │ ├── News_Navigation_Arrow.imageset │ │ ├── Contents.json │ │ └── News_Navigation_Arrow@2x.png │ ├── News_Navigation_Comment.imageset │ │ ├── Contents.json │ │ └── News_Navigation_Comment@2x.png │ ├── News_Navigation_Next.imageset │ │ ├── Contents.json │ │ └── News_Navigation_Next@2x.png │ ├── News_Navigation_Share.imageset │ │ ├── Contents.json │ │ └── News_Navigation_Share@2x.png │ ├── News_Navigation_Voted.imageset │ │ ├── Contents.json │ │ └── News_Navigation_Voted@2x.png │ └── ZHAnswerViewBack.imageset │ │ ├── Contents.json │ │ └── ZHAnswerViewBack@2x.png ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard ├── Controllers │ ├── HomeViewController.h │ ├── HomeViewController.m │ ├── WSDSideMenuViewController.h │ ├── WSDSideMenuViewController.m │ └── WSDSideMenuViewController.xib ├── DataUtils │ ├── WSDDataUtils.h │ └── WSDDataUtils.m ├── Info.plist ├── Masonry │ ├── Info.plist │ ├── MASCompositeConstraint.h │ ├── MASCompositeConstraint.m │ ├── MASConstraint+Private.h │ ├── MASConstraint.h │ ├── MASConstraint.m │ ├── MASConstraintMaker.h │ ├── MASConstraintMaker.m │ ├── MASLayoutConstraint.h │ ├── MASLayoutConstraint.m │ ├── MASUtilities.h │ ├── MASViewAttribute.h │ ├── MASViewAttribute.m │ ├── MASViewConstraint.h │ ├── MASViewConstraint.m │ ├── Masonry.h │ ├── NSArray+MASAdditions.h │ ├── NSArray+MASAdditions.m │ ├── NSArray+MASShorthandAdditions.h │ ├── NSLayoutConstraint+MASDebugAdditions.h │ ├── NSLayoutConstraint+MASDebugAdditions.m │ ├── View+MASAdditions.h │ ├── View+MASAdditions.m │ ├── View+MASShorthandAdditions.h │ ├── ViewController+MASAdditions.h │ └── ViewController+MASAdditions.m ├── Models │ ├── WSDStory.h │ ├── WSDStory.m │ ├── WSDTopStory.h │ └── WSDTopStory.m ├── Others │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Info.plist │ ├── LxDBAnything.h │ └── main.m ├── ViewUtils │ ├── ViewUtils.h │ └── ViewUtils.m └── Views │ ├── SideMenuCell.h │ ├── SideMenuCell.m │ ├── SideMenuCell.xib │ ├── WSDBannerView.h │ ├── WSDBannerView.m │ ├── WSDBannerView.xib │ ├── WSDCarouselView.h │ ├── WSDCarouselView.m │ ├── WSDCarouselView.xib │ ├── WSDRefreshView.h │ ├── WSDRefreshView.m │ ├── WSDSideMenuCell.h │ ├── WSDSideMenuCell.m │ ├── WSDSideMenuCell.xib │ ├── WSDStoryCell.h │ ├── WSDStoryCell.m │ └── WSDStoryCell.xib ├── layer_perfect.gif ├── load_more.gif ├── section.gif ├── sidebar.gif └── zh-home.gif /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | # 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | xcuserdata 13 | *.xccheckout 14 | *.moved-aside 15 | DerivedData 16 | *.hmap 17 | *.ipa 18 | *.xcuserstate 19 | 20 | # CocoaPods 21 | # 22 | # We recommend against adding the Pods directory to your .gitignore. However 23 | # you should judge for yourself, the pros and cons are mentioned at: 24 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 25 | # 26 | #Pods/ 27 | 28 | WSDZhihuDaily.xcodeproj/project.xcworkspace/xcuserdata/wangshudao.xcuserdatad/UserInterfaceState.xcuserstate 29 | -------------------------------------------------------------------------------- /Cartfile.resolved: -------------------------------------------------------------------------------- 1 | github "AFNetworking/AFNetworking" "3.0.4" 2 | github "rs/SDWebImage" "3.7.3" 3 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework.dSYM/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleIdentifier 8 | com.apple.xcode.dsym.com.alamofire.AFNetworking 9 | CFBundleInfoDictionaryVersion 10 | 6.0 11 | CFBundlePackageType 12 | dSYM 13 | CFBundleSignature 14 | ???? 15 | CFBundleShortVersionString 16 | 3.0.0 17 | CFBundleVersion 18 | 3.0.4 19 | 20 | 21 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework.dSYM/Contents/Resources/DWARF/AFNetworking: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/AFNetworking.framework.dSYM/Contents/Resources/DWARF/AFNetworking -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework/AFNetworking: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/AFNetworking.framework/AFNetworking -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework/Headers/UIImage+AFNetworking.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+AFNetworking.h 3 | // 4 | // 5 | // Created by Paulo Ferreira on 08/07/15. 6 | // 7 | // Permission is hereby granted, free of charge, to any person obtaining a copy 8 | // of this software and associated documentation files (the "Software"), to deal 9 | // in the Software without restriction, including without limitation the rights 10 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | // copies of the Software, and to permit persons to whom the Software is 12 | // furnished to do so, subject to the following conditions: 13 | // 14 | // The above copyright notice and this permission notice shall be included in 15 | // all copies or substantial portions of the Software. 16 | // 17 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | // THE SOFTWARE. 24 | 25 | #if TARGET_OS_IOS || TARGET_OS_TV 26 | 27 | #import 28 | 29 | @interface UIImage (AFNetworking) 30 | 31 | + (UIImage*) safeImageWithData:(NSData*)data; 32 | 33 | @end 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/AFNetworking.framework/Info.plist -------------------------------------------------------------------------------- /Carthage/Build/iOS/AFNetworking.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module AFNetworking { 2 | umbrella header "AFNetworking.h" 3 | export * 4 | module * { export * } 5 | } -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework.dSYM/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleIdentifier 8 | com.apple.xcode.dsym.com.dailymotion.WebImage 9 | CFBundleInfoDictionaryVersion 10 | 6.0 11 | CFBundlePackageType 12 | dSYM 13 | CFBundleSignature 14 | ???? 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleVersion 18 | 1 19 | 20 | 21 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework.dSYM/Contents/Resources/DWARF/WebImage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/WebImage.framework.dSYM/Contents/Resources/DWARF/WebImage -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/NSData+ImageContentType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Fabrice Aneche on 06/01/14. 3 | // Copyright (c) 2014 Dailymotion. All rights reserved. 4 | // 5 | 6 | #import 7 | 8 | @interface NSData (ImageContentType) 9 | 10 | /** 11 | * Compute the content type for an image data 12 | * 13 | * @param data the input data 14 | * 15 | * @return the content type as string (i.e. image/jpeg, image/gif) 16 | */ 17 | + (NSString *)sd_contentTypeForImageData:(NSData *)data; 18 | 19 | @end 20 | 21 | 22 | @interface NSData (ImageContentTypeDeprecated) 23 | 24 | + (NSString *)contentTypeForImageData:(NSData *)data __deprecated_msg("Use `sd_contentTypeForImageData:`"); 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/SDWebImageDecoder.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * Created by james on 9/28/11. 6 | * 7 | * For the full copyright and license information, please view the LICENSE 8 | * file that was distributed with this source code. 9 | */ 10 | 11 | #import 12 | #import "SDWebImageCompat.h" 13 | 14 | @interface UIImage (ForceDecode) 15 | 16 | + (UIImage *)decodedImageWithImage:(UIImage *)image; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/SDWebImageOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 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 10 | 11 | @protocol SDWebImageOperation 12 | 13 | - (void)cancel; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/UIImage+GIF.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+GIF.h 3 | // LBGIFImage 4 | // 5 | // Created by Laurin Brandner on 06.01.12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (GIF) 12 | 13 | + (UIImage *)sd_animatedGIFNamed:(NSString *)name; 14 | 15 | + (UIImage *)sd_animatedGIFWithData:(NSData *)data; 16 | 17 | - (UIImage *)sd_animatedImageByScalingAndCroppingToSize:(CGSize)size; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/UIImage+MultiFormat.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+MultiFormat.h 3 | // SDWebImage 4 | // 5 | // Created by Olivier Poitrey on 07/06/13. 6 | // Copyright (c) 2013 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (MultiFormat) 12 | 13 | + (UIImage *)sd_imageWithData:(NSData *)data; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/UIImage+WebP.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+WebP.h 3 | // SDWebImage 4 | // 5 | // Created by Olivier Poitrey on 07/06/13. 6 | // Copyright (c) 2013 Dailymotion. All rights reserved. 7 | // 8 | 9 | #ifdef SD_WEBP 10 | 11 | #import 12 | 13 | // Fix for issue #416 Undefined symbols for architecture armv7 since WebP introduction when deploying to device 14 | void WebPInitPremultiplyNEON(void); 15 | 16 | void WebPInitUpsamplersNEON(void); 17 | 18 | void VP8DspInitNEON(void); 19 | 20 | @interface UIImage (WebP) 21 | 22 | + (UIImage *)sd_imageWithWebPData:(NSData *)data; 23 | 24 | @end 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/UIView+WebCacheOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 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 10 | #import "SDWebImageManager.h" 11 | 12 | @interface UIView (WebCacheOperation) 13 | 14 | /** 15 | * Set the image load operation (storage in a UIView based dictionary) 16 | * 17 | * @param operation the operation 18 | * @param key key for storing the operation 19 | */ 20 | - (void)sd_setImageLoadOperation:(id)operation forKey:(NSString *)key; 21 | 22 | /** 23 | * Cancel all operations for the current UIView and key 24 | * 25 | * @param key key for identifying the operations 26 | */ 27 | - (void)sd_cancelImageLoadOperationWithKey:(NSString *)key; 28 | 29 | /** 30 | * Just remove the operations corresponding to the current UIView and key without cancelling them 31 | * 32 | * @param key key for identifying the operations 33 | */ 34 | - (void)sd_removeImageLoadOperationWithKey:(NSString *)key; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Headers/WebImage.h: -------------------------------------------------------------------------------- 1 | // 2 | // WebImage.h 3 | // WebImage 4 | // 5 | // Created by Florent Vilmart on 2015-03-14. 6 | // Copyright (c) 2015 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for WebImage. 12 | FOUNDATION_EXPORT double WebImageVersionNumber; 13 | 14 | //! Project version string for WebImage. 15 | FOUNDATION_EXPORT const unsigned char WebImageVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | #import 20 | #import 21 | #import 22 | #import 23 | #import 24 | #import 25 | #import 26 | #import 27 | #import 28 | #import 29 | #import 30 | #import 31 | #import 32 | #import 33 | #import 34 | #import 35 | #import 36 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/WebImage.framework/Info.plist -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module WebImage { 2 | umbrella header "WebImage.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Carthage/Build/iOS/WebImage.framework/WebImage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Build/iOS/WebImage.framework/WebImage -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/.cocoadocs.yml: -------------------------------------------------------------------------------- 1 | highlight-color: "#F89915" 2 | highlight-dark-color: "#E23B1B" 3 | darker-color: "#D8A688" 4 | darker-dark-color: "#E93D1C" 5 | background-color: "#E9DFDB" 6 | alt-link-color: "#E23B1B" 7 | warning-color: "#E23B1B" 8 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | *.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | DerivedData 18 | .idea/ 19 | Tests/Pods 20 | Tests/Podfile.lock 21 | Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/ 22 | AFNetworking.framework.zip 23 | 24 | # Fastlane 25 | /fastlane/report.xml 26 | /fastlane/.env*private* 27 | fastlane/test-output/* -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/.travis.yml: -------------------------------------------------------------------------------- 1 | language: objective-c 2 | osx_image: xcode7.1 3 | sudo: false 4 | env: 5 | global: 6 | - LC_CTYPE=en_US.UTF-8 7 | - LANG=en_US.UTF-8 8 | - FASTLANE_LANE=ci_commit 9 | matrix: 10 | include: 11 | - osx_image: xcode7.2 12 | env: FASTLANE_LANE=code_coverage FASTLANE_ENV=default 13 | - osx_image: xcode7.2 14 | env: FASTLANE_ENV=ios82 15 | - osx_image: xcode7.2 16 | env: FASTLANE_ENV=ios83 17 | - osx_image: xcode7.2 18 | env: FASTLANE_ENV=ios84 19 | - osx_image: xcode7.2 20 | env: FASTLANE_ENV=ios92 21 | - osx_image: xcode7.2 22 | env: FASTLANE_ENV=tvos91 23 | - osx_image: xcode7.2 24 | env: FASTLANE_ENV=osx 25 | - osx_image: xcode7.1 26 | env: FASTLANE_ENV=ios91_xcode71 27 | - osx_image: xcode7.1 28 | env: FASTLANE_ENV=tvos90_xcode71 29 | - osx_image: xcode7 30 | env: FASTLANE_ENV=ios81_xcode7 31 | - osx_image: xcode7 32 | env: FASTLANE_ENV=ios90_xcode7 33 | before_install: 34 | - gem install fastlane --no-rdoc --no-ri --no-document --quiet 35 | - gem install cocoapods --no-rdoc --no-ri --no-document --quiet 36 | - gem install xcpretty --no-rdoc --no-ri --no-document --quiet 37 | script: 38 | - set -o pipefail 39 | - fastlane $FASTLANE_LANE configuration:Debug --env $FASTLANE_ENV 40 | - fastlane $FASTLANE_LANE configuration:Release --env $FASTLANE_ENV 41 | after_success: 42 | - if [ "$FASTLANE_LANE" == "code_coverage" ]; then 43 | bash <(curl -s https://codecov.io/bash); 44 | fi 45 | after_failure: 46 | - cat -n ~/Library/Logs/scan/* 47 | - cat -n $TMPDIR/com.apple.dt.XCTest-status/Session*.log 48 | - cat -n ~/Library/Logs/DiagnosticReports/xctest*.crash 49 | # deploy: 50 | # provider: script 51 | # script: fastlane complete_framework_release --env deploy 52 | # on: 53 | # tags: true 54 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/AFNetworking/AFNetworking.h: -------------------------------------------------------------------------------- 1 | // AFNetworking.h 2 | // 3 | // Copyright (c) 2013 AFNetworking (http://afnetworking.com/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | #import 25 | #import 26 | 27 | #ifndef _AFNETWORKING_ 28 | #define _AFNETWORKING_ 29 | 30 | #import "AFURLRequestSerialization.h" 31 | #import "AFURLResponseSerialization.h" 32 | #import "AFSecurityPolicy.h" 33 | 34 | #if !TARGET_OS_WATCH 35 | #import "AFNetworkReachabilityManager.h" 36 | #endif 37 | 38 | #import "AFURLSessionManager.h" 39 | #import "AFHTTPSessionManager.h" 40 | 41 | #endif /* _AFNETWORKING_ */ 42 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Carthage/Build: -------------------------------------------------------------------------------- 1 | ../../../../Carthage/Build -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/AFNetworking Example.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.app-sandbox 6 | 7 | com.apple.security.network.client 8 | 9 | com.apple.security.network.server 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/AFNetworking watchOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "24x24", 5 | "idiom" : "watch", 6 | "scale" : "2x", 7 | "role" : "notificationCenter", 8 | "subtype" : "38mm" 9 | }, 10 | { 11 | "size" : "27.5x27.5", 12 | "idiom" : "watch", 13 | "scale" : "2x", 14 | "role" : "notificationCenter", 15 | "subtype" : "42mm" 16 | }, 17 | { 18 | "size" : "29x29", 19 | "idiom" : "watch", 20 | "role" : "companionSettings", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "size" : "29x29", 25 | "idiom" : "watch", 26 | "role" : "companionSettings", 27 | "scale" : "3x" 28 | }, 29 | { 30 | "size" : "40x40", 31 | "idiom" : "watch", 32 | "scale" : "2x", 33 | "role" : "appLauncher", 34 | "subtype" : "38mm" 35 | }, 36 | { 37 | "size" : "44x44", 38 | "idiom" : "watch", 39 | "scale" : "2x", 40 | "role" : "longLook", 41 | "subtype" : "42mm" 42 | }, 43 | { 44 | "size" : "86x86", 45 | "idiom" : "watch", 46 | "scale" : "2x", 47 | "role" : "quickLook", 48 | "subtype" : "38mm" 49 | }, 50 | { 51 | "size" : "98x98", 52 | "idiom" : "watch", 53 | "scale" : "2x", 54 | "role" : "quickLook", 55 | "subtype" : "42mm" 56 | } 57 | ], 58 | "info" : { 59 | "version" : 1, 60 | "author" : "xcode" 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/AFNetworking watchOS/Base.lproj/Interface.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/AFNetworking watchOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | AFNetworking iOS Example 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | UISupportedInterfaceOrientations 26 | 27 | UIInterfaceOrientationPortrait 28 | UIInterfaceOrientationPortraitUpsideDown 29 | 30 | WKCompanionAppBundleIdentifier 31 | com.alamofire.AFNetworking-iOS-Example 32 | WKWatchKitApp 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-76.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/profile-image-placeholder.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "profile-image-placeholder.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "profile-image-placeholder@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/profile-image-placeholder.imageset/profile-image-placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/profile-image-placeholder.imageset/profile-image-placeholder.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/profile-image-placeholder.imageset/profile-image-placeholder@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Assets.xcassets/profile-image-placeholder.imageset/profile-image-placeholder@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Certificates/adn.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Certificates/adn.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Certificates/digicert_ca_3.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Certificates/digicert_ca_3.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Certificates/root_ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Example/Certificates/root_ca.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Classes/Models/Post.h: -------------------------------------------------------------------------------- 1 | // Post.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | 25 | @class User; 26 | 27 | @interface Post : NSObject 28 | 29 | @property (nonatomic, assign) NSUInteger postID; 30 | @property (nonatomic, strong) NSString *text; 31 | 32 | @property (nonatomic, strong) User *user; 33 | 34 | - (instancetype)initWithAttributes:(NSDictionary *)attributes; 35 | 36 | + (NSURLSessionDataTask *)globalTimelinePostsWithBlock:(void (^)(NSArray *posts, NSError *error))block; 37 | 38 | @end 39 | 40 | @interface Post (NSCoding) 41 | @end 42 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Classes/Networking Extensions/AFAppDotNetAPIClient.h: -------------------------------------------------------------------------------- 1 | // AFAppDotNetAPIClient.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | @import AFNetworking; 25 | 26 | @interface AFAppDotNetAPIClient : AFHTTPSessionManager 27 | 28 | + (instancetype)sharedClient; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/OS X Example/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // AppDelegate.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | 25 | @interface AppDelegate : NSObject 26 | 27 | @property (strong) IBOutlet NSWindow *window; 28 | @property (strong) IBOutlet NSTableView *tableView; 29 | @property (strong) IBOutlet NSArrayController *postsArrayController; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/OS X Example/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/OS X Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | LSMinimumSystemVersion 26 | $(MACOSX_DEPLOYMENT_TARGET) 27 | NSMainNibFile 28 | MainMenu 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/OS X Example/main.m: -------------------------------------------------------------------------------- 1 | // main.m 2 | // Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | 24 | int main(int argc, const char * argv[]) { 25 | return NSApplicationMain(argc, argv); 26 | } 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Prefix.pch: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #if __IPHONE_OS_VERSION_MIN_REQUIRED 4 | #ifndef __IPHONE_6_0 5 | #warning "This project uses features only available in iPhone SDK 6.0 and later." 6 | #endif 7 | 8 | #ifdef __OBJC__ 9 | #import 10 | #import 11 | #import 12 | #import 13 | #endif 14 | #else 15 | #ifdef __OBJC__ 16 | #import 17 | #import 18 | #import 19 | #import 20 | #endif 21 | #endif 22 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Today Extension Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | Today Extension Example 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | XPC! 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | NSExtension 26 | 27 | NSExtensionMainStoryboard 28 | MainInterface 29 | NSExtensionPointIdentifier 30 | com.apple.widget-extension 31 | 32 | NSAppTransportSecurity 33 | 34 | NSExceptionDomains 35 | 36 | cloudfront.net 37 | 38 | NSIncludesSubdomains 39 | 40 | NSThirdPartyExceptionMinimumTLSVersion 41 | TLSv1.0 42 | NSThirdPartyExceptionRequiresForwardSecrecy 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/Today Extension Example/TodayViewController.h: -------------------------------------------------------------------------------- 1 | // TodayViewController.h 2 | // Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | 24 | @interface TodayViewController : UIViewController 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/iOS Example/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // AppDelegate.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | 25 | @interface AppDelegate : NSObject 26 | 27 | @property (nonatomic, strong) UIWindow *window; 28 | @property (nonatomic, strong) UINavigationController *navigationController; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/iOS Example/Controllers/GlobalTimelineViewController.h: -------------------------------------------------------------------------------- 1 | // GlobalTimelineViewController.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | 25 | @interface GlobalTimelineViewController : UITableViewController 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/iOS Example/Views/PostTableViewCell.h: -------------------------------------------------------------------------------- 1 | // TweetTableViewCell.h 2 | // 3 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in 13 | // all copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | // THE SOFTWARE. 22 | 23 | #import 24 | 25 | @class Post; 26 | 27 | @interface PostTableViewCell : UITableViewCell 28 | 29 | @property (nonatomic, strong) Post *post; 30 | 31 | + (CGFloat)heightForCellWithPost:(Post *)post; 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/main.m: -------------------------------------------------------------------------------- 1 | // main.m 2 | // Copyright (c) 2012 Mattt Thompson (http://mattt.me/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | #if TARGET_OS_IOS || TARGET_OS_TV 24 | #import 25 | 26 | int main(int argc, char *argv[]) { 27 | @autoreleasepool { 28 | int retVal = UIApplicationMain(argc, argv, @"UIApplication", @"AppDelegate"); 29 | return retVal; 30 | } 31 | } 32 | #else 33 | #import 34 | 35 | int main(int argc, char *argv[]) { 36 | return NSApplicationMain(argc, (const char **)argv); 37 | } 38 | #endif 39 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/AFNetworking tvOS Example-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | // 2 | // Use this file to import your target's public headers that you would like to expose to Swift. 3 | // 4 | 5 | #import 6 | @import AFNetworking; -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "layers" : [ 3 | { 4 | "filename" : "Front.imagestacklayer" 5 | }, 6 | { 7 | "filename" : "Middle.imagestacklayer" 8 | }, 9 | { 10 | "filename" : "Back.imagestacklayer" 11 | } 12 | ], 13 | "info" : { 14 | "version" : 1, 15 | "author" : "xcode" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "layers" : [ 3 | { 4 | "filename" : "Front.imagestacklayer" 5 | }, 6 | { 7 | "filename" : "Middle.imagestacklayer" 8 | }, 9 | { 10 | "filename" : "Back.imagestacklayer" 11 | } 12 | ], 13 | "info" : { 14 | "version" : 1, 15 | "author" : "xcode" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "assets" : [ 3 | { 4 | "size" : "1280x768", 5 | "idiom" : "tv", 6 | "filename" : "App Icon - Large.imagestack", 7 | "role" : "primary-app-icon" 8 | }, 9 | { 10 | "size" : "400x240", 11 | "idiom" : "tv", 12 | "filename" : "App Icon - Small.imagestack", 13 | "role" : "primary-app-icon" 14 | }, 15 | { 16 | "size" : "1920x720", 17 | "idiom" : "tv", 18 | "filename" : "Top Shelf Image.imageset", 19 | "role" : "top-shelf-image" 20 | } 21 | ], 22 | "info" : { 23 | "version" : 1, 24 | "author" : "xcode" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Assets.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "landscape", 5 | "idiom" : "tv", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "9.0", 8 | "scale" : "1x" 9 | } 10 | ], 11 | "info" : { 12 | "version" : 1, 13 | "author" : "xcode" 14 | } 15 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/tvOS Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | arm64 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example Extension/Assets.xcassets/README__ignoredByTemplate__: -------------------------------------------------------------------------------- 1 | Did you know that git does not support storing empty directories? 2 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example Extension/ExtensionDelegate.h: -------------------------------------------------------------------------------- 1 | // ExtensionDelegate.h 2 | // Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | 24 | @interface ExtensionDelegate : NSObject 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example Extension/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | watchOS Example Extension 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | XPC! 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | NSExtension 26 | 27 | NSExtensionAttributes 28 | 29 | WKAppBundleIdentifier 30 | com.alamofire.iOS-Example.watchkitapp 31 | 32 | NSExtensionPointIdentifier 33 | com.apple.watchkit 34 | 35 | RemoteInterfacePrincipalClass 36 | InterfaceController 37 | WKExtensionDelegateClassName 38 | ExtensionDelegate 39 | 40 | 41 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example Extension/InterfaceController.h: -------------------------------------------------------------------------------- 1 | // InterfaceController.h 2 | // Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | #import 24 | 25 | @interface InterfaceController : WKInterfaceController 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "24x24", 5 | "idiom" : "watch", 6 | "scale" : "2x", 7 | "role" : "notificationCenter", 8 | "subtype" : "38mm" 9 | }, 10 | { 11 | "size" : "27.5x27.5", 12 | "idiom" : "watch", 13 | "scale" : "2x", 14 | "role" : "notificationCenter", 15 | "subtype" : "42mm" 16 | }, 17 | { 18 | "size" : "29x29", 19 | "idiom" : "watch", 20 | "role" : "companionSettings", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "size" : "29x29", 25 | "idiom" : "watch", 26 | "role" : "companionSettings", 27 | "scale" : "3x" 28 | }, 29 | { 30 | "size" : "40x40", 31 | "idiom" : "watch", 32 | "scale" : "2x", 33 | "role" : "appLauncher", 34 | "subtype" : "38mm" 35 | }, 36 | { 37 | "size" : "44x44", 38 | "idiom" : "watch", 39 | "scale" : "2x", 40 | "role" : "longLook", 41 | "subtype" : "42mm" 42 | }, 43 | { 44 | "size" : "86x86", 45 | "idiom" : "watch", 46 | "scale" : "2x", 47 | "role" : "quickLook", 48 | "subtype" : "38mm" 49 | }, 50 | { 51 | "size" : "98x98", 52 | "idiom" : "watch", 53 | "scale" : "2x", 54 | "role" : "quickLook", 55 | "subtype" : "42mm" 56 | } 57 | ], 58 | "info" : { 59 | "version" : 1, 60 | "author" : "xcode" 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example/Base.lproj/Interface.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Example/watchOS Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | iOS Example 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | UISupportedInterfaceOrientations 26 | 27 | UIInterfaceOrientationPortrait 28 | UIInterfaceOrientationPortraitUpsideDown 29 | 30 | WKCompanionAppBundleIdentifier 31 | com.alamofire.iOS-Example 32 | WKWatchKitApp 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Framework/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 3.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 3.0.4 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module AFNetworking { 2 | umbrella header "AFNetworking.h" 3 | export * 4 | module * { export * } 5 | } -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.alamofire.afnetworking.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_0.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_0.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_1.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_1.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_2.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/ADN.net/ADNNetServerTrustChain/adn_2.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/Equifax_Secure_Certificate_Authority_Root.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/Equifax_Secure_Certificate_Authority_Root.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GeoTrust_Global_CA-cross.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GeoTrust_Global_CA-cross.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GeoTrust_Global_CA_Root.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GeoTrust_Global_CA_Root.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath1/googlecom_0.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath1/googlecom_0.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath1/googlecom_1.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath1/googlecom_1.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_0.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_0.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_1.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_1.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_2.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleComServerTrustChainPath2/googlecom_2.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleInternetAuthorityG2.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/GoogleInternetAuthorityG2.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/google.com.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/Google.com/google.com.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/AddTrust_External_CA_Root.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/AddTrust_External_CA_Root.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/COMODO_RSA_Certification_Authority.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/COMODO_RSA_Certification_Authority.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/COMODO_RSA_Domain_Validation_Secure_Server_CA.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/COMODO_RSA_Domain_Validation_Secure_Server_CA.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_0.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_0.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_1.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_1.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_2.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_2.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_3.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/HTTPBinOrgServerTrustChain/httpbin_3.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/httpbinorg_01162016.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/HTTPBin.org/httpbinorg_01162016.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/AltName.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/AltName.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/NoDomains.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/NoDomains.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/foobar.com.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/SelfSigned/foobar.com.cer -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/AFNetworking/Tests/Resources/logo.png -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | #import 9 | #endif 10 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/Tests/Tests/AFTestCase.h: -------------------------------------------------------------------------------- 1 | // AFTestCase.h 2 | // Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) 3 | // 4 | // Permission is hereby granted, free of charge, to any person obtaining a copy 5 | // of this software and associated documentation files (the "Software"), to deal 6 | // in the Software without restriction, including without limitation the rights 7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | // copies of the Software, and to permit persons to whom the Software is 9 | // furnished to do so, subject to the following conditions: 10 | // 11 | // The above copyright notice and this permission notice shall be included in 12 | // all copies or substantial portions of the Software. 13 | // 14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20 | // THE SOFTWARE. 21 | 22 | #import 23 | 24 | extern NSString * const AFNetworkingTestsBaseURLString; 25 | 26 | @interface AFTestCase : XCTestCase 27 | 28 | @property (nonatomic, strong, readonly) NSURL *baseURL; 29 | @property (nonatomic, assign) NSTimeInterval networkTimeout; 30 | 31 | - (void)waitForExpectationsWithCommonTimeoutUsingHandler:(XCWaitCompletionHandler)handler; 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/UIKit+AFNetworking/UIImage+AFNetworking.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+AFNetworking.h 3 | // 4 | // 5 | // Created by Paulo Ferreira on 08/07/15. 6 | // 7 | // Permission is hereby granted, free of charge, to any person obtaining a copy 8 | // of this software and associated documentation files (the "Software"), to deal 9 | // in the Software without restriction, including without limitation the rights 10 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | // copies of the Software, and to permit persons to whom the Software is 12 | // furnished to do so, subject to the following conditions: 13 | // 14 | // The above copyright notice and this permission notice shall be included in 15 | // all copies or substantial portions of the Software. 16 | // 17 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | // THE SOFTWARE. 24 | 25 | #if TARGET_OS_IOS || TARGET_OS_TV 26 | 27 | #import 28 | 29 | @interface UIImage (AFNetworking) 30 | 31 | + (UIImage*) safeImageWithData:(NSData*)data; 32 | 33 | @end 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env: -------------------------------------------------------------------------------- 1 | AF_WORKSPACE="AFNetworking.xcworkspace" 2 | 3 | AF_IOS_FRAMEWORK_SCHEME="AFNetworking iOS" 4 | AF_TVOS_FRAMEWORK_SCHEME="AFNetworking tvOS" 5 | AF_OSX_FRAMEWORK_SCHEME="AFNetworking OS X" 6 | 7 | AF_IOS_EXAMPLE_SCHEME="iOS Example" 8 | AF_TVOS_EXAMPLE_SCHEME="tvOS Example" 9 | AF_OSX_EXAMPLE_SCHEME="OS X Example" 10 | 11 | -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.default: -------------------------------------------------------------------------------- 1 | AF_IOS_SDK=iphonesimulator9.2 2 | AF_MAC_SDK=macosx10.11 3 | AF_TVOS_SDK=appletvsimulator9.1 4 | 5 | AF_CONFIGURATION=Release 6 | 7 | SCAN_WORKSPACE=$AF_WORKSPACE 8 | SCAN_SCHEME=$AF_IOS_FRAMEWORK_SCHEME 9 | SCAN_DESTINATION="OS=9.2,name=iPhone 6s" 10 | SCAN_SDK=$AF_IOS_SDK 11 | SCAN_OUTPUT_DIRECTORY=fastlane/test-output 12 | 13 | EXAMPLE_WORKSPACE=$AF_WORKSPACE 14 | EXAMPLE_SCHEME=$AF_IOS_EXAMPLE_SCHEME 15 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.deploy: -------------------------------------------------------------------------------- 1 | DEPLOY_BRANCH=master 2 | DEPLOY_PLIST_PATH=Framework/Info.plist 3 | DEPLOY_PODSPEC=AFNetworking.podspec 4 | DEPLOY_REMOTE=origin 5 | 6 | DEPLOY_CHANGELOG_PATH=CHANGELOG.md 7 | DEPLOY_CHANGELOG_DELIMITER=--- 8 | 9 | # Used for CHANGELOG Generation and Github Release Management 10 | GITHUB_OWNER=AFNetworking 11 | GITHUB_REPOSITORY=AFNetworking 12 | # CI Should Provide GITHUB_API_TOKEN 13 | 14 | CARTHAGE_FRAMEWORK_NAME=AFNetworking -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios81_xcode7: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=8.1,name=iPhone 4S" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION 3 | SCAN_SDK=iphonesimulator9.0 -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios82: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=8.2,name=iPhone 5" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios83: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=8.3,name=iPhone 5S" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios84: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=8.4,name=iPhone 6" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios90_xcode7: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=9.0,name=iPhone 6 Plus" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION 3 | SCAN_SDK=iphonesimulator9.0 -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios91_xcode71: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=9.1,name=iPhone 6s" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION 3 | SCAN_SDK=iphonesimulator9.1 -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.ios92: -------------------------------------------------------------------------------- 1 | SCAN_DESTINATION="OS=9.2,name=iPhone 6s" 2 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.osx: -------------------------------------------------------------------------------- 1 | SCAN_SCHEME=$AF_OSX_FRAMEWORK_SCHEME 2 | SCAN_DESTINATION="arch=x86_64" 3 | SCAN_SDK=$AF_OSX_SDK 4 | 5 | EXAMPLE_SCHEME=$AF_OSX_EXAMPLE_SCHEME 6 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.tvos90_xcode71: -------------------------------------------------------------------------------- 1 | SCAN_SCHEME=$AF_TVOS_FRAMEWORK_SCHEME 2 | SCAN_DESTINATION="OS=9.0,name=Apple TV 1080p" 3 | SCAN_SDK=appletvsimulator9.0 4 | 5 | EXAMPLE_SCHEME=$AF_TVOS_EXAMPLE_SCHEME 6 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/.env.tvos91: -------------------------------------------------------------------------------- 1 | SCAN_SCHEME=$AF_TVOS_FRAMEWORK_SCHEME 2 | SCAN_DESTINATION="OS=9.1,name=Apple TV 1080p" 3 | SCAN_SDK=$AF_TVOS_SDK 4 | 5 | EXAMPLE_SCHEME=$AF_TVOS_EXAMPLE_SCHEME 6 | EXAMPLE_DESTINATION=$SCAN_DESTINATION -------------------------------------------------------------------------------- /Carthage/Checkouts/AFNetworking/fastlane/Fastfile: -------------------------------------------------------------------------------- 1 | import_from_git( 2 | url: 'https://github.com/AFNetworking/fastlane.git', 3 | branch: '0.0.6' 4 | ) 5 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | # 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | project.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | *.xccheckout 16 | *.moved-aside 17 | DerivedData 18 | *.hmap 19 | *.ipa 20 | *.xcuserstate 21 | 22 | # CocoaPods 23 | # 24 | # We recommend against adding the Pods directory to your .gitignore. However 25 | # you should judge for yourself, the pros and cons are mentioned at: 26 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 27 | # 28 | Pods/ 29 | Podfile.lock -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "Vendors/libwebp"] 2 | path = Vendors/libwebp 3 | url = https://chromium.googlesource.com/webm/libwebp 4 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/.travis.yml: -------------------------------------------------------------------------------- 1 | 2 | language: objective-c 3 | 4 | before_install: 5 | 6 | - export LANG=en_US.UTF-8 7 | - env 8 | - locale 9 | - gem install cocoapods --quiet 10 | - pod --version 11 | - pod setup --silent 12 | - pod repo update --silent 13 | 14 | script: 15 | 16 | - pod lib lint --allow-warnings 17 | - xctool -workspace SDWebImage.xcworkspace -scheme 'SDWebImage' -sdk iphonesimulator -arch i386 build 18 | - xctool -workspace SDWebImage.xcworkspace -scheme 'SDWebImage+WebP' -sdk iphonesimulator -arch i386 build 19 | - xctool -workspace SDWebImage.xcworkspace -scheme 'SDWebImage+MKAnnotation' -sdk iphonesimulator -arch i386 build 20 | 21 | - xctool -workspace SDWebImage.xcworkspace -scheme 'SDWebImage Demo' -sdk iphonesimulator -arch i386 build 22 | 23 | - pod install --project-directory=Tests 24 | - xcodebuild -workspace SDWebImage.xcworkspace -scheme 'Tests' -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 6,OS=latest' test -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Carthage/Build: -------------------------------------------------------------------------------- 1 | ../../../../Carthage/Build -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/CustomPathImages/4ad9ae8eabfec60b40bf48f0bfc2d120: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Examples/CustomPathImages/4ad9ae8eabfec60b40bf48f0bfc2d120 -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Examples/Default-568h@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SDWebImage Demo 4 | // 5 | // Created by Olivier Poitrey on 09/05/12. 6 | // Copyright (c) 2012 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @property (strong, nonatomic) UINavigationController *navigationController; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/DetailViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DetailViewController.h 3 | // SDWebImage Demo 4 | // 5 | // Created by Olivier Poitrey on 09/05/12. 6 | // Copyright (c) 2012 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DetailViewController : UIViewController 12 | 13 | @property (strong, nonatomic) NSURL *imageURL; 14 | 15 | @property (strong, nonatomic) IBOutlet UIImageView *imageView; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/MasterViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MasterViewController.h 3 | // SDWebImage Demo 4 | // 5 | // Created by Olivier Poitrey on 09/05/12. 6 | // Copyright (c) 2012 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class DetailViewController; 12 | 13 | @interface MasterViewController : UITableViewController 14 | 15 | @property (strong, nonatomic) DetailViewController *detailViewController; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/SDWebImage Demo-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.dailymotion.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/SDWebImage Demo-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SDWebImage Demo' target in the 'SDWebImage Demo' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SDWebImage Demo 4 | // 5 | // Created by Olivier Poitrey on 09/05/12. 6 | // Copyright (c) 2012 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/placeholder.png -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/placeholder@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Examples/SDWebImage Demo/placeholder@2x.png -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2009 Olivier Poitrey 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is furnished 8 | to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | 21 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 12 | 13 | 15 | 16 | 18 | 19 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/NSData+ImageContentType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Fabrice Aneche on 06/01/14. 3 | // Copyright (c) 2014 Dailymotion. All rights reserved. 4 | // 5 | 6 | #import 7 | 8 | @interface NSData (ImageContentType) 9 | 10 | /** 11 | * Compute the content type for an image data 12 | * 13 | * @param data the input data 14 | * 15 | * @return the content type as string (i.e. image/jpeg, image/gif) 16 | */ 17 | + (NSString *)sd_contentTypeForImageData:(NSData *)data; 18 | 19 | @end 20 | 21 | 22 | @interface NSData (ImageContentTypeDeprecated) 23 | 24 | + (NSString *)contentTypeForImageData:(NSData *)data __deprecated_msg("Use `sd_contentTypeForImageData:`"); 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/NSData+ImageContentType.m: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Fabrice Aneche on 06/01/14. 3 | // Copyright (c) 2014 Dailymotion. All rights reserved. 4 | // 5 | 6 | #import "NSData+ImageContentType.h" 7 | 8 | 9 | @implementation NSData (ImageContentType) 10 | 11 | + (NSString *)sd_contentTypeForImageData:(NSData *)data { 12 | uint8_t c; 13 | [data getBytes:&c length:1]; 14 | switch (c) { 15 | case 0xFF: 16 | return @"image/jpeg"; 17 | case 0x89: 18 | return @"image/png"; 19 | case 0x47: 20 | return @"image/gif"; 21 | case 0x49: 22 | case 0x4D: 23 | return @"image/tiff"; 24 | case 0x52: 25 | // R as RIFF for WEBP 26 | if ([data length] < 12) { 27 | return nil; 28 | } 29 | 30 | NSString *testString = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(0, 12)] encoding:NSASCIIStringEncoding]; 31 | if ([testString hasPrefix:@"RIFF"] && [testString hasSuffix:@"WEBP"]) { 32 | return @"image/webp"; 33 | } 34 | 35 | return nil; 36 | } 37 | return nil; 38 | } 39 | 40 | @end 41 | 42 | 43 | @implementation NSData (ImageContentTypeDeprecated) 44 | 45 | + (NSString *)contentTypeForImageData:(NSData *)data { 46 | return [self sd_contentTypeForImageData:data]; 47 | } 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/SDWebImageCompat.m: -------------------------------------------------------------------------------- 1 | // 2 | // SDWebImageCompat.m 3 | // SDWebImage 4 | // 5 | // Created by Olivier Poitrey on 11/12/12. 6 | // Copyright (c) 2012 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import "SDWebImageCompat.h" 10 | 11 | #if !__has_feature(objc_arc) 12 | #error SDWebImage is ARC only. Either turn on ARC for the project or use -fobjc-arc flag 13 | #endif 14 | 15 | inline UIImage *SDScaledImageForKey(NSString *key, UIImage *image) { 16 | if (!image) { 17 | return nil; 18 | } 19 | 20 | if ([image.images count] > 0) { 21 | NSMutableArray *scaledImages = [NSMutableArray array]; 22 | 23 | for (UIImage *tempImage in image.images) { 24 | [scaledImages addObject:SDScaledImageForKey(key, tempImage)]; 25 | } 26 | 27 | return [UIImage animatedImageWithImages:scaledImages duration:image.duration]; 28 | } 29 | else { 30 | if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) { 31 | CGFloat scale = 1.0; 32 | if (key.length >= 8) { 33 | NSRange range = [key rangeOfString:@"@2x."]; 34 | if (range.location != NSNotFound) { 35 | scale = 2.0; 36 | } 37 | 38 | range = [key rangeOfString:@"@3x."]; 39 | if (range.location != NSNotFound) { 40 | scale = 3.0; 41 | } 42 | } 43 | 44 | UIImage *scaledImage = [[UIImage alloc] initWithCGImage:image.CGImage scale:scale orientation:image.imageOrientation]; 45 | image = scaledImage; 46 | } 47 | return image; 48 | } 49 | } 50 | 51 | NSString *const SDWebImageErrorDomain = @"SDWebImageErrorDomain"; 52 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/SDWebImageDecoder.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * Created by james on 9/28/11. 6 | * 7 | * For the full copyright and license information, please view the LICENSE 8 | * file that was distributed with this source code. 9 | */ 10 | 11 | #import 12 | #import "SDWebImageCompat.h" 13 | 14 | @interface UIImage (ForceDecode) 15 | 16 | + (UIImage *)decodedImageWithImage:(UIImage *)image; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/SDWebImageOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 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 10 | 11 | @protocol SDWebImageOperation 12 | 13 | - (void)cancel; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/UIImage+GIF.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+GIF.h 3 | // LBGIFImage 4 | // 5 | // Created by Laurin Brandner on 06.01.12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (GIF) 12 | 13 | + (UIImage *)sd_animatedGIFNamed:(NSString *)name; 14 | 15 | + (UIImage *)sd_animatedGIFWithData:(NSData *)data; 16 | 17 | - (UIImage *)sd_animatedImageByScalingAndCroppingToSize:(CGSize)size; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/UIImage+MultiFormat.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+MultiFormat.h 3 | // SDWebImage 4 | // 5 | // Created by Olivier Poitrey on 07/06/13. 6 | // Copyright (c) 2013 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (MultiFormat) 12 | 13 | + (UIImage *)sd_imageWithData:(NSData *)data; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/UIImage+WebP.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+WebP.h 3 | // SDWebImage 4 | // 5 | // Created by Olivier Poitrey on 07/06/13. 6 | // Copyright (c) 2013 Dailymotion. All rights reserved. 7 | // 8 | 9 | #ifdef SD_WEBP 10 | 11 | #import 12 | 13 | // Fix for issue #416 Undefined symbols for architecture armv7 since WebP introduction when deploying to device 14 | void WebPInitPremultiplyNEON(void); 15 | 16 | void WebPInitUpsamplersNEON(void); 17 | 18 | void VP8DspInitNEON(void); 19 | 20 | @interface UIImage (WebP) 21 | 22 | + (UIImage *)sd_imageWithWebPData:(NSData *)data; 23 | 24 | @end 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/SDWebImage/UIView+WebCacheOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 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 10 | #import "SDWebImageManager.h" 11 | 12 | @interface UIView (WebCacheOperation) 13 | 14 | /** 15 | * Set the image load operation (storage in a UIView based dictionary) 16 | * 17 | * @param operation the operation 18 | * @param key key for storing the operation 19 | */ 20 | - (void)sd_setImageLoadOperation:(id)operation forKey:(NSString *)key; 21 | 22 | /** 23 | * Cancel all operations for the current UIView and key 24 | * 25 | * @param key key for identifying the operations 26 | */ 27 | - (void)sd_cancelImageLoadOperationWithKey:(NSString *)key; 28 | 29 | /** 30 | * Just remove the operations corresponding to the current UIView and key without cancelling them 31 | * 32 | * @param key key for identifying the operations 33 | */ 34 | - (void)sd_removeImageLoadOperationWithKey:(NSString *)key; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | 3 | xcodeproj 'SDWebImage Tests' 4 | workspace '../SDWebImage' 5 | 6 | def import_pods 7 | pod 'Expecta', '<=0.3.1' # A Matcher Framework for Objective-C/Cocoa 8 | pod 'SDWebImage', :path => '../' 9 | end 10 | 11 | target :ios do 12 | platform :ios, '5.0' 13 | link_with 'Tests' 14 | import_pods 15 | end 16 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Tests/SDImageCacheTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // SDImageCacheTests.m 3 | // SDWebImage Tests 4 | // 5 | // Created by Bogdan Poplauschi on 20/06/14. 6 | // 7 | // 8 | 9 | #define EXP_SHORTHAND // required by Expecta 10 | 11 | 12 | #import 13 | #import 14 | 15 | #import "SDImageCache.h" 16 | 17 | 18 | @interface SDImageCacheTests : XCTestCase 19 | 20 | @end 21 | 22 | @implementation SDImageCacheTests 23 | 24 | - (void)setUp 25 | { 26 | [super setUp]; 27 | // Put setup code here. This method is called before the invocation of each test method in the class. 28 | } 29 | 30 | - (void)tearDown 31 | { 32 | // Put teardown code here. This method is called after the invocation of each test method in the class. 33 | [super tearDown]; 34 | } 35 | 36 | - (void)testSharedImageCache { 37 | SDImageCache *sharedImageCache = [SDImageCache sharedImageCache]; 38 | 39 | expect(sharedImageCache).toNot.beNil(); 40 | } 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.SDWebImage.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | #import 9 | #import 10 | #endif 11 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Tests/UIImageMultiFormatTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIImageMultiFormatTests.m 3 | // SDWebImage Tests 4 | // 5 | // Created by Bogdan Poplauschi on 18/07/14. 6 | // 7 | // 8 | 9 | #define EXP_SHORTHAND // required by Expecta 10 | 11 | 12 | #import 13 | #import 14 | 15 | #import "UIImage+MultiFormat.h" 16 | 17 | 18 | @interface UIImageMultiFormatTests : XCTestCase 19 | 20 | @end 21 | 22 | 23 | @implementation UIImageMultiFormatTests 24 | 25 | - (void)setUp 26 | { 27 | [super setUp]; 28 | // Put setup code here. This method is called before the invocation of each test method in the class. 29 | } 30 | 31 | - (void)tearDown 32 | { 33 | // Put teardown code here. This method is called after the invocation of each test method in the class. 34 | [super tearDown]; 35 | } 36 | 37 | - (void)testImageOrientationFromImageDataWithInvalidData { 38 | // sync download image 39 | SEL selector = @selector(sd_imageOrientationFromImageData:); 40 | 41 | UIImageOrientation orientation = [[UIImage class] performSelector:selector withObject:nil]; 42 | expect(orientation).to.equal(UIImageOrientationUp); 43 | } 44 | 45 | @end 46 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Tests/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/AUTHORS: -------------------------------------------------------------------------------- 1 | Contributors: 2 | - Charles Munger (clm at google dot com) 3 | - Christian Duvivier (cduvivier at google dot com) 4 | - Djordje Pesut (djordje dot pesut at imgtec dot com) 5 | - James Zern (jzern at google dot com) 6 | - Jan Engelhardt (jengelh at medozas dot de) 7 | - Johann (johann dot koenig at duck dot com) 8 | - Jovan Zelincevic (jovan dot zelincevic at imgtec dot com) 9 | - Jyrki Alakuijala (jyrki at google dot com) 10 | - levytamar82 (tamar dot levy at intel dot com) 11 | - Lou Quillio (louquillio at google dot com) 12 | - Mans Rullgard (mans at mansr dot com) 13 | - Martin Olsson (mnemo at minimum dot se) 14 | - Mikołaj Zalewski (mikolajz at google dot com) 15 | - Noel Chromium (noel at chromium dot org) 16 | - Pascal Massimino (pascal dot massimino at gmail dot com) 17 | - Paweł Hajdan, Jr (phajdan dot jr at chromium dot org) 18 | - Pierre Joye (pierre dot php at gmail dot com) 19 | - Scott LaVarnway (slavarnway at google dot com) 20 | - Scott Talbot (s at chikachow dot org) 21 | - Slobodan Prijic (slobodan dot prijic at imgtec dot com) 22 | - Somnath Banerjee (somnath dot banerjee at gmail dot com) 23 | - Timothy Gu (timothygu99 at gmail dot com) 24 | - Urvang Joshi (urvang at google dot com) 25 | - Vikas Arora (vikasa at google dot com) 26 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/COPYING: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010, Google Inc. All rights reserved. 2 | 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted provided that the following conditions are 5 | met: 6 | 7 | * Redistributions of source code must retain the above copyright 8 | notice, this list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in 12 | the documentation and/or other materials provided with the 13 | distribution. 14 | 15 | * Neither the name of Google nor the names of its contributors may 16 | be used to endorse or promote products derived from this software 17 | without specific prior written permission. 18 | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23 | HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/Makefile.am: -------------------------------------------------------------------------------- 1 | ACLOCAL_AMFLAGS = -I m4 2 | SUBDIRS = src examples man 3 | EXTRA_DIST = COPYING autogen.sh 4 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/PATENTS: -------------------------------------------------------------------------------- 1 | Additional IP Rights Grant (Patents) 2 | ------------------------------------ 3 | 4 | "These implementations" means the copyrightable works that implement the WebM 5 | codecs distributed by Google as part of the WebM Project. 6 | 7 | Google hereby grants to you a perpetual, worldwide, non-exclusive, no-charge, 8 | royalty-free, irrevocable (except as stated in this section) patent license to 9 | make, have made, use, offer to sell, sell, import, transfer, and otherwise 10 | run, modify and propagate the contents of these implementations of WebM, where 11 | such license applies only to those patent claims, both currently owned by 12 | Google and acquired in the future, licensable by Google that are necessarily 13 | infringed by these implementations of WebM. This grant does not include claims 14 | that would be infringed only as a consequence of further modification of these 15 | implementations. If you or your agent or exclusive licensee institute or order 16 | or agree to the institution of patent litigation or any other patent 17 | enforcement activity against any entity (including a cross-claim or 18 | counterclaim in a lawsuit) alleging that any of these implementations of WebM 19 | or any code incorporated within any of these implementations of WebM 20 | constitutes direct or contributory patent infringement, or inducement of 21 | patent infringement, then any patent rights granted to you under this License 22 | for these implementations of WebM shall terminate as of the date such 23 | litigation is filed. 24 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/autogen.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh -e 2 | exec autoreconf -fi 3 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/doc/README: -------------------------------------------------------------------------------- 1 | 2 | Generate libwebp Container Spec Docs from Text Source 3 | ===================================================== 4 | 5 | HTML generation requires kramdown [1], easily installed as a 6 | rubygem [2]. Rubygems installation should satisfy dependencies 7 | automatically. 8 | 9 | [1]: http://kramdown.rubyforge.org/ 10 | [2]: http://rubygems.org/ 11 | 12 | HTML generation can then be done from the project root: 13 | 14 | $ kramdown doc/webp-container-spec.txt --template doc/template.html > \ 15 | doc/output/webp-container-spec.html 16 | 17 | kramdown can optionally syntax highlight code blocks, using CodeRay [3], 18 | a dependency of kramdown that rubygems will install automatically. The 19 | following will apply inline CSS styling; an external stylesheet is not 20 | needed. 21 | 22 | $ kramdown doc/webp-lossless-bitstream-spec.txt --template \ 23 | doc/template.html --coderay-css style --coderay-line-numbers ' ' \ 24 | --coderay-default-lang c > \ 25 | doc/output/webp-lossless-bitstream-spec.html 26 | 27 | Optimally, use kramdown 0.13.7 or newer if syntax highlighting desired. 28 | 29 | [3]: http://coderay.rubychan.de/ 30 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/doc/TODO: -------------------------------------------------------------------------------- 1 | , 20111004 2 | 3 | * Determine that normative RFC 2119 terms (MUST, SHOULD, MAY, etc.) are 4 | truly intended in all cases where capitalized. 5 | 6 | * Several passages could be made clearer. 7 | 8 | * Overall edit for scope. Portions are phrased as an introduction to 9 | the 0.1.3 RIFF container additions, rather than a holistic guide to 10 | WebP. 11 | 12 | * To wit, suggest s/[spec|specification]/guide/g . "Spec" can imply a 13 | standards track; in any case it's too formal for a work in progress. 14 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | ################################################################################ 4 | # libexample_util 5 | 6 | include $(CLEAR_VARS) 7 | 8 | LOCAL_SRC_FILES := \ 9 | example_util.c \ 10 | 11 | LOCAL_CFLAGS := $(WEBP_CFLAGS) 12 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 13 | 14 | LOCAL_MODULE := example_util 15 | 16 | include $(BUILD_STATIC_LIBRARY) 17 | 18 | ################################################################################ 19 | # cwebp 20 | 21 | include $(CLEAR_VARS) 22 | 23 | # Note: to enable jpeg/png encoding the sources from AOSP can be used with 24 | # minor modification to their Android.mk files. 25 | LOCAL_SRC_FILES := \ 26 | cwebp.c \ 27 | jpegdec.c \ 28 | metadata.c \ 29 | pngdec.c \ 30 | tiffdec.c \ 31 | webpdec.c \ 32 | 33 | LOCAL_CFLAGS := $(WEBP_CFLAGS) 34 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 35 | LOCAL_STATIC_LIBRARIES := example_util webp 36 | 37 | LOCAL_MODULE := cwebp 38 | 39 | include $(BUILD_EXECUTABLE) 40 | 41 | ################################################################################ 42 | # dwebp 43 | 44 | include $(CLEAR_VARS) 45 | 46 | LOCAL_SRC_FILES := \ 47 | dwebp.c \ 48 | 49 | LOCAL_CFLAGS := $(WEBP_CFLAGS) 50 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 51 | LOCAL_STATIC_LIBRARIES := example_util webp 52 | 53 | LOCAL_MODULE := dwebp 54 | 55 | include $(BUILD_EXECUTABLE) 56 | 57 | ################################################################################ 58 | # webpmux 59 | 60 | include $(CLEAR_VARS) 61 | 62 | LOCAL_SRC_FILES := \ 63 | webpmux.c \ 64 | 65 | LOCAL_CFLAGS := $(WEBP_CFLAGS) 66 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 67 | LOCAL_STATIC_LIBRARIES := example_util webpmux webp 68 | 69 | LOCAL_MODULE := webpmux_example 70 | 71 | include $(BUILD_EXECUTABLE) 72 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/jpegdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // JPEG decode. 11 | 12 | #ifndef WEBP_EXAMPLES_JPEGDEC_H_ 13 | #define WEBP_EXAMPLES_JPEGDEC_H_ 14 | 15 | #include 16 | #include "webp/types.h" 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | struct Metadata; 23 | struct WebPPicture; 24 | 25 | // Reads a JPEG from 'in_file', returning the decoded output in 'pic'. 26 | // The output is RGB. 27 | // Returns true on success. 28 | int ReadJPEG(FILE* in_file, struct WebPPicture* const pic, 29 | struct Metadata* const metadata); 30 | 31 | #ifdef __cplusplus 32 | } // extern "C" 33 | #endif 34 | 35 | #endif // WEBP_EXAMPLES_JPEGDEC_H_ 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/metadata.c: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Metadata types and functions. 11 | // 12 | 13 | #include "./metadata.h" 14 | 15 | #include 16 | #include 17 | 18 | #include "webp/types.h" 19 | 20 | void MetadataInit(Metadata* const metadata) { 21 | if (metadata == NULL) return; 22 | memset(metadata, 0, sizeof(*metadata)); 23 | } 24 | 25 | void MetadataPayloadDelete(MetadataPayload* const payload) { 26 | if (payload == NULL) return; 27 | free(payload->bytes); 28 | payload->bytes = NULL; 29 | payload->size = 0; 30 | } 31 | 32 | void MetadataFree(Metadata* const metadata) { 33 | if (metadata == NULL) return; 34 | MetadataPayloadDelete(&metadata->exif); 35 | MetadataPayloadDelete(&metadata->iccp); 36 | MetadataPayloadDelete(&metadata->xmp); 37 | } 38 | 39 | int MetadataCopy(const char* metadata, size_t metadata_len, 40 | MetadataPayload* const payload) { 41 | if (metadata == NULL || metadata_len == 0 || payload == NULL) return 0; 42 | payload->bytes = (uint8_t*)malloc(metadata_len); 43 | if (payload->bytes == NULL) return 0; 44 | payload->size = metadata_len; 45 | memcpy(payload->bytes, metadata, metadata_len); 46 | return 1; 47 | } 48 | 49 | // ----------------------------------------------------------------------------- 50 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/metadata.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Metadata types and functions. 11 | // 12 | 13 | #ifndef WEBP_EXAMPLES_METADATA_H_ 14 | #define WEBP_EXAMPLES_METADATA_H_ 15 | 16 | #include "webp/types.h" 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | typedef struct MetadataPayload { 23 | uint8_t* bytes; 24 | size_t size; 25 | } MetadataPayload; 26 | 27 | typedef struct Metadata { 28 | MetadataPayload exif; 29 | MetadataPayload iccp; 30 | MetadataPayload xmp; 31 | } Metadata; 32 | 33 | #define METADATA_OFFSET(x) offsetof(Metadata, x) 34 | 35 | void MetadataInit(Metadata* const metadata); 36 | void MetadataPayloadDelete(MetadataPayload* const payload); 37 | void MetadataFree(Metadata* const metadata); 38 | 39 | // Stores 'metadata' to 'payload->bytes', returns false on allocation error. 40 | int MetadataCopy(const char* metadata, size_t metadata_len, 41 | MetadataPayload* const payload); 42 | 43 | #ifdef __cplusplus 44 | } // extern "C" 45 | #endif 46 | 47 | #endif // WEBP_EXAMPLES_METADATA_H_ 48 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/pngdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // PNG decode. 11 | 12 | #ifndef WEBP_EXAMPLES_PNGDEC_H_ 13 | #define WEBP_EXAMPLES_PNGDEC_H_ 14 | 15 | #include 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | struct Metadata; 22 | struct WebPPicture; 23 | 24 | // Reads a PNG from 'in_file', returning the decoded output in 'pic'. 25 | // If 'keep_alpha' is true and the PNG has an alpha channel, the output is RGBA 26 | // otherwise it will be RGB. 27 | // Returns true on success. 28 | int ReadPNG(FILE* in_file, struct WebPPicture* const pic, int keep_alpha, 29 | struct Metadata* const metadata); 30 | 31 | #ifdef __cplusplus 32 | } // extern "C" 33 | #endif 34 | 35 | #endif // WEBP_EXAMPLES_PNGDEC_H_ 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/test.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/test.webp -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/test_ref.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/test_ref.ppm -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/tiffdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // TIFF decode. 11 | 12 | #ifndef WEBP_EXAMPLES_TIFFDEC_H_ 13 | #define WEBP_EXAMPLES_TIFFDEC_H_ 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | struct Metadata; 20 | struct WebPPicture; 21 | 22 | // Reads a TIFF from 'filename', returning the decoded output in 'pic'. 23 | // If 'keep_alpha' is true and the TIFF has an alpha channel, the output is RGBA 24 | // otherwise it will be RGB. 25 | // Returns true on success. 26 | int ReadTIFF(const char* const filename, 27 | struct WebPPicture* const pic, int keep_alpha, 28 | struct Metadata* const metadata); 29 | 30 | #ifdef __cplusplus 31 | } // extern "C" 32 | #endif 33 | 34 | #endif // WEBP_EXAMPLES_TIFFDEC_H_ 35 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/webpdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // WebP decode. 11 | 12 | #ifndef WEBP_EXAMPLES_WEBPDEC_H_ 13 | #define WEBP_EXAMPLES_WEBPDEC_H_ 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | struct Metadata; 20 | struct WebPPicture; 21 | 22 | // Reads a WebP from 'in_file', returning the decoded output in 'pic'. 23 | // If 'keep_alpha' is true and the WebP has an alpha channel, the output is 24 | // RGBA otherwise it will be RGB. 25 | // Returns true on success. 26 | int ReadWebP(const char* const in_file, struct WebPPicture* const pic, 27 | int keep_alpha, struct Metadata* const metadata); 28 | 29 | #ifdef __cplusplus 30 | } // extern "C" 31 | #endif 32 | 33 | #endif // WEBP_EXAMPLES_WEBPDEC_H_ 34 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/examples/wicdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Windows Imaging Component (WIC) decode. 11 | 12 | #ifndef WEBP_EXAMPLES_WICDEC_H_ 13 | #define WEBP_EXAMPLES_WICDEC_H_ 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | struct Metadata; 20 | struct WebPPicture; 21 | 22 | // Reads an image from 'filename', returning the decoded output in 'pic'. 23 | // If 'keep_alpha' is true and the image has an alpha channel, the output is 24 | // RGBA otherwise it will be RGB. 25 | // Returns true on success. 26 | int ReadPictureWithWIC(const char* const filename, 27 | struct WebPPicture* const pic, int keep_alpha, 28 | struct Metadata* const metadata); 29 | 30 | #ifdef __cplusplus 31 | } // extern "C" 32 | #endif 33 | 34 | #endif // WEBP_EXAMPLES_WICDEC_H_ 35 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/man/Makefile.am: -------------------------------------------------------------------------------- 1 | man_MANS = cwebp.1 dwebp.1 2 | if WANT_MUX 3 | man_MANS += webpmux.1 4 | endif 5 | if BUILD_GIF2WEBP 6 | man_MANS += gif2webp.1 7 | endif 8 | if BUILD_VWEBP 9 | man_MANS += vwebp.1 10 | endif 11 | EXTRA_DIST = $(man_MANS) 12 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/dec/Makefile.am: -------------------------------------------------------------------------------- 1 | noinst_LTLIBRARIES = libwebpdecode.la 2 | 3 | libwebpdecode_la_SOURCES = 4 | libwebpdecode_la_SOURCES += alpha.c 5 | libwebpdecode_la_SOURCES += alphai.h 6 | libwebpdecode_la_SOURCES += buffer.c 7 | libwebpdecode_la_SOURCES += decode_vp8.h 8 | libwebpdecode_la_SOURCES += frame.c 9 | libwebpdecode_la_SOURCES += idec.c 10 | libwebpdecode_la_SOURCES += io.c 11 | libwebpdecode_la_SOURCES += quant.c 12 | libwebpdecode_la_SOURCES += tree.c 13 | libwebpdecode_la_SOURCES += vp8.c 14 | libwebpdecode_la_SOURCES += vp8i.h 15 | libwebpdecode_la_SOURCES += vp8l.c 16 | libwebpdecode_la_SOURCES += vp8li.h 17 | libwebpdecode_la_SOURCES += webp.c 18 | libwebpdecode_la_SOURCES += webpi.h 19 | 20 | libwebpdecodeinclude_HEADERS = 21 | libwebpdecodeinclude_HEADERS += ../webp/decode.h 22 | libwebpdecodeinclude_HEADERS += ../webp/types.h 23 | noinst_HEADERS = 24 | noinst_HEADERS += ../webp/format_constants.h 25 | 26 | libwebpdecode_la_CPPFLAGS = $(USE_EXPERIMENTAL_CODE) 27 | libwebpdecodeincludedir = $(includedir)/webp 28 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/demux/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpdemux.la 2 | 3 | libwebpdemux_la_SOURCES = 4 | libwebpdemux_la_SOURCES += demux.c 5 | 6 | libwebpdemuxinclude_HEADERS = 7 | libwebpdemuxinclude_HEADERS += ../webp/demux.h 8 | libwebpdemuxinclude_HEADERS += ../webp/mux_types.h 9 | libwebpdemuxinclude_HEADERS += ../webp/types.h 10 | 11 | libwebpdemux_la_LIBADD = ../libwebp.la 12 | libwebpdemux_la_LDFLAGS = -no-undefined -version-info 1:2:0 13 | libwebpdemuxincludedir = $(includedir)/webp 14 | pkgconfig_DATA = libwebpdemux.pc 15 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/demux/libwebpdemux.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpdemux 7 | Description: Library for parsing the WebP graphics format container 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.2.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpdemux 12 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/dsp/enc_avx2.c: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // AVX2 version of speed-critical encoding functions. 11 | 12 | #include "./dsp.h" 13 | 14 | #if defined(WEBP_USE_AVX2) 15 | 16 | #endif // WEBP_USE_AVX2 17 | 18 | //------------------------------------------------------------------------------ 19 | // Entry point 20 | 21 | extern void VP8EncDspInitAVX2(void); 22 | 23 | void VP8EncDspInitAVX2(void) { 24 | } 25 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/enc/Makefile.am: -------------------------------------------------------------------------------- 1 | noinst_LTLIBRARIES = libwebpencode.la 2 | 3 | libwebpencode_la_SOURCES = 4 | libwebpencode_la_SOURCES += alpha.c 5 | libwebpencode_la_SOURCES += analysis.c 6 | libwebpencode_la_SOURCES += backward_references.c 7 | libwebpencode_la_SOURCES += config.c 8 | libwebpencode_la_SOURCES += cost.c 9 | libwebpencode_la_SOURCES += cost.h 10 | libwebpencode_la_SOURCES += filter.c 11 | libwebpencode_la_SOURCES += frame.c 12 | libwebpencode_la_SOURCES += histogram.c 13 | libwebpencode_la_SOURCES += iterator.c 14 | libwebpencode_la_SOURCES += picture.c 15 | libwebpencode_la_SOURCES += picture_csp.c 16 | libwebpencode_la_SOURCES += picture_psnr.c 17 | libwebpencode_la_SOURCES += picture_rescale.c 18 | libwebpencode_la_SOURCES += picture_tools.c 19 | libwebpencode_la_SOURCES += quant.c 20 | libwebpencode_la_SOURCES += syntax.c 21 | libwebpencode_la_SOURCES += token.c 22 | libwebpencode_la_SOURCES += tree.c 23 | libwebpencode_la_SOURCES += vp8enci.h 24 | libwebpencode_la_SOURCES += vp8l.c 25 | libwebpencode_la_SOURCES += webpenc.c 26 | 27 | libwebpencodeinclude_HEADERS = 28 | libwebpencodeinclude_HEADERS += ../webp/encode.h 29 | libwebpencodeinclude_HEADERS += ../webp/types.h 30 | noinst_HEADERS = 31 | noinst_HEADERS += ../webp/format_constants.h 32 | 33 | libwebpencode_la_LDFLAGS = -lm 34 | libwebpencode_la_CPPFLAGS = $(USE_EXPERIMENTAL_CODE) 35 | libwebpencodeincludedir = $(includedir)/webp 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/libwebp.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebp 7 | Description: Library for the WebP graphics format 8 | Version: @PACKAGE_VERSION@ 9 | Cflags: -I${includedir} 10 | Libs: -L${libdir} -lwebp 11 | Libs.private: -lm @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 12 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/libwebpdecoder.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpdecoder 7 | Description: Library for the WebP graphics format (decode only) 8 | Version: @PACKAGE_VERSION@ 9 | Cflags: -I${includedir} 10 | Libs: -L${libdir} -lwebpdecoder 11 | Libs.private: -lm @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 12 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/mux/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpmux.la 2 | 3 | libwebpmux_la_SOURCES = 4 | libwebpmux_la_SOURCES += muxedit.c 5 | libwebpmux_la_SOURCES += muxi.h 6 | libwebpmux_la_SOURCES += muxinternal.c 7 | libwebpmux_la_SOURCES += muxread.c 8 | 9 | libwebpmuxinclude_HEADERS = 10 | libwebpmuxinclude_HEADERS += ../webp/mux.h 11 | libwebpmuxinclude_HEADERS += ../webp/mux_types.h 12 | libwebpmuxinclude_HEADERS += ../webp/types.h 13 | 14 | libwebpmux_la_LIBADD = ../libwebp.la 15 | libwebpmux_la_LDFLAGS = -no-undefined -version-info 1:2:0 16 | libwebpmuxincludedir = $(includedir)/webp 17 | pkgconfig_DATA = libwebpmux.pc 18 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/mux/libwebpmux.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpmux 7 | Description: Library for manipulating the WebP graphics format container 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.2.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpmux 12 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/utils/Makefile.am: -------------------------------------------------------------------------------- 1 | noinst_LTLIBRARIES = libwebputils.la 2 | 3 | if BUILD_LIBWEBPDECODER 4 | noinst_LTLIBRARIES += libwebputilsdecode.la 5 | endif 6 | 7 | common_HEADERS = ../webp/types.h 8 | commondir = $(includedir)/webp 9 | 10 | COMMON_SOURCES = 11 | COMMON_SOURCES += bit_reader.c 12 | COMMON_SOURCES += bit_reader.h 13 | COMMON_SOURCES += bit_reader_inl.h 14 | COMMON_SOURCES += color_cache.c 15 | COMMON_SOURCES += color_cache.h 16 | COMMON_SOURCES += endian_inl.h 17 | COMMON_SOURCES += filters.c 18 | COMMON_SOURCES += filters.h 19 | COMMON_SOURCES += huffman.c 20 | COMMON_SOURCES += huffman.h 21 | COMMON_SOURCES += quant_levels_dec.c 22 | COMMON_SOURCES += quant_levels_dec.h 23 | COMMON_SOURCES += rescaler.c 24 | COMMON_SOURCES += rescaler.h 25 | COMMON_SOURCES += random.c 26 | COMMON_SOURCES += random.h 27 | COMMON_SOURCES += thread.c 28 | COMMON_SOURCES += thread.h 29 | COMMON_SOURCES += utils.c 30 | COMMON_SOURCES += utils.h 31 | 32 | ENC_SOURCES = 33 | ENC_SOURCES += bit_writer.c 34 | ENC_SOURCES += bit_writer.h 35 | ENC_SOURCES += huffman_encode.c 36 | ENC_SOURCES += huffman_encode.h 37 | ENC_SOURCES += quant_levels.c 38 | ENC_SOURCES += quant_levels.h 39 | 40 | libwebputils_la_SOURCES = $(COMMON_SOURCES) $(ENC_SOURCES) 41 | 42 | if BUILD_LIBWEBPDECODER 43 | libwebputilsdecode_la_SOURCES = $(COMMON_SOURCES) 44 | endif 45 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/utils/color_cache.c: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Color Cache for WebP Lossless 11 | // 12 | // Author: Jyrki Alakuijala (jyrki@google.com) 13 | 14 | #include 15 | #include 16 | #include "./color_cache.h" 17 | #include "../utils/utils.h" 18 | 19 | //------------------------------------------------------------------------------ 20 | // VP8LColorCache. 21 | 22 | int VP8LColorCacheInit(VP8LColorCache* const cc, int hash_bits) { 23 | const int hash_size = 1 << hash_bits; 24 | assert(cc != NULL); 25 | assert(hash_bits > 0); 26 | cc->colors_ = (uint32_t*)WebPSafeCalloc((uint64_t)hash_size, 27 | sizeof(*cc->colors_)); 28 | if (cc->colors_ == NULL) return 0; 29 | cc->hash_shift_ = 32 - hash_bits; 30 | return 1; 31 | } 32 | 33 | void VP8LColorCacheClear(VP8LColorCache* const cc) { 34 | if (cc != NULL) { 35 | WebPSafeFree(cc->colors_); 36 | cc->colors_ = NULL; 37 | } 38 | } 39 | 40 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/utils/quant_levels.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_H_ 16 | 17 | #include 18 | 19 | #include "../webp/types.h" 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | // Replace the input 'data' of size 'width'x'height' with 'num-levels' 26 | // quantized values. If not NULL, 'sse' will contain the sum of squared error. 27 | // Valid range for 'num_levels' is [2, 256]. 28 | // Returns false in case of error (data is NULL, or parameters are invalid). 29 | int QuantizeLevels(uint8_t* const data, int width, int height, int num_levels, 30 | uint64_t* const sse); 31 | 32 | #ifdef __cplusplus 33 | } // extern "C" 34 | #endif 35 | 36 | #endif /* WEBP_UTILS_QUANT_LEVELS_H_ */ 37 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/utils/quant_levels_dec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane de-quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_DEC_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_DEC_H_ 16 | 17 | #include "../webp/types.h" 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | // Apply post-processing to input 'data' of size 'width'x'height' assuming that 24 | // the source was quantized to a reduced number of levels. 25 | // Strength is in [0..100] and controls the amount of dithering applied. 26 | // Returns false in case of error (data is NULL, invalid parameters, 27 | // malloc failure, ...). 28 | int WebPDequantizeLevels(uint8_t* const data, int width, int height, 29 | int strength); 30 | 31 | #ifdef __cplusplus 32 | } // extern "C" 33 | #endif 34 | 35 | #endif /* WEBP_UTILS_QUANT_LEVELS_DEC_H_ */ 36 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/src/webp/types.h: -------------------------------------------------------------------------------- 1 | // Copyright 2010 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Common types 11 | // 12 | // Author: Skal (pascal.massimino@gmail.com) 13 | 14 | #ifndef WEBP_WEBP_TYPES_H_ 15 | #define WEBP_WEBP_TYPES_H_ 16 | 17 | #include // for size_t 18 | 19 | #ifndef _MSC_VER 20 | #include 21 | #if defined(__cplusplus) || !defined(__STRICT_ANSI__) || \ 22 | (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) 23 | #define WEBP_INLINE inline 24 | #else 25 | #define WEBP_INLINE 26 | #endif 27 | #else 28 | typedef signed char int8_t; 29 | typedef unsigned char uint8_t; 30 | typedef signed short int16_t; 31 | typedef unsigned short uint16_t; 32 | typedef signed int int32_t; 33 | typedef unsigned int uint32_t; 34 | typedef unsigned long long int uint64_t; 35 | typedef long long int int64_t; 36 | #define WEBP_INLINE __forceinline 37 | #endif /* _MSC_VER */ 38 | 39 | #ifndef WEBP_EXTERN 40 | // This explicitly marks library functions and allows for changing the 41 | // signature for e.g., Windows DLL builds. 42 | #define WEBP_EXTERN(type) extern type 43 | #endif /* WEBP_EXTERN */ 44 | 45 | // Macro to check ABI compatibility (same major revision number) 46 | #define WEBP_ABI_IS_INCOMPATIBLE(a, b) (((a) >> 8) != ((b) >> 8)) 47 | 48 | #endif /* WEBP_WEBP_TYPES_H_ */ 49 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/README: -------------------------------------------------------------------------------- 1 | Building: 2 | ========= 3 | 4 | JNI SWIG bindings: 5 | ------------------ 6 | $ gcc -shared -fPIC -fno-strict-aliasing -O2 \ 7 | -I/path/to/your/jdk/includes \ 8 | libwebp_java_wrap.c \ 9 | -lwebp \ 10 | -o libwebp_jni.so 11 | 12 | -------------------------------------- BEGIN PSEUDO EXAMPLE 13 | import com.google.webp.libwebp; 14 | 15 | import java.lang.reflect.Method; 16 | 17 | public class libwebp_jni_example { 18 | static { 19 | System.loadLibrary("webp_jni"); 20 | } 21 | 22 | /** 23 | * usage: java -cp libwebp.jar:. libwebp_jni_example 24 | */ 25 | public static void main(String argv[]) { 26 | final int version = libwebp.WebPGetDecoderVersion(); 27 | System.out.println("libwebp version: " + Integer.toHexString(version)); 28 | 29 | System.out.println("libwebp methods:"); 30 | final Method[] libwebpMethods = libwebp.class.getDeclaredMethods(); 31 | for (int i = 0; i < libwebpMethods.length; i++) { 32 | System.out.println(libwebpMethods[i]); 33 | } 34 | } 35 | } 36 | -------------------------------------- END PSEUDO EXAMPLE 37 | 38 | $ javac -cp libwebp.jar libwebp_jni_example.java 39 | $ java -Djava.library.path=. -cp libwebp.jar:. libwebp_jni_example 40 | 41 | Python SWIG bindings: 42 | --------------------- 43 | $ python setup.py build_ext 44 | $ python setup.py install --prefix=pylocal 45 | 46 | -------------------------------------- BEGIN PSEUDO EXAMPLE 47 | import glob 48 | import sys 49 | sys.path.append(glob.glob('pylocal/lib/python*/site-packages')[0]) 50 | 51 | from com.google.webp import libwebp 52 | print "libwebp decoder version: %x" % libwebp.WebPGetDecoderVersion() 53 | 54 | print "libwebp attributes:" 55 | for attr in dir(libwebp): print attr 56 | -------------------------------------- END PSEUDO EXAMPLE 57 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/libwebp.go: -------------------------------------------------------------------------------- 1 | /* ---------------------------------------------------------------------------- 2 | * This file was automatically generated by SWIG (http://www.swig.org). 3 | * Version 2.0.10 4 | * 5 | * This file is not intended to be easily readable and contains a number of 6 | * coding conventions designed to improve portability and efficiency. Do not make 7 | * changes to this file unless you know what you are doing--modify the SWIG 8 | * interface file instead. 9 | * ----------------------------------------------------------------------------- */ 10 | 11 | package libwebp 12 | 13 | import _ "runtime/cgo" 14 | import "unsafe" 15 | 16 | type _ unsafe.Pointer 17 | 18 | type _swig_fnptr *byte 19 | type _swig_memberptr *byte 20 | 21 | //extern libwebpSwigCgocall 22 | func SwigCgocall() 23 | 24 | //extern libwebpSwigCgocallDone 25 | func SwigCgocallDone() 26 | 27 | //extern libwebpSwigCgocallBack 28 | func SwigCgocallBack() 29 | 30 | //extern libwebpSwigCgocallBackDone 31 | func SwigCgocallBackDone() 32 | 33 | func WebPGetDecoderVersion() int 34 | func Wrapped_WebPGetInfo(string, []int, []int) int 35 | 36 | // WebPGetInfo has 2 output parameters, provide a version in the more natural 37 | // go idiom: 38 | func WebPGetInfo(webp []byte) (ok bool, width int, height int) { 39 | w := []int{0} 40 | h := []int{0} 41 | ok = Wrapped_WebPGetInfo(string(webp), w, h) != 0 42 | width = w[0] 43 | height = h[0] 44 | return 45 | } 46 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/libwebp.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/libwebp.jar -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/libwebp_gc.c: -------------------------------------------------------------------------------- 1 | /* ---------------------------------------------------------------------------- 2 | * This file was automatically generated by SWIG (http://www.swig.org). 3 | * Version 2.0.10 4 | * 5 | * This file is not intended to be easily readable and contains a number of 6 | * coding conventions designed to improve portability and efficiency. Do not make 7 | * changes to this file unless you know what you are doing--modify the SWIG 8 | * interface file instead. 9 | * ----------------------------------------------------------------------------- */ 10 | 11 | /* This file should be compiled with 6c/8c. */ 12 | #pragma dynimport _ _ "libwebp_go.so" 13 | 14 | #include "runtime.h" 15 | #include "cgocall.h" 16 | 17 | #ifdef _64BIT 18 | #define SWIG_PARM_SIZE 8 19 | #else 20 | #define SWIG_PARM_SIZE 4 21 | #endif 22 | 23 | #pragma dynimport _wrap_WebPGetDecoderVersion _wrap_WebPGetDecoderVersion "" 24 | extern void (*_wrap_WebPGetDecoderVersion)(void*); 25 | static void (*x_wrap_WebPGetDecoderVersion)(void*) = _wrap_WebPGetDecoderVersion; 26 | 27 | void 28 | ·WebPGetDecoderVersion(struct { 29 | uint8 x[SWIG_PARM_SIZE]; 30 | } p) 31 | 32 | { 33 | runtime·cgocall(x_wrap_WebPGetDecoderVersion, &p); 34 | } 35 | 36 | 37 | 38 | #pragma dynimport _wrap_wrapped_WebPGetInfo _wrap_wrapped_WebPGetInfo "" 39 | extern void (*_wrap_wrapped_WebPGetInfo)(void*); 40 | static void (*x_wrap_wrapped_WebPGetInfo)(void*) = _wrap_wrapped_WebPGetInfo; 41 | 42 | void 43 | ·Wrapped_WebPGetInfo(struct { 44 | uint8 x[(2 * SWIG_PARM_SIZE) + (3 * SWIG_PARM_SIZE) + (3 * SWIG_PARM_SIZE) + SWIG_PARM_SIZE]; 45 | } p) 46 | 47 | { 48 | runtime·cgocall(x_wrap_wrapped_WebPGetInfo, &p); 49 | } 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/Vendors/libwebp/swig/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | 3 | """distutils script for libwebp python module.""" 4 | 5 | from distutils.core import setup 6 | from distutils.extension import Extension 7 | import os 8 | import shutil 9 | import tempfile 10 | 11 | tmpdir = tempfile.mkdtemp() 12 | package = "com.google.webp" 13 | package_path = os.path.join(tmpdir, *package.split(".")) 14 | os.makedirs(package_path) 15 | 16 | # Create __init_.py files along the package path. 17 | initpy_path = tmpdir 18 | for d in package.split("."): 19 | initpy_path = os.path.join(initpy_path, d) 20 | open(os.path.join(initpy_path, "__init__.py"), "w").close() 21 | 22 | shutil.copy2("libwebp.py", package_path) 23 | setup(name="libwebp", 24 | version="0.0", 25 | description="libwebp python wrapper", 26 | long_description="Provides access to 'simple' libwebp decode interface", 27 | license="BSD", 28 | url="http://developers.google.com/speed/webp", 29 | ext_package=package, 30 | ext_modules=[Extension("_libwebp", 31 | ["libwebp_python_wrap.c"], 32 | libraries=["webp"], 33 | ), 34 | ], 35 | package_dir={"": tmpdir}, 36 | packages=["com", "com.google", "com.google.webp"], 37 | py_modules=[package + ".libwebp"], 38 | ) 39 | 40 | shutil.rmtree(tmpdir) 41 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/WebImage/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.dailymotion.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Carthage/Checkouts/SDWebImage/WebImage/WebImage.h: -------------------------------------------------------------------------------- 1 | // 2 | // WebImage.h 3 | // WebImage 4 | // 5 | // Created by Florent Vilmart on 2015-03-14. 6 | // Copyright (c) 2015 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for WebImage. 12 | FOUNDATION_EXPORT double WebImageVersionNumber; 13 | 14 | //! Project version string for WebImage. 15 | FOUNDATION_EXPORT const unsigned char WebImageVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | #import 20 | #import 21 | #import 22 | #import 23 | #import 24 | #import 25 | #import 26 | #import 27 | #import 28 | #import 29 | #import 30 | #import 31 | #import 32 | #import 33 | #import 34 | #import 35 | #import 36 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Wang Shudao 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /PrefixHeader.pch: -------------------------------------------------------------------------------- 1 | // 2 | // PrefixHeader.pch 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #ifndef PrefixHeader_pch 10 | #define PrefixHeader_pch 11 | 12 | // Include any system framework and library headers here that should be included in all compilation units. 13 | // You will also need to set the Prefix Header build setting of one or more of your targets to reference this file. 14 | @import AFNetworking; 15 | @import WebImage; 16 | #import "Masonry.h" 17 | #import "LxDBAnything.h" 18 | #import "ViewUtils.h" 19 | 20 | #define kScreenWidth [UIScreen mainScreen].bounds.size.width 21 | #define kScreenHeight [UIScreen mainScreen].bounds.size.height 22 | #define kScreenBounds [UIScreen mainScreen].bounds 23 | 24 | #endif /* PrefixHeader_pch */ 25 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # WSDZhihuDaily 2 | An imitation of Zhihu Daily iOS app 3 | 4 | ![](zh-home.gif) 5 | ![](section.gif) 6 | ![](layer_perfect.gif) 7 | ![](sidebar.gif) 8 | ![](load_more.gif) 9 | -------------------------------------------------------------------------------- /Reveal.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Reveal.framework/Reveal: -------------------------------------------------------------------------------- 1 | Versions/Current/Reveal -------------------------------------------------------------------------------- /Reveal.framework/Versions/A/Headers/IBANetServiceTypes.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014 Itty Bitty Apps Pty Ltd. All rights reserved. 3 | 4 | #ifndef reveal_core_IBANetServiceTypes_h 5 | #define reveal_core_IBANetServiceTypes_h 6 | #import 7 | 8 | typedef NS_ENUM(uint32_t, IBANetServiceInterface) { 9 | IBANetServiceInterfaceAny = kDNSServiceInterfaceIndexAny, 10 | IBANetServiceInterfaceLocalOnly = kDNSServiceInterfaceIndexLocalOnly, 11 | IBANetServiceInterfaceUnicast = kDNSServiceInterfaceIndexUnicast, 12 | IBANetServiceInterfaceP2P = kDNSServiceInterfaceIndexP2P 13 | }; 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /Reveal.framework/Versions/A/Headers/IBARevealLoader.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013 Itty Bitty Apps. All rights reserved. 3 | 4 | #import 5 | 6 | extern NSString * const IBARevealLoaderRequestStartNotification; 7 | extern NSString * const IBARevealLoaderRequestStopNotification; 8 | 9 | extern NSString * const IBARevealLoaderSetOptionsNotification; 10 | extern NSString * const IBARevealLoaderOptionsLogLevelMaskKey; 11 | 12 | @interface IBARevealLoader : NSObject 13 | 14 | + (void)startServer; 15 | + (void)stopServer; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Reveal.framework/Versions/A/Headers/Reveal.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013 Itty Bitty Apps Pty Ltd. All rights reserved. 2 | // 3 | 4 | #import "IBARevealLogger.h" 5 | #import "IBARevealLoader.h" 6 | -------------------------------------------------------------------------------- /Reveal.framework/Versions/A/Reveal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/Reveal.framework/Versions/A/Reveal -------------------------------------------------------------------------------- /Reveal.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /WSDZhihuDaily.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /WSDZhihuDaily.xcodeproj/xcuserdata/wangshudao.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | WSDZhihuDaily.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | D252F2F81C2C4BA5009F8535 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/ menubg.imageset/ menubg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/ menubg.imageset/ menubg.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/ menubg.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : " menubg.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@3x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "size" : "60x60", 25 | "idiom" : "iphone", 26 | "filename" : "AppIcon60x60@2x.png", 27 | "scale" : "2x" 28 | }, 29 | { 30 | "size" : "60x60", 31 | "idiom" : "iphone", 32 | "filename" : "AppIcon60x60@3x.png", 33 | "scale" : "3x" 34 | } 35 | ], 36 | "info" : { 37 | "version" : 1, 38 | "author" : "xcode" 39 | } 40 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Dark_Management_Add.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Dark_Management_Add@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Dark_Management_Add.imageset/Dark_Management_Add@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Dark_Management_Add.imageset/Dark_Management_Add@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Field_Back.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Field_Back@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Field_Back.imageset/Field_Back@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Field_Back.imageset/Field_Back@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Field_Mask_Bg.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Field_Mask_Bg@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Field_Mask_Bg.imageset/Field_Mask_Bg@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Field_Mask_Bg.imageset/Field_Mask_Bg@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Home/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Home/side_menu.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Home_Icon@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Home/side_menu.imageset/Home_Icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Home/side_menu.imageset/Home_Icon@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Home_Morepic.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Home_Morepic@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Home_Morepic.imageset/Home_Morepic@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Home_Morepic.imageset/Home_Morepic@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Image_Preview.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Image_Preview@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Image_Preview.imageset/Image_Preview@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Image_Preview.imageset/Image_Preview@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_avatar.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Avatar@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_avatar.imageset/Menu_Avatar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_avatar.imageset/Menu_Avatar@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_cell_arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Enter@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_cell_arrow.imageset/Menu_Enter@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_cell_arrow.imageset/Menu_Enter@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_favor.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Icon_Collect@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_favor.imageset/Menu_Icon_Collect@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_favor.imageset/Menu_Icon_Collect@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_message.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Icon_Message@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_message.imageset/Menu_Icon_Message@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_message.imageset/Menu_Icon_Message@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_offline.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Download@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_offline.imageset/Menu_Download@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_offline.imageset/Menu_Download@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_setting.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Icon_Setting@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_setting.imageset/Menu_Icon_Setting@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_setting.imageset/Menu_Icon_Setting@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_dark.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Dark@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_dark.imageset/Menu_Dark@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_dark.imageset/Menu_Dark@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_light.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Day@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_light.imageset/Menu_Day@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu/menu_theme_light.imageset/Menu_Day@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu_Follow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Follow@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu_Follow.imageset/Menu_Follow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu_Follow.imageset/Menu_Follow@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu_Icon_Home.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "Menu_Icon_Home@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/Menu_Icon_Home.imageset/Menu_Icon_Home@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/Menu_Icon_Home.imageset/Menu_Icon_Home@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Arrow@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Arrow.imageset/News_Arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Arrow.imageset/News_Arrow@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Arrow.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Navigation_Arrow@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Arrow.imageset/News_Navigation_Arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Navigation_Arrow.imageset/News_Navigation_Arrow@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Comment.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Navigation_Comment@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Comment.imageset/News_Navigation_Comment@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Navigation_Comment.imageset/News_Navigation_Comment@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Next.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Navigation_Next@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Next.imageset/News_Navigation_Next@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Navigation_Next.imageset/News_Navigation_Next@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Share.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Navigation_Share@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Share.imageset/News_Navigation_Share@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Navigation_Share.imageset/News_Navigation_Share@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Voted.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "News_Navigation_Voted@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/News_Navigation_Voted.imageset/News_Navigation_Voted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/News_Navigation_Voted.imageset/News_Navigation_Voted@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/ZHAnswerViewBack.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "ZHAnswerViewBack@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /WSDZhihuDaily/Assets.xcassets/ZHAnswerViewBack.imageset/ZHAnswerViewBack@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/WSDZhihuDaily/Assets.xcassets/ZHAnswerViewBack.imageset/ZHAnswerViewBack@2x.png -------------------------------------------------------------------------------- /WSDZhihuDaily/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Controllers/HomeViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeViewController.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface HomeViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Controllers/WSDSideMenuViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDSideMenuViewController.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/3/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDSideMenuViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UITableView *menuTableView; 14 | @end 15 | -------------------------------------------------------------------------------- /WSDZhihuDaily/DataUtils/WSDDataUtils.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDDataUtils.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/7/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDDataUtils : NSObject 12 | 13 | +(NSString *)todayDateString; 14 | +(NSString *)dateStringBeforeDays:(NSInteger)days; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /WSDZhihuDaily/DataUtils/WSDDataUtils.m: -------------------------------------------------------------------------------- 1 | // 2 | // WSDDataUtils.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/7/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDDataUtils.h" 10 | 11 | @implementation WSDDataUtils 12 | 13 | 14 | +(NSString *)todayDateString { 15 | NSDate *today = [NSDate date]; 16 | NSDateFormatter *formatter = [NSDateFormatter new]; 17 | [formatter setDateFormat:@"yyyyMMdd"]; 18 | 19 | return [formatter stringFromDate:today]; 20 | } 21 | 22 | +(NSString *)dateStringBeforeDays:(NSInteger)days { 23 | NSDateFormatter *formatter = [NSDateFormatter new]; 24 | [formatter setDateFormat:@"yyyyMMdd"]; 25 | NSDate *before = [NSDate dateWithTimeIntervalSinceNow:-days*60*60*24]; 26 | 27 | return [formatter stringFromDate:before]; 28 | } 29 | @end 30 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSAppTransportSecurity 6 | 7 | NSAllowsArbitraryLoads 8 | 9 | 10 | CFBundleDevelopmentRegion 11 | en 12 | CFBundleExecutable 13 | $(EXECUTABLE_NAME) 14 | CFBundleIdentifier 15 | $(PRODUCT_BUNDLE_IDENTIFIER) 16 | CFBundleInfoDictionaryVersion 17 | 6.0 18 | CFBundleName 19 | $(PRODUCT_NAME) 20 | CFBundlePackageType 21 | APPL 22 | CFBundleShortVersionString 23 | 1.0 24 | CFBundleSignature 25 | ???? 26 | CFBundleVersion 27 | 1 28 | LSRequiresIPhoneOS 29 | 30 | UILaunchStoryboardName 31 | LaunchScreen 32 | UIMainStoryboardFile 33 | Main 34 | UIRequiredDeviceCapabilities 35 | 36 | armv7 37 | 38 | UISupportedInterfaceOrientations 39 | 40 | UIInterfaceOrientationPortrait 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | UISupportedInterfaceOrientations~ipad 45 | 46 | UIInterfaceOrientationPortrait 47 | UIInterfaceOrientationPortraitUpsideDown 48 | UIInterfaceOrientationLandscapeLeft 49 | UIInterfaceOrientationLandscapeRight 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cloudling.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASCompositeConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASCompositeConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASConstraint.h" 10 | #import "MASUtilities.h" 11 | 12 | /** 13 | * A group of MASConstraint objects 14 | */ 15 | @interface MASCompositeConstraint : MASConstraint 16 | 17 | /** 18 | * Creates a composite with a predefined array of children 19 | * 20 | * @param children child MASConstraints 21 | * 22 | * @return a composite constraint 23 | */ 24 | - (id)initWithChildren:(NSArray *)children; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASLayoutConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASLayoutConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * When you are debugging or printing the constraints attached to a view this subclass 13 | * makes it easier to identify which constraints have been created via Masonry 14 | */ 15 | @interface MASLayoutConstraint : NSLayoutConstraint 16 | 17 | /** 18 | * a key to associate with this constraint 19 | */ 20 | @property (nonatomic, strong) id mas_key; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASLayoutConstraint.m: -------------------------------------------------------------------------------- 1 | // 2 | // MASLayoutConstraint.m 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASLayoutConstraint.h" 10 | 11 | @implementation MASLayoutConstraint 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASViewAttribute.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASAttribute.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * An immutable tuple which stores the view and the related NSLayoutAttribute. 13 | * Describes part of either the left or right hand side of a constraint equation 14 | */ 15 | @interface MASViewAttribute : NSObject 16 | 17 | /** 18 | * The view which the reciever relates to. Can be nil if item is not a view. 19 | */ 20 | @property (nonatomic, weak, readonly) MAS_VIEW *view; 21 | 22 | /** 23 | * The item which the reciever relates to. 24 | */ 25 | @property (nonatomic, weak, readonly) id item; 26 | 27 | /** 28 | * The attribute which the reciever relates to 29 | */ 30 | @property (nonatomic, assign, readonly) NSLayoutAttribute layoutAttribute; 31 | 32 | /** 33 | * Convenience initializer. 34 | */ 35 | - (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute; 36 | 37 | /** 38 | * The designated initializer. 39 | */ 40 | - (id)initWithView:(MAS_VIEW *)view item:(id)item layoutAttribute:(NSLayoutAttribute)layoutAttribute; 41 | 42 | /** 43 | * Determine whether the layoutAttribute is a size attribute 44 | * 45 | * @return YES if layoutAttribute is equal to NSLayoutAttributeWidth or NSLayoutAttributeHeight 46 | */ 47 | - (BOOL)isSizeAttribute; 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASViewAttribute.m: -------------------------------------------------------------------------------- 1 | // 2 | // MASAttribute.m 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 21/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASViewAttribute.h" 10 | 11 | @implementation MASViewAttribute 12 | 13 | - (id)initWithView:(MAS_VIEW *)view layoutAttribute:(NSLayoutAttribute)layoutAttribute { 14 | self = [self initWithView:view item:view layoutAttribute:layoutAttribute]; 15 | return self; 16 | } 17 | 18 | - (id)initWithView:(MAS_VIEW *)view item:(id)item layoutAttribute:(NSLayoutAttribute)layoutAttribute { 19 | self = [super init]; 20 | if (!self) return nil; 21 | 22 | _view = view; 23 | _item = item; 24 | _layoutAttribute = layoutAttribute; 25 | 26 | return self; 27 | } 28 | 29 | - (BOOL)isSizeAttribute { 30 | return self.layoutAttribute == NSLayoutAttributeWidth 31 | || self.layoutAttribute == NSLayoutAttributeHeight; 32 | } 33 | 34 | - (BOOL)isEqual:(MASViewAttribute *)viewAttribute { 35 | if ([viewAttribute isKindOfClass:self.class]) { 36 | return self.view == viewAttribute.view 37 | && self.layoutAttribute == viewAttribute.layoutAttribute; 38 | } 39 | return [super isEqual:viewAttribute]; 40 | } 41 | 42 | - (NSUInteger)hash { 43 | return MAS_NSUINTROTATE([self.view hash], MAS_NSUINT_BIT / 2) ^ self.layoutAttribute; 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/MASViewConstraint.h: -------------------------------------------------------------------------------- 1 | // 2 | // MASConstraint.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 20/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import "MASViewAttribute.h" 10 | #import "MASConstraint.h" 11 | #import "MASLayoutConstraint.h" 12 | #import "MASUtilities.h" 13 | 14 | /** 15 | * A single constraint. 16 | * Contains the attributes neccessary for creating a NSLayoutConstraint and adding it to the appropriate view 17 | */ 18 | @interface MASViewConstraint : MASConstraint 19 | 20 | /** 21 | * First item/view and first attribute of the NSLayoutConstraint 22 | */ 23 | @property (nonatomic, strong, readonly) MASViewAttribute *firstViewAttribute; 24 | 25 | /** 26 | * Second item/view and second attribute of the NSLayoutConstraint 27 | */ 28 | @property (nonatomic, strong, readonly) MASViewAttribute *secondViewAttribute; 29 | 30 | /** 31 | * initialises the MASViewConstraint with the first part of the equation 32 | * 33 | * @param firstViewAttribute view.mas_left, view.mas_width etc. 34 | * 35 | * @return a new view constraint 36 | */ 37 | - (id)initWithFirstViewAttribute:(MASViewAttribute *)firstViewAttribute; 38 | 39 | /** 40 | * Returns all MASViewConstraints installed with this view as a first item. 41 | * 42 | * @param view A view to retrieve constraints for. 43 | * 44 | * @return An array of MASViewConstraints. 45 | */ 46 | + (NSArray *)installedConstraintsForView:(MAS_VIEW *)view; 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/Masonry.h: -------------------------------------------------------------------------------- 1 | // 2 | // Masonry.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 20/07/13. 6 | // Copyright (c) 2013 cloudling. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for Masonry. 12 | FOUNDATION_EXPORT double MasonryVersionNumber; 13 | 14 | //! Project version string for Masonry. 15 | FOUNDATION_EXPORT const unsigned char MasonryVersionString[]; 16 | 17 | #import "MASUtilities.h" 18 | #import "View+MASAdditions.h" 19 | #import "View+MASShorthandAdditions.h" 20 | #import "ViewController+MASAdditions.h" 21 | #import "NSArray+MASAdditions.h" 22 | #import "NSArray+MASShorthandAdditions.h" 23 | #import "MASConstraint.h" 24 | #import "MASCompositeConstraint.h" 25 | #import "MASViewAttribute.h" 26 | #import "MASViewConstraint.h" 27 | #import "MASConstraintMaker.h" 28 | #import "MASLayoutConstraint.h" 29 | #import "NSLayoutConstraint+MASDebugAdditions.h" 30 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/NSArray+MASShorthandAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+MASShorthandAdditions.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 22/07/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "NSArray+MASAdditions.h" 10 | 11 | #ifdef MAS_SHORTHAND 12 | 13 | /** 14 | * Shorthand array additions without the 'mas_' prefixes, 15 | * only enabled if MAS_SHORTHAND is defined 16 | */ 17 | @interface NSArray (MASShorthandAdditions) 18 | 19 | - (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *make))block; 20 | - (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *make))block; 21 | - (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *make))block; 22 | 23 | @end 24 | 25 | @implementation NSArray (MASShorthandAdditions) 26 | 27 | - (NSArray *)makeConstraints:(void(^)(MASConstraintMaker *))block { 28 | return [self mas_makeConstraints:block]; 29 | } 30 | 31 | - (NSArray *)updateConstraints:(void(^)(MASConstraintMaker *))block { 32 | return [self mas_updateConstraints:block]; 33 | } 34 | 35 | - (NSArray *)remakeConstraints:(void(^)(MASConstraintMaker *))block { 36 | return [self mas_remakeConstraints:block]; 37 | } 38 | 39 | @end 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/NSLayoutConstraint+MASDebugAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSLayoutConstraint+MASDebugAdditions.h 3 | // Masonry 4 | // 5 | // Created by Jonas Budelmann on 3/08/13. 6 | // Copyright (c) 2013 Jonas Budelmann. All rights reserved. 7 | // 8 | 9 | #import "MASUtilities.h" 10 | 11 | /** 12 | * makes debug and log output of NSLayoutConstraints more readable 13 | */ 14 | @interface NSLayoutConstraint (MASDebugAdditions) 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/ViewController+MASAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+MASAdditions.h 3 | // Masonry 4 | // 5 | // Created by Craig Siemens on 2015-06-23. 6 | // 7 | // 8 | 9 | #import "MASUtilities.h" 10 | #import "MASConstraintMaker.h" 11 | #import "MASViewAttribute.h" 12 | 13 | #ifdef MAS_VIEW_CONTROLLER 14 | 15 | @interface MAS_VIEW_CONTROLLER (MASAdditions) 16 | 17 | /** 18 | * following properties return a new MASViewAttribute with appropriate UILayoutGuide and NSLayoutAttribute 19 | */ 20 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuide; 21 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuide; 22 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuideTop; 23 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_topLayoutGuideBottom; 24 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuideTop; 25 | @property (nonatomic, strong, readonly) MASViewAttribute *mas_bottomLayoutGuideBottom; 26 | 27 | 28 | @end 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Masonry/ViewController+MASAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIViewController+MASAdditions.m 3 | // Masonry 4 | // 5 | // Created by Craig Siemens on 2015-06-23. 6 | // 7 | // 8 | 9 | #import "ViewController+MASAdditions.h" 10 | 11 | #ifdef MAS_VIEW_CONTROLLER 12 | 13 | @implementation MAS_VIEW_CONTROLLER (MASAdditions) 14 | 15 | - (MASViewAttribute *)mas_topLayoutGuide { 16 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 17 | } 18 | - (MASViewAttribute *)mas_topLayoutGuideTop { 19 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 20 | } 21 | - (MASViewAttribute *)mas_topLayoutGuideBottom { 22 | return [[MASViewAttribute alloc] initWithView:self.view item:self.topLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 23 | } 24 | 25 | - (MASViewAttribute *)mas_bottomLayoutGuide { 26 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 27 | } 28 | - (MASViewAttribute *)mas_bottomLayoutGuideTop { 29 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeTop]; 30 | } 31 | - (MASViewAttribute *)mas_bottomLayoutGuideBottom { 32 | return [[MASViewAttribute alloc] initWithView:self.view item:self.bottomLayoutGuide layoutAttribute:NSLayoutAttributeBottom]; 33 | } 34 | 35 | 36 | 37 | @end 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Models/WSDStory.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDStory.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDStory : NSObject 12 | 13 | @property (nonatomic, strong) NSString *type; 14 | @property (nonatomic, strong) NSString *storyId; 15 | @property (nonatomic, strong) NSString *title; 16 | @property (nonatomic, strong) NSString *gaPrefix; 17 | @property (nonatomic, strong) NSArray *images; 18 | 19 | -(instancetype)initWithJSON:(NSDictionary *)json; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Models/WSDStory.m: -------------------------------------------------------------------------------- 1 | // 2 | // WSDStory.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDStory.h" 10 | 11 | @interface WSDStory () 12 | 13 | @property (nonatomic, assign) BOOL multiPic; 14 | 15 | @end 16 | 17 | @implementation WSDStory 18 | 19 | 20 | -(instancetype)initWithJSON:(NSDictionary *)json { 21 | self = [WSDStory new]; 22 | if (self) { 23 | self.title = json[@"title"]; 24 | self.storyId = json[@"id"]; 25 | self.gaPrefix = json[@"ga_prefix"]; 26 | self.type = json[@"type"]; 27 | self.multiPic = json[@"multiPic"]; 28 | self.images = json[@"images"]; 29 | } 30 | return self; 31 | } 32 | @end 33 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Models/WSDTopStory.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDTopStory.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDStory.h" 10 | 11 | @interface WSDTopStory : WSDStory 12 | 13 | @property (nonatomic, strong) NSString *imageURLString; 14 | 15 | -(instancetype)initWithJSON:(NSDictionary *)json; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Models/WSDTopStory.m: -------------------------------------------------------------------------------- 1 | // 2 | // WSDTopStory.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDTopStory.h" 10 | 11 | @implementation WSDTopStory 12 | 13 | - (instancetype)initWithJSON:(NSDictionary *)json { 14 | self = [WSDTopStory new]; 15 | if (self) { 16 | self.title = json[@"title"]; 17 | self.storyId = json[@"id"]; 18 | self.gaPrefix = json[@"ga_prefix"]; 19 | self.type = json[@"type"]; 20 | self.imageURLString = json[@"image"]; 21 | } 22 | return self; 23 | } 24 | @end 25 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Others/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/24/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Others/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSAppTransportSecurity 6 | 7 | NSAllowsArbitraryLoads 8 | 9 | 10 | CFBundleDevelopmentRegion 11 | en 12 | CFBundleExecutable 13 | $(EXECUTABLE_NAME) 14 | CFBundleIdentifier 15 | $(PRODUCT_BUNDLE_IDENTIFIER) 16 | CFBundleInfoDictionaryVersion 17 | 6.0 18 | CFBundleName 19 | $(PRODUCT_NAME) 20 | CFBundlePackageType 21 | APPL 22 | CFBundleShortVersionString 23 | 1.0 24 | CFBundleSignature 25 | ???? 26 | CFBundleVersion 27 | 1 28 | LSRequiresIPhoneOS 29 | 30 | UILaunchStoryboardName 31 | LaunchScreen 32 | UIMainStoryboardFile 33 | Main 34 | UIRequiredDeviceCapabilities 35 | 36 | armv7 37 | 38 | UISupportedInterfaceOrientations 39 | 40 | UIInterfaceOrientationPortrait 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | UISupportedInterfaceOrientations~ipad 45 | 46 | UIInterfaceOrientationPortrait 47 | UIInterfaceOrientationPortraitUpsideDown 48 | UIInterfaceOrientationLandscapeLeft 49 | UIInterfaceOrientationLandscapeRight 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Others/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/24/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/SideMenuCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // SideMenuCell.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/3/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SideMenuCell : UITableViewCell 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/SideMenuCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // SideMenuCell.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/3/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import "SideMenuCell.h" 10 | 11 | @implementation SideMenuCell 12 | 13 | - (void)awakeFromNib { 14 | // Initialization code 15 | } 16 | 17 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated { 18 | [super setSelected:selected animated:animated]; 19 | 20 | // Configure the view for the selected state 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/SideMenuCell.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDBannerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDBannerView.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDBannerView : UIView 12 | 13 | @property (weak, nonatomic) IBOutlet UIImageView *bannerImageView; 14 | @property (weak, nonatomic) IBOutlet UILabel *bannerLabel; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDCarouselView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDCarouselView.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDCarouselView : UIView 12 | 13 | @property (strong, nonatomic) IBOutlet UIView *view; 14 | 15 | -(void)setTopStories:(NSArray *)topStories; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDRefreshView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDRefreshView.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/27/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDRefreshView : UIView 12 | 13 | -(void)updateProgress:(CGFloat)progress; 14 | -(void)startAnimation; 15 | -(void)stopAnimation; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDSideMenuCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDSideMenuCell.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/3/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDSideMenuCell : UITableViewCell 12 | 13 | @property (weak, nonatomic) IBOutlet UILabel *menuTitle; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDSideMenuCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // WSDSideMenuCell.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 1/3/16. 6 | // Copyright © 2016 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDSideMenuCell.h" 10 | 11 | @implementation WSDSideMenuCell 12 | 13 | - (void)awakeFromNib { 14 | // Initialization code 15 | } 16 | 17 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated { 18 | [super setSelected:selected animated:animated]; 19 | 20 | // Configure the view for the selected state 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDStoryCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // WSDStoryCell.h 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WSDStoryCell : UITableViewCell 12 | @property (weak, nonatomic) IBOutlet UILabel *label; 13 | @property (weak, nonatomic) IBOutlet UIImageView *righImageView; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /WSDZhihuDaily/Views/WSDStoryCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // WSDStoryCell.m 3 | // WSDZhihuDaily 4 | // 5 | // Created by Wang Shudao on 12/25/15. 6 | // Copyright © 2015 WSD. All rights reserved. 7 | // 8 | 9 | #import "WSDStoryCell.h" 10 | 11 | @implementation WSDStoryCell 12 | 13 | - (void)awakeFromNib { 14 | // Initialization code 15 | } 16 | 17 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated { 18 | [super setSelected:selected animated:animated]; 19 | 20 | // Configure the view for the selected state 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /layer_perfect.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/layer_perfect.gif -------------------------------------------------------------------------------- /load_more.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/load_more.gif -------------------------------------------------------------------------------- /section.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/section.gif -------------------------------------------------------------------------------- /sidebar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/sidebar.gif -------------------------------------------------------------------------------- /zh-home.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vulgur/WSDZhihuDaily/b1762e77ffcb935b3c29f434964692e466803330/zh-home.gif --------------------------------------------------------------------------------