import React from 'react';

type Props = React.InputHTMLAttributes<HTMLInputElement> & {
  hasError?: boolean;
};

/**
 * Input متنی پایهٔ design system: کلاس `cp-input`، حالت خطا (قاب قرمز)،
 * و forwardRef برای سازگاری با react-hook-form `register`.
 */
export default React.forwardRef<HTMLInputElement, Props>(function Input(
  { hasError, className, style, ...rest },
  ref,
) {
  return (
    <input
      {...rest}
      ref={ref}
      className={className ?? 'cp-input'}
      style={hasError ? { borderColor: 'var(--danger)', ...(style || {}) } : style}
    />
  );
});
