I'd like to know how to code the search input to work for both uppercase and lowercase letters?

It doesn't work when I type in lowercase, and I find that very annoying.

<?php

namespace App\Dashboard\Produtos;

use \koolreport\dashboard\widgets\Table;
use Database\AutoMaker;
use \koolreport\dashboard\fields\Text;
use koolreport\dashboard\admin\screens\ListScreen;
use \koolreport\dashboard\fields\Currency;
use koolreport\dashboard\admin\relations\HasMany;
use koolreport\dashboard\admin\Resource;
use koolreport\dashboard\fields\ID;
use koolreport\dashboard\inputs\Select;
use koolreport\dashboard\validators\NumericValidator;
use koolreport\dashboard\validators\RequiredFieldValidator;

class ProductTable extends Table
{
    protected function onInit()
    {
        $this->pageSize(5);
        $this->searchable(true);
        $this->showSearchBox(true); 
        $this->searchAlign("left");
    }

    protected function dataSource()
    {
        $selecionada = $this->sibling("ProductByLine")->selectedAssociada();
        $compradores = $this->sibling("CompradoresSelect")->value();              
        $periodoRange = $this->sibling("PeriodoRanger")->value();

        if ($selecionada === null) {
            return []; 
        }

        if (!empty($search)) {
            $query->where(function($q) use ($search) {
                $q->whereRaw("LOWER(prod.codigo) LIKE LOWER(?)", ["%{$search}%"])
                ->orWhereRaw("LOWER(prod.descricao) LIKE LOWER(?)", ["%{$search}%"])
                ->orWhereRaw("LOWER(prod.complemento_descricao) LIKE LOWER(?)", ["%{$search}%"]);
            });
        }

        return AutoMaker::table("tb_pedidos ped")
            ->join("tb_rel_itens_pedidos rip", "rip.fk_pedido", "=", "ped.id_pedido")
            ->join("tb_produtos prod", "prod.id_produto", "=", "rip.fk_produto")
            ->leftJoin("tb_clientes_associados clia", "clia.id_cliente_associado", "=", "ped.fk_cliente_associado")
            ->where("ped.fk_cliente", $this->app()->user()->others()['id_cliente'])
            ->whereIn("ped.status", ['C', 'P'])
            ->where("ped.tipo", 'N')
            ->whereRaw("rip.desaprovado IS FALSE")
            ->whereBetween('ped.data_resposta', $periodoRange)
            ->when($compradores, function($query) use ($compradores) {
                return $query->whereIn('ped.fk_usuario_cliente', $compradores); 
            })
            ->whereRaw("COALESCE(clia.nome_abreviado, 'Matriz') = ?", [$selecionada])
            ->groupBy("prod.id_produto", "prod.descricao", "prod.codigo", "prod.complemento_descricao")
            ->orderBy("total", "desc")
            ->select("prod.descricao", "prod.codigo", "prod.complemento_descricao")
            ->selectRaw("SUM((rip.dados_cotacao->>'preco')::decimal(12,5) * rip.quantidade) AS total");
    }

    protected function fields()
    {
        return [
            Text::create("codigo")
                ->label("Cód.")
                ->searchable(true),

            Text::create("descricao")
                ->label("Descrição")
                ->searchable(true),

            Text::create("complemento_descricao")
                ->label("Complemento")
                ->searchable(true),

            Currency::create("total")
                ->label("Total R$")
                ->BRL()
                ->symbol()
        ];
    }
}