. */ declare(strict_types=1); namespace FireflyIII\Api\V1\Requests\Autocomplete; use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Support\Request\ChecksLogin; use FireflyIII\Support\Request\ConvertsDataTypes; use Illuminate\Foundation\Http\FormRequest; /** * Class AutocompleteRequest */ class AutocompleteRequest extends FormRequest { use ChecksLogin; use ConvertsDataTypes; public function getData(): array { $types = $this->convertString('types'); $array = []; if ('' !== $types) { $array = explode(',', $types); } // remove 'initial balance' from allowed types. its internal $array = array_diff($array, [AccountTypeEnum::INITIAL_BALANCE->value, AccountTypeEnum::RECONCILIATION->value]); return [ 'types' => $array, 'query' => $this->convertString('query'), 'date' => $this->getCarbonDate('date'), ]; } public function rules(): array { return [ 'date' => 'date|after:1900-01-01|before:2099-12-31', ]; } }