QML is complaining that it can't assign the types to `sourceComponent`, so this commit wraps them in `Component` types to mitigate that.
Closes #3710