46 lines
775 B
Vue
46 lines
775 B
Vue
<template>
|
|
<div
|
|
class="choice"
|
|
:class="{ active: checked }"
|
|
data-toggle="wizard-checkbox"
|
|
@click="updateValue"
|
|
>
|
|
<input
|
|
type="checkbox"
|
|
:name="name"
|
|
:disabled="disabled"
|
|
:checked="checked"
|
|
/>
|
|
<div class="icon">
|
|
<slot name="icon"> <i :class="icon"></i> </slot>
|
|
</div>
|
|
<slot name="title">
|
|
<h6>{{ title }}</h6>
|
|
</slot>
|
|
</div>
|
|
</template>
|
|
<script>
|
|
export default {
|
|
name: 'icon-checkbox',
|
|
model: {
|
|
prop: 'checked'
|
|
},
|
|
props: {
|
|
checked: {
|
|
type: Boolean,
|
|
default: false
|
|
},
|
|
name: String,
|
|
title: String,
|
|
icon: String,
|
|
disabled: Boolean
|
|
},
|
|
methods: {
|
|
updateValue() {
|
|
this.$emit('input', !this.checked);
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
<style></style>
|