Yes, you can extend existing components if you want to.
An example can be found here.
More information over writing component can be found here.
Source code of the components is not provided, at least not directly. The source maps are available, so you can look into the original code using devtools.