You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
731 B
37 lines
731 B
<script setup>
|
|
import { computed } from 'vue';
|
|
|
|
const emit = defineEmits(['update:checked']);
|
|
|
|
const props = defineProps({
|
|
checked: {
|
|
type: [Array, Boolean],
|
|
default: false,
|
|
},
|
|
value: {
|
|
type: String,
|
|
default: null,
|
|
},
|
|
});
|
|
|
|
const proxyChecked = computed({
|
|
get() {
|
|
return props.checked;
|
|
},
|
|
|
|
set(val) {
|
|
emit('update:checked', val);
|
|
},
|
|
});
|
|
</script>
|
|
|
|
|
|
<template>
|
|
<input
|
|
v-model="proxyChecked"
|
|
type="checkbox"
|
|
:value="value"
|
|
class="rounded dark:bg-gray-900 border-gray-300 dark:border-gray-700 text-indigo-600 shadow-sm focus:ring-indigo-500 dark:focus:ring-indigo-600 dark:focus:ring-offset-gray-800"
|
|
>
|
|
</template>
|