import QtQuick Item { property bool batteryPresent: true property var externalDevices: [] property string pendingConfirmation: "" property int armCount: 0 property int confirmCount: 0 property int cancelCount: 0 property int immediateCount: 0 function stateJson() { return JSON.stringify({ "battery": { "present": batteryPresent, "percent": 72, "state": "discharging", "timeEstimate": "3 hours", "health": 94, "role": "ui.accent" }, "externalDevices": externalDevices, "sessionActions": ["lock", "suspend", "monitor-off", "logout", "reboot", "poweroff"], "pendingConfirmation": pendingConfirmation }); } function sessionAction(kind) { const action = String(kind); if (action === "logout" || action === "reboot" || action === "poweroff") { pendingConfirmation = action; armCount++; } else { pendingConfirmation = ""; immediateCount++; } return stateJson(); } function confirmAction(kind) { if (pendingConfirmation === String(kind)) confirmCount++; pendingConfirmation = ""; return stateJson(); } function cancelAction() { pendingConfirmation = ""; cancelCount++; return stateJson(); } }