@theoplayer/react-native-engage
Version:
Engage connector for @theoplayer/react-native
31 lines (29 loc) • 811 B
JavaScript
;
import { DefaultEngageClient } from '../internal/DefaultEngageClient';
import { Platform } from 'react-native';
export class EngageConnector {
static client = undefined;
/**
* Create an Engage client.
*
* @param configuration
*/
static createClient(configuration) {
return new Promise((resolve, reject) => {
if (this.client) {
// Keep a singleton client
resolve(this.client);
} else if (isValidConfiguration()) {
this.client = new DefaultEngageClient(configuration, client => {
resolve(client);
});
} else {
reject(`EngageConnector is not support on ${Platform.OS}`);
}
});
}
}
function isValidConfiguration() {
return Platform.OS === 'android';
}
//# sourceMappingURL=EngageConnector.js.map