mirror of
https://github.com/IliesAllali/parenthese.git
synced 2026-11-06 23:32:08 +00:00
* Prisma 7 : client généré dans src/generated, pilote pg, prisma.config.ts - générateur prisma-client (ESM, extension .js), compilé dans dist : plus de node_modules/.prisma à copier dans les images - @prisma/adapter-pg, délai de connexion de 5 s comme le moteur de Prisma 6 - prisma.config.ts : adresse de la base et .env pour le CLI, sans dépendre de prisma/config à l'exécution (CLI à part dans les images) - CI : migrate diff --from-config-datasource --to-schema - deploy.sh : arrêt avant installation si Node est trop vieux pour Prisma 7 - remplace les PR Dependabot #135 et #137 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Prisma 7 : import du client généré dans token-revocation (#163) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
15 lines
773 B
TypeScript
15 lines
773 B
TypeScript
import type { Prisma, PrismaClient } from '../generated/prisma/client.js'
|
|
|
|
type LinkReader = Pick<PrismaClient, 'parentChildLink'> | Pick<Prisma.TransactionClient, 'parentChildLink'>
|
|
|
|
// Ordre d'un nouvel enfant : après ses frères et sœurs, pour qu'une fratrie déjà réordonnée
|
|
// ne voie pas le dernier arrivé passer devant (le placement trie les enfants sur displayOrder).
|
|
export async function nextSiblingOrder(db: LinkReader, treeId: string, parentPersonId: string): Promise<number> {
|
|
const last = await db.parentChildLink.findFirst({
|
|
where: { treeId, parentPersonId, deletedAt: null },
|
|
orderBy: { displayOrder: 'desc' },
|
|
select: { displayOrder: true },
|
|
})
|
|
return Number.isInteger(last?.displayOrder) ? (last!.displayOrder as number) + 1 : 1
|
|
}
|