Remote Access: not experimental any more (#33148)

This commit is contained in:
Michael Geers 2026-08-24 21:26:45 +02:00 • committed by GitHub
parent 10c646e668
commit 442113e9ea
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 65 additions and 11 deletions

View file

@ -97,11 +97,31 @@
</small>
</label>
</div>
<div class="d-flex mb-1">
<input
id="resetRemote"
v-model="selectedReset.remote"
class="form-check-input"
type="checkbox"
/>
<label class="form-check-label ms-2" for="resetRemote">
<span>{{ $t("config.system.backupRestore.reset.remote") }}</span>
<br />
<small>
{{ $t("config.system.backupRestore.reset.remoteDescription") }}
</small>
</label>
</div>
</div>
<button
class="btn btn-outline-danger mt-3"
:disabled="!selectedReset.sessions && !selectedReset.settings"
:disabled="
!selectedReset.sessions &&
!selectedReset.settings &&
!selectedReset.remote
"
>
{{ $t("config.system.backupRestore.reset.action") }}
</button>
@ -192,6 +212,7 @@ export default defineComponent({
selectedReset: {
sessions: false,
settings: false,
remote: false,
},
file: null as File | null,
confirmType: "" as "backup" | "restore" | "reset" | "",
@ -228,6 +249,7 @@ export default defineComponent({
this.selectedReset = {
sessions: false,
settings: false,
remote: false,
};
this.file = null;
this.navigateHomeAfterRestart = false;

View file

@ -6,15 +6,18 @@
data-testid="remote-modal"
@open="onOpen"
>
<div class="alert alert-warning">
Development preview. Not ready for general use. Use with caution and monitor your system
closely. Feedback welcome!
</div>
<SponsorTokenRequired v-if="!isSponsor" feature class="mt-0" />
<ErrorMessage :error="error" />
<template v-if="view === 'list'">
<p>{{ $t("config.remote.description") }}</p>
<p>
{{ $t("config.remote.description") }}
<i18n-t tag="span" keypath="config.remote.privacy" scope="global">
<a :href="privacyPolicyLink" target="_blank">
{{ $t("config.remote.privacyLink") }}
</a>
</i18n-t>
</p>
<div class="form-check form-switch my-3">
<input
id="remoteEnabled"
@ -138,6 +141,10 @@ export default defineComponent({
status(): RemoteStatus {
return this.remote?.status ?? { connected: false, loginBlocked: false };
},
privacyPolicyLink(): string {
const path = this.$i18n.locale === "de" ? "" : "/en";
return `https://evcc.io${path}/datenschutz/`;
},
modalTitle(): string {
switch (this.view) {
case "create":
@ -145,7 +152,7 @@ export default defineComponent({
case "reveal":
return this.$t("config.remote.clientCreated");
default:
return `${this.$t("config.remote.title")} 🧪`;
return this.$t("config.remote.title");
}
},
},

View file

@ -419,8 +419,7 @@
</template>
</DeviceCard>
<DeviceCard
v-if="experimental"
:title="`${$t('config.remote.title')} 🧪`"
:title="$t('config.remote.title')"
editable
:unconfigured="isUnconfigured(remoteTags)"
data-testid="remote-access"