diff --git a/frontend/app/components/article/article.vue b/frontend/app/components/article/article.vue
index b8c3e5c..9068ab0 100644
--- a/frontend/app/components/article/article.vue
+++ b/frontend/app/components/article/article.vue
@@ -1,7 +1,10 @@
@@ -14,40 +17,57 @@
-
- BIO:
-
-
-
-
- {{ store.article.bio }}
-
-
-
+
+
+
-
-
-
- Herkunft:
-
+
+
+
+ Herkunft:
+
+
+
+
+ {{ originToString(store.article.origin) }}
+
+
+
-
-
- {{ store.article.origin }}
-
-
-
-
-
-
- Varianten:
-
+
+
+
+ {{ counter }} von {{ store.ingredientsMaxChars }} Zeichen.
+
+
+
-
-
- {{ store.article.variants.length }}
-
+
+
+
+
+ {{ counter }} von {{ store.ingredientsMaxChars }} Zeichen.
+
+
diff --git a/frontend/app/components/article/articleCreate.vue b/frontend/app/components/article/articleCreate.vue
index e874c41..4dd9c6f 100644
--- a/frontend/app/components/article/articleCreate.vue
+++ b/frontend/app/components/article/articleCreate.vue
@@ -15,12 +15,6 @@
let description: Ref = ref(null);
let ingredients: Ref = ref(null);
- let origins: Origin[] = [
- Origin.EU,
- Origin.NonEU,
- Origin.EUnonEU
- ];
-
async function create() {
if (name.value != null && name.value.trim().length > 0 &&
origin.value != null && origin.value.trim().length > 0
@@ -91,6 +85,7 @@
@@ -103,7 +98,7 @@
diff --git a/frontend/app/store/labelEditorStore.ts b/frontend/app/store/labelEditorStore.ts
index 4ce58d8..85187c7 100644
--- a/frontend/app/store/labelEditorStore.ts
+++ b/frontend/app/store/labelEditorStore.ts
@@ -2,28 +2,45 @@ import {defineStore} from "pinia";
import type {Article} from "~/types/article";
import {NotificationMessage} from "~/types/notificationMessage";
import type {RuntimeConfig} from "nuxt/schema";
+import {Origin} from "~/types/origin";
interface State {
config: RuntimeConfig,
+ // UI
+ descriptionMaxChars: number,
+ ingredientsMaxChars: number,
+
// Notification
notifications: NotificationMessage[],
notificationQueue: NotificationMessage[],
// Article
article: Article | null,
+
+ origins: Array,
}
export const useLabelEditorStore = defineStore('label_editor_store', {
state: (): State => ({
config: useRuntimeConfig(),
+ // UI
+ descriptionMaxChars: 256,
+ ingredientsMaxChars: 256,
+
// Notification
notifications: [],
notificationQueue: [],
// Article
article: null,
+
+ origins: [
+ Origin.EU,
+ Origin.NonEU,
+ Origin.EUnonEU
+ ]
}),
actions: {
// Notification
diff --git a/frontend/app/types/origin.ts b/frontend/app/types/origin.ts
index 031f747..adca3c0 100644
--- a/frontend/app/types/origin.ts
+++ b/frontend/app/types/origin.ts
@@ -3,3 +3,14 @@ export enum Origin {
NonEU = "NonEU",
EUnonEU= "EUnonEU",
}
+
+export function originToString(origin: Origin): string {
+ switch (origin) {
+ case Origin.EU:
+ return "EU";
+ case Origin.NonEU:
+ return "Nicht EU";
+ case Origin.EUnonEU:
+ return "EU / Nicht EU";
+ }
+}