botframework-webchat-component 4.15.2-main.20220427.c9c2124 → 4.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FocusTrap.d.ts","sourceRoot":"","sources":["../../src/Transcript/FocusTrap.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAwB,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAMzE,aAAK,cAAc,GAAG,iBAAiB,CAAC;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC,CAAC;AAEH,QAAA,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"FocusTrap.d.ts","sourceRoot":"","sources":["../../src/Transcript/FocusTrap.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAwB,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAMzE,aAAK,cAAc,GAAG,iBAAiB,CAAC;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC,CAAC;AAEH,QAAA,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CA4CjC,CAAC;AAaF,eAAe,SAAS,CAAC"}
|
|
@@ -23,12 +23,29 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
23
23
|
|
|
24
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
25
|
|
|
26
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
27
|
+
|
|
28
|
+
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."); }
|
|
29
|
+
|
|
30
|
+
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); }
|
|
31
|
+
|
|
32
|
+
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; }
|
|
33
|
+
|
|
34
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_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; }
|
|
35
|
+
|
|
36
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
37
|
+
|
|
26
38
|
var FocusTrap = function FocusTrap(_ref) {
|
|
27
39
|
var children = _ref.children,
|
|
28
40
|
onFocus = _ref.onFocus,
|
|
29
41
|
onLeave = _ref.onLeave;
|
|
30
42
|
var bodyRef = (0, _react.useRef)();
|
|
31
43
|
var onLeaveRef = (0, _useValueRef.default)(onLeave);
|
|
44
|
+
var getTabbableElementsInBody = (0, _react.useCallback)(function () {
|
|
45
|
+
return (0, _tabbableElements.default)(bodyRef.current).filter(function (element) {
|
|
46
|
+
return element.getAttribute('aria-disabled') !== 'true';
|
|
47
|
+
});
|
|
48
|
+
}, [bodyRef]);
|
|
32
49
|
var handleBodyKeyDown = (0, _react.useCallback)(function (event) {
|
|
33
50
|
if (event.key === 'Escape') {
|
|
34
51
|
var _onLeaveRef$current;
|
|
@@ -39,16 +56,21 @@ var FocusTrap = function FocusTrap(_ref) {
|
|
|
39
56
|
}
|
|
40
57
|
}, [onLeaveRef]);
|
|
41
58
|
var handleFirstSentinelFocus = (0, _react.useCallback)(function () {
|
|
42
|
-
var
|
|
59
|
+
var _onLeaveRef$current2;
|
|
43
60
|
|
|
44
|
-
var focusables = (
|
|
45
|
-
|
|
46
|
-
|
|
61
|
+
var focusables = getTabbableElementsInBody();
|
|
62
|
+
var lastTabbableElement = focusables[focusables.length - 1];
|
|
63
|
+
lastTabbableElement ? lastTabbableElement.focus() : (_onLeaveRef$current2 = onLeaveRef.current) === null || _onLeaveRef$current2 === void 0 ? void 0 : _onLeaveRef$current2.call(onLeaveRef);
|
|
64
|
+
}, [getTabbableElementsInBody, onLeaveRef]);
|
|
47
65
|
var handleLastSentinelFocus = (0, _react.useCallback)(function () {
|
|
48
|
-
var
|
|
66
|
+
var _onLeaveRef$current3;
|
|
49
67
|
|
|
50
|
-
|
|
51
|
-
|
|
68
|
+
var _getTabbableElementsI = getTabbableElementsInBody(),
|
|
69
|
+
_getTabbableElementsI2 = _slicedToArray(_getTabbableElementsI, 1),
|
|
70
|
+
firstTabbableElement = _getTabbableElementsI2[0];
|
|
71
|
+
|
|
72
|
+
firstTabbableElement ? firstTabbableElement.focus() : (_onLeaveRef$current3 = onLeaveRef.current) === null || _onLeaveRef$current3 === void 0 ? void 0 : _onLeaveRef$current3.call(onLeaveRef);
|
|
73
|
+
}, [getTabbableElementsInBody, onLeaveRef]);
|
|
52
74
|
return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_FocusRedirector.default, {
|
|
53
75
|
onFocus: handleFirstSentinelFocus
|
|
54
76
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -71,4 +93,4 @@ FocusTrap.propTypes = {
|
|
|
71
93
|
};
|
|
72
94
|
var _default = FocusTrap;
|
|
73
95
|
exports.default = _default;
|
|
74
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9UcmFuc2NyaXB0L0ZvY3VzVHJhcC50c3giXSwibmFtZXMiOlsiRm9jdXNUcmFwIiwiY2hpbGRyZW4iLCJvbkZvY3VzIiwib25MZWF2ZSIsImJvZHlSZWYiLCJvbkxlYXZlUmVmIiwiZ2V0VGFiYmFibGVFbGVtZW50c0luQm9keSIsImN1cnJlbnQiLCJmaWx0ZXIiLCJlbGVtZW50IiwiZ2V0QXR0cmlidXRlIiwiaGFuZGxlQm9keUtleURvd24iLCJldmVudCIsImtleSIsInByZXZlbnREZWZhdWx0Iiwic3RvcFByb3BhZ2F0aW9uIiwiaGFuZGxlRmlyc3RTZW50aW5lbEZvY3VzIiwiZm9jdXNhYmxlcyIsImxhc3RUYWJiYWJsZUVsZW1lbnQiLCJsZW5ndGgiLCJmb2N1cyIsImhhbmRsZUxhc3RTZW50aW5lbEZvY3VzIiwiZmlyc3RUYWJiYWJsZUVsZW1lbnQiLCJkZWZhdWx0UHJvcHMiLCJ1bmRlZmluZWQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJhbnkiLCJmdW5jIiwiaXNSZXF1aXJlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0EsSUFBTUEsU0FBNkIsR0FBRyxTQUFoQ0EsU0FBZ0MsT0FBb0M7QUFBQSxNQUFqQ0MsUUFBaUMsUUFBakNBLFFBQWlDO0FBQUEsTUFBdkJDLE9BQXVCLFFBQXZCQSxPQUF1QjtBQUFBLE1BQWRDLE9BQWMsUUFBZEEsT0FBYztBQUN4RSxNQUFNQyxPQUFPLEdBQUcsb0JBQWhCO0FBQ0EsTUFBTUMsVUFBVSxHQUFHLDBCQUF3QkYsT0FBeEIsQ0FBbkI7QUFFQSxNQUFNRyx5QkFBeUIsR0FBRyx3QkFDaEM7QUFBQSxXQUFNLCtCQUFpQkYsT0FBTyxDQUFDRyxPQUF6QixFQUFrQ0MsTUFBbEMsQ0FBeUMsVUFBQUMsT0FBTztBQUFBLGFBQUlBLE9BQU8sQ0FBQ0MsWUFBUixDQUFxQixlQUFyQixNQUEwQyxNQUE5QztBQUFBLEtBQWhELENBQU47QUFBQSxHQURnQyxFQUVoQyxDQUFDTixPQUFELENBRmdDLENBQWxDO0FBS0EsTUFBTU8saUJBQXVDLEdBQUcsd0JBQzlDLFVBQUFDLEtBQUssRUFBSTtBQUNQLFFBQUlBLEtBQUssQ0FBQ0MsR0FBTixLQUFjLFFBQWxCLEVBQTRCO0FBQUE7O0FBQzFCRCxNQUFBQSxLQUFLLENBQUNFLGNBQU47QUFDQUYsTUFBQUEsS0FBSyxDQUFDRyxlQUFOO0FBRUEsNkJBQUFWLFVBQVUsQ0FBQ0UsT0FBWCxpRkFBQUYsVUFBVTtBQUNYO0FBQ0YsR0FSNkMsRUFTOUMsQ0FBQ0EsVUFBRCxDQVQ4QyxDQUFoRDtBQVlBLE1BQU1XLHdCQUFvQyxHQUFHLHdCQUFZLFlBQU07QUFBQTs7QUFDN0QsUUFBTUMsVUFBVSxHQUFHWCx5QkFBeUIsRUFBNUM7QUFFQSxRQUFNWSxtQkFBbUIsR0FBR0QsVUFBVSxDQUFDQSxVQUFVLENBQUNFLE1BQVgsR0FBb0IsQ0FBckIsQ0FBdEM7QUFFQUQsSUFBQUEsbUJBQW1CLEdBQUdBLG1CQUFtQixDQUFDRSxLQUFwQixFQUFILDJCQUFpQ2YsVUFBVSxDQUFDRSxPQUE1Qyx5REFBaUMsMEJBQUFGLFVBQVUsQ0FBOUQ7QUFDRCxHQU40QyxFQU0xQyxDQUFDQyx5QkFBRCxFQUE0QkQsVUFBNUIsQ0FOMEMsQ0FBN0M7QUFRQSxNQUFNZ0IsdUJBQW1DLEdBQUcsd0JBQVksWUFBTTtBQUFBOztBQUM1RCxnQ0FBK0JmLHlCQUF5QixFQUF4RDtBQUFBO0FBQUEsUUFBT2dCLG9CQUFQOztBQUVBQSxJQUFBQSxvQkFBb0IsR0FBR0Esb0JBQW9CLENBQUNGLEtBQXJCLEVBQUgsMkJBQWtDZixVQUFVLENBQUNFLE9BQTdDLHlEQUFrQywwQkFBQUYsVUFBVSxDQUFoRTtBQUNELEdBSjJDLEVBSXpDLENBQUNDLHlCQUFELEVBQTRCRCxVQUE1QixDQUp5QyxDQUE1QztBQU1BLHNCQUNFLDZCQUFDLGVBQUQscUJBQ0UsNkJBQUMsd0JBQUQ7QUFBaUIsSUFBQSxPQUFPLEVBQUVXO0FBQTFCLElBREYsZUFFRTtBQUFLLElBQUEsT0FBTyxFQUFFZCxPQUFkO0FBQXVCLElBQUEsU0FBUyxFQUFFUyxpQkFBbEM7QUFBcUQsSUFBQSxHQUFHLEVBQUVQO0FBQTFELEtBQ0dILFFBREgsQ0FGRixlQUtFLDZCQUFDLHdCQUFEO0FBQWlCLElBQUEsT0FBTyxFQUFFb0I7QUFBMUIsSUFMRixDQURGO0FBU0QsQ0E1Q0Q7O0FBOENBckIsU0FBUyxDQUFDdUIsWUFBVixHQUF5QjtBQUN2QnRCLEVBQUFBLFFBQVEsRUFBRXVCLFNBRGE7QUFFdkJ0QixFQUFBQSxPQUFPLEVBQUVzQjtBQUZjLENBQXpCO0FBS0F4QixTQUFTLENBQUN5QixTQUFWLEdBQXNCO0FBQ3BCeEIsRUFBQUEsUUFBUSxFQUFFeUIsbUJBQVVDLEdBREE7QUFFcEJ6QixFQUFBQSxPQUFPLEVBQUV3QixtQkFBVUUsSUFGQztBQUdwQnpCLEVBQUFBLE9BQU8sRUFBRXVCLG1CQUFVRSxJQUFWLENBQWVDO0FBSEosQ0FBdEI7ZUFNZTdCLFMiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QsIHsgRnJhZ21lbnQsIHVzZUNhbGxiYWNrLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgRkMsIEtleWJvYXJkRXZlbnRIYW5kbGVyLCBQcm9wc1dpdGhDaGlsZHJlbiB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IEZvY3VzUmVkaXJlY3RvciBmcm9tICcuLi9VdGlscy9Gb2N1c1JlZGlyZWN0b3InO1xuaW1wb3J0IHRhYmJhYmxlRWxlbWVudHMgZnJvbSAnLi4vVXRpbHMvdGFiYmFibGVFbGVtZW50cyc7XG5pbXBvcnQgdXNlVmFsdWVSZWYgZnJvbSAnLi4vaG9va3MvaW50ZXJuYWwvdXNlVmFsdWVSZWYnO1xuXG50eXBlIEZvY3VzVHJhcFByb3BzID0gUHJvcHNXaXRoQ2hpbGRyZW48e1xuICBvbkZvY3VzOiAoKSA9PiB2b2lkO1xuICBvbkxlYXZlOiAoKSA9PiB2b2lkO1xufT47XG5cbmNvbnN0IEZvY3VzVHJhcDogRkM8Rm9jdXNUcmFwUHJvcHM+ID0gKHsgY2hpbGRyZW4sIG9uRm9jdXMsIG9uTGVhdmUgfSkgPT4ge1xuICBjb25zdCBib2R5UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PigpO1xuICBjb25zdCBvbkxlYXZlUmVmID0gdXNlVmFsdWVSZWY8KCkgPT4gdm9pZD4ob25MZWF2ZSk7XG5cbiAgY29uc3QgZ2V0VGFiYmFibGVFbGVtZW50c0luQm9keSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRhYmJhYmxlRWxlbWVudHMoYm9keVJlZi5jdXJyZW50KS5maWx0ZXIoZWxlbWVudCA9PiBlbGVtZW50LmdldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcpICE9PSAndHJ1ZScpLFxuICAgIFtib2R5UmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZUJvZHlLZXlEb3duOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgIGV2ZW50ID0+IHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIG9uTGVhdmVSZWYuY3VycmVudD8uKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25MZWF2ZVJlZl1cbiAgKTtcblxuICBjb25zdCBoYW5kbGVGaXJzdFNlbnRpbmVsRm9jdXM6ICgpID0+IHZvaWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY29uc3QgZm9jdXNhYmxlcyA9IGdldFRhYmJhYmxlRWxlbWVudHNJbkJvZHkoKTtcblxuICAgIGNvbnN0IGxhc3RUYWJiYWJsZUVsZW1lbnQgPSBmb2N1c2FibGVzW2ZvY3VzYWJsZXMubGVuZ3RoIC0gMV07XG5cbiAgICBsYXN0VGFiYmFibGVFbGVtZW50ID8gbGFzdFRhYmJhYmxlRWxlbWVudC5mb2N1cygpIDogb25MZWF2ZVJlZi5jdXJyZW50Py4oKTtcbiAgfSwgW2dldFRhYmJhYmxlRWxlbWVudHNJbkJvZHksIG9uTGVhdmVSZWZdKTtcblxuICBjb25zdCBoYW5kbGVMYXN0U2VudGluZWxGb2N1czogKCkgPT4gdm9pZCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBbZmlyc3RUYWJiYWJsZUVsZW1lbnRdID0gZ2V0VGFiYmFibGVFbGVtZW50c0luQm9keSgpO1xuXG4gICAgZmlyc3RUYWJiYWJsZUVsZW1lbnQgPyBmaXJzdFRhYmJhYmxlRWxlbWVudC5mb2N1cygpIDogb25MZWF2ZVJlZi5jdXJyZW50Py4oKTtcbiAgfSwgW2dldFRhYmJhYmxlRWxlbWVudHNJbkJvZHksIG9uTGVhdmVSZWZdKTtcblxuICByZXR1cm4gKFxuICAgIDxGcmFnbWVudD5cbiAgICAgIDxGb2N1c1JlZGlyZWN0b3Igb25Gb2N1cz17aGFuZGxlRmlyc3RTZW50aW5lbEZvY3VzfSAvPlxuICAgICAgPGRpdiBvbkZvY3VzPXtvbkZvY3VzfSBvbktleURvd249e2hhbmRsZUJvZHlLZXlEb3dufSByZWY9e2JvZHlSZWZ9PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICAgIDxGb2N1c1JlZGlyZWN0b3Igb25Gb2N1cz17aGFuZGxlTGFzdFNlbnRpbmVsRm9jdXN9IC8+XG4gICAgPC9GcmFnbWVudD5cbiAgKTtcbn07XG5cbkZvY3VzVHJhcC5kZWZhdWx0UHJvcHMgPSB7XG4gIGNoaWxkcmVuOiB1bmRlZmluZWQsXG4gIG9uRm9jdXM6IHVuZGVmaW5lZFxufTtcblxuRm9jdXNUcmFwLnByb3BUeXBlcyA9IHtcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5hbnksXG4gIG9uRm9jdXM6IFByb3BUeXBlcy5mdW5jLFxuICBvbkxlYXZlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkXG59O1xuXG5leHBvcnQgZGVmYXVsdCBGb2N1c1RyYXA7XG4iXX0=
|
package/lib/index.js
CHANGED
|
@@ -143,7 +143,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
143
143
|
var hooks = _objectSpread(_objectSpread({}, _botframeworkWebchatApi.hooks), componentHooks);
|
|
144
144
|
|
|
145
145
|
exports.hooks = hooks;
|
|
146
|
-
var version = "4.15.2
|
|
146
|
+
var version = "4.15.2";
|
|
147
147
|
exports.version = version;
|
|
148
148
|
var Components = {
|
|
149
149
|
BasicWebChat: _BasicWebChat.default,
|
|
@@ -184,4 +184,4 @@ var Components = {
|
|
|
184
184
|
exports.Components = Components;
|
|
185
185
|
var _default = _ReactWebChat.default;
|
|
186
186
|
exports.default = _default;
|
|
187
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
187
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6WyJob29rcyIsImFwaUhvb2tzIiwiY29tcG9uZW50SG9va3MiLCJ2ZXJzaW9uIiwiQ29tcG9uZW50cyIsIkJhc2ljV2ViQ2hhdCIsIkNvbXBvc2VyIiwiTG9jYWxpemUiLCJBdWRpb0NvbnRlbnQiLCJGaWxlQ29udGVudCIsIkhUTUxWaWRlb0NvbnRlbnQiLCJJbWFnZUNvbnRlbnQiLCJUZXh0Q29udGVudCIsIlZpZGVvQ29udGVudCIsIlZpbWVvQ29udGVudCIsIllvdVR1YmVDb250ZW50IiwiQXZhdGFyIiwiQnViYmxlIiwiRXJyb3JCb3giLCJTZW5kU3RhdHVzIiwiU3BlYWtBY3Rpdml0eSIsIlRpbWVzdGFtcCIsImNvbm5lY3RTZW5kU3RhdHVzIiwiY29ubmVjdFNwZWFrQWN0aXZpdHkiLCJEaWN0YXRpb25JbnRlcmltcyIsIk1pY3JvcGhvbmVCdXR0b24iLCJTZW5kQnV0dG9uIiwiU2VuZFRleHRCb3giLCJTdWdnZXN0ZWRBY3Rpb25zIiwiVXBsb2FkQnV0dG9uIiwiY29ubmVjdERpY3RhdGlvbkludGVyaW1zIiwiY29ubmVjdE1pY3JvcGhvbmVCdXR0b24iLCJjb25uZWN0U2VuZEJ1dHRvbiIsImNvbm5lY3RTZW5kVGV4dEJveCIsImNvbm5lY3RTdWdnZXN0ZWRBY3Rpb25zIiwiY29ubmVjdFVwbG9hZEJ1dHRvbiIsIlJlYWN0V2ViQ2hhdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7Ozs7Ozs7Ozs7Ozs7O0FBRUEsSUFBTUEsS0FBSyxtQ0FDTkMsNkJBRE0sR0FFTkMsY0FGTSxDQUFYOzs7QUFLQSxJQUFNQyxPQUFPLFdBQWI7O0FBRUEsSUFBTUMsVUFBVSxHQUFHO0FBQ2pCQyxFQUFBQSxZQUFZLEVBQVpBLHFCQURpQjtBQUVqQkMsRUFBQUEsUUFBUSxFQUFSQSxpQkFGaUI7QUFHakJDLEVBQUFBLFFBQVEsRUFBUkEsZ0NBSGlCO0FBS2pCO0FBQ0FDLEVBQUFBLFlBQVksRUFBWkEscUJBTmlCO0FBT2pCQyxFQUFBQSxXQUFXLEVBQVhBLG9CQVBpQjtBQVFqQkMsRUFBQUEsZ0JBQWdCLEVBQWhCQSx5QkFSaUI7QUFTakJDLEVBQUFBLFlBQVksRUFBWkEscUJBVGlCO0FBVWpCQyxFQUFBQSxXQUFXLEVBQVhBLG9CQVZpQjtBQVdqQkMsRUFBQUEsWUFBWSxFQUFaQSxxQkFYaUI7QUFZakJDLEVBQUFBLFlBQVksRUFBWkEscUJBWmlCO0FBYWpCQyxFQUFBQSxjQUFjLEVBQWRBLHVCQWJpQjtBQWVqQjtBQUNBQyxFQUFBQSxNQUFNLEVBQU5BLGVBaEJpQjtBQWlCakJDLEVBQUFBLE1BQU0sRUFBTkEsZUFqQmlCO0FBa0JqQkMsRUFBQUEsUUFBUSxFQUFSQSxpQkFsQmlCO0FBbUJqQkMsRUFBQUEsVUFBVSxFQUFWQSxtQkFuQmlCO0FBb0JqQkMsRUFBQUEsYUFBYSxFQUFiQSxjQXBCaUI7QUFxQmpCQyxFQUFBQSxTQUFTLEVBQVRBLGtCQXJCaUI7QUF1QmpCQyxFQUFBQSxpQkFBaUIsRUFBakJBLDZCQXZCaUI7QUF3QmpCQyxFQUFBQSxvQkFBb0IsRUFBcEJBLDJCQXhCaUI7QUEwQmpCO0FBQ0FDLEVBQUFBLGlCQUFpQixFQUFqQkEsMEJBM0JpQjtBQTRCakJDLEVBQUFBLGdCQUFnQixFQUFoQkEseUJBNUJpQjtBQTZCakJDLEVBQUFBLFVBQVUsRUFBVkEsbUJBN0JpQjtBQThCakJDLEVBQUFBLFdBQVcsRUFBWEEsZ0JBOUJpQjtBQStCakJDLEVBQUFBLGdCQUFnQixFQUFoQkEseUJBL0JpQjtBQWdDakJDLEVBQUFBLFlBQVksRUFBWkEscUJBaENpQjtBQWtDakJDLEVBQUFBLHdCQUF3QixFQUF4QkEsMkNBbENpQjtBQW1DakJDLEVBQUFBLHVCQUF1QixFQUF2QkEseUNBbkNpQjtBQW9DakJDLEVBQUFBLGlCQUFpQixFQUFqQkEsNkJBcENpQjtBQXFDakJDLEVBQUFBLGtCQUFrQixFQUFsQkEsMkJBckNpQjtBQXNDakJDLEVBQUFBLHVCQUF1QixFQUF2QkEseUNBdENpQjtBQXVDakJDLEVBQUFBLG1CQUFtQixFQUFuQkE7QUF2Q2lCLENBQW5COztlQTBDZUMscUIiLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmNhdE1pZGRsZXdhcmUsIGhvb2tzIGFzIGFwaUhvb2tzLCBMb2NhbGl6ZSwgbG9jYWxpemUgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1hcGknO1xuXG5pbXBvcnQgUmVhY3RXZWJDaGF0LCB7IFJlYWN0V2ViQ2hhdFByb3BzIH0gZnJvbSAnLi9SZWFjdFdlYkNoYXQnO1xuXG5pbXBvcnQgQ29tcG9zZXIsIHsgQ29tcG9zZXJQcm9wcyB9IGZyb20gJy4vQ29tcG9zZXInO1xuXG5pbXBvcnQgQmFzaWNXZWJDaGF0LCB7IEJhc2ljV2ViQ2hhdFByb3BzIH0gZnJvbSAnLi9CYXNpY1dlYkNoYXQnO1xuXG5pbXBvcnQgQXZhdGFyIGZyb20gJy4vQWN0aXZpdHkvQXZhdGFyJztcbmltcG9ydCBCdWJibGUgZnJvbSAnLi9BY3Rpdml0eS9CdWJibGUnO1xuaW1wb3J0IEVycm9yQm94IGZyb20gJy4vRXJyb3JCb3gnO1xuaW1wb3J0IFNlbmRTdGF0dXMsIHsgY29ubmVjdFNlbmRTdGF0dXMgfSBmcm9tICcuL01pZGRsZXdhcmUvQWN0aXZpdHlTdGF0dXMvU2VuZFN0YXR1cy9TZW5kU3RhdHVzJztcbmltcG9ydCBTcGVha0FjdGl2aXR5LCB7IGNvbm5lY3RTcGVha0FjdGl2aXR5IH0gZnJvbSAnLi9BY3Rpdml0eS9TcGVhayc7XG5pbXBvcnQgVGltZXN0YW1wIGZyb20gJy4vTWlkZGxld2FyZS9BY3Rpdml0eVN0YXR1cy9UaW1lc3RhbXAnO1xuXG5pbXBvcnQgQXVkaW9Db250ZW50IGZyb20gJy4vQXR0YWNobWVudC9BdWRpb0NvbnRlbnQnO1xuaW1wb3J0IEZpbGVDb250ZW50IGZyb20gJy4vQXR0YWNobWVudC9GaWxlQ29udGVudCc7XG5pbXBvcnQgSFRNTFZpZGVvQ29udGVudCBmcm9tICcuL0F0dGFjaG1lbnQvSFRNTFZpZGVvQ29udGVudCc7XG5pbXBvcnQgSW1hZ2VDb250ZW50IGZyb20gJy4vQXR0YWNobWVudC9JbWFnZUNvbnRlbnQnO1xuaW1wb3J0IFRleHRDb250ZW50IGZyb20gJy4vQXR0YWNobWVudC9UZXh0Q29udGVudCc7XG5pbXBvcnQgVmlkZW9Db250ZW50IGZyb20gJy4vQXR0YWNobWVudC9WaWRlb0NvbnRlbnQnO1xuaW1wb3J0IFZpbWVvQ29udGVudCBmcm9tICcuL0F0dGFjaG1lbnQvVmltZW9Db250ZW50JztcbmltcG9ydCBZb3VUdWJlQ29udGVudCBmcm9tICcuL0F0dGFjaG1lbnQvWW91VHViZUNvbnRlbnQnO1xuXG5pbXBvcnQgRGljdGF0aW9uSW50ZXJpbXMsIHsgY29ubmVjdERpY3RhdGlvbkludGVyaW1zIH0gZnJvbSAnLi9TZW5kQm94L0RpY3RhdGlvbkludGVyaW1zJztcbmltcG9ydCBNaWNyb3Bob25lQnV0dG9uLCB7IGNvbm5lY3RNaWNyb3Bob25lQnV0dG9uIH0gZnJvbSAnLi9TZW5kQm94L01pY3JvcGhvbmVCdXR0b24nO1xuaW1wb3J0IFNlbmRCdXR0b24sIHsgY29ubmVjdFNlbmRCdXR0b24gfSBmcm9tICcuL1NlbmRCb3gvU2VuZEJ1dHRvbic7XG5pbXBvcnQgU2VuZFRleHRCb3gsIHsgY29ubmVjdFNlbmRUZXh0Qm94IH0gZnJvbSAnLi9TZW5kQm94L1RleHRCb3gnO1xuaW1wb3J0IFN1Z2dlc3RlZEFjdGlvbnMsIHsgY29ubmVjdFN1Z2dlc3RlZEFjdGlvbnMgfSBmcm9tICcuL1NlbmRCb3gvU3VnZ2VzdGVkQWN0aW9ucyc7XG5pbXBvcnQgVXBsb2FkQnV0dG9uLCB7IGNvbm5lY3RVcGxvYWRCdXR0b24gfSBmcm9tICcuL1NlbmRCb3gvVXBsb2FkQnV0dG9uJztcblxuaW1wb3J0IGNvbm5lY3RUb1dlYkNoYXQgZnJvbSAnLi9jb25uZWN0VG9XZWJDaGF0JztcbmltcG9ydCBDb250ZXh0IGZyb20gJy4vaG9va3MvaW50ZXJuYWwvV2ViQ2hhdFVJQ29udGV4dCc7XG5pbXBvcnQgY3JlYXRlQ29yZUFjdGl2aXR5TWlkZGxld2FyZSBmcm9tICcuL01pZGRsZXdhcmUvQWN0aXZpdHkvY3JlYXRlQ29yZU1pZGRsZXdhcmUnO1xuaW1wb3J0IGNyZWF0ZUNvcmVBY3Rpdml0eVN0YXR1c01pZGRsZXdhcmUgZnJvbSAnLi9NaWRkbGV3YXJlL0FjdGl2aXR5U3RhdHVzL2NyZWF0ZUNvcmVNaWRkbGV3YXJlJztcbmltcG9ydCBjcmVhdGVDb3JlQXR0YWNobWVudE1pZGRsZXdhcmUgZnJvbSAnLi9NaWRkbGV3YXJlL0F0dGFjaG1lbnQvY3JlYXRlQ29yZU1pZGRsZXdhcmUnO1xuaW1wb3J0IGNyZWF0ZVN0eWxlU2V0IGZyb20gJy4vU3R5bGVzL2NyZWF0ZVN0eWxlU2V0JztcbmltcG9ydCBnZXRUYWJJbmRleCBmcm9tICcuL1V0aWxzL1R5cGVGb2N1c1NpbmsvZ2V0VGFiSW5kZXgnO1xuXG5pbXBvcnQgKiBhcyBjb21wb25lbnRIb29rcyBmcm9tICcuL2hvb2tzL2luZGV4JztcblxuY29uc3QgaG9va3MgPSB7XG4gIC4uLmFwaUhvb2tzLFxuICAuLi5jb21wb25lbnRIb29rc1xufTtcblxuY29uc3QgdmVyc2lvbiA9IHByb2Nlc3MuZW52Lm5wbV9wYWNrYWdlX3ZlcnNpb247XG5cbmNvbnN0IENvbXBvbmVudHMgPSB7XG4gIEJhc2ljV2ViQ2hhdCxcbiAgQ29tcG9zZXIsXG4gIExvY2FsaXplLFxuXG4gIC8vIENvbXBvbmVudHMgZm9yIHJlY29tcG9zaW5nIGFjdGl2aXRpZXMgYW5kIGF0dGFjaG1lbnRzXG4gIEF1ZGlvQ29udGVudCxcbiAgRmlsZUNvbnRlbnQsXG4gIEhUTUxWaWRlb0NvbnRlbnQsXG4gIEltYWdlQ29udGVudCxcbiAgVGV4dENvbnRlbnQsXG4gIFZpZGVvQ29udGVudCxcbiAgVmltZW9Db250ZW50LFxuICBZb3VUdWJlQ29udGVudCxcblxuICAvLyBDb21wb25lbnRzIGZvciByZWNvbXBvc2luZyB0cmFuc2NyaXB0XG4gIEF2YXRhcixcbiAgQnViYmxlLFxuICBFcnJvckJveCxcbiAgU2VuZFN0YXR1cyxcbiAgU3BlYWtBY3Rpdml0eSxcbiAgVGltZXN0YW1wLFxuXG4gIGNvbm5lY3RTZW5kU3RhdHVzLFxuICBjb25uZWN0U3BlYWtBY3Rpdml0eSxcblxuICAvLyBDb21wb25lbnRzIGZvciByZWNvbXBvc2luZyBzZW5kIGJveFxuICBEaWN0YXRpb25JbnRlcmltcyxcbiAgTWljcm9waG9uZUJ1dHRvbixcbiAgU2VuZEJ1dHRvbixcbiAgU2VuZFRleHRCb3gsXG4gIFN1Z2dlc3RlZEFjdGlvbnMsXG4gIFVwbG9hZEJ1dHRvbixcblxuICBjb25uZWN0RGljdGF0aW9uSW50ZXJpbXMsXG4gIGNvbm5lY3RNaWNyb3Bob25lQnV0dG9uLFxuICBjb25uZWN0U2VuZEJ1dHRvbixcbiAgY29ubmVjdFNlbmRUZXh0Qm94LFxuICBjb25uZWN0U3VnZ2VzdGVkQWN0aW9ucyxcbiAgY29ubmVjdFVwbG9hZEJ1dHRvblxufTtcblxuZXhwb3J0IGRlZmF1bHQgUmVhY3RXZWJDaGF0O1xuXG5leHBvcnQge1xuICBDb21wb25lbnRzLFxuICBjb25jYXRNaWRkbGV3YXJlLFxuICBjb25uZWN0VG9XZWJDaGF0LFxuICBDb250ZXh0LFxuICBjcmVhdGVDb3JlQWN0aXZpdHlNaWRkbGV3YXJlLFxuICBjcmVhdGVDb3JlQWN0aXZpdHlTdGF0dXNNaWRkbGV3YXJlLFxuICBjcmVhdGVDb3JlQXR0YWNobWVudE1pZGRsZXdhcmUsXG4gIGNyZWF0ZVN0eWxlU2V0LFxuICBnZXRUYWJJbmRleCxcbiAgaG9va3MsXG4gIGxvY2FsaXplLFxuICB2ZXJzaW9uXG59O1xuXG5leHBvcnQgdHlwZSB7IEJhc2ljV2ViQ2hhdFByb3BzLCBDb21wb3NlclByb3BzLCBSZWFjdFdlYkNoYXRQcm9wcyB9O1xuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "botframework-webchat-component",
|
|
3
|
-
"version": "4.15.2
|
|
3
|
+
"version": "4.15.2",
|
|
4
4
|
"description": "React component of botframework-webchat",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@emotion/css": "11.7.1",
|
|
54
54
|
"base64-js": "1.5.1",
|
|
55
|
-
"botframework-webchat-api": "4.15.2
|
|
56
|
-
"botframework-webchat-core": "4.15.2
|
|
55
|
+
"botframework-webchat-api": "4.15.2",
|
|
56
|
+
"botframework-webchat-core": "4.15.2",
|
|
57
57
|
"classnames": "2.3.1",
|
|
58
58
|
"compute-scroll-into-view": "1.0.17",
|
|
59
59
|
"event-target-shim": "6.0.2",
|
|
@@ -16,6 +16,11 @@ const FocusTrap: FC<FocusTrapProps> = ({ children, onFocus, onLeave }) => {
|
|
|
16
16
|
const bodyRef = useRef<HTMLDivElement>();
|
|
17
17
|
const onLeaveRef = useValueRef<() => void>(onLeave);
|
|
18
18
|
|
|
19
|
+
const getTabbableElementsInBody = useCallback(
|
|
20
|
+
() => tabbableElements(bodyRef.current).filter(element => element.getAttribute('aria-disabled') !== 'true'),
|
|
21
|
+
[bodyRef]
|
|
22
|
+
);
|
|
23
|
+
|
|
19
24
|
const handleBodyKeyDown: KeyboardEventHandler = useCallback(
|
|
20
25
|
event => {
|
|
21
26
|
if (event.key === 'Escape') {
|
|
@@ -29,15 +34,18 @@ const FocusTrap: FC<FocusTrapProps> = ({ children, onFocus, onLeave }) => {
|
|
|
29
34
|
);
|
|
30
35
|
|
|
31
36
|
const handleFirstSentinelFocus: () => void = useCallback(() => {
|
|
32
|
-
const focusables =
|
|
37
|
+
const focusables = getTabbableElementsInBody();
|
|
33
38
|
|
|
34
|
-
focusables[focusables.length - 1]
|
|
35
|
-
}, [bodyRef]);
|
|
39
|
+
const lastTabbableElement = focusables[focusables.length - 1];
|
|
36
40
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
)
|
|
41
|
+
lastTabbableElement ? lastTabbableElement.focus() : onLeaveRef.current?.();
|
|
42
|
+
}, [getTabbableElementsInBody, onLeaveRef]);
|
|
43
|
+
|
|
44
|
+
const handleLastSentinelFocus: () => void = useCallback(() => {
|
|
45
|
+
const [firstTabbableElement] = getTabbableElementsInBody();
|
|
46
|
+
|
|
47
|
+
firstTabbableElement ? firstTabbableElement.focus() : onLeaveRef.current?.();
|
|
48
|
+
}, [getTabbableElementsInBody, onLeaveRef]);
|
|
41
49
|
|
|
42
50
|
return (
|
|
43
51
|
<Fragment>
|