react-live-chat-loader
Version:
Implement live chat in your react app without taking a performance hit.
72 lines (69 loc) • 8.63 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 }; }
// Website: https://front.com/product/live-chat
// Documentation: https://help.front.com/
var domain = 'https://chat-assets.frontapp.com';
/* eslint-disable */
var loadScript = function loadScript(onload) {
if (window.FrontChat) return false;
var script = function script() {
var _x$parentNode;
var s = document.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.id = 'front-chat-script';
s.src = "".concat(domain, "/v1/chat.bundle.js");
var x = document.getElementsByTagName('script')[0];
(_x$parentNode = x.parentNode) === null || _x$parentNode === void 0 || _x$parentNode.insertBefore(s, x);
s.onload = onload;
};
script();
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(function () {
var _window$FrontChat, _window;
beforeInit();
(_window$FrontChat = (_window = window).FrontChat) === null || _window$FrontChat === void 0 || _window$FrontChat.call(_window, 'init', {
chatId: providerKey,
onInitCompleted: function onInitCompleted() {
setState('complete');
onReady();
if (window.FrontChat) window.FrontChat.hasInitialized = true;
}
//Read more: https://dev.frontapp.com/docs/chat-sdk-reference
});
});
return loaded;
};
var open = function open() {
(0, _waitForLoad.default)(function () {
var _window$FrontChat2;
return !!((_window$FrontChat2 = window.FrontChat) !== null && _window$FrontChat2 !== void 0 && _window$FrontChat2.hasInitialized);
}, function () {
var _window$FrontChat3, _window2;
return (_window$FrontChat3 = (_window2 = window).FrontChat) === null || _window$FrontChat3 === void 0 ? void 0 : _window$FrontChat3.call(_window2, 'show');
});
};
var _default = exports.default = {
domain: domain,
load: load,
open: open
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2FpdEZvckxvYWQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImRvbWFpbiIsImxvYWRTY3JpcHQiLCJvbmxvYWQiLCJ3aW5kb3ciLCJGcm9udENoYXQiLCJzY3JpcHQiLCJfeCRwYXJlbnROb2RlIiwicyIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsInR5cGUiLCJhc3luYyIsImlkIiwic3JjIiwiY29uY2F0IiwieCIsImdldEVsZW1lbnRzQnlUYWdOYW1lIiwicGFyZW50Tm9kZSIsImluc2VydEJlZm9yZSIsImxvYWQiLCJfcmVmIiwicHJvdmlkZXJLZXkiLCJzZXRTdGF0ZSIsIl9yZWYkYmVmb3JlSW5pdCIsImJlZm9yZUluaXQiLCJ1bmRlZmluZWQiLCJfcmVmJG9uUmVhZHkiLCJvblJlYWR5IiwibG9hZGVkIiwiX3dpbmRvdyRGcm9udENoYXQiLCJfd2luZG93IiwiY2FsbCIsImNoYXRJZCIsIm9uSW5pdENvbXBsZXRlZCIsImhhc0luaXRpYWxpemVkIiwib3BlbiIsIndhaXRGb3JMb2FkIiwiX3dpbmRvdyRGcm9udENoYXQyIiwiX3dpbmRvdyRGcm9udENoYXQzIiwiX3dpbmRvdzIiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL2Zyb250LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFdlYnNpdGU6IGh0dHBzOi8vZnJvbnQuY29tL3Byb2R1Y3QvbGl2ZS1jaGF0XG4vLyBEb2N1bWVudGF0aW9uOiBodHRwczovL2hlbHAuZnJvbnQuY29tL1xuXG5pbXBvcnQgeyBTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHdhaXRGb3JMb2FkIGZyb20gJy4uL3V0aWxzL3dhaXRGb3JMb2FkJ1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIEZyb250Q2hhdD86IHtcbiAgICAgIChcbiAgICAgICAgY29tbWFuZDogc3RyaW5nLFxuICAgICAgICBwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBib29sZWFuIHwgdW5rbm93bj5cbiAgICAgICk6IHZvaWRcbiAgICAgIC8vIFRoaXMgaXNuJ3QgcGFydCBvZiB0aGUgRnJvbnRDaGF0IEFQSTsgd2UgYWRkIGl0IHRvIHRyYWNrIHdoZW4gRnJvbnQgaXMgZnVsbHkgaW5pdGlhbGl6ZWRcbiAgICAgIGhhc0luaXRpYWxpemVkOiBib29sZWFuXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGRvbWFpbiA9ICdodHRwczovL2NoYXQtYXNzZXRzLmZyb250YXBwLmNvbSdcbi8qIGVzbGludC1kaXNhYmxlICovXG5jb25zdCBsb2FkU2NyaXB0ID0gKG9ubG9hZDogKCkgPT4gdm9pZCkgPT4ge1xuICBpZiAod2luZG93LkZyb250Q2hhdCkgcmV0dXJuIGZhbHNlXG5cbiAgY29uc3Qgc2NyaXB0ID0gKCkgPT4ge1xuICAgIHZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0JylcbiAgICBzLnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0J1xuICAgIHMuYXN5bmMgPSB0cnVlXG4gICAgcy5pZCA9ICdmcm9udC1jaGF0LXNjcmlwdCdcbiAgICBzLnNyYyA9IGAke2RvbWFpbn0vdjEvY2hhdC5idW5kbGUuanNgXG4gICAgdmFyIHggPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF1cbiAgICB4LnBhcmVudE5vZGU/Lmluc2VydEJlZm9yZShzLCB4KVxuICAgIHMub25sb2FkID0gb25sb2FkXG4gIH1cbiAgc2NyaXB0KClcblxuICByZXR1cm4gdHJ1ZVxufVxuLyogZXNsaW50LWVuYWJsZSAqL1xuXG5jb25zdCBsb2FkID0gKHtcbiAgcHJvdmlkZXJLZXksXG4gIHNldFN0YXRlLFxuICBiZWZvcmVJbml0ID0gKCkgPT4gdW5kZWZpbmVkLFxuICBvblJlYWR5ID0gKCkgPT4gdW5kZWZpbmVkXG59OiB7XG4gIHByb3ZpZGVyS2V5OiBzdHJpbmdcbiAgc2V0U3RhdGU6IChzdGF0ZTogU3RhdGUpID0+IHZvaWRcbiAgYmVmb3JlSW5pdD86ICgpID0+IHZvaWRcbiAgb25SZWFkeT86ICgpID0+IHZvaWRcbn0pOiBib29sZWFuID0+IHtcbiAgY29uc3QgbG9hZGVkID0gbG9hZFNjcmlwdCgoKSA9PiB7XG4gICAgYmVmb3JlSW5pdCgpXG5cbiAgICB3aW5kb3cuRnJvbnRDaGF0Py4oJ2luaXQnLCB7XG4gICAgICBjaGF0SWQ6IHByb3ZpZGVyS2V5LFxuICAgICAgb25Jbml0Q29tcGxldGVkOiAoKSA9PiB7XG4gICAgICAgIHNldFN0YXRlKCdjb21wbGV0ZScpXG4gICAgICAgIG9uUmVhZHkoKVxuICAgICAgICBpZiAod2luZG93LkZyb250Q2hhdCkgd2luZG93LkZyb250Q2hhdC5oYXNJbml0aWFsaXplZCA9IHRydWVcbiAgICAgIH1cbiAgICAgIC8vUmVhZCBtb3JlOiBodHRwczovL2Rldi5mcm9udGFwcC5jb20vZG9jcy9jaGF0LXNkay1yZWZlcmVuY2VcbiAgICB9KVxuICB9KVxuICByZXR1cm4gbG9hZGVkXG59XG5cbmNvbnN0IG9wZW4gPSAoKTogdm9pZCA9PiB7XG4gIHdhaXRGb3JMb2FkKFxuICAgICgpID0+ICEhd2luZG93LkZyb250Q2hhdD8uaGFzSW5pdGlhbGl6ZWQsXG4gICAgKCkgPT4gd2luZG93LkZyb250Q2hhdD8uKCdzaG93JylcbiAgKVxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGRvbWFpbixcbiAgbG9hZCxcbiAgb3BlblxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFJQSxJQUFBQSxZQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFBOEMsU0FBQUQsdUJBQUFFLENBQUEsV0FBQUEsQ0FBQSxJQUFBQSxDQUFBLENBQUFDLFVBQUEsR0FBQUQsQ0FBQSxLQUFBRSxPQUFBLEVBQUFGLENBQUE7QUFKOUM7QUFDQTs7QUFrQkEsSUFBTUcsTUFBTSxHQUFHLGtDQUFrQztBQUNqRDtBQUNBLElBQU1DLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFJQyxNQUFrQixFQUFLO0VBQ3pDLElBQUlDLE1BQU0sQ0FBQ0MsU0FBUyxFQUFFLE9BQU8sS0FBSztFQUVsQyxJQUFNQyxNQUFNLEdBQUcsU0FBVEEsTUFBTUEsQ0FBQSxFQUFTO0lBQUEsSUFBQUMsYUFBQTtJQUNuQixJQUFJQyxDQUFDLEdBQUdDLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUN4Q0YsQ0FBQyxDQUFDRyxJQUFJLEdBQUcsaUJBQWlCO0lBQzFCSCxDQUFDLENBQUNJLEtBQUssR0FBRyxJQUFJO0lBQ2RKLENBQUMsQ0FBQ0ssRUFBRSxHQUFHLG1CQUFtQjtJQUMxQkwsQ0FBQyxDQUFDTSxHQUFHLE1BQUFDLE1BQUEsQ0FBTWQsTUFBTSx1QkFBb0I7SUFDckMsSUFBSWUsQ0FBQyxHQUFHUCxRQUFRLENBQUNRLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFBVixhQUFBLEdBQUFTLENBQUMsQ0FBQ0UsVUFBVSxjQUFBWCxhQUFBLGVBQVpBLGFBQUEsQ0FBY1ksWUFBWSxDQUFDWCxDQUFDLEVBQUVRLENBQUMsQ0FBQztJQUNoQ1IsQ0FBQyxDQUFDTCxNQUFNLEdBQUdBLE1BQU07RUFDbkIsQ0FBQztFQUNERyxNQUFNLENBQUMsQ0FBQztFQUVSLE9BQU8sSUFBSTtBQUNiLENBQUM7QUFDRDs7QUFFQSxJQUFNYyxJQUFJLEdBQUcsU0FBUEEsSUFBSUEsQ0FBQUMsSUFBQSxFQVVLO0VBQUEsSUFUYkMsV0FBVyxHQUFBRCxJQUFBLENBQVhDLFdBQVc7SUFDWEMsUUFBUSxHQUFBRixJQUFBLENBQVJFLFFBQVE7SUFBQUMsZUFBQSxHQUFBSCxJQUFBLENBQ1JJLFVBQVU7SUFBVkEsVUFBVSxHQUFBRCxlQUFBLGNBQUc7TUFBQSxPQUFNRSxTQUFTO0lBQUEsSUFBQUYsZUFBQTtJQUFBRyxZQUFBLEdBQUFOLElBQUEsQ0FDNUJPLE9BQU87SUFBUEEsT0FBTyxHQUFBRCxZQUFBLGNBQUc7TUFBQSxPQUFNRCxTQUFTO0lBQUEsSUFBQUMsWUFBQTtFQU96QixJQUFNRSxNQUFNLEdBQUczQixVQUFVLENBQUMsWUFBTTtJQUFBLElBQUE0QixpQkFBQSxFQUFBQyxPQUFBO0lBQzlCTixVQUFVLENBQUMsQ0FBQztJQUVaLENBQUFLLGlCQUFBLElBQUFDLE9BQUEsR0FBQTNCLE1BQU0sRUFBQ0MsU0FBUyxjQUFBeUIsaUJBQUEsZUFBaEJBLGlCQUFBLENBQUFFLElBQUEsQ0FBQUQsT0FBQSxFQUFtQixNQUFNLEVBQUU7TUFDekJFLE1BQU0sRUFBRVgsV0FBVztNQUNuQlksZUFBZSxFQUFFLFNBQWpCQSxlQUFlQSxDQUFBLEVBQVE7UUFDckJYLFFBQVEsQ0FBQyxVQUFVLENBQUM7UUFDcEJLLE9BQU8sQ0FBQyxDQUFDO1FBQ1QsSUFBSXhCLE1BQU0sQ0FBQ0MsU0FBUyxFQUFFRCxNQUFNLENBQUNDLFNBQVMsQ0FBQzhCLGNBQWMsR0FBRyxJQUFJO01BQzlEO01BQ0E7SUFDRixDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7RUFDRixPQUFPTixNQUFNO0FBQ2YsQ0FBQztBQUVELElBQU1PLElBQUksR0FBRyxTQUFQQSxJQUFJQSxDQUFBLEVBQWU7RUFDdkIsSUFBQUMsb0JBQVcsRUFDVDtJQUFBLElBQUFDLGtCQUFBO0lBQUEsT0FBTSxDQUFDLEdBQUFBLGtCQUFBLEdBQUNsQyxNQUFNLENBQUNDLFNBQVMsY0FBQWlDLGtCQUFBLGVBQWhCQSxrQkFBQSxDQUFrQkgsY0FBYztFQUFBLEdBQ3hDO0lBQUEsSUFBQUksa0JBQUEsRUFBQUMsUUFBQTtJQUFBLFFBQUFELGtCQUFBLEdBQU0sQ0FBQUMsUUFBQSxHQUFBcEMsTUFBTSxFQUFDQyxTQUFTLGNBQUFrQyxrQkFBQSx1QkFBaEJBLGtCQUFBLENBQUFQLElBQUEsQ0FBQVEsUUFBQSxFQUFtQixNQUFNLENBQUM7RUFBQSxDQUNsQyxDQUFDO0FBQ0gsQ0FBQztBQUFBLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBMUMsT0FBQSxHQUVjO0VBQ2JDLE1BQU0sRUFBTkEsTUFBTTtFQUNObUIsSUFBSSxFQUFKQSxJQUFJO0VBQ0pnQixJQUFJLEVBQUpBO0FBQ0YsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
;