That’s cool. And it’s funny to see the different ways to extract the relevant information. I wrote some code once that’s does something similar, but getting to the script code and checking component types quite differently, might be interesting to you:
Also, a more recent script that e.g. demonstrates how check for obsolete components: