diff --git a/.storybook/preview.ts b/.storybook/preview.ts index 1c51ac1cc..b38177500 100644 --- a/.storybook/preview.ts +++ b/.storybook/preview.ts @@ -34,7 +34,6 @@ export default { } satisfies Preview; setup((app) => { - app.config.globalProperties.$hiddenFeatures = () => true; app.use(setupI18n()); // Mock router-link for Storybook diff --git a/assets/js/api.ts b/assets/js/api.ts index 86fc9ddb4..0b0287725 100644 --- a/assets/js/api.ts +++ b/assets/js/api.ts @@ -40,9 +40,9 @@ const errorInterceptor = (error: any) => { message.push(`${error.response.data.error}.`); } if (error.config) { - const method = error.config.method.toUpperCase(); - const url = error.request.responseURL; - message.push(`${method} ${url}`); + const { baseURL, url, method } = error.config; + const fullUrl = error.request.responseURL || `${baseURL}${url}`; + message.push(`${method.toUpperCase()} ${fullUrl}`); } window.app.raise({ message }); return Promise.reject(error); diff --git a/assets/js/app.ts b/assets/js/app.ts index ae4b1466b..f2cc4c5a4 100644 --- a/assets/js/app.ts +++ b/assets/js/app.ts @@ -5,7 +5,6 @@ import { VueHeadMixin, createHead } from "@unhead/vue/client"; import App from "./views/App.vue"; import setupRouter from "./router.ts"; import setupI18n from "./i18n.ts"; -import featureflags from "./featureflags.ts"; import { watchThemeChanges } from "./theme.ts"; import { appDetection, sendToApp } from "./utils/native"; import type { Notification } from "./types/evcc"; @@ -74,7 +73,6 @@ const head = createHead(); app.use(i18n); app.use(setupRouter(i18n.global)); -app.use(featureflags); app.use(head); app.mixin(VueHeadMixin); window.app = app.mount("#app"); diff --git a/assets/js/components/Auth/PasswordModal.vue b/assets/js/components/Auth/PasswordModal.vue index 180a3c9e1..9a6f2b1b3 100644 --- a/assets/js/components/Auth/PasswordModal.vue +++ b/assets/js/components/Auth/PasswordModal.vue @@ -8,7 +8,7 @@ @open="open" @closed="closed" > -
{{ $t("passwordModal.error") }} "{{ error }}"
+{{ $t("passwordModal.description") }}