Объект (класс) Popup
Нашел сайт Читай-город. Нажал на кнопку Войти
<li class="header-menu__item header-menu__item--margin-auto">
<a href="https://www.chitai-gorod.ru/bonus-program/">Бонусная программа</a>
</li>
<li class="header-menu__item header-menu__item_login">
<button class="js__showPopupLogin" type="button">
<i class="chg-icon chg-icon-popup-user"></i>
<span>Войти</span>
</button>
Начал искать кнопку с классом .js__showPopupLogin и нашел
var showPopupLogin = document.querySelector('.js__showPopupLogin');
if(showPopupLogin){
showPopupLogin.addEventListener('click', function () {
popupLogin.show()
})
}
в файле Читай-город - интернет-магазин книг_files\auth.js(1).Без названия. Далее искал переменную popupLogin и нашел в том же самом файле
var popupLogin = Popup.getInstance('login', '.js__popup_login', getAuthHtmlPopup());
Функция getAuthHtmlPopup() в файле Читай-город - интернет-магазин книг_files\auth.js.Без названия отрисовывает окно входа/регистрации.
function getAuthHtmlPopup(){
return '<div class="popup-main-wrapper js__popup_main_wrapper">' +
'<div class="popup popup-login js__popup_auth js__popup_login hidden" data-auth-popup>' +
'<div class="popup__wrapper"><div class="popup__header"><div class="popup__title">Войти</div><div class="popup__close"><i class="chg-icon chg-icon-close"></i></div></div><div class="popup__body">' +
getSocialListPopup() +
'<form id="login-form" class="popup-login__form" method="post" target="_top" action=""> ' +
'<input type="hidden" name="AUTH_FORM" value="Y"/> ' +
'<input type="hidden" name="TYPE" value="AUTH"/> ' +
'<div class="x-input"> <label for="popup-email">Логин</label> <i class="chg-icon chg-icon-popup-user icon field-icon"></i><input type="text" name="login" id="popup-email" required="required"/> <div id="" class="js__login_error x-error color_red"></div></div> ' +
'<div class="x-input"> <label for="popup-password">Пароль</label> <i class="chg-icon chg-icon-lock icon field-icon t-29"></i><input type="password" id="popup-password" name="password" required="required"/> <div class="input__decor-icon js__password_view input__decor-icon_show-pass"></div> ' +
'<div id="" class="js__password_error x-error color_red"></div> </div>' +
'<div class="popup__input-wrap checkbox"> <input id="user_remember" name="remember" type="checkbox" class="checkbox"/> <label for="user_remember" class="label__rememberMe">Запомнить на этом компьютере</label> </div> ' +
'<div class="text-error color_red js__form-error hidden"></div> ' +
'<button class="btn_normal popup__btn_normal popup__btn_action js__submit_form disabled" name="Login" id="authSubmit">Войти</button> </form> ' +
'<div class="popup__btns"> <button class="line-btn js__reg">Регистрация</button> <button class="line-btn fl-right js__resetPass">Забыли пароль?</button></div></div></div></div></div>';
}
Остался вопрос, что за объект (класс) Popup (прошу пояснить со ссылкой на код - пояснение вместе с кодом).
