feat: add ragflow web project & add pnpm workspace file
This commit is contained in:
63
ragflow_web/src/utils/date.ts
Normal file
63
ragflow_web/src/utils/date.ts
Normal file
@@ -0,0 +1,63 @@
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
export function formatDate(date: any) {
|
||||
if (!date) {
|
||||
return '';
|
||||
}
|
||||
return dayjs(date).format('DD/MM/YYYY HH:mm:ss');
|
||||
}
|
||||
|
||||
export function formatTime(date: any) {
|
||||
if (!date) {
|
||||
return '';
|
||||
}
|
||||
return dayjs(date).format('HH:mm:ss');
|
||||
}
|
||||
|
||||
export function today() {
|
||||
return formatDate(dayjs());
|
||||
}
|
||||
|
||||
export function lastDay() {
|
||||
return formatDate(dayjs().subtract(1, 'days'));
|
||||
}
|
||||
|
||||
export function lastWeek() {
|
||||
return formatDate(dayjs().subtract(1, 'weeks'));
|
||||
}
|
||||
|
||||
export function formatPureDate(date: any) {
|
||||
if (!date) {
|
||||
return '';
|
||||
}
|
||||
return dayjs(date).format('DD/MM/YYYY');
|
||||
}
|
||||
|
||||
export function formatStandardDate(date: any) {
|
||||
if (!date) {
|
||||
return '';
|
||||
}
|
||||
const parsedDate = dayjs(date);
|
||||
if (!parsedDate.isValid()) {
|
||||
return '';
|
||||
}
|
||||
return parsedDate.format('YYYY-MM-DD');
|
||||
}
|
||||
|
||||
export function formatSecondsToHumanReadable(seconds: number): string {
|
||||
if (isNaN(seconds) || seconds < 0) {
|
||||
return '0s';
|
||||
}
|
||||
|
||||
const h = Math.floor(seconds / 3600);
|
||||
const m = Math.floor((seconds % 3600) / 60);
|
||||
// const s = toFixed(seconds % 60, 3);
|
||||
const s = seconds % 60;
|
||||
const formattedSeconds = s === 0 ? '0' : s.toFixed(3).replace(/\.?0+$/, '');
|
||||
const parts = [];
|
||||
if (h > 0) parts.push(`${h}h `);
|
||||
if (m > 0) parts.push(`${m}m `);
|
||||
if (s || parts.length === 0) parts.push(`${formattedSeconds}s`);
|
||||
|
||||
return parts.join('');
|
||||
}
|
||||
Reference in New Issue
Block a user