react-bootstrap-typeahead
Version:
React typeahead with Bootstrap styling
23 lines (22 loc) • 931 B
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = defaultSelectHint;
var _isSelectable = _interopRequireDefault(require("./isSelectable"));
function defaultSelectHint(e, selectHint) {
var shouldSelectHint = false;
if (e.key === 'ArrowRight') {
// For selectable input types ("text", "search"), only select the hint if
// it's at the end of the input value. For non-selectable types ("email",
// "number"), always select the hint.
shouldSelectHint = (0, _isSelectable["default"])(e.currentTarget) ? e.currentTarget.selectionStart === e.currentTarget.value.length : true;
}
if (e.key === 'Tab') {
// Prevent input from blurring on TAB.
e.preventDefault();
shouldSelectHint = true;
}
return selectHint ? selectHint(shouldSelectHint, e) : shouldSelectHint;
}
;