+
+
{{ t('components.userPanel.settings') }}
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+es:
+ Message: Mensaje
+ Send: Enviar
+ Characters remaining: Carácteres restantes
+ Special characters like accents counts as a multiple: Carácteres especiales como los acentos cuentan como varios
+ The destination can't be empty: El destinatario no puede estar vacio
+ The message can't be empty: El mensaje no puede estar vacio
+ The message it's too long: El mensaje es demasiado largo
+
diff --git a/src/components/common/VnBreadcrumbs.vue b/src/components/common/VnBreadcrumbs.vue
index 666f14c72..337507233 100644
--- a/src/components/common/VnBreadcrumbs.vue
+++ b/src/components/common/VnBreadcrumbs.vue
@@ -5,16 +5,16 @@ import { useQuasar } from 'quasar';
import { useI18n } from 'vue-i18n';
import { useCamelCase } from 'src/composables/useCamelCase';
-const router = useRouter();
-const quasar = useQuasar();
-const { t } = useI18n();
+const { currentRoute } = useRouter();
+const { screen } = useQuasar();
+const { t, te } = useI18n();
let matched = ref([]);
let breadcrumbs = ref([]);
let root = ref(null);
watchEffect(() => {
- matched.value = router.currentRoute.value.matched.filter(
+ matched.value = currentRoute.value.matched.filter(
(matched) => Object.keys(matched.meta).length
);
breadcrumbs.value.length = 0;
@@ -34,13 +34,17 @@ function getBreadcrumb(param) {
icon: param.meta.icon,
path: param.path,
root: root.value,
+ locale: t(`globals.pageTitles.${param.meta.title}`),
};
- if (quasar.screen.gt.sm) {
+ if (screen.gt.sm) {
breadcrumb.name = param.name;
breadcrumb.title = useCamelCase(param.meta.title);
}
+ const moduleLocale = `${breadcrumb.root}.pageTitles.${breadcrumb.title}`;
+ if (te(moduleLocale)) breadcrumb.locale = t(moduleLocale);
+
return breadcrumb;
}
@@ -50,7 +54,7 @@ function getBreadcrumb(param) {
v-for="(breadcrumb, index) of breadcrumbs"
:key="index"
:icon="breadcrumb.icon"
- :label="t(`${breadcrumb.root}.pageTitles.${breadcrumb.title}`)"
+ :label="breadcrumb.locale"
:to="breadcrumb.path"
/>
@@ -71,7 +75,7 @@ function getBreadcrumb(param) {
}
&--last,
&__separator {
- color: var(--vn-label);
+ color: var(--vn-label-color);
}
}
@media (max-width: $breakpoint-md) {
diff --git a/src/components/common/VnCurrency.vue b/src/components/common/VnCurrency.vue
new file mode 100644
index 000000000..660c4e979
--- /dev/null
+++ b/src/components/common/VnCurrency.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
+es:
+ amount: importe
+
diff --git a/src/components/common/VnDms.vue b/src/components/common/VnDms.vue
new file mode 100644
index 000000000..bf3f4d384
--- /dev/null
+++ b/src/components/common/VnDms.vue
@@ -0,0 +1,208 @@
+
+
+ (warehouses = data)" auto-load />
+ (companies = data)" auto-load />
+
+ (allowedContentTypes = data.join(','))"
+ auto-load
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ t('globals.selectFile') }}
+
+
+ {{
+ t('contentTypesInfo', { allowedContentTypes })
+ }}
+
+
+
+
+
+
+
+
+
+
+en:
+ contentTypesInfo: Allowed file types {allowedContentTypes}
+ EntryDmsDescription: Reference {reference}
+ SupplierDmsDescription: Reference {reference}
+es:
+ Generate identifier for original file: Generar identificador para archivo original
+ contentTypesInfo: Tipos de archivo permitidos {allowedContentTypes}
+ EntryDmsDescription: Referencia {reference}
+ SupplierDmsDescription: Referencia {reference}
+
+
diff --git a/src/components/common/VnDmsList.vue b/src/components/common/VnDmsList.vue
new file mode 100644
index 000000000..23e00f5d9
--- /dev/null
+++ b/src/components/common/VnDmsList.vue
@@ -0,0 +1,315 @@
+
+
+
+
+
+
+
+
+ {{ props.value }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ col.label }}:
+ {{ col.value }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+en:
+ contentTypesInfo: Allowed file types {allowedContentTypes}
+es:
+ contentTypesInfo: Tipos de archivo permitidos {allowedContentTypes}
+ Generate identifier for original file: Generar identificador para archivo original
+
diff --git a/src/components/common/VnInput.vue b/src/components/common/VnInput.vue
index 8a01e0bee..ec836f2cd 100644
--- a/src/components/common/VnInput.vue
+++ b/src/components/common/VnInput.vue
@@ -1,5 +1,5 @@
diff --git a/src/components/common/VnInputDate.vue b/src/components/common/VnInputDate.vue
index 8e0ef2890..66da9b7bf 100644
--- a/src/components/common/VnInputDate.vue
+++ b/src/components/common/VnInputDate.vue
@@ -1,6 +1,7 @@
-
@@ -76,7 +100,7 @@ const styleAttrs = computed(() => {
-
+
diff --git a/src/components/ui/CardDescriptor.vue b/src/components/ui/CardDescriptor.vue
index 241937a4e..97aa91728 100644
--- a/src/components/ui/CardDescriptor.vue
+++ b/src/components/ui/CardDescriptor.vue
@@ -1,9 +1,10 @@
-
-
-