2022-09-12 14:47:27 -08:00
|
|
|
<template>
|
|
|
|
{{ value }}
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
2023-02-27 19:52:56 -09:00
|
|
|
import { DateTimeFormat, DateTimeType } from "~~/composables/use-formatters";
|
2022-12-09 20:57:57 -09:00
|
|
|
|
2023-01-01 13:50:48 -08:00
|
|
|
type Props = {
|
|
|
|
date?: Date | string;
|
|
|
|
format?: DateTimeFormat;
|
2023-02-27 19:52:56 -09:00
|
|
|
datetimeType?: DateTimeType;
|
2023-01-01 13:50:48 -08:00
|
|
|
};
|
|
|
|
|
|
|
|
const props = withDefaults(defineProps<Props>(), {
|
|
|
|
date: undefined,
|
|
|
|
format: "relative",
|
2023-02-27 19:52:56 -09:00
|
|
|
datetimeType: "date",
|
2023-01-01 13:50:48 -08:00
|
|
|
});
|
2022-12-09 20:57:57 -09:00
|
|
|
|
2022-09-12 14:47:27 -08:00
|
|
|
const value = computed(() => {
|
2023-01-01 13:50:48 -08:00
|
|
|
if (!props.date || !validDate(props.date)) {
|
2022-09-12 14:47:27 -08:00
|
|
|
return "";
|
|
|
|
}
|
|
|
|
|
2024-02-29 12:58:26 -06:00
|
|
|
return fmtDate(props.date, props.format);
|
2022-09-12 14:47:27 -08:00
|
|
|
});
|
|
|
|
</script>
|