toolbar_button.vue 1.06 KB
Newer Older
1
<script>
2
  import tooltip from '../../directives/tooltip';
Tim Zallmann's avatar
Tim Zallmann committed
3
  import icon from '../icon.vue';
Phil Hughes's avatar
Phil Hughes committed
4

5
  export default {
Filipa Lacerda's avatar
Filipa Lacerda committed
6 7 8 9 10 11
    components: {
      icon,
    },
    directives: {
      tooltip,
    },
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
    props: {
      buttonTitle: {
        type: String,
        required: true,
      },
      icon: {
        type: String,
        required: true,
      },
      tag: {
        type: String,
        required: true,
      },
      tagBlock: {
        type: String,
        required: false,
        default: '',
      },
30 31 32 33 34
      tagSelect: {
        type: String,
        required: false,
        default: '',
      },
35 36 37 38 39 40 41 42 43 44 45
      prepend: {
        type: Boolean,
        required: false,
        default: false,
      },
    },
  };
</script>

<template>
  <button
46
    v-tooltip
47
    :data-md-tag="tag"
48
    :data-md-select="tagSelect"
49 50 51
    :data-md-block="tagBlock"
    :data-md-prepend="prepend"
    :title="buttonTitle"
Filipa Lacerda's avatar
Filipa Lacerda committed
52
    :aria-label="buttonTitle"
53 54 55 56
    type="button"
    class="toolbar-btn js-md"
    tabindex="-1"
    data-container="body"
Filipa Lacerda's avatar
Filipa Lacerda committed
57
  >
Tim Zallmann's avatar
Tim Zallmann committed
58
    <icon
Filipa Lacerda's avatar
Filipa Lacerda committed
59 60
      :name="icon"
    />
61 62
  </button>
</template>