├── .clang-format
├── .github
├── ISSUE_TEMPLATE
│ ├── ---1-report-an-issue.md
│ ├── ---2-feature-request.md
│ └── config.yml
├── dependabot.yml
├── pull_request_template.md
└── workflows
│ ├── ci.yml
│ ├── release-automated.yml
│ └── release-manual-docs.yml
├── .gitignore
├── .gitmodules
├── .releaserc
├── commit.hbs
├── footer.hbs
├── header.hbs
└── template.hbs
├── .ruby-version
├── .swiftpm
└── xcode
│ └── package.xcworkspace
│ └── contents.xcworkspacedata
├── Assets
└── logo large.png
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── Gemfile
├── Gemfile.lock
├── LICENSE
├── PATENTS
├── Package.resolved
├── Package.swift
├── Parse.xcworkspace
├── contents.xcworkspacedata
└── xcshareddata
│ ├── IDEWorkspaceChecks.plist
│ ├── WorkspaceSettings.xcsettings
│ └── swiftpm
│ └── Package.resolved
├── Parse
├── Configurations
│ ├── Parse-iOS-Dynamic.xcconfig
│ ├── Parse-iOS.xcconfig
│ ├── Parse-macOS.xcconfig
│ ├── Parse-tvOS-Dynamic.xcconfig
│ ├── Parse-tvOS.xcconfig
│ ├── Parse-watchOS-Dynamic.xcconfig
│ ├── Parse-watchOS.xcconfig
│ ├── ParseUnitTests-iOS.xcconfig
│ ├── ParseUnitTests-macOS.xcconfig
│ └── Shared
├── Parse.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ ├── Parse-iOS-Dynamic.xcscheme
│ │ ├── Parse-iOS.xcscheme
│ │ ├── Parse-macOS.xcscheme
│ │ ├── Parse-tvOS-Dynamic.xcscheme
│ │ ├── Parse-tvOS.xcscheme
│ │ ├── Parse-watchOS-Dynamic.xcscheme
│ │ └── Parse-watchOS.xcscheme
├── Parse
│ ├── Internal
│ │ ├── ACL
│ │ │ ├── DefaultACLController
│ │ │ │ ├── PFDefaultACLController.h
│ │ │ │ └── PFDefaultACLController.m
│ │ │ ├── PFACLPrivate.h
│ │ │ └── State
│ │ │ │ ├── PFACLState.h
│ │ │ │ ├── PFACLState.m
│ │ │ │ ├── PFACLState_Private.h
│ │ │ │ ├── PFMutableACLState.h
│ │ │ │ └── PFMutableACLState.m
│ │ ├── Analytics
│ │ │ ├── Controller
│ │ │ │ ├── PFAnalyticsController.h
│ │ │ │ └── PFAnalyticsController.m
│ │ │ ├── PFAnalytics_Private.h
│ │ │ └── Utilities
│ │ │ │ ├── PFAnalyticsUtilities.h
│ │ │ │ └── PFAnalyticsUtilities.m
│ │ ├── BFTask+Private.h
│ │ ├── BFTask+Private.m
│ │ ├── CloudCode
│ │ │ ├── PFCloudCodeController.h
│ │ │ └── PFCloudCodeController.m
│ │ ├── Commands
│ │ │ ├── CommandRunner
│ │ │ │ ├── PFCommandRunning.h
│ │ │ │ ├── PFCommandRunning.m
│ │ │ │ ├── PFCommandRunningConstants.h
│ │ │ │ ├── PFCommandRunningConstants.m
│ │ │ │ ├── URLRequestConstructor
│ │ │ │ │ ├── PFCommandURLRequestConstructor.h
│ │ │ │ │ └── PFCommandURLRequestConstructor.m
│ │ │ │ └── URLSession
│ │ │ │ │ ├── PFURLSessionCommandRunner.h
│ │ │ │ │ ├── PFURLSessionCommandRunner.m
│ │ │ │ │ ├── PFURLSessionCommandRunner_Private.h
│ │ │ │ │ └── Session
│ │ │ │ │ ├── PFURLSession.h
│ │ │ │ │ ├── PFURLSession.m
│ │ │ │ │ ├── PFURLSession_Private.h
│ │ │ │ │ └── TaskDelegate
│ │ │ │ │ ├── PFURLSessionDataTaskDelegate.h
│ │ │ │ │ ├── PFURLSessionDataTaskDelegate.m
│ │ │ │ │ ├── PFURLSessionDataTaskDelegate_Private.h
│ │ │ │ │ ├── PFURLSessionFileDownloadTaskDelegate.h
│ │ │ │ │ ├── PFURLSessionFileDownloadTaskDelegate.m
│ │ │ │ │ ├── PFURLSessionJSONDataTaskDelegate.h
│ │ │ │ │ ├── PFURLSessionJSONDataTaskDelegate.m
│ │ │ │ │ ├── PFURLSessionUploadTaskDelegate.h
│ │ │ │ │ └── PFURLSessionUploadTaskDelegate.m
│ │ │ ├── PFRESTAnalyticsCommand.h
│ │ │ ├── PFRESTAnalyticsCommand.m
│ │ │ ├── PFRESTCloudCommand.h
│ │ │ ├── PFRESTCloudCommand.m
│ │ │ ├── PFRESTCommand.h
│ │ │ ├── PFRESTCommand.m
│ │ │ ├── PFRESTCommand_Private.h
│ │ │ ├── PFRESTConfigCommand.h
│ │ │ ├── PFRESTConfigCommand.m
│ │ │ ├── PFRESTFileCommand.h
│ │ │ ├── PFRESTFileCommand.m
│ │ │ ├── PFRESTObjectBatchCommand.h
│ │ │ ├── PFRESTObjectBatchCommand.m
│ │ │ ├── PFRESTObjectCommand.h
│ │ │ ├── PFRESTObjectCommand.m
│ │ │ ├── PFRESTPushCommand.h
│ │ │ ├── PFRESTPushCommand.m
│ │ │ ├── PFRESTQueryCommand.h
│ │ │ ├── PFRESTQueryCommand.m
│ │ │ ├── PFRESTSessionCommand.h
│ │ │ ├── PFRESTSessionCommand.m
│ │ │ ├── PFRESTUserCommand.h
│ │ │ └── PFRESTUserCommand.m
│ │ ├── Config
│ │ │ ├── Controller
│ │ │ │ ├── PFConfigController.h
│ │ │ │ ├── PFConfigController.m
│ │ │ │ ├── PFCurrentConfigController.h
│ │ │ │ └── PFCurrentConfigController.m
│ │ │ └── PFConfig_Private.h
│ │ ├── FieldOperation
│ │ │ ├── PFFieldOperation.h
│ │ │ ├── PFFieldOperation.m
│ │ │ ├── PFFieldOperationDecoder.h
│ │ │ └── PFFieldOperationDecoder.m
│ │ ├── File
│ │ │ ├── Controller
│ │ │ │ ├── PFFileController.h
│ │ │ │ ├── PFFileController.m
│ │ │ │ ├── PFFileStagingController.h
│ │ │ │ ├── PFFileStagingController.m
│ │ │ │ └── PFFileUploadResult.m
│ │ │ ├── FileDataStream
│ │ │ │ ├── PFFileDataStream.h
│ │ │ │ └── PFFileDataStream.m
│ │ │ ├── PFFileObject_Private.h
│ │ │ └── State
│ │ │ │ ├── PFFileState.h
│ │ │ │ ├── PFFileState.m
│ │ │ │ ├── PFFileState_Private.h
│ │ │ │ ├── PFMutableFileState.h
│ │ │ │ └── PFMutableFileState.m
│ │ ├── HTTPRequest
│ │ │ ├── PFHTTPRequest.h
│ │ │ ├── PFHTTPURLRequestConstructor.h
│ │ │ ├── PFHTTPURLRequestConstructor.m
│ │ │ ├── PFURLConstructor.h
│ │ │ └── PFURLConstructor.m
│ │ ├── Installation
│ │ │ ├── Constants
│ │ │ │ ├── PFInstallationConstants.h
│ │ │ │ └── PFInstallationConstants.m
│ │ │ ├── Controller
│ │ │ │ ├── PFInstallationController.h
│ │ │ │ └── PFInstallationController.m
│ │ │ ├── CurrentInstallationController
│ │ │ │ ├── PFCurrentInstallationController.h
│ │ │ │ └── PFCurrentInstallationController.m
│ │ │ ├── InstallationIdentifierStore
│ │ │ │ ├── PFInstallationIdentifierStore.h
│ │ │ │ ├── PFInstallationIdentifierStore.m
│ │ │ │ └── PFInstallationIdentifierStore_Private.h
│ │ │ └── PFInstallationPrivate.h
│ │ ├── KeyValueCache
│ │ │ ├── PFKeyValueCache.h
│ │ │ ├── PFKeyValueCache.m
│ │ │ └── PFKeyValueCache_Private.h
│ │ ├── LocalDataStore
│ │ │ ├── OfflineQueryLogic
│ │ │ │ ├── PFOfflineQueryLogic.h
│ │ │ │ └── PFOfflineQueryLogic.m
│ │ │ ├── OfflineStore
│ │ │ │ ├── PFOfflineStore.h
│ │ │ │ └── PFOfflineStore.m
│ │ │ ├── Pin
│ │ │ │ ├── PFPin.h
│ │ │ │ └── PFPin.m
│ │ │ └── SQLite
│ │ │ │ ├── PFSQLiteDatabase.h
│ │ │ │ ├── PFSQLiteDatabase.m
│ │ │ │ ├── PFSQLiteDatabaseController.h
│ │ │ │ ├── PFSQLiteDatabaseController.m
│ │ │ │ ├── PFSQLiteDatabaseResult.h
│ │ │ │ ├── PFSQLiteDatabaseResult.m
│ │ │ │ ├── PFSQLiteDatabase_Private.h
│ │ │ │ ├── PFSQLiteStatement.h
│ │ │ │ └── PFSQLiteStatement.m
│ │ ├── MultiProcessLock
│ │ │ ├── PFMultiProcessFileLock.h
│ │ │ ├── PFMultiProcessFileLock.m
│ │ │ ├── PFMultiProcessFileLockController.h
│ │ │ └── PFMultiProcessFileLockController.m
│ │ ├── Object
│ │ │ ├── BatchController
│ │ │ │ ├── PFObjectBatchController.h
│ │ │ │ └── PFObjectBatchController.m
│ │ │ ├── Coder
│ │ │ │ └── File
│ │ │ │ │ ├── PFObjectFileCoder.h
│ │ │ │ │ ├── PFObjectFileCoder.m
│ │ │ │ │ ├── PFObjectFileCodingLogic.h
│ │ │ │ │ └── PFObjectFileCodingLogic.m
│ │ │ ├── Constants
│ │ │ │ ├── PFObjectConstants.h
│ │ │ │ └── PFObjectConstants.m
│ │ │ ├── Controller
│ │ │ │ ├── OfflineController
│ │ │ │ │ ├── PFOfflineObjectController.h
│ │ │ │ │ └── PFOfflineObjectController.m
│ │ │ │ ├── PFObjectController.h
│ │ │ │ ├── PFObjectController.m
│ │ │ │ ├── PFObjectController_Private.h
│ │ │ │ └── PFObjectControlling.h
│ │ │ ├── CurrentController
│ │ │ │ └── PFCurrentObjectControlling.h
│ │ │ ├── EstimatedData
│ │ │ │ ├── PFObjectEstimatedData.h
│ │ │ │ └── PFObjectEstimatedData.m
│ │ │ ├── FilePersistence
│ │ │ │ ├── PFObjectFilePersistenceController.h
│ │ │ │ └── PFObjectFilePersistenceController.m
│ │ │ ├── LocalIdStore
│ │ │ │ ├── PFObjectLocalIdStore.h
│ │ │ │ └── PFObjectLocalIdStore.m
│ │ │ ├── OperationSet
│ │ │ │ ├── PFOperationSet.h
│ │ │ │ └── PFOperationSet.m
│ │ │ ├── PFObjectPrivate.h
│ │ │ ├── PinningStore
│ │ │ │ ├── PFPinningObjectStore.h
│ │ │ │ └── PFPinningObjectStore.m
│ │ │ ├── State
│ │ │ │ ├── PFMutableObjectState.h
│ │ │ │ ├── PFMutableObjectState.m
│ │ │ │ ├── PFObjectState.h
│ │ │ │ ├── PFObjectState.m
│ │ │ │ └── PFObjectState_Private.h
│ │ │ ├── Subclassing
│ │ │ │ ├── PFObjectSubclassInfo.h
│ │ │ │ ├── PFObjectSubclassInfo.m
│ │ │ │ ├── PFObjectSubclassingController.h
│ │ │ │ └── PFObjectSubclassingController.m
│ │ │ └── Utilities
│ │ │ │ ├── PFObjectUtilities.h
│ │ │ │ └── PFObjectUtilities.m
│ │ ├── PFAlertView.h
│ │ ├── PFAlertView.m
│ │ ├── PFApplication.h
│ │ ├── PFApplication.m
│ │ ├── PFAssert.h
│ │ ├── PFAsyncTaskQueue.h
│ │ ├── PFAsyncTaskQueue.m
│ │ ├── PFBase64Encoder.h
│ │ ├── PFBase64Encoder.m
│ │ ├── PFBaseState.h
│ │ ├── PFBaseState.m
│ │ ├── PFCategoryLoader.h
│ │ ├── PFCategoryLoader.m
│ │ ├── PFCommandCache.h
│ │ ├── PFCommandCache.m
│ │ ├── PFCommandCache_Private.h
│ │ ├── PFCommandResult.h
│ │ ├── PFCommandResult.m
│ │ ├── PFCoreDataProvider.h
│ │ ├── PFCoreLocalization.h
│ │ ├── PFCoreLocalization.m
│ │ ├── PFCoreManager.h
│ │ ├── PFCoreManager.m
│ │ ├── PFDataProvider.h
│ │ ├── PFDateFormatter.h
│ │ ├── PFDateFormatter.m
│ │ ├── PFDevice.h
│ │ ├── PFDevice.m
│ │ ├── PFErrorUtilities.h
│ │ ├── PFErrorUtilities.m
│ │ ├── PFEventuallyPin.h
│ │ ├── PFEventuallyPin.m
│ │ ├── PFEventuallyQueue.h
│ │ ├── PFEventuallyQueue.m
│ │ ├── PFEventuallyQueue_Private.h
│ │ ├── PFFileManager.h
│ │ ├── PFFileManager.m
│ │ ├── PFGeoPointPrivate.h
│ │ ├── PFHash.h
│ │ ├── PFHash.m
│ │ ├── PFInternalUtils.h
│ │ ├── PFInternalUtils.m
│ │ ├── PFJSONSerialization.h
│ │ ├── PFJSONSerialization.m
│ │ ├── PFKeychainStore.h
│ │ ├── PFKeychainStore.m
│ │ ├── PFLocationManager.h
│ │ ├── PFLocationManager.m
│ │ ├── PFLogging.h
│ │ ├── PFMacros.h
│ │ ├── PFMemoryEventuallyQueue.h
│ │ ├── PFMemoryEventuallyQueue.m
│ │ ├── PFMulticastDelegate.h
│ │ ├── PFMulticastDelegate.m
│ │ ├── PFNetworkCommand.h
│ │ ├── PFPinningEventuallyQueue.h
│ │ ├── PFPinningEventuallyQueue.m
│ │ ├── PFPolygonPrivate.h
│ │ ├── PFReachability.h
│ │ ├── PFReachability.m
│ │ ├── PFSystemLogger.h
│ │ ├── PFSystemLogger.m
│ │ ├── PFTaskQueue.h
│ │ ├── PFTaskQueue.m
│ │ ├── PFWeakValue.h
│ │ ├── PFWeakValue.m
│ │ ├── ParseClientConfiguration_Private.h
│ │ ├── ParseInternal.h
│ │ ├── ParseManager.h
│ │ ├── ParseManager.m
│ │ ├── ParseManagerPrivate.h
│ │ ├── ParseModule.h
│ │ ├── ParseModule.m
│ │ ├── Parse_Private.h
│ │ ├── Persistence
│ │ │ ├── Group
│ │ │ │ ├── PFFilePersistenceGroup.h
│ │ │ │ ├── PFFilePersistenceGroup.m
│ │ │ │ ├── PFPersistenceGroup.h
│ │ │ │ ├── PFUserDefaultsPersistenceGroup.h
│ │ │ │ └── PFUserDefaultsPersistenceGroup.m
│ │ │ ├── PFPersistenceController.h
│ │ │ └── PFPersistenceController.m
│ │ ├── Product
│ │ │ ├── PFProduct+Private.h
│ │ │ └── ProductsRequestHandler
│ │ │ │ ├── PFProductsRequestHandler.h
│ │ │ │ └── PFProductsRequestHandler.m
│ │ ├── PropertyInfo
│ │ │ ├── PFPropertyInfo.h
│ │ │ ├── PFPropertyInfo.m
│ │ │ ├── PFPropertyInfo_Private.h
│ │ │ ├── PFPropertyInfo_Runtime.h
│ │ │ └── PFPropertyInfo_Runtime.m
│ │ ├── Purchase
│ │ │ ├── Controller
│ │ │ │ ├── PFPurchaseController.h
│ │ │ │ └── PFPurchaseController.m
│ │ │ └── PaymentTransactionObserver
│ │ │ │ ├── PFPaymentTransactionObserver.h
│ │ │ │ ├── PFPaymentTransactionObserver.m
│ │ │ │ └── PFPaymentTransactionObserver_Private.h
│ │ ├── Push
│ │ │ ├── ChannelsController
│ │ │ │ ├── PFPushChannelsController.h
│ │ │ │ └── PFPushChannelsController.m
│ │ │ ├── Controller
│ │ │ │ ├── PFPushController.h
│ │ │ │ └── PFPushController.m
│ │ │ ├── Manager
│ │ │ │ ├── PFPushManager.h
│ │ │ │ └── PFPushManager.m
│ │ │ ├── PFPushPrivate.h
│ │ │ ├── State
│ │ │ │ ├── PFMutablePushState.h
│ │ │ │ ├── PFMutablePushState.m
│ │ │ │ ├── PFPushState.h
│ │ │ │ ├── PFPushState.m
│ │ │ │ └── PFPushState_Private.h
│ │ │ └── Utilites
│ │ │ │ ├── PFPushUtilities.h
│ │ │ │ └── PFPushUtilities.m
│ │ ├── Query
│ │ │ ├── Controller
│ │ │ │ ├── PFCachedQueryController.h
│ │ │ │ ├── PFCachedQueryController.m
│ │ │ │ ├── PFOfflineQueryController.h
│ │ │ │ ├── PFOfflineQueryController.m
│ │ │ │ ├── PFQueryController.h
│ │ │ │ └── PFQueryController.m
│ │ │ ├── PFQueryConstants.h
│ │ │ ├── PFQueryConstants.m
│ │ │ ├── PFQueryPrivate.h
│ │ │ ├── State
│ │ │ │ ├── PFMutableQueryState.h
│ │ │ │ ├── PFMutableQueryState.m
│ │ │ │ ├── PFQueryState.h
│ │ │ │ ├── PFQueryState.m
│ │ │ │ └── PFQueryState_Private.h
│ │ │ └── Utilities
│ │ │ │ ├── PFQueryUtilities.h
│ │ │ │ └── PFQueryUtilities.m
│ │ ├── Relation
│ │ │ ├── PFRelationPrivate.h
│ │ │ └── State
│ │ │ │ ├── PFMutableRelationState.h
│ │ │ │ ├── PFMutableRelationState.m
│ │ │ │ ├── PFRelationState.h
│ │ │ │ ├── PFRelationState.m
│ │ │ │ └── PFRelationState_Private.h
│ │ ├── Session
│ │ │ ├── Controller
│ │ │ │ ├── PFSessionController.h
│ │ │ │ └── PFSessionController.m
│ │ │ ├── PFSession_Private.h
│ │ │ └── Utilities
│ │ │ │ ├── PFSessionUtilities.h
│ │ │ │ └── PFSessionUtilities.m
│ │ ├── ThreadSafety
│ │ │ ├── PFThreadsafety.h
│ │ │ └── PFThreadsafety.m
│ │ └── User
│ │ │ ├── AuthenticationProviders
│ │ │ ├── Controller
│ │ │ │ ├── PFUserAuthenticationController.h
│ │ │ │ └── PFUserAuthenticationController.m
│ │ │ └── Providers
│ │ │ │ └── Anonymous
│ │ │ │ ├── PFAnonymousAuthenticationProvider.h
│ │ │ │ ├── PFAnonymousAuthenticationProvider.m
│ │ │ │ └── PFAnonymousUtils_Private.h
│ │ │ ├── Coder
│ │ │ └── File
│ │ │ │ ├── PFUserFileCodingLogic.h
│ │ │ │ └── PFUserFileCodingLogic.m
│ │ │ ├── Constants
│ │ │ ├── PFUserConstants.h
│ │ │ └── PFUserConstants.m
│ │ │ ├── Controller
│ │ │ ├── PFUserController.h
│ │ │ └── PFUserController.m
│ │ │ ├── CurrentUserController
│ │ │ ├── PFCurrentUserController.h
│ │ │ └── PFCurrentUserController.m
│ │ │ ├── PFUserPrivate.h
│ │ │ └── State
│ │ │ ├── PFMutableUserState.h
│ │ │ ├── PFMutableUserState.m
│ │ │ ├── PFUserState.h
│ │ │ ├── PFUserState.m
│ │ │ └── PFUserState_Private.h
│ ├── Resources
│ │ ├── Parse-OSX.Info.plist
│ │ ├── Parse-iOS.Info.plist
│ │ ├── Parse-tvOS.Info.plist
│ │ ├── Parse-watchOS.Info.plist
│ │ └── en.lproj
│ │ │ └── Parse.strings
│ └── Source
│ │ ├── PFACL.h
│ │ ├── PFACL.m
│ │ ├── PFAnalytics.h
│ │ ├── PFAnalytics.m
│ │ ├── PFAnonymousUtils+Deprecated.h
│ │ ├── PFAnonymousUtils.h
│ │ ├── PFAnonymousUtils.m
│ │ ├── PFCloud+Deprecated.h
│ │ ├── PFCloud+Synchronous.h
│ │ ├── PFCloud.h
│ │ ├── PFCloud.m
│ │ ├── PFConfig+Synchronous.h
│ │ ├── PFConfig.h
│ │ ├── PFConfig.m
│ │ ├── PFConstants.h
│ │ ├── PFConstants.m
│ │ ├── PFDecoder.h
│ │ ├── PFDecoder.m
│ │ ├── PFEncoder.h
│ │ ├── PFEncoder.m
│ │ ├── PFFileObject+Deprecated.h
│ │ ├── PFFileObject+Synchronous.h
│ │ ├── PFFileObject.h
│ │ ├── PFFileObject.m
│ │ ├── PFFileUploadController.h
│ │ ├── PFFileUploadResult.h
│ │ ├── PFGeoPoint.h
│ │ ├── PFGeoPoint.m
│ │ ├── PFInstallation.h
│ │ ├── PFInstallation.m
│ │ ├── PFNetworkActivityIndicatorManager.h
│ │ ├── PFNetworkActivityIndicatorManager.m
│ │ ├── PFObject+Deprecated.h
│ │ ├── PFObject+Subclass.h
│ │ ├── PFObject+Synchronous.h
│ │ ├── PFObject.h
│ │ ├── PFObject.m
│ │ ├── PFPolygon.h
│ │ ├── PFPolygon.m
│ │ ├── PFProduct.h
│ │ ├── PFProduct.m
│ │ ├── PFPurchase.h
│ │ ├── PFPurchase.m
│ │ ├── PFPush+Deprecated.h
│ │ ├── PFPush+Synchronous.h
│ │ ├── PFPush.h
│ │ ├── PFPush.m
│ │ ├── PFQuery+Deprecated.h
│ │ ├── PFQuery+Synchronous.h
│ │ ├── PFQuery.h
│ │ ├── PFQuery.m
│ │ ├── PFRelation.h
│ │ ├── PFRelation.m
│ │ ├── PFRole.h
│ │ ├── PFRole.m
│ │ ├── PFSession.h
│ │ ├── PFSession.m
│ │ ├── PFSubclassing.h
│ │ ├── PFUser+Deprecated.h
│ │ ├── PFUser+Synchronous.h
│ │ ├── PFUser.h
│ │ ├── PFUser.m
│ │ ├── PFUserAuthenticationDelegate.h
│ │ ├── Parse.h
│ │ ├── Parse.m
│ │ ├── ParseClientConfiguration.h
│ │ └── ParseClientConfiguration.m
├── ParseUnitTests-iOS-host
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Info.plist
│ ├── Main.storyboard
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tests
│ ├── Other
│ │ ├── Cache
│ │ │ ├── TestCache.h
│ │ │ └── TestCache.m
│ │ ├── ExtensionDataSharing
│ │ │ ├── PFExtensionDataSharingTestHelper.h
│ │ │ └── PFExtensionDataSharingTestHelper.m
│ │ ├── FileManager
│ │ │ ├── TestFileManager.h
│ │ │ └── TestFileManager.m
│ │ ├── LocationManager
│ │ │ ├── CLLocationManager+TestAdditions.h
│ │ │ └── CLLocationManager+TestAdditions.m
│ │ ├── NetworkMocking
│ │ │ ├── PFMockURLProtocol.h
│ │ │ ├── PFMockURLProtocol.m
│ │ │ ├── PFMockURLResponse.h
│ │ │ └── PFMockURLResponse.m
│ │ ├── OCMock
│ │ │ ├── OCMock+Parse.h
│ │ │ └── OCMock+Parse.m
│ │ ├── StoreKitMocking
│ │ │ ├── PFTestSKPaymentQueue.h
│ │ │ ├── PFTestSKPaymentQueue.m
│ │ │ ├── PFTestSKPaymentTransaction.h
│ │ │ ├── PFTestSKPaymentTransaction.m
│ │ │ ├── PFTestSKProduct.h
│ │ │ ├── PFTestSKProduct.m
│ │ │ ├── PFTestSKProductsRequest.h
│ │ │ ├── PFTestSKProductsRequest.m
│ │ │ ├── PFTestSKProductsResponse.h
│ │ │ └── PFTestSKProductsResponse.m
│ │ ├── Swift
│ │ │ └── SwiftSubclass.swift
│ │ ├── Swizzling
│ │ │ ├── PFTestSwizzledMethod.h
│ │ │ ├── PFTestSwizzledMethod.m
│ │ │ ├── PFTestSwizzlingUtilities.h
│ │ │ └── PFTestSwizzlingUtilities.m
│ │ └── TestCases
│ │ │ ├── TestCase
│ │ │ ├── PFTestCase.h
│ │ │ └── PFTestCase.m
│ │ │ └── UnitTestCase
│ │ │ ├── PFUnitTestCase.h
│ │ │ └── PFUnitTestCase.m
│ ├── Resources
│ │ ├── ParseUnitTests-OSX-Info.plist
│ │ └── ParseUnitTests-iOS-Info.plist
│ ├── Unit
│ │ ├── ACLDefaultTests.m
│ │ ├── ACLStateTests.m
│ │ ├── ACLTests.m
│ │ ├── AlertViewTests.m
│ │ ├── AnalyticsCommandTests.m
│ │ ├── AnalyticsControllerTests.m
│ │ ├── AnalyticsUnitTests.m
│ │ ├── AnalyticsUtilitiesTests.m
│ │ ├── AnonymousAuthenticationProviderTests.m
│ │ ├── AnonymousUtilsTests.m
│ │ ├── BaseStateTests.m
│ │ ├── CloudCodeControllerTests.m
│ │ ├── CloudCommandTests.m
│ │ ├── CloudUnitTests.m
│ │ ├── CommandResultTests.m
│ │ ├── CommandURLRequestConstructorTests.m
│ │ ├── CommandUnitTests.m
│ │ ├── ConfigCommandTests.m
│ │ ├── ConfigControllerTests.m
│ │ ├── ConfigUnitTests.m
│ │ ├── CurrentConfigControllerTests.m
│ │ ├── DateFormatterTests.m
│ │ ├── DecoderTests.m
│ │ ├── DefaultACLControllerTests.m
│ │ ├── DeviceTests.m
│ │ ├── ExtensionDataSharingMobileTests.m
│ │ ├── ExtensionDataSharingTests.m
│ │ ├── FieldOperationDecoderTests.m
│ │ ├── FieldOperationTests.m
│ │ ├── FileCommandTests.m
│ │ ├── FileControllerTests.m
│ │ ├── FileDataStreamTests.m
│ │ ├── FileStateTests.m
│ │ ├── FileUnitTests.m
│ │ ├── GeoPointLocationTests.m
│ │ ├── GeoPointUnitTests.m
│ │ ├── HashTests.m
│ │ ├── IncrementUnitTests.m
│ │ ├── InstallationIdentifierUnitTests.m
│ │ ├── InstallationUnitTests.m
│ │ ├── KeyValueCacheTests.m
│ │ ├── KeychainStoreTests.m
│ │ ├── LocationManagerMobileTests.m
│ │ ├── LocationManagerTests.m
│ │ ├── ObjectBatchCommandTests.m
│ │ ├── ObjectBatchControllerTests.m
│ │ ├── ObjectCommandTests.m
│ │ ├── ObjectEstimatedDataTests.m
│ │ ├── ObjectFileCoderTests.m
│ │ ├── ObjectFileCodingLogicTests.m
│ │ ├── ObjectFilePersistenceControllerTests.m
│ │ ├── ObjectLocalIdStoreTests.m
│ │ ├── ObjectOfflineTests.m
│ │ ├── ObjectPinTests.m
│ │ ├── ObjectStateTests.m
│ │ ├── ObjectSubclassPropertiesTests.m
│ │ ├── ObjectSubclassTests.m
│ │ ├── ObjectSubclassingControllerTests.m
│ │ ├── ObjectUnitTests.m
│ │ ├── ObjectUtilitiesTests.m
│ │ ├── OfflineQueryControllerTests.m
│ │ ├── OfflineQueryLogicUnitTests.m
│ │ ├── OperationSetUnitTests.m
│ │ ├── ParseClientConfigurationTests.m
│ │ ├── ParseModuleUnitTests.m
│ │ ├── ParseSetupUnitTests.m
│ │ ├── PinUnitTests.m
│ │ ├── PinningObjectStoreTests.m
│ │ ├── PolygonUnitTests.m
│ │ ├── ProductTests.m
│ │ ├── PropertyInfoTests.m
│ │ ├── PurchaseControllerTests.m
│ │ ├── PurchaseUnitTests.m
│ │ ├── PushChannelsControllerTests.m
│ │ ├── PushCommandTests.m
│ │ ├── PushControllerTests.m
│ │ ├── PushManagerTests.m
│ │ ├── PushMobileTests.m
│ │ ├── PushStateTests.m
│ │ ├── PushUnitTests.m
│ │ ├── QueryCachedControllerTests.m
│ │ ├── QueryControllerUnitTests.m
│ │ ├── QueryPredicateUnitTests.m
│ │ ├── QueryStateUnitTests.m
│ │ ├── QueryUnitTests.m
│ │ ├── QueryUtilitiesTests.m
│ │ ├── RelationStateTests.m
│ │ ├── RelationUnitTests.m
│ │ ├── RoleUnitTests.m
│ │ ├── SQLiteDatabaseTest.m
│ │ ├── SessionControllerTests.m
│ │ ├── SessionUnitTests.m
│ │ ├── SessionUtilitiesTests.m
│ │ ├── URLConstructorTests.m
│ │ ├── URLSessionCommandRunnerTests.m
│ │ ├── URLSessionDataTaskDelegateTests.m
│ │ ├── URLSessionTests.m
│ │ ├── URLSessionUploadTaskDelegateTests.m
│ │ ├── UserCommandTests.m
│ │ ├── UserControllerTests.m
│ │ ├── UserFileCodingLogicTests.m
│ │ └── UserUnitTests.m
│ └── testServer.config
└── third_party_licenses.txt
├── ParseLiveQuery
├── .gitignore
├── Examples
│ ├── LiveQueryDemo-ObjC.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── LiveQueryDemo-ObjC.xcscheme
│ ├── LiveQueryDemo-ObjC
│ │ ├── ChatRoomManager.h
│ │ ├── ChatRoomManager.m
│ │ ├── Info.plist
│ │ ├── Message.h
│ │ ├── Message.m
│ │ ├── Room.h
│ │ ├── Room.m
│ │ └── main.m
│ ├── LiveQueryDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── LiveQueryDemo.xcscheme
│ └── LiveQueryDemo
│ │ ├── Info.plist
│ │ ├── Message.swift
│ │ ├── Room.swift
│ │ └── main.swift
├── ParseLiveQuery-tvOS
│ ├── Info.plist
│ └── ParseLiveQuery_tvOS.h
├── ParseLiveQuery-watchOS
│ ├── Info.plist
│ └── ParseLiveQuery_watchOS.h
├── ParseLiveQuery.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ ├── ParseLiveQuery-OSX.xcscheme
│ │ ├── ParseLiveQuery-iOS.xcscheme
│ │ ├── ParseLiveQuery-tvOS.xcscheme
│ │ └── ParseLiveQuery-watchOS.xcscheme
└── ParseLiveQuery
│ ├── Client.swift
│ ├── Internal
│ ├── ClientPrivate.swift
│ ├── Common.swift
│ ├── Errors.swift
│ ├── Operation.swift
│ └── QueryEncoder.swift
│ ├── ObjCCompat.swift
│ ├── PFQuery+Subscribe.swift
│ ├── Parse+LiveQuery.swift
│ ├── Resources
│ └── Info.plist
│ └── Subscription.swift
├── ParseStarterProject
├── .gitignore
├── OSX
│ ├── ParseOSXStarterProject-Swift
│ │ ├── ParseOSXStarterProject-Swift.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ └── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ ├── ParseOSXStarterProject
│ │ │ └── AppDelegate.swift
│ │ └── Resources
│ │ │ ├── Base.lproj
│ │ │ └── MainMenu.xib
│ │ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Info.plist
│ └── ParseOSXStarterProject
│ │ ├── ParseOSXStarterProject.xcodeproj
│ │ ├── project.pbxproj
│ │ └── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ ├── ParseOSXStarterProject
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ └── main.m
│ │ └── Resources
│ │ ├── Base.lproj
│ │ └── MainMenu.xib
│ │ ├── Info.plist
│ │ └── en.lproj
│ │ ├── Credits.rtf
│ │ └── InfoPlist.strings
├── iOS
│ ├── ParseStarterProject-Swift
│ │ ├── ParseStarterProject-Swift.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ └── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ ├── ParseStarterProject
│ │ │ ├── AppDelegate.swift
│ │ │ └── ViewController.swift
│ │ └── Resources
│ │ │ ├── Base.lproj
│ │ │ └── Main.storyboard
│ │ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ │ ├── Info.plist
│ │ │ └── Launch.storyboard
│ └── ParseStarterProject
│ │ ├── ParseStarterProject.xcodeproj
│ │ ├── project.pbxproj
│ │ └── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ ├── ParseStarterProject
│ │ ├── ParseStarterProjectAppDelegate.h
│ │ ├── ParseStarterProjectAppDelegate.m
│ │ ├── ParseStarterProjectViewController.h
│ │ ├── ParseStarterProjectViewController.m
│ │ └── main.m
│ │ └── Resources
│ │ ├── Base.lproj
│ │ ├── MainWindow.xib
│ │ └── ParseStarterProjectViewController.xib
│ │ ├── Default-568h@2x.png
│ │ ├── Default.png
│ │ ├── Default@2x.png
│ │ ├── Info.plist
│ │ └── en.lproj
│ │ └── InfoPlist.strings
├── tvOS
│ └── ParseStarterProject-Swift
│ │ ├── ParseStarter-Swift.xcodeproj
│ │ ├── project.pbxproj
│ │ └── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── ParseStarter
│ │ ├── AppDelegate.swift
│ │ ├── Base.lproj
│ │ └── Main.storyboard
│ │ ├── Info.plist
│ │ └── ViewController.swift
└── watchOS
│ └── ParseStarterProject-Swift
│ ├── ParseStarter Extension
│ ├── ExtensionDelegate.swift
│ ├── Info.plist
│ └── InterfaceController.swift
│ ├── ParseStarter-Swift.xcodeproj
│ ├── project.pbxproj
│ └── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
│ ├── ParseStarter
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ └── Interface.storyboard
│ └── Info.plist
│ ├── ParseStarterProject
│ ├── AppDelegate.swift
│ └── ViewController.swift
│ └── Resources
│ ├── Base.lproj
│ └── Main.storyboard
│ ├── Images.xcassets
│ ├── AppIcon.appiconset
│ │ └── Contents.json
│ └── LaunchImage.launchimage
│ │ └── Contents.json
│ └── Info.plist
├── README.md
├── Rakefile
├── Scripts
└── jazzy.sh
├── Tests
└── Parse-SDK-iOS-OSXTests
│ └── Parse_SDK_iOS_OSXTests.swift
├── package-lock.json
├── package.json
└── release.config.js
/.clang-format:
--------------------------------------------------------------------------------
1 | Vendor/xctoolchain/.clang-format
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/---2-feature-request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: "\U0001F4A1 Request a feature"
3 | about: Suggest new functionality or an enhancement of existing functionality.
4 | title: ''
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | ### New Feature / Enhancement Checklist
11 |
16 |
17 | - [ ] I am not disclosing a [vulnerability](https://github.com/parse-community/Parse-SDK-iOS-OSX/security/policy).
18 | - [ ] I am not just asking a [question](https://github.com/parse-community/.github/blob/main/SUPPORT.md).
19 | - [ ] I have searched through [existing issues](https://github.com/parse-community/Parse-SDK-iOS-OSX/issues?q=is%3Aissue).
20 |
21 | ### Current Limitation
22 |
23 |
24 | ### Feature / Enhancement Description
25 |
26 |
27 | ### Example Use Case
28 |
29 |
30 | ### Alternatives / Workarounds
31 |
32 |
33 | ### 3rd Party References
34 |
35 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: 🙋🏽♀️ Getting help with code
4 | url: https://stackoverflow.com/questions/tagged/parse-platform
5 | about: Get help with code-level questions on Stack Overflow.
6 | - name: 🙋 Getting general help
7 | url: https://community.parseplatform.org
8 | about: Get help with other questions on our Community Forum.
9 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | # Dependabot dependency updates
2 | # Docs: https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
3 |
4 | version: 2
5 | updates:
6 | - package-ecosystem: "npm"
7 | # Location of package-lock.json
8 | directory: "/"
9 | # Check daily for updates
10 | schedule:
11 | interval: "daily"
12 | commit-message:
13 | # Set commit message prefix
14 | prefix: "refactor"
15 |
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ### New Pull Request Checklist
2 |
7 |
8 | - [ ] I am not disclosing a [vulnerability](https://github.com/parse-community/Parse-SDK-iOS-OSX/security/policy).
9 | - [ ] I am creating this PR in reference to an [issue](https://github.com/parse-community/Parse-SDK-iOS-OSX/issues?q=is%3Aissue).
10 |
11 | ### Issue Description
12 |
13 |
14 | Closes: FILL_THIS_OUT
15 |
16 | ### Approach
17 |
18 |
19 | ### TODOs before merging
20 |
24 |
25 | - [ ] Add tests
26 | - [ ] Add changes to documentation (guides, repository pages, in-code descriptions)
27 |
--------------------------------------------------------------------------------
/.github/workflows/release-manual-docs.yml:
--------------------------------------------------------------------------------
1 | name: release-manual-docs
2 | on:
3 | workflow_dispatch:
4 | inputs:
5 | tag:
6 | default: ''
7 | description: 'Version tag:'
8 | env:
9 | CI_XCODE_16: /Applications/Xcode_16.1.0.app/Contents/Developer
10 |
11 | jobs:
12 | publish-docs:
13 | if: github.event.inputs.tag != ''
14 | runs-on: macos-15
15 | steps:
16 | - name: Checkout repository
17 | uses: actions/checkout@v4
18 | with:
19 | ref: ${{ github.event.inputs.tag }}
20 | - name: Setup Ruby
21 | uses: ruby/setup-ruby@v1
22 | with:
23 | ruby-version: '3.1.0'
24 | bundler-cache: true
25 | - name: Submodules
26 | run: git submodule update --init --recursive
27 | - name: Create Jazzy Docs
28 | run: |
29 | ./Scripts/jazzy.sh
30 | env:
31 | DEVELOPER_DIR: ${{ env.CI_XCODE_16 }}
32 | - name: Deploy Jazzy Docs
33 | uses: peaceiris/actions-gh-pages@v3
34 | with:
35 | github_token: ${{ secrets.GITHUB_TOKEN }}
36 | publish_dir: ./docs
37 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | ## OS X
2 | .DS_Store
3 |
4 | ## Build generated
5 | .build/
6 | build/
7 | DerivedData
8 | OCMock.framework
9 |
10 | ## Various settings
11 | *.pbxuser
12 | !default.pbxuser
13 | *.mode1v3
14 | !default.mode1v3
15 | *.mode2v3
16 | !default.mode2v3
17 | *.perspectivev3
18 | !default.perspectivev3
19 | xcuserdata
20 |
21 | ## Other
22 | *.xccheckout
23 | *.moved-aside
24 | *.xcuserstate
25 | *.xcscmblueprint
26 |
27 | ## Obj-C/Swift specific
28 | *.hmap
29 | *.ipa
30 |
31 | ## Dependency Managers
32 | Pods/
33 | Carthage/Build
34 | Carthage/Checkouts
35 | docs/
36 | ./Bolts
37 |
38 | ## AppCode
39 | .idea/
40 |
41 | # VSC
42 | .project
43 |
44 | # Node
45 | node_modules/
46 | npm-debug.log
47 |
48 | # Ruby
49 | .bundle
50 | Vendor/
51 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "Vendor/xctoolchain"]
2 | path = Vendor/xctoolchain
3 | url = https://github.com/parse-community/xctoolchain.git
4 |
--------------------------------------------------------------------------------
/.releaserc/footer.hbs:
--------------------------------------------------------------------------------
1 | {{#if noteGroups}}
2 | {{#each noteGroups}}
3 |
4 | ### {{title}}
5 |
6 | {{#each notes}}
7 | * {{#if commit.scope}}**{{commit.scope}}:** {{/if}}{{text}} ([{{commit.shortHash}}]({{commit.shortHash}}))
8 | {{/each}}
9 | {{/each}}
10 |
11 | {{/if}}
12 |
--------------------------------------------------------------------------------
/.releaserc/header.hbs:
--------------------------------------------------------------------------------
1 | {{#if isPatch~}}
2 | ##
3 | {{~else~}}
4 | #
5 | {{~/if}} {{#if @root.linkCompare~}}
6 | [{{version}}](
7 | {{~#if @root.repository~}}
8 | {{~#if @root.host}}
9 | {{~@root.host}}/
10 | {{~/if}}
11 | {{~#if @root.owner}}
12 | {{~@root.owner}}/
13 | {{~/if}}
14 | {{~@root.repository}}
15 | {{~else}}
16 | {{~@root.repoUrl}}
17 | {{~/if~}}
18 | /compare/{{previousTag}}...{{currentTag}})
19 | {{~else}}
20 | {{~version}}
21 | {{~/if}}
22 | {{~#if title}} "{{title}}"
23 | {{~/if}}
24 | {{~#if date}} ({{date}})
25 | {{/if}}
26 |
--------------------------------------------------------------------------------
/.releaserc/template.hbs:
--------------------------------------------------------------------------------
1 | {{> header}}
2 |
3 | {{#each commitGroups}}
4 |
5 | {{#if title}}
6 | ### {{title}}
7 |
8 | {{/if}}
9 | {{#each commits}}
10 | {{> commit root=@root}}
11 | {{/each}}
12 | {{/each}}
13 |
14 | {{> footer}}
15 |
--------------------------------------------------------------------------------
/.ruby-version:
--------------------------------------------------------------------------------
1 | ruby-3.1.0
2 |
--------------------------------------------------------------------------------
/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Assets/logo large.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/Assets/logo large.png
--------------------------------------------------------------------------------
/Gemfile:
--------------------------------------------------------------------------------
1 | source 'https://rubygems.org'
2 |
3 | # Docs
4 | gem 'jazzy', '0.15.3'
5 |
6 | # Development
7 | gem 'xcpretty', '0.3.0'
8 | gem 'rake', '13.2.1'
9 | gem 'plist', '3.7.1'
10 |
--------------------------------------------------------------------------------
/Package.resolved:
--------------------------------------------------------------------------------
1 | {
2 | "object": {
3 | "pins": [
4 | {
5 | "package": "Bolts",
6 | "repositoryURL": "https://github.com/parse-community/Bolts-ObjC.git",
7 | "state": {
8 | "branch": null,
9 | "revision": "1eee96ad3bcfc8964c0a5815ce94f491eb6ac8c2",
10 | "version": "1.10.0"
11 | }
12 | },
13 | {
14 | "package": "BoltsSwift",
15 | "repositoryURL": "https://github.com/BoltsFramework/Bolts-Swift.git",
16 | "state": {
17 | "branch": null,
18 | "revision": "d8c07eee2045a13f34330c0a4664053b5176e3f0",
19 | "version": "1.5.0"
20 | }
21 | },
22 | {
23 | "package": "OCMock",
24 | "repositoryURL": "https://github.com/erikdoe/ocmock.git",
25 | "state": {
26 | "branch": null,
27 | "revision": "2c0bfd373289f4a7716db5d6db471640f91a6507",
28 | "version": null
29 | }
30 | },
31 | {
32 | "package": "Starscream",
33 | "repositoryURL": "https://github.com/daltoniam/Starscream.git",
34 | "state": {
35 | "branch": null,
36 | "revision": "c6bfd1af48efcc9a9ad203665db12375ba6b145a",
37 | "version": "4.0.8"
38 | }
39 | }
40 | ]
41 | },
42 | "version": 1
43 | }
44 |
--------------------------------------------------------------------------------
/Parse.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Parse.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildSystemType
6 | Latest
7 | IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded
8 |
9 | PreviewsEnabled
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Parse.xcworkspace/xcshareddata/swiftpm/Package.resolved:
--------------------------------------------------------------------------------
1 | {
2 | "object": {
3 | "pins": [
4 | {
5 | "package": "Bolts",
6 | "repositoryURL": "https://github.com/parse-community/Bolts-ObjC.git",
7 | "state": {
8 | "branch": null,
9 | "revision": "1eee96ad3bcfc8964c0a5815ce94f491eb6ac8c2",
10 | "version": "1.10.0"
11 | }
12 | },
13 | {
14 | "package": "BoltsSwift",
15 | "repositoryURL": "https://github.com/BoltsFramework/Bolts-Swift.git",
16 | "state": {
17 | "branch": null,
18 | "revision": "d8c07eee2045a13f34330c0a4664053b5176e3f0",
19 | "version": "1.5.0"
20 | }
21 | },
22 | {
23 | "package": "OCMock",
24 | "repositoryURL": "https://github.com/erikdoe/ocmock",
25 | "state": {
26 | "branch": null,
27 | "revision": "2c0bfd373289f4a7716db5d6db471640f91a6507",
28 | "version": null
29 | }
30 | },
31 | {
32 | "package": "Starscream",
33 | "repositoryURL": "https://github.com/daltoniam/Starscream.git",
34 | "state": {
35 | "branch": null,
36 | "revision": "c6bfd1af48efcc9a9ad203665db12375ba6b145a",
37 | "version": "4.0.8"
38 | }
39 | }
40 | ]
41 | },
42 | "version": 1
43 | }
44 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-iOS-Dynamic.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/iOS.xcconfig"
11 | #include "Shared/Product/DynamicFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.ios
15 |
16 | IPHONEOS_DEPLOYMENT_TARGET = 12.0
17 |
18 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-iOS.Info.plist
19 |
20 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
21 | GCC_WARN_SHADOW = NO
22 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-iOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/iOS.xcconfig"
11 | #include "Shared/Product/StaticFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.ios
15 | APPLICATION_EXTENSION_API_ONLY = YES
16 |
17 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-iOS.Info.plist
18 |
19 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
20 | GCC_WARN_SHADOW = NO
21 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-macOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/macOS.xcconfig"
11 | #include "Shared/Product/DynamicFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.macos
15 |
16 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-OSX.Info.plist
17 |
18 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
19 | GCC_WARN_SHADOW = NO
20 |
21 | CONFIGURATION_BUILD_DIR=$(BUILD_DIR)/$(CONFIGURATION)
22 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-tvOS-Dynamic.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/tvOS.xcconfig"
11 | #include "Shared/Product/DynamicFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.tvos
15 |
16 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-tvOS.Info.plist
17 |
18 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
19 | GCC_WARN_SHADOW = NO
20 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-tvOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/tvOS.xcconfig"
11 | #include "Shared/Product/StaticFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.tvos
15 |
16 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-tvOS.Info.plist
17 |
18 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
19 | GCC_WARN_SHADOW = NO
20 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-watchOS-Dynamic.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/watchOS.xcconfig"
11 | #include "Shared/Product/DynamicFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.watchos
15 |
16 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-watchOS.Info.plist
17 |
18 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
19 | GCC_WARN_SHADOW = NO
20 |
--------------------------------------------------------------------------------
/Parse/Configurations/Parse-watchOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/watchOS.xcconfig"
11 | #include "Shared/Product/StaticFramework.xcconfig"
12 |
13 | PRODUCT_NAME = Parse
14 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.watchos
15 |
16 | INFOPLIST_FILE = $(PROJECT_DIR)/Parse/Resources/Parse-watchOS.Info.plist
17 |
18 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
19 | GCC_WARN_SHADOW = NO
20 |
--------------------------------------------------------------------------------
/Parse/Configurations/ParseUnitTests-iOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/iOS.xcconfig"
11 | #include "Shared/Product/LogicTests.xcconfig"
12 |
13 | PRODUCT_NAME = ParseUnitTests-iOS
14 | PRODUCT_MODULE_NAME = ParseUnitTests
15 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.unit.ios
16 |
17 | SWIFT_VERSION = 5.0
18 |
19 | IPHONEOS_DEPLOYMENT_TARGET = 12.0
20 |
21 | INFOPLIST_FILE = $(SRCROOT)/Tests/Resources/ParseUnitTests-iOS-Info.plist
22 |
23 | USER_HEADER_SEARCH_PATHS = $(inherited) $(PARSE_DIR)/Parse/Internal/**
24 |
25 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
26 | GCC_WARN_SHADOW = NO
27 |
--------------------------------------------------------------------------------
/Parse/Configurations/ParseUnitTests-macOS.xcconfig:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2015-present, Parse, LLC.
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 | #include "Shared/Platform/macOS.xcconfig"
11 | #include "Shared/Product/LogicTests.xcconfig"
12 |
13 | PRODUCT_NAME = ParseUnitTests-macOS
14 | PRODUCT_MODULE_NAME = ParseUnitTests
15 | PRODUCT_BUNDLE_IDENTIFIER = com.parse.unit.macOS
16 |
17 | SWIFT_VERSION = 5.0
18 |
19 | INFOPLIST_FILE = $(SRCROOT)/Tests/Resources/ParseUnitTests-OSX-Info.plist
20 |
21 | USER_HEADER_SEARCH_PATHS = $(inherited) $(PARSE_DIR)/Parse/Internal/**
22 |
23 | // TODO: (nlutsenko) Cleanup source code so we can safely ignore local variable shadow warnings.
24 | GCC_WARN_SHADOW = NO
25 |
--------------------------------------------------------------------------------
/Parse/Configurations/Shared:
--------------------------------------------------------------------------------
1 | ../../Vendor/xctoolchain/Configurations
--------------------------------------------------------------------------------
/Parse/Parse.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Parse/Parse.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ACL/PFACLPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFACL.h"
13 |
14 | @class PFUser;
15 |
16 | @interface PFACL (Private)
17 |
18 | // Internal commands
19 |
20 | /*
21 | Gets the encoded format for an ACL.
22 | */
23 | - (NSDictionary *)encodeIntoDictionary:(NSError **)error;
24 |
25 | /*
26 | Creates a new ACL object from an existing dictionary.
27 | */
28 | - (instancetype)initWithDictionary:(NSDictionary *)dictionary;
29 |
30 | /**
31 | Creates an ACL from its encoded format.
32 | */
33 | + (instancetype)ACLWithDictionary:(NSDictionary *)dictionary;
34 |
35 | - (void)setShared:(BOOL)shared;
36 | - (BOOL)isShared;
37 | - (instancetype)createUnsharedCopy;
38 | - (BOOL)hasUnresolvedUser;
39 |
40 | + (instancetype)defaultACL;
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ACL/State/PFACLState_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFACLState.h"
11 |
12 | #import "PFMacros.h"
13 |
14 | /**
15 | Returns NSString representation of a property on PFACLState
16 |
17 | @param NAME The name of the property.
18 |
19 | @return NSString representaiton of a given property.
20 | */
21 | #define PFACLStatePropertyName(NAME) @keypath(PFACLState, NAME)
22 |
23 | @interface PFACLState () {
24 | @protected
25 | NSDictionary *_permissions;
26 | BOOL _shared;
27 | }
28 |
29 | @property (nonatomic, copy, readwrite) NSDictionary *permissions;
30 | @property (nonatomic, assign, readwrite, getter=isShared) BOOL shared;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ACL/State/PFMutableACLState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFACLState.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFMutableACLState : PFACLState
15 |
16 | @property (nonatomic, copy, readonly) NSMutableDictionary *permissions;
17 | @property (nonatomic, assign, readwrite, getter=isShared) BOOL shared;
18 |
19 | @end
20 |
21 | NS_ASSUME_NONNULL_END
22 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ACL/State/PFMutableACLState.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFMutableACLState.h"
11 |
12 | #import "PFACLState_Private.h"
13 |
14 | @implementation PFMutableACLState
15 |
16 | @dynamic permissions;
17 | @dynamic shared;
18 |
19 | ///--------------------------------------
20 | #pragma mark - Init
21 | ///--------------------------------------
22 |
23 | - (instancetype)init {
24 | self = [super init];
25 | if (!self) return self;
26 |
27 | _permissions = [NSMutableDictionary dictionary];
28 |
29 | return self;
30 | }
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Analytics/PFAnalytics_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFAnalytics.h"
11 |
12 | /**
13 | Predefined events - AppOpened, CrashReport
14 | Coming soon - Log, ...
15 | */
16 | extern NSString *const PFAnalyticsEventAppOpened;
17 | extern NSString *const PFAnalyticsEventCrashReport;
18 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Analytics/Utilities/PFAnalyticsUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFAnalyticsUtilities : NSObject
13 |
14 | /**
15 | Serializes and hexdigests an alert payload into a "push_hash" identifier
16 | for use in Analytics.
17 | Limitedly flexible - the payload is the value under the "alert" key in the
18 | "aps" hash of a remote notification, so we can reasonably assume that the
19 | complexity of its structure is limited to that accepted by Apple (in its
20 | "The Notification Payload" docs)
21 |
22 | @param payload `alert` value from a push notification.
23 |
24 | @return md5 identifier.
25 | */
26 | + (NSString *)md5DigestFromPushPayload:(id)payload;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/PFCommandRunning.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFCommandRunning.h"
11 |
12 | NSTimeInterval const PFCommandRunningDefaultRetryDelay = 1.0;
13 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/PFCommandRunningConstants.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFCommandRunningConstants.h"
11 |
12 | uint8_t const PFCommandRunningDefaultMaxAttemptsCount = 5;
13 |
14 | NSString *const PFCommandHeaderNameApplicationId = @"X-Parse-Application-Id";
15 | NSString *const PFCommandHeaderNameClientKey = @"X-Parse-Client-Key";
16 | NSString *const PFCommandHeaderNameClientVersion = @"X-Parse-Client-Version";
17 | NSString *const PFCommandHeaderNameInstallationId = @"X-Parse-Installation-Id";
18 | NSString *const PFCommandHeaderNameAppBuildVersion = @"X-Parse-App-Build-Version";
19 | NSString *const PFCommandHeaderNameAppDisplayVersion = @"X-Parse-App-Display-Version";
20 | NSString *const PFCommandHeaderNameOSVersion = @"X-Parse-OS-Version";
21 | NSString *const PFCommandHeaderNameSessionToken = @"X-Parse-Session-Token";
22 | NSString *const PFCommandHeaderNameRequestId = @"X-Parse-Request-Id";
23 |
24 | NSString *const PFCommandParameterNameMethodOverride = @"_method";
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/PFURLSessionCommandRunner.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFCommandRunning.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface PFURLSessionCommandRunner : NSObject
17 |
18 | - (instancetype)init NS_UNAVAILABLE;
19 | + (instancetype)new NS_UNAVAILABLE;
20 |
21 | + (instancetype)commandRunnerWithDataSource:(id)dataSource
22 | retryAttempts:(NSUInteger)retryAttempts
23 | applicationId:(NSString *)applicationId
24 | clientKey:(nullable NSString *)clientKey
25 | serverURL:(NSURL *)serverURL;
26 |
27 | @end
28 |
29 | NS_ASSUME_NONNULL_END
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/PFURLSessionCommandRunner_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFURLSessionCommandRunner.h"
11 |
12 | @class PFCommandURLRequestConstructor;
13 | @class PFURLSession;
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @interface PFURLSessionCommandRunner ()
18 |
19 | @property (nonatomic, strong, readonly) PFURLSession *session;
20 | @property (nonatomic, strong, readonly) PFCommandURLRequestConstructor *requestConstructor;
21 |
22 | - (instancetype)initWithDataSource:(id)dataSource
23 | session:(PFURLSession *)session
24 | requestConstructor:(PFCommandURLRequestConstructor *)requestConstructor
25 | notificationCenter:(NSNotificationCenter *)notificationCenter NS_DESIGNATED_INITIALIZER;
26 |
27 | @end
28 |
29 | NS_ASSUME_NONNULL_END
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/Session/PFURLSession_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFURLSession.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFURLSession ()
15 |
16 | - (instancetype)initWithURLSession:(NSURLSession *)session
17 | delegate:(id)delegate NS_DESIGNATED_INITIALIZER;
18 |
19 | + (instancetype)sessionWithURLSession:(NSURLSession *)session
20 | delegate:(id)delegate;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/Session/TaskDelegate/PFURLSessionDataTaskDelegate_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFURLSessionDataTaskDelegate.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFURLSessionDataTaskDelegate ()
15 |
16 | @property (nonatomic, strong, readonly) dispatch_queue_t dataQueue;
17 |
18 | /**
19 | Defaults to to-memory output stream if not overwritten.
20 | */
21 | @property (nonatomic, strong, readonly) NSOutputStream *dataOutputStream;
22 | @property (nonatomic, assign, readonly) uint64_t downloadedBytes;
23 |
24 | @property (nullable, nonatomic, strong) id result;
25 | @property (nullable, nonatomic, strong) NSError *error;
26 |
27 | @property (nullable, nonatomic, copy, readwrite) NSString *responseString;
28 |
29 | - (void)_taskDidFinish NS_REQUIRES_SUPER;
30 | - (void)_taskDidCancel NS_REQUIRES_SUPER;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/Session/TaskDelegate/PFURLSessionJSONDataTaskDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFURLSessionDataTaskDelegate.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface PFURLSessionJSONDataTaskDelegate : PFURLSessionDataTaskDelegate
17 |
18 | @end
19 |
20 | NS_ASSUME_NONNULL_END
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/CommandRunner/URLSession/Session/TaskDelegate/PFURLSessionUploadTaskDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | #import "PFURLSessionJSONDataTaskDelegate.h"
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | @interface PFURLSessionUploadTaskDelegate : PFURLSessionJSONDataTaskDelegate
19 |
20 | - (instancetype)initForDataTask:(NSURLSessionDataTask *)dataTask
21 | withCancellationToken:(nullable BFCancellationToken *)cancellationToken
22 | uploadProgressBlock:(nullable PFProgressBlock)progressBlock;
23 | + (instancetype)taskDelegateForDataTask:(NSURLSessionDataTask *)dataTask
24 | withCancellationToken:(nullable BFCancellationToken *)cancellationToken
25 | uploadProgressBlock:(nullable PFProgressBlock)progressBlock;
26 |
27 | @end
28 |
29 | NS_ASSUME_NONNULL_END
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTAnalyticsCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | extern NSString *const PFRESTAnalyticsEventNameAppOpened;
15 | extern NSString *const PFRESTAnalyticsEventNameCrashReport;
16 |
17 | @interface PFRESTAnalyticsCommand : PFRESTCommand
18 |
19 | + (instancetype)trackAppOpenedEventCommandWithPushHash:(nullable NSString *)pushHash
20 | sessionToken:(nullable NSString *)sessionToken;
21 |
22 | + (instancetype)trackEventCommandWithEventName:(NSString *)eventName
23 | dimensions:(nullable NSDictionary *)dimensions
24 | sessionToken:(nullable NSString *)sessionToken;
25 |
26 | + (instancetype)trackCrashReportCommandWithBreakpadDumpParameters:(NSDictionary *)parameters
27 | sessionToken:(nullable NSString *)sessionToken;
28 |
29 | @end
30 |
31 | NS_ASSUME_NONNULL_END
32 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTCloudCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFRESTCloudCommand : PFRESTCommand
15 |
16 | + (instancetype)commandForFunction:(NSString *)function
17 | withParameters:(nullable NSDictionary *)parameters
18 | sessionToken:(nullable NSString *)sessionToken
19 | error:(NSError **)error;
20 |
21 | @end
22 |
23 | NS_ASSUME_NONNULL_END
24 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTCloudCommand.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCloudCommand.h"
11 |
12 | #import "PFAssert.h"
13 | #import "PFHTTPRequest.h"
14 |
15 | @implementation PFRESTCloudCommand
16 |
17 | + (instancetype)commandForFunction:(NSString *)function
18 | withParameters:(NSDictionary *)parameters
19 | sessionToken:(NSString *)sessionToken
20 | error:(NSError **)error {
21 | NSString *path = [NSString stringWithFormat:@"functions/%@", function];
22 | return [self commandWithHTTPPath:path
23 | httpMethod:PFHTTPRequestMethodPOST
24 | parameters:parameters
25 | sessionToken:sessionToken
26 | error:error];
27 | }
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTCommand_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | @interface PFRESTCommand ()
13 |
14 | @property (nonatomic, copy, readwrite) NSString *sessionToken;
15 |
16 | @property (nonatomic, copy, readwrite) NSString *httpPath;
17 | @property (nonatomic, copy, readwrite) NSString *httpMethod;
18 |
19 | @property (nonatomic, copy, readwrite) NSDictionary *parameters;
20 |
21 | @property (nonatomic, copy, readwrite) NSString *cacheKey;
22 |
23 | @property (nonatomic, copy, readwrite) NSString *operationSetUUID;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTConfigCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFRESTConfigCommand : PFRESTCommand
15 |
16 | + (instancetype)configFetchCommandWithSessionToken:(nullable NSString *)sessionToken;
17 | + (instancetype)configUpdateCommandWithConfigParameters:(NSDictionary *)parameters
18 | sessionToken:(nullable NSString *)sessionToken;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTFileCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFRESTFileCommand : PFRESTCommand
15 |
16 | + (instancetype)uploadCommandForFileWithName:(NSString *)fileName
17 | sessionToken:(nullable NSString *)sessionToken;
18 |
19 | @end
20 |
21 | NS_ASSUME_NONNULL_END
22 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTFileCommand.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTFileCommand.h"
11 |
12 | #import "PFAssert.h"
13 | #import "PFHTTPRequest.h"
14 |
15 | @implementation PFRESTFileCommand
16 |
17 | + (instancetype)uploadCommandForFileWithName:(NSString *)fileName
18 | sessionToken:(NSString *)sessionToken {
19 | NSMutableString *httpPath = [@"files/" mutableCopy];
20 | if (fileName) {
21 | [httpPath appendString:fileName];
22 | }
23 | return [self commandWithHTTPPath:httpPath
24 | httpMethod:PFHTTPRequestMethodPOST
25 | parameters:nil
26 | sessionToken:sessionToken
27 | error:nil];
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTObjectBatchCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | #import "PFConstants.h"
13 |
14 | extern NSUInteger const PFRESTObjectBatchCommandSubcommandsLimit;
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | @interface PFRESTObjectBatchCommand : PFRESTCommand
19 |
20 | + (instancetype)batchCommandWithCommands:(NSArray *)commands
21 | sessionToken:(nullable NSString *)sessionToken
22 | serverURL:(NSURL *)serverURL
23 | error:(NSError **)error;
24 |
25 | @end
26 |
27 | NS_ASSUME_NONNULL_END
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTPushCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | #import "PFConstants.h"
13 |
14 | PF_WATCH_UNAVAILABLE_WARNING
15 |
16 | @class PFPushState;
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | PF_WATCH_UNAVAILABLE @interface PFRESTPushCommand : PFRESTCommand
21 |
22 | + (nullable instancetype)sendPushCommandWithPushState:(PFPushState *)state
23 | sessionToken:(nullable NSString *)sessionToken
24 | error:(NSError **)error;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTSessionCommand.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTCommand.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFRESTSessionCommand : PFRESTCommand
15 |
16 | + (instancetype)getCurrentSessionCommandWithSessionToken:(nullable NSString *)sessionToken;
17 |
18 | @end
19 |
20 | NS_ASSUME_NONNULL_END
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Commands/PFRESTSessionCommand.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRESTSessionCommand.h"
11 |
12 | #import "PFHTTPRequest.h"
13 |
14 | @implementation PFRESTSessionCommand
15 |
16 | + (instancetype)getCurrentSessionCommandWithSessionToken:(nullable NSString *)sessionToken {
17 | return [self commandWithHTTPPath:@"sessions/me"
18 | httpMethod:PFHTTPRequestMethodGET
19 | parameters:nil
20 | sessionToken:sessionToken
21 | error:nil];
22 | }
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Config/PFConfig_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConfig.h"
13 |
14 | extern NSString *const PFConfigParametersRESTKey;
15 |
16 | @interface PFConfig (Private)
17 |
18 | @property (atomic, copy, readonly) NSDictionary *parametersDictionary;
19 |
20 | - (instancetype)initWithFetchedConfig:(NSDictionary *)config;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/FieldOperation/PFFieldOperationDecoder.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFDecoder;
13 | @class PFFieldOperation;
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @interface PFFieldOperationDecoder : NSObject
18 |
19 | ///--------------------------------------
20 | #pragma mark - Init
21 | ///--------------------------------------
22 |
23 | + (instancetype)defaultDecoder;
24 |
25 | ///--------------------------------------
26 | #pragma mark - Decoding
27 | ///--------------------------------------
28 |
29 | /**
30 | Converts a parsed JSON object into a PFFieldOperation.
31 |
32 | @param encoded An NSDictionary containing an __op field.
33 | @return An NSObject that conforms to PFFieldOperation.
34 | */
35 | - (PFFieldOperation *)decode:(NSDictionary *)encoded withDecoder:(PFDecoder *)decoder;
36 |
37 | @end
38 |
39 | NS_ASSUME_NONNULL_END
40 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/Controller/PFFileUploadResult.m:
--------------------------------------------------------------------------------
1 | //
2 | // PFFileUploadResult.m
3 | // Parse
4 | //
5 | // Created by Ken Cooper on 2/21/17.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import "PFFileUploadResult.h"
10 |
11 | @implementation PFFileUploadResult
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/FileDataStream/PFFileDataStream.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | /**
15 | PFFileDataStream is an NSStream proxy which won't read the last byte of a file until the downlaod has finished.
16 |
17 | When downloading a file stream via `-[PFFileObject getDataDownloadStreamInBackground]`, we need to be able to read and write
18 | to the same file on disk concurrently.
19 |
20 | NSInputStream closes itself as soon as it hits EOF, so this class wraps an underlying NSInputStream and stops the
21 | stream from closing until after writing has finished.
22 | */
23 | @interface PFFileDataStream : NSProxy
24 |
25 | - (instancetype)initWithFileAtPath:(NSString *)path;
26 |
27 | - (void)stopBlocking;
28 |
29 | @end
30 |
31 | NS_ASSUME_NONNULL_END
32 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/PFFileObject_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 | #import "PFFileObject.h"
14 |
15 | #import "PFFileState.h"
16 |
17 | NS_ASSUME_NONNULL_BEGIN
18 |
19 | @interface PFFileObject (Private)
20 |
21 | @property (nonatomic, strong, readonly) PFFileState *state;
22 |
23 | + (instancetype)fileObjectWithName:(nullable NSString *)name url:(nullable NSString *)url;
24 |
25 | - (nullable NSString *)_cachedFilePath;
26 |
27 | @end
28 |
29 | NS_ASSUME_NONNULL_END
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/State/PFFileState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFBaseState.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface PFFileState : PFBaseState
17 |
18 | @property (nonatomic, copy, readonly) NSString *name;
19 | @property (nullable, nonatomic, copy, readonly) NSString *urlString;
20 | @property (nullable, nonatomic, copy, readonly) NSString *secureURLString;
21 |
22 | @property (nullable, nonatomic, copy, readonly) NSString *mimeType;
23 |
24 | ///--------------------------------------
25 | #pragma mark - Init
26 | ///--------------------------------------
27 |
28 | - (instancetype)initWithState:(PFFileState *)state;
29 | - (instancetype)initWithName:(nullable NSString *)name
30 | urlString:(nullable NSString *)urlString
31 | mimeType:(nullable NSString *)mimeType;
32 |
33 | @end
34 |
35 | NS_ASSUME_NONNULL_END
36 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/State/PFFileState_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFFileState.h"
11 |
12 | #import "PFMacros.h"
13 |
14 | /**
15 | Returns NSString representation of a property.
16 |
17 | @param NAME The name of the property.
18 |
19 | @return NSString representation of a given property.
20 | */
21 | #define PFFileStatePropertyName(NAME) @keypath(PFFileState, NAME)
22 |
23 | NS_ASSUME_NONNULL_BEGIN
24 |
25 | @interface PFFileState ()
26 |
27 | @property (nonatomic, copy, readwrite) NSString *name;
28 | @property (nullable, nonatomic, copy, readwrite) NSString *urlString;
29 | @property (nullable, nonatomic, copy, readwrite) NSString *mimeType;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/State/PFMutableFileState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFFileState.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFMutableFileState : PFFileState
15 |
16 | @property (nonatomic, copy, readwrite) NSString *name;
17 | @property (nullable, nonatomic, copy, readwrite) NSString *urlString;
18 | @property (nullable, nonatomic, copy, readwrite) NSString *mimeType;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/File/State/PFMutableFileState.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFMutableFileState.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @implementation PFMutableFileState
15 |
16 | @dynamic name;
17 | @dynamic urlString;
18 | @dynamic mimeType;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/HTTPRequest/PFHTTPRequest.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #ifndef Parse_PFHTTPRequest_h
11 | #define Parse_PFHTTPRequest_h
12 |
13 | #import
14 |
15 | static NSString *const PFHTTPRequestMethodGET = @"GET";
16 | static NSString *const PFHTTPRequestMethodHEAD = @"HEAD";
17 | static NSString *const PFHTTPRequestMethodDELETE = @"DELETE";
18 | static NSString *const PFHTTPRequestMethodPOST = @"POST";
19 | static NSString *const PFHTTPRequestMethodPUT = @"PUT";
20 |
21 | static NSString *const PFHTTPRequestHeaderNameContentType = @"Content-Type";
22 | static NSString *const PFHTTPRequestHeaderNameContentLength = @"Content-Length";
23 |
24 | #endif
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/HTTPRequest/PFHTTPURLRequestConstructor.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFHTTPURLRequestConstructor : NSObject
13 |
14 | + (NSMutableURLRequest *)urlRequestWithURL:(NSURL *)url
15 | httpMethod:(NSString *)httpMethod
16 | httpHeaders:(NSDictionary *)httpHeaders
17 | parameters:(NSDictionary *)parameters;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/HTTPRequest/PFURLConstructor.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFURLConstructor : NSObject
15 |
16 | + (NSURL *)URLFromAbsoluteString:(NSString *)string
17 | path:(nullable NSString *)path
18 | query:(nullable NSString *)query;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Installation/Constants/PFInstallationConstants.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | extern NSString *const PFInstallationKeyParseVersion;
13 | extern NSString *const PFInstallationKeyDeviceType;
14 | extern NSString *const PFInstallationKeyInstallationId;
15 | extern NSString *const PFInstallationKeyDeviceToken;
16 | extern NSString *const PFInstallationKeyAppName;
17 | extern NSString *const PFInstallationKeyAppVersion;
18 | extern NSString *const PFInstallationKeyAppIdentifier;
19 | extern NSString *const PFInstallationKeyTimeZone;
20 | extern NSString *const PFInstallationKeyLocaleIdentifier;
21 | extern NSString *const PFInstallationKeyBadge;
22 | extern NSString *const PFInstallationKeyChannels;
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Installation/Constants/PFInstallationConstants.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFInstallationConstants.h"
11 |
12 | NSString *const PFInstallationKeyParseVersion = @"parseVersion";
13 | NSString *const PFInstallationKeyDeviceType = @"deviceType";
14 | NSString *const PFInstallationKeyInstallationId = @"installationId";
15 | NSString *const PFInstallationKeyDeviceToken = @"deviceToken";
16 | NSString *const PFInstallationKeyAppName = @"appName";
17 | NSString *const PFInstallationKeyAppVersion = @"appVersion";
18 | NSString *const PFInstallationKeyAppIdentifier = @"appIdentifier";
19 | NSString *const PFInstallationKeyTimeZone = @"timeZone";
20 | NSString *const PFInstallationKeyLocaleIdentifier = @"localeIdentifier";
21 | NSString *const PFInstallationKeyBadge = @"badge";
22 | NSString *const PFInstallationKeyChannels = @"channels";
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Installation/Controller/PFInstallationController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFCoreDataProvider.h"
13 | #import "PFObjectControlling.h"
14 |
15 | PF_WATCH_UNAVAILABLE_WARNING
16 |
17 | NS_ASSUME_NONNULL_BEGIN
18 |
19 | PF_WATCH_UNAVAILABLE @interface PFInstallationController : NSObject
20 |
21 | @property (nonatomic, weak, readonly) id dataSource;
22 |
23 | ///--------------------------------------
24 | #pragma mark - Init
25 | ///--------------------------------------
26 |
27 | - (instancetype)init NS_UNAVAILABLE;
28 | - (instancetype)initWithDataSource:(id)dataSource;
29 | + (instancetype)controllerWithDataSource:(id)dataSource;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Installation/InstallationIdentifierStore/PFInstallationIdentifierStore_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFInstallationIdentifierStore.h"
11 |
12 | @interface PFInstallationIdentifierStore (Private)
13 |
14 | /**
15 | Clears in-memory cached installation identifier, if any.
16 | */
17 | - (BFTask *)_clearCachedInstallationIdentifierAsync;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Installation/PFInstallationPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFInstallation.h"
13 |
14 | PF_WATCH_UNAVAILABLE_WARNING
15 |
16 | @interface PFInstallation (Private)
17 |
18 | - (void)_clearDeviceToken;
19 | - (void)_markAllFieldsDirty;
20 |
21 | @end
22 |
23 | @interface PFInstallation ()
24 |
25 | // Private read-write declarations of publicly-readonly fields.
26 | @property (nonatomic, copy, readwrite) NSString *deviceType;
27 | @property (nonatomic, copy, readwrite) NSString *installationId;
28 | @property (nonatomic, copy, readwrite) NSString *timeZone;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/LocalDataStore/Pin/PFPin.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFObject.h"
13 | #import "PFSubclassing.h"
14 |
15 | extern NSString *const PFPinKeyName;
16 | extern NSString *const PFPinKeyObjects;
17 |
18 | /**
19 | PFPin represent internal pin implementation of PFObject's `pin`.
20 | */
21 | @interface PFPin : PFObject
22 |
23 | @property (nonatomic, copy) NSString *name;
24 | @property (nonatomic, strong) NSMutableArray *objects;
25 |
26 | ///--------------------------------------
27 | #pragma mark - Init
28 | ///--------------------------------------
29 |
30 | - (instancetype)initWithName:(NSString *)name;
31 | + (instancetype)pinWithName:(NSString *)name;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/LocalDataStore/SQLite/PFSQLiteDatabase_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFSQLiteDatabase.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFSQLiteDatabase ()
15 |
16 | @property (nonatomic, strong, readonly) BFTask *databaseClosedTask;
17 |
18 | @end
19 |
20 | NS_ASSUME_NONNULL_END
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/LocalDataStore/SQLite/PFSQLiteStatement.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | /**
15 | PFSQLiteStatement is sqlite3_stmt wrapper class.
16 | */
17 | typedef struct sqlite3_stmt sqlite3_stmt;
18 |
19 | @interface PFSQLiteStatement : NSObject
20 |
21 | @property (nullable, nonatomic, assign, readonly) sqlite3_stmt *sqliteStatement;
22 | @property (nonatomic, strong, readonly) dispatch_queue_t databaseQueue;
23 |
24 | - (instancetype)initWithStatement:(sqlite3_stmt *)stmt queue:(dispatch_queue_t)databaseQueue;
25 |
26 | - (BOOL)close;
27 | - (BOOL)reset;
28 |
29 | @end
30 |
31 | NS_ASSUME_NONNULL_END
32 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/MultiProcessLock/PFMultiProcessFileLock.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | //TODO: (nlutsenko) Add unit tests for this class.
13 | @interface PFMultiProcessFileLock : NSObject
14 |
15 | @property (nonatomic, copy, readonly) NSString *filePath;
16 | @property (nonatomic, copy, readonly) NSString *lockFilePath;
17 |
18 | ///--------------------------------------
19 | #pragma mark - Init
20 | ///--------------------------------------
21 |
22 | - (instancetype)init NS_UNAVAILABLE;
23 | + (instancetype)new NS_UNAVAILABLE;
24 |
25 | - (instancetype)initForFileWithPath:(NSString *)path NS_DESIGNATED_INITIALIZER;
26 | + (instancetype)lockForFileWithPath:(NSString *)path;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/MultiProcessLock/PFMultiProcessFileLockController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | //TODO: (nlutsenko) Add unit tests for this class.
13 | @interface PFMultiProcessFileLockController : NSObject
14 |
15 | //TODO: (nlutsenko) Re-consider using singleton here.
16 | + (instancetype)sharedController;
17 |
18 | /**
19 | Increments the content access counter by 1.
20 | If the count was 0 - this will try to acquire the file lock first.
21 |
22 | @param filePath Path to a file to lock access to.
23 | */
24 | - (void)beginLockedContentAccessForFileAtPath:(NSString *)filePath;
25 |
26 | /**
27 | Decrements the content access counter by 1.
28 | If the count reaches 0 - the lock is going to be released.
29 |
30 | @param filePath Path to a file to lock access to.
31 | */
32 | - (void)endLockedContentAccessForFileAtPath:(NSString *)filePath;
33 |
34 | - (NSUInteger)lockedContentAccessCountForFileAtPath:(NSString *)filePath;
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Coder/File/PFObjectFileCoder.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFDecoder;
13 | @class PFEncoder;
14 | @class PFObject;
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | /**
19 | Handles encoding/decoding of `PFObject`s into a /2 JSON format.
20 | /2 format is only used for persisting `currentUser`, `currentInstallation` to disk when LDS is not enabled.
21 | */
22 | @interface PFObjectFileCoder : NSObject
23 |
24 | ///--------------------------------------
25 | #pragma mark - Encode
26 | ///--------------------------------------
27 |
28 | + (NSData *)dataFromObject:(PFObject *)object usingEncoder:(PFEncoder *)encoder;
29 |
30 | ///--------------------------------------
31 | #pragma mark - Decode
32 | ///--------------------------------------
33 |
34 | + (PFObject *)objectFromData:(NSData *)data usingDecoder:(PFDecoder *)decoder;
35 |
36 | @end
37 |
38 | NS_ASSUME_NONNULL_END
39 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Coder/File/PFObjectFileCodingLogic.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFDecoder;
13 | @class PFObject;
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @interface PFObjectFileCodingLogic : NSObject
18 |
19 | ///--------------------------------------
20 | #pragma mark - Init
21 | ///--------------------------------------
22 |
23 | + (instancetype)codingLogic;
24 |
25 | ///--------------------------------------
26 | #pragma mark - Logic
27 | ///--------------------------------------
28 |
29 | - (void)updateObject:(PFObject *)object fromDictionary:(NSDictionary *)dictionary usingDecoder:(PFDecoder *)decoder;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Constants/PFObjectConstants.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | // REST Key magic strings
13 | extern NSString *const PFObjectCompleteRESTKey;
14 | extern NSString *const PFObjectOperationsRESTKey;
15 | extern NSString *const PFObjectTypeRESTKey;
16 | extern NSString *const PFObjectObjectIdRESTKey;
17 | extern NSString *const PFObjectUpdatedAtRESTKey;
18 | extern NSString *const PFObjectCreatedAtRESTKey;
19 | extern NSString *const PFObjectIsDeletingEventuallyRESTKey;
20 | extern NSString *const PFObjectClassNameRESTKey;
21 | extern NSString *const PFObjectACLRESTKey;
22 |
23 | extern NSString *const PFObjectDefaultPin;
24 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Constants/PFObjectConstants.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObjectConstants.h"
11 |
12 | NSString *const PFObjectCompleteRESTKey = @"__complete";
13 | NSString *const PFObjectOperationsRESTKey = @"__operations";
14 | NSString *const PFObjectTypeRESTKey = @"__type";
15 | NSString *const PFObjectObjectIdRESTKey = @"objectId";
16 | NSString *const PFObjectUpdatedAtRESTKey = @"updatedAt";
17 | NSString *const PFObjectCreatedAtRESTKey = @"createdAt";
18 | NSString *const PFObjectIsDeletingEventuallyRESTKey = @"isDeletingEventually";
19 | NSString *const PFObjectClassNameRESTKey = @"className";
20 | NSString *const PFObjectACLRESTKey = @"ACL";
21 |
22 | NSString *const PFObjectDefaultPin = @"_default";
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Controller/OfflineController/PFOfflineObjectController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObjectController.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFOfflineObjectController : PFObjectController
15 |
16 | @property (nonatomic, weak, readonly) id dataSource;
17 |
18 | ///--------------------------------------
19 | #pragma mark - Init
20 | ///--------------------------------------
21 |
22 | - (instancetype)initWithDataSource:(id)dataSource NS_DESIGNATED_INITIALIZER;
23 | + (instancetype)controllerWithDataSource:(id)dataSource;
24 |
25 | @end
26 |
27 | NS_ASSUME_NONNULL_END
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Controller/PFObjectController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFDataProvider.h"
13 | #import "PFObjectControlling.h"
14 |
15 | @class BFTask<__covariant BFGenericType>;
16 | @class PFObject;
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | @interface PFObjectController : NSObject
21 |
22 | @property (nonatomic, weak, readonly) id dataSource;
23 |
24 | ///--------------------------------------
25 | #pragma mark - Init
26 | ///--------------------------------------
27 |
28 | - (instancetype)init NS_UNAVAILABLE;
29 | + (instancetype)new NS_UNAVAILABLE;
30 |
31 | - (instancetype)initWithDataSource:(id)dataSource NS_DESIGNATED_INITIALIZER;
32 | + (instancetype)controllerWithDataSource:(id)dataSource;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Controller/PFObjectController_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObjectController.h"
11 |
12 | @class PFRESTCommand;
13 |
14 | @interface PFObjectController ()
15 |
16 | ///--------------------------------------
17 | #pragma mark - Fetch
18 | ///--------------------------------------
19 |
20 | - (BFTask *)_runFetchCommand:(PFRESTCommand *)command forObject:(PFObject *)object;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/CurrentController/PFCurrentObjectControlling.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @class BFTask<__covariant BFGenericType>;
17 | @class PFObject;
18 |
19 | typedef NS_ENUM(NSUInteger, PFCurrentObjectStorageType) {
20 | PFCurrentObjectStorageTypeFile = 1,
21 | PFCurrentObjectStorageTypeOfflineStore,
22 | };
23 |
24 | @protocol PFCurrentObjectControlling
25 |
26 | @property (nonatomic, assign, readonly) PFCurrentObjectStorageType storageType;
27 |
28 | ///--------------------------------------
29 | #pragma mark - Current
30 | ///--------------------------------------
31 |
32 | - (BFTask *)getCurrentObjectAsync;
33 | - (BFTask *)saveCurrentObjectAsync:(PFObject *)object;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Subclassing/PFObjectSubclassInfo.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFPropertyInfo;
13 |
14 | @interface PFObjectSubclassInfo : NSObject
15 |
16 | @property (atomic, strong) Class subclass;
17 |
18 | - (instancetype)init NS_UNAVAILABLE;
19 | + (instancetype)new NS_UNAVAILABLE;
20 |
21 | - (instancetype)initWithSubclass:(Class)kls NS_DESIGNATED_INITIALIZER;
22 | + (instancetype)subclassInfoWithSubclass:(Class)kls;
23 |
24 | - (PFPropertyInfo *)propertyInfoForSelector:(SEL)cmd isSetter:(BOOL *)isSetter;
25 | - (NSMethodSignature *)forwardingMethodSignatureForSelector:(SEL)cmd;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Subclassing/PFObjectSubclassingController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFObject;
13 | @protocol PFSubclassing;
14 |
15 | @interface PFObjectSubclassingController : NSObject
16 |
17 | ///--------------------------------------
18 | #pragma mark - Registration
19 | ///--------------------------------------
20 |
21 | - (void)scanForUnregisteredSubclasses:(BOOL)shouldSubscribe;
22 |
23 | - (Class)subclassForParseClassName:(NSString *)parseClassName;
24 | - (void)registerSubclass:(Class)kls;
25 | - (void)unregisterSubclass:(Class)kls;
26 |
27 | ///--------------------------------------
28 | #pragma mark - Forwarding
29 | ///--------------------------------------
30 |
31 | - (NSMethodSignature *)forwardingMethodSignatureForSelector:(SEL)cmd ofClass:(Class)kls;
32 | - (BOOL)forwardObjectInvocation:(NSInvocation *)invocation withObject:(PFObject *)object;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Object/Utilities/PFObjectUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @class PFFieldOperation;
15 | @class PFOperationSet;
16 |
17 | @interface PFObjectUtilities : NSObject
18 |
19 | ///--------------------------------------
20 | #pragma mark - Operations
21 | ///--------------------------------------
22 |
23 | + (nullable id)newValueByApplyingFieldOperation:(PFFieldOperation *)operation
24 | toDictionary:(NSMutableDictionary *)dictionary
25 | forKey:(NSString *)key;
26 | + (void)applyOperationSet:(PFOperationSet *)operationSet toDictionary:(NSMutableDictionary *)dictionary;
27 |
28 | ///--------------------------------------
29 | #pragma mark - Equality
30 | ///--------------------------------------
31 |
32 | + (BOOL)isObject:(nullable id)objectA equalToObject:(nullable id)objectB;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFAlertView.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | PF_OSX_UNAVAILABLE_WARNING
15 | PF_WATCH_UNAVAILABLE_WARNING
16 |
17 | typedef void(^PFAlertViewCompletion)(NSUInteger selectedOtherButtonIndex);
18 |
19 | PF_OSX_UNAVAILABLE PF_WATCH_UNAVAILABLE @interface PFAlertView : NSObject
20 |
21 | + (void)showAlertWithTitle:(NSString *)title
22 | message:(NSString *)message
23 | cancelButtonTitle:(NSString *)cancelButtonTitle
24 | otherButtonTitles:(NSArray *)otherButtonTitles
25 | completion:(PFAlertViewCompletion)completion NS_EXTENSION_UNAVAILABLE_IOS("");
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFApplication.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | #if TARGET_OS_IOS || TARGET_OS_TV
15 | #import
16 | #elif TARGET_OS_WATCH
17 | @class UIApplication;
18 | #elif PF_TARGET_OS_OSX
19 | #import
20 | @compatibility_alias UIApplication NSApplication;
21 | #endif
22 |
23 | /**
24 | `PFApplication` class provides a centralized way to get the information about the current application,
25 | or the environment it's running in. Please note, that all device specific things - should go to .
26 | */
27 | @interface PFApplication : NSObject
28 |
29 | @property (nonatomic, strong, readonly) UIApplication *systemApplication;
30 |
31 | @property (nonatomic, assign, readonly, getter=isAppStoreEnvironment) BOOL appStoreEnvironment;
32 | @property (nonatomic, assign, readonly, getter=isExtensionEnvironment) BOOL extensionEnvironment;
33 |
34 | @property (nonatomic, assign) NSInteger iconBadgeNumber;
35 |
36 | + (instancetype)currentApplication;
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFAsyncTaskQueue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #if __has_include()
13 | #import
14 | #else
15 | #import "BFTask.h"
16 | #endif
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | @interface PFAsyncTaskQueue : NSObject
21 |
22 | + (instancetype)taskQueue;
23 |
24 | - (BFTask *)enqueue:(BFContinuationBlock)block;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFBase64Encoder.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFBase64Encoder : NSObject
13 |
14 | + (NSData *)dataFromBase64String:(NSString *)string;
15 | + (NSString *)base64StringFromData:(NSData *)data;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFBase64Encoder.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFBase64Encoder.h"
11 |
12 | @implementation PFBase64Encoder
13 |
14 | + (NSData *)dataFromBase64String:(NSString *)string {
15 | if (!string) {
16 | return [NSData data];
17 | }
18 | return [[NSData alloc] initWithBase64EncodedString:string options:NSDataBase64DecodingIgnoreUnknownCharacters];
19 | }
20 |
21 | + (NSString *)base64StringFromData:(NSData *)data {
22 | if (!data) {
23 | return [NSString string];
24 | }
25 | return [data base64EncodedStringWithOptions:0];
26 | }
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFCategoryLoader.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFCategoryLoader : NSObject
13 |
14 | + (void)loadPrivateCategories;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFCategoryLoader.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFCategoryLoader.h"
11 |
12 | #import "BFTask+Private.h"
13 |
14 | @implementation PFCategoryLoader
15 |
16 | + (void)loadPrivateCategories {
17 | forceLoadCategory_BFTask_Private();
18 | }
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFCommandCache_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFCommandCache.h"
11 |
12 | @interface PFCommandCache ()
13 |
14 | - (void)_setDiskCacheSize:(unsigned long long)diskCacheSize;
15 |
16 | @end;
17 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFCommandResult.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFCommandResult.h"
11 |
12 | #import "PFAssert.h"
13 |
14 | @implementation PFCommandResult
15 |
16 | ///--------------------------------------
17 | #pragma mark - Init
18 | ///--------------------------------------
19 |
20 | - (instancetype)initWithResult:(NSDictionary *)result
21 | resultString:(NSString *)resultString
22 | httpResponse:(NSHTTPURLResponse *)response {
23 | self = [super init];
24 | if (!self) return nil;
25 |
26 | _result = result;
27 | _resultString = [resultString copy];
28 | _httpResponse = response;
29 |
30 | return self;
31 | }
32 |
33 | + (instancetype)commandResultWithResult:(NSDictionary *)result
34 | resultString:(NSString *)resultString
35 | httpResponse:(NSHTTPURLResponse *)response {
36 | return [[self alloc] initWithResult:result resultString:resultString httpResponse:response];
37 | }
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFDevice.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFDevice : NSObject
13 |
14 | @property (nonatomic, copy, readonly) NSString *detailedModel;
15 |
16 | @property (nonatomic, copy, readonly) NSString *operatingSystemFullVersion;
17 | @property (nonatomic, copy, readonly) NSString *operatingSystemVersion;
18 | @property (nonatomic, copy, readonly) NSString *operatingSystemBuild;
19 |
20 | @property (nonatomic, assign, readonly, getter=isJailbroken) BOOL jailbroken;
21 |
22 | + (instancetype)currentDevice;
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFGeoPointPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFGeoPoint.h"
13 |
14 | extern const double EARTH_RADIUS_MILES;
15 | extern const double EARTH_RADIUS_KILOMETERS;
16 |
17 | @class PFGeoPoint;
18 |
19 | @interface PFGeoPoint (Private)
20 |
21 | // Internal commands
22 |
23 | /*
24 | Gets the encoded format for an GeoPoint.
25 | */
26 | - (NSDictionary *)encodeIntoDictionary:(NSError **)error;
27 |
28 | /**
29 | Creates an GeoPoint from its encoded format.
30 | */
31 | + (instancetype)geoPointWithDictionary:(NSDictionary *)dictionary;
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFHash.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | extern NSUInteger PFIntegerPairHash(NSUInteger a, NSUInteger b);
13 |
14 | extern NSUInteger PFDoublePairHash(double a, double b);
15 |
16 | extern NSUInteger PFDoubleHash(double d);
17 |
18 | extern NSUInteger PFLongHash(unsigned long long l);
19 |
20 | extern NSString *PFMD5HashFromData(NSData *data);
21 | extern NSString *PFMD5HashFromString(NSString *string);
22 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFKeychainStore.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | extern NSString *const PFKeychainStoreDefaultService;
15 |
16 | /**
17 | PFKeychainStore is NSUserDefaults-like wrapper on top of Keychain.
18 | It supports any object, with NSCoding support. Every object is serialized using NSKeyedArchiver.
19 |
20 | All objects are available after the first device unlock and are not backed up.
21 | */
22 | @interface PFKeychainStore : NSObject
23 |
24 | - (instancetype)init NS_UNAVAILABLE;
25 | + (instancetype)new NS_UNAVAILABLE;
26 |
27 | - (instancetype)initWithService:(NSString *)service NS_DESIGNATED_INITIALIZER;
28 |
29 | - (nullable id)objectForKey:(NSString *)key;
30 | - (nullable id)objectForKeyedSubscript:(NSString *)key;
31 |
32 | - (BOOL)setObject:(nullable id)object forKey:(NSString *)key;
33 | - (BOOL)setObject:(nullable id)object forKeyedSubscript:(NSString *)key;
34 | - (BOOL)removeObjectForKey:(NSString *)key;
35 | - (BOOL)removeAllObjects;
36 |
37 | @end
38 |
39 | NS_ASSUME_NONNULL_END
40 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFMemoryEventuallyQueue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFEventuallyQueue.h"
11 |
12 | PF_IOS_UNAVAILABLE_WARNING
13 | PF_OSX_UNAVAILABLE_WARNING
14 | PF_WATCH_UNAVAILABLE_WARNING
15 |
16 | PF_IOS_UNAVAILABLE PF_OSX_UNAVAILABLE PF_WATCH_UNAVAILABLE @interface PFMemoryEventuallyQueue : PFEventuallyQueue
17 |
18 | + (instancetype)newDefaultMemoryEventuallyQueueWithDataSource:(id)dataSource;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFMulticastDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | /**
13 | Represents an event that can be subscribed to by multiple observers.
14 | */
15 | @interface PFMulticastDelegate : NSObject
16 |
17 | /**
18 | Subscribes a block for callback.
19 |
20 | Important: if you ever plan to be able to unsubscribe the block, you must copy the block
21 | before passing it to subscribe, and use the same instance for unsubscribe.
22 | */
23 | - (void)subscribe:(void(^)(id result, NSError *error))block;
24 | - (void)unsubscribe:(void(^)(id result, NSError *error))block;
25 | - (void)invoke:(id)result error:(NSError *)error;
26 | - (void)clear;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFMulticastDelegate.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFMulticastDelegate.h"
11 |
12 | @interface PFMulticastDelegate () {
13 | NSMutableArray *_callbacks;
14 | }
15 |
16 | @end
17 |
18 | @implementation PFMulticastDelegate
19 |
20 | - (instancetype)init {
21 | self = [super init];
22 | if (!self) return nil;
23 |
24 | _callbacks = [[NSMutableArray alloc] init];
25 |
26 | return self;
27 | }
28 |
29 | - (void)subscribe:(void(^)(id result, NSError *error))block {
30 | [_callbacks addObject:block];
31 | }
32 |
33 | - (void)unsubscribe:(void(^)(id result, NSError *error))block {
34 | [_callbacks removeObject:block];
35 | }
36 |
37 | - (void)invoke:(id)result error:(NSError *)error {
38 | NSArray *callbackCopy = [_callbacks copy];
39 | for (void (^block)(id result, NSError *error) in callbackCopy) {
40 | block(result, error);
41 | }
42 | }
43 | - (void)clear {
44 | [_callbacks removeAllObjects];
45 | }
46 |
47 | @end
48 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFPinningEventuallyQueue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFEventuallyQueue.h"
13 |
14 | @interface PFPinningEventuallyQueue : PFEventuallyQueue
15 |
16 | ///--------------------------------------
17 | #pragma mark - Init
18 | ///--------------------------------------
19 |
20 | + (instancetype)newDefaultPinningEventuallyQueueWithDataSource:(id)dataSource;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFPolygonPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPolygon.h"
13 |
14 | @class PFPolygon;
15 |
16 | @interface PFPolygon (Private)
17 |
18 | // Internal commands
19 |
20 | /*
21 | Gets the encoded format for a Polygon.
22 | */
23 | - (NSDictionary *)encodeIntoDictionary:(NSError **)error;
24 |
25 | /**
26 | Creates a Polygon from its encoded format.
27 | */
28 | + (instancetype)polygonWithDictionary:(NSDictionary *)dictionary;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFTaskQueue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | @class BFTask<__covariant BFGenericType>;
15 |
16 | @interface PFTaskQueue : NSObject
17 |
18 | // The lock for this task queue.
19 | @property (nonatomic, strong, readonly) NSObject *mutex;
20 |
21 | /**
22 | Enqueues a task created by the given block. Then block is given a task to
23 | await once state is snapshotted (e.g. after capturing session tokens at the
24 | time of the save call. Awaiting this task will wait for the created task's
25 | turn in the queue.
26 | */
27 | - (BFTask *)enqueue:(BFTask *(^)(BFTask *toAwait))taskStart;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFWeakValue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFWeakValue : NSObject
13 |
14 | @property (nonatomic, weak, readonly) id weakObject;
15 |
16 | + (instancetype)valueWithWeakObject:(id)object;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PFWeakValue.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFWeakValue.h"
11 |
12 | @interface PFWeakValue ()
13 |
14 | @property (nonatomic, weak, readwrite) id weakObject;
15 |
16 | @end
17 |
18 | @implementation PFWeakValue
19 |
20 | + (instancetype)valueWithWeakObject:(id)object {
21 | PFWeakValue *value = [[self alloc] init];
22 | value.weakObject = object;
23 | return value;
24 | }
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ParseInternal.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "Parse.h"
13 |
14 | #import "PFAssert.h"
15 | #import "PFCommandCache.h"
16 | #import "PFEventuallyQueue.h"
17 | #import "PFFieldOperation.h"
18 | #import "PFGeoPointPrivate.h"
19 | #import "PFPolygonPrivate.h"
20 | #import "PFInternalUtils.h"
21 | #import "PFKeyValueCache.h"
22 | #import "PFObjectPrivate.h"
23 | #import "PFUserPrivate.h"
24 | #import "ParseModule.h"
25 |
26 | @interface Parse (ParseModules)
27 |
28 | + (void)enableParseModule:(id)module;
29 | + (void)disableParseModule:(id)module;
30 | + (BOOL)isModuleEnabled:(id)module;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ParseManagerPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "ParseManager.h"
11 |
12 | @interface ParseManager ()
13 |
14 | - (void)setCommandRunner:(id)commandRunner;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ParseModule.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #if __has_include()
13 | #import
14 | #else
15 | #import "Bolts.h"
16 | #endif
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | @protocol ParseModule
21 |
22 | - (BFTask *)parseDidInitializeWithApplicationId:(NSString *)applicationId clientKey:(nullable NSString *)clientKey;
23 |
24 | @end
25 |
26 | @interface ParseModuleCollection : NSObject
27 |
28 | @property (nonatomic, assign, readonly) NSUInteger modulesCount;
29 |
30 | - (void)addParseModule:(id)module;
31 | - (void)removeParseModule:(id)module;
32 |
33 | - (BOOL)containsModule:(id)module;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Parse_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "Parse.h"
13 |
14 | #import "ParseManager.h"
15 |
16 | @class PFEventuallyQueue;
17 |
18 | @interface Parse ()
19 |
20 | + (void)_resetDataSharingIdentifiers;
21 |
22 | + (ParseManager *)_currentManager;
23 | + (void)_clearCurrentManager;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Persistence/Group/PFFilePersistenceGroup.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPersistenceGroup.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | typedef NS_OPTIONS(NSUInteger, PFFilePersistenceGroupOptions) {
17 | PFFilePersistenceGroupOptionUseFileLocks = 1 << 0,
18 | };
19 |
20 | @interface PFFilePersistenceGroup : NSObject
21 |
22 | @property (nonatomic, copy, readonly) NSString *storageDirectoryPath;
23 | @property (nonatomic, assign, readonly) PFFilePersistenceGroupOptions options;
24 |
25 | - (instancetype)initWithStorageDirectoryPath:(NSString *)path
26 | options:(PFFilePersistenceGroupOptions)options;
27 |
28 | @end
29 |
30 | NS_ASSUME_NONNULL_END
31 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Persistence/Group/PFPersistenceGroup.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | @class BFTask<__covariant BFGenericType>;
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | @protocol PFPersistenceGroup
19 |
20 | ///--------------------------------------
21 | #pragma mark - Data
22 | ///--------------------------------------
23 |
24 | - (BFTask *)getDataAsyncForKey:(NSString *)key;
25 |
26 | - (BFTask *)setDataAsync:(NSData *)data forKey:(NSString *)key;
27 | - (BFTask *)removeDataAsyncForKey:(NSString *)key;
28 |
29 | - (BFTask *)removeAllDataAsync;
30 |
31 | ///--------------------------------------
32 | #pragma mark - Access
33 | ///--------------------------------------
34 |
35 | - (BFTask *)beginLockedContentAccessAsyncToDataForKey:(NSString *)key;
36 | - (BFTask *)endLockedContentAccessAsyncToDataForKey:(NSString *)key;
37 |
38 | @end
39 |
40 | NS_ASSUME_NONNULL_END
41 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Persistence/Group/PFUserDefaultsPersistenceGroup.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPersistenceGroup.h"
13 |
14 | @interface PFUserDefaultsPersistenceGroup : NSObject
15 |
16 | @property (nonatomic, copy, readonly) NSString *key;
17 | @property (nonatomic, strong, readonly) NSUserDefaults *userDefaults;
18 |
19 | ///--------------------------------------
20 | #pragma mark - Init
21 | ///--------------------------------------
22 |
23 | - (instancetype)init NS_UNAVAILABLE;
24 | - (instancetype)initWithKey:(NSString *)key;
25 | - (instancetype)initWithKey:(NSString *)key userDefaults:(NSUserDefaults *)userDefaults NS_DESIGNATED_INITIALIZER;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Product/PFProduct+Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFProduct.h"
11 |
12 | typedef enum {
13 | PFProductDownloadStateStart,
14 | PFProductDownloadStateDownloading,
15 | PFProductDownloadStateDownloaded
16 | } PFProductDownloadState;
17 |
18 | @interface PFProduct () {
19 | NSDecimalNumber *price;
20 | NSLocale *priceLocale;
21 | NSInteger progress;
22 | NSString *contentPath;
23 | }
24 |
25 | /// The properties below are transient properties, not stored on Parse's server.
26 | /**
27 | The price of the product, discovered via iTunes Connect.
28 | */
29 | @property (nonatomic, strong) NSDecimalNumber *price;
30 |
31 | /**
32 | The price locale of the product.
33 | */
34 | @property (nonatomic, strong) NSLocale *priceLocale;
35 |
36 | /**
37 | The progress of the download, if one is in progress. It's an integer between 0 and 100.
38 | */
39 | @property (nonatomic, assign) NSInteger progress;
40 |
41 | /**
42 | The content path of the download.
43 | */
44 | @property (nonatomic, strong) NSString *contentPath;
45 |
46 | @end
47 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/PropertyInfo/PFPropertyInfo_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPropertyInfo.h"
13 |
14 | @interface PFPropertyInfo ()
15 |
16 | @property (atomic, assign, readonly) Class sourceClass;
17 | @property (atomic, assign, readonly, getter=isObject) BOOL object;
18 |
19 | @property (atomic, copy, readonly) NSString *typeEncoding;
20 | @property (atomic, assign, readonly) Ivar ivar;
21 |
22 | @property (atomic, assign, readonly) SEL getterSelector;
23 | @property (atomic, assign, readonly) SEL setterSelector;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Purchase/PaymentTransactionObserver/PFPaymentTransactionObserver_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFPaymentTransactionObserver.h"
11 |
12 | @interface PFPaymentTransactionObserver ()
13 |
14 | @property (nonatomic, strong) NSMutableDictionary *blocks;
15 | @property (nonatomic, strong) NSMutableDictionary *runOnceBlocks;
16 | @property (nonatomic, strong) NSObject *lockObj;
17 | @property (nonatomic, strong) NSObject *runOnceLockObj;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Push/PFPushPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPush.h"
13 |
14 | #import "PFMacros.h"
15 |
16 | PF_WATCH_UNAVAILABLE_WARNING
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | @protocol PFPushInternalUtils
21 |
22 | @optional
23 | + (NSString *)convertDeviceTokenToString:(id)deviceToken;
24 | + (nullable NSString *)getDeviceTokenFromKeychain;
25 | + (void)clearDeviceToken;
26 |
27 | #if TARGET_OS_IOS
28 |
29 | + (void)showAlertViewWithTitle:(nullable NSString *)title message:(nullable NSString *)message NS_EXTENSION_UNAVAILABLE_IOS("");
30 | + (void)playVibrate;
31 | + (void)playAudioWithName:(nullable NSString *)audioName;
32 |
33 | #endif
34 |
35 | @end
36 |
37 | @interface PFPush (Private)
38 |
39 | // For unit testability
40 | + (Class)pushInternalUtilClass;
41 | + (void)setPushInternalUtilClass:(nullable Class)utilClass;
42 |
43 | @end
44 |
45 | NS_ASSUME_NONNULL_END
46 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Push/State/PFMutablePushState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFPushState.h"
11 |
12 | PF_WATCH_UNAVAILABLE_WARNING
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | PF_WATCH_UNAVAILABLE @interface PFMutablePushState : PFPushState
17 |
18 | @property (nullable, nonatomic, copy, readwrite) NSSet *channels;
19 | @property (nullable, nonatomic, copy, readwrite) PFQueryState *queryState;
20 |
21 | @property (nullable, nonatomic, strong, readwrite) NSDate *expirationDate;
22 | @property (nullable, nonatomic, strong, readwrite) NSNumber *expirationTimeInterval;
23 | @property (nullable, nonatomic, strong, readwrite) NSDate *pushDate;
24 |
25 | @property (nullable, nonatomic, copy, readwrite) NSDictionary *payload;
26 |
27 | ///--------------------------------------
28 | #pragma mark - Payload
29 | ///--------------------------------------
30 |
31 | - (void)setPayloadWithMessage:(nullable NSString *)message;
32 |
33 | @end
34 |
35 | NS_ASSUME_NONNULL_END
36 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Push/State/PFMutablePushState.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFMutablePushState.h"
11 |
12 | #import "PFPushState_Private.h"
13 |
14 | @implementation PFMutablePushState
15 |
16 | @dynamic channels;
17 | @dynamic queryState;
18 | @dynamic expirationDate;
19 | @dynamic expirationTimeInterval;
20 | @dynamic pushDate;
21 | @dynamic payload;
22 |
23 | ///--------------------------------------
24 | #pragma mark - Payload
25 | ///--------------------------------------
26 |
27 | - (void)setPayloadWithMessage:(NSString *)message {
28 | if (!message) {
29 | self.payload = nil;
30 | } else {
31 | self.payload = @{ @"alert" : [message copy] };
32 | }
33 | }
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Push/State/PFPushState_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFPushState.h"
11 |
12 | /**
13 | Returns NSString representation of a property.
14 |
15 | @param NAME The name of the property.
16 |
17 | @return NSString representation of a given property.
18 | */
19 | #define PFPushStatePropertyName(NAME) @keypath(PFPushState, NAME)
20 |
21 | NS_ASSUME_NONNULL_BEGIN
22 |
23 | @interface PFPushState ()
24 |
25 | @property (nullable, nonatomic, copy, readwrite) NSSet *channels;
26 | @property (nullable, nonatomic, copy, readwrite) PFQueryState *queryState;
27 |
28 | @property (nullable, nonatomic, strong, readwrite) NSDate *expirationDate;
29 | @property (nullable, nonatomic, strong, readwrite) NSNumber *expirationTimeInterval;
30 | @property (nullable, nonatomic, strong, readwrite) NSDate *pushDate;
31 |
32 | @property (nullable, nonatomic, copy, readwrite) NSDictionary *payload;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Push/Utilites/PFPushUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFPushPrivate.h"
13 |
14 | PF_WATCH_UNAVAILABLE_WARNING
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | PF_WATCH_UNAVAILABLE @interface PFPushUtilities : NSObject
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Query/Controller/PFCachedQueryController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFQueryController.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface PFCachedQueryController : PFQueryController
17 |
18 | @property (nonatomic, weak, readonly) id commonDataSource;
19 |
20 | - (instancetype)initWithCommonDataSource:(id)dataSource;
21 | + (instancetype)controllerWithCommonDataSource:(id)dataSource;
22 |
23 | @end
24 |
25 | NS_ASSUME_NONNULL_END
26 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Query/PFQueryPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFQuery.h"
13 |
14 | #import "PFQueryState.h"
15 |
16 | @class BFTask<__covariant BFGenericType>;
17 | @class PFObject;
18 |
19 | @interface PFQuery (Private)
20 |
21 | @property (nonatomic, strong, readonly) PFQueryState *state;
22 |
23 | - (instancetype)whereRelatedToObject:(PFObject *)parent fromKey:(NSString *)key;
24 | - (void)redirectClassNameForKey:(NSString *)key;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Query/Utilities/PFQueryUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface PFQueryUtilities : NSObject
13 |
14 | ///--------------------------------------
15 | #pragma mark - Predicate
16 | ///--------------------------------------
17 |
18 | /**
19 | Takes an arbitrary predicate and normalizes it to a form that can easily be converted to a `PFQuery`.
20 | */
21 | + (NSPredicate *)predicateByNormalizingPredicate:(NSPredicate *)predicate;
22 |
23 | ///--------------------------------------
24 | #pragma mark - Regex
25 | ///--------------------------------------
26 |
27 | /**
28 | Converts a string into a regex that matches it.
29 |
30 | @param string String to convert from.
31 |
32 | @return Query regex string from a string.
33 | */
34 | + (NSString *)regexStringForString:(NSString *)string;
35 |
36 | ///--------------------------------------
37 | #pragma mark - Errors
38 | ///--------------------------------------
39 |
40 | + (NSError *)objectNotFoundError;
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Relation/PFRelationPrivate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFRelation.h"
13 |
14 | @class PFDecoder;
15 |
16 | @interface PFRelation (Private)
17 |
18 | + (PFRelation *)relationForObject:(PFObject *)parent forKey:(NSString *)key;
19 | + (PFRelation *)relationWithTargetClass:(NSString *)targetClass;
20 | + (PFRelation *)relationFromDictionary:(NSDictionary *)dictionary withDecoder:(PFDecoder *)decoder;
21 | - (void)ensureParentIs:(PFObject *)someParent andKeyIs:(NSString *)someKey;
22 | - (NSDictionary *)encodeIntoDictionary:(NSError **)error;
23 | - (BOOL)_hasKnownObject:(PFObject *)object;
24 | - (void)_addKnownObject:(PFObject *)object;
25 | - (void)_removeKnownObject:(PFObject *)object;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Relation/State/PFMutableRelationState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRelationState.h"
11 |
12 | @interface PFMutableRelationState : PFRelationState
13 |
14 | @property (nonatomic, weak, readwrite) PFObject *parent;
15 | @property (nonatomic, copy, readwrite) NSString *targetClass;
16 | @property (nonatomic, copy, readonly) NSMutableSet *knownObjects;
17 | @property (nonatomic, copy, readwrite) NSString *key;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Relation/State/PFRelationState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFBaseState.h"
11 |
12 | @class PFObject;
13 |
14 | @interface PFRelationState : PFBaseState
15 |
16 | @property (nonatomic, weak, readonly) PFObject *parent;
17 | @property (nonatomic, copy, readonly) NSString *parentClassName;
18 | @property (nonatomic, copy, readonly) NSString *parentObjectId;
19 | @property (nonatomic, copy, readonly) NSString *targetClass;
20 | @property (nonatomic, copy, readonly) NSSet *knownObjects;
21 | @property (nonatomic, copy, readonly) NSString *key;
22 |
23 | ///--------------------------------------
24 | #pragma mark - Init
25 | ///--------------------------------------
26 |
27 | - (instancetype)initWithState:(PFRelationState *)otherState;
28 | + (instancetype)stateWithState:(PFRelationState *)otherState;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Relation/State/PFRelationState_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFRelationState.h"
11 |
12 | #import "PFMacros.h"
13 |
14 | /**
15 | Returns NSString representation of a property.
16 |
17 | @param NAME The name of the property.
18 |
19 | @return NSString representation of a given property.
20 | */
21 | #define PFRelationStatePropertyName(NAME) @keypath(PFRelationState, NAME)
22 |
23 | @interface PFRelationState() {
24 | @protected
25 | __weak PFObject *_parent;
26 | NSString *_parentClassName;
27 | NSString *_parentObjectId;
28 | NSSet *_knownObjects;
29 | NSString *_key;
30 | }
31 |
32 | @property (nonatomic, weak, readwrite) PFObject *parent;
33 | @property (nonatomic, copy, readwrite) NSString *parentClassName;
34 | @property (nonatomic, copy, readwrite) NSString *parentObjectId;
35 | @property (nonatomic, copy, readwrite) NSString *targetClass;
36 | @property (nonatomic, copy, readwrite) NSSet *knownObjects;
37 | @property (nonatomic, copy, readwrite) NSString *key;
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Session/Controller/PFSessionController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | #import "PFDataProvider.h"
15 |
16 | @class BFTask<__covariant BFGenericType>;
17 | @class PFSession;
18 |
19 | NS_ASSUME_NONNULL_BEGIN
20 |
21 | @interface PFSessionController : NSObject
22 |
23 | @property (nonatomic, weak, readonly) id dataSource;
24 |
25 | ///--------------------------------------
26 | #pragma mark - Init
27 | ///--------------------------------------
28 |
29 | - (instancetype)initWithDataSource:(id)dataSource;
30 | + (instancetype)controllerWithDataSource:(id)dataSource;
31 |
32 | ///--------------------------------------
33 | #pragma mark - Current Session
34 | ///--------------------------------------
35 |
36 | - (BFTask *)getCurrentSessionAsyncWithSessionToken:(nullable NSString *)sessionToken;
37 |
38 | @end
39 |
40 | NS_ASSUME_NONNULL_END
41 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Session/PFSession_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFSession.h"
13 |
14 | @class PFSessionController;
15 |
16 | @interface PFSession ()
17 |
18 | ///--------------------------------------
19 | #pragma mark - Session Controller
20 | ///--------------------------------------
21 |
22 | + (PFSessionController *)sessionController;
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Session/Utilities/PFSessionUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFSessionUtilities : NSObject
15 |
16 | ///--------------------------------------
17 | #pragma mark - Session Token
18 | ///--------------------------------------
19 |
20 | + (BOOL)isSessionTokenRevocable:(nullable NSString *)sessionToken;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/Session/Utilities/PFSessionUtilities.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFSessionUtilities.h"
11 |
12 | @implementation PFSessionUtilities
13 |
14 | ///--------------------------------------
15 | #pragma mark - Session Token
16 | ///--------------------------------------
17 |
18 | + (BOOL)isSessionTokenRevocable:(NSString *)sessionToken {
19 | return (sessionToken && [sessionToken rangeOfString:@"r:"].location != NSNotFound);
20 | }
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ThreadSafety/PFThreadsafety.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | extern dispatch_queue_t PFThreadsafetyCreateQueueForObject(id object);
13 | extern void PFThreadsafetySafeDispatchSync(dispatch_queue_t queue, dispatch_block_t block);
14 |
15 |
16 | // PFThreadsafetySafeDispatchSync, but with a return type.
17 | #define PFThreadSafetyPerform(queue, block) ({ \
18 | __block typeof((block())) result; \
19 | PFThreadsafetySafeDispatchSync(queue, ^{ result = block(); }); \
20 | result; \
21 | })
22 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/ThreadSafety/PFThreadsafety.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFThreadsafety.h"
11 |
12 | static void *const PFThreadsafetyQueueIDKey = (void *)&PFThreadsafetyQueueIDKey;
13 |
14 | dispatch_queue_t PFThreadsafetyCreateQueueForObject(id object) {
15 | NSString *label = [NSStringFromClass([object class]) stringByAppendingString:@".synchronizationQueue"];
16 | dispatch_queue_t queue = dispatch_queue_create(label.UTF8String, DISPATCH_QUEUE_SERIAL);
17 |
18 | void *uuid = calloc(1, sizeof(uuid));
19 | dispatch_queue_set_specific(queue, PFThreadsafetyQueueIDKey, uuid, free);
20 |
21 | return queue;
22 | }
23 |
24 | void PFThreadsafetySafeDispatchSync(dispatch_queue_t queue, dispatch_block_t block) {
25 | void *uuidMine = dispatch_get_specific(PFThreadsafetyQueueIDKey);
26 | void *uuidOther = dispatch_queue_get_specific(queue, PFThreadsafetyQueueIDKey);
27 |
28 | if (uuidMine == uuidOther) {
29 | block();
30 | } else {
31 | dispatch_sync(queue, block);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/AuthenticationProviders/Providers/Anonymous/PFAnonymousAuthenticationProvider.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFUserAuthenticationDelegate.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | extern NSString *const PFAnonymousUserAuthenticationType;
17 |
18 | @interface PFAnonymousAuthenticationProvider : NSObject
19 |
20 | /**
21 | Gets auth data with a fresh UUID.
22 | */
23 | @property (nonatomic, copy, readonly) NSDictionary *authData;
24 |
25 | @end
26 |
27 | NS_ASSUME_NONNULL_END
28 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/AuthenticationProviders/Providers/Anonymous/PFAnonymousAuthenticationProvider.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFAnonymousAuthenticationProvider.h"
11 |
12 | #if __has_include()
13 | #import
14 | #else
15 | #import "BFTask.h"
16 | #endif
17 |
18 | NSString *const PFAnonymousUserAuthenticationType = @"anonymous";
19 |
20 | @implementation PFAnonymousAuthenticationProvider
21 |
22 | ///--------------------------------------
23 | #pragma mark - PFAnonymousAuthenticationProvider
24 | ///--------------------------------------
25 |
26 | - (BOOL)restoreAuthenticationWithAuthData:(NSDictionary *)authData {
27 | return YES;
28 | }
29 |
30 | ///--------------------------------------
31 | #pragma mark - Accessors
32 | ///--------------------------------------
33 |
34 | - (NSDictionary *)authData {
35 | NSString *uuidString = [NSUUID UUID].UUIDString;
36 | uuidString = uuidString.lowercaseString;
37 | return @{ @"id" : uuidString };
38 | }
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/AuthenticationProviders/Providers/Anonymous/PFAnonymousUtils_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFAnonymousUtils.h"
11 |
12 | @class PFAnonymousAuthenticationProvider;
13 | @class PFUser;
14 |
15 | @interface PFAnonymousUtils (Private)
16 |
17 | + (PFAnonymousAuthenticationProvider *)_authenticationProvider;
18 | + (void)_clearAuthenticationProvider;
19 |
20 | + (PFUser *)_lazyLogIn;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/Coder/File/PFUserFileCodingLogic.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObjectFileCodingLogic.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFUserFileCodingLogic : PFObjectFileCodingLogic
15 |
16 | @end
17 |
18 | NS_ASSUME_NONNULL_END
19 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/Constants/PFUserConstants.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | extern NSString *const PFUserUsernameRESTKey;
13 | extern NSString *const PFUserPasswordRESTKey;
14 | extern NSString *const PFUserSessionTokenRESTKey;
15 | extern NSString *const PFUserAuthDataRESTKey;
16 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/Constants/PFUserConstants.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFUserConstants.h"
11 |
12 | NSString *const PFUserUsernameRESTKey = @"username";
13 | NSString *const PFUserPasswordRESTKey = @"password";
14 | NSString *const PFUserSessionTokenRESTKey = @"sessionToken";
15 | NSString *const PFUserAuthDataRESTKey = @"authData";
16 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/State/PFMutableUserState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFUserState.h"
11 |
12 | @interface PFMutableUserState : PFUserState
13 |
14 | @property (nonatomic, copy, readwrite) NSString *sessionToken;
15 | @property (nonatomic, copy, readwrite) NSDictionary *authData;
16 |
17 | @property (nonatomic, assign, readwrite) BOOL isNew;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/State/PFMutableUserState.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFMutableUserState.h"
11 |
12 | #import "PFUserState_Private.h"
13 |
14 | @implementation PFMutableUserState
15 |
16 | @dynamic sessionToken;
17 | @dynamic authData;
18 | @dynamic isNew;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/State/PFUserState.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObjectState.h"
11 |
12 | @class PFMutableUserState;
13 |
14 | typedef void(^PFUserStateMutationBlock)(PFMutableUserState *state);
15 |
16 | @interface PFUserState : PFObjectState
17 |
18 | @property (nonatomic, copy, readonly) NSString *sessionToken;
19 | @property (nonatomic, copy, readonly) NSDictionary *authData;
20 |
21 | @property (nonatomic, assign, readonly) BOOL isNew;
22 |
23 | ///--------------------------------------
24 | #pragma mark - Init
25 | ///--------------------------------------
26 |
27 | - (instancetype)initWithState:(PFUserState *)state;
28 | - (instancetype)initWithState:(PFUserState *)state mutatingBlock:(PFUserStateMutationBlock)block;
29 | + (instancetype)stateWithState:(PFUserState *)state;
30 |
31 | ///--------------------------------------
32 | #pragma mark - Mutating
33 | ///--------------------------------------
34 |
35 | - (PFUserState *)copyByMutatingWithBlock:(PFUserStateMutationBlock)block;
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/Parse/Parse/Internal/User/State/PFUserState_Private.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFUserState.h"
11 |
12 | @interface PFUserState () {
13 | @protected
14 | NSString *_sessionToken;
15 | NSDictionary *_authData;
16 |
17 | BOOL _isNew;
18 | }
19 |
20 | @property (nonatomic, copy, readwrite) NSString *sessionToken;
21 | @property (nonatomic, copy, readwrite) NSDictionary *authData;
22 |
23 | @property (nonatomic, assign, readwrite) BOOL isNew;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/Parse/Parse/Resources/Parse-OSX.Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | Parse
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundlePackageType
14 | FMWK
15 | CFBundleShortVersionString
16 | 5.1.1
17 | CFBundleSignature
18 | ????
19 | CFBundleVersion
20 | 5.1.1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Parse/Parse/Resources/Parse-iOS.Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | Parse
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundlePackageType
14 | FMWK
15 | CFBundleShortVersionString
16 | 5.1.1
17 | CFBundleSignature
18 | ????
19 | CFBundleSupportedPlatforms
20 |
21 | iPhoneOS
22 |
23 | CFBundleVersion
24 | 5.1.1
25 | MinimumOSVersion
26 | 12.0
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Parse/Parse/Resources/Parse-tvOS.Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 5.1.1
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Parse/Parse/Resources/Parse-watchOS.Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 5.1.1
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Parse/Parse/Resources/en.lproj/Parse.strings:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/Parse/Parse/Resources/en.lproj/Parse.strings
--------------------------------------------------------------------------------
/Parse/Parse/Source/PFFileUploadResult.h:
--------------------------------------------------------------------------------
1 | //
2 | // PFFileUploadResult.h
3 | // Parse
4 | //
5 | // Created by Ken Cooper on 2/21/17.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | /**
12 | Response provided by a custom `PFFileUploadController`.
13 | */
14 | @interface PFFileUploadResult : NSObject
15 | @property (strong, nonatomic) NSString *url;
16 | @property (strong, nonatomic) NSString *name;
17 | @end
18 |
--------------------------------------------------------------------------------
/Parse/Parse/Source/PFUserAuthenticationDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import "PFConstants.h"
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | /**
17 | Provides a general interface for delegation of third party authentication with `PFUser`s.
18 | */
19 | @protocol PFUserAuthenticationDelegate
20 |
21 | /**
22 | Called when restoring third party authentication credentials that have been serialized,
23 | such as session keys, user id, etc.
24 |
25 | @note This method will be executed on a background thread.
26 |
27 | @param authData The auth data for the provider. This value may be `nil` when unlinking an account.
28 |
29 | @return `YES` - if the `authData` was succesfully synchronized,
30 | or `NO` if user should not longer be associated because of bad `authData`.
31 | */
32 | - (BOOL)restoreAuthenticationWithAuthData:(nullable NSDictionary *)authData;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/Parse/ParseUnitTests-iOS-host/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // ParseUnitTests-iOS-host
4 | //
5 | // Created by Florent Vilmart on 17-08-28.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Parse/ParseUnitTests-iOS-host/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // ParseUnitTests-iOS-host
4 | //
5 | // Created by Florent Vilmart on 17-08-28.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Parse/ParseUnitTests-iOS-host/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // ParseUnitTests-iOS-host
4 | //
5 | // Created by Florent Vilmart on 17-08-28.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 |
11 | @interface ViewController ()
12 |
13 | @end
14 |
15 | @implementation ViewController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 | // Do any additional setup after loading the view, typically from a nib.
20 | }
21 |
22 |
23 | - (void)didReceiveMemoryWarning {
24 | [super didReceiveMemoryWarning];
25 | // Dispose of any resources that can be recreated.
26 | }
27 |
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/Parse/ParseUnitTests-iOS-host/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // ParseUnitTests-iOS-host
4 | //
5 | // Created by Florent Vilmart on 17-08-28.
6 | // Copyright © 2017 Parse Inc. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/Cache/TestCache.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | /**
13 | Because OCMock is not thread-safe, let's create our own class that implements NSCache.
14 | Note that we don't inherit from NSCache, so we still get 'strict mock' functionality. We cannot do expectations
15 | this way, however.
16 | */
17 | @interface TestCache : NSObject
18 |
19 | + (NSCache *)cache;
20 |
21 | - (id)objectForKey:(id)key;
22 | - (void)setObject:(id)object forKey:(id)aKey;
23 | - (void)removeObjectForKey:(id)aKey;
24 | - (void)removeAllObjects;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/ExtensionDataSharing/PFExtensionDataSharingTestHelper.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | @interface PFExtensionDataSharingTestHelper : NSObject
13 |
14 | @property (nonatomic, assign) BOOL swizzledGroupContainerDirectoryPath;
15 | @property (nonatomic, assign) BOOL runningInExtensionEnvironment;
16 |
17 | + (NSString *)sharedTestDirectoryPath;
18 | + (NSString *)sharedTestDirectoryPathForGroupIdentifier:(NSString *)groupIdentifier;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/FileManager/TestFileManager.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | @interface TestFileManager : NSObject
13 |
14 | + (NSFileManager *)fileManager;
15 |
16 | - (NSData *)contentsAtPath:(NSString *)path;
17 | - (BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr;
18 | - (BOOL) removeItemAtURL:(NSURL *)URL error:(NSError **)error;
19 | - (BOOL)createDirectoryAtURL:(NSURL *)url
20 | withIntermediateDirectories:(BOOL)createIntermediates
21 | attributes:(NSDictionary *)attributes
22 | error:(NSError **)error;
23 | - (NSDirectoryEnumerator *)enumeratorAtPath:(NSString *)path;
24 | - (NSDictionary *)attributesOfItemAtPath:(NSString *)path error:(NSError **)error;
25 | - (BOOL)setAttributes:(NSDictionary *)attributes ofItemAtPath:(NSString *)path error:(NSError **)error;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/LocationManager/CLLocationManager+TestAdditions.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import CoreLocation;
11 |
12 | #define CL_DEFAULT_LATITUDE 37.7937
13 | #define CL_DEFAULT_LONGITUDE -122.3967
14 |
15 | @interface CLLocationManager (TestAdditions)
16 |
17 | // Used to simulate a delay in finding + returning updated location.
18 | + (void)setMockingEnabled:(BOOL)enabled;
19 | + (void)setAuthorizationStatus:(CLAuthorizationStatus)status;
20 |
21 | + (void)setReturnLocation:(BOOL)doReturnLocation;
22 | + (void)setWillFail:(BOOL)doFail;
23 | + (void)reset;
24 |
25 | - (void)overriddenStartUpdatingLocation;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/NetworkMocking/PFMockURLProtocol.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | #import "PFMockURLResponse.h"
13 |
14 | typedef BOOL(^PFMockURLProtocolRequestTestBlock)(NSURLRequest *request);
15 | typedef PFMockURLResponse*(^PFMockURLResponseContructingBlock)(NSURLRequest *request);
16 |
17 | @interface PFMockURLProtocol : NSURLProtocol
18 |
19 | + (void)mockRequestsWithResponse:(PFMockURLResponseContructingBlock)constructingBlock;
20 | + (void)mockRequestsPassingTest:(PFMockURLProtocolRequestTestBlock)testBlock
21 | withResponse:(PFMockURLResponseContructingBlock)constructingBlock;
22 | + (void)mockRequestsPassingTest:(PFMockURLProtocolRequestTestBlock)testBlock
23 | withResponse:(PFMockURLResponseContructingBlock)constructingBlock
24 | forAttempts:(NSUInteger)attemptsCount;
25 |
26 | + (void)removeAllMocking;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/OCMock/OCMock+Parse.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class PFRESTCommand;
13 |
14 | @interface OCMockObject (PFCommandRunning)
15 |
16 | - (void)mockCommandResult:(id)result forCommandsPassingTest:(BOOL (^)(PFRESTCommand *command))block;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKPaymentQueue.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import StoreKit;
11 |
12 | @interface PFTestSKPaymentQueue : SKPaymentQueue
13 |
14 | + (void)setCanMakePayments:(BOOL)canMakePayments;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKPaymentTransaction.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import StoreKit;
11 |
12 | @interface PFTestSKPaymentTransaction : SKPaymentTransaction
13 |
14 | @property (nonatomic, strong) NSError *error;
15 | @property (nonatomic, strong) SKPaymentTransaction *originalTransaction;
16 | @property (nonatomic, strong) SKPayment *payment;
17 | @property (nonatomic, strong) NSDate *transactionDate;
18 | @property (nonatomic, copy) NSString *transactionIdentifier;
19 | @property (nonatomic, strong) NSData *transactionReceipt;
20 | @property (nonatomic, assign) SKPaymentTransactionState transactionState;
21 |
22 | + (instancetype)transactionForPayment:(SKPayment *)payment
23 | withError:(NSError *)error
24 | inState:(SKPaymentTransactionState)state;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKPaymentTransaction.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFTestSKPaymentTransaction.h"
11 |
12 | @implementation PFTestSKPaymentTransaction
13 |
14 | @synthesize
15 | error = _error,
16 | originalTransaction = _originalTransaction,
17 | payment = _payment,
18 | transactionDate = _transactionDate,
19 | transactionIdentifier = _transactionIdentifier,
20 | transactionReceipt = _transactionReceipt,
21 | transactionState = _transactionState;
22 |
23 | + (instancetype)transactionForPayment:(SKPayment *)payment
24 | withError:(NSError *)error
25 | inState:(SKPaymentTransactionState)state {
26 | PFTestSKPaymentTransaction *transaction = [[self alloc] init];
27 | transaction.payment = payment;
28 | transaction.error = error;
29 | transaction.transactionState = state;
30 | return transaction;
31 | }
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKProduct.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import StoreKit;
11 |
12 | @interface PFTestSKProduct : SKProduct
13 |
14 | + (instancetype)productWithProductIdentifier:(NSString *)productIdentifier
15 | price:(NSDecimalNumber *)price
16 | title:(NSString *)title
17 | description:(NSString *)description;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKProductsRequest.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import StoreKit;
11 |
12 | @interface PFTestSKProductsRequest : SKProductsRequest
13 |
14 | + (void)setValidProducts:(NSSet *)products;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKProductsResponse.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import StoreKit;
11 |
12 | @interface PFTestSKProductsResponse : SKProductsResponse
13 |
14 | - (instancetype)initWithProducts:(NSArray *)products
15 | invalidProductIdentifiers:(NSArray *)invalidProductIdentifiers NS_DESIGNATED_INITIALIZER;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/StoreKitMocking/PFTestSKProductsResponse.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFTestSKProductsResponse.h"
11 |
12 | #import "PFAssert.h"
13 |
14 | @interface PFTestSKProductsResponse ()
15 |
16 | @property (nonatomic, copy) NSArray *products;
17 | @property (nonatomic, copy) NSArray *invalidProductIdentifiers;
18 |
19 | @end
20 |
21 | @implementation PFTestSKProductsResponse
22 |
23 | @synthesize products = _products;
24 | @synthesize invalidProductIdentifiers = _invalidProductIdentifiers;
25 |
26 | - (instancetype)init {
27 | return [self initWithProducts:nil invalidProductIdentifiers:nil];
28 | }
29 |
30 | - (instancetype)initWithProducts:(NSArray *)products
31 | invalidProductIdentifiers:(NSArray *)invalidProductIdentifiers {
32 | self = [super init];
33 | if (!self) return nil;
34 |
35 | _products = [products copy];
36 | _invalidProductIdentifiers = [invalidProductIdentifiers copy];
37 |
38 | return self;
39 | }
40 |
41 | @end
42 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/Swizzling/PFTestSwizzledMethod.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | @interface PFTestSwizzledMethod : NSObject
13 |
14 | @property (nonatomic, assign, getter=isSwizzled) BOOL swizzled;
15 |
16 | - (instancetype)initWithOriginalSelector:(SEL)originalSelector
17 | inClass:(Class)originalClass
18 | replacementSelector:(SEL)replacementSelector
19 | inClass:(Class)replcementClass;
20 |
21 | - (instancetype)initWithOriginalSelector:(SEL)originalSelector
22 | inClass:(Class)originalClass
23 | replacementSelector:(SEL)replacementSelector
24 | inClass:(Class)replcementClass
25 | isClassMethod:(BOOL)isClassMethod;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/Swizzling/PFTestSwizzlingUtilities.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | @import Foundation;
11 |
12 | #import "PFConstants.h"
13 |
14 | #import "PFTestSwizzledMethod.h"
15 |
16 | @interface PFTestSwizzlingUtilities : NSObject
17 |
18 | + (PFTestSwizzledMethod *)swizzleMethod:(SEL)originalSelector
19 | withMethod:(SEL)overrideSelector
20 | inClass:(Class)aClass;
21 | + (PFTestSwizzledMethod *)swizzleMethod:(SEL)originalSelector
22 | inClass:(Class)originalClass
23 | withMethod:(SEL)overrideSelector
24 | inClass:(Class)overrideClass;
25 | + (PFTestSwizzledMethod *)swizzleClassMethod:(SEL)originalSelector
26 | inClass:(Class)aClass
27 | withMethod:(SEL)overrideSelector
28 | inClass:(Class)overrideClass;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Tests/Other/TestCases/UnitTestCase/PFUnitTestCase.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFTestCase.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface PFUnitTestCase : PFTestCase
15 |
16 | @property (nonatomic, copy, readonly) NSString *applicationId;
17 | @property (nonatomic, copy, readonly) NSString *clientKey;
18 |
19 | ///--------------------------------------
20 | #pragma mark - XCTestCase
21 | ///--------------------------------------
22 |
23 | - (void)setUp NS_REQUIRES_SUPER;
24 | - (void)tearDown NS_REQUIRES_SUPER;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/ACLDefaultTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFUnitTestCase.h"
11 |
12 | #import "PFACLPrivate.h"
13 |
14 | @interface ACLDefaultTests : PFUnitTestCase
15 |
16 | @end
17 |
18 | @implementation ACLDefaultTests
19 |
20 | - (void)testDefaultACL {
21 | PFACL *newACL = [PFACL ACL];
22 | [newACL setPublicReadAccess:YES];
23 | [newACL setShared:YES];
24 |
25 | XCTAssertNotEqualObjects(newACL, [PFACL defaultACL]);
26 | [PFACL setDefaultACL:newACL withAccessForCurrentUser:YES];
27 | XCTAssertEqualObjects(newACL, [PFACL defaultACL]);
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/FileCommandTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFHTTPRequest.h"
11 | #import "PFRESTFileCommand.h"
12 | #import "PFTestCase.h"
13 |
14 | @interface FileCommandTests : PFTestCase
15 |
16 | @end
17 |
18 | @implementation FileCommandTests
19 |
20 | - (void)testUploadFileCommand {
21 | PFRESTFileCommand *command = [PFRESTFileCommand uploadCommandForFileWithName:@"a" sessionToken:@"yolo"];
22 | XCTAssertNotNil(command);
23 | XCTAssertEqualObjects(command.httpPath, @"files/a");
24 | XCTAssertEqualObjects(command.httpMethod, PFHTTPRequestMethodPOST);
25 | XCTAssertNil(command.parameters);
26 | XCTAssertEqualObjects(command.sessionToken, @"yolo");
27 | }
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/IncrementUnitTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFObject.h"
11 | #import "PFTestCase.h"
12 |
13 | @interface IncrementUnitTests : PFTestCase
14 |
15 | @end
16 |
17 | @implementation IncrementUnitTests
18 |
19 | - (void)testIncrementWorksOnlyOnNumbers {
20 | PFObject *object = [PFObject objectWithClassName:@"Test"];
21 | object[@"score"] = @"foo";
22 |
23 | PFAssertThrowsInvalidArgumentException([object incrementKey:@"score"]);
24 | PFAssertThrowsInvalidArgumentException([object incrementKey:@"score" byAmount:@1]);
25 | }
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/PinUnitTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFPin.h"
11 | #import "PFUnitTestCase.h"
12 | #import "Parse_Private.h"
13 |
14 | @interface PinUnitTests : PFUnitTestCase
15 |
16 | @end
17 |
18 | @implementation PinUnitTests
19 |
20 | ///--------------------------------------
21 | #pragma mark - Tests
22 | ///--------------------------------------
23 |
24 | - (void)testAccessors {
25 | PFPin *pin = [[PFPin alloc] init];
26 |
27 | pin.name = @"Matcha";
28 | pin.objects = [@[ @"Green Tea" ] mutableCopy];
29 |
30 | XCTAssertEqualObjects(@"Matcha", pin.name);
31 | XCTAssertEqualObjects(@"Green Tea", pin.objects[0]);
32 | }
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/ProductTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFProduct.h"
11 | #import "PFUnitTestCase.h"
12 | #import "PFObjectPrivate.h"
13 |
14 | @interface ProductTests : PFUnitTestCase
15 |
16 | @end
17 |
18 | @implementation ProductTests
19 |
20 | - (void)testSubclass {
21 | XCTAssertNotNil([PFProduct parseClassName]);
22 |
23 | XCTAssertNoThrow([PFProduct object]);
24 | PFAssertThrowsInvalidArgumentException([[PFProduct alloc] initWithClassName:@"Yarr"]);
25 | }
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Parse/Tests/Unit/SessionUtilitiesTests.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "PFSessionUtilities.h"
11 | #import "PFTestCase.h"
12 |
13 | @interface SessionUtilitiesTests : PFTestCase
14 |
15 | @end
16 |
17 | @implementation SessionUtilitiesTests
18 |
19 | - (void)testRevocableSessionToken {
20 | XCTAssertTrue([PFSessionUtilities isSessionTokenRevocable:@"r:blahblahblah"]);
21 | }
22 |
23 | - (void)testRevocableSesionTokenWithMiddleToken {
24 | XCTAssertTrue([PFSessionUtilities isSessionTokenRevocable:@"blahr:blah"]);
25 | }
26 |
27 | - (void)testRevocableSessionTokenFromNil {
28 | XCTAssertFalse([PFSessionUtilities isSessionTokenRevocable:nil]);
29 | }
30 |
31 | - (void)testRevocableSessionTokenFromBadToken {
32 | XCTAssertFalse([PFSessionUtilities isSessionTokenRevocable:@"blahblah"]);
33 | }
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/Parse/Tests/testServer.config:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/Parse/Tests/testServer.config
--------------------------------------------------------------------------------
/ParseLiveQuery/.gitignore:
--------------------------------------------------------------------------------
1 | Package.resolved
2 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | $(PRODUCT_NAME)
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 1.0
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 1
25 | LSMinimumSystemVersion
26 | $(MACOSX_DEPLOYMENT_TARGET)
27 | NSHumanReadableCopyright
28 | Copyright © 2016 Parse. All rights reserved.
29 | NSPrincipalClass
30 | NSApplication
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC/Message.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | @import ParseCore;
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface Message : PFObject
15 |
16 | @property (nullable, nonatomic, strong) PFUser *author;
17 | @property (nullable, nonatomic, strong) NSString *authorName;
18 | @property (nullable, nonatomic, strong) NSString *message;
19 | @property (nullable, nonatomic, strong) PFObject *room;
20 | @property (nullable, nonatomic, strong) NSString *roomName;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC/Message.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | #import "Message.h"
11 |
12 | @implementation Message
13 |
14 | @dynamic author, authorName, message, room, roomName;
15 |
16 | + (NSString *)parseClassName {
17 | return @"Message";
18 | }
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC/Room.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | @import ParseCore;
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface Room : PFObject
15 |
16 | @property (nullable, nonatomic, strong) NSString *name;
17 |
18 | @end
19 |
20 | NS_ASSUME_NONNULL_END
21 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo-ObjC/Room.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | #import "Room.h"
11 |
12 | @implementation Room
13 |
14 | @dynamic name;
15 |
16 | + (NSString *)parseClassName {
17 | return @"Room";
18 | }
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSAppTransportSecurity
6 |
7 | NSAllowsArbitraryLoads
8 |
9 |
10 | CFBundleDevelopmentRegion
11 | en
12 | CFBundleExecutable
13 | $(EXECUTABLE_NAME)
14 | CFBundleIconFile
15 |
16 | CFBundleIdentifier
17 | $(PRODUCT_BUNDLE_IDENTIFIER)
18 | CFBundleInfoDictionaryVersion
19 | 6.0
20 | CFBundleName
21 | $(PRODUCT_NAME)
22 | CFBundlePackageType
23 | APPL
24 | CFBundleShortVersionString
25 | 1.0
26 | CFBundleSignature
27 | ????
28 | CFBundleVersion
29 | 1
30 | LSMinimumSystemVersion
31 | $(MACOSX_DEPLOYMENT_TARGET)
32 | NSHumanReadableCopyright
33 | Copyright © 2016 Parse. All rights reserved.
34 | NSPrincipalClass
35 | NSApplication
36 |
37 |
38 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo/Message.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | import Foundation
11 | import ParseCore
12 |
13 | class Message: PFObject, PFSubclassing {
14 | @NSManaged var author: PFUser?
15 | @NSManaged var authorName: String?
16 | @NSManaged var message: String?
17 | @NSManaged var room: PFObject?
18 | @NSManaged var roomName: String?
19 |
20 | class func parseClassName() -> String {
21 | return "Message"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ParseLiveQuery/Examples/LiveQueryDemo/Room.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | import Foundation
11 | import ParseCore
12 |
13 | class Room: PFObject, PFSubclassing {
14 | @NSManaged var name: String?
15 |
16 | static func parseClassName() -> String {
17 | return "Room"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery-tvOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | $(PRODUCT_BUNDLE_PACKAGE_TYPE)
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleVersion
20 | 5.1.1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery-tvOS/ParseLiveQuery_tvOS.h:
--------------------------------------------------------------------------------
1 | //
2 | // ParseLiveQuery_tvOS.h
3 | // ParseLiveQuery-tvOS
4 | //
5 | // Created by Corey Baker on 11/15/20.
6 | // Copyright © 2020 Parse. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | //! Project version number for ParseLiveQuery_tvOS.
12 | FOUNDATION_EXPORT double ParseLiveQuery_tvOSVersionNumber;
13 |
14 | //! Project version string for ParseLiveQuery_tvOS.
15 | FOUNDATION_EXPORT const unsigned char ParseLiveQuery_tvOSVersionString[];
16 |
17 | // In this header, you should import all the public headers of your framework using statements like #import
18 |
19 |
20 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery-watchOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | $(PRODUCT_BUNDLE_PACKAGE_TYPE)
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleVersion
20 | 5.1.1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery-watchOS/ParseLiveQuery_watchOS.h:
--------------------------------------------------------------------------------
1 | //
2 | // ParseLiveQuery_watchOS.h
3 | // ParseLiveQuery-watchOS
4 | //
5 | // Created by Corey Baker on 11/15/20.
6 | // Copyright © 2020 Parse. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | //! Project version number for ParseLiveQuery_watchOS.
12 | FOUNDATION_EXPORT double ParseLiveQuery_watchOSVersionNumber;
13 |
14 | //! Project version string for ParseLiveQuery_watchOS.
15 | FOUNDATION_EXPORT const unsigned char ParseLiveQuery_watchOSVersionString[];
16 |
17 | // In this header, you should import all the public headers of your framework using statements like #import
18 |
19 |
20 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery/Internal/Common.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | * Add support for both SPM and Dynamic Framework Imports TODO: (@dplewis)
12 | */
13 | #if canImport(ParseCore)
14 | @_exported import ParseCore
15 | #else
16 | @_exported import Parse
17 | #endif
18 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery/PFQuery+Subscribe.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | import Foundation
11 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery/Parse+LiveQuery.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2016-present, Parse, LLC.
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 | //import ParseCore
11 |
12 | extension Parse {
13 | static func validatedCurrentConfiguration() -> ParseClientConfiguration {
14 | guard let configuration = Parse.currentConfiguration else {
15 | preconditionFailure("Parse SDK is not initialized. Call Parse.initializeWithConfiguration() before loading live query client.")
16 | }
17 | return configuration
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ParseLiveQuery/ParseLiveQuery/Resources/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 5.1.1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/ParseStarterProject/.gitignore:
--------------------------------------------------------------------------------
1 | *.framework
2 | Package.resolved
3 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject-Swift/ParseOSXStarterProject-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject-Swift/ParseOSXStarterProject-Swift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject-Swift/Resources/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "mac",
5 | "size" : "16x16",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "mac",
10 | "size" : "16x16",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "mac",
15 | "size" : "32x32",
16 | "scale" : "1x"
17 | },
18 | {
19 | "idiom" : "mac",
20 | "size" : "32x32",
21 | "scale" : "2x"
22 | },
23 | {
24 | "idiom" : "mac",
25 | "size" : "128x128",
26 | "scale" : "1x"
27 | },
28 | {
29 | "idiom" : "mac",
30 | "size" : "128x128",
31 | "scale" : "2x"
32 | },
33 | {
34 | "idiom" : "mac",
35 | "size" : "256x256",
36 | "scale" : "1x"
37 | },
38 | {
39 | "idiom" : "mac",
40 | "size" : "256x256",
41 | "scale" : "2x"
42 | },
43 | {
44 | "idiom" : "mac",
45 | "size" : "512x512",
46 | "scale" : "1x"
47 | },
48 | {
49 | "idiom" : "mac",
50 | "size" : "512x512",
51 | "scale" : "2x"
52 | }
53 | ],
54 | "info" : {
55 | "version" : 1,
56 | "author" : "xcode"
57 | }
58 | }
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject-Swift/Resources/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | $(PRODUCT_NAME)
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 5.1.1
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 5.1.1
25 | LSMinimumSystemVersion
26 | $(MACOSX_DEPLOYMENT_TARGET)
27 | NSMainNibFile
28 | MainMenu
29 | NSPrincipalClass
30 | NSApplication
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/ParseOSXStarterProject.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/ParseOSXStarterProject.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/ParseOSXStarterProject/AppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | #import
13 |
14 | @interface AppDelegate : NSObject
15 |
16 | @property (assign) IBOutlet NSWindow *window;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/ParseOSXStarterProject/main.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | int main(int argc, const char *argv[])
13 | {
14 | return NSApplicationMain(argc, argv);
15 | }
16 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/Resources/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | ${PRODUCT_NAME}
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 5.1.1
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 5.1.1
25 | LSMinimumSystemVersion
26 | ${MACOSX_DEPLOYMENT_TARGET}
27 | NSMainNibFile
28 | MainMenu
29 | NSPrincipalClass
30 | NSApplication
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/Resources/en.lproj/Credits.rtf:
--------------------------------------------------------------------------------
1 | {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;}
2 | {\colortbl;\red255\green255\blue255;}
3 | \paperw9840\paperh8400
4 | \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
5 |
6 | \f0\b\fs24 \cf0 Engineering:
7 | \b0 \
8 | Some people\
9 | \
10 |
11 | \b Human Interface Design:
12 | \b0 \
13 | Some other people\
14 | \
15 |
16 | \b Testing:
17 | \b0 \
18 | Hopefully not nobody\
19 | \
20 |
21 | \b Documentation:
22 | \b0 \
23 | Whoever\
24 | \
25 |
26 | \b With special thanks to:
27 | \b0 \
28 | Mom\
29 | }
30 |
--------------------------------------------------------------------------------
/ParseStarterProject/OSX/ParseOSXStarterProject/Resources/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject-Swift/ParseStarterProject-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject-Swift/ParseStarterProject-Swift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject-Swift/ParseStarterProject/ViewController.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | import UIKit
11 | import ParseCore
12 |
13 | class ViewController: UIViewController {
14 |
15 | override func viewDidLoad() {
16 | super.viewDidLoad()
17 | // Do any additional setup after loading the view, typically from a nib.
18 | }
19 |
20 | override func didReceiveMemoryWarning() {
21 | super.didReceiveMemoryWarning()
22 | // Dispose of any resources that can be recreated.
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject-Swift/Resources/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject/ParseStarterProjectAppDelegate.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @class ParseStarterProjectViewController;
13 |
14 | @interface ParseStarterProjectAppDelegate : NSObject
15 |
16 | @property (nonatomic, strong) IBOutlet UIWindow *window;
17 |
18 | @property (nonatomic, strong) IBOutlet ParseStarterProjectViewController *viewController;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject/ParseStarterProjectViewController.h:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import
11 |
12 | @interface ParseStarterProjectViewController : UIViewController
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject/ParseStarterProjectViewController.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | #import "ParseStarterProjectViewController.h"
11 |
12 | @implementation ParseStarterProjectViewController
13 |
14 | #pragma mark -
15 | #pragma mark UIViewController
16 |
17 | // Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
18 | - (void)viewDidLoad {
19 | [super viewDidLoad];
20 | }
21 |
22 | - (void)didReceiveMemoryWarning {
23 | // Releases the view if it doesn't have a superview.
24 | [super didReceiveMemoryWarning];
25 |
26 | // Release any cached data, images, etc that aren't in use.
27 | }
28 |
29 | - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
30 | // Return YES for supported orientations
31 | return (interfaceOrientation == UIInterfaceOrientationPortrait);
32 | }
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/ParseStarterProject/main.m:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 "ParseStarterProjectAppDelegate.h"
14 |
15 | int main(int argc, char *argv[])
16 | {
17 | @autoreleasepool {
18 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ParseStarterProjectAppDelegate class]));
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/Resources/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/ParseStarterProject/iOS/ParseStarterProject/Resources/Default-568h@2x.png
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/Resources/Default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/ParseStarterProject/iOS/ParseStarterProject/Resources/Default.png
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/Resources/Default@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/parse-community/Parse-SDK-iOS-OSX/e270078541dbe87a8471a7824808755d4120a365/ParseStarterProject/iOS/ParseStarterProject/Resources/Default@2x.png
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/Resources/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleDisplayName
8 | ${PRODUCT_NAME}
9 | CFBundleExecutable
10 | ${EXECUTABLE_NAME}
11 | CFBundleIconFile
12 |
13 | CFBundleIdentifier
14 | $(PRODUCT_BUNDLE_IDENTIFIER)
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleName
18 | ${PRODUCT_NAME}
19 | CFBundlePackageType
20 | APPL
21 | CFBundleShortVersionString
22 | 5.1.1
23 | CFBundleSignature
24 | ????
25 | CFBundleVersion
26 | 5.1.1
27 | LSRequiresIPhoneOS
28 |
29 | NSMainNibFile
30 | MainWindow
31 | UISupportedInterfaceOrientations
32 |
33 | UIInterfaceOrientationPortrait
34 | UIInterfaceOrientationLandscapeLeft
35 | UIInterfaceOrientationLandscapeRight
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/ParseStarterProject/iOS/ParseStarterProject/Resources/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
--------------------------------------------------------------------------------
/ParseStarterProject/tvOS/ParseStarterProject-Swift/ParseStarter-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/tvOS/ParseStarterProject-Swift/ParseStarter-Swift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/tvOS/ParseStarterProject-Swift/ParseStarter/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | 5.1.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 5.1.1
23 | LSRequiresIPhoneOS
24 |
25 | UIMainStoryboardFile
26 | Main
27 | UIRequiredDeviceCapabilities
28 |
29 | arm64
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ParseStarterProject/tvOS/ParseStarterProject-Swift/ParseStarter/ViewController.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | import UIKit
11 |
12 | class ViewController: UIViewController {
13 |
14 | override func viewDidLoad() {
15 | super.viewDidLoad()
16 | // Do any additional setup after loading the view, typically from a nib.
17 | }
18 |
19 | override func didReceiveMemoryWarning() {
20 | super.didReceiveMemoryWarning()
21 | // Dispose of any resources that can be recreated.
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarter Extension/InterfaceController.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | import WatchKit
11 | import Foundation
12 | import ParseCore
13 |
14 | class InterfaceController: WKInterfaceController {
15 |
16 | override func awake(withContext context: Any?) {
17 | super.awake(withContext: context)
18 |
19 | // Configure interface objects here.
20 | }
21 |
22 | override func willActivate() {
23 | // This method is called when watch view controller is about to be visible to user
24 | super.willActivate()
25 | }
26 |
27 | override func didDeactivate() {
28 | // This method is called when watch view controller is no longer visible
29 | super.didDeactivate()
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarter-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarter-Swift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarter/Base.lproj/Interface.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarter/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleDisplayName
8 | ParseStarter
9 | CFBundleExecutable
10 | $(EXECUTABLE_NAME)
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | $(PRODUCT_NAME)
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 5.1.1
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 5.1.1
25 | UISupportedInterfaceOrientations
26 |
27 | UIInterfaceOrientationPortrait
28 | UIInterfaceOrientationPortraitUpsideDown
29 |
30 | WKCompanionAppBundleIdentifier
31 | com.parse.starter
32 | WKWatchKitApp
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/ParseStarterProject/ViewController.swift:
--------------------------------------------------------------------------------
1 | /**
2 | * Copyright (c) 2015-present, Parse, LLC.
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 | import UIKit
11 | import ParseCore
12 |
13 | class ViewController: UIViewController {
14 |
15 | override func viewDidLoad() {
16 | super.viewDidLoad()
17 | // Do any additional setup after loading the view, typically from a nib.
18 | }
19 |
20 | override func didReceiveMemoryWarning() {
21 | super.didReceiveMemoryWarning()
22 | // Dispose of any resources that can be recreated.
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/ParseStarterProject/watchOS/ParseStarterProject-Swift/Resources/Images.xcassets/LaunchImage.launchimage/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "orientation" : "portrait",
5 | "idiom" : "ipad",
6 | "minimum-system-version" : "7.0",
7 | "extent" : "full-screen",
8 | "scale" : "2x"
9 | },
10 | {
11 | "orientation" : "landscape",
12 | "idiom" : "ipad",
13 | "minimum-system-version" : "7.0",
14 | "extent" : "full-screen",
15 | "scale" : "1x"
16 | },
17 | {
18 | "orientation" : "landscape",
19 | "idiom" : "ipad",
20 | "minimum-system-version" : "7.0",
21 | "extent" : "full-screen",
22 | "scale" : "2x"
23 | },
24 | {
25 | "orientation" : "portrait",
26 | "idiom" : "iphone",
27 | "minimum-system-version" : "7.0",
28 | "scale" : "2x"
29 | },
30 | {
31 | "orientation" : "portrait",
32 | "idiom" : "iphone",
33 | "minimum-system-version" : "7.0",
34 | "subtype" : "retina4",
35 | "scale" : "2x"
36 | },
37 | {
38 | "orientation" : "portrait",
39 | "idiom" : "ipad",
40 | "minimum-system-version" : "7.0",
41 | "extent" : "full-screen",
42 | "scale" : "1x"
43 | }
44 | ],
45 | "info" : {
46 | "version" : 1,
47 | "author" : "xcode"
48 | }
49 | }
--------------------------------------------------------------------------------
/Scripts/jazzy.sh:
--------------------------------------------------------------------------------
1 | mkdir -p ./Parse/Bolts # Create a temporary bolts folder
2 | cp -R Carthage/Checkouts/Bolts-ObjC/Bolts/**/*.h ./Parse/Bolts # Copy bolts
3 |
4 | ver=`/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" Parse/Parse/Resources/Parse-iOS.Info.plist`
5 | set -eo pipefail && bundle exec jazzy \
6 | --objc \
7 | --clean \
8 | --author "Parse Community" \
9 | --author_url http://parseplatform.org \
10 | --github_url https://github.com/parse-community/Parse-SDK-iOS-OSX \
11 | --root-url http://parseplatform.org/Parse-SDK-iOS-OSX/api/ \
12 | --module-version ${ver} \
13 | --theme fullwidth \
14 | --skip-undocumented \
15 | --exclude=./Bolts/* \
16 | --module Parse \
17 | --umbrella-header Parse/Parse/Source/Parse.h \
18 | --framework-root Parse \
19 | --output docs/api
20 |
21 | rm -rf ./Parse/Bolts # cleanup temporary bolts
22 |
--------------------------------------------------------------------------------
/Tests/Parse-SDK-iOS-OSXTests/Parse_SDK_iOS_OSXTests.swift:
--------------------------------------------------------------------------------
1 | import XCTest
2 | @testable import Parse_SDK_iOS_OSX
3 |
4 | final class Parse_SDK_iOS_OSXTests: XCTestCase {
5 | func testExample() throws {
6 | // This is an example of a functional test case.
7 | // Use XCTAssert and related functions to verify your tests produce the correct
8 | // results.
9 | XCTAssertEqual(Parse_SDK_iOS_OSX().text, "Hello, World!")
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "parse-sdk-ios-osx",
3 | "version": "5.1.1",
4 | "private": true,
5 | "repository": {
6 | "type": "git",
7 | "url": "git+https://github.com/parse-community/Parse-SDK-iOS-OSX.git"
8 | },
9 | "devDependencies": {
10 | "@semantic-release/changelog": "6.0.3",
11 | "@semantic-release/commit-analyzer": "13.0.1",
12 | "@semantic-release/exec": "7.1.0",
13 | "@semantic-release/git": "10.0.1",
14 | "@semantic-release/release-notes-generator": "14.0.3",
15 | "semantic-release": "24.2.5"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------