Добавьте файлы проекта.

This commit is contained in:
2025-12-02 15:57:42 +03:00
parent cf107b62a3
commit 7f69eab545
44 changed files with 1470 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
namespace BotPages.Core
{
/// <summary>
/// Базовая реализация страницы без обязательных переопределений.
/// </summary>
public abstract class Page : IPage
{
/// <summary>
/// Идентификатор страницы.
/// </summary>
public virtual string Id => GetType().Name;
/// <summary>
/// Виртуальный метод входа; по умолчанию ничего не делает.
/// </summary>
public virtual Task<PageResult> EnterAsync(UpdateContext ctx, CancellationToken ct) =>
Task.FromResult(new PageResult());
/// <summary>
/// Абстрактная обработка событий; обязателен к реализации.
/// </summary>
public abstract Task<PageResult> HandleAsync(UpdateContext ctx, CancellationToken ct);
/// <summary>
/// Виртуальный метод выхода; по умолчанию ничего не делает.
/// </summary>
public virtual Task ExitAsync(UpdateContext ctx, CancellationToken ct) =>
Task.CompletedTask;
}
}