Fix: Correction des exports/imports APPV2 et clés i18N manquantes

- Standardisation des exports de sheets sur 'export default class' (sauf base-item-sheet)
- Correction des imports pour utiliser des imports par défaut
- Correction de _module.mjs pour exporter les classes correctement
- Suppression des redéfinitions de changeTab dans group-sheet et npc-sheet
- Ajout des clés i18N manquantes: VERMINE.reserve, VERMINE.Sheet.*
- Correction de l'export de VermineBaseItemSheet (export nommé)

Corrige l'erreur 'Receiver must be class VermineGroupSheetV2' et aligne sur fvtt-hamalron et fvtt-celestopol

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-06-06 18:32:03 +02:00
parent 2691ff521f
commit c571e6a209
8 changed files with 23 additions and 31 deletions
+8 -1
View File
@@ -282,6 +282,7 @@
"group_members": "Membres", "group_members": "Membres",
"encounters": "Rencontres", "encounters": "Rencontres",
"road": "La Route", "road": "La Route",
"reserve": "Réserve",
"totem_picker": "Sélecteur de totem", "totem_picker": "Sélecteur de totem",
"actor_picker": "Sélecteur de personnage", "actor_picker": "Sélecteur de personnage",
"morale": "Moral", "morale": "Moral",
@@ -316,7 +317,13 @@
}, },
"RollTool": "Outil de lancer de dés", "RollTool": "Outil de lancer de dés",
"roll": "Lancer", "roll": "Lancer",
"cancel": "Annuler" "cancel": "Annuler",
"Sheet": {
"character": "Personnage",
"npc": "PNJ",
"group": "Groupe",
"creature": "Créature"
}
}, },
"UI": { "UI": {
"add": "Ajouter", "add": "Ajouter",
+5 -5
View File
@@ -1,9 +1,9 @@
export { VermineBaseActorSheet } from "./base-actor-sheet.mjs" export { default as VermineBaseActorSheet } from "./base-actor-sheet.mjs"
export { VermineBaseItemSheet } from "./base-item-sheet.mjs" export { VermineBaseItemSheet } from "./base-item-sheet.mjs"
export { VermineCharacterSheetV2 } from "./character-sheet.mjs" export { default as VermineCharacterSheetV2 } from "./character-sheet.mjs"
export { VermineNpcSheetV2 } from "./npc-sheet.mjs" export { default as VermineNpcSheetV2 } from "./npc-sheet.mjs"
export { VermineGroupSheetV2 } from "./group-sheet.mjs" export { default as VermineGroupSheetV2 } from "./group-sheet.mjs"
export { VermineCreatureSheetV2 } from "./creature-sheet.mjs" export { default as VermineCreatureSheetV2 } from "./creature-sheet.mjs"
export { export {
VermineItemSheetV2, VermineItemSheetV2,
VermineWeaponSheetV2, VermineWeaponSheetV2,
@@ -6,7 +6,7 @@ const { HandlebarsApplicationMixin } = foundry.applications.api
* Fiche de base pour tous les acteurs Vermine 2047 (ApplicationV2). * Fiche de base pour tous les acteurs Vermine 2047 (ApplicationV2).
* Remplace VermineActorSheet (AppV1). * Remplace VermineActorSheet (AppV1).
*/ */
export class VermineBaseActorSheet extends HandlebarsApplicationMixin(foundry.applications.sheets.ActorSheetV2) { export default class VermineBaseActorSheet extends HandlebarsApplicationMixin(foundry.applications.sheets.ActorSheetV2) {
// ── Mode édition / jeu ────────────────────────────────────────────── // ── Mode édition / jeu ──────────────────────────────────────────────
@@ -66,6 +66,7 @@ export class VermineBaseItemSheet extends HandlebarsApplicationMixin(foundry.app
system: this.document.system, system: this.document.system,
source: this.document.toObject(), source: this.document.toObject(),
config: CONFIG.VERMINE, config: CONFIG.VERMINE,
enrichedDescription: await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.document.system.description, { async: true }),
isEditMode: this.isEditMode, isEditMode: this.isEditMode,
isPlayMode: this.isPlayMode, isPlayMode: this.isPlayMode,
isEditable: this.isEditable isEditable: this.isEditable
@@ -1,6 +1,6 @@
import { VermineBaseActorSheet } from "./base-actor-sheet.mjs" import VermineBaseActorSheet from "./base-actor-sheet.mjs"
export class VermineCharacterSheetV2 extends VermineBaseActorSheet { export default class VermineCharacterSheetV2 extends VermineBaseActorSheet {
static DEFAULT_OPTIONS = { static DEFAULT_OPTIONS = {
classes: ["character"], classes: ["character"],
@@ -1,6 +1,6 @@
import { VermineBaseActorSheet } from "./base-actor-sheet.mjs" import VermineBaseActorSheet from "./base-actor-sheet.mjs"
export class VermineCreatureSheetV2 extends VermineBaseActorSheet { export default class VermineCreatureSheetV2 extends VermineBaseActorSheet {
static DEFAULT_OPTIONS = { static DEFAULT_OPTIONS = {
classes: ["creature"], classes: ["creature"],
+2 -10
View File
@@ -1,6 +1,6 @@
import { VermineBaseActorSheet } from "./base-actor-sheet.mjs" import VermineBaseActorSheet from "./base-actor-sheet.mjs"
export class VermineGroupSheetV2 extends VermineBaseActorSheet { export default class VermineGroupSheetV2 extends VermineBaseActorSheet {
static DEFAULT_OPTIONS = { static DEFAULT_OPTIONS = {
classes: ["group"], classes: ["group"],
@@ -61,14 +61,6 @@ export class VermineGroupSheetV2 extends VermineBaseActorSheet {
return context return context
} }
changeTab(tab, group, options = {}) {
super.changeTab(tab, group, options)
if (group === "sheet") {
const main = this.element?.querySelector('[data-group="sheet"][data-tab="main"]')
if (main) main.classList.add("active")
}
}
async _preparePartContext(partId, context) { async _preparePartContext(partId, context) {
const doc = this.document const doc = this.document
switch (partId) { switch (partId) {
+2 -10
View File
@@ -1,6 +1,6 @@
import { VermineBaseActorSheet } from "./base-actor-sheet.mjs" import VermineBaseActorSheet from "./base-actor-sheet.mjs"
export class VermineNpcSheetV2 extends VermineBaseActorSheet { export default class VermineNpcSheetV2 extends VermineBaseActorSheet {
static DEFAULT_OPTIONS = { static DEFAULT_OPTIONS = {
classes: ["npc"], classes: ["npc"],
@@ -41,14 +41,6 @@ export class VermineNpcSheetV2 extends VermineBaseActorSheet {
return context return context
} }
changeTab(tab, group, options = {}) {
super.changeTab(tab, group, options)
if (group === "sheet") {
const main = this.element?.querySelector('[data-group="sheet"][data-tab="main"]')
if (main) main.classList.add("active")
}
}
async _preparePartContext(partId, context) { async _preparePartContext(partId, context) {
const doc = this.document const doc = this.document
switch (partId) { switch (partId) {