Ва алейкум ассалам ва рахматуллахи ва баракатух.
Оба эти имени имеют свои достоинства, так что нельзя однозначно сказать, какое из них лучше.
Почти во всех неарабоязычных интернет-ресурсах приводится, что значение имени Лейла – «ночь», иногда пишут, что это «ночная красота» и «родившаяся ночью».
В арабском языке это слово имеет много значений, среди из них:
Словосочетание «лейлятун лейля» – ليلة ليلاء أو ليلة ليلى – «самая темная ночь месяца». Т.е. «Лейла» – не просто ночь, любая (тогда бы имя писалось по-арабски как ليلة), а длинная, темная, тяжелая беспросветная ночь.
Опьянение, или, говоря точнее, начало охмеления.
Название местности.
Одно из названий вина (как и словосочетание Умм Лейла أم ليلى – «мать Лейлы»).
Говоря о положительных качествах этого имени, следует сказать, что его носило несколько сподвижниц пророка صلى الله عليه وسلم, и ни одной из них он не посоветовал сменить имя, одно из значений которого – «опьянение», среди них была Лейла бинт аль-Джуди бин Ади бин Амр аль-Гассани, жена Абдуррахмана бин Абу Бакра ас-Сыддикъа, Лейла бинт Хабис ат-Тамимия, сестра известного сподвижника аль-Акъраъ бин Хабиса и другие.
Так что Лейла - разрешенное имя, прославленное многими историческими достойными личностями.
Амира - более новое имя с красивым значением и звучанием.
какое из этих имен лучше и счастливее?
Имена не могут быть "счастливее" в том плане, что они не могут как-то положительно влиять на судьбу человека.
Единственное - сам человек может чувствовать себя счастливее, когда его зовут приятным и хорошим во всех отношениях именем.
Так что можете еще раз проанализировать, какое имя подойдет к вашей семье и вашему обществу, и потом называть так, как будет лучше.