Files
telegram-tui/src/tdlib/mod.rs
Mikhail Kilin c42976c358 refactor: add MessageBuilder with fluent API (P2.7)
Добавлен MessageBuilder для удобного создания MessageInfo с помощью
fluent API вместо вызова конструктора с 14 параметрами.

Изменения:
- Создан MessageBuilder в tdlib/types.rs с fluent API
- Реализованы методы:
  * new(id) - создание builder с обязательным ID
  * sender_name(), text(), entities(), date(), edit_date()
  * outgoing(), incoming(), read(), unread(), edited()
  * editable(), deletable_for_self(), deletable_for_all()
  * reply_to(), forward_from(), reactions(), add_reaction()
  * build() - финальное создание MessageInfo
- Обновлён convert_message() для использования builder
- Добавлен экспорт MessageBuilder в tdlib/mod.rs
- Добавлены 6 unit тестов демонстрирующих fluent API

Преимущества:
- Более читабельный код создания сообщений
- Самодокументирующийся API
- Гибкость в установке опциональных полей
- Легче добавлять новые поля в будущем

Пример использования:
```rust
let message = MessageBuilder::new(MessageId::new(123))
    .sender_name("Alice")
    .text("Hello, world!")
    .outgoing()
    .read()
    .build();
```

Статус: Priority 2 ЗАВЕРШЁН 100% (5/5 задач)! 🎉
-  Error enum
-  Config validation
-  Newtype для ID
-  MessageInfo реструктуризация
-  MessageBuilder pattern

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-31 02:02:07 +03:00

474 B