`const Admin = function (name, surname) {
User.call(this, name, surname);`
Если абстрагироваться от всего, то проблема в этих двух строках. У функции-конструктор не установлено параметров, а при вызовe User не передано аргументов
`const Admin = function (name, surname, email, yearOfBirth) {
User.call(this, name, surname, email, yearOfBirth);`