UNPKG

carbon-react

Version:

A library of reusable React components for easily building user interfaces.

2 lines (1 loc) 2.16 kB
import{jsx as e}from"react/jsx-runtime";import t,{useRef as r}from"react";import{LABEL_VALIDATION_DEFAULT as n,ALIGN_DEFAULT as o,LABEL_WIDTH_DEFAULT as a,SIZE_DEFAULT as l,Textbox as i}from"../textbox/textbox.component.js";import c from"../../__internal__/utils/helpers/tags/tags.js";function u(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){u(e,t,r[t])}))}return e}const s=t.forwardRef(((t,u)=>{var{onChange:s,onKeyDown:f,value:p,align:O=o,labelWidth:g=a,size:y=l,validationOnLabel:m=n}=t,j=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,["onChange","onKeyDown","value","align","labelWidth","size","validationOnLabel"]);const v=r(null),d=r(null);var w,h,P;return e(i,b((h=b({},j),P=null!=(P={value:p,onChange:e=>{!function(e){return new RegExp("^[-]?[0-9]*$").test(e)}(e.target.value)?(e.target.value=p||"",e.target.setSelectionRange(v.current,d.current)):s(e)},onKeyDown:e=>{v.current=e.target.selectionStart,d.current=e.target.selectionEnd,f&&f(e)},ref:u,align:O,labelWidth:g,size:y,validationOnLabel:m})?P:{},Object.getOwnPropertyDescriptors?Object.defineProperties(h,Object.getOwnPropertyDescriptors(P)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(P)).forEach((function(e){Object.defineProperty(h,e,Object.getOwnPropertyDescriptor(P,e))})),h),c(null!==(w=j["data-component"])&&void 0!==w?w:"number",j)))}));s.displayName="Number";export{s as Number,s as default};