File manager - Edit - /home/linknsbh/cecil-hotel.net/vendor/botble/platform/base/src/GlobalSearch/GlobalSearchableManager.php
Back
<?php namespace Botble\Base\GlobalSearch; use Botble\Base\Contracts\GlobalSearchableManager as GlobalSearchableManagerContract; use Botble\Base\Contracts\GlobalSearchableProvider as GlobalSearchableProviderContract; use Botble\Base\GlobalSearch\Providers\DashboardMenuProvider; use Botble\Base\GlobalSearch\Providers\PanelSectionProvider; use Illuminate\Support\Collection; class GlobalSearchableManager implements GlobalSearchableManagerContract { public function __construct( protected array $providers = [ DashboardMenuProvider::class, PanelSectionProvider::class, ], protected array $resolvedProviders = [], ) { } public function registerProvider(string $provider): static { $this->providers[] = $provider; return $this; } public function search(string $keyword, int $limit = 20): Collection { $result = collect(); foreach ($this->providers as $provider) { $result = $result->merge( $this->getProvider($provider)->search($keyword)->take($limit) ); } return $result; } protected function getProvider(string $provider): GlobalSearchableProviderContract { return $this->resolvedProviders[$provider] ??= app($provider); } }
| ver. 1.4 |
Github
|
.
| PHP 8.2.31 | Generation time: 0.53 |
proxy
|
phpinfo
|
Settings