Blade::render(''), ); } Filament::serving(static function () { Filament::registerUserMenuItems([ 'account' => UserMenuItem::make()->url(Profile::getUrl()), ]); }); if (FilamentCompanies::hasApiFeatures()) { Filament::serving(static function () { Filament::registerUserMenuItems([ UserMenuItem::make() ->label('API Tokens') ->icon('heroicon-s-lock-open') ->url(APITokens::getUrl()), ]); }); } Filament::serving(static function () { Filament::registerUserMenuItems([ 'logout' => UserMenuItem::make()->url(route('logout')), ]); }); RedirectResponse::macro('banner', function ($message) { return $this->with('flash', [ 'bannerStyle' => 'success', 'banner' => $message, ]); }); RedirectResponse::macro('dangerBanner', function ($message) { return $this->with('flash', [ 'bannerStyle' => 'danger', 'banner' => $message, ]); }); Filament::registerRenderHook( 'content.start', static fn (): string => Blade::render(''), ); $this->configurePermissions(); FilamentCompanies::createCompaniesUsing(CreateCompany::class); FilamentCompanies::updateCompanyNamesUsing(UpdateCompanyName::class); FilamentCompanies::addCompanyEmployeesUsing(AddCompanyEmployee::class); FilamentCompanies::inviteCompanyEmployeesUsing(InviteCompanyEmployee::class); FilamentCompanies::removeCompanyEmployeesUsing(RemoveCompanyEmployee::class); FilamentCompanies::deleteCompaniesUsing(DeleteCompany::class); FilamentCompanies::deleteUsersUsing(DeleteUser::class); Socialite::resolvesSocialiteUsersUsing(ResolveSocialiteUser::class); Socialite::createUsersFromProviderUsing(CreateUserFromProvider::class); Socialite::createConnectedAccountsUsing(CreateConnectedAccount::class); Socialite::updateConnectedAccountsUsing(UpdateConnectedAccount::class); Socialite::setUserPasswordsUsing(SetUserPassword::class); Socialite::handlesInvalidStateUsing(HandleInvalidState::class); Socialite::generatesProvidersRedirectsUsing(GenerateRedirectForProvider::class); } /** * Configure the roles and permissions that are available within the application. */ protected function configurePermissions(): void { FilamentCompanies::defaultApiTokenPermissions(['read']); FilamentCompanies::role('admin', 'Administrator', [ 'create', 'read', 'update', 'delete', ])->description('Administrator users can perform any action.'); FilamentCompanies::role('editor', 'Editor', [ 'read', 'create', 'update', ])->description('Editor users have the ability to read, create, and update.'); } }