primereact
Version:
PrimeReact is an open source UI library for React featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime
2 lines (1 loc) • 26 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),n=require("primereact/api"),t=require("primereact/componentbase"),r=require("primereact/hooks"),u=require("primereact/icons/angledown"),i=require("primereact/icons/angleup"),a=require("primereact/inputtext"),l=require("primereact/ripple"),o=require("primereact/tooltip"),c=require("primereact/utils");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function p(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach(function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}}),n.default=e,Object.freeze(n)}var d=p(e),f=s(n);function m(){return m=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},m.apply(null,arguments)}function b(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function v(e){if(Array.isArray(e))return b(e)}function g(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function y(e,n){if(e){if("string"==typeof e)return b(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?b(e,n):void 0}}function h(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function x(e){return x="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},x(e)}function I(e,n){if("object"!=x(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!=x(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function w(e){var n=I(e,"string");return"symbol"==x(n)?n:n+""}function D(e,n,t){return(n=w(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function O(e){if(Array.isArray(e))return e}function S(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,u,i,a,l=[],o=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=i.call(t)).done)&&(l.push(r.value),l.length!==n);o=!0);}catch(e){c=!0,u=e}finally{try{if(!o&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(c)throw u}}return l}}function R(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(e,n){return O(e)||S(e,n)||y(e,n)||R()}var N=t.ComponentBase.extend({defaultProps:{__TYPE:"InputNumber",__parentMetadata:null,allowEmpty:!0,ariaLabelledBy:null,autoFocus:!1,buttonLayout:"stacked",className:null,currency:void 0,currencyDisplay:void 0,decrementButtonClassName:null,decrementButtonIcon:null,disabled:!1,format:!0,id:null,incrementButtonClassName:null,incrementButtonIcon:null,inputClassName:null,inputId:null,inputMode:null,inputRef:null,inputStyle:null,invalid:!1,variant:null,locale:void 0,localeMatcher:void 0,max:null,maxFractionDigits:void 0,maxLength:null,min:null,minFractionDigits:void 0,mode:"decimal",name:null,onBlur:null,onChange:null,onFocus:null,onKeyDown:null,onKeyUp:null,onValueChange:null,pattern:null,placeholder:null,prefix:null,readOnly:!1,required:!1,roundingMode:void 0,showButtons:!1,size:null,step:1,style:null,suffix:null,tabIndex:null,tooltip:null,tooltipOptions:null,type:"text",useGrouping:!0,value:null,children:void 0},css:{classes:{root:function(e){var n=e.props,t=e.focusedState,r=e.stacked,u=e.horizontal,i=e.vertical;return c.classNames("p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":null!=n.value&&n.value.toString().length>0,"p-inputwrapper-focus":t,"p-inputnumber-buttons-stacked":r,"p-inputnumber-buttons-horizontal":u,"p-inputnumber-buttons-vertical":i,"p-invalid":n.invalid})},input:function(e){var n=e.props,t=e.context;return c.classNames("p-inputnumber-input",{"p-variant-filled":n.variant?"filled"===n.variant:t&&"filled"===t.inputStyle})},buttonGroup:"p-inputnumber-button-group",incrementButton:function(e){return c.classNames("p-inputnumber-button p-inputnumber-button-up p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},incrementIcon:"p-button-icon",decrementButton:function(e){return c.classNames("p-inputnumber-button p-inputnumber-button-down p-button p-button-icon-only p-component",{"p-disabled":e.props.disabled})},decrementIcon:"p-button-icon"},styles:"\n@layer primereact {\n .p-inputnumber {\n display: inline-flex;\n }\n \n .p-inputnumber-button {\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 0 0 auto;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button .p-button-label,\n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button .p-button-label {\n display: none;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-up {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-input {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-button.p-inputnumber-button-down {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: 0;\n padding: 0;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group {\n display: flex;\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-stacked .p-inputnumber-button-group .p-button.p-inputnumber-button {\n flex: 1 1 auto;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-up {\n order: 3;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n }\n \n .p-inputnumber-buttons-horizontal .p-button.p-inputnumber-button-down {\n order: 1;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n \n .p-inputnumber-buttons-vertical {\n flex-direction: column;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-up {\n order: 1;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-buttons-vertical .p-inputnumber-input {\n order: 2;\n border-radius: 0;\n text-align: center;\n }\n \n .p-inputnumber-buttons-vertical .p-button.p-inputnumber-button-down {\n order: 3;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n width: 100%;\n }\n \n .p-inputnumber-input {\n flex: 1 1 auto;\n }\n \n .p-fluid .p-inputnumber {\n width: 100%;\n }\n \n .p-fluid .p-inputnumber .p-inputnumber-input {\n width: 1%;\n }\n \n .p-fluid .p-inputnumber-buttons-vertical .p-inputnumber-input {\n width: 100%;\n }\n}\n"}});function F(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function C(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?F(Object(t),!0).forEach(function(n){D(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):F(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}var j=d.memo(d.forwardRef(function(e,s){var p=r.useMergeProps(),b=d.useContext(n.PrimeReactContext),x=N.getProps(e,b),I=E(d.useState(!1),2),w=I[0],D=I[1],O=C(C({props:x},x.__parentMetadata),{},{state:{focused:w}}),S=N.setMetaData(O),R=S.ptm,F=S.cx;t.useHandleStyle(N.css.styles,S.isUnstyled,{name:"inputnumber"});var j=d.useRef(null),P=d.useRef(null),M=d.useRef(null),k=d.useRef(null),A=d.useRef(null),B=d.useRef(null),U=d.useRef(null),K=d.useRef(null),L=d.useRef(null),T=d.useRef(null),_=d.useRef(null),H=d.useRef(null),q=d.useRef(null),G=d.useRef(null),z=d.useRef(null),$=d.useRef(null),V=d.useRef(null),W=d.useRef(null),X=d.useRef(!1),J=x.locale||b&&b.locale||f.default.locale,Y=x.showButtons&&"stacked"===x.buttonLayout,Q=x.showButtons&&"horizontal"===x.buttonLayout,Z=x.showButtons&&"vertical"===x.buttonLayout,ee=x.inputMode||("decimal"!==x.mode||x.minFractionDigits||x.maxFractionDigits?"decimal":"numeric"),ne=function(){var e,n;return{localeMatcher:x.localeMatcher,style:x.mode,currency:x.currency,currencyDisplay:x.currencyDisplay,useGrouping:x.useGrouping,minimumFractionDigits:null!==(e=x.minFractionDigits)&&void 0!==e?e:void 0,maximumFractionDigits:null!==(n=x.maxFractionDigits)&&void 0!==n?n:void 0,roundingMode:x.roundingMode}},te=function(){A.current=new Intl.NumberFormat(J,ne());var e,n=(e=new Intl.NumberFormat(J,{useGrouping:!1}).format(9876543210),v(e)||g(e)||y(e)||h()).reverse(),t=new Map(n.map(function(e,n){return[e,n]}));T.current=new RegExp("[".concat(n.join(""),"]"),"g"),_.current=ae(),H.current=le(),q.current=oe(),G.current=ie(),z.current=ue(),$.current=se(),V.current=ce(),W.current=function(e){return t.get(e)}},re=function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},ue=function(){return new Intl.NumberFormat(J,{useGrouping:!1}).format(1.1).trim().replace(T.current,"")},ie=function(){var e=new Intl.NumberFormat(J,C(C({},ne()),{},{useGrouping:!1}));return new RegExp("[".concat(e.format(1.1).replace(q.current,"").trim().replace(T.current,""),"]"),"g")},ae=function(){var e=new Intl.NumberFormat(J,{useGrouping:!0});return B.current=e.format(1e6).trim().replace(T.current,"").charAt(0),new RegExp("[".concat(B.current,"]"),"g")},le=function(){var e=new Intl.NumberFormat(J,{useGrouping:!1});return new RegExp("[".concat(e.format(-1).trim().replace(T.current,""),"]"),"g")},oe=function(){if(x.currency){var e=new Intl.NumberFormat(J,{style:"currency",currency:x.currency,currencyDisplay:x.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:x.roundingMode});return new RegExp("[".concat(e.format(1).replace(/\s/g,"").replace(T.current,"").replace(_.current,""),"]"),"g")}return new RegExp("[]","g")},ce=function(){if(x.prefix)U.current=x.prefix;else{var e=new Intl.NumberFormat(J,{style:x.mode,currency:x.currency,currencyDisplay:x.currencyDisplay});U.current=e.format(1).split("1")[0]}return new RegExp("".concat(re(U.current||"")),"g")},se=function(){if(x.suffix)K.current=x.suffix;else{var e=new Intl.NumberFormat(J,{style:x.mode,currency:x.currency,currencyDisplay:x.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:x.roundingMode});K.current=e.format(1).split("1")[1]}return new RegExp("".concat(re(K.current||"")),"g")},pe=function(e){if(null!=e){if("-"===e)return e;if(x.format){var n=new Intl.NumberFormat(J,ne()).format(e);return x.prefix&&(n=x.prefix+n),x.suffix&&(n+=x.suffix),n}return e.toString()}return""},de=function(e){var n=e.replace($.current,"").replace(V.current,"").trim().replace(/\s/g,"").replace(q.current,"").replace(_.current,"").replace(H.current,"-").replace(G.current,".").replace(T.current,W.current);if(n){if("-"===n)return n;var t=+n;return isNaN(t)?null:t}return null};function fe(e){if(!isFinite(e))return 0;var n=String(e);if(n.toLowerCase().includes("e")){var t=E(n.split("e"),2),r=t[0],u=parseInt(t[1],10),i=(r.split(".")[1]||"").length;return u<0?i+Math.abs(u):Math.max(0,i-u)}return(n.split(".")[1]||"").length}var me=function(e,n){if(e=Number(e),n=Number(n),!isFinite(e)||!isFinite(n))return NaN;var t=fe(e),r=fe(n),u=Math.min(Math.max(t,r),15),i=Math.pow(10,u),a=Number.MAX_SAFE_INTEGER;if(Math.abs(e)*i>a||Math.abs(n)*i>a){var l=e+n,o=Math.pow(10,15);return Math.round(l*o)/o}return Math.round(e*i+n*i)/i},be=function(e,n,t){var r=n||500;rn(),M.current=setTimeout(function(){be(e,40,t)},r),ve(e,t)},ve=function(e,n){if(P.current){var t=x.step*n,r=de(P.current.value)||0,u=Ve(me(r,t));if(x.maxLength&&x.maxLength<pe(u).length)return;ze(e,r,u),!c.DomHandler.isTouchDevice()&&Xe(u,null,"spin"),en(e,u)}},ge=function(){x.disabled||x.readOnly||rn()},ye=function(){x.disabled||x.readOnly||rn()},he=function(){x.disabled||x.readOnly||rn()},xe=function(){x.disabled||x.readOnly||rn()},Ie=function(){x.disabled||x.readOnly||rn()},we=function(){x.disabled||x.readOnly||rn()},De=function(e){x.disabled||x.readOnly||(L.current&&(e.target.value=k.current,L.current=!1),c.DomHandler.isAndroid()||"insertText"===e.nativeEvent.inputType&&/\D/.test(e.nativeEvent.data)&&(e.target.value=k.current))},Oe=function(e){if(c.DomHandler.isAndroid()&&!x.disabled&&!x.readOnly&&(!x.onKeyUp||(x.onKeyUp(e),!e.defaultPrevented))){var n=e.which||e.keyCode;13!==n&&e.preventDefault();var t=String.fromCharCode(n),r=Fe(t),u=Ee(t);48<=n&&n<=57||u||r?ke(e,t,{isDecimalSign:r,isMinusSign:u}):qe(e,e.target.value,null,"delete-single")}},Se=function(e){if(!x.disabled&&!x.readOnly)if(e.altKey||e.ctrlKey||e.metaKey)L.current="x"!==e.key.toLowerCase()||!e.ctrlKey&&!e.metaKey;else if(!(x.onKeyDown&&(x.onKeyDown(e),e.defaultPrevented)||(k.current=e.target.value,c.DomHandler.isAndroid()))){var n=e.target.selectionStart,t=e.target.selectionEnd,r=e.target.value,u=null;switch(e.code){case"ArrowUp":ve(e,1),e.preventDefault();break;case"ArrowDown":ve(e,-1),e.preventDefault();break;case"ArrowLeft":_e(r.charAt(n-1))||e.preventDefault();break;case"ArrowRight":_e(r.charAt(n))||e.preventDefault();break;case"Tab":case"Enter":case"NumpadEnter":u=Ve(de(r)),P.current.value=pe(u),P.current.setAttribute("aria-valuenow",u),en(e,u);break;case"Backspace":if(e.preventDefault(),n===t){var i=r.charAt(n-1);if(_e(i)){var a=Pe(r),l=a.decimalCharIndex,o=a.decimalCharIndexWithoutPrefix,s=Ze(r);if(_.current.test(i))_.current.lastIndex=0,u=r.slice(0,n-2)+r.slice(n-1);else if(G.current.test(i))G.current.lastIndex=0,s?P.current.setSelectionRange(n-1,n-1):u=r.slice(0,n-1)+r.slice(n);else if(l>0&&n>l){var p=Ce()&&(x.minFractionDigits||0)<s?"":"0";u=r.slice(0,n-1)+p+r.slice(n)}else 1===o?(u=r.slice(0,n-1)+"0"+r.slice(n),u=de(u)>0?u:""):u=r.slice(0,n-1)+r.slice(n)}else if(q.current.test(i)){var d=Me(r),f=d.minusCharIndex;f===d.currencyCharIndex-1&&(u=r.slice(0,f)+r.slice(n))}qe(e,u,null,"delete-single")}else u=Ue(r,n,t),qe(e,u,null,"delete-range");break;case"Delete":if(e.preventDefault(),n===t){var m=r.charAt(n),b=Pe(r),v=b.decimalCharIndex,g=b.decimalCharIndexWithoutPrefix;if(_e(m)){var y=Ze(r);if(_.current.test(m))_.current.lastIndex=0,u=r.slice(0,n)+r.slice(n+2);else if(G.current.test(m))G.current.lastIndex=0,y?P.current.setSelectionRange(n+1,n+1):u=r.slice(0,n)+r.slice(n+1);else if(v>0&&n>v){var h=Ce()&&(x.minFractionDigits||0)<y?"":"0";u=r.slice(0,n)+h+r.slice(n+1)}else 1===g?(u=r.slice(0,n)+"0"+r.slice(n+1),u=de(u)>0?u:""):u=r.slice(0,n)+r.slice(n+1)}qe(e,u,null,"delete-back-single")}else u=Ue(r,n,t),qe(e,u,null,"delete-range");break;case"End":e.preventDefault(),c.ObjectUtils.isEmpty(x.max)||en(e,x.max);break;case"Home":e.preventDefault(),c.ObjectUtils.isEmpty(x.min)||en(e,x.min);break;default:e.preventDefault();var I=e.key;if(I){"."===I&&(I=z.current);var w=Fe(I),D=Ee(I);(Number(I)>=0&&Number(I)<=9||D||w)&&ke(e,I,{isDecimalSign:w,isMinusSign:D})}}}},Re=function(e){if(e.preventDefault(),!x.disabled&&!x.readOnly){var n=(e.clipboardData||window.clipboardData).getData("Text");if(("integeronly"!==x.inputId||!/[^\d-]/.test(n))&&n){var t=de(n);if(null!=t)if(je(t)){var r=pe(t);P.current.value=r,en(e,t)}else ke(e,t.toString())}}},Ee=function(e){return!(!H.current.test(e)&&"-"!==e)&&(H.current.lastIndex=0,!0)},Ne=function(e){return je(e)?e.toString().replace(/\.(?=[^.]*$)/,z.current):e},Fe=function(e){return!(!G.current.test(e)&&!je(e))&&(G.current.lastIndex=0,!0)},Ce=function(){return"decimal"===x.mode},je=function(e){var n=e;"string"!=typeof n&&(n=new Intl.NumberFormat(J,ne()).format(e));var t=de(n);return null!==t&&t%1!=0},Pe=function(e){var n=e.search(G.current);G.current.lastIndex=0;var t=e.replace(V.current,"").trim().replace(/\s/g,"").replace(q.current,"").search(G.current);return G.current.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:t}},Me=function(e){var n=e.search(G.current);G.current.lastIndex=0;var t=e.search(H.current);H.current.lastIndex=0;var r=e.search($.current);$.current.lastIndex=0;var u=e.search(q.current);return 0===u&&U.current&&U.current.length>1&&(u=U.current.trim().length),q.current.lastIndex=0,{decimalCharIndex:n,minusCharIndex:t,suffixCharIndex:r,currencyCharIndex:u}},ke=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(H.current);if(H.current.lastIndex=0,c.ObjectUtils.isEmpty(x.min)||x.min<0||-1===r){var u,i=P.current.selectionStart,a=P.current.selectionEnd,l=P.current.value.trim(),o=Me(l),s=o.decimalCharIndex,p=o.minusCharIndex,d=o.suffixCharIndex,f=o.currencyCharIndex,m=A.current.resolvedOptions().maximumFractionDigits,b=x.min||x.max||x.suffix||x.prefix;if(t.isMinusSign)0!==i&&i!==f+1||(u=l,(-1===p||0!==a)&&(u=Be(l,n,0,a)),qe(e,u,n,"insert"));else if(t.isDecimalSign){if(s>0&&i===s)qe(e,l,n,"insert");else if(s>i&&s<a)u=Be(l,n,i,a),qe(e,u,n,"insert");else if(-1===s&&(m||x.maxFractionDigits)){("numeric"!==ee||"numeric"===ee&&b)&&(u=Be(l,n,i,a),qe(e,u,n,"insert"))}}else{var v=i!==a?"range-insert":"insert";if(s>0&&i>s){if(i+n.length-(s+1)<=m){var g=f>=i?f-1:d>=i?d:l.length;u=l.slice(0,i)+n+l.slice(i+n.length,g)+l.slice(g),qe(e,u,n,v)}}else u=Be(l,n,i,a),qe(e,u,n,v)}}},Ae=function(e){return e?e.replace($.current,"").trim().replace(/\s/g,"").replace(q.current,""):e},Be=function(e,n,t,r){if(2===(Fe(n)?n:n.split(G.current)).length){var u=e.slice(t,r).search(G.current);return G.current.lastIndex=0,u>0?e.slice(0,t)+pe(n)+Ae(e).slice(r):e||pe(n)}if(Fe(n)&&0===e.length)return pe("0.");if(r-t===e.length)return pe(n);if(0===t){var i=c.ObjectUtils.isLetter(e[r])?r-1:r;return n+e.slice(i)}if(r===e.length)return e.slice(0,t)+n;var a=e.slice(t,r),l=/\s$/.test(a)?" ":"";return e.slice(0,t)+n+l+e.slice(r)},Ue=function(e,n,t){return t-n===e.length?"":0===n?e.slice(t):t===e.length?e.slice(0,n):e.slice(0,n)+e.slice(t)},Ke=function(){var e=P.current.selectionStart,n=P.current.value,t=n.length,r=null,u=(U.current||"").length,i=(n=n.replace(V.current,"")).charAt(e-=u);if(_e(i))return e+u;for(var a=e-1;a>=0;){if(i=n.charAt(a),_e(i)){r=a+u;break}a--}if(null!==r)P.current.setSelectionRange(r+1,r+1);else{for(a=e;a<t;){if(i=n.charAt(a),_e(i)){r=a+u;break}a++}null!==r&&P.current.setSelectionRange(r,r)}return r||0},Le=function(){X.current=!0},Te=function(){Ke()},_e=function(e){return!(1!==e.length||!(T.current.test(e)||G.current.test(e)||_.current.test(e)||H.current.test(e)))&&(He(),!0)},He=function(){T.current.lastIndex=0,G.current.lastIndex=0,_.current.lastIndex=0,H.current.lastIndex=0},qe=function(e,n,t,r){var u=P.current.value,i=null;null!=n&&(i=Ge(de(n)),Xe(i,t,r,n),ze(e,u,i))},Ge=function(e){return e||x.allowEmpty?e:x.min||0},ze=function(e,n,t){x.onChange&&$e(n,t)&&x.onChange({originalEvent:e,value:t})},$e=function(e,n){return null===n&&null!==e||null!=n&&n!==("string"==typeof e?de(e):e)},Ve=function(e){return"-"===e?null:We(e)},We=function(e){return c.ObjectUtils.isEmpty(e)?null:null!==x.min&&e<x.min?x.min:null!==x.max&&e>x.max?x.max:e},Xe=function(e,n,t,r){n=n||"";var u=P.current,i=u.value,a=pe(e),l=i.length;if(a!==r&&(a=Qe(a,r)),0===l){u.value=a,u.setSelectionRange(0,0);var o=Ke()+n.length+(Fe(n)?1:0);u.setSelectionRange(o,o)}else{var c=u.selectionStart,s=u.selectionEnd;if(x.maxLength&&x.maxLength<a.length)return;u.value=a;var p=a.length;if("range-insert"===t){var d=de((i||"").slice(0,c)),f=(null!==d?d.toString():"").split("").join("(".concat(B.current,")?")),m=new RegExp(f,"g");m.test(a);var b=n.split("").join("(".concat(B.current,")?")),v=new RegExp(b,"g");v.test(a.slice(m.lastIndex)),u.setSelectionRange(s=m.lastIndex+v.lastIndex,s)}else if(p===l)if("insert"===t||"delete-back-single"===t){var g=s;"0"===n?g=s+1:g+=Number(Fe(e)||Fe(n)),u.setSelectionRange(g,g)}else"delete-single"===t?u.setSelectionRange(s-1,s-1):"delete-range"!==t&&"spin"!==t||u.setSelectionRange(s,s);else if("delete-back-single"===t){var y=i.charAt(s-1),h=i.charAt(s),I=l-p,w=_.current.test(h);w&&1===I?s+=1:!w&&_e(y)&&(s+=-1*I+1),_.current.lastIndex=0,u.setSelectionRange(s,s)}else if("-"===i&&"insert"===t){u.setSelectionRange(0,0);var D=Ke()+n.length+1;u.setSelectionRange(D,D)}else u.setSelectionRange(s+=p-l,s)}u.setAttribute("aria-valuenow",e)},Je=function(e){e=Ge(e);var n=P.current,t=n.value,r=Ye(e);t!==r&&(n.value=r,n.setAttribute("aria-valuenow",e))},Ye=function(e){return pe(Ge(e))},Qe=function(e,n){if(e&&n){var t=n.search(G.current);G.current.lastIndex=0;var r=Ne(e).split(G.current)[0].replace($.current,"").trim();return-1!==t?r+n.slice(t):e}return e},Ze=function(e){if(e){var n=e.split(G.current);if(2===n.length)return Ae(n[1]).length}return 0},en=function(e,n){x.onValueChange&&x.onValueChange({originalEvent:e,value:n,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:x.name,id:x.id,value:n}})},nn=function(e){if(D(!0),x.onFocus&&x.onFocus(e),(x.suffix||x.currency||x.prefix)&&P.current&&!X.current){var n=P.current.value;P.current.setSelectionRange((U.current||"").length,0===n.length?0:n.length-(K.current||"").length)}},tn=function(e){if(D(!1),X.current=!1,P.current){var n=P.current.value;if($e(n,x.value)){var t=Ve(de(n));Je(t),en(e,t)}}x.onBlur&&x.onBlur(e)},rn=function(){M.current&&clearInterval(M.current)},un=function(){var e=We(x.value),n=P.current.value;Je(x.format?e:Ne(e));var t=Ve(x.value);null!==x.value&&n!==t&&(en(null,t),ze(null,n,t))},an=function(){return A.current};d.useImperativeHandle(s,function(){return{props:x,focus:function(){return c.DomHandler.focus(P.current)},getFormatter:an,getElement:function(){return j.current},getInput:function(){return P.current}}}),d.useEffect(function(){c.ObjectUtils.combinedRefs(P,x.inputRef)},[P,x.inputRef]),r.useUnmountEffect(function(){rn()}),r.useMountEffect(function(){te();var e=Ve(x.value);null!==x.value&&x.value!==e&&en(null,e)}),r.useUpdateEffect(function(){te(),un()},[J,x.locale,x.localeMatcher,x.mode,x.currency,x.currencyDisplay,x.useGrouping,x.minFractionDigits,x.maxFractionDigits,x.suffix,x.prefix]),r.useUpdateEffect(function(){un()},[x.value]),r.useUpdateEffect(function(){x.disabled&&rn()},[x.disabled]);var ln,on,cn,sn,pn,dn=function(){var e=p({className:F("incrementIcon")},R("incrementIcon")),n=c.IconUtils.getJSXIcon(x.incrementButtonIcon||d.createElement(i.AngleUpIcon,e),C({},e),{props:x}),t=p({type:"button",className:c.classNames(x.incrementButtonClassName,F("incrementButton")),onPointerLeave:ye,onPointerDown:function(e){return n=e,void(x.disabled||x.readOnly||(c.DomHandler.isTouchDevice()||c.DomHandler.focus(P.current,x.autoFocus),be(n,null,1),n.preventDefault()));var n},onPointerUp:ge,onKeyDown:function(e){return n=e,void(x.disabled||x.readOnly||32!==n.keyCode&&13!==n.keyCode||be(n,null,1));var n},onKeyUp:he,disabled:x.disabled,tabIndex:-1,"aria-hidden":!0},R("incrementButton"));return d.createElement("button",t,n,d.createElement(l.Ripple,null))},fn=function(){var e=p({className:F("decrementIcon")},R("decrementIcon")),n=c.IconUtils.getJSXIcon(x.decrementButtonIcon||d.createElement(u.AngleDownIcon,e),C({},e),{props:x}),t=p({type:"button",className:c.classNames(x.decrementButtonClassName,F("decrementButton")),onPointerLeave:Ie,onPointerDown:function(e){return n=e,void(x.disabled||x.readOnly||(c.DomHandler.isTouchDevice()||c.DomHandler.focus(P.current,x.autoFocus),be(n,null,-1),n.preventDefault()));var n},onPointerUp:xe,onKeyDown:function(e){return n=e,void(x.disabled||x.readOnly||32!==n.keyCode&&13!==n.keyCode||be(n,null,-1));var n},onKeyUp:we,disabled:x.disabled,tabIndex:-1,"aria-hidden":!0},R("decrementButton"));return d.createElement("button",t,n,d.createElement(l.Ripple,null))},mn=c.ObjectUtils.isNotEmpty(x.tooltip),bn=N.getOtherProps(x),vn=c.ObjectUtils.reduceKeys(bn,c.DomHandler.DATA_PROPS),gn=c.ObjectUtils.reduceKeys(bn,c.DomHandler.ARIA_PROPS),yn=(ln=c.classNames(x.inputClassName,F("input",{context:b})),on=Ye(x.value),d.createElement(a.InputText,m({ref:P,id:x.inputId,style:x.inputStyle,role:"spinbutton",className:ln,defaultValue:on,type:x.type,size:x.size,tabIndex:x.tabIndex,inputMode:ee,maxLength:x.maxLength,disabled:x.disabled,required:x.required,pattern:x.pattern,placeholder:x.placeholder,readOnly:x.readOnly,name:x.name,autoFocus:x.autoFocus,onKeyDown:Se,onKeyPress:Oe,onInput:De,onClick:Te,onPointerDown:Le,onBlur:tn,onFocus:nn,onPaste:Re,min:x.min,max:x.max,"aria-valuemin":x.min,"aria-valuemax":x.max,"aria-valuenow":x.value},gn,vn,{pt:R("input"),unstyled:x.unstyled,__parentMetadata:{parent:O}}))),hn=(cn=x.showButtons&&dn(),sn=x.showButtons&&fn(),pn=p({className:F("buttonGroup")},R("buttonGroup")),Y?d.createElement("span",pn,cn,sn):d.createElement(d.Fragment,null,cn,sn)),xn=p({id:x.id,className:c.classNames(x.className,F("root",{focusedState:w,stacked:Y,horizontal:Q,vertical:Z})),style:x.style},bn,R("root"));return d.createElement(d.Fragment,null,d.createElement("span",m({ref:j},xn),yn,hn),mn&&d.createElement(o.Tooltip,m({target:j,content:x.tooltip,pt:R("tooltip")},x.tooltipOptions)))}));j.displayName="InputNumber",exports.InputNumber=j;