botframework-webchat-component
Version:
React component of botframework-webchat
53 lines (52 loc) • 11 kB
JavaScript
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _botframeworkWebchatApi = require("botframework-webchat-api");
var _react = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var useCreateAttachmentForScreenReaderRenderer = _botframeworkWebchatApi.hooks.useCreateAttachmentForScreenReaderRenderer,
useLocalizer = _botframeworkWebchatApi.hooks.useLocalizer;
var ACTIVITY_NUM_ATTACHMENTS_ALT_IDS = {
few: 'ACTIVITY_NUM_ATTACHMENTS_FEW_ALT',
many: 'ACTIVITY_NUM_ATTACHMENTS_MANY_ALT',
one: 'ACTIVITY_NUM_ATTACHMENTS_ONE_ALT',
other: 'ACTIVITY_NUM_ATTACHMENTS_OTHER_ALT',
two: 'ACTIVITY_NUM_ATTACHMENTS_TWO_ALT'
};
// When "renderAttachments" is false, we will not render the content of attachments.
// That means, it will only render "2 attachments", instead of "image attachment".
// This is used in the visual transcript, where we render "Press ENTER to interact."
var LiveRegionAttachments = function LiveRegionAttachments(_ref) {
var activity = _ref.activity;
var _activity$attachments = activity.attachments,
attachments = _activity$attachments === void 0 ? [] : _activity$attachments;
var createAttachmentForScreenReaderRenderer = useCreateAttachmentForScreenReaderRenderer();
var localizeWithPlural = useLocalizer({
plural: true
});
var attachmentForScreenReaderRenderers = attachments.map(function (attachment) {
return createAttachmentForScreenReaderRenderer({
activity: activity,
attachment: attachment
});
}).filter(Boolean);
var numGenericAttachments = attachments.length - attachmentForScreenReaderRenderers.length;
var numAttachmentsAlt = !!numGenericAttachments && localizeWithPlural(ACTIVITY_NUM_ATTACHMENTS_ALT_IDS, numGenericAttachments);
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, attachmentForScreenReaderRenderers.map(function (render, index) {
return (
/*#__PURE__*/
// Direct Line does not have key for attachment other than index.
// eslint-disable-next-line react/no-array-index-key
_react.default.createElement("div", {
key: index
}, typeof render === 'function' && render())
);
}), numAttachmentsAlt && /*#__PURE__*/_react.default.createElement("p", null, numAttachmentsAlt));
};
var _default = LiveRegionAttachments;
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYm90ZnJhbWV3b3JrV2ViY2hhdEFwaSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwidXNlQ3JlYXRlQXR0YWNobWVudEZvclNjcmVlblJlYWRlclJlbmRlcmVyIiwiaG9va3MiLCJ1c2VMb2NhbGl6ZXIiLCJBQ1RJVklUWV9OVU1fQVRUQUNITUVOVFNfQUxUX0lEUyIsImZldyIsIm1hbnkiLCJvbmUiLCJvdGhlciIsInR3byIsIkxpdmVSZWdpb25BdHRhY2htZW50cyIsIl9yZWYiLCJhY3Rpdml0eSIsIl9hY3Rpdml0eSRhdHRhY2htZW50cyIsImF0dGFjaG1lbnRzIiwiY3JlYXRlQXR0YWNobWVudEZvclNjcmVlblJlYWRlclJlbmRlcmVyIiwibG9jYWxpemVXaXRoUGx1cmFsIiwicGx1cmFsIiwiYXR0YWNobWVudEZvclNjcmVlblJlYWRlclJlbmRlcmVycyIsIm1hcCIsImF0dGFjaG1lbnQiLCJmaWx0ZXIiLCJCb29sZWFuIiwibnVtR2VuZXJpY0F0dGFjaG1lbnRzIiwibGVuZ3RoIiwibnVtQXR0YWNobWVudHNBbHQiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJyZW5kZXIiLCJpbmRleCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0xpdmVSZWdpb24vcHJpdmF0ZS9MaXZlUmVnaW9uQXR0YWNobWVudHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhvb2tzIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtYXBpJztcbmltcG9ydCB7IHR5cGUgV2ViQ2hhdEFjdGl2aXR5IH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtY29yZSc7XG5pbXBvcnQgUmVhY3QsIHsgRnJhZ21lbnQgfSBmcm9tICdyZWFjdCc7XG5cbmNvbnN0IHsgdXNlQ3JlYXRlQXR0YWNobWVudEZvclNjcmVlblJlYWRlclJlbmRlcmVyLCB1c2VMb2NhbGl6ZXIgfSA9IGhvb2tzO1xuXG5jb25zdCBBQ1RJVklUWV9OVU1fQVRUQUNITUVOVFNfQUxUX0lEUyA9IHtcbiAgZmV3OiAnQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX0ZFV19BTFQnLFxuICBtYW55OiAnQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX01BTllfQUxUJyxcbiAgb25lOiAnQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX09ORV9BTFQnLFxuICBvdGhlcjogJ0FDVElWSVRZX05VTV9BVFRBQ0hNRU5UU19PVEhFUl9BTFQnLFxuICB0d286ICdBQ1RJVklUWV9OVU1fQVRUQUNITUVOVFNfVFdPX0FMVCdcbn07XG5cbnR5cGUgTGl2ZVJlZ2lvbkF0dGFjaG1lbnRzUHJvcHMgPSBSZWFkb25seTx7XG4gIGFjdGl2aXR5OiBSZWFkb25seTxXZWJDaGF0QWN0aXZpdHkgJiB7IHR5cGU6ICdtZXNzYWdlJyB9Pjtcbn0+O1xuXG4vLyBXaGVuIFwicmVuZGVyQXR0YWNobWVudHNcIiBpcyBmYWxzZSwgd2Ugd2lsbCBub3QgcmVuZGVyIHRoZSBjb250ZW50IG9mIGF0dGFjaG1lbnRzLlxuLy8gVGhhdCBtZWFucywgaXQgd2lsbCBvbmx5IHJlbmRlciBcIjIgYXR0YWNobWVudHNcIiwgaW5zdGVhZCBvZiBcImltYWdlIGF0dGFjaG1lbnRcIi5cbi8vIFRoaXMgaXMgdXNlZCBpbiB0aGUgdmlzdWFsIHRyYW5zY3JpcHQsIHdoZXJlIHdlIHJlbmRlciBcIlByZXNzIEVOVEVSIHRvIGludGVyYWN0LlwiXG5jb25zdCBMaXZlUmVnaW9uQXR0YWNobWVudHMgPSAoeyBhY3Rpdml0eSB9OiBMaXZlUmVnaW9uQXR0YWNobWVudHNQcm9wcykgPT4ge1xuICBjb25zdCB7IGF0dGFjaG1lbnRzID0gW10gfSA9IGFjdGl2aXR5O1xuICBjb25zdCBjcmVhdGVBdHRhY2htZW50Rm9yU2NyZWVuUmVhZGVyUmVuZGVyZXIgPSB1c2VDcmVhdGVBdHRhY2htZW50Rm9yU2NyZWVuUmVhZGVyUmVuZGVyZXIoKTtcbiAgY29uc3QgbG9jYWxpemVXaXRoUGx1cmFsID0gdXNlTG9jYWxpemVyKHsgcGx1cmFsOiB0cnVlIH0pO1xuXG4gIGNvbnN0IGF0dGFjaG1lbnRGb3JTY3JlZW5SZWFkZXJSZW5kZXJlcnMgPSBhdHRhY2htZW50c1xuICAgIC5tYXAoYXR0YWNobWVudCA9PiBjcmVhdGVBdHRhY2htZW50Rm9yU2NyZWVuUmVhZGVyUmVuZGVyZXIoeyBhY3Rpdml0eSwgYXR0YWNobWVudCB9KSlcbiAgICAuZmlsdGVyKEJvb2xlYW4pO1xuXG4gIGNvbnN0IG51bUdlbmVyaWNBdHRhY2htZW50cyA9IGF0dGFjaG1lbnRzLmxlbmd0aCAtIGF0dGFjaG1lbnRGb3JTY3JlZW5SZWFkZXJSZW5kZXJlcnMubGVuZ3RoO1xuXG4gIGNvbnN0IG51bUF0dGFjaG1lbnRzQWx0ID1cbiAgICAhIW51bUdlbmVyaWNBdHRhY2htZW50cyAmJiBsb2NhbGl6ZVdpdGhQbHVyYWwoQUNUSVZJVFlfTlVNX0FUVEFDSE1FTlRTX0FMVF9JRFMsIG51bUdlbmVyaWNBdHRhY2htZW50cyk7XG5cbiAgcmV0dXJuIChcbiAgICA8RnJhZ21lbnQ+XG4gICAgICB7YXR0YWNobWVudEZvclNjcmVlblJlYWRlclJlbmRlcmVycy5tYXAoKHJlbmRlciwgaW5kZXgpID0+IChcbiAgICAgICAgLy8gRGlyZWN0IExpbmUgZG9lcyBub3QgaGF2ZSBrZXkgZm9yIGF0dGFjaG1lbnQgb3RoZXIgdGhhbiBpbmRleC5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLWFycmF5LWluZGV4LWtleVxuICAgICAgICA8ZGl2IGtleT17aW5kZXh9Pnt0eXBlb2YgcmVuZGVyID09PSAnZnVuY3Rpb24nICYmIHJlbmRlcigpfTwvZGl2PlxuICAgICAgKSl9XG4gICAgICB7bnVtQXR0YWNobWVudHNBbHQgJiYgPHA+e251bUF0dGFjaG1lbnRzQWx0fTwvcD59XG4gICAgPC9GcmFnbWVudD5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExpdmVSZWdpb25BdHRhY2htZW50cztcblxuZXhwb3J0IHR5cGUgeyBMaXZlUmVnaW9uQXR0YWNobWVudHNQcm9wcyB9O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsdUJBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUF3QyxTQUFBRyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQUYsd0JBQUFNLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFC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
;