bfg/emitter

A description for emitter.

Maintainers

Details

github.com/bfg-s/emitter

Source

Issues

Installs: 138

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:package

1.2.2 2023-04-16 17:08 UTC

This package is auto-updated.

Last update: 2024-03-16 18:57:12 UTC


README

Software License Travis Total Downloads

Install

composer require bfg/emitter

Usage

Set in you RouteServiceProvider router connection:

\Route::emitter();

For using with any guard use:

\Route::emitter('sanctum');

Blade

@emitterScripts();
<!-- OR --->
@emitterScripts($options);

Possible options is:

  • headers
  • domain

For request configuring.

JavaScript

$message('my-event', {});

Message is a signed request for an event. What to transmit the names of the events and at the same time not to transmit its full range of names, the system is looking for nesting in any space that is compiled depending on your security guard, the default is web So your nesting prefix will be the next WebMessage And all created and declared Events and will cause them consistently if there will be several events in one name.

Event search occurs on the following pattern:

Send name: my-event or my;

Called Event: *\WebMessage\MyEvent

Send name: actions:my-event or actions:my;

Called Event: *\WebMessageActions\MyEvent

* - Maybe any value.

VueJs Mixin

Vue.mixin(VueMessageMutator);

AlpineJs

Messages are supported by AlpineJS by default.

Event protection

You can create a method with the name access in the event class, which is executed before performing an event, but after its design.

    ...
    public function access() {
        return \Auth::check() && \Auth::user()->isAdmin()
    } 
    ...

Resource wrapping

You can declare a property or method named resource, he must return the resource class that needs to be applied to the last truthful listener's result.

    ...
    public $resource = UserResource::class; 
    // OR
    public function resource() {
        return UserResource::class;
    } 
    ...

Changelog

Please see CHANGELOG for more information what has changed recently.

Credits

Security

If you discover any security-related issues, please email xsaven@gmail.com instead of using the issue tracker.

License

The MIT License (MIT). Please see License File for more information.