Salve, galera! Beleza? Continuamos essa saga aqui no Domain Dream Design. Agora que nós já temos o banco de dados totalmente integrado aqui na nossa aplicação, inclusive até a gente não rodou na aula passada, nós podemos rodar aqui o comando startdev, né? Acho que a gente rodou ele lá no comecinho, e a gente vê aqui que o microRM module foi iniciado, e tem até uns console logs que eu tenho que tirar como lixo na aplicação. Nessa aula a gente vai trabalhar com os repositórios. Antes de mexer aqui com a montagem do Cephs, eu preciso dos repositórios. Esses repositórios vão ficar aonde? Eu só tenho repositório da parte de eventos. Então eles vão ficar no módulo de eventos do Nest. Ah, mas eu posso ter um outro módulo aqui que reúsa esses repositórios? Sim, aí a gente pode utilizar o artifício aqui do Nest de os módulos se conversarem para que esses repositórios sejam acessíveis. Então, mais uma vez, a gente vai mexer com a parte dos providers. E sempre como esse serviço, que é o repositório, aqui dentro do core, ele não conhece o NAT nem nada disso, sempre vai ser esse registro específico aqui do NAT, porque normalmente a gente passa aqui o serviço para ser registrado, a referência dele ali, porque ele já tem o injectable como próprio service. E os nossos serviços não têm isso, então eles têm que ser registrados manualmente, tem que ser passada ali as dependências deles. Então vamos começar aqui pelo I Partner Repository, porque eu quero que seja registrado o contexto da nossa interface. Lembrando que interface eu não consegui, eu até poderia usar ela aqui, mas ela é descartada depois, TypeScript não vai aceitar. Aqui em Provide tem que ser um tipo concreto, um tipo que fique aí. Então, aqui nós vamos usar a Factory, mais uma vez, recebendo o Entity Manager, porque o nosso partner, aí que está aqui, deixa eu colocar em várias linhas, inclusive tem alguma coisa errada aqui, eu acho que é a sintaxe. Agora ele conseguiu pegar. Então eu passo o em, e já está disponível aqui no contêiner de serviços, e eu tenho que importar esse carinha para cá. E tem alguma coisa que eu estou fazendo de errado aqui na verdade é porque eu esqueci dos dois pontos aqui a culpa é minha achando que era o vs code tá então aqui pode ser até simplificado acho que ele depois pode simplificar de colocar online também assim seria aplicável. Eu tenho que passar para ele aqui o que eu quero injetar aqui no de cima. Então, inject tem que ter o Entity Manager. E assim a gente vai fazer para os outros. Não convém nem a gente ficar digitando do zero, que eu já tenho esses outros carinhas. Então, a gente só vai importando aqui o YCustomRepository, o repositório do MySQL, o do evento, o orderMySQLRepository e do SpotReservation. Tudo alinhadinho e tal, até aqui os importes. Claro também que a gente pode fazer alguns exports lá no core para que não fique... Eu poderia criar um index.ts e já entra em outras coisas que a gente não vai entrar aqui no... Não é foco do nosso domain do design. Mas uma vez que a gente está aqui com os repositórios, já temos o Unit of Work, eu consigo montar os Application Services aqui, né? E a gente pode continuar vendo o log do Nest, toda vez que a gente faz uma mudança, ele mostra aqui se está ok ou não. Então, maravilha, pessoal. Vamos continuar nossa saga, é isso aí, e até a próxima.