{"version":3,"file":"Textarea.mjs","sources":["../../../packages/input/Textarea.tsx"],"sourcesContent":["import { ForwardedRef, forwardRef } from 'react'\nimport {\n  InputWrapperStyle,\n  InputContentStyle,\n  TextareaStyle,\n  InputMessageStyle,\n  InputControlWrapperStyle,\n} from './InputStyles.js'\nimport { TextareaLabelStyle } from './LabelStyles.js'\nimport { TextareaProps } from './types.js'\n\nexport const Textarea = forwardRef(\n  (\n    {\n      label,\n      error,\n      warning,\n      success,\n      active = false,\n      fullwidth = false,\n      placeholder = ' ',\n      className,\n      style,\n      variant = 'default',\n      color = 'default',\n      id,\n      disabled = false,\n      wrapperRef,\n      children,\n      ...rest\n    }: TextareaProps,\n    ref?: ForwardedRef<HTMLInputElement>,\n  ) => {\n    const hasLabel = !!label && variant === 'default'\n\n    const hasError = !!error\n    const hasErrorMessage = hasError && typeof error !== 'boolean'\n    const hasWarning = !hasError && !!warning // `error` overrides `warning`\n    const hasWarningMessage = hasWarning && typeof warning !== 'boolean'\n    const hasSuccess = !!success && !error\n    const hasSuccessMessage = hasSuccess && typeof success !== 'boolean'\n\n    return (\n      <InputWrapperStyle\n        className={className}\n        style={style}\n        $disabled={disabled}\n        $fullwidth={fullwidth}\n        htmlFor={id}\n        ref={wrapperRef}\n      >\n        <InputContentStyle\n          $color={color}\n          $variant={variant}\n          $error={hasError}\n          $warning={hasWarning}\n          $active={active}\n          $disabled={disabled}\n        >\n          <InputControlWrapperStyle>\n            <TextareaStyle\n              $labeled={hasLabel}\n              $color={color}\n              placeholder={placeholder}\n              aria-invalid={hasError}\n              ref={ref}\n              {...rest}\n            />\n            {hasLabel && (\n              <TextareaLabelStyle $color={color}>{label}</TextareaLabelStyle>\n            )}\n          </InputControlWrapperStyle>\n        </InputContentStyle>\n\n        {hasErrorMessage && (\n          <InputMessageStyle $variant='error' $bordered>\n            {error}\n          </InputMessageStyle>\n        )}\n        {hasWarningMessage && (\n          <InputMessageStyle $variant='warning' $bordered>\n            {warning}\n          </InputMessageStyle>\n        )}\n        {hasSuccessMessage && (\n          <InputMessageStyle $variant='success' $bordered>\n            {success}\n          </InputMessageStyle>\n        )}\n      </InputWrapperStyle>\n    )\n  },\n)\nTextarea.displayName = 'Textarea'\n"],"names":["Textarea","forwardRef","_ref","ref","label","error","warning","success","active","fullwidth","placeholder","className","style","variant","color","id","disabled","wrapperRef","children","rest","hasLabel","hasError","hasErrorMessage","hasWarning","hasWarningMessage","hasSuccess","hasSuccessMessage","_jsxs","InputWrapperStyle","$disabled","$fullwidth","htmlFor","_jsx","InputContentStyle","$color","$variant","$error","$warning","$active","InputControlWrapperStyle","TextareaStyle","$labeled","TextareaLabelStyle","InputMessageStyle","$bordered","displayName"],"mappings":"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"}