motion-firebase 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (295) hide show
  1. data/.gitignore +17 -0
  2. data/.travis.yml +2 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +28 -0
  5. data/README.md +511 -0
  6. data/Rakefile +11 -0
  7. data/app/app_delegate.rb +156 -0
  8. data/lib/firebase/firebase.rb +242 -0
  9. data/lib/firebase/firebase_auth_client.rb +49 -0
  10. data/lib/firebase/version.rb +5 -0
  11. data/lib/motion-firebase-auth.rb +19 -0
  12. data/lib/motion-firebase-facebook.rb +17 -0
  13. data/lib/motion-firebase.rb +19 -0
  14. data/lib/vendor/FacebookSDK.framework/FacebookSDK +0 -0
  15. data/lib/vendor/FacebookSDK.framework/Headers/FBAccessTokenData.h +115 -0
  16. data/lib/vendor/FacebookSDK.framework/Headers/FBCacheDescriptor.h +42 -0
  17. data/lib/vendor/FacebookSDK.framework/Headers/FBError.h +274 -0
  18. data/lib/vendor/FacebookSDK.framework/Headers/FBFrictionlessRecipientCache.h +86 -0
  19. data/lib/vendor/FacebookSDK.framework/Headers/FBFriendPickerViewController.h +290 -0
  20. data/lib/vendor/FacebookSDK.framework/Headers/FBGraphLocation.h +77 -0
  21. data/lib/vendor/FacebookSDK.framework/Headers/FBGraphObject.h +224 -0
  22. data/lib/vendor/FacebookSDK.framework/Headers/FBGraphPlace.h +60 -0
  23. data/lib/vendor/FacebookSDK.framework/Headers/FBGraphUser.h +90 -0
  24. data/lib/vendor/FacebookSDK.framework/Headers/FBInsights.h +271 -0
  25. data/lib/vendor/FacebookSDK.framework/Headers/FBLoginView.h +178 -0
  26. data/lib/vendor/FacebookSDK.framework/Headers/FBNativeDialogs.h +170 -0
  27. data/lib/vendor/FacebookSDK.framework/Headers/FBOpenGraphAction.h +127 -0
  28. data/lib/vendor/FacebookSDK.framework/Headers/FBPlacePickerViewController.h +257 -0
  29. data/lib/vendor/FacebookSDK.framework/Headers/FBProfilePictureView.h +80 -0
  30. data/lib/vendor/FacebookSDK.framework/Headers/FBRequest.h +504 -0
  31. data/lib/vendor/FacebookSDK.framework/Headers/FBRequestConnection.h +389 -0
  32. data/lib/vendor/FacebookSDK.framework/Headers/FBSession.h +751 -0
  33. data/lib/vendor/FacebookSDK.framework/Headers/FBSessionTokenCachingStrategy.h +152 -0
  34. data/lib/vendor/FacebookSDK.framework/Headers/FBSettings.h +136 -0
  35. data/lib/vendor/FacebookSDK.framework/Headers/FBTestSession.h +135 -0
  36. data/lib/vendor/FacebookSDK.framework/Headers/FBUserSettingsViewController.h +127 -0
  37. data/lib/vendor/FacebookSDK.framework/Headers/FBViewController.h +118 -0
  38. data/lib/vendor/FacebookSDK.framework/Headers/FBWebDialogs.h +234 -0
  39. data/lib/vendor/FacebookSDK.framework/Headers/FacebookSDK.h +132 -0
  40. data/lib/vendor/FacebookSDK.framework/Headers/NSError+FBError.h +59 -0
  41. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  42. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  43. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
  44. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
  45. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
  46. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
  47. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
  48. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
  49. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
  50. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
  51. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
  52. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
  53. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
  54. data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
  55. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  56. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  57. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
  58. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
  59. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
  60. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
  61. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
  62. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
  63. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
  64. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
  65. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
  66. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
  67. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
  68. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
  69. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
  70. data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
  71. data/lib/vendor/FacebookSDK.framework/Resources/Info.plist +20 -0
  72. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBAccessTokenData.h +115 -0
  73. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBCacheDescriptor.h +42 -0
  74. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBConnect.h +22 -0
  75. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBDialog.h +165 -0
  76. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBError.h +274 -0
  77. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFrictionlessRecipientCache.h +86 -0
  78. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFrictionlessRequestSettings.h +85 -0
  79. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFriendPickerViewController.h +290 -0
  80. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphLocation.h +77 -0
  81. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphObject.h +224 -0
  82. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphPlace.h +60 -0
  83. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphUser.h +90 -0
  84. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBInsights.h +271 -0
  85. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginDialog.h +48 -0
  86. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginView.h +178 -0
  87. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBNativeDialogs.h +170 -0
  88. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBOpenGraphAction.h +127 -0
  89. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBPlacePickerViewController.h +257 -0
  90. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBProfilePictureView.h +80 -0
  91. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBRequest.h +504 -0
  92. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBRequestConnection.h +389 -0
  93. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJSON.h +75 -0
  94. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonBase.h +86 -0
  95. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonParser.h +87 -0
  96. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonWriter.h +129 -0
  97. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSession.h +751 -0
  98. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionManualTokenCachingStrategy.h +32 -0
  99. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionTokenCachingStrategy.h +152 -0
  100. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSettings.h +136 -0
  101. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBTestSession.h +135 -0
  102. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBUserSettingsViewController.h +127 -0
  103. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBViewController.h +118 -0
  104. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBWebDialogs.h +234 -0
  105. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/Facebook.h +281 -0
  106. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FacebookSDK.h +132 -0
  107. data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/NSError+FBError.h +59 -0
  108. data/lib/vendor/FacebookSDK.framework/Versions/A/FacebookSDK +0 -0
  109. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBAccessTokenData.h +115 -0
  110. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBCacheDescriptor.h +42 -0
  111. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBError.h +274 -0
  112. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBFrictionlessRecipientCache.h +86 -0
  113. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBFriendPickerViewController.h +290 -0
  114. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphLocation.h +77 -0
  115. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphObject.h +224 -0
  116. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphPlace.h +60 -0
  117. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphUser.h +90 -0
  118. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBInsights.h +271 -0
  119. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBLoginView.h +178 -0
  120. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBNativeDialogs.h +170 -0
  121. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBOpenGraphAction.h +127 -0
  122. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBPlacePickerViewController.h +257 -0
  123. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBProfilePictureView.h +80 -0
  124. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBRequest.h +504 -0
  125. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBRequestConnection.h +389 -0
  126. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSession.h +751 -0
  127. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSessionTokenCachingStrategy.h +152 -0
  128. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSettings.h +136 -0
  129. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBTestSession.h +135 -0
  130. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBUserSettingsViewController.h +127 -0
  131. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBViewController.h +118 -0
  132. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBWebDialogs.h +234 -0
  133. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FacebookSDK.h +132 -0
  134. data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/NSError+FBError.h +59 -0
  135. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  136. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  137. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
  138. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
  139. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
  140. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
  141. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
  142. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
  143. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
  144. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
  145. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
  146. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
  147. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
  148. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
  149. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  150. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  151. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
  152. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
  153. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
  154. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
  155. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
  156. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
  157. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
  158. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
  159. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
  160. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
  161. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
  162. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
  163. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
  164. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
  165. data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/Info.plist +20 -0
  166. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBAccessTokenData.h +115 -0
  167. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBCacheDescriptor.h +42 -0
  168. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBConnect.h +22 -0
  169. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBDialog.h +165 -0
  170. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBError.h +274 -0
  171. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFrictionlessRecipientCache.h +86 -0
  172. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFrictionlessRequestSettings.h +85 -0
  173. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFriendPickerViewController.h +290 -0
  174. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphLocation.h +77 -0
  175. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphObject.h +224 -0
  176. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphPlace.h +60 -0
  177. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphUser.h +90 -0
  178. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBInsights.h +271 -0
  179. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBLoginDialog.h +48 -0
  180. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBLoginView.h +178 -0
  181. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBNativeDialogs.h +170 -0
  182. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBOpenGraphAction.h +127 -0
  183. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBPlacePickerViewController.h +257 -0
  184. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBProfilePictureView.h +80 -0
  185. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBRequest.h +504 -0
  186. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBRequestConnection.h +389 -0
  187. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJSON.h +75 -0
  188. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonBase.h +86 -0
  189. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonParser.h +87 -0
  190. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonWriter.h +129 -0
  191. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSession.h +751 -0
  192. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSessionManualTokenCachingStrategy.h +32 -0
  193. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSessionTokenCachingStrategy.h +152 -0
  194. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSettings.h +136 -0
  195. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBTestSession.h +135 -0
  196. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBUserSettingsViewController.h +127 -0
  197. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBViewController.h +118 -0
  198. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBWebDialogs.h +234 -0
  199. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/Facebook.h +281 -0
  200. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FacebookSDK.h +132 -0
  201. data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/NSError+FBError.h +59 -0
  202. data/lib/vendor/FacebookSDK.framework/Versions/Current/FacebookSDK +0 -0
  203. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBAccessTokenData.h +115 -0
  204. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBCacheDescriptor.h +42 -0
  205. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBError.h +274 -0
  206. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBFrictionlessRecipientCache.h +86 -0
  207. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBFriendPickerViewController.h +290 -0
  208. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphLocation.h +77 -0
  209. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphObject.h +224 -0
  210. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphPlace.h +60 -0
  211. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphUser.h +90 -0
  212. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBInsights.h +271 -0
  213. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBLoginView.h +178 -0
  214. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBNativeDialogs.h +170 -0
  215. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBOpenGraphAction.h +127 -0
  216. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBPlacePickerViewController.h +257 -0
  217. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBProfilePictureView.h +80 -0
  218. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBRequest.h +504 -0
  219. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBRequestConnection.h +389 -0
  220. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSession.h +751 -0
  221. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSessionTokenCachingStrategy.h +152 -0
  222. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSettings.h +136 -0
  223. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBTestSession.h +135 -0
  224. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBUserSettingsViewController.h +127 -0
  225. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBViewController.h +118 -0
  226. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBWebDialogs.h +234 -0
  227. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FacebookSDK.h +132 -0
  228. data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/NSError+FBError.h +59 -0
  229. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  230. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  231. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
  232. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
  233. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
  234. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
  235. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
  236. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
  237. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
  238. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
  239. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
  240. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
  241. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
  242. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
  243. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
  244. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
  245. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
  246. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
  247. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
  248. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
  249. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
  250. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
  251. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
  252. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
  253. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
  254. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
  255. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
  256. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
  257. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
  258. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
  259. data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/Info.plist +20 -0
  260. data/lib/vendor/Firebase.framework/Firebase +0 -0
  261. data/lib/vendor/Firebase.framework/Headers/FDataSnapshot.h +146 -0
  262. data/lib/vendor/Firebase.framework/Headers/FEventType.h +43 -0
  263. data/lib/vendor/Firebase.framework/Headers/FMutableData.h +134 -0
  264. data/lib/vendor/Firebase.framework/Headers/FQuery.h +229 -0
  265. data/lib/vendor/Firebase.framework/Headers/FTransactionResult.h +50 -0
  266. data/lib/vendor/Firebase.framework/Headers/Firebase.h +629 -0
  267. data/lib/vendor/Firebase.framework/Versions/A/Firebase +0 -0
  268. data/lib/vendor/Firebase.framework/Versions/A/Headers/FDataSnapshot.h +146 -0
  269. data/lib/vendor/Firebase.framework/Versions/A/Headers/FEventType.h +43 -0
  270. data/lib/vendor/Firebase.framework/Versions/A/Headers/FMutableData.h +134 -0
  271. data/lib/vendor/Firebase.framework/Versions/A/Headers/FQuery.h +229 -0
  272. data/lib/vendor/Firebase.framework/Versions/A/Headers/FTransactionResult.h +50 -0
  273. data/lib/vendor/Firebase.framework/Versions/A/Headers/Firebase.h +629 -0
  274. data/lib/vendor/Firebase.framework/Versions/Current/Firebase +0 -0
  275. data/lib/vendor/Firebase.framework/Versions/Current/Headers/FDataSnapshot.h +146 -0
  276. data/lib/vendor/Firebase.framework/Versions/Current/Headers/FEventType.h +43 -0
  277. data/lib/vendor/Firebase.framework/Versions/Current/Headers/FMutableData.h +134 -0
  278. data/lib/vendor/Firebase.framework/Versions/Current/Headers/FQuery.h +229 -0
  279. data/lib/vendor/Firebase.framework/Versions/Current/Headers/FTransactionResult.h +50 -0
  280. data/lib/vendor/Firebase.framework/Versions/Current/Headers/Firebase.h +629 -0
  281. data/lib/vendor/FirebaseAuthClient.framework/FirebaseAuthClient +0 -0
  282. data/lib/vendor/FirebaseAuthClient.framework/Headers/FATypes.h +48 -0
  283. data/lib/vendor/FirebaseAuthClient.framework/Headers/FAUser.h +85 -0
  284. data/lib/vendor/FirebaseAuthClient.framework/Headers/FirebaseAuthClient.h +149 -0
  285. data/lib/vendor/FirebaseAuthClient.framework/Versions/A/FirebaseAuthClient +0 -0
  286. data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FATypes.h +48 -0
  287. data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FAUser.h +85 -0
  288. data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FirebaseAuthClient.h +149 -0
  289. data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/FirebaseAuthClient +0 -0
  290. data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FATypes.h +48 -0
  291. data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FAUser.h +85 -0
  292. data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FirebaseAuthClient.h +149 -0
  293. data/motion-firebase.gemspec +23 -0
  294. data/resources/Default-568h@2x.png +0 -0
  295. metadata +357 -0
@@ -0,0 +1,290 @@
1
+ /*
2
+ * Copyright 2012 Facebook
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #import <UIKit/UIKit.h>
18
+ #import "FBGraphUser.h"
19
+ #import "FBSession.h"
20
+ #import "FBCacheDescriptor.h"
21
+ #import "FBViewController.h"
22
+
23
+ @protocol FBFriendPickerDelegate;
24
+ @class FBFriendPickerCacheDescriptor;
25
+
26
+ /*!
27
+ @typedef FBFriendSortOrdering enum
28
+
29
+ @abstract Indicates the order in which friends should be listed in the friend picker.
30
+
31
+ @discussion
32
+ */
33
+ typedef enum {
34
+ /*! Sort friends by first, middle, last names. */
35
+ FBFriendSortByFirstName,
36
+ /*! Sort friends by last, first, middle names. */
37
+ FBFriendSortByLastName
38
+ } FBFriendSortOrdering;
39
+
40
+ /*!
41
+ @typedef FBFriendDisplayOrdering enum
42
+
43
+ @abstract Indicates whether friends should be displayed first-name-first or last-name-first.
44
+
45
+ @discussion
46
+ */
47
+ typedef enum {
48
+ /*! Display friends as First Middle Last. */
49
+ FBFriendDisplayByFirstName,
50
+ /*! Display friends as Last First Middle. */
51
+ FBFriendDisplayByLastName,
52
+ } FBFriendDisplayOrdering;
53
+
54
+
55
+ /*!
56
+ @class
57
+
58
+ @abstract
59
+ The `FBFriendPickerViewController` class creates a controller object that manages
60
+ the user interface for displaying and selecting Facebook friends.
61
+
62
+ @discussion
63
+ When the `FBFriendPickerViewController` view loads it creates a `UITableView` object
64
+ where the friends will be displayed. You can access this view through the `tableView`
65
+ property. The friend display can be sorted by first name or last name. Friends'
66
+ names can be displayed with the first name first or the last name first.
67
+
68
+ The friend data can be pre-fetched and cached prior to using the view controller. The
69
+ cache is setup using an <FBCacheDescriptor> object that can trigger the
70
+ data fetch. Any friend data requests will first check the cache and use that data.
71
+ If the friend picker is being displayed cached data will initially be shown before
72
+ a fresh copy is retrieved.
73
+
74
+ The `delegate` property may be set to an object that conforms to the <FBFriendPickerDelegate>
75
+ protocol. The `delegate` object will receive updates related to friend selection and
76
+ data changes. The delegate can also be used to filter the friends to display in the
77
+ picker.
78
+ */
79
+ @interface FBFriendPickerViewController : FBViewController
80
+
81
+ /*!
82
+ @abstract
83
+ Returns an outlet for the spinner used in the view controller.
84
+ */
85
+ @property (nonatomic, retain) IBOutlet UIActivityIndicatorView *spinner;
86
+
87
+ /*!
88
+ @abstract
89
+ Returns an outlet for the table view managed by the view controller.
90
+ */
91
+ @property (nonatomic, retain) IBOutlet UITableView *tableView;
92
+
93
+ /*!
94
+ @abstract
95
+ A Boolean value that specifies whether multi-select is enabled.
96
+ */
97
+ @property (nonatomic) BOOL allowsMultipleSelection;
98
+
99
+ /*!
100
+ @abstract
101
+ A Boolean value that indicates whether friend profile pictures are displayed.
102
+ */
103
+ @property (nonatomic) BOOL itemPicturesEnabled;
104
+
105
+ /*!
106
+ @abstract
107
+ Addtional fields to fetch when making the Graph API call to get friend data.
108
+ */
109
+ @property (nonatomic, copy) NSSet *fieldsForRequest;
110
+
111
+ /*!
112
+ @abstract
113
+ The session that is used in the request for friend data.
114
+ */
115
+ @property (nonatomic, retain) FBSession *session;
116
+
117
+ /*!
118
+ @abstract
119
+ The profile ID of the user whose friends are being viewed.
120
+ */
121
+ @property (nonatomic, copy) NSString *userID;
122
+
123
+ /*!
124
+ @abstract
125
+ The list of friends that are currently selected in the veiw.
126
+ The items in the array are <FBGraphUser> objects.
127
+ */
128
+ @property (nonatomic, retain, readonly) NSArray *selection;
129
+
130
+ /*!
131
+ @abstract
132
+ The order in which friends are sorted in the display.
133
+ */
134
+ @property (nonatomic) FBFriendSortOrdering sortOrdering;
135
+
136
+ /*!
137
+ @abstract
138
+ The order in which friends' names are displayed.
139
+ */
140
+ @property (nonatomic) FBFriendDisplayOrdering displayOrdering;
141
+
142
+ /*!
143
+ @abstract
144
+ Initializes a friend picker view controller.
145
+ */
146
+ - (id)init;
147
+
148
+ /*!
149
+ @abstract
150
+ Initializes a friend picker view controller.
151
+
152
+ @param aDecoder An unarchiver object.
153
+ */
154
+ - (id)initWithCoder:(NSCoder *)aDecoder;
155
+
156
+ /*!
157
+ @abstract
158
+ Used to initialize the object
159
+
160
+ @param nibNameOrNil The name of the nib file to associate with the view controller. The nib file name should not contain any leading path information. If you specify nil, the nibName property is set to nil.
161
+ @param nibBundleOrNil The bundle in which to search for the nib file. This method looks for the nib file in the bundle's language-specific project directories first, followed by the Resources directory. If nil, this method looks for the nib file in the main bundle.
162
+ */
163
+ - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil;
164
+
165
+ /*!
166
+ @abstract
167
+ Configures the properties used in the caching data queries.
168
+
169
+ @discussion
170
+ Cache descriptors are used to fetch and cache the data used by the view controller.
171
+ If the view controller finds a cached copy of the data, it will
172
+ first display the cached content then fetch a fresh copy from the server.
173
+
174
+ @param cacheDescriptor The <FBCacheDescriptor> containing the cache query properties.
175
+ */
176
+ - (void)configureUsingCachedDescriptor:(FBCacheDescriptor*)cacheDescriptor;
177
+
178
+ /*!
179
+ @abstract
180
+ Initiates a query to get friend data.
181
+
182
+ @discussion
183
+ A cached copy will be returned if available. The cached view is temporary until a fresh copy is
184
+ retrieved from the server. It is legal to call this more than once.
185
+ */
186
+ - (void)loadData;
187
+
188
+ /*!
189
+ @abstract
190
+ Updates the view locally without fetching data from the server or from cache.
191
+
192
+ @discussion
193
+ Use this if the filter or sort properties change. This may affect the order or
194
+ display of friend information but should not need require new data.
195
+ */
196
+ - (void)updateView;
197
+
198
+ /*!
199
+ @abstract
200
+ Clears the current selection, so the picker is ready for a fresh use.
201
+ */
202
+ - (void)clearSelection;
203
+
204
+ /*!
205
+ @method
206
+
207
+ @abstract
208
+ Creates a cache descriptor based on default settings of the `FBFriendPickerViewController` object.
209
+
210
+ @discussion
211
+ An `FBCacheDescriptor` object may be used to pre-fetch data before it is used by
212
+ the view controller. It may also be used to configure the `FBFriendPickerViewController`
213
+ object.
214
+ */
215
+ + (FBCacheDescriptor*)cacheDescriptor;
216
+
217
+ /*!
218
+ @method
219
+
220
+ @abstract
221
+ Creates a cache descriptor with additional fields and a profile ID for use with the `FBFriendPickerViewController` object.
222
+
223
+ @discussion
224
+ An `FBCacheDescriptor` object may be used to pre-fetch data before it is used by
225
+ the view controller. It may also be used to configure the `FBFriendPickerViewController`
226
+ object.
227
+
228
+ @param userID The profile ID of the user whose friends will be displayed. A nil value implies a "me" alias.
229
+ @param fieldsForRequest The set of additional fields to include in the request for friend data.
230
+ */
231
+ + (FBCacheDescriptor*)cacheDescriptorWithUserID:(NSString*)userID fieldsForRequest:(NSSet*)fieldsForRequest;
232
+
233
+ @end
234
+
235
+ /*!
236
+ @protocol
237
+
238
+ @abstract
239
+ The `FBFriendPickerDelegate` protocol defines the methods used to receive event
240
+ notifications and allow for deeper control of the <FBFriendPickerViewController>
241
+ view.
242
+ */
243
+ @protocol FBFriendPickerDelegate <FBViewControllerDelegate>
244
+ @optional
245
+
246
+ /*!
247
+ @abstract
248
+ Tells the delegate that data has been loaded.
249
+
250
+ @discussion
251
+ The <FBFriendPickerViewController> object's `tableView` property is automatically
252
+ reloaded when this happens. However, if another table view, for example the
253
+ `UISearchBar` is showing data, then it may also need to be reloaded.
254
+
255
+ @param friendPicker The friend picker view controller whose data changed.
256
+ */
257
+ - (void)friendPickerViewControllerDataDidChange:(FBFriendPickerViewController *)friendPicker;
258
+
259
+ /*!
260
+ @abstract
261
+ Tells the delegate that the selection has changed.
262
+
263
+ @param friendPicker The friend picker view controller whose selection changed.
264
+ */
265
+ - (void)friendPickerViewControllerSelectionDidChange:(FBFriendPickerViewController *)friendPicker;
266
+
267
+ /*!
268
+ @abstract
269
+ Asks the delegate whether to include a friend in the list.
270
+
271
+ @discussion
272
+ This can be used to implement a search bar that filters the friend list.
273
+
274
+ @param friendPicker The friend picker view controller that is requesting this information.
275
+ @param user An <FBGraphUser> object representing the friend.
276
+ */
277
+ - (BOOL)friendPickerViewController:(FBFriendPickerViewController *)friendPicker
278
+ shouldIncludeUser:(id <FBGraphUser>)user;
279
+
280
+ /*!
281
+ @abstract
282
+ Tells the delegate that there is a communication error.
283
+
284
+ @param friendPicker The friend picker view controller that encountered the error.
285
+ @param error An error object containing details of the error.
286
+ */
287
+ - (void)friendPickerViewController:(FBFriendPickerViewController *)friendPicker
288
+ handleError:(NSError *)error;
289
+
290
+ @end
@@ -0,0 +1,77 @@
1
+ /*
2
+ * Copyright 2012 Facebook
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #import <Foundation/Foundation.h>
18
+ #import "FBGraphObject.h"
19
+
20
+ /*!
21
+ @protocol
22
+
23
+ @abstract
24
+ The `FBGraphLocation` protocol enables typed access to the `location` property
25
+ of a Facebook place object.
26
+
27
+
28
+ @discussion
29
+ The `FBGraphLocation` protocol represents the most commonly used properties of a
30
+ location object. It may be used to access an `NSDictionary` object that has
31
+ been wrapped with an <FBGraphObject> facade.
32
+ */
33
+ @protocol FBGraphLocation<FBGraphObject>
34
+
35
+ /*!
36
+ @property
37
+ @abstract Typed access to a location's street.
38
+ */
39
+ @property (retain, nonatomic) NSString *street;
40
+
41
+ /*!
42
+ @property
43
+ @abstract Typed access to a location's city.
44
+ */
45
+ @property (retain, nonatomic) NSString *city;
46
+
47
+ /*!
48
+ @property
49
+ @abstract Typed access to a location's state.
50
+ */
51
+ @property (retain, nonatomic) NSString *state;
52
+
53
+ /*!
54
+ @property
55
+ @abstract Typed access to a location's country.
56
+ */
57
+ @property (retain, nonatomic) NSString *country;
58
+
59
+ /*!
60
+ @property
61
+ @abstract Typed access to a location's zip code.
62
+ */
63
+ @property (retain, nonatomic) NSString *zip;
64
+
65
+ /*!
66
+ @property
67
+ @abstract Typed access to a location's latitude.
68
+ */
69
+ @property (retain, nonatomic) NSNumber *latitude;
70
+
71
+ /*!
72
+ @property
73
+ @abstract Typed access to a location's longitude.
74
+ */
75
+ @property (retain, nonatomic) NSNumber *longitude;
76
+
77
+ @end
@@ -0,0 +1,224 @@
1
+ /*
2
+ * Copyright 2012 Facebook
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #import <Foundation/Foundation.h>
18
+
19
+ /*!
20
+ @protocol
21
+
22
+ @abstract
23
+ The `FBGraphObject` protocol is the base protocol which enables typed access to graph objects and
24
+ open graph objects. Inherit from this protocol or a sub-protocol in order to introduce custom types
25
+ for typed access to Facebook objects.
26
+
27
+ @discussion
28
+ The `FBGraphObject` protocol is the core type used by the Facebook SDK for iOS to
29
+ represent objects in the Facebook Social Graph and the Facebook Open Graph (OG).
30
+ The `FBGraphObject` class implements useful default functionality, but is rarely
31
+ used directly by applications. The `FBGraphObject` protocol, in contrast is the
32
+ base protocol for all graph object access via the SDK.
33
+
34
+ Goals of the FBGraphObject types:
35
+ <ul>
36
+ <li> Lightweight/maintainable/robust </li>
37
+ <li> Extensible and resilient to change, both by Facebook and third party (OG) </li>
38
+ <li> Simple and natural extension to Objective-C </li>
39
+ </ul>
40
+
41
+ The FBGraphObject at its core is a duck typed (if it walks/swims/quacks...
42
+ its a duck) model which supports an optional static facade. Duck-typing achieves
43
+ the flexibility necessary for Social Graph and OG uses, and the static facade
44
+ increases discoverability, maintainability, robustness and simplicity.
45
+ The following excerpt from the PlacePickerSample shows a simple use of the
46
+ a facade protocol `FBGraphPlace` by an application:
47
+
48
+ <pre>
49
+ &dash; (void)placePickerViewControllerSelectionDidChange:(FBPlacePickerViewController *)placePicker
50
+ {
51
+ id&#060;FBGraphPlace&#062; place = placePicker.selection;
52
+
53
+ // we'll use logging to show the simple typed property access to place and location info
54
+ NSLog(@"place=%@, city=%@, state=%@, lat long=%@ %@",
55
+ place.name,
56
+ place.location.city,
57
+ place.location.state,
58
+ place.location.latitude,
59
+ place.location.longitude);
60
+ }
61
+ </pre>
62
+
63
+ Note that in this example, access to common place information is available through typed property
64
+ syntax. But if at some point places in the Social Graph supported additional fields "foo" and "bar", not
65
+ reflected in the `FBGraphPlace` protocol, the application could still access the values like so:
66
+
67
+ <pre>
68
+ NSString *foo = [place objectForKey:@"foo"]; // perhaps located at the ... in the preceding example
69
+ NSNumber *bar = [place objectForKey:@"bar"]; // extensibility applies to Social and Open graph uses
70
+ </pre>
71
+
72
+ In addition to untyped access, applications and future revisions of the SDK may add facade protocols by
73
+ declaring a protocol inheriting the `FBGraphObject` protocol, like so:
74
+
75
+ <pre>
76
+ &#064;protocol MyGraphThing&#060;FBGraphObject&#062;
77
+ &#064;property (copy, nonatomic) NSString *id;
78
+ &#064;property (copy, nonatomic) NSString *name;
79
+ &#064;end
80
+ </pre>
81
+
82
+ Important: facade implementations are inferred by graph objects returned by the methods of the SDK. This
83
+ means that no explicit implementation is required by application or SDK code. Any `FBGraphObject` instance
84
+ may be cast to any `FBGraphObject` facade protocol, and accessed via properties. If a field is not present
85
+ for a given facade property, the property will return nil.
86
+
87
+ The following layer diagram depicts some of the concepts discussed thus far:
88
+
89
+ <pre>
90
+ *-------------* *------------* *-------------**--------------------------*
91
+ Facade --> | FBGraphUser | |FBGraphPlace| | MyGraphThing|| MyGraphPersonExtentension| ...
92
+ *-------------* *------------* *-------------**--------------------------*
93
+ *------------------------------------* *--------------------------------------*
94
+ Transparent impl --> | FBGraphObject (instances) | | CustomClass&#060;FBGraphObject&#062; |
95
+ *------------------------------------* *--------------------------------------*
96
+ *-------------------**------------------------* *-----------------------------*
97
+ Apparent impl --> |NSMutableDictionary||FBGraphObject (protocol)| |FBGraphObject (class methods)|
98
+ *-------------------**------------------------* *-----------------------------*
99
+ </pre>
100
+
101
+ The *Facade* layer is meant for typed access to graph objects. The *Transparent impl* layer (more
102
+ specifically, the instance capabilities of `FBGraphObject`) are used by the SDK and app logic
103
+ internally, but are not part of the public interface between application and SDK. The *Apparent impl*
104
+ layer represents the lower-level "duck-typed" use of graph objects.
105
+
106
+ Implementation note: the SDK returns `NSMutableDictionary` derived instances with types declared like
107
+ one of the following:
108
+
109
+ <pre>
110
+ NSMutableDictionary&#060;FBGraphObject&#062; *obj; // no facade specified (still castable by app)
111
+ NSMutableDictionary&#060;FBGraphPlace&#062; *person; // facade specified when possible
112
+ </pre>
113
+
114
+ However, when passing a graph object to the SDK, `NSMutableDictionary` is not assumed; only the
115
+ FBGraphObject protocol is assumed, like so:
116
+
117
+ <pre>
118
+ id&#060;FBGraphObject&#062; anyGraphObj;
119
+ </pre>
120
+
121
+ As such, the methods declared on the `FBGraphObject` protocol represent the methods used by the SDK to
122
+ consume graph objects. While the `FBGraphObject` class implements the full `NSMutableDictionary` and KVC
123
+ interfaces, these are not consumed directly by the SDK, and are optional for custom implementations.
124
+ */
125
+ @protocol FBGraphObject<NSObject>
126
+
127
+ /*!
128
+ @method
129
+ @abstract
130
+ Returns the number of properties on this `FBGraphObject`.
131
+ */
132
+ - (NSUInteger)count;
133
+ /*!
134
+ @method
135
+ @abstract
136
+ Returns a property on this `FBGraphObject`.
137
+
138
+ @param aKey name of the property to return
139
+ */
140
+ - (id)objectForKey:(id)aKey;
141
+ /*!
142
+ @method
143
+ @abstract
144
+ Returns an enumerator of the property naems on this `FBGraphObject`.
145
+ */
146
+ - (NSEnumerator *)keyEnumerator;
147
+ /*!
148
+ @method
149
+ @abstract
150
+ Removes a property on this `FBGraphObject`.
151
+
152
+ @param aKey name of the property to remove
153
+ */
154
+ - (void)removeObjectForKey:(id)aKey;
155
+ /*!
156
+ @method
157
+ @abstract
158
+ Sets the value of a property on this `FBGraphObject`.
159
+
160
+ @param anObject the new value of the property
161
+ @param aKey name of the property to set
162
+ */
163
+ - (void)setObject:(id)anObject forKey:(id)aKey;
164
+
165
+ @end
166
+
167
+ /*!
168
+ @class
169
+
170
+ @abstract
171
+ Static class with helpers for use with graph objects
172
+
173
+ @discussion
174
+ The public interface of this class is useful for creating objects that have the same graph characteristics
175
+ of those returned by methods of the SDK. This class also represents the internal implementation of the
176
+ `FBGraphObject` protocol, used by the Facebook SDK. Application code should not use the `FBGraphObject` class to
177
+ access instances and instance members, favoring the protocol.
178
+ */
179
+ @interface FBGraphObject : NSMutableDictionary<FBGraphObject>
180
+
181
+ /*!
182
+ @method
183
+ @abstract
184
+ Used to create a graph object for, usually for use in posting a new graph object or action
185
+ */
186
+ + (NSMutableDictionary<FBGraphObject>*)graphObject;
187
+
188
+ /*!
189
+ @method
190
+ @abstract
191
+ Used to wrap an existing dictionary with a `FBGraphObject` facade
192
+
193
+ @discussion
194
+ Normally you will not need to call this method, as the Facebook SDK already "FBGraphObject-ifys" json objects
195
+ fetch via `FBRequest` and `FBRequestConnection`. However, you may have other reasons to create json objects in your
196
+ application, which you would like to treat as a graph object. The pattern for doing this is that you pass the root
197
+ node of the json to this method, to retrieve a wrapper. From this point, if you traverse the graph, any other objects
198
+ deeper in the hierarchy will be wrapped as `FBGraphObject`'s in a lazy fashion.
199
+
200
+ This method is designed to avoid unnecessary memory allocations, and object copying. Due to this, the method does
201
+ not copy the source object if it can be avoided, but rather wraps and uses it as is. The returned object derives
202
+ callers shoudl use the returned object after calls to this method, rather than continue to call methods on the original
203
+ object.
204
+
205
+ @param jsonDictionary the dictionary representing the underlying object to wrap
206
+ */
207
+ + (NSMutableDictionary<FBGraphObject>*)graphObjectWrappingDictionary:(NSDictionary*)jsonDictionary;
208
+
209
+ /*!
210
+ @method
211
+ @abstract
212
+ Used to compare two `FBGraphObject`s to determine if represent the same object. We do not overload
213
+ the concept of equality as there are various types of equality that may be important for an `FBGraphObject`
214
+ (for instance, two different `FBGraphObject`s could represent the same object, but contain different
215
+ subsets of fields).
216
+
217
+ @param anObject an `FBGraphObject` to test
218
+
219
+ @param anotherObject the `FBGraphObject` to compare it against
220
+ */
221
+ + (BOOL)isGraphObjectID:(id<FBGraphObject>)anObject sameAs:(id<FBGraphObject>)anotherObject;
222
+
223
+
224
+ @end
@@ -0,0 +1,60 @@
1
+ /*
2
+ * Copyright 2012 Facebook
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #import <Foundation/Foundation.h>
18
+ #import "FBGraphLocation.h"
19
+ #import "FBGraphObject.h"
20
+
21
+ /*!
22
+ @protocol
23
+
24
+ @abstract
25
+ The `FBGraphPlace` protocol enables typed access to a place object
26
+ as represented in the Graph API.
27
+
28
+
29
+ @discussion
30
+ The `FBGraphPlace` protocol represents the most commonly used properties of a
31
+ Facebook place object. It may be used to access an `NSDictionary` object that has
32
+ been wrapped with an <FBGraphObject> facade.
33
+ */
34
+ @protocol FBGraphPlace<FBGraphObject>
35
+
36
+ /*!
37
+ @property
38
+ @abstract Typed access to the place ID.
39
+ */
40
+ @property (retain, nonatomic) NSString *id;
41
+
42
+ /*!
43
+ @property
44
+ @abstract Typed access to the place name.
45
+ */
46
+ @property (retain, nonatomic) NSString *name;
47
+
48
+ /*!
49
+ @property
50
+ @abstract Typed access to the place category.
51
+ */
52
+ @property (retain, nonatomic) NSString *category;
53
+
54
+ /*!
55
+ @property
56
+ @abstract Typed access to the place location.
57
+ */
58
+ @property (retain, nonatomic) id<FBGraphLocation> location;
59
+
60
+ @end