diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Elements/InputNumberElement.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Elements/InputNumberElement.vue
index 5f73d2f2de..42a26222af 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Elements/InputNumberElement.vue
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Elements/InputNumberElement.vue
@@ -1,10 +1,11 @@
@@ -16,6 +17,7 @@ export default {
modelValue: Number,
placeholder: String,
required: Boolean,
+ size: Number | null,
},
emits: ["update:modelValue"],
setup(props, { emit }) {
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/FormElement.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/FormElement.vue
index ea2b963b06..07290d8bbe 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/FormElement.vue
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/FormElement.vue
@@ -12,6 +12,7 @@
v-model="resource[attr.name]"
:placeholder="attr.placeholder || attr.label"
:required="attr.required ? true : false"
+ :size="attr.size"
/>
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/LeftMenu.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/LeftMenu.vue
index aca161c1b8..d24efd975a 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/LeftMenu.vue
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/LeftMenu.vue
@@ -17,27 +17,26 @@
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue
new file mode 100644
index 0000000000..5a48952e8a
--- /dev/null
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue
@@ -0,0 +1,733 @@
+
+
+
+
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-element.js b/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-element.js
index 4d4d147f78..6436f07926 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-element.js
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-element.js
@@ -122,6 +122,9 @@ export function useBaseElement(instancedElement) {
}
});
}
+ if (instancedElement.attr.indexRequired) {
+ acc.index = instancedElement.index;
+ }
return acc;
}, {});
const attr = show
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/routes/acquisitions.js b/koha-tmpl/intranet-tmpl/prog/js/vue/routes/acquisitions.js
index f8e8b02317..48b2718f73 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/vue/routes/acquisitions.js
+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/routes/acquisitions.js
@@ -4,6 +4,7 @@ import Home from "../components/Vendors/Home.vue";
import VendorList from "../components/Vendors/VendorList.vue";
import VendorShow from "../components/Vendors/VendorShow.vue";
import VendorFormAdd from "../components/Vendors/VendorFormAdd.vue";
+import ResourceWrapper from "../components/ResourceWrapper.vue";
import { $__ } from "../i18n";
@@ -33,31 +34,32 @@ export const routes = [
icon: "fa fa-shopping-cart",
is_end_node: true,
breadcrumbFormat: vendorSearchBreadcrumb,
+ resource: "Vendors/VendorResource.vue",
children: [
{
path: "",
name: "VendorList",
- component: markRaw(VendorList),
+ component: markRaw(ResourceWrapper),
alternateLeftMenu: "AcquisitionsMenu",
},
{
path: ":id",
name: "VendorShow",
- component: markRaw(VendorShow),
+ component: markRaw(ResourceWrapper),
title: $__("Show vendor"),
alternateLeftMenu: "VendorMenu",
},
{
path: "add",
name: "VendorFormAdd",
- component: markRaw(VendorFormAdd),
+ component: markRaw(ResourceWrapper),
title: $__("Add vendor"),
alternateLeftMenu: "none",
},
{
path: "edit/:id",
name: "VendorFormAddEdit",
- component: markRaw(VendorFormAdd),
+ component: markRaw(ResourceWrapper),
title: $__("Edit vendor"),
alternateLeftMenu: "VendorMenu",
},