wip - client component for file upload