Files
solidtime/resources/js/packages/ui/src/DialogModal.vue
2026-09-04 17:33:01 +02:00

49 lines
1.1 KiB
Vue

<script setup lang="ts">
import Modal from './Modal.vue';
const emit = defineEmits(['close', 'submit']);
defineProps({
show: {
type: Boolean,
default: false,
},
maxWidth: {
type: String,
default: '2xl',
},
closeable: {
type: Boolean,
default: true,
},
});
const close = () => {
emit('close');
};
</script>
<template>
<Modal
:show="show"
:max-width="maxWidth"
:closeable="closeable"
@close="close"
@submit="emit('submit')">
<div class="px-4 lg:px-6 py-4">
<div class="text-lg font-medium text-text-primary" role="heading">
<slot name="title" />
</div>
<div class="mt-4 text-sm text-text-secondary">
<slot name="content" />
</div>
</div>
<div
class="flex flex-row justify-end px-6 py-4 border-t border-card-background-separator bg-default-background rounded-b-2xl text-end">
<slot name="footer" />
</div>
</Modal>
</template>