@useloops/design-system
Version:
The official React based Loops design system
2 lines (1 loc) • 1.36 kB
JavaScript
import{jsx as o,jsxs as r}from"react/jsx-runtime";import{NumberField as t}from"@base-ui-components/react";import{useTheme as n,inputAdornmentClasses as e,buttonGroupClasses as i,iconButtonClasses as m}from"@mui/material";import{mergeSx as s}from"merge-sx";import{forwardRef as a}from"react";import"../../BrandCore/colorRamps.js";import"../../BrandCore/primitiveVariables.js";import"../../BrandCore/semanticColor.js";import"../../BrandCore/types.js";import"../../BrandCore/typography.js";import c from"../../BrandCore/Icon/Icon.js";import p from"../IconButton/IconButton.js";import d from"../IconButtonGroup/IconButtonGroup.js";import u from"../TextField/TextField.js";const g=({hideActionButtons:e})=>{const s=n();return!e&&r(d,{orientation:"vertical",sizing:"xs",sx:{borderRadius:"6px",[`&.${i.root} > .${m.root}`]:{width:s.spacing(s.custom.margin.lg-s.custom.margin.xs),height:15,p:0}},children:[o(t.Increment,{render:o(p,{icon:o(c,{name:"chevron-up"})})}),o(t.Decrement,{render:o(p,{icon:o(c,{name:"chevron-down"})})})]})},B=a(({onChange:r,value:t,startAdornment:i,endAdornment:m,hideActionButtons:a,sx:c,...p},d)=>{const B=n();return o(u,{inputRef:d,value:t,onChange:r,startAdornment:i,endAdornment:m||o(g,{hideActionButtons:a}),sx:s(c,{[`& .${e.root}`]:{pr:m?B.spacing(B.custom.margin.sm):B.spacing(B.custom.margin.xs)}}),...p})});export{B as default};