Overlay vs Extend
Is there any advantage to overlaying components than just extending them using sling:resourceSuperType?
Overlay allows you to copy over libs components to apps and changing them without affecting the original component. Doesn't extending the component also allow the same - you can just overwrite the script where changes are required? In addition, extending can make it future-proof, that is, if you happen to upgrade AEM in the future, extending components will allow you to use the latest available components in /libs.
Or is there anything that can only be achieved using overlay that I'm missing here?
Thanks for any inputs here.