Documentation Index
Fetch the complete documentation index at: https://persian-tools.usestrict.dev/llms.txt
Use this file to discover all available pages before exploring further.
Remaining Time
Calculate and format the remaining time until a future date with Persian output.
Basic Usage
import { remainingTime } from "@persian-tools/persian-tools";
const futureDate = new Date("2024-12-31T23:59:59");
const remaining = remainingTime(futureDate);
console.log(remaining);
// Output: { days: 78, hours: 13, minutes: 59, seconds: 59 }
API Reference
Object containing time components
Examples
Countdown Timer
import { remainingTime, digitsEnToFa } from "@persian-tools/persian-tools";
const displayCountdown = (targetDate: Date): string => {
const time = remainingTime(targetDate);
const days = digitsEnToFa(time.days.toString());
const hours = digitsEnToFa(time.hours.toString());
const minutes = digitsEnToFa(time.minutes.toString());
return `${days} روز و ${hours} ساعت و ${minutes} دقیقه`;
};
const eventDate = new Date("2024-12-31T23:59:59");
console.log(displayCountdown(eventDate));
// "۷۸ روز و ۱۳ ساعت و ۵۹ دقیقه"
Event Countdown
import { remainingTime } from "@persian-tools/persian-tools";
const showEventCountdown = (eventDate: Date) => {
const time = remainingTime(eventDate);
if (time.days > 0) {
return `${time.days} روز مانده`;
} else if (time.hours > 0) {
return `${time.hours} ساعت مانده`;
} else {
return `${time.minutes} دقیقه مانده`;
}
};
Use Cases
Show countdown for flash sales:const saleEnds = new Date('2024-10-20T23:59:59');
const countdown = remainingTime(saleEnds);
Display time until event registration closes:const registrationDeadline = new Date('2024-11-01');
const remaining = remainingTime(registrationDeadline);
Type Definition
interface RemainingTime {
days: number;
hours: number;
minutes: number;
seconds: number;
}
function remainingTime(date: Date | number): RemainingTime;