var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
    for (var name in all) __defProp(target, name, {
      get: all[name],
      enumerable: !0
    });
  },
  __copyProps = (to, from, except, desc) => {
    if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
      get: () => from[key],
      enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
    });
    return to;
  };
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
  value: !0
}), mod);
var FormNumericalInput_exports = {};
__export(FormNumericalInput_exports, {
  FormNumericalInput: () => FormNumericalInput
});
module.exports = __toCommonJS(FormNumericalInput_exports);
var import_react_hook_form = require("react-hook-form"),
  import_NumericalInput = require("../NumericalInput.cjs"),
  import_context = require("./context.cjs"),
  import_jsx_runtime = require("react/jsx-runtime");
function FormNumericalInput({
  id,
  helperText,
  error: defaultError,
  ...props
}) {
  const {
      control,
      formState: {
        errors
      },
      disabled
    } = (0, import_context.useFormContext)(),
    error = !!errors[id] || defaultError,
    supportingText = errors?.[id]?.message || helperText;
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_hook_form.Controller, {
    control,
    name: id,
    render: ({
      field
    }) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_NumericalInput.NumericalInput, {
      ...props,
      fg: 1,
      disabled: disabled || props?.disabled,
      onChangeText: e => {
        const newValue = e?.replace(/[^0-9.]/g, "").replace(/(\..*)\./g, "$1");
        field?.onChange(newValue);
      },
      value: field?.value?.toString(),
      onValueChange: v => field?.onChange(v),
      onBlur: field?.onBlur,
      id,
      error,
      supportingText
    })
  });
}