📚 Documentação do Arquivo Aula.ts
O arquivo Aula.ts
, localizado na pasta cursos
dentro de collections
, é responsável pela configuração do campo Aulas
. Esse campo permite o gerenciamento das informações de cada aula no sistema.
🏗️ Configuração do Grupo
import { Field } from 'payload'
import {
lexicalEditor,
FixedToolbarFeature,
InlineToolbarFeature,
} from '@payloadcms/richtext-lexical'
import PerguntaObjetiva from '@/blocks/PerguntaObjetiva'
import PerguntaDissertativa from '@/blocks/PerguntaDissertativa'
import Flashcard from '@/blocks/Flashcard'
import VerdadeiroOuFalso from '@/blocks/VerdadeiroOuFalso'
export const aulas: Field = {
name: 'aula',
type: 'group',
fields: [
{
name: 'nomeAula',
label: 'Nome',
type: 'text',
unique: true,
required: true,
maxLength: 100,
},
{
name: 'descricao',
label: 'Descrição',
type: 'richText',
editor: lexicalEditor({
features: ({ defaultFeatures }) => {
return [...defaultFeatures, FixedToolbarFeature(), InlineToolbarFeature()]
},
}),
required: true,
},
{
name: 'videoAula',
label: 'Iframe do Vídeo Aula',
type: 'text',
required: true,
maxLength: 255,
},
{
name: 'exercicios',
label: 'Exercícios',
type: 'blocks',
blocks: [PerguntaObjetiva, PerguntaDissertativa, Flashcard, VerdadeiroOuFalso],
},
],
}
🔍 Estrutura do Campo
📌 Tipo
- Type:
group
- Nome do Campo:
aula
📌 Campos do Grupo
-
Nome da Aula 🏷️
- Name:
nomeAula
- Label:
Nome
- Type:
text
- Unique:
true
- Required:
true
- Max Length:
100
- Descrição: Nome único da aula, obrigatório e limitado a 100 caracteres.
- Name:
-
Descrição 📝
- Name:
descricao
- Label:
Descrição
- Type:
richText
- Editor: Lexical com:
FixedToolbarFeature
: Barra de ferramentas fixa.InlineToolbarFeature
: Barra de ferramentas inline.
- Required:
true
- Descrição: Campo para descrever a aula com formatação rica.
- Name:
-
Iframe do Vídeo Aula 🎥
- Name:
videoAula
- Label:
Iframe do Vídeo Aula
- Type:
text
- Required:
true
- Max Length:
255
- Descrição: Armazena o link do vídeo da aula, obrigatório e com limite de 255 caracteres.
- Name:
-
Exercícios ✍️
- Name:
exercicios
- Label:
Exercícios
- Type:
blocks
- Blocks:
PerguntaObjetiva
PerguntaDissertativa
Flashcard
VerdadeiroOuFalso
- Descrição: Permite a inclusão de diferentes tipos de exercícios.
- Name:
✅ Considerações Finais
O campo aulas
permite armazenar informações essenciais sobre cada aula, garantindo flexibilidade e integridade dos dados. Todos os subcampos são obrigatórios, assegurando que as informações essenciais sejam fornecidas.
🔗 Exemplos de Uso
- Adicionar Aula: Um formulário para adicionar uma nova aula.
- Editar Aula: Uma interface para editar uma aula existente.
- Visualizar Aula: Exibição completa dos detalhes da aula.
Essa documentação fornece uma visão clara da configuração do campo Aulas
. Caso precise de mais detalhes, fique à vontade para perguntar! 🚀