Release 2.8.0
Publish Docker Image / build-and-push-existing-registry (./build/Dockerfile, web, pulse-signage-web) (push) Successful in 1m49s
Publish Docker Image / build-and-push-existing-registry (./build/Dockerfile.player, player, pulse-signage-player) (push) Successful in 32s

This commit is contained in:
2026-08-16 17:15:31 +01:00
parent 1bdc122995
commit 203d0bfc01
105 changed files with 4185 additions and 677 deletions
+19 -9
View File
@@ -51,33 +51,42 @@
</div>
<div class="col-12 col-lg-6">
<div class="form-label">Icon</div>
<div class="announcement-icon-picker" data-announcement-icon-picker-shell>
<div class="announcement-icon-picker" data-icon-picker data-announcement-icon-picker-shell>
<select id="announcement-icon" name="icon_key" class="d-none" tabindex="-1" aria-hidden="true">
{{#each announcementIcons}}
{{#each announcementIconCatalog}}
<option value="{{value}}" {{#if (eq ../announcement.icon_key value)}}selected{{/if}}>{{label}}</option>
{{/each}}
</select>
<button type="button" class="announcement-icon-picker__toggle" data-announcement-icon-picker-toggle aria-expanded="false" aria-controls="announcement-icon-picker-menu" title="Select an icon">
<span class="announcement-icon-picker__toggle-icon" data-announcement-icon-picker-icon aria-hidden="true"></span>
<button type="button" class="announcement-icon-picker__toggle" data-icon-picker-toggle data-announcement-icon-picker-toggle aria-expanded="false" aria-controls="announcement-icon-picker-menu" title="Select an icon">
<span class="announcement-icon-picker__toggle-icon" data-icon-picker-preview data-announcement-icon-picker-icon aria-hidden="true"></span>
<span class="announcement-icon-picker__toggle-content">
<span class="announcement-icon-picker__toggle-label" data-announcement-icon-picker-label>Select an icon</span>
<span class="announcement-icon-picker__toggle-label" data-icon-picker-label data-announcement-icon-picker-label>Select an icon</span>
<span class="announcement-icon-picker__toggle-hint">Click to choose</span>
</span>
<i class="bi bi-chevron-down announcement-icon-picker__caret" aria-hidden="true"></i>
</button>
<div id="announcement-icon-picker-menu" class="announcement-icon-picker__menu" data-announcement-icon-picker hidden>
<div id="announcement-icon-picker-menu" class="announcement-icon-picker__menu" data-icon-picker-menu data-announcement-icon-picker hidden>
<div class="announcement-icon-picker__header">
<span>Choose an icon</span>
<button type="button" class="btn btn-sm btn-link text-decoration-none p-0" data-announcement-icon-picker-close>Close</button>
<button type="button" class="btn btn-sm btn-link text-decoration-none p-0" data-icon-picker-close data-announcement-icon-picker-close>Close</button>
</div>
<div class="announcement-icon-picker__grid">
<div class="input-group input-group-sm announcement-icon-picker__search">
<span class="input-group-text" aria-hidden="true"><i class="bi bi-search"></i></span>
<input type="search" class="form-control" placeholder="Search all Bootstrap icons" aria-label="Search all Bootstrap icons" data-icon-picker-search data-announcement-icon-search />
</div>
<div class="announcement-icon-picker__section-header">
<span data-announcement-icon-grid-title>Suggested icons</span>
<span class="announcement-icon-picker__section-count" data-announcement-icon-search-count></span>
</div>
<div class="announcement-icon-picker__grid" data-icon-picker-grid data-announcement-icon-grid>
{{#each announcementIcons}}
<button type="button" class="announcement-icon-picker__option" data-announcement-icon-option data-icon-key="{{value}}" aria-pressed="false" title="{{label}}">
<button type="button" class="announcement-icon-picker__option" data-icon-picker-option data-announcement-icon-option data-icon-key="{{value}}" data-icon-label="{{label}}" data-icon-search-terms="{{value}} {{label}}" aria-pressed="false" title="{{label}}">
<i class="bi bi-{{value}}" aria-hidden="true"></i>
<span class="visually-hidden">{{label}}</span>
</button>
{{/each}}
</div>
<div class="announcement-icon-picker__search-empty" data-icon-picker-empty data-announcement-icon-search-empty hidden>No matching icons.</div>
</div>
</div>
</div>
@@ -165,6 +174,7 @@
</div>
</div>
</div>
<script src="/assets/js/icon-picker.js?v={{appVersion}}"></script>
<script type="module" src="/assets/js/announcements/announcement-form.js?v={{appVersion}}"></script>
</form>
+1 -1
View File
@@ -177,7 +177,7 @@
<span>Download for Windows</span>
</a>
<a class="btn btn-outline-secondary btn-lg flex-fill disabled dashboard-kiosk-launcher-download" data-kiosk-launcher-download data-kiosk-launcher-download-base="/downloads/kiosk/pulse-signage-kiosk.sh" aria-disabled="true" tabindex="-1">
<i class="bi bi-terminal me-2" aria-hidden="true"></i>
<i class="bi bi-tux me-2" aria-hidden="true"></i>
<span>Download for Linux</span>
</a>
</div>
+1 -1
View File
@@ -67,7 +67,7 @@
<div class="card-body p-0 playlist-items-table-responsive">
<table class="table table-striped w-100 mb-0">
<thead><tr><th>Order</th><th>Slide</th><th>Schedule</th><th>Playback</th><th>Actions</th></tr></thead>
<tbody id="playlist-items-body" data-playlist-id="{{playlist.id}}" data-playlist-canvas-id="{{playlistCanvasId}}">
<tbody id="playlist-items-body" data-playlist-id="{{playlist.id}}" data-playlist-canvas-id="{{playlistCanvasId}}" data-default-slide-duration="{{defaultSlideDurationSeconds}}">
{{#if playlistSlides.length}}
{{#each playlistSlides}}
{{> signage/playlists/slide-row slide=this playlistScheduleConfigUrl=../playlistScheduleConfigUrl}}