Fala Nathan! Acho que a sua pergunta levanta uma questão bem interessante: A diferença entre camadas e pastas quando estamos falando de Clean Architecture.
-
Quando falamos de camadas, estamos estabelecendo uma separação lógica no nosso código, onde cada camada tem sua responsabilidade única e bem definida. Uma camada mais interna não pode conhecer uma mais externa, porém uma camada mais externa pode conhecer uma mais interna. É isso que chamados de Dependency Rule (Regra de dependência). Isso é puramente lógico, não tem nada a ver com organização de pastas ou arquivos.
-
Já as pastas e arquivos são separações físicas do nosso código. Nosso projeto pode conter 1, 2... N pastas, mas isso não significa que estamos seguindo a Clean Architecture.
Podem existir camadas sem pastas e pastas sem camadas. Uma coisa não tem nada a ver com a outra.
Sendo específico na Clean Architecture, o arquivo schema.prisma
estará na camada mais externa de todas, a camada de infraestrutura. Se você seguir a Clean Arch, isso deve ser previamente estabelecido.
Agora, em nível de pastas, acredito que você pode colocar o arquivo schema.prisma
juntamente com com os arquivos de repositório faz bastante sentido. Uma vez que nossas implementações de repositório são direcionadas ao prisma, faz sentido que eles estejam juntos (a nível de pastas, claro).
Espero ter ajudado! Qualquer dúvida, só falar! Abraço!