gl-modal does not fully support visibility features of b-modal

Description

gl-modal does not fully support the interface of b-modal. From what I can tell, the only reliable way to toggle visibility with gl-modal is with emitting root events.

Proposal

Let gl-modal support the other methods of toggling visibility

  • Using v-b-modal directive
  • Using show() and hide() component methods
  • Using v-modal property

When this is updated, we should probably look into updating gl_modal_vuex in GitLab CE.

Edited by Paul Slaughter