PHP code example of yemenpoint / filament-tree

1. Go to this page and download the library: Download yemenpoint/filament-tree library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

yemenpoint / filament-tree example snippets


Schema::table('tryings', function (Blueprint $table) {
    $table->json("items")->nullable();
});


use Yemenpoint\FilamentTree\Forms\Components\TreeField;

TreeField::make("items")
->setMaxDepth(999)
->default([["id" => "1", "name" => "item 1", "children" => [["id" => "2", "name" => "item 2", "children" => []]]]]),

Schema::create('categories', function (Blueprint $table) {
    $table->id();
    $table->unsignedBigInteger('parent_id')->nullable();
    $table->integer('order')->nullable()->default(0);
    $table->string('name');
});



namespace App\Models;


use Illuminate\Database\Eloquent\Model;
use Yemenpoint\FilamentTree\HasTree;

class Category extends Model
{
    use HasTree;
    
    function children()
    {
        return $this->hasMany(self::class, 'parent_id', 'id')->with("children")->orderBy("order");
    }
}

 



namespace App\Filament\Resources\Application\CategoryResource\Pages;

use App\Filament\Resources\Application\CategoryResource;
use App\Models\Category;
use Yemenpoint\FilamentTree\TreePage;

class TreeCategory extends TreePage
{
    protected static string $resource = CategoryResource::class;

    public function getItems(): array
    {
        return Category::with("children")->whereNull("parent_id")->orderBy("order")->get()->toArray();
    }
    
    public function getMaxDepth(): int
    {
        return parent::getMaxDepth(); // TODO: Change the autogenerated stub
    }

    public function isDisabled(): bool
    {
        return parent::isDisabled(); // TODO: Change the autogenerated stub
    }

}

sh
php artisan vendor:publish --tag="filament-tree-assets"
php artisan vendor:publish --tag="filament-tree-views"