psammead-calendars -
This package provides a utility to format calendar dates provided in a Moment
object to other non-gregorian calendars. For now Jalaali is the only calendar which is being converted, more may be added in the future.
Installation
npm install @bbc/psammead-calendars --save
Calendars
Jalaali
Converts a Gregorian calendar date represented by a moment object into its Jalaali calendar equivalent and outputs it as a string to be used by other components. This helper relies on jalaali-js
which contains the logic to carry out the conversions from Gregorian to Jalaali. Documentation of this dependency can be found here.
This helper currently only supports Pashto and Persian/Farsi Jalaali calendar month names and Eastern Arabic numerals (translated using psammead-locales).
Usage
Follow this template and replace CALENDAR_NAME:
import { CALENDAR_NAME } from "@bbc/psammead-calendars"
Jalaali Usage
import { jalaali } from "@bbc/psammead-calendars"
const nowMoment = moment().locale('fa');
const formattedDate = jalaali.formatDate(nowMoment);
The Jalaali formatter contains a function called formatDate()
. This function takes a moment
object as its argument, which needs to have ps
or fa
set as its locale. The function then uses the moment
with its logic to return a string in a day, year, month format using Eastern Arabic numerals e.g. ۱۱ دی ۱۳۹۷
.
If an unsupported moment
or locale set on the moment
is passed in, then the output will return null
.
Contributing
Psammead is completely open source. We are grateful for any contributions, whether they be new components, bug fixes or general improvements. Please see our primary contributing guide which can be found at the root of the Psammead repository.
Code of Conduct
We welcome feedback and help on this work. By participating in this project, you agree to abide by the code of conduct. Please take a moment to read it.
License
Psammead is Apache 2.0 licensed.