botframework-webchat-component
Version:
React component of botframework-webchat
105 lines (82 loc) • 9.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = createCoreAvatarMiddleware;
exports.DefaultAvatar = void 0;
var _classnames = _interopRequireDefault(require("classnames"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _react = _interopRequireDefault(require("react"));
var _ImageAvatar = _interopRequireDefault(require("../../Avatar/ImageAvatar"));
var _InitialsAvatar = _interopRequireDefault(require("../../Avatar/InitialsAvatar"));
var _useStyleSet3 = _interopRequireDefault(require("../../hooks/useStyleSet"));
var _useStyleToEmotionObject = _interopRequireDefault(require("../../hooks/internal/useStyleToEmotionObject"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var ROOT_STYLE = {
overflow: 'hidden',
position: 'relative',
'> *': {
left: 0,
position: 'absolute',
top: 0
}
};
var DefaultAvatar = function DefaultAvatar(_ref) {
var ariaHidden = _ref['aria-hidden'],
className = _ref.className,
fromUser = _ref.fromUser;
var _useStyleSet = (0, _useStyleSet3.default)(),
_useStyleSet2 = _slicedToArray(_useStyleSet, 1),
avatarStyleSet = _useStyleSet2[0].avatar;
var rootClassName = (0, _useStyleToEmotionObject.default)()(ROOT_STYLE) + '';
return /*#__PURE__*/_react.default.createElement("div", {
"aria-hidden": ariaHidden,
className: (0, _classnames.default)('webchat__defaultAvatar', {
'webchat__defaultAvatar--fromUser': fromUser
}, rootClassName, avatarStyleSet + '', (className || '') + '')
}, /*#__PURE__*/_react.default.createElement(_InitialsAvatar.default, {
fromUser: fromUser
}), /*#__PURE__*/_react.default.createElement(_ImageAvatar.default, {
fromUser: fromUser
}));
};
exports.DefaultAvatar = DefaultAvatar;
DefaultAvatar.defaultProps = {
'aria-hidden': true,
className: ''
};
DefaultAvatar.propTypes = {
'aria-hidden': _propTypes.default.bool,
className: _propTypes.default.string,
fromUser: _propTypes.default.bool.isRequired
};
function createCoreAvatarMiddleware() {
return [function () {
return function () {
return function (_ref2) {
var fromUser = _ref2.fromUser,
styleOptions = _ref2.styleOptions;
var botAvatarImage = styleOptions.botAvatarImage,
botAvatarInitials = styleOptions.botAvatarInitials,
userAvatarImage = styleOptions.userAvatarImage,
userAvatarInitials = styleOptions.userAvatarInitials;
if (fromUser ? userAvatarImage || userAvatarInitials : botAvatarImage || botAvatarInitials) {
// eslint-disable-next-line react/display-name
return function () {
return /*#__PURE__*/_react.default.createElement(DefaultAvatar, {
fromUser: fromUser
});
};
}
return false;
};
};
}];
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9NaWRkbGV3YXJlL0F2YXRhci9jcmVhdGVDb3JlTWlkZGxld2FyZS5qcyJdLCJuYW1lcyI6WyJST09UX1NUWUxFIiwib3ZlcmZsb3ciLCJwb3NpdGlvbiIsImxlZnQiLCJ0b3AiLCJEZWZhdWx0QXZhdGFyIiwiYXJpYUhpZGRlbiIsImNsYXNzTmFtZSIsImZyb21Vc2VyIiwiYXZhdGFyU3R5bGVTZXQiLCJhdmF0YXIiLCJyb290Q2xhc3NOYW1lIiwiZGVmYXVsdFByb3BzIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwiYm9vbCIsInN0cmluZyIsImlzUmVxdWlyZWQiLCJjcmVhdGVDb3JlQXZhdGFyTWlkZGxld2FyZSIsInN0eWxlT3B0aW9ucyIsImJvdEF2YXRhckltYWdlIiwiYm90QXZhdGFySW5pdGlhbHMiLCJ1c2VyQXZhdGFySW1hZ2UiLCJ1c2VyQXZhdGFySW5pdGlhbHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxVQUFVLEdBQUc7QUFDakJDLEVBQUFBLFFBQVEsRUFBRSxRQURPO0FBRWpCQyxFQUFBQSxRQUFRLEVBQUUsVUFGTztBQUlqQixTQUFPO0FBQ0xDLElBQUFBLElBQUksRUFBRSxDQUREO0FBRUxELElBQUFBLFFBQVEsRUFBRSxVQUZMO0FBR0xFLElBQUFBLEdBQUcsRUFBRTtBQUhBO0FBSlUsQ0FBbkI7O0FBV0EsSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixPQUF3RDtBQUFBLE1BQXRDQyxVQUFzQyxRQUFyRCxhQUFxRDtBQUFBLE1BQTFCQyxTQUEwQixRQUExQkEsU0FBMEI7QUFBQSxNQUFmQyxRQUFlLFFBQWZBLFFBQWU7O0FBQUEscUJBQ3ZDLDRCQUR1QztBQUFBO0FBQUEsTUFDM0RDLGNBRDJELG9CQUNuRUMsTUFEbUU7O0FBRTVFLE1BQU1DLGFBQWEsR0FBRyx3Q0FBMEJYLFVBQTFCLElBQXdDLEVBQTlEO0FBRUEsc0JBQ0U7QUFDRSxtQkFBYU0sVUFEZjtBQUVFLElBQUEsU0FBUyxFQUFFLHlCQUNULHdCQURTLEVBRVQ7QUFBRSwwQ0FBb0NFO0FBQXRDLEtBRlMsRUFHVEcsYUFIUyxFQUlURixjQUFjLEdBQUcsRUFKUixFQUtULENBQUNGLFNBQVMsSUFBSSxFQUFkLElBQW9CLEVBTFg7QUFGYixrQkFVRSw2QkFBQyx1QkFBRDtBQUFnQixJQUFBLFFBQVEsRUFBRUM7QUFBMUIsSUFWRixlQVdFLDZCQUFDLG9CQUFEO0FBQWEsSUFBQSxRQUFRLEVBQUVBO0FBQXZCLElBWEYsQ0FERjtBQWVELENBbkJEOzs7QUFxQkFILGFBQWEsQ0FBQ08sWUFBZCxHQUE2QjtBQUMzQixpQkFBZSxJQURZO0FBRTNCTCxFQUFBQSxTQUFTLEVBQUU7QUFGZ0IsQ0FBN0I7QUFLQUYsYUFBYSxDQUFDUSxTQUFkLEdBQTBCO0FBQ3hCLGlCQUFlQyxtQkFBVUMsSUFERDtBQUV4QlIsRUFBQUEsU0FBUyxFQUFFTyxtQkFBVUUsTUFGRztBQUd4QlIsRUFBQUEsUUFBUSxFQUFFTSxtQkFBVUMsSUFBVixDQUFlRTtBQUhELENBQTFCOztBQU1lLFNBQVNDLDBCQUFULEdBQXNDO0FBQ25ELFNBQU8sQ0FDTDtBQUFBLFdBQU07QUFBQSxhQUFNLGlCQUFnQztBQUFBLFlBQTdCVixRQUE2QixTQUE3QkEsUUFBNkI7QUFBQSxZQUFuQlcsWUFBbUIsU0FBbkJBLFlBQW1CO0FBQUEsWUFDbENDLGNBRGtDLEdBQ3lDRCxZQUR6QyxDQUNsQ0MsY0FEa0M7QUFBQSxZQUNsQkMsaUJBRGtCLEdBQ3lDRixZQUR6QyxDQUNsQkUsaUJBRGtCO0FBQUEsWUFDQ0MsZUFERCxHQUN5Q0gsWUFEekMsQ0FDQ0csZUFERDtBQUFBLFlBQ2tCQyxrQkFEbEIsR0FDeUNKLFlBRHpDLENBQ2tCSSxrQkFEbEI7O0FBRzFDLFlBQUlmLFFBQVEsR0FBR2MsZUFBZSxJQUFJQyxrQkFBdEIsR0FBMkNILGNBQWMsSUFBSUMsaUJBQXpFLEVBQTRGO0FBQzFGO0FBQ0EsaUJBQU87QUFBQSxnQ0FBTSw2QkFBQyxhQUFEO0FBQWUsY0FBQSxRQUFRLEVBQUViO0FBQXpCLGNBQU47QUFBQSxXQUFQO0FBQ0Q7O0FBRUQsZUFBTyxLQUFQO0FBQ0QsT0FUSztBQUFBLEtBQU47QUFBQSxHQURLLENBQVA7QUFZRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IEltYWdlQXZhdGFyIGZyb20gJy4uLy4uL0F2YXRhci9JbWFnZUF2YXRhcic7XG5pbXBvcnQgSW5pdGlhbHNBdmF0YXIgZnJvbSAnLi4vLi4vQXZhdGFyL0luaXRpYWxzQXZhdGFyJztcbmltcG9ydCB1c2VTdHlsZVNldCBmcm9tICcuLi8uLi9ob29rcy91c2VTdHlsZVNldCc7XG5pbXBvcnQgdXNlU3R5bGVUb0Vtb3Rpb25PYmplY3QgZnJvbSAnLi4vLi4vaG9va3MvaW50ZXJuYWwvdXNlU3R5bGVUb0Vtb3Rpb25PYmplY3QnO1xuXG5jb25zdCBST09UX1NUWUxFID0ge1xuICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuXG4gICc+IConOiB7XG4gICAgbGVmdDogMCxcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB0b3A6IDBcbiAgfVxufTtcblxuY29uc3QgRGVmYXVsdEF2YXRhciA9ICh7ICdhcmlhLWhpZGRlbic6IGFyaWFIaWRkZW4sIGNsYXNzTmFtZSwgZnJvbVVzZXIgfSkgPT4ge1xuICBjb25zdCBbeyBhdmF0YXI6IGF2YXRhclN0eWxlU2V0IH1dID0gdXNlU3R5bGVTZXQoKTtcbiAgY29uc3Qgcm9vdENsYXNzTmFtZSA9IHVzZVN0eWxlVG9FbW90aW9uT2JqZWN0KCkoUk9PVF9TVFlMRSkgKyAnJztcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGFyaWEtaGlkZGVuPXthcmlhSGlkZGVufVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFxuICAgICAgICAnd2ViY2hhdF9fZGVmYXVsdEF2YXRhcicsXG4gICAgICAgIHsgJ3dlYmNoYXRfX2RlZmF1bHRBdmF0YXItLWZyb21Vc2VyJzogZnJvbVVzZXIgfSxcbiAgICAgICAgcm9vdENsYXNzTmFtZSxcbiAgICAgICAgYXZhdGFyU3R5bGVTZXQgKyAnJyxcbiAgICAgICAgKGNsYXNzTmFtZSB8fCAnJykgKyAnJ1xuICAgICAgKX1cbiAgICA+XG4gICAgICA8SW5pdGlhbHNBdmF0YXIgZnJvbVVzZXI9e2Zyb21Vc2VyfSAvPlxuICAgICAgPEltYWdlQXZhdGFyIGZyb21Vc2VyPXtmcm9tVXNlcn0gLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbkRlZmF1bHRBdmF0YXIuZGVmYXVsdFByb3BzID0ge1xuICAnYXJpYS1oaWRkZW4nOiB0cnVlLFxuICBjbGFzc05hbWU6ICcnXG59O1xuXG5EZWZhdWx0QXZhdGFyLnByb3BUeXBlcyA9IHtcbiAgJ2FyaWEtaGlkZGVuJzogUHJvcFR5cGVzLmJvb2wsXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgZnJvbVVzZXI6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWRcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZUNvcmVBdmF0YXJNaWRkbGV3YXJlKCkge1xuICByZXR1cm4gW1xuICAgICgpID0+ICgpID0+ICh7IGZyb21Vc2VyLCBzdHlsZU9wdGlvbnMgfSkgPT4ge1xuICAgICAgY29uc3QgeyBib3RBdmF0YXJJbWFnZSwgYm90QXZhdGFySW5pdGlhbHMsIHVzZXJBdmF0YXJJbWFnZSwgdXNlckF2YXRhckluaXRpYWxzIH0gPSBzdHlsZU9wdGlvbnM7XG5cbiAgICAgIGlmIChmcm9tVXNlciA/IHVzZXJBdmF0YXJJbWFnZSB8fCB1c2VyQXZhdGFySW5pdGlhbHMgOiBib3RBdmF0YXJJbWFnZSB8fCBib3RBdmF0YXJJbml0aWFscykge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvZGlzcGxheS1uYW1lXG4gICAgICAgIHJldHVybiAoKSA9PiA8RGVmYXVsdEF2YXRhciBmcm9tVXNlcj17ZnJvbVVzZXJ9IC8+O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICBdO1xufVxuXG5leHBvcnQgeyBEZWZhdWx0QXZhdGFyIH07XG4iXX0=