From d0fd6b714423c0cb0f47ee3f80ae0611fe29dba5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Mur=C3=A7a?= Date: Thu, 7 Jul 2022 13:58:00 -0300 Subject: [PATCH] Extract mock data to services --- src/context/user.js | 205 +---------------------------------- src/services/mocks.js | 169 +++++++++++++++++++++++++++++ src/services/user-service.js | 36 ++++++ 3 files changed, 211 insertions(+), 199 deletions(-) create mode 100644 src/services/mocks.js create mode 100644 src/services/user-service.js diff --git a/src/context/user.js b/src/context/user.js index 0887c2d..e6249a2 100644 --- a/src/context/user.js +++ b/src/context/user.js @@ -1,205 +1,12 @@ import { createContext, useContext, useEffect, useState } from 'react'; import { useLocation } from 'react-router-dom'; -import { sleep } from '../utils/sleep'; import { useAuthState } from './auth'; - -const allClassrooms = [ - { - id: '321', - name: 'Introdução à Ciência de Dados', - abbreviation: 'ICD', - color: '#006FF2', - teachers: [ - { - name: 'Carlos Alexandre Silva', - avatar: - 'https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=50&q=80', - }, - ], - }, - { - id: '123', - name: 'Gestão de Projetos', - abbreviation: 'GP', - color: '#7900F2', - teachers: [ - { - name: 'Míriam Lúcia Barbosa', - avatar: - 'https://images.unsplash.com/photo-1580489944761-15a19d654956?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=50&q=80', - }, - { - name: 'Alexandre Couto Cardoso', - avatar: '/assets/alex.jpg', - }, - ], - }, - { - id: '666', - name: 'Banco de Dados II', - abbreviation: 'BDII', - color: '#FF7A00', - teachers: [ - { - name: 'Cristiane Norbiato Targa', - avatar: - 'https://lh3.googleusercontent.com/a-/AOh14GhwNeQ0h2eKl2WXGuwyDzvLWtrvyrG2kJtZ7A1EBw=s75-c', - }, - ], - }, - { - id: '765', - name: 'Contabilidade Básica', - abbreviation: 'CB', - color: '#BB0000', - teachers: [ - { - name: 'Alexandre Couto Cardoso', - avatar: '/assets/alex.jpg', - }, - ], - }, - { - id: '333', - name: 'Linguagens de Programação', - abbreviation: 'LP', - color: '#039200', - teachers: [ - { - name: 'Gabriel Felipe Cândido Novy', - avatar: - 'https://lh3.googleusercontent.com/a-/AOh14GgvfrD--cl25V_3UOAR93sN_jKdYNJ9PXhUH2zXhQ=s75-c', - }, - ], - }, -]; - -const allAssignments = [ - { - id: '5435', - title: - 'Prova 1 - Armazenamento de Dados. Python em CD. Armazenamento Analítico', - dueDate: '2022-07-01 23:59', - scores: [ - { - classroomId: '321', - value: 30, - }, - ], - classrooms: allClassrooms.filter(c => c.id === '321'), - }, - { - id: '1234', - title: 'Trabalho NoSQL', - dueDate: '2022-06-29 22:00', - scores: [ - { - classroomId: '666', - value: 35, - }, - ], - classrooms: allClassrooms.filter(c => c.id === '666'), - }, - { - id: '1234', - title: 'Atividade 2 - Estudo de caso Sapiens Informática', - dueDate: '2022-06-25 23:59', - scores: [ - { - classroomId: '123', - value: 10, - }, - ], - classrooms: allClassrooms.filter(c => c.id === '123'), - }, - { - id: '3671', - title: - 'AA08 - Atividade de Aprendizagem 08 - Componentes de rateio de custos', - dueDate: '2022-07-23 10:00', - scores: [ - { - classroomId: '765', - value: 1, - }, - ], - classrooms: allClassrooms.filter(c => c.id === '765'), - }, - { - id: '1717', - title: 'Trabalho interdisciplinar', - dueDate: '2022-08-20 23:59', - scores: [ - { - classroomId: '666', - value: 20, - }, - { - classroomId: '321', - value: 30, - }, - ], - classrooms: allClassrooms.filter(c => c.id === '666' || c.id === '321'), - }, -]; - -const getFaq = () => - sleep(2000).then(() => { - console.log('Fetching FAQ...'); - return { - data: [ - { - question: 'Como faço para acessar a biblicoteca virtual?', - answer: - 'Mussum Ipsum, cacilds vidis litro abertis. Delegadis gente finis, bibendum egestas augue arcu ut est.Quem num gosta di mé, boa gentis num é.Quem num gosta di mim que vai caçá sua turmis!Leite de capivaris, leite de mula manquis sem cabeça.', - }, - { - question: 'Onde consigo informações de estágio?', - answer: - 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', - }, - { - question: 'Como faço para solicitar uma declaração de matrícula?', - answer: - 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', - }, - { - question: 'Onde encontro a matriz curricular do meu curso?', - answer: - 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', - }, - { - question: 'Como faço para solicitar meu histórico escolar?', - answer: - 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', - }, - ], - }; - }); - -const getClassrooms = userId => - sleep(3000).then(() => { - console.log('userId: ' + userId); - return { - data: allClassrooms, - }; - }); - -const getClassroomById = classId => - sleep(3000).then(() => { - console.log('classId ' + classId); - return { - data: allClassrooms.filter(c => c.id === classId)[0], - }; - }); - -const getAssignments = userId => - sleep(4000).then(() => { - console.log('userId: ' + userId); - return { - data: allAssignments, - }; - }); +import { + getAssignments, + getClassroomById, + getClassrooms, + getFaq, +} from '../services/user-service'; const UserContext = createContext(); diff --git a/src/services/mocks.js b/src/services/mocks.js new file mode 100644 index 0000000..5010121 --- /dev/null +++ b/src/services/mocks.js @@ -0,0 +1,169 @@ +const allClassrooms = [ + { + id: '321', + name: 'Introdução à Ciência de Dados', + abbreviation: 'ICD', + color: '#006FF2', + teachers: [ + { + name: 'Carlos Alexandre Silva', + avatar: + 'https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=50&q=80', + }, + ], + }, + { + id: '123', + name: 'Gestão de Projetos', + abbreviation: 'GP', + color: '#7900F2', + teachers: [ + { + name: 'Míriam Lúcia Barbosa', + avatar: + 'https://images.unsplash.com/photo-1580489944761-15a19d654956?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=50&q=80', + }, + { + name: 'Alexandre Couto Cardoso', + avatar: '/assets/alex.jpg', + }, + ], + }, + { + id: '666', + name: 'Banco de Dados II', + abbreviation: 'BDII', + color: '#FF7A00', + teachers: [ + { + name: 'Cristiane Norbiato Targa', + avatar: + 'https://lh3.googleusercontent.com/a-/AOh14GhwNeQ0h2eKl2WXGuwyDzvLWtrvyrG2kJtZ7A1EBw=s75-c', + }, + ], + }, + { + id: '765', + name: 'Contabilidade Básica', + abbreviation: 'CB', + color: '#BB0000', + teachers: [ + { + name: 'Alexandre Couto Cardoso', + avatar: '/assets/alex.jpg', + }, + ], + }, + { + id: '333', + name: 'Linguagens de Programação', + abbreviation: 'LP', + color: '#039200', + teachers: [ + { + name: 'Gabriel Felipe Cândido Novy', + avatar: + 'https://lh3.googleusercontent.com/a-/AOh14GgvfrD--cl25V_3UOAR93sN_jKdYNJ9PXhUH2zXhQ=s75-c', + }, + ], + }, +]; + +const allAssignments = [ + { + id: '5435', + title: + 'Prova 1 - Armazenamento de Dados. Python em CD. Armazenamento Analítico', + dueDate: '2022-07-01 23:59', + scores: [ + { + classroomId: '321', + value: 30, + }, + ], + classrooms: allClassrooms.filter(c => c.id === '321'), + }, + { + id: '1234', + title: 'Trabalho NoSQL', + dueDate: '2022-06-29 22:00', + scores: [ + { + classroomId: '666', + value: 35, + }, + ], + classrooms: allClassrooms.filter(c => c.id === '666'), + }, + { + id: '1234', + title: 'Atividade 2 - Estudo de caso Sapiens Informática', + dueDate: '2022-06-25 23:59', + scores: [ + { + classroomId: '123', + value: 10, + }, + ], + classrooms: allClassrooms.filter(c => c.id === '123'), + }, + { + id: '3671', + title: + 'AA08 - Atividade de Aprendizagem 08 - Componentes de rateio de custos', + dueDate: '2022-07-23 10:00', + scores: [ + { + classroomId: '765', + value: 1, + }, + ], + classrooms: allClassrooms.filter(c => c.id === '765'), + }, + { + id: '1717', + title: 'Trabalho interdisciplinar', + dueDate: '2022-08-20 23:59', + scores: [ + { + classroomId: '666', + value: 20, + }, + { + classroomId: '321', + value: 30, + }, + ], + classrooms: allClassrooms.filter(c => c.id === '666' || c.id === '321'), + }, +]; + +const faq = [ + { + question: 'Como faço para acessar a biblicoteca virtual?', + answer: + 'Mussum Ipsum, cacilds vidis litro abertis. Delegadis gente finis, bibendum egestas augue arcu ut est.Quem num gosta di mé, boa gentis num é.Quem num gosta di mim que vai caçá sua turmis!Leite de capivaris, leite de mula manquis sem cabeça.', + }, + { + question: 'Onde consigo informações de estágio?', + answer: + 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', + }, + { + question: 'Como faço para solicitar uma declaração de matrícula?', + answer: + 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', + }, + { + question: 'Onde encontro a matriz curricular do meu curso?', + answer: + 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', + }, + { + question: 'Como faço para solicitar meu histórico escolar?', + answer: + 'Mussum Ipsum, cacilds vidis litro abertis. Quem num gosta di mim que vai caçá sua turmis!In elementis mé pra quem é amistosis quis leo.Interessantiss quisso pudia ce receita de bolis, mais bolis eu num gostis.Si num tem leite então bota uma pinga aí cumpadi! \n Mé faiz elementum girarzis, nisi eros vermeio.Não sou faixa preta cumpadi, sou preto inteiris, inteiris.Manduma pindureta quium dia nois paga.Tá deprimidis, eu conheço uma cachacis que pode alegrar sua vidis.', + }, +]; + +export { allClassrooms, allAssignments, faq }; diff --git a/src/services/user-service.js b/src/services/user-service.js new file mode 100644 index 0000000..bae7c73 --- /dev/null +++ b/src/services/user-service.js @@ -0,0 +1,36 @@ +import { sleep } from '../utils/sleep'; +import { allClassrooms, allAssignments, faq } from './mocks'; + +const getClassrooms = userId => + sleep(3000).then(() => { + console.log('userId: ' + userId); + return { + data: allClassrooms, + }; + }); + +const getClassroomById = classId => + sleep(3000).then(() => { + console.log('classId ' + classId); + return { + data: allClassrooms.filter(c => c.id === classId)[0], + }; + }); + +const getAssignments = userId => + sleep(4000).then(() => { + console.log('userId: ' + userId); + return { + data: allAssignments, + }; + }); + +const getFaq = () => + sleep(2000).then(() => { + console.log('Fetching FAQ...'); + return { + data: faq, + }; + }); + +export { getClassrooms, getClassroomById, getAssignments, getFaq };