forked from lara-zeus/bolt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBoltPlugin.php
66 lines (56 loc) · 1.68 KB
/
BoltPlugin.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
namespace LaraZeus\Bolt;
use Closure;
use Filament\Contracts\Plugin;
use Filament\Panel;
use Filament\Support\Concerns\EvaluatesClosures;
use LaraZeus\Bolt\Filament\Resources\CategoryResource;
use LaraZeus\Bolt\Filament\Resources\CollectionResource;
use LaraZeus\Bolt\Filament\Resources\FormResource;
use LaraZeus\FilamentPluginTools\Concerns\CanDisableBadges;
use LaraZeus\FilamentPluginTools\Concerns\CanHideResources;
use LaraZeus\FilamentPluginTools\Concerns\HasModels;
use LaraZeus\FilamentPluginTools\Concerns\HasNavigationGroupLabel;
use LaraZeus\FilamentPluginTools\Concerns\HasRouteNamePrefix;
final class BoltPlugin implements Plugin
{
use CanDisableBadges;
use CanHideResources;
use Configuration;
use EvaluatesClosures;
use HasModels;
use HasNavigationGroupLabel;
use HasRouteNamePrefix;
protected Closure | string $navigationGroupLabel = 'Forms';
public array $defaultGloballySearchableAttributes = [
CategoryResource::class => ['name', 'slug'],
CollectionResource::class => ['name', 'values'],
FormResource::class => ['name', 'slug'],
];
public function getId(): string
{
return 'zeus-bolt';
}
public function register(Panel $panel): void
{
$panel
->resources([
CollectionResource::class,
FormResource::class,
CategoryResource::class,
]);
}
public static function make(): static
{
return new self;
}
public static function get(): static
{
// @phpstan-ignore-next-line
return filament('zeus-bolt');
}
public function boot(Panel $panel): void
{
//
}
}