Bug 38941 - Convert the acquisitions menu to a Vue island
Summary: Convert the acquisitions menu to a Vue island
Status: Needs Signoff
Alias: None
Product: Koha
Classification: Unclassified
Component: Architecture, internals, and plumbing (show other bugs)
Version: Main
Hardware: All All
: P5 - low enhancement
Assignee: Matt Blenkinsop
QA Contact: Testopia
URL:
Keywords:
Depends on: 37911 38930
Blocks:
  Show dependency treegraph
 
Reported: 2025-01-21 16:45 UTC by Matt Blenkinsop
Modified: 2025-01-21 17:24 UTC (History)
6 users (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:


Attachments
Bug 38941: Convert the acquisitions menu to a Vue web component (23.19 KB, patch)
2025-01-21 17:22 UTC, Matt Blenkinsop
Details | Diff | Splinter Review
Bug 38941: Add a cypress test (2.40 KB, patch)
2025-01-21 17:22 UTC, Matt Blenkinsop
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Blenkinsop 2025-01-21 16:45:16 UTC
We should convert the left menus to Vue islands so that the components can be used both in Koha and in Vue apps where needed
Comment 1 Matt Blenkinsop 2025-01-21 17:22:00 UTC
Created attachment 176877 [details] [review]
Bug 38941: Convert the acquisitions menu to a Vue web component

This is an example patch for creating a Vue island component that can be used throughout Koha. The component can then also be used in the work in Bug 38010 to migrate Vendors to Vue. This removes duplication of code by having a .inc file as well as a vue component to maintain

Test plan:
1) Apply all patches including dependencies
2) Bug 37911 requires a Vue upgrade so you will need to run yarn install, then run a yarn build
3) Navigate to the acquisitions home page
4) The left menu should appear as before
5) Switch on the EDIFACT syspref - the acq menu should now display the edifact related options
6) Try logging in as a new patron with reduced permissions, the menu should update correctly according to the permissions
Comment 2 Matt Blenkinsop 2025-01-21 17:22:02 UTC
Created attachment 176878 [details] [review]
Bug 38941: Add a cypress test
Comment 3 Matt Blenkinsop 2025-01-21 17:23:26 UTC
This is a POC - interested to hear any ideas for improvement. I considered using the NavigationItem component to render the links but it changes the HTML structure slightly and is largely dependent on the Vue router