olssonm/livewire-synthesizer

15
Install
composer require olssonm/livewire-synthesizer
Latest Version:v0.1
License:MIT
Last Updated:Dec 20, 2023
Links: GitHub  ·  Packagist
Maintainer: olssonm

Livewire Synthesizer

[!WARNING] In development, in no way near ready to use in production.

Simple classes when using simple objects via Livewire Synthesizers – saves some time instead of having to write custom synthesizers from scratch.

This package tries to hydrate and dehydrate all properties on the resource.

[!NOTE] Livewire already ships with synthesizers for simple objects such as collections and arrays, this package is when you need to use custom objects.

Resource

Represents your custom class/object. All you have to do is extend Olssonm\LivewireSynthesizer\Resources\GenericResource.

<?php

namespace App\Resources;

use Olssonm\LivewireSynthesizer\Resources\GenericResource;

class Post extends GenericResource
{
    //
}

Synthesizers

Your synthesizer, extend Olssonm\LivewireSynthesizer\Synthesizers\GenericSynthesizer, set a key and specify your class and your almost set.

Please note that your key has to be unique.

<?php

namespace App\Synthesizers;

use App\Resources\Post;
use Olssonm\LivewireSynthesizer\Synthesizers\GenericSynthesizer;

class Post extends GenericSynthesizer
{
    public static $key = 'post';

    public static $class = Post::class;
}

Registering your synthesizer

To enable Livewire to find and register the synthesizer you can register it in your AppServiceProvider;

use App\Support\Synthesizers\Post;
use Livewire\Livewire;

/**
 * Register any application services.
 */
public function register(): void
{
    Livewire::propertySynthesizer(Post::class);
}

Related Packages

erirk/paypalpayment

laravel-paypalpayment is simple package help you process direct credit card paym...

0
gabrieloliverio/laravel5-generators

Database metadata-based generators for Laravel 5

1
doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

610,259,779 9,704
laravel/framework

The Laravel Framework.

551,557,428 34,802
laravel/tinker

Powerful REPL for the Laravel framework.

462,518,693 7,436