@future-sdk/future-js
v0.1.1
Published
SDK for integrating with future
Downloads
10
Keywords
Readme
Future SDK
Welcome to the Future SDK.
Installation
Script Tag
Including the script tag will automatically make the Future object available to your code.
<script src="https://sdk.paywithfuture.com/v1/future.js"></script>
Using this method will ensure that you always are using the latest version of the SDK.
Module
You can download the Future SDK module from npm package manager:
npm install @future-sdk/future-js
and then import the Future object:
import { Future } from '@future-sdk/future-js
Usage
startFutureSession
Users are tracked using a Session object. There must be an active session for a user to interact with Future (buttons and modals will not display without an active session).
Future.startFutureSession({
apiKey: string, // Your client api id.
iframeUrl: string,
serverUrl: string,
websocketUrl: string,
onSessionUpdate: (session: FutureSession) => void // (optional) callback for receiving updates
onError: (error: FutureError) => void // (optional) callback for receiving errors
});Updates are provided in real time as the user interacts with Future. Every update will result in a call to the onSessionUpdate callback, passing it the latest session object.
Callbacks can be registered via the onSessionUpdate parameter of the startFutureSession method, or by calling onSessionUpdate.
Future.onSessionUpdate((session: FutureSession) => void);If an error occurs in the SDK it will be reported by calling the onError callback. The error object passed includes the error type and message.
createPurchaseMembershipButton
Creates a button in the container that will start the Purchase Membership flow when clicked.
Future.createPurchaseMembershipButton({
container: string,
membershipId: string,
});Example:
Future.createPurchaseMembershipButton({
container: '.future-unlock',
membershipId: `189e9683-11ba-402b-b58d-360b96447e6b`,
});Returns HTMLElement of created iframe.
Throws an error if element could not be created.
createPayWithFutureButton
Creates a button in the container that will start the Purchase Membership flow when clicked.
Future.createPayWithFutureButton({
container: string,
});Example:
Future.createPayWithFutureButton({ container: '.future-pay' });Returns HTMLElement of created iframe.
Throws an error if element could not be created.
setCart
Sets the cart items that the user is purchasing.
interface CartItem = {
imageUrl: string;
priceCents: number;
title: string;
}
Future.setCart({ cartItems: CartItem[] });Example:
Future.setCart({
cartItems: [
{
"title": "T-Shirt",
"priceCents": "4000",
"imageUrl": "http://myserver.com/images/TShirt.png"
},
{
"title": "Jersey",
"priceCents": "13000",
"imageUrl": "http://myserver.com/images/Jersey.png"
},
]
});logout
Logs the current user out of Future.
Future.logout()