Fatti

Il ricorrente [A.A.] , un cittadino macedone, ha sposato il 5 novembre 2013 la cittadina slovacca [D.] in Macedonia del Nord. La moglie è entrata in Svizzera il 1 ottobre 2014 e ha ottenuto un permesso di soggiorno UE/AELS. [A.A.] è entrato in Svizzera il 29 giugno 2015 come turista e ha ottenuto il 13 luglio 2015 un permesso di soggiorno nel quadro del ricongiungimento familiare con la moglie. I due figli del ricorrente, [B.A.] e [C.A.] , sono entrati in Svizzera il 25 maggio 2016 come turisti e hanno ottenuto il 22 luglio 2016 un permesso di soggiorno nel quadro del ricongiungimento familiare con il padre.

L'Ufficio di migrazione del Cantone di San Gallo ha revocato i permessi di soggiorno di [A.A.] e dei due figli con decisione del 4 gennaio 2018 e ha ordinato loro di lasciare la Svizzera entro 60 giorni dalla data di entrata in vigore della decisione. L'autorità inferiore ha respinto il ricorso contro la decisione.

Legge

Il Tribunale federale ha esaminato il ricorso in materia di diritto pubblico e ha concluso che l'autorità inferiore ha violato il diritto del ricorrente ad essere sentito (art. 29 cpv. 2 Cost.) rifiutando di procedere agli interrogatori dei testimoni richiesti.

L'autorità inferiore aveva stabilito che la moglie del ricorrente aveva trascorso la settimana nel Cantone Vallese e che solo dal febbraio 2018 era tornata a vivere nell'abitazione coniugale. L'autorità inferiore ha concluso che con probabilità…