@ark-ui/vue
Version:
A collection of unstyled, accessible UI components for Vue, utilizing state machines for seamless interaction.
16 lines (15 loc) • 567 B
JavaScript
import { DEFAULT_LOCALE, useLocaleContext } from "./use-locale-context.js";
import { computed, toValue } from "vue";
import { DateFormatter } from "@internationalized/date";
//#region src/providers/locale/use-date-formatter.ts
function useDateFormatter(propsOrFn = {}) {
const env = useLocaleContext(DEFAULT_LOCALE);
return computed(() => {
const props = toValue(propsOrFn);
const locale = props.locale ?? env.value.locale;
const { locale: _, ...options } = props;
return new DateFormatter(locale, options);
});
}
//#endregion
export { useDateFormatter };