UNPKG

botframework-webchat-component

Version:
111 lines (83 loc) 11.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _botframeworkWebchatApi = require("botframework-webchat-api"); var _classnames = _interopRequireDefault(require("classnames")); var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireDefault(require("react")); var _Surface = _interopRequireDefault(require("./Utils/AccessKeySink/Surface")); var _BasicConnectivityStatus = _interopRequireDefault(require("./BasicConnectivityStatus")); var _BasicSendBox = _interopRequireDefault(require("./BasicSendBox")); var _BasicToaster = _interopRequireDefault(require("./BasicToaster")); var _BasicTranscript = _interopRequireDefault(require("./BasicTranscript")); 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 useStyleOptions = _botframeworkWebchatApi.hooks.useStyleOptions; var ROOT_STYLE = { display: 'flex', flexDirection: 'column' }; var CONNECTIVITY_STATUS_STYLE = { flexShrink: 0 }; var SEND_BOX_CSS = { flexShrink: 0 }; var TOASTER_STYLE = { flexShrink: 0 }; var TRANSCRIPT_STYLE = { flex: 1 }; // Subset of landmark roles: https://w3.org/TR/wai-aria/#landmark_roles var ARIA_LANDMARK_ROLES = ['complementary', 'contentinfo', 'form', 'main', 'region']; var BasicWebChat = function BasicWebChat(_ref) { var className = _ref.className, role = _ref.role; var _useStyleSet = (0, _useStyleSet3.default)(), _useStyleSet2 = _slicedToArray(_useStyleSet, 1), rootStyleSet = _useStyleSet2[0].root; var _useStyleOptions = useStyleOptions(), _useStyleOptions2 = _slicedToArray(_useStyleOptions, 1), options = _useStyleOptions2[0]; var styleToEmotionObject = (0, _useStyleToEmotionObject.default)(); var connectivityStatusClassName = styleToEmotionObject(CONNECTIVITY_STATUS_STYLE) + ''; var rootClassName = styleToEmotionObject(ROOT_STYLE) + ''; var sendBoxClassName = styleToEmotionObject(SEND_BOX_CSS) + ''; var toasterClassName = styleToEmotionObject(TOASTER_STYLE) + ''; var transcriptClassName = styleToEmotionObject(TRANSCRIPT_STYLE) + ''; // Fallback to "complementary" if specified is not a valid landmark role. if (!ARIA_LANDMARK_ROLES.includes(role)) { role = 'complementary'; } return /*#__PURE__*/_react.default.createElement(_Surface.default, { className: (0, _classnames.default)(rootClassName, rootStyleSet + '', (className || '') + ''), role: role }, !options.hideToaster && /*#__PURE__*/_react.default.createElement(_BasicToaster.default, { className: toasterClassName }), /*#__PURE__*/_react.default.createElement(_BasicTranscript.default, { className: transcriptClassName }), /*#__PURE__*/_react.default.createElement(_BasicConnectivityStatus.default, { className: connectivityStatusClassName }), !options.hideSendBox && /*#__PURE__*/_react.default.createElement(_BasicSendBox.default, { className: sendBoxClassName })); }; var _default = BasicWebChat; exports.default = _default; BasicWebChat.defaultProps = { className: '', role: 'complementary' }; BasicWebChat.propTypes = { className: _propTypes.default.string, role: _propTypes.default.oneOf(ARIA_LANDMARK_ROLES) }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9CYXNpY1dlYkNoYXQuanMiXSwibmFtZXMiOlsidXNlU3R5bGVPcHRpb25zIiwiaG9va3MiLCJST09UX1NUWUxFIiwiZGlzcGxheSIsImZsZXhEaXJlY3Rpb24iLCJDT05ORUNUSVZJVFlfU1RBVFVTX1NUWUxFIiwiZmxleFNocmluayIsIlNFTkRfQk9YX0NTUyIsIlRPQVNURVJfU1RZTEUiLCJUUkFOU0NSSVBUX1NUWUxFIiwiZmxleCIsIkFSSUFfTEFORE1BUktfUk9MRVMiLCJCYXNpY1dlYkNoYXQiLCJjbGFzc05hbWUiLCJyb2xlIiwicm9vdFN0eWxlU2V0Iiwicm9vdCIsIm9wdGlvbnMiLCJzdHlsZVRvRW1vdGlvbk9iamVjdCIsImNvbm5lY3Rpdml0eVN0YXR1c0NsYXNzTmFtZSIsInJvb3RDbGFzc05hbWUiLCJzZW5kQm94Q2xhc3NOYW1lIiwidG9hc3RlckNsYXNzTmFtZSIsInRyYW5zY3JpcHRDbGFzc05hbWUiLCJpbmNsdWRlcyIsImhpZGVUb2FzdGVyIiwiaGlkZVNlbmRCb3giLCJkZWZhdWx0UHJvcHMiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzdHJpbmciLCJvbmVPZiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7O0lBRVFBLGUsR0FBb0JDLDZCLENBQXBCRCxlO0FBRVIsSUFBTUUsVUFBVSxHQUFHO0FBQ2pCQyxFQUFBQSxPQUFPLEVBQUUsTUFEUTtBQUVqQkMsRUFBQUEsYUFBYSxFQUFFO0FBRkUsQ0FBbkI7QUFLQSxJQUFNQyx5QkFBeUIsR0FBRztBQUNoQ0MsRUFBQUEsVUFBVSxFQUFFO0FBRG9CLENBQWxDO0FBSUEsSUFBTUMsWUFBWSxHQUFHO0FBQ25CRCxFQUFBQSxVQUFVLEVBQUU7QUFETyxDQUFyQjtBQUlBLElBQU1FLGFBQWEsR0FBRztBQUNwQkYsRUFBQUEsVUFBVSxFQUFFO0FBRFEsQ0FBdEI7QUFJQSxJQUFNRyxnQkFBZ0IsR0FBRztBQUN2QkMsRUFBQUEsSUFBSSxFQUFFO0FBRGlCLENBQXpCLEMsQ0FJQTs7QUFDQSxJQUFNQyxtQkFBbUIsR0FBRyxDQUFDLGVBQUQsRUFBa0IsYUFBbEIsRUFBaUMsTUFBakMsRUFBeUMsTUFBekMsRUFBaUQsUUFBakQsQ0FBNUI7O0FBRUEsSUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsT0FBeUI7QUFBQSxNQUF0QkMsU0FBc0IsUUFBdEJBLFNBQXNCO0FBQUEsTUFBWEMsSUFBVyxRQUFYQSxJQUFXOztBQUFBLHFCQUNYLDRCQURXO0FBQUE7QUFBQSxNQUM3QkMsWUFENkIsb0JBQ25DQyxJQURtQzs7QUFBQSx5QkFFMUJoQixlQUFlLEVBRlc7QUFBQTtBQUFBLE1BRXJDaUIsT0FGcUM7O0FBRzVDLE1BQU1DLG9CQUFvQixHQUFHLHVDQUE3QjtBQUVBLE1BQU1DLDJCQUEyQixHQUFHRCxvQkFBb0IsQ0FBQ2IseUJBQUQsQ0FBcEIsR0FBa0QsRUFBdEY7QUFDQSxNQUFNZSxhQUFhLEdBQUdGLG9CQUFvQixDQUFDaEIsVUFBRCxDQUFwQixHQUFtQyxFQUF6RDtBQUNBLE1BQU1tQixnQkFBZ0IsR0FBR0gsb0JBQW9CLENBQUNYLFlBQUQsQ0FBcEIsR0FBcUMsRUFBOUQ7QUFDQSxNQUFNZSxnQkFBZ0IsR0FBR0osb0JBQW9CLENBQUNWLGFBQUQsQ0FBcEIsR0FBc0MsRUFBL0Q7QUFDQSxNQUFNZSxtQkFBbUIsR0FBR0wsb0JBQW9CLENBQUNULGdCQUFELENBQXBCLEdBQXlDLEVBQXJFLENBVDRDLENBVzVDOztBQUNBLE1BQUksQ0FBQ0UsbUJBQW1CLENBQUNhLFFBQXBCLENBQTZCVixJQUE3QixDQUFMLEVBQXlDO0FBQ3ZDQSxJQUFBQSxJQUFJLEdBQUcsZUFBUDtBQUNEOztBQUVELHNCQUNFLDZCQUFDLGdCQUFEO0FBQXNCLElBQUEsU0FBUyxFQUFFLHlCQUFXTSxhQUFYLEVBQTBCTCxZQUFZLEdBQUcsRUFBekMsRUFBNkMsQ0FBQ0YsU0FBUyxJQUFJLEVBQWQsSUFBb0IsRUFBakUsQ0FBakM7QUFBdUcsSUFBQSxJQUFJLEVBQUVDO0FBQTdHLEtBQ0csQ0FBQ0csT0FBTyxDQUFDUSxXQUFULGlCQUF3Qiw2QkFBQyxxQkFBRDtBQUFjLElBQUEsU0FBUyxFQUFFSDtBQUF6QixJQUQzQixlQUVFLDZCQUFDLHdCQUFEO0FBQWlCLElBQUEsU0FBUyxFQUFFQztBQUE1QixJQUZGLGVBR0UsNkJBQUMsZ0NBQUQ7QUFBeUIsSUFBQSxTQUFTLEVBQUVKO0FBQXBDLElBSEYsRUFJRyxDQUFDRixPQUFPLENBQUNTLFdBQVQsaUJBQXdCLDZCQUFDLHFCQUFEO0FBQWMsSUFBQSxTQUFTLEVBQUVMO0FBQXpCLElBSjNCLENBREY7QUFRRCxDQXhCRDs7ZUEwQmVULFk7O0FBRWZBLFlBQVksQ0FBQ2UsWUFBYixHQUE0QjtBQUMxQmQsRUFBQUEsU0FBUyxFQUFFLEVBRGU7QUFFMUJDLEVBQUFBLElBQUksRUFBRTtBQUZvQixDQUE1QjtBQUtBRixZQUFZLENBQUNnQixTQUFiLEdBQXlCO0FBQ3ZCZixFQUFBQSxTQUFTLEVBQUVnQixtQkFBVUMsTUFERTtBQUV2QmhCLEVBQUFBLElBQUksRUFBRWUsbUJBQVVFLEtBQVYsQ0FBZ0JwQixtQkFBaEI7QUFGaUIsQ0FBekIiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludCBuby1tYWdpYy1udW1iZXJzOiBbXCJlcnJvclwiLCB7IFwiaWdub3JlXCI6IFswLCAxLCAyXSB9XSAqL1xuLyogZXNsaW50IHJlYWN0L25vLXVuc2FmZTogb2ZmICovXG5cbmltcG9ydCB7IGhvb2tzIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtYXBpJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCBBY2Nlc3NLZXlTaW5rU3VyZmFjZSBmcm9tICcuL1V0aWxzL0FjY2Vzc0tleVNpbmsvU3VyZmFjZSc7XG5pbXBvcnQgQmFzaWNDb25uZWN0aXZpdHlTdGF0dXMgZnJvbSAnLi9CYXNpY0Nvbm5lY3Rpdml0eVN0YXR1cyc7XG5pbXBvcnQgQmFzaWNTZW5kQm94IGZyb20gJy4vQmFzaWNTZW5kQm94JztcbmltcG9ydCBCYXNpY1RvYXN0ZXIgZnJvbSAnLi9CYXNpY1RvYXN0ZXInO1xuaW1wb3J0IEJhc2ljVHJhbnNjcmlwdCBmcm9tICcuL0Jhc2ljVHJhbnNjcmlwdCc7XG5pbXBvcnQgdXNlU3R5bGVTZXQgZnJvbSAnLi9ob29rcy91c2VTdHlsZVNldCc7XG5pbXBvcnQgdXNlU3R5bGVUb0Vtb3Rpb25PYmplY3QgZnJvbSAnLi9ob29rcy9pbnRlcm5hbC91c2VTdHlsZVRvRW1vdGlvbk9iamVjdCc7XG5cbmNvbnN0IHsgdXNlU3R5bGVPcHRpb25zIH0gPSBob29rcztcblxuY29uc3QgUk9PVF9TVFlMRSA9IHtcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJ1xufTtcblxuY29uc3QgQ09OTkVDVElWSVRZX1NUQVRVU19TVFlMRSA9IHtcbiAgZmxleFNocmluazogMFxufTtcblxuY29uc3QgU0VORF9CT1hfQ1NTID0ge1xuICBmbGV4U2hyaW5rOiAwXG59O1xuXG5jb25zdCBUT0FTVEVSX1NUWUxFID0ge1xuICBmbGV4U2hyaW5rOiAwXG59O1xuXG5jb25zdCBUUkFOU0NSSVBUX1NUWUxFID0ge1xuICBmbGV4OiAxXG59O1xuXG4vLyBTdWJzZXQgb2YgbGFuZG1hcmsgcm9sZXM6IGh0dHBzOi8vdzMub3JnL1RSL3dhaS1hcmlhLyNsYW5kbWFya19yb2xlc1xuY29uc3QgQVJJQV9MQU5ETUFSS19ST0xFUyA9IFsnY29tcGxlbWVudGFyeScsICdjb250ZW50aW5mbycsICdmb3JtJywgJ21haW4nLCAncmVnaW9uJ107XG5cbmNvbnN0IEJhc2ljV2ViQ2hhdCA9ICh7IGNsYXNzTmFtZSwgcm9sZSB9KSA9PiB7XG4gIGNvbnN0IFt7IHJvb3Q6IHJvb3RTdHlsZVNldCB9XSA9IHVzZVN0eWxlU2V0KCk7XG4gIGNvbnN0IFtvcHRpb25zXSA9IHVzZVN0eWxlT3B0aW9ucygpO1xuICBjb25zdCBzdHlsZVRvRW1vdGlvbk9iamVjdCA9IHVzZVN0eWxlVG9FbW90aW9uT2JqZWN0KCk7XG5cbiAgY29uc3QgY29ubmVjdGl2aXR5U3RhdHVzQ2xhc3NOYW1lID0gc3R5bGVUb0Vtb3Rpb25PYmplY3QoQ09OTkVDVElWSVRZX1NUQVRVU19TVFlMRSkgKyAnJztcbiAgY29uc3Qgcm9vdENsYXNzTmFtZSA9IHN0eWxlVG9FbW90aW9uT2JqZWN0KFJPT1RfU1RZTEUpICsgJyc7XG4gIGNvbnN0IHNlbmRCb3hDbGFzc05hbWUgPSBzdHlsZVRvRW1vdGlvbk9iamVjdChTRU5EX0JPWF9DU1MpICsgJyc7XG4gIGNvbnN0IHRvYXN0ZXJDbGFzc05hbWUgPSBzdHlsZVRvRW1vdGlvbk9iamVjdChUT0FTVEVSX1NUWUxFKSArICcnO1xuICBjb25zdCB0cmFuc2NyaXB0Q2xhc3NOYW1lID0gc3R5bGVUb0Vtb3Rpb25PYmplY3QoVFJBTlNDUklQVF9TVFlMRSkgKyAnJztcblxuICAvLyBGYWxsYmFjayB0byBcImNvbXBsZW1lbnRhcnlcIiBpZiBzcGVjaWZpZWQgaXMgbm90IGEgdmFsaWQgbGFuZG1hcmsgcm9sZS5cbiAgaWYgKCFBUklBX0xBTkRNQVJLX1JPTEVTLmluY2x1ZGVzKHJvbGUpKSB7XG4gICAgcm9sZSA9ICdjb21wbGVtZW50YXJ5JztcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPEFjY2Vzc0tleVNpbmtTdXJmYWNlIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhyb290Q2xhc3NOYW1lLCByb290U3R5bGVTZXQgKyAnJywgKGNsYXNzTmFtZSB8fCAnJykgKyAnJyl9IHJvbGU9e3JvbGV9PlxuICAgICAgeyFvcHRpb25zLmhpZGVUb2FzdGVyICYmIDxCYXNpY1RvYXN0ZXIgY2xhc3NOYW1lPXt0b2FzdGVyQ2xhc3NOYW1lfSAvPn1cbiAgICAgIDxCYXNpY1RyYW5zY3JpcHQgY2xhc3NOYW1lPXt0cmFuc2NyaXB0Q2xhc3NOYW1lfSAvPlxuICAgICAgPEJhc2ljQ29ubmVjdGl2aXR5U3RhdHVzIGNsYXNzTmFtZT17Y29ubmVjdGl2aXR5U3RhdHVzQ2xhc3NOYW1lfSAvPlxuICAgICAgeyFvcHRpb25zLmhpZGVTZW5kQm94ICYmIDxCYXNpY1NlbmRCb3ggY2xhc3NOYW1lPXtzZW5kQm94Q2xhc3NOYW1lfSAvPn1cbiAgICA8L0FjY2Vzc0tleVNpbmtTdXJmYWNlPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmFzaWNXZWJDaGF0O1xuXG5CYXNpY1dlYkNoYXQuZGVmYXVsdFByb3BzID0ge1xuICBjbGFzc05hbWU6ICcnLFxuICByb2xlOiAnY29tcGxlbWVudGFyeSdcbn07XG5cbkJhc2ljV2ViQ2hhdC5wcm9wVHlwZXMgPSB7XG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgcm9sZTogUHJvcFR5cGVzLm9uZU9mKEFSSUFfTEFORE1BUktfUk9MRVMpXG59O1xuIl19