UNPKG

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) 25.4 kB
"use strict";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 v(e)||g(e)||y(e)||h()}function I(e){return I="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},I(e)}function w(e,n){if("object"!=I(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,n||"default");if("object"!=I(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}function D(e){var n=w(e,"string");return"symbol"==I(n)?n:n+""}function O(e,n,t){return(n=D(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function S(e){if(Array.isArray(e))return e}function R(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 E(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}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 j(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?j(Object(t),!0).forEach((function(n){O(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):j(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var P=d.memo(d.forwardRef((function(e,s){var p,b,v=r.useMergeProps(),g=d.useContext(n.PrimeReactContext),h=N.getProps(e,g),I=d.useState(!1),w=(b=2,S(p=I)||R(p,b)||y(p,b)||E()),D=w[0],O=w[1],j=C(C({props:h},h.__parentMetadata),{},{state:{focused:D}}),P=N.setMetaData(j),F=P.ptm,k=P.cx;t.useHandleStyle(N.css.styles,P.isUnstyled,{name:"inputnumber"});var A=d.useRef(null),M=d.useRef(null),B=d.useRef(null),U=d.useRef(null),K=d.useRef(null),L=d.useRef(null),T=d.useRef(null),H=d.useRef(null),_=d.useRef(null),q=d.useRef(null),z=d.useRef(null),G=d.useRef(null),$=d.useRef(null),V=d.useRef(null),W=d.useRef(null),J=d.useRef(null),X=d.useRef(null),Y=d.useRef(null),Q=d.useRef(!1),Z=h.locale||g&&g.locale||f.default.locale,ee=h.showButtons&&"stacked"===h.buttonLayout,ne=h.showButtons&&"horizontal"===h.buttonLayout,te=h.showButtons&&"vertical"===h.buttonLayout,re=h.inputMode||("decimal"!==h.mode||h.minFractionDigits?"decimal":"numeric"),ue=function(){var e,n;return{localeMatcher:h.localeMatcher,style:h.mode,currency:h.currency,currencyDisplay:h.currencyDisplay,useGrouping:h.useGrouping,minimumFractionDigits:null!==(e=h.minFractionDigits)&&void 0!==e?e:void 0,maximumFractionDigits:null!==(n=h.maxFractionDigits)&&void 0!==n?n:void 0,roundingMode:h.roundingMode}},ie=function(){K.current=new Intl.NumberFormat(Z,ue());var e=x(new Intl.NumberFormat(Z,{useGrouping:!1}).format(9876543210)).reverse(),n=new Map(e.map((function(e,n){return[e,n]})));q.current=new RegExp("[".concat(e.join(""),"]"),"g"),z.current=ce(),G.current=se(),$.current=pe(),V.current=oe(),W.current=le(),J.current=fe(),X.current=de(),Y.current=function(e){return n.get(e)}},ae=function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},le=function(){return new Intl.NumberFormat(Z,{useGrouping:!1}).format(1.1).trim().replace(q.current,"")},oe=function(){var e=new Intl.NumberFormat(Z,C(C({},ue()),{},{useGrouping:!1}));return new RegExp("[".concat(e.format(1.1).replace($.current,"").trim().replace(q.current,""),"]"),"g")},ce=function(){var e=new Intl.NumberFormat(Z,{useGrouping:!0});return L.current=e.format(1e6).trim().replace(q.current,"").charAt(0),new RegExp("[".concat(L.current,"]"),"g")},se=function(){var e=new Intl.NumberFormat(Z,{useGrouping:!1});return new RegExp("[".concat(e.format(-1).trim().replace(q.current,""),"]"),"g")},pe=function(){if(h.currency){var e=new Intl.NumberFormat(Z,{style:"currency",currency:h.currency,currencyDisplay:h.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:h.roundingMode});return new RegExp("[".concat(e.format(1).replace(/\s/g,"").replace(q.current,"").replace(z.current,""),"]"),"g")}return new RegExp("[]","g")},de=function(){if(h.prefix)T.current=h.prefix;else{var e=new Intl.NumberFormat(Z,{style:h.mode,currency:h.currency,currencyDisplay:h.currencyDisplay});T.current=e.format(1).split("1")[0]}return new RegExp("".concat(ae(T.current||"")),"g")},fe=function(){if(h.suffix)H.current=h.suffix;else{var e=new Intl.NumberFormat(Z,{style:h.mode,currency:h.currency,currencyDisplay:h.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:h.roundingMode});H.current=e.format(1).split("1")[1]}return new RegExp("".concat(ae(H.current||"")),"g")},me=function(e){if(null!=e){if("-"===e)return e;if(h.format){var n=new Intl.NumberFormat(Z,ue()).format(e);return h.prefix&&(n=h.prefix+n),h.suffix&&(n+=h.suffix),n}return e.toString()}return""},be=function(e){var n=e.replace(J.current,"").replace(X.current,"").trim().replace(/\s/g,"").replace($.current,"").replace(z.current,"").replace(G.current,"-").replace(V.current,".").replace(q.current,Y.current);if(n){if("-"===n)return n;var t=+n;return isNaN(t)?null:t}return null},ve=function(e,n,t){var r=n||500;un(),B.current=setTimeout((function(){ve(e,40,t)}),r),ge(e,t)},ge=function(e,n){if(M.current){var t=h.step*n,r=be(M.current.value)||0,u=We(r+t);if(h.maxLength&&h.maxLength<me(u).length)return;$e(e,r,u),!c.DomHandler.isTouchDevice()&&Xe(u,null,"spin"),nn(e,u)}},ye=function(){h.disabled||h.readOnly||un()},he=function(){h.disabled||h.readOnly||un()},xe=function(){h.disabled||h.readOnly||un()},Ie=function(){h.disabled||h.readOnly||un()},we=function(){h.disabled||h.readOnly||un()},De=function(){h.disabled||h.readOnly||un()},Oe=function(e){h.disabled||h.readOnly||(_.current&&(e.target.value=U.current,_.current=!1),c.DomHandler.isAndroid()||"insertText"===e.nativeEvent.inputType&&/\D/.test(e.nativeEvent.data)&&(e.target.value=U.current))},Se=function(e){if(c.DomHandler.isAndroid()&&!h.disabled&&!h.readOnly&&(!h.onKeyUp||(h.onKeyUp(e),!e.defaultPrevented))){var n=e.which||e.keyCode;13!==n&&e.preventDefault();var t=String.fromCharCode(n),r=Ce(t),u=Ne(t);48<=n&&n<=57||u||r?Me(e,t,{isDecimalSign:r,isMinusSign:u}):ze(e,e.target.value,null,"delete-single")}},Re=function(e){if(!h.disabled&&!h.readOnly)if(e.altKey||e.ctrlKey||e.metaKey)_.current="x"!==e.key.toLowerCase()||!e.ctrlKey&&!e.metaKey;else if(!(h.onKeyDown&&(h.onKeyDown(e),e.defaultPrevented)||(U.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":ge(e,1),e.preventDefault();break;case"ArrowDown":ge(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=We(be(r)),M.current.value=me(u),M.current.setAttribute("aria-valuenow",u),nn(e,u);break;case"Backspace":if(e.preventDefault(),n===t){var i=r.charAt(n-1);if(_e(i)){var a=ke(r),l=a.decimalCharIndex,o=a.decimalCharIndexWithoutPrefix,s=en(r);if(z.current.test(i))z.current.lastIndex=0,u=r.slice(0,n-2)+r.slice(n-1);else if(V.current.test(i))V.current.lastIndex=0,s?M.current.setSelectionRange(n-1,n-1):u=r.slice(0,n-1)+r.slice(n);else if(l>0&&n>l){var p=Pe()&&(h.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=be(u)>0?u:""):u=r.slice(0,n-1)+r.slice(n)}else if($.current.test(i)){var d=Ae(r),f=d.minusCharIndex;f===d.currencyCharIndex-1&&(u=r.slice(0,f)+r.slice(n))}ze(e,u,null,"delete-single")}else u=Ke(r,n,t),ze(e,u,null,"delete-range");break;case"Delete":if(e.preventDefault(),n===t){var m=r.charAt(n),b=ke(r),v=b.decimalCharIndex,g=b.decimalCharIndexWithoutPrefix;if(_e(m)){var y=en(r);if(z.current.test(m))z.current.lastIndex=0,u=r.slice(0,n)+r.slice(n+2);else if(V.current.test(m))V.current.lastIndex=0,y?M.current.setSelectionRange(n+1,n+1):u=r.slice(0,n)+r.slice(n+1);else if(v>0&&n>v){var x=Pe()&&(h.minFractionDigits||0)<y?"":"0";u=r.slice(0,n)+x+r.slice(n+1)}else 1===g?(u=r.slice(0,n)+"0"+r.slice(n+1),u=be(u)>0?u:""):u=r.slice(0,n)+r.slice(n+1)}ze(e,u,null,"delete-back-single")}else u=Ke(r,n,t),ze(e,u,null,"delete-range");break;case"End":e.preventDefault(),c.ObjectUtils.isEmpty(h.max)||nn(e,h.max);break;case"Home":e.preventDefault(),c.ObjectUtils.isEmpty(h.min)||nn(e,h.min);break;default:e.preventDefault();var I=e.key;if(I){var w=Ce(I),D=Ne(I);(Number(I)>=0&&Number(I)<=9||D||w)&&Me(e,I,{isDecimalSign:w,isMinusSign:D})}}}},Ee=function(e){if(e.preventDefault(),!h.disabled&&!h.readOnly){var n=(e.clipboardData||window.clipboardData).getData("Text");if(n){var t=be(n);if(null!=t)if(Fe(t)){var r=me(t);M.current.value=r,nn(e,t)}else Me(e,t.toString())}}},Ne=function(e){return!(!G.current.test(e)&&"-"!==e)&&(G.current.lastIndex=0,!0)},je=function(e){return Fe(e)?e.toString().replace(/\.(?=[^.]*$)/,W.current):e},Ce=function(e){return!(!V.current.test(e)&&!Fe(e))&&(V.current.lastIndex=0,!0)},Pe=function(){return"decimal"===h.mode},Fe=function(e){var n=new Intl.NumberFormat(Z,ue()),t=be(n.format(e));return null!==t&&t%1!=0},ke=function(e){var n=e.search(V.current);V.current.lastIndex=0;var t=e.replace(X.current,"").trim().replace(/\s/g,"").replace($.current,"").search(V.current);return V.current.lastIndex=0,{decimalCharIndex:n,decimalCharIndexWithoutPrefix:t}},Ae=function(e){var n=e.search(V.current);V.current.lastIndex=0;var t=e.search(G.current);G.current.lastIndex=0;var r=e.search(J.current);J.current.lastIndex=0;var u=e.search($.current);return 0===u&&T.current&&T.current.length>1&&(u=T.current.trim().length),$.current.lastIndex=0,{decimalCharIndex:n,minusCharIndex:t,suffixCharIndex:r,currencyCharIndex:u}},Me=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{isDecimalSign:!1,isMinusSign:!1},r=n.search(G.current);if(G.current.lastIndex=0,c.ObjectUtils.isEmpty(h.min)||h.min<0||-1===r){var u,i=M.current.selectionStart,a=M.current.selectionEnd,l=M.current.value.trim(),o=Ae(l),s=o.decimalCharIndex,p=o.minusCharIndex,d=o.suffixCharIndex,f=o.currencyCharIndex,m=K.current.resolvedOptions().maximumFractionDigits;if(t.isMinusSign)0!==i&&i!==f+1||(u=l,(-1===p||0!==a)&&(u=Ue(l,n,0,a)),ze(e,u,n,"insert"));else if(t.isDecimalSign){if(s>0&&i===s)ze(e,l,n,"insert");else if(s>i&&s<a)u=Ue(l,n,i,a),ze(e,u,n,"insert");else if(-1===s&&(m||h.maxFractionDigits)){("numeric"!==re||"numeric"===re&&(h.min||h.max))&&(u=Ue(l,n,i,a),ze(e,u,n,"insert"))}}else{var b=i!==a?"range-insert":"insert";if(s>0&&i>s){if(i+n.length-(s+1)<=m){var v=f>=i?f-1:d>=i?d:l.length;u=l.slice(0,i)+n+l.slice(i+n.length,v)+l.slice(v),ze(e,u,n,b)}}else u=Ue(l,n,i,a),ze(e,u,n,b)}}},Be=function(e){return e?e.replace(J.current,"").trim().replace(/\s/g,"").replace($.current,""):e},Ue=function(e,n,t,r){if(2===(Ce(n)?n:n.split(V.current)).length){var u=e.slice(t,r).search(V.current);return V.current.lastIndex=0,u>0?e.slice(0,t)+me(n)+Be(e).slice(r):e||me(n)}if(Ce(n)&&0===e.length)return me("0.");if(r-t===e.length)return me(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)},Ke=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)},Le=function(){var e=M.current.selectionStart,n=M.current.value,t=n.length,r=null,u=(T.current||"").length,i=(n=n.replace(X.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)M.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&&M.current.setSelectionRange(r,r)}return r||0},Te=function(){Q.current=!0},He=function(){Le()},_e=function(e){return!(1!==e.length||!(q.current.test(e)||V.current.test(e)||z.current.test(e)||G.current.test(e)))&&(qe(),!0)},qe=function(){q.current.lastIndex=0,V.current.lastIndex=0,z.current.lastIndex=0,G.current.lastIndex=0},ze=function(e,n,t,r){var u=M.current.value,i=null;null!=n&&(i=Ge(be(n)),Xe(i,t,r,n),$e(e,u,i))},Ge=function(e){return e||h.allowEmpty?e:h.min||0},$e=function(e,n,t){h.onChange&&Ve(n,t)&&h.onChange({originalEvent:e,value:t})},Ve=function(e,n){return null===n&&null!==e||null!=n&&n!==("string"==typeof e?be(e):e)},We=function(e){return"-"===e?null:Je(e)},Je=function(e){return c.ObjectUtils.isEmpty(e)?null:null!==h.min&&e<h.min?h.min:null!==h.max&&e>h.max?h.max:e},Xe=function(e,n,t,r){n=n||"";var u=M.current,i=u.value,a=me(e),l=i.length;if(a!==r&&(a=Ze(a,r)),0===l){u.value=a,u.setSelectionRange(0,0);var o=Le()+n.length+(Ce(n)?1:0);u.setSelectionRange(o,o)}else{var c=u.selectionStart,s=u.selectionEnd;if(h.maxLength&&h.maxLength<a.length)return;u.value=a;var p=a.length;if("range-insert"===t){var d=be((i||"").slice(0,c)),f=(null!==d?d.toString():"").split("").join("(".concat(L.current,")?")),m=new RegExp(f,"g");m.test(a);var b=n.split("").join("(".concat(L.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(Ce(e)||Ce(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),x=i.charAt(s),I=l-p,w=z.current.test(x);w&&1===I?s+=1:!w&&_e(y)&&(s+=-1*I+1),z.current.lastIndex=0,u.setSelectionRange(s,s)}else if("-"===i&&"insert"===t){u.setSelectionRange(0,0);var D=Le()+n.length+1;u.setSelectionRange(D,D)}else u.setSelectionRange(s+=p-l,s)}u.setAttribute("aria-valuenow",e)},Ye=function(e){e=Ge(e);var n=M.current,t=n.value,r=Qe(e);t!==r&&(n.value=r,n.setAttribute("aria-valuenow",e))},Qe=function(e){return me(Ge(e))},Ze=function(e,n){if(e&&n){var t=n.search(V.current);V.current.lastIndex=0;var r=je(e).split(V.current)[0].replace(J.current,"").trim();return-1!==t?r+n.slice(t):e}return e},en=function(e){if(e){var n=e.split(V.current);if(2===n.length)return Be(n[1]).length}return 0},nn=function(e,n){h.onValueChange&&h.onValueChange({originalEvent:e,value:n,stopPropagation:function(){null==e||e.stopPropagation()},preventDefault:function(){null==e||e.preventDefault()},target:{name:h.name,id:h.id,value:n}})},tn=function(e){if(O(!0),h.onFocus&&h.onFocus(e),(h.suffix||h.currency||h.prefix)&&M.current&&!Q.current){var n=M.current.value;M.current.setSelectionRange((T.current||"").length,0===n.length?0:n.length-(H.current||"").length)}},rn=function(e){if(O(!1),Q.current=!1,M.current){var n=M.current.value;if(Ve(n,h.value)){var t=We(be(n));Ye(t),nn(e,t)}}h.onBlur&&h.onBlur(e)},un=function(){B.current&&clearInterval(B.current)},an=function(){var e=Je(h.value);Ye(h.format?e:je(e));var n=We(h.value);null!==h.value&&h.value!==n&&nn(null,n)},ln=function(){return K.current};d.useImperativeHandle(s,(function(){return{props:h,focus:function(){return c.DomHandler.focus(M.current)},getFormatter:ln,getElement:function(){return A.current},getInput:function(){return M.current}}})),d.useEffect((function(){c.ObjectUtils.combinedRefs(M,h.inputRef)}),[M,h.inputRef]),r.useUnmountEffect((function(){un()})),r.useMountEffect((function(){ie();var e=We(h.value);null!==h.value&&h.value!==e&&nn(null,e)})),r.useUpdateEffect((function(){ie(),an()}),[Z,h.locale,h.localeMatcher,h.mode,h.currency,h.currencyDisplay,h.useGrouping,h.minFractionDigits,h.maxFractionDigits,h.suffix,h.prefix]),r.useUpdateEffect((function(){an()}),[h.value]),r.useUpdateEffect((function(){h.disabled&&un()}),[h.disabled]);var on,cn,sn,pn,dn,fn=function(){var e=v({className:k("incrementIcon")},F("incrementIcon")),n=c.IconUtils.getJSXIcon(h.incrementButtonIcon||d.createElement(i.AngleUpIcon,e),C({},e),{props:h}),t=v({type:"button",className:c.classNames(h.incrementButtonClassName,k("incrementButton")),onPointerLeave:he,onPointerDown:function(e){return n=e,void(h.disabled||h.readOnly||(c.DomHandler.isTouchDevice()||c.DomHandler.focus(M.current,h.autoFocus),ve(n,null,1),n.preventDefault()));var n},onPointerUp:ye,onKeyDown:function(e){return n=e,void(h.disabled||h.readOnly||32!==n.keyCode&&13!==n.keyCode||ve(n,null,1));var n},onKeyUp:xe,disabled:h.disabled,tabIndex:-1,"aria-hidden":!0},F("incrementButton"));return d.createElement("button",t,n,d.createElement(l.Ripple,null))},mn=function(){var e=v({className:k("decrementIcon")},F("decrementIcon")),n=c.IconUtils.getJSXIcon(h.decrementButtonIcon||d.createElement(u.AngleDownIcon,e),C({},e),{props:h}),t=v({type:"button",className:c.classNames(h.decrementButtonClassName,k("decrementButton")),onPointerLeave:we,onPointerDown:function(e){return n=e,void(h.disabled||h.readOnly||(c.DomHandler.isTouchDevice()||c.DomHandler.focus(M.current,h.autoFocus),ve(n,null,-1),n.preventDefault()));var n},onPointerUp:Ie,onKeyDown:function(e){return n=e,void(h.disabled||h.readOnly||32!==n.keyCode&&13!==n.keyCode||ve(n,null,-1));var n},onKeyUp:De,disabled:h.disabled,tabIndex:-1,"aria-hidden":!0},F("decrementButton"));return d.createElement("button",t,n,d.createElement(l.Ripple,null))},bn=c.ObjectUtils.isNotEmpty(h.tooltip),vn=N.getOtherProps(h),gn=c.ObjectUtils.reduceKeys(vn,c.DomHandler.DATA_PROPS),yn=c.ObjectUtils.reduceKeys(vn,c.DomHandler.ARIA_PROPS),hn=(on=c.classNames(h.inputClassName,k("input",{context:g})),cn=Qe(h.value),d.createElement(a.InputText,m({ref:M,id:h.inputId,style:h.inputStyle,role:"spinbutton",className:on,defaultValue:cn,type:h.type,size:h.size,tabIndex:h.tabIndex,inputMode:re,maxLength:h.maxLength,disabled:h.disabled,required:h.required,pattern:h.pattern,placeholder:h.placeholder,readOnly:h.readOnly,name:h.name,autoFocus:h.autoFocus,onKeyDown:Re,onKeyPress:Se,onInput:Oe,onClick:He,onPointerDown:Te,onBlur:rn,onFocus:tn,onPaste:Ee,min:h.min,max:h.max,"aria-valuemin":h.min,"aria-valuemax":h.max,"aria-valuenow":h.value},yn,gn,{pt:F("input"),unstyled:h.unstyled,__parentMetadata:{parent:j}}))),xn=(sn=h.showButtons&&fn(),pn=h.showButtons&&mn(),dn=v({className:k("buttonGroup")},F("buttonGroup")),ee?d.createElement("span",dn,sn,pn):d.createElement(d.Fragment,null,sn,pn)),In=v({id:h.id,className:c.classNames(h.className,k("root",{focusedState:D,stacked:ee,horizontal:ne,vertical:te})),style:h.style},vn,F("root"));return d.createElement(d.Fragment,null,d.createElement("span",m({ref:A},In),hn,xn),bn&&d.createElement(o.Tooltip,m({target:A,content:h.tooltip,pt:F("tooltip")},h.tooltipOptions)))})));P.displayName="InputNumber",exports.InputNumber=P;