@theoplayer/react-native-engage
Version:
Engage connector for @theoplayer/react-native
36 lines (34 loc) • 996 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.EngageConnector = void 0;
var _DefaultEngageClient = require("../internal/DefaultEngageClient");
var _reactNative = require("react-native");
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.DefaultEngageClient(configuration, client => {
resolve(client);
});
} else {
reject(`EngageConnector is not support on ${_reactNative.Platform.OS}`);
}
});
}
}
exports.EngageConnector = EngageConnector;
function isValidConfiguration() {
return _reactNative.Platform.OS === 'android';
}
//# sourceMappingURL=EngageConnector.js.map