Based on this answer on SOthis answer on SO
:/^\s*-/,/^only/-1 !sort -u
provided the cursor is not placed anywhere on the lines starting with -
And, I don't know why
:/^\s*-/,/^\s*[^-]/-1 !sort -u
works only if cursor is positioned on the line immediately before start of search pattern