{"name":"rhf-file-upload-field","title":"RHF File Upload Field","description":"File upload field with React Hook Form integration.","type":"registry:ui","docs":"/components/rhf-file-upload-field","categories":["forms"],"registryDependencies":["https://pb-ui-five.vercel.app/registry/rhf-base-controller","https://pb-ui-five.vercel.app/registry/file-upload"],"dependencies":["react-hook-form"],"files":[{"path":"components/ui/rhf-inputs/file-upload-field.tsx","target":"components/ui/rhf-inputs/file-upload-field.tsx","type":"registry:ui","content":"\"use client\";\n\nimport { FieldValues } from \"react-hook-form\";\nimport { FileUpload, FileUploadProps } from \"../file-upload\";\nimport { BaseController, BaseControllerProps } from \"./base-controller\";\n\ntype FileUploadFieldProps<T extends FieldValues> = Omit<\n  FileUploadProps,\n  \"onFileSelect\" | \"error\" | \"label\" | \"description\" | \"required\"\n> &\n  Omit<BaseControllerProps<T>, \"children\">;\n\nexport function FileUploadField<T extends FieldValues>({\n  control,\n  name,\n  label,\n  description,\n  disableFieldError = false,\n  required,\n  ...fileUploadProps\n}: FileUploadFieldProps<T>) {\n  return (\n    <BaseController\n      control={control}\n      name={name}\n      label={label}\n      required={required}\n      description={description}\n      disableFieldError={disableFieldError}\n    >\n      {({ field, fieldState, ariaDescribedBy }) => (\n        <FileUpload\n          {...fileUploadProps}\n          label=\"\"\n          description=\"\"\n          required={required}\n          showError={false}\n          error={fieldState.error?.message}\n          aria-describedby={ariaDescribedBy}\n          onFileSelect={(file) => {\n            field.onChange(file);\n          }}\n        />\n      )}\n    </BaseController>\n  );\n}\n"}]}