UNPKG

react-live-chat-loader

Version:

Implement live chat in your react app without taking a performance hit.

88 lines (86 loc) 9.64 kB
"use strict"; 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://connect.facebook.net'; /* eslint-disable */ var loadScript = function loadScript(locale) { if (window.FB) return false; (function loadFacebookSDK(d, s, id) { // fetch customerchat.js var fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) { return; } var js = d.createElement(s); js.id = id; js.src = "".concat(domain, "/").concat(locale, "/sdk/xfbml.customerchat.js"); if (fjs) { var _fjs$parentNode; (_fjs$parentNode = fjs.parentNode) === null || _fjs$parentNode === void 0 || _fjs$parentNode.insertBefore(js, fjs); } else { d.body.appendChild(js); } })(window.document, 'script', 'facebook-jssdk'); return true; }; /* eslint-enable */ var load = function load(_ref) { var appID = _ref.appID, _ref$locale = _ref.locale, locale = _ref$locale === void 0 ? 'en_US' : _ref$locale, 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(locale); // Continue as long as messenger hasn’t already been initialised. if (loaded) { beforeInit(); window.fbAsyncInit = function () { window.FB.init(Object.assign({ cookie: true, xfbml: true, version: 'v6.0' }, appID ? { appId: appID } : {})); window.FB.Event.subscribe('customerchat.load', function () { return ( // Allow messenger to complete loading before removing fake widget setTimeout(function () { setState('complete'); onReady(); }, 3000) ); }); }; } return loaded; }; var open = function open() { (0, _waitForLoad.default)(function () { var _window$FB; return !!((_window$FB = window.FB) !== null && _window$FB !== void 0 && (_window$FB = _window$FB.CustomerChat) !== null && _window$FB !== void 0 && _window$FB.show); }, // messenger is slow to show once it has loaded function () { return setTimeout(function () { return window.FB.CustomerChat.show(true); }, 2000); }); }; var _default = exports.default = { domain: domain, load: load, open: open }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2FpdEZvckxvYWQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImRvbWFpbiIsImxvYWRTY3JpcHQiLCJsb2NhbGUiLCJ3aW5kb3ciLCJGQiIsImxvYWRGYWNlYm9va1NESyIsImQiLCJzIiwiaWQiLCJmanMiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImdldEVsZW1lbnRCeUlkIiwianMiLCJjcmVhdGVFbGVtZW50Iiwic3JjIiwiY29uY2F0IiwiX2ZqcyRwYXJlbnROb2RlIiwicGFyZW50Tm9kZSIsImluc2VydEJlZm9yZSIsImJvZHkiLCJhcHBlbmRDaGlsZCIsImRvY3VtZW50IiwibG9hZCIsIl9yZWYiLCJhcHBJRCIsIl9yZWYkbG9jYWxlIiwic2V0U3RhdGUiLCJfcmVmJGJlZm9yZUluaXQiLCJiZWZvcmVJbml0IiwidW5kZWZpbmVkIiwiX3JlZiRvblJlYWR5Iiwib25SZWFkeSIsImxvYWRlZCIsImZiQXN5bmNJbml0IiwiaW5pdCIsIk9iamVjdCIsImFzc2lnbiIsImNvb2tpZSIsInhmYm1sIiwidmVyc2lvbiIsImFwcElkIiwiRXZlbnQiLCJzdWJzY3JpYmUiLCJzZXRUaW1lb3V0Iiwib3BlbiIsIndhaXRGb3JMb2FkIiwiX3dpbmRvdyRGQiIsIkN1c3RvbWVyQ2hhdCIsInNob3ciLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL21lc3Nlbmdlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHdhaXRGb3JMb2FkIGZyb20gJy4uL3V0aWxzL3dhaXRGb3JMb2FkJ1xuXG5jb25zdCBkb21haW4gPSAnaHR0cHM6Ly9jb25uZWN0LmZhY2Vib29rLm5ldCdcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICAvL2VzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgRkI6IGFueVxuICAgIGZiQXN5bmNJbml0OiAoKSA9PiB2b2lkXG4gIH1cbn1cblxuLyogZXNsaW50LWRpc2FibGUgKi9cbmNvbnN0IGxvYWRTY3JpcHQgPSAobG9jYWxlOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgaWYgKHdpbmRvdy5GQikgcmV0dXJuIGZhbHNlXG4gIDsoZnVuY3Rpb24gbG9hZEZhY2Vib29rU0RLKGQsIHMsIGlkKSB7XG4gICAgLy8gZmV0Y2ggY3VzdG9tZXJjaGF0LmpzXG4gICAgY29uc3QgZmpzID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZShzKVswXVxuICAgIGlmIChkLmdldEVsZW1lbnRCeUlkKGlkKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGpzID0gZC5jcmVhdGVFbGVtZW50KHMpIGFzIGFueVxuICAgIGpzLmlkID0gaWRcbiAgICBqcy5zcmMgPSBgJHtkb21haW59LyR7bG9jYWxlfS9zZGsveGZibWwuY3VzdG9tZXJjaGF0LmpzYFxuICAgIGlmIChmanMpIHtcbiAgICAgIGZqcy5wYXJlbnROb2RlPy5pbnNlcnRCZWZvcmUoanMsIGZqcylcbiAgICB9IGVsc2Uge1xuICAgICAgZC5ib2R5LmFwcGVuZENoaWxkKGpzKVxuICAgIH1cbiAgfSkod2luZG93LmRvY3VtZW50LCAnc2NyaXB0JywgJ2ZhY2Vib29rLWpzc2RrJylcbiAgcmV0dXJuIHRydWVcbn1cbi8qIGVzbGludC1lbmFibGUgKi9cblxuY29uc3QgbG9hZCA9ICh7XG4gIGFwcElELFxuICBsb2NhbGUgPSAnZW5fVVMnLFxuICBzZXRTdGF0ZSxcbiAgYmVmb3JlSW5pdCA9ICgpID0+IHVuZGVmaW5lZCxcbiAgb25SZWFkeSA9ICgpID0+IHVuZGVmaW5lZFxufToge1xuICBhcHBJRD86IHN0cmluZ1xuICBsb2NhbGU/OiBzdHJpbmdcbiAgc2V0U3RhdGU6IChzdGF0ZTogU3RhdGUpID0+IHZvaWRcbiAgYmVmb3JlSW5pdD86ICgpID0+IHZvaWRcbiAgb25SZWFkeT86ICgpID0+IHZvaWRcbn0pOiBib29sZWFuID0+IHtcbiAgY29uc3QgbG9hZGVkID0gbG9hZFNjcmlwdChsb2NhbGUpXG4gIC8vIENvbnRpbnVlIGFzIGxvbmcgYXMgbWVzc2VuZ2VyIGhhc27igJl0IGFscmVhZHkgYmVlbiBpbml0aWFsaXNlZC5cbiAgaWYgKGxvYWRlZCkge1xuICAgIGJlZm9yZUluaXQoKVxuICAgIHdpbmRvdy5mYkFzeW5jSW5pdCA9IGZ1bmN0aW9uKCkge1xuICAgICAgd2luZG93LkZCLmluaXQoXG4gICAgICAgIE9iamVjdC5hc3NpZ24oXG4gICAgICAgICAge1xuICAgICAgICAgICAgY29va2llOiB0cnVlLFxuICAgICAgICAgICAgeGZibWw6IHRydWUsXG4gICAgICAgICAgICB2ZXJzaW9uOiAndjYuMCdcbiAgICAgICAgICB9LFxuICAgICAgICAgIGFwcElEID8geyBhcHBJZDogYXBwSUQgfSA6IHt9XG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIHdpbmRvdy5GQi5FdmVudC5zdWJzY3JpYmUoJ2N1c3RvbWVyY2hhdC5sb2FkJywgKCkgPT5cbiAgICAgICAgLy8gQWxsb3cgbWVzc2VuZ2VyIHRvIGNvbXBsZXRlIGxvYWRpbmcgYmVmb3JlIHJlbW92aW5nIGZha2Ugd2lkZ2V0XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHNldFN0YXRlKCdjb21wbGV0ZScpXG4gICAgICAgICAgb25SZWFkeSgpXG4gICAgICAgIH0sIDMwMDApXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGxvYWRlZFxufVxuXG5jb25zdCBvcGVuID0gKCk6IHZvaWQgPT4ge1xuICB3YWl0Rm9yTG9hZChcbiAgICAoKSA9PiAhIXdpbmRvdy5GQj8uQ3VzdG9tZXJDaGF0Py5zaG93LFxuICAgIC8vIG1lc3NlbmdlciBpcyBzbG93IHRvIHNob3cgb25jZSBpdCBoYXMgbG9hZGVkXG4gICAgKCkgPT4gc2V0VGltZW91dCgoKSA9PiB3aW5kb3cuRkIuQ3VzdG9tZXJDaGF0LnNob3codHJ1ZSksIDIwMDApXG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBkb21haW4sXG4gIGxvYWQsXG4gIG9wZW5cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsWUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQThDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRTlDLElBQU1HLE1BQU0sR0FBRyw4QkFBOEI7QUFVN0M7QUFDQSxJQUFNQyxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBSUMsTUFBYyxFQUFjO0VBQzlDLElBQUlDLE1BQU0sQ0FBQ0MsRUFBRSxFQUFFLE9BQU8sS0FBSztFQUMxQixDQUFDLFNBQVNDLGVBQWVBLENBQUNDLENBQUMsRUFBRUMsQ0FBQyxFQUFFQyxFQUFFLEVBQUU7SUFDbkM7SUFDQSxJQUFNQyxHQUFHLEdBQUdILENBQUMsQ0FBQ0ksb0JBQW9CLENBQUNILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4QyxJQUFJRCxDQUFDLENBQUNLLGNBQWMsQ0FBQ0gsRUFBRSxDQUFDLEVBQUU7TUFDeEI7SUFDRjtJQUNBLElBQU1JLEVBQUUsR0FBR04sQ0FBQyxDQUFDTyxhQUFhLENBQUNOLENBQUMsQ0FBUTtJQUNwQ0ssRUFBRSxDQUFDSixFQUFFLEdBQUdBLEVBQUU7SUFDVkksRUFBRSxDQUFDRSxHQUFHLE1BQUFDLE1BQUEsQ0FBTWYsTUFBTSxPQUFBZSxNQUFBLENBQUliLE1BQU0sK0JBQTRCO0lBQ3hELElBQUlPLEdBQUcsRUFBRTtNQUFBLElBQUFPLGVBQUE7TUFDUCxDQUFBQSxlQUFBLEdBQUFQLEdBQUcsQ0FBQ1EsVUFBVSxjQUFBRCxlQUFBLGVBQWRBLGVBQUEsQ0FBZ0JFLFlBQVksQ0FBQ04sRUFBRSxFQUFFSCxHQUFHLENBQUM7SUFDdkMs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