mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-12 03:31:07 +01:00
[Feature] Compedium Browser (#707)
* Create files * Item Browser v0.5 * dialog with (temporary) * Css * initial style in compedium browser * config * fixes * Replace compendium calls * Level Up * style compedium item list * removing css files --------- Co-authored-by: Dapoolp <elcatnet@gmail.com> Co-authored-by: WBHarry <williambjrklund@gmail.com>
This commit is contained in:
parent
a19c77ae4a
commit
a25007b994
34 changed files with 1650 additions and 123 deletions
|
|
@ -31,25 +31,25 @@
|
|||
{{#if document.system.class.value}}
|
||||
<span data-action="editDoc" data-item-uuid="{{document.system.class.value.uuid}}">{{document.system.class.value.name}}</span>
|
||||
{{else}}
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="daggerheart.classes">{{localize 'TYPES.Item.class'}}</span>
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="classes">{{localize 'TYPES.Item.class'}}</span>
|
||||
{{/if}}
|
||||
<span class="dot">•</span>
|
||||
{{#if document.system.class.subclass}}
|
||||
<span data-action="editDoc" data-item-uuid="{{document.system.class.subclass.uuid}}">{{document.system.class.subclass.name}}</span>
|
||||
{{else}}
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="daggerheart.subclasses">{{localize 'TYPES.Item.subclass'}}</span>
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="subclasses">{{localize 'TYPES.Item.subclass'}}</span>
|
||||
{{/if}}
|
||||
<span class="dot">•</span>
|
||||
{{#if document.system.community}}
|
||||
<span data-action="editDoc" data-item-uuid="{{document.system.community.uuid}}">{{document.system.community.name}}</span>
|
||||
{{else}}
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="daggerheart.communities">{{localize 'TYPES.Item.community'}}</span>
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="communities">{{localize 'TYPES.Item.community'}}</span>
|
||||
{{/if}}
|
||||
<span class="dot">•</span>
|
||||
{{#if document.system.ancestry}}
|
||||
<span data-action="editDoc" data-item-uuid="{{document.system.ancestry.uuid}}">{{document.system.ancestry.name}}</span>
|
||||
{{else}}
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="daggerheart.ancestries">{{localize 'TYPES.Item.ancestry'}}</span>
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="ancestries">{{localize 'TYPES.Item.ancestry'}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
|
|
@ -58,13 +58,13 @@
|
|||
{{#if document.system.multiclass.value}}
|
||||
<span data-action="editDoc"data-item-uuid="{{document.system.multiclass.value.uuid}}">{{document.system.multiclass.value.name}}</span>
|
||||
{{else}}
|
||||
<span data-action="openPack" data-key="daggerheart.classes">{{localize 'DAGGERHEART.GENERAL.multiclass'}}</span>
|
||||
<span data-action="openPack" data-key="classes">{{localize 'DAGGERHEART.GENERAL.multiclass'}}</span>
|
||||
{{/if}}
|
||||
<span class="dot">•</span>
|
||||
{{#if document.system.multiclass.subclass}}
|
||||
<span data-action="editDoc" data-item-uuid="{{document.system.multiclass.subclass.uuid}}">{{document.system.multiclass.subclass.name}}</span>
|
||||
{{else}}
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="daggerheart.subclasses">{{localize 'TYPES.Item.subclass'}}</span>
|
||||
<span class="missing-header-feature" data-action="openPack" data-key="subclasses">{{localize 'TYPES.Item.subclass'}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -10,6 +10,9 @@
|
|||
<a class="filter-button">
|
||||
<i class="fa-solid fa-filter"></i>
|
||||
</a>
|
||||
<a data-tooltip="{{localize 'DAGGERHEART.UI.Tooltip.compendiumBrowser'}}" data-action="tempBrowser">
|
||||
<i class="fa-solid fa-book-atlas"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="currency-section">
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ Parameters:
|
|||
<legend>
|
||||
{{localize title}}
|
||||
{{#if canCreate}}
|
||||
<a data-action="createDoc" data-document-class="{{ifThen (eq type 'effect') 'ActiveEffect' 'Item' }}"
|
||||
<a data-action="{{ifThen (or (eq type 'effect') (eq type 'feature')) 'createDoc' 'addNewItem' }}" data-document-class="{{ifThen (eq type 'effect') 'ActiveEffect' 'Item' }}"
|
||||
data-type="{{ifThen (eq type 'effect') 'base' type}}"
|
||||
{{#if inVault}}data-in-vault="{{inVault}}"{{/if}}
|
||||
{{#if disabled}} data-disabled="{{disabled}}"{{/if}}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,6 @@
|
|||
<fieldset class="two-columns">
|
||||
<legend>{{localize tabs.settings.label}}</legend>
|
||||
<span>{{localize "DAGGERHEART.ITEMS.Subclass.spellcastingTrait"}}</span>
|
||||
{{formField systemFields.spellcastingTrait value=source.system.spellcastingTrait localize=true}}
|
||||
{{formInput systemFields.spellcastingTrait value=source.system.spellcastingTrait localize=true}}
|
||||
</fieldset>
|
||||
</section>
|
||||
|
|
@ -6,15 +6,15 @@
|
|||
<fieldset class="two-columns">
|
||||
<legend>{{localize tabs.settings.label}}</legend>
|
||||
<span>{{localize "DAGGERHEART.GENERAL.Tiers.singular"}}</span>
|
||||
{{formField systemFields.tier value=source.system.tier}}
|
||||
{{formInput systemFields.tier value=source.system.tier}}
|
||||
<span>{{localize "DAGGERHEART.ITEMS.Weapon.secondaryWeapon"}}</span>
|
||||
{{formField systemFields.secondary value=source.system.secondary}}
|
||||
{{formInput systemFields.secondary value=source.system.secondary}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.Trait.single"}}</span>
|
||||
{{formInput systemFields.attack.fields.roll.fields.trait value=document.system.attack.roll.trait name="system.attack.roll.trait" label="DAGGERHEART.GENERAL.Trait.single" localize=true}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.range"}}</span>
|
||||
{{formInput systemFields.attack.fields.range value=document.system.attack.range label="Range" name="system.attack.range" localize=true}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.burden"}}</span>
|
||||
{{formField systemFields.burden value=source.system.burden localize=true}}
|
||||
{{formInput systemFields.burden value=source.system.burden localize=true}}
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="two-columns">
|
||||
|
|
|
|||
89
templates/ui/itemBrowser/itemBrowser.hbs
Normal file
89
templates/ui/itemBrowser/itemBrowser.hbs
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
<div class="compendium-results">
|
||||
{{#if menu.data }}
|
||||
<div class="menu-path">
|
||||
{{#each menu.path}}
|
||||
{{#if (eq this "folders")}}
|
||||
<span class="path-link">
|
||||
/
|
||||
</span>
|
||||
{{else}}
|
||||
<span class="item-path">{{this}}</span>
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="item-filter">
|
||||
<div class="filter-header">
|
||||
<div class="search-bar">
|
||||
<div class="icon">
|
||||
<i class="fa-solid fa-magnifying-glass"></i>
|
||||
</div>
|
||||
<input type="search" name="search" class="search-input" placeholder="Search...">
|
||||
</div>
|
||||
{{#if fieldFilter.length}}
|
||||
<a data-tooltip="Filters" data-action="expandContent"><i class="fa-solid fa-filter"></i></a>
|
||||
{{/if}}
|
||||
<a data-tooltip="Erase" data-action="resetFilters"><i class="fa-solid fa-eraser"></i></a>
|
||||
</div>
|
||||
<div class="filter-content extensible">
|
||||
<div class="wrapper">
|
||||
{{#each fieldFilter}}
|
||||
{{#if choices }}
|
||||
<div class="form-group"{{#with (lookup @root.presets.filter key)}}{{#if forced}} disabled{{/if}}{{/with}}>
|
||||
<label>{{localize label}}</label>
|
||||
<div class="form-fields">
|
||||
<select data-key="{{key}}" name={{name}}>
|
||||
{{selectOptions choices valueAttr="value" blank="" localize=true selected=value}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{else}}
|
||||
{{#if filtered }}
|
||||
{{formField field localize=true blank="" name=name choices=(@root.formatChoices this) valueAttr="value" dataset=(object key=key) value=value}}
|
||||
{{else}}
|
||||
{{#if field.label}}
|
||||
{{formField field localize=true blank="" name=name dataset=(object key=key) value=value}}
|
||||
{{else}}
|
||||
{{formField field localize=true blank="" name=name dataset=(object key=key) label=label value=value}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{!-- <div class="item-list-container"> --}}
|
||||
{{#if menu.data.columns.length}}
|
||||
<div class="item-list-header">
|
||||
<div class="item-list-img"></div>
|
||||
<div class="item-list-name" data-sort-key="name" data-sort-type="ASC" data-action="sortList">Name</div>
|
||||
{{#each menu.data.columns}}
|
||||
<div data-sort-key="{{key}}" data-sort-type="" data-action="sortList">{{label}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
<div class="item-list">
|
||||
{{#each items}}
|
||||
<div class="item-container" data-item-uuid="{{uuid}}" draggable="true">
|
||||
<div class="item-header">
|
||||
<div class="item-info" data-action="expandContent">
|
||||
<img src="{{img}}" data-item-key="img" class="item-list-img">
|
||||
<div data-item-key="name" class="item-list-name">{{name}}</div>
|
||||
{{#each ../menu.data.columns}}
|
||||
<div data-item-key="{{key}}">{{#with (@root.formatLabel ../this this) as | label |}}{{{label}}}{{/with}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="item-desc extensible">
|
||||
<div class="wrapper">{{{system.description}}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{!-- </div> --}}
|
||||
{{else}}
|
||||
<div class="welcome-message">
|
||||
<h2 class="title">Daggerheart Compendium Browser</h2>
|
||||
<span class="hint"><i>Select a Folder in sidebar to start browsing trought the compendium</i></span>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
28
templates/ui/itemBrowser/sidebar.hbs
Normal file
28
templates/ui/itemBrowser/sidebar.hbs
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<div class="compendium-sidebar">
|
||||
{{#each compendiums}}
|
||||
<details class="compendium-container" data-compendium-id="{{id}}" open>
|
||||
<summary>
|
||||
{{label}}
|
||||
<line-div></line-div>
|
||||
</summary>
|
||||
<div class="folder-list">
|
||||
{{#each folders}}
|
||||
<div class="{{#if selected}} is-selected{{/if}}" data-action="selectFolder" data-folder-id="{{id}}">{{label}}</div>
|
||||
{{!-- <div data-action="selectFolder" data-folder-id="{{id}}">{{label}}</div> --}}
|
||||
<div class="subfolder-list">
|
||||
{{#each folders}}
|
||||
<div
|
||||
class="subfolder-item {{#if selected}} is-selected{{/if}}"
|
||||
data-action="selectFolder"
|
||||
data-folder-id="{{../id}}.folders.{{id}}"
|
||||
>
|
||||
• {{label}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
<line-div></line-div>
|
||||
</details>
|
||||
{{/each}}
|
||||
</div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue