Skip to content

jhony94/Laraflash

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laraflash

Flash Session messages for Laravel and Livewire

Total Installs Latest Stable Version Software License

Installation

composer require binkap/laraflash 

Publish assets

php artisan vendor:publish --tag=laraflash-assets

Add the flash styles directive to layout

<head>
    @laraflashStyles()
</head>

Add the flash container to your layout

<livewire:laraflash.container />

<!-- If you are not using livewire in your project you need to add the directive below -->
@livewireScripts()

Flashing messages

There are many syntax variations for adding flash messages, so you can choose the one you like the most.

1: Helper Functions

Method chaining

use function Binkap\Laraflash\flash;


flash()->message('Message sent successfully')
->header('Success') // Headers are Optional
->overlay()  // Default is set to simple
->success() // Default is set to info
->livewire($component); /* Call the livewire method to flash the message with livewire */

Or

use function Binkap\Laraflash\alert;

alert()->message('Message sent successfully')
->header('Success') // Headers are Optional
->overlay()  // Default is set to simple
->success() // Default is set to info
->livewire($component); /* Call the livewire method to flash the message with livewire */

Parameters

use function Binkap\Laraflash\flash;

// Using Constants

flash(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: LARAFLASH_TYPE_OVERLAY, /* Default set to LARAFLASH_TYPE_INFO*/
    mode: LARAFLASH_MODE_ERROR, /* Default set to LARAFLASH_MODE_INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

Or

use Binkap\Laraflash\Type;
use Binkap\Laraflash\Mode;

use function Binkap\Laraflash\flash;

// Using ENUMs

flash(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: Type::OVERLAY, /* Default set to Type::OVERLAY */
    mode: Mode::WARN, /* Default set to Mode::INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

2: Facade

Method chaining

use Binkap\Laraflash\Laraflash;

Laraflash::message('Message sent successfully')
->header('Success') // Headers are Optional
->overlay()  // Default is set to simple
->success() // Default is set to info
->livewire($component); /* Call the livewire method to flash the message with livewire */

Parameters

use Binkap\Laraflash\Laraflash;

// Using Constants

Laraflash::initialize(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: LARAFLASH_TYPE_OVERLAY, /* Default set to LARAFLASH_TYPE_INFO*/
    mode: LARAFLASH_MODE_ERROR, /* Default set to LARAFLASH_MODE_INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

Or

use Binkap\Laraflash\Type;
use Binkap\Laraflash\Mode;

use Binkap\Laraflash\Laraflash;

// Using ENUMs

Laraflash::initialize(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: Type::OVERLAY, /* Default set to Type::OVERLAY */
    mode: Mode::WARN, /* Default set to Mode::INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

3: Use Flash Class

Method chaining

use Binkap\Laraflash\Flash;

(new Flash)->message('Message sent successfully')
->header('Success') // Headers are Optional
->overlay()  // Default is set to simple
->success() // Default is set to info
->livewire($component); /* Call the livewire method to flash the message with livewire */

Parameters

use Binkap\Laraflash\Flash;

// Using Constants

(new Flash)->initialize(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: LARAFLASH_TYPE_OVERLAY, /* Default set to LARAFLASH_TYPE_INFO*/
    mode: LARAFLASH_MODE_ERROR, /* Default set to LARAFLASH_MODE_INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

Or

use Binkap\Laraflash\Type;
use Binkap\Laraflash\Mode;

use Binkap\Laraflash\Flash;

// Using ENUMs

(new Flash)->initialize(
    message: 'Message sent successfully', 
    header: 'Success', /* Optional*/
    type: Type::OVERLAY, /* Default set to Type::OVERLAY */
    mode: Mode::WARN, /* Default set to Mode::INFO*/
    livewire: $component /* Pass a livewire component to flash the message with livewire */
    ); 
    // Note to can still chain methods

All methods

// TYPE methods

$flash->simple()  // Render a the message using the simple layout
$flash->overlay() // Render the message using the overlay layout

// MODE methods

$flash->success()  // For success messages
$flash->info()  // For information
$flash->warn()  // For warnings
$flash->error() // For errors

All enums

use Binkap\Laraflash\Type;
use Binkap\Laraflash\Mode;

// TYPE Enum

Type::SIMPLE_  // Render a the message using the simple layout
Type::OVERLAY // Render the message using the overlay layout

// MODE Enum

Mode::SUCCESS  // For success messages
Mode::INFO  // For information
Mode::WARN  // For warnings
Mode::ERROR // For errors

All Constants

// TYPE constants

LARAFLASH_TYPE_SIMPLE_  // Render a the message using the simple layout
LARAFLASH_TYPE_OVERLAY // Render the message using the overlay layout

// MODE constants

LARAFLASH_MODE_SUCCESS  // For success messages
LARAFLASH_MODE_INFO  // For information
LARAFLASH_MODE_WARN  // For warnings
LARAFLASH_MODE_ERROR // For errors

Rendered messages

Here are example of rendered messages (In this case success)

Simple

Simple flash

Overlay

Overlay flash

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • PHP 83.0%
  • Blade 17.0%