├── README.md ├── parse-library-1.5.0 ├── Bolts.framework │ ├── Bolts │ ├── Headers │ └── Versions │ │ ├── A │ │ ├── Bolts │ │ └── Headers │ │ │ ├── BFAppLink.h │ │ │ ├── BFAppLinkNavigation.h │ │ │ ├── BFAppLinkResolving.h │ │ │ ├── BFAppLinkReturnToRefererController.h │ │ │ ├── BFAppLinkReturnToRefererView.h │ │ │ ├── BFAppLinkTarget.h │ │ │ ├── BFExecutor.h │ │ │ ├── BFMeasurementEvent.h │ │ │ ├── BFTask.h │ │ │ ├── BFTaskCompletionSource.h │ │ │ ├── BFURL.h │ │ │ ├── BFWebViewAppLinkResolver.h │ │ │ ├── Bolts.h │ │ │ └── BoltsVersion.h │ │ └── Current ├── Parse.framework │ ├── Headers │ │ ├── PFACL.h │ │ ├── PFAnalytics.h │ │ ├── PFAnonymousUtils.h │ │ ├── PFCloud.h │ │ ├── PFConfig.h │ │ ├── PFConstants.h │ │ ├── PFFile.h │ │ ├── PFGeoPoint.h │ │ ├── PFInstallation.h │ │ ├── PFNetworkActivityIndicatorManager.h │ │ ├── PFObject+Subclass.h │ │ ├── PFObject.h │ │ ├── PFProduct.h │ │ ├── PFPurchase.h │ │ ├── PFPush.h │ │ ├── PFQuery.h │ │ ├── PFRelation.h │ │ ├── PFRole.h │ │ ├── PFSubclassing.h │ │ ├── PFTwitterUtils.h │ │ ├── PFUser.h │ │ ├── PF_Twitter.h │ │ └── Parse.h │ ├── Info.plist │ ├── Modules │ │ └── module.modulemap │ ├── Parse │ ├── Resources │ │ └── Localizable.strings │ └── third_party_licenses.txt ├── ParseFacebookUtils.framework │ ├── Headers │ │ └── PFFacebookUtils.h │ ├── Info.plist │ ├── ParseFacebookUtils │ ├── Resources │ │ └── Localizable.strings │ └── third_party_licenses.txt └── ParseUI.framework │ ├── Headers │ ├── PFImageView.h │ ├── PFLogInView.h │ ├── PFLogInViewController.h │ ├── PFProductTableViewController.h │ ├── PFPurchaseTableViewCell.h │ ├── PFQueryTableViewController.h │ ├── PFSignUpView.h │ ├── PFSignUpViewController.h │ ├── PFTableViewCell.h │ ├── ParseUI.h │ └── ParseUIConstants.h │ ├── Info.plist │ ├── Modules │ └── module.modulemap │ └── ParseUI ├── testData-Bridging-Header.h ├── testData.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── markpetherbridge.xcuserdatad │ │ └── UserInterfaceState.xcuserstate └── xcuserdata │ └── markpetherbridge.xcuserdatad │ └── xcschemes │ ├── testData.xcscheme │ └── xcschememanagement.plist ├── testData ├── AppDelegate.swift ├── Base.lproj │ └── Main.storyboard ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json ├── Info.plist ├── ViewController.swift └── testData.xcdatamodeld │ ├── .xccurrentversion │ └── testData.xcdatamodel │ └── contents ├── testDataCustom.m └── testDataTests ├── Info.plist └── testDataTests.swift /README.md: -------------------------------------------------------------------------------- 1 | ConnectSwift-Parse 2 | ================== 3 | 4 | This quick example will show you how to connect your Swift iOS Application to the Parse.com Service: Full Tutorial can be found here: http://bit.ly/1uOu6Y2 5 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Bolts: -------------------------------------------------------------------------------- 1 | ./Versions/A/Bolts -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Headers: -------------------------------------------------------------------------------- 1 | ./Versions/A/Headers -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Bolts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/Bolts.framework/Versions/A/Bolts -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLink.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | /*! The version of the App Link protocol that this library supports */ 14 | FOUNDATION_EXPORT NSString *const BFAppLinkVersion; 15 | 16 | /*! 17 | Contains App Link metadata relevant for navigation on this device 18 | derived from the HTML at a given URL. 19 | */ 20 | @interface BFAppLink : NSObject 21 | 22 | /*! 23 | Creates a BFAppLink with the given list of BFAppLinkTargets and target URL. 24 | 25 | Generally, this will only be used by implementers of the BFAppLinkResolving protocol, 26 | as these implementers will produce App Link metadata for a given URL. 27 | 28 | @param sourceURL the URL from which this App Link is derived 29 | @param targets an ordered list of BFAppLinkTargets for this platform derived 30 | from App Link metadata. 31 | @param webURL the fallback web URL, if any, for the app link. 32 | */ 33 | + (instancetype)appLinkWithSourceURL:(NSURL *)sourceURL 34 | targets:(NSArray *)targets 35 | webURL:(NSURL *)webURL; 36 | 37 | /*! The URL from which this BFAppLink was derived */ 38 | @property (nonatomic, strong, readonly) NSURL *sourceURL; 39 | 40 | /*! 41 | The ordered list of targets applicable to this platform that will be used 42 | for navigation. 43 | */ 44 | @property (nonatomic, copy, readonly) NSArray *targets; 45 | 46 | /*! The fallback web URL to use if no targets are installed on this device. */ 47 | @property (nonatomic, strong, readonly) NSURL *webURL; 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLinkNavigation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | #import 14 | 15 | /*! 16 | The result of calling navigate on a BFAppLinkNavigation 17 | */ 18 | typedef NS_ENUM(NSInteger, BFAppLinkNavigationType) { 19 | /*! Indicates that the navigation failed and no app was opened */ 20 | BFAppLinkNavigationTypeFailure, 21 | /*! Indicates that the navigation succeeded by opening the URL in the browser */ 22 | BFAppLinkNavigationTypeBrowser, 23 | /*! Indicates that the navigation succeeded by opening the URL in an app on the device */ 24 | BFAppLinkNavigationTypeApp 25 | }; 26 | 27 | @protocol BFAppLinkResolving; 28 | @class BFTask; 29 | 30 | /*! 31 | Represents a pending request to navigate to an App Link. Most developers will 32 | simply use navigateToURLInBackground: to open a URL, but developers can build 33 | custom requests with additional navigation and app data attached to them by 34 | creating BFAppLinkNavigations themselves. 35 | */ 36 | @interface BFAppLinkNavigation : NSObject 37 | 38 | /*! 39 | The extras for the AppLinkNavigation. This will generally contain application-specific 40 | data that should be passed along with the request, such as advertiser or affiliate IDs or 41 | other such metadata relevant on this device. 42 | */ 43 | @property (nonatomic, copy, readonly) NSDictionary *extras; 44 | 45 | /*! 46 | The al_applink_data for the AppLinkNavigation. This will generally contain data common to 47 | navigation attempts such as back-links, user agents, and other information that may be used 48 | in routing and handling an App Link request. 49 | */ 50 | @property (nonatomic, copy, readonly) NSDictionary *appLinkData; 51 | 52 | /*! The AppLink to navigate to */ 53 | @property (nonatomic, strong, readonly) BFAppLink *appLink; 54 | 55 | /*! Creates an AppLinkNavigation with the given link, extras, and App Link data */ 56 | + (instancetype)navigationWithAppLink:(BFAppLink *)appLink 57 | extras:(NSDictionary *)extras 58 | appLinkData:(NSDictionary *)appLinkData; 59 | 60 | /*! Performs the navigation */ 61 | - (BFAppLinkNavigationType)navigate:(NSError **)error; 62 | 63 | /*! Returns a BFAppLink for the given URL */ 64 | + (BFTask *)resolveAppLinkInBackground:(NSURL *)destination; 65 | 66 | /*! Returns a BFAppLink for the given URL using the given App Link resolution strategy */ 67 | + (BFTask *)resolveAppLinkInBackground:(NSURL *)destination resolver:(id)resolver; 68 | 69 | /*! Navigates to a BFAppLink and returns whether it opened in-app or in-browser */ 70 | + (BFAppLinkNavigationType)navigateToAppLink:(BFAppLink *)link error:(NSError **)error; 71 | 72 | /*! Navigates to a URL (an asynchronous action) and returns a BFNavigationType */ 73 | + (BFTask *)navigateToURLInBackground:(NSURL *)destination; 74 | 75 | /*! 76 | Navigates to a URL (an asynchronous action) using the given App Link resolution 77 | strategy and returns a BFNavigationType 78 | */ 79 | + (BFTask *)navigateToURLInBackground:(NSURL *)destination resolver:(id)resolver; 80 | 81 | /*! 82 | Gets the default resolver to be used for App Link resolution. If the developer has not set one explicitly, 83 | a basic, built-in resolver will be used. 84 | */ 85 | + (id)defaultResolver; 86 | 87 | /*! 88 | Sets the default resolver to be used for App Link resolution. Setting this to nil will revert the 89 | default resolver to the basic, built-in resolver provided by Bolts. 90 | */ 91 | + (void)setDefaultResolver:(id)resolver; 92 | 93 | @end 94 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLinkResolving.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | @class BFTask; 14 | 15 | /*! 16 | Implement this protocol to provide an alternate strategy for resolving 17 | App Links that may include pre-fetching, caching, or querying for App Link 18 | data from an index provided by a service provider. 19 | */ 20 | @protocol BFAppLinkResolving 21 | 22 | /*! 23 | Asynchronously resolves App Link data for a given URL. 24 | 25 | @param url The URL to resolve into an App Link. 26 | @returns A BFTask that will return a BFAppLink for the given URL. 27 | */ 28 | - (BFTask *)appLinkFromURLInBackground:(NSURL *)url; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLinkReturnToRefererController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | #import 13 | 14 | #import 15 | 16 | @class BFAppLink; 17 | @class BFAppLinkReturnToRefererController; 18 | 19 | /*! 20 | Protocol that a class can implement in order to be notified when the user has navigated back 21 | to the referer of an App Link. 22 | */ 23 | @protocol BFAppLinkReturnToRefererControllerDelegate 24 | 25 | @optional 26 | 27 | /*! Called when the user has tapped to navigate, but before the navigation has been performed. */ 28 | - (void)returnToRefererController:(BFAppLinkReturnToRefererController *)controller 29 | willNavigateToAppLink:(BFAppLink *)appLink; 30 | 31 | /*! Called after the navigation has been attempted, with an indication of whether the referer 32 | app link was successfully opened. */ 33 | - (void)returnToRefererController:(BFAppLinkReturnToRefererController *)controller 34 | didNavigateToAppLink:(BFAppLink *)url 35 | type:(BFAppLinkNavigationType)type; 36 | 37 | @end 38 | 39 | /*! 40 | A controller class that implements default behavior for a BFAppLinkReturnToRefererView, including 41 | the ability to display the view above the navigation bar for navigation-bsaed apps. 42 | */ 43 | @interface BFAppLinkReturnToRefererController : NSObject 44 | 45 | /*! 46 | The delegate that will be notified when the user navigates back to the referer. 47 | */ 48 | @property (nonatomic, weak) id delegate; 49 | 50 | /*! 51 | The BFAppLinkReturnToRefererView this controller is controlling. 52 | */ 53 | @property (nonatomic, strong) BFAppLinkReturnToRefererView *view; 54 | 55 | /*! 56 | Initializes a controller suitable for controlling a BFAppLinkReturnToRefererView that is to be displayed 57 | contained within another UIView (i.e., not displayed above the navigation bar). 58 | */ 59 | - (instancetype)init; 60 | 61 | /*! 62 | Initializes a controller suitable for controlling a BFAppLinkReturnToRefererView that is to be displayed 63 | displayed above the navigation bar. 64 | */ 65 | - (instancetype)initForDisplayAboveNavController:(UINavigationController *)navController; 66 | 67 | /*! 68 | Removes the view entirely from the navigation controller it is currently displayed in. 69 | */ 70 | - (void)removeFromNavController; 71 | 72 | /*! 73 | Shows the BFAppLinkReturnToRefererView with the specified referer information. If nil or missing data, 74 | the view will not be displayed. */ 75 | - (void)showViewForRefererAppLink:(BFAppLink *)refererAppLink; 76 | 77 | /*! 78 | Shows the BFAppLinkReturnToRefererView with referer information extracted from the specified URL. 79 | If nil or missing referer App Link data, the view will not be displayed. */ 80 | - (void)showViewForRefererURL:(NSURL *)url; 81 | 82 | /*! 83 | Closes the view, possibly animating it. 84 | */ 85 | - (void)closeViewAnimated:(BOOL)animated; 86 | 87 | @end 88 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLinkReturnToRefererView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | #import 13 | 14 | #import 15 | 16 | @class BFAppLinkReturnToRefererView; 17 | @class BFURL; 18 | 19 | typedef enum BFIncludeStatusBarInSize { 20 | BFIncludeStatusBarInSizeNever, 21 | BFIncludeStatusBarInSizeIOS7AndLater, 22 | BFIncludeStatusBarInSizeAlways, 23 | } BFIncludeStatusBarInSize; 24 | 25 | /*! 26 | Protocol that a class can implement in order to be notified when the user has navigated back 27 | to the referer of an App Link. 28 | */ 29 | @protocol BFAppLinkReturnToRefererViewDelegate 30 | 31 | /*! 32 | Called when the user has tapped inside the close button. 33 | */ 34 | - (void)returnToRefererViewDidTapInsideCloseButton:(BFAppLinkReturnToRefererView *)view; 35 | 36 | /*! 37 | Called when the user has tapped inside the App Link portion of the view. 38 | */ 39 | - (void)returnToRefererViewDidTapInsideLink:(BFAppLinkReturnToRefererView *)view 40 | link:(BFAppLink *)link; 41 | 42 | @end 43 | 44 | /*! 45 | Provides a UIView that displays a button allowing users to navigate back to the 46 | application that launched the App Link currently being handled, if the App Link 47 | contained referer data. The user can also close the view by clicking a close button 48 | rather than navigating away. If the view is provided an App Link that does not contain 49 | referer data, it will have zero size and no UI will be displayed. 50 | */ 51 | @interface BFAppLinkReturnToRefererView : UIView 52 | 53 | /*! 54 | The delegate that will be notified when the user navigates back to the referer. 55 | */ 56 | @property (nonatomic, weak) id delegate; 57 | 58 | /*! 59 | The color of the text label and close button. 60 | */ 61 | @property (nonatomic, strong) UIColor *textColor; 62 | 63 | @property (nonatomic, strong) BFAppLink *refererAppLink; 64 | 65 | /*! 66 | Indicates whether to extend the size of the view to include the current status bar 67 | size, for use in scenarios where the view might extend under the status bar on iOS 7 and 68 | above; this property has no effect on earlier versions of iOS. 69 | */ 70 | @property (nonatomic, assign) BFIncludeStatusBarInSize includeStatusBarInSize; 71 | 72 | /*! 73 | Indicates whether the user has closed the view by clicking the close button. 74 | */ 75 | @property (nonatomic, assign) BOOL closed; 76 | 77 | /*! 78 | For apps that use a navigation controller, this method allows for displaying the view as 79 | a banner above the navigation bar of the navigation controller. It will listen for orientation 80 | change and other events to ensure it stays properly positioned above the nevigation bar. 81 | If this method is called from, e.g., viewDidAppear, its counterpart, detachFromMainWindow should 82 | be called from, e.g., viewWillDisappear. 83 | */ 84 | //- (void)attachToMainWindowAboveNavigationController:(UINavigationController *)navigationController view:(UIView *)view; 85 | 86 | /*! 87 | Indicates that the view should no longer position itself above a navigation bar. 88 | */ 89 | //- (void)detachFromMainWindow; 90 | 91 | @end 92 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFAppLinkTarget.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | /*! 14 | Represents a target defined in App Link metadata, consisting of at least 15 | a URL, and optionally an App Store ID and name. 16 | */ 17 | @interface BFAppLinkTarget : NSObject 18 | 19 | /*! Creates a BFAppLinkTarget with the given app site and target URL. */ 20 | + (instancetype)appLinkTargetWithURL:(NSURL *)url 21 | appStoreId:(NSString *)appStoreId 22 | appName:(NSString *)appName; 23 | 24 | /*! The URL prefix for this app link target */ 25 | @property (nonatomic, strong, readonly) NSURL *URL; 26 | 27 | /*! The app ID for the app store */ 28 | @property (nonatomic, copy, readonly) NSString *appStoreId; 29 | 30 | /*! The name of the app */ 31 | @property (nonatomic, copy, readonly) NSString *appName; 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFExecutor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | /*! 14 | An object that can run a given block. 15 | */ 16 | @interface BFExecutor : NSObject 17 | 18 | /*! 19 | Returns a default executor, which runs continuations immediately until the call stack gets too 20 | deep, then dispatches to a new GCD queue. 21 | */ 22 | + (instancetype)defaultExecutor; 23 | 24 | /*! 25 | Returns an executor that runs continuations on the thread where the previous task was completed. 26 | */ 27 | + (instancetype)immediateExecutor; 28 | 29 | /*! 30 | Returns an executor that runs continuations on the main thread. 31 | */ 32 | + (instancetype)mainThreadExecutor; 33 | 34 | /*! 35 | Returns a new executor that uses the given block to execute continuations. 36 | @param block The block to use. 37 | */ 38 | + (instancetype)executorWithBlock:(void(^)(void(^block)()))block; 39 | 40 | /*! 41 | Returns a new executor that runs continuations on the given queue. 42 | @param queue The instance of `dispatch_queue_t` to dispatch all continuations onto. 43 | */ 44 | + (instancetype)executorWithDispatchQueue:(dispatch_queue_t)queue; 45 | 46 | /*! 47 | Returns a new executor that runs continuations on the given queue. 48 | @param queue The instance of `NSOperationQueue` to run all continuations on. 49 | */ 50 | + (instancetype)executorWithOperationQueue:(NSOperationQueue *)queue; 51 | 52 | /*! 53 | Runs the given block using this executor's particular strategy. 54 | @param block The block to execute. 55 | */ 56 | - (void)execute:(void(^)())block; 57 | 58 | @end 59 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFMeasurementEvent.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | /*! The name of the notification posted by BFMeasurementEvent */ 14 | FOUNDATION_EXPORT NSString *const BFMeasurementEventNotificationName; 15 | 16 | /*! Defines keys in the userInfo object for the notification named BFMeasurementEventNotificationName */ 17 | /*! The string field for the name of the event */ 18 | FOUNDATION_EXPORT NSString *const BFMeasurementEventNameKey; 19 | /*! The dictionary field for the arguments of the event */ 20 | FOUNDATION_EXPORT NSString *const BFMeasurementEventArgsKey; 21 | 22 | 23 | /*! Bolts Events raised by BFMeasurementEvent for Applink */ 24 | /*! 25 | The name of the event posted when [BFURL URLWithURL:] is called successfully. This represents the successful parsing of an app link URL. 26 | */ 27 | FOUNDATION_EXPORT NSString *const BFAppLinkParseEventName; 28 | 29 | /*! 30 | The name of the event posted when [BFURL URLWithInboundURL:] is called successfully. 31 | This represents parsing an inbound app link URL from a different application 32 | */ 33 | FOUNDATION_EXPORT NSString *const BFAppLinkNavigateInEventName; 34 | 35 | /*! The event raised when the user navigates from your app to other apps */ 36 | FOUNDATION_EXPORT NSString *const BFAppLinkNavigateOutEventName; 37 | 38 | /*! 39 | The event raised when the user navigates out from your app and back to the referrer app. 40 | e.g when the user leaves your app after tapping the back-to-referrer navigation bar 41 | */ 42 | FOUNDATION_EXPORT NSString *const BFAppLinkNavigateBackToReferrerEventName; 43 | 44 | @interface BFMeasurementEvent : NSObject 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFTask.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | @class BFExecutor; 14 | @class BFTask; 15 | 16 | /*! 17 | A block that can act as a continuation for a task. 18 | */ 19 | typedef id(^BFContinuationBlock)(BFTask *task); 20 | 21 | /*! 22 | The consumer view of a Task. A BFTask has methods to 23 | inspect the state of the task, and to add continuations to 24 | be run once the task is complete. 25 | */ 26 | @interface BFTask : NSObject 27 | 28 | /*! 29 | Creates a task that is already completed with the given result. 30 | @param result The result for the task. 31 | */ 32 | + (instancetype)taskWithResult:(id)result; 33 | 34 | /*! 35 | Creates a task that is already completed with the given error. 36 | @param error The error for the task. 37 | */ 38 | + (instancetype)taskWithError:(NSError *)error; 39 | 40 | /*! 41 | Creates a task that is already completed with the given exception. 42 | @param exception The exception for the task. 43 | */ 44 | + (instancetype)taskWithException:(NSException *)exception; 45 | 46 | /*! 47 | Creates a task that is already cancelled. 48 | */ 49 | + (instancetype)cancelledTask; 50 | 51 | /*! 52 | Returns a task that will be completed (with result == nil) once 53 | all of the input tasks have completed. 54 | @param tasks An `NSArray` of the tasks to use as an input. 55 | */ 56 | + (instancetype)taskForCompletionOfAllTasks:(NSArray *)tasks; 57 | 58 | /*! 59 | Returns a task that will be completed a certain amount of time in the future. 60 | @param millis The approximate number of milliseconds to wait before the 61 | task will be finished (with result == nil). 62 | */ 63 | + (instancetype)taskWithDelay:(int)millis; 64 | 65 | /*! 66 | Returns a task that will be completed after the given block completes with 67 | the specified executor. 68 | @param executor A BFExecutor responsible for determining how the 69 | continuation block will be run. 70 | @param block The block to immediately schedule to run with the given executor. 71 | @returns A task that will be completed after block has run. 72 | If block returns a BFTask, then the task returned from 73 | this method will not be completed until that task is completed. 74 | */ 75 | + (instancetype)taskFromExecutor:(BFExecutor *)executor 76 | withBlock:(id (^)())block; 77 | 78 | // Properties that will be set on the task once it is completed. 79 | 80 | /*! 81 | The result of a successful task. 82 | */ 83 | @property (nonatomic, strong, readonly) id result; 84 | 85 | 86 | /*! 87 | The error of a failed task. 88 | */ 89 | @property (nonatomic, strong, readonly) NSError *error; 90 | 91 | /*! 92 | The exception of a failed task. 93 | */ 94 | @property (nonatomic, strong, readonly) NSException *exception; 95 | 96 | /*! 97 | Whether this task has been cancelled. 98 | */ 99 | @property (nonatomic, assign, readonly, getter = isCancelled) BOOL cancelled; 100 | 101 | /*! 102 | Whether this task has completed. 103 | */ 104 | @property (nonatomic, assign, readonly, getter = isCompleted) BOOL completed; 105 | 106 | /*! 107 | Enqueues the given block to be run once this task is complete. 108 | This method uses a default execution strategy. The block will be 109 | run on the thread where the previous task completes, unless the 110 | the stack depth is too deep, in which case it will be run on a 111 | dispatch queue with default priority. 112 | @param block The block to be run once this task is complete. 113 | @returns A task that will be completed after block has run. 114 | If block returns a BFTask, then the task returned from 115 | this method will not be completed until that task is completed. 116 | */ 117 | - (instancetype)continueWithBlock:(BFContinuationBlock)block; 118 | 119 | /*! 120 | Enqueues the given block to be run once this task is complete. 121 | @param executor A BFExecutor responsible for determining how the 122 | continuation block will be run. 123 | @param block The block to be run once this task is complete. 124 | @returns A task that will be completed after block has run. 125 | If block returns a BFTask, then the task returned from 126 | this method will not be completed until that task is completed. 127 | */ 128 | - (instancetype)continueWithExecutor:(BFExecutor *)executor 129 | withBlock:(BFContinuationBlock)block; 130 | 131 | /*! 132 | Identical to continueWithBlock:, except that the block is only run 133 | if this task did not produce a cancellation, error, or exception. 134 | If it did, then the failure will be propagated to the returned 135 | task. 136 | @param block The block to be run once this task is complete. 137 | @returns A task that will be completed after block has run. 138 | If block returns a BFTask, then the task returned from 139 | this method will not be completed until that task is completed. 140 | */ 141 | - (instancetype)continueWithSuccessBlock:(BFContinuationBlock)block; 142 | 143 | /*! 144 | Identical to continueWithExecutor:withBlock:, except that the block 145 | is only run if this task did not produce a cancellation, error, or 146 | exception. If it did, then the failure will be propagated to the 147 | returned task. 148 | @param executor A BFExecutor responsible for determining how the 149 | continuation block will be run. 150 | @param block The block to be run once this task is complete. 151 | @returns A task that will be completed after block has run. 152 | If block returns a BFTask, then the task returned from 153 | this method will not be completed until that task is completed. 154 | */ 155 | - (instancetype)continueWithExecutor:(BFExecutor *)executor 156 | withSuccessBlock:(BFContinuationBlock)block; 157 | 158 | /*! 159 | Waits until this operation is completed. 160 | This method is inefficient and consumes a thread resource while 161 | it's running. It should be avoided. This method logs a warning 162 | message if it is used on the main thread. 163 | */ 164 | - (void)waitUntilFinished; 165 | 166 | @end 167 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFTaskCompletionSource.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | @class BFTask; 14 | 15 | /*! 16 | A BFTaskCompletionSource represents the producer side of tasks. 17 | It is a task that also has methods for changing the state of the 18 | task by settings its completion values. 19 | */ 20 | @interface BFTaskCompletionSource : NSObject 21 | 22 | /*! 23 | Creates a new unfinished task. 24 | */ 25 | + (instancetype)taskCompletionSource; 26 | 27 | /*! 28 | The task associated with this TaskCompletionSource. 29 | */ 30 | @property (nonatomic, retain, readonly) BFTask *task; 31 | 32 | /*! 33 | Completes the task by setting the result. 34 | Attempting to set this for a completed task will raise an exception. 35 | @param result The result of the task. 36 | */ 37 | - (void)setResult:(id)result; 38 | 39 | /*! 40 | Completes the task by setting the error. 41 | Attempting to set this for a completed task will raise an exception. 42 | @param error The error for the task. 43 | */ 44 | - (void)setError:(NSError *)error; 45 | 46 | /*! 47 | Completes the task by setting an exception. 48 | Attempting to set this for a completed task will raise an exception. 49 | @param exception The exception for the task. 50 | */ 51 | - (void)setException:(NSException *)exception; 52 | 53 | /*! 54 | Completes the task by marking it as cancelled. 55 | Attempting to set this for a completed task will raise an exception. 56 | */ 57 | - (void)cancel; 58 | 59 | /*! 60 | Sets the result of the task if it wasn't already completed. 61 | @returns whether the new value was set. 62 | */ 63 | - (BOOL)trySetResult:(id)result; 64 | 65 | /*! 66 | Sets the error of the task if it wasn't already completed. 67 | @param error The error for the task. 68 | @returns whether the new value was set. 69 | */ 70 | - (BOOL)trySetError:(NSError *)error; 71 | 72 | /*! 73 | Sets the exception of the task if it wasn't already completed. 74 | @param exception The exception for the task. 75 | @returns whether the new value was set. 76 | */ 77 | - (BOOL)trySetException:(NSException *)exception; 78 | 79 | /*! 80 | Sets the cancellation state of the task if it wasn't already completed. 81 | @returns whether the new value was set. 82 | */ 83 | - (BOOL)trySetCancelled; 84 | 85 | @end 86 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFURL.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | 14 | 15 | @class BFAppLink; 16 | 17 | /*! 18 | Provides a set of utilities for working with NSURLs, such as parsing of query parameters 19 | and handling for App Link requests. 20 | */ 21 | @interface BFURL : NSObject 22 | 23 | /*! 24 | Creates a link target from a raw URL. 25 | On success, this posts the BFAppLinkParseEventName measurement event. If you are constructing the BFURL within your application delegate's 26 | application:openURL:sourceApplication:annotation:, you should instead use URLWithInboundURL:sourceApplication: 27 | to support better BFMeasurementEvent notifications 28 | @param url The instance of `NSURL` to create BFURL from. 29 | */ 30 | + (BFURL *)URLWithURL:(NSURL *)url; 31 | 32 | /*! 33 | Creates a link target from a raw URL received from an external application. This is typically called from the app delegate's 34 | application:openURL:sourceApplication:annotation: and will post the BFAppLinkNavigateInEventName measurement event. 35 | @param url The instance of `NSURL` to create BFURL from. 36 | @param sourceApplication the bundle ID of the app that is requesting your app to open the URL. The same sourceApplication in application:openURL:sourceApplication:annotation: 37 | */ 38 | + (BFURL *)URLWithInboundURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication; 39 | 40 | /*! 41 | Gets the target URL. If the link is an App Link, this is the target of the App Link. 42 | Otherwise, it is the url that created the target. 43 | */ 44 | @property (nonatomic, strong, readonly) NSURL *targetURL; 45 | 46 | /*! 47 | Gets the query parameters for the target, parsed into an NSDictionary. 48 | */ 49 | @property (nonatomic, strong, readonly) NSDictionary *targetQueryParameters; 50 | 51 | /*! 52 | If this link target is an App Link, this is the data found in al_applink_data. 53 | Otherwise, it is nil. 54 | */ 55 | @property (nonatomic, strong, readonly) NSDictionary *appLinkData; 56 | 57 | /*! 58 | If this link target is an App Link, this is the data found in extras. 59 | */ 60 | @property (nonatomic, strong, readonly) NSDictionary *appLinkExtras; 61 | 62 | /*! 63 | The App Link indicating how to navigate back to the referer app, if any. 64 | */ 65 | @property (nonatomic, strong, readonly) BFAppLink *appLinkReferer; 66 | 67 | /*! 68 | The URL that was used to create this BFURL. 69 | */ 70 | @property (nonatomic, strong, readonly) NSURL *inputURL; 71 | 72 | /*! 73 | The query parameters of the inputURL, parsed into an NSDictionary. 74 | */ 75 | @property (nonatomic, strong, readonly) NSDictionary *inputQueryParameters; 76 | 77 | @end 78 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BFWebViewAppLinkResolver.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | 13 | #import 14 | 15 | /*! 16 | A reference implementation for an App Link resolver that uses a hidden UIWebView 17 | to parse the HTML containing App Link metadata. 18 | */ 19 | @interface BFWebViewAppLinkResolver : NSObject 20 | 21 | /*! 22 | Gets the instance of a BFWebViewAppLinkResolver. 23 | */ 24 | + (instancetype)sharedInstance; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/Bolts.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | * 9 | */ 10 | 11 | #import 12 | #import 13 | #import 14 | #import 15 | 16 | #if TARGET_OS_IPHONE 17 | #import 18 | #import 19 | #import 20 | #import 21 | #import 22 | #import 23 | #import 24 | #endif 25 | 26 | /*! @abstract 80175001: There were multiple errors. */ 27 | extern NSInteger const kBFMultipleErrorsError; 28 | 29 | @interface Bolts : NSObject 30 | 31 | /*! 32 | Returns the version of the Bolts Framework as an NSString. 33 | @returns The NSString representation of the current version. 34 | */ 35 | + (NSString *)version; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/A/Headers/BoltsVersion.h: -------------------------------------------------------------------------------- 1 | #define BOLTS_VERSION @"1.1.3" 2 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Bolts.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | ./A -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFACL.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFACL.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | @class PFRole; 10 | @class PFUser; 11 | 12 | /*! 13 | The `PFACL` class is used to control which users can access or modify a particular object. 14 | Each can have its own `PFACL`. You can grant read and write permissions separately to specific users, 15 | to groups of users that belong to roles, or you can grant permissions to "the public" so that, 16 | for example, any user could read a particular object but only a particular set of users could write to that object. 17 | */ 18 | @interface PFACL : NSObject 19 | 20 | ///-------------------------------------- 21 | /// @name Creating an ACL 22 | ///-------------------------------------- 23 | 24 | /*! 25 | @abstract Creates an ACL with no permissions granted. 26 | 27 | @returns Returns a new `PFACL`. 28 | */ 29 | + (PFACL *)ACL; 30 | 31 | /*! 32 | @abstract Creates an ACL where only the provided user has access. 33 | 34 | @param user The user to assign access. 35 | */ 36 | + (PFACL *)ACLWithUser:(PFUser *)user; 37 | 38 | ///-------------------------------------- 39 | /// @name Controlling Public Access 40 | ///-------------------------------------- 41 | 42 | /*! 43 | @abstract Set whether the public is allowed to read this object. 44 | 45 | @param allowed Whether the public can read this object. 46 | */ 47 | - (void)setPublicReadAccess:(BOOL)allowed; 48 | 49 | /*! 50 | @abstract Gets whether the public is allowed to read this object. 51 | 52 | @returns `YES` if the public read access is enabled, otherwise `NO`. 53 | */ 54 | - (BOOL)getPublicReadAccess; 55 | 56 | /*! 57 | @abstract Set whether the public is allowed to write this object. 58 | 59 | @param allowed Whether the public can write this object. 60 | */ 61 | - (void)setPublicWriteAccess:(BOOL)allowed; 62 | 63 | /*! 64 | @abstract Gets whether the public is allowed to write this object. 65 | 66 | @returns `YES` if the public write access is enabled, otherwise `NO`. 67 | */ 68 | - (BOOL)getPublicWriteAccess; 69 | 70 | ///-------------------------------------- 71 | /// @name Controlling Access Per-User 72 | ///-------------------------------------- 73 | 74 | /*! 75 | @abstract Set whether the given user id is allowed to read this object. 76 | 77 | @param allowed Whether the given user can write this object. 78 | @param userId The <[PFObject objectId]> of the user to assign access. 79 | */ 80 | - (void)setReadAccess:(BOOL)allowed forUserId:(NSString *)userId; 81 | 82 | /*! 83 | @abstract Gets whether the given user id is *explicitly* allowed to read this object. 84 | Even if this returns `NO`, the user may still be able to access it if returns `YES` 85 | or if the user belongs to a role that has access. 86 | 87 | @param userId The <[PFObject objectId]> of the user for which to retrive access. 88 | 89 | @returns `YES` if the user with this `objectId` has *explicit* read access, otherwise `NO`. 90 | */ 91 | - (BOOL)getReadAccessForUserId:(NSString *)userId; 92 | 93 | /*! 94 | @abstract Set whether the given user id is allowed to write this object. 95 | 96 | @param allowed Whether the given user can read this object. 97 | @param userId The `objectId` of the user to assign access. 98 | */ 99 | - (void)setWriteAccess:(BOOL)allowed forUserId:(NSString *)userId; 100 | 101 | /*! 102 | @abstract Gets whether the given user id is *explicitly* allowed to write this object. 103 | Even if this returns NO, the user may still be able to write it if returns `YES` 104 | or if the user belongs to a role that has access. 105 | 106 | @param userId The <[PFObject objectId]> of the user for which to retrive access. 107 | 108 | @returns `YES` if the user with this `objectId` has *explicit* write access, otherwise `NO`. 109 | */ 110 | - (BOOL)getWriteAccessForUserId:(NSString *)userId; 111 | 112 | /*! 113 | @abstract Set whether the given user is allowed to read this object. 114 | 115 | @param allowed Whether the given user can read this object. 116 | @param user The user to assign access. 117 | */ 118 | - (void)setReadAccess:(BOOL)allowed forUser:(PFUser *)user; 119 | 120 | /*! 121 | @abstract Gets whether the given user is *explicitly* allowed to read this object. 122 | Even if this returns `NO`, the user may still be able to access it if returns `YES` 123 | or if the user belongs to a role that has access. 124 | 125 | @param user The user for which to retrive access. 126 | 127 | @returns `YES` if the user has *explicit* read access, otherwise `NO`. 128 | */ 129 | - (BOOL)getReadAccessForUser:(PFUser *)user; 130 | 131 | /*! 132 | @abstract Set whether the given user is allowed to write this object. 133 | 134 | @param allowed Whether the given user can write this object. 135 | @param user The user to assign access. 136 | */ 137 | - (void)setWriteAccess:(BOOL)allowed forUser:(PFUser *)user; 138 | 139 | /*! 140 | @abstract Gets whether the given user is *explicitly* allowed to write this object. 141 | Even if this returns `NO`, the user may still be able to write it if returns `YES` 142 | or if the user belongs to a role that has access. 143 | 144 | @param user The user for which to retrive access. 145 | 146 | @returns `YES` if the user has *explicit* write access, otherwise `NO`. 147 | */ 148 | - (BOOL)getWriteAccessForUser:(PFUser *)user; 149 | 150 | ///-------------------------------------- 151 | /// @name Controlling Access Per-Role 152 | ///-------------------------------------- 153 | 154 | /*! 155 | @abstract Get whether users belonging to the role with the given name are allowed to read this object. 156 | Even if this returns `NO`, the role may still be able to read it if a parent role has read access. 157 | 158 | @param name The name of the role. 159 | 160 | @returns `YES` if the role has read access, otherwise `NO`. 161 | */ 162 | - (BOOL)getReadAccessForRoleWithName:(NSString *)name; 163 | 164 | /*! 165 | @abstract Set whether users belonging to the role with the given name are allowed to read this object. 166 | 167 | @param allowed Whether the given role can read this object. 168 | @param name The name of the role. 169 | */ 170 | - (void)setReadAccess:(BOOL)allowed forRoleWithName:(NSString *)name; 171 | 172 | /*! 173 | @abstract Get whether users belonging to the role with the given name are allowed to write this object. 174 | Even if this returns `NO`, the role may still be able to write it if a parent role has write access. 175 | 176 | @param name The name of the role. 177 | 178 | @returns `YES` if the role has read access, otherwise `NO`. 179 | */ 180 | - (BOOL)getWriteAccessForRoleWithName:(NSString *)name; 181 | 182 | /*! 183 | @abstract Set whether users belonging to the role with the given name are allowed to write this object. 184 | 185 | @param allowed Whether the given role can write this object. 186 | @param name The name of the role. 187 | */ 188 | - (void)setWriteAccess:(BOOL)allowed forRoleWithName:(NSString *)name; 189 | 190 | /*! 191 | @abstract Get whether users belonging to the given role are allowed to read this object. 192 | Even if this returns `NO`, the role may still be able to read it if a parent role has read access. 193 | 194 | @discussion The role must already be saved on the server and 195 | it's data must have been fetched in order to use this method. 196 | 197 | @param role The name of the role. 198 | 199 | @returns `YES` if the role has read access, otherwise `NO`. 200 | */ 201 | - (BOOL)getReadAccessForRole:(PFRole *)role; 202 | 203 | /*! 204 | @abstract Set whether users belonging to the given role are allowed to read this object. 205 | 206 | @discussion The role must already be saved on the server and 207 | it's data must have been fetched in order to use this method. 208 | 209 | @param allowed Whether the given role can read this object. 210 | @param role The role to assign access. 211 | */ 212 | - (void)setReadAccess:(BOOL)allowed forRole:(PFRole *)role; 213 | 214 | /*! 215 | @abstract Get whether users belonging to the given role are allowed to write this object. 216 | Even if this returns `NO`, the role may still be able to write it if a parent role has write access. 217 | 218 | @discussion The role must already be saved on the server and 219 | it's data must have been fetched in order to use this method. 220 | 221 | @param role The name of the role. 222 | 223 | @returns `YES` if the role has write access, otherwise `NO`. 224 | */ 225 | - (BOOL)getWriteAccessForRole:(PFRole *)role; 226 | 227 | /*! 228 | @abstract Set whether users belonging to the given role are allowed to write this object. 229 | 230 | @discussion The role must already be saved on the server and 231 | it's data must have been fetched in order to use this method. 232 | 233 | @param allowed Whether the given role can write this object. 234 | @param role The role to assign access. 235 | */ 236 | - (void)setWriteAccess:(BOOL)allowed forRole:(PFRole *)role; 237 | 238 | ///-------------------------------------- 239 | /// @name Setting Access Defaults 240 | ///-------------------------------------- 241 | 242 | /*! 243 | @abstract Sets a default ACL that will be applied to all instances of when they are created. 244 | 245 | @param acl The ACL to use as a template for all instance of created after this method has been called. 246 | This value will be copied and used as a template for the creation of new ACLs, so changes to the 247 | instance after this method has been called will not be reflected in new instance of . 248 | @param currentUserAccess - If `YES`, the `PFACL` that is applied to newly-created instance of will 249 | provide read and write access to the <[PFUser currentUser]> at the time of creation. 250 | - If `NO`, the provided `acl` will be used without modification. 251 | - If `acl` is `nil`, this value is ignored. 252 | */ 253 | + (void)setDefaultACL:(PFACL *)acl withAccessForCurrentUser:(BOOL)currentUserAccess; 254 | 255 | @end 256 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFAnalytics.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFAnalytics.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #else 12 | #import 13 | #endif 14 | 15 | @class BFTask; 16 | 17 | /*! 18 | `PFAnalytics` provides an interface to Parse's logging and analytics backend. 19 | 20 | Methods will return immediately and cache the request (+ timestamp) to be 21 | handled "eventually." That is, the request will be sent immediately if possible 22 | or the next time a network connection is available. 23 | */ 24 | @interface PFAnalytics : NSObject 25 | 26 | ///-------------------------------------- 27 | /// @name App-Open / Push Analytics 28 | ///-------------------------------------- 29 | 30 | /*! 31 | @abstract Tracks this application being launched. If this happened as the result of the 32 | user opening a push notification, this method sends along information to 33 | correlate this open with that push. 34 | 35 | @discussion Pass in `nil` to track a standard "application opened" event. 36 | 37 | @param launchOptions The `NSDictionary` indicating the reason the application was 38 | launched, if any. This value can be found as a parameter to various 39 | `UIApplicationDelegate` methods, and can be empty or `nil`. 40 | 41 | @returns Returns the task encapsulating the work being done. 42 | */ 43 | + (BFTask *)trackAppOpenedWithLaunchOptions:(NSDictionary *)launchOptions; 44 | 45 | /*! 46 | @abstract Tracks this application being launched. 47 | If this happened as the result of the user opening a push notification, 48 | this method sends along information to correlate this open with that push. 49 | 50 | @discussion Pass in `nil` to track a standard "application opened" event. 51 | 52 | @param launchOptions The dictionary indicating the reason the application was 53 | launched, if any. This value can be found as a parameter to various 54 | `UIApplicationDelegate` methods, and can be empty or `nil`. 55 | @param block The block to execute on server response. 56 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)` 57 | */ 58 | + (void)trackAppOpenedWithLaunchOptionsInBackground:(NSDictionary *)launchOptions block:(PFBooleanResultBlock)block; 59 | 60 | /*! 61 | @abstract Tracks this application being launched. If this happened as the result of the 62 | user opening a push notification, this method sends along information to 63 | correlate this open with that push. 64 | 65 | @param userInfo The Remote Notification payload, if any. This value can be 66 | found either under `UIApplicationLaunchOptionsRemoteNotificationKey` on `launchOptions`, 67 | or as a parameter to `application:didReceiveRemoteNotification:`. 68 | This can be empty or `nil`. 69 | 70 | @returns Returns the task encapsulating the work being done. 71 | */ 72 | + (BFTask *)trackAppOpenedWithRemoteNotificationPayload:(NSDictionary *)userInfo; 73 | 74 | /*! 75 | @abstract Tracks this application being launched. If this happened as the result of the 76 | user opening a push notification, this method sends along information to 77 | correlate this open with that push. 78 | 79 | @param userInfo The Remote Notification payload, if any. This value can be 80 | found either under `UIApplicationLaunchOptionsRemoteNotificationKey` on `launchOptions`, 81 | or as a parameter to `application:didReceiveRemoteNotification:`. This can be empty or `nil`. 82 | @param block The block to execute on server response. 83 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)` 84 | */ 85 | + (void)trackAppOpenedWithRemoteNotificationPayloadInBackground:(NSDictionary *)userInfo 86 | block:(PFBooleanResultBlock)block; 87 | 88 | ///-------------------------------------- 89 | /// @name Custom Analytics 90 | ///-------------------------------------- 91 | 92 | /*! 93 | @abstract Tracks the occurrence of a custom event. 94 | 95 | @discussion Parse will store a data point at the time of invocation with the given event name. 96 | 97 | @param name The name of the custom event to report to Parse as having happened. 98 | 99 | @returns Returns the task encapsulating the work being done. 100 | */ 101 | + (BFTask *)trackEvent:(NSString *)name; 102 | 103 | /*! 104 | @abstract Tracks the occurrence of a custom event. Parse will store a data point at the 105 | time of invocation with the given event name. The event will be sent at some 106 | unspecified time in the future, even if Parse is currently inaccessible. 107 | 108 | @param name The name of the custom event to report to Parse as having happened. 109 | @param block The block to execute on server response. 110 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)` 111 | */ 112 | + (void)trackEventInBackground:(NSString *)name block:(PFBooleanResultBlock)block; 113 | 114 | /*! 115 | @abstract Tracks the occurrence of a custom event with additional dimensions. Parse will 116 | store a data point at the time of invocation with the given event name. 117 | 118 | @discussion Dimensions will allow segmentation of the occurrences of this custom event. 119 | Keys and values should be NSStrings, and will throw otherwise. 120 | 121 | To track a user signup along with additional metadata, consider the following: 122 | 123 | NSDictionary *dimensions = @{ @"gender": @"m", 124 | @"source": @"web", 125 | @"dayType": @"weekend" }; 126 | [PFAnalytics trackEvent:@"signup" dimensions:dimensions]; 127 | 128 | @warning There is a default limit of 8 dimensions per event tracked. 129 | 130 | @param name The name of the custom event to report to Parse as having happened. 131 | @param dimensions The `NSDictionary` of information by which to segment this event. 132 | 133 | @returns Returns the task encapsulating the work being done. 134 | */ 135 | + (BFTask *)trackEvent:(NSString *)name dimensions:(NSDictionary *)dimensions; 136 | 137 | /*! 138 | @abstract Tracks the occurrence of a custom event with additional dimensions. Parse will 139 | store a data point at the time of invocation with the given event name. The 140 | event will be sent at some unspecified time in the future, even if Parse is currently inaccessible. 141 | 142 | @discussionDimensions will allow segmentation of the occurrences of this custom event. 143 | Keys and values should be NSStrings, and will throw otherwise. 144 | 145 | To track a user signup along with additional metadata, consider the following: 146 | NSDictionary *dimensions = @{ @"gender": @"m", 147 | @"source": @"web", 148 | @"dayType": @"weekend" }; 149 | [PFAnalytics trackEvent:@"signup" dimensions:dimensions]; 150 | 151 | There is a default limit of 8 dimensions per event tracked. 152 | 153 | @param name The name of the custom event to report to Parse as having happened. 154 | @param dimensions The `NSDictionary` of information by which to segment this event. 155 | @param block The block to execute on server response. 156 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)` 157 | */ 158 | + (void)trackEventInBackground:(NSString *)name dimensions:(NSDictionary *)dimensions block:(PFBooleanResultBlock)block; 159 | 160 | @end 161 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFAnonymousUtils.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFAnonymousUtils.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #import 12 | #else 13 | #import 14 | #import 15 | #endif 16 | 17 | /*! 18 | Provides utility functions for working with Anonymously logged-in users. 19 | Anonymous users have some unique characteristics: 20 | 21 | - Anonymous users don't need a user name or password. 22 | - Once logged out, an anonymous user cannot be recovered. 23 | - When the current user is anonymous, the following methods can be used to switch 24 | to a different user or convert the anonymous user into a regular one: 25 | - signUp converts an anonymous user to a standard user with the given username and password. 26 | Data associated with the anonymous user is retained. 27 | - logIn switches users without converting the anonymous user. 28 | Data associated with the anonymous user will be lost. 29 | - Service logIn (e.g. Facebook, Twitter) will attempt to convert 30 | the anonymous user into a standard user by linking it to the service. 31 | If a user already exists that is linked to the service, it will instead switch to the existing user. 32 | - Service linking (e.g. Facebook, Twitter) will convert the anonymous user 33 | into a standard user by linking it to the service. 34 | */ 35 | @interface PFAnonymousUtils : NSObject 36 | 37 | ///-------------------------------------- 38 | /// @name Creating an Anonymous User 39 | ///-------------------------------------- 40 | 41 | /*! 42 | @abstract Creates an anonymous user asynchronously and sets as a result to `BFTask`. 43 | 44 | @returns The task, that encapsulates the work being done. 45 | */ 46 | + (BFTask *)logInInBackground; 47 | 48 | /*! 49 | @abstract Creates an anonymous user. 50 | 51 | @param block The block to execute when anonymous user creation is complete. 52 | It should have the following argument signature: `^(PFUser *user, NSError *error)`. 53 | */ 54 | + (void)logInWithBlock:(PFUserResultBlock)block; 55 | 56 | /*! 57 | @abstract Creates an anonymous user. 58 | 59 | @param target Target object for the selector. 60 | @param selector The selector that will be called when the asynchronous request is complete. 61 | It should have the following signature: `(void)callbackWithUser:(PFUser *)user error:(NSError *)error`. 62 | */ 63 | + (void)logInWithTarget:(id)target selector:(SEL)selector; 64 | 65 | ///-------------------------------------- 66 | /// @name Determining Whether a User is Anonymous 67 | ///-------------------------------------- 68 | 69 | /*! 70 | @abstract Whether the object is logged in anonymously. 71 | 72 | @param user object to check for anonymity. The user must be logged in on this device. 73 | 74 | @returns `YES` if the user is anonymous. `NO` if the user is not the current user or is not anonymous. 75 | */ 76 | + (BOOL)isLinkedWithUser:(PFUser *)user; 77 | 78 | @end 79 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFCloud.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFCloud.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #else 12 | #import 13 | #endif 14 | 15 | @class BFTask; 16 | 17 | /*! 18 | The `PFCloud` class provides methods for interacting with Parse Cloud Functions. 19 | */ 20 | @interface PFCloud : NSObject 21 | 22 | /*! 23 | @abstract Calls the given cloud function *synchronously* with the parameters provided. 24 | 25 | @param function The function name to call. 26 | @param parameters The parameters to send to the function. 27 | 28 | @returns The response from the cloud function. 29 | */ 30 | + (id)callFunction:(NSString *)function withParameters:(NSDictionary *)parameters; 31 | 32 | /*! 33 | @abstract Calls the given cloud function *synchronously* with the parameters provided and 34 | sets the error if there is one. 35 | 36 | @param function The function name to call. 37 | @param parameters The parameters to send to the function. 38 | @param error Pointer to an `NSError` that will be set if necessary. 39 | 40 | @returns The response from the cloud function. 41 | This result could be a `NSDictionary`, an `NSArray`, `NSNumber` or `NSString`. 42 | */ 43 | + (id)callFunction:(NSString *)function withParameters:(NSDictionary *)parameters error:(NSError **)error; 44 | 45 | /*! 46 | @abstract Calls the given cloud function *asynchronously* with the parameters provided. 47 | 48 | @param function The function name to call. 49 | @param parameters The parameters to send to the function. 50 | 51 | @returns The task, that encapsulates the work being done. 52 | */ 53 | + (BFTask *)callFunctionInBackground:(NSString *)function withParameters:(NSDictionary *)parameters; 54 | 55 | /*! 56 | @abstract Calls the given cloud function *asynchronously* with the parameters provided 57 | and executes the given block when it is done. 58 | 59 | @param function The function name to call. 60 | @param parameters The parameters to send to the function. 61 | @param block The block to execute when the function call finished. 62 | It should have the following argument signature: `^(id result, NSError *error)`. 63 | */ 64 | + (void)callFunctionInBackground:(NSString *)function 65 | withParameters:(NSDictionary *)parameters 66 | block:(PFIdResultBlock)block; 67 | 68 | /*! 69 | @abstract Calls the given cloud function *asynchronously* with the parameters provided 70 | and then executes the given selector when it is done. 71 | 72 | @param function The function name to call. 73 | @param parameters The parameters to send to the function. 74 | @param target The object to call the selector on. 75 | @param selector The selector to call when the function call finished. 76 | It should have the following signature: `(void)callbackWithResult:(id)result error:(NSError *)error`. 77 | Result will be `nil` if error is set and vice versa. 78 | */ 79 | + (void)callFunctionInBackground:(NSString *)function 80 | withParameters:(NSDictionary *)parameters 81 | target:(id)target 82 | selector:(SEL)selector; 83 | 84 | @end 85 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFConfig.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | @class BFTask; 10 | @class PFConfig; 11 | 12 | typedef void(^PFConfigResultBlock)(PFConfig *config, NSError *error); 13 | 14 | /*! 15 | `PFConfig` is a representation of the remote configuration object. 16 | It enables you to add things like feature gating, a/b testing or simple "Message of the day". 17 | */ 18 | @interface PFConfig : NSObject 19 | 20 | ///-------------------------------------- 21 | /// @name Current Config 22 | ///-------------------------------------- 23 | 24 | /*! 25 | @abstract Returns the most recently fetched config. 26 | 27 | @discussion If there was no config fetched - this method will return an empty instance of `PFConfig`. 28 | 29 | @returns Current, last fetched instance of PFConfig. 30 | */ 31 | + (PFConfig *)currentConfig; 32 | 33 | ///-------------------------------------- 34 | /// @name Retrieving Config 35 | ///-------------------------------------- 36 | 37 | /*! 38 | @abstract Gets the `PFConfig` object *synchronously* from the server. 39 | 40 | @returns Instance of `PFConfig` if the operation succeeded, otherwise `nil`. 41 | */ 42 | + (PFConfig *)getConfig; 43 | 44 | /*! 45 | @abstract Gets the `PFConfig` object *synchronously* from the server and sets an error if it occurs. 46 | 47 | @param error Pointer to an `NSError` that will be set if necessary. 48 | 49 | @return Instance of PFConfig if the operation succeeded, otherwise `nil`. 50 | */ 51 | + (PFConfig *)getConfig:(NSError **)error; 52 | 53 | /*! 54 | @abstract Gets the `PFConfig` *asynchronously* and sets it as a result of a task. 55 | 56 | @returns The task, that encapsulates the work being done. 57 | */ 58 | + (BFTask *)getConfigInBackground; 59 | 60 | /*! 61 | @abstract Gets the `PFConfig` *asynchronously* and executes the given callback block. 62 | 63 | @param block The block to execute. 64 | It should have the following argument signature: `^(PFConfig *config, NSError *error)`. 65 | */ 66 | + (void)getConfigInBackgroundWithBlock:(PFConfigResultBlock)block; 67 | 68 | ///-------------------------------------- 69 | /// @name Parameters 70 | ///-------------------------------------- 71 | 72 | /*! 73 | @abstract Returns the object associated with a given key. 74 | 75 | @param key The key for which to return the corresponding configuration value. 76 | 77 | @return The value associated with `key`, or `nil` if there is no such value. 78 | */ 79 | - (id)objectForKey:(NSString *)key; 80 | 81 | /*! 82 | @abstract Returns the object associated with a given key. 83 | 84 | @discussion This method enables usage of literal syntax on `PFConfig`. 85 | E.g. `NSString *value = config[@"key"];` 86 | 87 | @see objectForKey: 88 | 89 | @param keyedSubscript The keyed subscript for which to return the corresponding configuration value. 90 | 91 | @return The value associated with `key`, or `nil` if there is no such value. 92 | */ 93 | - (id)objectForKeyedSubscript:(NSString *)keyedSubscript; 94 | 95 | @end 96 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFConstants.h: -------------------------------------------------------------------------------- 1 | // PFConstants.h 2 | // Copyright 2011 Parse, Inc. All rights reserved. 3 | 4 | #import 5 | 6 | @class PFObject; 7 | @class PFUser; 8 | 9 | // Version 10 | #define PARSE_VERSION @"1.5.0" 11 | 12 | extern NSInteger const PARSE_API_VERSION; 13 | 14 | // Platform 15 | #define PARSE_IOS_ONLY (TARGET_OS_IPHONE) 16 | #define PARSE_OSX_ONLY (TARGET_OS_MAC && !(TARGET_OS_IPHONE)) 17 | 18 | extern NSString *const kPFDeviceType; 19 | 20 | #if PARSE_IOS_ONLY 21 | #import 22 | #else 23 | #import 24 | @compatibility_alias UIImage NSImage; 25 | @compatibility_alias UIColor NSColor; 26 | @compatibility_alias UIView NSView; 27 | #endif 28 | 29 | // Server 30 | extern NSString *const kPFParseServer; 31 | 32 | // Cache policies 33 | typedef enum { 34 | kPFCachePolicyIgnoreCache = 0, 35 | kPFCachePolicyCacheOnly, 36 | kPFCachePolicyNetworkOnly, 37 | kPFCachePolicyCacheElseNetwork, 38 | kPFCachePolicyNetworkElseCache, 39 | kPFCachePolicyCacheThenNetwork 40 | } PFCachePolicy; 41 | 42 | // Errors 43 | 44 | extern NSString *const PFParseErrorDomain; 45 | 46 | /*! @abstract 1: Internal server error. No information available. */ 47 | extern NSInteger const kPFErrorInternalServer; 48 | 49 | /*! @abstract 100: The connection to the Parse servers failed. */ 50 | extern NSInteger const kPFErrorConnectionFailed; 51 | /*! @abstract 101: Object doesn't exist, or has an incorrect password. */ 52 | extern NSInteger const kPFErrorObjectNotFound; 53 | /*! @abstract 102: You tried to find values matching a datatype that doesn't support exact database matching, like an array or a dictionary. */ 54 | extern NSInteger const kPFErrorInvalidQuery; 55 | /*! @abstract 103: Missing or invalid classname. Classnames are case-sensitive. They must start with a letter, and a-zA-Z0-9_ are the only valid characters. */ 56 | extern NSInteger const kPFErrorInvalidClassName; 57 | /*! @abstract 104: Missing object id. */ 58 | extern NSInteger const kPFErrorMissingObjectId; 59 | /*! @abstract 105: Invalid key name. Keys are case-sensitive. They must start with a letter, and a-zA-Z0-9_ are the only valid characters. */ 60 | extern NSInteger const kPFErrorInvalidKeyName; 61 | /*! @abstract 106: Malformed pointer. Pointers must be arrays of a classname and an object id. */ 62 | extern NSInteger const kPFErrorInvalidPointer; 63 | /*! @abstract 107: Malformed json object. A json dictionary is expected. */ 64 | extern NSInteger const kPFErrorInvalidJSON; 65 | /*! @abstract 108: Tried to access a feature only available internally. */ 66 | extern NSInteger const kPFErrorCommandUnavailable; 67 | /*! @abstract 111: Field set to incorrect type. */ 68 | extern NSInteger const kPFErrorIncorrectType; 69 | /*! @abstract 112: Invalid channel name. A channel name is either an empty string (the broadcast channel) or contains only a-zA-Z0-9_ characters and starts with a letter. */ 70 | extern NSInteger const kPFErrorInvalidChannelName; 71 | /*! @abstract 114: Invalid device token. */ 72 | extern NSInteger const kPFErrorInvalidDeviceToken; 73 | /*! @abstract 115: Push is misconfigured. See details to find out how. */ 74 | extern NSInteger const kPFErrorPushMisconfigured; 75 | /*! @abstract 116: The object is too large. */ 76 | extern NSInteger const kPFErrorObjectTooLarge; 77 | /*! @abstract 119: That operation isn't allowed for clients. */ 78 | extern NSInteger const kPFErrorOperationForbidden; 79 | /*! @abstract 120: The results were not found in the cache. */ 80 | extern NSInteger const kPFErrorCacheMiss; 81 | /*! @abstract 121: Keys in NSDictionary values may not include '$' or '.'. */ 82 | extern NSInteger const kPFErrorInvalidNestedKey; 83 | /*! @abstract 122: Invalid file name. A file name contains only a-zA-Z0-9_. characters and is between 1 and 36 characters. */ 84 | extern NSInteger const kPFErrorInvalidFileName; 85 | /*! @abstract 123: Invalid ACL. An ACL with an invalid format was saved. This should not happen if you use PFACL. */ 86 | extern NSInteger const kPFErrorInvalidACL; 87 | /*! @abstract 124: The request timed out on the server. Typically this indicates the request is too expensive. */ 88 | extern NSInteger const kPFErrorTimeout; 89 | /*! @abstract 125: The email address was invalid. */ 90 | extern NSInteger const kPFErrorInvalidEmailAddress; 91 | /*! @abstract 137: A unique field was given a value that is already taken. */ 92 | extern NSInteger const kPFErrorDuplicateValue; 93 | /*! @abstract 139: Role's name is invalid. */ 94 | extern NSInteger const kPFErrorInvalidRoleName; 95 | /*! @abstract 140: Exceeded an application quota. Upgrade to resolve. */ 96 | extern NSInteger const kPFErrorExceededQuota; 97 | /*! @abstract 141: Cloud Code script had an error. */ 98 | extern NSInteger const kPFScriptError; 99 | /*! @abstract 142: Cloud Code validation failed. */ 100 | extern NSInteger const kPFValidationError; 101 | /*! @abstract 143: Product purchase receipt is missing */ 102 | extern NSInteger const kPFErrorReceiptMissing; 103 | /*! @abstract 144: Product purchase receipt is invalid */ 104 | extern NSInteger const kPFErrorInvalidPurchaseReceipt; 105 | /*! @abstract 145: Payment is disabled on this device */ 106 | extern NSInteger const kPFErrorPaymentDisabled; 107 | /*! @abstract 146: The product identifier is invalid */ 108 | extern NSInteger const kPFErrorInvalidProductIdentifier; 109 | /*! @abstract 147: The product is not found in the App Store */ 110 | extern NSInteger const kPFErrorProductNotFoundInAppStore; 111 | /*! @abstract 148: The Apple server response is not valid */ 112 | extern NSInteger const kPFErrorInvalidServerResponse; 113 | /*! @abstract 149: Product fails to download due to file system error */ 114 | extern NSInteger const kPFErrorProductDownloadFileSystemFailure; 115 | /*! @abstract 150: Fail to convert data to image. */ 116 | extern NSInteger const kPFErrorInvalidImageData; 117 | /*! @abstract 151: Unsaved file. */ 118 | extern NSInteger const kPFErrorUnsavedFile; 119 | /*! @abstract 153: Fail to delete file. */ 120 | extern NSInteger const kPFErrorFileDeleteFailure; 121 | /*! @abstract 160: Invalid event name. */ 122 | extern NSInteger const kPFErrorInvalidEventName; 123 | /*! @abstract 200: Username is missing or empty */ 124 | extern NSInteger const kPFErrorUsernameMissing; 125 | /*! @abstract 201: Password is missing or empty */ 126 | extern NSInteger const kPFErrorUserPasswordMissing; 127 | /*! @abstract 202: Username has already been taken */ 128 | extern NSInteger const kPFErrorUsernameTaken; 129 | /*! @abstract 203: Email has already been taken */ 130 | extern NSInteger const kPFErrorUserEmailTaken; 131 | /*! @abstract 204: The email is missing, and must be specified */ 132 | extern NSInteger const kPFErrorUserEmailMissing; 133 | /*! @abstract 205: A user with the specified email was not found */ 134 | extern NSInteger const kPFErrorUserWithEmailNotFound; 135 | /*! @abstract 206: The user cannot be altered by a client without the session. */ 136 | extern NSInteger const kPFErrorUserCannotBeAlteredWithoutSession; 137 | /*! @abstract 207: Users can only be created through sign up */ 138 | extern NSInteger const kPFErrorUserCanOnlyBeCreatedThroughSignUp; 139 | /*! @abstract 208: An existing Facebook account already linked to another user. */ 140 | extern NSInteger const kPFErrorFacebookAccountAlreadyLinked; 141 | /*! @abstract 208: An existing account already linked to another user. */ 142 | extern NSInteger const kPFErrorAccountAlreadyLinked; 143 | /*! @abstract 209: User ID mismatch */ 144 | extern NSInteger const kPFErrorUserIdMismatch; 145 | /*! @abstract 250: Facebook id missing from request */ 146 | extern NSInteger const kPFErrorFacebookIdMissing; 147 | /*! @abstract 250: Linked id missing from request */ 148 | extern NSInteger const kPFErrorLinkedIdMissing; 149 | /*! @abstract 251: Invalid Facebook session */ 150 | extern NSInteger const kPFErrorFacebookInvalidSession; 151 | /*! @abstract 251: Invalid linked session */ 152 | extern NSInteger const kPFErrorInvalidLinkedSession; 153 | 154 | typedef void (^PFBooleanResultBlock)(BOOL succeeded, NSError *error); 155 | typedef void (^PFIntegerResultBlock)(int number, NSError *error); 156 | typedef void (^PFArrayResultBlock)(NSArray *objects, NSError *error); 157 | typedef void (^PFObjectResultBlock)(PFObject *object, NSError *error); 158 | typedef void (^PFSetResultBlock)(NSSet *channels, NSError *error); 159 | typedef void (^PFUserResultBlock)(PFUser *user, NSError *error); 160 | typedef void (^PFDataResultBlock)(NSData *data, NSError *error); 161 | typedef void (^PFDataStreamResultBlock)(NSInputStream *stream, NSError *error); 162 | typedef void (^PFStringResultBlock)(NSString *string, NSError *error); 163 | typedef void (^PFIdResultBlock)(id object, NSError *error); 164 | typedef void (^PFProgressBlock)(int percentDone); 165 | 166 | // Deprecated Macro 167 | #ifndef PARSE_DEPRECATED 168 | #ifdef __deprecated_msg 169 | #define PARSE_DEPRECATED(_MSG) __deprecated_msg(_MSG) 170 | #else 171 | #ifdef __deprecated 172 | #define PARSE_DEPRECATED(_MSG) __attribute__((deprecated)) 173 | #else 174 | #define PARSE_DEPRECATED(_MSG) 175 | #endif 176 | #endif 177 | #endif 178 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFFile.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFFile.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #else 12 | #import 13 | #endif 14 | 15 | @class BFTask; 16 | 17 | /*! 18 | `PFFile` representes a file of binary data stored on the Parse servers. 19 | This can be a image, video, or anything else that an application needs to reference in a non-relational way. 20 | */ 21 | @interface PFFile : NSObject 22 | 23 | ///-------------------------------------- 24 | /// @name Creating a PFFile 25 | ///-------------------------------------- 26 | 27 | /*! 28 | @abstract Creates a file with given data. A name will be assigned to it by the server. 29 | 30 | @param data The contents of the new `PFFile`. 31 | 32 | @returns A new `PFFile`. 33 | */ 34 | + (instancetype)fileWithData:(NSData *)data; 35 | 36 | /*! 37 | @abstract Creates a file with given data and name. 38 | 39 | @param name The name of the new PFFile. The file name must begin with and 40 | alphanumeric character, and consist of alphanumeric characters, periods, 41 | spaces, underscores, or dashes. 42 | @param data The contents of the new `PFFile`. 43 | 44 | @returns A new `PFFile` object. 45 | */ 46 | + (instancetype)fileWithName:(NSString *)name data:(NSData *)data; 47 | 48 | /*! 49 | @abstract Creates a file with the contents of another file. 50 | 51 | @param name The name of the new `PFFile`. The file name must begin with and 52 | alphanumeric character, and consist of alphanumeric characters, periods, 53 | spaces, underscores, or dashes. 54 | @param path The path to the file that will be uploaded to Parse. 55 | */ 56 | + (instancetype)fileWithName:(NSString *)name 57 | contentsAtPath:(NSString *)path; 58 | 59 | /*! 60 | @abstract Creates a file with given data, name and content type. 61 | 62 | @param name The name of the new `PFFile`. The file name must begin with and 63 | alphanumeric character, and consist of alphanumeric characters, periods, 64 | spaces, underscores, or dashes. 65 | @param data The contents of the new `PFFile`. 66 | @param contentType Represents MIME type of the data. 67 | 68 | @returns A new `PFFile` object. 69 | */ 70 | + (instancetype)fileWithName:(NSString *)name 71 | data:(NSData *)data 72 | contentType:(NSString *)contentType; 73 | 74 | /*! 75 | @abstract Creates a file with given data and content type. 76 | 77 | @param data The contents of the new `PFFile`. 78 | @param contentType Represents MIME type of the data. 79 | 80 | @returns A new `PFFile` object. 81 | */ 82 | + (instancetype)fileWithData:(NSData *)data contentType:(NSString *)contentType; 83 | 84 | /*! 85 | @abstract The name of the file. 86 | 87 | @discussion Before the file is saved, this is the filename given by 88 | the user. After the file is saved, that name gets prefixed with a unique 89 | identifier. 90 | */ 91 | @property (nonatomic, copy, readonly) NSString *name; 92 | 93 | /*! 94 | @abstract The url of the file. 95 | */ 96 | @property (nonatomic, copy, readonly) NSString *url; 97 | 98 | ///-------------------------------------- 99 | /// @name Storing Data with Parse 100 | ///-------------------------------------- 101 | 102 | /*! 103 | @abstract Whether the file has been uploaded for the first time. 104 | */ 105 | @property (nonatomic, assign, readonly) BOOL isDirty; 106 | 107 | /*! 108 | @abstract Saves the file *synchronously*. 109 | 110 | @returns Returns whether the save succeeded. 111 | */ 112 | - (BOOL)save; 113 | 114 | /*! 115 | @abstract Saves the file *synchronously* and sets an error if it occurs. 116 | 117 | @param error Pointer to an `NSError` that will be set if necessary. 118 | 119 | @returns Returns whether the save succeeded. 120 | */ 121 | - (BOOL)save:(NSError **)error; 122 | 123 | /*! 124 | @abstract Saves the file *asynchronously*. 125 | 126 | @returns The task, that encapsulates the work being done. 127 | */ 128 | - (BFTask *)saveInBackground; 129 | 130 | /*! 131 | @abstract Saves the file *asynchronously* and executes the given block. 132 | 133 | @param block The block should have the following argument signature: `^(BOOL succeeded, NSError *error)`. 134 | */ 135 | - (void)saveInBackgroundWithBlock:(PFBooleanResultBlock)block; 136 | 137 | /*! 138 | @abstract Saves the file *asynchronously* and executes the given block. 139 | 140 | @discussion This method will execute the progressBlock periodically with the percent progress. 141 | `progressBlock` will get called with `100` before `resultBlock` is called. 142 | 143 | @param block The block should have the following argument signature: `^(BOOL succeeded, NSError *error)` 144 | @param progressBlock The block should have the following argument signature: `^(int percentDone)` 145 | */ 146 | - (void)saveInBackgroundWithBlock:(PFBooleanResultBlock)block 147 | progressBlock:(PFProgressBlock)progressBlock; 148 | 149 | /*! 150 | @abstract Saves the file *asynchronously* and calls the given callback. 151 | 152 | @param target The object to call selector on. 153 | @param selector The selector to call. 154 | It should have the following signature: `(void)callbackWithResult:(NSNumber *)result error:(NSError *)error`. 155 | `error` will be `nil` on success and set if there was an error. 156 | `[result boolValue]` will tell you whether the call succeeded or not. 157 | */ 158 | - (void)saveInBackgroundWithTarget:(id)target selector:(SEL)selector; 159 | 160 | ///-------------------------------------- 161 | /// @name Getting Data from Parse 162 | ///-------------------------------------- 163 | 164 | /*! 165 | @abstract Whether the data is available in memory or needs to be downloaded. 166 | */ 167 | @property (assign, readonly) BOOL isDataAvailable; 168 | 169 | /*! 170 | @abstract *Synchronously* gets the data from cache if available or fetches its contents from the network. 171 | 172 | @returns The `NSData` object containing file data. Returns `nil` if there was an error in fetching. 173 | */ 174 | - (NSData *)getData; 175 | 176 | /*! 177 | @abstract This method is like but avoids ever holding the entire `PFFile` contents in memory at once. 178 | 179 | @discussion This can help applications with many large files avoid memory warnings. 180 | 181 | @returns A stream containing the data. Returns `nil` if there was an error in fetching. 182 | */ 183 | - (NSInputStream *)getDataStream; 184 | 185 | /*! 186 | @abstract *Synchronously* gets the data from cache if available or fetches its contents from the network. 187 | Sets an error if it occurs. 188 | 189 | @param error Pointer to an `NSError` that will be set if necessary. 190 | 191 | @returns The `NSData` object containing file data. Returns `nil` if there was an error in fetching. 192 | */ 193 | - (NSData *)getData:(NSError **)error; 194 | 195 | /*! 196 | @abstract This method is like but avoids ever holding the entire `PFFile` contents in memory at once. 197 | 198 | @param error Pointer to an `NSError` that will be set if necessary. 199 | 200 | @returns A stream containing the data. Returns nil if there was an error in 201 | fetching. 202 | */ 203 | - (NSInputStream *)getDataStream:(NSError **)error; 204 | 205 | /*! 206 | @abstract This method is like but avoids ever holding the entire `PFFile` contents in memory at once. 207 | 208 | @discussion This can help applications with many large files avoid memory warnings. 209 | 210 | @see getData 211 | 212 | @returns A stream containing the data. Returns `nil` if there was an error in fetching. 213 | */ 214 | - (BFTask *)getDataInBackground; 215 | 216 | /*! 217 | @abstract This method is like but avoids 218 | ever holding the entire `PFFile` contents in memory at once. 219 | 220 | @discussion This can help applications with many large files avoid memory warnings. 221 | 222 | @returns The task, that encapsulates the work being done. 223 | */ 224 | - (BFTask *)getDataStreamInBackground; 225 | 226 | /*! 227 | @abstract *Asynchronously* gets the data from cache if available or fetches its contents from the network. 228 | 229 | @param block The block should have the following argument signature: `^(NSData *result, NSError *error)` 230 | */ 231 | - (void)getDataInBackgroundWithBlock:(PFDataResultBlock)block; 232 | 233 | /*! 234 | @abstract This method is like but avoids 235 | ever holding the entire `PFFile` contents in memory at once. 236 | 237 | @discussion This can help applications with many large files avoid memory warnings. 238 | 239 | @param block The block should have the following argument signature: `(NSInputStream *result, NSError *error)` 240 | */ 241 | - (void)getDataStreamInBackgroundWithBlock:(PFDataStreamResultBlock)block; 242 | 243 | /*! 244 | @abstract *Asynchronously* gets the data from cache if available or fetches its contents from the network. 245 | 246 | @discussion This method will execute the progressBlock periodically with the percent progress. 247 | `progressBlock` will get called with `100` before `resultBlock` is called. 248 | 249 | @param resultBlock The block should have the following argument signature: (NSData *result, NSError *error) 250 | @param progressBlock The block should have the following argument signature: (int percentDone) 251 | */ 252 | - (void)getDataInBackgroundWithBlock:(PFDataResultBlock)resultBlock 253 | progressBlock:(PFProgressBlock)progressBlock; 254 | 255 | /*! 256 | @abstract This method is like but avoids 257 | ever holding the entire `PFFile` contents in memory at once. 258 | 259 | @discussion This can help applications with many large files avoid memory warnings. 260 | 261 | @param resultBlock The block should have the following argument signature: `^(NSInputStream *result, NSError *error)`. 262 | @param progressBlock The block should have the following argument signature: `^(int percentDone)`. 263 | */ 264 | - (void)getDataStreamInBackgroundWithBlock:(PFDataStreamResultBlock)resultBlock 265 | progressBlock:(PFProgressBlock)progressBlock; 266 | 267 | /*! 268 | @abstract *Asynchronously* gets the data from cache if available or fetches its contents from the network. 269 | 270 | @param target The object to call selector on. 271 | @param selector The selector to call. 272 | It should have the following signature: `(void)callbackWithResult:(NSData *)result error:(NSError *)error`. 273 | `error` will be `nil` on success and set if there was an error. 274 | */ 275 | - (void)getDataInBackgroundWithTarget:(id)target selector:(SEL)selector; 276 | 277 | ///-------------------------------------- 278 | /// @name Interrupting a Transfer 279 | ///-------------------------------------- 280 | 281 | /*! 282 | @abstract Cancels the current request (upload or download of file). 283 | */ 284 | - (void)cancel; 285 | 286 | @end 287 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFGeoPoint.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFGeoPoint.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | #import 9 | 10 | /*! 11 | `PFGeoPoint` may be used to embed a latitude / longitude point as the value for a key in a . 12 | It could be used to perform queries in a geospatial manner using <[PFQuery whereKey:nearGeoPoint:]>. 13 | 14 | Currently, instances of may only have one key associated with a `PFGeoPoint` type. 15 | */ 16 | @interface PFGeoPoint : NSObject 17 | 18 | ///-------------------------------------- 19 | /// @name Creating a Geo Point 20 | ///-------------------------------------- 21 | 22 | /*! 23 | @abstract Create a PFGeoPoint object. Latitude and longitude are set to `0.0`. 24 | 25 | @returns Returns a new `PFGeoPoint`. 26 | */ 27 | + (PFGeoPoint *)geoPoint; 28 | 29 | /*! 30 | @abstract Creates a new `PFGeoPoint` object for the given `CLLocation`, set to the location's coordinates. 31 | 32 | @param location Instace of `CLLocation`, with set latitude and longitude. 33 | 34 | @returns Returns a new PFGeoPoint at specified location. 35 | */ 36 | + (PFGeoPoint *)geoPointWithLocation:(CLLocation *)location; 37 | 38 | /*! 39 | @abstract Create a new `PFGeoPoint` object with the specified latitude and longitude. 40 | 41 | @param latitude Latitude of point in degrees. 42 | @param longitude Longitude of point in degrees. 43 | 44 | @returns New point object with specified latitude and longitude. 45 | */ 46 | + (PFGeoPoint *)geoPointWithLatitude:(double)latitude longitude:(double)longitude; 47 | 48 | /*! 49 | @abstract Fetches the current device location and executes a block with a new `PFGeoPoint` object. 50 | 51 | @param geoPointHandler A block which takes the newly created `PFGeoPoint` as an argument. 52 | It should have the following argument signature: `^(PFGeoPoint *geoPoint, NSError *error)` 53 | */ 54 | + (void)geoPointForCurrentLocationInBackground:(void(^)(PFGeoPoint *geoPoint, NSError *error))geoPointHandler; 55 | 56 | ///-------------------------------------- 57 | /// @name Controlling Position 58 | ///-------------------------------------- 59 | 60 | /*! 61 | @abstract Latitude of point in degrees. Valid range is from `-90.0` to `90.0`. 62 | */ 63 | @property (nonatomic, assign) double latitude; 64 | 65 | /*! 66 | @abstract Longitude of point in degrees. Valid range is from `-180.0` to `180.0`. 67 | */ 68 | @property (nonatomic, assign) double longitude; 69 | 70 | ///-------------------------------------- 71 | /// @name Calculating Distance 72 | ///-------------------------------------- 73 | 74 | /*! 75 | @abstract Get distance in radians from this point to specified point. 76 | 77 | @param point `PFGeoPoint` that represents the location of other point. 78 | 79 | @returns Distance in radians between the receiver and `point`. 80 | */ 81 | - (double)distanceInRadiansTo:(PFGeoPoint *)point; 82 | 83 | /*! 84 | @abstract Get distance in miles from this point to specified point. 85 | 86 | @param point `PFGeoPoint` that represents the location of other point. 87 | 88 | @returns Distance in miles between the receiver and `point`. 89 | */ 90 | - (double)distanceInMilesTo:(PFGeoPoint *)point; 91 | 92 | /*! 93 | @abstract Get distance in kilometers from this point to specified point. 94 | 95 | @param point `PFGeoPoint` that represents the location of other point. 96 | 97 | @returns Distance in kilometers between the receiver and `point`. 98 | */ 99 | - (double)distanceInKilometersTo:(PFGeoPoint *)point; 100 | 101 | @end 102 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFInstallation.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFInstallation.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #import 10 | #import 11 | 12 | /*! 13 | A Parse Framework Installation Object that is a local representation of an 14 | installation persisted to the Parse cloud. This class is a subclass of a 15 | , and retains the same functionality of a PFObject, but also extends 16 | it with installation-specific fields and related immutability and validity 17 | checks. 18 | 19 | A valid `PFInstallation` can only be instantiated via 20 | <[PFInstallation currentInstallation]> because the required identifier fields 21 | are readonly. The and fields are also readonly properties which 22 | are automatically updated to match the device's time zone and application badge 23 | when the `PFInstallation` is saved, thus these fields might not reflect the 24 | latest device state if the installation has not recently been saved. 25 | 26 | `PFInstallation` objects which have a valid and are saved to 27 | the Parse cloud can be used to target push notifications. 28 | 29 | This class is currently for iOS only. There is no `PFInstallation` for Parse 30 | applications running on OS X, because they cannot receive push notifications. 31 | */ 32 | 33 | @interface PFInstallation : PFObject 34 | 35 | /*! 36 | @abstract The name of the Installation class in the REST API. 37 | 38 | @discussion This is a required PFSubclassing method. 39 | */ 40 | + (NSString *)parseClassName; 41 | 42 | ///-------------------------------------- 43 | /// @name Targeting Installations 44 | ///-------------------------------------- 45 | 46 | /*! 47 | @abstract Creates a for `PFInstallation` objects. 48 | 49 | @discussion The resulting query can only be used for targeting a . 50 | Calling find methods on the resulting query will raise an exception. 51 | */ 52 | + (PFQuery *)query; 53 | 54 | ///-------------------------------------- 55 | /// @name Accessing the Current Installation 56 | ///-------------------------------------- 57 | 58 | /*! 59 | @abstract Gets the currently-running installation from disk and returns an instance of it. 60 | 61 | @discussion If this installation is not stored on disk, returns a `PFInstallation` 62 | with and fields set to those of the 63 | current installation. 64 | 65 | @result Returns a `PFInstallation` that represents the currently-running installation. 66 | */ 67 | + (instancetype)currentInstallation; 68 | 69 | /*! 70 | @abstract Sets the device token string property from an `NSData`-encoded token. 71 | 72 | @param deviceTokenData A token that identifies the device. 73 | */ 74 | - (void)setDeviceTokenFromData:(NSData *)deviceTokenData; 75 | 76 | ///-------------------------------------- 77 | /// @name Installation Properties 78 | ///-------------------------------------- 79 | 80 | /*! 81 | @abstract The device type for the `PFInstallation`. 82 | */ 83 | @property (nonatomic, strong, readonly) NSString *deviceType; 84 | 85 | /*! 86 | @abstract The installationId for the `PFInstallation`. 87 | */ 88 | @property (nonatomic, strong, readonly) NSString *installationId; 89 | 90 | /*! 91 | @abstract The device token for the `PFInstallation`. 92 | */ 93 | @property (nonatomic, strong) NSString *deviceToken; 94 | 95 | /*! 96 | @abstract The badge for the `PFInstallation`. 97 | */ 98 | @property (nonatomic, assign) NSInteger badge; 99 | 100 | /*! 101 | @abstract The name of the time zone for the `PFInstallation`. 102 | */ 103 | @property (nonatomic, strong, readonly) NSString *timeZone; 104 | 105 | /*! 106 | @abstract The channels for the `PFInstallation`. 107 | */ 108 | @property (nonatomic, strong) NSArray *channels; 109 | 110 | @end 111 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFNetworkActivityIndicatorManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFNetworkActivityIndicatorManager.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | /*! 10 | `PFNetworkActivityIndicatorManager` manages the state of the network activity indicator in the status bar. 11 | When enabled, it will start managing the network activity indicator in the status bar, 12 | according to the network operations that are performed by Parse SDK. 13 | 14 | The number of active requests is incremented or decremented like a stack or a semaphore, 15 | the activity indicator will animate, as long as the number is greater than zero. 16 | */ 17 | @interface PFNetworkActivityIndicatorManager : NSObject 18 | 19 | /*! 20 | A Boolean value indicating whether the manager is enabled. 21 | If `YES` - the manager will start managing the status bar network activity indicator, 22 | according to the network operations that are performed by Parse SDK. 23 | The default value is `YES`. 24 | */ 25 | @property (nonatomic, assign, getter = isEnabled) BOOL enabled; 26 | 27 | /*! 28 | A Boolean value indicating whether the network activity indicator is currently displayed in the status bar. 29 | */ 30 | @property (nonatomic, assign, readonly, getter = isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible; 31 | 32 | /*! 33 | The value that indicates current network activities count. 34 | */ 35 | @property (nonatomic, assign, readonly) NSUInteger networkActivityCount; 36 | 37 | /*! 38 | @abstract Returns the shared network activity indicator manager object for the system. 39 | 40 | @returns The systemwide network activity indicator manager. 41 | */ 42 | + (instancetype)sharedManager; 43 | 44 | /*! 45 | @abstract Increments the number of active network requests. 46 | 47 | @discussion If this number was zero before incrementing, 48 | this will start animating network activity indicator in the status bar. 49 | */ 50 | - (void)incrementActivityCount; 51 | 52 | /*! 53 | @abstract Decrements the number of active network requests. 54 | 55 | @discussion If this number becomes zero after decrementing, 56 | this will stop animating network activity indicator in the status bar. 57 | */ 58 | - (void)decrementActivityCount; 59 | 60 | @end 61 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFObject+Subclass.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFObject+Subclass.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #else 12 | #import 13 | #endif 14 | 15 | @class PFQuery; 16 | 17 | /*! 18 | ### Subclassing Notes 19 | 20 | Developers can subclass `PFObject` for a more native object-oriented class structure. 21 | Strongly-typed subclasses of `PFObject` must conform to the protocol 22 | and must call before <[Parse setApplicationId:clientKey:]> is called. 23 | After this it will be returned by and other `PFObject` factories. 24 | 25 | All methods in except for <[PFSubclassing parseClassName]> 26 | are already implemented in the `PFObject+Subclass` category. 27 | 28 | Including `PFObject+Subclass.h` in your implementation file provides these implementations automatically. 29 | 30 | Subclasses support simpler initializers, query syntax, and dynamic synthesizers. 31 | The following shows an example subclass: 32 | 33 | \@interface MYGame : PFObject 34 | 35 | // Accessing this property is the same as objectForKey:@"title" 36 | @property (nonatomic, strong) NSString *title; 37 | 38 | + (NSString *)parseClassName; 39 | 40 | @end 41 | 42 | 43 | @implementation MYGame 44 | 45 | @dynamic title; 46 | 47 | + (NSString *)parseClassName { 48 | return @"Game"; 49 | } 50 | 51 | @end 52 | 53 | 54 | MYGame *game = [[MYGame alloc] init]; 55 | game.title = @"Bughouse"; 56 | [game saveInBackground]; 57 | */ 58 | @interface PFObject (Subclass) 59 | 60 | ///-------------------------------------- 61 | /// @name Methods for Subclasses 62 | ///-------------------------------------- 63 | 64 | /*! 65 | @abstract Designated initializer for subclasses. 66 | This method can only be called on subclasses which conform to . 67 | This method should not be overridden. 68 | */ 69 | - (instancetype)init; 70 | 71 | /*! 72 | @abstract Creates an instance of the registered subclass with this class's . 73 | 74 | @discussion This helps a subclass ensure that it can be subclassed itself. 75 | For example, `[PFUser object]` will return a `MyUser` object if `MyUser` is a registered subclass of `PFUser`. 76 | For this reason, `[MyClass object]` is preferred to `[[MyClass alloc] init]`. 77 | This method can only be called on subclasses which conform to `PFSubclassing`. 78 | A default implementation is provided by `PFObject` which should always be sufficient. 79 | */ 80 | + (instancetype)object; 81 | 82 | /*! 83 | @abstract Creates a reference to an existing `PFObject` for use in creating associations between `PFObjects`. 84 | 85 | @discussion Calling on this object will return `NO` until or has been called. 86 | This method can only be called on subclasses which conform to . 87 | A default implementation is provided by `PFObject` which should always be sufficient. 88 | No network request will be made. 89 | 90 | @param objectId The object id for the referenced object. 91 | 92 | @returns An instance of `PFObject` without data. 93 | */ 94 | + (instancetype)objectWithoutDataWithObjectId:(NSString *)objectId; 95 | 96 | /*! 97 | @abstract Registers an Objective-C class for Parse to use for representing a given Parse class. 98 | 99 | @discussion Once this is called on a `PFObject` subclass, any `PFObject` Parse creates with a class name 100 | that matches `[self parseClassName]` will be an instance of subclass. 101 | This method can only be called on subclasses which conform to . 102 | A default implementation is provided by `PFObject` which should always be sufficient. 103 | */ 104 | + (void)registerSubclass; 105 | 106 | /*! 107 | @abstract Returns a query for objects of type . 108 | 109 | @discussion This method can only be called on subclasses which conform to . 110 | A default implementation is provided by which should always be sufficient. 111 | */ 112 | + (PFQuery *)query; 113 | 114 | @end 115 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFProduct.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFProduct.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | #import 9 | #import 10 | 11 | /*! 12 | The `PFProduct` class represents an in-app purchase product on the Parse server. 13 | By default, products can only be created via the Data Browser. Saving a `PFProduct` will result in error. 14 | However, the products' metadata information can be queried and viewed. 15 | 16 | This class is currently for iOS only. 17 | */ 18 | @interface PFProduct : PFObject 19 | 20 | /*! 21 | @abstract The name of the Installation class in the REST API. 22 | 23 | @discussion This is a required PFSubclassing method. 24 | */ 25 | + (NSString *)parseClassName; 26 | 27 | ///-------------------------------------- 28 | /// @name Querying for Products 29 | ///-------------------------------------- 30 | 31 | /*! 32 | @abstract A that could be used to fetch all product instances from Parse. 33 | */ 34 | + (PFQuery *)query; 35 | 36 | ///-------------------------------------- 37 | /// @name Product-specific Properties 38 | ///-------------------------------------- 39 | 40 | /*! 41 | @abstract The product identifier of the product. 42 | 43 | @discussion This should match the product identifier in iTunes Connect exactly. 44 | */ 45 | @property (nonatomic, strong) NSString *productIdentifier; 46 | 47 | /*! 48 | @abstract The icon of the product. 49 | */ 50 | @property (nonatomic, strong) PFFile *icon; 51 | 52 | /*! 53 | @abstract The title of the product. 54 | */ 55 | @property (nonatomic, strong) NSString *title; 56 | 57 | /*! 58 | @abstract The subtitle of the product. 59 | */ 60 | @property (nonatomic, strong) NSString *subtitle; 61 | 62 | /*! 63 | @abstract The order in which the product information is displayed in . 64 | 65 | @discussion The product with a smaller order is displayed earlier in the . 66 | */ 67 | @property (nonatomic, strong) NSNumber *order; 68 | 69 | /*! 70 | @abstract The name of the associated download. 71 | 72 | @discussion If there is no downloadable asset, it should be `nil`. 73 | */ 74 | @property (nonatomic, strong, readonly) NSString *downloadName; 75 | 76 | @end 77 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFPurchase.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFPurchase.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | #import 9 | 10 | #import 11 | 12 | @class PFProduct; 13 | 14 | /*! 15 | `PFPurchase` provides a set of APIs for working with in-app purchases. 16 | 17 | This class is currently for iOS only. 18 | */ 19 | @interface PFPurchase : NSObject 20 | 21 | /*! 22 | @abstract Add application logic block which is run when buying a product. 23 | 24 | @discussion This method should be called once for each product, and should be called before 25 | calling . All invocations to should happen within 26 | the same method, and on the main thread. It is recommended to place all invocations of this method 27 | in `application:didFinishLaunchingWithOptions:`. 28 | 29 | @param productIdentifier the product identifier 30 | @param block The block to be run when buying a product. 31 | */ 32 | + (void)addObserverForProduct:(NSString *)productIdentifier 33 | block:(void(^)(SKPaymentTransaction *transaction))block; 34 | 35 | /*! 36 | @abstract *Asynchronously* initiates the purchase for the product. 37 | 38 | @param productIdentifier the product identifier 39 | @param block the completion block. 40 | */ 41 | + (void)buyProduct:(NSString *)productIdentifier block:(void(^)(NSError *error))block; 42 | 43 | /*! 44 | @abstract *Asynchronously* download the purchased asset, which is stored on Parse's server. 45 | 46 | @discussion Parse verifies the receipt with Apple and delivers the content only if the receipt is valid. 47 | 48 | @param transaction the transaction, which contains the receipt. 49 | @param completion the completion block. 50 | */ 51 | + (void)downloadAssetForTransaction:(SKPaymentTransaction *)transaction 52 | completion:(void(^)(NSString *filePath, NSError *error))completion; 53 | 54 | /*! 55 | @abstract *Asynchronously* download the purchased asset, which is stored on Parse's server. 56 | 57 | @discussion Parse verifies the receipt with Apple and delivers the content only if the receipt is valid. 58 | 59 | @param transaction the transaction, which contains the receipt. 60 | @param completion the completion block. 61 | @param progress the progress block, which is called multiple times to reveal progress of the download. 62 | */ 63 | + (void)downloadAssetForTransaction:(SKPaymentTransaction *)transaction 64 | completion:(void(^)(NSString *filePath, NSError *error))completion 65 | progress:(PFProgressBlock)progress; 66 | 67 | /*! 68 | @abstract *Asynchronously* restore completed transactions for the current user. 69 | 70 | @discussion Only nonconsumable purchases are restored. If observers for the products have been added before 71 | calling this method, invoking the method reruns the application logic associated with the purchase. 72 | 73 | @warning This method is only important to developers who want to preserve purchase states across 74 | different installations of the same app. 75 | */ 76 | + (void)restore; 77 | 78 | /* 79 | @abstract Returns a content path of the asset of a product, if it was purchased and downloaded. 80 | 81 | @discussion To download and verify purchases use . 82 | 83 | @warning This method will return `nil`, if the purchase wasn't verified or if the asset was not downloaded. 84 | */ 85 | + (NSString *)assetContentPathForProduct:(PFProduct *)product; 86 | 87 | @end 88 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFRelation.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFRelation.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #import 12 | #else 13 | #import 14 | #import 15 | #endif 16 | 17 | /*! 18 | The `PFRelation` class that is used to access all of the children of a many-to-many relationship. 19 | Each instance of `PFRelation` is associated with a particular parent object and key. 20 | */ 21 | @interface PFRelation : NSObject 22 | 23 | /*! 24 | @abstract The name of the class of the target child objects. 25 | */ 26 | @property (nonatomic, strong) NSString *targetClass; 27 | 28 | ///-------------------------------------- 29 | /// @name Accessing Objects 30 | ///-------------------------------------- 31 | 32 | /*! 33 | @abstract Returns a object that can be used to get objects in this relation. 34 | */ 35 | - (PFQuery *)query; 36 | 37 | ///-------------------------------------- 38 | /// @name Modifying Relations 39 | ///-------------------------------------- 40 | 41 | /*! 42 | @abstract Adds a relation to the passed in object. 43 | 44 | @param object A object to add relation to. 45 | */ 46 | - (void)addObject:(PFObject *)object; 47 | 48 | /*! 49 | @abstract Removes a relation to the passed in object. 50 | 51 | @param object A object to add relation to. 52 | */ 53 | - (void)removeObject:(PFObject *)object; 54 | 55 | @end 56 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFRole.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFRole.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #import 12 | #else 13 | #import 14 | #import 15 | #endif 16 | 17 | /*! 18 | The `PFRole` class represents a Role on the Parse server. 19 | `PFRoles` represent groupings of objects for the purposes of granting permissions 20 | (e.g. specifying a for a ). 21 | Roles are specified by their sets of child users and child roles, 22 | all of which are granted any permissions that the parent role has. 23 | 24 | Roles must have a name (which cannot be changed after creation of the role), and must specify an ACL. 25 | */ 26 | @interface PFRole : PFObject 27 | 28 | ///-------------------------------------- 29 | /// @name Creating a New Role 30 | ///-------------------------------------- 31 | 32 | /*! 33 | @abstract Constructs a new `PFRole` with the given name. 34 | If no default ACL has been specified, you must provide an ACL for the role. 35 | 36 | @param name The name of the Role to create. 37 | */ 38 | - (instancetype)initWithName:(NSString *)name; 39 | 40 | /*! 41 | @abstract Constructs a new `PFRole` with the given name. 42 | 43 | @param name The name of the Role to create. 44 | @param acl The ACL for this role. Roles must have an ACL. 45 | */ 46 | - (instancetype)initWithName:(NSString *)name acl:(PFACL *)acl; 47 | 48 | /*! 49 | @abstract Constructs a new `PFRole` with the given name. 50 | 51 | @discussion If no default ACL has been specified, you must provide an ACL for the role. 52 | 53 | @param name The name of the Role to create. 54 | */ 55 | + (instancetype)roleWithName:(NSString *)name; 56 | 57 | /*! 58 | @abstract Constructs a new `PFRole` with the given name. 59 | 60 | @param name The name of the Role to create. 61 | @param acl The ACL for this role. Roles must have an ACL. 62 | */ 63 | + (instancetype)roleWithName:(NSString *)name acl:(PFACL *)acl; 64 | 65 | ///-------------------------------------- 66 | /// @name Role-specific Properties 67 | ///-------------------------------------- 68 | 69 | /*! 70 | @abstract Gets or sets the name for a role. 71 | 72 | @discussion This value must be set before the role has been saved to the server, 73 | and cannot be set once the role has been saved. 74 | 75 | @warning A role's name can only contain alphanumeric characters, `_`, `-`, and spaces. 76 | */ 77 | @property (nonatomic, copy) NSString *name; 78 | 79 | /*! 80 | @abstract Gets the for the objects that are direct children of this role. 81 | 82 | @discussion These users are granted any privileges that this role has been granted 83 | (e.g. read or write access through ACLs). You can add or remove users from 84 | the role through this relation. 85 | */ 86 | @property (nonatomic, strong, readonly) PFRelation *users; 87 | 88 | /*! 89 | @abstract Gets the for the `PFRole` objects that are direct children of this role. 90 | 91 | @discussion These roles' users are granted any privileges that this role has been granted 92 | (e.g. read or write access through ACLs). You can add or remove child roles 93 | from this role through this relation. 94 | */ 95 | @property (nonatomic, strong, readonly) PFRelation *roles; 96 | 97 | ///-------------------------------------- 98 | /// @name Querying for Roles 99 | ///-------------------------------------- 100 | 101 | /*! 102 | @abstract Creates a for `PFRole` objects. 103 | */ 104 | + (PFQuery *)query; 105 | 106 | @end 107 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFSubclassing.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFSubclassing.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | @class PFQuery; 10 | 11 | /*! 12 | If a subclass of conforms to `PFSubclassing` and calls , 13 | Parse framework will be able to use that class as the native class for a Parse cloud object. 14 | 15 | Classes conforming to this protocol should subclass and 16 | include `PFObject+Subclass.h` in their implementation file. 17 | This ensures the methods in the Subclass category of are exposed in its subclasses only. 18 | */ 19 | @protocol PFSubclassing 20 | 21 | /*! 22 | @abstract Constructs an object of the most specific class known to implement . 23 | 24 | @discussion This method takes care to help subclasses be subclassed themselves. 25 | For example, `[PFUser object]` returns a by default but will return an 26 | object of a registered subclass instead if one is known. 27 | A default implementation is provided by which should always be sufficient. 28 | 29 | @returns Returns the object that is instantiated. 30 | */ 31 | + (instancetype)object; 32 | 33 | /*! 34 | @abstract Creates a reference to an existing PFObject for use in creating associations between PFObjects. 35 | 36 | @discussion Calling <[PFObject isDataAvailable]> on this object will return `NO` 37 | until <[PFObject fetchIfNeeded]> has been called. No network request will be made. 38 | A default implementation is provided by PFObject which should always be sufficient. 39 | 40 | @param objectId The object id for the referenced object. 41 | 42 | @returns A new without data. 43 | */ 44 | + (instancetype)objectWithoutDataWithObjectId:(NSString *)objectId; 45 | 46 | /*! 47 | @abstract The name of the class as seen in the REST API. 48 | */ 49 | + (NSString *)parseClassName; 50 | 51 | /*! 52 | @abstract Create a query which returns objects of this type. 53 | 54 | @discussion A default implementation is provided by which should always be sufficient. 55 | */ 56 | + (PFQuery *)query; 57 | 58 | /*! 59 | @abstract Lets Parse know this class should be used to instantiate all objects with class type . 60 | 61 | @warning This method must be called before <[Parse setApplicationId:clientKey:]> 62 | */ 63 | + (void)registerSubclass; 64 | 65 | @end 66 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFTwitterUtils.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFTwitterUtils.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #import 10 | #import 11 | #import 12 | 13 | @class BFTask; 14 | 15 | /*! 16 | The `PFTwitterUtils` class provides utility functions for working with Twitter in a Parse application. 17 | 18 | This class is currently for iOS only. 19 | */ 20 | @interface PFTwitterUtils : NSObject 21 | 22 | ///-------------------------------------- 23 | /// @name Interacting With Twitter 24 | ///-------------------------------------- 25 | 26 | /*! 27 | @abstract Gets the instance of the object that Parse uses. 28 | 29 | @returns An instance of object. 30 | */ 31 | + (PF_Twitter *)twitter; 32 | 33 | /*! 34 | @abstract Initializes the Twitter singleton. 35 | 36 | @warning You must invoke this in order to use the Twitter functionality in Parse. 37 | 38 | @param consumerKey Your Twitter application's consumer key. 39 | @param consumerSecret Your Twitter application's consumer secret. 40 | */ 41 | + (void)initializeWithConsumerKey:(NSString *)consumerKey 42 | consumerSecret:(NSString *)consumerSecret; 43 | 44 | /*! 45 | @abstract Whether the user has their account linked to Twitter. 46 | 47 | @param user User to check for a Twitter link. The user must be logged in on this device. 48 | 49 | @returns `YES` if the user has their account linked to Twitter, otherwise `NO`. 50 | */ 51 | + (BOOL)isLinkedWithUser:(PFUser *)user; 52 | 53 | ///-------------------------------------- 54 | /// @name Logging In & Creating Twitter-Linked Users 55 | ///-------------------------------------- 56 | 57 | /*! 58 | @abstract *Asynchronously* logs in a user using Twitter. 59 | 60 | @discussion This method delegates to Twitter to authenticate the user, 61 | and then automatically logs in (or creates, in the case where it is a new user) a . 62 | 63 | @returns The task, that encapsulates the work being done. 64 | */ 65 | + (BFTask *)logInInBackground; 66 | 67 | /*! 68 | @abstract *Asynchronously* logs in a user using Twitter. 69 | 70 | @discussion This method delegates to Twitter to authenticate the user, 71 | and then automatically logs in (or creates, in the case where it is a new user) . 72 | 73 | @param block The block to execute. 74 | It should have the following argument signature: `^(PFUser *user, NSError *error)`. 75 | */ 76 | + (void)logInWithBlock:(PFUserResultBlock)block; 77 | 78 | /*! 79 | @abstract *Asynchronously* Logs in a user using Twitter. 80 | 81 | @discussion This method delegates to Twitter to authenticate the user, 82 | and then automatically logs in (or creates, in the case where it is a new user) a . 83 | 84 | @param target Target object for the selector 85 | @param selector The selector that will be called when the asynchrounous request is complete. 86 | It should have the following signature: `(void)callbackWithUser:(PFUser *)user error:(NSError **)error`. 87 | */ 88 | + (void)logInWithTarget:(id)target selector:(SEL)selector; 89 | 90 | /*! 91 | @abstract *Asynchronously* logs in a user using Twitter. 92 | 93 | @discussion Allows you to handle user login to Twitter, then provide authentication 94 | data to log in (or create, in the case where it is a new user) the . 95 | 96 | @param twitterId The id of the Twitter user being linked. 97 | @param screenName The screen name of the Twitter user being linked. 98 | @param authToken The auth token for the user's session. 99 | @param authTokenSecret The auth token secret for the user's session. 100 | 101 | @returns The task, that encapsulates the work being done. 102 | */ 103 | + (BFTask *)logInWithTwitterIdInBackground:(NSString *)twitterId 104 | screenName:(NSString *)screenName 105 | authToken:(NSString *)authToken 106 | authTokenSecret:(NSString *)authTokenSecret; 107 | 108 | /*! 109 | @abstract Logs in a user using Twitter. 110 | 111 | @discussion Allows you to handle user login to Twitter, then provide authentication data 112 | to log in (or create, in the case where it is a new user) the . 113 | 114 | @param twitterId The id of the Twitter user being linked 115 | @param screenName The screen name of the Twitter user being linked 116 | @param authToken The auth token for the user's session 117 | @param authTokenSecret The auth token secret for the user's session 118 | @param block The block to execute. 119 | It should have the following argument signature: `^(PFUser *user, NSError *error)`. 120 | */ 121 | + (void)logInWithTwitterId:(NSString *)twitterId 122 | screenName:(NSString *)screenName 123 | authToken:(NSString *)authToken 124 | authTokenSecret:(NSString *)authTokenSecret 125 | block:(PFUserResultBlock)block; 126 | 127 | /*! 128 | @abstract Logs in a user using Twitter. 129 | 130 | @discussion Allows you to handle user login to Twitter, then provide authentication data 131 | to log in (or create, in the case where it is a new user) the . 132 | 133 | @param twitterId The id of the Twitter user being linked. 134 | @param screenName The screen name of the Twitter user being linked. 135 | @param authToken The auth token for the user's session. 136 | @param authTokenSecret The auth token secret for the user's session. 137 | @param target Target object for the selector. 138 | @param selector The selector that will be called when the asynchronous request is complete. 139 | It should have the following signature: `(void)callbackWithUser:(PFUser *)user error:(NSError *)error`. 140 | */ 141 | + (void)logInWithTwitterId:(NSString *)twitterId 142 | screenName:(NSString *)screenName 143 | authToken:(NSString *)authToken 144 | authTokenSecret:(NSString *)authTokenSecret 145 | target:(id)target 146 | selector:(SEL)selector; 147 | 148 | ///-------------------------------------- 149 | /// @name Linking Users with Twitter 150 | ///-------------------------------------- 151 | 152 | /*! 153 | @abstract *Asynchronously* links Twitter to an existing PFUser. 154 | 155 | @discussion This method delegates to Twitter to authenticate the user, 156 | and then automatically links the account to the . 157 | 158 | @param user User to link to Twitter. 159 | 160 | @deprecated Please use `[PFTwitterUtils linkUserInBackground:]` instead. 161 | */ 162 | + (void)linkUser:(PFUser *)user PARSE_DEPRECATED("Please use +linkUserInBackground: instead."); 163 | 164 | /*! 165 | @abstract *Asynchronously* links Twitter to an existing . 166 | 167 | @discussion This method delegates to Twitter to authenticate the user, 168 | and then automatically links the account to the . 169 | 170 | @param user User to link to Twitter. 171 | 172 | @returns The task, that encapsulates the work being done. 173 | */ 174 | + (BFTask *)linkUserInBackground:(PFUser *)user; 175 | 176 | /*! 177 | @abstract *Asynchronously* links Twitter to an existing . 178 | 179 | @discussion This method delegates to Twitter to authenticate the user, 180 | and then automatically links the account to the . 181 | 182 | @param user User to link to Twitter. 183 | @param block The block to execute. 184 | It should have the following argument signature: `^(BOOL *success, NSError *error)`. 185 | */ 186 | + (void)linkUser:(PFUser *)user block:(PFBooleanResultBlock)block; 187 | 188 | /*! 189 | @abstract *Asynchronously* links Twitter to an existing . 190 | 191 | @discussion This method delegates to Twitter to authenticate the user, 192 | and then automatically links the account to the . 193 | 194 | @param user User to link to Twitter. 195 | @param target Target object for the selector 196 | @param selector The selector that will be called when the asynchrounous request is complete. 197 | It should have the following signature: `(void)callbackWithResult:(NSNumber *)result error:(NSError *)error`. 198 | */ 199 | + (void)linkUser:(PFUser *)user 200 | target:(id)target 201 | selector:(SEL)selector; 202 | 203 | /*! 204 | @abstract *Asynchronously* links Twitter to an existing PFUser asynchronously. 205 | 206 | @discussion Allows you to handle user login to Twitter, 207 | then provide authentication data to link the account to the . 208 | 209 | @param user User to link to Twitter. 210 | @param twitterId The id of the Twitter user being linked. 211 | @param screenName The screen name of the Twitter user being linked. 212 | @param authToken The auth token for the user's session. 213 | @param authTokenSecret The auth token secret for the user's session. 214 | @returns The task, that encapsulates the work being done. 215 | */ 216 | + (BFTask *)linkUserInBackground:(PFUser *)user 217 | twitterId:(NSString *)twitterId 218 | screenName:(NSString *)screenName 219 | authToken:(NSString *)authToken 220 | authTokenSecret:(NSString *)authTokenSecret; 221 | 222 | /*! 223 | @abstract *Asynchronously* links Twitter to an existing . 224 | 225 | @discussionAllows you to handle user login to Twitter, 226 | then provide authentication data to link the account to the . 227 | 228 | @param user User to link to Twitter. 229 | @param twitterId The id of the Twitter user being linked. 230 | @param screenName The screen name of the Twitter user being linked. 231 | @param authToken The auth token for the user's session. 232 | @param authTokenSecret The auth token secret for the user's session. 233 | @param block The block to execute. 234 | It should have the following argument signature: `^(BOOL *success, NSError *error)`. 235 | */ 236 | + (void)linkUser:(PFUser *)user 237 | twitterId:(NSString *)twitterId 238 | screenName:(NSString *)screenName 239 | authToken:(NSString *)authToken 240 | authTokenSecret:(NSString *)authTokenSecret 241 | block:(PFBooleanResultBlock)block; 242 | 243 | /*! 244 | @abstract Links Twitter to an existing . 245 | 246 | @discussion This method allows you to handle user login to Twitter, 247 | then provide authentication data to link the account to the . 248 | 249 | @param user User to link to Twitter. 250 | @param twitterId The id of the Twitter user being linked. 251 | @param screenName The screen name of the Twitter user being linked. 252 | @param authToken The auth token for the user's session. 253 | @param authTokenSecret The auth token secret for the user's session. 254 | @param target Target object for the selector. 255 | @param selector The selector that will be called when the asynchronous request is complete. 256 | It should have the following signature: `(void)callbackWithResult:(NSNumber *)result error:(NSError *)error`. 257 | */ 258 | + (void)linkUser:(PFUser *)user 259 | twitterId:(NSString *)twitterId 260 | screenName:(NSString *)screenName 261 | authToken:(NSString *)authToken 262 | authTokenSecret:(NSString *)authTokenSecret 263 | target:(id)target 264 | selector:(SEL)selector; 265 | 266 | ///-------------------------------------- 267 | /// @name Unlinking Users from Twitter 268 | ///-------------------------------------- 269 | 270 | /*! 271 | @abstract *Synchronously* unlinks the from a Twitter account. 272 | 273 | @param user User to unlink from Twitter. 274 | 275 | @returns Returns true if the unlink was successful. 276 | */ 277 | + (BOOL)unlinkUser:(PFUser *)user; 278 | 279 | /*! 280 | @abstract *Synchronously* unlinks the PFUser from a Twitter account. 281 | 282 | @param user User to unlink from Twitter. 283 | @param error Error object to set on error. 284 | 285 | @returns Returns `YES` if the unlink was successful, otherwise `NO`. 286 | */ 287 | + (BOOL)unlinkUser:(PFUser *)user error:(NSError **)error; 288 | 289 | /*! 290 | @abstract Makes an *asynchronous* request to unlink a user from a Twitter account. 291 | 292 | @param user User to unlink from Twitter. 293 | 294 | @returns The task, that encapsulates the work being done. 295 | */ 296 | + (BFTask *)unlinkUserInBackground:(PFUser *)user; 297 | 298 | /*! 299 | @abstract Makes an *asynchronous* request to unlink a user from a Twitter account. 300 | 301 | @param user User to unlink from Twitter. 302 | @param block The block to execute. 303 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)`. 304 | */ 305 | + (void)unlinkUserInBackground:(PFUser *)user 306 | block:(PFBooleanResultBlock)block; 307 | 308 | /*! 309 | @abstract Makes an *asynchronous* request to unlink a user from a Twitter account. 310 | 311 | @param user User to unlink from Twitter 312 | @param target Target object for the selector 313 | @param selector The selector that will be called when the asynchrounous request is complete. 314 | */ 315 | + (void)unlinkUserInBackground:(PFUser *)user 316 | target:(id)target 317 | selector:(SEL)selector; 318 | 319 | @end 320 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PFUser.h: -------------------------------------------------------------------------------- 1 | // 2 | // PFUser.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | #import 11 | #import 12 | #import 13 | #else 14 | #import 15 | #import 16 | #import 17 | #endif 18 | 19 | @class PFQuery; 20 | 21 | /*! 22 | The `PFUser` class is a local representation of a user persisted to the Parse Data. 23 | This class is a subclass of a , and retains the same functionality of a , 24 | but also extends it with various user specific methods, like authentication, signing up, and validation uniqueness. 25 | 26 | Many APIs responsible for linking a `PFUser` with Facebook or Twitter have been deprecated in favor of dedicated 27 | utilities for each social network. See , and for more information. 28 | */ 29 | 30 | @interface PFUser : PFObject 31 | 32 | /*! 33 | @abstract The name of the `PFUser` class in the REST API. 34 | 35 | @discussion This is a required method. 36 | */ 37 | + (NSString *)parseClassName; 38 | 39 | ///-------------------------------------- 40 | /// @name Accessing the Current User 41 | ///-------------------------------------- 42 | 43 | /*! 44 | @abstract Gets the currently logged in user from disk and returns an instance of it. 45 | 46 | @returns Returns a `PFUser` that is the currently logged in user. If there is none, returns `nil`. 47 | */ 48 | + (instancetype)currentUser; 49 | 50 | /*! 51 | @abstract The session token for the `PFUser`. 52 | 53 | @discussion This is set by the server upon successful authentication. 54 | */ 55 | @property (nonatomic, strong) NSString *sessionToken; 56 | 57 | /*! 58 | @abstract Whether the `PFUser` was just created from a request. 59 | 60 | @discussion This is only set after a Facebook or Twitter login. 61 | */ 62 | @property (assign, readonly) BOOL isNew; 63 | 64 | /*! 65 | @abstract Whether the user is an authenticated object for the device. 66 | 67 | @discussion An authenticated `PFUser` is one that is obtained via a or method. 68 | An authenticated object is required in order to save (with altered values) or delete it. 69 | 70 | @returns Returns whether the user is authenticated. 71 | */ 72 | - (BOOL)isAuthenticated; 73 | 74 | ///-------------------------------------- 75 | /// @name Creating a New User 76 | ///-------------------------------------- 77 | 78 | /*! 79 | @abstract Creates a new `PFUser` object. 80 | 81 | @returns Returns a new `PFUser` object. 82 | */ 83 | + (PFUser *)user; 84 | 85 | /*! 86 | @abstract Enables automatic creation of anonymous users. 87 | 88 | @discussion After calling this method, will always have a value. 89 | The user will only be created on the server once the user has been saved, 90 | or once an object with a relation to that user or an ACL that refers to the user has been saved. 91 | 92 | @warning <[PFObject saveEventually]> will not work on if an item being saved has a relation 93 | to an automatic user that has never been saved. 94 | */ 95 | + (void)enableAutomaticUser; 96 | 97 | /*! 98 | @abstract The username for the `PFUser`. 99 | */ 100 | @property (nonatomic, strong) NSString *username; 101 | 102 | /**! 103 | @abstract The password for the `PFUser`. 104 | 105 | @discussion This will not be filled in from the server with the password. 106 | It is only meant to be set. 107 | */ 108 | @property (nonatomic, strong) NSString *password; 109 | 110 | /*! 111 | @abstract The email for the `PFUser`. 112 | */ 113 | @property (nonatomic, strong) NSString *email; 114 | 115 | /*! 116 | @abstract Signs up the user *synchronously*. 117 | 118 | @discussion This will also enforce that the username isn't already taken. 119 | 120 | @warning Make sure that password and username are set before calling this method. 121 | 122 | @returns Returns `YES` if the sign up was successful, otherwise `NO`. 123 | */ 124 | - (BOOL)signUp; 125 | 126 | /*! 127 | @abstract Signs up the user *synchronously*. 128 | 129 | @discussion This will also enforce that the username isn't already taken. 130 | 131 | @warning Make sure that password and username are set before calling this method. 132 | 133 | @param error Error object to set on error. 134 | 135 | @returns Returns whether the sign up was successful. 136 | */ 137 | - (BOOL)signUp:(NSError **)error; 138 | 139 | /*! 140 | @abstract Signs up the user *asynchronously*. 141 | 142 | @discussion This will also enforce that the username isn't already taken. 143 | 144 | @warning Make sure that password and username are set before calling this method. 145 | 146 | @returns The task, that encapsulates the work being done. 147 | */ 148 | - (BFTask *)signUpInBackground; 149 | 150 | /*! 151 | @abstract Signs up the user *asynchronously*. 152 | 153 | @discussion This will also enforce that the username isn't already taken. 154 | 155 | @warning Make sure that password and username are set before calling this method. 156 | 157 | @param block The block to execute. 158 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)`. 159 | */ 160 | - (void)signUpInBackgroundWithBlock:(PFBooleanResultBlock)block; 161 | 162 | /*! 163 | @abstract Signs up the user *asynchronously*. 164 | 165 | @discussion This will also enforce that the username isn't already taken. 166 | 167 | @warning Make sure that password and username are set before calling this method. 168 | 169 | @param target Target object for the selector. 170 | @param selector The selector that will be called when the asynchrounous request is complete. 171 | It should have the following signature: `(void)callbackWithResult:(NSNumber *)result error:(NSError *)error`. 172 | `error` will be `nil` on success and set if there was an error. 173 | `[result boolValue]` will tell you whether the call succeeded or not. 174 | */ 175 | - (void)signUpInBackgroundWithTarget:(id)target selector:(SEL)selector; 176 | 177 | ///-------------------------------------- 178 | /// @name Logging In 179 | ///-------------------------------------- 180 | 181 | /*! 182 | @abstract Makes a *synchronous* request to login a user with specified credentials. 183 | 184 | @discussion Returns an instance of the successfully logged in `PFUser`. 185 | This also caches the user locally so that calls to will use the latest logged in user. 186 | 187 | @param username The username of the user. 188 | @param password The password of the user. 189 | 190 | @returns Returns an instance of the `PFUser` on success. 191 | If login failed for either wrong password or wrong username, returns `nil`. 192 | */ 193 | + (instancetype)logInWithUsername:(NSString *)username 194 | password:(NSString *)password; 195 | 196 | /*! 197 | @abstract Makes a *synchronous* request to login a user with specified credentials. 198 | 199 | @discussion Returns an instance of the successfully logged in `PFUser`. 200 | This also caches the user locally so that calls to will use the latest logged in user. 201 | 202 | @param username The username of the user. 203 | @param password The password of the user. 204 | @param error The error object to set on error. 205 | 206 | @returns Returns an instance of the `PFUser` on success. 207 | If login failed for either wrong password or wrong username, returns `nil`. 208 | */ 209 | + (instancetype)logInWithUsername:(NSString *)username 210 | password:(NSString *)password 211 | error:(NSError **)error; 212 | 213 | /*! 214 | @abstract Makes an *asynchronous* request to login a user with specified credentials. 215 | 216 | @discussion Returns an instance of the successfully logged in `PFUser`. 217 | This also caches the user locally so that calls to will use the latest logged in user. 218 | 219 | @param username The username of the user. 220 | @param password The password of the user. 221 | 222 | @returns The task, that encapsulates the work being done. 223 | */ 224 | + (BFTask *)logInWithUsernameInBackground:(NSString *)username 225 | password:(NSString *)password; 226 | 227 | /*! 228 | @abstract Makes an *asynchronous* request to login a user with specified credentials. 229 | 230 | @discussion Returns an instance of the successfully logged in `PFUser`. 231 | This also caches the user locally so that calls to will use the latest logged in user. 232 | 233 | @param username The username of the user. 234 | @param password The password of the user. 235 | @param target Target object for the selector. 236 | @param selector The selector that will be called when the asynchrounous request is complete. 237 | It should have the following signature: `(void)callbackWithUser:(PFUser *)user error:(NSError *)error`. 238 | */ 239 | + (void)logInWithUsernameInBackground:(NSString *)username 240 | password:(NSString *)password 241 | target:(id)target 242 | selector:(SEL)selector; 243 | 244 | /*! 245 | @abstract Makes an *asynchronous* request to log in a user with specified credentials. 246 | 247 | @discussion Returns an instance of the successfully logged in `PFUser`. 248 | This also caches the user locally so that calls to will use the latest logged in user. 249 | 250 | @param username The username of the user. 251 | @param password The password of the user. 252 | @param block The block to execute. 253 | It should have the following argument signature: `^(PFUser *user, NSError *error)`. 254 | */ 255 | + (void)logInWithUsernameInBackground:(NSString *)username 256 | password:(NSString *)password 257 | block:(PFUserResultBlock)block; 258 | 259 | ///-------------------------------------- 260 | /// @name Becoming a User 261 | ///-------------------------------------- 262 | 263 | /*! 264 | @abstract Makes a *synchronous* request to become a user with the given session token. 265 | 266 | @discussion Returns an instance of the successfully logged in `PFUser`. 267 | This also caches the user locally so that calls to will use the latest logged in user. 268 | 269 | @param sessionToken The session token for the user. 270 | 271 | @returns Returns an instance of the `PFUser` on success. 272 | If becoming a user fails due to incorrect token, it returns `nil`. 273 | */ 274 | + (instancetype)become:(NSString *)sessionToken; 275 | 276 | /*! 277 | @abstract Makes a *synchronous* request to become a user with the given session token. 278 | 279 | @discussion Returns an instance of the successfully logged in `PFUser`. 280 | This will also cache the user locally so that calls to will use the latest logged in user. 281 | 282 | @param sessionToken The session token for the user. 283 | @param error The error object to set on error. 284 | 285 | @returns Returns an instance of the `PFUser` on success. 286 | If becoming a user fails due to incorrect token, it returns `nil`. 287 | */ 288 | + (instancetype)become:(NSString *)sessionToken 289 | error:(NSError **)error; 290 | 291 | /*! 292 | @abstract Makes an *asynchronous* request to become a user with the given session token. 293 | 294 | @discussion Returns an instance of the successfully logged in `PFUser`. 295 | This also caches the user locally so that calls to will use the latest logged in user. 296 | 297 | @param sessionToken The session token for the user. 298 | 299 | @returns The task, that encapsulates the work being done. 300 | */ 301 | + (BFTask *)becomeInBackground:(NSString *)sessionToken; 302 | 303 | /*! 304 | @abstract Makes an *asynchronous* request to become a user with the given session token. 305 | 306 | @discussion Returns an instance of the successfully logged in `PFUser`. This also caches the user locally 307 | so that calls to will use the latest logged in user. 308 | 309 | @param sessionToken The session token for the user. 310 | @param target Target object for the selector. 311 | @param selector The selector that will be called when the asynchrounous request is complete. 312 | It should have the following signature: `(void)callbackWithUser:(PFUser *)user error:(NSError *)error`. 313 | */ 314 | + (void)becomeInBackground:(NSString *)sessionToken 315 | target:(id)target 316 | selector:(SEL)selector; 317 | 318 | /*! 319 | @abstract Makes an *asynchronous* request to become a user with the given session token. 320 | 321 | @discussion Returns an instance of the successfully logged in `PFUser`. This also caches the user locally 322 | so that calls to will use the latest logged in user. 323 | 324 | @param sessionToken The session token for the user. 325 | @param block The block to execute. The block should have the following argument signature: (PFUser *user, NSError *error) 326 | */ 327 | + (void)becomeInBackground:(NSString *)sessionToken 328 | block:(PFUserResultBlock)block; 329 | 330 | ///-------------------------------------- 331 | /// @name Logging Out 332 | ///-------------------------------------- 333 | 334 | /*! 335 | @abstract *Synchronously* logs out the currently logged in user on disk. 336 | */ 337 | + (void)logOut; 338 | 339 | ///-------------------------------------- 340 | /// @name Requesting a Password Reset 341 | ///-------------------------------------- 342 | 343 | /*! 344 | @abstract *Synchronously* Send a password reset request for a specified email. 345 | 346 | @discussion If a user account exists with that email, an email will be sent to that address 347 | with instructions on how to reset their password. 348 | 349 | @param email Email of the account to send a reset password request. 350 | 351 | @returns Returns `YES` if the reset email request is successful. `NO` - if no account was found for the email address. 352 | */ 353 | + (BOOL)requestPasswordResetForEmail:(NSString *)email; 354 | 355 | /*! 356 | @abstract *Synchronously* send a password reset request for a specified email and sets an error object. 357 | 358 | @discussion If a user account exists with that email, an email will be sent to that address 359 | with instructions on how to reset their password. 360 | 361 | @param email Email of the account to send a reset password request. 362 | @param error Error object to set on error. 363 | @returns Returns `YES` if the reset email request is successful. `NO` - if no account was found for the email address. 364 | */ 365 | + (BOOL)requestPasswordResetForEmail:(NSString *)email 366 | error:(NSError **)error; 367 | 368 | /*! 369 | @abstract Send a password reset request asynchronously for a specified email and sets an 370 | error object. If a user account exists with that email, an email will be sent to 371 | that address with instructions on how to reset their password. 372 | @param email Email of the account to send a reset password request. 373 | @returns The task, that encapsulates the work being done. 374 | */ 375 | + (BFTask *)requestPasswordResetForEmailInBackground:(NSString *)email; 376 | 377 | /*! 378 | @abstract Send a password reset request *asynchronously* for a specified email and sets an error object. 379 | 380 | @discussion If a user account exists with that email, an email will be sent to that address 381 | with instructions on how to reset their password. 382 | 383 | @param email Email of the account to send a reset password request. 384 | @param target Target object for the selector. 385 | @param selector The selector that will be called when the asynchronous request is complete. 386 | It should have the following signature: `(void)callbackWithResult:(NSNumber *)result error:(NSError *)error`. 387 | `error` will be `nil` on success and set if there was an error. 388 | `[result boolValue]` will tell you whether the call succeeded or not. 389 | */ 390 | + (void)requestPasswordResetForEmailInBackground:(NSString *)email 391 | target:(id)target 392 | selector:(SEL)selector; 393 | 394 | /*! 395 | @abstract Send a password reset request *asynchronously* for a specified email. 396 | 397 | @discussion If a user account exists with that email, an email will be sent to that address 398 | with instructions on how to reset their password. 399 | 400 | @param email Email of the account to send a reset password request. 401 | @param block The block to execute. 402 | It should have the following argument signature: `^(BOOL succeeded, NSError *error)`. 403 | */ 404 | + (void)requestPasswordResetForEmailInBackground:(NSString *)email 405 | block:(PFBooleanResultBlock)block; 406 | 407 | ///-------------------------------------- 408 | /// @name Querying for Users 409 | ///-------------------------------------- 410 | 411 | /*! 412 | @abstract Creates a for `PFUser` objects. 413 | */ 414 | + (PFQuery *)query; 415 | 416 | @end 417 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/PF_Twitter.h: -------------------------------------------------------------------------------- 1 | // 2 | // PF_Twitter.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | @class BFTask; 10 | 11 | /*! 12 | The `PF_Twitter` class is a simple interface for interacting with the Twitter REST API, 13 | automating sign-in and OAuth signing of requests against the API. 14 | */ 15 | @interface PF_Twitter : NSObject { 16 | @private 17 | NSString *consumerKey; 18 | NSString *consumerSecret; 19 | NSString *authToken; 20 | NSString *authTokenSecret; 21 | NSString *userId; 22 | NSString *screenName; 23 | } 24 | 25 | @property (nonatomic, copy) NSString *consumerKey; 26 | @property (nonatomic, copy) NSString *consumerSecret; 27 | @property (nonatomic, copy) NSString *authToken; 28 | @property (nonatomic, copy) NSString *authTokenSecret; 29 | @property (nonatomic, copy) NSString *userId; 30 | @property (nonatomic, copy) NSString *screenName; 31 | 32 | /*! 33 | @abstract Displays an auth dialog and populates the authToken, authTokenSecret, userId, and screenName properties 34 | if the Twitter user grants permission to the application. 35 | 36 | @returns The task, that encapsulates the work being done. 37 | */ 38 | - (BFTask *)authorizeInBackground; 39 | 40 | /*! 41 | @abstract Displays an auth dialog and populates the authToken, authTokenSecret, userId, and screenName properties 42 | if the Twitter user grants permission to the application. 43 | 44 | @param success Invoked upon successful authorization. 45 | @param failure Invoked upon an error occurring in the authorization process. 46 | @param cancel Invoked when the user cancels authorization. 47 | */ 48 | - (void)authorizeWithSuccess:(void (^)(void))success 49 | failure:(void (^)(NSError *error))failure 50 | cancel:(void (^)(void))cancel; 51 | 52 | /*! 53 | @abstract Adds a 3-legged OAuth signature to an `NSMutableURLRequest` based 54 | upon the properties set for the Twitter object. 55 | 56 | @discussion Use this function to sign requests being made to the Twitter API. 57 | 58 | @param request Request to sign. 59 | */ 60 | - (void)signRequest:(NSMutableURLRequest *)request; 61 | 62 | @end 63 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Headers/Parse.h: -------------------------------------------------------------------------------- 1 | // 2 | // Parse.h 3 | // 4 | // Copyright 2011-present Parse Inc. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | #if TARGET_OS_IPHONE 10 | 11 | #import 12 | #import 13 | #import 14 | #import 15 | #import 16 | #import 17 | #import 18 | #import 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 | 33 | #else 34 | 35 | #import 36 | #import 37 | #import 38 | #import 39 | #import 40 | #import 41 | #import 42 | #import 43 | #import 44 | #import 45 | #import 46 | #import 47 | #import 48 | #import 49 | #import 50 | 51 | #endif 52 | 53 | /*! 54 | The `Parse` class contains static functions that handle global configuration for the Parse framework. 55 | */ 56 | @interface Parse : NSObject 57 | 58 | ///-------------------------------------- 59 | /// @name Connecting to Parse 60 | ///-------------------------------------- 61 | 62 | /*! 63 | @abstract Sets the applicationId and clientKey of your application. 64 | 65 | @param applicationId The application id of your Parse application. 66 | @param clientKey The client key of your Parse application. 67 | */ 68 | + (void)setApplicationId:(NSString *)applicationId clientKey:(NSString *)clientKey; 69 | 70 | /*! 71 | @abstract The current application id that was used to configure Parse framework. 72 | */ 73 | + (NSString *)getApplicationId; 74 | 75 | /*! 76 | @abstract The current client key that was used to configure Parse framework. 77 | */ 78 | + (NSString *)getClientKey; 79 | 80 | #if PARSE_IOS_ONLY 81 | 82 | ///-------------------------------------- 83 | /// @name Configuring UI Settings 84 | ///-------------------------------------- 85 | 86 | /*! 87 | @abstract Set whether to show offline messages when using a Parse view or view controller related classes. 88 | 89 | @param enabled Whether a `UIAlertView` should be shown when the device is offline 90 | and network access is required from a view or view controller. 91 | */ 92 | + (void)offlineMessagesEnabled:(BOOL)enabled; 93 | 94 | /*! 95 | @abstract Set whether to show an error message when using a Parse view or view controller related classes 96 | and a Parse error was generated via a query. 97 | 98 | @param enabled Whether a `UIAlertView` should be shown when an error occurs. 99 | */ 100 | + (void)errorMessagesEnabled:(BOOL)enabled; 101 | 102 | #endif 103 | 104 | @end 105 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/Parse.framework/Info.plist -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module Parse { 2 | umbrella header "Parse.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Parse: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/Parse.framework/Parse -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/Resources/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/Parse.framework/Resources/Localizable.strings -------------------------------------------------------------------------------- /parse-library-1.5.0/Parse.framework/third_party_licenses.txt: -------------------------------------------------------------------------------- 1 | THE FOLLOWING SETS FORTH ATTRIBUTION NOTICES FOR THIRD PARTY SOFTWARE THAT MAY BE CONTAINED IN PORTIONS OF THE PARSE PRODUCT. 2 | 3 | ----- 4 | 5 | The following software may be included in this product: AFNetworking. This software contains the following license and notice below: 6 | 7 | Copyright (c) 2011 Gowalla (http://gowalla.com/) 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy 10 | of this software and associated documentation files (the "Software"), to deal 11 | in the Software without restriction, including without limitation the rights 12 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 13 | copies of the Software, and to permit persons to whom the Software is 14 | furnished to do so, subject to the following conditions: 15 | 16 | The above copyright notice and this permission notice shall be included in 17 | all copies or substantial portions of the Software. 18 | 19 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | THE SOFTWARE. 26 | 27 | ----- 28 | 29 | The following software may be included in this product: EGOTableViewPullRefresh. This software contains the following license and notice below: 30 | 31 | // 32 | // EGORefreshTableHeaderView.h 33 | // Demo 34 | // 35 | // Created by Devin Doty on 10/14/09October14. 36 | // Copyright 2009 enormego. All rights reserved. 37 | // 38 | // Permission is hereby granted, free of charge, to any person obtaining a copy 39 | // of this software and associated documentation files (the "Software"), to deal 40 | // in the Software without restriction, including without limitation the rights 41 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 42 | // copies of the Software, and to permit persons to whom the Software is 43 | // furnished to do so, subject to the following conditions: 44 | // 45 | // The above copyright notice and this permission notice shall be included in 46 | // all copies or substantial portions of the Software. 47 | // 48 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 49 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 50 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 51 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 52 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 53 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 54 | // THE SOFTWARE. 55 | // 56 | 57 | ----- 58 | 59 | The following software may be included in this product: MBProgressHUD. This software contains the following license and notice below: 60 | 61 | Copyright (c) 2013 Matej Bukovinski 62 | 63 | Permission is hereby granted, free of charge, to any person obtaining a copy 64 | of this software and associated documentation files (the "Software"), to deal 65 | in the Software without restriction, including without limitation the rights 66 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 67 | copies of the Software, and to permit persons to whom the Software is 68 | furnished to do so, subject to the following conditions: 69 | 70 | The above copyright notice and this permission notice shall be included in 71 | all copies or substantial portions of the Software. 72 | 73 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 74 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 75 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 76 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 77 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 78 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 79 | THE SOFTWARE. 80 | 81 | ----- 82 | 83 | The following software may be included in this product: OAuthCore. This software contains the following license and notice below: 84 | 85 | Copyright (C) 2012 Loren Brichter 86 | 87 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 88 | 89 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 90 | 91 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 92 | 93 | ----- 94 | 95 | The following software may be included in this product: SBJson. This software contains the following license and notice below: 96 | 97 | Copyright (C) 2007-2011 Stig Brautaset. All rights reserved. 98 | 99 | Redistribution and use in source and binary forms, with or without 100 | modification, are permitted provided that the following conditions are met: 101 | 102 | * Redistributions of source code must retain the above copyright notice, this 103 | list of conditions and the following disclaimer. 104 | * Redistributions in binary form must reproduce the above copyright notice, 105 | this list of conditions and the following disclaimer in the documentation 106 | and/or other materials provided with the distribution. 107 | * Neither the name of the author nor the names of its contributors may be used 108 | to endorse or promote products derived from this software without specific 109 | prior written permission. 110 | 111 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 112 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 113 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 114 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 115 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 116 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 117 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 118 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 119 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 120 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseFacebookUtils.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/ParseFacebookUtils.framework/Info.plist -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseFacebookUtils.framework/ParseFacebookUtils: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/ParseFacebookUtils.framework/ParseFacebookUtils -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseFacebookUtils.framework/Resources/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/ParseFacebookUtils.framework/Resources/Localizable.strings -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseFacebookUtils.framework/third_party_licenses.txt: -------------------------------------------------------------------------------- 1 | THE FOLLOWING SETS FORTH ATTRIBUTION NOTICES FOR THIRD PARTY SOFTWARE THAT MAY BE CONTAINED IN PORTIONS OF THE PARSE PRODUCT. 2 | 3 | ----- 4 | 5 | The following software may be included in this product: AFNetworking. This software contains the following license and notice below: 6 | 7 | Copyright (c) 2011 Gowalla (http://gowalla.com/) 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy 10 | of this software and associated documentation files (the "Software"), to deal 11 | in the Software without restriction, including without limitation the rights 12 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 13 | copies of the Software, and to permit persons to whom the Software is 14 | furnished to do so, subject to the following conditions: 15 | 16 | The above copyright notice and this permission notice shall be included in 17 | all copies or substantial portions of the Software. 18 | 19 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 25 | THE SOFTWARE. 26 | 27 | ----- 28 | 29 | The following software may be included in this product: EGOTableViewPullRefresh. This software contains the following license and notice below: 30 | 31 | // 32 | // EGORefreshTableHeaderView.h 33 | // Demo 34 | // 35 | // Created by Devin Doty on 10/14/09October14. 36 | // Copyright 2009 enormego. All rights reserved. 37 | // 38 | // Permission is hereby granted, free of charge, to any person obtaining a copy 39 | // of this software and associated documentation files (the "Software"), to deal 40 | // in the Software without restriction, including without limitation the rights 41 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 42 | // copies of the Software, and to permit persons to whom the Software is 43 | // furnished to do so, subject to the following conditions: 44 | // 45 | // The above copyright notice and this permission notice shall be included in 46 | // all copies or substantial portions of the Software. 47 | // 48 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 49 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 50 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 51 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 52 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 53 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 54 | // THE SOFTWARE. 55 | // 56 | 57 | ----- 58 | 59 | The following software may be included in this product: MBProgressHUD. This software contains the following license and notice below: 60 | 61 | Copyright (c) 2013 Matej Bukovinski 62 | 63 | Permission is hereby granted, free of charge, to any person obtaining a copy 64 | of this software and associated documentation files (the "Software"), to deal 65 | in the Software without restriction, including without limitation the rights 66 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 67 | copies of the Software, and to permit persons to whom the Software is 68 | furnished to do so, subject to the following conditions: 69 | 70 | The above copyright notice and this permission notice shall be included in 71 | all copies or substantial portions of the Software. 72 | 73 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 74 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 75 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 76 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 77 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 78 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 79 | THE SOFTWARE. 80 | 81 | ----- 82 | 83 | The following software may be included in this product: OAuthCore. This software contains the following license and notice below: 84 | 85 | Copyright (C) 2012 Loren Brichter 86 | 87 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 88 | 89 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 90 | 91 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 92 | 93 | ----- 94 | 95 | The following software may be included in this product: SBJson. This software contains the following license and notice below: 96 | 97 | Copyright (C) 2007-2011 Stig Brautaset. All rights reserved. 98 | 99 | Redistribution and use in source and binary forms, with or without 100 | modification, are permitted provided that the following conditions are met: 101 | 102 | * Redistributions of source code must retain the above copyright notice, this 103 | list of conditions and the following disclaimer. 104 | * Redistributions in binary form must reproduce the above copyright notice, 105 | this list of conditions and the following disclaimer in the documentation 106 | and/or other materials provided with the distribution. 107 | * Neither the name of the author nor the names of its contributors may be used 108 | to endorse or promote products derived from this software without specific 109 | prior written permission. 110 | 111 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 112 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 113 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 114 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 115 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 116 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 117 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 118 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 119 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 120 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFImageView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | @class BFTask; 25 | @class PFFile; 26 | 27 | /*! 28 | An image view that downloads and displays remote image stored on Parse's server. 29 | */ 30 | @interface PFImageView : UIImageView 31 | 32 | /*! 33 | @abstract The remote file on Parse's server that stores the image. 34 | 35 | @warning Note that the download does not start until is called. 36 | */ 37 | @property (nonatomic, strong) PFFile *file; 38 | 39 | /*! 40 | @abstract Initiate downloading of the remote image. 41 | 42 | @discussion Once the download completes, the remote image will be displayed. 43 | 44 | @returns The task, that encapsulates the work being done. 45 | */ 46 | - (BFTask *)loadInBackground; 47 | 48 | /*! 49 | @abstract Initiate downloading of the remote image. 50 | 51 | @discussion Once the download completes, the remote image will be displayed. 52 | 53 | @param completion the completion block. 54 | */ 55 | - (void)loadInBackground:(void (^)(UIImage *image, NSError *error))completion; 56 | 57 | @end 58 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFLogInView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | #import 25 | 26 | /*! 27 | `PFLogInFields` bitmask specifies the log in elements which are enabled in the view. 28 | 29 | @see PFLogInViewController 30 | @see PFLogInView 31 | */ 32 | typedef NS_OPTIONS(NSInteger, PFLogInFields) { 33 | /*! No fields. */ 34 | PFLogInFieldsNone = 0, 35 | /*! Username and password fields. */ 36 | PFLogInFieldsUsernameAndPassword = 1 << 0, 37 | /*! Forgot password button. */ 38 | PFLogInFieldsPasswordForgotten = 1 << 1, 39 | /*! Login button. */ 40 | PFLogInFieldsLogInButton = 1 << 2, 41 | /*! Button to login with Facebook. */ 42 | PFLogInFieldsFacebook = 1 << 3, 43 | /*! Button to login with Twitter. */ 44 | PFLogInFieldsTwitter = 1 << 4, 45 | /*! Signup Button. */ 46 | PFLogInFieldsSignUpButton = 1 << 5, 47 | /*! Dismiss Button. */ 48 | PFLogInFieldsDismissButton = 1 << 6, 49 | 50 | /*! Default value. Combines Username, Password, Login, Signup, Forgot Password and Dismiss buttons. */ 51 | PFLogInFieldsDefault = (PFLogInFieldsUsernameAndPassword | 52 | PFLogInFieldsLogInButton | 53 | PFLogInFieldsSignUpButton | 54 | PFLogInFieldsPasswordForgotten | 55 | PFLogInFieldsDismissButton) 56 | }; 57 | 58 | /*! 59 | The `PFLogInView` class provides a standard log in interface for authenticating a . 60 | */ 61 | @interface PFLogInView : UIScrollView 62 | 63 | ///-------------------------------------- 64 | /// @name Creating Log In View 65 | ///-------------------------------------- 66 | 67 | /*! 68 | @abstract Initializes the view with the specified log in elements. 69 | 70 | @param fields A bitmask specifying the log in elements which are enabled in the view 71 | 72 | @returns An initialized `PFLogInView` object or `nil` if the object couldn't be created. 73 | 74 | @see PFLogInFields 75 | */ 76 | - (instancetype)initWithFields:(PFLogInFields)fields; 77 | 78 | /*! 79 | @abstract The view controller that will present this view. 80 | 81 | @discussion Used to lay out elements correctly when the presenting view controller has translucent elements. 82 | */ 83 | @property (nonatomic, weak) UIViewController *presentingViewController; 84 | 85 | ///-------------------------------------- 86 | /// @name Customizing the Logo 87 | ///-------------------------------------- 88 | 89 | /// The logo. By default, it is the Parse logo. 90 | @property (nonatomic, strong) UIView *logo; 91 | 92 | ///-------------------------------------- 93 | /// @name Configure Username Behaviour 94 | ///-------------------------------------- 95 | 96 | /*! 97 | @abstract If email should be used to log in, instead of username 98 | 99 | @discussion By default, this is set to `NO`. 100 | */ 101 | @property (nonatomic, assign) BOOL emailAsUsername; 102 | 103 | ///-------------------------------------- 104 | /// @name Log In Elements 105 | ///-------------------------------------- 106 | 107 | /*! 108 | @abstract The bitmask which specifies the enabled log in elements in the view. 109 | */ 110 | @property (nonatomic, assign, readonly) PFLogInFields fields; 111 | 112 | /*! 113 | @abstract The username text field. It is `nil` if the element is not enabled. 114 | */ 115 | @property (nonatomic, strong, readonly) UITextField *usernameField; 116 | 117 | /*! 118 | @abstract The password text field. It is `nil` if the element is not enabled. 119 | */ 120 | @property (nonatomic, strong, readonly) UITextField *passwordField; 121 | 122 | /*! 123 | @abstract The password forgotten button. It is `nil` if the element is not enabled. 124 | */ 125 | @property (nonatomic, strong, readonly) UIButton *passwordForgottenButton; 126 | 127 | /*! 128 | @abstract The log in button. It is `nil` if the element is not enabled. 129 | */ 130 | @property (nonatomic, strong, readonly) UIButton *logInButton; 131 | 132 | /*! 133 | @abstract The Facebook button. It is `nil` if the element is not enabled. 134 | */ 135 | @property (nonatomic, strong, readonly) UIButton *facebookButton; 136 | 137 | /*! 138 | @abstract The Twitter button. It is `nil` if the element is not enabled. 139 | */ 140 | @property (nonatomic, strong, readonly) UIButton *twitterButton; 141 | 142 | /*! 143 | @abstract The sign up button. It is `nil` if the element is not enabled. 144 | */ 145 | @property (nonatomic, strong, readonly) UIButton *signUpButton; 146 | 147 | /*! 148 | @abstract It is `nil` if the element is not enabled. 149 | */ 150 | @property (nonatomic, strong, readonly) UIButton *dismissButton; 151 | 152 | /*! 153 | @abstract The facebook/twitter login label. 154 | 155 | @deprecated This property is deprecated and will always be nil. 156 | */ 157 | @property (nonatomic, strong, readonly) UILabel *externalLogInLabel __attribute__(PARSE_UI_DEPRECATED("This property is deprecated and will always be nil.")); 158 | 159 | /*! 160 | @abstract The sign up label. 161 | 162 | @deprecated This property is deprecated and will always be nil. 163 | */ 164 | @property (nonatomic, strong, readonly) UILabel *signUpLabel __attribute__(PARSE_UI_DEPRECATED("This property is deprecated and will always be nil.")); 165 | 166 | @end 167 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFLogInViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | #import 25 | 26 | @class PFSignUpViewController; 27 | @class PFUser; 28 | @protocol PFLogInViewControllerDelegate; 29 | 30 | /*! 31 | The `PFLogInViewController` class presents and manages a standard authentication interface for logging in a . 32 | */ 33 | @interface PFLogInViewController : UIViewController 34 | 35 | ///-------------------------------------- 36 | /// @name Configuring Log In Elements 37 | ///-------------------------------------- 38 | 39 | /*! 40 | @abstract A bitmask specifying the log in elements which are enabled in the view. 41 | 42 | @see PFLogInFields 43 | */ 44 | @property (nonatomic, assign) PFLogInFields fields; 45 | 46 | 47 | /*! 48 | @abstract The log in view. It contains all the enabled log in elements. 49 | 50 | @see PFLogInView 51 | */ 52 | @property (nonatomic, strong, readonly) PFLogInView *logInView; 53 | 54 | ///-------------------------------------- 55 | /// @name Configuring Log In Behaviors 56 | ///-------------------------------------- 57 | 58 | /*! 59 | @abstract The delegate that responds to the control events of `PFLogInViewController`. 60 | 61 | @see PFLogInViewControllerDelegate 62 | */ 63 | @property (nonatomic, weak) id delegate; 64 | 65 | /*! 66 | @abstract The facebook permissions that Facebook log in requests for. 67 | 68 | @discussion If unspecified, the default is basic facebook permissions. 69 | */ 70 | @property (nonatomic, copy) NSArray *facebookPermissions; 71 | 72 | /*! 73 | @abstract The sign up controller if sign up is enabled. 74 | 75 | @discussion Use this to configure the sign up view, and the transition animation to the sign up view. 76 | The default is a sign up view with a username, a password, a dismiss button and a sign up button. 77 | */ 78 | @property (nonatomic, strong) PFSignUpViewController *signUpController; 79 | 80 | /*! 81 | @abstract Whether to prompt for the email as username on the login view. 82 | 83 | @discussion If set to `YES`, we'll prompt for the email in the username field. 84 | This property value propagates to the attached . 85 | By default, this is set to `NO`. 86 | */ 87 | @property (nonatomic, assign) BOOL emailAsUsername; 88 | 89 | @end 90 | 91 | ///-------------------------------------- 92 | /// @name Notifications 93 | ///-------------------------------------- 94 | 95 | /*! 96 | @abstract The notification is posted immediately after the log in succeeds. 97 | */ 98 | extern NSString *const PFLogInSuccessNotification; 99 | 100 | /*! 101 | @abstract The notification is posted immediately after the log in fails. 102 | @discussion If the delegate prevents the log in from starting, the notification is not sent. 103 | */ 104 | extern NSString *const PFLogInFailureNotification; 105 | 106 | /*! 107 | @abstract The notification is posted immediately after the log in is cancelled. 108 | */ 109 | extern NSString *const PFLogInCancelNotification; 110 | 111 | ///-------------------------------------- 112 | /// @name PFLogInViewControllerDelegate 113 | ///-------------------------------------- 114 | 115 | /*! 116 | The `PFLogInViewControllerDelegate` protocol defines methods a delegate of a should implement. 117 | All methods of this protocol are optional. 118 | */ 119 | @protocol PFLogInViewControllerDelegate 120 | 121 | @optional 122 | 123 | ///-------------------------------------- 124 | /// @name Customizing Behavior 125 | ///-------------------------------------- 126 | 127 | /*! 128 | @abstract Sent to the delegate to determine whether the log in request should be submitted to the server. 129 | 130 | @param logInController The login view controller that is requesting the data. 131 | @param username the username the user tries to log in with. 132 | @param password the password the user tries to log in with. 133 | 134 | @returns A `BOOL` indicating whether the log in should proceed. 135 | */ 136 | - (BOOL)logInViewController:(PFLogInViewController *)logInController 137 | shouldBeginLogInWithUsername:(NSString *)username 138 | password:(NSString *)password; 139 | 140 | ///-------------------------------------- 141 | /// @name Responding to Actions 142 | ///-------------------------------------- 143 | 144 | /*! 145 | @abstract Sent to the delegate when a is logged in. 146 | 147 | @param logInController The login view controller where login finished. 148 | @param user object that is a result of the login. 149 | */ 150 | - (void)logInViewController:(PFLogInViewController *)logInController didLogInUser:(PFUser *)user; 151 | 152 | /*! 153 | @abstract Sent to the delegate when the log in attempt fails. 154 | 155 | @param logInController The login view controller where login failed. 156 | @param error `NSError` object representing the error that occured. 157 | */ 158 | - (void)logInViewController:(PFLogInViewController *)logInController didFailToLogInWithError:(NSError *)error; 159 | 160 | /*! 161 | @abstract Sent to the delegate when the log in screen is cancelled. 162 | 163 | @param logInController The login view controller where login was cancelled. 164 | */ 165 | - (void)logInViewControllerDidCancelLogIn:(PFLogInViewController *)logInController; 166 | 167 | @end 168 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFProductTableViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | /*! 25 | `PFProductTableViewController` displays in-app purchase products stored on Parse. 26 | In addition to setting up in-app purchases in iTunes Connect, the app developer needs 27 | to register product information on Parse, in the Product class. 28 | */ 29 | @interface PFProductTableViewController : PFQueryTableViewController 30 | 31 | /*! 32 | @abstract Initializes a product table view controller. 33 | 34 | @param style The UITableViewStyle for the table 35 | 36 | @returns An initialized `PFProductTableViewController` object or `nil` if the object couldn't be created. 37 | */ 38 | - (instancetype)initWithStyle:(UITableViewStyle)style NS_DESIGNATED_INITIALIZER; 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFPurchaseTableViewCell.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | #import 25 | 26 | /*! 27 | An enum that represents states of the PFPurchaseTableViewCell. 28 | @see PFPurchaseTableViewCell 29 | */ 30 | typedef NS_ENUM(uint8_t, PFPurchaseTableViewCellState) { 31 | /*! Normal state of the cell. */ 32 | PFPurchaseTableViewCellStateNormal = 0, 33 | /*! Downloading state of the cell. */ 34 | PFPurchaseTableViewCellStateDownloading, 35 | /*! State of the cell, when the product was downloaded. */ 36 | PFPurchaseTableViewCellStateDownloaded 37 | }; 38 | 39 | /*! 40 | `PFPurchaseTableViewCell` is a subclass that is used to show 41 | products in a . 42 | 43 | @see PFProductTableViewController 44 | */ 45 | @interface PFPurchaseTableViewCell : PFTableViewCell 46 | 47 | /*! 48 | @abstract State of the cell. 49 | @see PFPurchaseTableViewCellState 50 | */ 51 | @property (nonatomic, assign) PFPurchaseTableViewCellState state; 52 | 53 | /*! 54 | @abstract Label where price of the product is displayed. 55 | */ 56 | @property (nonatomic, strong, readonly) UILabel *priceLabel; 57 | 58 | /*! 59 | @abstract Progress view that is shown, when the product is downloading. 60 | */ 61 | @property (nonatomic, strong, readonly) UIProgressView *progressView; 62 | 63 | @end 64 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFQueryTableViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | @class PFObject; 25 | @class PFQuery; 26 | @class PFTableViewCell; 27 | 28 | /*! 29 | This class allows you to think about a one-to-one mapping between a and a `UITableViewCell`, 30 | rather than having to juggle index paths. 31 | 32 | You also get the following features out of the box: 33 | 34 | - Pagination with a cell that can be tapped to load the next page. 35 | - Pull-to-refresh table view header. 36 | - Automatic downloading and displaying of remote images in cells. 37 | - Loading screen, shown before any data is loaded. 38 | - Automatic loading and management of the objects array. 39 | - Various methods that can be overridden to customize behavior at major events in the data cycle. 40 | */ 41 | @interface PFQueryTableViewController : UITableViewController 42 | 43 | ///-------------------------------------- 44 | /// @name Creating a PFQueryTableViewController 45 | ///-------------------------------------- 46 | 47 | /*! 48 | @abstract Initializes with a class name of the that will be associated with this table. 49 | 50 | @param style The UITableViewStyle for the table 51 | @param className The class name of the instances of that this table will display. 52 | 53 | @returns An initialized `PFQueryTableViewController` object or `nil` if the object couldn't be created. 54 | */ 55 | - (instancetype)initWithStyle:(UITableViewStyle)style className:(NSString *)className NS_DESIGNATED_INITIALIZER; 56 | 57 | /*! 58 | @abstract Initializes with a class name of the PFObjects that will be associated with this table. 59 | 60 | @param className The class name of the instances of that this table will display. 61 | 62 | @returns An initialized `PFQueryTableViewController` object or `nil` if the object couldn't be created. 63 | */ 64 | - (instancetype)initWithClassName:(NSString *)className; 65 | 66 | ///-------------------------------------- 67 | /// @name Configuring Behavior 68 | ///-------------------------------------- 69 | 70 | /*! 71 | @abstract The class name of the this table will use as a datasource. 72 | */ 73 | @property (nonatomic, copy) NSString *parseClassName; 74 | 75 | /*! 76 | @abstract The key to use to display for the cell text label. 77 | 78 | @discussion This won't apply if you override 79 | */ 80 | @property (nonatomic, copy) NSString *textKey; 81 | 82 | /*! 83 | @abstract The key to use to display for the cell image view. 84 | 85 | @discussion This won't apply if you override 86 | */ 87 | @property (nonatomic, copy) NSString *imageKey; 88 | 89 | /*! 90 | @abstract The image to use as a placeholder for the cell images. 91 | 92 | @discussion This won't apply if you override 93 | */ 94 | @property (nonatomic, strong) UIImage *placeholderImage; 95 | 96 | /*! 97 | @abstract Whether the table should use the default loading view. Default - `YES`. 98 | */ 99 | @property (nonatomic, assign) BOOL loadingViewEnabled; 100 | 101 | /*! 102 | @abstract Whether the table should use the built-in pull-to-refresh feature. Defualt - `YES`. 103 | */ 104 | @property (nonatomic, assign) BOOL pullToRefreshEnabled; 105 | 106 | /*! 107 | @abstract Whether the table should use the built-in pagination feature. Default - `YES`. 108 | */ 109 | @property (nonatomic, assign) BOOL paginationEnabled; 110 | 111 | /*! 112 | @abstract The number of objects to show per page. Default - `25`. 113 | */ 114 | @property (nonatomic, assign) NSUInteger objectsPerPage; 115 | 116 | /*! 117 | @abstract Whether the table is actively loading new data from the server. 118 | */ 119 | @property (nonatomic, assign, getter=isLoading) BOOL loading; 120 | 121 | ///-------------------------------------- 122 | /// @name Responding to Events 123 | ///-------------------------------------- 124 | 125 | /*! 126 | Called when objects will loaded from Parse. If you override this method, you must 127 | call [super objectsWillLoad] in your implementation. 128 | */ 129 | - (void)objectsWillLoad; 130 | 131 | /*! 132 | Called when objects have loaded from Parse. If you override this method, you must 133 | call [super objectsDidLoad:] in your implementation. 134 | @param error The Parse error from running the PFQuery, if there was any. 135 | */ 136 | - (void)objectsDidLoad:(NSError *)error; 137 | 138 | ///-------------------------------------- 139 | /// @name Accessing Results 140 | ///-------------------------------------- 141 | 142 | /*! 143 | @abstract The array of instances of that is used as a data source. 144 | */ 145 | @property (nonatomic, copy, readonly) NSArray *objects; 146 | 147 | /*! 148 | @abstract Returns an object at a particular indexPath. 149 | 150 | @discussion The default impementation returns the object at `indexPath.row`. 151 | If you want to return objects in a different indexPath order, like for sections, override this method. 152 | 153 | @param indexPath The indexPath. 154 | 155 | @returns The object at the specified index 156 | */ 157 | - (PFObject *)objectAtIndexPath:(NSIndexPath *)indexPath; 158 | 159 | /*! 160 | @abstract Clears the table of all objects. 161 | */ 162 | - (void)clear; 163 | 164 | /*! 165 | @abstract Clears the table and loads the first page of objects. 166 | */ 167 | - (void)loadObjects; 168 | 169 | /*! 170 | @abstract Loads the objects of the className at the specified page and appends it to the 171 | objects already loaded and refreshes the table. 172 | 173 | @param page The page of objects to load. 174 | @param clear Whether to clear the table after receiving the objects. 175 | */ 176 | - (void)loadObjects:(NSInteger)page clear:(BOOL)clear; 177 | 178 | /*! 179 | @abstract Loads the next page of objects, appends to table, and refreshes. 180 | */ 181 | - (void)loadNextPage; 182 | 183 | ///-------------------------------------- 184 | /// @name Querying 185 | ///-------------------------------------- 186 | 187 | /*! 188 | Override to construct your own custom PFQuery to get the objects. 189 | @result PFQuery that loadObjects will use to the objects for this table. 190 | */ 191 | - (PFQuery *)queryForTable; 192 | 193 | ///-------------------------------------- 194 | /// @name Data Source Methods 195 | ///-------------------------------------- 196 | 197 | /*! 198 | @abstract Override this method to customize each cell given a PFObject that is loaded. 199 | 200 | @discussion If you don't override this method, it will use a default style cell and display either 201 | the first data key from the object, or it will display the key as specified with `textKey`, `imageKey`. 202 | 203 | @warning The cell should inherit from which is a subclass of `UITableViewCell`. 204 | 205 | @param tableView The table view object associated with this controller. 206 | @param indexPath The indexPath of the cell. 207 | @param object The PFObject that is associated with the cell. 208 | 209 | @returns The cell that represents this object. 210 | */ 211 | - (PFTableViewCell *)tableView:(UITableView *)tableView 212 | cellForRowAtIndexPath:(NSIndexPath *)indexPath 213 | object:(PFObject *)object; 214 | 215 | /*! 216 | @discussion Override this method to customize the cell that allows the user to load the 217 | next page when pagination is turned on. 218 | 219 | @param tableView The table view object associated with this controller. 220 | @param indexPath The indexPath of the cell. 221 | 222 | @returns The cell that allows the user to paginate. 223 | */ 224 | - (PFTableViewCell *)tableView:(UITableView *)tableView cellForNextPageAtIndexPath:(NSIndexPath *)indexPath; 225 | 226 | 227 | @end 228 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFSignUpView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | /*! 25 | `PFSignUpFields` bitmask specifies the sign up elements which are enabled in the view. 26 | 27 | @see PFSignUpViewController 28 | @see PFSignUpView 29 | */ 30 | typedef NS_OPTIONS(NSInteger, PFSignUpFields) { 31 | /*! Username and password fields. */ 32 | PFSignUpFieldsUsernameAndPassword = 0, 33 | /*! Email field. */ 34 | PFSignUpFieldsEmail = 1 << 0, 35 | /*! This field can be used for something else. */ 36 | PFSignUpFieldsAdditional = 1 << 1, 37 | /*! Sign Up Button */ 38 | PFSignUpFieldsSignUpButton = 1 << 2, 39 | /*! Dismiss Button */ 40 | PFSignUpFieldsDismissButton = 1 << 3, 41 | /*! Default value. Combines Username, Password, Email, Sign Up and Dismiss Buttons. */ 42 | PFSignUpFieldsDefault = (PFSignUpFieldsUsernameAndPassword | 43 | PFSignUpFieldsEmail | 44 | PFSignUpFieldsSignUpButton | 45 | PFSignUpFieldsDismissButton) 46 | }; 47 | 48 | /*! 49 | The `PFSignUpView` class provides a standard sign up interface for authenticating a . 50 | */ 51 | @interface PFSignUpView : UIScrollView 52 | 53 | ///-------------------------------------- 54 | /// @name Creating SignUp View 55 | ///-------------------------------------- 56 | 57 | /*! 58 | @abstract Initializes the view with the specified sign up elements. 59 | 60 | @param fields A bitmask specifying the sign up elements which are enabled in the view 61 | 62 | @returns An initialized `PFSignUpView` object or `nil` if the object couldn't be created. 63 | 64 | @see PFSignUpFields 65 | */ 66 | - (instancetype)initWithFields:(PFSignUpFields)fields; 67 | 68 | /*! 69 | @abstract The view controller that will present this view. 70 | 71 | @discussion Used to lay out elements correctly when the presenting view controller has translucent elements. 72 | */ 73 | @property (nonatomic, weak) UIViewController *presentingViewController; 74 | 75 | ///-------------------------------------- 76 | /// @name Customizing the Logo 77 | ///-------------------------------------- 78 | 79 | /*! 80 | @abstract The logo. By default, it is the Parse logo. 81 | */ 82 | @property (nonatomic, strong) UIView *logo; 83 | 84 | ///-------------------------------------- 85 | /// @name Configure Username Behaviour 86 | ///-------------------------------------- 87 | 88 | /*! 89 | @abstract If email should be used to log in, instead of username 90 | 91 | @discussion By default, this is set to `NO`. 92 | */ 93 | @property (nonatomic, assign) BOOL emailAsUsername; 94 | 95 | ///-------------------------------------- 96 | /// @name Sign Up Elements 97 | ///-------------------------------------- 98 | 99 | /*! 100 | @abstract The bitmask which specifies the enabled sign up elements in the view 101 | */ 102 | @property (nonatomic, assign, readonly) PFSignUpFields fields; 103 | 104 | /*! 105 | @abstract The username text field. 106 | */ 107 | @property (nonatomic, strong, readonly) UITextField *usernameField; 108 | 109 | /*! 110 | @abstract The password text field. 111 | */ 112 | @property (nonatomic, strong, readonly) UITextField *passwordField; 113 | 114 | /*! 115 | @abstract The email text field. It is `nil` if the element is not enabled. 116 | */ 117 | @property (nonatomic, strong, readonly) UITextField *emailField; 118 | 119 | /*! 120 | @abstract The additional text field. It is `nil` if the element is not enabled. 121 | 122 | @discussion This field is intended to be customized. 123 | */ 124 | @property (nonatomic, strong, readonly) UITextField *additionalField; 125 | 126 | /*! 127 | @abstract The sign up button. It is `nil` if the element is not enabled. 128 | */ 129 | @property (nonatomic, strong, readonly) UIButton *signUpButton; 130 | 131 | /*! 132 | @abstract The dismiss button. It is `nil` if the element is not enabled. 133 | */ 134 | @property (nonatomic, strong, readonly) UIButton *dismissButton; 135 | 136 | @end 137 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFSignUpViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | #import 25 | 26 | @class PFUser; 27 | @protocol PFSignUpViewControllerDelegate; 28 | 29 | /*! 30 | The `PFSignUpViewController` class that presents and manages 31 | a standard authentication interface for signing up a . 32 | */ 33 | @interface PFSignUpViewController : UIViewController 34 | 35 | ///-------------------------------------- 36 | /// @name Configuring Sign Up Elements 37 | ///-------------------------------------- 38 | 39 | /*! 40 | @abstract A bitmask specifying the log in elements which are enabled in the view. 41 | 42 | @see PFSignUpFields 43 | */ 44 | @property (nonatomic, assign) PFSignUpFields fields; 45 | 46 | /*! 47 | @abstract The sign up view. It contains all the enabled log in elements. 48 | 49 | @see PFSignUpView 50 | */ 51 | @property (nonatomic, strong, readonly) PFSignUpView *signUpView; 52 | 53 | ///-------------------------------------- 54 | /// @name Configuring Sign Up Behaviors 55 | ///-------------------------------------- 56 | 57 | /*! 58 | @abstract The delegate that responds to the control events of `PFSignUpViewController`. 59 | 60 | @see PFSignUpViewControllerDelegate 61 | */ 62 | @property (nonatomic, weak) id delegate; 63 | 64 | /*! 65 | @abstract Minimum required password length for user signups, defaults to `0`. 66 | */ 67 | @property (nonatomic, assign) NSUInteger minPasswordLength; 68 | 69 | /*! 70 | @abstract Whether to use the email as username on the attached . 71 | 72 | @discussion If set to `YES`, we'll hide the email field, prompt for the email in 73 | the username field, and save the email into both username and email 74 | fields on the new object. By default, this is set to `NO`. 75 | */ 76 | @property (nonatomic, assign) BOOL emailAsUsername; 77 | 78 | @end 79 | 80 | ///-------------------------------------- 81 | /// @name Notifications 82 | ///-------------------------------------- 83 | 84 | /*! 85 | @abstract The notification is posted immediately after the sign up succeeds. 86 | */ 87 | extern NSString *const PFSignUpSuccessNotification; 88 | 89 | /*! 90 | @abstract The notification is posted immediately after the sign up fails. 91 | 92 | @discussion If the delegate prevents the sign up to start, the notification is not sent. 93 | */ 94 | extern NSString *const PFSignUpFailureNotification; 95 | 96 | /*! 97 | @abstract The notification is posted immediately after the user cancels sign up. 98 | */ 99 | extern NSString *const PFSignUpCancelNotification; 100 | 101 | ///-------------------------------------- 102 | /// @name PFSignUpViewControllerDelegate 103 | ///-------------------------------------- 104 | 105 | /*! 106 | The `PFLogInViewControllerDelegate` protocol defines methods a delegate of a should implement. 107 | All methods of this protocol are optional. 108 | */ 109 | @protocol PFSignUpViewControllerDelegate 110 | 111 | @optional 112 | 113 | ///-------------------------------------- 114 | /// @name Customizing Behavior 115 | ///-------------------------------------- 116 | 117 | /*! 118 | @abstract Sent to the delegate to determine whether the sign up request should be submitted to the server. 119 | 120 | @param signUpController The signup view controller that is requesting the data. 121 | @param info An `NSDictionary` instance which contains all sign up information that the user entered. 122 | 123 | @returns A `BOOL` indicating whether the sign up should proceed. 124 | */ 125 | - (BOOL)signUpViewController:(PFSignUpViewController *)signUpController shouldBeginSignUp:(NSDictionary *)info; 126 | 127 | ///-------------------------------------- 128 | /// @name Responding to Actions 129 | ///-------------------------------------- 130 | 131 | /*! 132 | @abstract Sent to the delegate when a is signed up. 133 | 134 | @param signUpController The signup view controller where signup finished. 135 | @param user object that is a result of the sign up. 136 | */ 137 | - (void)signUpViewController:(PFSignUpViewController *)signUpController didSignUpUser:(PFUser *)user; 138 | 139 | /*! 140 | @abstract Sent to the delegate when the sign up attempt fails. 141 | 142 | @param signUpController The signup view controller where signup failed. 143 | @param error `NSError` object representing the error that occured. 144 | */ 145 | - (void)signUpViewController:(PFSignUpViewController *)signUpController didFailToSignUpWithError:(NSError *)error; 146 | 147 | /*! 148 | @abstract Sent to the delegate when the sign up screen is cancelled. 149 | 150 | @param signUpController The signup view controller where signup was cancelled. 151 | */ 152 | - (void)signUpViewControllerDidCancelSignUp:(PFSignUpViewController *)signUpController; 153 | 154 | @end 155 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/PFTableViewCell.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | 24 | #import 25 | 26 | /*! 27 | The `PFTableViewCell` class represents a table view cell which can download and display remote images stored on Parse. 28 | 29 | When used in a - downloading and displaying of the remote images 30 | are automatically managed by the . 31 | */ 32 | @interface PFTableViewCell : UITableViewCell 33 | 34 | /*! 35 | @abstract The imageView of the table view cell. 36 | 37 | @see PFImageView 38 | */ 39 | @property (nonatomic, strong, readonly) PFImageView *imageView; 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/ParseUI.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #import 23 | #import 24 | #import 25 | #import 26 | #import 27 | #import 28 | #import 29 | #import 30 | #import 31 | #import 32 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Headers/ParseUIConstants.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2014, Facebook, Inc. All rights reserved. 3 | * 4 | * You are hereby granted a non-exclusive, worldwide, royalty-free license to use, 5 | * copy, modify, and distribute this software in source code or binary form for use 6 | * in connection with the web services and APIs provided by Facebook. 7 | * 8 | * As with any software that integrates with the Facebook platform, your use of 9 | * this software is subject to the Facebook Developer Principles and Policies 10 | * [http://developers.facebook.com/policy/]. This copyright notice shall be 11 | * included in 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, FITNESS 15 | * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | * 20 | */ 21 | 22 | #ifndef ParseUI_ParseUIConstants_h 23 | #define ParseUI_ParseUIConstants_h 24 | 25 | #ifndef PARSE_UI_DEPRECATED 26 | #ifdef __deprecated_msg 27 | #define PARSE_UI_DEPRECATED(_MSG) (deprecated(_MSG)) 28 | #else 29 | #ifdef __deprecated 30 | #define PARSE_UI_DEPRECATED(_MSG) (deprecated) 31 | #else 32 | #define PARSE_UI_DEPRECATED(_MSG) 33 | #endif 34 | #endif 35 | #endif 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/ParseUI.framework/Info.plist -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module ParseUI { 2 | umbrella header "ParseUI.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /parse-library-1.5.0/ParseUI.framework/ParseUI: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/parse-library-1.5.0/ParseUI.framework/ParseUI -------------------------------------------------------------------------------- /testData-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 -------------------------------------------------------------------------------- /testData.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /testData.xcodeproj/project.xcworkspace/xcuserdata/markpetherbridge.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iOS-Blog/ConnectSwift-Parse/bc2bf1d08e74e9e2bc8ff7621769135de658a0b6/testData.xcodeproj/project.xcworkspace/xcuserdata/markpetherbridge.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /testData.xcodeproj/xcuserdata/markpetherbridge.xcuserdatad/xcschemes/testData.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 61 | 62 | 68 | 69 | 70 | 71 | 72 | 73 | 79 | 80 | 86 | 87 | 88 | 89 | 91 | 92 | 95 | 96 | 97 | -------------------------------------------------------------------------------- /testData.xcodeproj/xcuserdata/markpetherbridge.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | testData.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | C44CF2821A203B730099E1BE 16 | 17 | primary 18 | 19 | 20 | C44CF2971A203B740099E1BE 21 | 22 | primary 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /testData/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // testData 4 | // 5 | // Created by - on 22/11/2014. 6 | // Copyright (c) 2014 iOS-Blog. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import CoreData 11 | 12 | @UIApplicationMain 13 | class AppDelegate: UIResponder, UIApplicationDelegate { 14 | 15 | var window: UIWindow? 16 | 17 | 18 | func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool { 19 | 20 | Parse.setApplicationId("your_application_key", clientKey: "your_client_key") 21 | 22 | var object = PFObject(className: "testDataClass") 23 | object.addObject("iOSBlog", forKey: "websiteUrl") 24 | object.addObject("Five", forKey: "websiteRating") 25 | object.save() 26 | 27 | // Override point for customization after application launch. 28 | return true 29 | } 30 | 31 | func applicationWillResignActive(application: UIApplication) { 32 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 33 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 34 | } 35 | 36 | func applicationDidEnterBackground(application: UIApplication) { 37 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 38 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 39 | } 40 | 41 | func applicationWillEnterForeground(application: UIApplication) { 42 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 43 | } 44 | 45 | func applicationDidBecomeActive(application: UIApplication) { 46 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 47 | } 48 | 49 | func applicationWillTerminate(application: UIApplication) { 50 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 51 | // Saves changes in the application's managed object context before the application terminates. 52 | self.saveContext() 53 | } 54 | 55 | func saveContext () { 56 | var error: NSError? = nil 57 | let managedObjectContext = self.managedObjectContext 58 | if managedObjectContext != nil { 59 | if managedObjectContext.hasChanges && !managedObjectContext.save(&error) { 60 | // Replace this implementation with code to handle the error appropriately. 61 | // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. 62 | //println("Unresolved error \(error), \(error.userInfo)") 63 | abort() 64 | } 65 | } 66 | } 67 | 68 | // #pragma mark - Core Data stack 69 | 70 | // Returns the managed object context for the application. 71 | // If the context doesn't already exist, it is created and bound to the persistent store coordinator for the application. 72 | var managedObjectContext: NSManagedObjectContext { 73 | if !_managedObjectContext { 74 | let coordinator = self.persistentStoreCoordinator 75 | if coordinator != nil { 76 | _managedObjectContext = NSManagedObjectContext() 77 | _managedObjectContext!.persistentStoreCoordinator = coordinator 78 | } 79 | } 80 | return _managedObjectContext! 81 | } 82 | var _managedObjectContext: NSManagedObjectContext? = nil 83 | 84 | // Returns the managed object model for the application. 85 | // If the model doesn't already exist, it is created from the application's model. 86 | var managedObjectModel: NSManagedObjectModel { 87 | if !_managedObjectModel { 88 | let modelURL = NSBundle.mainBundle().URLForResource("testData", withExtension: "momd") 89 | _managedObjectModel = NSManagedObjectModel(contentsOfURL: modelURL) 90 | } 91 | return _managedObjectModel! 92 | } 93 | var _managedObjectModel: NSManagedObjectModel? = nil 94 | 95 | // Returns the persistent store coordinator for the application. 96 | // If the coordinator doesn't already exist, it is created and the application's store added to it. 97 | var persistentStoreCoordinator: NSPersistentStoreCoordinator { 98 | if !_persistentStoreCoordinator { 99 | let storeURL = self.applicationDocumentsDirectory.URLByAppendingPathComponent("testData.sqlite") 100 | var error: NSError? = nil 101 | _persistentStoreCoordinator = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel) 102 | if _persistentStoreCoordinator!.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: storeURL, options: nil, error: &error) == nil { 103 | /* 104 | Replace this implementation with code to handle the error appropriately. 105 | 106 | abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. 107 | 108 | Typical reasons for an error here include: 109 | * The persistent store is not accessible; 110 | * The schema for the persistent store is incompatible with current managed object model. 111 | Check the error message to determine what the actual problem was. 112 | 113 | 114 | If the persistent store is not accessible, there is typically something wrong with the file path. Often, a file URL is pointing into the application's resources directory instead of a writeable directory. 115 | 116 | If you encounter schema incompatibility errors during development, you can reduce their frequency by: 117 | * Simply deleting the existing store: 118 | NSFileManager.defaultManager().removeItemAtURL(storeURL, error: nil) 119 | 120 | * Performing automatic lightweight migration by passing the following dictionary as the options parameter: 121 | [NSMigratePersistentStoresAutomaticallyOption: true, NSInferMappingModelAutomaticallyOption: true} 122 | 123 | Lightweight migration will only work for a limited set of schema changes; consult "Core Data Model Versioning and Data Migration Programming Guide" for details. 124 | 125 | */ 126 | //println("Unresolved error \(error), \(error.userInfo)") 127 | abort() 128 | } 129 | } 130 | return _persistentStoreCoordinator! 131 | } 132 | var _persistentStoreCoordinator: NSPersistentStoreCoordinator? = nil 133 | 134 | // #pragma mark - Application's Documents directory 135 | 136 | // Returns the URL to the application's Documents directory. 137 | var applicationDocumentsDirectory: NSURL { 138 | let urls = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask) 139 | return urls[urls.endIndex-1] as NSURL 140 | } 141 | 142 | } 143 | 144 | -------------------------------------------------------------------------------- /testData/Base.lproj/Main.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 | -------------------------------------------------------------------------------- /testData/Images.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" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /testData/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /testData/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.ios-blog.${PRODUCT_NAME:rfc1034identifier} 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 | armv7 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /testData/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // testData 4 | // 5 | // Created by - on 22/11/2014. 6 | // Copyright (c) 2014 iOS-Blog. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class ViewController: UIViewController { 12 | 13 | override func viewDidLoad() { 14 | super.viewDidLoad() 15 | // Do any additional setup after loading the view, typically from a nib. 16 | } 17 | 18 | override func didReceiveMemoryWarning() { 19 | super.didReceiveMemoryWarning() 20 | // Dispose of any resources that can be recreated. 21 | } 22 | 23 | 24 | } 25 | 26 | -------------------------------------------------------------------------------- /testData/testData.xcdatamodeld/.xccurrentversion: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | _XCCurrentVersionName 6 | testData.xcdatamodel 7 | 8 | 9 | -------------------------------------------------------------------------------- /testData/testData.xcdatamodeld/testData.xcdatamodel/contents: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /testDataCustom.m: -------------------------------------------------------------------------------- 1 | // 2 | // testDataCustom.m 3 | // testData 4 | // 5 | // Created by - on 22/11/2014. 6 | // Copyright (c) 2014 iOS-Blog. All rights reserved. 7 | // 8 | 9 | #import 10 | -------------------------------------------------------------------------------- /testDataTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.ios-blog.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /testDataTests/testDataTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // testDataTests.swift 3 | // testDataTests 4 | // 5 | // Created by - on 22/11/2014. 6 | // Copyright (c) 2014 iOS-Blog. All rights reserved. 7 | // 8 | 9 | import XCTest 10 | 11 | class testDataTests: XCTestCase { 12 | 13 | override func setUp() { 14 | super.setUp() 15 | // Put setup code here. This method is called before the invocation of each test method in the class. 16 | } 17 | 18 | override func tearDown() { 19 | // Put teardown code here. This method is called after the invocation of each test method in the class. 20 | super.tearDown() 21 | } 22 | 23 | func testExample() { 24 | // This is an example of a functional test case. 25 | XCTAssert(true, "Pass") 26 | } 27 | 28 | func testPerformanceExample() { 29 | // This is an example of a performance test case. 30 | self.measureBlock() { 31 | // Put the code you want to measure the time of here. 32 | } 33 | } 34 | 35 | } 36 | --------------------------------------------------------------------------------