Skip to content

Commit 4fa6c8d

Browse files
committed
chore: bump version to v0.16.17
1 parent 057d6de commit 4fa6c8d

10 files changed

Lines changed: 35 additions & 14 deletions

File tree

VERSION.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
padspanHA package version: 0.16.16
1+
padspanHA package version: 0.16.17

custom_components/padspan_ha/build_info.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
# See LICENSE file or https://www.gnu.org/licenses/gpl-3.0.html
55
"""Generated at build time. Used to prove what version is actually installed."""
66

7-
BUILD_VERSION = "0.16.16"
8-
BUILD_ID = "20260322T014128Z"
9-
CHANNEL = "beta"
7+
BUILD_VERSION = "0.16.17"
8+
BUILD_ID = "20260322T154358Z"
9+
CHANNEL = "stable"
1010

1111
# Backwards/for convenience
1212
VERSION = BUILD_VERSION

custom_components/padspan_ha/const.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
DOMAIN = "padspan_ha"
2121
NAME = "PadSpan HA"
22-
VERSION = "0.16.16"
22+
VERSION = "0.16.17"
2323

2424
# ── Config-flow option keys ───────────────────────────────────────────────────
2525
CONF_ENABLE_CLOUD = "enable_cloud"

custom_components/padspan_ha/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@
2020
"issue_tracker": "https://github.com/gbroeckling/padspanHA/issues",
2121
"requirements": [],
2222
"single_config_entry": true,
23-
"version": "0.16.16"
23+
"version": "0.16.17"
2424
}

custom_components/padspan_ha/www/padspan-ha/lights_panel.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
BUILD_ID / APP_VERSION updated automatically by scripts/release.py.
1313
*/
1414

15-
const APP_VERSION = "0.16.16";
16-
const BUILD_ID = "20260322T014128Z";
15+
const APP_VERSION = "0.16.17";
16+
const BUILD_ID = "20260322T154358Z";
1717

1818
// ── DOM helpers ──────────────────────────────────────────────────────────────
1919
function el(tag, attrs={}, children=[]){

custom_components/padspan_ha/www/padspan-ha/panel.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ If UI changes don't show:
2222
// BUILD_ID (YYYYMMDDTHHMMSSZ) is appended to all JS import URLs as a cache-buster
2323
// so browsers always load the latest code after a release.
2424
// CHANNEL controls the sidebar badge and maps to GitHub release types (beta=pre-release).
25-
const APP_VERSION = "0.16.16";
26-
const BUILD_ID = "20260322T014128Z";
27-
const CHANNEL = "beta";
25+
const APP_VERSION = "0.16.17";
26+
const BUILD_ID = "20260322T154358Z";
27+
const CHANNEL = "stable";
2828

2929
// ── Dynamic view imports ─────────────────────────────────────────────────────
3030
// Two-phase loading for fast first paint:

custom_components/padspan_ha/www/padspan-ha/views/health.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,11 +139,12 @@ function _renderFabric(ctx, container, data) {
139139
container.innerHTML = "";
140140
const { summary, checks, scanners, scanner_positions_m, room_geometry_m, adjacency } = data;
141141

142-
// ── Migration prompt for old system users ───────────────────────────────
142+
// ── Migration status ─────────────────────────────────────────────────────
143143
const _maps = data.maps || [];
144144
const _hasMapsData = _maps.some(m => m.has_receivers > 0 || m.has_room_bounds > 0);
145145
const _noFabric = !scanner_positions_m?.length && !room_geometry_m?.length;
146146
if (_hasMapsData && _noFabric) {
147+
// Migration needed
147148
const _mb = el("div",{class:"card",style:"border:2px solid #f59e0b;background:rgba(245,158,11,.08);margin-bottom:12px;padding:16px"});
148149
_mb.appendChild(el("div",{style:"font-weight:800;font-size:14px;color:#fbbf24;margin-bottom:8px"},"\u26a0 Migration Required"));
149150
_mb.appendChild(el("div",{style:"font-size:12px;color:#e2e8f0;margin-bottom:12px"},
@@ -170,6 +171,14 @@ function _renderFabric(ctx, container, data) {
170171
_mr.appendChild(_mbtn);
171172
_mb.appendChild(_mr);
172173
container.appendChild(_mb);
174+
} else if (scanner_positions_m?.length || room_geometry_m?.length) {
175+
// Migration complete
176+
container.appendChild(el("div",{style:"display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:6px 10px;background:rgba(82,183,136,.06);border:1px solid #52b78833;border-radius:8px"},[
177+
el("span",{style:"color:#52b788;font-size:13px"},"\u2705"),
178+
el("span",{style:"font-size:12px;color:#52b788;font-weight:600"},"Fabric migration complete"),
179+
el("span",{style:"font-size:11px;color:#94a3b8"},
180+
`${scanner_positions_m?.length || 0} scanners \u00b7 ${room_geometry_m?.length || 0} rooms`),
181+
]));
173182
}
174183

175184
// ── Summary banner ─────────────────────────────────────────────────────

custom_components/padspan_ha/www/padspan-ha/views/overview.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3524,6 +3524,18 @@ export function render(ctx){
35243524
]),
35253525
el("div",{style:"color:#94a3b8;margin-top:2px;margin-bottom:10px"}, `Mode: ${dataMode.toUpperCase()} · ${ctx.state.versionInfo?.version || ""} (${ctx.state.versionInfo?.build_id || ""})`),
35263526
]);
3527+
// Migration banner — show on overview if fabric is empty but maps have data
3528+
{
3529+
const _maps2 = ctx.state.maps?.list || [];
3530+
const _hasMaps = _maps2.some(m => (m.receivers||[]).length > 0 || Object.keys(m.room_bounds||{}).length > 0);
3531+
const _hasFabric = Object.keys(ctx.state.model?.scanner_positions_m || {}).length > 0 || Object.keys(ctx.state.model?.room_geometry_m || {}).length > 0;
3532+
if (_hasMaps && !_hasFabric) {
3533+
section.appendChild(el("div",{style:"padding:10px 14px;border:2px solid #f59e0b;background:rgba(245,158,11,.08);border-radius:8px;margin-bottom:10px"},[
3534+
el("div",{style:"font-weight:700;color:#fbbf24;font-size:13px"},"\u26a0 Fabric migration needed"),
3535+
el("div",{style:"font-size:11px;color:#e2e8f0;margin-top:4px"},"Go to Health tab \u2192 Positioning Fabric \u2192 Migrate to Fabric to enable real-world positioning."),
3536+
]));
3537+
}
3538+
}
35273539
section.appendChild(companionCard);
35283540
if(mapEl) section.appendChild(mapEl);
35293541
section.appendChild(grid);

custom_components/padspan_ha/www/padspan-ha/views/traceback.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1819,8 +1819,8 @@ export function render(ctx) {
18191819
}
18201820
}
18211821

1822-
// Auto-load on first render
1823-
_loadDist();
1822+
// Auto-load after a short delay (ensures DOM is mounted)
1823+
setTimeout(_loadDist, 200);
18241824

18251825
outer.appendChild(distCard);
18261826
}

dist/padspan_ha.zip

445 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)