files
не является объектом. Object.entries
работает не так, как вы ожидали.
Если вы хотите сначала отсортировать численно, а затем отсортировать по алфавиту, вам необходимо разделить имена и сравнить.
var files = [
{'name':"1. Pit om Akhshav Pit om Hayom"},
{'name':'2. Rabbi Akiva'},
{'name': '4. Kochavim Ba Dli'},
{'name': '3. Yaldut'},
{'name': '5. Simlat Klulot'},
{'name': '12. Yaldi Enenu Yeled'},
{'name': '6. Mayim Le David'},
{'name': '7. Ahava Shel Tereza De Mon'},
{'name': '8. Ba Ir Ha Zu Shalom'},
{'name': '9. Ahavat Kayits'},
{'name': '10. Tirza Yafa'},
{'name': '11. Im Tevakshi'},
]
files.sort((a,b) => {
const [aNum, aStr] = a.name.split('. ');
const [bNum, bStr] = b.name.split('. ');
return aNum - bNum || aStr.localeCompare(bStr);
});
console.log('sorted = ', files);