urdu-text-utils 0.1.8 → 0.1.10-alpha.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 +7 -0
- package/README.md +27 -0
- package/dist/index.cjs +697 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +86 -1
- package/dist/index.d.ts +86 -1
- package/dist/index.iife.js +1 -1
- package/dist/index.iife.js.map +1 -1
- package/dist/index.js +693 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -3285,7 +3285,460 @@ var ROMAN_VARIANTS = {
|
|
|
3285
3285
|
mashallah: "\u0645\u0627\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
|
|
3286
3286
|
inshallah: "\u0627\u0646\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
|
|
3287
3287
|
alhamdulillah: "\u0627\u0644\u062D\u0645\u062F\u0644\u0644\u06C1",
|
|
3288
|
-
jazakallah: "\u062C\u0632\u0627\u06A9\u200C\u0627\u0644\u0644\u06C1"
|
|
3288
|
+
jazakallah: "\u062C\u0632\u0627\u06A9\u200C\u0627\u0644\u0644\u06C1",
|
|
3289
|
+
// ---- additional Roman variants for common words ----
|
|
3290
|
+
// verbs
|
|
3291
|
+
hona: "\u06C1\u0648\u0646\u0627",
|
|
3292
|
+
hua: "\u06C1\u0648\u0627",
|
|
3293
|
+
hui: "\u06C1\u0648\u0626\u06CC",
|
|
3294
|
+
hue: "\u06C1\u0648\u0626\u06D2",
|
|
3295
|
+
jana: "\u062C\u0627\u0646\u0627",
|
|
3296
|
+
jata: "\u062C\u0627\u062A\u0627",
|
|
3297
|
+
jati: "\u062C\u0627\u062A\u06CC",
|
|
3298
|
+
gaya: "\u06AF\u06CC\u0627",
|
|
3299
|
+
gayi: "\u06AF\u0626\u06CC",
|
|
3300
|
+
aana: "\u0622\u0646\u0627",
|
|
3301
|
+
aati: "\u0622\u062A\u06CC",
|
|
3302
|
+
aaya: "\u0622\u06CC\u0627",
|
|
3303
|
+
aayi: "\u0622\u0626\u06CC",
|
|
3304
|
+
dena: "\u062F\u06CC\u0646\u0627",
|
|
3305
|
+
deta: "\u062F\u06CC\u062A\u0627",
|
|
3306
|
+
deti: "\u062F\u06CC\u062A\u06CC",
|
|
3307
|
+
diya: "\u062F\u06CC\u0627",
|
|
3308
|
+
lena: "\u0644\u06CC\u0646\u0627",
|
|
3309
|
+
leta: "\u0644\u06CC\u062A\u0627",
|
|
3310
|
+
leti: "\u0644\u06CC\u062A\u06CC",
|
|
3311
|
+
liya: "\u0644\u06CC\u0627",
|
|
3312
|
+
kehna: "\u06A9\u06C1\u0646\u0627",
|
|
3313
|
+
kehta: "\u06A9\u06C1\u062A\u0627",
|
|
3314
|
+
kehti: "\u06A9\u06C1\u062A\u06CC",
|
|
3315
|
+
dekhta: "\u062F\u06CC\u06A9\u06BE\u062A\u0627",
|
|
3316
|
+
dekhti: "\u062F\u06CC\u06A9\u06BE\u062A\u06CC",
|
|
3317
|
+
dekha: "\u062F\u06CC\u06A9\u06BE\u0627",
|
|
3318
|
+
bolna: "\u0628\u0648\u0644\u0646\u0627",
|
|
3319
|
+
bolta: "\u0628\u0648\u0644\u062A\u0627",
|
|
3320
|
+
boli: "\u0628\u0648\u0644\u06CC",
|
|
3321
|
+
bola: "\u0628\u0648\u0644\u0627",
|
|
3322
|
+
padhna: "\u067E\u0691\u06BE\u0646\u0627",
|
|
3323
|
+
padhta: "\u067E\u0691\u06BE\u062A\u0627",
|
|
3324
|
+
padhti: "\u067E\u0691\u06BE\u062A\u06CC",
|
|
3325
|
+
padha: "\u067E\u0691\u06BE\u0627",
|
|
3326
|
+
likhna: "\u0644\u06A9\u06BE\u0646\u0627",
|
|
3327
|
+
likhta: "\u0644\u06A9\u06BE\u062A\u0627",
|
|
3328
|
+
likhti: "\u0644\u06A9\u06BE\u062A\u06CC",
|
|
3329
|
+
likha: "\u0644\u06A9\u06BE\u0627",
|
|
3330
|
+
samajhna: "\u0633\u0645\u062C\u06BE\u0646\u0627",
|
|
3331
|
+
samjha: "\u0633\u0645\u062C\u06BE\u0627",
|
|
3332
|
+
chahna: "\u0686\u0627\u06C1\u0646\u0627",
|
|
3333
|
+
chahta: "\u0686\u0627\u06C1\u062A\u0627",
|
|
3334
|
+
chahti: "\u0686\u0627\u06C1\u062A\u06CC",
|
|
3335
|
+
sakna: "\u0633\u06A9\u0646\u0627",
|
|
3336
|
+
sakta: "\u0633\u06A9\u062A\u0627",
|
|
3337
|
+
sakti: "\u0633\u06A9\u062A\u06CC",
|
|
3338
|
+
rehna: "\u0631\u06C1\u0646\u0627",
|
|
3339
|
+
rehta: "\u0631\u06C1\u062A\u0627",
|
|
3340
|
+
rehti: "\u0631\u06C1\u062A\u06CC",
|
|
3341
|
+
raha: "\u0631\u06C1\u0627",
|
|
3342
|
+
rahi: "\u0631\u06C1\u06CC",
|
|
3343
|
+
banna: "\u0628\u0646\u0646\u0627",
|
|
3344
|
+
bana: "\u0628\u0646\u0627",
|
|
3345
|
+
banana: "\u0628\u0646\u0627\u0646\u0627",
|
|
3346
|
+
banaya: "\u0628\u0646\u0627\u06CC\u0627",
|
|
3347
|
+
milna: "\u0645\u0644\u0646\u0627",
|
|
3348
|
+
milta: "\u0645\u0644\u062A\u0627",
|
|
3349
|
+
milti: "\u0645\u0644\u062A\u06CC",
|
|
3350
|
+
mila: "\u0645\u0644\u0627",
|
|
3351
|
+
mili: "\u0645\u0644\u06CC",
|
|
3352
|
+
khata: "\u06A9\u06BE\u0627\u062A\u0627",
|
|
3353
|
+
khati: "\u06A9\u06BE\u0627\u062A\u06CC",
|
|
3354
|
+
khaya: "\u06A9\u06BE\u0627\u06CC\u0627",
|
|
3355
|
+
peena: "\u067E\u06CC\u0646\u0627",
|
|
3356
|
+
peeta: "\u067E\u06CC\u062A\u0627",
|
|
3357
|
+
piya: "\u067E\u06CC\u0627",
|
|
3358
|
+
sota: "\u0633\u0648\u062A\u0627",
|
|
3359
|
+
soti: "\u0633\u0648\u062A\u06CC",
|
|
3360
|
+
soya: "\u0633\u0648\u06CC\u0627",
|
|
3361
|
+
uthna: "\u0627\u0679\u06BE\u0646\u0627",
|
|
3362
|
+
utha: "\u0627\u0679\u06BE\u0627",
|
|
3363
|
+
baithna: "\u0628\u06CC\u0679\u06BE\u0646\u0627",
|
|
3364
|
+
baitha: "\u0628\u06CC\u0679\u06BE\u0627",
|
|
3365
|
+
chalta: "\u0686\u0644\u062A\u0627",
|
|
3366
|
+
chalti: "\u0686\u0644\u062A\u06CC",
|
|
3367
|
+
chala: "\u0686\u0644\u0627",
|
|
3368
|
+
rakhna: "\u0631\u06A9\u06BE\u0646\u0627",
|
|
3369
|
+
rakha: "\u0631\u06A9\u06BE\u0627",
|
|
3370
|
+
maangna: "\u0645\u0627\u0646\u06AF\u0646\u0627",
|
|
3371
|
+
manga: "\u0645\u0627\u0646\u06AF\u0627",
|
|
3372
|
+
puchna: "\u067E\u0648\u0686\u06BE\u0646\u0627",
|
|
3373
|
+
poocha: "\u067E\u0648\u0686\u06BE\u0627",
|
|
3374
|
+
batana: "\u0628\u062A\u0627\u0646\u0627",
|
|
3375
|
+
bataya: "\u0628\u062A\u0627\u06CC\u0627",
|
|
3376
|
+
kholna: "\u06A9\u06BE\u0648\u0644\u0646\u0627",
|
|
3377
|
+
khola: "\u06A9\u06BE\u0648\u0644\u0627",
|
|
3378
|
+
marna: "\u0645\u0631\u0646\u0627",
|
|
3379
|
+
mara: "\u0645\u0631\u0627",
|
|
3380
|
+
jeetna: "\u062C\u06CC\u062A\u0646\u0627",
|
|
3381
|
+
jeeta: "\u062C\u06CC\u062A\u0627",
|
|
3382
|
+
haarna: "\u06C1\u0627\u0631\u0646\u0627",
|
|
3383
|
+
haara: "\u06C1\u0627\u0631\u0627",
|
|
3384
|
+
badalna: "\u0628\u062F\u0644\u0646\u0627",
|
|
3385
|
+
badla: "\u0628\u062F\u0644\u0627",
|
|
3386
|
+
rukna: "\u0631\u06A9\u0646\u0627",
|
|
3387
|
+
rokna: "\u0631\u0648\u06A9\u0646\u0627",
|
|
3388
|
+
roka: "\u0631\u0648\u06A9\u0627",
|
|
3389
|
+
khelna: "\u06A9\u06BE\u06CC\u0644\u0646\u0627",
|
|
3390
|
+
khela: "\u06A9\u06BE\u06CC\u0644\u0627",
|
|
3391
|
+
hansna: "\u06C1\u0646\u0633\u0646\u0627",
|
|
3392
|
+
hansa: "\u06C1\u0646\u0633\u0627",
|
|
3393
|
+
rona: "\u0631\u0648\u0646\u0627",
|
|
3394
|
+
roya: "\u0631\u0648\u06CC\u0627",
|
|
3395
|
+
darna: "\u0688\u0631\u0646\u0627",
|
|
3396
|
+
dara: "\u0688\u0631\u0627",
|
|
3397
|
+
bhoolna: "\u0628\u06BE\u0648\u0644\u0646\u0627",
|
|
3398
|
+
bhoola: "\u0628\u06BE\u0648\u0644\u0627",
|
|
3399
|
+
seekhna: "\u0633\u06CC\u06A9\u06BE\u0646\u0627",
|
|
3400
|
+
seekha: "\u0633\u06CC\u06A9\u06BE\u0627",
|
|
3401
|
+
sikhana: "\u0633\u06A9\u06BE\u0627\u0646\u0627",
|
|
3402
|
+
sikhaya: "\u0633\u06A9\u06BE\u0627\u06CC\u0627",
|
|
3403
|
+
dhona: "\u062F\u06BE\u0648\u0646\u0627",
|
|
3404
|
+
dhoya: "\u062F\u06BE\u0648\u06CC\u0627",
|
|
3405
|
+
pehanna: "\u067E\u06C1\u0646\u0646\u0627",
|
|
3406
|
+
pehna: "\u067E\u06C1\u0646\u0627",
|
|
3407
|
+
bechna: "\u0628\u06CC\u0686\u0646\u0627",
|
|
3408
|
+
becha: "\u0628\u06CC\u0686\u0627",
|
|
3409
|
+
khareedna: "\u062E\u0631\u06CC\u062F\u0646\u0627",
|
|
3410
|
+
khareeda: "\u062E\u0631\u06CC\u062F\u0627",
|
|
3411
|
+
bhejna: "\u0628\u06BE\u06CC\u062C\u0646\u0627",
|
|
3412
|
+
bheja: "\u0628\u06BE\u06CC\u062C\u0627",
|
|
3413
|
+
nikalna: "\u0646\u06A9\u0644\u0646\u0627",
|
|
3414
|
+
nikla: "\u0646\u06A9\u0644\u0627",
|
|
3415
|
+
girna: "\u06AF\u0631\u0646\u0627",
|
|
3416
|
+
gira: "\u06AF\u0631\u0627",
|
|
3417
|
+
pakarna: "\u067E\u06A9\u0691\u0646\u0627",
|
|
3418
|
+
pakra: "\u067E\u06A9\u0691\u0627",
|
|
3419
|
+
chhorna: "\u0686\u06BE\u0648\u0691\u0646\u0627",
|
|
3420
|
+
chhora: "\u0686\u06BE\u0648\u0691\u0627",
|
|
3421
|
+
torna: "\u062A\u0648\u0691\u0646\u0627",
|
|
3422
|
+
tora: "\u062A\u0648\u0691\u0627",
|
|
3423
|
+
katna: "\u06A9\u0627\u0679\u0646\u0627",
|
|
3424
|
+
kata: "\u06A9\u0627\u0679\u0627",
|
|
3425
|
+
daalna: "\u0688\u0627\u0644\u0646\u0627",
|
|
3426
|
+
dala: "\u0688\u0627\u0644\u0627",
|
|
3427
|
+
manna: "\u0645\u0627\u0646\u0646\u0627",
|
|
3428
|
+
mana: "\u0645\u0627\u0646\u0627",
|
|
3429
|
+
bulana: "\u0628\u0644\u0627\u0646\u0627",
|
|
3430
|
+
bulaya: "\u0628\u0644\u0627\u06CC\u0627",
|
|
3431
|
+
dikhana: "\u062F\u06A9\u06BE\u0627\u0646\u0627",
|
|
3432
|
+
dikhaya: "\u062F\u06A9\u06BE\u0627\u06CC\u0627",
|
|
3433
|
+
phenkna: "\u067E\u06BE\u06CC\u0646\u06A9\u0646\u0627",
|
|
3434
|
+
phenka: "\u067E\u06BE\u06CC\u0646\u06A9\u0627",
|
|
3435
|
+
letna: "\u0644\u06CC\u0679\u0646\u0627",
|
|
3436
|
+
jagna: "\u062C\u0627\u06AF\u0646\u0627",
|
|
3437
|
+
lautna: "\u0644\u0648\u0679\u0646\u0627",
|
|
3438
|
+
guzarna: "\u06AF\u0632\u0627\u0631\u0646\u0627",
|
|
3439
|
+
kamana: "\u06A9\u0645\u0627\u0646\u0627",
|
|
3440
|
+
kamaya: "\u06A9\u0645\u0627\u06CC\u0627",
|
|
3441
|
+
ginna: "\u06AF\u0646\u0646\u0627",
|
|
3442
|
+
bandhna: "\u0628\u0627\u0646\u062F\u06BE\u0646\u0627",
|
|
3443
|
+
bandha: "\u0628\u0627\u0646\u062F\u06BE\u0627",
|
|
3444
|
+
bharna: "\u0628\u06BE\u0631\u0646\u0627",
|
|
3445
|
+
bhara: "\u0628\u06BE\u0631\u0627",
|
|
3446
|
+
doobna: "\u0688\u0648\u0628\u0646\u0627",
|
|
3447
|
+
chamakna: "\u0686\u0645\u06A9\u0646\u0627",
|
|
3448
|
+
ghoomna: "\u06AF\u06BE\u0648\u0645\u0646\u0627",
|
|
3449
|
+
phirna: "\u067E\u06BE\u0631\u0646\u0627",
|
|
3450
|
+
phailna: "\u067E\u06BE\u06CC\u0644\u0646\u0627",
|
|
3451
|
+
// nouns
|
|
3452
|
+
insaan: "\u0627\u0646\u0633\u0627\u0646",
|
|
3453
|
+
larka: "\u0644\u0691\u06A9\u0627",
|
|
3454
|
+
larki: "\u0644\u0691\u06A9\u06CC",
|
|
3455
|
+
bacha: "\u0628\u0686\u06C1",
|
|
3456
|
+
bachi: "\u0628\u0686\u06CC",
|
|
3457
|
+
maan: "\u0645\u0627\u06BA",
|
|
3458
|
+
baap: "\u0628\u0627\u067E",
|
|
3459
|
+
beta: "\u0628\u06CC\u0679\u0627",
|
|
3460
|
+
beti: "\u0628\u06CC\u0679\u06CC",
|
|
3461
|
+
dushman: "\u062F\u0634\u0645\u0646",
|
|
3462
|
+
makaan: "\u0645\u06A9\u0627\u0646",
|
|
3463
|
+
kamra: "\u06A9\u0645\u0631\u06C1",
|
|
3464
|
+
darwaza: "\u062F\u0631\u0648\u0627\u0632\u06C1",
|
|
3465
|
+
khirki: "\u06A9\u06BE\u0691\u06A9\u06CC",
|
|
3466
|
+
chhat: "\u0686\u06BE\u062A",
|
|
3467
|
+
deewar: "\u062F\u06CC\u0648\u0627\u0631",
|
|
3468
|
+
farsh: "\u0641\u0631\u0634",
|
|
3469
|
+
qalam: "\u0642\u0644\u0645",
|
|
3470
|
+
kaghaz: "\u06A9\u0627\u063A\u0630",
|
|
3471
|
+
mez: "\u0645\u06CC\u0632",
|
|
3472
|
+
kursi: "\u06A9\u0631\u0633\u06CC",
|
|
3473
|
+
almari: "\u0627\u0644\u0645\u0627\u0631\u06CC",
|
|
3474
|
+
palang: "\u067E\u0644\u0646\u06AF",
|
|
3475
|
+
bistar: "\u0628\u0633\u062A\u0631",
|
|
3476
|
+
parda: "\u067E\u0631\u062F\u06C1",
|
|
3477
|
+
qaleen: "\u0642\u0627\u0644\u06CC\u0646",
|
|
3478
|
+
bartan: "\u0628\u0631\u062A\u0646",
|
|
3479
|
+
chamach: "\u0686\u0645\u0686",
|
|
3480
|
+
plate: "\u067E\u0644\u06CC\u0679",
|
|
3481
|
+
pyali: "\u067E\u06CC\u0627\u0644\u06CC",
|
|
3482
|
+
cup: "\u06A9\u067E",
|
|
3483
|
+
glass: "\u06AF\u0644\u0627\u0633",
|
|
3484
|
+
botal: "\u0628\u0648\u062A\u0644",
|
|
3485
|
+
dabba: "\u0688\u0628\u06C1",
|
|
3486
|
+
jharoo: "\u062C\u06BE\u0627\u0691\u0648",
|
|
3487
|
+
sabun: "\u0635\u0627\u0628\u0646",
|
|
3488
|
+
aaina: "\u0622\u0626\u06CC\u0646\u06C1",
|
|
3489
|
+
sheesha: "\u0634\u06CC\u0634\u06C1",
|
|
3490
|
+
kanghi: "\u06A9\u0646\u06AF\u06BE\u06CC",
|
|
3491
|
+
sui: "\u0633\u0648\u0626\u06CC",
|
|
3492
|
+
qainchi: "\u0642\u06CC\u0646\u0686\u06CC",
|
|
3493
|
+
tala: "\u062A\u0627\u0644\u0627",
|
|
3494
|
+
chabi: "\u0686\u0627\u0628\u06CC",
|
|
3495
|
+
ghari: "\u06AF\u06BE\u0691\u06CC",
|
|
3496
|
+
topi: "\u0679\u0648\u067E\u06CC",
|
|
3497
|
+
pagri: "\u067E\u06AF\u0691\u06CC",
|
|
3498
|
+
qameez: "\u0642\u0645\u06CC\u0636",
|
|
3499
|
+
shalwar: "\u0634\u0644\u0648\u0627\u0631",
|
|
3500
|
+
pajama: "\u067E\u0627\u062C\u0627\u0645\u06C1",
|
|
3501
|
+
pant: "\u067E\u06CC\u0646\u0679",
|
|
3502
|
+
shirt: "\u0634\u0631\u0679",
|
|
3503
|
+
coat: "\u06A9\u0648\u0679",
|
|
3504
|
+
shawl: "\u0634\u0627\u0644",
|
|
3505
|
+
dupatta: "\u062F\u0648\u067E\u0679\u06C1",
|
|
3506
|
+
joota: "\u062C\u0648\u062A\u0627",
|
|
3507
|
+
chappal: "\u0686\u067E\u0644",
|
|
3508
|
+
sandal: "\u0635\u0646\u062F\u0644",
|
|
3509
|
+
kapra: "\u06A9\u067E\u0691\u0627",
|
|
3510
|
+
doodh: "\u062F\u0648\u062F\u06BE",
|
|
3511
|
+
dahi: "\u062F\u06C1\u06CC",
|
|
3512
|
+
ghee: "\u06AF\u06BE\u06CC",
|
|
3513
|
+
chai: "\u0686\u0627\u0626\u06D2",
|
|
3514
|
+
qehwa: "\u0642\u06C1\u0648\u06C1",
|
|
3515
|
+
coffee: "\u06A9\u0627\u0641\u06CC",
|
|
3516
|
+
lassi: "\u0644\u0633\u06CC",
|
|
3517
|
+
juice: "\u062C\u0648\u0633",
|
|
3518
|
+
roti: "\u0631\u0648\u0679\u06CC",
|
|
3519
|
+
naan: "\u0646\u0627\u0646",
|
|
3520
|
+
paratha: "\u067E\u0631\u0627\u0679\u06BE\u0627",
|
|
3521
|
+
chawal: "\u0686\u0627\u0648\u0644",
|
|
3522
|
+
biryani: "\u0628\u0631\u06CC\u0627\u0646\u06CC",
|
|
3523
|
+
pulao: "\u067E\u0644\u0627\u0624",
|
|
3524
|
+
salan: "\u0633\u0627\u0644\u0646",
|
|
3525
|
+
qorma: "\u0642\u0648\u0631\u0645\u06C1",
|
|
3526
|
+
nihari: "\u0646\u06C1\u0627\u0631\u06CC",
|
|
3527
|
+
haleem: "\u062D\u0644\u06CC\u0645",
|
|
3528
|
+
kabab: "\u06A9\u0628\u0627\u0628",
|
|
3529
|
+
tikka: "\u062A\u06A9\u06C1",
|
|
3530
|
+
samosa: "\u0633\u0645\u0648\u0633\u06C1",
|
|
3531
|
+
daal: "\u062F\u0627\u0644",
|
|
3532
|
+
gosht: "\u06AF\u0648\u0634\u062A",
|
|
3533
|
+
qeema: "\u0642\u06CC\u0645\u06C1",
|
|
3534
|
+
murghi: "\u0645\u0631\u063A\u06CC",
|
|
3535
|
+
machhli: "\u0645\u0686\u06BE\u0644\u06CC",
|
|
3536
|
+
anda: "\u0627\u0646\u0688\u0627",
|
|
3537
|
+
sabzi: "\u0633\u0628\u0632\u06CC",
|
|
3538
|
+
maida: "\u0645\u06CC\u062F\u06C1",
|
|
3539
|
+
namak: "\u0646\u0645\u06A9",
|
|
3540
|
+
cheeni: "\u0686\u06CC\u0646\u06CC",
|
|
3541
|
+
mirch: "\u0645\u0631\u0686",
|
|
3542
|
+
haldi: "\u06C1\u0644\u062F\u06CC",
|
|
3543
|
+
dhaniya: "\u062F\u06BE\u0646\u06CC\u0627",
|
|
3544
|
+
zeera: "\u0632\u06CC\u0631\u06C1",
|
|
3545
|
+
lehsun: "\u0644\u06C1\u0633\u0646",
|
|
3546
|
+
adrak: "\u0627\u062F\u0631\u06A9",
|
|
3547
|
+
pyaz: "\u067E\u06CC\u0627\u0632",
|
|
3548
|
+
tamatar: "\u0679\u0645\u0627\u0679\u0631",
|
|
3549
|
+
aloo: "\u0622\u0644\u0648",
|
|
3550
|
+
gajar: "\u06AF\u0627\u062C\u0631",
|
|
3551
|
+
matar: "\u0645\u0679\u0631",
|
|
3552
|
+
palak: "\u067E\u0627\u0644\u06A9",
|
|
3553
|
+
gobhi: "\u06AF\u0648\u0628\u06BE\u06CC",
|
|
3554
|
+
bhindi: "\u0628\u06BE\u0646\u0688\u06CC",
|
|
3555
|
+
karela: "\u06A9\u0631\u06CC\u0644\u0627",
|
|
3556
|
+
kaddu: "\u06A9\u062F\u0648",
|
|
3557
|
+
kheera: "\u06A9\u06BE\u06CC\u0631\u0627",
|
|
3558
|
+
phal: "\u067E\u06BE\u0644",
|
|
3559
|
+
saib: "\u0633\u06CC\u0628",
|
|
3560
|
+
kela: "\u06A9\u06CC\u0644\u0627",
|
|
3561
|
+
angoor: "\u0627\u0646\u06AF\u0648\u0631",
|
|
3562
|
+
anar: "\u0627\u0646\u0627\u0631",
|
|
3563
|
+
amrood: "\u0627\u0645\u0631\u0648\u062F",
|
|
3564
|
+
tarbooz: "\u062A\u0631\u0628\u0648\u0632",
|
|
3565
|
+
badam: "\u0628\u0627\u062F\u0627\u0645",
|
|
3566
|
+
pista: "\u067E\u0633\u062A\u06C1",
|
|
3567
|
+
kaju: "\u06A9\u0627\u062C\u0648",
|
|
3568
|
+
kheer: "\u06A9\u06BE\u06CC\u0631",
|
|
3569
|
+
halwa: "\u062D\u0644\u0648\u06C1",
|
|
3570
|
+
zarda: "\u0632\u0631\u062F\u06C1",
|
|
3571
|
+
jalebi: "\u062C\u0644\u06CC\u0628\u06CC",
|
|
3572
|
+
kulfi: "\u06A9\u0644\u0641\u06CC",
|
|
3573
|
+
cake: "\u06A9\u06CC\u06A9",
|
|
3574
|
+
chocolate: "\u0686\u0627\u06A9\u0644\u06CC\u0679",
|
|
3575
|
+
mithai: "\u0645\u0679\u06BE\u0627\u0626\u06CC",
|
|
3576
|
+
salad: "\u0633\u0644\u0627\u062F",
|
|
3577
|
+
raita: "\u0631\u0627\u0626\u062A\u06C1",
|
|
3578
|
+
chatni: "\u0686\u0679\u0646\u06CC",
|
|
3579
|
+
achaar: "\u0627\u0686\u0627\u0631",
|
|
3580
|
+
dimagh: "\u062F\u0645\u0627\u063A",
|
|
3581
|
+
jism: "\u062C\u0633\u0645",
|
|
3582
|
+
sar: "\u0633\u0631",
|
|
3583
|
+
aankh: "\u0622\u0646\u06A9\u06BE",
|
|
3584
|
+
aankhein: "\u0622\u0646\u06A9\u06BE\u06CC\u06BA",
|
|
3585
|
+
kaan: "\u06A9\u0627\u0646",
|
|
3586
|
+
naak: "\u0646\u0627\u06A9",
|
|
3587
|
+
munh: "\u0645\u0646\u06C1",
|
|
3588
|
+
daant: "\u062F\u0627\u0646\u062A",
|
|
3589
|
+
zuban: "\u0632\u0628\u0627\u0646",
|
|
3590
|
+
gala: "\u06AF\u0644\u0627",
|
|
3591
|
+
gardan: "\u06AF\u0631\u062F\u0646",
|
|
3592
|
+
kandha: "\u06A9\u0646\u062F\u06BE\u0627",
|
|
3593
|
+
bazu: "\u0628\u0627\u0632\u0648",
|
|
3594
|
+
hath: "\u06C1\u0627\u062A\u06BE",
|
|
3595
|
+
ungli: "\u0627\u0646\u06AF\u0644\u06CC",
|
|
3596
|
+
seena: "\u0633\u06CC\u0646\u06C1",
|
|
3597
|
+
pet: "\u067E\u06CC\u0679",
|
|
3598
|
+
kamar: "\u06A9\u0645\u0631",
|
|
3599
|
+
taang: "\u0679\u0627\u0646\u06AF",
|
|
3600
|
+
paon: "\u067E\u0627\u0624\u06BA",
|
|
3601
|
+
haddi: "\u06C1\u0688\u06CC",
|
|
3602
|
+
khoon: "\u062E\u0648\u0646",
|
|
3603
|
+
jild: "\u062C\u0644\u062F",
|
|
3604
|
+
baal: "\u0628\u0627\u0644",
|
|
3605
|
+
chehra: "\u0686\u06C1\u0631\u06C1",
|
|
3606
|
+
sehat: "\u0635\u062D\u062A",
|
|
3607
|
+
beemari: "\u0628\u06CC\u0645\u0627\u0631\u06CC",
|
|
3608
|
+
dard: "\u062F\u0631\u062F",
|
|
3609
|
+
ilaj: "\u0639\u0644\u0627\u062C",
|
|
3610
|
+
dawa: "\u062F\u0648\u0627",
|
|
3611
|
+
goli: "\u06AF\u0648\u0644\u06CC",
|
|
3612
|
+
ishq: "\u0639\u0634\u0642",
|
|
3613
|
+
nafrat: "\u0646\u0641\u0631\u062A",
|
|
3614
|
+
gham: "\u063A\u0645",
|
|
3615
|
+
dukh: "\u062F\u06A9\u06BE",
|
|
3616
|
+
ummeed: "\u0627\u0645\u06CC\u062F",
|
|
3617
|
+
yaqeen: "\u06CC\u0642\u06CC\u0646",
|
|
3618
|
+
sach: "\u0633\u0686",
|
|
3619
|
+
jhoot: "\u062C\u06BE\u0648\u0679",
|
|
3620
|
+
insaf: "\u0627\u0646\u0635\u0627\u0641",
|
|
3621
|
+
zulm: "\u0638\u0644\u0645",
|
|
3622
|
+
izzat: "\u0639\u0632\u062A",
|
|
3623
|
+
dua: "\u062F\u0639\u0627",
|
|
3624
|
+
khwab: "\u062E\u0648\u0627\u0628",
|
|
3625
|
+
khayal: "\u062E\u06CC\u0627\u0644",
|
|
3626
|
+
maut: "\u0645\u0648\u062A",
|
|
3627
|
+
taqat: "\u0637\u0642\u062A",
|
|
3628
|
+
koshish: "\u06A9\u0648\u0634\u0634",
|
|
3629
|
+
kamyabi: "\u06A9\u0627\u0645\u06CC\u0627\u0628\u06CC",
|
|
3630
|
+
nakami: "\u0646\u0627\u06A9\u0627\u0645\u06CC",
|
|
3631
|
+
faisla: "\u0641\u06CC\u0635\u0644\u06C1",
|
|
3632
|
+
ghussa: "\u063A\u0635\u06C1",
|
|
3633
|
+
akhlaq: "\u0627\u062E\u0644\u0627\u0642",
|
|
3634
|
+
wafa: "\u0648\u0641\u0627",
|
|
3635
|
+
dosti: "\u062F\u0648\u0633\u062A\u06CC",
|
|
3636
|
+
sakoon: "\u0633\u06A9\u0648\u0646",
|
|
3637
|
+
ilm: "\u0639\u0644\u0645",
|
|
3638
|
+
taleem: "\u062A\u0639\u0644\u06CC\u0645",
|
|
3639
|
+
sabaq: "\u0633\u0628\u0642",
|
|
3640
|
+
imtihan: "\u0627\u0645\u062A\u062D\u0627\u0646",
|
|
3641
|
+
masla: "\u0645\u0633\u0626\u0644\u06C1",
|
|
3642
|
+
sawal: "\u0633\u0648\u0627\u0644",
|
|
3643
|
+
jawab: "\u062C\u0648\u0627\u0628",
|
|
3644
|
+
lafz: "\u0644\u0641\u0638",
|
|
3645
|
+
jumla: "\u062C\u0645\u0644\u06C1",
|
|
3646
|
+
maani: "\u0645\u0639\u0646\u06CC",
|
|
3647
|
+
matlab: "\u0645\u0637\u0644\u0628",
|
|
3648
|
+
khabar: "\u062E\u0628\u0631",
|
|
3649
|
+
akhbar: "\u0627\u062E\u0628\u0627\u0631",
|
|
3650
|
+
kahani: "\u06A9\u06C1\u0627\u0646\u06CC",
|
|
3651
|
+
qissa: "\u0642\u0635\u06C1",
|
|
3652
|
+
dastan: "\u062F\u0627\u0633\u062A\u0627\u0646",
|
|
3653
|
+
novel: "\u0646\u0627\u0648\u0644",
|
|
3654
|
+
mazmoon: "\u0645\u0636\u0645\u0648\u0646",
|
|
3655
|
+
ghazal: "\u063A\u0632\u0644",
|
|
3656
|
+
nazm: "\u0646\u0638\u0645",
|
|
3657
|
+
adab: "\u0627\u062F\u0628",
|
|
3658
|
+
tareekh: "\u062A\u0627\u0631\u06CC\u062E",
|
|
3659
|
+
science: "\u0633\u0627\u0626\u0646\u0633",
|
|
3660
|
+
falsafa: "\u0641\u0644\u0633\u0641\u06C1",
|
|
3661
|
+
saqafat: "\u062B\u0642\u0627\u0641\u062A",
|
|
3662
|
+
tehzeeb: "\u062A\u06C1\u0630\u06CC\u0628",
|
|
3663
|
+
moseeqi: "\u0645\u0648\u0633\u06CC\u0642\u06CC",
|
|
3664
|
+
tasweer: "\u062A\u0635\u0648\u06CC\u0631",
|
|
3665
|
+
rang: "\u0631\u0646\u06AF",
|
|
3666
|
+
awaz: "\u0622\u0648\u0627\u0632",
|
|
3667
|
+
khamoshi: "\u062E\u0627\u0645\u0648\u0634\u06CC",
|
|
3668
|
+
namaz: "\u0646\u0645\u0627\u0632",
|
|
3669
|
+
roza: "\u0631\u0648\u0632\u06C1",
|
|
3670
|
+
hajj: "\u062D\u062C",
|
|
3671
|
+
eid: "\u0639\u06CC\u062F",
|
|
3672
|
+
qurbani: "\u0642\u0631\u0628\u0627\u0646\u06CC",
|
|
3673
|
+
mazhab: "\u0645\u0630\u06C1\u0628",
|
|
3674
|
+
rasool: "\u0631\u0633\u0648\u0644",
|
|
3675
|
+
nabi: "\u0646\u0628\u06CC",
|
|
3676
|
+
quran: "\u0642\u0631\u0622\u0646",
|
|
3677
|
+
hadees: "\u062D\u062F\u06CC\u062B",
|
|
3678
|
+
deen: "\u062F\u06CC\u0646",
|
|
3679
|
+
imaan: "\u0627\u06CC\u0645\u0627\u0646",
|
|
3680
|
+
jannat: "\u062C\u0646\u062A",
|
|
3681
|
+
dozakh: "\u062F\u0648\u0632\u062E",
|
|
3682
|
+
farishta: "\u0641\u0631\u0634\u062A\u06C1",
|
|
3683
|
+
qayamat: "\u0642\u06CC\u0627\u0645\u062A",
|
|
3684
|
+
ibadat: "\u0639\u0628\u0627\u062F\u062A",
|
|
3685
|
+
gunah: "\u06AF\u0646\u0627\u06C1",
|
|
3686
|
+
rehmat: "\u0631\u062D\u0645\u062A",
|
|
3687
|
+
barkat: "\u0628\u0631\u06A9\u062A",
|
|
3688
|
+
naiki: "\u0646\u06CC\u06A9\u06CC",
|
|
3689
|
+
siyasat: "\u0633\u06CC\u0627\u0633\u062A",
|
|
3690
|
+
election: "\u0627\u0644\u06CC\u06A9\u0634\u0646",
|
|
3691
|
+
intikhab: "\u0627\u0646\u062A\u062E\u0627\u0628",
|
|
3692
|
+
vote: "\u0648\u0648\u0679",
|
|
3693
|
+
party: "\u067E\u0627\u0631\u0679\u06CC",
|
|
3694
|
+
jamaat: "\u062C\u0645\u0627\u0639\u062A",
|
|
3695
|
+
qanoon: "\u0642\u0627\u0646\u0648\u0646",
|
|
3696
|
+
dastoor: "\u062F\u0633\u062A\u0648\u0631",
|
|
3697
|
+
hukumat: "\u062D\u06A9\u0648\u0645\u062A",
|
|
3698
|
+
jurm: "\u062C\u0631\u0645",
|
|
3699
|
+
mujrim: "\u0645\u062C\u0631\u0645",
|
|
3700
|
+
saza: "\u0633\u0632\u0627",
|
|
3701
|
+
fauj: "\u0641\u0648\u062C",
|
|
3702
|
+
jang: "\u062C\u0646\u06AF",
|
|
3703
|
+
larai: "\u0644\u0691\u0627\u0626\u06CC",
|
|
3704
|
+
aman: "\u0627\u0645\u0646",
|
|
3705
|
+
sulah: "\u0635\u0644\u062D",
|
|
3706
|
+
tijarat: "\u062A\u062C\u0627\u0631\u062A",
|
|
3707
|
+
karobar: "\u06A9\u0627\u0631\u0648\u0628\u0627\u0631",
|
|
3708
|
+
sanat: "\u0635\u0646\u0639\u062A",
|
|
3709
|
+
taraqqi: "\u062A\u0631\u0642\u06CC",
|
|
3710
|
+
report: "\u0631\u067E\u0648\u0631\u0679",
|
|
3711
|
+
conference: "\u06A9\u0627\u0646\u0641\u0631\u0646\u0633",
|
|
3712
|
+
taqreer: "\u062A\u0642\u0631\u06CC\u0631",
|
|
3713
|
+
aasman: "\u0622\u0633\u0645\u0627\u0646",
|
|
3714
|
+
zameen: "\u0632\u0645\u06CC\u0646",
|
|
3715
|
+
sooraj: "\u0633\u0648\u0631\u062C",
|
|
3716
|
+
sitara: "\u0633\u062A\u0627\u0631\u06C1",
|
|
3717
|
+
pahaar: "\u067E\u06C1\u0627\u0691",
|
|
3718
|
+
nadi: "\u0646\u062F\u06CC",
|
|
3719
|
+
darya: "\u062F\u0631\u06CC\u0627",
|
|
3720
|
+
samundar: "\u0633\u0645\u0646\u062F\u0631",
|
|
3721
|
+
jungle: "\u062C\u0646\u06AF\u0644",
|
|
3722
|
+
bagh: "\u0628\u0627\u063A",
|
|
3723
|
+
phool: "\u067E\u06BE\u0648\u0644",
|
|
3724
|
+
darakht: "\u062F\u0631\u062E\u062A",
|
|
3725
|
+
pattay: "\u067E\u062A\u0651\u06D2",
|
|
3726
|
+
machli: "\u0645\u0686\u06BE\u0644\u06CC",
|
|
3727
|
+
parinday: "\u067E\u0631\u0646\u062F\u06D2",
|
|
3728
|
+
kutta: "\u06A9\u062A\u0627",
|
|
3729
|
+
billi: "\u0628\u0644\u06CC",
|
|
3730
|
+
ghora: "\u06AF\u06BE\u0648\u0691\u0627",
|
|
3731
|
+
gaay: "\u06AF\u0627\u0626\u06D2",
|
|
3732
|
+
bhains: "\u0628\u06BE\u06CC\u0633",
|
|
3733
|
+
bakra: "\u0628\u06A9\u0631\u0627",
|
|
3734
|
+
mendha: "\u0645\u06CC\u0688\u06BE\u0627",
|
|
3735
|
+
khargosh: "\u062E\u0631\u06AF\u0648\u0634",
|
|
3736
|
+
saanp: "\u0633\u0627\u0646\u067E",
|
|
3737
|
+
cheel: "\u0686\u06CC\u0644",
|
|
3738
|
+
kabootar: "\u06A9\u0628\u0648\u062A\u0631",
|
|
3739
|
+
tota: "\u062A\u0648\u062A\u0627",
|
|
3740
|
+
ullu: "\u0627\u0644\u0648",
|
|
3741
|
+
chuha: "\u0686\u0648\u06C1\u0627"
|
|
3289
3742
|
};
|
|
3290
3743
|
|
|
3291
3744
|
// src/transliterate.ts
|
|
@@ -3703,9 +4156,249 @@ function timeAgoUrdu(date, relativeTo = /* @__PURE__ */ new Date(), options = {}
|
|
|
3703
4156
|
return isPast ? `${count} \u0633\u0627\u0644 \u067E\u06C1\u0644\u06D2` : `${count} \u0633\u0627\u0644 \u0628\u0639\u062F`;
|
|
3704
4157
|
}
|
|
3705
4158
|
|
|
4159
|
+
// src/stemmer.ts
|
|
4160
|
+
var URDU_PREFIXES = [
|
|
4161
|
+
"\u063A\u06CC\u0631",
|
|
4162
|
+
"\u062E\u0648\u062F",
|
|
4163
|
+
"\u0627\u06C1\u0644",
|
|
4164
|
+
"\u0628\u06D2",
|
|
4165
|
+
"\u0646\u0627",
|
|
4166
|
+
"\u0644\u0627",
|
|
4167
|
+
"\u0628\u062F",
|
|
4168
|
+
"\u06A9\u0645",
|
|
4169
|
+
"\u0627\u0646",
|
|
4170
|
+
"\u06C1\u0645",
|
|
4171
|
+
"\u0628\u0627",
|
|
4172
|
+
"\u067E\u064F\u0631"
|
|
4173
|
+
];
|
|
4174
|
+
var URDU_SUFFIXES = [
|
|
4175
|
+
// Compound / multi-syllable suffixes
|
|
4176
|
+
"\u06CC\u06BA\u06AF\u06D2",
|
|
4177
|
+
"\u06CC\u0646\u06AF\u06D2",
|
|
4178
|
+
"\u06D2\u06AF\u0627",
|
|
4179
|
+
"\u06D2\u06AF\u06CC",
|
|
4180
|
+
"\u06CC\u0646\u06AF\u06CC",
|
|
4181
|
+
"\u062F\u0627\u0631\u06CC",
|
|
4182
|
+
"\u06AF\u0627\u0631\u06CC",
|
|
4183
|
+
"\u06A9\u0627\u0631\u06CC",
|
|
4184
|
+
"\u0633\u0627\u0632\u06CC",
|
|
4185
|
+
"\u0628\u0627\u0632\u06CC",
|
|
4186
|
+
"\u0645\u0646\u062F\u06CC",
|
|
4187
|
+
"\u062A\u0631\u06CC\u0646",
|
|
4188
|
+
"\u0633\u062A\u0627\u0646",
|
|
4189
|
+
"\u062E\u0627\u0646\u06C1",
|
|
4190
|
+
"\u0646\u0627\u0645\u06C1",
|
|
4191
|
+
"\u062C\u0627\u062A",
|
|
4192
|
+
"\u06AF\u0627\u0646",
|
|
4193
|
+
// Adjectival / nominal / agentive suffixes
|
|
4194
|
+
"\u062F\u0627\u0631",
|
|
4195
|
+
"\u06AF\u0627\u0631",
|
|
4196
|
+
"\u06A9\u0627\u0631",
|
|
4197
|
+
"\u0633\u0627\u0632",
|
|
4198
|
+
"\u0628\u0627\u0632",
|
|
4199
|
+
"\u0645\u0646\u062F",
|
|
4200
|
+
"\u0646\u0627\u06A9",
|
|
4201
|
+
"\u0648\u0627\u0631",
|
|
4202
|
+
"\u062F\u0627\u0646",
|
|
4203
|
+
"\u0632\u0627\u0631",
|
|
4204
|
+
"\u06CC\u062A",
|
|
4205
|
+
"\u067E\u0646",
|
|
4206
|
+
"\u0627\u0626\u06CC",
|
|
4207
|
+
"\u062A\u0631",
|
|
4208
|
+
// Plural & verbal inflections
|
|
4209
|
+
"\u06CC\u0627\u06BA",
|
|
4210
|
+
"\u0626\u06CC\u06BA",
|
|
4211
|
+
"\u0624\u06BA",
|
|
4212
|
+
"\u06CC\u0648\u06BA",
|
|
4213
|
+
"\u0648\u06BA",
|
|
4214
|
+
"\u06CC\u06BA",
|
|
4215
|
+
"\u0627\u062A",
|
|
4216
|
+
"\u06C1\u0627",
|
|
4217
|
+
"\u06CC\u0646",
|
|
4218
|
+
"\u062A\u06CC\u06BA",
|
|
4219
|
+
"\u062A\u0627",
|
|
4220
|
+
"\u062A\u06CC",
|
|
4221
|
+
"\u062A\u06D2",
|
|
4222
|
+
"\u0646\u0627"
|
|
4223
|
+
];
|
|
4224
|
+
var PROTECTED_WORDS = /* @__PURE__ */ new Set([
|
|
4225
|
+
"\u06C1\u0645",
|
|
4226
|
+
"\u0646\u0627",
|
|
4227
|
+
"\u0644\u0627",
|
|
4228
|
+
"\u0628\u06D2",
|
|
4229
|
+
"\u06CC\u0627",
|
|
4230
|
+
"\u062A\u0648",
|
|
4231
|
+
"\u067E\u0631",
|
|
4232
|
+
"\u0633\u06D2",
|
|
4233
|
+
"\u06A9\u0648",
|
|
4234
|
+
"\u06A9\u0627",
|
|
4235
|
+
"\u06A9\u06CC",
|
|
4236
|
+
"\u06A9\u06D2",
|
|
4237
|
+
"\u0645\u06CC\u06BA",
|
|
4238
|
+
"\u0646\u06D2",
|
|
4239
|
+
"\u06C1\u06D2",
|
|
4240
|
+
"\u06C1\u06CC\u06BA",
|
|
4241
|
+
"\u06C1\u0648",
|
|
4242
|
+
"\u062A\u06BE\u0627",
|
|
4243
|
+
"\u062A\u06BE\u06CC",
|
|
4244
|
+
"\u062A\u06BE\u06D2",
|
|
4245
|
+
"\u062A\u06BE\u06CC\u06BA",
|
|
4246
|
+
"\u0628\u0627\u063A",
|
|
4247
|
+
"\u0646\u0627\u0645",
|
|
4248
|
+
"\u0633\u0641\u0631",
|
|
4249
|
+
"\u06C1\u0648\u0627",
|
|
4250
|
+
"\u062F\u0644",
|
|
4251
|
+
"\u0633\u0631",
|
|
4252
|
+
"\u0644\u0628",
|
|
4253
|
+
"\u062F\u0633\u062A",
|
|
4254
|
+
"\u06A9\u0627\u0631",
|
|
4255
|
+
"\u0628\u0627\u0631",
|
|
4256
|
+
"\u0628\u0627\u0644",
|
|
4257
|
+
"\u0628\u0627\u0646",
|
|
4258
|
+
"\u0634\u0627\u0645",
|
|
4259
|
+
"\u06A9\u0627\u0645",
|
|
4260
|
+
"\u062F\u0627\u0645",
|
|
4261
|
+
"\u062C\u0627\u0645",
|
|
4262
|
+
"\u0639\u0627\u0645",
|
|
4263
|
+
"\u0631\u0627\u0645",
|
|
4264
|
+
"\u06AF\u0627\u0645",
|
|
4265
|
+
"\u062A\u0627\u0631",
|
|
4266
|
+
"\u06CC\u0627\u0631",
|
|
4267
|
+
"\u0645\u0627\u0631",
|
|
4268
|
+
"\u0646\u0627\u0631",
|
|
4269
|
+
"\u062F\u0627\u0631",
|
|
4270
|
+
"\u06C1\u0627\u0631",
|
|
4271
|
+
"\u0632\u0627\u0631",
|
|
4272
|
+
"\u063A\u0627\u0631",
|
|
4273
|
+
"\u0631\u0627\u062A",
|
|
4274
|
+
"\u0628\u0627\u062A",
|
|
4275
|
+
"\u0645\u0627\u062A",
|
|
4276
|
+
"\u0630\u0627\u062A",
|
|
4277
|
+
"\u06C1\u0627\u062A\u06BE",
|
|
4278
|
+
"\u0633\u0627\u062A\u06BE",
|
|
4279
|
+
"\u062F\u06CC\u0646",
|
|
4280
|
+
"\u062A\u06CC\u0646",
|
|
4281
|
+
"\u0686\u06CC\u0646",
|
|
4282
|
+
"\u0628\u06CC\u0646",
|
|
4283
|
+
"\u0632\u0645\u06CC\u0646",
|
|
4284
|
+
"\u0627\u0646\u0633\u0627\u0646",
|
|
4285
|
+
"\u0627\u062D\u0633\u0627\u0646",
|
|
4286
|
+
"\u0627\u06CC\u0645\u0627\u0646",
|
|
4287
|
+
"\u0627\u0633\u0644\u0627\u0645",
|
|
4288
|
+
"\u0627\u0639\u0644\u0627\u0646",
|
|
4289
|
+
"\u0627\u0645\u06A9\u0627\u0646",
|
|
4290
|
+
"\u0627\u0631\u0645\u0627\u0646",
|
|
4291
|
+
"\u0627\u0641\u063A\u0627\u0646",
|
|
4292
|
+
"\u0627\u06CC\u0631\u0627\u0646",
|
|
4293
|
+
"\u0639\u0645\u0631\u0627\u0646",
|
|
4294
|
+
"\u0639\u062B\u0645\u0627\u0646",
|
|
4295
|
+
"\u0633\u0644\u0645\u0627\u0646",
|
|
4296
|
+
"\u0639\u0631\u0641\u0627\u0646",
|
|
4297
|
+
"\u0642\u0631\u0622\u0646",
|
|
4298
|
+
"\u0637\u0648\u0641\u0627\u0646",
|
|
4299
|
+
"\u067E\u06C1\u0686\u0627\u0646",
|
|
4300
|
+
"\u062F\u06A9\u0627\u0646",
|
|
4301
|
+
"\u0645\u06A9\u0627\u0646",
|
|
4302
|
+
"\u0627\u0633\u0645\u0627\u0646",
|
|
4303
|
+
"\u0622\u0633\u0645\u0627\u0646",
|
|
4304
|
+
"\u0645\u06C1\u0645\u0627\u0646",
|
|
4305
|
+
"\u0646\u0642\u0635\u0627\u0646"
|
|
4306
|
+
]);
|
|
4307
|
+
function applySuffixStripping(word, suffixes, minLen) {
|
|
4308
|
+
if (word.length <= minLen) return { stem: word };
|
|
4309
|
+
if (word.endsWith("\u06CC\u0627\u06BA") && word.length - 3 >= minLen) {
|
|
4310
|
+
const base = word.slice(0, -3);
|
|
4311
|
+
return { stem: `${base}\u06CC`, suffix: "\u06CC\u0627\u06BA" };
|
|
4312
|
+
}
|
|
4313
|
+
if (word.endsWith("\u06CC\u0648\u06BA") && word.length - 3 >= minLen) {
|
|
4314
|
+
const base = word.slice(0, -3);
|
|
4315
|
+
return { stem: `${base}\u06CC`, suffix: "\u06CC\u0648\u06BA" };
|
|
4316
|
+
}
|
|
4317
|
+
if (word.endsWith("\u0626\u06CC\u06BA") && word.length - 3 >= minLen) {
|
|
4318
|
+
const base = word.slice(0, -3);
|
|
4319
|
+
return { stem: base, suffix: "\u0626\u06CC\u06BA" };
|
|
4320
|
+
}
|
|
4321
|
+
if (word.endsWith("\u0624\u06BA") && word.length - 2 >= minLen) {
|
|
4322
|
+
const base = word.slice(0, -2);
|
|
4323
|
+
return { stem: base, suffix: "\u0624\u06BA" };
|
|
4324
|
+
}
|
|
4325
|
+
for (const suf of suffixes) {
|
|
4326
|
+
if (word.endsWith(suf)) {
|
|
4327
|
+
const remainder = word.slice(0, -suf.length).replace(/[\s\u200C\u200D]+$/, "");
|
|
4328
|
+
if (remainder.length >= minLen && !PROTECTED_WORDS.has(word)) {
|
|
4329
|
+
return { stem: remainder, suffix: suf };
|
|
4330
|
+
}
|
|
4331
|
+
}
|
|
4332
|
+
}
|
|
4333
|
+
return { stem: word };
|
|
4334
|
+
}
|
|
4335
|
+
function applyPrefixStripping(word, prefixes, minLen) {
|
|
4336
|
+
if (word.length <= minLen) return { stem: word };
|
|
4337
|
+
for (const pref of prefixes) {
|
|
4338
|
+
if (word.startsWith(pref)) {
|
|
4339
|
+
const remainder = word.slice(pref.length).replace(/^[\s\u200C\u200D]+/, "");
|
|
4340
|
+
if (remainder.length >= minLen && !PROTECTED_WORDS.has(word)) {
|
|
4341
|
+
return { stem: remainder, prefix: pref };
|
|
4342
|
+
}
|
|
4343
|
+
}
|
|
4344
|
+
}
|
|
4345
|
+
return { stem: word };
|
|
4346
|
+
}
|
|
4347
|
+
function getAffixes(input, options = {}) {
|
|
4348
|
+
if (!input || typeof input !== "string") {
|
|
4349
|
+
return { stem: "" };
|
|
4350
|
+
}
|
|
4351
|
+
const clean = removeDiacritics(normalizeUrdu(input.trim()));
|
|
4352
|
+
if (!clean) return { stem: "" };
|
|
4353
|
+
if (options.exceptions && options.exceptions[clean]) {
|
|
4354
|
+
return { stem: options.exceptions[clean] };
|
|
4355
|
+
}
|
|
4356
|
+
if (PROTECTED_WORDS.has(clean)) {
|
|
4357
|
+
return { stem: clean };
|
|
4358
|
+
}
|
|
4359
|
+
const minLen = options.minStemLength ?? 2;
|
|
4360
|
+
const doSuffixes = options.stripSuffixes ?? true;
|
|
4361
|
+
const doPrefixes = options.stripPrefixes ?? true;
|
|
4362
|
+
const suffixes = options.customSuffixes ?? URDU_SUFFIXES;
|
|
4363
|
+
const prefixes = options.customPrefixes ?? URDU_PREFIXES;
|
|
4364
|
+
let current = clean;
|
|
4365
|
+
let detectedSuffix;
|
|
4366
|
+
let detectedPrefix;
|
|
4367
|
+
if (doSuffixes) {
|
|
4368
|
+
const sRes = applySuffixStripping(current, suffixes, minLen);
|
|
4369
|
+
current = sRes.stem;
|
|
4370
|
+
detectedSuffix = sRes.suffix;
|
|
4371
|
+
}
|
|
4372
|
+
if (doPrefixes) {
|
|
4373
|
+
const pRes = applyPrefixStripping(current, prefixes, minLen);
|
|
4374
|
+
current = pRes.stem;
|
|
4375
|
+
detectedPrefix = pRes.prefix;
|
|
4376
|
+
}
|
|
4377
|
+
return {
|
|
4378
|
+
prefix: detectedPrefix,
|
|
4379
|
+
stem: current,
|
|
4380
|
+
suffix: detectedSuffix
|
|
4381
|
+
};
|
|
4382
|
+
}
|
|
4383
|
+
function stemUrdu(word, options = {}) {
|
|
4384
|
+
return getAffixes(word, options).stem;
|
|
4385
|
+
}
|
|
4386
|
+
function stemUrduText(text, options = {}) {
|
|
4387
|
+
if (!text || typeof text !== "string") return "";
|
|
4388
|
+
const tokens = text.split(/([\s\p{P}\p{S}]+)/u);
|
|
4389
|
+
return tokens.map((token) => {
|
|
4390
|
+
if (/[\u0600-\u06FF\u0750-\u077F\uFB50-\uFDFF\uFE70-\uFEFF]/.test(token)) {
|
|
4391
|
+
return stemUrdu(token, options);
|
|
4392
|
+
}
|
|
4393
|
+
return token;
|
|
4394
|
+
}).join("");
|
|
4395
|
+
}
|
|
4396
|
+
|
|
3706
4397
|
exports.URDU_MONTHS_GREGORIAN = URDU_MONTHS_GREGORIAN;
|
|
3707
4398
|
exports.URDU_MONTHS_HIJRI = URDU_MONTHS_HIJRI;
|
|
4399
|
+
exports.URDU_PREFIXES = URDU_PREFIXES;
|
|
3708
4400
|
exports.URDU_STOP_WORDS = URDU_STOP_WORDS;
|
|
4401
|
+
exports.URDU_SUFFIXES = URDU_SUFFIXES;
|
|
3709
4402
|
exports.URDU_WEEKDAYS = URDU_WEEKDAYS;
|
|
3710
4403
|
exports.analyzeUrdu = analyzeUrdu;
|
|
3711
4404
|
exports.compareUrdu = compareUrdu;
|
|
@@ -3716,6 +4409,7 @@ exports.editDistance = editDistance;
|
|
|
3716
4409
|
exports.filterStopWords = filterStopWords;
|
|
3717
4410
|
exports.foldUrdu = foldUrdu;
|
|
3718
4411
|
exports.formatUrduDate = formatUrduDate;
|
|
4412
|
+
exports.getAffixes = getAffixes;
|
|
3719
4413
|
exports.getUrduMonthName = getUrduMonthName;
|
|
3720
4414
|
exports.getUrduWeekdayName = getUrduWeekdayName;
|
|
3721
4415
|
exports.hasUrduSpecificLetters = hasUrduSpecificLetters;
|
|
@@ -3734,6 +4428,8 @@ exports.searchUrduRanked = searchUrduRanked;
|
|
|
3734
4428
|
exports.sortUrdu = sortUrdu;
|
|
3735
4429
|
exports.splitSentences = splitSentences;
|
|
3736
4430
|
exports.splitWords = splitWords;
|
|
4431
|
+
exports.stemUrdu = stemUrdu;
|
|
4432
|
+
exports.stemUrduText = stemUrduText;
|
|
3737
4433
|
exports.timeAgoUrdu = timeAgoUrdu;
|
|
3738
4434
|
exports.toArabicIndicDigits = toArabicIndicDigits;
|
|
3739
4435
|
exports.toEnglishDigits = toEnglishDigits;
|