botframework-webchat-component
Version:
React component of botframework-webchat
30 lines (27 loc) • 4.87 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = isPresentational;
/**
* Determines if the rendering activity is presentational or not.
* Returns `true` if the activity is presentational and should not be read by screen reader, otherwise, `false`.
*
* @returns {boolean} `true` if the activity is presentational and should not be read by screen reader, otherwise, `false`.
*/
function isPresentational(activity) {
var _channelData$messageB, _activity$attachments, _activity$suggestedAc, _activity$suggestedAc2;
if (activity.type !== 'message') {
return true;
}
var channelData = activity.channelData;
// "Fallback text" includes both message text and narratives for attachments.
// Emptying out "fallback text" essentially mute for both message and attachments.
var fallbackText = channelData === null || channelData === void 0 ? void 0 : channelData['webchat:fallback-text'];
if (typeof fallbackText === 'string') {
return !fallbackText;
}
// If there are "displayText" (MessageBack), "text", any attachments, or suggested actions, there are something to narrate.
return !(channelData !== null && channelData !== void 0 && (_channelData$messageB = channelData.messageBack) !== null && _channelData$messageB !== void 0 && _channelData$messageB.displayText || activity.text || (_activity$attachments = activity.attachments) !== null && _activity$attachments !== void 0 && _activity$attachments.length || (_activity$suggestedAc = activity.suggestedActions) !== null && _activity$suggestedAc !== void 0 && (_activity$suggestedAc2 = _activity$suggestedAc.actions) !== null && _activity$suggestedAc2 !== void 0 && _activity$suggestedAc2.length);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc1ByZXNlbnRhdGlvbmFsIiwiYWN0aXZpdHkiLCJfY2hhbm5lbERhdGEkbWVzc2FnZUIiLCJfYWN0aXZpdHkkYXR0YWNobWVudHMiLCJfYWN0aXZpdHkkc3VnZ2VzdGVkQWMiLCJfYWN0aXZpdHkkc3VnZ2VzdGVkQWMyIiwidHlwZSIsImNoYW5uZWxEYXRhIiwiZmFsbGJhY2tUZXh0IiwibWVzc2FnZUJhY2siLCJkaXNwbGF5VGV4dCIsInRleHQiLCJhdHRhY2htZW50cyIsImxlbmd0aCIsInN1Z2dlc3RlZEFjdGlvbnMiLCJhY3Rpb25zIl0sInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvVHJhbnNjcmlwdC9MaXZlUmVnaW9uL2lzUHJlc2VudGF0aW9uYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBXZWJDaGF0QWN0aXZpdHkgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1jb3JlJztcblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIHRoZSByZW5kZXJpbmcgYWN0aXZpdHkgaXMgcHJlc2VudGF0aW9uYWwgb3Igbm90LlxuICogUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGFjdGl2aXR5IGlzIHByZXNlbnRhdGlvbmFsIGFuZCBzaG91bGQgbm90IGJlIHJlYWQgYnkgc2NyZWVuIHJlYWRlciwgb3RoZXJ3aXNlLCBgZmFsc2VgLlxuICpcbiAqIEByZXR1cm5zIHtib29sZWFufSBgdHJ1ZWAgaWYgdGhlIGFjdGl2aXR5IGlzIHByZXNlbnRhdGlvbmFsIGFuZCBzaG91bGQgbm90IGJlIHJlYWQgYnkgc2NyZWVuIHJlYWRlciwgb3RoZXJ3aXNlLCBgZmFsc2VgLlxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpc1ByZXNlbnRhdGlvbmFsKGFjdGl2aXR5OiBXZWJDaGF0QWN0aXZpdHkpOiBib29sZWFuIHtcbiAgaWYgKGFjdGl2aXR5LnR5cGUgIT09ICdtZXNzYWdlJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3QgeyBjaGFubmVsRGF0YSB9ID0gYWN0aXZpdHk7XG5cbiAgLy8gXCJGYWxsYmFjayB0ZXh0XCIgaW5jbHVkZXMgYm90aCBtZXNzYWdlIHRleHQgYW5kIG5hcnJhdGl2ZXMgZm9yIGF0dGFjaG1lbnRzLlxuICAvLyBFbXB0eWluZyBvdXQgXCJmYWxsYmFjayB0ZXh0XCIgZXNzZW50aWFsbHkgbXV0ZSBmb3IgYm90aCBtZXNzYWdlIGFuZCBhdHRhY2htZW50cy5cbiAgY29uc3QgZmFsbGJhY2tUZXh0ID0gY2hhbm5lbERhdGE/Llsnd2ViY2hhdDpmYWxsYmFjay10ZXh0J107XG5cbiAgaWYgKHR5cGVvZiBmYWxsYmFja1RleHQgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuICFmYWxsYmFja1RleHQ7XG4gIH1cblxuICAvLyBJZiB0aGVyZSBhcmUgXCJkaXNwbGF5VGV4dFwiIChNZXNzYWdlQmFjayksIFwidGV4dFwiLCBhbnkgYXR0YWNobWVudHMsIG9yIHN1Z2dlc3RlZCBhY3Rpb25zLCB0aGVyZSBhcmUgc29tZXRoaW5nIHRvIG5hcnJhdGUuXG4gIHJldHVybiAhKFxuICAgIGNoYW5uZWxEYXRhPy5tZXNzYWdlQmFjaz8uZGlzcGxheVRleHQgfHxcbiAgICBhY3Rpdml0eS50ZXh0IHx8XG4gICAgYWN0aXZpdHkuYXR0YWNobWVudHM/Lmxlbmd0aCB8fFxuICAgIGFjdGl2aXR5LnN1Z2dlc3RlZEFjdGlvbnM/LmFjdGlvbnM/Lmxlbmd0aFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDZSxTQUFTQSxnQkFBZ0JBLENBQUNDLFFBQXlCLEVBQVc7RUFBQSxJQUFBQyxxQkFBQSxFQUFBQyxxQkFBQSxFQUFBQyxxQkFBQSxFQUFBQyxzQkFBQTtFQUMzRSxJQUFJSixRQUFRLENBQUNLLElBQUksS0FBSyxTQUFTLEVBQUU7SUFDL0IsT0FBTyxJQUFJO0VBQ2I7RUFFQSxJQUFRQyxXQUFXLEdBQUtOLFFBQVEsQ0FBeEJNLFdBQVc7O0VBRW5CO0VBQ0E7RUFDQSxJQUFNQyxZQUFZLEdBQUdELFdBQVcsYUFBWEEsV0FBVyx1QkFBWEEsV0FBVyxDQUFHLHVCQUF1QixDQUFDO0VBRTNELElBQUksT0FBT0MsWUFBWSxLQUFLLFFBQVEsRUFBRTtJQUNwQyxPQUFPLENBQUNBLFlBQVk7RUFDdEI7O0VBRUE7RUFDQSxPQUFPLEVBQ0xELFdBQVcsYUFBWEEsV0FBVyxnQkFBQUwscUJBQUEsR0FBWEssV0FBVyxDQUFFRSxXQUFXLGNBQUFQLHFCQUFBLGVBQXhCQSxxQkFBQSxDQUEwQlEsV0FBVyxJQUNyQ1QsUUFBUSxDQUFDVSxJQUFJLEtBQUFSLHFCQUFBLEdBQ2JGLFFBQVEsQ0FBQ1csV0FBVyxjQUFBVCxxQkFBQSxlQUFwQkEscUJBQUEsQ0FBc0JVLE1BQU0sS0FBQVQscUJBQUEsR0FDNUJILFFBQVEsQ0FBQ2EsZ0JBQWdCLGNBQUFWLHFCQUFBLGdCQUFBQyxzQkFBQSxHQUF6QkQscUJBQUEsQ0FBMkJXLE9BQU8sY0FBQVYsc0JBQUEsZUFBbENBLHNCQUFBLENBQW9DUSxNQUFNLENBQzNDO0FBQ0gifQ==