From 7bf1b9a6c6a88078d1336552725275def904dc8c Mon Sep 17 00:00:00 2001 From: Moritz Utcke <62291876+Letsmoe@users.noreply.github.com> Date: Thu, 31 Aug 2023 23:12:18 +0600 Subject: [PATCH] =?UTF-8?q?=C3=9Cbersetzungen=20+=20Pr=C3=BCfbox=20Bezahlu?= =?UTF-8?q?ng?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .astro-i18n/generated.d.ts | 52 +++ astro-i18next.config.mjs | 16 + astro.config.mjs | 3 +- package.json | 11 +- public/locales/de/translation.json | 7 + public/locales/en/translation.json | 7 + public/locales/fr/translation.json | 7 + schema/Ausweis.ts | 15 + schema/Energiekennwert.ts | 9 + schema/Gebaeude.ts | 7 + src/components/AnsichtsausweisButton.svelte | 10 +- .../Ausweis/AusweisPreviewContainer.svelte | 6 +- src/components/Ausweis/Ausweisart.svelte | 7 +- src/components/Ausweis/Kundendaten.svelte | 296 +++++++++++--- src/components/Ausweis/Verbrauch.svelte | 3 +- src/components/AusweisCard.svelte | 9 +- .../BedarfsausweisContent.svelte | 14 +- src/components/DatenblattButton.svelte | 10 +- src/components/Header.astro | 48 ++- .../Kaufabschluss/Kaufabschluss.svelte | 17 +- .../Kaufabschluss/KundendatenContainer.svelte | 131 ++++--- .../Kaufabschluss/PriceContainer.svelte | 306 ++++++++++----- src/components/LanguageDropdown.svelte | 28 ++ src/components/LoginView.svelte | 12 +- src/components/SidebarLeft.astro | 10 +- src/components/SidebarRight.astro | 8 +- src/components/UserSidebarLeft.astro | 2 +- .../VerbrauchsausweisContent.svelte | 93 ++--- .../VerbrauchsausweisGewerbeContent.svelte | 14 +- src/env.d.ts | 2 + src/layouts/AusweisLayout.astro | 10 + src/layouts/Layout.astro | 7 +- src/lib/Heizungswerte.ts | 2 +- src/lib/server/Heizwertfaktor.ts | 2 +- src/lib/server/Klimafaktoren.ts | 4 +- src/pages/api/image.json.ts | 2 +- src/pages/api/login.ts | 3 + src/pages/bedarfsausweis-gewerbe/index.astro | 0 src/pages/bedarfsausweis/index.astro | 7 +- src/pages/developers/index.astro | 4 +- src/pages/en/bedarfsausweis/index.astro | 10 + .../consumption-certificate/erstellen.astro | 6 + .../en/consumption-certificate/index.astro | 6 + src/pages/en/developers/index.astro | 11 + src/pages/en/faq/index.astro | 8 + src/pages/en/index.astro | 366 ++++++++++++++++++ src/pages/en/kaufabschluss.astro | 11 + src/pages/en/kundendaten.astro | 12 + src/pages/en/login.astro | 19 + src/pages/en/logout.astro | 9 + src/pages/en/pdf/ansichtsausweis.astro | 247 ++++++++++++ src/pages/en/pdf/datenblatt.astro | 253 ++++++++++++ .../en/requirement-certificate/index.astro | 6 + src/pages/en/signup.astro | 19 + src/pages/en/user/index.astro | 38 ++ .../en/verbrauchsausweis-gewerbe/index.astro | 11 + .../en/verbrauchsausweis/erstellen.astro | 8 + src/pages/en/verbrauchsausweis/index.astro | 13 + src/pages/faq/index.astro | 4 +- src/pages/fr/bedarfsausweis/index.astro | 10 + src/pages/fr/developers/index.astro | 11 + src/pages/fr/faq/index.astro | 8 + src/pages/fr/index.astro | 366 ++++++++++++++++++ src/pages/fr/kaufabschluss.astro | 11 + src/pages/fr/kundendaten.astro | 12 + src/pages/fr/login.astro | 19 + src/pages/fr/logout.astro | 9 + src/pages/fr/pdf/ansichtsausweis.astro | 247 ++++++++++++ src/pages/fr/pdf/datenblatt.astro | 253 ++++++++++++ src/pages/fr/signup.astro | 19 + src/pages/fr/user/index.astro | 38 ++ .../fr/verbrauchsausweis-gewerbe/index.astro | 11 + .../fr/verbrauchsausweis/erstellen.astro | 8 + src/pages/fr/verbrauchsausweis/index.astro | 13 + src/pages/index.astro | 9 +- src/pages/kaufabschluss.astro | 7 +- src/pages/kundenbewertungen.mdx | 2 +- src/pages/kundendaten.astro | 7 +- src/pages/login.astro | 6 +- src/pages/logout.astro | 5 +- src/pages/pdf/ansichtsausweis.astro | 19 +- src/pages/pdf/datenblatt.astro | 23 +- src/pages/signup.astro | 6 +- src/pages/user/index.astro | 29 +- .../verbrauchsausweis-gewerbe/index.astro | 7 +- src/pages/verbrauchsausweis/erstellen.astro | 5 +- src/pages/verbrauchsausweis/index.astro | 7 +- src/pages/welcher-energieausweis.mdx | 2 +- tsconfig.json | 5 +- .../17693546-b281-40f2-a7b8-dcd4159245e4.jpg | Bin 2884243 -> 0 bytes 90 files changed, 3015 insertions(+), 417 deletions(-) create mode 100644 .astro-i18n/generated.d.ts create mode 100644 astro-i18next.config.mjs create mode 100644 public/locales/de/translation.json create mode 100644 public/locales/en/translation.json create mode 100644 public/locales/fr/translation.json create mode 100644 schema/Ausweis.ts create mode 100644 schema/Energiekennwert.ts create mode 100644 schema/Gebaeude.ts create mode 100644 src/components/LanguageDropdown.svelte delete mode 100644 src/pages/bedarfsausweis-gewerbe/index.astro create mode 100644 src/pages/en/bedarfsausweis/index.astro create mode 100644 src/pages/en/consumption-certificate/erstellen.astro create mode 100644 src/pages/en/consumption-certificate/index.astro create mode 100644 src/pages/en/developers/index.astro create mode 100644 src/pages/en/faq/index.astro create mode 100644 src/pages/en/index.astro create mode 100644 src/pages/en/kaufabschluss.astro create mode 100644 src/pages/en/kundendaten.astro create mode 100644 src/pages/en/login.astro create mode 100644 src/pages/en/logout.astro create mode 100644 src/pages/en/pdf/ansichtsausweis.astro create mode 100644 src/pages/en/pdf/datenblatt.astro create mode 100644 src/pages/en/requirement-certificate/index.astro create mode 100644 src/pages/en/signup.astro create mode 100644 src/pages/en/user/index.astro create mode 100644 src/pages/en/verbrauchsausweis-gewerbe/index.astro create mode 100644 src/pages/en/verbrauchsausweis/erstellen.astro create mode 100644 src/pages/en/verbrauchsausweis/index.astro create mode 100644 src/pages/fr/bedarfsausweis/index.astro create mode 100644 src/pages/fr/developers/index.astro create mode 100644 src/pages/fr/faq/index.astro create mode 100644 src/pages/fr/index.astro create mode 100644 src/pages/fr/kaufabschluss.astro create mode 100644 src/pages/fr/kundendaten.astro create mode 100644 src/pages/fr/login.astro create mode 100644 src/pages/fr/logout.astro create mode 100644 src/pages/fr/pdf/ansichtsausweis.astro create mode 100644 src/pages/fr/pdf/datenblatt.astro create mode 100644 src/pages/fr/signup.astro create mode 100644 src/pages/fr/user/index.astro create mode 100644 src/pages/fr/verbrauchsausweis-gewerbe/index.astro create mode 100644 src/pages/fr/verbrauchsausweis/erstellen.astro create mode 100644 src/pages/fr/verbrauchsausweis/index.astro delete mode 100644 uploads/17693546-b281-40f2-a7b8-dcd4159245e4.jpg diff --git a/.astro-i18n/generated.d.ts b/.astro-i18n/generated.d.ts new file mode 100644 index 00000000..52bf1762 --- /dev/null +++ b/.astro-i18n/generated.d.ts @@ -0,0 +1,52 @@ +type DefaultLangCode = "de" +type SupportedLangCode = "en" | "fr" +type LangCode = DefaultLangCode | SupportedLangCode +type RouteUri = | "/bedarfsausweis" | "/velopers" | "/faq" | "/pdf/ansichtsausweis" | "/pdf/datenblatt" | "/user" | "/verbrauchsausweis/erstellen" | "/verbrauchsausweis" | "/verbrauchsausweis-gewerbe" | "/" | "/kaufabschluss" | "/kundendaten" | "/login" | "/logout" | "/signup" +type RouteParams = {"/bedarfsausweis": undefined; "/velopers": undefined; "/faq": undefined; "/pdf/ansichtsausweis": undefined; "/pdf/datenblatt": undefined; "/user": undefined; "/verbrauchsausweis/erstellen": undefined; "/verbrauchsausweis": undefined; "/verbrauchsausweis-gewerbe": undefined; "/": undefined; "/kaufabschluss": undefined; "/kundendaten": undefined; "/login": undefined; "/logout": undefined; "/signup": undefined; } +type TranslationPath = "header.profil" | "header.kontakt" | "header.login" +type TranslationOptions = { "header.profil": {} | undefined; "header.kontakt": {} | undefined; "header.login": {} | undefined; } + +declare module "astro-i18n" { + export * from "astro-i18n/" + + export function l( + route: Uri | string & {}, + ...args: Uri extends keyof RouteParams + ? undefined extends RouteParams[Uri] + ? [params?: Record, targetLangCode?: LangCode, routeLangCode?: LangCode] + : [params: RouteParams[Uri], targetLangCode?: LangCode, routeLangCode?: LangCode] + : [params?: Record, targetLangCode?: LangCode, routeLangCode?: LangCode] + ): string + + export function t( + path: Path | string & {}, + ...args: undefined extends TranslationOptions[Path] + ? [options?: keyof TranslationOptions extends Path ? Record : TranslationOptions[Path], langCode?: LangCode] + : [options: TranslationOptions[Path], langCode?: LangCode] + ): string + + export function extractRouteLangCode(route: string): LangCode | undefined + + type Translation = string | { [translationKey: string]: string | Translation } + type Translations = { [langCode: string]: Record } + type RouteTranslations = { [langCode: string]: Record } + type InterpolationFormatter = (value: unknown, ...args: unknown[]) => string + class AstroI18n { + defaultLangCode: DefaultLangCode + supportedLangCodes: SupportedLangCode[] + showDefaultLangCode: boolean + translations: Translations + routeTranslations: RouteTranslations + get langCodes(): LangCode[] + get langCode(): LangCode + set langCode(langCode: LangCode) + get formatters(): Record + init(Astro: { url: URL }, formatters?: Record): void + addTranslations(translations: Translations): void + addRouteTranslations(routeTranslations: RouteTranslations): void + getFormatter(name: string): InterpolationFormatter | undefined + setFormatter(name: string, formatter: InterpolationFormatter): void + deleteFormatter(name: string): void + } + export const astroI18n: AstroI18n +} diff --git a/astro-i18next.config.mjs b/astro-i18next.config.mjs new file mode 100644 index 00000000..8614c860 --- /dev/null +++ b/astro-i18next.config.mjs @@ -0,0 +1,16 @@ +/** @type {import('astro-i18next').AstroI18nextConfig} */ + +export default { + defaultLocale: "de", + locales: ["de", "en", "fr"], + showDefaultLocale: false, + routes: { + en: { + "verbrauchsausweis": "consumption-certificate", + "bedarfsausweis": "requirement-certificate" + }, + fr: { + + } + } +} \ No newline at end of file diff --git a/astro.config.mjs b/astro.config.mjs index fd949b8c..89289ff9 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -1,5 +1,6 @@ import { defineConfig } from "astro/config"; import svelte from "@astrojs/svelte"; +import astroI18next from "astro-i18next"; import tailwind from "@astrojs/tailwind"; @@ -11,7 +12,7 @@ import mdx from "@astrojs/mdx"; // https://astro.build/config export default defineConfig({ - integrations: [svelte(), tailwind(), mdx()], + integrations: [astroI18next(),svelte(), tailwind(), mdx()], outDir: "./dist", output: "server", adapter: node({ diff --git a/package.json b/package.json index 55165107..90065ea0 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "test:e2e": "cypress run", "test:unit": "vitest", "format": "prettier --write .", - "build:production": "astro build && node server.js" + "build:production": "astro build && node server.js", + "i18n:generate": "npx astro-i18next generate" }, "private": true, "dependencies": { @@ -20,9 +21,16 @@ "@astrojs/svelte": "^2.2.0", "@astrojs/tailwind": "^3.1.3", "@ibcornelsen/ui": "^0.0.2", + "@mollie/api-client": "^3.7.0", "astro": "^2.5.1", + "astro-i18next": "1.0.0-beta.21", "cookiejs": "^2.1.2", + "esbuild": "^0.18.17", "express": "^4.18.2", + "flag-icons": "^6.9.2", + "i18next": "^23.4.1", + "i18next-fs-backend": "^2.1.5", + "i18next-http-backend": "^2.2.1", "jimp": "^0.22.8", "jwt-simple": "^0.5.6", "katex": "^0.16.7", @@ -34,6 +42,7 @@ "svelte-preprocess": "^5.0.3", "tailwindcss": "^3.3.2", "uuid": "^9.0.0", + "vite-tsconfig-paths": "^4.2.0", "zod": "^3.21.4" }, "devDependencies": { diff --git a/public/locales/de/translation.json b/public/locales/de/translation.json new file mode 100644 index 00000000..c1518972 --- /dev/null +++ b/public/locales/de/translation.json @@ -0,0 +1,7 @@ +{ + "header": { + "profil": "Profil", + "kontakt": "Kontakt", + "login": "Login" + } +} \ No newline at end of file diff --git a/public/locales/en/translation.json b/public/locales/en/translation.json new file mode 100644 index 00000000..df366b95 --- /dev/null +++ b/public/locales/en/translation.json @@ -0,0 +1,7 @@ +{ + "header": { + "profil": "Profile", + "kontakt": "Contact Us", + "login": "Log in" + } +} \ No newline at end of file diff --git a/public/locales/fr/translation.json b/public/locales/fr/translation.json new file mode 100644 index 00000000..1d870d27 --- /dev/null +++ b/public/locales/fr/translation.json @@ -0,0 +1,7 @@ +{ + "header": { + "kontakt": "Nous contacter", + "login": "Se connecter", + "profil": "Profil" + } +} \ No newline at end of file diff --git a/schema/Ausweis.ts b/schema/Ausweis.ts new file mode 100644 index 00000000..7ae1f47d --- /dev/null +++ b/schema/Ausweis.ts @@ -0,0 +1,15 @@ +import { Energiekennwert } from "./Energiekennwert"; + +export interface Ausweis { + ausweisart: "Verbrauchsausweis" | "Bedarfsausweis" | "Verbrauchsausweis Nichtwohngebäude", + energiekennwerte: Energiekennwert[], + erstellungsdatum: string, + // Ausstellungsgrund des Ausweises + ausstellgrund: "Vermietung" | "Verkauf" | "Neubau" | "Sonstiges", + // Gültigkeitsdatum des Ausweises + gueltig_bis: string, + // Baujahr des Gebäudes, es können ebenfalls mehrere Baujahre angegeben werden. + baujahr_gebaeude: number[] | number, + // Baujahr der Anlagentechnik, es können ebenfalls mehrere Baujahre oder mehrere Baujahre für mehrere Anlagen angegeben werden. + baujahr_anlage: number[] | number | number[][], +} \ No newline at end of file diff --git a/schema/Energiekennwert.ts b/schema/Energiekennwert.ts new file mode 100644 index 00000000..710eca50 --- /dev/null +++ b/schema/Energiekennwert.ts @@ -0,0 +1,9 @@ +export interface Energiekennwert { + verbraeuche: number[], + energietraeger_einheit: string, + energietraeger: string, + // Anteil Warmwasser am Heizverbrauch in Prozent + anteil_warmwasser: number, + zeitraum_start: string, + zeitraum_ende: string, +} \ No newline at end of file diff --git a/schema/Gebaeude.ts b/schema/Gebaeude.ts new file mode 100644 index 00000000..5beb2141 --- /dev/null +++ b/schema/Gebaeude.ts @@ -0,0 +1,7 @@ +export interface Gebaeude { + objekt_typ: string, + objekt_plz: string, + objekt_ort: string, + objekt_strasse: string, + +} \ No newline at end of file diff --git a/src/components/AnsichtsausweisButton.svelte b/src/components/AnsichtsausweisButton.svelte index 6897d58a..c6cadeed 100644 --- a/src/components/AnsichtsausweisButton.svelte +++ b/src/components/AnsichtsausweisButton.svelte @@ -5,14 +5,10 @@ export let ausweis: Verbrauchsausweis | Bedarfsausweis | VerbrauchsausweisGewerbe; - function viewAusweis() { - const base64 = btoa(JSON.stringify(ausweis)); - - window.open(`/pdf/ansichtsausweis?base64=${base64}`, "_blank"); - } + const base64 = btoa(JSON.stringify(ausweis)); - + diff --git a/src/components/Ausweis/AusweisPreviewContainer.svelte b/src/components/Ausweis/AusweisPreviewContainer.svelte index 2ce473fb..f0d1cc0f 100644 --- a/src/components/Ausweis/AusweisPreviewContainer.svelte +++ b/src/components/Ausweis/AusweisPreviewContainer.svelte @@ -2,9 +2,9 @@ import { Verbrauchsausweis } from "src/lib/Ausweis/Verbrauchsausweis"; import { VerbrauchsausweisGewerbe } from "src/lib/Ausweis/VerbrauchsausweisGewerbe"; import { Bedarfsausweis } from "src/lib/Ausweis/Bedarfsausweis"; - import AnsichtsausweisButton from "~/components/AnsichtsausweisButton.svelte"; - import DatenblattButton from "~/components/DatenblattButton.svelte"; - import HelpLabel from "~/components/HelpLabel.svelte"; + import AnsichtsausweisButton from "#components/AnsichtsausweisButton.svelte"; + import DatenblattButton from "#components/DatenblattButton.svelte"; + import HelpLabel from "#components/HelpLabel.svelte"; export let ausweis: | Verbrauchsausweis diff --git a/src/components/Ausweis/Ausweisart.svelte b/src/components/Ausweis/Ausweisart.svelte index fd75af71..e546d213 100644 --- a/src/components/Ausweis/Ausweisart.svelte +++ b/src/components/Ausweis/Ausweisart.svelte @@ -1,18 +1,17 @@
diff --git a/src/components/Ausweis/Kundendaten.svelte b/src/components/Ausweis/Kundendaten.svelte index a6b7a1e2..6a4c176d 100644 --- a/src/components/Ausweis/Kundendaten.svelte +++ b/src/components/Ausweis/Kundendaten.svelte @@ -1,7 +1,9 @@ -
-
-
-
-

Verbrauchsausweis erstellen - 45€

- -
+
+
+
+

Verbrauchsausweis erstellen - 45€

+
+
-
-
+ +
+

- +
- +
- - + +
- +
@@ -84,7 +93,7 @@
- +
- +
- + - +
- - + +
- - + +
- +
@@ -157,14 +172,12 @@ id="deliveryAddress" bind:checked={deliveryAddress} /> - +
- +
- +
- + - +
- - + + +
+
+
+ +
+ +
+

Bitte wählen sie ihre Bezahlmethode aus.

+
+
+
+
+ PayPal +
+ Zahlen mit PayPal +
+
+
+ Giropay +
+ Zahlen mit Giropay +
+
+
+ Sofort +
+ Zahlen mit Sofort +
+
+
+
+
+ Mastercard +
+ Zahlen mit Kreditkarte +
+
+
+ Rechnung +
+ Zahlen mit Rechnung +
+
+
+ SEPA +
+ SEPA über PayPal +
+
+
+
+
+
+
{paymentType}
+ +
+ {#if paymentType == "rechnung"} +

+ Sobald sie AGB und Datenschutzerklärung + gelesen und akzeptiert haben können sie den + Kauf fortsetzen. Durch das Klicken auf + 'Kostenpflichtig Bestellen' wird ihnen eine + Email mit weiteren Informationen über ihren + Kauf zugeschickt, von der aus sie den + Bezahlvorgang abschließen können. +

+ {:else} +

+ Sobald sie AGB und Datenschutzerklärung + gelesen und akzeptiert haben können sie den + Kauf fortsetzen. Durch das Klicken auf + 'Kostenpflichtig Bestellen' werden sie zu {paymentType} weitergeleitet. +

+ {/if} +
+
+ + +
+
+ + +
+
+
@@ -214,12 +384,14 @@
- - +
-
- -
+
+
+ +
+ +
diff --git a/src/components/Ausweis/Verbrauch.svelte b/src/components/Ausweis/Verbrauch.svelte index 0141cbf1..b3251283 100644 --- a/src/components/Ausweis/Verbrauch.svelte +++ b/src/components/Ausweis/Verbrauch.svelte @@ -26,6 +26,7 @@ ]; export let gebaeude: Gebaeude; + export let ausweis: Verbrauchsausweis; const fuelMap: Record = {}; for (const fuel of fuelList) { @@ -37,8 +38,6 @@ let month: string = "01"; let year: string = "2018"; - $: ausweis = gebaeude.ausweis || new Verbrauchsausweis(); - $: { if (month && year) { ausweis.kennwerte.zeitraum = moment(`${month}.01.${year}`); diff --git a/src/components/AusweisCard.svelte b/src/components/AusweisCard.svelte index 32fb17b8..10cfec1a 100644 --- a/src/components/AusweisCard.svelte +++ b/src/components/AusweisCard.svelte @@ -1,10 +1,9 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/Header.astro b/src/components/Header.astro index a6309600..df2f0129 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -1,5 +1,9 @@ --- +import i18next from "i18next"; +import {localizeUrl} from "astro-i18next" +import { t } from "i18next"; import { isLoggedIn } from "../lib/UI/isLoggedIn"; +import LanguageDropdown from "./LanguageDropdown.svelte"; const loggedIn = isLoggedIn(Astro); --- @@ -16,22 +20,56 @@ const loggedIn = isLoggedIn(Astro); src="/images/header/logo-big.png" class="header-logo" alt="IBCornelsen - Logo" - onclick="window.location.href = '/'" + onclick=" + window.location.href = '/' +" /> -

Energieausweis online erstellen

-

Energieausweise nach aktueller GEG

+

+ Energieausweis online erstellen +

+

+ Energieausweise nach aktueller GEG +

@@ -163,7 +161,7 @@ autocomplete="off" data-rule-minlength="2" data-msg-minlength="min. 2 Zeichen" - bind:value={$gebaeude.wohnflaeche} + bind:value={gebaeude.wohnflaeche} /> @@ -175,7 +173,7 @@ Heizung @@ -286,7 +284,7 @@ >Warmwasser @@ -294,7 +292,7 @@ >Lüftung @@ -302,7 +300,7 @@ >Kühlung @@ -441,7 +439,7 @@ >F - Bitte prüfen Sie hier die Angaben zum Sanierungszustand des Gebäudes - +
@@ -450,11 +448,6 @@ - {#each Object.entries($notifications) as [uid, notification] (uid)} @@ -463,7 +456,7 @@ {/each} - {#if auditBedarfsausweisBenoetigt($gebaeude)} + {#if auditBedarfsausweisBenoetigt(gebaeude)} {/if} - {#if auditHeizungGebaeudeBaujahr($gebaeude)} + {#if auditHeizungGebaeudeBaujahr(gebaeude)} { hidden.add(AuditType.HEIZUNG_GEBAEUDE_BAUJAHR); - $gebaeude = $gebaeude; + gebaeude = gebaeude; }, type: "warning", }} @@ -498,7 +491,7 @@ {/if} - {#if auditVerbrauchAbweichung($gebaeude).length > 0} + {#if auditVerbrauchAbweichung(gebaeude).length > 0} { hidden.add(AuditType.VERBRAUCH_ABWEICHUNG); - $gebaeude = $gebaeude; + gebaeude = gebaeude; }, type: "warning", }} > Die Abweichung der Verbräuche zwischen Zeitraum {auditVerbrauchAbweichung( - $gebaeude - )[0]} und {auditVerbrauchAbweichung($gebaeude)[1]} beträgt mehr als 25% + gebaeude + )[0]} und {auditVerbrauchAbweichung(gebaeude)[1]} beträgt mehr als 25% und sie haben keinen Leerstand angegeben. Sind sie sich sicher, dass das stimmt? diff --git a/src/components/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeContent.svelte b/src/components/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeContent.svelte index 338c8757..9ad9b1b2 100644 --- a/src/components/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeContent.svelte +++ b/src/components/VerbrauchsausweisGewerbe/VerbrauchsausweisGewerbeContent.svelte @@ -1,11 +1,11 @@