Explicação 🧐
A função getDisqusConfig tem como objetivo gerar um objeto de configuração para o Disqus, um sistema de comentários utilizado em páginas web. Ela recebe várias informações sobre o curso, módulo e lição, e retorna um objeto com as propriedades necessárias para a integração do Disqus.
Detalhamento do Código 🔍
- Definição da Função
getDisqusConfig🪝
export const getDisqusConfig = (courseSlug, moduleIndex, lessonIndex, lessonName, courseId) => ({getDisqusConfig: A função é exportada diretamente, permitindo que seja utilizada em outros módulos. Ela recebe cinco parâmetros:courseSlug: O identificador do curso na URL.moduleIndex: O índice do módulo do curso (provavelmente para identificar a ordem do módulo).lessonIndex: O índice da lição dentro do módulo.lessonName: O nome da lição, que será utilizado como o título dos comentários no Disqus.courseId: O identificador único do curso, usado para diferenciar os comentários de cursos distintos.
- Retorno de Objeto com Configurações ⚙️
url: `https://petacademy.vercel/cursos/${courseSlug}/${parseInt(moduleIndex) + 1}/${
parseInt(lessonIndex) + 1
}`,
identifier: `${courseId}-${parseInt(moduleIndex) + 1}-${parseInt(lessonIndex) + 1}`,
title: lessonName,
language: 'pt_BR',
})url: Ourlé gerado concatenando ocourseSlug,moduleIndexelessonIndex. A funçãoparseInté utilizada para garantir que os índices sejam tratados como números e somados com 1, já que os índices geralmente começam de 0. Isso cria uma URL única para cada lição de cada curso.identifier: Oidentifieré uma string única criada combinando ocourseId,moduleIndexelessonIndex, também com incremento de 1. Isso garante que cada comentário no Disqus seja vinculado de forma única a um curso, módulo e lição específicos.title: Otitlerecebe o nome da lição, o que será exibido no sistema de comentários do Disqus como título para os comentários daquela lição.language: Olanguageé definido como'pt_BR', indicando que a interface do Disqus será exibida em português do Brasil.
Código Completo 👨💻
export const getDisqusConfig = (courseSlug, moduleIndex, lessonIndex, lessonName, courseId) => ({
url: `https://petacademy.vercel/cursos/${courseSlug}/${parseInt(moduleIndex) + 1}/${
parseInt(lessonIndex) + 1
}`,
identifier: `${courseId}-${parseInt(moduleIndex) + 1}-${parseInt(lessonIndex) + 1}`,
title: lessonName,
language: 'pt_BR',
})