botframework-webchat-component
Version:
React component of botframework-webchat
32 lines (25 loc) • 2.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useRegisterFocusSendBox;
var _react = require("react");
var _removeInline = _interopRequireDefault(require("../../Utils/removeInline"));
var _useWebChatUIContext2 = _interopRequireDefault(require("./useWebChatUIContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// This hook is for registering and unregister a callback, used by <BasicSendBox>.
// When called, the callback should focus on the text box of the send box.
function useRegisterFocusSendBox(callback) {
var _useWebChatUIContext = (0, _useWebChatUIContext2.default)(),
focusSendBoxCallbacksRef = _useWebChatUIContext.focusSendBoxCallbacksRef;
(0, _react.useEffect)(function () {
if (callback) {
var focusSendBoxCallbacks = focusSendBoxCallbacksRef.current;
focusSendBoxCallbacks.push(callback);
return function () {
return (0, _removeInline.default)(focusSendBoxCallbacks, callback);
};
}
}, [callback, focusSendBoxCallbacksRef]);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9pbnRlcm5hbC91c2VSZWdpc3RlckZvY3VzU2VuZEJveC5qcyJdLCJuYW1lcyI6WyJ1c2VSZWdpc3RlckZvY3VzU2VuZEJveCIsImNhbGxiYWNrIiwiZm9jdXNTZW5kQm94Q2FsbGJhY2tzUmVmIiwiZm9jdXNTZW5kQm94Q2FsbGJhY2tzIiwiY3VycmVudCIsInB1c2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7OztBQUVBO0FBQ0E7QUFFZSxTQUFTQSx1QkFBVCxDQUFpQ0MsUUFBakMsRUFBMkM7QUFBQSw2QkFDbkIsb0NBRG1CO0FBQUEsTUFDaERDLHdCQURnRCx3QkFDaERBLHdCQURnRDs7QUFHeEQsd0JBQVUsWUFBTTtBQUNkLFFBQUlELFFBQUosRUFBYztBQUFBLFVBQ0tFLHFCQURMLEdBQytCRCx3QkFEL0IsQ0FDSkUsT0FESTtBQUdaRCxNQUFBQSxxQkFBcUIsQ0FBQ0UsSUFBdEIsQ0FBMkJKLFFBQTNCO0FBRUEsYUFBTztBQUFBLGVBQU0sMkJBQWFFLHFCQUFiLEVBQW9DRixRQUFwQyxDQUFOO0FBQUEsT0FBUDtBQUNEO0FBQ0YsR0FSRCxFQVFHLENBQUNBLFFBQUQsRUFBV0Msd0JBQVgsQ0FSSDtBQVNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCByZW1vdmVJbmxpbmUgZnJvbSAnLi4vLi4vVXRpbHMvcmVtb3ZlSW5saW5lJztcbmltcG9ydCB1c2VXZWJDaGF0VUlDb250ZXh0IGZyb20gJy4vdXNlV2ViQ2hhdFVJQ29udGV4dCc7XG5cbi8vIFRoaXMgaG9vayBpcyBmb3IgcmVnaXN0ZXJpbmcgYW5kIHVucmVnaXN0ZXIgYSBjYWxsYmFjaywgdXNlZCBieSA8QmFzaWNTZW5kQm94Pi5cbi8vIFdoZW4gY2FsbGVkLCB0aGUgY2FsbGJhY2sgc2hvdWxkIGZvY3VzIG9uIHRoZSB0ZXh0IGJveCBvZiB0aGUgc2VuZCBib3guXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZVJlZ2lzdGVyRm9jdXNTZW5kQm94KGNhbGxiYWNrKSB7XG4gIGNvbnN0IHsgZm9jdXNTZW5kQm94Q2FsbGJhY2tzUmVmIH0gPSB1c2VXZWJDaGF0VUlDb250ZXh0KCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgIGNvbnN0IHsgY3VycmVudDogZm9jdXNTZW5kQm94Q2FsbGJhY2tzIH0gPSBmb2N1c1NlbmRCb3hDYWxsYmFja3NSZWY7XG5cbiAgICAgIGZvY3VzU2VuZEJveENhbGxiYWNrcy5wdXNoKGNhbGxiYWNrKTtcblxuICAgICAgcmV0dXJuICgpID0+IHJlbW92ZUlubGluZShmb2N1c1NlbmRCb3hDYWxsYmFja3MsIGNhbGxiYWNrKTtcbiAgICB9XG4gIH0sIFtjYWxsYmFjaywgZm9jdXNTZW5kQm94Q2FsbGJhY2tzUmVmXSk7XG59XG4iXX0=