Migrate to FoundryVTT v13 AppV2 +

│ DataModels
│
│ - Reorganize DataModels into src/module/models/ (one .mjs per type)
│ - Create AppV2 actor/item sheets (HandlebarsApplicationMixin)…
This commit is contained in:
2026-04-19 10:54:43 +02:00
parent e3002dd602
commit 86b2cd5777
30 changed files with 445 additions and 1679 deletions

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} flexcol" autocomplete="off" style="align-content: flex-start;align-items: baseline;overflow: hidden;height: 100%;">
<div class="{{cssClass}} flexcol" style="align-content: flex-start;align-items: baseline;overflow: hidden;height: 100%;">
<nav class="sheet-sidebar tabs" data-group="sidebar">
<!-- <a class="item tab-select" data-tab="personal" title="Personal"><i class="fa-solid fa-id-card"></i></a> -->
<a class="item tab-select" data-tab="health" title="{{ localize 'MGT2.Actor.Health' }}"><i class="fa-solid fa-heart-pulse"></i></a>
@@ -745,4 +745,4 @@
<div><a name="config" title="Config" style="margin-right: 0.5rem;"><i class="fa-solid fa-gear"></i></a></div>
</section>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header">
<label>{{localize 'MGT2.TYPES.Item.armor'}}</label>
</div>
@@ -71,4 +71,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header"><label class="upcase">{{ localize 'MGT2.Items.Career' }}</label></div>
<div class="itemsheet-panel">
<div class="itemsheet-maincol">
@@ -47,4 +47,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header">
<label>{{localize 'MGT2.EquipmentSubType.computer'}}</label>
</div>
@@ -62,4 +62,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header"><label class="upcase">{{ localize 'MGT2.Items.Contact' }}</label></div>
<div class="itemsheet-panel">
<div class="itemsheet-maincol">
@@ -81,4 +81,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header"><label class="upcase">{{ localize 'MGT2.Items.Container' }}</label></div>
<div class="itemsheet-panel">
<div class="itemsheet-maincol">
@@ -52,4 +52,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header">
{{#if (eq system.subType "disease")}}
<label>{{localize 'MGT2.DiseaseSubType.disease'}}</label>
@@ -42,4 +42,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header">
{{#if (eq system.subType "augment")}}
<label>{{localize 'MGT2.EquipmentSubType.augment'}}</label>
@@ -54,4 +54,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header">
{{#if (eq system.subType "loot")}}
<label>{{localize 'MGT2.ItemSubType.loot'}}</label>
@@ -57,4 +57,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header"><label>{{ localize 'MGT2.Specie' }}</label></div>
<div class="itemsheet-panel">
<div class="itemsheet-maincol">
@@ -67,4 +67,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} flexrow itemsheet" autocomplete="off">
<div class="{{cssClass}} flexrow itemsheet">
<div class="itemsheet-header">
{{#if (eq system.subType "skill")}}
<label>{{localize 'MGT2.TalentSubType.skill'}}</label>
@@ -76,4 +76,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -1,4 +1,4 @@
<form class="{{cssClass}} itemsheet" autocomplete="off">
<div class="{{cssClass}} itemsheet">
<div class="itemsheet-header"><label class="upcase">{{ localize 'MGT2.Items.Weapon' }}</label></div>
<div class="itemsheet-panel">
<div class="itemsheet-maincol">
@@ -86,4 +86,4 @@
</div>
</div>
</div>
</form>
</div>

View File

@@ -2,14 +2,14 @@
<div class="form-group">
<label>{{ localize 'MGT2.RollPrompt.CharacteristicDM' }}</label>
<select name="characteristic">
{{selectOptions characteristics selected=characteristic nameAttr="_id" labelAttr="name"}}
{{selectOptions characteristics selected=characteristic valueAttr="_id" labelAttr="name"}}
</select>
</div>
<div class="form-group">
<label>{{ localize 'MGT2.RollPrompt.SkillDM' }}</label>
<select name="skill">
<option></option>
{{selectOptions skills selected=skill nameAttr="_id" labelAttr="name"}}
{{selectOptions skills selected=skill valueAttr="_id" labelAttr="name"}}
</select>
</div>
<div class="form-group">