Files
apkt-eis/src/components/Form/Filters.vue
2024-02-29 14:15:35 +07:00

39 lines
1.2 KiB
Vue
Executable File

<script setup lang="ts">
import Button from '@/components/Buttons/Button.vue'
import { PhArrowsCounterClockwise, PhFileText, PhMagnifyingGlass } from '@phosphor-icons/vue'
defineProps({
reportButton: {
type: Boolean,
default: false
}
})
const emit = defineEmits(['runSearch', 'resetForm', 'runReport'])
</script>
<template>
<div class="filters rounded-2xl">
<form class="p-4 mx-auto space-y-3 filter-body bg-gray-50 rounded-t-2xl">
<slot></slot>
</form>
<div class="flex justify-end px-4 py-3 filter-footer rounded-b-2xl bg-primary-50">
<div class="flex flex-wrap gap-3 filter-buttons">
<Button @on:click="() => emit('resetForm')" label="Ulangi" style-type="outline" class-name="bg-white">
<PhArrowsCounterClockwise size="18" class="ml-1" weight="regular" />
</Button>
<Button v-if="reportButton" label="Lihat Laporan" style-type="outline" class-name="bg-white"
@on:click="() => emit('runReport')">
<PhFileText size="18" class="ml-1" weight="regular" />
</Button>
<Button @on:click="() => emit('runSearch')" label="Cari Data">
<PhMagnifyingGlass size="18" class="ml-1" weight="regular" />
</Button>
</div>
</div>
</div>
</template>