Исходный код EJIO.ctk_extender.widget.form.events

## /ctk_extender/widget/form/events.py

from typing import Any
from ...event import Event

__all__ = [
    'FormSubmittedEvent',
    'FormValidationErrorEvent',
    'FormReadyEvent',
]


[документация] class FormSubmittedEvent(Event): """Событие, возникающее при успешной валидации и отправке формы.""" def __init__(self, sender: Any, data: dict[str, Any]) -> None: """ :param sender: Экземпляр формы, сгенерировавший событие. :param data: Словарь собранных и очищенных данных {имя_поля: значение}. """ super().__init__(sender) self._data: dict[str, Any] = data @property def data(self) -> dict[str, Any]: return self._data
[документация] class FormValidationErrorEvent(Event): """Событие, возникающее, если форма не прошла валидацию.""" def __init__(self, sender: Any, errors: dict[str, str]) -> None: """ :param sender: Экземпляр формы. :param errors: Словарь ошибок {имя_поля: текст_ошибки}. """ super().__init__(sender) self._errors: dict[str, str] = errors @property def errors(self) -> dict[str, str]: return self._errors
[документация] class FormReadyEvent(Event): """Событие-ответ, сообщающее форме, что её обработка завершена и она может принимать новые клики.""" def __init__(self, target_form: Any) -> None: super().__init__(target_form) self._target_form: Any = target_form @property def target_form(self) -> Any: return self._target_form