diff --git a/dist/react-input-mask.js b/dist/react-input-mask.js index 16de12d..c614efa 100644 --- a/dist/react-input-mask.js +++ b/dist/react-input-mask.js @@ -512,9 +512,7 @@ function (_React$Component) { } return React.createElement("input", _extends({ - ref: function ref(_ref) { - return _this2.input = _ref; - } + ref: this.handleRef }, props, { onFocus: this.onFocus, onBlur: this.onBlur @@ -1055,6 +1053,18 @@ var _initialiseProps = function _initialiseProps() { _this3.setCursorPos(cursorPos); } }); + Object.defineProperty(this, "handleRef", { + configurable: true, + enumerable: true, + writable: true, + value: function value(ref) { + _this3.input = ref; + + if (typeof _this3.props.inputRef === 'function') { + _this3.props.inputRef(ref); + } + } + }); }; return InputElement; diff --git a/dist/react-input-mask.min.js b/dist/react-input-mask.min.js index ff094da..3ff9315 100644 --- a/dist/react-input-mask.min.js +++ b/dist/react-input-mask.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define(["react"],t):e.ReactInputMask=t(e.React)}(this,function(e){"use strict";function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function n(){return(n=Object.assign||function(e){for(var t=1;tr.length&&s(e,t.length-1);)t=t.slice(0,t.length-1);return t.length}for(var a=r.length,o=t.length;o>=r.length;o--){var l=t[o];if(!s(e,o)&&i(e,o,l)){a=o+1;break}}return a}function c(e,t){return u(e,t)===e.mask.length}function f(e,t){var n=e.maskChar,r=e.mask,a=e.prefix;if(!n){for((t=h(e,"",t,0)).length=a?t:s(e,r)?i[r]:o}).join("")}function h(e,t,n,r){var a=e.mask,o=e.maskChar,l=e.prefix,u=n.split(""),p=c(e,t),h=function(t,n){return!o||!s(e,n)||t!==o};return!o&&r>t.length&&(t+=a.slice(t.length,r)),u.every(function(n){for(;c=n,s(e,u=r)&&c!==a[u];){if(r>=t.length&&(t+=a[r]),!h(n,r))return!0;if(++r>=a.length)return!1}var u,c;return!i(e,r,n)&&n!==o||(r=0||(a[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(r,["mask","alwaysShowMask","maskChar","formatChars"]));if(this.maskOptions.mask){if(!a.disabled&&!a.readOnly){["onChange","onKeyDown","onPaste","onMouseDown"].forEach(function(e){a[e]=t[e]})}null!=a.value&&(a.value=this.value)}return e.createElement("input",n({ref:function(e){return t.input=e}},a,{onFocus:this.onFocus,onBlur:this.onBlur}))},s}((e=e&&e.hasOwnProperty("default")?e["default"]:e).Component),b=function(){var n=this;Object.defineProperty(this,"lastCursorPos",{configurable:!0,enumerable:!0,writable:!0,value:null}),Object.defineProperty(this,"focused",{configurable:!0,enumerable:!0,writable:!0,value:!1}),Object.defineProperty(this,"isDOMElement",{configurable:!0,enumerable:!0,writable:!0,value:function(e){return"object"===("undefined"==typeof HTMLElement?"undefined":t(HTMLElement))?(n=e,null!=(r=HTMLElement)&&"undefined"!=typeof Symbol&&r[Symbol.hasInstance]?r[Symbol.hasInstance](n):n instanceof r):1===e.nodeType&&"string"==typeof e.nodeName;var n,r}}),Object.defineProperty(this,"getInputDOMNode",{configurable:!0,enumerable:!0,writable:!0,value:function(){var t=n.input;return t?n.isDOMElement(t)?t:e.findDOMNode(t):null}}),Object.defineProperty(this,"getInputValue",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=n.getInputDOMNode();return e?e.value:null}}),Object.defineProperty(this,"setInputValue",{configurable:!0,enumerable:!0,writable:!0,value:function(e){var t=n.getInputDOMNode();t&&(n.value=e,t.value=e)}}),Object.defineProperty(this,"getLeftEditablePos",{configurable:!0,enumerable:!0,writable:!0,value:function(e){for(var t=e;t>=0;--t)if(!s(n.maskOptions,t))return t;return null}}),Object.defineProperty(this,"getRightEditablePos",{configurable:!0,enumerable:!0,writable:!0,value:function(e){for(var t=n.maskOptions.mask,r=e;r0||"Delete"===t&&n.value.length>s.start))return;n.backspaceOrDeleteRemoval={key:t,selection:n.getSelection()}}}}),Object.defineProperty(this,"onChange",{configurable:!0,enumerable:!0,writable:!0,value:function(e){var t=n.beforePasteState,r=n.maskOptions,a=r.mask,o=r.maskChar,s=r.lastEditablePos,i=r.prefix,l=n.getInputValue();if(t)return n.beforePasteState=null,void n.pasteText(t.value,l,t.selection,e);var c=n.value,g=n.getInputDOMNode();try{"function"==typeof g.matches&&g.matches(":-webkit-autofill")&&(c="")}catch(j){}var b,v,d=n.getSelection(),k=d.end,O=a.length,y=l.length,w=c.length;if(n.backspaceOrDeleteRemoval){var P="Delete"===n.backspaceOrDeleteRemoval.key;if(l=n.value,d=n.backspaceOrDeleteRemoval.selection,k=d.start,n.backspaceOrDeleteRemoval=null,d.length)l=p(n.maskOptions,l,d.start,d.length);else if(d.startw){var C=y-w,D=d.end-C;v=l.substr(D,C),k=D=i.length&&k=f.length)return!1;var t,n;return(i(l,c,e)||e===m)&&c++,ca.length&&s(e,t.length-1);)t=t.slice(0,t.length-1);return t.length}for(var r=a.length,o=t.length;o>=a.length;o--){var l=t[o];if(!s(e,o)&&i(e,o,l)){r=o+1;break}}return r}function f(e,t){return u(e,t)===e.mask.length}function c(e,t){var n=e.maskChar,a=e.mask,r=e.prefix;if(!n){for((t=h(e,"",t,0)).length=r?t:s(e,a)?i[a]:o}).join("")}function h(e,t,n,a){var r=e.mask,o=e.maskChar,l=e.prefix,u=n.split(""),p=f(e,t),h=function(t,n){return!o||!s(e,n)||t!==o};return!o&&a>t.length&&(t+=r.slice(t.length,a)),u.every(function(n){for(;f=n,s(e,u=a)&&f!==r[u];){if(a>=t.length&&(t+=r[a]),!h(n,a))return!0;if(++a>=r.length)return!1}var u,f;return!i(e,a,n)&&n!==o||(a=0||(r[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}(a,["mask","alwaysShowMask","maskChar","formatChars"]));if(this.maskOptions.mask){if(!r.disabled&&!r.readOnly){["onChange","onKeyDown","onPaste","onMouseDown"].forEach(function(e){r[e]=t[e]})}null!=r.value&&(r.value=this.value)}return e.createElement("input",n({ref:this.handleRef},r,{onFocus:this.onFocus,onBlur:this.onBlur}))},s}((e=e&&e.hasOwnProperty("default")?e["default"]:e).Component),b=function(){var n=this;Object.defineProperty(this,"lastCursorPos",{configurable:!0,enumerable:!0,writable:!0,value:null}),Object.defineProperty(this,"focused",{configurable:!0,enumerable:!0,writable:!0,value:!1}),Object.defineProperty(this,"isDOMElement",{configurable:!0,enumerable:!0,writable:!0,value:function(e){return"object"===("undefined"==typeof HTMLElement?"undefined":t(HTMLElement))?(n=e,null!=(a=HTMLElement)&&"undefined"!=typeof Symbol&&a[Symbol.hasInstance]?a[Symbol.hasInstance](n):n instanceof a):1===e.nodeType&&"string"==typeof e.nodeName;var n,a}}),Object.defineProperty(this,"getInputDOMNode",{configurable:!0,enumerable:!0,writable:!0,value:function(){var t=n.input;return t?n.isDOMElement(t)?t:e.findDOMNode(t):null}}),Object.defineProperty(this,"getInputValue",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=n.getInputDOMNode();return e?e.value:null}}),Object.defineProperty(this,"setInputValue",{configurable:!0,enumerable:!0,writable:!0,value:function(e){var t=n.getInputDOMNode();t&&(n.value=e,t.value=e)}}),Object.defineProperty(this,"getLeftEditablePos",{configurable:!0,enumerable:!0,writable:!0,value:function(e){for(var t=e;t>=0;--t)if(!s(n.maskOptions,t))return t;return null}}),Object.defineProperty(this,"getRightEditablePos",{configurable:!0,enumerable:!0,writable:!0,value:function(e){for(var t=n.maskOptions.mask,a=e;a0||"Delete"===t&&n.value.length>s.start))return;n.backspaceOrDeleteRemoval={key:t,selection:n.getSelection()}}}}),Object.defineProperty(this,"onChange",{configurable:!0,enumerable:!0,writable:!0,value:function(e){var t=n.beforePasteState,a=n.maskOptions,r=a.mask,o=a.maskChar,s=a.lastEditablePos,i=a.prefix,l=n.getInputValue();if(t)return n.beforePasteState=null,void n.pasteText(t.value,l,t.selection,e);var f=n.value,g=n.getInputDOMNode();try{"function"==typeof g.matches&&g.matches(":-webkit-autofill")&&(f="")}catch(j){}var b,v,d=n.getSelection(),k=d.end,O=r.length,y=l.length,w=f.length;if(n.backspaceOrDeleteRemoval){var P="Delete"===n.backspaceOrDeleteRemoval.key;if(l=n.value,d=n.backspaceOrDeleteRemoval.selection,k=d.start,n.backspaceOrDeleteRemoval=null,d.length)l=p(n.maskOptions,l,d.start,d.length);else if(d.startw){var C=y-w,R=d.end-C;v=l.substr(R,C),k=R=i.length&&k=c.length)return!1;var t,n;return(i(l,f,e)||e===m)&&f++,f",