react-input-mask-format 1.0.5 → 2.1.0
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.
- package/README.md +175 -43
- package/dist/index.cjs +935 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +10 -0
- package/dist/index.d.ts +7 -53
- package/dist/index.js +899 -0
- package/dist/index.js.map +1 -0
- package/dist/presets.cjs +86 -0
- package/dist/presets.cjs.map +1 -0
- package/dist/presets.d.cts +18 -0
- package/dist/presets.d.ts +18 -0
- package/dist/presets.js +55 -0
- package/dist/presets.js.map +1 -0
- package/dist/types-Bfu5Jmh0.d.cts +61 -0
- package/dist/types-Bfu5Jmh0.d.ts +61 -0
- package/dist/validators.cjs +99 -0
- package/dist/validators.cjs.map +1 -0
- package/dist/validators.d.cts +6 -0
- package/dist/validators.d.ts +6 -0
- package/dist/validators.js +71 -0
- package/dist/validators.js.map +1 -0
- package/package.json +62 -81
- package/dist/react-input-mask.js +0 -2381
- package/dist/react-input-mask.min.js +0 -1
- package/index.js +0 -7
- package/lib/react-input-mask.development.js +0 -1017
- package/lib/react-input-mask.production.min.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";function t(t){return t&&"object"==typeof t&&"default"in t?t.default:t}var e=require("react"),n=t(e);require("prop-types");var i=t(require("invariant"));function r(){return(r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t}).apply(this,arguments)}function a(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,function(t,e){for(var n=Object.getOwnPropertyNames(e),i=0;i<n.length;i++){var r=n[i],a=Object.getOwnPropertyDescriptor(e,r);a&&a.configurable&&void 0===t[r]&&Object.defineProperty(t,r,a)}}(t,e)}function o(t,e){if(null==t)return{};var n,i,r={},a=Object.keys(t);for(i=0;i<a.length;i++)n=a[i],e.indexOf(n)>=0||(r[n]=t[n]);return r}function l(t){return requestAnimationFrame(t)}function u(t){cancelAnimationFrame(t)}function s(t){var e=t.ownerDocument;return e.hasFocus()&&e.activeElement===t}function c(t){return null==t?void 0:t.ownerDocument}function f(t){var e=function(t){var e;return null==(e=c(t))?void 0:e.defaultView}(t);return!!e&&t instanceof e.HTMLElement}function h(t){return e.useCallback((function(){var e=t.current,n="undefined"!=typeof window&&f(e);if(!e||!n)return null;if("INPUT"!==e.nodeName&&(e=e.querySelector("input")),!e)throw new Error("react-input-mask: inputComponent doesn't contain input node");return e}),[t])}function g(t,n){var i,r,a,o,c=e.useRef({start:null,end:null}),f=h(t),g=e.useCallback((function(){return function(t){var e=t.selectionStart,n=t.selectionEnd;return{start:e,end:n,length:n-e}}(f())}),[f]),v=e.useCallback((function(){return c.current}),[]),d=e.useCallback((function(t){var e=f();e&&s(e)&&(!function(t,e,n){void 0===n&&(n=e),t.setSelectionRange(e,n)}(e,t.start,t.end),c.current=g())}),[f,g]),p=e.useCallback((function(){c.current=g()}),[g]),m=(i=p,r=e.useRef(null),a=e.useCallback((function(){null===r.current&&function t(){i(),r.current=l(t)}()}),[i]),o=e.useCallback((function(){u(r.current),r.current=null}),[]),e.useEffect((function(){r.current&&(o(),a())}),[a,o]),e.useEffect(u,[]),[a,o]),P=m[0],k=m[1];return e.useLayoutEffect((function(){if(n){var t=f();return t.addEventListener("focus",P),t.addEventListener("blur",k),s(t)&&P(),function(){t.removeEventListener("focus",P),t.removeEventListener("blur",k),k()}}})),{getSelection:g,getLastSelection:v,setSelection:d}}function v(t,n){var i=e.useRef(),r=g(i,n),a=r.getSelection,o=r.getLastSelection,l=r.setSelection,u=function(t,n){var i=h(t),r=e.useRef(n);return{getValue:e.useCallback((function(){return i().value}),[i]),getLastValue:e.useCallback((function(){return r.current}),[]),setValue:e.useCallback((function(t){r.current=t;var e=i();e&&(e.value=t)}),[i])}}(i,t),s=u.getValue,c=u.getLastValue,f=u.setValue;return{inputRef:i,getInputState:function(){return{value:s(),selection:a()}},getLastInputState:function(){return{value:c(),selection:o()}},setInputState:function(t){var e=t.value,n=t.selection;f(e),l(n)}}}require("warning");var d=["disabled","onBlur","onChange","onFocus","onMouseDown","readOnly","value"],p={9:/[0-9]/,a:/[A-Za-z]/,"*":/[A-Za-z0-9]/};var m=function(t){var e=this;this.isCharacterAllowedAtPosition=function(t,n){var i=e.maskOptions.maskPlaceholder;return!!e.isCharacterFillingPosition(t,n)||!!i&&i[n]===t},this.isCharacterFillingPosition=function(t,n){var i=e.maskOptions.mask;if(!t||n>=i.length)return!1;if(!e.isPositionEditable(n))return i[n]===t;var r=i[n];return new RegExp(r).test(t)},this.isPositionEditable=function(t){var n=e.maskOptions,i=n.mask,r=n.permanents;return t<i.length&&-1===r.indexOf(t)},this.isValueEmpty=function(t){return t.split("").every((function(t,n){return!e.isPositionEditable(n)||!e.isCharacterFillingPosition(t,n)}))},this.isValueFilled=function(t){return e.getFilledLength(t)===e.maskOptions.lastEditablePosition+1},this.getDefaultSelectionForValue=function(t){var n=e.getFilledLength(t),i=e.getRightEditablePosition(n);return{start:i,end:i}},this.getFilledLength=function(t){return function(t,e){for(var n=t.length-1;n>=0;n--){if(e(t[n],n))return n}return-1}(t.split(""),(function(t,n){return e.isPositionEditable(n)&&e.isCharacterFillingPosition(t,n)}))+1},this.getStringFillingLengthAtPosition=function(t,n){return t.split("").reduce((function(t,n){return e.insertCharacterAtPosition(t,n,t.length)}),function(t,e){void 0===e&&(e=1);for(var n="",i=0;i<e;i++)n+=t;return n}(" ",n)).length-n},this.getLeftEditablePosition=function(t){for(var n=t;n>=0;n--)if(e.isPositionEditable(n))return n;return null},this.getRightEditablePosition=function(t){for(var n=e.maskOptions.mask,i=t;i<n.length;i++)if(e.isPositionEditable(i))return i;return null},this.formatValue=function(t){var n=e.maskOptions,i=n.maskPlaceholder,r=n.mask;if(!i){for(t=e.insertStringAtPosition("",t,0);t.length<r.length&&!e.isPositionEditable(t.length);)t+=r[t.length];return t}return e.insertStringAtPosition(i,t,0)},this.clearRange=function(t,n,i){if(!i)return t;var r=n+i,a=e.maskOptions,o=a.maskPlaceholder,l=a.mask,u=t.split("").map((function(t,i){var a=e.isPositionEditable(i);return!o&&i>=r&&!a?"":i<n||i>=r?t:a?o?o[i]:"":l[i]})).join("");return e.formatValue(u)},this.insertCharacterAtPosition=function(t,n,i){var r=e.maskOptions,a=r.mask,o=r.maskPlaceholder;if(i>=a.length)return t;var l=e.isCharacterAllowedAtPosition(n,i),u=e.isPositionEditable(i),s=e.getRightEditablePosition(i),c=o&&s?n===o[s]:null,f=t.slice(0,i);!l&&u||(t=f+(l?n:a[i]));return l||u||c||(t=e.insertCharacterAtPosition(t,n,i+1)),t},this.insertStringAtPosition=function(t,n,i){var r=e.maskOptions,a=r.mask,o=r.maskPlaceholder;if(!n||i>=a.length)return t;var l=n.split(""),u=e.isValueFilled(t)||!!o,s=t.slice(i);if(t=l.reduce((function(t,n){return e.insertCharacterAtPosition(t,n,t.length)}),t.slice(0,i)),u)t+=s.slice(t.length-i);else if(e.isValueFilled(t))t+=a.slice(t.length).join("");else{t=s.split("").filter((function(t,n){return e.isPositionEditable(i+n)})).reduce((function(t,n){var i=e.getRightEditablePosition(t.length);return null===i?t:(e.isPositionEditable(t.length)||(t+=a.slice(t.length,i).join("")),e.insertCharacterAtPosition(t,n,t.length))}),t)}return t},this.processChange=function(t,n){var i=e.maskOptions,r=i.mask,a=i.prefix,o=i.lastEditablePosition,l=t.value,u=t.selection,s=n.value,c=n.selection,f=l,h="",g=0,v=0,d=Math.min(c.start,u.start);if(u.end>c.start?(h=f.slice(c.start,u.end),v=(g=e.getStringFillingLengthAtPosition(h,d))?c.length:0):f.length<s.length&&(v=s.length-f.length),f=s,v){if(1===v&&!c.length)d=c.start===u.start?e.getRightEditablePosition(u.start):e.getLeftEditablePosition(u.start);f=e.clearRange(f,d,v)}return f=e.insertStringAtPosition(f,h,d),(d+=g)>=r.length?d=r.length:d<a.length&&!g?d=a.length:d>=a.length&&d<o&&g&&(d=e.getRightEditablePosition(d)),{value:f=e.formatValue(f),enteredString:h,selection:{start:d,end:d}}},this.maskOptions=function(t){var e=t.mask,n=t.maskPlaceholder,i=[];if(!e)return{maskPlaceholder:null,mask:null,prefix:null,lastEditablePosition:null,permanents:[]};if("string"==typeof e){var r=!1,a="";e.split("").forEach((function(t){r||"\\"!==t?(!r&&p[t]||i.push(a.length),a+=t,r=!1):r=!0})),e=a.split("").map((function(t,e){return-1===i.indexOf(e)?p[t]:t}))}else e.forEach((function(t,e){"string"==typeof t&&i.push(e)}));n&&(n=1===n.length?e.map((function(t,e){return-1!==i.indexOf(e)?t:n})):n.split(""),i.forEach((function(t){n[t]=e[t]})),n=n.join(""));for(var o=i.filter((function(t,e){return t===e})).map((function(t){return e[t]})).join(""),l=e.length-1;-1!==i.indexOf(l);)l--;return{maskPlaceholder:n,prefix:o,mask:e,lastEditablePosition:l,permanents:i}}(t)},P=function(t){function e(){return t.apply(this,arguments)||this}return a(e,t),e.prototype.render=function(){var t=this.props,e=t.children,i=o(t,["children"]);return n.cloneElement(e,i)},e}(n.Component),k=e.forwardRef((function(t,a){var u=t.alwaysShowMask,f=t.children,g=t.mask,p=t.maskPlaceholder,k=t.beforeMaskedStateChange,b=o(t,["alwaysShowMask","children","mask","maskPlaceholder","beforeMaskedStateChange"]);!function(t){var e=t.mask,n=t.maskPlaceholder;e&&n&&1!==n.length&&n.length!==e.length&&i(!1)}(t);var E,S,C=new m({mask:g,maskPlaceholder:p}),y=!!g,w=!b.disabled&&!b.readOnly,O=null!==t.value&&void 0!==t.value,V=(E=y,S=e.useRef(),e.useEffect((function(){S.current=E})),S.current),F=v(function(t){return""+t}((O?t.value:t.defaultValue)||""),y),L=F.inputRef,A=F.getInputState,R=F.setInputState,x=F.getLastInputState,M=h(L);if(y&&O){var j=M(),D=j&&s(j)||u||t.value?C.formatValue(t.value):t.value;k&&(D=k({nextState:{value:D,selection:{start:null,end:null}}}).value),R(r({},x(),{value:D}))}var I=x(),q=I.selection,B=I.value;e.useLayoutEffect((function(){if(y){var t=s(M()),e=q,n=A(),i=r({},n);if(!O){var a=n.value,o=C.formatValue(a),l=C.isValueEmpty(o);!l||t||u?i.value=o:l&&!t&&(i.value="")}t&&!V?i.selection=C.getDefaultSelectionForValue(i.value):O&&t&&e&&null!==e.start&&null!==e.end&&(i.selection=e),k&&(i=k({currentState:n,nextState:i})),R(i)}}));var N=r({},b,{onFocus:function(e){L.current=e.target;var n=A().value;if(y&&!C.isValueFilled(n)){var i=C.formatValue(n),r=C.getDefaultSelectionForValue(i),a={value:i,selection:r};k&&(i=(a=k({currentState:A(),nextState:a})).value,r=a.selection),R(a),i!==n&&t.onChange&&t.onChange(e),l((function(){R(x())}))}t.onFocus&&t.onFocus(e)},onBlur:function(e){var n=A().value,i=x().value;if(y&&!u&&C.isValueEmpty(i)){var r="",a={value:r,selection:{start:null,end:null}};k&&(r=(a=k({currentState:A(),nextState:a})).value),R(a),r!==n&&t.onChange&&t.onChange(e)}t.onBlur&&t.onBlur(e)},onChange:y&&w?function(e){var n=A(),i=x(),r=C.processChange(n,i);k&&(r=k({currentState:n,previousState:i,nextState:r})),R(r),t.onChange&&t.onChange(e)}:t.onChange,onMouseDown:y&&w?function(e){var n=M(),i=A().value,a=c(n);if(!s(n)&&!C.isValueFilled(i)){var o=e.clientX,l=e.clientY,u=(new Date).getTime();a.addEventListener("mouseup",(function t(e){if(a.removeEventListener("mouseup",t),s(n)){var i=Math.abs(e.clientX-o),c=Math.abs(e.clientY-l),f=Math.max(i,c),h=(new Date).getTime()-u;if(f<=10&&h<=200||f<=5&&h<=300){var g=x(),v=r({},g,{selection:C.getDefaultSelectionForValue(g.value)});R(v)}}}))}t.onMouseDown&&t.onMouseDown(e)}:t.onMouseDown,ref:function(t){L.current=t,!function(t){return"function"==typeof t}(a)?null!==a&&"object"==typeof a&&(a.current=t):a(t)},value:y&&O?B:t.value});return f?(function(t,e){d.filter((function(n){return null!=e.props[n]&&e.props[n]!==t[n]})).length&&i(!1)}(t,f),n.createElement(P,N,f)):n.createElement("input",N)}));k.displayName="InputMask",k.defaultProps={alwaysShowMask:!1,maskPlaceholder:"_"},module.exports=k;
|