Skip to content

Commit d870a1f

Browse files
Merge pull request #74 from NativeScript/dtodorov/introduce-login-behavior-options
Introduce login behavior options.
2 parents 3410c44 + 68013e8 commit d870a1f

12 files changed

+49
-13
lines changed

demo-angular/app/app.module.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ import { NativeScriptFacebookModule } from "nativescript-facebook/angular";
88
import * as application from 'tns-core-modules/application';
99
import { routes } from "./app.routing";
1010
import { NavigationService } from "./services/navigation.service";
11-
12-
let nsFacebook = require('nativescript-facebook');
11+
import * as nsFacebook from "nativescript-facebook";
1312

1413
application.on(application.launchEvent, function (args) {
1514
nsFacebook.init("1771472059772879");

src/index.android.metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./login-manager"},{"from":"./login-button"},{"from":"./login-event-data"}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./login-manager"},{"from":"./login-button"},{"from":"./login-event-data"}]}]
1+
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./login-manager"},{"from":"./login-button"},{"from":"./login-event-data"},{"from":"./login-behavior"}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./login-manager"},{"from":"./login-button"},{"from":"./login-event-data"},{"from":"./login-behavior"}]}]

src/index.android.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
export * from "./login-manager";
22
export * from "./login-button";
3-
export * from "./login-event-data";
3+
export * from "./login-event-data";
4+
export * from "./login-behavior";

src/index.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@ export * from "./login-manager";
22
export * from "./login-button";
33
export * from "./login-response";
44
export * from "./login-event-data";
5+
export * from "./login-behavior";

src/index.ios.metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./login-button"},{"from":"./login-manager"},{"from":"./login-event-data"}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./login-button"},{"from":"./login-manager"},{"from":"./login-event-data"}]}]
1+
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./login-button"},{"from":"./login-manager"},{"from":"./login-event-data"},{"from":"./login-behavior"}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./login-button"},{"from":"./login-manager"},{"from":"./login-event-data"},{"from":"./login-behavior"}]}]

src/index.ios.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import * as applicationModule from "tns-core-modules/application";
2-
export * from "./login-button";
2+
export * from "./login-button";
33
export * from "./login-manager";
44
export * from "./login-event-data";
5+
export * from "./login-behavior";
56

67
declare class UIResponder { }
78
declare class NSDictionary { }

src/login-behavior.d.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
export declare enum LoginBehavior {
2+
/**
3+
This is the default behavior, and indicates logging in through the native
4+
Facebook app may be used. The SDK may still use Safari instead.
5+
*/
6+
LoginBehaviorNative = 0,
7+
/**
8+
Attempts log in through the Safari or SFSafariViewController, if available.
9+
*/
10+
LoginBehaviorBrowser = 1,
11+
/**
12+
Attempts log in through the Facebook account currently signed in through
13+
the device Settings.
14+
@note If the account is not available to the app (either not configured by user or
15+
as determined by the SDK) this behavior falls back to \c LoginBehaviorNative.
16+
*/
17+
LoginBehaviorSystemAccount = 2,
18+
/**
19+
Attempts log in through a modal \c UIWebView pop up
20+
@note This behavior is only available to certain types of apps. Please check the Facebook
21+
Platform Policy to verify your app meets the restrictions.
22+
*/
23+
LoginBehaviorWeb = 3,
24+
}

src/login-behavior.metadata.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
[{"__symbolic":"module","version":3,"metadata":{"LoginBehavior":{"LoginBehaviorNative":0,"LoginBehaviorBrowser":1,"LoginBehaviorSystemAccount":2,"LoginBehaviorWeb":3}}},{"__symbolic":"module","version":1,"metadata":{"LoginBehavior":{"LoginBehaviorNative":0,"LoginBehaviorBrowser":1,"LoginBehaviorSystemAccount":2,"LoginBehaviorWeb":3}}}]

src/login-behavior.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
export enum LoginBehavior {
2+
LoginBehaviorNative = 0,
3+
LoginBehaviorBrowser = 1,
4+
LoginBehaviorSystemAccount = 2,
5+
LoginBehaviorWeb = 3,
6+
}

src/login-manager.d.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@ export declare function _registerLoginCallback(callback: Function): void;
22
export declare function _registerLogoutCallback(callback: Function): void;
33
export declare let onLoginCallback: Function;
44
export declare let onLogoutCallback: Function;
5+
import { LoginBehavior } from "./login-behavior";
56

67
/**
78
* Sets the Facebook application Id for the current app and init the native facebook sdk.
89
* @param {string} fbAppId the application Id
10+
* @param {LoginBehavior} fbLoginBehavior (iOS only) specifies the login behavior, default value: LoginBehavior.FBSDKLoginBehaviorSystemAccount
911
*/
10-
export declare function init(fbId: string): void;
12+
export declare function init(fbId: string, fbLoginBehavior?: LoginBehavior): void;
1113
/**
1214
* Request the specified publish permissions.
1315
* @param {string[]} permissions Array of the requested publish permissions.

0 commit comments

Comments
 (0)