'use client'; 'use strict'; var jsxRuntime = require('react/jsx-runtime'); var styledSystem = require('@chakra-ui/styled-system'); var utils = require('@chakra-ui/utils'); var react = require('react'); var icons = require('./icons.cjs'); var useNumberInput = require('./use-number-input.cjs'); var useFormControl = require('../form-control/use-form-control.cjs'); var forwardRef = require('../system/forward-ref.cjs'); var factory = require('../system/factory.cjs'); var useStyleConfig = require('../system/use-style-config.cjs'); const [NumberInputStylesProvider, useNumberInputStyles] = utils.createContext({ name: `NumberInputStylesContext`, errorMessage: `useNumberInputStyles returned is 'undefined'. Seems you forgot to wrap the components in "" ` }); const [NumberInputProvider, useNumberInputContext] = utils.createContext({ name: "NumberInputContext", errorMessage: "useNumberInputContext: `context` is undefined. Seems you forgot to wrap number-input's components within " }); const NumberInput = forwardRef.forwardRef( function NumberInput2(props, ref) { const styles = useStyleConfig.useMultiStyleConfig("NumberInput", props); const ownProps = styledSystem.omitThemingProps(props); const controlProps = useFormControl.useFormControlProps(ownProps); const { htmlProps, ...context } = useNumberInput.useNumberInput(controlProps); const ctx = react.useMemo(() => context, [context]); return /* @__PURE__ */ jsxRuntime.jsx(NumberInputProvider, { value: ctx, children: /* @__PURE__ */ jsxRuntime.jsx(NumberInputStylesProvider, { value: styles, children: /* @__PURE__ */ jsxRuntime.jsx( factory.chakra.div, { ...htmlProps, ref, className: utils.cx("chakra-numberinput", props.className), __css: { position: "relative", zIndex: 0, ...styles.root } } ) }) }); } ); NumberInput.displayName = "NumberInput"; const NumberInputStepper = forwardRef.forwardRef( function NumberInputStepper2(props, ref) { const styles = useNumberInputStyles(); return /* @__PURE__ */ jsxRuntime.jsx( factory.chakra.div, { "aria-hidden": true, ref, ...props, __css: { display: "flex", flexDirection: "column", position: "absolute", top: "0", insetEnd: "0px", margin: "1px", height: "calc(100% - 2px)", zIndex: 1, ...styles.stepperGroup } } ); } ); NumberInputStepper.displayName = "NumberInputStepper"; const NumberInputField = forwardRef.forwardRef( function NumberInputField2(props, ref) { const { getInputProps } = useNumberInputContext(); const input = getInputProps(props, ref); const styles = useNumberInputStyles(); return /* @__PURE__ */ jsxRuntime.jsx( factory.chakra.input, { ...input, className: utils.cx("chakra-numberinput__field", props.className), __css: { width: "100%", ...styles.field } } ); } ); NumberInputField.displayName = "NumberInputField"; const StyledStepper = factory.chakra("div", { baseStyle: { display: "flex", justifyContent: "center", alignItems: "center", flex: 1, transitionProperty: "common", transitionDuration: "normal", userSelect: "none", cursor: "pointer", lineHeight: "normal" } }); const NumberDecrementStepper = forwardRef.forwardRef(function NumberDecrementStepper2(props, ref) { const styles = useNumberInputStyles(); const { getDecrementButtonProps } = useNumberInputContext(); const decrement = getDecrementButtonProps(props, ref); return /* @__PURE__ */ jsxRuntime.jsx(StyledStepper, { ...decrement, __css: styles.stepper, children: props.children ?? /* @__PURE__ */ jsxRuntime.jsx(icons.TriangleDownIcon, {}) }); }); NumberDecrementStepper.displayName = "NumberDecrementStepper"; const NumberIncrementStepper = forwardRef.forwardRef(function NumberIncrementStepper2(props, ref) { const { getIncrementButtonProps } = useNumberInputContext(); const increment = getIncrementButtonProps(props, ref); const styles = useNumberInputStyles(); return /* @__PURE__ */ jsxRuntime.jsx(StyledStepper, { ...increment, __css: styles.stepper, children: props.children ?? /* @__PURE__ */ jsxRuntime.jsx(icons.TriangleUpIcon, {}) }); }); NumberIncrementStepper.displayName = "NumberIncrementStepper"; exports.NumberDecrementStepper = NumberDecrementStepper; exports.NumberIncrementStepper = NumberIncrementStepper; exports.NumberInput = NumberInput; exports.NumberInputField = NumberInputField; exports.NumberInputStepper = NumberInputStepper; exports.StyledStepper = StyledStepper; exports.useNumberInputStyles = useNumberInputStyles;