tanisa
v1.1.3
Published
An utility to convert Malagasy π²π¬ numbers, including decimals, into their word representations.
Maintainers
Readme
tanisa
Tanisa is here to give those digits a voice, transforming them into elegant Malagasy words π²π¬.
In simpler terms : An utility to convert malagasy numbers into their word representations.
Features
- β Handles whole numbers : From a humble "aotra" (zero) to numbers that make your calculator sweat.
- β Decimal support : Gracefully converts those pesky fractions into spoken form.
- β Large number linguistics: Tackles big numbers with the appropriate Malagasy terminology.
- β User-friendly API : So intuitive, you'll feel like you've been speaking number-words your whole life.
- β Configurable options : Customize the conversion behavior, like controlling how decimal places are handled and more...
- π‘οΈ Error Handling : Throws helpful errors when you try to feed it something it can't digest.
Installation
yarn add tanisaUsage
- Import the Magic:
import { Tanisa } from 'tanisa'- Simply use it:
const tanisa = new Tanisa()
tanisa.toWords(233)- Examples:
tanisa.toWords(233) // Telo amby telopolo sy roanjato
tanisa.toWords(18.3) // Valo amby folo faingo telo
tanisa.toWords(0.008) // Aotra faingo aotra aotra valo
tanisa.toWords(12_345_678_901) // iraika amby sivinjato sy valo arivo sy fito alina sy enina hetsy sy dimy tapitrisa sy efatra safatsiroa sy telo tsitamboisa sy roa lavitrisa sy iray alinkisaOptions
| Option Name | Type | Default | Description |
| :-------------- | :-------- | :------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------- |
| ignoreDecimal | boolean | false | If set to true, the converter completely disregards any digits after the decimal point. Only the integer part of the number is considered. |
| decimalPlaces | number | undefined (converts all) | Specifies the maximum number of digits to convert in the decimal part. Extra digits are truncated (not rounded). Set to 0 to ignore decimals. |
Note: If both ignoreDecimal is true and decimalPlaces is set, ignoreDecimal: true takes precedence, and the decimal part will be entirely ignored.
Examples:
tanisa.toWords("456.789", { ignoreDecimal: true }) // Enina amby dimampolo sy efajato
tanisa.toWords("3.14567", { decimalPlaces: 2 }); // Telo faingo efatra amby folo
tanisa.toWords("3.14567", { decimalPlaces: 2, ignoreDecimal: true }); ==> // TeloContribution
Contributions are welcome!
Feel free to check out the CONTRIBUTING file.
License
This project is proudly released under the MIT License
