76 lines
1.9 KiB
TypeScript
76 lines
1.9 KiB
TypeScript
|
|
import { defineStore } from "pinia";
|
||
|
|
|
||
|
|
export const useCounterMixin = defineStore("mixin", () => {
|
||
|
|
function date2Thai(srcDate: Date, isFullMonth = false, isTime = false) {
|
||
|
|
if (srcDate == null) {
|
||
|
|
return null;
|
||
|
|
`
|
||
|
|
`;
|
||
|
|
}
|
||
|
|
const date = new Date(srcDate);
|
||
|
|
const isValidDate = Boolean(+date);
|
||
|
|
if (!isValidDate) return srcDate.toString();
|
||
|
|
if (isValidDate && date.getFullYear() < 1000) return srcDate.toString();
|
||
|
|
const fullMonthThai = [
|
||
|
|
"มกราคม",
|
||
|
|
"กุมภาพันธ์",
|
||
|
|
"มีนาคม",
|
||
|
|
"เมษายน",
|
||
|
|
"พฤษภาคม",
|
||
|
|
"มิถุนายน",
|
||
|
|
"กรกฎาคม",
|
||
|
|
"สิงหาคม",
|
||
|
|
"กันยายน",
|
||
|
|
"ตุลาคม",
|
||
|
|
"พฤศจิกายน",
|
||
|
|
"ธันวาคม",
|
||
|
|
];
|
||
|
|
const abbrMonthThai = [
|
||
|
|
"ม.ค.",
|
||
|
|
"ก.พ.",
|
||
|
|
"มี.ค.",
|
||
|
|
"เม.ย.",
|
||
|
|
"พ.ค.",
|
||
|
|
"มิ.ย.",
|
||
|
|
"ก.ค.",
|
||
|
|
"ส.ค.",
|
||
|
|
"ก.ย.",
|
||
|
|
"ต.ค.",
|
||
|
|
"พ.ย.",
|
||
|
|
"ธ.ค.",
|
||
|
|
];
|
||
|
|
let dstYear = 0;
|
||
|
|
if (date.getFullYear() > 2500) {
|
||
|
|
dstYear = date.getFullYear();
|
||
|
|
} else {
|
||
|
|
dstYear = date.getFullYear() + 543;
|
||
|
|
}
|
||
|
|
let dstMonth = "";
|
||
|
|
if (isFullMonth) {
|
||
|
|
dstMonth = fullMonthThai[date.getMonth()];
|
||
|
|
} else {
|
||
|
|
dstMonth = abbrMonthThai[date.getMonth()];
|
||
|
|
}
|
||
|
|
let dstTime = "";
|
||
|
|
if (isTime) {
|
||
|
|
const H = date.getHours().toString().padStart(2, "0");
|
||
|
|
const M = date.getMinutes().toString().padStart(2, "0");
|
||
|
|
// const S = date.getSeconds().toString().padStart(2, "0")
|
||
|
|
// dstTime = " " + H + ":" + M + ":" + S + " น."
|
||
|
|
dstTime = " " + H + ":" + M + " น.";
|
||
|
|
}
|
||
|
|
return (
|
||
|
|
date.getDate().toString().padStart(2, "0") +
|
||
|
|
" " +
|
||
|
|
dstMonth +
|
||
|
|
" " +
|
||
|
|
dstYear +
|
||
|
|
dstTime
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
return {
|
||
|
|
date2Thai,
|
||
|
|
};
|
||
|
|
});
|