tb-react-live-chat-loader
Version:
Implement live chat in your react app without taking a performance hit.
167 lines (155 loc) • 19.4 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _useChat = _interopRequireDefault(require("../../hooks/useChat"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
const styles = {
wrapper: {
zIndex: 2147483004,
// 1 more than the actual widget
position: 'fixed',
bottom: '20px',
display: 'block',
right: '20px',
width: '60px',
height: '60px',
borderRadius: '50%',
boxShadow: 'rgba(0, 0, 0, 0.0588235) 0px 1px 6px 0px, rgba(0, 0, 0, 0.156863) 0px 2px 32px 0px'
},
region: {
fontFamily: "intercom-font, 'Helvetica Neue', 'Apple Color Emoji', Helvetica, Arial, sans-serif",
fontSize: '100%',
fontStyle: 'normal',
letterSpacing: 'normal',
fontStretch: 'normal',
fontVariantLigatures: 'normal',
fontVariantCaps: 'normal',
fontVariantEastAsian: 'normal',
fontVariantPosition: 'normal',
fontWeight: 'normal',
textAlign: 'left',
textDecorationLine: 'none',
textDecorationStyle: 'initial',
textDecorationColor: 'initial',
textDecoration: 'none',
textIndent: '0px',
textShadow: 'none',
textTransform: 'none',
boxSizing: 'content-box',
WebkitTextEmphasisStyle: 'none',
WebkitTextEmphasisColor: 'initial',
WebkitFontSmoothing: 'antialiased',
lineHeight: 1
},
launcher: {
position: 'absolute',
top: '0px',
left: '0px',
width: '60px',
height: '60px',
borderRadius: '50%',
cursor: 'pointer',
transformOrigin: 'center',
overflowX: 'hidden',
overflowY: 'hidden',
WebkitBackfaceVisibility: 'hidden',
WebkitFontSmoothing: 'antialiased'
},
logo: {
display: 'flex',
WebkitBoxAlign: 'center',
alignItems: 'center',
WebkitBoxPack: 'center',
justifyContent: 'center',
position: 'absolute',
top: '0px',
bottom: '0px',
width: '100%',
transform: 'rotate(0deg) scale(1)',
transition: 'transform 0.16s linear 0s, opacity 0.08s linear 0s'
},
close: {
display: 'flex',
WebkitBoxAlign: 'center',
alignItems: 'center',
WebkitBoxPack: 'center',
justifyContent: 'center',
position: 'absolute',
top: '0px',
bottom: '0px',
width: '100%',
transition: 'transform 0.16s linear 0s, opacity 0.08s linear 0s'
}
};
const Intercom = ({
color
}) => {
const [state, loadChat] = (0, _useChat.default)({
loadWhenIdle: true
});
if (state === 'complete') {
return null;
}
return /*#__PURE__*/_react.default.createElement("div", {
style: _objectSpread(_objectSpread({}, styles.wrapper), {}, {
background: color
})
}, /*#__PURE__*/_react.default.createElement("div", {
style: styles.region
}, /*#__PURE__*/_react.default.createElement("div", {
role: "button",
"aria-label": "Load Chat",
"aria-busy": "true",
"aria-live": "polite",
onClick: () => loadChat({
open: true
}),
onMouseEnter: () => loadChat({
open: false
}),
style: styles.launcher
}, /*#__PURE__*/_react.default.createElement("div", {
style: _objectSpread(_objectSpread({}, styles.logo), {}, {
opacity: state === 'initial' ? 1 : 0
})
}, /*#__PURE__*/_react.default.createElement("svg", {
height: "32px",
width: "28px",
focusable: "false",
"aria-hidden": "true",
viewBox: "0 0 28 32"
}, /*#__PURE__*/_react.default.createElement("path", {
fill: "rgb(255, 255, 255)",
d: "M28,32 C28,32 23.2863266,30.1450667 19.4727818,28.6592 L3.43749107,28.6592 C1.53921989,28.6592 0,27.0272 0,25.0144 L0,3.6448 C0,1.632 1.53921989,0 3.43749107,0 L24.5615088,0 C26.45978,0 27.9989999,1.632 27.9989999,3.6448 L27.9989999,22.0490667 L28,22.0490667 L28,32 Z M23.8614088,20.0181333 C23.5309223,19.6105242 22.9540812,19.5633836 22.5692242,19.9125333 C22.5392199,19.9392 19.5537934,22.5941333 13.9989999,22.5941333 C8.51321617,22.5941333 5.48178311,19.9584 5.4277754,19.9104 C5.04295119,19.5629428 4.46760991,19.6105095 4.13759108,20.0170667 C3.97913051,20.2124916 3.9004494,20.4673395 3.91904357,20.7249415 C3.93763774,20.9825435 4.05196575,21.2215447 4.23660523,21.3888 C4.37862552,21.5168 7.77411059,24.5386667 13.9989999,24.5386667 C20.2248893,24.5386667 23.6203743,21.5168 23.7623946,21.3888 C23.9467342,21.2215726 24.0608642,20.9827905 24.0794539,20.7254507 C24.0980436,20.4681109 24.0195551,20.2135019 23.8614088,20.0181333 Z"
}))), /*#__PURE__*/_react.default.createElement("div", {
style: _objectSpread(_objectSpread({}, styles.close), {}, {
opacity: state === 'initial' ? 0 : 1,
transform: state === 'initial' ? 'rotate(-30deg)' : 'rotate(0deg)'
})
}, /*#__PURE__*/_react.default.createElement("svg", {
focusable: "false",
viewBox: "0 0 16 14",
width: "28",
height: "25",
style: {
width: '16px'
}
}, /*#__PURE__*/_react.default.createElement("path", {
fill: "rgb(255, 255, 255)",
fillRule: "evenodd",
clipRule: "evenodd",
d: "M.116 4.884l1.768-1.768L8 9.232l6.116-6.116 1.768 1.768L8 12.768.116 4.884z"
}))))));
};
Intercom.defaultProps = {
color: '#333333'
};
var _default = Intercom;
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0ludGVyY29tL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJzdHlsZXMiLCJ3cmFwcGVyIiwiekluZGV4IiwicG9zaXRpb24iLCJib3R0b20iLCJkaXNwbGF5IiwicmlnaHQiLCJ3aWR0aCIsImhlaWdodCIsImJvcmRlclJhZGl1cyIsImJveFNoYWRvdyIsInJlZ2lvbiIsImZvbnRGYW1pbHkiLCJmb250U2l6ZSIsImZvbnRTdHlsZSIsImxldHRlclNwYWNpbmciLCJmb250U3RyZXRjaCIsImZvbnRWYXJpYW50TGlnYXR1cmVzIiwiZm9udFZhcmlhbnRDYXBzIiwiZm9udFZhcmlhbnRFYXN0QXNpYW4iLCJmb250VmFyaWFudFBvc2l0aW9uIiwiZm9udFdlaWdodCIsInRleHRBbGlnbiIsInRleHREZWNvcmF0aW9uTGluZSIsInRleHREZWNvcmF0aW9uU3R5bGUiLCJ0ZXh0RGVjb3JhdGlvbkNvbG9yIiwidGV4dERlY29yYXRpb24iLCJ0ZXh0SW5kZW50IiwidGV4dFNoYWRvdyIsInRleHRUcmFuc2Zvcm0iLCJib3hTaXppbmciLCJXZWJraXRUZXh0RW1waGFzaXNTdHlsZSIsIldlYmtpdFRleHRFbXBoYXNpc0NvbG9yIiwiV2Via2l0Rm9udFNtb290aGluZyIsImxpbmVIZWlnaHQiLCJsYXVuY2hlciIsInRvcCIsImxlZnQiLCJjdXJzb3IiLCJ0cmFuc2Zvcm1PcmlnaW4iLCJvdmVyZmxvd1giLCJvdmVyZmxvd1kiLCJXZWJraXRCYWNrZmFjZVZpc2liaWxpdHkiLCJsb2dvIiwiV2Via2l0Qm94QWxpZ24iLCJhbGlnbkl0ZW1zIiwiV2Via2l0Qm94UGFjayIsImp1c3RpZnlDb250ZW50IiwidHJhbnNmb3JtIiwidHJhbnNpdGlvbiIsImNsb3NlIiwiSW50ZXJjb20iLCJjb2xvciIsInN0YXRlIiwibG9hZENoYXQiLCJsb2FkV2hlbklkbGUiLCJiYWNrZ3JvdW5kIiwib3BlbiIsIm9wYWNpdHkiLCJkZWZhdWx0UHJvcHMi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QUssU0FBVixHQUFzQixDQUF0QixHQUEwQjtBQUZoQztBQURQLGtCQU1FO0FBQ0UsSUFBQSxNQUFNLEVBQUMsTUFEVDtBQUVFLElBQUEsS0FBSyxFQUFDLE1BRlI7QUFHRSxJQUFBLFNBQVMsRUFBQyxPQUhaO0FBSUUsbUJBQVksTUFKZDtBQUtFLElBQUEsT0FBTyxFQUFDO0FBTFYsa0JBT0U7QUFDRSxJQUFBLElBQUksRUFBQyxvQkFEUDtBQUVFLElBQUEsQ0FBQyxFQUFDO0FBRkosSUFQRixDQU5GLENBVEYsZUE0QkU7QUFDRSxJQUFBLEtBQUssa0NBQ0FyRCxNQUFNLENBQUNrRCxLQURQO0FBRUhRLE1BQUFBLE9BQU8sRUFBRUwsS0FBSyxLQUFLLFNBQVYsR0FBc0IsQ0FBdEIsR0FBMEIsQ0FGaEM7QUFHSEwsTUFBQUEsU0FBUyxFQUFFSyxLQUFLLEtBQUssU0FBVixHQUFzQixnQkFBdEIsR0FBeUM7QUFIakQ7QUFEUCxrQkFPRTtBQUNFLElBQUEsU0FBUyxFQUFDLE9BRFo7QUFFRSxJQUFBLE9BQU8sRUFBQyxXQUZWO0FBR0UsSUFBQSxLQUFLLEVBQUMsSUFIUjtBQUlFLElBQUEsTUFBTSxFQUFDLElBSlQ7QUFLRSxJQUFBLEtBQUssRUFBRTtBQUFFOUMsTUFBQUEsS0FBSyxFQUFFO0FBQVQ7QUFMVCxrQkFPRTtBQUNFLElBQUEsSUFBSSxFQUFDLG9CQURQO0FBRUUsSUFBQSxRQUFRLEVBQUMsU0FGWDtBQUdFLElBQUEsUUFBUSxFQUFDLFNBSFg7QUFJRSxJQUFBLENBQUMsRUFBQztBQUpKLElBUEYsQ0FQRixDQTVCRixDQURGLENBTkYsQ0FERjtBQThERCxDQXJFRDs7QUF1RUE0QyxRQUFRLENBQUNRLFlBQVQsR0FBd0I7QUFDdEJQLEVBQUFBLEtBQUssRUFBRTtBQURlLENBQXhCO2VBSWVELFEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcyB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgdXNlQ2hhdCBmcm9tICcuLi8uLi9ob29rcy91c2VDaGF0J1xuXG5jb25zdCBzdHlsZXM6IHtcbiAgd3JhcHBlcjogQ1NTUHJvcGVydGllc1xuICByZWdpb246IENTU1Byb3BlcnRpZXNcbiAgbGF1bmNoZXI6IENTU1Byb3BlcnRpZXNcbiAgbG9nbzogQ1NTUHJvcGVydGllc1xuICBjbG9zZTogQ1NTUHJvcGVydGllc1xufSA9IHtcbiAgd3JhcHBlcjoge1xuICAgIHpJbmRleDogMjE0NzQ4MzAwNCwgLy8gMSBtb3JlIHRoYW4gdGhlIGFjdHVhbCB3aWRnZXRcbiAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICBib3R0b206ICcyMHB4JyxcbiAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgIHJpZ2h0OiAnMjBweCcsXG4gICAgd2lkdGg6ICc2MHB4JyxcbiAgICBoZWlnaHQ6ICc2MHB4JyxcbiAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxuICAgIGJveFNoYWRvdzpcbiAgICAgICdyZ2JhKDAsIDAsIDAsIDAuMDU4ODIzNSkgMHB4IDFweCA2cHggMHB4LCByZ2JhKDAsIDAsIDAsIDAuMTU2ODYzKSAwcHggMnB4IDMycHggMHB4J1xuICB9LFxuICByZWdpb246IHtcbiAgICBmb250RmFtaWx5OlxuICAgICAgXCJpbnRlcmNvbS1mb250LCAnSGVsdmV0aWNhIE5ldWUnLCAnQXBwbGUgQ29sb3IgRW1vamknLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmXCIsXG4gICAgZm9udFNpemU6ICcxMDAlJyxcbiAgICBmb250U3R5bGU6ICdub3JtYWwnLFxuICAgIGxldHRlclNwYWNpbmc6ICdub3JtYWwnLFxuICAgIGZvbnRTdHJldGNoOiAnbm9ybWFsJyxcbiAgICBmb250VmFyaWFudExpZ2F0dXJlczogJ25vcm1hbCcsXG4gICAgZm9udFZhcmlhbnRDYXBzOiAnbm9ybWFsJyxcbiAgICBmb250VmFyaWFudEVhc3RBc2lhbjogJ25vcm1hbCcsXG4gICAgZm9udFZhcmlhbnRQb3NpdGlvbjogJ25vcm1hbCcsXG4gICAgZm9udFdlaWdodDogJ25vcm1hbCcsXG4gICAgdGV4dEFsaWduOiAnbGVmdCcsXG4gICAgdGV4dERlY29yYXRpb25MaW5lOiAnbm9uZScsXG4gICAgdGV4dERlY29yYXRpb25TdHlsZTogJ2luaXRpYWwnLFxuICAgIHRleHREZWNvcmF0aW9uQ29sb3I6ICdpbml0aWFsJyxcbiAgICB0ZXh0RGVjb3JhdGlvbjogJ25vbmUnLFxuICAgIHRleHRJbmRlbnQ6ICcwcHgnLFxuICAgIHRleHRTaGFkb3c6ICdub25lJyxcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXG4gICAgYm94U2l6aW5nOiAnY29udGVudC1ib3gnLFxuICAgIFdlYmtpdFRleHRFbXBoYXNpc1N0eWxlOiAnbm9uZScsXG4gICAgV2Via2l0VGV4dEVtcGhhc2lzQ29sb3I6ICdpbml0aWFsJyxcbiAgICBXZWJraXRGb250U21vb3RoaW5nOiAnYW50aWFsaWFzZWQnLFxuICAgIGxpbmVIZWlnaHQ6IDFcbiAgfSxcbiAgbGF1bmNoZXI6IHtcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB0b3A6ICcwcHgnLFxuICAgIGxlZnQ6ICcwcHgnLFxuICAgIHdpZHRoOiAnNjBweCcsXG4gICAgaGVpZ2h0OiAnNjBweCcsXG4gICAgYm9yZGVyUmFkaXVzOiAnNTAlJyxcbiAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICB0cmFuc2Zvcm1PcmlnaW46ICdjZW50ZXInLFxuICAgIG92ZXJmbG93WDogJ2hpZGRlbicsXG4gICAgb3ZlcmZsb3dZOiAnaGlkZGVuJyxcbiAgICBXZWJraXRCYWNrZmFjZVZpc2liaWxpdHk6ICdoaWRkZW4nLFxuICAgIFdlYmtpdEZvbnRTbW9vdGhpbmc6ICdhbnRpYWxpYXNlZCdcbiAgfSxcbiAgbG9nbzoge1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBXZWJraXRCb3hBbGlnbjogJ2NlbnRlcicsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgV2Via2l0Qm94UGFjazogJ2NlbnRlcicsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHRvcDogJzBweCcsXG4gICAgYm90dG9tOiAnMHB4JyxcbiAgICB3aWR0aDogJzEwMCUnLFxuICAgIHRyYW5zZm9ybTogJ3JvdGF0ZSgwZGVnKSBzY2FsZSgxKScsXG4gICAgdHJhbnNpdGlvbjogJ3RyYW5zZm9ybSAwLjE2cyBsaW5lYXIgMHMsIG9wYWNpdHkgMC4wOHMgbGluZWFyIDBzJ1xuICB9LFxuICBjbG9zZToge1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBXZWJraXRCb3hBbGlnbjogJ2NlbnRlcicsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgV2Via2l0Qm94UGFjazogJ2NlbnRlcicsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHRvcDogJzBweCcsXG4gICAgYm90dG9tOiAnMHB4JyxcbiAgICB3aWR0aDogJzEwMCUnLFxuICAgIHRyYW5zaXRpb246ICd0cmFuc2Zvcm0gMC4xNnMgbGluZWFyIDBzLCBvcGFjaXR5IDAuMDhzIGxpbmVhciAwcydcbiAgfVxufVxuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBjb2xvcj86IHN0cmluZ1xufVxuXG5jb25zdCBJbnRlcmNvbSA9ICh7IGNvbG9yIH06IFByb3BzKTogSlNYLkVsZW1lbnQgfCBudWxsID0+IHtcbiAgY29uc3QgW3N0YXRlLCBsb2FkQ2hhdF0gPSB1c2VDaGF0KHsgbG9hZFdoZW5JZGxlOiB0cnVlIH0pXG5cbiAgaWYgKHN0YXRlID09PSAnY29tcGxldGUnKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgc3R5bGU9e3tcbiAgICAgICAgLi4uc3R5bGVzLndyYXBwZXIsXG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3N0eWxlcy5yZWdpb259PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIkxvYWQgQ2hhdFwiXG4gICAgICAgICAgYXJpYS1idXN5PVwidHJ1ZVwiXG4gICAgICAgICAgYXJpYS1saXZlPVwicG9saXRlXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBsb2FkQ2hhdCh7IG9wZW46IHRydWUgfSl9XG4gICAgICAgICAgb25Nb3VzZUVudGVyPXsoKSA9PiBsb2FkQ2hhdCh7IG9wZW46IGZhbHNlIH0pfVxuICAgICAgICAgIHN0eWxlPXtzdHlsZXMubGF1bmNoZXJ9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAuLi5zdHlsZXMubG9nbyxcbiAgICAgICAgICAgICAgb3BhY2l0eTogc3RhdGUgPT09ICdpbml0aWFsJyA/IDEgOiAwXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgICAgaGVpZ2h0PVwiMzJweFwiXG4gICAgICAgICAgICAgIHdpZHRoPVwiMjhweFwiXG4gICAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyOCAzMlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgZmlsbD1cInJnYigyNTUsIDI1NSwgMjU1KVwiXG4gICAgICAgICAgICAgICAgZD1cIk0yOCwzMiBDMjgsMzIgMjMuMjg2MzI2NiwzMC4xNDUwNjY3IDE5LjQ3Mjc4MTgsMjguNjU5MiBMMy40Mzc0OTEwNywyOC42NTkyIEMxLjUzOTIxOTg5LDI4LjY1OTIgMCwyNy4wMjcyIDAsMjUuMDE0NCBMMCwzLjY0NDggQzAsMS42MzIgMS41MzkyMTk4OSwwIDMuNDM3NDkxMDcsMCBMMjQuNTYxNTA4OCwwIEMyNi40NTk3OCwwIDI3Ljk5ODk5OTksMS42MzIgMjcuOTk4OTk5OSwzLjY0NDggTDI3Ljk5ODk5OTksMjIuMDQ5MDY2NyBMMjgsMjIuMDQ5MDY2NyBMMjgsMzIgWiBNMjMuODYxNDA4OCwyMC4wMTgxMzMzIEMyMy41MzA5MjIzLDE5LjYxMDUyNDIgMjIuOTU0MDgxMiwxOS41NjMzODM2IDIyLjU2OTIyNDIsMTkuOTEyNTMzMyBDMjIuNTM5MjE5OSwxOS45MzkyIDE5LjU1Mzc5MzQsMjIuNTk0MTMzMyAxMy45OTg5OTk5LDIyLjU5NDEzMzMgQzguNTEzMjE2MTcsMjIuNTk0MTMzMyA1LjQ4MTc4MzExLDE5Ljk1ODQgNS40Mjc3NzU0LDE5LjkxMDQgQzUuMDQyOTUxMTksMTkuNTYyOTQyOCA0LjQ2NzYwOTkxLDE5LjYxMDUwOTUgNC4xMzc1OTEwOCwyMC4wMTcwNjY3IEMzLjk3OTEzMDUxLDIwLjIxMjQ5MTYgMy45MDA0NDk0LDIwLjQ2NzMzOTUgMy45MTkwNDM1NywyMC43MjQ5NDE1IEMzLjkzNzYzNzc0LDIwLjk4MjU0MzUgNC4wNTE5NjU3NSwyMS4yMjE1NDQ3IDQuMjM2NjA1MjMsMjEuMzg4OCBDNC4zNzg2MjU1MiwyMS41MTY4IDcuNzc0MTEwNTksMjQuNTM4NjY2NyAxMy45OTg5OTk5LDI0LjUzODY2NjcgQzIwLjIyNDg4OTMsMjQuNTM4NjY2NyAyMy42MjAzNzQzLDIxLjUxNjggMjMuNzYyMzk0NiwyMS4zODg4IEMyMy45NDY3MzQyLDIxLjIyMTU3MjYgMjQuMDYwODY0MiwyMC45ODI3OTA1IDI0LjA3OTQ1MzksMjAuNzI1NDUwNyBDMjQuMDk4MDQzNiwyMC40NjgxMTA5IDI0LjAxOTU1NTEsMjAuMjEzNTAxOSAyMy44NjE0MDg4LDIwLjAxODEzMzMgWlwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAuLi5zdHlsZXMuY2xvc2UsXG4gICAgICAgICAgICAgIG9wYWNpdHk6IHN0YXRlID09PSAnaW5pdGlhbCcgPyAwIDogMSxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzdGF0ZSA9PT0gJ2luaXRpYWwnID8gJ3JvdGF0ZSgtMzBkZWcpJyA6ICdyb3RhdGUoMGRlZyknXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgICAgZm9jdXNhYmxlPVwiZmFsc2VcIlxuICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE0XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIyOFwiXG4gICAgICAgICAgICAgIGhlaWdodD1cIjI1XCJcbiAgICAgICAgICAgICAgc3R5bGU9e3sgd2lkdGg6ICcxNnB4JyB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgIGZpbGw9XCJyZ2IoMjU1LCAyNTUsIDI1NSlcIlxuICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgICAgICAgY2xpcFJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICAgICAgICBkPVwiTS4xMTYgNC44ODRsMS43NjgtMS43NjhMOCA5LjIzMmw2LjExNi02LjExNiAxLjc2OCAxLjc2OEw4IDEyLjc2OC4xMTYgNC44ODR6XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApXG59XG5cbkludGVyY29tLmRlZmF1bHRQcm9wcyA9IHtcbiAgY29sb3I6ICcjMzMzMzMzJ1xufVxuXG5leHBvcnQgZGVmYXVsdCBJbnRlcmNvbVxuIl19