<?php

namespace Modules\User\Policies;

use Illuminate\Auth\Access\HandlesAuthorization;
use Modules\User\Entities\BankDetail;

class BankDetailPolicy
{
    use HandlesAuthorization;

    public function viewAny($user): bool
    {
        return true;
    }

    public function view($user, ?BankDetail $bankDetail = null): bool
    {
        return $bankDetail === null || $bankDetail->user_id === $user->id;
    }

    public function create($user): bool
    {
        return true;
    }

    public function update($user, ?BankDetail $bankDetail = null): bool
    {
        return $bankDetail === null || $bankDetail->user_id === $user->id;
    }

    public function deleteAny($user): bool
    {
        return true;
    }

    public function delete($user, ?BankDetail $bankDetail = null): bool
    {
        return $bankDetail === null || $bankDetail->user_id === $user->id;
    }
}
