Commit Graph
212 Commits
Author SHA1 Message Date
IliesAllali efca97d9cd Merge pull request #87 from IliesAllali/fix/ajout-prenom-inconnu
Prénom inconnu, et fermer l'ajout au clic sur une personne
2026-10-18 20:54:11 +02:00
IliesAllali 1cf3dd0bc3 Merge pull request #88 from IliesAllali/feat/entree-accueil
Accueil à deux choix, porte unique et prénom du compte
2026-10-18 20:54:06 +02:00
IliesAllali 6bcbcb1dfd Merge pull request #83 from IliesAllali/fix/renvoi-fil-libre
Filiations : fil plein quand il ne croise pas une autre famille, un seul tronc par fratrie
2026-10-18 20:54:02 +02:00
IliesAllali af61f91511 Merge pull request #86 from IliesAllali/fix/entree-connexion
Connexion et arbre partagé, parcours plus clair
2026-10-18 20:53:58 +02:00
IliesAllali d0be3e9165 Merge pull request #85 from IliesAllali/feat/surnoms
Surnoms sous le nom, dans l'arbre et la fiche
2026-10-18 20:53:55 +02:00
IliesAllaliandClaude Opus 5.5 d234171abb docs: le lien de démo du README ouvre la démo, plus l'accueil
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 20:48:48 +02:00
IliesAllaliandClaude Haiku 5.5 92ceea6565 feat(entree): accueil à deux choix, porte unique, prénom du compte
- Backend : prénom du compte facultatif à l'inscription (colonne users.firstName,
  migration additive), renvoyé à l'inscription, à la connexion et sur GET /auth/me
- Accueil sans session : deux choix (J'ai reçu un lien, Se connecter) et
  Créer mon arbre en lien, à la place de la démo (variante B validée)
- Porte : mot de passe puis prénom facultatif pour un nouveau venu ; compte
  connecté non rattaché : bandeau avec son prénom, sans champ prénom, et
  « Ce n'est pas mon compte » (déconnexion, retour à la porte du même arbre)
- Sur-titre « Arbre partagé » retiré de la porte
- Compte déjà rattaché : inchangé, la racine ouvre l'arbre directement

Vérifié : vitest front 154/154, back 228/228 (sans .env local, le test CORS
attend localhost:5173), tsc back, eslint front, vite build, landing test et build.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 20:45:58 +02:00
IliesAllaliandClaude Haiku 5.5 7752b96e3d fix: prénom inconnu, et fermer l'ajout quand on clique une personne
- Prénom inconnu : case « Je ne connais pas son prénom » à l'ajout et en
  modification. Enregistré comme prénom vide, affiché « Prénom inconnu »
  en italique (arbre, fiche, recherche). Pas de migration.
- Export GEDCOM : « 1 NAME /Nom/ » sans prénom. Import : prénom absent
  = vide (au lieu de « ? »).
- Cliquer une personne pendant un ajout ferme le panneau d'ajout ; sa
  saisie reste en mémoire comme à la fermeture par la croix.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 20:41:37 +02:00
IliesAllaliandClaude Haiku 5.5 9d9e375f58 Filiations : accolade franche (forme A)
Remplace le virage quadratique par une accolade à coins arrondis de rayon fixe
(24 px) : un tronc depuis l'union, une barre de fratrie, puis une descente
vers chaque enfant. Un enfant à l'aplomb de l'union descend droit. Le chemin
surligné (sélection, survol) passe par la même géométrie que la fratrie.

Tests unitaires de traceSibship (un chemin et un stroke par fratrie, même
géométrie pour un enfant seul, pas de virage à l'aplomb).

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 20:26:34 +02:00
IliesAllaliandClaude Haiku 5.5 f1ecb3951c fix(entree): connexion visible, porte qui reconnaît le compte, libellés
- Démo : le bouton « Se connecter » ouvre la connexion, plus l'inscription
- Porte de l'arbre : quand la personne est connectée, un bandeau dit quel
  compte est ouvert et qu'il faut taper une fois le mot de passe reçu avec
  le lien. Il reste affiché au retour d'une connexion faite depuis la porte.
- Landing : lien « Se connecter » dans la navigation et le pied de page
  (vers ?account=login, sans source, le rendu au build n'a pas de window)
- Libellés de la porte et de l'inscription, en français et en anglais

Vérifié : vitest 154/154, eslint frontend, vite build, landing (test et
build). La landing n'a pas de configuration eslint dans le dépôt.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 20:05:18 +02:00
IliesAllaliandClaude Opus 5.5 adb2b930dd fix(surnoms): garder le surnom d'un arbre chargé depuis l'API
Le surnom était enregistré en base mais perdu au chargement de l'arbre :
mapRemotePersonToLocal ne le recopiait pas, donc ni l'arbre, ni la fiche,
ni la recherche ne le voyaient.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 19:51:19 +02:00
IliesAllaliandClaude Haiku 5.5 d58b7b779c Filiations : une seule trajectoire par fratrie
Chaque enfant avait son propre chemin depuis l'union, avec un rayon de virage
propre : sous une union nombreuse, 3 ou 4 brins se séparaient juste sous le
point d'union. Le tracé est maintenant un tronc unique, puis une barre de
fratrie qui distribue vers chaque enfant ; le rayon des virages est commun à
chaque côté, et tout part dans un seul stroke (pas de brins doublés en alpha).
Un enfant presque sous l'union descend de la barre, sans second brin depuis
l'union. Le chemin en surbrillance (path highlight) reste tracé enfant par enfant.

Vérifié à l'écran sur un arbre de test à 6 enfants (avant/après dans
_bmad-output/parenthese/renvoi/faisceau-*.png).

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 19:45:20 +02:00
IliesAllaliandClaude Haiku 5.5 ac5997659b feat(surnoms): surnom facultatif sous le nom, dans l'arbre et la fiche
- API : nickname accepté à la création, à la modification et dans les
  propositions de contribution (trim, vide = null, 120 caractères max)
- Mode direct et circuit des contributions : même validation, avant/après
- Édition et ajout : champ « Surnom » facultatif
- Arbre : surnom en italique sous le nom, coupé avec … au-delà de 150 px
- Recherche : trouve une personne par son surnom (libellé « Surnom »)
- Démo : surnoms sur Marie et Robert

Vérifié : lint, tests (front 159, back 224), builds (front, back tsc, landing).

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 19:34:09 +02:00
IliesAllaliandClaude Haiku 5.5 3d709ec015 Renvoi seulement si le fil croise une autre famille
Une filiation vers un enfant placé sous l'autre lignée devenait un renvoi
(pastilles) dès que l'écart union → enfant dépassait 360 px, même quand le fil
ne croisait personne. Le critère est maintenant géométrique : le fil file sur la
ligne de la fratrie entre l'aplomb de l'union et l'enfant ; il ne devient renvoi
que si une personne d'une autre famille se trouve sur cette ligne. Frères et
sœurs et conjoint(e)s de l'enfant ne comptent pas.

Tests : cas à fratrie voisine (fil conservé), et filCroiseAutreFamille sur des
nœuds synthétiques (autre famille, fratrie seule, conjoint, autre génération).

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-18 19:33:38 +02:00
IliesAllaliandClaude Opus 5.5 f8d4b4113d Mobile : parents séparés en pointillés, barre d'édition allégée, dates au clavier numérique (#82)
- Deux parents d'un même enfant sans couple enregistré sont reliés en pointillés au lieu
  d'avoir chacun un « Inconnu » (couple propre au dessin, rien en base) ; le tri de la
  fratrie le reconnaît.
- Barre d'édition mobile : X, « Ajouter » et « Plus » (dessin, texte, sticker, photo).
  Les outils s'ouvrent depuis « Plus » avec un retour, la corbeille n'apparaît que s'il y a
  quelque chose à effacer, l'outil actif en aplat. La barre ne passe plus sous le zoom.
- Bandeau d'édition : sur téléphone, seul le bouton reste, le texte se coupait.
- Dates : au-delà de 4 chiffres les barres se posent seules (12031950 → 12/03/1950), le
  message n'apparaît qu'en quittant le champ.
- Ajouter une personne : plus d'erreur « prénom » en quittant le champ vide, le bouton
  reste actif et le dit à l'appui.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 14:08:07 +02:00
IliesAllaliandClaude Opus 5.5 2dec945fa3 docs: CHANGELOG de la 1.1.0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
v1.1.0
2026-10-17 13:56:35 +02:00
IliesAllali 9ccd5a2e30 Merge pull request #80 from IliesAllali/deces-sans-date
Dates : une année seule, et décédé(e) sans date (#77)
2026-10-17 13:30:02 +02:00
IliesAllaliandClaude Opus 5.5 1e8f8f923a feat(dates): une annee seule, et decede(e) sans date (issue #77)
- Champ de date de la fiche et du formulaire « Ajouter quelqu'un » : une annee seule
  (1950) ou une date complete (12/03/1950), une aide si le texte n'en est pas une.
  L'annee seule s'affiche « 1950 » et non plus « 1 janvier 1950 ».
- Statut « Decede(e) » sans date : persons.isDeceased (migration additive), « 1908–? »
  sous le portrait, « Date inconnue » dans la fiche, en bas de la frise. Import de
  « 1 DEAT Y », export en « 1 DEAT Y ». Une date de deces retire le drapeau.
- Parents : plus de « (null) » quand l'union n'a pas de type.

Closes #77

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:27:53 +02:00
IliesAllali 991a9625a2 Merge pull request #79 from IliesAllali/import-zip
Import d'un zip : le GEDCOM et ses photos en une fois
2026-10-17 12:54:50 +02:00
IliesAllali c881863fc1 Merge pull request #78 from IliesAllali/moments-contributeurs
Moments : fichiers de tout type, naissance et mariage, propositions de la famille
2026-10-17 12:52:34 +02:00
IliesAllaliandClaude Opus 5.5 5447965243 feat(import): importer un zip qui contient le GEDCOM et ses photos
Le zip est lu dans le navigateur, sans bibliotheque (table des matieres puis
DecompressionStream, fichier par fichier) : le .ged le plus haut s'importe, GEDZIP
compris, et les photos et actes passent directement a l'etape des visages, rapproches
comme un dossier et decompresses seulement a l'envoi. Messages clairs pour un zip sans
.ged, protege par mot de passe ou trop gros. Corrige aussi « citait 1 autres fichiers ».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 12:40:32 +02:00
IliesAllaliandClaude Opus 5.5 8f866d1bd3 feat(vie): la famille propose des moments, et un moment porte photos, videos et actes
- Un moment peut porter plusieurs souvenirs de tout type (photo, video, enregistrement,
  acte en PDF) : media_items.lifeEventId, reprise de l'ancienne colonne mediaId.
- Naissance, mariage et deces se completent depuis la frise : documents, source, note
  (la date et le lieu restent dans Infos).
- La famille propose un moment par le lien de partage : il attend la relecture, avec
  ses fichiers dans la meme proposition, et apparait une fois accepte.
- Fiche : Ajouter un fichier, Choisir parmi ses souvenirs, prenom du contributeur,
  textes qui expliquent ce qui se passe.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 12:29:23 +02:00
IliesAllali 5740582cde Merge pull request #76 from IliesAllali/frise-de-vie
Onglet Vie : la frise de vie, et ajouter un moment
2026-10-17 11:54:51 +02:00
IliesAllaliandClaude Opus 5.5 9d34796d11 feat(vie): ajouter, modifier et supprimer un moment depuis l'onglet Vie
Un bouton « Ajouter un moment » pour les administrateurs, une fiche courte (quoi, quand,
environ, ou, une photo), date exacte, fin, source et note sous « Plus de details ».
La photo devient un souvenir de la personne, rattache au moment (life_events.mediaId,
migration additive). Toucher un moment l'ouvre pour le modifier ou le supprimer.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 11:38:35 +02:00
IliesAllaliandClaude Opus 5.5 cd147e9387 fix(vie): le fil s'arrete au dernier evenement
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 11:23:35 +02:00
IliesAllaliandClaude Opus 5.5 557956fedd feat(fiche): onglet Vie, la frise de vie d'une personne
Naissance, unions et deces en grands reperes (direction A2 choisie par Patch le 16/10),
evenements importes plus petits, famille proche tiree de l'arbre en retrait, sources
repliees. Evenements charges a l'ouverture de l'onglet via GET /persons/:id/life,
donnees propres a la demo pour Robert.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 11:10:34 +02:00
IliesAllali 8372d3f29b Merge pull request #75 from IliesAllali/evenements-de-vie
Événements de vie : modèle, import et export GEDCOM
2026-10-16 22:33:25 +02:00
IliesAllaliandClaude Opus 5.5 f47ef8ecac fix(dates): une date corrigee a la main perd la precision importee
Sinon « vers 1879 » restait colle a la date saisie ensuite, et l'export l'aurait ecrite.
Personne, union, et voie contribution.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:29:21 +02:00
IliesAllaliandClaude Opus 5.5 f6affa81d6 feat(gedcom): export des evenements de vie, precisions de date, sources et adoption
L'export rend ce que l'import lit : dates qualifiees (ABT, EST, BET ... AND, FROM ... TO)
ou texte d'origine, lieu de deces, surnom, tous les evenements de la personne et du
couple avec lieu, notes et sources, lieu du mariage, PEDI adopted. Test aller-retour.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:27:51 +02:00
IliesAllaliandClaude Opus 5.5 87c564fd3c API : frise de vie d'une personne
GET /trees/:id/persons/:personId/life rend la précision des dates, le lieu
de décès, le surnom, les unions avec leur lieu de mariage, et les
événements de la personne et de ses couples. Chargée à l'ouverture de la
fiche, pas dans le graphe. Les droits de lecture du graphe sont factorisés
(resolveReadAccess) et servent aux deux. Supprimer une personne supprime
aussi ses événements et ceux de ses unions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:20:30 +02:00
IliesAllaliandClaude Opus 5.5 e24c8c86d6 Événements de vie : table, migration, import GEDCOM
Nouvelle table life_events (baptême, résidence, métiers, études, service
militaire, inhumation, divorce, événements libres…) avec date, précision,
lieu, description, notes et sources. Personne : précision et borne des
dates de naissance et de décès, lieu de décès, surnom. Union : lieu et
précision du mariage. Naissance, décès et mariage gardent leur date et leur
lieu sur la personne ou l'union ; leur ligne d'événement ne porte que les
sources et les notes. Migration additive.

L'import lit tous ces événements (balises de la norme, variantes Gramps,
Heredis, RootsMagic), les adresses complètes, et les adoptions déclarées
par PEDI. Une personne ou une union déjà présente ne reçoit rien en double.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:16:45 +02:00
IliesAllali 4e900f1c30 Merge pull request #74 from IliesAllali/import-fiable
Import GEDCOM : encodage, vraies dates, toutes les notes
2026-10-16 22:14:06 +02:00
IliesAllaliandClaude Opus 5.5 dd738c483a Import GEDCOM : vraies dates, toutes les notes
Dates : « vers », « avant », « après », « entre … et … », dates juliennes,
calendrier républicain converti en grégorien, doubles années (1700/01).
« BET 1794 AND 1796 » ou « @#DFRENCH R@ 18 BRUM 8 » étaient perdues, « ABT
1900 » devient au moins 1900. La précision est déjà lue pour la suite.

Notes : notes partagées (« 1 NOTE @N1@ »), plusieurs notes, RTF nettoyé. Le
lecteur garde la valeur brute de chaque ligne : une note coupée en CONC se
recolle avec ses espaces (« pendant trente-cinq ans », plus « pendanttrente »).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:12:16 +02:00
IliesAllaliandClaude Opus 5.5 2d35bddf27 Import GEDCOM : le fichier est lu avec son vrai encodage
Le navigateur lisait tout en UTF-8. Les fichiers de Heredis PC (ANSI,
Windows-1252), des anciens logiciels (ANSEL) ou de Heredis Mac (MACINTOSH)
arrivaient avec des accents cassés (« é »). L'encodage est maintenant
détecté : marque d'octets, UTF-8 valide, puis la ligne « 1 CHAR », sinon
Windows-1252. Décodeur ANSEL inclus (diacritiques placés avant la lettre).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 22:08:10 +02:00
IliesAllali 7e7641dc19 Merge pull request #73 from IliesAllali/dependabot/npm_and_yarn/frontend/frontend-minor-patch-c705a229c1
Bump the frontend-minor-patch group across 1 directory with 6 updates
2026-10-16 20:38:08 +02:00
IliesAllali 6d78aa5d10 Merge pull request #72 from IliesAllali/dependabot/npm_and_yarn/backend/backend-minor-patch-e930112c77
Bump the backend-minor-patch group across 1 directory with 5 updates
2026-10-16 20:37:56 +02:00
IliesAllali 7488254cc9 Merge pull request #71 from IliesAllali/dependabot/npm_and_yarn/landing/landing-minor-patch-90bd4e03b8
Bump the landing-minor-patch group across 1 directory with 2 updates
2026-10-16 20:37:44 +02:00
IliesAllali 2db048aad6 Merge pull request #64 from IliesAllali/dependabot/github_actions/actions/upload-artifact-7.0.2
Bump actions/upload-artifact from 4.6.2 to 7.0.2
2026-10-16 20:36:18 +02:00
IliesAllali 69598ce116 Merge pull request #66 from IliesAllali/dependabot/github_actions/actions/setup-node-7.1.0
Bump actions/setup-node from 5.0.0 to 7.1.0
2026-10-16 20:34:09 +02:00
dependabot[bot] f36d59fcee Bump the frontend-minor-patch group across 1 directory with 6 updates
Bumps the frontend-minor-patch group with 6 updates in the /frontend directory:

| Package | From | To |
| --- | --- | --- |
| [@lucide/icons](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide) | `1.52.0` | `1.56.0` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.52.0` | `1.56.0` |
| [posthog-js](https://github.com/PostHog/posthog-js) | `1.438.0` | `1.438.9` |
| [postcss](https://github.com/postcss/postcss) | `8.5.29` | `8.5.30` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.3.3` | `8.3.4` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `5.0.3` | `5.0.4` |



Updates `@lucide/icons` from 1.52.0 to 1.56.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/1.56.0/packages/lucide)

Updates `lucide-react` from 1.52.0 to 1.56.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/1.56.0/packages/lucide-react)

Updates `posthog-js` from 1.438.0 to 1.438.9
- [Release notes](https://github.com/PostHog/posthog-js/releases)
- [Changelog](https://github.com/PostHog/posthog-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PostHog/posthog-js/compare/posthog-js@1.438.0...posthog-js@1.438.9)

Updates `postcss` from 8.5.29 to 8.5.30
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.29...8.5.30)

Updates `vite` from 8.3.3 to 8.3.4
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.3.4/packages/vite)

Updates `vitest` from 5.0.3 to 5.0.4
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v5.0.4/packages/vitest)

---
updated-dependencies:
- dependency-name: "@lucide/icons"
  dependency-version: 1.56.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend-minor-patch
- dependency-name: lucide-react
  dependency-version: 1.56.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend-minor-patch
- dependency-name: posthog-js
  dependency-version: 1.438.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend-minor-patch
- dependency-name: postcss
  dependency-version: 8.5.30
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend-minor-patch
- dependency-name: vite
  dependency-version: 8.3.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend-minor-patch
- dependency-name: vitest
  dependency-version: 5.0.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 18:32:55 +00:00
dependabot[bot] bd8ba8ffaa Bump the backend-minor-patch group across 1 directory with 5 updates
Bumps the backend-minor-patch group with 5 updates in the /backend directory:

| Package | From | To |
| --- | --- | --- |
| [dotenv](https://github.com/motdotla/dotenv) | `18.0.6` | `18.0.7` |
| [fastify](https://github.com/fastify/fastify) | `5.12.5` | `5.12.7` |
| [zod](https://github.com/colinhacks/zod) | `4.6.5` | `4.6.7` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `24.19.1` | `24.19.2` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `5.0.3` | `5.0.4` |



Updates `dotenv` from 18.0.6 to 18.0.7
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v18.0.6...v18.0.7)

Updates `fastify` from 5.12.5 to 5.12.7
- [Release notes](https://github.com/fastify/fastify/releases)
- [Commits](https://github.com/fastify/fastify/compare/v5.12.5...v5.12.7)

Updates `zod` from 4.6.5 to 4.6.7
- [Release notes](https://github.com/colinhacks/zod/releases)
- [Commits](https://github.com/colinhacks/zod/compare/v4.6.5...v4.6.7)

Updates `@types/node` from 24.19.1 to 24.19.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `vitest` from 5.0.3 to 5.0.4
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v5.0.4/packages/vitest)

---
updated-dependencies:
- dependency-name: dotenv
  dependency-version: 18.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-minor-patch
- dependency-name: fastify
  dependency-version: 5.12.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-minor-patch
- dependency-name: zod
  dependency-version: 4.6.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: backend-minor-patch
- dependency-name: "@types/node"
  dependency-version: 24.19.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: backend-minor-patch
- dependency-name: vitest
  dependency-version: 5.0.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: backend-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 18:32:50 +00:00
dependabot[bot] 265ae1d9f3 Bump the landing-minor-patch group across 1 directory with 2 updates
Bumps the landing-minor-patch group with 2 updates in the /landing directory: [posthog-js](https://github.com/PostHog/posthog-js) and [postcss](https://github.com/postcss/postcss).


Updates `posthog-js` from 1.438.0 to 1.438.9
- [Release notes](https://github.com/PostHog/posthog-js/releases)
- [Changelog](https://github.com/PostHog/posthog-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PostHog/posthog-js/compare/posthog-js@1.438.0...posthog-js@1.438.9)

Updates `postcss` from 8.5.29 to 8.5.30
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.29...8.5.30)

---
updated-dependencies:
- dependency-name: posthog-js
  dependency-version: 1.438.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: landing-minor-patch
- dependency-name: postcss
  dependency-version: 8.5.30
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: landing-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 18:32:24 +00:00
dependabot[bot] 6a366416ef Bump actions/upload-artifact from 4.6.2 to 7.0.2
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.6.2 to 7.0.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/ea165f8d65b6e75b540449e92b4886f43607fa02...cf430e030ddbb5b0abf93d22962f4752f3646cd9)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 18:31:54 +00:00
dependabot[bot] 62727658dc Bump actions/setup-node from 5.0.0 to 7.1.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 5.0.0 to 7.1.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/a0853c24544627f65ddf259abe73b1d18a591444...949feb2413d6458794dcd2491c4babbbce0c15c1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 7.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-16 18:31:51 +00:00
IliesAllali 1c065a8db4 Merge pull request #70 from IliesAllali/lieux-affichage
Fiche : lieu lisible pour les arbres déjà importés
2026-10-16 20:31:45 +02:00
IliesAllaliandClaude Opus 5.5 63d997b8cf Fiche : lieu lisible à l'affichage pour les arbres déjà importés
Les arbres importés de Heredis avant le nettoyage à l'import gardent des
lieux bruts (« Ville,code INSEE,département,… »). La fiche les affiche avec
la même règle qu'à l'import, sans toucher à la valeur enregistrée ni au
champ d'édition.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 20:29:58 +02:00
IliesAllali 5454549ab0 Merge pull request #69 from IliesAllali/gedcom-lieux
Import GEDCOM : lieu lisible, sans colonnes vides ni codes
2026-10-16 20:22:04 +02:00
IliesAllaliandClaude Opus 5.5 bca0543803 Import GEDCOM : lieu lisible, sans colonnes vides ni codes
Heredis remplit toutes les colonnes de son format de lieu, même vides, avec
le code INSEE (« La Roche-sur-Yon,85191,Vendée,Pays de la Loire,France, »).
Le lieu de naissance importé garde les noms seulement, séparés par « , »,
sans case vide, code INSEE ou postal, ni répétition. Un lieu déjà propre
ne change pas.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 20:20:17 +02:00
IliesAllali 0e96ffc020 Merge pull request #68 from IliesAllali/gedcom-souvenirs
Import GEDCOM : les fichiers cités deviennent des souvenirs (#59)
2026-10-16 20:13:39 +02:00
IliesAllaliandClaude Opus 5.5 2fccf287b3 Premières photos : compter chaque souvenir par son chemin d'origine
Les correspondances gardent le chemin cité par le logiciel (sourcePath) :
plusieurs fichiers d'une même personne ne se confondent plus, le décompte
des fichiers ajoutés et restants est juste, et le pied du panneau parle de
fichiers quand des documents ont été ajoutés.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 20:06:03 +02:00