n2words 1.24.0 → 3.0.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.
- package/CHANGELOG.md +49 -0
- package/README.md +183 -156
- package/dist/languages/am-Latn.js +3 -0
- package/dist/languages/am-Latn.js.map +1 -0
- package/dist/languages/am.js +3 -0
- package/dist/languages/am.js.map +1 -0
- package/dist/languages/ar.js +3 -2
- package/dist/languages/ar.js.map +1 -1
- package/dist/languages/az.js +3 -2
- package/dist/languages/az.js.map +1 -1
- package/dist/languages/bn.js +3 -2
- package/dist/languages/bn.js.map +1 -1
- package/dist/languages/cs.js +3 -2
- package/dist/languages/cs.js.map +1 -1
- package/dist/languages/da.js +3 -2
- package/dist/languages/da.js.map +1 -1
- package/dist/languages/de.js +3 -2
- package/dist/languages/de.js.map +1 -1
- package/dist/languages/el.js +3 -2
- package/dist/languages/el.js.map +1 -1
- package/dist/languages/en.js +3 -2
- package/dist/languages/en.js.map +1 -1
- package/dist/languages/es.js +3 -2
- package/dist/languages/es.js.map +1 -1
- package/dist/languages/fa.js +3 -2
- package/dist/languages/fa.js.map +1 -1
- package/dist/languages/fi.js +3 -0
- package/dist/languages/fi.js.map +1 -0
- package/dist/languages/fil.js +3 -2
- package/dist/languages/fil.js.map +1 -1
- package/dist/languages/fr-BE.js +3 -2
- package/dist/languages/fr-BE.js.map +1 -1
- package/dist/languages/fr.js +3 -2
- package/dist/languages/fr.js.map +1 -1
- package/dist/languages/gu.js +3 -2
- package/dist/languages/gu.js.map +1 -1
- package/dist/languages/ha.js +3 -0
- package/dist/languages/ha.js.map +1 -0
- package/dist/languages/hbo.js +3 -0
- package/dist/languages/hbo.js.map +1 -0
- package/dist/languages/he.js +3 -2
- package/dist/languages/he.js.map +1 -1
- package/dist/languages/hi.js +3 -2
- package/dist/languages/hi.js.map +1 -1
- package/dist/languages/hr.js +3 -2
- package/dist/languages/hr.js.map +1 -1
- package/dist/languages/hu.js +3 -2
- package/dist/languages/hu.js.map +1 -1
- package/dist/languages/id.js +3 -2
- package/dist/languages/id.js.map +1 -1
- package/dist/languages/it.js +3 -2
- package/dist/languages/it.js.map +1 -1
- package/dist/languages/ja.js +3 -2
- package/dist/languages/ja.js.map +1 -1
- package/dist/languages/kn.js +3 -2
- package/dist/languages/kn.js.map +1 -1
- package/dist/languages/ko.js +3 -2
- package/dist/languages/ko.js.map +1 -1
- package/dist/languages/lt.js +3 -2
- package/dist/languages/lt.js.map +1 -1
- package/dist/languages/lv.js +3 -2
- package/dist/languages/lv.js.map +1 -1
- package/dist/languages/mr.js +3 -2
- package/dist/languages/mr.js.map +1 -1
- package/dist/languages/ms.js +3 -2
- package/dist/languages/ms.js.map +1 -1
- package/dist/languages/nb.js +3 -2
- package/dist/languages/nb.js.map +1 -1
- package/dist/languages/nl.js +3 -2
- package/dist/languages/nl.js.map +1 -1
- package/dist/languages/pa.js +3 -0
- package/dist/languages/pa.js.map +1 -0
- package/dist/languages/pl.js +3 -2
- package/dist/languages/pl.js.map +1 -1
- package/dist/languages/pt.js +3 -2
- package/dist/languages/pt.js.map +1 -1
- package/dist/languages/ro.js +3 -2
- package/dist/languages/ro.js.map +1 -1
- package/dist/languages/ru.js +3 -2
- package/dist/languages/ru.js.map +1 -1
- package/dist/languages/sr-Cyrl.js +3 -0
- package/dist/languages/sr-Cyrl.js.map +1 -0
- package/dist/languages/sr-Latn.js +3 -2
- package/dist/languages/sr-Latn.js.map +1 -1
- package/dist/languages/sv.js +3 -2
- package/dist/languages/sv.js.map +1 -1
- package/dist/languages/sw.js +3 -2
- package/dist/languages/sw.js.map +1 -1
- package/dist/languages/ta.js +3 -2
- package/dist/languages/ta.js.map +1 -1
- package/dist/languages/te.js +3 -2
- package/dist/languages/te.js.map +1 -1
- package/dist/languages/th.js +3 -2
- package/dist/languages/th.js.map +1 -1
- package/dist/languages/tr.js +3 -2
- package/dist/languages/tr.js.map +1 -1
- package/dist/languages/uk.js +3 -2
- package/dist/languages/uk.js.map +1 -1
- package/dist/languages/ur.js +3 -2
- package/dist/languages/ur.js.map +1 -1
- package/dist/languages/vi.js +3 -2
- package/dist/languages/vi.js.map +1 -1
- package/dist/languages/zh-Hans.js +3 -2
- package/dist/languages/zh-Hans.js.map +1 -1
- package/dist/languages/zh-Hant.js +3 -0
- package/dist/languages/zh-Hant.js.map +1 -0
- package/dist/n2words.js +3 -2
- package/dist/n2words.js.map +1 -1
- package/lib/languages/am-Latn.d.ts +7 -0
- package/lib/languages/am-Latn.js +164 -0
- package/lib/languages/am.d.ts +7 -0
- package/lib/languages/am.js +164 -0
- package/lib/languages/ar.d.ts +17 -0
- package/lib/languages/ar.js +171 -209
- package/lib/languages/az.d.ts +7 -0
- package/lib/languages/az.js +167 -49
- package/lib/languages/bn.d.ts +7 -0
- package/lib/languages/bn.js +142 -123
- package/lib/languages/cs.d.ts +18 -0
- package/lib/languages/cs.js +303 -176
- package/lib/languages/da.d.ts +14 -0
- package/lib/languages/da.js +267 -139
- package/lib/languages/de.d.ts +17 -0
- package/lib/languages/de.js +310 -113
- package/lib/languages/el.d.ts +14 -0
- package/lib/languages/el.js +225 -98
- package/lib/languages/en.d.ts +17 -0
- package/lib/languages/en.js +235 -102
- package/lib/languages/es.d.ts +21 -0
- package/lib/languages/es.js +307 -125
- package/lib/languages/fa.d.ts +7 -0
- package/lib/languages/fa.js +115 -108
- package/lib/languages/fi.d.ts +14 -0
- package/lib/languages/fi.js +245 -0
- package/lib/languages/fil.d.ts +7 -0
- package/lib/languages/fil.js +199 -139
- package/lib/languages/fr-BE.d.ts +11 -0
- package/lib/languages/fr-BE.js +287 -48
- package/lib/languages/fr.d.ts +21 -0
- package/lib/languages/fr.js +343 -119
- package/lib/languages/gu.d.ts +7 -0
- package/lib/languages/gu.js +125 -144
- package/lib/languages/ha.d.ts +7 -0
- package/lib/languages/ha.js +230 -0
- package/lib/languages/hbo.d.ts +13 -0
- package/lib/languages/hbo.js +300 -0
- package/lib/languages/he.d.ts +13 -0
- package/lib/languages/he.js +230 -283
- package/lib/languages/hi.d.ts +7 -0
- package/lib/languages/hi.js +142 -123
- package/lib/languages/hr.d.ts +11 -0
- package/lib/languages/hr.js +190 -129
- package/lib/languages/hu.d.ts +7 -0
- package/lib/languages/hu.js +194 -133
- package/lib/languages/id.d.ts +7 -0
- package/lib/languages/id.js +167 -140
- package/lib/languages/it.d.ts +19 -0
- package/lib/languages/it.js +337 -108
- package/lib/languages/ja.d.ts +17 -0
- package/lib/languages/ja.js +224 -155
- package/lib/languages/kn.d.ts +7 -0
- package/lib/languages/kn.js +128 -62
- package/lib/languages/ko.d.ts +14 -0
- package/lib/languages/ko.js +250 -70
- package/lib/languages/lt.d.ts +18 -0
- package/lib/languages/lt.js +287 -148
- package/lib/languages/lv.d.ts +18 -0
- package/lib/languages/lv.js +291 -123
- package/lib/languages/mr.d.ts +7 -0
- package/lib/languages/mr.js +125 -144
- package/lib/languages/ms.d.ts +7 -0
- package/lib/languages/ms.js +171 -112
- package/lib/languages/nb.d.ts +14 -0
- package/lib/languages/nb.js +275 -100
- package/lib/languages/nl.d.ts +26 -0
- package/lib/languages/nl.js +307 -174
- package/lib/languages/pa.d.ts +7 -0
- package/lib/languages/pa.js +163 -0
- package/lib/languages/pl.d.ts +22 -0
- package/lib/languages/pl.js +299 -158
- package/lib/languages/pt.d.ts +17 -0
- package/lib/languages/pt.js +279 -120
- package/lib/languages/ro.d.ts +18 -0
- package/lib/languages/ro.js +214 -337
- package/lib/languages/ru.d.ts +11 -0
- package/lib/languages/ru.js +219 -95
- package/lib/languages/sr-Cyrl.d.ts +11 -0
- package/lib/languages/sr-Cyrl.js +215 -0
- package/lib/languages/sr-Latn.d.ts +11 -0
- package/lib/languages/sr-Latn.js +190 -132
- package/lib/languages/sv.d.ts +14 -0
- package/lib/languages/sv.js +280 -103
- package/lib/languages/sw.d.ts +7 -0
- package/lib/languages/sw.js +135 -103
- package/lib/languages/ta.d.ts +7 -0
- package/lib/languages/ta.js +133 -205
- package/lib/languages/te.d.ts +7 -0
- package/lib/languages/te.js +148 -213
- package/lib/languages/th.d.ts +7 -0
- package/lib/languages/th.js +139 -101
- package/lib/languages/tr.d.ts +18 -0
- package/lib/languages/tr.js +246 -66
- package/lib/languages/uk.d.ts +11 -0
- package/lib/languages/uk.js +197 -101
- package/lib/languages/ur.d.ts +7 -0
- package/lib/languages/ur.js +160 -123
- package/lib/languages/vi.d.ts +17 -0
- package/lib/languages/vi.js +287 -164
- package/lib/languages/zh-Hans.d.ts +11 -0
- package/lib/languages/zh-Hans.js +159 -142
- package/lib/languages/zh-Hant.d.ts +11 -0
- package/lib/languages/zh-Hant.js +202 -0
- package/lib/n2words.d.ts +53 -0
- package/lib/n2words.js +91 -227
- package/lib/utils/is-plain-object.d.ts +13 -0
- package/lib/utils/is-plain-object.js +17 -0
- package/lib/utils/parse-numeric.d.ts +17 -0
- package/lib/utils/parse-numeric.js +108 -0
- package/lib/utils/validate-options.d.ts +8 -0
- package/lib/utils/validate-options.js +16 -0
- package/package.json +118 -67
- package/dist/languages/pa-Guru.js +0 -2
- package/dist/languages/pa-Guru.js.map +0 -1
- package/lib/classes/abstract-language.js +0 -261
- package/lib/classes/greedy-scale-language.js +0 -195
- package/lib/classes/slavic-language.js +0 -251
- package/lib/classes/south-asian-language.js +0 -161
- package/lib/classes/turkic-language.js +0 -63
- package/lib/languages/pa-Guru.js +0 -126
- package/typings/classes/abstract-language.d.ts +0 -144
- package/typings/classes/greedy-scale-language.d.ts +0 -148
- package/typings/classes/slavic-language.d.ts +0 -145
- package/typings/classes/south-asian-language.d.ts +0 -101
- package/typings/classes/turkic-language.d.ts +0 -42
- package/typings/languages/ar.d.ts +0 -93
- package/typings/languages/az.d.ts +0 -25
- package/typings/languages/bn.d.ts +0 -1
- package/typings/languages/cs.d.ts +0 -120
- package/typings/languages/da.d.ts +0 -53
- package/typings/languages/de.d.ts +0 -26
- package/typings/languages/el.d.ts +0 -11
- package/typings/languages/en.d.ts +0 -30
- package/typings/languages/es.d.ts +0 -43
- package/typings/languages/fa.d.ts +0 -81
- package/typings/languages/fil.d.ts +0 -12
- package/typings/languages/fr-BE.d.ts +0 -41
- package/typings/languages/fr.d.ts +0 -43
- package/typings/languages/gu.d.ts +0 -12
- package/typings/languages/he.d.ts +0 -197
- package/typings/languages/hi.d.ts +0 -1
- package/typings/languages/hr.d.ts +0 -110
- package/typings/languages/hu.d.ts +0 -37
- package/typings/languages/id.d.ts +0 -69
- package/typings/languages/it.d.ts +0 -51
- package/typings/languages/ja.d.ts +0 -58
- package/typings/languages/kn.d.ts +0 -11
- package/typings/languages/ko.d.ts +0 -25
- package/typings/languages/lt.d.ts +0 -110
- package/typings/languages/lv.d.ts +0 -99
- package/typings/languages/mr.d.ts +0 -12
- package/typings/languages/ms.d.ts +0 -37
- package/typings/languages/nb.d.ts +0 -27
- package/typings/languages/nl.d.ts +0 -65
- package/typings/languages/pa-Guru.d.ts +0 -1
- package/typings/languages/pl.d.ts +0 -116
- package/typings/languages/pt.d.ts +0 -39
- package/typings/languages/ro.d.ts +0 -229
- package/typings/languages/ru.d.ts +0 -108
- package/typings/languages/sr-Latn.d.ts +0 -98
- package/typings/languages/sv.d.ts +0 -30
- package/typings/languages/sw.d.ts +0 -1
- package/typings/languages/ta.d.ts +0 -1
- package/typings/languages/te.d.ts +0 -1
- package/typings/languages/th.d.ts +0 -1
- package/typings/languages/tr.d.ts +0 -46
- package/typings/languages/uk.d.ts +0 -117
- package/typings/languages/ur.d.ts +0 -1
- package/typings/languages/vi.d.ts +0 -116
- package/typings/languages/zh-Hans.d.ts +0 -57
- package/typings/n2words.d.ts +0 -177
package/dist/languages/te.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"languages/te.js","mappings":"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AC,GAOX,OAHAsR,EAAoBF,GAAUnL,KAAKhG,EAAOD,QAASC,EAAQA,EAAOD,QAASmR,GAGpElR,EAAOD,OACf,CCrBAmR,EAAoBI,EAAI,CAACvR,EAASwR,KACjC,IAAI,IAAI3L,KAAO2L,EACXL,EAAoBM,EAAED,EAAY3L,KAASsL,EAAoBM,EAAEzR,EAAS6F,IAC5ExE,OAAOD,eAAepB,EAAS6F,EAAK,CAAE2E,YAAY,EAAMvJ,IAAKuQ,EAAW3L,MCJ3EsL,EAAoBM,EAAI,CAAC9F,EAAK+F,IAAUrQ,OAAOmB,UAAUgB,eAAeyC,KAAK0F,EAAK+F,G,sDCElF,MAAMC,UAAeC,EAAAA,EACnBhG,aAAe,QACfC,qBAAuB,UACvBC,SAAW,SACXG,yBAA0B,EAC1B4F,aAAe,CACb,SACA,OACA,QACA,OACA,SACA,MACA,MACA,MACA,UACA,WACA,MACA,UACA,WACA,SACA,YACA,UACA,SACA,UACA,cACA,aACA,OACA,cACA,aACA,YACA,cACA,WACA,WACA,WACA,eACA,gBACA,SACA,cACA,eACA,cACA,gBACA,aACA,aACA,aACA,iBACA,kBACA,OACA,YACA,aACA,YACA,cACA,WACA,WACA,WACA,eACA,gBACA,OACA,YACA,aACA,YACA,cACA,WACA,WACA,WACA,eACA,gBACA,OACA,YACA,aACA,YACA,cACA,WACA,WACA,WACA,eACA,gBACA,SACA,cACA,eACA,cACA,gBACA,aACA,aACA,aACA,iBACA,kBACA,OACA,YACA,aACA,YACA,cACA,WACA,WACA,WACA,eACA,gBACA,QACA,aACA,cACA,aACA,eACA,YACA,YACA,YACA,gBACA,kBAGFC,SAAW,CACT,GACA,MACA,cACA,aACA,eACA,YACA,YACA,YACA,gBACA,kBAIF5F,OAAS,CACP,OACA,QACA,OACA,SACA,MACA,MACA,MACA,UACA,YAGF6F,OAAS,CACP,GACA,SACA,OACA,OACA,OACA,OACA,OACA,OACA,QASFC,mBAAAA,CAAqBzM,GACnB,OAAOxC,KAAK8O,aAAatM,EAC3B,CAQA0M,oBAAAA,CAAsB1M,GACpB,GAAe,IAAXA,EAAc,MAAO,GACzB,GAAIA,EAAS,IAAK,OAAOxC,KAAKiP,oBAAoBzM,GAElD,MAAMuM,EAAWpO,KAAKE,MAAM2B,EAAS,KAC/B2M,EAAY3M,EAAS,IACrB4M,EAAQ,CAACpP,KAAK+O,SAASA,IAM7B,OAJII,EAAY,GACdC,EAAMzM,KAAK3C,KAAKiP,oBAAoBE,IAG/BC,EAAM1Q,KAAK,KAAKwL,MACzB,CAQAmF,WAAAA,CAAa7M,GACX,MAAM8M,EAAS9M,EAAOzC,WACtB,GAAIuP,EAAOzQ,QAAU,EAAG,MAAO,CAAC0K,OAAO+F,IAEvC,MAAMC,EAAS,GACTC,EAAQF,EAAO9Q,OAAO,GAC5B+Q,EAAOE,QAAQlG,OAAOiG,IAEtB,IAAIE,EAAYJ,EAAO9Q,MAAM,GAAI,GACjC,KAAOkR,EAAU7Q,OAAS,GAAG,CAC3B,MAAM8Q,EAAQD,EAAUlR,OAAO,GAC/B+Q,EAAOE,QAAQlG,OAAOoG,IACtBD,EAAYA,EAAUlR,MAAM,GAAI,EAClC,CAEA,OAAO+Q,CACT,CAEA/F,gBAAAA,CAAkBhH,GAChB,GAAe,KAAXA,EAAe,OAAOxC,KAAK+I,SAE/B,MAAMwG,EAASvP,KAAKqP,YAAY7M,GAC1BoN,EAAaL,EAAO1Q,OACpB8K,EAAQ,GAEd,IAAK,IAAI3G,EAAI,EAAGA,EAAI4M,EAAY5M,IAAK,CACnC,MAAM6M,EAAaN,EAAOvM,GAC1B,GAAmB,IAAf6M,EAAkB,SAEtB,MAAMC,EAAaF,EAAa5M,EAAI,EAC9B+M,EAA6B,IAAfF,GAAoBC,EAAa,EAAK,KAAO9P,KAAKkP,qBAAqBW,GAC3FlG,EAAMhH,KAAKoN,GACPD,EAAa,GAAK9P,KAAKgP,OAAOc,IAChCnG,EAAMhH,KAAK3C,KAAKgP,OAAOc,GAE3B,CAEA,OAAOnG,EAAMjL,KAAK,KAAKwL,MACzB,EAGa,SAASH,EAAgBnL,EAAOM,EAAU,CAAC,GACxD,OAAO,IAAI0P,EAAO1P,GAAS6K,eAAenL,EAC5C,C","sources":["webpack://n2words/webpack/universalModuleDefinition","webpack://n2words/./node_modules/core-js/internals/is-object.js","webpack://n2words/./node_modules/core-js/internals/make-built-in.js","webpack://n2words/./node_modules/core-js/internals/function-name.js","webpack://n2words/./node_modules/core-js/internals/hidden-keys.js","webpack://n2words/./node_modules/core-js/internals/function-bind-native.js","webpack://n2words/./node_modules/core-js/internals/math-trunc.js","webpack://n2words/./node_modules/core-js/internals/is-symbol.js","webpack://n2words/./node_modules/core-js/internals/internal-state.js","webpack://n2words/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://n2words/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://n2words/./node_modules/core-js/internals/object-keys-internal.js","webpack://n2words/./node_modules/core-js/internals/classof-raw.js","webpack://n2words/./node_modules/core-js/internals/to-primitive.js","webpack://n2words/./node_modules/core-js/internals/is-forced.js","webpack://n2words/./node_modules/core-js/internals/environment-user-agent.js","webpack://n2words/./node_modules/core-js/internals/uid.js","webpack://n2words/./node_modules/core-js/internals/inspect-source.js","webpack://n2words/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://n2words/./node_modules/core-js/internals/descriptors.js","webpack://n2words/./node_modules/core-js/internals/document-create-element.js","webpack://n2words/./node_modules/core-js/modules/es.array.push.js","webpack://n2words/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://n2words/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://n2words/./node_modules/core-js/internals/is-array.js","webpack://n2words/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://n2words/./node_modules/core-js/internals/array-set-length.js","webpack://n2words/./node_modules/core-js/internals/global-this.js","webpack://n2words/./node_modules/core-js/internals/is-callable.js","webpack://n2words/./node_modules/core-js/internals/object-define-property.js","webpack://n2words/./node_modules/core-js/internals/own-keys.js","webpack://n2words/./node_modules/core-js/internals/to-indexed-object.js","webpack://n2words/./node_modules/core-js/internals/to-absolute-index.js","webpack://n2words/./node_modules/core-js/internals/shared.js","webpack://n2words/./node_modules/core-js/internals/ie8-dom-define.js","webpack://n2words/./node_modules/core-js/internals/get-method.js","webpack://n2words/./node_modules/core-js/internals/shared-key.js","webpack://n2words/./node_modules/core-js/internals/length-of-array-like.js","webpack://n2words/./lib/classes/abstract-language.js","webpack://n2words/./node_modules/core-js/internals/is-pure.js","webpack://n2words/./node_modules/core-js/internals/export.js","webpack://n2words/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://n2words/./node_modules/core-js/internals/try-to-string.js","webpack://n2words/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://n2words/./node_modules/core-js/internals/define-built-in.js","webpack://n2words/./node_modules/core-js/internals/to-property-key.js","webpack://n2words/./node_modules/core-js/internals/create-property-descriptor.js","webpack://n2words/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://n2words/./node_modules/core-js/internals/indexed-object.js","webpack://n2words/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://n2words/./node_modules/core-js/internals/shared-store.js","webpack://n2words/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://n2words/./node_modules/core-js/internals/require-object-coercible.js","webpack://n2words/./node_modules/core-js/internals/get-built-in.js","webpack://n2words/./node_modules/core-js/internals/to-length.js","webpack://n2words/./node_modules/core-js/internals/well-known-symbol.js","webpack://n2words/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://n2words/./node_modules/core-js/internals/an-object.js","webpack://n2words/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://n2words/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://n2words/./node_modules/core-js/internals/enum-bug-keys.js","webpack://n2words/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://n2words/./node_modules/core-js/internals/to-object.js","webpack://n2words/./node_modules/core-js/internals/fails.js","webpack://n2words/./node_modules/core-js/internals/has-own-property.js","webpack://n2words/./node_modules/core-js/internals/a-callable.js","webpack://n2words/./node_modules/core-js/internals/define-global-property.js","webpack://n2words/./node_modules/core-js/internals/function-uncurry-this.js","webpack://n2words/./node_modules/core-js/internals/environment-v8-version.js","webpack://n2words/./node_modules/core-js/internals/function-call.js","webpack://n2words/./node_modules/core-js/internals/array-includes.js","webpack://n2words/webpack/bootstrap","webpack://n2words/webpack/runtime/define property getters","webpack://n2words/webpack/runtime/hasOwnProperty shorthand","webpack://n2words/./lib/languages/te.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"n2words\"] = factory();\n\telse\n\t\troot[\"n2words\"] = factory();\n})(globalThis, () => {\nreturn ","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nmodule.exports = function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\).*$/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar globalThis = require('../internals/global-this');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = globalThis.TypeError;\nvar WeakMap = globalThis.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar globalThis = require('../internals/global-this');\n\nvar navigator = globalThis.navigator;\nvar userAgent = navigator && navigator.userAgent;\n\nmodule.exports = userAgent ? String(userAgent) : '';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.1.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar isObject = require('../internals/is-object');\n\nvar document = globalThis.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar setArrayLength = require('../internals/array-set-length');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar fails = require('../internals/fails');\n\nvar INCORRECT_TO_LENGTH = fails(function () {\n return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;\n});\n\n// V8 <= 121 and Safari <= 15.4; FF < 23 throws InternalError\n// https://bugs.chromium.org/p/v8/issues/detail?id=12681\nvar properErrorOnNonWritableLength = function () {\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).push();\n } catch (error) {\n return error instanceof TypeError;\n }\n};\n\nvar FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();\n\n// `Array.prototype.push` method\n// https://tc39.es/ecma262/#sec-array.prototype.push\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n push: function push(item) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var argCount = arguments.length;\n doesNotExceedSafeInteger(len + argCount);\n for (var i = 0; i < argCount; i++) {\n O[len] = arguments[i];\n len++;\n }\n setArrayLength(O, len);\n return len;\n }\n});\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/environment-v8-version');\nvar fails = require('../internals/fails');\nvar globalThis = require('../internals/global-this');\n\nvar $String = globalThis.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar isArray = require('../internals/is-array');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Safari < 13 does not throw an error in this case\nvar SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {\n // makes no sense without proper strict mode support\n if (this !== undefined) return true;\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).length = 1;\n } catch (error) {\n return error instanceof TypeError;\n }\n}();\n\nmodule.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {\n if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {\n throw new $TypeError('Cannot set read only .length');\n } return O.length = length;\n} : function (O, length) {\n return O.length = length;\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\nvar documentAll = typeof document == 'object' && document.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nmodule.exports = typeof documentAll == 'undefined' && documentAll !== undefined ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar store = require('../internals/shared-store');\n\nmodule.exports = function (key, value) {\n return store[key] || (store[key] = value || {});\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","/**\n * Abstract base class for language converters.\n *\n * What this class handles:\n * - Validates and normalizes caller input (`number | string | bigint`), rejecting NaN/invalid strings.\n * - Splits sign, whole, and decimal parts, caching the whole part for languages that need it.\n * - Delegates whole-number wording to `convertWholePart(wholeNumber)` implemented by subclasses.\n * - Converts decimals via `decimalDigitsToWords()`, preserving leading zeros and supporting per-digit mode when `convertDecimalsPerDigit` is true.\n *\n * What subclasses must provide:\n * - `convertWholePart(wholeNumber)` method implementation (required; abstract).\n * - `negativeWord` class property (word preceding negative numbers, e.g., \"minus\").\n * - `zeroWord` class property (word for digit 0, e.g., \"zero\").\n * - `decimalSeparatorWord` class property (word between whole and decimal, e.g., \"point\").\n * - `wordSeparator` class property (word separator in output, typically a space).\n * Optional: override `convertDecimalsPerDigit`, `digits`, or `convertDigitToWord()` for custom behavior.\n *\n * This class stays minimal; language grammar lives in subclasses.\n *\n * @abstract\n */\nclass AbstractLanguage {\n /**\n * Word that precedes negative numbers (e.g., \"minus\", \"negative\", \"moins\").\n * @type {string}\n */\n negativeWord = ''\n\n /**\n * Word that separates whole and decimal parts (e.g., \"point\", \"virgule\", \"comma\").\n * @type {string}\n */\n decimalSeparatorWord = ''\n\n /**\n * Word representation for the digit 0 (e.g., \"zero\", \"zéro\", \"null\").\n * @type {string}\n */\n zeroWord = ''\n\n /**\n * Character(s) used to separate words in the output (typically a space).\n * @type {string}\n */\n wordSeparator = ' '\n\n /**\n * Cached whole number portion from the most recent conversion.\n * Some languages need access to this value during conversion for\n * pluralization rules or special cases (e.g., Czech, Hebrew).\n * @type {bigint}\n */\n cachedWholeNumber = 0n\n\n /**\n * Whether to convert decimal digits individually rather than grouped.\n * - `true`: Each digit converted separately (e.g., \"05\" → \"zero five\")\n * - `false`: Leading zeros preserved, remaining grouped (e.g., \"14\" → \"fourteen\")\n * Used by languages like Japanese, Thai, Tamil, Telugu.\n * @type {boolean}\n */\n convertDecimalsPerDigit = false\n\n /**\n * Optional array of digit words for direct lookup in `convertDigitToWord()`.\n * - Length 10: indices 0–9 map directly to digit words\n * - Length 9: indices 0–8 map to words for digits 1–9\n * - `null`: Falls back to `convertWholePart()` for digit conversion\n * @type {string[]|null}\n */\n digits = null\n\n /**\n * Convert a single decimal digit (0-9) to its word representation.\n *\n * Default behavior:\n * - 0 returns the language's `zeroWord`\n * - If a `digits` array is present, use it for direct lookup\n * - Length 10: indices 0–9 map directly\n * - Length 9: indices 1–9 map via `idx - 1`\n * - Otherwise delegate to `convertWholePart(digit)`\n *\n * Subclasses may override this for custom logic.\n *\n * @protected\n * @param {bigint} digit A single digit value (0-9) as BigInt\n * @returns {string} The word representation of the digit\n */\n convertDigitToWord (digit) {\n const idx = Number(digit)\n if (idx === 0) return this.zeroWord\n\n if (Array.isArray(this.digits)) {\n if (this.digits.length === 10) {\n return this.digits[idx] ?? this.zeroWord\n }\n if (this.digits.length === 9) {\n return this.digits[idx - 1] ?? this.zeroWord\n }\n }\n\n return this.convertWholePart(digit)\n }\n\n /**\n * Convert the decimal fractional digits into words.\n *\n * Behavior depends on the `convertDecimalsPerDigit` class property:\n *\n * **Per-digit mode** (`convertDecimalsPerDigit: true`):\n * - Each decimal digit is converted individually using `convertDigitToWord()`\n * - Example: \"05\" -> [zero, 'five'], \"14\" -> ['one', 'four']\n * - Used by: Japanese, Thai, Tamil, Telugu\n *\n * **Grouped mode** (default, `convertDecimalsPerDigit: false`):\n * - Leading zeros are preserved as individual `zeroWord` entries\n * - Remaining digits are grouped and converted as a number\n * - Example: \"05\" -> [zero, 'five'], \"14\" -> ['fourteen']\n * - Used by: Most languages (English, Spanish, French, etc.)\n *\n * @protected\n * @param {string} decimalString The decimal digits as a string (e.g. `'05'` for 3.05).\n * @returns {Array<string>} Array of word tokens representing the fractional part.\n *\n * @example\n * // Per-digit mode\n * decimalDigitsToWords('05'); // -> [this.zeroWord, 'five']\n * decimalDigitsToWords('14'); // -> ['one', 'four']\n *\n * // Grouped mode\n * decimalDigitsToWords('05'); // -> [this.zeroWord, 'five']\n * decimalDigitsToWords('14'); // -> ['fourteen']\n */\n decimalDigitsToWords (decimalString) {\n const words = []\n const len = decimalString.length\n\n if (this.convertDecimalsPerDigit) {\n for (let i = 0; i < len; i++) {\n const decimalDigit = BigInt(decimalString[i])\n words.push(this.convertDigitToWord(decimalDigit))\n }\n return words\n }\n\n // Default grouped-decimal behavior with leading zero preservation\n let i = 0\n while (i < len && decimalString[i] === '0') {\n words.push(this.zeroWord)\n i++\n }\n\n if (i === len) return words\n\n const remainingDigits = decimalString.slice(i)\n words.push(this.convertWholePart(BigInt(remainingDigits)))\n\n return words\n }\n\n /**\n * Convert a numeric input into its language cardinal representation.\n *\n * This is the public entry point used by consumers. It normalizes the input\n * (accepting `number | string | bigint`), validates it, splits sign and\n * fractional parts, and delegates whole-number conversion to\n * `convertWholePart(BigInt)` and fractional conversion to `decimalDigitsToWords()`.\n *\n * Errors and validation:\n * - Passing `NaN` (as `number`) throws `TypeError`.\n * - Passing a non-numeric `string` throws `Error`.\n * - Passing an unsupported type throws `TypeError`.\n *\n * @public\n * @param {number|string|bigint} value Numeric input to convert. Strings may include a single `.` decimal marker.\n * @returns {string} The localized cardinal string.\n * @throws {TypeError|Error} For invalid input as described above.\n */\n convertToWords (value) {\n // Normalize and validate input\n const inputType = typeof value\n\n if (inputType === 'number') {\n if (Number.isNaN(value)) throw new TypeError('NaN is not an accepted number.')\n value = value.toString()\n } else if (inputType === 'string') {\n value = value.trim()\n if (value.length === 0 || Number.isNaN(Number(value))) { throw new Error('Invalid number format: \"' + value + '\"') }\n } else if (inputType !== 'bigint') {\n throw new TypeError(\n 'Invalid variable type, expected number|string|bigint, received: ' + inputType\n )\n }\n\n const words = []\n\n // Detect negativity and strip sign for further processing.\n // Must check before type coercion for BigInt (comparison works but slice does not).\n let isNegative = false\n if (inputType === 'bigint') {\n if (value < 0n) {\n isNegative = true\n value = -value\n }\n } else {\n // For strings, check first character before normalization\n if (value[0] === '-') {\n isNegative = true\n value = value.slice(1)\n }\n }\n\n // Extract whole and decimal parts based on type.\n // BigInt has no decimal point; strings may contain a single '.'.\n // Default whole part to '0' if empty (e.g., '.5' -> '0' + '.5')\n let wholeNumber\n let decimalPart\n if (inputType === 'bigint') {\n wholeNumber = value\n } else {\n const decimalPointIndex = value.indexOf('.')\n if (decimalPointIndex === -1) {\n wholeNumber = BigInt(value)\n } else {\n const wholePartString = value.slice(0, decimalPointIndex) || '0'\n wholeNumber = BigInt(wholePartString)\n decimalPart = value.slice(decimalPointIndex + 1)\n }\n }\n\n this.cachedWholeNumber = wholeNumber\n\n if (isNegative) words.push(this.negativeWord)\n\n words.push(this.convertWholePart(wholeNumber))\n\n // Append decimal portion if present (separator + fractional digits)\n if (decimalPart) {\n words.push(this.decimalSeparatorWord)\n words.push(...this.decimalDigitsToWords(decimalPart))\n }\n\n return words.join(this.wordSeparator)\n }\n\n /**\n * Convert a BigInt whole number to its cardinal word representation.\n *\n * This is a template method that subclasses MUST implement to provide\n * language-specific number conversion logic.\n *\n * @abstract\n * @param {bigint} wholeNumber The whole number part to convert\n * @returns {string} The cardinal representation in the target language\n */\n convertWholePart (wholeNumber) {\n throw new Error('convertWholePart() must be implemented by subclass')\n }\n}\n\nexport default AbstractLanguage\n","'use strict';\nmodule.exports = false;\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = globalThis;\n } else if (STATIC) {\n target = globalThis[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = globalThis[TARGET] && globalThis[TARGET].prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL &&\n !Symbol.sham &&\n typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar globalThis = require('../internals/global-this');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});\n\n(store.versions || (store.versions = [])).push({\n version: '3.47.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2025 Denis Pushkarev (zloirock.ru), 2025 CoreJS Company (core-js.io)',\n license: 'https://github.com/zloirock/core-js/blob/v3.47.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(globalThis[namespace]) : globalThis[namespace] && globalThis[namespace][method];\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n var len = toIntegerOrInfinity(argument);\n return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = globalThis.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = globalThis.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(globalThis, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n globalThis[key] = value;\n } return value;\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\n// eslint-disable-next-line es/no-function-prototype-bind -- safe\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar globalThis = require('../internals/global-this');\nvar userAgent = require('../internals/environment-user-agent');\n\nvar process = globalThis.process;\nvar Deno = globalThis.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n// eslint-disable-next-line es/no-function-prototype-bind -- safe\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n if (length === 0) return !IS_INCLUDES && -1;\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import AbstractLanguage from '../classes/abstract-language.js'\n\nclass Telugu extends AbstractLanguage {\n negativeWord = 'మైనస్'\n decimalSeparatorWord = 'పాయింట్'\n zeroWord = 'సున్నా'\n convertDecimalsPerDigit = true // Enable digit-by-digit decimal conversion\n belowHundred = [\n 'సున్నా',\n 'ఒకటి',\n 'రెండు',\n 'మూడు',\n 'నాలుగు',\n 'ఐదు',\n 'ఆరు',\n 'ఏడు',\n 'ఎనిమిది',\n 'తొమ్మిది',\n 'పది',\n 'పదకొండు',\n 'పన్నెండు',\n 'పదమూడు',\n 'పద్నాలుగు',\n 'పదిహేను',\n 'పదహారు',\n 'పదిహేడు',\n 'పద్దెనిమిది',\n 'పంతొమ్మిది',\n 'ఇరవై',\n 'ఇరవై ఒక్కటి',\n 'ఇరవై రెండు',\n 'ఇరవై మూడు',\n 'ఇరవై నాలుగు',\n 'ఇరవై ఐదు',\n 'ఇరవై ఆరు',\n 'ఇరవై ఏడు',\n 'ఇరవై ఎనిమిది',\n 'ఇరవై తొమ్మిది',\n 'ముప్పై',\n 'ముప్పై ఒకటి',\n 'ముప్పై రెండు',\n 'ముప్పై మూడు',\n 'ముప్పై నాలుగు',\n 'ముప్పై ఐదు',\n 'ముప్పై ఆరు',\n 'ముప్పై ఏడు',\n 'ముప్పై ఎనిమిది',\n 'ముప్పై తొమ్మిది',\n 'నలభై',\n 'నలభై ఒకటి',\n 'నలభై రెండు',\n 'నలభై మూడు',\n 'నలభై నాలుగు',\n 'నలభై ఐదు',\n 'నలభై ఆరు',\n 'నలభై ఏడు',\n 'నలభై ఎనిమిది',\n 'నలభై తొమ్మిది',\n 'యాభై',\n 'యాభై ఒకటి',\n 'యాభై రెండు',\n 'యాభై మూడు',\n 'యాభై నాలుగు',\n 'యాభై ఐదు',\n 'యాభై ఆరు',\n 'యాభై ఏడు',\n 'యాభై ఎనిమిది',\n 'యాభై తొమ్మిది',\n 'అరవై',\n 'అరవై ఒకటి',\n 'అరవై రెండు',\n 'అరవై మూడు',\n 'అరవై నాలుగు',\n 'అరవై ఐదు',\n 'అరవై ఆరు',\n 'అరవై ఏడు',\n 'అరవై ఎనిమిది',\n 'అరవై తొమ్మిది',\n 'డెబ్బై',\n 'డెబ్బై ఒకటి',\n 'డెబ్బై రెండు',\n 'డెబ్బై మూడు',\n 'డెబ్బై నాలుగు',\n 'డెబ్బై ఐదు',\n 'డెబ్బై ఆరు',\n 'డెబ్బై ఏడు',\n 'డెబ్బై ఎనిమిది',\n 'డెబ్బై తొమ్మిది',\n 'ఎనభై',\n 'ఎనభై ఒకటి',\n 'ఎనభై రెండు',\n 'ఎనభై మూడు',\n 'ఎనభై నాలుగు',\n 'ఎనభై ఐదు',\n 'ఎనభై ఆరు',\n 'ఎనభై ఏడు',\n 'ఎనభై ఎనిమిది',\n 'ఎనభై తొమ్మిది',\n 'తొంభై',\n 'తొంభై ఒకటి',\n 'తొంభై రెండు',\n 'తొంభై మూడు',\n 'తొంభై నాలుగు',\n 'తొంభై ఐదు',\n 'తొంభై ఆరు',\n 'తొంభై ఏడు',\n 'తొంభై ఎనిమిది',\n 'తొంభై తొమ్మిది'\n ]\n\n hundreds = [\n '',\n 'వంద',\n 'రెండు వందలు',\n 'మూడు వందలు',\n 'నాలుగు వందలు',\n 'ఐదు వందలు',\n 'ఆరు వందలు',\n 'ఏడు వందలు',\n 'ఎనిమిది వందలు',\n 'తొమ్మిది వందలు'\n ]\n\n // Digits map 1–9 for decimal reading\n digits = [\n 'ఒకటి',\n 'రెండు',\n 'మూడు',\n 'నాలుగు',\n 'ఐదు',\n 'ఆరు',\n 'ఏడు',\n 'ఎనిమిది',\n 'తొమ్మిది'\n ]\n\n scales = [\n '',\n 'వెయ్యి',\n 'లక్ష',\n 'కోటి',\n 'అరబ్',\n 'ఖరబ్',\n 'నిల్',\n 'పడ్మ',\n 'శంకు'\n ]\n\n /**\n * Convert numbers below 100 to Telugu words.\n *\n * @param {number} number The number to convert (0-99).\n * @returns {string} The Telugu representation.\n */\n convertBelowHundred (number) {\n return this.belowHundred[number]\n }\n\n /**\n * Convert numbers below 1000 to Telugu words.\n *\n * @param {number} number The number to convert (0-999).\n * @returns {string} The Telugu representation.\n */\n convertBelowThousand (number) {\n if (number === 0) return ''\n if (number < 100) return this.convertBelowHundred(number)\n\n const hundreds = Math.trunc(number / 100)\n const remainder = number % 100\n const parts = [this.hundreds[hundreds]]\n\n if (remainder > 0) {\n parts.push(this.convertBelowHundred(remainder))\n }\n\n return parts.join(' ').trim()\n }\n\n /**\n * Split a number using Indian-style grouping (3-2-2 digits from right).\n *\n * @param {bigint} number The number to split.\n * @returns {number[]} Array of number groups.\n */\n splitIndian (number) {\n const numStr = number.toString()\n if (numStr.length <= 3) return [Number(numStr)]\n\n const groups = []\n const last3 = numStr.slice(-3)\n groups.unshift(Number(last3))\n\n let remaining = numStr.slice(0, -3)\n while (remaining.length > 0) {\n const group = remaining.slice(-2)\n groups.unshift(Number(group))\n remaining = remaining.slice(0, -2)\n }\n\n return groups\n }\n\n convertWholePart (number) {\n if (number === 0n) return this.zeroWord\n\n const groups = this.splitIndian(number)\n const groupCount = groups.length\n const words = []\n\n for (let i = 0; i < groupCount; i++) {\n const groupValue = groups[i]\n if (groupValue === 0) continue\n\n const scaleIndex = groupCount - i - 1\n const groupWords = (groupValue === 1 && scaleIndex > 0) ? 'ఒక' : this.convertBelowThousand(groupValue)\n words.push(groupWords)\n if (scaleIndex > 0 && this.scales[scaleIndex]) {\n words.push(this.scales[scaleIndex])\n }\n }\n\n return words.join(' ').trim()\n }\n}\n\nexport default function convertToWords (value, options = {}) {\n return new Telugu(options).convertToWords(value)\n}\n"],"names":["root","factory","exports","module","define","amd","globalThis","isCallable","it","uncurryThis","fails","hasOwn","DESCRIPTORS","CONFIGURABLE_FUNCTION_NAME","inspectSource","InternalStateModule","enforceInternalState","enforce","getInternalState","get","$String","String","defineProperty","Object","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","value","length","TEMPLATE","split","makeBuiltIn","name","options","getter","setter","configurable","arity","constructor","writable","prototype","undefined","error","state","source","Function","toString","this","FunctionPrototype","getDescriptor","getOwnPropertyDescriptor","EXISTS","PROPER","CONFIGURABLE","test","bind","hasOwnProperty","ceil","Math","floor","trunc","x","n","getBuiltIn","isPrototypeOf","USE_SYMBOL_AS_UID","$Object","$Symbol","set","has","NATIVE_WEAK_MAP","isObject","createNonEnumerableProperty","shared","sharedKey","hiddenKeys","OBJECT_ALREADY_INITIALIZED","TypeError","WeakMap","store","metadata","facade","STATE","getterFor","TYPE","type","argument","number","toIndexedObject","indexOf","push","object","names","key","O","i","result","call","isSymbol","getMethod","ordinaryToPrimitive","wellKnownSymbol","$TypeError","TO_PRIMITIVE","input","pref","exoticToPrim","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","navigator","userAgent","id","postfix","random","functionToString","f","getOwnPropertySymbols","document","createElement","$","toObject","lengthOfArrayLike","setArrayLength","doesNotExceedSafeInteger","target","proto","forced","properErrorOnNonWritableLength","item","len","argCount","arguments","fn","val","valueOf","classof","Array","isArray","V8_VERSION","symbol","Symbol","sham","SILENT_ON_NON_WRITABLE_LENGTH_SET","check","window","self","global","documentAll","all","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","anObject","toPropertyKey","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","P","Attributes","current","enumerable","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","concat","keys","IndexedObject","requireObjectCoercible","toIntegerOrInfinity","max","min","index","integer","a","aCallable","isNullOrUndefined","V","func","uid","toLength","obj","negativeWord","decimalSeparatorWord","zeroWord","wordSeparator","cachedWholeNumber","convertDecimalsPerDigit","digits","convertDigitToWord","digit","idx","Number","convertWholePart","decimalDigitsToWords","decimalString","words","decimalDigit","BigInt","remainingDigits","convertToWords","inputType","isNaN","trim","Error","wholeNumber","decimalPart","isNegative","decimalPointIndex","wholePartString","defineBuiltIn","defineGlobalProperty","copyConstructorProperties","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","definePropertyModule","createPropertyDescriptor","simple","unsafe","nonConfigurable","nonWritable","toPrimitive","bitmap","NATIVE_SYMBOL","iterator","propertyIsEnumerable","propertyIsEnumerableModule","IS_PURE","SHARED","versions","version","mode","copyright","license","ownKeys","getOwnPropertyDescriptorModule","exceptions","namespace","method","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","internalObjectKeys","getOwnPropertyNames","$propertyIsEnumerable","NASHORN_BUG","exec","tryToString","NATIVE_BIND","uncurryThisWithBind","apply","match","process","Deno","v8","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","includes","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","o","prop","Telugu","AbstractLanguage","belowHundred","hundreds","scales","convertBelowHundred","convertBelowThousand","remainder","parts","splitIndian","numStr","groups","last3","unshift","remaining","group","groupCount","groupValue","scaleIndex","groupWords"],"ignoreList":[],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"te.js","sources":["../../lib/utils/parse-numeric.js","../../lib/languages/te.js"],"sourcesContent":["/**\n * Numeric value parsing utility.\n * Transforms user input (number, string, or bigint) into normalized components.\n * @module parse-numeric\n */\n\n/**\n * Parses a numeric value into its components.\n * @param {number|string|bigint} value\n * @returns {{isNegative: boolean, integerPart: bigint, decimalPart?: string}}\n * @throws {TypeError} If value is not number, string, or bigint\n * @throws {Error} If value is not a valid number format\n */\nexport function parseNumericValue (value) {\n const type = typeof value\n\n // BigInt: simplest case\n if (type === 'bigint') {\n return value < 0n\n ? { isNegative: true, integerPart: -value }\n : { isNegative: false, integerPart: value }\n }\n\n // Number: fast path for safe integers\n if (type === 'number') {\n if (!Number.isFinite(value)) {\n throw new Error('Number must be finite (NaN and Infinity are not supported)')\n }\n if (Number.isSafeInteger(value)) {\n return value < 0\n ? { isNegative: true, integerPart: BigInt(-value) }\n : { isNegative: false, integerPart: BigInt(value) }\n }\n return parseNumericString(numberToString(value))\n }\n\n // String input\n if (type === 'string') {\n return parseNumericString(normalizeString(value))\n }\n\n throw new TypeError(\n `Invalid value type: expected number, string, or bigint, received ${type}`\n )\n}\n\n/**\n * Converts a number to decimal string, expanding scientific notation if needed.\n */\nfunction numberToString (value) {\n const str = value.toString()\n return (str.includes('e') || str.includes('E'))\n ? expandScientificNotation(str)\n : str\n}\n\n/**\n * Validates and normalizes a string numeric input.\n */\nfunction normalizeString (value) {\n const trimmed = value.trim()\n if (trimmed.length === 0 || Number.isNaN(Number(trimmed))) {\n throw new Error(`Invalid number format: \"${value}\"`)\n }\n return (trimmed.includes('e') || trimmed.includes('E'))\n ? expandScientificNotation(trimmed)\n : trimmed\n}\n\n/**\n * Parses a normalized numeric string into components.\n */\nfunction parseNumericString (str) {\n const isNegative = str[0] === '-'\n if (isNegative) str = str.slice(1)\n\n const dotIndex = str.indexOf('.')\n if (dotIndex === -1) {\n return { isNegative, integerPart: BigInt(str) }\n }\n\n const integerStr = str.slice(0, dotIndex) || '0'\n const decimalPart = str.slice(dotIndex + 1)\n return { isNegative, integerPart: BigInt(integerStr), decimalPart }\n}\n\n/**\n * Expands scientific notation to decimal form (e.g., \"1e21\" → \"1000...\").\n */\nfunction expandScientificNotation (str) {\n const [mantissa, expStr] = str.toLowerCase().split('e')\n const exp = parseInt(expStr, 10)\n\n const dotIndex = mantissa.indexOf('.')\n const digits = dotIndex === -1\n ? mantissa\n : mantissa.slice(0, dotIndex) + mantissa.slice(dotIndex + 1)\n const integerLength = dotIndex === -1 ? mantissa.length : dotIndex\n const newDotPosition = integerLength + exp\n\n if (newDotPosition >= digits.length) {\n return digits + '0'.repeat(newDotPosition - digits.length)\n }\n if (newDotPosition <= 0) {\n return '0.' + '0'.repeat(-newDotPosition) + digits\n }\n return digits.slice(0, newDotPosition) + '.' + digits.slice(newDotPosition)\n}\n","/**\n * Telugu language converter - Functional Implementation\n *\n * Self-contained converter for South Asian numbering.\n *\n * Key features:\n * - Indian numbering system (వెయ్యి, లక్ష, కోటి)\n * - Telugu script\n * - 3-2-2 grouping pattern\n * - Complete word forms for 0-99\n * - Per-digit decimal reading\n */\n\nimport { parseNumericValue } from '../utils/parse-numeric.js'\n\n// ============================================================================\n// Vocabulary\n// ============================================================================\n\nconst ZERO = 'సున్నా'\nconst NEGATIVE = 'మైనస్'\nconst DECIMAL_SEP = 'పాయింట్'\n\nconst BELOW_HUNDRED = [\n 'సున్నా', 'ఒకటి', 'రెండు', 'మూడు', 'నాలుగు', 'ఐదు', 'ఆరు', 'ఏడు', 'ఎనిమిది', 'తొమ్మిది',\n 'పది', 'పదకొండు', 'పన్నెండు', 'పదమూడు', 'పద్నాలుగు', 'పదిహేను', 'పదహారు', 'పదిహేడు', 'పద్దెనిమిది', 'పంతొమ్మిది',\n 'ఇరవై', 'ఇరవై ఒక్కటి', 'ఇరవై రెండు', 'ఇరవై మూడు', 'ఇరవై నాలుగు', 'ఇరవై ఐదు', 'ఇరవై ఆరు', 'ఇరవై ఏడు', 'ఇరవై ఎనిమిది', 'ఇరవై తొమ్మిది',\n 'ముప్పై', 'ముప్పై ఒకటి', 'ముప్పై రెండు', 'ముప్పై మూడు', 'ముప్పై నాలుగు', 'ముప్పై ఐదు', 'ముప్పై ఆరు', 'ముప్పై ఏడు', 'ముప్పై ఎనిమిది', 'ముప్పై తొమ్మిది',\n 'నలభై', 'నలభై ఒకటి', 'నలభై రెండు', 'నలభై మూడు', 'నలభై నాలుగు', 'నలభై ఐదు', 'నలభై ఆరు', 'నలభై ఏడు', 'నలభై ఎనిమిది', 'నలభై తొమ్మిది',\n 'యాభై', 'యాభై ఒకటి', 'యాభై రెండు', 'యాభై మూడు', 'యాభై నాలుగు', 'యాభై ఐదు', 'యాభై ఆరు', 'యాభై ఏడు', 'యాభై ఎనిమిది', 'యాభై తొమ్మిది',\n 'అరవై', 'అరవై ఒకటి', 'అరవై రెండు', 'అరవై మూడు', 'అరవై నాలుగు', 'అరవై ఐదు', 'అరవై ఆరు', 'అరవై ఏడు', 'అరవై ఎనిమిది', 'అరవై తొమ్మిది',\n 'డెబ్బై', 'డెబ్బై ఒకటి', 'డెబ్బై రెండు', 'డెబ్బై మూడు', 'డెబ్బై నాలుగు', 'డెబ్బై ఐదు', 'డెబ్బై ఆరు', 'డెబ్బై ఏడు', 'డెబ్బై ఎనిమిది', 'డెబ్బై తొమ్మిది',\n 'ఎనభై', 'ఎనభై ఒకటి', 'ఎనభై రెండు', 'ఎనభై మూడు', 'ఎనభై నాలుగు', 'ఎనభై ఐదు', 'ఎనభై ఆరు', 'ఎనభై ఏడు', 'ఎనభై ఎనిమిది', 'ఎనభై తొమ్మిది',\n 'తొంభై', 'తొంభై ఒకటి', 'తొంభై రెండు', 'తొంభై మూడు', 'తొంభై నాలుగు', 'తొంభై ఐదు', 'తొంభై ఆరు', 'తొంభై ఏడు', 'తొంభై ఎనిమిది', 'తొంభై తొమ్మిది'\n]\n\n// ============================================================================\n// Vocabulary (continued)\n// ============================================================================\n\nconst HUNDREDS = ['', 'వంద', 'రెండు వందలు', 'మూడు వందలు', 'నాలుగు వందలు', 'ఐదు వందలు', 'ఆరు వందలు', 'ఏడు వందలు', 'ఎనిమిది వందలు', 'తొమ్మిది వందలు']\n\n// Ones for decimal reading\nconst ONES = ['ఒకటి', 'రెండు', 'మూడు', 'నాలుగు', 'ఐదు', 'ఆరు', 'ఏడు', 'ఎనిమిది', 'తొమ్మిది']\n\n// Scale words: index 0 = units, 1 = thousand, 2 = lakh, etc.\nconst SCALE_WORDS = ['', 'వెయ్యి', 'లక్ష', 'కోటి', 'అరబ్', 'ఖరబ్', 'నిల్', 'పడ్మ', 'శంకు']\n\n// ============================================================================\n// Conversion Functions\n// ============================================================================\n\n/**\n * Converts 0-999 to Telugu words.\n */\nfunction convertBelowThousand (n) {\n if (n === 0) return ''\n if (n < 100) return BELOW_HUNDRED[n]\n\n const hundreds = Math.trunc(n / 100)\n const remainder = n % 100\n\n if (remainder === 0) {\n return HUNDREDS[hundreds]\n }\n return HUNDREDS[hundreds] + ' ' + BELOW_HUNDRED[remainder]\n}\n\n/**\n * Converts a non-negative integer to Telugu words.\n * Uses recursive approach for Indian 3-2-2 grouping pattern.\n *\n * @param {bigint} n - Non-negative integer to convert\n * @returns {string} Telugu words\n */\nfunction integerToWords (n) {\n if (n === 0n) return ZERO\n\n // Fast path: numbers < 1000 (direct lookup)\n if (n < 1000n) {\n return convertBelowThousand(Number(n))\n }\n\n return buildLargeNumberWords(n, 0)\n}\n\n/**\n * Recursively builds words for numbers >= 1000.\n * Indian grouping: first 3 digits, then 2-digit groups.\n *\n * @param {bigint} n - Number to convert\n * @param {number} scale - Current scale index (0=units, 1=thousands, etc.)\n * @returns {string} Telugu words\n */\nfunction buildLargeNumberWords (n, scale) {\n if (n === 0n) return ''\n\n // Determine divisor: 1000 for first split, 100 for rest\n const divisor = scale === 0 ? 1000n : 100n\n const segment = Number(n % divisor)\n const rest = n / divisor\n\n // Build higher segments first (recursive)\n let result = ''\n if (rest > 0n) {\n result = buildLargeNumberWords(rest, scale + 1)\n }\n\n // Add current segment\n if (segment > 0) {\n if (result) result += ' '\n\n if (scale === 0) {\n // Units segment (0-999)\n result += convertBelowThousand(segment)\n } else {\n // Scale segments (0-99)\n const groupWords = (segment === 1) ? 'ఒక' : BELOW_HUNDRED[segment]\n result += groupWords + ' ' + SCALE_WORDS[scale]\n }\n }\n\n return result\n}\n\nfunction decimalPartToWords (decimalPart) {\n // Per-digit decimal reading\n const digits = []\n for (const char of decimalPart) {\n const d = parseInt(char, 10)\n digits.push(d === 0 ? ZERO : ONES[d - 1])\n }\n return digits.join(' ')\n}\n\n/**\n * Converts a numeric value to Telugu words.\n *\n * @param {number | string | bigint} value - The numeric value to convert\n * @returns {string} The number in Telugu words\n */\nfunction toWords (value) {\n const { isNegative, integerPart, decimalPart } = parseNumericValue(value)\n\n let result = ''\n\n if (isNegative) {\n result = NEGATIVE + ' '\n }\n\n result += integerToWords(integerPart)\n\n if (decimalPart) {\n result += ' ' + DECIMAL_SEP + ' ' + decimalPartToWords(decimalPart)\n }\n\n return result\n}\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nexport { toWords }\n"],"names":["parseNumericString","str","isNegative","slice","dotIndex","indexOf","integerPart","BigInt","integerStr","decimalPart","expandScientificNotation","mantissa","expStr","toLowerCase","split","exp","parseInt","digits","newDotPosition","length","repeat","ZERO","BELOW_HUNDRED","HUNDREDS","ONES","SCALE_WORDS","convertBelowThousand","n","hundreds","Math","trunc","remainder","integerToWords","Number","buildLargeNumberWords","scale","divisor","segment","rest","result","value","type","isFinite","Error","isSafeInteger","toString","includes","numberToString","trimmed","trim","isNaN","normalizeString","TypeError","parseNumericValue","NEGATIVE","char","d","push","join","decimalPartToWords"],"mappings":"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"}
|
package/dist/languages/th.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
!function(t,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.n2words=r():t.n2words=r()}(globalThis,()=>(()=>{"use strict";var t={34(t,r,e){var n=e(4901);t.exports=function(t){return"object"==typeof t?null!==t:n(t)}},283(t,r,e){var n=e(9504),o=e(9039),i=e(4901),u=e(9297),a=e(3724),s=e(350).CONFIGURABLE,c=e(3706),p=e(1181),f=p.enforce,l=p.get,h=String,v=Object.defineProperty,g=n("".slice),d=n("".replace),y=n([].join),b=a&&!o(function(){return 8!==v(function(){},"length",{value:8}).length}),m=String(String).split("String"),x=t.exports=function(t,r,e){"Symbol("===g(h(r),0,7)&&(r="["+d(h(r),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),e&&e.getter&&(r="get "+r),e&&e.setter&&(r="set "+r),(!u(t,"name")||s&&t.name!==r)&&(a?v(t,"name",{value:r,configurable:!0}):t.name=r),b&&e&&u(e,"arity")&&t.length!==e.arity&&v(t,"length",{value:e.arity});try{e&&u(e,"constructor")&&e.constructor?a&&v(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(t){}var n=f(t);return u(n,"source")||(n.source=y(m,"string"==typeof r?r:"")),t};Function.prototype.toString=x(function(){return i(this)&&l(this).source||c(this)},"toString")},350(t,r,e){var n=e(3724),o=e(9297),i=Function.prototype,u=n&&Object.getOwnPropertyDescriptor,a=o(i,"name"),s=a&&"something"===function(){}.name,c=a&&(!n||n&&u(i,"name").configurable);t.exports={EXISTS:a,PROPER:s,CONFIGURABLE:c}},421(t){t.exports={}},616(t,r,e){var n=e(9039);t.exports=!n(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")})},741(t){var r=Math.ceil,e=Math.floor;t.exports=Math.trunc||function(t){var n=+t;return(n>0?e:r)(n)}},757(t,r,e){var n=e(7751),o=e(4901),i=e(1625),u=e(7040),a=Object;t.exports=u?function(t){return"symbol"==typeof t}:function(t){var r=n("Symbol");return o(r)&&i(r.prototype,a(t))}},1181(t,r,e){var n,o,i,u=e(8622),a=e(4576),s=e(34),c=e(6699),p=e(9297),f=e(7629),l=e(6119),h=e(421),v="Object already initialized",g=a.TypeError,d=a.WeakMap;if(u||f.state){var y=f.state||(f.state=new d);y.get=y.get,y.has=y.has,y.set=y.set,n=function(t,r){if(y.has(t))throw new g(v);return r.facade=t,y.set(t,r),r},o=function(t){return y.get(t)||{}},i=function(t){return y.has(t)}}else{var b=l("state");h[b]=!0,n=function(t,r){if(p(t,b))throw new g(v);return r.facade=t,c(t,b,r),r},o=function(t){return p(t,b)?t[b]:{}},i=function(t){return p(t,b)}}t.exports={set:n,get:o,has:i,enforce:function(t){return i(t)?o(t):n(t,{})},getterFor:function(t){return function(r){var e;if(!s(r)||(e=o(r)).type!==t)throw new g("Incompatible receiver, "+t+" required");return e}}}},1291(t,r,e){var n=e(741);t.exports=function(t){var r=+t;return r!=r||0===r?0:n(r)}},1625(t,r,e){var n=e(9504);t.exports=n({}.isPrototypeOf)},1828(t,r,e){var n=e(9504),o=e(9297),i=e(5397),u=e(9617).indexOf,a=e(421),s=n([].push);t.exports=function(t,r){var e,n=i(t),c=0,p=[];for(e in n)!o(a,e)&&o(n,e)&&s(p,e);for(;r.length>c;)o(n,e=r[c++])&&(~u(p,e)||s(p,e));return p}},2195(t,r,e){var n=e(9504),o=n({}.toString),i=n("".slice);t.exports=function(t){return i(o(t),8,-1)}},2777(t,r,e){var n=e(9565),o=e(34),i=e(757),u=e(5966),a=e(4270),s=e(8227),c=TypeError,p=s("toPrimitive");t.exports=function(t,r){if(!o(t)||i(t))return t;var e,s=u(t,p);if(s){if(void 0===r&&(r="default"),e=n(s,t,r),!o(e)||i(e))return e;throw new c("Can't convert object to primitive value")}return void 0===r&&(r="number"),a(t,r)}},2796(t,r,e){var n=e(9039),o=e(4901),i=/#|\.prototype\./,u=function(t,r){var e=s[a(t)];return e===p||e!==c&&(o(r)?n(r):!!r)},a=u.normalize=function(t){return String(t).replace(i,".").toLowerCase()},s=u.data={},c=u.NATIVE="N",p=u.POLYFILL="P";t.exports=u},2839(t,r,e){var n=e(4576).navigator,o=n&&n.userAgent;t.exports=o?String(o):""},3392(t,r,e){var n=e(9504),o=0,i=Math.random(),u=n(1.1.toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+u(++o+i,36)}},3706(t,r,e){var n=e(9504),o=e(4901),i=e(7629),u=n(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return u(t)}),t.exports=i.inspectSource},3717(t,r){r.f=Object.getOwnPropertySymbols},3724(t,r,e){var n=e(9039);t.exports=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},4055(t,r,e){var n=e(4576),o=e(34),i=n.document,u=o(i)&&o(i.createElement);t.exports=function(t){return u?i.createElement(t):{}}},4114(t,r,e){var n=e(6518),o=e(8981),i=e(6198),u=e(4527),a=e(6837);n({target:"Array",proto:!0,arity:1,forced:e(9039)(function(){return 4294967297!==[].push.call({length:4294967296},1)})||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}}()},{push:function(t){var r=o(this),e=i(r),n=arguments.length;a(e+n);for(var s=0;s<n;s++)r[e]=arguments[s],e++;return u(r,e),e}})},4117(t){t.exports=function(t){return null==t}},4270(t,r,e){var n=e(9565),o=e(4901),i=e(34),u=TypeError;t.exports=function(t,r){var e,a;if("string"===r&&o(e=t.toString)&&!i(a=n(e,t)))return a;if(o(e=t.valueOf)&&!i(a=n(e,t)))return a;if("string"!==r&&o(e=t.toString)&&!i(a=n(e,t)))return a;throw new u("Can't convert object to primitive value")}},4376(t,r,e){var n=e(2195);t.exports=Array.isArray||function(t){return"Array"===n(t)}},4495(t,r,e){var n=e(9519),o=e(9039),i=e(4576).String;t.exports=!!Object.getOwnPropertySymbols&&!o(function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&n&&n<41})},4527(t,r,e){var n=e(3724),o=e(4376),i=TypeError,u=Object.getOwnPropertyDescriptor,a=n&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=a?function(t,r){if(o(t)&&!u(t,"length").writable)throw new i("Cannot set read only .length");return t.length=r}:function(t,r){return t.length=r}},4576(t){var r=function(t){return t&&t.Math===Math&&t};t.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof global&&global)||r("object"==typeof this&&this)||function(){return this}()||Function("return this")()},4901(t){var r="object"==typeof document&&document.all;t.exports=void 0===r&&void 0!==r?function(t){return"function"==typeof t||t===r}:function(t){return"function"==typeof t}},4913(t,r,e){var n=e(3724),o=e(5917),i=e(8686),u=e(8551),a=e(6969),s=TypeError,c=Object.defineProperty,p=Object.getOwnPropertyDescriptor,f="enumerable",l="configurable",h="writable";r.f=n?i?function(t,r,e){if(u(t),r=a(r),u(e),"function"==typeof t&&"prototype"===r&&"value"in e&&h in e&&!e[h]){var n=p(t,r);n&&n[h]&&(t[r]=e.value,e={configurable:l in e?e[l]:n[l],enumerable:f in e?e[f]:n[f],writable:!1})}return c(t,r,e)}:c:function(t,r,e){if(u(t),r=a(r),u(e),o)try{return c(t,r,e)}catch(t){}if("get"in e||"set"in e)throw new s("Accessors not supported");return"value"in e&&(t[r]=e.value),t}},5031(t,r,e){var n=e(7751),o=e(9504),i=e(8480),u=e(3717),a=e(8551),s=o([].concat);t.exports=n("Reflect","ownKeys")||function(t){var r=i.f(a(t)),e=u.f;return e?s(r,e(t)):r}},5397(t,r,e){var n=e(7055),o=e(7750);t.exports=function(t){return n(o(t))}},5610(t,r,e){var n=e(1291),o=Math.max,i=Math.min;t.exports=function(t,r){var e=n(t);return e<0?o(e+r,0):i(e,r)}},5745(t,r,e){var n=e(7629);t.exports=function(t,r){return n[t]||(n[t]=r||{})}},5917(t,r,e){var n=e(3724),o=e(9039),i=e(4055);t.exports=!n&&!o(function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a})},5966(t,r,e){var n=e(9306),o=e(4117);t.exports=function(t,r){var e=t[r];return o(e)?void 0:n(e)}},6119(t,r,e){var n=e(5745),o=e(3392),i=n("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},6198(t,r,e){var n=e(8014);t.exports=function(t){return n(t.length)}},6298(t,r,e){e.d(r,{A:()=>n}),e(4114);const n=class{negativeWord="";decimalSeparatorWord="";zeroWord="";wordSeparator=" ";cachedWholeNumber=0n;convertDecimalsPerDigit=!1;digits=null;convertDigitToWord(t){const r=Number(t);if(0===r)return this.zeroWord;if(Array.isArray(this.digits)){if(10===this.digits.length)return this.digits[r]??this.zeroWord;if(9===this.digits.length)return this.digits[r-1]??this.zeroWord}return this.convertWholePart(t)}decimalDigitsToWords(t){const r=[],e=t.length;if(this.convertDecimalsPerDigit){for(let n=0;n<e;n++){const e=BigInt(t[n]);r.push(this.convertDigitToWord(e))}return r}let n=0;for(;n<e&&"0"===t[n];)r.push(this.zeroWord),n++;if(n===e)return r;const o=t.slice(n);return r.push(this.convertWholePart(BigInt(o))),r}convertToWords(t){const r=typeof t;if("number"===r){if(Number.isNaN(t))throw new TypeError("NaN is not an accepted number.");t=t.toString()}else if("string"===r){if(0===(t=t.trim()).length||Number.isNaN(Number(t)))throw new Error('Invalid number format: "'+t+'"')}else if("bigint"!==r)throw new TypeError("Invalid variable type, expected number|string|bigint, received: "+r);const e=[];let n,o,i=!1;if("bigint"===r?t<0n&&(i=!0,t=-t):"-"===t[0]&&(i=!0,t=t.slice(1)),"bigint"===r)n=t;else{const r=t.indexOf(".");if(-1===r)n=BigInt(t);else{const e=t.slice(0,r)||"0";n=BigInt(e),o=t.slice(r+1)}}return this.cachedWholeNumber=n,i&&e.push(this.negativeWord),e.push(this.convertWholePart(n)),o&&(e.push(this.decimalSeparatorWord),e.push(...this.decimalDigitsToWords(o))),e.join(this.wordSeparator)}convertWholePart(t){throw new Error("convertWholePart() must be implemented by subclass")}}},6395(t){t.exports=!1},6518(t,r,e){var n=e(4576),o=e(7347).f,i=e(6699),u=e(6840),a=e(9433),s=e(7740),c=e(2796);t.exports=function(t,r){var e,p,f,l,h,v=t.target,g=t.global,d=t.stat;if(e=g?n:d?n[v]||a(v,{}):n[v]&&n[v].prototype)for(p in r){if(l=r[p],f=t.dontCallGetSet?(h=o(e,p))&&h.value:e[p],!c(g?p:v+(d?".":"#")+p,t.forced)&&void 0!==f){if(typeof l==typeof f)continue;s(l,f)}(t.sham||f&&f.sham)&&i(l,"sham",!0),u(e,p,l,t)}}},6699(t,r,e){var n=e(3724),o=e(4913),i=e(6980);t.exports=n?function(t,r,e){return o.f(t,r,i(1,e))}:function(t,r,e){return t[r]=e,t}},6823(t){var r=String;t.exports=function(t){try{return r(t)}catch(t){return"Object"}}},6837(t){var r=TypeError;t.exports=function(t){if(t>9007199254740991)throw r("Maximum allowed index exceeded");return t}},6840(t,r,e){var n=e(4901),o=e(4913),i=e(283),u=e(9433);t.exports=function(t,r,e,a){a||(a={});var s=a.enumerable,c=void 0!==a.name?a.name:r;if(n(e)&&i(e,c,a),a.global)s?t[r]=e:u(r,e);else{try{a.unsafe?t[r]&&(s=!0):delete t[r]}catch(t){}s?t[r]=e:o.f(t,r,{value:e,enumerable:!1,configurable:!a.nonConfigurable,writable:!a.nonWritable})}return t}},6969(t,r,e){var n=e(2777),o=e(757);t.exports=function(t){var r=n(t,"string");return o(r)?r:r+""}},6980(t){t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},7040(t,r,e){var n=e(4495);t.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},7055(t,r,e){var n=e(9504),o=e(9039),i=e(2195),u=Object,a=n("".split);t.exports=o(function(){return!u("z").propertyIsEnumerable(0)})?function(t){return"String"===i(t)?a(t,""):u(t)}:u},7347(t,r,e){var n=e(3724),o=e(9565),i=e(8773),u=e(6980),a=e(5397),s=e(6969),c=e(9297),p=e(5917),f=Object.getOwnPropertyDescriptor;r.f=n?f:function(t,r){if(t=a(t),r=s(r),p)try{return f(t,r)}catch(t){}if(c(t,r))return u(!o(i.f,t,r),t[r])}},7629(t,r,e){var n=e(6395),o=e(4576),i=e(9433),u="__core-js_shared__",a=t.exports=o[u]||i(u,{});(a.versions||(a.versions=[])).push({version:"3.47.0",mode:n?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru), 2025 CoreJS Company (core-js.io)",license:"https://github.com/zloirock/core-js/blob/v3.47.0/LICENSE",source:"https://github.com/zloirock/core-js"})},7740(t,r,e){var n=e(9297),o=e(5031),i=e(7347),u=e(4913);t.exports=function(t,r,e){for(var a=o(r),s=u.f,c=i.f,p=0;p<a.length;p++){var f=a[p];n(t,f)||e&&n(e,f)||s(t,f,c(r,f))}}},7750(t,r,e){var n=e(4117),o=TypeError;t.exports=function(t){if(n(t))throw new o("Can't call method on "+t);return t}},7751(t,r,e){var n=e(4576),o=e(4901);t.exports=function(t,r){return arguments.length<2?(e=n[t],o(e)?e:void 0):n[t]&&n[t][r];var e}},8014(t,r,e){var n=e(1291),o=Math.min;t.exports=function(t){var r=n(t);return r>0?o(r,9007199254740991):0}},8227(t,r,e){var n=e(4576),o=e(5745),i=e(9297),u=e(3392),a=e(4495),s=e(7040),c=n.Symbol,p=o("wks"),f=s?c.for||c:c&&c.withoutSetter||u;t.exports=function(t){return i(p,t)||(p[t]=a&&i(c,t)?c[t]:f("Symbol."+t)),p[t]}},8480(t,r,e){var n=e(1828),o=e(8727).concat("length","prototype");r.f=Object.getOwnPropertyNames||function(t){return n(t,o)}},8551(t,r,e){var n=e(34),o=String,i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not an object")}},8622(t,r,e){var n=e(4576),o=e(4901),i=n.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},8686(t,r,e){var n=e(3724),o=e(9039);t.exports=n&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},8727(t){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},8773(t,r){var e={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!e.call({1:2},1);r.f=o?function(t){var r=n(this,t);return!!r&&r.enumerable}:e},8981(t,r,e){var n=e(7750),o=Object;t.exports=function(t){return o(n(t))}},9039(t){t.exports=function(t){try{return!!t()}catch(t){return!0}}},9297(t,r,e){var n=e(9504),o=e(8981),i=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,r){return i(o(t),r)}},9306(t,r,e){var n=e(4901),o=e(6823),i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not a function")}},9433(t,r,e){var n=e(4576),o=Object.defineProperty;t.exports=function(t,r){try{o(n,t,{value:r,configurable:!0,writable:!0})}catch(e){n[t]=r}return r}},9504(t,r,e){var n=e(616),o=Function.prototype,i=o.call,u=n&&o.bind.bind(i,i);t.exports=n?u:function(t){return function(){return i.apply(t,arguments)}}},9519(t,r,e){var n,o,i=e(4576),u=e(2839),a=i.process,s=i.Deno,c=a&&a.versions||s&&s.version,p=c&&c.v8;p&&(o=(n=p.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&u&&(!(n=u.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=u.match(/Chrome\/(\d+)/))&&(o=+n[1]),t.exports=o},9565(t,r,e){var n=e(616),o=Function.prototype.call;t.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},9617(t,r,e){var n=e(5397),o=e(5610),i=e(6198),u=function(t){return function(r,e,u){var a=n(r),s=i(a);if(0===s)return!t&&-1;var c,p=o(u,s);if(t&&e!=e){for(;s>p;)if((c=a[p++])!=c)return!0}else for(;s>p;p++)if((t||p in a)&&a[p]===e)return t||p||0;return!t&&-1}};t.exports={includes:u(!0),indexOf:u(!1)}}},r={};function e(n){var o=r[n];if(void 0!==o)return o.exports;var i=r[n]={exports:{}};return t[n].call(i.exports,i,i.exports,e),i.exports}e.d=(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},e.o=(t,r)=>Object.prototype.hasOwnProperty.call(t,r);var n={};e.d(n,{default:()=>u}),e(4114);var o=e(6298);class i extends o.A{negativeWord="ลบ";decimalSeparatorWord="จุด";zeroWord="ศูนย์";wordSeparator="";convertDecimalsPerDigit=!0;digits=["หนึ่ง","สอง","สาม","สี่","ห้า","หก","เจ็ด","แปด","เก้า"];convertBelowMillion(t){if(0===t)return"";let r=t;const e=[],n=Math.trunc(r/1e5);r%=1e5;const o=Math.trunc(r/1e4);r%=1e4;const i=Math.trunc(r/1e3);r%=1e3;const u=Math.trunc(r/100);r%=100;const a=Math.trunc(r/10),s=r%10;return n>0&&e.push(this.digits[n-1]+"แสน"),o>0&&(1===o?e.push("หนึ่งหมื่น"):e.push(this.digits[o-1]+"หมื่น")),i>0&&e.push(this.digits[i-1]+"พัน"),u>0&&e.push(this.digits[u-1]+"ร้อย"),a>0&&(1===a?e.push("สิบ"):2===a?e.push("ยี่สิบ"):e.push(this.digits[a-1]+"สิบ")),s>0&&(1===s&&(a>0||n>0||o>0||i>0||u>0||a>0)?e.push("เอ็ด"):e.push(this.digits[s-1])),e.join("")}splitMillionGroups(t){const r=[];let e=t;const n=1000000n;for(;e>0n;){const t=Number(e%n);r.unshift(t),e/=n}return r}convertWholePart(t){if(0n===t)return this.zeroWord;const r=this.splitMillionGroups(t),e=[];for(let t=0;t<r.length;t++){const n=r[t];if(0===n)continue;e.push(this.convertBelowMillion(n));const o=r.length-t-1;o>0&&e.push("ล้าน".repeat(o))}return e.join("")}}function u(t,r={}){return new i(r).convertToWords(t)}return n.default})());
|
|
2
|
-
|
|
1
|
+
/*! n2words/th v3.0.0 | MIT License | github.com/forzagreen/n2words */
|
|
2
|
+
var e,t;e=this,t=function(e){"use strict";function t(e){const t="-"===e[0];t&&(e=e.slice(1));const n=e.indexOf(".");if(-1===n)return{isNegative:t,integerPart:BigInt(e)};const r=e.slice(0,n)||"0",i=e.slice(n+1);return{isNegative:t,integerPart:BigInt(r),decimalPart:i}}function n(e){const[t,n]=e.toLowerCase().split("e"),r=parseInt(n,10),i=t.indexOf("."),s=-1===i?t:t.slice(0,i)+t.slice(i+1),o=(-1===i?t.length:i)+r;return o>=s.length?s+"0".repeat(o-s.length):o<=0?"0."+"0".repeat(-o)+s:s.slice(0,o)+"."+s.slice(o)}const r=["หนึ่ง","สอง","สาม","สี่","ห้า","หก","เจ็ด","แปด","เก้า"],i="ศูนย์";function s(e){if(0===e)return"";let t=e;const n=[],i=Math.trunc(t/1e5);t%=1e5;const s=Math.trunc(t/1e4);t%=1e4;const o=Math.trunc(t/1e3);t%=1e3;const u=Math.trunc(t/100);t%=100;const c=Math.trunc(t/10),f=t%10;return i>0&&n.push(r[i-1]+"แสน"),s>0&&n.push(1===s?"หนึ่งหมื่น":r[s-1]+"หมื่น"),o>0&&n.push(r[o-1]+"พัน"),u>0&&n.push(r[u-1]+"ร้อย"),c>0&&n.push(1===c?"สิบ":2===c?"ยี่สิบ":r[c-1]+"สิบ"),f>0&&n.push(1===f&&(c>0||i>0||s>0||o>0||u>0||c>0)?"เอ็ด":r[f-1]),n.join("")}e.th=function(e){const{isNegative:o,integerPart:u,decimalPart:c}=function(e){const r=typeof e;if("bigint"===r)return e<0n?{isNegative:!0,integerPart:-e}:{isNegative:!1,integerPart:e};if("number"===r){if(!Number.isFinite(e))throw new Error("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)}:t(function(e){const t=e.toString();return t.includes("e")||t.includes("E")?n(t):t}(e))}if("string"===r)return t(function(e){const t=e.trim();if(0===t.length||Number.isNaN(Number(t)))throw new Error(`Invalid number format: "${e}"`);return t.includes("e")||t.includes("E")?n(t):t}(e));throw new TypeError(`Invalid value type: expected number, string, or bigint, received ${r}`)}(e);let f="";return o&&(f="ลบ"),f+=function(e){if(0n===e)return i;const t=function(e){const t=[];let n=e;const r=1000000n;for(;n>0n;){const e=Number(n%r);t.unshift(e),n/=r}return t}(e),n=[];for(let e=0;e<t.length;e++){const r=t[e];if(0===r)continue;n.push(s(r));const i=t.length-e-1;i>0&&n.push("ล้าน".repeat(i))}return n.join("")}(u),c&&(f+="จุด"+function(e){const t=[];for(const n of e){const e=parseInt(n,10);t.push(0===e?i:r[e-1])}return t.join("")}(c)),f}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).n2words=e.n2words||{});
|
|
3
|
+
//# sourceMappingURL=th.js.map
|