react-live-chat-loader
Version:
Implement live chat in your react app without taking a performance hit.
71 lines (69 loc) • 7.73 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _waitForLoad = _interopRequireDefault(require("../utils/waitForLoad"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
var domain = 'https://userlike-cdn-widgets.s3-eu-west-1.amazonaws.com';
/* eslint-disable */
var loadScript = function loadScript(providerKey) {
if (window.userlike) return false;
var d = document;
function l() {
var _x$parentNode;
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = "".concat(domain, "/").concat(providerKey, ".js");
var x = d.getElementsByTagName('script')[0];
(_x$parentNode = x.parentNode) === null || _x$parentNode === void 0 || _x$parentNode.insertBefore(s, x);
}
l();
return true;
};
/* eslint-enable */
var load = function load(_ref) {
var providerKey = _ref.providerKey,
setState = _ref.setState,
_ref$beforeInit = _ref.beforeInit,
beforeInit = _ref$beforeInit === void 0 ? function () {
return undefined;
} : _ref$beforeInit,
_ref$onReady = _ref.onReady,
onReady = _ref$onReady === void 0 ? function () {
return undefined;
} : _ref$onReady;
var loaded = loadScript(providerKey);
// Continue as long as userlike hasn’t already been initialised.
if (loaded) {
beforeInit();
(0, _waitForLoad.default)(function () {
return !!window.userlike;
},
// Allow userlike to complete loading before removing fake widget
function () {
return setTimeout(function () {
setState('complete');
onReady();
}, 2000);
});
}
return true;
};
var open = function open() {
(0, _waitForLoad.default)(function () {
var _window$userlike;
return !!((_window$userlike = window.userlike) !== null && _window$userlike !== void 0 && _window$userlike.userlikeStartChat);
},
// userlike is slow to show once it has loaded
function () {
return setTimeout(window.userlike.userlikeStartChat, 1000);
});
};
var _default = exports.default = {
domain: domain,
load: load,
open: open
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2FpdEZvckxvYWQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImRvbWFpbiIsImxvYWRTY3JpcHQiLCJwcm92aWRlcktleSIsIndpbmRvdyIsInVzZXJsaWtlIiwiZCIsImRvY3VtZW50IiwibCIsIl94JHBhcmVudE5vZGUiLCJzIiwiY3JlYXRlRWxlbWVudCIsInR5cGUiLCJhc3luYyIsInNyYyIsImNvbmNhdCIsIngiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsInBhcmVudE5vZGUiLCJpbnNlcnRCZWZvcmUiLCJsb2FkIiwiX3JlZiIsInNldFN0YXRlIiwiX3JlZiRiZWZvcmVJbml0IiwiYmVmb3JlSW5pdCIsInVuZGVmaW5lZCIsIl9yZWYkb25SZWFkeSIsIm9uUmVhZHkiLCJsb2FkZWQiLCJ3YWl0Rm9yTG9hZCIsInNldFRpbWVvdXQiLCJvcGVuIiwiX3dpbmRvdyR1c2VybGlrZSIsInVzZXJsaWtlU3RhcnRDaGF0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpZGVycy91c2VybGlrZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHdhaXRGb3JMb2FkIGZyb20gJy4uL3V0aWxzL3dhaXRGb3JMb2FkJ1xuXG5jb25zdCBkb21haW4gPSAnaHR0cHM6Ly91c2VybGlrZS1jZG4td2lkZ2V0cy5zMy1ldS13ZXN0LTEuYW1hem9uYXdzLmNvbSdcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICAvL2VzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdXNlcmxpa2U6IHtcbiAgICAgIHVzZXJsaWtlUmVhZHk6ICgpID0+IHZvaWRcbiAgICAgIHVzZXJsaWtlU3RhcnRDaGF0OiAoKSA9PiB2b2lkXG4gICAgICB1c2VybGlrZVF1aXRDaGF0OiAoKSA9PiB2b2lkXG4gICAgfVxuICB9XG59XG5cbi8qIGVzbGludC1kaXNhYmxlICovXG5jb25zdCBsb2FkU2NyaXB0ID0gKHByb3ZpZGVyS2V5OiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgaWYgKHdpbmRvdy51c2VybGlrZSkgcmV0dXJuIGZhbHNlXG5cbiAgdmFyIGQgPSBkb2N1bWVudFxuICBmdW5jdGlvbiBsKCkge1xuICAgIHZhciBzID0gZC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKVxuICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnXG4gICAgcy5hc3luYyA9IHRydWVcbiAgICBzLnNyYyA9IGAke2RvbWFpbn0vJHtwcm92aWRlcktleX0uanNgXG4gICAgdmFyIHggPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXVxuICAgIHgucGFyZW50Tm9kZT8uaW5zZXJ0QmVmb3JlKHMsIHgpXG4gIH1cbiAgbCgpXG5cbiAgcmV0dXJuIHRydWVcbn1cbi8qIGVzbGludC1lbmFibGUgKi9cblxuY29uc3QgbG9hZCA9ICh7XG4gIHByb3ZpZGVyS2V5LFxuICBzZXRTdGF0ZSxcbiAgYmVmb3JlSW5pdCA9ICgpID0+IHVuZGVmaW5lZCxcbiAgb25SZWFkeSA9ICgpID0+IHVuZGVmaW5lZFxufToge1xuICBwcm92aWRlcktleTogc3RyaW5nXG4gIHNldFN0YXRlOiAoc3RhdGU6IFN0YXRlKSA9PiB2b2lkXG4gIGJlZm9yZUluaXQ/OiAoKSA9PiB2b2lkXG4gIG9uUmVhZHk/OiAoKSA9PiB2b2lkXG59KTogYm9vbGVhbiA9PiB7XG4gIGNvbnN0IGxvYWRlZCA9IGxvYWRTY3JpcHQocHJvdmlkZXJLZXkpXG4gIC8vIENvbnRpbnVlIGFzIGxvbmcgYXMgdXNlcmxpa2UgaGFzbuKAmXQgYWxyZWFkeSBiZWVuIGluaXRpYWxpc2VkLlxuICBpZiAobG9hZGVkKSB7XG4gICAgYmVmb3JlSW5pdCgpXG4gICAgd2FpdEZvckxvYWQoXG4gICAgICAoKSA9PiAhIXdpbmRvdy51c2VybGlrZSxcbiAgICAgIC8vIEFsbG93IHVzZXJsaWtlIHRvIGNvbXBsZXRlIGxvYWRpbmcgYmVmb3JlIHJlbW92aW5nIGZha2Ugd2lkZ2V0XG4gICAgICAoKSA9PlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBzZXRTdGF0ZSgnY29tcGxldGUnKVxuICAgICAgICAgIG9uUmVhZHkoKVxuICAgICAgICB9LCAyMDAwKVxuICAgIClcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmNvbnN0IG9wZW4gPSAoKTogdm9pZCA9PiB7XG4gIHdhaXRGb3JMb2FkKFxuICAgICgpID0+ICEhd2luZG93LnVzZXJsaWtlPy51c2VybGlrZVN0YXJ0Q2hhdCxcbiAgICAvLyB1c2VybGlrZSBpcyBzbG93IHRvIHNob3cgb25jZSBpdCBoYXMgbG9hZGVkXG4gICAgKCkgPT4gc2V0VGltZW91dCh3aW5kb3cudXNlcmxpa2UudXNlcmxpa2VTdGFydENoYXQsIDEwMDApXG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBkb21haW4sXG4gIGxvYWQsXG4gIG9wZW5cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsWUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQThDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRTlDLElBQU1HLE1BQU0sR0FBRyx5REFBeUQ7QUFheEU7QUFDQSxJQUFNQyxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBSUMsV0FBbUIsRUFBYztFQUNuRCxJQUFJQyxNQUFNLENBQUNDLFFBQVEsRUFBRSxPQUFPLEtBQUs7RUFFakMsSUFBSUMsQ0FBQyxHQUFHQyxRQUFRO0VBQ2hCLFNBQVNDLENBQUNBLENBQUEsRUFBRztJQUFBLElBQUFDLGFBQUE7SUFDWCxJQUFJQyxDQUFDLEdBQUdKLENBQUMsQ0FBQ0ssYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUNqQ0QsQ0FBQyxDQUFDRSxJQUFJLEdBQUcsaUJBQWlCO0lBQzFCRixDQUFDLENBQUNHLEtBQUssR0FBRyxJQUFJO0lBQ2RILENBQUMsQ0FBQ0ksR0FBRyxNQUFBQyxNQUFBLENBQU1kLE1BQU0sT0FBQWMsTUFBQSxDQUFJWixXQUFXLFFBQUs7SUFDckMsSUFBSWEsQ0FBQyxHQUFHVixDQUFDLENBQUNXLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFBUixhQUFBLEdBQUFPLENBQUMsQ0FBQ0UsVUFBVSxjQUFBVCxhQUFBLGVBQVpBLGFBQUEsQ0FBY1UsWUFBWSxDQUFDVCxDQUFDLEVBQUVNLENBQUMsQ0FBQztFQUNsQztFQUNBUixDQUFDLENBQUMsQ0FBQztFQUVILE9BQU8sSUFBSTtBQUNiLENBQUM7QUFDRDs7QUFFQSxJQUFNWSxJQUFJLEdBQUcsU0FBUEEsSUFBSUEsQ0FBQUMsSUFBQSxFQVVLO0VBQUEsSUFUYmxCLFdBQVcsR0FBQWtCLElBQUEsQ0FBWGxCLFdBQVc7SUFDWG1CLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO0lBQUFDLGVBQUEsR0FBQUYsSUFBQSxDQUNSRyxVQUFVO0lBQVZBLFVBQVUsR0FBQUQsZUFBQSxjQUFHO01BQUEsT0FBTUUsU0FBUztJQUFBLElBQUFGLGVBQUE7SUFBQUcsWUFBQSxHQUFBTCxJQUFBLENBQzVCTSxPQUFPO0lBQVBBLE9BQU8sR0FBQUQsWUFBQSxjQUFHO01BQUEsT0FBTUQsU0FBUztJQUFBLElBQUFDLFlBQUE7RUFPekIsSUFBTUUsTUFBTSxHQUFHMUIsVUFBVSxDQUFDQyxXQUFXLENBQUM7RUFDdEM7RUFDQSxJQUFJeUIsTUFBTSxFQUFFO0lBQ1ZKLFVBQVUsQ0FBQyxDQUFDO0lBQ1osSUFBQUssb0JBQVcsRUFDVDtNQUFBLE9BQU0sQ0FBQyxDQUFDekIsTUFBTSxDQUFDQyxRQUFRO0lBQUE7SUFDdkI7SUFDQTtNQUFBLE9BQ0V5QixVQUFVLENBQUMsWUFBTTtRQUNmUixRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ3BCSyxPQUFPLENBQUMsQ0FBQztNQUNYLENBQUMsRUFBRSxJQUFJLENBQUM7SUFBQSxDQUNaLENBQUM7RUFDSDtFQUVBLE9BQU8sSUFBSTtBQUNiLENBQUM7QUFFRCxJQUFNSSxJQUFJLEdBQUcsU0FBUEEsSUFBSUEsQ0FBQSxFQUFlO0VBQ3ZCLElBQUFGLG9CQUFXLEVBQ1Q7SUFBQSxJQUFBRyxnQkFBQTtJQUFBLE9BQU0sQ0FBQyxHQUFBQSxnQkFBQSxHQUFDNUIsTUFBTSxDQUFDQyxRQUFRLGNBQUEyQixnQkFBQSxlQUFmQSxnQkFBQSxDQUFpQkMsaUJBQWlCO0VBQUE7RUFDMUM7RUFDQTtJQUFBLE9BQU1ILFVBQVUsQ0FBQzFCLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDNEIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO0VBQUEsQ0FDM0QsQ0FBQztBQUNILENBQUM7QUFBQSxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsQ0FBQW5DLE9BQUEsR0FFYztFQUNiQyxNQUFNLEVBQU5BLE1BQU07RUFDTm1CLElBQUksRUFBSkEsSUFBSTtFQUNKVyxJQUFJLEVBQUpBO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
;