feat(graph): thumbnails relationship on driveItem listings

Add a shared helper that builds the thumbnails relationship from a resource's
info, gated on thumbnail.HasPreview so audio without embedded cover art no
longer advertises a preview that fails to render. Reported dimensions are
aspect-correct (fit into the box) rather than square, with a source thumbnail
carrying the native dimensions (audio cover from oc.preview, images from the
image facet). Wired into the drive children listings on $expand=thumbnails.
This commit is contained in:
Internal Server Error - Gitea: Git with a cup of tea
500 Internal Server Error

Gitea Version: 1.28.0+dev-477-g8b6ad49a5f