You have enough components that you will need to use lists for keeping track of the translations, like I do in Translating Multiple Texts - #5 by ABG
To use my code, you would have to customize your own copy of the global table componentsToTranslate.
P.S. Using the EVERY Component blocks, it should be possible to generate that list automatically at run time.