diff --git a/dist/react-typeahead-component.min.js b/dist/react-typeahead-component.min.js index b87c66d..00909b6 100644 --- a/dist/react-typeahead-component.min.js +++ b/dist/react-typeahead-component.min.js @@ -1 +1 @@ -!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Typeahead=e()}}(function(){return function e(t,n,o){function i(r,a){if(!n[r]){if(!t[r]){var l="function"==typeof require&&require;if(!a&&l)return l(r,!0);if(s)return s(r,!0);var p=new Error("Cannot find module '"+r+"'");throw p.code="MODULE_NOT_FOUND",p}var u=n[r]={exports:{}};t[r][0].call(u.exports,function(e){var n=t[r][1][e];return i(n?n:e)},u,u.exports,e,t,n,o)}return n[r].exports}for(var s="function"==typeof require&&require,r=0;r0&&e.handleHint(t,n).slice(o).length>0;this.setState({isHintVisible:i})},render:function(){var e=this;return o.createElement("div",{style:{position:"relative"},className:"react-typeahead-container "+e.props.className},e.renderInput(),e.renderDropdown(),e.renderAriaMessageForOptions(),e.renderAriaMessageForIncomingOptions())},renderInput:function(){var e=this,t=e.state,n=e.props,s=n.inputValue,a="react-typeahead-input",l=r(s);return o.createElement("div",{style:{position:"relative"},className:"react-typeahead-input-container"},o.createElement(i,{disabled:!0,role:"presentation","aria-hidden":!0,dir:l,className:a+" react-typeahead-hint",style:{color:"silver",WebkitTextFillColor:"silver",position:"absolute"},value:t.isHintVisible?n.handleHint(s,n.options):null}),o.createElement(i,{ref:"input",role:"combobox","aria-owns":e.optionsId,"aria-expanded":t.isDropdownVisible,"aria-autocomplete":"both","aria-activedescendant":e.activeDescendantId,value:s,spellCheck:!1,autoComplete:!1,autoCorrect:!1,dir:l,onClick:e.handleClick,onFocus:e.handleFocus,onBlur:n.onBlur,onChange:e.handleChange,onKeyDown:e.handleKeyDown,id:n.inputId,name:n.inputName,autoFocus:n.autoFocus,placeholder:n.placeholder,onSelect:n.onSelect,onKeyUp:n.onKeyUp,onKeyPress:n.onKeyPress,className:a+" react-typeahead-usertext",style:{position:"relative",background:"transparent"}}))},renderDropdown:function(){var e=this,t=e.state,n=e.props,i=n.optionTemplate,s=t.selectedIndex,r=t.isDropdownVisible,a=e.activeDescendantId;return this.props.options.length<1?null:o.createElement("ul",{id:e.optionsId,ref:"dropdown",role:"listbox","aria-hidden":!r,style:{width:"100%",background:"#fff",position:"absolute",boxSizing:"border-box",display:r?"block":"none"},className:"react-typeahead-options",onMouseOut:this.handleMouseOut},n.options.map(function(t,r){var l=s===r;return o.createElement("li",{id:l?a:null,"aria-selected":l,role:"option",key:r,onClick:e.handleOptionClick.bind(e,r),onMouseOver:e.handleOptionMouseOver.bind(e,r)},o.createElement(i,{data:t,index:r,userInputValue:e.userInputValue,inputValue:n.inputValue,isSelected:l}))}))},renderAriaMessageForOptions:function(){var e=this,t=e.props,n=t.inputValue,i=t.options[e.state.selectedIndex]||n;return o.createElement(s,{message:t.getMessageForOption(i)||n})},renderAriaMessageForIncomingOptions:function(){var e=this.props;return o.createElement(s,{message:e.getMessageForIncomingOptions(e.options.length)})},showDropdown:function(){var e=this;e.state.isDropdownVisible||e.setState({isDropdownVisible:!0},function(){e.props.onDropdownOpen()})},hideDropdown:function(){var e=this;e.state.isDropdownVisible&&e.setState({isDropdownVisible:!1},function(){e.props.onDropdownClose()})},showHint:function(){var e=this,t=e.props,n=t.inputValue,o=n.length,i=o>0&&t.handleHint(n,t.options).slice(o).length>0;e.setState({isHintVisible:i})},hideHint:function(){this.setState({isHintVisible:!1})},setSelectedIndex:function(e,t){this.setState({selectedIndex:e},t)},handleChange:function(e){var t=this;t.showHint(),t.showDropdown(),t.setSelectedIndex(-1),t.props.onChange(e),t.userInputValue=e.target.value},focus:function(){this.refs.input.getDOMNode().focus()},handleFocus:function(e){var t=this;t.showDropdown(),t.props.onFocus(e)},handleClick:function(e){var t=this;t.showHint(),t.props.onInputClick(e)},navigate:function(e,t){var n=this,o=-1,i=n.props.options.length-1,s=n.state.selectedIndex+e;s>i?s=o:o>s&&(s=i),n.setSelectedIndex(s,t)},handleKeyDown:function(e){var t,n,i,s=this,a=e.key,l=s.props,p=s.refs.input,u=s.state.isDropdownVisible,c=s.state.isHintVisible,d=!1;switch(a){case"End":case"Tab":c&&!e.shiftKey&&(e.preventDefault(),l.onComplete(e,l.handleHint(l.inputValue,l.options)));break;case"ArrowLeft":case"ArrowRight":c&&!e.shiftKey&&p.isCursorAtEnd()&&(i=r(l.inputValue),("ltr"===i&&"ArrowRight"===a||"rtl"===i&&"ArrowLeft"===a)&&l.onComplete(e,l.handleHint(l.inputValue,l.options)));break;case"Enter":s.focus(),s.hideHint(),s.hideDropdown();break;case"Escape":s.hideHint(),s.hideDropdown();break;case"ArrowUp":case"ArrowDown":l.options.length>0&&(e.preventDefault(),s.showHint(),s.showDropdown(),u&&(i="ArrowUp"===a?-1:1,d=!0,s.navigate(i,function(){var t,n,i=s.state.selectedIndex,r=s.previousInputValue,a=r,p=0;i>=0&&(null===r&&(s.previousInputValue=l.inputValue),a=l.options[i],n=o.findDOMNode(s.refs.dropdown),t=n.children[i],p=t.offsetTop,(p+t.clientHeight>n.clientHeight||pt?l.inputValue:l.options[t],l.onKeyDown(e,n,t))},handleOptionClick:function(e,t){var n=this,o=n.props;n.focus(),n.hideHint(),n.hideDropdown(),n.setSelectedIndex(e),o.onOptionClick(t,o.options[e],e)},handleOptionMouseOver:function(e){var t=this;t.props.hoverSelect&&t.setSelectedIndex(e)},handleMouseOut:function(){var e=this;e.props.hoverSelect&&e.setSelectedIndex(-1)},handleWindowClose:function(e){var t=this,n=e.target;n===window||this.getDOMNode().contains(n)||(t.hideHint(),t.hideDropdown())}})},{"../utils/get_text_direction":5,"./aria_status.jsx":1,"./input.jsx":2,react:"react"}],4:[function(e,t,n){t.exports=e("./components/typeahead.jsx")},{"./components/typeahead.jsx":3}],5:[function(e,t,n){"use strict";var o=e("./rtl_chars_regexp"),i=e("./neutral_chars_regexp"),s=new RegExp("^(?:"+i+")*(?:"+o+")"),r=new RegExp("^(?:"+i+")*$");t.exports=function(e){var t="ltr";return s.test(e)?t="rtl":r.test(e)&&(t=null),t}},{"./neutral_chars_regexp":6,"./rtl_chars_regexp":7}],6:[function(e,t,n){t.exports="[\x00-@[-`{-\xa9\xab-\xb4\xb6-\xb9\xbb-\xbf\xd7\xf7\u02b9\u02ba\u02c2-\u02cf\u02d2-\u02df\u02e5-\u02ed\u02ef-\u036f\u0374\u0375\u037e\u0384\u0385\u0387\u03f6\u0483-\u0489\u058a\u058d-\u058f\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0600-\u0607\u0609\u060a\u060c\u060e-\u061a\u064b-\u066c\u0670\u06d6-\u06e4\u06e7-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u07f6-\u07f9\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u0902\u093a\u093c\u0941-\u0948\u094d\u0951-\u0957\u0962\u0963\u0981\u09bc\u09c1-\u09c4\u09cd\u09e2\u09e3\u09f2\u09f3\u09fb\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0af1\u0b01\u0b3c\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b62\u0b63\u0b82\u0bc0\u0bcd\u0bf3-\u0bfa\u0c00\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c78-\u0c7e\u0c81\u0cbc\u0ccc\u0ccd\u0ce2\u0ce3\u0d01\u0d41-\u0d44\u0d4d\u0d62\u0d63\u0dca\u0dd2-\u0dd4\u0dd6\u0e31\u0e34-\u0e3a\u0e3f\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39-\u0f3d\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135d-\u135f\u1390-\u1399\u1400\u1680\u169b\u169c\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4\u17b5\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17db\u17dd\u17f0-\u17f9\u1800-\u180e\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1940\u1944\u1945\u19de-\u19ff\u1a17\u1a18\u1a1b\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1ab0-\u1abe\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1bab-\u1bad\u1be6\u1be8\u1be9\u1bed\u1bef-\u1bf1\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u2000-\u200d\u2010-\u2029\u202f-\u2064\u2068\u206a-\u2070\u2074-\u207e\u2080-\u208e\u20a0-\u20bd\u20d0-\u20f0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u2140-\u2144\u214a-\u214d\u2150-\u215f\u2189\u2190-\u2335\u237b-\u2394\u2396-\u23fa\u2400-\u2426\u2440-\u244a\u2460-\u249b\u24ea-\u26ab\u26ad-\u27ff\u2900-\u2b73\u2b76-\u2b95\u2b98-\u2bb9\u2bbd-\u2bc8\u2bca-\u2bd1\u2ce5-\u2cea\u2cef-\u2cf1\u2cf9-\u2cff\u2d7f\u2de0-\u2e42\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3000-\u3004\u3008-\u3020\u302a-\u302d\u3030\u3036\u3037\u303d-\u303f\u3099-\u309c\u30a0\u30fb\u31c0-\u31e3\u321d\u321e\u3250-\u325f\u327c-\u327e\u32b1-\u32bf\u32cc-\u32cf\u3377-\u337a\u33de\u33df\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua60d-\ua60f\ua66f-\ua67f\ua69f\ua6f0\ua6f1\ua700-\ua721\ua788\ua802\ua806\ua80b\ua825\ua826\ua828-\ua82b\ua838\ua839\ua874-\ua877\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\ua9e5\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaa7c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaec\uaaed\uaaf6\uabe5\uabe8\uabed\ufb1e\ufb29\ufd3e\ufd3f\ufdfd\ufe00-\ufe19\ufe20-\ufe2d\ufe30-\ufe52\ufe54-\ufe66\ufe68-\ufe6b\ufeff\uff01-\uff20\uff3b-\uff40\uff5b-\uff65\uffe0-\uffe6\uffe8-\uffee\ufff9-\ufffd]|\ud800[\udd01\udd40-\udd8c\udd90-\udd9b\udda0\uddfd\udee0-\udefb\udf76-\udf7a]|\ud802[\udd1f\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6\udf39-\udf3f]|\ud803[\ude60-\ude7e]|[\ud804\udb40][\udc01\udc38-\udc46\udc52-\udc65\udc7f-\udc81\udcb3-\udcb6\udcb9\udcba\udd00-\udd02\udd27-\udd2b\udd2d-\udd34\udd73\udd80\udd81\uddb6-\uddbe\ude2f-\ude31\ude34\ude36\ude37\udedf\udee3-\udeea\udf01\udf3c\udf40\udf66-\udf6c\udf70-\udf74]|\ud805[\udcb3-\udcb8\udcba\udcbf\udcc0\udcc2\udcc3\uddb2-\uddb5\uddbc\uddbd\uddbf\uddc0\ude33-\ude3a\ude3d\ude3f\ude40\udeab\udead\udeb0-\udeb5\udeb7]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf8f-\udf92]|\ud82f[\udc9d\udc9e\udca0-\udca3]|\ud834[\udd67-\udd69\udd73-\udd82\udd85-\udd8b\uddaa-\uddad\ude00-\ude45\udf00-\udf56]|\ud835[\udedb\udf15\udf4f\udf89\udfc3\udfce-\udfff]|\ud83a[\udcd0-\udcd6]|\ud83b[\udef0\udef1]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd00-\udd0c\udd6a\udd6b\udf00-\udf2c\udf30-\udf7d\udf80-\udfce\udfd4-\udff7]|\ud83d[\udc00-\udcfe\udd00-\udd4a\udd50-\udd79\udd7b-\udda3\udda5-\ude42\ude45-\udecf\udee0-\udeec\udef0-\udef3\udf00-\udf73\udf80-\udfd4]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad]"},{}],7:[function(e,t,n){t.exports="[\u05be\u05c0\u05c3\u05c6\u05d0-\u05ea\u05f0-\u05f4\u0608\u060b\u060d\u061b\u061c\u061e-\u064a\u066d-\u066f\u0671-\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u070d\u070f\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07c0-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0830-\u083e\u0840-\u0858\u085e\u08a0-\u08b2\u200f\u202b\u202e\u2067\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbc1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfc\ufe70-\ufe74\ufe76-\ufefc]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc57-\udc9e\udca7-\udcaf\udd00-\udd1b\udd20-\udd39\udd3f\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude33\ude40-\ude47\ude50-\ude58\ude60-\ude9f\udec0-\udee4\udeeb-\udef6\udf00-\udf35\udf40-\udf55\udf58-\udf72\udf78-\udf91\udf99-\udf9c\udfa9-\udfaf]|\ud803[\udc00-\udc48]|\ud83a[\udc00-\udcc4\udcc7-\udccf]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]"},{}]},{},[4])(4)}); +!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Typeahead=e()}}(function(){return function e(t,n,o){function i(r,a){if(!n[r]){if(!t[r]){var l="function"==typeof require&&require;if(!a&&l)return l(r,!0);if(s)return s(r,!0);var p=new Error("Cannot find module '"+r+"'");throw p.code="MODULE_NOT_FOUND",p}var u=n[r]={exports:{}};t[r][0].call(u.exports,function(e){var n=t[r][1][e];return i(n?n:e)},u,u.exports,e,t,n,o)}return n[r].exports}for(var s="function"==typeof require&&require,r=0;r0&&e.handleHint(t,n).slice(o).length>0;this.setState({isHintVisible:i})},render:function(){var e=this;return o.createElement("div",{style:{position:"relative"},className:"react-typeahead-container "+e.props.className},e.renderInput(),e.renderDropdown(),e.renderAriaMessageForOptions(),e.renderAriaMessageForIncomingOptions())},renderInput:function(){var e=this,t=e.state,n=e.props,s=n.inputValue,a="react-typeahead-input",l=r(s);return o.createElement("div",{style:{position:"relative"},className:"react-typeahead-input-container"},o.createElement(i,{disabled:!0,role:"presentation","aria-hidden":!0,dir:l,className:a+" react-typeahead-hint",style:{color:"silver",WebkitTextFillColor:"silver",position:"absolute"},value:t.isHintVisible?n.handleHint(s,n.options):null}),o.createElement(i,{ref:"input",role:"combobox","aria-owns":e.optionsId,"aria-expanded":t.isDropdownVisible,"aria-autocomplete":"both","aria-activedescendant":e.activeDescendantId,value:s,spellCheck:!1,autoComplete:!1,autoCorrect:!1,dir:l,onClick:e.handleClick,onFocus:e.handleFocus,onBlur:n.onBlur,onChange:e.handleChange,onKeyDown:e.handleKeyDown,id:n.inputId,name:n.inputName,autoFocus:n.autoFocus,placeholder:n.placeholder,onSelect:n.onSelect,onKeyUp:n.onKeyUp,onKeyPress:n.onKeyPress,className:a+" react-typeahead-usertext",style:{position:"relative",background:"transparent"}}))},renderDropdown:function(){var e=this,t=e.state,n=e.props,i=n.optionTemplate,s=t.selectedIndex,r=t.isDropdownVisible,a=e.activeDescendantId;return this.props.options.length<1?null:o.createElement("ul",{id:e.optionsId,ref:"dropdown",role:"listbox","aria-hidden":!r,style:{width:"100%",background:"#fff",position:"absolute",boxSizing:"border-box",display:r?"block":"none"},className:"react-typeahead-options",onMouseOut:this.handleMouseOut},n.options.map(function(t,r){var l=s===r;return o.createElement("li",{id:l?a:null,"aria-selected":l,role:"option",key:r,onClick:e.handleOptionClick.bind(e,r),onMouseOver:e.handleOptionMouseOver.bind(e,r)},o.createElement(i,{data:t,index:r,userInputValue:e.userInputValue,inputValue:n.inputValue,isSelected:l}))}))},renderAriaMessageForOptions:function(){var e=this,t=e.props,n=t.inputValue,i=t.options[e.state.selectedIndex]||n;return o.createElement(s,{message:t.getMessageForOption(i)||n})},renderAriaMessageForIncomingOptions:function(){var e=this.props;return o.createElement(s,{message:e.getMessageForIncomingOptions(e.options.length)})},showDropdown:function(){var e=this;e.state.isDropdownVisible||e.setState({isDropdownVisible:!0},function(){e.props.onDropdownOpen()})},hideDropdown:function(){var e=this;e.state.isDropdownVisible&&e.setState({isDropdownVisible:!1},function(){e.props.onDropdownClose()})},showHint:function(){var e=this,t=e.props,n=t.inputValue,o=n.length,i=o>0&&t.handleHint(n,t.options).slice(o).length>0;e.setState({isHintVisible:i})},hideHint:function(){this.setState({isHintVisible:!1})},setSelectedIndex:function(e,t){this.setState({selectedIndex:e},t)},handleChange:function(e){var t=this;t.showHint(),t.showDropdown(),t.setSelectedIndex(-1),t.props.onChange(e),t.userInputValue=e.target.value},focus:function(){o.findDOMNode(this.refs.input).focus()},handleFocus:function(e){var t=this;t.showDropdown(),t.props.onFocus(e)},handleClick:function(e){var t=this;t.showHint(),t.props.onInputClick(e)},navigate:function(e,t){var n=this,o=-1,i=n.props.options.length-1,s=n.state.selectedIndex+e;s>i?s=o:o>s&&(s=i),n.setSelectedIndex(s,t)},handleKeyDown:function(e){var t,n,i,s=this,a=e.key,l=s.props,p=s.refs.input,u=s.state.isDropdownVisible,c=s.state.isHintVisible,d=!1;switch(a){case"End":case"Tab":c&&!e.shiftKey&&(e.preventDefault(),l.onComplete(e,l.handleHint(l.inputValue,l.options)));break;case"ArrowLeft":case"ArrowRight":c&&!e.shiftKey&&p.isCursorAtEnd()&&(i=r(l.inputValue),("ltr"===i&&"ArrowRight"===a||"rtl"===i&&"ArrowLeft"===a)&&l.onComplete(e,l.handleHint(l.inputValue,l.options)));break;case"Enter":s.focus(),s.hideHint(),s.hideDropdown();break;case"Escape":s.hideHint(),s.hideDropdown();break;case"ArrowUp":case"ArrowDown":l.options.length>0&&(e.preventDefault(),s.showHint(),s.showDropdown(),u&&(i="ArrowUp"===a?-1:1,d=!0,s.navigate(i,function(){var t,n,i=s.state.selectedIndex,r=s.previousInputValue,a=r,p=0;i>=0&&(null===r&&(s.previousInputValue=l.inputValue),a=l.options[i],n=o.findDOMNode(s.refs.dropdown),t=n.children[i],p=t.offsetTop,(p+t.clientHeight>n.clientHeight||pt?l.inputValue:l.options[t],l.onKeyDown(e,n,t))},handleOptionClick:function(e,t){var n=this,o=n.props;n.focus(),n.hideHint(),n.hideDropdown(),n.setSelectedIndex(e),o.onOptionClick(t,o.options[e],e)},handleOptionMouseOver:function(e){var t=this;t.props.hoverSelect&&t.setSelectedIndex(e)},handleMouseOut:function(){var e=this;e.props.hoverSelect&&e.setSelectedIndex(-1)},handleWindowClose:function(e){var t=this,n=e.target;n===window||o.findDOMNode(this).contains(n)||(t.hideHint(),t.hideDropdown())}})},{"../utils/get_text_direction":5,"./aria_status.jsx":1,"./input.jsx":2,react:"react"}],4:[function(e,t,n){t.exports=e("./components/typeahead.jsx")},{"./components/typeahead.jsx":3}],5:[function(e,t,n){"use strict";var o=e("./rtl_chars_regexp"),i=e("./neutral_chars_regexp"),s=new RegExp("^(?:"+i+")*(?:"+o+")"),r=new RegExp("^(?:"+i+")*$");t.exports=function(e){var t="ltr";return s.test(e)?t="rtl":r.test(e)&&(t=null),t}},{"./neutral_chars_regexp":6,"./rtl_chars_regexp":7}],6:[function(e,t,n){t.exports="[\x00-@[-`{-\xa9\xab-\xb4\xb6-\xb9\xbb-\xbf\xd7\xf7\u02b9\u02ba\u02c2-\u02cf\u02d2-\u02df\u02e5-\u02ed\u02ef-\u036f\u0374\u0375\u037e\u0384\u0385\u0387\u03f6\u0483-\u0489\u058a\u058d-\u058f\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0600-\u0607\u0609\u060a\u060c\u060e-\u061a\u064b-\u066c\u0670\u06d6-\u06e4\u06e7-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u07f6-\u07f9\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u0902\u093a\u093c\u0941-\u0948\u094d\u0951-\u0957\u0962\u0963\u0981\u09bc\u09c1-\u09c4\u09cd\u09e2\u09e3\u09f2\u09f3\u09fb\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0af1\u0b01\u0b3c\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b62\u0b63\u0b82\u0bc0\u0bcd\u0bf3-\u0bfa\u0c00\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c78-\u0c7e\u0c81\u0cbc\u0ccc\u0ccd\u0ce2\u0ce3\u0d01\u0d41-\u0d44\u0d4d\u0d62\u0d63\u0dca\u0dd2-\u0dd4\u0dd6\u0e31\u0e34-\u0e3a\u0e3f\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39-\u0f3d\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135d-\u135f\u1390-\u1399\u1400\u1680\u169b\u169c\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4\u17b5\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17db\u17dd\u17f0-\u17f9\u1800-\u180e\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1940\u1944\u1945\u19de-\u19ff\u1a17\u1a18\u1a1b\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1ab0-\u1abe\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1bab-\u1bad\u1be6\u1be8\u1be9\u1bed\u1bef-\u1bf1\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\u1dfc-\u1dff\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u2000-\u200d\u2010-\u2029\u202f-\u2064\u2068\u206a-\u2070\u2074-\u207e\u2080-\u208e\u20a0-\u20bd\u20d0-\u20f0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u2140-\u2144\u214a-\u214d\u2150-\u215f\u2189\u2190-\u2335\u237b-\u2394\u2396-\u23fa\u2400-\u2426\u2440-\u244a\u2460-\u249b\u24ea-\u26ab\u26ad-\u27ff\u2900-\u2b73\u2b76-\u2b95\u2b98-\u2bb9\u2bbd-\u2bc8\u2bca-\u2bd1\u2ce5-\u2cea\u2cef-\u2cf1\u2cf9-\u2cff\u2d7f\u2de0-\u2e42\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3000-\u3004\u3008-\u3020\u302a-\u302d\u3030\u3036\u3037\u303d-\u303f\u3099-\u309c\u30a0\u30fb\u31c0-\u31e3\u321d\u321e\u3250-\u325f\u327c-\u327e\u32b1-\u32bf\u32cc-\u32cf\u3377-\u337a\u33de\u33df\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua60d-\ua60f\ua66f-\ua67f\ua69f\ua6f0\ua6f1\ua700-\ua721\ua788\ua802\ua806\ua80b\ua825\ua826\ua828-\ua82b\ua838\ua839\ua874-\ua877\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\ua9e5\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaa7c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaec\uaaed\uaaf6\uabe5\uabe8\uabed\ufb1e\ufb29\ufd3e\ufd3f\ufdfd\ufe00-\ufe19\ufe20-\ufe2d\ufe30-\ufe52\ufe54-\ufe66\ufe68-\ufe6b\ufeff\uff01-\uff20\uff3b-\uff40\uff5b-\uff65\uffe0-\uffe6\uffe8-\uffee\ufff9-\ufffd]|\ud800[\udd01\udd40-\udd8c\udd90-\udd9b\udda0\uddfd\udee0-\udefb\udf76-\udf7a]|\ud802[\udd1f\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6\udf39-\udf3f]|\ud803[\ude60-\ude7e]|[\ud804\udb40][\udc01\udc38-\udc46\udc52-\udc65\udc7f-\udc81\udcb3-\udcb6\udcb9\udcba\udd00-\udd02\udd27-\udd2b\udd2d-\udd34\udd73\udd80\udd81\uddb6-\uddbe\ude2f-\ude31\ude34\ude36\ude37\udedf\udee3-\udeea\udf01\udf3c\udf40\udf66-\udf6c\udf70-\udf74]|\ud805[\udcb3-\udcb8\udcba\udcbf\udcc0\udcc2\udcc3\uddb2-\uddb5\uddbc\uddbd\uddbf\uddc0\ude33-\ude3a\ude3d\ude3f\ude40\udeab\udead\udeb0-\udeb5\udeb7]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf8f-\udf92]|\ud82f[\udc9d\udc9e\udca0-\udca3]|\ud834[\udd67-\udd69\udd73-\udd82\udd85-\udd8b\uddaa-\uddad\ude00-\ude45\udf00-\udf56]|\ud835[\udedb\udf15\udf4f\udf89\udfc3\udfce-\udfff]|\ud83a[\udcd0-\udcd6]|\ud83b[\udef0\udef1]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd00-\udd0c\udd6a\udd6b\udf00-\udf2c\udf30-\udf7d\udf80-\udfce\udfd4-\udff7]|\ud83d[\udc00-\udcfe\udd00-\udd4a\udd50-\udd79\udd7b-\udda3\udda5-\ude42\ude45-\udecf\udee0-\udeec\udef0-\udef3\udf00-\udf73\udf80-\udfd4]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad]"},{}],7:[function(e,t,n){t.exports="[\u05be\u05c0\u05c3\u05c6\u05d0-\u05ea\u05f0-\u05f4\u0608\u060b\u060d\u061b\u061c\u061e-\u064a\u066d-\u066f\u0671-\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u070d\u070f\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07c0-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0830-\u083e\u0840-\u0858\u085e\u08a0-\u08b2\u200f\u202b\u202e\u2067\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbc1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfc\ufe70-\ufe74\ufe76-\ufefc]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc57-\udc9e\udca7-\udcaf\udd00-\udd1b\udd20-\udd39\udd3f\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude33\ude40-\ude47\ude50-\ude58\ude60-\ude9f\udec0-\udee4\udeeb-\udef6\udf00-\udf35\udf40-\udf55\udf58-\udf72\udf78-\udf91\udf99-\udf9c\udfa9-\udfaf]|\ud803[\udc00-\udc48]|\ud83a[\udc00-\udcc4\udcc7-\udccf]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]"},{}]},{},[4])(4)}); diff --git a/src/components/aria_status.jsx b/src/components/aria_status.jsx index 73f2e61..17f5002 100644 --- a/src/components/aria_status.jsx +++ b/src/components/aria_status.jsx @@ -41,6 +41,6 @@ module.exports = React.createClass({ // which confuses screen readers and doesn't cause them to read changes. setTextContent: function(textContent) { // We could set `innerHTML`, but it's better to avoid it. - this.getDOMNode().textContent = textContent || ''; + React.findDOMNode(this).textContent = textContent || ''; } }); diff --git a/src/components/typeahead.jsx b/src/components/typeahead.jsx index 6d209a5..3f3ee17 100644 --- a/src/components/typeahead.jsx +++ b/src/components/typeahead.jsx @@ -345,7 +345,7 @@ module.exports = React.createClass({ }, focus: function() { - this.refs.input.getDOMNode().focus(); + React.findDOMNode(this.refs.input).focus(); }, handleFocus: function(event) { @@ -502,7 +502,7 @@ module.exports = React.createClass({ var _this = this, target = event.target; - if (target !== window && !this.getDOMNode().contains(target)) { + if (target !== window && !React.findDOMNode(this).contains(target)) { _this.hideHint(); _this.hideDropdown(); }