Flash
Уведомления (Toast) работают через механизм сессий (session()->flash()
) и легко вызываются прямо из контроллера.
use MoonShine\Support\Enums\ToastType; MoonShineUI::toast(message: 'Hello');
Вы можете дополнительно задать тип уведомления и длительность его отображения:
MoonShineUI::toast( message: 'Success', type: ToastType::SUCCESS, duration: 3000);
$type
- управляет цветом уведомления,$duration
- устанавливает время отображения уведомления в миллисекундах. По умолчанию уведомления отображаются 2 секунды.
Если вы хотите, чтобы уведомление не исчезало автоматически, а убиралось только после клика:
MoonShineUI::toast(message: 'Success', duration: false);
MoonShineJsonResponse
MoonShineJsonResponse::make()->toast('Test', type: ToastType::SUCCESS, duration: 1000)
Используются такие же параметры
Events
ActionButton::make('Toast')->dispatchEvent( AlpineJs::event( JsEvent::TOAST, params: ToastEventParams::make(ToastType::SUCCESS, 'Hello', duration: 2000) )),
Используются такие же параметры
Длительность
Вы можете подключить js скрипт и глобально переопределить длительность отображения уведомлений
MoonShine.config().setToastDuration(5000)