К содержимому

AuthModalContent

AuthModalContent

Панель входа / регистрации — поля username + password, alert об ошибке, submit/cancel, опциональная ссылка переключения; busy-оверлей через SetBusy.

Пакет

SusGame · Экраны (коммерческий)

Открыть в песочнице

SusGame · Screens

Свойства

ИмяТипПо умолчанию
TitleTextProp<string>""
SubmitLabelProp<string>"Sign in"
ErrorTextProp<string>""
SwitchLabelProp<string>""

Слоты

Слотов нет.

События

Публичных событий нет.

Хуки стиля

Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:

  • auth-modal-content
  • auth-modal-content__panel
  • sus-flow-actions-row
  • sus-flow-btn--mr12
  • sus-flow-link--footer

Использование

Подключите обработчики кликов хоста к публичным кнопкам / ссылке после монтирования. Привяжите подписи и текст ошибки через Prop<>.

xml
<template>
  <sus:AuthModalContent
    :TitleText="Title.Value"
    :SubmitLabel="Submit.Value"
    :ErrorText="Error.Value"
    :SwitchLabel="Switch.Value"
  />
</template>

<script>
public Prop<string> Title = new("Sign in");
public Prop<string> Submit = new("Sign in");
public Prop<string> Error = new("");
public Prop<string> Switch = new("Create account");
</script>
csharp
var auth = new AuthModalContent();
auth.TitleText.Value = "Sign in";
auth.SubmitLabel.Value = "Sign in";
auth.SwitchLabel.Value = "Create account";
auth.ErrorText.Value = ""; // non-empty shows SusAlert
// After mount:
auth.SubmitBtn.OnClick += () => { /* login */ };
auth.CancelBtn.OnClick += () => { /* dismiss */ };
auth.SwitchLink.OnClick += () => { /* flip mode */ };
auth.SetBusy(true, "Signing in…"); // overlay + disables fields
auth.SetBusy(false);
Prop / APIРоль
TitleTextЗаголовок (SusBanner)
SubmitLabelПодпись основной кнопки
ErrorTextТекст alert об ошибке; пусто → скрыт
SwitchLabelТекст ссылки в футере
UsernameField / PasswordFieldПостроенные хосты SusTextfield
SubmitBtn / CancelBtn / SwitchLinkПодключение действий хоста
SetBusy(busy, message?)SusServerBusyOverlay + отключение контролов

Заметки

  • Строится лениво в Created / EnsureBuilt — до этого поля равны null.
  • Поле пароля создаётся с password: true.
  • Предпочтительно, чтобы навигацией владели хост-экраны/модалки; это только content (без route-логики).