修复bug

This commit is contained in:
yangy
2026-05-27 15:10:04 +08:00
parent fe2a0f6b3d
commit b59a7bb583
10 changed files with 412 additions and 49 deletions
+14 -1
View File
@@ -89,6 +89,7 @@ export interface DeviceState {
dacGain: number;
dacArc: number;
dacImpedance: number;
dreMode: number;
dacVolumeDirect: number;
analogGain: number;
effect_enable: number;
@@ -213,7 +214,9 @@ export class LuxsinAPI {
const response = await fetch(`${this.baseUrl}/dev/info.cgi?action=syncData`);
const text = await response.text();
const decoded = decodeCustomBase64(text.trim());
return JSON.parse(decoded) as DeviceState;
const state = JSON.parse(decoded) as DeviceState;
console.log("[syncData]", state);
return state;
} catch (error) {
this.maybeRedirectForHttpsCert(error);
throw error;
@@ -333,6 +336,15 @@ export function parseFirmwareVersion(version: unknown): number {
return Number(parts[parts.length - 1]);
}
/** UI display: build number 26 → `1.0.0.26`. Already-prefixed values are unchanged. */
export function formatFirmwareVersionDisplay(version: unknown): string {
if (version === null || version === undefined) return "—";
const raw = String(version).trim();
if (!raw) return "—";
if (/^1\.0\.0\./i.test(raw)) return raw;
return `1.0.0.${raw}`;
}
/** Max `bootSound` index available for the current firmware. */
export function getBootSoundMaxIndex(firmwareVersion: number): number {
return firmwareVersion >= 26 ? 10 : 6;
@@ -387,6 +399,7 @@ export const MOCK_DEVICE_STATE: DeviceState = {
dacGain: 0,
dacArc: 0,
dacImpedance: 0,
dreMode: 0,
dacVolumeDirect: 0,
analogGain: 0,
effect_enable: 0,