@brandandcelebrities/lib
v1.2.9
Published
Collection of usefull lib
Readme
B&C Library
npm i -S @brandandcelebrities/libFacebookBusinessConnect
import FacebookBusinessConnect from '@brandandcelebrities/lib/FacebookBusinessConnect';
// Constructor
const fbc = new FacebookBusinessConnect();
// -> Init value for constructor
{
debug: false, // Log each step in facebook SDK
hasConnectedSnas: false, // Flag if user is suposed to have at least one connected SNA
tokenWillExpire: false, // Flag if at least one token is about to expire
}FacebookBusinessConnect is an EventEmmiter, so you have to listen to different actions:
import { .... } from '@brandandcelebrities/lib/FacebookBusinessConnect';
fbc.on(EVENT, Function);Available Events
ON_STATUS_CHANGE => dispatched when connection status has changed
fbc.on(ON_STATUS_CHANGE, ({status}) => {} );ON_CONNECTED => dispatched when user is connected
fbc.on(ON_CONNECTED, ({accessToken, userId}) => {} );ON_DISCONNECTED => dispatched when user is not connected
fbc.on(ON_DISCONNECTED, ({reason}) => {} );SHOULD_RECONNECT => dispatched when user is not connected and should be asked to reconnect because of a token expiration
fbc.on(SHOULD_RECONNECT, () => {} );ON_REFRESHED_TOKENS => dispatched when tokens are refreshed and should be passed to the back
fbc.on(ON_REFRESHED_TOKENS, ({tokens, accessToken, id}) => {
/* tokens is an array of object
{
label: "facebook", // Token are always for facebook pages
uid,
accessToken,
}
*/
} );ON_ACCOUNT_DATAS => dispatched when we got pages dates from an user
fbc.on(ON_ACCOUNT_DATAS, ({facebook, instagram, accessToken, id}) => {
/* facebook and instagram are array of objects:
{
label: "facebook" || "instagram"
picture,
uid,
accessToken,
name,
username, // instagram only
category, // facebook only
communityCount
}
*/
} );Other Methods
// Detach event
fbc.off(EVENT, Function)
// Listen to event only once
fbc.once(EVENT, Function);
// Request Datas => will open fb login modale if not connected or not authorized, or perform a data check is already logged
fbc.requestDatas();
// Request login => will open fb login module
fbc.requestLogin() ;