1
0
elk/components/common/CommonAlert.vue

32 lines
687 B
Vue
Raw Normal View History

2022-12-11 19:52:36 +09:00
<script lang="ts" setup>
const props = withDefaults(defineProps<{
modelValue?: boolean
}>(), {
modelValue: true,
})
2023-01-02 07:06:27 +09:00
const emit = defineEmits<{
2022-12-11 19:52:36 +09:00
(e: 'update:modelValue', v: boolean): void
(event: 'close'): void
}>()
2023-01-02 07:06:27 +09:00
const visible = useVModel(props, 'modelValue', emit, { passive: true })
2022-12-11 19:52:36 +09:00
function close() {
2023-01-02 07:06:27 +09:00
emit('close')
2022-12-11 19:52:36 +09:00
visible.value = false
}
</script>
<template>
<div
flex="~ gap-2" justify-between items-center
2022-12-28 07:18:16 +09:00
border="b base" text-sm text-secondary px4 py2 sm:py4
2022-12-11 19:52:36 +09:00
>
<div>
<slot />
</div>
<button text-xl hover:text-primary bg-hover-overflow w-1.4em h-1.4em @click="close()">
<div i-ri:close-line />
</button>
</div>
</template>