Skip to content

WIP: Global Search - Init Vue App

Zack Cuddy requested to merge 249709_01-init into master

What does this MR do?

This is work towards #249709 (closed)
This MR is split off (1 of 2) from !43927 (closed)

This change initializes the Vue application that will wrap the Global Search UI. This Vue Instance wraps the entire HAML view of Global Search. It allows us to create a global store and inject Vue components where we would like without fully rewriting the entire UI in Vue out of the gate. For more information as to why we aren't going the full rewrite way take a look at: !42743 (closed)

Plugin

VueMountComponent is built to allow us to inject Vue components into specific parts of the HAML while preserving a singular Vue Instance. This allows us to share a Vuex store and communicate between the components while still preserving miscellaneous parts of the HAML UI until we can iterate and rewrite them over the next few milestones.

Important Note

This change is only the initialization of the Vue app. There isn't much use here, but check out the follow up MR that is based on top of this MR to see how the Plugin will be used: !44179 (closed)

Screenshots

Before After (identical)
Search UI Before After

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Zack Cuddy

Merge request reports