n2words 4.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/README.md +14 -12
  3. package/dist/am-ET.js +2 -2
  4. package/dist/am-ET.umd.js +2 -2
  5. package/dist/am-Latn-ET.js +2 -2
  6. package/dist/am-Latn-ET.umd.js +2 -2
  7. package/dist/ar-SA.js +2 -2
  8. package/dist/ar-SA.umd.js +2 -2
  9. package/dist/az-AZ.js +2 -2
  10. package/dist/az-AZ.umd.js +2 -2
  11. package/dist/bn-BD.js +2 -2
  12. package/dist/bn-BD.umd.js +2 -2
  13. package/dist/cs-CZ.js +2 -2
  14. package/dist/cs-CZ.umd.js +2 -2
  15. package/dist/da-DK.js +2 -2
  16. package/dist/da-DK.umd.js +2 -2
  17. package/dist/de-DE.js +2 -2
  18. package/dist/de-DE.umd.js +2 -2
  19. package/dist/el-GR.js +2 -2
  20. package/dist/el-GR.umd.js +2 -2
  21. package/dist/en-AU.js +2 -2
  22. package/dist/en-AU.umd.js +2 -2
  23. package/dist/en-BD.js +2 -2
  24. package/dist/en-BD.umd.js +2 -2
  25. package/dist/en-CA.js +2 -2
  26. package/dist/en-CA.umd.js +2 -2
  27. package/dist/en-GB.js +2 -2
  28. package/dist/en-GB.umd.js +2 -2
  29. package/dist/en-GH.js +2 -2
  30. package/dist/en-GH.umd.js +2 -2
  31. package/dist/en-IE.js +2 -2
  32. package/dist/en-IE.umd.js +2 -2
  33. package/dist/en-IN.js +2 -2
  34. package/dist/en-IN.umd.js +2 -2
  35. package/dist/en-KE.js +2 -2
  36. package/dist/en-KE.umd.js +2 -2
  37. package/dist/en-MY.js +2 -2
  38. package/dist/en-MY.umd.js +2 -2
  39. package/dist/en-NG.js +2 -2
  40. package/dist/en-NG.umd.js +2 -2
  41. package/dist/en-NZ.js +2 -2
  42. package/dist/en-NZ.umd.js +2 -2
  43. package/dist/en-PH.js +2 -2
  44. package/dist/en-PH.umd.js +2 -2
  45. package/dist/en-PK.js +2 -2
  46. package/dist/en-PK.umd.js +2 -2
  47. package/dist/en-SG.js +2 -2
  48. package/dist/en-SG.umd.js +2 -2
  49. package/dist/en-US.js +2 -2
  50. package/dist/en-US.umd.js +2 -2
  51. package/dist/en-ZA.js +2 -2
  52. package/dist/en-ZA.umd.js +2 -2
  53. package/dist/es-ES.js +2 -2
  54. package/dist/es-ES.umd.js +2 -2
  55. package/dist/es-MX.js +2 -2
  56. package/dist/es-MX.umd.js +2 -2
  57. package/dist/es-US.js +2 -2
  58. package/dist/es-US.umd.js +2 -2
  59. package/dist/fa-IR.js +2 -2
  60. package/dist/fa-IR.umd.js +2 -2
  61. package/dist/fi-FI.js +2 -2
  62. package/dist/fi-FI.umd.js +2 -2
  63. package/dist/fil-PH.js +2 -2
  64. package/dist/fil-PH.umd.js +2 -2
  65. package/dist/fr-BE.js +2 -2
  66. package/dist/fr-BE.umd.js +2 -2
  67. package/dist/fr-FR.js +2 -2
  68. package/dist/fr-FR.umd.js +2 -2
  69. package/dist/gu-IN.js +2 -2
  70. package/dist/gu-IN.umd.js +2 -2
  71. package/dist/ha-NG.js +2 -2
  72. package/dist/ha-NG.umd.js +2 -2
  73. package/dist/hbo-IL.js +2 -2
  74. package/dist/hbo-IL.umd.js +2 -2
  75. package/dist/he-IL.js +2 -2
  76. package/dist/he-IL.umd.js +2 -2
  77. package/dist/hi-IN.js +2 -2
  78. package/dist/hi-IN.umd.js +2 -2
  79. package/dist/hr-HR.js +2 -2
  80. package/dist/hr-HR.umd.js +2 -2
  81. package/dist/hu-HU.js +2 -2
  82. package/dist/hu-HU.umd.js +2 -2
  83. package/dist/id-ID.js +2 -2
  84. package/dist/id-ID.umd.js +2 -2
  85. package/dist/it-IT.js +2 -2
  86. package/dist/it-IT.umd.js +2 -2
  87. package/dist/ja-JP.js +2 -2
  88. package/dist/ja-JP.umd.js +2 -2
  89. package/dist/ka-GE.js +2 -2
  90. package/dist/ka-GE.umd.js +2 -2
  91. package/dist/kn-IN.js +2 -2
  92. package/dist/kn-IN.umd.js +2 -2
  93. package/dist/ko-KR.js +2 -2
  94. package/dist/ko-KR.umd.js +2 -2
  95. package/dist/lt-LT.js +2 -2
  96. package/dist/lt-LT.umd.js +2 -2
  97. package/dist/lv-LV.js +2 -2
  98. package/dist/lv-LV.umd.js +2 -2
  99. package/dist/mr-IN.js +2 -2
  100. package/dist/mr-IN.umd.js +2 -2
  101. package/dist/ms-MY.js +2 -2
  102. package/dist/ms-MY.umd.js +2 -2
  103. package/dist/nb-NO.js +2 -2
  104. package/dist/nb-NO.umd.js +2 -2
  105. package/dist/nl-NL.js +2 -2
  106. package/dist/nl-NL.umd.js +2 -2
  107. package/dist/pa-IN.js +2 -2
  108. package/dist/pa-IN.umd.js +2 -2
  109. package/dist/pl-PL.js +2 -2
  110. package/dist/pl-PL.umd.js +2 -2
  111. package/dist/pt-BR.js +2 -0
  112. package/dist/pt-BR.umd.js +2 -0
  113. package/dist/pt-PT.js +2 -2
  114. package/dist/pt-PT.umd.js +2 -2
  115. package/dist/ro-RO.js +2 -2
  116. package/dist/ro-RO.umd.js +2 -2
  117. package/dist/ru-RU.js +2 -2
  118. package/dist/ru-RU.umd.js +2 -2
  119. package/dist/sr-Cyrl-RS.js +2 -2
  120. package/dist/sr-Cyrl-RS.umd.js +2 -2
  121. package/dist/sr-Latn-RS.js +2 -2
  122. package/dist/sr-Latn-RS.umd.js +2 -2
  123. package/dist/sv-SE.js +2 -2
  124. package/dist/sv-SE.umd.js +2 -2
  125. package/dist/sw-KE.js +2 -2
  126. package/dist/sw-KE.umd.js +2 -2
  127. package/dist/ta-IN.js +2 -2
  128. package/dist/ta-IN.umd.js +2 -2
  129. package/dist/te-IN.js +2 -2
  130. package/dist/te-IN.umd.js +2 -2
  131. package/dist/th-TH.js +2 -2
  132. package/dist/th-TH.umd.js +2 -2
  133. package/dist/tr-TR.js +2 -2
  134. package/dist/tr-TR.umd.js +2 -2
  135. package/dist/uk-UA.js +2 -2
  136. package/dist/uk-UA.umd.js +2 -2
  137. package/dist/ur-PK.js +2 -2
  138. package/dist/ur-PK.umd.js +2 -2
  139. package/dist/vi-VN.js +2 -2
  140. package/dist/vi-VN.umd.js +2 -2
  141. package/dist/yo-NG.js +2 -2
  142. package/dist/yo-NG.umd.js +2 -2
  143. package/dist/zh-Hans-CN.js +2 -2
  144. package/dist/zh-Hans-CN.umd.js +2 -2
  145. package/dist/zh-Hant-TW.js +2 -2
  146. package/dist/zh-Hant-TW.umd.js +2 -2
  147. package/package.json +53 -36
  148. package/src/am-ET.d.ts +3 -5
  149. package/src/am-ET.js +41 -16
  150. package/src/am-Latn-ET.d.ts +3 -5
  151. package/src/am-Latn-ET.js +45 -16
  152. package/src/ar-SA.d.ts +44 -18
  153. package/src/ar-SA.js +93 -40
  154. package/src/az-AZ.d.ts +3 -5
  155. package/src/az-AZ.js +58 -20
  156. package/src/bn-BD.d.ts +3 -5
  157. package/src/bn-BD.js +32 -16
  158. package/src/cs-CZ.d.ts +3 -6
  159. package/src/cs-CZ.js +66 -42
  160. package/src/da-DK.d.ts +3 -6
  161. package/src/da-DK.js +53 -48
  162. package/src/de-DE.d.ts +17 -11
  163. package/src/de-DE.js +88 -57
  164. package/src/el-GR.d.ts +3 -6
  165. package/src/el-GR.js +45 -32
  166. package/src/en-AU.d.ts +17 -11
  167. package/src/en-AU.js +56 -41
  168. package/src/en-BD.d.ts +17 -11
  169. package/src/en-BD.js +60 -41
  170. package/src/en-CA.d.ts +36 -18
  171. package/src/en-CA.js +67 -46
  172. package/src/en-GB.d.ts +17 -11
  173. package/src/en-GB.js +56 -41
  174. package/src/en-GH.d.ts +32 -3
  175. package/src/en-GH.js +104 -26
  176. package/src/en-IE.d.ts +17 -11
  177. package/src/en-IE.js +56 -41
  178. package/src/en-IN.d.ts +17 -11
  179. package/src/en-IN.js +60 -41
  180. package/src/en-KE.d.ts +28 -3
  181. package/src/en-KE.js +93 -26
  182. package/src/en-MY.d.ts +26 -3
  183. package/src/en-MY.js +91 -26
  184. package/src/en-NG.d.ts +17 -11
  185. package/src/en-NG.js +56 -41
  186. package/src/en-NZ.d.ts +32 -3
  187. package/src/en-NZ.js +85 -31
  188. package/src/en-PH.d.ts +32 -3
  189. package/src/en-PH.js +97 -26
  190. package/src/en-PK.d.ts +17 -11
  191. package/src/en-PK.js +60 -41
  192. package/src/en-SG.d.ts +28 -3
  193. package/src/en-SG.js +93 -26
  194. package/src/en-US.d.ts +36 -18
  195. package/src/en-US.js +70 -47
  196. package/src/en-ZA.d.ts +17 -11
  197. package/src/en-ZA.js +56 -41
  198. package/src/es-ES.d.ts +53 -21
  199. package/src/es-ES.js +104 -56
  200. package/src/es-MX.d.ts +53 -21
  201. package/src/es-MX.js +104 -56
  202. package/src/es-US.d.ts +53 -21
  203. package/src/es-US.js +92 -51
  204. package/src/fa-IR.d.ts +3 -5
  205. package/src/fa-IR.js +28 -13
  206. package/src/fi-FI.d.ts +3 -6
  207. package/src/fi-FI.js +47 -29
  208. package/src/fil-PH.d.ts +3 -5
  209. package/src/fil-PH.js +61 -28
  210. package/src/fr-BE.d.ts +31 -15
  211. package/src/fr-BE.js +128 -57
  212. package/src/fr-FR.d.ts +31 -16
  213. package/src/fr-FR.js +97 -60
  214. package/src/gu-IN.d.ts +3 -5
  215. package/src/gu-IN.js +31 -16
  216. package/src/ha-NG.d.ts +3 -5
  217. package/src/ha-NG.js +55 -27
  218. package/src/hbo-IL.d.ts +26 -12
  219. package/src/hbo-IL.js +92 -51
  220. package/src/he-IL.d.ts +17 -10
  221. package/src/he-IL.js +92 -50
  222. package/src/hi-IN.d.ts +3 -5
  223. package/src/hi-IN.js +30 -17
  224. package/src/hr-HR.d.ts +21 -10
  225. package/src/hr-HR.js +89 -33
  226. package/src/hu-HU.d.ts +3 -5
  227. package/src/hu-HU.js +57 -23
  228. package/src/id-ID.d.ts +3 -5
  229. package/src/id-ID.js +56 -23
  230. package/src/it-IT.d.ts +17 -11
  231. package/src/it-IT.js +74 -43
  232. package/src/ja-JP.d.ts +3 -6
  233. package/src/ja-JP.js +39 -26
  234. package/src/ka-GE.d.ts +3 -6
  235. package/src/ka-GE.js +38 -26
  236. package/src/kn-IN.d.ts +3 -5
  237. package/src/kn-IN.js +31 -16
  238. package/src/ko-KR.d.ts +3 -6
  239. package/src/ko-KR.js +34 -26
  240. package/src/lt-LT.d.ts +21 -11
  241. package/src/lt-LT.js +64 -42
  242. package/src/lv-LV.d.ts +21 -11
  243. package/src/lv-LV.js +79 -51
  244. package/src/mr-IN.d.ts +3 -5
  245. package/src/mr-IN.js +31 -16
  246. package/src/ms-MY.d.ts +3 -5
  247. package/src/ms-MY.js +58 -24
  248. package/src/nb-NO.d.ts +3 -6
  249. package/src/nb-NO.js +54 -34
  250. package/src/nl-NL.d.ts +41 -20
  251. package/src/nl-NL.js +111 -69
  252. package/src/pa-IN.d.ts +3 -5
  253. package/src/pa-IN.js +32 -16
  254. package/src/pl-PL.d.ts +21 -11
  255. package/src/pl-PL.js +69 -45
  256. package/src/pt-BR.d.ts +42 -0
  257. package/src/pt-BR.js +574 -0
  258. package/src/pt-PT.d.ts +17 -11
  259. package/src/pt-PT.js +80 -48
  260. package/src/ro-RO.d.ts +21 -11
  261. package/src/ro-RO.js +77 -39
  262. package/src/ru-RU.d.ts +35 -15
  263. package/src/ru-RU.js +100 -38
  264. package/src/sr-Cyrl-RS.d.ts +35 -15
  265. package/src/sr-Cyrl-RS.js +100 -38
  266. package/src/sr-Latn-RS.d.ts +35 -15
  267. package/src/sr-Latn-RS.js +100 -38
  268. package/src/sv-SE.d.ts +3 -6
  269. package/src/sv-SE.js +53 -34
  270. package/src/sw-KE.d.ts +3 -5
  271. package/src/sw-KE.js +50 -20
  272. package/src/ta-IN.d.ts +3 -5
  273. package/src/ta-IN.js +29 -17
  274. package/src/te-IN.d.ts +3 -5
  275. package/src/te-IN.js +31 -16
  276. package/src/th-TH.d.ts +3 -5
  277. package/src/th-TH.js +42 -19
  278. package/src/tr-TR.d.ts +17 -11
  279. package/src/tr-TR.js +63 -37
  280. package/src/uk-UA.d.ts +21 -10
  281. package/src/uk-UA.js +89 -33
  282. package/src/ur-PK.d.ts +3 -5
  283. package/src/ur-PK.js +32 -16
  284. package/src/utils/check-max.d.ts +26 -0
  285. package/src/utils/check-max.js +33 -0
  286. package/src/utils/expand-scientific.d.ts +0 -4
  287. package/src/utils/expand-scientific.js +7 -9
  288. package/src/utils/is-plain-object.d.ts +3 -4
  289. package/src/utils/is-plain-object.js +3 -4
  290. package/src/utils/parse-cardinal.d.ts +1 -2
  291. package/src/utils/parse-cardinal.js +12 -9
  292. package/src/utils/parse-currency.d.ts +1 -2
  293. package/src/utils/parse-currency.js +9 -11
  294. package/src/utils/parse-ordinal.d.ts +0 -1
  295. package/src/utils/parse-ordinal.js +9 -10
  296. package/src/utils/resolve-options.d.ts +17 -0
  297. package/src/utils/resolve-options.js +56 -0
  298. package/src/utils/scale.d.ts +49 -0
  299. package/src/utils/scale.js +65 -0
  300. package/src/vi-VN.d.ts +3 -6
  301. package/src/vi-VN.js +41 -28
  302. package/src/yo-NG.d.ts +3 -5
  303. package/src/yo-NG.js +49 -33
  304. package/src/zh-Hans-CN.d.ts +45 -20
  305. package/src/zh-Hans-CN.js +84 -31
  306. package/src/zh-Hant-TW.d.ts +45 -20
  307. package/src/zh-Hant-TW.js +85 -34
  308. package/src/utils/validate-options.d.ts +0 -8
  309. package/src/utils/validate-options.js +0 -16
package/dist/fil-PH.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/fil-PH v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function n(n){let[e,t]=n.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===e[0]&&(r="-",e=e.slice(1));const s=e.indexOf("."),a=-1===s?e:e.slice(0,s)+e.slice(s+1),o=(-1===s?e.length:s)+i;return o>=a.length?r+a+"0".repeat(o-a.length):o<=0?r+"0."+"0".repeat(-o)+a:r+a.slice(0,o)+"."+a.slice(o)}function e(e){const i=e.toString();return t(i)?n(i):i}function t(n){return n.includes("e")||n.includes("E")}function i(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const i=n.slice(0,t)||"0",r=n.slice(t+1);return{isNegative:e,integerPart:BigInt(i),decimalPart:r}}function r(e){let i=e.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid currency format: "${e}"`);t(i)&&(i=n(i));const r="-"===i[0];r&&(i=i.slice(1));const s=i.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(i),cents:0n};const a=i.slice(0,s)||"0",o=(i.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(a),cents:BigInt(o)}}const s=["","isa","dalawa","tatlo","apat","lima","anim","pito","walo","siyam"],a=["sampu","labinisa","labindalawa","labintatlo","labinapat","labinlima","labinanum","labimpito","labingwalo","labinsiyam"],o=["","","dalawampu","tatlumpu","apatnapu","limampu","animnapu","pitumpu","walumpu","siyamnapu"],u="zero",l="negatibo",c=["","libong","milyong","bilyong","trilyong"],g="piso",f="sentimo",m=["a","e","i","o","u"];function b(n){return m.includes(n[n.length-1])?n+"ng":n+" na"}function d(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,i=Math.trunc(n/100),r=[];if(i>0){const n=b(s[i]);r.push(n+" daang")}const u=n%100;return 0===u||r.push(u<10?s[e]:u<20?a[e]:0===e?o[t]:5===t?o[t]+"ng "+s[e]:o[t]+" "+s[e]),r.join(" ")}function w(n){const e=d(n);if(!e)return"";const t=e.lastIndexOf(" ");if(-1===t)return"g"===e[e.length-1]&&e.endsWith("ng")?e:b(e);const i=e.slice(0,t+1),r=e.slice(t+1);return r.endsWith("ng")?e:i+b(r)}function p(n){return 0n===n?u:n<1000n?d(Number(n)):function(n){const e=[];let t=n;for(;t>0n;)e.push(Number(t%1000n)),t/=1000n;let i="";for(let n=e.length-1;n>=0;n--){const t=e[n];if(0===t)continue;const r=c[n]||"";i&&(i+=" "),i+=0===n?d(t):w(t)+" "+r}return i}(n)}function h(r){const{isNegative:a,integerPart:o,decimalPart:c}=function(r){const s=typeof r;if("bigint"===s)return r<0n?{isNegative:!0,integerPart:-r}:{isNegative:!1,integerPart:r};if("number"===s){if(!Number.isFinite(r))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(r)?r<0?{isNegative:!0,integerPart:BigInt(-r)}:{isNegative:!1,integerPart:BigInt(r)}:i(e(r))}if("string"===s)return i(function(e){const i=e.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid number format: "${e}"`);return t(i)?n(i):i}(r));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(r);let g="";return a&&(g=l+" "),g+=p(o),c&&(g+=" punto "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?u:s[n])}return e.join(" ")}(c)),g}function N(e){const i=function(e){const i=typeof e;if("bigint"===i){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"===i){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"===i)return function(e){const i=e.trim();if(0===i.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===i[0])throw new RangeError("Ordinals cannot be negative");if(i.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(i)){const e=n(i);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(e);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const n=BigInt(i);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`)}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${i}`)}(e);return 1n===(r=i)?"una":2n===r?"ikalawa":"ika-"+p(r);var r}function v(n){const{isNegative:t,dollars:i,cents:s}=function(n){const t=typeof n;if("bigint"===t)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"===t){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:r(e(n))}if("string"===t)return r(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);let a="";if(t&&(a=l+" "),i>0n||0n===s){const n=p(i);if(0n===i)a+=n+" "+g;else{const e=n.lastIndexOf(" ");if(-1===e)a+=b(n)+" "+g;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?a+=n+" "+g:a+=t+b(i)+" "+g}}}if(s>0n){i>0n&&(a+=" at ");const n=p(s),e=n.lastIndexOf(" ");if(-1===e)a+=b(n)+" "+f;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?a+=n+" "+f:a+=t+b(i)+" "+f}}return a}export{h as toCardinal,v as toCurrency,N as toOrdinal};
1
+ /*! n2words/fil-PH v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function n(n){let[e,t]=n.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===e[0]&&(i="-",e=e.slice(1));const o=e.indexOf("."),s=-1===o?e:e.slice(0,o)+e.slice(o+1),a=(-1===o?e.length:o)+r;return a>=s.length?i+s+"0".repeat(a-s.length):a<=0?i+"0."+"0".repeat(-a)+s:i+s.slice(0,a)+"."+s.slice(a)}function e(e){const r=e.toString();return t(r)?n(r):r}function t(n){return n.includes("e")||n.includes("E")}function r(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const r=n.slice(0,t)||"0",i=n.slice(t+1);return{isNegative:e,integerPart:BigInt(r),decimalPart:i}}function i(e){let r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${e}"`);t(r)&&(r=n(r));const i="-"===r[0];i&&(r=r.slice(1));const o=r.indexOf(".");if(-1===o)return{isNegative:i,dollars:BigInt(r),cents:0n};const s=r.slice(0,o)||"0",a=(r.slice(o+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(s),cents:BigInt(a)}}function o(n,e,t){if(null===e)return;if(n<e)return;const r=e.toString().length-1,i=e===10n**BigInt(r)?`10^${r} - 1`:""+(e-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function s(n){return 10n**BigInt(3*(n+1))}const a=["","isa","dalawa","tatlo","apat","lima","anim","pito","walo","siyam"],u=["sampu","labinisa","labindalawa","labintatlo","labinapat","labinlima","labinanum","labimpito","labingwalo","labinsiyam"],l=["","","dalawampu","tatlumpu","apatnapu","limampu","animnapu","pitumpu","walumpu","siyamnapu"],c="zero",g="negatibo",f=["","libong","milyong","bilyong","trilyong"],m=s(f.length-1),p=s(f.length-1),b=s(f.length-1),d="piso",w="sentimo",h=["a","e","i","o","u"];function v(n){return h.includes(n[n.length-1])?n+"ng":n+" na"}function N(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,r=Math.trunc(n/100),i=[];if(r>0){const n=v(a[r]);i.push(n+" daang")}const o=n%100;return 0===o||i.push(o<10?a[e]:o<20?u[e]:0===e?l[t]:5===t?l[t]+"ng "+a[e]:l[t]+" "+a[e]),i.join(" ")}function y(n){const e=N(n);if(!e)return"";const t=e.lastIndexOf(" ");if(-1===t)return"g"===e[e.length-1]&&e.endsWith("ng")?e:v(e);const r=e.slice(0,t+1),i=e.slice(t+1);return i.endsWith("ng")?e:r+v(i)}function I(n){return 0n===n?c:n<1000n?N(Number(n)):function(n){const e=[];let t=n;for(;t>0n;)e.push(Number(t%1000n)),t/=1000n;let r="";for(let n=e.length-1;n>=0;n--){const t=e[n];if(0===t)continue;const i=f[n]||"";r&&(r+=" "),r+=0===n?N(t):y(t)+" "+i}return r}(n)}function E(i){const{isNegative:s,integerPart:u,decimalPart:l}=function(i){const o=typeof i;if("bigint"==typeof i)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"==typeof i){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(e(i))}if("string"==typeof i)return r(function(e){const r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${e}"`);return t(r)?n(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${o}`)}(i);o(u,m);let f="";return s&&(f=g+" "),f+=I(u),l&&(f+=" punto "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?c:a[n])}return e.join(" ")}(l)),f}function R(e){const r=function(e){const r=typeof e;if("bigint"==typeof e){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"==typeof e)return function(e){const r=e.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const e=n(r);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(e);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const n=BigInt(r);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`,{cause:n})}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);return o(r,p),1n===(i=r)?"una":2n===i?"ikalawa":"ika-"+I(i);var i}function O(n){const{isNegative:t,dollars:r,cents:s}=function(n){const t=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:i(e(n))}if("string"==typeof n)return i(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);o(r,b);let a="";if(t&&(a=g+" "),r>0n||0n===s){const n=I(r);if(0n===r)a+=n+" "+d;else{const e=n.lastIndexOf(" ");if(-1===e)a+=v(n)+" "+d;else{const t=n.slice(0,e+1),r=n.slice(e+1);r.endsWith("ng")?a+=n+" "+d:a+=t+v(r)+" "+d}}}if(s>0n){r>0n&&(a+=" at ");const n=I(s),e=n.lastIndexOf(" ");if(-1===e)a+=v(n)+" "+w;else{const t=n.slice(0,e+1),r=n.slice(e+1);r.endsWith("ng")?a+=n+" "+w:a+=t+v(r)+" "+w}}return a}export{m as cardinalMax,b as currencyMax,p as ordinalMax,E as toCardinal,O as toCurrency,R as toOrdinal};
@@ -1,2 +1,2 @@
1
- /*! n2words/fil-PH v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- var n,e;n=this,e=function(n){"use strict";function e(n){let[e,t]=n.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===e[0]&&(r="-",e=e.slice(1));const s=e.indexOf("."),o=-1===s?e:e.slice(0,s)+e.slice(s+1),a=(-1===s?e.length:s)+i;return a>=o.length?r+o+"0".repeat(a-o.length):a<=0?r+"0."+"0".repeat(-a)+o:r+o.slice(0,a)+"."+o.slice(a)}function t(n){const t=n.toString();return i(t)?e(t):t}function i(n){return n.includes("e")||n.includes("E")}function r(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const i=n.slice(0,t)||"0",r=n.slice(t+1);return{isNegative:e,integerPart:BigInt(i),decimalPart:r}}function s(n){let t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${n}"`);i(t)&&(t=e(t));const r="-"===t[0];r&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",a=(t.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(a)}}const o=["","isa","dalawa","tatlo","apat","lima","anim","pito","walo","siyam"],a=["sampu","labinisa","labindalawa","labintatlo","labinapat","labinlima","labinanum","labimpito","labingwalo","labinsiyam"],u=["","","dalawampu","tatlumpu","apatnapu","limampu","animnapu","pitumpu","walumpu","siyamnapu"],l="zero",c="negatibo",g=["","libong","milyong","bilyong","trilyong"],f="piso",d="sentimo",m=["a","e","i","o","u"];function b(n){return m.includes(n[n.length-1])?n+"ng":n+" na"}function p(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,i=Math.trunc(n/100),r=[];if(i>0){const n=b(o[i]);r.push(n+" daang")}const s=n%100;return 0===s||r.push(s<10?o[e]:s<20?a[e]:0===e?u[t]:5===t?u[t]+"ng "+o[e]:u[t]+" "+o[e]),r.join(" ")}function w(n){const e=p(n);if(!e)return"";const t=e.lastIndexOf(" ");if(-1===t)return"g"===e[e.length-1]&&e.endsWith("ng")?e:b(e);const i=e.slice(0,t+1),r=e.slice(t+1);return r.endsWith("ng")?e:i+b(r)}function h(n){return 0n===n?l:n<1000n?p(Number(n)):function(n){const e=[];let t=n;for(;t>0n;)e.push(Number(t%1000n)),t/=1000n;let i="";for(let n=e.length-1;n>=0;n--){const t=e[n];if(0===t)continue;const r=g[n]||"";i&&(i+=" "),i+=0===n?p(t):w(t)+" "+r}return i}(n)}const v={filPH:function(n){const t=function(n){const t=typeof n;if("bigint"===t){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===t){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===t)return function(n){const t=n.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const n=e(t);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(n);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const n=BigInt(t);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);return 1n===(r=t)?"una":2n===r?"ikalawa":"ika-"+h(r);var r}};n.currency={filPH:function(n){const{isNegative:e,dollars:i,cents:r}=function(n){const e=typeof n;if("bigint"===e)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"===e){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:s(t(n))}if("string"===e)return s(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${e}`)}(n);let o="";if(e&&(o=c+" "),i>0n||0n===r){const n=h(i);if(0n===i)o+=n+" "+f;else{const e=n.lastIndexOf(" ");if(-1===e)o+=b(n)+" "+f;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?o+=n+" "+f:o+=t+b(i)+" "+f}}}if(r>0n){i>0n&&(o+=" at ");const n=h(r),e=n.lastIndexOf(" ");if(-1===e)o+=b(n)+" "+d;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?o+=n+" "+d:o+=t+b(i)+" "+d}}return o}},n.filPH=function(n){const{isNegative:s,integerPart:a,decimalPart:u}=function(n){const s=typeof n;if("bigint"===s)return n<0n?{isNegative:!0,integerPart:-n}:{isNegative:!1,integerPart:n};if("number"===s){if(!Number.isFinite(n))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(n)?n<0?{isNegative:!0,integerPart:BigInt(-n)}:{isNegative:!1,integerPart:BigInt(n)}:r(t(n))}if("string"===s)return r(function(n){const t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${n}"`);return i(t)?e(t):t}(n));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(n);let g="";return s&&(g=c+" "),g+=h(a),u&&(g+=" punto "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?l:o[n])}return e.join(" ")}(u)),g},n.ordinal=v},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).n2words=n.n2words||{});
1
+ /*! n2words/fil-PH v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ var n,e;n=this,e=function(n){"use strict";function e(n){let[e,t]=n.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===e[0]&&(r="-",e=e.slice(1));const o=e.indexOf("."),s=-1===o?e:e.slice(0,o)+e.slice(o+1),a=(-1===o?e.length:o)+i;return a>=s.length?r+s+"0".repeat(a-s.length):a<=0?r+"0."+"0".repeat(-a)+s:r+s.slice(0,a)+"."+s.slice(a)}function t(n){const t=n.toString();return i(t)?e(t):t}function i(n){return n.includes("e")||n.includes("E")}function r(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const i=n.slice(0,t)||"0",r=n.slice(t+1);return{isNegative:e,integerPart:BigInt(i),decimalPart:r}}function o(n){let t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${n}"`);i(t)&&(t=e(t));const r="-"===t[0];r&&(t=t.slice(1));const o=t.indexOf(".");if(-1===o)return{isNegative:r,dollars:BigInt(t),cents:0n};const s=t.slice(0,o)||"0",a=(t.slice(o+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(s),cents:BigInt(a)}}function s(n,e,t){if(null===e)return;if(n<e)return;const i=e.toString().length-1,r=e===10n**BigInt(i)?`10^${i} - 1`:""+(e-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${r}`)}function a(n){return 10n**BigInt(3*(n+1))}const u=["","isa","dalawa","tatlo","apat","lima","anim","pito","walo","siyam"],l=["sampu","labinisa","labindalawa","labintatlo","labinapat","labinlima","labinanum","labimpito","labingwalo","labinsiyam"],c=["","","dalawampu","tatlumpu","apatnapu","limampu","animnapu","pitumpu","walumpu","siyamnapu"],f="zero",g="negatibo",d=["","libong","milyong","bilyong","trilyong"],m=a(d.length-1),p=a(d.length-1),b=a(d.length-1),w="piso",h="sentimo",v=["a","e","i","o","u"];function y(n){return v.includes(n[n.length-1])?n+"ng":n+" na"}function N(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,i=Math.trunc(n/100),r=[];if(i>0){const n=y(u[i]);r.push(n+" daang")}const o=n%100;return 0===o||r.push(o<10?u[e]:o<20?l[e]:0===e?c[t]:5===t?c[t]+"ng "+u[e]:c[t]+" "+u[e]),r.join(" ")}function I(n){const e=N(n);if(!e)return"";const t=e.lastIndexOf(" ");if(-1===t)return"g"===e[e.length-1]&&e.endsWith("ng")?e:y(e);const i=e.slice(0,t+1),r=e.slice(t+1);return r.endsWith("ng")?e:i+y(r)}function E(n){return 0n===n?f:n<1000n?N(Number(n)):function(n){const e=[];let t=n;for(;t>0n;)e.push(Number(t%1000n)),t/=1000n;let i="";for(let n=e.length-1;n>=0;n--){const t=e[n];if(0===t)continue;const r=d[n]||"";i&&(i+=" "),i+=0===n?N(t):I(t)+" "+r}return i}(n)}const R={filPH:function(n){const t=function(n){const t=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const t=n.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const n=e(t);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(n);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const n=BigInt(t);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);return s(t,p),1n===(r=t)?"una":2n===r?"ikalawa":"ika-"+E(r);var r}};n.currency={filPH:function(n){const{isNegative:e,dollars:i,cents:r}=function(n){const e=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:o(t(n))}if("string"==typeof n)return o(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${e}`)}(n);s(i,b);let a="";if(e&&(a=g+" "),i>0n||0n===r){const n=E(i);if(0n===i)a+=n+" "+w;else{const e=n.lastIndexOf(" ");if(-1===e)a+=y(n)+" "+w;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?a+=n+" "+w:a+=t+y(i)+" "+w}}}if(r>0n){i>0n&&(a+=" at ");const n=E(r),e=n.lastIndexOf(" ");if(-1===e)a+=y(n)+" "+h;else{const t=n.slice(0,e+1),i=n.slice(e+1);i.endsWith("ng")?a+=n+" "+h:a+=t+y(i)+" "+h}}return a}},n.filPH=function(n){const{isNegative:o,integerPart:a,decimalPart:l}=function(n){const o=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,integerPart:-n}:{isNegative:!1,integerPart:n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(n)?n<0?{isNegative:!0,integerPart:BigInt(-n)}:{isNegative:!1,integerPart:BigInt(n)}:r(t(n))}if("string"==typeof n)return r(function(n){const t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${n}"`);return i(t)?e(t):t}(n));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${o}`)}(n);s(a,m);let c="";return o&&(c=g+" "),c+=E(a),l&&(c+=" punto "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?f:u[n])}return e.join(" ")}(l)),c},n.ordinal=R},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).n2words=n.n2words||{});
package/dist/fr-BE.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/fr-BE v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function e(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function n(n){const i=n.toString();return t(i)?e(i):i}function t(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function r(n){let i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid currency format: "${n}"`);t(i)&&(i=e(i));const r="-"===i[0];r&&(i=i.slice(1));const s=i.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(i),cents:0n};const o=i.slice(0,s)||"0",u=(i.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function s(e){if(void 0===e)return{};if(function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))return e;throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e)}const o=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],u=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],l=["","","vingt","trente","quarante","cinquante","soixante","septante","quatre-vingt","nonante"],a=["million","billion","trillion","quadrillion"],c=["milliard","billiard","trilliard","quadrilliard"],g="mille",f="cent",d="zéro",h="moins",p="ième";function m(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(f):0===n?(i.push(o[t]+" "+f+"s"),r=!0):i.push(o[t]+" "+f)),0===n);else if(n<10)i.push(o[n]);else if(n<17)i.push(u[n-10]);else if(n<20)i.push(u[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?l[e]:1===t?l[e]+" et "+o[1]:l[e]+"-"+o[t])}else if(n<80){const e=n%10;i.push(0===e?"septante":1===e?"septante et "+o[1]:"septante-"+o[e])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<90)i.push("quatre-vingt-"+o[n-80]);else{const e=n%10;i.push(0===e?"nonante":1===e?"nonante et "+o[1]:"nonante-"+o[e])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function b(e,n){if(1===e)return g;if(e%2==0){const t=a[e/2-1];return t?n>1n?t+"s":t:""}{const t=c[(e-1)/2-1];return t?n>1n?t+"s":t:g}}function w(e,n=!1){if(0n===e)return d;if(e<1000n){const{word:t}=m(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=g;else{const{word:e,endsWithCents:i,endsWithVingts:s}=m(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+g}if(i>0){const{word:e}=m(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?b(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=m(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(g);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let a=u.join(n?"-":" ");return n&&(a=a.replace(/ /g,"-")),a}(e,n)}function v(r,o){o=s(o);const{isNegative:u,integerPart:l,decimalPart:a}=function(r){const s=typeof r;if("bigint"===s)return r<0n?{isNegative:!0,integerPart:-r}:{isNegative:!1,integerPart:r};if("number"===s){if(!Number.isFinite(r))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(r)?r<0?{isNegative:!0,integerPart:BigInt(-r)}:{isNegative:!1,integerPart:BigInt(r)}:i(n(r))}if("string"===s)return i(function(n){const i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid number format: "${n}"`);return t(i)?e(i):i}(r));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(r),{withHyphenSeparator:c=!1}=o;let g="";const f=c?"-":" ";return u&&(g=h+f),g+=w(l,c),a&&(g+=f+"virgule"+f+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=d,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=w(BigInt(s),n)),t}(a,c)),g}function N(n){return i=function(n){const i=typeof n;if("bigint"===i){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===i){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===i)return function(n){const i=n.trim();if(0===i.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===i[0])throw new RangeError("Ordinals cannot be negative");if(i.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(i)){const n=e(i);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(i);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${i}`)}(n),1n===i?"premier":(r=w(i,!1)).endsWith("cinq")?r+"u"+p:r.endsWith("neuf")?r.slice(0,-1)+"v"+p:r.endsWith("cents")||r.endsWith("vingts")||r.endsWith("millions")||r.endsWith("milliards")||r.endsWith("billions")||r.endsWith("billiards")||r.endsWith("trillions")||r.endsWith("trilliards")||r.endsWith("quadrillions")||r.endsWith("quadrilliards")||r.endsWith("e")?r.slice(0,-1)+p:r+p;var i,r}function I(e,t){t=s(t);const{isNegative:i,dollars:o,cents:u}=function(e){const t=typeof e;if("bigint"===t)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===t){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:r(n(e))}if("string"===t)return r(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e),{and:l=!0}=t;let a="";return i&&(a=h+" "),(o>0n||0n===u)&&(a+=w(o,!1),a+=" "+(o<=1n?"euro":"euros")),u>0n&&(o>0n&&(a+=l?" et ":" "),a+=w(u,!1),a+=" "+(1n===u?"centime":"centimes")),a}export{v as toCardinal,I as toCurrency,N as toOrdinal};
1
+ /*! n2words/fr-BE v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function e(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function n(n){const i=n.toString();return t(i)?e(i):i}function t(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function r(n){let i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid currency format: "${n}"`);t(i)&&(i=e(i));const r="-"===i[0];r&&(i=i.slice(1));const s=i.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(i),cents:0n};const o=i.slice(0,s)||"0",u=(i.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function s(e,n,t){if(null===n)return;if(e<n&&!(t&&BigInt(t)>=n))return;const i=n.toString().length-1,r=n===10n**BigInt(i)?`10^${i} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${r}`)}function o(e){return 10n**BigInt(6*(e+1))}function u(e,n,t){const i={...n};if(void 0===e)return i;if(!function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e);const r=Object.keys(n);for(const[t,s]of Object.entries(e)){if(!Object.hasOwn(n,t))throw new TypeError(`Unknown option "${t}" — expected one of: ${r.join(", ")}`);if(void 0!==s){if(typeof s!=typeof i[t])throw new TypeError(`Option "${t}" must be a ${typeof i[t]}, got ${typeof s}`);i[t]=s}}return i}const l=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],a=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],c=["","","vingt","trente","quarante","cinquante","soixante","septante","quatre-vingt","nonante"],f=["million","billion","trillion","quadrillion"],g=["milliard","billiard","trilliard","quadrilliard"],d=o(f.length),h=o(f.length),p=o(f.length),b="mille",m="cent",w="zéro",v="moins",y="ième";function N(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(m):0===n?(i.push(l[t]+" "+m+"s"),r=!0):i.push(l[t]+" "+m)),0===n);else if(n<10)i.push(l[n]);else if(n<17)i.push(a[n-10]);else if(n<20)i.push(a[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?c[e]:1===t?c[e]+" et "+l[1]:c[e]+"-"+l[t])}else if(n<80){const e=n%10;i.push(0===e?"septante":1===e?"septante et "+l[1]:"septante-"+l[e])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<90)i.push("quatre-vingt-"+l[n-80]);else{const e=n%10;i.push(0===e?"nonante":1===e?"nonante et "+l[1]:"nonante-"+l[e])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function I(e,n){if(1===e)return b;if(e%2==0){const t=f[e/2-1];return t?n>1n?t+"s":t:""}{const t=g[(e-1)/2-1];return t?n>1n?t+"s":t:b}}function E(e,n=!1){if(0n===e)return w;if(e<1000n){const{word:t}=N(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=b;else{const{word:e,endsWithCents:i,endsWithVingts:s}=N(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+b}if(i>0){const{word:e}=N(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?I(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=N(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(b);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let a=u.join(n?"-":" ");return n&&(a=a.replace(/ /g,"-")),a}(e,n)}const O={withHyphenSeparator:!1};function W(r,o){const{isNegative:l,integerPart:a,decimalPart:c}=function(r){const s=typeof r;if("bigint"==typeof r)return r<0n?{isNegative:!0,integerPart:-r}:{isNegative:!1,integerPart:r};if("number"==typeof r){if(!Number.isFinite(r))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(r)?r<0?{isNegative:!0,integerPart:BigInt(-r)}:{isNegative:!1,integerPart:BigInt(r)}:i(n(r))}if("string"==typeof r)return i(function(n){const i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid number format: "${n}"`);return t(i)?e(i):i}(r));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(r);s(a,d,c);const{withHyphenSeparator:f}=u(o,O);let g="";const h=f?"-":" ";return l&&(g=v+h),g+=E(a,f),c&&(g+=h+"virgule"+h+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=w,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=E(BigInt(s),n)),t}(c,f)),g}function B(n){const i=function(n){const i=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const i=n.trim();if(0===i.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===i[0])throw new RangeError("Ordinals cannot be negative");if(i.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(i)){const n=e(i);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(i);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${i}`)}(n);return s(i,h),1n===(r=i)?"premier":(o=E(r,!1)).endsWith("cinq")?o+"u"+y:o.endsWith("neuf")?o.slice(0,-1)+"v"+y:o.endsWith("cents")||o.endsWith("vingts")||o.endsWith("millions")||o.endsWith("milliards")||o.endsWith("billions")||o.endsWith("billiards")||o.endsWith("trillions")||o.endsWith("trilliards")||o.endsWith("quadrillions")||o.endsWith("quadrilliards")||o.endsWith("e")?o.slice(0,-1)+y:o+y;var r,o}const R={and:!0};function x(e,t){const{isNegative:i,dollars:o,cents:l}=function(e){const t=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:r(n(e))}if("string"==typeof e)return r(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);s(o,p);const{and:a}=u(t,R);let c="";return i&&(c=v+" "),(o>0n||0n===l)&&(c+=E(o,!1),c+=" "+(o<=1n?"euro":"euros")),l>0n&&(o>0n&&(c+=a?" et ":" "),c+=E(l,!1),c+=" "+(1n===l?"centime":"centimes")),c}export{O as cardinalDefaults,d as cardinalMax,R as currencyDefaults,p as currencyMax,h as ordinalMax,W as toCardinal,x as toCurrency,B as toOrdinal};
package/dist/fr-BE.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/fr-BE v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- var e,n;e=this,n=function(e){"use strict";function n(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function t(e){const t=e.toString();return i(t)?n(t):t}function i(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function s(e){let t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${e}"`);i(t)&&(t=n(t));const r="-"===t[0];r&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",u=(t.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function o(e){if(void 0===e)return{};if(function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))return e;throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e)}const u=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],l=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],a=["","","vingt","trente","quarante","cinquante","soixante","septante","quatre-vingt","nonante"],c=["million","billion","trillion","quadrillion"],f=["milliard","billiard","trilliard","quadrilliard"],d="mille",g="cent",h="zéro",p="moins",m="ième";function b(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(g):0===n?(i.push(u[t]+" "+g+"s"),r=!0):i.push(u[t]+" "+g)),0===n);else if(n<10)i.push(u[n]);else if(n<17)i.push(l[n-10]);else if(n<20)i.push(l[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?a[e]:1===t?a[e]+" et "+u[1]:a[e]+"-"+u[t])}else if(n<80){const e=n%10;i.push(0===e?"septante":1===e?"septante et "+u[1]:"septante-"+u[e])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<90)i.push("quatre-vingt-"+u[n-80]);else{const e=n%10;i.push(0===e?"nonante":1===e?"nonante et "+u[1]:"nonante-"+u[e])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function w(e,n){if(1===e)return d;if(e%2==0){const t=c[e/2-1];return t?n>1n?t+"s":t:""}{const t=f[(e-1)/2-1];return t?n>1n?t+"s":t:d}}function v(e,n=!1){if(0n===e)return h;if(e<1000n){const{word:t}=b(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=d;else{const{word:e,endsWithCents:i,endsWithVingts:s}=b(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+d}if(i>0){const{word:e}=b(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?w(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=b(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(d);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let a=u.join(n?"-":" ");return n&&(a=a.replace(/ /g,"-")),a}(e,n)}const N={frBE:function(e){return t=function(e){const t=typeof e;if("bigint"===t){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"===t){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"===t)return function(e){const t=e.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const e=n(t);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(e);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`)}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e),1n===t?"premier":(r=v(t,!1)).endsWith("cinq")?r+"u"+m:r.endsWith("neuf")?r.slice(0,-1)+"v"+m:r.endsWith("cents")||r.endsWith("vingts")||r.endsWith("millions")||r.endsWith("milliards")||r.endsWith("billions")||r.endsWith("billiards")||r.endsWith("trillions")||r.endsWith("trilliards")||r.endsWith("quadrillions")||r.endsWith("quadrilliards")||r.endsWith("e")?r.slice(0,-1)+m:r+m;var t,r}};e.currency={frBE:function(e,n){n=o(n);const{isNegative:i,dollars:r,cents:u}=function(e){const n=typeof e;if("bigint"===n)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===n){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:s(t(e))}if("string"===n)return s(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e),{and:l=!0}=n;let a="";return i&&(a=p+" "),(r>0n||0n===u)&&(a+=v(r,!1),a+=" "+(r<=1n?"euro":"euros")),u>0n&&(r>0n&&(a+=l?" et ":" "),a+=v(u,!1),a+=" "+(1n===u?"centime":"centimes")),a}},e.frBE=function(e,s){s=o(s);const{isNegative:u,integerPart:l,decimalPart:a}=function(e){const s=typeof e;if("bigint"===s)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"===s){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:r(t(e))}if("string"===s)return r(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${e}"`);return i(t)?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(e),{withHyphenSeparator:c=!1}=s;let f="";const d=c?"-":" ";return u&&(f=p+d),f+=v(l,c),a&&(f+=d+"virgule"+d+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=h,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=v(BigInt(s),n)),t}(a,c)),f},e.ordinal=N},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
1
+ /*! n2words/fr-BE v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ var e,n;e=this,n=function(e){"use strict";function n(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function t(e){const t=e.toString();return i(t)?n(t):t}function i(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function s(e){let t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${e}"`);i(t)&&(t=n(t));const r="-"===t[0];r&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",u=(t.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function o(e,n,t){if(null===n)return;if(e<n&&!(t&&BigInt(t)>=n))return;const i=n.toString().length-1,r=n===10n**BigInt(i)?`10^${i} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${r}`)}function u(e){return 10n**BigInt(6*(e+1))}function l(e,n,t){const i={...n};if(void 0===e)return i;if(!function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e);const r=Object.keys(n);for(const[t,s]of Object.entries(e)){if(!Object.hasOwn(n,t))throw new TypeError(`Unknown option "${t}" — expected one of: ${r.join(", ")}`);if(void 0!==s){if(typeof s!=typeof i[t])throw new TypeError(`Option "${t}" must be a ${typeof i[t]}, got ${typeof s}`);i[t]=s}}return i}const a=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],c=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],f=["","","vingt","trente","quarante","cinquante","soixante","septante","quatre-vingt","nonante"],g=["million","billion","trillion","quadrillion"],d=["milliard","billiard","trilliard","quadrilliard"],h=u(g.length),p=u(g.length),b=u(g.length),m="mille",w="cent",v="zéro",y="moins",N="ième";function I(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(w):0===n?(i.push(a[t]+" "+w+"s"),r=!0):i.push(a[t]+" "+w)),0===n);else if(n<10)i.push(a[n]);else if(n<17)i.push(c[n-10]);else if(n<20)i.push(c[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?f[e]:1===t?f[e]+" et "+a[1]:f[e]+"-"+a[t])}else if(n<80){const e=n%10;i.push(0===e?"septante":1===e?"septante et "+a[1]:"septante-"+a[e])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<90)i.push("quatre-vingt-"+a[n-80]);else{const e=n%10;i.push(0===e?"nonante":1===e?"nonante et "+a[1]:"nonante-"+a[e])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function E(e,n){if(1===e)return m;if(e%2==0){const t=g[e/2-1];return t?n>1n?t+"s":t:""}{const t=d[(e-1)/2-1];return t?n>1n?t+"s":t:m}}function O(e,n=!1){if(0n===e)return v;if(e<1000n){const{word:t}=I(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=m;else{const{word:e,endsWithCents:i,endsWithVingts:s}=I(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+m}if(i>0){const{word:e}=I(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?E(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=I(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(m);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let a=u.join(n?"-":" ");return n&&(a=a.replace(/ /g,"-")),a}(e,n)}const W={withHyphenSeparator:!1},B={and:!0},x={frBE:function(e){const t=function(e){const t=typeof e;if("bigint"==typeof e){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"==typeof e)return function(e){const t=e.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const e=n(t);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(e);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`,{cause:n})}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);return o(t,p),1n===(r=t)?"premier":(s=O(r,!1)).endsWith("cinq")?s+"u"+N:s.endsWith("neuf")?s.slice(0,-1)+"v"+N:s.endsWith("cents")||s.endsWith("vingts")||s.endsWith("millions")||s.endsWith("milliards")||s.endsWith("billions")||s.endsWith("billiards")||s.endsWith("trillions")||s.endsWith("trilliards")||s.endsWith("quadrillions")||s.endsWith("quadrilliards")||s.endsWith("e")?s.slice(0,-1)+N:s+N;var r,s}};e.currency={frBE:function(e,n){const{isNegative:i,dollars:r,cents:u}=function(e){const n=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:s(t(e))}if("string"==typeof e)return s(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e);o(r,b);const{and:a}=l(n,B);let c="";return i&&(c=y+" "),(r>0n||0n===u)&&(c+=O(r,!1),c+=" "+(r<=1n?"euro":"euros")),u>0n&&(r>0n&&(c+=a?" et ":" "),c+=O(u,!1),c+=" "+(1n===u?"centime":"centimes")),c}},e.frBE=function(e,s){const{isNegative:u,integerPart:a,decimalPart:c}=function(e){const s=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:r(t(e))}if("string"==typeof e)return r(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${e}"`);return i(t)?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(e);o(a,h,c);const{withHyphenSeparator:f}=l(s,W);let g="";const d=f?"-":" ";return u&&(g=y+d),g+=O(a,f),c&&(g+=d+"virgule"+d+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=v,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=O(BigInt(s),n)),t}(c,f)),g},e.ordinal=x},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
package/dist/fr-FR.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/fr-FR v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function e(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function n(n){const i=n.toString();return t(i)?e(i):i}function t(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function r(n){let i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid currency format: "${n}"`);t(i)&&(i=e(i));const r="-"===i[0];r&&(i=i.slice(1));const s=i.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(i),cents:0n};const o=i.slice(0,s)||"0",u=(i.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function s(e){if(void 0===e)return{};if(function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))return e;throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e)}const o=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],u=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],l=["","","vingt","trente","quarante","cinquante","soixante"],a=["million","billion","trillion","quadrillion"],c=["milliard","billiard","trilliard","quadrilliard"],g="mille",f="cent",d="zéro",h="moins",p="ième";function m(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(f):0===n?(i.push(o[t]+" "+f+"s"),r=!0):i.push(o[t]+" "+f)),0===n);else if(n<10)i.push(o[n]);else if(n<17)i.push(u[n-10]);else if(n<20)i.push(u[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?l[e]:1===t?l[e]+" et "+o[1]:l[e]+"-"+o[t])}else if(n<80){const e=n-60;i.push(11===e?"soixante et onze":"soixante-"+u[e-10])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<100){const e=n-80;i.push(e<10?"quatre-vingt-"+o[e]:"quatre-vingt-"+u[e-10])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function b(e,n){if(1===e)return g;if(e%2==0){const t=a[e/2-1];return t?n>1n?t+"s":t:""}{const t=c[(e-1)/2-1];return t?n>1n?t+"s":t:g}}function w(e,n=!1){if(0n===e)return d;if(e<1000n){const{word:t}=m(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=g;else{const{word:e,endsWithCents:i,endsWithVingts:s}=m(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+g}if(i>0){const{word:e}=m(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?b(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=m(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(g);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let a=u.join(n?"-":" ");return n&&(a=a.replace(/ /g,"-")),a}(e,n)}function v(r,o){o=s(o);const{isNegative:u,integerPart:l,decimalPart:a}=function(r){const s=typeof r;if("bigint"===s)return r<0n?{isNegative:!0,integerPart:-r}:{isNegative:!1,integerPart:r};if("number"===s){if(!Number.isFinite(r))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(r)?r<0?{isNegative:!0,integerPart:BigInt(-r)}:{isNegative:!1,integerPart:BigInt(r)}:i(n(r))}if("string"===s)return i(function(n){const i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid number format: "${n}"`);return t(i)?e(i):i}(r));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(r),{withHyphenSeparator:c=!1}=o;let g="";const f=c?"-":" ";return u&&(g=h+f),g+=w(l,c),a&&(g+=f+"virgule"+f+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=d,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=w(BigInt(s),n)),t}(a,c)),g}function N(n){return i=function(n){const i=typeof n;if("bigint"===i){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===i){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===i)return function(n){const i=n.trim();if(0===i.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===i[0])throw new RangeError("Ordinals cannot be negative");if(i.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(i)){const n=e(i);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(i);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${i}`)}(n),1n===i?"premier":(r=w(i,!1)).endsWith("cinq")?r+"u"+p:r.endsWith("neuf")?r.slice(0,-1)+"v"+p:r.endsWith("cents")||r.endsWith("vingts")||r.endsWith("millions")||r.endsWith("milliards")||r.endsWith("billions")||r.endsWith("billiards")||r.endsWith("trillions")||r.endsWith("trilliards")||r.endsWith("quadrillions")||r.endsWith("quadrilliards")||r.endsWith("e")?r.slice(0,-1)+p:r+p;var i,r}function I(e,t){t=s(t);const{isNegative:i,dollars:o,cents:u}=function(e){const t=typeof e;if("bigint"===t)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===t){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:r(n(e))}if("string"===t)return r(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e),{and:l=!0}=t;let a="";return i&&(a=h+" "),(o>0n||0n===u)&&(a+=w(o,!1),a+=" "+(o<=1n?"euro":"euros")),u>0n&&(o>0n&&(a+=l?" et ":" "),a+=w(u,!1),a+=" "+(1n===u?"centime":"centimes")),a}export{v as toCardinal,I as toCurrency,N as toOrdinal};
1
+ /*! n2words/fr-FR v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function e(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function n(n){const i=n.toString();return t(i)?e(i):i}function t(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function r(n){let i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid currency format: "${n}"`);t(i)&&(i=e(i));const r="-"===i[0];r&&(i=i.slice(1));const s=i.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(i),cents:0n};const o=i.slice(0,s)||"0",u=(i.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function s(e,n,t){if(null===n)return;if(e<n&&!(t&&BigInt(t)>=n))return;const i=n.toString().length-1,r=n===10n**BigInt(i)?`10^${i} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${r}`)}function o(e){return 10n**BigInt(6*(e+1))}function u(e,n,t){const i={...n};if(void 0===e)return i;if(!function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e);const r=Object.keys(n);for(const[t,s]of Object.entries(e)){if(!Object.hasOwn(n,t))throw new TypeError(`Unknown option "${t}" — expected one of: ${r.join(", ")}`);if(void 0!==s){if(typeof s!=typeof i[t])throw new TypeError(`Option "${t}" must be a ${typeof i[t]}, got ${typeof s}`);i[t]=s}}return i}const l=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],c=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],a=["","","vingt","trente","quarante","cinquante","soixante"],f=["million","billion","trillion","quadrillion"],g=["milliard","billiard","trilliard","quadrilliard"],d=o(f.length),h=o(f.length),p=o(f.length),b="mille",m="cent",w="zéro",v="moins",y="ième";function N(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(m):0===n?(i.push(l[t]+" "+m+"s"),r=!0):i.push(l[t]+" "+m)),0===n);else if(n<10)i.push(l[n]);else if(n<17)i.push(c[n-10]);else if(n<20)i.push(c[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?a[e]:1===t?a[e]+" et "+l[1]:a[e]+"-"+l[t])}else if(n<80){const e=n-60;i.push(11===e?"soixante et onze":"soixante-"+c[e-10])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<100){const e=n-80;i.push(e<10?"quatre-vingt-"+l[e]:"quatre-vingt-"+c[e-10])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function I(e,n){if(1===e)return b;if(e%2==0){const t=f[e/2-1];return t?n>1n?t+"s":t:""}{const t=g[(e-1)/2-1];return t?n>1n?t+"s":t:b}}function E(e,n=!1){if(0n===e)return w;if(e<1000n){const{word:t}=N(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=b;else{const{word:e,endsWithCents:i,endsWithVingts:s}=N(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+b}if(i>0){const{word:e}=N(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?I(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=N(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(b);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let c=u.join(n?"-":" ");return n&&(c=c.replace(/ /g,"-")),c}(e,n)}const O={withHyphenSeparator:!1};function W(r,o){const{isNegative:l,integerPart:c,decimalPart:a}=function(r){const s=typeof r;if("bigint"==typeof r)return r<0n?{isNegative:!0,integerPart:-r}:{isNegative:!1,integerPart:r};if("number"==typeof r){if(!Number.isFinite(r))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(r)?r<0?{isNegative:!0,integerPart:BigInt(-r)}:{isNegative:!1,integerPart:BigInt(r)}:i(n(r))}if("string"==typeof r)return i(function(n){const i=n.trim();if(0===i.length||Number.isNaN(Number(i)))throw new RangeError(`Invalid number format: "${n}"`);return t(i)?e(i):i}(r));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(r);s(c,d,a);const{withHyphenSeparator:f}=u(o,O);let g="";const h=f?"-":" ";return l&&(g=v+h),g+=E(c,f),a&&(g+=h+"virgule"+h+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=w,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=E(BigInt(s),n)),t}(a,f)),g}function x(n){const i=function(n){const i=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const i=n.trim();if(0===i.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===i[0])throw new RangeError("Ordinals cannot be negative");if(i.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(i)){const n=e(i);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(i);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${i}`)}(n);return s(i,h),1n===(r=i)?"premier":(o=E(r,!1)).endsWith("cinq")?o+"u"+y:o.endsWith("neuf")?o.slice(0,-1)+"v"+y:o.endsWith("cents")||o.endsWith("vingts")||o.endsWith("millions")||o.endsWith("milliards")||o.endsWith("billions")||o.endsWith("billiards")||o.endsWith("trillions")||o.endsWith("trilliards")||o.endsWith("quadrillions")||o.endsWith("quadrilliards")||o.endsWith("e")?o.slice(0,-1)+y:o+y;var r,o}const B={and:!0};function R(e,t){const{isNegative:i,dollars:o,cents:l}=function(e){const t=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:r(n(e))}if("string"==typeof e)return r(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);s(o,p);const{and:c}=u(t,B);let a="";return i&&(a=v+" "),(o>0n||0n===l)&&(a+=E(o,!1),a+=" "+(o<=1n?"euro":"euros")),l>0n&&(o>0n&&(a+=c?" et ":" "),a+=E(l,!1),a+=" "+(1n===l?"centime":"centimes")),a}export{O as cardinalDefaults,d as cardinalMax,B as currencyDefaults,p as currencyMax,h as ordinalMax,W as toCardinal,R as toCurrency,x as toOrdinal};
package/dist/fr-FR.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/fr-FR v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- var e,n;e=this,n=function(e){"use strict";function n(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function t(e){const t=e.toString();return i(t)?n(t):t}function i(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function s(e){let t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${e}"`);i(t)&&(t=n(t));const r="-"===t[0];r&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",u=(t.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function o(e){if(void 0===e)return{};if(function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))return e;throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e)}const u=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],l=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],c=["","","vingt","trente","quarante","cinquante","soixante"],a=["million","billion","trillion","quadrillion"],f=["milliard","billiard","trilliard","quadrilliard"],d="mille",g="cent",h="zéro",p="moins",m="ième";function b(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(g):0===n?(i.push(u[t]+" "+g+"s"),r=!0):i.push(u[t]+" "+g)),0===n);else if(n<10)i.push(u[n]);else if(n<17)i.push(l[n-10]);else if(n<20)i.push(l[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?c[e]:1===t?c[e]+" et "+u[1]:c[e]+"-"+u[t])}else if(n<80){const e=n-60;i.push(11===e?"soixante et onze":"soixante-"+l[e-10])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<100){const e=n-80;i.push(e<10?"quatre-vingt-"+u[e]:"quatre-vingt-"+l[e-10])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function w(e,n){if(1===e)return d;if(e%2==0){const t=a[e/2-1];return t?n>1n?t+"s":t:""}{const t=f[(e-1)/2-1];return t?n>1n?t+"s":t:d}}function v(e,n=!1){if(0n===e)return h;if(e<1000n){const{word:t}=b(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=d;else{const{word:e,endsWithCents:i,endsWithVingts:s}=b(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+d}if(i>0){const{word:e}=b(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?w(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=b(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(d);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let c=u.join(n?"-":" ");return n&&(c=c.replace(/ /g,"-")),c}(e,n)}const N={frFR:function(e){return t=function(e){const t=typeof e;if("bigint"===t){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"===t){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"===t)return function(e){const t=e.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const e=n(t);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(e);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`)}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e),1n===t?"premier":(r=v(t,!1)).endsWith("cinq")?r+"u"+m:r.endsWith("neuf")?r.slice(0,-1)+"v"+m:r.endsWith("cents")||r.endsWith("vingts")||r.endsWith("millions")||r.endsWith("milliards")||r.endsWith("billions")||r.endsWith("billiards")||r.endsWith("trillions")||r.endsWith("trilliards")||r.endsWith("quadrillions")||r.endsWith("quadrilliards")||r.endsWith("e")?r.slice(0,-1)+m:r+m;var t,r}};e.currency={frFR:function(e,n){n=o(n);const{isNegative:i,dollars:r,cents:u}=function(e){const n=typeof e;if("bigint"===n)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===n){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:s(t(e))}if("string"===n)return s(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e),{and:l=!0}=n;let c="";return i&&(c=p+" "),(r>0n||0n===u)&&(c+=v(r,!1),c+=" "+(r<=1n?"euro":"euros")),u>0n&&(r>0n&&(c+=l?" et ":" "),c+=v(u,!1),c+=" "+(1n===u?"centime":"centimes")),c}},e.frFR=function(e,s){s=o(s);const{isNegative:u,integerPart:l,decimalPart:c}=function(e){const s=typeof e;if("bigint"===s)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"===s){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:r(t(e))}if("string"===s)return r(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${e}"`);return i(t)?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(e),{withHyphenSeparator:a=!1}=s;let f="";const d=a?"-":" ";return u&&(f=p+d),f+=v(l,a),c&&(f+=d+"virgule"+d+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=h,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=v(BigInt(s),n)),t}(c,a)),f},e.ordinal=N},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
1
+ /*! n2words/fr-FR v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ var e,n;e=this,n=function(e){"use strict";function n(e){let[n,t]=e.toLowerCase().split("e");const i=parseInt(t,10);let r="";"-"===n[0]&&(r="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+i;return u>=o.length?r+o+"0".repeat(u-o.length):u<=0?r+"0."+"0".repeat(-u)+o:r+o.slice(0,u)+"."+o.slice(u)}function t(e){const t=e.toString();return i(t)?n(t):t}function i(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const i=e.slice(0,t)||"0",r=e.slice(t+1);return{isNegative:n,integerPart:BigInt(i),decimalPart:r}}function s(e){let t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${e}"`);i(t)&&(t=n(t));const r="-"===t[0];r&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:r,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",u=(t.slice(s+1)+"00").slice(0,2);return{isNegative:r,dollars:BigInt(o),cents:BigInt(u)}}function o(e,n,t){if(null===n)return;if(e<n&&!(t&&BigInt(t)>=n))return;const i=n.toString().length-1,r=n===10n**BigInt(i)?`10^${i} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${r}`)}function u(e){return 10n**BigInt(6*(e+1))}function l(e,n,t){const i={...n};if(void 0===e)return i;if(!function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e);const r=Object.keys(n);for(const[t,s]of Object.entries(e)){if(!Object.hasOwn(n,t))throw new TypeError(`Unknown option "${t}" — expected one of: ${r.join(", ")}`);if(void 0!==s){if(typeof s!=typeof i[t])throw new TypeError(`Option "${t}" must be a ${typeof i[t]}, got ${typeof s}`);i[t]=s}}return i}const c=["","un","deux","trois","quatre","cinq","six","sept","huit","neuf"],a=["dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf"],f=["","","vingt","trente","quarante","cinquante","soixante"],g=["million","billion","trillion","quadrillion"],d=["milliard","billiard","trilliard","quadrilliard"],h=u(g.length),p=u(g.length),b=u(g.length),m="mille",w="cent",v="zéro",y="moins",N="ième";function I(e){if(0===e)return{word:"",endsWithCents:!1,endsWithVingts:!1};const n=e%100,t=Math.trunc(e/100),i=[];let r=!1,s=!1;if(t>0&&(1===t?i.push(w):0===n?(i.push(c[t]+" "+w+"s"),r=!0):i.push(c[t]+" "+w)),0===n);else if(n<10)i.push(c[n]);else if(n<17)i.push(a[n-10]);else if(n<20)i.push(a[n-10]);else if(n<70){const e=Math.trunc(n/10),t=n%10;i.push(0===t?f[e]:1===t?f[e]+" et "+c[1]:f[e]+"-"+c[t])}else if(n<80){const e=n-60;i.push(11===e?"soixante et onze":"soixante-"+a[e-10])}else if(80===n)i.push("quatre-vingts"),s=!0;else if(n<100){const e=n-80;i.push(e<10?"quatre-vingt-"+c[e]:"quatre-vingt-"+a[e-10])}return{word:i.join(" "),endsWithCents:r,endsWithVingts:s}}function E(e,n){if(1===e)return m;if(e%2==0){const t=g[e/2-1];return t?n>1n?t+"s":t:""}{const t=d[(e-1)/2-1];return t?n>1n?t+"s":t:m}}function O(e,n=!1){if(0n===e)return v;if(e<1000n){const{word:t}=I(Number(e));return n?t.replace(/ /g,"-"):t}if(e<1000000n){const t=Number(e/1000n),i=Number(e%1000n);let r;if(1===t)r=m;else{const{word:e,endsWithCents:i,endsWithVingts:s}=I(t);let o=e;(i||s)&&(o=e.slice(0,-1)),r=o+(n?"-":" ")+m}if(i>0){const{word:e}=I(i);r+=(n?"-":" ")+e}return n&&(r=r.replace(/ /g,"-")),r}return function(e,n){const t=e.toString(),i=t.length,r=[],s=i%3;let o=0;for(s>0&&(r.push(Number(t.slice(0,s))),o=s);o<i;)r.push(Number(t.slice(o,o+3))),o+=3;const u=[];let l=r.length-1;for(let e=0;e<r.length;e++){const n=r[e];if(0!==n){const e=l>0?E(l,BigInt(n)):"",{word:t,endsWithCents:i,endsWithVingts:r}=I(n);if(0===l)u.push(t);else if(1===l)if(1===n)u.push(m);else{let n=t;(i||r)&&(n=t.slice(0,-1)),u.push(n),u.push(e)}else u.push(t),u.push(e)}l--}let c=u.join(n?"-":" ");return n&&(c=c.replace(/ /g,"-")),c}(e,n)}const W={withHyphenSeparator:!1},x={and:!0},R={frFR:function(e){const t=function(e){const t=typeof e;if("bigint"==typeof e){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"==typeof e)return function(e){const t=e.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(i(t)){const e=n(t);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const i=BigInt(e);if(i<=0n)throw new RangeError("Ordinals must be positive integers");return i}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`,{cause:n})}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);return o(t,p),1n===(r=t)?"premier":(s=O(r,!1)).endsWith("cinq")?s+"u"+N:s.endsWith("neuf")?s.slice(0,-1)+"v"+N:s.endsWith("cents")||s.endsWith("vingts")||s.endsWith("millions")||s.endsWith("milliards")||s.endsWith("billions")||s.endsWith("billiards")||s.endsWith("trillions")||s.endsWith("trilliards")||s.endsWith("quadrillions")||s.endsWith("quadrilliards")||s.endsWith("e")?s.slice(0,-1)+N:s+N;var r,s}};e.currency={frFR:function(e,n){const{isNegative:i,dollars:r,cents:u}=function(e){const n=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:s(t(e))}if("string"==typeof e)return s(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e);o(r,b);const{and:c}=l(n,x);let a="";return i&&(a=y+" "),(r>0n||0n===u)&&(a+=O(r,!1),a+=" "+(r<=1n?"euro":"euros")),u>0n&&(r>0n&&(a+=c?" et ":" "),a+=O(u,!1),a+=" "+(1n===u?"centime":"centimes")),a}},e.frFR=function(e,s){const{isNegative:u,integerPart:c,decimalPart:a}=function(e){const s=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:r(t(e))}if("string"==typeof e)return r(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${e}"`);return i(t)?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(e);o(c,h,a);const{withHyphenSeparator:f}=l(s,W);let g="";const d=f?"-":" ";return u&&(g=y+d),g+=O(c,f),a&&(g+=d+"virgule"+d+function(e,n){let t="";const i=n?"-":" ";let r=0;for(;r<e.length&&"0"===e[r];)t&&(t+=i),t+=v,r++;const s=e.slice(r);return s&&(t&&(t+=i),t+=O(BigInt(s),n)),t}(a,f)),g},e.ordinal=R},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
package/dist/gu-IN.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/gu-IN v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function e(e){let[n,r]=e.toLowerCase().split("e");const t=parseInt(r,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+t;return u>=o.length?i+o+"0".repeat(u-o.length):u<=0?i+"0."+"0".repeat(-u)+o:i+o.slice(0,u)+"."+o.slice(u)}function n(n){const t=n.toString();return r(t)?e(t):t}function r(e){return e.includes("e")||e.includes("E")}function t(e){const n="-"===e[0];n&&(e=e.slice(1));const r=e.indexOf(".");if(-1===r)return{isNegative:n,integerPart:BigInt(e)};const t=e.slice(0,r)||"0",i=e.slice(r+1);return{isNegative:n,integerPart:BigInt(t),decimalPart:i}}function i(n){let t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${n}"`);r(t)&&(t=e(t));const i="-"===t[0];i&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",u=(t.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(o),cents:BigInt(u)}}const s="શૂન્ય",o=["","પહેલું","બીજું","ત્રીજું","ચોથું","પાંચમું","છઠ્ઠું"],u=["શૂન્ય","એક","બે","ત્રણ","ચાર","પાંચ","છ","સાત","આઠ","નવ","દસ","અગિયાર","બાર","તેર","ચૌદ","પંદર","સોળ","સત્તર","અઢાર","ઓગણીસ","વીસ","એકવીસ","બાવીસ","ત્રેવીસ","ચોવીસ","પચીસ","છવ્વીસ","સત્તાવીસ","અઠ્ઠાવીસ","ઓગણત્રીસ","ત્રીસ","એકત્રીસ","બત્રીસ","તેત્રીસ","ચોત્રીસ","પાંત્રીસ","છત્રીસ","સાડત્રીસ","અડત્રીસ","ઓગણચાલીસ","ચાલીસ","એકતાલીસ","બેતાળીસ","ત્રેતાળીસ","ચુંમાલીસ","પિસ્તાલીસ","છેતાળીસ","સુડતાળીસ","અડતાળીસ","ઓગણપચાસ","પચાસ","એકાવન","બાવન","ત્રેપન","ચોપન","પંચાવન","છપ્પન","સત્તાવન","અઠ્ઠાવન","ઓગણસાઠ","સાઠ","એકસઠ","બાસઠ","ત્રેસઠ","ચોસઠ","પાંસઠ","છાસઠ","સડસઠ","અડસઠ","અગણોસિત્તેર","સિત્તેર","એકોતેર","બોતેર","તોતેર","ચુમોતેર","પંચોતેર","છોતેર","સિત્યોતેર","ઇઠ્યોતેર","ઓગણાએંસી","એંસી","એક્યાસી","બ્યાસી","ત્યાસી","ચોર્યાસી","પંચાસી","છ્યાસી","સિત્યાસી","અઠ્યાસી","નેવ્યાસી","નેવું","એકાણું","બાણું","ત્રાણું","ચોરાણું","પંચાણું","છન્નું","સત્તાણું","અઠ્ઠાણું","નવ્વાણું"],a=["","હજાર","લાખ","કરોડ","અબજ","ખરબ","નીલ","પદ્મ","શંખ"];function c(e){if(0===e)return"";if(e<100)return u[e];const n=Math.trunc(e/100),r=e%100;return 0===r?u[n]+" સો":u[n]+" સો "+u[r]}function g(e){if(0n===e)return s;if(e<1000n)return c(Number(e));const n=[];n.push(Number(e%1000n));let r=e/1000n;for(;r>0n;)n.push(Number(r%100n)),r/=100n;const t=[];for(let e=n.length-1;e>=0;e--){const r=n[e];0!==r&&(t.push(0===e?c(r):u[r]),e>0&&a[e]&&t.push(a[e]))}return t.join(" ")}function l(i){const{isNegative:o,integerPart:a,decimalPart:c}=function(i){const s=typeof i;if("bigint"===s)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"===s){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:t(n(i))}if("string"===s)return t(function(n){const t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${n}"`);return r(t)?e(t):t}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(i);let l="";return o&&(l="ઋણ "),l+=g(a),c&&(l+=" દશાંશ "+function(e){const n=[];for(const r of e){const e=parseInt(r,10);n.push(0===e?s:u[e])}return n.join(" ")}(c)),l}function f(n){const t=function(n){const t=typeof n;if("bigint"===t){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===t){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===t)return function(n){const t=n.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(r(t)){const n=e(t);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const r=BigInt(n);if(r<=0n)throw new RangeError("Ordinals must be positive integers");return r}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);return(i=t)>=1n&&i<=6n?o[Number(i)]:g(i)+"મું";var i}function m(e){const{isNegative:r,dollars:t,cents:s}=function(e){const r=typeof e;if("bigint"===r)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===r){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:i(n(e))}if("string"===r)return i(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);let o="";return r&&(o="ઋણ "),(t>0n||0n===s)&&(o+=g(t),o+=" "+(1n===t?"રૂપિયો":"રૂપિયા")),s>0n&&(t>0n&&(o+=" "),o+=g(s),o+=" "+(1n===s?"પૈસો":"પૈસા")),o}export{l as toCardinal,m as toCurrency,f as toOrdinal};
1
+ /*! n2words/gu-IN v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function e(e){let[n,t]=e.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const o=n.indexOf("."),s=-1===o?n:n.slice(0,o)+n.slice(o+1),u=(-1===o?n.length:o)+r;return u>=s.length?i+s+"0".repeat(u-s.length):u<=0?i+"0."+"0".repeat(-u)+s:i+s.slice(0,u)+"."+s.slice(u)}function n(n){const r=n.toString();return t(r)?e(r):r}function t(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const r=e.slice(0,t)||"0",i=e.slice(t+1);return{isNegative:n,integerPart:BigInt(r),decimalPart:i}}function i(n){let r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${n}"`);t(r)&&(r=e(r));const i="-"===r[0];i&&(r=r.slice(1));const o=r.indexOf(".");if(-1===o)return{isNegative:i,dollars:BigInt(r),cents:0n};const s=r.slice(0,o)||"0",u=(r.slice(o+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(s),cents:BigInt(u)}}function o(e,n,t){if(null===n)return;if(e<n)return;const r=n.toString().length-1,i=n===10n**BigInt(r)?`10^${r} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function s(e){return 10n**BigInt(3+2*(e-1))}const u="શૂન્ય",a=["","પહેલું","બીજું","ત્રીજું","ચોથું","પાંચમું","છઠ્ઠું"],c=["શૂન્ય","એક","બે","ત્રણ","ચાર","પાંચ","છ","સાત","આઠ","નવ","દસ","અગિયાર","બાર","તેર","ચૌદ","પંદર","સોળ","સત્તર","અઢાર","ઓગણીસ","વીસ","એકવીસ","બાવીસ","ત્રેવીસ","ચોવીસ","પચીસ","છવ્વીસ","સત્તાવીસ","અઠ્ઠાવીસ","ઓગણત્રીસ","ત્રીસ","એકત્રીસ","બત્રીસ","તેત્રીસ","ચોત્રીસ","પાંત્રીસ","છત્રીસ","સાડત્રીસ","અડત્રીસ","ઓગણચાલીસ","ચાલીસ","એકતાલીસ","બેતાળીસ","ત્રેતાળીસ","ચુંમાલીસ","પિસ્તાલીસ","છેતાળીસ","સુડતાળીસ","અડતાળીસ","ઓગણપચાસ","પચાસ","એકાવન","બાવન","ત્રેપન","ચોપન","પંચાવન","છપ્પન","સત્તાવન","અઠ્ઠાવન","ઓગણસાઠ","સાઠ","એકસઠ","બાસઠ","ત્રેસઠ","ચોસઠ","પાંસઠ","છાસઠ","સડસઠ","અડસઠ","અગણોસિત્તેર","સિત્તેર","એકોતેર","બોતેર","તોતેર","ચુમોતેર","પંચોતેર","છોતેર","સિત્યોતેર","ઇઠ્યોતેર","ઓગણાએંસી","એંસી","એક્યાસી","બ્યાસી","ત્યાસી","ચોર્યાસી","પંચાસી","છ્યાસી","સિત્યાસી","અઠ્યાસી","નેવ્યાસી","નેવું","એકાણું","બાણું","ત્રાણું","ચોરાણું","પંચાણું","છન્નું","સત્તાણું","અઠ્ઠાણું","નવ્વાણું"],g=["","હજાર","લાખ","કરોડ","અબજ","ખરબ","નીલ","પદ્મ","શંખ"],f=s(g.length),l=s(g.length),m=s(g.length);function b(e){if(0===e)return"";if(e<100)return c[e];const n=Math.trunc(e/100),t=e%100;return 0===t?c[n]+" સો":c[n]+" સો "+c[t]}function w(e){if(0n===e)return u;if(e<1000n)return b(Number(e));const n=[];n.push(Number(e%1000n));let t=e/1000n;for(;t>0n;)n.push(Number(t%100n)),t/=100n;const r=[];for(let e=n.length-1;e>=0;e--){const t=n[e];0!==t&&(r.push(0===e?b(t):c[t]),e>0&&g[e]&&r.push(g[e]))}return r.join(" ")}function d(i){const{isNegative:s,integerPart:a,decimalPart:g}=function(i){const o=typeof i;if("bigint"==typeof i)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"==typeof i){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(n(i))}if("string"==typeof i)return r(function(n){const r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${n}"`);return t(r)?e(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${o}`)}(i);o(a,f);let l="";return s&&(l="ઋણ "),l+=w(a),g&&(l+=" દશાંશ "+function(e){const n=[];for(const t of e){const e=parseInt(t,10);n.push(0===e?u:c[e])}return n.join(" ")}(g)),l}function h(n){const r=function(n){const r=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const r=n.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const n=e(r);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(r);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(n);return o(r,l),(i=r)>=1n&&i<=6n?a[Number(i)]:w(i)+"મું";var i}function p(e){const{isNegative:t,dollars:r,cents:s}=function(e){const t=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:i(n(e))}if("string"==typeof e)return i(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);o(r,m);let u="";return t&&(u="ઋણ "),(r>0n||0n===s)&&(u+=w(r),u+=" "+(1n===r?"રૂપિયો":"રૂપિયા")),s>0n&&(r>0n&&(u+=" "),u+=w(s),u+=" "+(1n===s?"પૈસો":"પૈસા")),u}export{f as cardinalMax,m as currencyMax,l as ordinalMax,d as toCardinal,p as toCurrency,h as toOrdinal};
package/dist/gu-IN.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/gu-IN v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- var e,n;e=this,n=function(e){"use strict";function n(e){let[n,r]=e.toLowerCase().split("e");const t=parseInt(r,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+t;return u>=o.length?i+o+"0".repeat(u-o.length):u<=0?i+"0."+"0".repeat(-u)+o:i+o.slice(0,u)+"."+o.slice(u)}function r(e){const r=e.toString();return t(r)?n(r):r}function t(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const r=e.indexOf(".");if(-1===r)return{isNegative:n,integerPart:BigInt(e)};const t=e.slice(0,r)||"0",i=e.slice(r+1);return{isNegative:n,integerPart:BigInt(t),decimalPart:i}}function s(e){let r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${e}"`);t(r)&&(r=n(r));const i="-"===r[0];i&&(r=r.slice(1));const s=r.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(r),cents:0n};const o=r.slice(0,s)||"0",u=(r.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(o),cents:BigInt(u)}}const o="શૂન્ય",u=["","પહેલું","બીજું","ત્રીજું","ચોથું","પાંચમું","છઠ્ઠું"],a=["શૂન્ય","એક","બે","ત્રણ","ચાર","પાંચ","છ","સાત","આઠ","નવ","દસ","અગિયાર","બાર","તેર","ચૌદ","પંદર","સોળ","સત્તર","અઢાર","ઓગણીસ","વીસ","એકવીસ","બાવીસ","ત્રેવીસ","ચોવીસ","પચીસ","છવ્વીસ","સત્તાવીસ","અઠ્ઠાવીસ","ઓગણત્રીસ","ત્રીસ","એકત્રીસ","બત્રીસ","તેત્રીસ","ચોત્રીસ","પાંત્રીસ","છત્રીસ","સાડત્રીસ","અડત્રીસ","ઓગણચાલીસ","ચાલીસ","એકતાલીસ","બેતાળીસ","ત્રેતાળીસ","ચુંમાલીસ","પિસ્તાલીસ","છેતાળીસ","સુડતાળીસ","અડતાળીસ","ઓગણપચાસ","પચાસ","એકાવન","બાવન","ત્રેપન","ચોપન","પંચાવન","છપ્પન","સત્તાવન","અઠ્ઠાવન","ઓગણસાઠ","સાઠ","એકસઠ","બાસઠ","ત્રેસઠ","ચોસઠ","પાંસઠ","છાસઠ","સડસઠ","અડસઠ","અગણોસિત્તેર","સિત્તેર","એકોતેર","બોતેર","તોતેર","ચુમોતેર","પંચોતેર","છોતેર","સિત્યોતેર","ઇઠ્યોતેર","ઓગણાએંસી","એંસી","એક્યાસી","બ્યાસી","ત્યાસી","ચોર્યાસી","પંચાસી","છ્યાસી","સિત્યાસી","અઠ્યાસી","નેવ્યાસી","નેવું","એકાણું","બાણું","ત્રાણું","ચોરાણું","પંચાણું","છન્નું","સત્તાણું","અઠ્ઠાણું","નવ્વાણું"],c=["","હજાર","લાખ","કરોડ","અબજ","ખરબ","નીલ","પદ્મ","શંખ"];function g(e){if(0===e)return"";if(e<100)return a[e];const n=Math.trunc(e/100),r=e%100;return 0===r?a[n]+" સો":a[n]+" સો "+a[r]}function f(e){if(0n===e)return o;if(e<1000n)return g(Number(e));const n=[];n.push(Number(e%1000n));let r=e/1000n;for(;r>0n;)n.push(Number(r%100n)),r/=100n;const t=[];for(let e=n.length-1;e>=0;e--){const r=n[e];0!==r&&(t.push(0===e?g(r):a[r]),e>0&&c[e]&&t.push(c[e]))}return t.join(" ")}const l={guIN:function(e){const r=function(e){const r=typeof e;if("bigint"===r){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"===r){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"===r)return function(e){const r=e.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const e=n(r);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(e);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(r);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`)}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);return(i=r)>=1n&&i<=6n?u[Number(i)]:f(i)+"મું";var i}};e.currency={guIN:function(e){const{isNegative:n,dollars:t,cents:i}=function(e){const n=typeof e;if("bigint"===n)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===n){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:s(r(e))}if("string"===n)return s(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e);let o="";return n&&(o="ઋણ "),(t>0n||0n===i)&&(o+=f(t),o+=" "+(1n===t?"રૂપિયો":"રૂપિયા")),i>0n&&(t>0n&&(o+=" "),o+=f(i),o+=" "+(1n===i?"પૈસો":"પૈસા")),o}},e.guIN=function(e){const{isNegative:s,integerPart:u,decimalPart:c}=function(e){const s=typeof e;if("bigint"===s)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"===s){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:i(r(e))}if("string"===s)return i(function(e){const r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${e}"`);return t(r)?n(r):r}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(e);let g="";return s&&(g="ઋણ "),g+=f(u),c&&(g+=" દશાંશ "+function(e){const n=[];for(const r of e){const e=parseInt(r,10);n.push(0===e?o:a[e])}return n.join(" ")}(c)),g},e.ordinal=l},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
1
+ /*! n2words/gu-IN v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ var e,n;e=this,n=function(e){"use strict";function n(e){let[n,t]=e.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const o=n.indexOf("."),s=-1===o?n:n.slice(0,o)+n.slice(o+1),u=(-1===o?n.length:o)+r;return u>=s.length?i+s+"0".repeat(u-s.length):u<=0?i+"0."+"0".repeat(-u)+s:i+s.slice(0,u)+"."+s.slice(u)}function t(e){const t=e.toString();return r(t)?n(t):t}function r(e){return e.includes("e")||e.includes("E")}function i(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const r=e.slice(0,t)||"0",i=e.slice(t+1);return{isNegative:n,integerPart:BigInt(r),decimalPart:i}}function o(e){let t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${e}"`);r(t)&&(t=n(t));const i="-"===t[0];i&&(t=t.slice(1));const o=t.indexOf(".");if(-1===o)return{isNegative:i,dollars:BigInt(t),cents:0n};const s=t.slice(0,o)||"0",u=(t.slice(o+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(s),cents:BigInt(u)}}function s(e,n,t){if(null===n)return;if(e<n)return;const r=n.toString().length-1,i=n===10n**BigInt(r)?`10^${r} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function u(e){return 10n**BigInt(3+2*(e-1))}const a="શૂન્ય",c=["","પહેલું","બીજું","ત્રીજું","ચોથું","પાંચમું","છઠ્ઠું"],g=["શૂન્ય","એક","બે","ત્રણ","ચાર","પાંચ","છ","સાત","આઠ","નવ","દસ","અગિયાર","બાર","તેર","ચૌદ","પંદર","સોળ","સત્તર","અઢાર","ઓગણીસ","વીસ","એકવીસ","બાવીસ","ત્રેવીસ","ચોવીસ","પચીસ","છવ્વીસ","સત્તાવીસ","અઠ્ઠાવીસ","ઓગણત્રીસ","ત્રીસ","એકત્રીસ","બત્રીસ","તેત્રીસ","ચોત્રીસ","પાંત્રીસ","છત્રીસ","સાડત્રીસ","અડત્રીસ","ઓગણચાલીસ","ચાલીસ","એકતાલીસ","બેતાળીસ","ત્રેતાળીસ","ચુંમાલીસ","પિસ્તાલીસ","છેતાળીસ","સુડતાળીસ","અડતાળીસ","ઓગણપચાસ","પચાસ","એકાવન","બાવન","ત્રેપન","ચોપન","પંચાવન","છપ્પન","સત્તાવન","અઠ્ઠાવન","ઓગણસાઠ","સાઠ","એકસઠ","બાસઠ","ત્રેસઠ","ચોસઠ","પાંસઠ","છાસઠ","સડસઠ","અડસઠ","અગણોસિત્તેર","સિત્તેર","એકોતેર","બોતેર","તોતેર","ચુમોતેર","પંચોતેર","છોતેર","સિત્યોતેર","ઇઠ્યોતેર","ઓગણાએંસી","એંસી","એક્યાસી","બ્યાસી","ત્યાસી","ચોર્યાસી","પંચાસી","છ્યાસી","સિત્યાસી","અઠ્યાસી","નેવ્યાસી","નેવું","એકાણું","બાણું","ત્રાણું","ચોરાણું","પંચાણું","છન્નું","સત્તાણું","અઠ્ઠાણું","નવ્વાણું"],f=["","હજાર","લાખ","કરોડ","અબજ","ખરબ","નીલ","પદ્મ","શંખ"],l=u(f.length),d=u(f.length),b=u(f.length);function m(e){if(0===e)return"";if(e<100)return g[e];const n=Math.trunc(e/100),t=e%100;return 0===t?g[n]+" સો":g[n]+" સો "+g[t]}function p(e){if(0n===e)return a;if(e<1000n)return m(Number(e));const n=[];n.push(Number(e%1000n));let t=e/1000n;for(;t>0n;)n.push(Number(t%100n)),t/=100n;const r=[];for(let e=n.length-1;e>=0;e--){const t=n[e];0!==t&&(r.push(0===e?m(t):g[t]),e>0&&f[e]&&r.push(f[e]))}return r.join(" ")}const h={guIN:function(e){const t=function(e){const t=typeof e;if("bigint"==typeof e){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"==typeof e)return function(e){const t=e.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(r(t)){const e=n(t);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const r=BigInt(e);if(r<=0n)throw new RangeError("Ordinals must be positive integers");return r}try{const e=BigInt(t);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`,{cause:n})}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);return s(t,d),(i=t)>=1n&&i<=6n?c[Number(i)]:p(i)+"મું";var i}};e.currency={guIN:function(e){const{isNegative:n,dollars:r,cents:i}=function(e){const n=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:o(t(e))}if("string"==typeof e)return o(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${n}`)}(e);s(r,b);let u="";return n&&(u="ઋણ "),(r>0n||0n===i)&&(u+=p(r),u+=" "+(1n===r?"રૂપિયો":"રૂપિયા")),i>0n&&(r>0n&&(u+=" "),u+=p(i),u+=" "+(1n===i?"પૈસો":"પૈસા")),u}},e.guIN=function(e){const{isNegative:o,integerPart:u,decimalPart:c}=function(e){const o=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(e)?e<0?{isNegative:!0,integerPart:BigInt(-e)}:{isNegative:!1,integerPart:BigInt(e)}:i(t(e))}if("string"==typeof e)return i(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${e}"`);return r(t)?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${o}`)}(e);s(u,l);let f="";return o&&(f="ઋણ "),f+=p(u),c&&(f+=" દશાંશ "+function(e){const n=[];for(const t of e){const e=parseInt(t,10);n.push(0===e?a:g[e])}return n.join(" ")}(c)),f},e.ordinal=h},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
package/dist/ha-NG.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/ha-NG v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function n(n){let[e,t]=n.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===e[0]&&(i="-",e=e.slice(1));const s=e.indexOf("."),a=-1===s?e:e.slice(0,s)+e.slice(s+1),o=(-1===s?e.length:s)+r;return o>=a.length?i+a+"0".repeat(o-a.length):o<=0?i+"0."+"0".repeat(-o)+a:i+a.slice(0,o)+"."+a.slice(o)}function e(e){const r=e.toString();return t(r)?n(r):r}function t(n){return n.includes("e")||n.includes("E")}function r(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const r=n.slice(0,t)||"0",i=n.slice(t+1);return{isNegative:e,integerPart:BigInt(r),decimalPart:i}}function i(e){let r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${e}"`);t(r)&&(r=n(r));const i="-"===r[0];i&&(r=r.slice(1));const s=r.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(r),cents:0n};const a=r.slice(0,s)||"0",o=(r.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(a),cents:BigInt(o)}}const s=["","ɗaya","biyu","uku","huɗu","biyar","shida","bakwai","takwas","tara"],a=["goma","sha ɗaya","sha biyu","sha uku","sha huɗu","sha biyar","sha shida","sha bakwai","sha takwas","sha tara"],o=["","","ashirin","talatin","arba'in","hamsin","sittin","saba'in","tamanin","tis'in"],u="ɗari",c="dubu",l="sifiri",g="babu",f=["",c,"miliyan","biliyan"];function h(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,r=Math.trunc(n/100),i=[];r>0&&i.push(1===r?u:s[r]+" "+u);const c=n%100;return 0===c||i.push(c<10?r>0?"da "+s[e]:s[e]:c<20?a[e]:0===e?o[t]:o[t]+" da "+s[e]),i.join(" ")}function b(n){return 0n===n?l:n<1000n?h(Number(n)):function(n){const e=n.toString(),t=e.length,r=[],i=t%3;let s=0;for(i>0&&(r.push(Number(e.slice(0,i))),s=i);s<t;)r.push(Number(e.slice(s,s+3))),s+=3;const a=[];let o=r.length-1;for(let n=0;n<r.length;n++){const e=r[n];if(0!==e){const n=f[o]||"";0===o?a.push(h(e)):(a.push(h(e)),a.push(n))}o--}const l=[];for(let n=0;n<a.length;n++){const e=a[n],t=a[n+1];("ɗaya"!==e||!t||t!==u&&t!==c)&&l.push(e)}const g=[];for(let n=0;n<l.length;n++){const e=l[n],t=n>0?l[n-1]:null;t&&d(e)&&(t===c||t===u||f.includes(t))?g.push(" da "):n>0&&g.push(" "),g.push(e)}return g.join("")}(n)}function d(n){return s.slice(1).includes(n)}function m(i){const{isNegative:a,integerPart:o,decimalPart:u}=function(i){const s=typeof i;if("bigint"===s)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"===s){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(e(i))}if("string"===s)return r(function(e){const r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${e}"`);return t(r)?n(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(i);let c="";return a&&(c=g+" "),c+=b(o),u&&(c+=" digo "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?l:s[n])}return e.join(" ")}(u)),c}function w(e){const r=function(e){const r=typeof e;if("bigint"===r){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"===r){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"===r)return function(e){const r=e.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const e=n(r);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(e);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const n=BigInt(r);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`)}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);return 1n===(i=r)?"na farko":"na "+b(i);var i}function p(n){const{isNegative:t,dollars:r,cents:s}=function(n){const t=typeof n;if("bigint"===t)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"===t){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:i(e(n))}if("string"===t)return i(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);let a="";return t&&(a=g+" "),(r>0n||0n===s)&&(a+=b(r)+" naira"),s>0n&&(r>0n&&(a+=" da "),a+=b(s)+" kobo"),a}export{m as toCardinal,p as toCurrency,w as toOrdinal};
1
+ /*! n2words/ha-NG v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function n(n){let[e,t]=n.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===e[0]&&(i="-",e=e.slice(1));const s=e.indexOf("."),o=-1===s?e:e.slice(0,s)+e.slice(s+1),a=(-1===s?e.length:s)+r;return a>=o.length?i+o+"0".repeat(a-o.length):a<=0?i+"0."+"0".repeat(-a)+o:i+o.slice(0,a)+"."+o.slice(a)}function e(e){const r=e.toString();return t(r)?n(r):r}function t(n){return n.includes("e")||n.includes("E")}function r(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const r=n.slice(0,t)||"0",i=n.slice(t+1);return{isNegative:e,integerPart:BigInt(r),decimalPart:i}}function i(e){let r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${e}"`);t(r)&&(r=n(r));const i="-"===r[0];i&&(r=r.slice(1));const s=r.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(r),cents:0n};const o=r.slice(0,s)||"0",a=(r.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(o),cents:BigInt(a)}}function s(n,e,t){if(null===e)return;if(n<e)return;const r=e.toString().length-1,i=e===10n**BigInt(r)?`10^${r} - 1`:""+(e-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function o(n){return 10n**BigInt(3*(n+1))}const a=["","ɗaya","biyu","uku","huɗu","biyar","shida","bakwai","takwas","tara"],u=["goma","sha ɗaya","sha biyu","sha uku","sha huɗu","sha biyar","sha shida","sha bakwai","sha takwas","sha tara"],c=["","","ashirin","talatin","arba'in","hamsin","sittin","saba'in","tamanin","tis'in"],l="ɗari",g="dubu",f="sifiri",h="babu",b=["",g,"miliyan","biliyan"],d=o(b.length-1),m=o(b.length-1),p=o(b.length-1);function w(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,r=Math.trunc(n/100),i=[];r>0&&i.push(1===r?l:a[r]+" "+l);const s=n%100;return 0===s||i.push(s<10?r>0?"da "+a[e]:a[e]:s<20?u[e]:0===e?c[t]:c[t]+" da "+a[e]),i.join(" ")}function N(n){return 0n===n?f:n<1000n?w(Number(n)):function(n){const e=n.toString(),t=e.length,r=[],i=t%3;let s=0;for(i>0&&(r.push(Number(e.slice(0,i))),s=i);s<t;)r.push(Number(e.slice(s,s+3))),s+=3;const o=[];let a=r.length-1;for(let n=0;n<r.length;n++){const e=r[n];if(0!==e){const n=b[a]||"";0===a?o.push(w(e)):(o.push(w(e)),o.push(n))}a--}const u=[];for(let n=0;n<o.length;n++){const e=o[n],t=o[n+1];("ɗaya"!==e||!t||t!==l&&t!==g)&&u.push(e)}const c=[];for(let n=0;n<u.length;n++){const e=u[n],t=n>0?u[n-1]:null;t&&v(e)&&(t===g||t===l||b.includes(t))?c.push(" da "):n>0&&c.push(" "),c.push(e)}return c.join("")}(n)}function v(n){return a.slice(1).includes(n)}function y(i){const{isNegative:o,integerPart:u,decimalPart:c}=function(i){const s=typeof i;if("bigint"==typeof i)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"==typeof i){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(e(i))}if("string"==typeof i)return r(function(e){const r=e.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${e}"`);return t(r)?n(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(i);s(u,d);let l="";return o&&(l=h+" "),l+=N(u),c&&(l+=" digo "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?f:a[n])}return e.join(" ")}(c)),l}function I(e){const r=function(e){const r=typeof e;if("bigint"==typeof e){if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(e))throw new RangeError("Ordinals must be whole numbers");if(e<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(e)}if("string"==typeof e)return function(e){const r=e.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const e=n(r);if(e.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(e);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const n=BigInt(r);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(n){if(n instanceof RangeError)throw n;throw new RangeError(`Invalid ordinal format: "${e}"`,{cause:n})}}(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);return s(r,m),1n===(i=r)?"na farko":"na "+N(i);var i}function E(n){const{isNegative:t,dollars:r,cents:o}=function(n){const t=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:i(e(n))}if("string"==typeof n)return i(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);s(r,p);let a="";return t&&(a=h+" "),(r>0n||0n===o)&&(a+=N(r)+" naira"),o>0n&&(r>0n&&(a+=" da "),a+=N(o)+" kobo"),a}export{d as cardinalMax,p as currencyMax,m as ordinalMax,y as toCardinal,E as toCurrency,I as toOrdinal};
package/dist/ha-NG.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/ha-NG v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- var n,e;n=this,e=function(n){"use strict";function e(n){let[e,t]=n.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===e[0]&&(i="-",e=e.slice(1));const s=e.indexOf("."),a=-1===s?e:e.slice(0,s)+e.slice(s+1),o=(-1===s?e.length:s)+r;return o>=a.length?i+a+"0".repeat(o-a.length):o<=0?i+"0."+"0".repeat(-o)+a:i+a.slice(0,o)+"."+a.slice(o)}function t(n){const t=n.toString();return r(t)?e(t):t}function r(n){return n.includes("e")||n.includes("E")}function i(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const r=n.slice(0,t)||"0",i=n.slice(t+1);return{isNegative:e,integerPart:BigInt(r),decimalPart:i}}function s(n){let t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${n}"`);r(t)&&(t=e(t));const i="-"===t[0];i&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(t),cents:0n};const a=t.slice(0,s)||"0",o=(t.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(a),cents:BigInt(o)}}const a=["","ɗaya","biyu","uku","huɗu","biyar","shida","bakwai","takwas","tara"],o=["goma","sha ɗaya","sha biyu","sha uku","sha huɗu","sha biyar","sha shida","sha bakwai","sha takwas","sha tara"],u=["","","ashirin","talatin","arba'in","hamsin","sittin","saba'in","tamanin","tis'in"],c="ɗari",l="dubu",g="sifiri",f="babu",h=["",l,"miliyan","biliyan"];function d(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,r=Math.trunc(n/100),i=[];r>0&&i.push(1===r?c:a[r]+" "+c);const s=n%100;return 0===s||i.push(s<10?r>0?"da "+a[e]:a[e]:s<20?o[e]:0===e?u[t]:u[t]+" da "+a[e]),i.join(" ")}function b(n){return 0n===n?g:n<1000n?d(Number(n)):function(n){const e=n.toString(),t=e.length,r=[],i=t%3;let s=0;for(i>0&&(r.push(Number(e.slice(0,i))),s=i);s<t;)r.push(Number(e.slice(s,s+3))),s+=3;const a=[];let o=r.length-1;for(let n=0;n<r.length;n++){const e=r[n];if(0!==e){const n=h[o]||"";0===o?a.push(d(e)):(a.push(d(e)),a.push(n))}o--}const u=[];for(let n=0;n<a.length;n++){const e=a[n],t=a[n+1];("ɗaya"!==e||!t||t!==c&&t!==l)&&u.push(e)}const g=[];for(let n=0;n<u.length;n++){const e=u[n],t=n>0?u[n-1]:null;t&&m(e)&&(t===l||t===c||h.includes(t))?g.push(" da "):n>0&&g.push(" "),g.push(e)}return g.join("")}(n)}function m(n){return a.slice(1).includes(n)}const w={haNG:function(n){const t=function(n){const t=typeof n;if("bigint"===t){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===t){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===t)return function(n){const t=n.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(r(t)){const n=e(t);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const r=BigInt(n);if(r<=0n)throw new RangeError("Ordinals must be positive integers");return r}try{const n=BigInt(t);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);return 1n===(i=t)?"na farko":"na "+b(i);var i}};n.currency={haNG:function(n){const{isNegative:e,dollars:r,cents:i}=function(n){const e=typeof n;if("bigint"===e)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"===e){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:s(t(n))}if("string"===e)return s(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${e}`)}(n);let a="";return e&&(a=f+" "),(r>0n||0n===i)&&(a+=b(r)+" naira"),i>0n&&(r>0n&&(a+=" da "),a+=b(i)+" kobo"),a}},n.haNG=function(n){const{isNegative:s,integerPart:o,decimalPart:u}=function(n){const s=typeof n;if("bigint"===s)return n<0n?{isNegative:!0,integerPart:-n}:{isNegative:!1,integerPart:n};if("number"===s){if(!Number.isFinite(n))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(n)?n<0?{isNegative:!0,integerPart:BigInt(-n)}:{isNegative:!1,integerPart:BigInt(n)}:i(t(n))}if("string"===s)return i(function(n){const t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${n}"`);return r(t)?e(t):t}(n));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(n);let c="";return s&&(c=f+" "),c+=b(o),u&&(c+=" digo "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?g:a[n])}return e.join(" ")}(u)),c},n.ordinal=w},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).n2words=n.n2words||{});
1
+ /*! n2words/ha-NG v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ var n,e;n=this,e=function(n){"use strict";function e(n){let[e,t]=n.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===e[0]&&(i="-",e=e.slice(1));const s=e.indexOf("."),o=-1===s?e:e.slice(0,s)+e.slice(s+1),a=(-1===s?e.length:s)+r;return a>=o.length?i+o+"0".repeat(a-o.length):a<=0?i+"0."+"0".repeat(-a)+o:i+o.slice(0,a)+"."+o.slice(a)}function t(n){const t=n.toString();return r(t)?e(t):t}function r(n){return n.includes("e")||n.includes("E")}function i(n){const e="-"===n[0];e&&(n=n.slice(1));const t=n.indexOf(".");if(-1===t)return{isNegative:e,integerPart:BigInt(n)};const r=n.slice(0,t)||"0",i=n.slice(t+1);return{isNegative:e,integerPart:BigInt(r),decimalPart:i}}function s(n){let t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid currency format: "${n}"`);r(t)&&(t=e(t));const i="-"===t[0];i&&(t=t.slice(1));const s=t.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(t),cents:0n};const o=t.slice(0,s)||"0",a=(t.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(o),cents:BigInt(a)}}function o(n,e,t){if(null===e)return;if(n<e)return;const r=e.toString().length-1,i=e===10n**BigInt(r)?`10^${r} - 1`:""+(e-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function a(n){return 10n**BigInt(3*(n+1))}const u=["","ɗaya","biyu","uku","huɗu","biyar","shida","bakwai","takwas","tara"],c=["goma","sha ɗaya","sha biyu","sha uku","sha huɗu","sha biyar","sha shida","sha bakwai","sha takwas","sha tara"],l=["","","ashirin","talatin","arba'in","hamsin","sittin","saba'in","tamanin","tis'in"],g="ɗari",f="dubu",h="sifiri",d="babu",b=["",f,"miliyan","biliyan"],p=a(b.length-1),m=a(b.length-1),w=a(b.length-1);function N(n){if(0===n)return"";const e=n%10,t=Math.trunc(n/10)%10,r=Math.trunc(n/100),i=[];r>0&&i.push(1===r?g:u[r]+" "+g);const s=n%100;return 0===s||i.push(s<10?r>0?"da "+u[e]:u[e]:s<20?c[e]:0===e?l[t]:l[t]+" da "+u[e]),i.join(" ")}function y(n){return 0n===n?h:n<1000n?N(Number(n)):function(n){const e=n.toString(),t=e.length,r=[],i=t%3;let s=0;for(i>0&&(r.push(Number(e.slice(0,i))),s=i);s<t;)r.push(Number(e.slice(s,s+3))),s+=3;const o=[];let a=r.length-1;for(let n=0;n<r.length;n++){const e=r[n];if(0!==e){const n=b[a]||"";0===a?o.push(N(e)):(o.push(N(e)),o.push(n))}a--}const u=[];for(let n=0;n<o.length;n++){const e=o[n],t=o[n+1];("ɗaya"!==e||!t||t!==g&&t!==f)&&u.push(e)}const c=[];for(let n=0;n<u.length;n++){const e=u[n],t=n>0?u[n-1]:null;t&&v(e)&&(t===f||t===g||b.includes(t))?c.push(" da "):n>0&&c.push(" "),c.push(e)}return c.join("")}(n)}function v(n){return u.slice(1).includes(n)}const I={haNG:function(n){const t=function(n){const t=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const t=n.trim();if(0===t.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===t[0])throw new RangeError("Ordinals cannot be negative");if(t.includes("."))throw new RangeError("Ordinals must be whole numbers");if(r(t)){const n=e(t);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const r=BigInt(n);if(r<=0n)throw new RangeError("Ordinals must be positive integers");return r}try{const n=BigInt(t);if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(n);return o(t,m),1n===(i=t)?"na farko":"na "+y(i);var i}};n.currency={haNG:function(n){const{isNegative:e,dollars:r,cents:i}=function(n){const e=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,dollars:-n,cents:0n}:{isNegative:!1,dollars:n,cents:0n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(n)?n<0?{isNegative:!0,dollars:BigInt(-n),cents:0n}:{isNegative:!1,dollars:BigInt(n),cents:0n}:s(t(n))}if("string"==typeof n)return s(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${e}`)}(n);o(r,w);let a="";return e&&(a=d+" "),(r>0n||0n===i)&&(a+=y(r)+" naira"),i>0n&&(r>0n&&(a+=" da "),a+=y(i)+" kobo"),a}},n.haNG=function(n){const{isNegative:s,integerPart:a,decimalPart:c}=function(n){const s=typeof n;if("bigint"==typeof n)return n<0n?{isNegative:!0,integerPart:-n}:{isNegative:!1,integerPart:n};if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(n)?n<0?{isNegative:!0,integerPart:BigInt(-n)}:{isNegative:!1,integerPart:BigInt(n)}:i(t(n))}if("string"==typeof n)return i(function(n){const t=n.trim();if(0===t.length||Number.isNaN(Number(t)))throw new RangeError(`Invalid number format: "${n}"`);return r(t)?e(t):t}(n));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(n);o(a,p);let l="";return s&&(l=d+" "),l+=y(a),c&&(l+=" digo "+function(n){const e=[];for(const t of n){const n=parseInt(t,10);e.push(0===n?h:u[n])}return e.join(" ")}(c)),l},n.ordinal=I},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((n="undefined"!=typeof globalThis?globalThis:n||self).n2words=n.n2words||{});
package/dist/hbo-IL.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! n2words/hbo-IL v4.0.0 | MIT License | github.com/forzagreen/n2words */
2
- function e(e){let[n,t]=e.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const s=n.indexOf("."),o=-1===s?n:n.slice(0,s)+n.slice(s+1),u=(-1===s?n.length:s)+r;return u>=o.length?i+o+"0".repeat(u-o.length):u<=0?i+"0."+"0".repeat(-u)+o:i+o.slice(0,u)+"."+o.slice(u)}function n(n){const r=n.toString();return t(r)?e(r):r}function t(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const r=e.slice(0,t)||"0",i=e.slice(t+1);return{isNegative:n,integerPart:BigInt(r),decimalPart:i}}function i(n){let r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${n}"`);t(r)&&(r=e(r));const i="-"===r[0];i&&(r=r.slice(1));const s=r.indexOf(".");if(-1===s)return{isNegative:i,dollars:BigInt(r),cents:0n};const o=r.slice(0,s)||"0",u=(r.slice(s+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(o),cents:BigInt(u)}}const s=["","אחד","שניים","שלשה","ארבעה","חמשה","ששה","שבעה","שמונה","תשעה"],o=["עשרה","אחד עשר","שנים עשר","שלשה עשר","ארבעה עשר","חמשה עשר","ששה עשר","שבעה עשר","שמונה עשר","תשעה עשר"],u=["","אלף","אלפיים","שלשה אלפים","ארבעה אלפים","חמשה אלפים","ששה אלפים","שבעה אלפים","שמונה אלפים","תשעה אלפים"],c=["","אחת","שתים","שלש","ארבע","חמש","שש","שבע","שמונה","תשע"],a=["עשר","אחת עשרה","שתים עשרה","שלש עשרה","ארבע עשרה","חמש עשרה","שש עשרה","שבע עשרה","שמונה עשרה","תשע עשרה"],f=["","אלף","אלפיים","שלשת אלפים","ארבעת אלפים","חמשת אלפים","ששת אלפים","שבעת אלפים","שמונת אלפים","תשעת אלפים"],l=["","","עשרים","שלשים","ארבעים","חמישים","ששים","שבעים","שמונים","תשעים"],g=["","מאה","מאתיים","שלשה מאות","ארבעה מאות","חמשה מאות","ששה מאות","שבעה מאות","שמונה מאות","תשעה מאות"],m=["","מאה","מאתיים","שלש מאות","ארבע מאות","חמש מאות","שש מאות","שבע מאות","שמונה מאות","תשע מאות"],b=["","אלף","מיליון","מיליארד","טריליון","קוודרליון","קווינטיליון"],d=["","אלפים","מיליונים","מיליארדים","טריליונים","קוודרליונים","קווינטיליונים"],h="מינוס",w=["","ראשון","שני","שלישי","רביעי","חמישי","שישי","שביעי","שמיני","תשיעי"],p=["עשירי","אחד עשר","שנים עשר","שלשה עשר","ארבעה עשר","חמשה עשר","ששה עשר","שבעה עשר","שמונה עשר","תשעה עשר"],N=["","","עשרים","שלשים","ארבעים","חמישים","ששים","שבעים","שמונים","תשעים"],v="שקלים";function I(e,n,t,r,i){if(0===e)return"";const s=e%10,o=Math.trunc(e/10)%10,u=Math.trunc(e/100);let c="";if(u>0&&(c=i[u]),1===o){const e=r[s];c?c+=" "+n+e:c=e}else o>=2&&(c?c+=" "+n+l[o]:c=l[o]),s>0&&(c?c+=" "+n+t[s]:c=t[s]);return c}function E(e,n,t,r,i){if(0===e)return"";const s=e%10,o=Math.trunc(e/10)%10,u=Math.trunc(e/100);let c="";return u>0&&(c=i[u]),1===o?c?c+=" "+r[s]:c=r[s]:(o>=2&&(c?c+=" "+l[o]:c=l[o]),s>0&&(c?c+=" "+n+t[s]:c=t[s])),c}function y(e,n,t){if(0n===e)return"אפס";const r="feminine"===n,i=r?c:s,l=r?a:o,h=r?f:u,w=r?m:g;if(e<1000n)return E(Number(e),t,i,l,w);const p=[];let N=e;for(;N>0n;)p.push(Number(N%1000n)),N/=1000n;let v="";for(let e=p.length-1;e>=0;e--){const n=p[e];if(0!==n)if(0===e){const e=E(n,t,i,l,w);v?v+=n<=9?" "+t+e:" "+e:v=e}else 1===e?n<=9?(v&&(v+=" "),v+=h[n]):(v&&(v+=" "),v+=I(n,t,i,l,w)+" "+b[1]):1===n?(v&&(v+=" "),v+=b[e]):(v&&(v+=" "),v+=I(n,t,i,l,w)+" "+d[e])}return v}function O(i,o){o=function(e){if(void 0===e)return{};if(function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))return e;throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e)}(o);const{isNegative:u,integerPart:a,decimalPart:f}=function(i){const s=typeof i;if("bigint"===s)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"===s){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(n(i))}if("string"===s)return r(function(n){const r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${n}"`);return t(r)?e(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${s}`)}(i),{gender:l="masculine",andWord:g="ו"}=o;let m="";return u&&(m=h+" "),m+=y(a,l,g),f&&(m+=" נקודה "+function(e,n){const t="feminine"===n?c:s;let r="";for(let n=0;n<e.length;n++){const i=parseInt(e[n],10);r&&(r+=" "),r+=0===i?"אפס":t[i]}return r}(f,l)),m}function R(e){if(0===e)return"";if(e<10)return w[e];if(e<20)return p[e-10];const n=e%10,t=Math.trunc(e/10);return 0===n?N[t]+" ו"+w[1]:N[t]+" ו"+w[n]}function B(e){if(0n===e)return"";if(1n===e)return w[1];if(e<100n)return R(Number(e));if(e<1000n){const n=Number(e/100n),t=Number(e%100n);return 0===t?"מאה":g[n]+" "+R(t)}if(e<1000000n){const n=Number(e/1000n),t=Number(e%1000n);if(0===t)return n<=9?u[n]:I(n,"ו",s,o,g)+" "+b[1];let r;if(r=n<=9?u[n]:I(n,"ו",s,o,g)+" "+b[1],t<100)return r+" "+R(t);const i=Math.trunc(t/100),c=t%100;return 0===c?r+" "+g[i]:r+" "+g[i]+" "+R(c)}const n=Number(e/1000000n),t=e%1000000n;if(0n===t)return 1===n?b[2]:I(n,"ו",s,o,g)+" "+d[2];let r;return r=1===n?b[2]:I(n,"ו",s,o,g)+" "+d[2],r+" "+B(t)}function P(n){return B(function(n){const r=typeof n;if("bigint"===r){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"===r){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"===r)return function(n){const r=n.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const n=e(r);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(r);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`)}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(n))}function x(e){const{isNegative:t,dollars:r,cents:o}=function(e){const t=typeof e;if("bigint"===t)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"===t){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:i(n(e))}if("string"===t)return i(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e),u=[];if(t&&u.push(h),r>0n||0n===o)if(1n===r)u.push("שקל "+s[1]);else if(2n===r)u.push(s[2]+" "+v);else{const e=y(r,"masculine","ו");u.push(e+" "+v)}if(o>0n)if(1===Number(o))u.push("גרה "+c[1]);else{const e=y(o,"feminine","ו");u.push(e+" גרות")}return u.join(" ")}export{O as toCardinal,x as toCurrency,P as toOrdinal};
1
+ /*! n2words/hbo-IL v5.1.0 | MIT License | github.com/forzagreen/n2words */
2
+ function e(e){let[n,t]=e.toLowerCase().split("e");const r=parseInt(t,10);let i="";"-"===n[0]&&(i="-",n=n.slice(1));const o=n.indexOf("."),s=-1===o?n:n.slice(0,o)+n.slice(o+1),u=(-1===o?n.length:o)+r;return u>=s.length?i+s+"0".repeat(u-s.length):u<=0?i+"0."+"0".repeat(-u)+s:i+s.slice(0,u)+"."+s.slice(u)}function n(n){const r=n.toString();return t(r)?e(r):r}function t(e){return e.includes("e")||e.includes("E")}function r(e){const n="-"===e[0];n&&(e=e.slice(1));const t=e.indexOf(".");if(-1===t)return{isNegative:n,integerPart:BigInt(e)};const r=e.slice(0,t)||"0",i=e.slice(t+1);return{isNegative:n,integerPart:BigInt(r),decimalPart:i}}function i(n){let r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid currency format: "${n}"`);t(r)&&(r=e(r));const i="-"===r[0];i&&(r=r.slice(1));const o=r.indexOf(".");if(-1===o)return{isNegative:i,dollars:BigInt(r),cents:0n};const s=r.slice(0,o)||"0",u=(r.slice(o+1)+"00").slice(0,2);return{isNegative:i,dollars:BigInt(s),cents:BigInt(u)}}function o(e,n,t){if(null===n)return;if(e<n)return;const r=n.toString().length-1,i=n===10n**BigInt(r)?`10^${r} - 1`:""+(n-1n);throw new RangeError(`Number too large to convert: the largest supported value is ${i}`)}function s(e){return 10n**BigInt(3*(e+1))}const u=["","אחד","שניים","שלשה","ארבעה","חמשה","ששה","שבעה","שמונה","תשעה"],c=["עשרה","אחד עשר","שנים עשר","שלשה עשר","ארבעה עשר","חמשה עשר","ששה עשר","שבעה עשר","שמונה עשר","תשעה עשר"],f=["","אלף","אלפיים","שלשה אלפים","ארבעה אלפים","חמשה אלפים","ששה אלפים","שבעה אלפים","שמונה אלפים","תשעה אלפים"],a=["","אחת","שתים","שלש","ארבע","חמש","שש","שבע","שמונה","תשע"],l=["עשר","אחת עשרה","שתים עשרה","שלש עשרה","ארבע עשרה","חמש עשרה","שש עשרה","שבע עשרה","שמונה עשרה","תשע עשרה"],g=["","אלף","אלפיים","שלשת אלפים","ארבעת אלפים","חמשת אלפים","ששת אלפים","שבעת אלפים","שמונת אלפים","תשעת אלפים"],p=["","","עשרים","שלשים","ארבעים","חמישים","ששים","שבעים","שמונים","תשעים"],b=["","מאה","מאתיים","שלשה מאות","ארבעה מאות","חמשה מאות","ששה מאות","שבעה מאות","שמונה מאות","תשעה מאות"],m=["","מאה","מאתיים","שלש מאות","ארבע מאות","חמש מאות","שש מאות","שבע מאות","שמונה מאות","תשע מאות"],d=["","אלף","מיליון","מיליארד","טריליון","קוודרליון","קווינטיליון"],h=["","אלפים","מיליונים","מיליארדים","טריליונים","קוודרליונים","קווינטיליונים"],w=s(d.length-1),N=10n**BigInt(9),v=s(d.length-1),y="מינוס",I=["","ראשון","שני","שלישי","רביעי","חמישי","שישי","שביעי","שמיני","תשיעי"],E=["עשירי","אחד עשר","שנים עשר","שלשה עשר","ארבעה עשר","חמשה עשר","ששה עשר","שבעה עשר","שמונה עשר","תשעה עשר"],O=["","","עשרים","שלשים","ארבעים","חמישים","ששים","שבעים","שמונים","תשעים"],R="שקלים";function $(e,n,t,r,i){if(0===e)return"";const o=e%10,s=Math.trunc(e/10)%10,u=Math.trunc(e/100);let c="";if(u>0&&(c=i[u]),1===s){const e=r[o];c?c+=" "+n+e:c=e}else s>=2&&(c?c+=" "+n+p[s]:c=p[s]),o>0&&(c?c+=" "+n+t[o]:c=t[o]);return c}function B(e,n,t,r,i){if(0===e)return"";const o=e%10,s=Math.trunc(e/10)%10,u=Math.trunc(e/100);let c="";return u>0&&(c=i[u]),1===s?c?c+=" "+r[o]:c=r[o]:(s>=2&&(c?c+=" "+p[s]:c=p[s]),o>0&&(c?c+=" "+n+t[o]:c=t[o])),c}function j(e,n,t){if(0n===e)return"אפס";const r="feminine"===n,i=r?a:u,o=r?l:c,s=r?g:f,p=r?m:b;if(e<1000n)return B(Number(e),t,i,o,p);const w=[];let N=e;for(;N>0n;)w.push(Number(N%1000n)),N/=1000n;let v="";for(let e=w.length-1;e>=0;e--){const n=w[e];if(0!==n)if(0===e){const e=B(n,t,i,o,p);v?v+=n<=9?" "+t+e:" "+e:v=e}else 1===e?n<=9?(v&&(v+=" "),v+=s[n]):(v&&(v+=" "),v+=$(n,t,i,o,p)+" "+d[1]):1===n?(v&&(v+=" "),v+=d[e]):(v&&(v+=" "),v+=$(n,t,i,o,p)+" "+h[e])}return v}const P={gender:"masculine",andWord:"ו"},x={gender:["masculine","feminine"]};function M(i,s){const{isNegative:c,integerPart:f,decimalPart:l}=function(i){const o=typeof i;if("bigint"==typeof i)return i<0n?{isNegative:!0,integerPart:-i}:{isNegative:!1,integerPart:i};if("number"==typeof i){if(!Number.isFinite(i))throw new RangeError("Number must be finite (NaN and Infinity are not supported)");return Number.isSafeInteger(i)?i<0?{isNegative:!0,integerPart:BigInt(-i)}:{isNegative:!1,integerPart:BigInt(i)}:r(n(i))}if("string"==typeof i)return r(function(n){const r=n.trim();if(0===r.length||Number.isNaN(Number(r)))throw new RangeError(`Invalid number format: "${n}"`);return t(r)?e(r):r}(i));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${o}`)}(i);o(f,w);const{gender:g,andWord:p}=function(e,n,t){const r={...n};if(void 0===e)return r;if(!function(e){if(null===e||"object"!=typeof e)return!1;const n=Object.getPrototypeOf(e);return null===n||n===Object.prototype}(e))throw new TypeError("Invalid options: expected plain object or undefined, got "+typeof e);const i=Object.keys(n);for(const[o,s]of Object.entries(e)){if(!Object.hasOwn(n,o))throw new TypeError(`Unknown option "${o}" — expected one of: ${i.join(", ")}`);if(void 0!==s){if(typeof s!=typeof r[o])throw new TypeError(`Option "${o}" must be a ${typeof r[o]}, got ${typeof s}`);if(void 0!==t&&Object.hasOwn(t,o)){const e=t[o];if(!e.includes(s))throw new RangeError(`Option "${o}" must be one of: ${e.join(", ")} — got ${JSON.stringify(s)}`)}r[o]=s}}return r}(s,P,x);let b="";return c&&(b=y+" "),b+=j(f,g,p),l&&(b+=" נקודה "+function(e,n){const t="feminine"===n?a:u;let r="";for(let n=0;n<e.length;n++){const i=parseInt(e[n],10);r&&(r+=" "),r+=0===i?"אפס":t[i]}return r}(l,g)),b}function T(e){if(0===e)return"";if(e<10)return I[e];if(e<20)return E[e-10];const n=e%10,t=Math.trunc(e/10);return 0===n?O[t]+" ו"+I[1]:O[t]+" ו"+I[n]}function S(e){if(0n===e)return"";if(1n===e)return I[1];if(e<100n)return T(Number(e));if(e<1000n){const n=Number(e/100n),t=Number(e%100n);return 0===t?"מאה":b[n]+" "+T(t)}if(e<1000000n){const n=Number(e/1000n),t=Number(e%1000n);if(0===t)return n<=9?f[n]:$(n,"ו",u,c,b)+" "+d[1];let r;if(r=n<=9?f[n]:$(n,"ו",u,c,b)+" "+d[1],t<100)return r+" "+T(t);const i=Math.trunc(t/100),o=t%100;return 0===o?r+" "+b[i]:r+" "+b[i]+" "+T(o)}const n=Number(e/1000000n),t=e%1000000n;if(0n===t)return 1===n?d[2]:$(n,"ו",u,c,b)+" "+h[2];let r;return r=1===n?d[2]:$(n,"ו",u,c,b)+" "+h[2],r+" "+S(t)}function F(n){const r=function(n){const r=typeof n;if("bigint"==typeof n){if(n<=0n)throw new RangeError("Ordinals must be positive integers");return n}if("number"==typeof n){if(!Number.isFinite(n))throw new RangeError("Ordinals must be finite numbers");if(!Number.isInteger(n))throw new RangeError("Ordinals must be whole numbers");if(n<=0)throw new RangeError("Ordinals must be positive integers");return BigInt(n)}if("string"==typeof n)return function(n){const r=n.trim();if(0===r.length)throw new RangeError("Ordinals cannot be empty strings");if("-"===r[0])throw new RangeError("Ordinals cannot be negative");if(r.includes("."))throw new RangeError("Ordinals must be whole numbers");if(t(r)){const n=e(r);if(n.includes("."))throw new RangeError("Ordinals must be whole numbers");const t=BigInt(n);if(t<=0n)throw new RangeError("Ordinals must be positive integers");return t}try{const e=BigInt(r);if(e<=0n)throw new RangeError("Ordinals must be positive integers");return e}catch(e){if(e instanceof RangeError)throw e;throw new RangeError(`Invalid ordinal format: "${n}"`,{cause:e})}}(n);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(n);return o(r,N),S(r)}function k(e){const{isNegative:t,dollars:r,cents:s}=function(e){const t=typeof e;if("bigint"==typeof e)return e<0n?{isNegative:!0,dollars:-e,cents:0n}:{isNegative:!1,dollars:e,cents:0n};if("number"==typeof e){if(!Number.isFinite(e))throw new RangeError("Currency must be a finite number");return Number.isSafeInteger(e)?e<0?{isNegative:!0,dollars:BigInt(-e),cents:0n}:{isNegative:!1,dollars:BigInt(e),cents:0n}:i(n(e))}if("string"==typeof e)return i(e);throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${t}`)}(e);o(r,v);const c=[];if(t&&c.push(y),r>0n||0n===s)if(1n===r)c.push("שקל "+u[1]);else if(2n===r)c.push(u[2]+" "+R);else{const e=j(r,"masculine","ו");c.push(e+" "+R)}if(s>0n)if(1===Number(s))c.push("גרה "+a[1]);else{const e=j(s,"feminine","ו");c.push(e+" גרות")}return c.join(" ")}export{P as cardinalDefaults,w as cardinalMax,x as cardinalValues,v as currencyMax,N as ordinalMax,M as toCardinal,k as toCurrency,F as toOrdinal};