@ohos-ports/react-native-fbsdk-next 13.4.3-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +943 -0
- package/android/build.gradle +57 -0
- package/android/src/main/AndroidManifest.xml +46 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBAccessTokenModule.java +151 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBActivityEventListener.java +40 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppEventsLoggerModule.java +414 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppLinkModule.java +86 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBGameRequestDialogModule.java +94 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBGraphRequestModule.java +283 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBLoginButtonManager.java +83 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBLoginManagerModule.java +171 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBMessageDialogModule.java +111 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBProfileModule.java +68 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBSDKCallbackManagerBaseJavaModule.java +41 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBSDKPackage.java +60 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBSendButtonManager.java +51 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBSettingsModule.java +95 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBShareButtonManager.java +53 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/FBShareDialogModule.java +107 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/RCTLoginButton.java +126 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/RCTLoginButtonEvent.java +27 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/ReactNativeFacebookSDKCallback.java +58 -0
- package/android/src/main/java/com/facebook/reactnative/androidsdk/Utility.java +283 -0
- package/app.plugin.js +1 -0
- package/expo-module.config.json +10 -0
- package/ios/ExpoAdapterFBSDKNext/FacebookAppDelegate.swift +21 -0
- package/ios/ExpoAdapterFBSDKNext.podspec +33 -0
- package/ios/RCTFBSDK/core/RCTConvert+FBSDKAccessToken.h +27 -0
- package/ios/RCTFBSDK/core/RCTConvert+FBSDKAccessToken.m +41 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAEMReporter.m +30 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAccessToken.h +24 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAccessToken.m +115 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAppEvents.h +24 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAppEvents.m +251 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAppLink.h +24 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAppLink.m +52 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAuthenticationToken.h +6 -0
- package/ios/RCTFBSDK/core/RCTFBSDKAuthenticationToken.m +35 -0
- package/ios/RCTFBSDK/core/RCTFBSDKGraphRequestConnectionContainer.h +50 -0
- package/ios/RCTFBSDK/core/RCTFBSDKGraphRequestConnectionContainer.m +124 -0
- package/ios/RCTFBSDK/core/RCTFBSDKGraphRequestManager.h +25 -0
- package/ios/RCTFBSDK/core/RCTFBSDKGraphRequestManager.m +43 -0
- package/ios/RCTFBSDK/core/RCTFBSDKProfile.h +6 -0
- package/ios/RCTFBSDK/core/RCTFBSDKProfile.m +58 -0
- package/ios/RCTFBSDK/core/RCTFBSDKSettings.h +14 -0
- package/ios/RCTFBSDK/core/RCTFBSDKSettings.m +80 -0
- package/ios/RCTFBSDK/login/RCTConvert+FBSDKLogin.h +28 -0
- package/ios/RCTFBSDK/login/RCTConvert+FBSDKLogin.m +35 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginButtonManager.h +25 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginButtonManager.m +73 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginButtonView.h +12 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginButtonView.m +57 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginManager.h +22 -0
- package/ios/RCTFBSDK/login/RCTFBSDKLoginManager.m +154 -0
- package/ios/RCTFBSDK/share/RCTConvert+FBSDKSharingContent.h +29 -0
- package/ios/RCTFBSDK/share/RCTConvert+FBSDKSharingContent.m +111 -0
- package/ios/RCTFBSDK/share/RCTFBSDKGameRequestDialog.h +24 -0
- package/ios/RCTFBSDK/share/RCTFBSDKGameRequestDialog.m +134 -0
- package/ios/RCTFBSDK/share/RCTFBSDKMessageDialog.h +24 -0
- package/ios/RCTFBSDK/share/RCTFBSDKMessageDialog.m +116 -0
- package/ios/RCTFBSDK/share/RCTFBSDKSendButtonManager.h +25 -0
- package/ios/RCTFBSDK/share/RCTFBSDKSendButtonManager.m +39 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareButtonManager.h +23 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareButtonManager.m +39 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareDialog.h +24 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareDialog.m +134 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareHelper.h +21 -0
- package/ios/RCTFBSDK/share/RCTFBSDKShareHelper.m +32 -0
- package/ios/RCTFBSDK.xcodeproj/project.pbxproj +446 -0
- package/ios/RCTFBSDK.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/RCTFBSDK.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/jest/mocks/index.js +81 -0
- package/jest/setup.js +3 -0
- package/lib/commonjs/FBAEMReporter.js +39 -0
- package/lib/commonjs/FBAEMReporter.js.map +1 -0
- package/lib/commonjs/FBAccessToken.js +198 -0
- package/lib/commonjs/FBAccessToken.js.map +1 -0
- package/lib/commonjs/FBAppEventsLogger.js +221 -0
- package/lib/commonjs/FBAppEventsLogger.js.map +1 -0
- package/lib/commonjs/FBAppLink.js +36 -0
- package/lib/commonjs/FBAppLink.js.map +1 -0
- package/lib/commonjs/FBAuthenticationToken.js +55 -0
- package/lib/commonjs/FBAuthenticationToken.js.map +1 -0
- package/lib/commonjs/FBGameRequestDialog.js +45 -0
- package/lib/commonjs/FBGameRequestDialog.js.map +1 -0
- package/lib/commonjs/FBGraphRequest.js +66 -0
- package/lib/commonjs/FBGraphRequest.js.map +1 -0
- package/lib/commonjs/FBGraphRequestManager.js +96 -0
- package/lib/commonjs/FBGraphRequestManager.js.map +1 -0
- package/lib/commonjs/FBLoginButton.js +67 -0
- package/lib/commonjs/FBLoginButton.js.map +1 -0
- package/lib/commonjs/FBLoginManager.js +102 -0
- package/lib/commonjs/FBLoginManager.js.map +1 -0
- package/lib/commonjs/FBMessageDialog.js +51 -0
- package/lib/commonjs/FBMessageDialog.js.map +1 -0
- package/lib/commonjs/FBProfile.js +134 -0
- package/lib/commonjs/FBProfile.js.map +1 -0
- package/lib/commonjs/FBSendButton.js +48 -0
- package/lib/commonjs/FBSendButton.js.map +1 -0
- package/lib/commonjs/FBSettings.js +115 -0
- package/lib/commonjs/FBSettings.js.map +1 -0
- package/lib/commonjs/FBShareButton.js +48 -0
- package/lib/commonjs/FBShareButton.js.map +1 -0
- package/lib/commonjs/FBShareDialog.js +57 -0
- package/lib/commonjs/FBShareDialog.js.map +1 -0
- package/lib/commonjs/index.js +323 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/models/FBAppGroupCreationContent.js +2 -0
- package/lib/commonjs/models/FBAppGroupCreationContent.js.map +1 -0
- package/lib/commonjs/models/FBGameRequestContent.js +2 -0
- package/lib/commonjs/models/FBGameRequestContent.js.map +1 -0
- package/lib/commonjs/models/FBSDKCallback.js +2 -0
- package/lib/commonjs/models/FBSDKCallback.js.map +1 -0
- package/lib/commonjs/models/FBShareContent.js +6 -0
- package/lib/commonjs/models/FBShareContent.js.map +1 -0
- package/lib/commonjs/models/FBShareLinkContent.js +6 -0
- package/lib/commonjs/models/FBShareLinkContent.js.map +1 -0
- package/lib/commonjs/models/FBSharePhoto.js +2 -0
- package/lib/commonjs/models/FBSharePhoto.js.map +1 -0
- package/lib/commonjs/models/FBSharePhotoContent.js +6 -0
- package/lib/commonjs/models/FBSharePhotoContent.js.map +1 -0
- package/lib/commonjs/models/FBShareVideo.js +2 -0
- package/lib/commonjs/models/FBShareVideo.js.map +1 -0
- package/lib/commonjs/models/FBShareVideoContent.js +6 -0
- package/lib/commonjs/models/FBShareVideoContent.js.map +1 -0
- package/lib/commonjs/util/validate.js +180 -0
- package/lib/commonjs/util/validate.js.map +1 -0
- package/lib/commonjs/utils/index.js +2 -0
- package/lib/commonjs/utils/index.js.map +1 -0
- package/lib/module/FBAEMReporter.js +34 -0
- package/lib/module/FBAEMReporter.js.map +1 -0
- package/lib/module/FBAccessToken.js +191 -0
- package/lib/module/FBAccessToken.js.map +1 -0
- package/lib/module/FBAppEventsLogger.js +215 -0
- package/lib/module/FBAppEventsLogger.js.map +1 -0
- package/lib/module/FBAppLink.js +29 -0
- package/lib/module/FBAppLink.js.map +1 -0
- package/lib/module/FBAuthenticationToken.js +48 -0
- package/lib/module/FBAuthenticationToken.js.map +1 -0
- package/lib/module/FBGameRequestDialog.js +39 -0
- package/lib/module/FBGameRequestDialog.js.map +1 -0
- package/lib/module/FBGraphRequest.js +60 -0
- package/lib/module/FBGraphRequest.js.map +1 -0
- package/lib/module/FBGraphRequestManager.js +90 -0
- package/lib/module/FBGraphRequestManager.js.map +1 -0
- package/lib/module/FBLoginButton.js +62 -0
- package/lib/module/FBLoginButton.js.map +1 -0
- package/lib/module/FBLoginManager.js +97 -0
- package/lib/module/FBLoginManager.js.map +1 -0
- package/lib/module/FBMessageDialog.js +45 -0
- package/lib/module/FBMessageDialog.js.map +1 -0
- package/lib/module/FBProfile.js +127 -0
- package/lib/module/FBProfile.js.map +1 -0
- package/lib/module/FBSendButton.js +41 -0
- package/lib/module/FBSendButton.js.map +1 -0
- package/lib/module/FBSettings.js +108 -0
- package/lib/module/FBSettings.js.map +1 -0
- package/lib/module/FBShareButton.js +41 -0
- package/lib/module/FBShareButton.js.map +1 -0
- package/lib/module/FBShareDialog.js +51 -0
- package/lib/module/FBShareDialog.js.map +1 -0
- package/lib/module/index.js +44 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/models/FBAppGroupCreationContent.js +2 -0
- package/lib/module/models/FBAppGroupCreationContent.js.map +1 -0
- package/lib/module/models/FBGameRequestContent.js +2 -0
- package/lib/module/models/FBGameRequestContent.js.map +1 -0
- package/lib/module/models/FBSDKCallback.js +2 -0
- package/lib/module/models/FBSDKCallback.js.map +1 -0
- package/lib/module/models/FBShareContent.js +2 -0
- package/lib/module/models/FBShareContent.js.map +1 -0
- package/lib/module/models/FBShareLinkContent.js +2 -0
- package/lib/module/models/FBShareLinkContent.js.map +1 -0
- package/lib/module/models/FBSharePhoto.js +2 -0
- package/lib/module/models/FBSharePhoto.js.map +1 -0
- package/lib/module/models/FBSharePhotoContent.js +2 -0
- package/lib/module/models/FBSharePhotoContent.js.map +1 -0
- package/lib/module/models/FBShareVideo.js +2 -0
- package/lib/module/models/FBShareVideo.js.map +1 -0
- package/lib/module/models/FBShareVideoContent.js +2 -0
- package/lib/module/models/FBShareVideoContent.js.map +1 -0
- package/lib/module/util/validate.js +157 -0
- package/lib/module/util/validate.js.map +1 -0
- package/lib/module/utils/index.js +2 -0
- package/lib/module/utils/index.js.map +1 -0
- package/lib/typescript/FBAEMReporter.d.ts +21 -0
- package/lib/typescript/FBAEMReporter.d.ts.map +1 -0
- package/lib/typescript/FBAccessToken.d.ts +118 -0
- package/lib/typescript/FBAccessToken.d.ts.map +1 -0
- package/lib/typescript/FBAppEventsLogger.d.ts +201 -0
- package/lib/typescript/FBAppEventsLogger.d.ts.map +1 -0
- package/lib/typescript/FBAppLink.d.ts +5 -0
- package/lib/typescript/FBAppLink.d.ts.map +1 -0
- package/lib/typescript/FBAuthenticationToken.d.ts +29 -0
- package/lib/typescript/FBAuthenticationToken.d.ts.map +1 -0
- package/lib/typescript/FBGameRequestDialog.d.ts +39 -0
- package/lib/typescript/FBGameRequestDialog.d.ts.map +1 -0
- package/lib/typescript/FBGraphRequest.d.ts +70 -0
- package/lib/typescript/FBGraphRequest.d.ts.map +1 -0
- package/lib/typescript/FBGraphRequestManager.d.ts +51 -0
- package/lib/typescript/FBGraphRequestManager.d.ts.map +1 -0
- package/lib/typescript/FBLoginButton.d.ts +92 -0
- package/lib/typescript/FBLoginButton.d.ts.map +1 -0
- package/lib/typescript/FBLoginManager.d.ts +77 -0
- package/lib/typescript/FBLoginManager.d.ts.map +1 -0
- package/lib/typescript/FBMessageDialog.d.ts +42 -0
- package/lib/typescript/FBMessageDialog.d.ts.map +1 -0
- package/lib/typescript/FBProfile.d.ts +127 -0
- package/lib/typescript/FBProfile.d.ts.map +1 -0
- package/lib/typescript/FBSendButton.d.ts +42 -0
- package/lib/typescript/FBSendButton.d.ts.map +1 -0
- package/lib/typescript/FBSettings.d.ts +49 -0
- package/lib/typescript/FBSettings.d.ts.map +1 -0
- package/lib/typescript/FBShareButton.d.ts +42 -0
- package/lib/typescript/FBShareButton.d.ts.map +1 -0
- package/lib/typescript/FBShareDialog.d.ts +69 -0
- package/lib/typescript/FBShareDialog.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +43 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/models/FBAppGroupCreationContent.d.ts +43 -0
- package/lib/typescript/models/FBAppGroupCreationContent.d.ts.map +1 -0
- package/lib/typescript/models/FBGameRequestContent.d.ts +63 -0
- package/lib/typescript/models/FBGameRequestContent.d.ts.map +1 -0
- package/lib/typescript/models/FBSDKCallback.d.ts +4 -0
- package/lib/typescript/models/FBSDKCallback.d.ts.map +1 -0
- package/lib/typescript/models/FBShareContent.d.ts +48 -0
- package/lib/typescript/models/FBShareContent.d.ts.map +1 -0
- package/lib/typescript/models/FBShareLinkContent.d.ts +65 -0
- package/lib/typescript/models/FBShareLinkContent.d.ts.map +1 -0
- package/lib/typescript/models/FBSharePhoto.d.ts +43 -0
- package/lib/typescript/models/FBSharePhoto.d.ts.map +1 -0
- package/lib/typescript/models/FBSharePhotoContent.d.ts +45 -0
- package/lib/typescript/models/FBSharePhotoContent.d.ts.map +1 -0
- package/lib/typescript/models/FBShareVideo.d.ts +31 -0
- package/lib/typescript/models/FBShareVideo.d.ts.map +1 -0
- package/lib/typescript/models/FBShareVideoContent.d.ts +58 -0
- package/lib/typescript/models/FBShareVideoContent.d.ts.map +1 -0
- package/lib/typescript/util/validate.d.ts +62 -0
- package/lib/typescript/util/validate.d.ts.map +1 -0
- package/lib/typescript/utils/index.d.ts +2 -0
- package/lib/typescript/utils/index.d.ts.map +1 -0
- package/package.json +155 -0
- package/plugin/build/config.d.ts +53 -0
- package/plugin/build/config.js +46 -0
- package/plugin/build/withFacebook.d.ts +4 -0
- package/plugin/build/withFacebook.js +59 -0
- package/plugin/build/withFacebookAndroid.d.ts +6 -0
- package/plugin/build/withFacebookAndroid.js +197 -0
- package/plugin/build/withFacebookIOS.d.ts +15 -0
- package/plugin/build/withFacebookIOS.js +163 -0
- package/plugin/build/withSKAdNetworkIdentifiers.d.ts +9 -0
- package/plugin/build/withSKAdNetworkIdentifiers.js +36 -0
- package/plugin/tsconfig.json +9 -0
- package/react-native-fbsdk-next.podspec +34 -0
- package/src/FBAEMReporter.ts +44 -0
- package/src/FBAccessToken.ts +222 -0
- package/src/FBAppEventsLogger.ts +375 -0
- package/src/FBAppLink.ts +30 -0
- package/src/FBAuthenticationToken.ts +61 -0
- package/src/FBGameRequestDialog.ts +49 -0
- package/src/FBGraphRequest.ts +89 -0
- package/src/FBGraphRequestManager.ts +117 -0
- package/src/FBLoginButton.tsx +152 -0
- package/src/FBLoginManager.ts +133 -0
- package/src/FBMessageDialog.ts +53 -0
- package/src/FBProfile.ts +166 -0
- package/src/FBSendButton.tsx +61 -0
- package/src/FBSettings.ts +122 -0
- package/src/FBShareButton.tsx +61 -0
- package/src/FBShareDialog.ts +96 -0
- package/src/index.ts +85 -0
- package/src/models/FBAppGroupCreationContent.ts +48 -0
- package/src/models/FBGameRequestContent.ts +81 -0
- package/src/models/FBSDKCallback.ts +3 -0
- package/src/models/FBShareContent.ts +54 -0
- package/src/models/FBShareLinkContent.ts +71 -0
- package/src/models/FBSharePhoto.ts +45 -0
- package/src/models/FBSharePhotoContent.ts +48 -0
- package/src/models/FBShareVideo.ts +31 -0
- package/src/models/FBShareVideoContent.ts +64 -0
- package/src/util/validate.ts +167 -0
- package/src/utils/index.ts +1 -0
- package/tsconfig.json +103 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import "RCTConvert+FBSDKSharingContent.h"
|
|
20
|
+
|
|
21
|
+
@implementation RCTConvert(FBSDKSharingContent)
|
|
22
|
+
|
|
23
|
+
#pragma mark - Class Methods
|
|
24
|
+
|
|
25
|
+
+ (RCTFBSDKSharingContent)RCTFBSDKSharingContent:(id)json
|
|
26
|
+
{
|
|
27
|
+
NSDictionary *contentData = [self NSDictionary:json];
|
|
28
|
+
if (contentData) {
|
|
29
|
+
id<FBSDKSharingContent> content = nil;
|
|
30
|
+
// Build the right kind of content based on the specified content type
|
|
31
|
+
NSString *contentType = [self NSString:contentData[@"contentType"]];
|
|
32
|
+
if ([contentType isEqualToString:@"link"]) {
|
|
33
|
+
content = RCTBuildLinkContent(contentData);
|
|
34
|
+
} else if ([contentType isEqualToString:@"photo"]) {
|
|
35
|
+
content = RCTBuildPhotoContent(contentData);
|
|
36
|
+
} else if ([contentType isEqualToString:@"video"]) {
|
|
37
|
+
content = RCTBuildVideoContent(contentData);
|
|
38
|
+
} else {
|
|
39
|
+
return nil;
|
|
40
|
+
}
|
|
41
|
+
if (content) {
|
|
42
|
+
RCTAppendGenericContent(content, contentData[@"commonParameters"]);
|
|
43
|
+
}
|
|
44
|
+
return content;
|
|
45
|
+
} else {
|
|
46
|
+
return nil;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
#pragma mark - Helper Methods
|
|
51
|
+
|
|
52
|
+
static void RCTAppendGenericContent(RCTFBSDKSharingContent contentObject, NSDictionary *contentData)
|
|
53
|
+
{
|
|
54
|
+
if (contentData) {
|
|
55
|
+
contentObject.peopleIDs = [RCTConvert NSStringArray:contentData[@"peopleIds"]];
|
|
56
|
+
contentObject.placeID = [RCTConvert NSString:contentData[@"placeId"]];
|
|
57
|
+
contentObject.ref = [RCTConvert NSString:contentData[@"ref"]];
|
|
58
|
+
contentObject.hashtag = [[FBSDKHashtag alloc] initWithString: [RCTConvert NSString:contentData[@"hashtag"]]];
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
static FBSDKShareLinkContent *RCTBuildLinkContent(NSDictionary *contentData)
|
|
63
|
+
{
|
|
64
|
+
FBSDKShareLinkContent *linkContent = [[FBSDKShareLinkContent alloc] init];
|
|
65
|
+
linkContent.contentURL = [RCTConvert NSURL:contentData[@"contentUrl"]];
|
|
66
|
+
linkContent.quote = [RCTConvert NSString:contentData[@"quote"]];
|
|
67
|
+
return linkContent;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
static FBSDKSharePhotoContent *RCTBuildPhotoContent(NSDictionary *contentData)
|
|
71
|
+
{
|
|
72
|
+
NSArray *photoData = [RCTConvert NSArray:contentData[@"photos"]];
|
|
73
|
+
FBSDKSharePhotoContent *photoContent = [[FBSDKSharePhotoContent alloc] init];
|
|
74
|
+
NSMutableArray *photos = [[NSMutableArray alloc] init];
|
|
75
|
+
// Generate an FBSDKSharePhoto for each item in photoData
|
|
76
|
+
for (NSDictionary *p in photoData) {
|
|
77
|
+
FBSDKSharePhoto *photo = RCTBuildPhoto(p);
|
|
78
|
+
if (photo.image) {
|
|
79
|
+
[photos addObject:photo];
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
photoContent.photos = photos;
|
|
83
|
+
photoContent.contentURL = [RCTConvert NSURL:contentData[@"contentUrl"]];
|
|
84
|
+
return photoContent;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
static FBSDKSharePhoto *RCTBuildPhoto(NSDictionary *photoData)
|
|
88
|
+
{
|
|
89
|
+
UIImage *image = [RCTConvert UIImage:photoData[@"imageUrl"]];
|
|
90
|
+
BOOL userGenerated = [RCTConvert BOOL:photoData[@"userGenerated"]];
|
|
91
|
+
FBSDKSharePhoto *photo =[ [FBSDKSharePhoto alloc] initWithImage:image isUserGenerated:userGenerated];
|
|
92
|
+
photo.caption = [RCTConvert NSString:photoData[@"caption"]];
|
|
93
|
+
return photo;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
static FBSDKShareVideoContent *RCTBuildVideoContent(NSDictionary *contentData)
|
|
97
|
+
{
|
|
98
|
+
FBSDKShareVideoContent *videoContent = [[FBSDKShareVideoContent alloc] init];
|
|
99
|
+
NSDictionary *videoData = [RCTConvert NSDictionary:contentData[@"video"]];
|
|
100
|
+
NSURL *videoURL = [RCTConvert NSURL:videoData[@"localUrl"]];
|
|
101
|
+
FBSDKShareVideo *video = [[FBSDKShareVideo alloc] initWithVideoURL:videoURL previewPhoto:nil];
|
|
102
|
+
if (contentData[@"previewPhoto"]) {
|
|
103
|
+
FBSDKSharePhoto *previewPhoto = RCTBuildPhoto([RCTConvert NSDictionary:contentData[@"previewPhoto"]]);
|
|
104
|
+
video.previewPhoto = previewPhoto;
|
|
105
|
+
}
|
|
106
|
+
videoContent.video = video;
|
|
107
|
+
videoContent.contentURL = [RCTConvert NSURL:contentData[@"contentUrl"]];
|
|
108
|
+
return videoContent;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
@end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import <React/RCTBridgeModule.h>
|
|
20
|
+
|
|
21
|
+
@import FBSDKGamingServicesKit;
|
|
22
|
+
|
|
23
|
+
@interface RCTFBSDKGameRequestDialog : NSObject <RCTBridgeModule>
|
|
24
|
+
@end
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import "RCTFBSDKGameRequestDialog.h"
|
|
20
|
+
|
|
21
|
+
#import <React/RCTConvert.h>
|
|
22
|
+
#import <React/RCTUtils.h>
|
|
23
|
+
|
|
24
|
+
@implementation RCTConvert (FBSDKGameRequestDialog)
|
|
25
|
+
|
|
26
|
+
RCT_ENUM_CONVERTER(FBSDKGameRequestActionType, (@{
|
|
27
|
+
@"send": @(FBSDKGameRequestActionTypeSend),
|
|
28
|
+
@"askfor": @(FBSDKGameRequestActionTypeAskFor),
|
|
29
|
+
@"turn": @(FBSDKGameRequestActionTypeTurn),
|
|
30
|
+
}), FBSDKGameRequestActionTypeNone, unsignedIntegerValue)
|
|
31
|
+
|
|
32
|
+
RCT_ENUM_CONVERTER(FBSDKGameRequestFilter, (@{
|
|
33
|
+
@"app_users": @(FBSDKGameRequestFilterAppUsers),
|
|
34
|
+
@"app_non_users": @(FBSDKGameRequestFilterAppNonUsers),
|
|
35
|
+
}), FBSDKGameRequestActionTypeNone, unsignedIntegerValue)
|
|
36
|
+
|
|
37
|
+
+ (FBSDKGameRequestContent *)FBSDKGameRequestContent:(id)json
|
|
38
|
+
{
|
|
39
|
+
NSDictionary *contentData = [self NSDictionary:json];
|
|
40
|
+
FBSDKGameRequestContent *content = [[FBSDKGameRequestContent alloc] init];
|
|
41
|
+
content.actionType = [RCTConvert FBSDKGameRequestActionType:RCTNilIfNull(contentData[@"actionType"])];
|
|
42
|
+
content.data = [RCTConvert NSString:RCTNilIfNull(contentData[@"data"])];
|
|
43
|
+
content.filters = [RCTConvert FBSDKGameRequestFilter:RCTNilIfNull(contentData[@"filters"])];
|
|
44
|
+
content.message = [RCTConvert NSString:contentData[@"message"]];
|
|
45
|
+
content.objectID = [RCTConvert NSString:RCTNilIfNull(contentData[@"objectId"])];
|
|
46
|
+
content.recipients = [RCTConvert NSStringArray:RCTNilIfNull(contentData[@"recipients"])];
|
|
47
|
+
content.recipientSuggestions = [RCTConvert NSStringArray:RCTNilIfNull(contentData[@"suggestions"])];
|
|
48
|
+
content.title = [RCTConvert NSString:RCTNilIfNull(contentData[@"title"])];
|
|
49
|
+
return content;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
@end
|
|
53
|
+
|
|
54
|
+
@interface RCTFBSDKGameRequestDialog () <FBSDKGameRequestDialogDelegate>
|
|
55
|
+
@end
|
|
56
|
+
|
|
57
|
+
@implementation RCTFBSDKGameRequestDialog
|
|
58
|
+
{
|
|
59
|
+
FBSDKGameRequestDialog *_dialog;
|
|
60
|
+
RCTPromiseResolveBlock _showResolve;
|
|
61
|
+
RCTPromiseRejectBlock _showReject;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
RCT_EXPORT_MODULE(FBGameRequestDialog);
|
|
65
|
+
|
|
66
|
+
- (dispatch_queue_t)methodQueue
|
|
67
|
+
{
|
|
68
|
+
return dispatch_get_main_queue();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
#pragma mark - Object Lifecycle
|
|
72
|
+
|
|
73
|
+
- (instancetype)init
|
|
74
|
+
{
|
|
75
|
+
if ((self = [super init])) {
|
|
76
|
+
// Is no longer possible to initialize a dialog without content
|
|
77
|
+
FBSDKGameRequestContent *emptyContent = [[FBSDKGameRequestContent alloc] init];
|
|
78
|
+
_dialog = [[FBSDKGameRequestDialog alloc] initWithContent:emptyContent delegate:self];
|
|
79
|
+
}
|
|
80
|
+
return self;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
+ (BOOL)requiresMainQueueSetup
|
|
84
|
+
{
|
|
85
|
+
return YES;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
#pragma mark - React Native Methods
|
|
89
|
+
|
|
90
|
+
RCT_EXPORT_METHOD(canShow:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
91
|
+
{
|
|
92
|
+
resolve([NSNumber numberWithBool:[_dialog canShow]]);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
RCT_EXPORT_METHOD(show:(FBSDKGameRequestContent *)gameRequestContent
|
|
96
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
97
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
98
|
+
{
|
|
99
|
+
_showResolve = resolve;
|
|
100
|
+
_showReject = reject;
|
|
101
|
+
[_dialog setContent:gameRequestContent];
|
|
102
|
+
[_dialog show];
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
#pragma mark - FBSDKSharingDelegate
|
|
106
|
+
|
|
107
|
+
- (void)gameRequestDialog:(FBSDKGameRequestDialog *)gameRequestDialog didCompleteWithResults:(NSDictionary *)results
|
|
108
|
+
{
|
|
109
|
+
if (_showResolve) {
|
|
110
|
+
_showResolve(results);
|
|
111
|
+
_showResolve = nil;
|
|
112
|
+
}
|
|
113
|
+
_showReject = nil;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
- (void)gameRequestDialog:(FBSDKGameRequestDialog *)gameRequestDialog didFailWithError:(NSError *)error
|
|
117
|
+
{
|
|
118
|
+
if (_showReject) {
|
|
119
|
+
_showReject(@"FacebookSDK", @"Game Request Dialog encounters error.", error);
|
|
120
|
+
_showReject = nil;
|
|
121
|
+
}
|
|
122
|
+
_showResolve = nil;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
- (void)gameRequestDialogDidCancel:(FBSDKGameRequestDialog *)gameRequestDialog
|
|
126
|
+
{
|
|
127
|
+
if (_showResolve) {
|
|
128
|
+
_showResolve(@{@"isCancelled": @YES});
|
|
129
|
+
_showResolve = nil;
|
|
130
|
+
}
|
|
131
|
+
_showReject = nil;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
@end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import <React/RCTBridgeModule.h>
|
|
20
|
+
|
|
21
|
+
#import <FBSDKShareKit/FBSDKShareKit.h>
|
|
22
|
+
|
|
23
|
+
@interface RCTFBSDKMessageDialog : NSObject <RCTBridgeModule>
|
|
24
|
+
@end
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import "RCTFBSDKMessageDialog.h"
|
|
20
|
+
|
|
21
|
+
#import <React/RCTUtils.h>
|
|
22
|
+
|
|
23
|
+
#import "RCTConvert+FBSDKSharingContent.h"
|
|
24
|
+
|
|
25
|
+
@interface RCTFBSDKMessageDialog () <FBSDKSharingDelegate>
|
|
26
|
+
@end
|
|
27
|
+
|
|
28
|
+
@implementation RCTFBSDKMessageDialog
|
|
29
|
+
{
|
|
30
|
+
FBSDKMessageDialog *_dialog;
|
|
31
|
+
RCTPromiseResolveBlock _showResolve;
|
|
32
|
+
RCTPromiseRejectBlock _showReject;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
RCT_EXPORT_MODULE(FBMessageDialog);
|
|
36
|
+
|
|
37
|
+
- (dispatch_queue_t)methodQueue
|
|
38
|
+
{
|
|
39
|
+
return dispatch_get_main_queue();
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
#pragma mark - Object Lifecycle
|
|
43
|
+
|
|
44
|
+
- (instancetype)init
|
|
45
|
+
{
|
|
46
|
+
if ((self = [super init])) {
|
|
47
|
+
_dialog = [[FBSDKMessageDialog alloc] initWithContent:nil delegate:self];
|
|
48
|
+
}
|
|
49
|
+
return self;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
+ (BOOL)requiresMainQueueSetup
|
|
53
|
+
{
|
|
54
|
+
return YES;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
#pragma mark - React Native Methods
|
|
58
|
+
|
|
59
|
+
RCT_EXPORT_METHOD(canShow:(RCTFBSDKSharingContent)content resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
60
|
+
{
|
|
61
|
+
_dialog.shareContent = content;
|
|
62
|
+
if ([_dialog canShow]) {
|
|
63
|
+
NSError *error;
|
|
64
|
+
if ([_dialog validateWithError:&error]) {
|
|
65
|
+
resolve(@YES);
|
|
66
|
+
} else {
|
|
67
|
+
reject(@"FacebookSDK", @"SharingContent is invalid", error);
|
|
68
|
+
}
|
|
69
|
+
} else {
|
|
70
|
+
resolve(@NO);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
RCT_EXPORT_METHOD(show:(RCTFBSDKSharingContent)content resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
75
|
+
{
|
|
76
|
+
_showResolve = resolve;
|
|
77
|
+
_showReject = reject;
|
|
78
|
+
_dialog.shareContent = content;
|
|
79
|
+
[_dialog show];
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
RCT_EXPORT_METHOD(setShouldFailOnDataError:(BOOL)shouldFailOnDataError)
|
|
83
|
+
{
|
|
84
|
+
_dialog.shouldFailOnDataError = shouldFailOnDataError;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
#pragma mark - FBSDKSharingDelegate
|
|
88
|
+
|
|
89
|
+
- (void)sharer:(id<FBSDKSharing>)sharer didCompleteWithResults:(NSDictionary *)results
|
|
90
|
+
{
|
|
91
|
+
if (_showResolve) {
|
|
92
|
+
_showResolve(results);
|
|
93
|
+
_showResolve = nil;
|
|
94
|
+
}
|
|
95
|
+
_showReject = nil;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
- (void)sharer:(id<FBSDKSharing>)sharer didFailWithError:(NSError *)error
|
|
99
|
+
{
|
|
100
|
+
if (_showReject) {
|
|
101
|
+
_showReject(@"FacebookSDK", @"MessageDialog encounters error", error);
|
|
102
|
+
_showReject = nil;
|
|
103
|
+
}
|
|
104
|
+
_showResolve = nil;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
- (void)sharerDidCancel:(id<FBSDKSharing>)sharer
|
|
108
|
+
{
|
|
109
|
+
if (_showResolve) {
|
|
110
|
+
_showResolve( @{@"isCancelled": @YES});
|
|
111
|
+
_showResolve = nil;
|
|
112
|
+
}
|
|
113
|
+
_showReject = nil;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
@end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import <React/RCTViewManager.h>
|
|
20
|
+
|
|
21
|
+
#import <FBSDKShareKit/FBSDKShareKit.h>
|
|
22
|
+
|
|
23
|
+
@interface RCTFBSDKSendButtonManager : RCTViewManager
|
|
24
|
+
|
|
25
|
+
@end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import "RCTFBSDKSendButtonManager.h"
|
|
20
|
+
|
|
21
|
+
#import "RCTConvert+FBSDKSharingContent.h"
|
|
22
|
+
|
|
23
|
+
@implementation RCTFBSDKSendButtonManager
|
|
24
|
+
|
|
25
|
+
RCT_EXPORT_MODULE(RCTFBSendButton)
|
|
26
|
+
|
|
27
|
+
#pragma mark - Object Lifecycle
|
|
28
|
+
|
|
29
|
+
- (UIView *)view
|
|
30
|
+
{
|
|
31
|
+
FBSDKSendButton *sendButton = [[FBSDKSendButton alloc] init];
|
|
32
|
+
return sendButton;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
#pragma mark - Properties
|
|
36
|
+
|
|
37
|
+
RCT_EXPORT_VIEW_PROPERTY(shareContent, RCTFBSDKSharingContent)
|
|
38
|
+
|
|
39
|
+
@end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import <React/RCTViewManager.h>
|
|
20
|
+
|
|
21
|
+
@interface RCTFBSDKShareButtonManager : RCTViewManager
|
|
22
|
+
|
|
23
|
+
@end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import "RCTFBSDKShareButtonManager.h"
|
|
20
|
+
|
|
21
|
+
#import "RCTConvert+FBSDKSharingContent.h"
|
|
22
|
+
|
|
23
|
+
@implementation RCTFBSDKShareButtonManager
|
|
24
|
+
|
|
25
|
+
RCT_EXPORT_MODULE(RCTFBShareButton)
|
|
26
|
+
|
|
27
|
+
#pragma mark - Object Lifecycle
|
|
28
|
+
|
|
29
|
+
- (UIView *)view
|
|
30
|
+
{
|
|
31
|
+
FBSDKShareButton *shareButton = [[FBSDKShareButton alloc] init];
|
|
32
|
+
return shareButton;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
#pragma mark - Properties
|
|
36
|
+
|
|
37
|
+
RCT_EXPORT_VIEW_PROPERTY(shareContent, RCTFBSDKSharingContent)
|
|
38
|
+
|
|
39
|
+
@end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// Copyright (c) 2015-present, Facebook, Inc. All rights reserved.
|
|
2
|
+
//
|
|
3
|
+
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
|
4
|
+
// copy, modify, and distribute this software in source code or binary form for use
|
|
5
|
+
// in connection with the web services and APIs provided by Facebook.
|
|
6
|
+
//
|
|
7
|
+
// As with any software that integrates with the Facebook platform, your use of
|
|
8
|
+
// this software is subject to the Facebook Developer Principles and Policies
|
|
9
|
+
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
|
10
|
+
// included in all copies or substantial portions of the software.
|
|
11
|
+
//
|
|
12
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
|
14
|
+
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
|
15
|
+
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
16
|
+
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
17
|
+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
18
|
+
|
|
19
|
+
#import <React/RCTBridgeModule.h>
|
|
20
|
+
|
|
21
|
+
#import <FBSDKShareKit/FBSDKShareKit.h>
|
|
22
|
+
|
|
23
|
+
@interface RCTFBSDKShareDialog : NSObject <RCTBridgeModule, FBSDKSharingDelegate>
|
|
24
|
+
@end
|