Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
| Total | |
100.00% |
24 / 24 |
|
100.00% |
2 / 2 |
CRAP | |
100.00% |
1 / 1 |
| DocumentVariableCatalog | |
100.00% |
24 / 24 |
|
100.00% |
2 / 2 |
2 | |
100.00% |
1 / 1 |
| all | |
100.00% |
23 / 23 |
|
100.00% |
1 / 1 |
1 | |||
| keys | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
| 1 | <?php |
| 2 | |
| 3 | declare(strict_types=1); |
| 4 | |
| 5 | namespace ImovelZapAi\Documents\Application\Services; |
| 6 | |
| 7 | final class DocumentVariableCatalog |
| 8 | { |
| 9 | /** |
| 10 | * @return list<array{key: string, label: string, group: string}> |
| 11 | */ |
| 12 | public function all(): array |
| 13 | { |
| 14 | return [ |
| 15 | ['key' => 'cliente.nome', 'label' => 'Nome do cliente', 'group' => 'Cliente'], |
| 16 | ['key' => 'cliente.telefone', 'label' => 'Telefone do cliente', 'group' => 'Cliente'], |
| 17 | ['key' => 'proprietario.nome', 'label' => 'Nome do proprietário', 'group' => 'Proprietário'], |
| 18 | ['key' => 'imovel.titulo', 'label' => 'Título do imóvel', 'group' => 'Imóvel'], |
| 19 | ['key' => 'imovel.endereco', 'label' => 'Endereço', 'group' => 'Imóvel'], |
| 20 | ['key' => 'imovel.cidade', 'label' => 'Cidade', 'group' => 'Imóvel'], |
| 21 | ['key' => 'imovel.valor', 'label' => 'Valor do imóvel', 'group' => 'Imóvel'], |
| 22 | ['key' => 'imovel.condominio', 'label' => 'Valor do condomínio', 'group' => 'Imóvel'], |
| 23 | ['key' => 'imovel.area', 'label' => 'Área', 'group' => 'Imóvel'], |
| 24 | ['key' => 'imovel.quartos', 'label' => 'Quartos', 'group' => 'Imóvel'], |
| 25 | ['key' => 'imovel.descricao', 'label' => 'Descrição do imóvel', 'group' => 'Imóvel'], |
| 26 | ['key' => 'documento.valor', 'label' => 'Valor do documento', 'group' => 'Documento'], |
| 27 | ['key' => 'documento.numero', 'label' => 'Número do documento', 'group' => 'Documento'], |
| 28 | ['key' => 'documento.titulo', 'label' => 'Título do documento', 'group' => 'Documento'], |
| 29 | ['key' => 'documento.mensagem', 'label' => 'Mensagem introdutória', 'group' => 'Documento'], |
| 30 | ['key' => 'corretor.nome', 'label' => 'Nome do corretor', 'group' => 'Corretor'], |
| 31 | ['key' => 'corretor.creci', 'label' => 'CRECI', 'group' => 'Corretor'], |
| 32 | ['key' => 'corretor.telefone', 'label' => 'Telefone do corretor', 'group' => 'Corretor'], |
| 33 | ['key' => 'empresa.nome', 'label' => 'Nome da imobiliária', 'group' => 'Empresa'], |
| 34 | ['key' => 'empresa.logo', 'label' => 'URL do logo', 'group' => 'Empresa'], |
| 35 | ['key' => 'data.hoje', 'label' => 'Data de hoje', 'group' => 'Data'], |
| 36 | ]; |
| 37 | } |
| 38 | |
| 39 | /** @return list<string> */ |
| 40 | public function keys(): array |
| 41 | { |
| 42 | return array_column($this->all(), 'key'); |
| 43 | } |
| 44 | } |