AuthModalContent

Панель входа / регистрации — поля username + password, alert об ошибке, submit/cancel, опциональная ссылка переключения; busy-оверлей через SetBusy.
Пакет
SusGame · Экраны (коммерческий)
SusGame · Screens
Свойства
| Имя | Тип | По умолчанию | |
|---|---|---|---|
TitleText | Prop<string> | "" | |
SubmitLabel | Prop<string> | "Sign in" | |
ErrorText | Prop<string> | "" | |
SwitchLabel | Prop<string> | "" |
Слоты
Слотов нет.
События
Публичных событий нет.
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
auth-modal-contentauth-modal-content__panelsus-flow-actions-rowsus-flow-btn--mr12sus-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-логики).