150 lines
7.0 KiB
Handlebars
150 lines
7.0 KiB
Handlebars
|
|
<section id="setup-packages" class="application framed">
|
||
|
|
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
{{! Tab Navigation }}
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
|
||
|
|
<nav class="tabs">
|
||
|
|
<h2 class="item divider active" data-tab="worlds">
|
||
|
|
<i class="fas {{@root.worlds.icon}} tab-icon"></i>
|
||
|
|
<span class="tab-title">{{localize "SETUP.Worlds"}}</span>
|
||
|
|
</h2>
|
||
|
|
<h2 class="item divider" data-tab="systems">
|
||
|
|
<i class="fas {{@root.systems.icon}} tab-icon"></i>
|
||
|
|
<span class="tab-title">{{localize "SETUP.Systems"}}</span>
|
||
|
|
</h2>
|
||
|
|
<h2 class="item divider" data-tab="modules">
|
||
|
|
<i class="fas {{@root.modules.icon}} tab-icon"></i>
|
||
|
|
<span class="tab-title">{{localize "SETUP.Modules"}}</span>
|
||
|
|
</h2>
|
||
|
|
</nav>
|
||
|
|
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
{{! Worlds }}
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
|
||
|
|
<section id="worlds" class="tab" data-tab="worlds" data-package-type="world">
|
||
|
|
<header class="controls flexrow">
|
||
|
|
<label class="filter search">
|
||
|
|
<input id="world-filter" type="search" value="" autocomplete="off"
|
||
|
|
placeholder="{{ localize 'SETUP.WorldFilter' }} ({{worlds.count}})">
|
||
|
|
</label>
|
||
|
|
<button type="button" data-action="installPackage">
|
||
|
|
<i class="fas fa-download"></i>
|
||
|
|
<label>{{localize "SETUP.InstallWorld"}}</label>
|
||
|
|
</button>
|
||
|
|
<button type="button" data-action="worldCreate">
|
||
|
|
<i class="fas {{@root.worlds.icon}}"></i>
|
||
|
|
<label>{{localize "SETUP.WorldCreate"}}</label>
|
||
|
|
</button>
|
||
|
|
<div class="view-modes">
|
||
|
|
{{#each viewModes as |mode|}}
|
||
|
|
<button class="view-mode icon {{#if (eq @root.worlds.viewMode mode.id)}}active{{/if}}" type="button"
|
||
|
|
data-action="viewMode" data-view-mode="{{mode.id}}" data-tooltip="{{mode.label}}">
|
||
|
|
<i class="{{mode.icon}}"></i>
|
||
|
|
</button>
|
||
|
|
{{/each}}
|
||
|
|
</div>
|
||
|
|
</header>
|
||
|
|
{{> (lookup worlds "template") type="worlds" packages=worlds.packages}}
|
||
|
|
<div class="no-results hidden"></div>
|
||
|
|
<div class="locked hidden">
|
||
|
|
<h3 class="divider"></h3>
|
||
|
|
<i class="fas fa-spinner fa-spin"></i>
|
||
|
|
</div>
|
||
|
|
{{#unless worlds.count}}
|
||
|
|
<div class="no-worlds">
|
||
|
|
<p>{{localize "SETUP.GettingStarted"}}</p>
|
||
|
|
<p>{{{localize "SETUP.NoWorldsMessage"}}} <a data-tour="creatingAWorld" title="{{ localize "TOURS.ShowMeHow" }}" class="launch-tour"><i class="fas fa-person-hiking"></i> {{ localize "TOURS.ShowMeHow" }}</a></p>
|
||
|
|
</div>
|
||
|
|
{{/unless}}
|
||
|
|
</section>
|
||
|
|
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
{{! Systems }}
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
|
||
|
|
<section id="systems" class="tab" data-tab="systems" data-package-type="system">
|
||
|
|
<header class="controls flexrow">
|
||
|
|
<label class="filter search">
|
||
|
|
<input id="system-filter" type="search" value="" autocomplete="off"
|
||
|
|
placeholder="{{ localize 'SETUP.SystemFilter' }} ({{systems.count}})">
|
||
|
|
</label>
|
||
|
|
<button type="button" data-action="installPackage">
|
||
|
|
<i class="fas fa-download"></i>
|
||
|
|
<label>{{localize "SETUP.InstallSystem"}}</label>
|
||
|
|
</button>
|
||
|
|
<button type="button" data-action="updateAll" {{ disabled systems.updatingAll }}>
|
||
|
|
<i class="{{#if systems.updatingAll}}fas fa-spinner fa-spin{{else}}fas fa-cloud-download{{/if}}"></i>
|
||
|
|
<label>{{localize "SETUP.UpdateAll"}}</label>
|
||
|
|
</button>
|
||
|
|
<div class="view-modes">
|
||
|
|
{{#each viewModes as |mode|}}
|
||
|
|
<button class="view-mode icon {{#if (eq @root.systems.viewMode mode.id)}}active{{/if}}" type="button"
|
||
|
|
data-action="viewMode" data-view-mode="{{mode.id}}" data-tooltip="{{mode.label}}">
|
||
|
|
<i class="{{mode.icon}}"></i>
|
||
|
|
</button>
|
||
|
|
{{/each}}
|
||
|
|
</div>
|
||
|
|
</header>
|
||
|
|
{{> (lookup systems "template") type="systems" packages=systems.packages}}
|
||
|
|
<div class="no-results hidden"></div>
|
||
|
|
<div class="locked hidden">
|
||
|
|
<h3 class="divider"></h3>
|
||
|
|
<i class="fas fa-spinner fa-spin"></i>
|
||
|
|
</div>
|
||
|
|
{{#unless systems.count}}
|
||
|
|
<div class="no-systems">
|
||
|
|
<p>{{localize "SETUP.GettingStarted"}}</p>
|
||
|
|
<p>{{{localize "SETUP.NoSystemsMessage"}}}
|
||
|
|
<a class="launch-tour" data-tour="installingASystem" data-tooltip="TOURS.ShowMeHow">
|
||
|
|
<i class="fas fa-person-hiking"></i>
|
||
|
|
{{ localize "TOURS.ShowMeHow" }}
|
||
|
|
</a>
|
||
|
|
</p>
|
||
|
|
</div>
|
||
|
|
{{/unless}}
|
||
|
|
</section>
|
||
|
|
|
||
|
|
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
{{! Modules }}
|
||
|
|
{{! -------------------------------------------- }}
|
||
|
|
|
||
|
|
<section id="modules" class="tab" data-tab="modules" data-package-type="module">
|
||
|
|
<header class="controls flexrow">
|
||
|
|
<label class="filter search">
|
||
|
|
<input id="module-filter" type="search" value="" autocomplete="off"
|
||
|
|
placeholder="{{ localize 'SETUP.ModuleFilter' }} ({{modules.count}})">
|
||
|
|
</label>
|
||
|
|
<button type="button" data-action="installPackage">
|
||
|
|
<i class="fas fa-download"></i>
|
||
|
|
<label>{{localize "SETUP.InstallModule"}}</label>
|
||
|
|
</button>
|
||
|
|
<button type="button" data-action="updateAll" {{ disabled modules.updatingAll }}>
|
||
|
|
<i class="{{#if modules.updatingAll}}fas fa-spinner fa-spin{{else}}fas fa-cloud-download{{/if}}"></i>
|
||
|
|
<label>{{localize "SETUP.UpdateAll"}}</label>
|
||
|
|
</button>
|
||
|
|
<button id="moduleCreate" type="button" class="icon" data-action="moduleCreate" data-tooltip="PACKAGE.ModuleCreate">
|
||
|
|
<i class="fa-solid fa-gear-code"></i>
|
||
|
|
</button>
|
||
|
|
<div class="view-modes">
|
||
|
|
{{#each viewModes as |mode|}}
|
||
|
|
<button class="view-mode icon {{#if (eq @root.modules.viewMode mode.id)}}active{{/if}}" type="button"
|
||
|
|
data-action="viewMode" data-view-mode="{{mode.id}}" data-tooltip="{{mode.label}}">
|
||
|
|
<i class="{{mode.icon}}"></i>
|
||
|
|
</button>
|
||
|
|
{{/each}}
|
||
|
|
</div>
|
||
|
|
</header>
|
||
|
|
{{> (lookup modules "template") type="modules" packages=modules.packages}}
|
||
|
|
<div class="no-results hidden"></div>
|
||
|
|
<div class="locked hidden">
|
||
|
|
<h3 class="divider"></h3>
|
||
|
|
<i class="fas fa-spinner fa-spin"></i>
|
||
|
|
</div>
|
||
|
|
</section>
|
||
|
|
|
||
|
|
<div id="progress"></div>
|
||
|
|
</section>
|