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