To install through composer, run the following command from terminal:
composer require "nova-kit/helpers"
NovaKit\column_name(string|\Illuminate\Database\Eloquent\Model $model, string $attribute): string;
The function generate qualified column name for an eloquent model:
use function NovaKit\column_name;
return column_name(App\Models\User::class, 'email');
NovaKit\eloquent_exists(\Illuminate\Database\Eloquent\Model|mixed $model): bool;
The function checks if given $model
is an instance of Illuminate\Database\Eloquent\Model
and it exists in the database:
use App\Models\User;
use function NovaKit\eloquent_exists;
$user = User::find(5);
return eloquent_exists($user);
NovaKit\table_name(string|\Illuminate\Database\Eloquent\Model $model): string;
The function generate table name for an eloquent model:
use function NovaKit\table_name;
return table_name(App\Models\User::class);
NovaKit\has_ordering(\Laravel\Nova\Http\Requests\NovaRequest $request): bool;
Determine if current Request has any ordering.
use Laravel\Nova\Http\Requests\NovaRequest;
use function NovaKit\has_ordering;
public static function indexQuery(NovaRequest $request, $query)
{
if (! has_ordering($request)) {
$query->orderBy('name');
}
}
NovaKit\running_action(\Illuminate\Http\Request $request, ?string $action): bool;
Determine NovaRequest is currently Running an Action Request.
use Illuminate\Http\Request;
use Laravel\Nova\Http\Requests\NovaRequest;
public function authorizedToUpdate(Request $request)
{
if (running_action($request, 'open-on-platform')) {
return $request->user()->canModerateResources();
}
return $this->authorizedTo($request, 'update');
}
NovaKit\is_column_name(mixed $column): bool;
Validate if given $column
is a valid column name.
use function NovaKit\is_column_name;
if (is_column_name($request->query('sortBy'))) {
$query->latest($request->query('sortBy'));
}
NovaKit\safe_int(mixed $value): int|string;
Convert large id higher than JavaScript's Number.MAX_SAFE_INTEGER
to string.
use function NovaKit\safe_int;
return safe_int(9007199254741001); // will return "9007199254741001"
NovaKit\schemaless_url(string $url): string;
Get schemaless URL for given $url
use function NovaKit\schemaless_url;
return schemaless_url('https://github.com'); // will return "github.com"