There is no license information available for the latest version (v4.2.2) of this package.

An action class.

v4.2.2 2023-04-18 14:18 UTC

README

PHP ^8.0 codecov

Documentation

Installation

composer require lumite-studios/action

Testing

composer test

Usage

The \LumiteStudios\Action\Action class can be used to simplify running various actions.

Example Action

use LumiteStudios\Action\Action;

class CreateUser extends Action
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize(): bool
    {
        return !auth()->check();
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules(): array
    {
        return [
            'email' => ['required', 'email'],
            'password' => ['required'],
        ];
    }

    /**
     * Handle the action.
     *
     * @param \Illuminate\Http\Request $request
     * @return User
     */
    public function handle(Request $request)
    {
        return User::create([
            'email' => $request->email,
            'password' => Hash::make($request->password),
        ]);
    }
}