tb-react-live-chat-loader
Version:
Implement live chat in your react app without taking a performance hit.
91 lines (70 loc) • 7.66 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _waitForLoad = _interopRequireDefault(require("../utils/waitForLoad"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const domain = 'https://widget.intercom.io';
/* eslint-disable */
const loadScript = appId => {
if (window.Intercom) return false;
(function () {
var w = window;
var ic = w.Intercom;
if (typeof ic === 'function') {
ic('reattach_activator');
ic('update', window.intercomSettings);
} else {
var d = document;
var i = function () {
i.c(arguments);
};
i.q = [];
i.c = function (args) {
i.q.push(args);
};
w.Intercom = i;
const l = () => {
var _x$parentNode;
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = `${domain}/widget/${appId}`;
var x = d.getElementsByTagName('script')[d.getElementsByTagName('script').length - 1];
(_x$parentNode = x.parentNode) === null || _x$parentNode === void 0 ? void 0 : _x$parentNode.insertBefore(s, x);
};
l();
}
})();
return true;
};
/* eslint-enable */
const load = ({
providerKey,
setState,
beforeInit = () => undefined,
onReady = () => undefined
}) => {
const loaded = loadScript(providerKey); // Continue as long as userlike hasn’t already been initialised.
if (loaded) {
beforeInit();
window.Intercom('boot', {
app_id: providerKey
});
(0, _waitForLoad.default)(() => window.Intercom.booted, // Allow intercom to complete loading before removing fake widget
() => setTimeout(() => {
setState('complete');
onReady();
}, 2000));
}
return loaded;
};
const open = () => window.Intercom('show');
var _default = {
domain,
load,
open
};
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlcnMvaW50ZXJjb20udHMiXSwibmFtZXMiOlsiZG9tYWluIiwibG9hZFNjcmlwdCIsImFwcElkIiwid2luZG93IiwiSW50ZXJjb20iLCJ3IiwiaWMiLCJpbnRlcmNvbVNldHRpbmdzIiwiZCIsImRvY3VtZW50IiwiaSIsImMiLCJhcmd1bWVudHMiLCJxIiwiYXJncyIsInB1c2giLCJsIiwicyIsImNyZWF0ZUVsZW1lbnQiLCJ0eXBlIiwiYXN5bmMiLCJzcmMiLCJ4IiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJsZW5ndGgiLCJwYXJlbnROb2RlIiwiaW5zZXJ0QmVmb3JlIiwibG9hZCIsInByb3ZpZGVyS2V5Iiwic2V0U3RhdGUiLCJiZWZvcmVJbml0IiwidW5kZWZpbmVkIiwib25SZWFkeSIsImxvYWRlZCIsImFwcF9pZCIsImJvb3RlZCIsInNldFRpbWVvdXQiLCJvcGVuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQ0E7Ozs7QUFFQSxNQUFNQSxNQUFNLEdBQUcsNEJBQWY7O0FBVUE7QUFDQSxNQUFNQyxVQUFVLEdBQUlDLEtBQUQsSUFBNEI7QUFDN0MsTUFBSUMsTUFBTSxDQUFDQyxRQUFYLEVBQXFCLE9BQU8sS0FBUDs7QUFDcEIsR0FBQyxZQUFXO0FBQ1gsUUFBSUMsQ0FBQyxHQUFHRixNQUFSO0FBQ0EsUUFBSUcsRUFBRSxHQUFHRCxDQUFDLENBQUNELFFBQVg7O0FBQ0EsUUFBSSxPQUFPRSxFQUFQLEtBQWMsVUFBbEIsRUFBOEI7QUFDNUJBLE1BQUFBLEVBQUUsQ0FBQyxvQkFBRCxDQUFGO0FBQ0FBLE1BQUFBLEVBQUUsQ0FBQyxRQUFELEVBQVdILE1BQU0sQ0FBQ0ksZ0JBQWxCLENBQUY7QUFDRCxLQUhELE1BR087QUFDTCxVQUFJQyxDQUFDLEdBQUdDLFFBQVI7O0FBQ0EsVUFBSUMsQ0FBTSxHQUFHLFlBQVc7QUFDdEJBLFFBQUFBLENBQUMsQ0FBQ0MsQ0FBRixDQUFJQyxTQUFKO0FBQ0QsT0FGRDs7QUFHQUYsTUFBQUEsQ0FBQyxDQUFDRyxDQUFGLEdBQU0sRUFBTjs7QUFDQUgsTUFBQUEsQ0FBQyxDQUFDQyxDQUFGLEdBQU0sVUFBU0csSUFBVCxFQUFvQjtBQUN4QkosUUFBQUEsQ0FBQyxDQUFDRyxDQUFGLENBQUlFLElBQUosQ0FBU0QsSUFBVDtBQUNELE9BRkQ7O0FBR0FULE1BQUFBLENBQUMsQ0FBQ0QsUUFBRixHQUFhTSxDQUFiOztBQUNBLFlBQU1NLENBQUMsR0FBRyxNQUFNO0FBQUE7O0FBQ2QsWUFBSUMsQ0FBQyxHQUFHVCxDQUFDLENBQUNVLGFBQUYsQ0FBZ0IsUUFBaEIsQ0FBUjtBQUNBRCxRQUFBQSxDQUFDLENBQUNFLElBQUYsR0FBUyxpQkFBVDtBQUNBRixRQUFBQSxDQUFDLENBQUNHLEtBQUYsR0FBVSxJQUFWO0FBQ0FILFFBQUFBLENBQUMsQ0FBQ0ksR0FBRixHQUFTLEdBQUVyQixNQUFPLFdBQVVFLEtBQU0sRUFBbEM7QUFDQSxZQUFJb0IsQ0FBQyxHQUFHZCxDQUFDLENBQUNlLG9CQUFGLENBQXVCLFFBQXZCLEVBQWlDZixDQUFDLENBQUNlLG9CQUFGLENBQXVCLFFBQXZCLEVBQWlDQyxNQUFqQyxHQUEwQyxDQUEzRSxDQUFSO0FBQ0EseUJBQUFGLENBQUMsQ0FBQ0csVUFBRixnRUFBY0MsWUFBZCxDQUEyQlQsQ0FBM0IsRUFBOEJLLENBQTlCO0FBQ0QsT0FQRDs7QUFRQU4sTUFBQUEsQ0FBQztBQUNGO0FBQ0YsR0ExQkE7O0FBMkJELFNBQU8sSUFBUDtBQUNELENBOUJEO0FBK0JBOzs7QUFFQSxNQUFNVyxJQUFJLEdBQUcsQ0FBQztBQUNaQyxFQUFBQSxXQURZO0FBRVpDLEVBQUFBLFFBRlk7QUFHWkMsRUFBQUEsVUFBVSxHQUFHLE1BQU1DLFNBSFA7QUFJWkMsRUFBQUEsT0FBTyxHQUFHLE1BQU1EO0FBSkosQ0FBRCxLQVVFO0FBQ2IsUUFBTUUsTUFBTSxHQUFHaEMsVUFBVSxDQUFDMkIsV0FBRCxDQUF6QixDQURhLENBR2I7O0FBQ0EsTUFBSUssTUFBSixFQUFZO0FBQ1ZILElBQUFBLFVBQVU7QUFDVjNCLElBQUFBLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQixNQUFoQixFQUF3QjtBQUFFOEIsTUFBQUEsTUFBTSxFQUFFTjtBQUFWLEtBQXhCO0FBQ0EsOEJBQ0UsTUFBTXpCLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQitCLE1BRHhCLEVBRUU7QUFDQSxVQUNFQyxVQUFVLENBQUMsTUFBTTtBQUNmUCxNQUFBQSxRQUFRLENBQUMsVUFBRCxDQUFSO0FBQ0FHLE1BQUFBLE9BQU87QUFDUixLQUhTLEVBR1AsSUFITyxDQUpkO0FBU0Q7O0FBRUQsU0FBT0MsTUFBUDtBQUNELENBN0JEOztBQStCQSxNQUFNSSxJQUFJLEdBQUcsTUFBWWxDLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQixNQUFoQixDQUF6Qjs7ZUFFZTtBQUNiSixFQUFBQSxNQURhO0FBRWIyQixFQUFBQSxJQUZhO0FBR2JVLEVBQUFBO0FBSGEsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXRlIH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgd2FpdEZvckxvYWQgZnJvbSAnLi4vdXRpbHMvd2FpdEZvckxvYWQnXG5cbmNvbnN0IGRvbWFpbiA9ICdodHRwczovL3dpZGdldC5pbnRlcmNvbS5pbydcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICAvL2VzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgSW50ZXJjb206IGFueVxuICAgIGludGVyY29tU2V0dGluZ3M6ICgpID0+IHZvaWRcbiAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xuY29uc3QgbG9hZFNjcmlwdCA9IChhcHBJZDogc3RyaW5nKTogYm9vbGVhbiA9PiB7XG4gIGlmICh3aW5kb3cuSW50ZXJjb20pIHJldHVybiBmYWxzZVxuICA7KGZ1bmN0aW9uKCkge1xuICAgIHZhciB3ID0gd2luZG93XG4gICAgdmFyIGljID0gdy5JbnRlcmNvbVxuICAgIGlmICh0eXBlb2YgaWMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGljKCdyZWF0dGFjaF9hY3RpdmF0b3InKVxuICAgICAgaWMoJ3VwZGF0ZScsIHdpbmRvdy5pbnRlcmNvbVNldHRpbmdzKVxuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgZCA9IGRvY3VtZW50XG4gICAgICB2YXIgaTogYW55ID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIGkuYyhhcmd1bWVudHMpXG4gICAgICB9XG4gICAgICBpLnEgPSBbXVxuICAgICAgaS5jID0gZnVuY3Rpb24oYXJnczogYW55KSB7XG4gICAgICAgIGkucS5wdXNoKGFyZ3MpXG4gICAgICB9XG4gICAgICB3LkludGVyY29tID0gaVxuICAgICAgY29uc3QgbCA9ICgpID0+IHtcbiAgICAgICAgdmFyIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpXG4gICAgICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnXG4gICAgICAgIHMuYXN5bmMgPSB0cnVlXG4gICAgICAgIHMuc3JjID0gYCR7ZG9tYWlufS93aWRnZXQvJHthcHBJZH1gXG4gICAgICAgIHZhciB4ID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JykubGVuZ3RoIC0gMV1cbiAgICAgICAgeC5wYXJlbnROb2RlPy5pbnNlcnRCZWZvcmUocywgeClcbiAgICAgIH1cbiAgICAgIGwoKVxuICAgIH1cbiAgfSkoKVxuICByZXR1cm4gdHJ1ZVxufVxuLyogZXNsaW50LWVuYWJsZSAqL1xuXG5jb25zdCBsb2FkID0gKHtcbiAgcHJvdmlkZXJLZXksXG4gIHNldFN0YXRlLFxuICBiZWZvcmVJbml0ID0gKCkgPT4gdW5kZWZpbmVkLFxuICBvblJlYWR5ID0gKCkgPT4gdW5kZWZpbmVkXG59OiB7XG4gIHByb3ZpZGVyS2V5OiBzdHJpbmdcbiAgc2V0U3RhdGU6IChzdGF0ZTogU3RhdGUpID0+IHZvaWRcbiAgYmVmb3JlSW5pdD86ICgpID0+IHZvaWRcbiAgb25SZWFkeT86ICgpID0+IHZvaWRcbn0pOiBib29sZWFuID0+IHtcbiAgY29uc3QgbG9hZGVkID0gbG9hZFNjcmlwdChwcm92aWRlcktleSlcblxuICAvLyBDb250aW51ZSBhcyBsb25nIGFzIHVzZXJsaWtlIGhhc27igJl0IGFscmVhZHkgYmVlbiBpbml0aWFsaXNlZC5cbiAgaWYgKGxvYWRlZCkge1xuICAgIGJlZm9yZUluaXQoKVxuICAgIHdpbmRvdy5JbnRlcmNvbSgnYm9vdCcsIHsgYXBwX2lkOiBwcm92aWRlcktleSB9KVxuICAgIHdhaXRGb3JMb2FkKFxuICAgICAgKCkgPT4gd2luZG93LkludGVyY29tLmJvb3RlZCxcbiAgICAgIC8vIEFsbG93IGludGVyY29tIHRvIGNvbXBsZXRlIGxvYWRpbmcgYmVmb3JlIHJlbW92aW5nIGZha2Ugd2lkZ2V0XG4gICAgICAoKSA9PlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBzZXRTdGF0ZSgnY29tcGxldGUnKVxuICAgICAgICAgIG9uUmVhZHkoKVxuICAgICAgICB9LCAyMDAwKVxuICAgIClcbiAgfVxuXG4gIHJldHVybiBsb2FkZWRcbn1cblxuY29uc3Qgb3BlbiA9ICgpOiB2b2lkID0+IHdpbmRvdy5JbnRlcmNvbSgnc2hvdycpXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgZG9tYWluLFxuICBsb2FkLFxuICBvcGVuXG59XG4iXX0=
;