Merged with development

This commit is contained in:
WBHarry 2025-08-23 18:17:32 +02:00
commit bd76e22e8d
1096 changed files with 11080 additions and 5102 deletions

View file

@ -2,270 +2,278 @@ export const typeConfig = {
adversaries: {
columns: [
{
key: "system.tier",
label: "Tier"
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular'
},
{
key: "system.type",
label: "Type"
key: 'system.type',
label: 'DAGGERHEART.GENERAL.type'
}
],
filters: [
{
key: "system.tier",
label: "Tier",
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular',
field: 'system.api.models.actors.DhAdversary.schema.fields.tier'
},
{
key: "system.type",
label: "Type",
key: 'system.type',
label: 'DAGGERHEART.GENERAL.type',
field: 'system.api.models.actors.DhAdversary.schema.fields.type'
},
{
key: "system.difficulty",
name: "difficulty.min",
label: "Difficulty (Min)",
key: 'system.difficulty',
name: 'difficulty.min',
label: 'DAGGERHEART.UI.ItemBrowser.difficultyMin',
field: 'system.api.models.actors.DhAdversary.schema.fields.difficulty',
operator: "gte"
operator: 'gte'
},
{
key: "system.difficulty",
name: "difficulty.max",
label: "Difficulty (Max)",
key: 'system.difficulty',
name: 'difficulty.max',
label: 'DAGGERHEART.UI.ItemBrowser.difficultyMax',
field: 'system.api.models.actors.DhAdversary.schema.fields.difficulty',
operator: "lte"
operator: 'lte'
},
{
key: "system.resources.hitPoints.max",
name: "hp.min",
label: "Hit Points (Min)",
key: 'system.resources.hitPoints.max',
name: 'hp.min',
label: 'DAGGERHEART.UI.ItemBrowser.hitPointsMin',
field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.hitPoints.fields.max',
operator: "gte"
operator: 'gte'
},
{
key: "system.resources.hitPoints.max",
name: "hp.max",
label: "Hit Points (Max)",
key: 'system.resources.hitPoints.max',
name: 'hp.max',
label: 'DAGGERHEART.UI.ItemBrowser.hitPointsMax',
field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.hitPoints.fields.max',
operator: "lte"
operator: 'lte'
},
{
key: "system.resources.stress.max",
name: "stress.min",
label: "Stress (Min)",
key: 'system.resources.stress.max',
name: 'stress.min',
label: 'DAGGERHEART.UI.ItemBrowser.stressMin',
field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.stress.fields.max',
operator: "gte"
operator: 'gte'
},
{
key: "system.resources.stress.max",
name: "stress.max",
label: "Stress (Max)",
key: 'system.resources.stress.max',
name: 'stress.max',
label: 'DAGGERHEART.UI.ItemBrowser.stressMax',
field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.stress.fields.max',
operator: "lte"
},
operator: 'lte'
}
]
},
items: {
columns: [
{
key: "type",
label: "Type"
key: 'type',
label: 'DAGGERHEART.GENERAL.type'
},
{
key: "system.secondary",
label: "Subtype",
format: (isSecondary) => isSecondary ? "secondary" : (isSecondary === false ? "primary" : '-')
key: 'system.secondary',
label: 'DAGGERHEART.UI.ItemBrowser.subtype',
format: isSecondary => (isSecondary ? 'secondary' : isSecondary === false ? 'primary' : '-')
},
{
key: "system.tier",
label: "Tier"
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular'
}
],
filters: [
{
key: "type",
label: "Type",
choices: () => CONFIG.Item.documentClass.TYPES.filter(t => ["armor", "weapon", "consumable", "loot"].includes(t)).map(t => ({ value: t, label: t }))
key: 'type',
label: 'DAGGERHEART.GENERAL.type',
choices: () =>
CONFIG.Item.documentClass.TYPES.filter(t =>
['armor', 'weapon', 'consumable', 'loot'].includes(t)
).map(t => ({ value: t, label: t }))
},
{
key: "system.secondary",
label: "Subtype",
key: 'system.secondary',
label: 'DAGGERHEART.UI.ItemBrowser.subtype',
choices: [
{ value: false, label: "Primary Weapon"},
{ value: true, label: "Secondary Weapon"}
{ value: false, label: 'DAGGERHEART.ITEMS.Weapon.primaryWeapon' },
{ value: true, label: 'DAGGERHEART.ITEMS.Weapon.secondaryWeapon' }
]
},
{
key: "system.tier",
label: "Tier",
choices: [{ value: "1", label: "1"}, { value: "2", label: "2"}, { value: "3", label: "3"}, { value: "4", label: "4"}]
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular',
choices: [
{ value: '1', label: '1' },
{ value: '2', label: '2' },
{ value: '3', label: '3' },
{ value: '4', label: '4' }
]
},
{
key: "system.burden",
label: "Burden",
key: 'system.burden',
label: 'DAGGERHEART.GENERAL.burden',
field: 'system.api.models.items.DHWeapon.schema.fields.burden'
},
{
key: "system.attack.roll.trait",
label: "Trait",
key: 'system.attack.roll.trait',
label: 'DAGGERHEART.GENERAL.Trait.single',
field: 'system.api.models.actions.actionsTypes.attack.schema.fields.roll.fields.trait'
},
{
key: "system.attack.range",
label: "Range",
key: 'system.attack.range',
label: 'DAGGERHEART.GENERAL.range',
field: 'system.api.models.actions.actionsTypes.attack.schema.fields.range'
},
{
key: "system.baseScore",
name: "armor.min",
label: "Armor Score (Min)",
key: 'system.baseScore',
name: 'armor.min',
label: 'DAGGERHEART.UI.ItemBrowser.armorScoreMin',
field: 'system.api.models.items.DHArmor.schema.fields.baseScore',
operator: "gte"
operator: 'gte'
},
{
key: "system.baseScore",
name: "armor.max",
label: "Armor Score (Max)",
key: 'system.baseScore',
name: 'armor.max',
label: 'DAGGERHEART.UI.ItemBrowser.armorScoreMax',
field: 'system.api.models.items.DHArmor.schema.fields.baseScore',
operator: "lte"
operator: 'lte'
},
{
key: "system.itemFeatures",
label: "Features",
choices: () => [...Object.entries(CONFIG.DH.ITEM.weaponFeatures), ...Object.entries(CONFIG.DH.ITEM.armorFeatures)].map(([k,v]) => ({ value: k, label: v.label})),
operator: "contains3"
key: 'system.itemFeatures',
label: 'DAGGERHEART.GENERAL.features',
choices: () =>
[
...Object.entries(CONFIG.DH.ITEM.weaponFeatures),
...Object.entries(CONFIG.DH.ITEM.armorFeatures)
].map(([k, v]) => ({ value: k, label: v.label })),
operator: 'contains3'
}
]
},
features: {
columns: [
],
filters: [
]
columns: [],
filters: []
},
cards: {
columns: [
{
key: "system.type",
label: "Type"
key: 'system.type',
label: 'DAGGERHEART.GENERAL.type'
},
{
key: "system.domain",
label: "Domain"
key: 'system.domain',
label: 'DAGGERHEART.GENERAL.Domain.single'
},
{
key: "system.level",
label: "Level"
key: 'system.level',
label: 'DAGGERHEART.GENERAL.level'
}
],
filters: [
{
key: "system.type",
label: "Type",
key: 'system.type',
label: 'DAGGERHEART.GENERAL.type',
field: 'system.api.models.items.DHDomainCard.schema.fields.type'
},
{
key: "system.domain",
label: "Domain",
key: 'system.domain',
label: 'DAGGERHEART.GENERAL.Domain.single',
field: 'system.api.models.items.DHDomainCard.schema.fields.domain',
operator: "contains2"
operator: 'contains2'
},
{
key: "system.level",
name: "level.min",
label: "Level (Min)",
key: 'system.level',
name: 'level.min',
label: 'DAGGERHEART.UI.ItemBrowser.levelMin',
field: 'system.api.models.items.DHDomainCard.schema.fields.level',
operator: "gte"
operator: 'gte'
},
{
key: "system.level",
name: "level.max",
label: "Level (Max)",
key: 'system.level',
name: 'level.max',
label: 'DAGGERHEART.UI.ItemBrowser.levelMax',
field: 'system.api.models.items.DHDomainCard.schema.fields.level',
operator: "lte"
operator: 'lte'
},
{
key: "system.recallCost",
name: "recall.min",
label: "Recall Cost (Min)",
key: 'system.recallCost',
name: 'recall.min',
label: 'DAGGERHEART.UI.ItemBrowser.recallCostMin',
field: 'system.api.models.items.DHDomainCard.schema.fields.recallCost',
operator: "gte"
operator: 'gte'
},
{
key: "system.recallCost",
name: "recall.max",
label: "Recall Cost (Max)",
key: 'system.recallCost',
name: 'recall.max',
label: 'DAGGERHEART.UI.ItemBrowser.recallCostMax',
field: 'system.api.models.items.DHDomainCard.schema.fields.recallCost',
operator: "lte"
operator: 'lte'
}
]
},
classes: {
columns: [
{
key: "system.evasion",
label: "Evasion"
key: 'system.evasion',
label: 'DAGGERHEART.GENERAL.evasion'
},
{
key: "system.hitPoints",
label: "Hit Points"
key: 'system.hitPoints',
label: 'DAGGERHEART.GENERAL.HitPoints.plural'
},
{
key: "system.domains",
label: "Domains"
key: 'system.domains',
label: 'DAGGERHEART.GENERAL.Domain.plural'
}
],
filters: [
{
key: "system.evasion",
name: "evasion.min",
label: "Evasion (Min)",
key: 'system.evasion',
name: 'evasion.min',
label: 'DAGGERHEART.UI.ItemBrowser.evasionMin',
field: 'system.api.models.items.DHClass.schema.fields.evasion',
operator: "gte"
operator: 'gte'
},
{
key: "system.evasion",
name: "evasion.max",
label: "Evasion (Max)",
key: 'system.evasion',
name: 'evasion.max',
label: 'DAGGERHEART.UI.ItemBrowser.evasionMax',
field: 'system.api.models.items.DHClass.schema.fields.evasion',
operator: "lte"
operator: 'lte'
},
{
key: "system.hitPoints",
name: "hp.min",
label: "Hit Points (Min)",
key: 'system.hitPoints',
name: 'hp.min',
label: 'DAGGERHEART.UI.ItemBrowser.hitPointsMin',
field: 'system.api.models.items.DHClass.schema.fields.hitPoints',
operator: "gte"
operator: 'gte'
},
{
key: "system.hitPoints",
name: "hp.max",
label: "Hit Points (Max)",
key: 'system.hitPoints',
name: 'hp.max',
label: 'DAGGERHEART.UI.ItemBrowser.hitPointsMax',
field: 'system.api.models.items.DHClass.schema.fields.hitPoints',
operator: "lte"
operator: 'lte'
},
{
key: "system.domains",
label: "Domains",
choices: () => Object.values(CONFIG.DH.DOMAIN.domains).map(d => ({ value: d.id, label: d.label})),
operator: "contains2"
key: 'system.domains',
label: 'DAGGERHEART.GENERAL.Domain.plural',
choices: () => Object.values(CONFIG.DH.DOMAIN.domains).map(d => ({ value: d.id, label: d.label })),
operator: 'contains2'
}
]
},
subclasses: {
columns: [
{
key: "id",
label: "Class",
format: (id) => {
return "";
key: 'id',
label: 'TYPES.Item.class',
format: id => {
return '';
}
},
{
key: "system.spellcastingTrait",
label: "Spellcasting Trait"
key: 'system.spellcastingTrait',
label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait'
}
],
filters: []
@ -273,133 +281,133 @@ export const typeConfig = {
beastforms: {
columns: [
{
key: "system.tier",
label: "Tier"
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular'
},
{
key: "system.mainTrait",
label: "Main Trait"
key: 'system.mainTrait',
label: 'DAGGERHEART.GENERAL.Trait.single'
}
],
filters: [
{
key: "system.tier",
label: "Tier",
key: 'system.tier',
label: 'DAGGERHEART.GENERAL.Tiers.singular',
field: 'system.api.models.items.DHBeastform.schema.fields.tier'
},
{
key: "system.mainTrait",
label: "Main Trait",
key: 'system.mainTrait',
label: 'DAGGERHEART.GENERAL.Trait.single',
field: 'system.api.models.items.DHBeastform.schema.fields.mainTrait'
}
]
}
}
};
export const compendiumConfig = {
"daggerheart": {
id: "daggerheart",
label: "DAGGERHEART",
daggerheart: {
id: 'daggerheart',
label: 'DAGGERHEART',
folders: {
"adversaries": {
id: "adversaries",
keys: ["adversaries"],
label: "Adversaries",
type: ["adversary"],
listType: "adversaries"
adversaries: {
id: 'adversaries',
keys: ['adversaries'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.adversaries',
type: ['adversary'],
listType: 'adversaries'
},
"ancestries": {
id: "ancestries",
keys: ["ancestries"],
label: "Ancestries",
type: ["ancestry"],
ancestries: {
id: 'ancestries',
keys: ['ancestries'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.ancestries',
type: ['ancestry'],
folders: {
"features": {
id: "features",
keys: ["ancestries"],
label: "Features",
type: ["feature"]
features: {
id: 'features',
keys: ['ancestries'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.features',
type: ['feature']
}
}
},
"equipments": {
id: "equipments",
keys: ["armors", "weapons", "consumables", "loot"],
label: "Equipment",
type: ["armor", "weapon", "consumable", "loot"],
listType: "items"
equipments: {
id: 'equipments',
keys: ['armors', 'weapons', 'consumables', 'loot'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.equipment',
type: ['armor', 'weapon', 'consumable', 'loot'],
listType: 'items'
},
"classes": {
id: "classes",
keys: ["classes"],
label: "Classes",
type: ["class"],
classes: {
id: 'classes',
keys: ['classes'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.classes',
type: ['class'],
folders: {
"features": {
id: "features",
keys: ["classes"],
label: "Features",
type: ["feature"]
features: {
id: 'features',
keys: ['classes'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.features',
type: ['feature']
},
"items": {
id: "items",
keys: ["classes"],
label: "Items",
type: ["armor", "weapon", "consumable", "loot"],
listType: "items"
items: {
id: 'items',
keys: ['classes'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.items',
type: ['armor', 'weapon', 'consumable', 'loot'],
listType: 'items'
}
},
listType: "classes"
listType: 'classes'
},
"subclasses": {
id: "subclasses",
keys: ["subclasses"],
label: "Subclasses",
type: ["subclass"],
listType: "subclasses"
subclasses: {
id: 'subclasses',
keys: ['subclasses'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.subclasses',
type: ['subclass'],
listType: 'subclasses'
},
"domains": {
id: "domains",
keys: ["domains"],
label: "Domain Cards",
type: ["domainCard"],
listType: "cards"
domains: {
id: 'domains',
keys: ['domains'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.domainCards',
type: ['domainCard'],
listType: 'cards'
},
"communities": {
id: "communities",
keys: ["communities"],
label: "Communities",
type: ["community"],
communities: {
id: 'communities',
keys: ['communities'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.communities',
type: ['community'],
folders: {
"features": {
id: "features",
keys: ["communities"],
label: "Features",
type: ["feature"]
features: {
id: 'features',
keys: ['communities'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.features',
type: ['feature']
}
}
},
"environments": {
id: "environments",
keys: ["environments"],
label: "Environments",
type: ["environment"]
environments: {
id: 'environments',
keys: ['environments'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.environments',
type: ['environment']
},
"beastforms": {
id: "beastforms",
keys: ["beastforms"],
label: "Beastforms",
type: ["beastform"],
listType: "beastforms",
beastforms: {
id: 'beastforms',
keys: ['beastforms'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.beastforms',
type: ['beastform'],
listType: 'beastforms',
folders: {
"features": {
id: "features",
keys: ["beastforms"],
label: "Features",
type: ["feature"]
features: {
id: 'features',
keys: ['beastforms'],
label: 'DAGGERHEART.UI.ItemBrowser.folders.features',
type: ['feature']
}
}
}
}
}
}
};