40 lines
775 B
TypeScript
40 lines
775 B
TypeScript
type AnilistDate = {
|
|
year: number;
|
|
month: number;
|
|
day: number;
|
|
};
|
|
|
|
const convertDateStringToAniList = (date: string): AnilistDate => {
|
|
if (date === "") {
|
|
return {
|
|
year: 0,
|
|
month: 0,
|
|
day: 0,
|
|
};
|
|
}
|
|
const re = /^([0-9]{4})-([0-9]{2})-([0-9]{2})/;
|
|
const newDate = re.exec(date);
|
|
return {
|
|
year: Number(newDate[1]),
|
|
month: Number(newDate[2]),
|
|
day: Number(newDate[3]),
|
|
};
|
|
};
|
|
|
|
const convertDateToAniList = (date: Date | null): AnilistDate => {
|
|
if (date === null) {
|
|
return {
|
|
year: 0,
|
|
month: 0,
|
|
day: 0,
|
|
};
|
|
}
|
|
return {
|
|
year: Number(date.getFullYear()),
|
|
month: Number(date.getMonth()) + 1,
|
|
day: Number(date.getDate()),
|
|
};
|
|
};
|
|
|
|
export { convertDateStringToAniList, convertDateToAniList };
|