Livret PDF v2, graphe des liens côté campagne, et refactor de l'import
Livret PDF (export campagne) :
- refonte lisibilité façon livre de JdR : sommaire paginé, libellés de champs
en tête de ligne, encadrés « À lire aux joueurs » / secrets MJ / combat,
ligne de contexte des scènes, en-tête courant, tables zébrées
- reflète la fusion quête/conteneur : arc SYSTEM masqué, quêtes de hub
fusionnées dans leur chapitre, partie « Quêtes » sans doublon
- contenu complété : sorties de scènes, ennemis liés au bestiaire, pièces
explorables, partie « Tables aléatoires »
- polices DejaVu embarquées (couverture Unicode, licence incluse) et harness
visuel PdfExportPreviewTest (Mockito pur, tourne sans Postgres)
Graphe des liens :
- déplacé du Lore vers la campagne (les PNJ sont des entités de campagne) ;
endpoint /api/npcs/lore/{id} supprimé
- layout retravaillé (anti-chevauchement des libellés, éventail des feuilles
autour des hubs), scènes et quêtes ajoutées, libellés sur 2 lignes,
filtres de légende mémorisés, focus au survol
- positions drag & drop persistées sur la campagne (migration V23,
PUT /api/campaigns/{id}/graph-positions, bouton « Disposition auto »)
Divers :
- ImportService découpé en classes dédiées (parser d'archive, remapper d'ids,
inserters campagne/lore/état de jeu, conversion legacy des quêtes)
- fuites d'abonnements corrigées (takeUntilDestroyed sur paramMap) sur ~15 écrans
- garde-fou i18n fragments/consolidés branché sur npm run build (check-i18n.mjs),
budget SCSS anyComponentStyle relevé à 12 ko
This commit is contained in:
@@ -198,8 +198,6 @@
|
||||
"submit": "Create lore"
|
||||
},
|
||||
"loreDetail": {
|
||||
"graph": "Graph",
|
||||
"graphTitle": "View the graph of pages and their links (NPCs included)",
|
||||
"editTitle": "Edit Lore",
|
||||
"deleteTitle": "Delete Lore",
|
||||
"folders": "Folders",
|
||||
@@ -221,14 +219,19 @@
|
||||
"irreversible": "This action is irreversible."
|
||||
}
|
||||
},
|
||||
"loreGraph": {
|
||||
"back": "Back to Lore",
|
||||
"campaignGraph": {
|
||||
"back": "Back to campaign",
|
||||
"title": "{{name}} — Graph",
|
||||
"subtitle": "{{pages}} page(s) · {{npcs}} NPC · {{edges}} link(s). Click a node to open it, drag it to rearrange.",
|
||||
"subtitle": "{{pages}} page(s) · {{npcs}} NPC · {{scenes}} scene(s) · {{quests}} quest(s) · {{edges}} link(s). Click a node to open it, drag it to rearrange.",
|
||||
"legendPage": "Lore page",
|
||||
"legendNpc": "NPC",
|
||||
"legendLink": "NPC → page link",
|
||||
"empty": "No pages in this Lore yet — the graph will fill in as you go.",
|
||||
"legendScene": "Scene",
|
||||
"legendQuest": "Quest",
|
||||
"reset": "Auto layout",
|
||||
"resetTitle": "Recompute the automatic layout (forgets your manual moves)",
|
||||
"toggleHint": "Click to hide / show this entity type",
|
||||
"noLore": "No world (Lore) is linked to this campaign: link one from the campaign header to see the graph.",
|
||||
"empty": "No pages in the linked world yet — the graph will fill in as you go.",
|
||||
"hint": "No links yet: link pages together (a page's \"Related pages\") or attach an NPC to Lore pages from its sheet."
|
||||
},
|
||||
"loreNodeCreate": {
|
||||
@@ -613,6 +616,8 @@
|
||||
"foundryExporting": "Exporting…",
|
||||
"pdfExport": "Export to PDF",
|
||||
"pdfExporting": "Generating…",
|
||||
"graph": "Graph",
|
||||
"graphTitle": "View the graph of NPCs and their linked lore pages",
|
||||
"gameSystemChange": {
|
||||
"title": "Change the game system?",
|
||||
"message": "You are about to change the game system of this campaign. This also changes the template for PC and NPC sheets.",
|
||||
|
||||
Reference in New Issue
Block a user