mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
improve version check, #1497
This commit is contained in:
@@ -44,7 +44,9 @@ const Version = () => {
|
||||
const [restarting, setRestarting] = useState<boolean>(false);
|
||||
const [openInstallDialog, setOpenInstallDialog] = useState<boolean>(false);
|
||||
const [usingDevVersion, setUsingDevVersion] = useState<boolean>(false);
|
||||
const [upgradeAvailable, setUpgradeAvailable] = useState<boolean>(false);
|
||||
const [devUpgradeAvailable, setDevUpgradeAvailable] = useState<boolean>(false);
|
||||
const [stableUpgradeAvailable, setStableUpgradeAvailable] =
|
||||
useState<boolean>(false);
|
||||
const [internetLive, setInternetLive] = useState<boolean>(false);
|
||||
const [downloadOnly, setDownloadOnly] = useState<boolean>(false);
|
||||
|
||||
@@ -62,8 +64,13 @@ const Version = () => {
|
||||
immediate: false
|
||||
}
|
||||
).onSuccess((event) => {
|
||||
const data = event.data as { emsesp_version: string; upgradeable: boolean };
|
||||
setUpgradeAvailable(data.upgradeable);
|
||||
const data = event.data as {
|
||||
emsesp_version: string;
|
||||
dev_upgradeable: boolean;
|
||||
stable_upgradeable: boolean;
|
||||
};
|
||||
setDevUpgradeAvailable(data.dev_upgradeable);
|
||||
setStableUpgradeAvailable(data.stable_upgradeable);
|
||||
});
|
||||
|
||||
const {
|
||||
@@ -236,8 +243,12 @@ const Version = () => {
|
||||
setUsingDevVersion(data.emsesp_version.includes('dev'));
|
||||
};
|
||||
|
||||
const showButtons = (showDev?: boolean) => {
|
||||
if (!me.admin) {
|
||||
const showButtons = (showDev: boolean) => {
|
||||
if (
|
||||
!me.admin ||
|
||||
(showDev && !devUpgradeAvailable) ||
|
||||
(!showDev && !stableUpgradeAvailable)
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -266,10 +277,11 @@ const Version = () => {
|
||||
size="small"
|
||||
onClick={() => showFirmwareDialog(showDev)}
|
||||
>
|
||||
{upgradeAvailable || (!usingDevVersion && showDev)
|
||||
? LL.UPGRADE()
|
||||
: LL.REINSTALL()}
|
||||
…
|
||||
{(devUpgradeAvailable && showDev) || (stableUpgradeAvailable && !showDev)
|
||||
? showDev && !usingDevVersion
|
||||
? LL.SWITCH_RELEASE_TYPE()
|
||||
: LL.UPGRADE()
|
||||
: LL.INSTALL()}
|
||||
</Button>
|
||||
);
|
||||
};
|
||||
@@ -421,8 +433,8 @@ const Version = () => {
|
||||
</Typography>
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
{upgradeAvailable ? (
|
||||
{(devUpgradeAvailable && usingDevVersion) ||
|
||||
(stableUpgradeAvailable && !usingDevVersion) ? (
|
||||
<Typography mt={2} color="warning">
|
||||
<InfoOutlinedIcon
|
||||
color="warning"
|
||||
@@ -436,7 +448,9 @@ const Version = () => {
|
||||
color="success"
|
||||
sx={{ verticalAlign: 'middle', mr: 2 }}
|
||||
/>
|
||||
{LL.LATEST_VERSION()}
|
||||
{LL.LATEST_VERSION(
|
||||
usingDevVersion ? LL.DEVELOPMENT() : LL.STABLE()
|
||||
)}
|
||||
</Typography>
|
||||
)}
|
||||
</>
|
||||
|
||||
@@ -333,7 +333,7 @@ const cz: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware se nahrává a instaluje',
|
||||
INSTALL_VERSION: 'Tímto se instalovat verze {0}. Jste si jistí?',
|
||||
UPGRADE_AVAILABLE: 'Je k dispozici aktualizace firmwaru!',
|
||||
LATEST_VERSION: 'Používáte nejnovější verzi firmwaru',
|
||||
LATEST_VERSION: 'Používáte nejnovější verzi {0}firmwaru',
|
||||
PLEASE_WAIT: 'Prosím čekejte',
|
||||
RESTARTING_PRE: 'Inicializace',
|
||||
RESTARTING_POST: 'Příprava',
|
||||
@@ -351,8 +351,8 @@ const cz: Translation = {
|
||||
THIS_VERSION: 'Tato verze',
|
||||
PLATFORM: 'Platforma',
|
||||
RELEASE_TYPE: 'Typ sestavení',
|
||||
REINSTALL: 'Přeinstalovat',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Pro automatickou kontrolu a instalaci aktualizací je třeba internetové připojení',
|
||||
SWITCH_RELEASE_TYPE: 'Přepnout na vývojovou verzi'
|
||||
};
|
||||
|
||||
export default cz;
|
||||
|
||||
@@ -333,7 +333,7 @@ const de: Translation = {
|
||||
WAIT_FIRMWARE: 'Die Firmware wird hochgeladen und installiert.',
|
||||
INSTALL_VERSION: 'Dadurch wird die Version {0} heruntergeladen. Sind Sie sicher?',
|
||||
UPGRADE_AVAILABLE: 'Es ist ein Firmware-Upgrade verfügbar.',
|
||||
LATEST_VERSION: 'Sie verwenden die neueste Firmware-Version',
|
||||
LATEST_VERSION: 'Sie verwenden die neueste {0} Firmware-Version',
|
||||
PLEASE_WAIT: 'Bitte warten',
|
||||
RESTARTING_PRE: 'Initialisierung',
|
||||
RESTARTING_POST: 'Vorbereitung',
|
||||
@@ -351,8 +351,8 @@ const de: Translation = {
|
||||
THIS_VERSION: 'Diese Version',
|
||||
PLATFORM: 'Plattform',
|
||||
RELEASE_TYPE: 'Release Typ',
|
||||
REINSTALL: 'Neu installieren',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internetverbindung erforderlich für automatische Version-Überprüfung und -Aktualisierung',
|
||||
SWITCH_RELEASE_TYPE: 'Zum Entwickler-Release wechseln'
|
||||
};
|
||||
|
||||
export default de;
|
||||
|
||||
@@ -333,7 +333,7 @@ const en: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing',
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?',
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!',
|
||||
LATEST_VERSION: 'You are using the latest firmware version',
|
||||
LATEST_VERSION: 'You are using the latest {0} firmware version',
|
||||
PLEASE_WAIT: 'Please wait',
|
||||
RESTARTING_PRE: 'Initializing',
|
||||
RESTARTING_POST: 'Preparing',
|
||||
@@ -351,8 +351,8 @@ const en: Translation = {
|
||||
THIS_VERSION: 'This Version',
|
||||
PLATFORM: 'Platform',
|
||||
RELEASE_TYPE: 'Release Type',
|
||||
REINSTALL: 'Re-install',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release'
|
||||
};
|
||||
|
||||
export default en;
|
||||
|
||||
@@ -333,7 +333,7 @@ const fr: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest {0} firmware version', // TODO translate
|
||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||
RESTARTING_POST: 'Preparing', // TODO translate
|
||||
@@ -351,8 +351,8 @@ const fr: Translation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||
};
|
||||
|
||||
export default fr;
|
||||
|
||||
@@ -333,7 +333,7 @@ const it: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest {0}firmware version', // TODO translate
|
||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||
RESTARTING_POST: 'Preparing', // TODO translate
|
||||
@@ -351,8 +351,8 @@ const it: Translation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||
};
|
||||
|
||||
export default it;
|
||||
|
||||
@@ -333,15 +333,15 @@ const nl: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware wordt geüpload en geïnstalleerd',
|
||||
INSTALL_VERSION: 'Hiermee wordt versie {0} geïnstalleerd. Weet je het zeker?',
|
||||
UPGRADE_AVAILABLE: 'Er is een firmware-upgrade beschikbaar!',
|
||||
LATEST_VERSION: 'U gebruikt de nieuwste firmwareversie',
|
||||
LATEST_VERSION: 'U gebruikt de nieuwste {0} firmwareversie',
|
||||
PLEASE_WAIT: 'Een ogenblik geduld',
|
||||
RESTARTING_PRE: 'Initialiseren',
|
||||
RESTARTING_POST: 'Voorbereiding',
|
||||
AUTO_SCROLL: 'Automatisch Scrollen',
|
||||
DASHBOARD: 'Dashboard',
|
||||
DEVELOPER_MODE: 'Ontwikkelaarsmodus',
|
||||
BYTES: 'Bytes', // TODO translate
|
||||
BITMASK: 'Bit Mask',// TODO translate
|
||||
BYTES: 'Bytes',
|
||||
BITMASK: 'Bit Mask',
|
||||
DUPLICATE: 'Duplicaat',
|
||||
UPGRADE: 'Upgraden',
|
||||
DASHBOARD_1: 'Alle EMS-entiteiten die actief zijn en als favoriet zijn gemarkeerd, plus alle aangepaste entiteiten en externe sensorgegevens worden hieronder weergegeven.',
|
||||
@@ -351,8 +351,8 @@ const nl: Translation = {
|
||||
THIS_VERSION: 'Deze Versie',
|
||||
PLATFORM: 'Platform',
|
||||
RELEASE_TYPE: 'Release Typ',
|
||||
REINSTALL: 'Opnieuw Installeren',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internetverbinding vereist voor automatische versiecontrole en -upgrade',
|
||||
SWITCH_RELEASE_TYPE: 'Switch naar Development release'
|
||||
};
|
||||
|
||||
export default nl;
|
||||
@@ -333,7 +333,7 @@ const no: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest {0}firmware version', // TODO translate
|
||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||
RESTARTING_POST: 'Preparing', // TODO translate
|
||||
@@ -351,8 +351,8 @@ const no: Translation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||
};
|
||||
|
||||
export default no;
|
||||
|
||||
@@ -333,7 +333,7 @@ const pl: BaseTranslation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest {0} firmware version', // TODO translate
|
||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||
RESTARTING_POST: 'Preparing', // TODO translate
|
||||
@@ -351,8 +351,8 @@ const pl: BaseTranslation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||
};
|
||||
|
||||
export default pl;
|
||||
|
||||
@@ -333,7 +333,7 @@ const sk: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmvér sa nahráva a inštaluje',
|
||||
INSTALL_VERSION: 'Týmto sa inštalovať verzia {0}. Si si istý?',
|
||||
UPGRADE_AVAILABLE: 'K dispozícii je aktualizácia firmvéru!',
|
||||
LATEST_VERSION: 'Používate poslednú verziu firmvéru',
|
||||
LATEST_VERSION: 'Používate poslednú {0} verziu firmvéru',
|
||||
PLEASE_WAIT: 'Čakajte prosím',
|
||||
RESTARTING_PRE: 'Prebieha inicializácia',
|
||||
RESTARTING_POST: 'Príprava',
|
||||
@@ -351,8 +351,8 @@ const sk: Translation = {
|
||||
THIS_VERSION: 'Táto verzia',
|
||||
PLATFORM: 'Platforma',
|
||||
RELEASE_TYPE: 'Typ vydania',
|
||||
REINSTALL: 'Preinštalovať',
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internetové pripojenie je potrebné pre automatickú kontrolu a aktualizáciu',
|
||||
SWITCH_RELEASE_TYPE: 'Prepnúť na vývojovú verziu'
|
||||
};
|
||||
|
||||
export default sk;
|
||||
|
||||
@@ -333,7 +333,7 @@ const sv: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware laddas upp och installeras',
|
||||
INSTALL_VERSION: 'Det här kommer installera version {0}. Är du säker?',
|
||||
UPGRADE_AVAILABLE: 'Det finns en tillgänglig firmwareupgradering!',
|
||||
LATEST_VERSION: 'Du använder den senaste firmwareversionen.',
|
||||
LATEST_VERSION: 'Du använder den senaste {0} firmwareversionen.',
|
||||
PLEASE_WAIT: 'Var god vänta',
|
||||
RESTARTING_PRE: 'Initialiserar',
|
||||
RESTARTING_POST: 'Förbereder',
|
||||
@@ -351,8 +351,8 @@ const sv: Translation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internetanslutning krävs för automatisk version kontroll och uppdatering',
|
||||
SWITCH_RELEASE_TYPE: 'Byt till utvecklingsversion'
|
||||
};
|
||||
|
||||
export default sv;
|
||||
|
||||
@@ -333,7 +333,7 @@ const tr: Translation = {
|
||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
|
||||
LATEST_VERSION: 'You are using the latest {0}firmware version.', // TODO translate
|
||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||
RESTARTING_POST: 'Preparing', // TODO translate
|
||||
@@ -351,8 +351,8 @@ const tr: Translation = {
|
||||
THIS_VERSION: 'This Version', // TODO translate
|
||||
PLATFORM: 'Platform', // TODO translate
|
||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||
REINSTALL: 'Re-install', // TODO translate
|
||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||
};
|
||||
|
||||
export default tr;
|
||||
|
||||
Reference in New Issue
Block a user