Skip to content

Refactor "Tag name" field on the "Edit Release" page into sub-component

What does this MR do?

Refactors the Tag name field on the Edit Release page into its own sub-component.

In addition, some small improvements are made to the extracted code (i.e. replacing an instance of v-html with GlSprintf).

Screenshots

image

Note: This MR makes no visual changes to this field.

Why?

This is a step towards implementing the New Release page (see #214244 (closed)). As part of this effort, the main component that drives the existing Edit Release page (app_edit_new.vue) will be updated to support both release editing and release creation.

The main difference between these two workflows is that when editing an existing release, the release's tag cannot be edited, while release creation requires that a new tag be created (or an existing tag be selected). To allow this component to support both workflows, this MR extracts the Tag name field into two sub-components:

  • existing_tag_field.vue: implements the current behavior of the Tag name field
  • new_tag_field.vue: implements the behavior that will be used by the New Release page. This component is only an empty placeholder component for now.

The New Release page is not yet visible to users (it is hidden behind the new_release_page feature flag which is disabled by default), so it is safe to merge this MR even though the new_tag_field.vue component is empty.

For more context on what the New Release page will look like, see the screenshots in !36466 (merged).


Related to #214244 (closed)

Edited by Nathan Friend

Merge request reports