From 2dfa887f241bd2e563d93b8ceff79d94ef3ff665 Mon Sep 17 00:00:00 2001 From: Matt Blenkinsop Date: Fri, 29 Nov 2024 18:00:29 +0000 Subject: [PATCH] Bug 38201: Add a ResourceFormAdd component Dries out adding and editing resources Signed-off-by: Michaela Sieber Signed-off-by: Jonathan Druart Signed-off-by: Lucas Gass --- .../prog/js/vue/components/BaseResource.vue | 6 +- .../vue/components/ERM/AgreementResource.vue | 188 +++++++++++++++++- .../vue/components/ERM/AgreementsFormAdd.vue | 14 -- .../prog/js/vue/components/FormElement.vue | 16 +- .../js/vue/components/ResourceFormAdd.vue | 106 ++++++++++ .../prog/js/vue/components/ResourceShow.vue | 4 +- .../js/vue/components/ResourceWrapper.vue | 12 +- .../intranet-tmpl/prog/js/vue/routes/erm.js | 4 +- 8 files changed, 313 insertions(+), 37 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceFormAdd.vue diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/BaseResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/BaseResource.vue index aa3c012c64..85c67a76fb 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/BaseResource.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/BaseResource.vue @@ -1,9 +1,5 @@ - - diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceShow.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceShow.vue index 6a913d0fe2..409f41e38a 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceShow.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceShow.vue @@ -4,11 +4,11 @@ diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceWrapper.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceWrapper.vue index 2afe8b56b4..5d98e355cc 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceWrapper.vue +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceWrapper.vue @@ -9,11 +9,6 @@ import ResourceShow from "./ResourceShow.vue"; export default { components: { ResourceShow, BaseResource }, - data() { - return { - component: null, - }; - }, methods: { getComponent() { const routeResource = this.$route.meta.self.parent.resource; @@ -23,12 +18,7 @@ export default { const importPath = `./${ resourceModule ? `${resourceModule}/` : "" }${componentName}Resource.vue`; - const component = defineAsyncComponent( - () => import(`${importPath}`) - ); - this.component = component; - - return component; + return defineAsyncComponent(() => import(`${importPath}`)); }, }, computed: { diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/routes/erm.js b/koha-tmpl/intranet-tmpl/prog/js/vue/routes/erm.js index 2d2a55fe4a..b63ac898d0 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/vue/routes/erm.js +++ b/koha-tmpl/intranet-tmpl/prog/js/vue/routes/erm.js @@ -67,13 +67,13 @@ export const routes = [ { path: "add", name: "AgreementsFormAdd", - component: markRaw(AgreementsFormAdd), + component: markRaw(ResourceWrapper), title: $__("Add agreement"), }, { path: "edit/:agreement_id", name: "AgreementsFormAddEdit", - component: markRaw(AgreementsFormAdd), + component: markRaw(ResourceWrapper), title: $__("Edit agreement"), }, ],