diff options
Diffstat (limited to 'app/assets/javascripts/clusters/components/uninstall_application_button.vue')
-rw-r--r-- | app/assets/javascripts/clusters/components/uninstall_application_button.vue | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/app/assets/javascripts/clusters/components/uninstall_application_button.vue b/app/assets/javascripts/clusters/components/uninstall_application_button.vue new file mode 100644 index 00000000000..ef4bcbe14dd --- /dev/null +++ b/app/assets/javascripts/clusters/components/uninstall_application_button.vue @@ -0,0 +1,33 @@ +<script> +import LoadingButton from '~/vue_shared/components/loading_button.vue'; +import { APPLICATION_STATUS } from '~/clusters/constants'; + +const { UPDATING, UNINSTALLING } = APPLICATION_STATUS; + +export default { + components: { + LoadingButton, + }, + props: { + status: { + type: String, + required: true, + }, + }, + computed: { + disabled() { + return [UNINSTALLING, UPDATING].includes(this.status); + }, + loading() { + return this.status === UNINSTALLING; + }, + label() { + return this.loading ? this.__('Uninstalling') : this.__('Uninstall'); + }, + }, +}; +</script> + +<template> + <loading-button :label="label" :disabled="disabled" :loading="loading" /> +</template> |