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
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)