All files / web/src/components/workflow-editor TriggerToggle.vue

0% Statements 0/14
100% Branches 1/1
100% Functions 1/1
0% Lines 0/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45                                                                                         
<script setup lang="ts">
import { ElSwitch, ElTooltip } from 'element-plus'
 
interface Props {
  isActive: boolean
  isLoading?: boolean
  statusText?: string
  size?: 'small' | 'default' | 'large'
}
 
withDefaults(defineProps<Props>(), {
  isLoading: false,
  statusText: '',
  size: 'large',
})
 
defineEmits<{
  toggle: []
}>()
</script>
 
<template>
  <div class="trigger-toggle">
    <el-tooltip
      :content="isActive ? 'Deactivate workflow' : 'Activate workflow'"
      placement="bottom"
    >
      <el-switch
        :model-value="isActive"
        :loading="isLoading"
        :active-text="statusText"
        :size="size"
        @change="$emit('toggle')"
      />
    </el-tooltip>
  </div>
</template>
 
<style lang="scss" scoped>
.trigger-toggle {
  display: flex;
  align-items: center;
}
</style>