@ultraviolet/plus
Version:
Ultraviolet Plus
32 lines (31 loc) • 1.18 kB
JavaScript
"use client";
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const jsxRuntime = require("@emotion/react/jsx-runtime");
const ui = require("@ultraviolet/ui");
const react = require("react");
const OverlayContext = require("../OverlayContext.cjs");
const componentStyle = require("../componentStyle.cjs");
const Regular = require("./Regular.cjs");
const NumberInput = ({
amount,
minValue = 0,
maxValue = 100,
getAmountValue,
itemCallback,
controls = true
}) => {
const {
isOverlay
} = OverlayContext.useOverlay();
const [value, setValue] = react.useState(amount);
react.useEffect(() => {
getAmountValue?.(amount);
}, [getAmountValue, amount]);
return isOverlay ? /* @__PURE__ */ jsxRuntime.jsx(componentStyle.ItemResourceName, { animated: false, children: /* @__PURE__ */ jsxRuntime.jsx(Regular.Regular, { children: amount }) }) : /* @__PURE__ */ jsxRuntime.jsx(ui.NumberInputV2, { min: minValue, max: maxValue, size: "small", onChange: (newValue) => {
setValue(newValue);
itemCallback?.(newValue, true);
getAmountValue?.(newValue);
}, value, controls });
};
exports.NumberInput = NumberInput;