toPersianWords function
number written in Persian words, for example هزار و چهارصد و سه for
1403, or as an ordinal with ordinal: بیست و چهارم for 24.
Parts are joined with و. A leading thousand is هزار, not
یک هزار, as years are written; larger scales keep یک
(یک میلیون). Ordinals are the forms dates use: یکم, سوم, and
سیام with a zero-width non-joiner. Negative numbers start with منفی.
Implementation
String toPersianWords(int number, {bool ordinal = false}) {
final words = _cardinal(number);
return ordinal ? _ordinal(words) : words;
}