Skip to content

Commit 2ba2be5

Browse files
committed
add knowledge base scaffolding
1 parent ca8ab9f commit 2ba2be5

10 files changed

Lines changed: 511 additions & 77 deletions

File tree

app/Providers/Filament/AdminPanelProvider.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,13 @@
2121
use Filament\Http\Middleware\AuthenticateSession;
2222
use Filament\Http\Middleware\DisableBladeIconComponents;
2323
use Filament\Http\Middleware\DispatchServingFilamentEvent;
24+
use Filament\Navigation\NavigationItem;
2425
use Filament\Panel;
2526
use Filament\PanelProvider;
2627
use Filament\Support\Colors\Color;
2728
use Filament\Support\Enums\Width;
2829
use Filament\Support\Icons\Heroicon;
30+
use Guava\FilamentKnowledgeBase\Plugins\KnowledgeBaseCompanionPlugin;
2931
use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
3032
use Illuminate\Cookie\Middleware\EncryptCookies;
3133
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken;
@@ -62,6 +64,11 @@ public function panel(Panel $panel): Panel
6264
->resourceEditPageRedirect('view')
6365
->readOnlyRelationManagersOnResourceViewPagesByDefault(false)
6466
->passwordReset()
67+
->navigationItems([
68+
NavigationItem::make('Manual')
69+
->url('/manual')
70+
->sort(9999),
71+
])
6572
->userMenuItems([
6673
Action::make('nurse_profile')
6774
->label(__('auth.profile'))
@@ -99,6 +106,10 @@ public function panel(Panel $panel): Panel
99106

100107
FilamentFullCalendarPlugin::make()
101108
->editable(),
109+
110+
KnowledgeBaseCompanionPlugin::make()
111+
->knowledgeBasePanelId('manual'),
112+
102113
])
103114
->widgets([
104115
//
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace App\Providers\Filament;
6+
7+
use Filament\Http\Middleware\Authenticate;
8+
use Filament\Http\Middleware\AuthenticateSession;
9+
use Filament\Http\Middleware\DisableBladeIconComponents;
10+
use Filament\Http\Middleware\DispatchServingFilamentEvent;
11+
use Filament\Panel;
12+
use Filament\PanelProvider;
13+
use Filament\Support\Colors\Color;
14+
use Filament\Support\Enums\Width;
15+
use Guava\FilamentKnowledgeBase\Plugins\KnowledgeBasePlugin;
16+
use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
17+
use Illuminate\Cookie\Middleware\EncryptCookies;
18+
use Illuminate\Foundation\Http\Middleware\PreventRequestForgery;
19+
use Illuminate\Routing\Middleware\SubstituteBindings;
20+
use Illuminate\Session\Middleware\StartSession;
21+
use Illuminate\View\Middleware\ShareErrorsFromSession;
22+
23+
class ManualPanelProvider extends PanelProvider
24+
{
25+
public function panel(Panel $panel): Panel
26+
{
27+
return $panel
28+
->id('manual')
29+
->path('manual')
30+
->colors([
31+
// 'primary' => Color::Amber,
32+
])
33+
->maxContentWidth(Width::Full)
34+
->viteTheme('resources/css/app.css')
35+
->brandLogo(fn () => view('components.brand'))
36+
->brandLogoHeight('3rem')
37+
->unsavedChangesAlerts()
38+
->globalSearch(false)
39+
->userMenu(false)
40+
->pages([
41+
//
42+
])
43+
->widgets([
44+
//
45+
])
46+
->plugins([
47+
KnowledgeBasePlugin::make(base_path('docs')),
48+
])
49+
->middleware([
50+
EncryptCookies::class,
51+
AddQueuedCookiesToResponse::class,
52+
StartSession::class,
53+
AuthenticateSession::class,
54+
ShareErrorsFromSession::class,
55+
PreventRequestForgery::class,
56+
SubstituteBindings::class,
57+
DisableBladeIconComponents::class,
58+
DispatchServingFilamentEvent::class,
59+
])
60+
->authMiddleware([
61+
Authenticate::class,
62+
]);
63+
}
64+
}

bootstrap/providers.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,6 @@
66
App\Providers\AppServiceProvider::class,
77
App\Providers\FilamentServiceProvider::class,
88
App\Providers\Filament\AdminPanelProvider::class,
9+
App\Providers\Filament\ManualPanelProvider::class,
910
Aedart\Antivirus\Providers\AntivirusServiceProvider::class,
1011
];

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
"commitglobal/enum-utils": "^v1.1",
1414
"filament/filament": "^5.7",
1515
"filament/spatie-laravel-media-library-plugin": "^5.7",
16+
"guava/filament-knowledge-base": "^3.3",
1617
"guzzlehttp/guzzle": "^7.12",
1718
"jeffgreco13/filament-breezy": "^3.2",
1819
"kalnoy/nestedset": "^7.0",

0 commit comments

Comments
 (0)