UNPKG

to-bengali

Version:

A lightweight npm package to translate numbers and dates to Bengali language.

293 lines (266 loc) 6.88 kB
# To Bengali [![npm version](https://img.shields.io/npm/v/to-bengali.svg)](https://www.npmjs.com/package/to-bengali) [![License](https://img.shields.io/npm/l/to-bengali.svg)](https://github.com/Tanbinhimel/to-bengali/blob/main/LICENSE) To Bengali is a lightweight npm package for translating numbers and dates to Bengali language. It's perfect for developers who need to localize their applications for Bengali speakers. ## Installation To install this package, use npm: ```shell npm i to-bengali ``` ## Usage **To Bengali** exports two Class: **Bengali Date** and **Bengali Number**. ### Bengali Date To import Bengali Date class: ```shell import {BengaliDate} from 'to-bengali'; ``` To use this class: ```shell const date = new Date('29 november, 1998'); const bngDateTime = new BengaliDate(date); // BengaliDate() will return current date-time console.log(bngDateTime.bngDate); // output: ২৯ ``` Properties: <table> <tr> <th>Name</th> <th>Return Types</th> <th>Description</th> </tr> <tr> <td>bngDate</td> <td>string</td> <td>Returns date in bengali</td> </tr> <tr> <td>bngMonthInNumber</td> <td>string</td> <td>Returns month in number in bengali</td> </tr> <tr> <td>bngMonth</td> <td>string</td> <td>Returns month in words in bengali</td> </tr> <tr> <td>bngFullYear</td> <td>string</td> <td>Returns full years (4 digits) in bengali</td> </tr> <tr> <td>bngYear</td> <td>string</td> <td>Returns years (last 2 digits) in bengali</td> </tr> <tr> <td>bngHours</td> <td>string</td> <td>Returns hours (24-hours format) in bengali</td> </tr> <tr> <td>bngHoursInTwelveHourFormat</td> <td>string</td> <td>Returns hours (12-hours format) in bengali</td> </tr> <tr> <td>bngMinutes</td> <td>string</td> <td>Returns minutes in bengali</td> </tr> <tr> <td>bngSeconds</td> <td>string</td> <td>Returns seconds in bengali</td> </tr> <tr> <td>bngTimeName</td> <td>"ভোর" | "সকাল" | "দুপুর" | "বিকাল" | "সন্ধ্যা" | "রাত"</td> <td>Returns time name in bengali</td> </tr> <tr> <td>bngDay</td> <td>string</td> <td>Returns day name in bengali (first 2 characters)</td> </tr> <tr> <td>bngFullDay</td> <td>string</td> <td>Returns full day name in bengali (all characters)</td> </tr> <tr> <td>engTimeName</td> <td>"PM" | "AM"</td> <td>Returns time name in english</td> </tr> </table> Methods: <div><b><i>format(pattern?: string): string</i></b></div> <div>To use this method:</div> ```shell const date = new Date('29 november, 1998'); const bngDateTime = new BengaliDate(date).format('DD MMMM, YYYY dddd AAAA hh:mm:ss') console.log(bngDateTime); // output: ২৯ নভেম্বর, ১৯৯৮ রবিবার রাত ১২:০০:০০ ``` Others supported patterns: <table> <tr> <th>Patters</th> <th>Description</th> <th>Example</th> </tr> <tr> <td>date</td> <td>Returns date</td> <td>'২৯ নভেম্বর, ১৯৯৮'</td> </tr> <tr> <td>time</td> <td>Returns time</td> <td>'রাত ১২:০০'</td> </tr> <tr> <td>date-time</td> <td>Default value. Returns date & time</td> <td>'২৯ নভেম্বর, ১৯৯৮ রাত ১২:০০'</td> </tr> <tr> <td>date-day-time</td> <td>Returns date & time</td> <td>'২৯ নভেম্বর, ১৯৯৮ রবিবার রাত ১২:০০'</td> </tr> <tr> <td>D</td> <td>Returns date</td> <td>2 as '২'</td> </tr> <tr> <td>DD</td> <td>Returns double digits date (Prefix date with '০' if it's a single digit, otherwise return original date)</td> <td>2 as '০২'</td> </tr> <tr> <td>M</td> <td>Returns month in numbers</td> <td>January as '১'</td> </tr> <tr> <td>MM</td> <td>Returns double digits month in numbers (Prefix month number with '০' if it's a single digit, otherwise return original month)</td> <td>January as '০১'</td> </tr> <tr> <td>MMMM</td> <td>Returns month in words</td> <td>November as 'নভেম্বর'</td> </tr> <tr> <td>YY</td> <td>Returns last two digits of the year</td> <td>1998 as '৯৮'</td> </tr> <tr> <td>YYYY</td> <td>Returns full year</td> <td>1998 as '১৯৯৮'</td> </tr> <tr> <td>dd</td> <td>Returns day in short form</td> <td>Sunday as 'রবি'</td> </tr> <tr> <td>dddd</td> <td>Returns day in full form</td> <td>Sunday as 'রবিবার'</td> </tr> <tr> <td>AAAA</td> <td>Returns time name in bengali</td> <td>"ভোর" | "সকাল" | "দুপুর" | "বিকাল" | "সন্ধ্যা" | "রাত"</td> </tr> <tr> <td>AA</td> <td>Returns time name in english (uppercase)</td> <td>"PM" | "AM"</td> </tr> <tr> <td>aa</td> <td>Returns time name in english (lowercase)</td> <td>"pm" | "am"</td> </tr> <tr> <td>h</td> <td>Returns hours in 12 hour format</td> <td>2 as '২'</td> </tr> <tr> <td>hh</td> <td>Returns double digit hours in 12 hour format</td> <td>2 as '০২'</td> </tr> <tr> <td>H</td> <td>Returns hours in 24 hour format</td> <td>2 as '২'</td> </tr> <tr> <td>HH</td> <td>Returns double digit hours in 24 hour format</td> <td>2 as '০২'</td> </tr> <tr> <td>m</td> <td>Returns minutes</td> <td>2 as '২'</td> </tr> <tr> <td>mm</td> <td>Returns double digit minutes</td> <td>2 as '০২'</td> </tr> <tr> <td>s</td> <td>Returns seconds</td> <td>2 as '২'</td> </tr> <tr> <td>ss</td> <td>Returns double digit seconds</td> <td>2 as '০২'</td> </tr> </table> ### Bengali Number To import Bengali Number class: ```shell import {BengaliNumber} from 'to-bengali'; ``` To use this class: ```shell const bengaliNumber = new BengaliNumber(100); console.log(bengaliNumber.bngValue); // output: ১০০ ``` Properties: <table> <tr> <th>Name</th> <th>Return Types</th> <th>Description</th> </tr> <tr> <td>bngValue</td> <td>string</td> <td>Returns bengali value of a number</td> </tr> <tr> <td>engValue</td> <td>string</td> <td>Returns english value of a number</td> </tr> </table> **more description will be added later.* ## Contributing If you find a bug or would like to contribute to the project, please check out the [contribution guidelines](CONTRIBUTION.md). ## License To Bengali is licensed under the [MIT license](LICENSE).