import cns from 'classnames'
import React, { CSSProperties, ReactNode } from 'react'
import { FormValidateStatus } from '../Form'
import { concat } from '../utils'
import { useFocused } from '../utils/hooks'
import { ComponentSize, usePrefix } from '../ConfigProvider'
import { useInputStyle, inputGroupSizeCtx } from './input'
export interface Props {
/** 尺寸 */
size?: ComponentSize
/** 校验状态 */
validateStatus?: FormValidateStatus
/** 自定义样式名 */
className?: string
/** 自定义样式 */
style?: CSSProperties
/** 内容 */
children?: ReactNode
}
export default function InputGroup({ size, validateStatus, className, children, ...otherProps }: Props) {
const { focused, focusedHandlers } = useFocused()
const inputGroupClassName = usePrefix('input-group')
const inputStyleClassName = useInputStyle({
focused,
validateStatus,
size,
disabled: false
})
const wrapperClassName = cns(
inputGroupClassName,
inputStyleClassName,
className
)
return (