docs: ajoute TODO-v14.md pour suivi compatibilité Foundry v14
This commit is contained in:
+109
@@ -0,0 +1,109 @@
|
||||
# TODO v14 — Compatibilité Foundry VTT
|
||||
|
||||
## 🔴 Bloquant (31 classes V1 + 8 `new Dialog()`)
|
||||
|
||||
### 1. Sheets acteur V1 → V2
|
||||
- `module/actor/base-actor-sheet.js` → `extends foundry.appv1.sheets.ActorSheet`
|
||||
- Chaîne : RdDActorSheet → RdDBaseActorSangSheet → RdDBaseActorReveSheet → RdDBaseActorSheet
|
||||
- 6 sous-classes concrètes à migrer
|
||||
- `rdd-main.js:250` : `unregisterSheet("core", foundry.appv1.sheets.ActorSheet)`
|
||||
|
||||
### 2. Sheet journal V1 → V2
|
||||
- `module/journal/journal-sheet.js` → `extends foundry.appv1.sheets.JournalTextPageSheet`
|
||||
- `journal-sheet.js:8-9` : `DocumentSheetConfig.unregisterSheet/registerSheet`
|
||||
|
||||
### 3. 24 classes `extends Dialog` → V2
|
||||
- `module/rdd-roll.js` (RdDRoll)
|
||||
- `module/rdd-tmr-dialog.js` (RdDTMRDialog)
|
||||
- `module/rdd-roll-resolution-table.js` (RdDRollResolutionTable)
|
||||
- `module/rdd-roll-ethylisme.js` (RdDRollDialogEthylisme)
|
||||
- `module/rdd-roll-encaisser.js` (RdDEncaisser)
|
||||
- `module/dialog-fabriquer-potion.js` (DialogFabriquerPotion)
|
||||
- `module/dialog-choix-xp-carac.js` (DialogChoixXpCarac)
|
||||
- `module/dialog-create-signedraconique.js` (DialogCreateSigneDraconique)
|
||||
- `module/dialog-chronologie.js` (DialogChronologie)
|
||||
- `module/dialog-validation-encaissement.js` (DialogValidationEncaissement)
|
||||
- `module/dialog-split-item.js` (DialogSplitItem)
|
||||
- `module/dialog-item-consommer.js` (DialogConsommer)
|
||||
- `module/dialog-select.js` (DialogSelect)
|
||||
- `module/rdd-tmr-rencontre-dialog.js` (RdDTMRRencontreDialog)
|
||||
- `module/time/rdd-calendrier-editor.js` (RdDCalendrierEditor)
|
||||
- `module/sommeil/dialog-nouveau-repos.js` (DialogNouveauRepos)
|
||||
- `module/sommeil/dialog-repos.js` (DialogRepos)
|
||||
- `module/sommeil/dialog-stress.js` (DialogStress)
|
||||
- `module/sommeil/dialog-chateau-dormant.js` (DialogChateauDormant)
|
||||
- `module/enchantement/dialog-enchanter.js` (DialogEnchanter)
|
||||
- `module/voyage/dialog-fatigue-voyage.js` (DialogFatigueVoyage)
|
||||
- `module/achat-vente/dialog-item-vente.js` (DialogItemVente)
|
||||
- `module/achat-vente/dialog-item-achat.js` (DialogItemAchat)
|
||||
- `module/tirage/fenetre-recherche-tirage.js` (FenetreRechercheConfiguration)
|
||||
|
||||
### 4. 3 classes `extends Application` → V2
|
||||
- `module/time/rdd-calendrier.js` (RdDCalendrier)
|
||||
- `module/sommeil/app-astrologie.js` (AppAstrologie)
|
||||
- `module/tirage/fenetre-recherche-tirage.js` (FenetreRechercheTirage)
|
||||
|
||||
### 5. 1 classe `extends FormApplication` → V2
|
||||
- `module/actor/random/app-personnage-aleatoire.js` (AppPersonnageAleatoire)
|
||||
|
||||
### 6. 8 appels `new Dialog({...})` directs → DialogV2
|
||||
- `module/actor-sheet.js:376`
|
||||
- `module/rdd-commands.js:272`
|
||||
- `module/rdd-confirm.js:25`
|
||||
- `module/tmr/present-cites.js:47`
|
||||
- `module/apps/rdd-import-stats.js:57`
|
||||
- `module/actor/base-actor-sheet.js:144,316`
|
||||
- `module/sommeil/dialog-nouveau-repos-cd.js:14`
|
||||
|
||||
## 🟠 Haute priorité
|
||||
|
||||
### 7. `_id` dans `updateEmbeddedDocuments` → utiliser `.id`
|
||||
- `module/rdd-combat.js:1299,1315`
|
||||
- `module/item-sort.js:165`
|
||||
- `module/actor.js:2127,2209,2314`
|
||||
- `module/actor/base-actor.js:625`
|
||||
- `module/roll/roll-type-meditation.mjs:33`
|
||||
- `module/tmr/effets-rencontres.js:61`
|
||||
- `module/rdd-possession-v2.mjs:214,257`
|
||||
- `module/rdd-possession.js:178`
|
||||
- `module/actor.js:2212`
|
||||
|
||||
### 8. `bringToFront()` sur apps V1 → adapter
|
||||
- `module/rdd-roll.js:131`
|
||||
- `module/rdd-roll-resolution-table.js:25,73`
|
||||
- `module/rdd-roll-ethylisme.js:28`
|
||||
- `module/rdd-tmr-dialog.js:130,176,183,191,651`
|
||||
- `module/dialog-lancer-recette.js:187`
|
||||
|
||||
### 9. `_onClose()` sans `super._onClose()` → ajouter
|
||||
- `module/dialog-gerer-potions.js:45-49`
|
||||
- `module/dialog-gerer-ingredients.js:45-49`
|
||||
- `module/dialog-gerer-herbes.js:47-51`
|
||||
|
||||
## 🟡 Priorité moyenne
|
||||
|
||||
### 10. `foundry.utils.duplicate()` → `deepClone()`
|
||||
~72 occurrences dans ~30 fichiers (actor.js, base-actor.js, rdd-utility.js, rdd-possession.js, rdd-combat.js, item/blessure.js, migrations.js…)
|
||||
|
||||
### 11. `._id` en lecture → `.id`
|
||||
~45 occurrences : `item._id`, `actor._id`, `combatant._id`, `token._id`…
|
||||
|
||||
### 12. `render(true)` sur apps V2 → `render({force: true})`
|
||||
~15 occurrences dans dialog-gerer-*.js, dialog-lancer-recette.js, dialog-verifier-ingredients.js, roll/roll-dialog.mjs, settings/*.js…
|
||||
|
||||
### 13. Incohérence registration sheets
|
||||
`module/applications/sheets/common-item-sheet.mjs` utilise `Items.registerSheet()` (global) ET `foundry.documents.collections.Items.registerSheet()` (namespacé)
|
||||
|
||||
## 🟢 Basse priorité / Info
|
||||
|
||||
### 14. `canvas` sans vérification `ready`
|
||||
~15 occurrences (targets.js, rdd-utility.js, distance.mjs, rdd-commands.js, rdd-combat.js, actor-token.mjs, rdd-token-hud.js, chat-roll-result.mjs…)
|
||||
|
||||
### 15. `element[0]` jQuery
|
||||
`module/tirage/fenetre-recherche-tirage.js:213`
|
||||
|
||||
### 16. `_warnedAppV1 = true` (suppression volontaire des warnings)
|
||||
`module/actor/base-actor-sheet.js:20`, `module/time/rdd-calendrier.js:18`
|
||||
|
||||
### 17. Anglais → fichier FR
|
||||
`system.json` déclare `"lang": "en"` pointant vers `lang/fr.json`
|
||||
Reference in New Issue
Block a user