make the Publish component handle multiple files