It's not specific to vim-surround -
va' also selects the leading whitespace. From
a" v_aquote aquote
a' v_a' a'
a` v_a` a`
"a quoted string". Selects the text from the previous
quote until the next quote. The 'quoteescape' option
is used to skip escaped quotes.
Only works within one line.
When the cursor starts on a quote, Vim will figure out
which quote pairs form a string by searching from the
start of the line.
Any trailing white space is included, unless there is
none, then leading white space is included.
i" v_iquote iquote
i' v_i' i'
i` v_i` i`
Like a", a' and a`, but exclude the quotes and
repeating won't extend the Visual selection.
Special case: With a count of 2 the quotes are
included, but no extra white space as with a"/a'/a`.
And with my tests, this worked as desired: