feat: use storage api components resource