user()?->settings?->notif_style ?? NotifStyle::CHEERFUL; } catch (\Throwable $e) { return NotifStyle::CHEERFUL; } } public static function create(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Hore! Data Tersimpan ๐ŸŽ‰โœจ' : 'Data Berhasil Disimpan') ->body($cheerful ? 'Data baru berhasil ditambahkan! Sistem sudah menyimpannya dengan aman. ๐Ÿš€๐Ÿ’ช' : 'Data baru telah berhasil ditambahkan ke dalam sistem.') ->success(); } public static function update(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Mantap! Data Diperbarui โœ…๐Ÿ”ฅ' : 'Perubahan Tersimpan') ->body($cheerful ? 'Perubahan berhasil disimpan! Data sekarang sudah up-to-date dan segar lagi. โœจ๐Ÿ‘Œ' : 'Perubahan pada data telah berhasil diperbarui dan disimpan.') ->success(); } public static function delete(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Oke, Data Dihapus ๐Ÿ—‘๏ธ๐Ÿ‘‹' : 'Data Dihapus') ->body($cheerful ? 'Data tersebut sudah berhasil dihapus dari sistem. Semuanya bersih dan rapi sekarang! ๐Ÿ˜Š๐Ÿšฎ' : 'Data tersebut telah berhasil dihapus dari sistem aplikasi.') ->success(); } public static function forceDelete(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Selamat Tinggal Selamanya ๐Ÿ‘‹๐Ÿ˜ข' : 'Data Dihapus Permanen') ->body($cheerful ? 'Data telah dihapus permanen dan tidak bisa kembali. Semoga ini keputusan yang tepat! ๐Ÿšฎ๐Ÿ’จ' : 'Data tersebut telah dihapus secara permanen dari sistem.') ->success(); } public static function restore(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Welcome Back! Data Pulih โ™ป๏ธโœจ' : 'Data Berhasil Dipulihkan') ->body($cheerful ? 'Data berhasil dikembalikan! Hati-hati ya, jangan sampai terhapus lagi. ๐Ÿ˜‰๐Ÿ‘' : 'Data yang dihapus sebelumnya telah berhasil dipulihkan ke dalam sistem.') ->success(); } public static function statusUpdated(?string $title = null, ?string $body = null): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($title ?? ($cheerful ? 'Status Berubah! ๐Ÿ”„โœจ' : 'Status Diperbarui')) ->body($body ?? ($cheerful ? 'Status data berhasil diperbarui. Perubahan langsung aktif ya! ๐Ÿ‘' : 'Status data telah berhasil diperbarui dan telah diterapkan.')) ->success(); } public static function bulkDelete(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Oke, Banyak Data Dihapus ๐Ÿ—‘๏ธ๐Ÿ‘‹' : 'Data Berhasil Dihapus') ->body($cheerful ? 'Semua data yang dipilih berhasil dihapus. Sistem makin lega deh! ๐Ÿ˜Š' : 'Seluruh data yang dipilih telah berhasil dihapus dari sistem.') ->success(); } public static function bulkForceDelete(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Bye Bye Semua! ๐Ÿ‘‹๐Ÿ”ฅ' : 'Data Dihapus Permanen') ->body($cheerful ? 'Data yang dipilih sudah dihapus permanen. Bersih total! ๐Ÿงน๐Ÿ’จ' : 'Data yang dipilih telah berhasil dihapus secara permanen.') ->success(); } public static function bulkRestore(): Notification { $cheerful = self::getNotifStyle() === NotifStyle::CHEERFUL; return self::make() ->title($cheerful ? 'Hore! Banyak Data Pulih โ™ป๏ธ๐ŸŽ‰' : 'Data Berhasil Dipulihkan') ->body($cheerful ? 'Data-data tersebut sudah kembali aktif. Selamat bekerja kembali! ๐Ÿ’ชโœจ' : 'Seluruh data yang dipilih telah berhasil dikembalikan ke posisi semula.') ->success(); } /** * Custom cheerful success notification. */ public static function success(string $title, string $body): Notification { return self::make() ->title($title) ->body($body) ->success(); } /** * Custom cheerful info notification. */ public static function info(string $title, string $body): Notification { return self::make() ->title($title) ->body($body) ->info(); } /** * Custom cheerful warning notification. */ public static function warning(string $title, string $body): Notification { return self::make() ->title($title) ->body($body) ->warning(); } /** * Custom cheerful danger notification. */ public static function danger(string $title, string $body): Notification { return self::make() ->title($title) ->body($body) ->danger(); } /** * Get dynamic message based on UX style. */ public static function getMessage(string $cheerful, string $formal): string { return self::getNotifStyle() === NotifStyle::CHEERFUL ? $cheerful : $formal; } }