@polyglot-bundles/vi-word-lists 0.2.9 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/abstract-concepts-KNlFYB8f.js +90 -0
  2. package/dist/abstract-concepts-KNlFYB8f.js.map +1 -0
  3. package/dist/{b1-vocabulary-01-ByPmjJ7U.js → b1-vocabulary-01-Bm9ZIMBE.js} +1 -1
  4. package/dist/{b1-vocabulary-01-ByPmjJ7U.js.map → b1-vocabulary-01-Bm9ZIMBE.js.map} +1 -1
  5. package/dist/{b1-vocabulary-02-DuH_m4zA.js → b1-vocabulary-02-ClfT72Yp.js} +1 -1
  6. package/dist/{b1-vocabulary-02-DuH_m4zA.js.map → b1-vocabulary-02-ClfT72Yp.js.map} +1 -1
  7. package/dist/{b1-vocabulary-03-Dpwmn_12.js → b1-vocabulary-03-BInffiGG.js} +1 -1
  8. package/dist/{b1-vocabulary-03-Dpwmn_12.js.map → b1-vocabulary-03-BInffiGG.js.map} +1 -1
  9. package/dist/{b1-vocabulary-04-Bda8dhyK.js → b1-vocabulary-04-0wG09twP.js} +1 -1
  10. package/dist/{b1-vocabulary-04-Bda8dhyK.js.map → b1-vocabulary-04-0wG09twP.js.map} +1 -1
  11. package/dist/{b1-vocabulary-05-C3dNToLa.js → b1-vocabulary-05-MrDkdCbh.js} +1 -1
  12. package/dist/{b1-vocabulary-05-C3dNToLa.js.map → b1-vocabulary-05-MrDkdCbh.js.map} +1 -1
  13. package/dist/{b1-vocabulary-06-CMXNl4HE.js → b1-vocabulary-06-uyXDLJa6.js} +1 -1
  14. package/dist/{b1-vocabulary-06-CMXNl4HE.js.map → b1-vocabulary-06-uyXDLJa6.js.map} +1 -1
  15. package/dist/{b1-vocabulary-07-Dafbh8JS.js → b1-vocabulary-07-0Q9DCwsk.js} +1 -1
  16. package/dist/{b1-vocabulary-07-Dafbh8JS.js.map → b1-vocabulary-07-0Q9DCwsk.js.map} +1 -1
  17. package/dist/{b1-vocabulary-08-Bsz_Ito-.js → b1-vocabulary-08-Cx9Giw8r.js} +1 -1
  18. package/dist/{b1-vocabulary-08-Bsz_Ito-.js.map → b1-vocabulary-08-Cx9Giw8r.js.map} +1 -1
  19. package/dist/{b1-vocabulary-09-CTf-UkCq.js → b1-vocabulary-09-Bdf0_vRF.js} +1 -1
  20. package/dist/{b1-vocabulary-09-CTf-UkCq.js.map → b1-vocabulary-09-Bdf0_vRF.js.map} +1 -1
  21. package/dist/{b1-vocabulary-10-DcfM0_X3.js → b1-vocabulary-10-DgkE3aUr.js} +1 -1
  22. package/dist/{b1-vocabulary-10-DcfM0_X3.js.map → b1-vocabulary-10-DgkE3aUr.js.map} +1 -1
  23. package/dist/{b1-vocabulary-11-C4Aaqih_.js → b1-vocabulary-11-BtbOvYEA.js} +1 -1
  24. package/dist/{b1-vocabulary-11-C4Aaqih_.js.map → b1-vocabulary-11-BtbOvYEA.js.map} +1 -1
  25. package/dist/{b1-vocabulary-12-CGzQf6OU.js → b1-vocabulary-12-DhsAY-fb.js} +1 -1
  26. package/dist/{b1-vocabulary-12-CGzQf6OU.js.map → b1-vocabulary-12-DhsAY-fb.js.map} +1 -1
  27. package/dist/{b1-vocabulary-13-B0eJaQgN.js → b1-vocabulary-13-DahuIhzT.js} +1 -1
  28. package/dist/{b1-vocabulary-13-B0eJaQgN.js.map → b1-vocabulary-13-DahuIhzT.js.map} +1 -1
  29. package/dist/{b1-vocabulary-14-C6IMTsnB.js → b1-vocabulary-14-CNtBzVbj.js} +1 -1
  30. package/dist/{b1-vocabulary-14-C6IMTsnB.js.map → b1-vocabulary-14-CNtBzVbj.js.map} +1 -1
  31. package/dist/{b1-vocabulary-15-Dji9RURH.js → b1-vocabulary-15-DTkPzQt9.js} +1 -1
  32. package/dist/{b1-vocabulary-15-Dji9RURH.js.map → b1-vocabulary-15-DTkPzQt9.js.map} +1 -1
  33. package/dist/{b1-vocabulary-16-CWAG8Q85.js → b1-vocabulary-16-DjWPRN4R.js} +1 -1
  34. package/dist/{b1-vocabulary-16-CWAG8Q85.js.map → b1-vocabulary-16-DjWPRN4R.js.map} +1 -1
  35. package/dist/{b1-vocabulary-17-DtFsD3-3.js → b1-vocabulary-17-CtEw6s11.js} +1 -1
  36. package/dist/{b1-vocabulary-17-DtFsD3-3.js.map → b1-vocabulary-17-CtEw6s11.js.map} +1 -1
  37. package/dist/{b1-vocabulary-18-B_I4y72Z.js → b1-vocabulary-18-oHrVWgvy.js} +1 -1
  38. package/dist/{b1-vocabulary-18-B_I4y72Z.js.map → b1-vocabulary-18-oHrVWgvy.js.map} +1 -1
  39. package/dist/{b1-vocabulary-19-Cx2P-p7b.js → b1-vocabulary-19-CJL9dY39.js} +1 -1
  40. package/dist/{b1-vocabulary-19-Cx2P-p7b.js.map → b1-vocabulary-19-CJL9dY39.js.map} +1 -1
  41. package/dist/{b1-vocabulary-20-B-8mikQe.js → b1-vocabulary-20-CkCK3v5F.js} +1 -1
  42. package/dist/{b1-vocabulary-20-B-8mikQe.js.map → b1-vocabulary-20-CkCK3v5F.js.map} +1 -1
  43. package/dist/{b1-vocabulary-21-Cq4vzuts.js → b1-vocabulary-21-DC7mnzou.js} +1 -1
  44. package/dist/{b1-vocabulary-21-Cq4vzuts.js.map → b1-vocabulary-21-DC7mnzou.js.map} +1 -1
  45. package/dist/{b1-vocabulary-22-C4a2UfmF.js → b1-vocabulary-22-TA2ZbEGq.js} +1 -1
  46. package/dist/{b1-vocabulary-22-C4a2UfmF.js.map → b1-vocabulary-22-TA2ZbEGq.js.map} +1 -1
  47. package/dist/{b1-vocabulary-23-Br1SHlKX.js → b1-vocabulary-23-GXvUq-lw.js} +1 -1
  48. package/dist/{b1-vocabulary-23-Br1SHlKX.js.map → b1-vocabulary-23-GXvUq-lw.js.map} +1 -1
  49. package/dist/{b1-vocabulary-24-CxlDGYNk.js → b1-vocabulary-24-DG99cDKl.js} +1 -1
  50. package/dist/{b1-vocabulary-24-CxlDGYNk.js.map → b1-vocabulary-24-DG99cDKl.js.map} +1 -1
  51. package/dist/body-parts-Cd5RZQ8b.js +115 -0
  52. package/dist/body-parts-Cd5RZQ8b.js.map +1 -0
  53. package/dist/clothing-CAlp3Oh2.js +90 -0
  54. package/dist/clothing-CAlp3Oh2.js.map +1 -0
  55. package/dist/emotions-CzjzZipP.js +90 -0
  56. package/dist/emotions-CzjzZipP.js.map +1 -0
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +104 -24
  59. package/dist/index.js.map +1 -1
  60. package/dist/json/a2/body-parts.json +110 -0
  61. package/dist/json/a2/clothing.json +85 -0
  62. package/dist/json/a2/places.json +85 -0
  63. package/dist/json/b1/emotions.json +85 -0
  64. package/dist/json/b1/professions.json +85 -0
  65. package/dist/json/b1/weather.json +85 -0
  66. package/dist/json/b2/abstract-concepts.json +85 -0
  67. package/dist/json/pre-a1/survival-phrases.json +100 -0
  68. package/dist/places-CF2IKsXX.js +90 -0
  69. package/dist/places-CF2IKsXX.js.map +1 -0
  70. package/dist/professions-DtpFIeQk.js +90 -0
  71. package/dist/professions-DtpFIeQk.js.map +1 -0
  72. package/dist/survival-phrases-CiRt_AYV.js +105 -0
  73. package/dist/survival-phrases-CiRt_AYV.js.map +1 -0
  74. package/dist/weather-CeIruwIc.js +90 -0
  75. package/dist/weather-CeIruwIc.js.map +1 -0
  76. package/package.json +1 -1
  77. package/src/index.ts +80 -0
  78. package/src/json/a2/body-parts.json +110 -0
  79. package/src/json/a2/clothing.json +85 -0
  80. package/src/json/a2/places.json +85 -0
  81. package/src/json/b1/emotions.json +85 -0
  82. package/src/json/b1/professions.json +85 -0
  83. package/src/json/b1/weather.json +85 -0
  84. package/src/json/b2/abstract-concepts.json +85 -0
  85. package/src/json/pre-a1/survival-phrases.json +100 -0
package/dist/index.js CHANGED
@@ -94,6 +94,86 @@ var n = {
94
94
  itemCount: 10,
95
95
  source: r
96
96
  }, () => import("./numbers-1-10-3UZLCKyp.js")),
97
+ t({
98
+ id: "pre-a1-survival-phrases",
99
+ name: "Survival Phrases",
100
+ description: "Essential yes/no, greetings, and basic commands",
101
+ examGrade: "Pre-A1",
102
+ category: "survival",
103
+ difficulty: "beginner",
104
+ itemCount: 18,
105
+ source: { name: "Vietnamese essential phrases" }
106
+ }, () => import("./survival-phrases-CiRt_AYV.js")),
107
+ t({
108
+ id: "a2-body-parts",
109
+ name: "Body Parts",
110
+ description: "Human body parts and anatomy",
111
+ examGrade: "A2",
112
+ category: "anatomy",
113
+ difficulty: "intermediate",
114
+ itemCount: 20,
115
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
116
+ }, () => import("./body-parts-Cd5RZQ8b.js")),
117
+ t({
118
+ id: "a2-clothing",
119
+ name: "Clothing",
120
+ description: "Clothing and accessories",
121
+ examGrade: "A2",
122
+ category: "clothing",
123
+ difficulty: "intermediate",
124
+ itemCount: 15,
125
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
126
+ }, () => import("./clothing-CAlp3Oh2.js")),
127
+ t({
128
+ id: "a2-places",
129
+ name: "Places",
130
+ description: "Common places and buildings",
131
+ examGrade: "A2",
132
+ category: "places",
133
+ difficulty: "intermediate",
134
+ itemCount: 15,
135
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
136
+ }, () => import("./places-CF2IKsXX.js")),
137
+ t({
138
+ id: "b1-emotions",
139
+ name: "Emotions",
140
+ description: "Emotions and feelings",
141
+ examGrade: "B1",
142
+ category: "emotions",
143
+ difficulty: "intermediate",
144
+ itemCount: 15,
145
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
146
+ }, () => import("./emotions-CzjzZipP.js")),
147
+ t({
148
+ id: "b1-professions",
149
+ name: "Professions",
150
+ description: "Jobs and professions",
151
+ examGrade: "B1",
152
+ category: "work",
153
+ difficulty: "intermediate",
154
+ itemCount: 15,
155
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
156
+ }, () => import("./professions-DtpFIeQk.js")),
157
+ t({
158
+ id: "b1-weather",
159
+ name: "Weather",
160
+ description: "Weather and climate terms",
161
+ examGrade: "B1",
162
+ category: "nature",
163
+ difficulty: "intermediate",
164
+ itemCount: 15,
165
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
166
+ }, () => import("./weather-CeIruwIc.js")),
167
+ t({
168
+ id: "b2-abstract-concepts",
169
+ name: "Abstract Concepts",
170
+ description: "Abstract philosophical and social concepts",
171
+ examGrade: "B2",
172
+ category: "abstract",
173
+ difficulty: "advanced",
174
+ itemCount: 15,
175
+ source: { name: "Vietnamese frequency and thematic vocabulary" }
176
+ }, () => import("./abstract-concepts-KNlFYB8f.js")),
97
177
  t({
98
178
  id: "a2-vocabulary-01",
99
179
  name: "A2 Frequency Band 1 (1-50)",
@@ -223,7 +303,7 @@ var n = {
223
303
  difficulty: "intermediate",
224
304
  itemCount: 50,
225
305
  source: n
226
- }, () => import("./b1-vocabulary-01-ByPmjJ7U.js")),
306
+ }, () => import("./b1-vocabulary-01-Bm9ZIMBE.js")),
227
307
  t({
228
308
  id: "b1-vocabulary-02",
229
309
  name: "B1 Frequency Band 2 (51-100)",
@@ -233,7 +313,7 @@ var n = {
233
313
  difficulty: "intermediate",
234
314
  itemCount: 50,
235
315
  source: n
236
- }, () => import("./b1-vocabulary-02-DuH_m4zA.js")),
316
+ }, () => import("./b1-vocabulary-02-ClfT72Yp.js")),
237
317
  t({
238
318
  id: "b1-vocabulary-03",
239
319
  name: "B1 Frequency Band 3 (101-150)",
@@ -243,7 +323,7 @@ var n = {
243
323
  difficulty: "intermediate",
244
324
  itemCount: 50,
245
325
  source: n
246
- }, () => import("./b1-vocabulary-03-Dpwmn_12.js")),
326
+ }, () => import("./b1-vocabulary-03-BInffiGG.js")),
247
327
  t({
248
328
  id: "b1-vocabulary-04",
249
329
  name: "B1 Frequency Band 4 (151-200)",
@@ -253,7 +333,7 @@ var n = {
253
333
  difficulty: "intermediate",
254
334
  itemCount: 50,
255
335
  source: n
256
- }, () => import("./b1-vocabulary-04-Bda8dhyK.js")),
336
+ }, () => import("./b1-vocabulary-04-0wG09twP.js")),
257
337
  t({
258
338
  id: "b1-vocabulary-05",
259
339
  name: "B1 Frequency Band 5 (201-250)",
@@ -263,7 +343,7 @@ var n = {
263
343
  difficulty: "intermediate",
264
344
  itemCount: 50,
265
345
  source: n
266
- }, () => import("./b1-vocabulary-05-C3dNToLa.js")),
346
+ }, () => import("./b1-vocabulary-05-MrDkdCbh.js")),
267
347
  t({
268
348
  id: "b1-vocabulary-06",
269
349
  name: "B1 Frequency Band 6 (251-300)",
@@ -273,7 +353,7 @@ var n = {
273
353
  difficulty: "intermediate",
274
354
  itemCount: 50,
275
355
  source: n
276
- }, () => import("./b1-vocabulary-06-CMXNl4HE.js")),
356
+ }, () => import("./b1-vocabulary-06-uyXDLJa6.js")),
277
357
  t({
278
358
  id: "b1-vocabulary-07",
279
359
  name: "B1 Frequency Band 7 (301-350)",
@@ -283,7 +363,7 @@ var n = {
283
363
  difficulty: "intermediate",
284
364
  itemCount: 50,
285
365
  source: n
286
- }, () => import("./b1-vocabulary-07-Dafbh8JS.js")),
366
+ }, () => import("./b1-vocabulary-07-0Q9DCwsk.js")),
287
367
  t({
288
368
  id: "b1-vocabulary-08",
289
369
  name: "B1 Frequency Band 8 (351-400)",
@@ -293,7 +373,7 @@ var n = {
293
373
  difficulty: "intermediate",
294
374
  itemCount: 50,
295
375
  source: n
296
- }, () => import("./b1-vocabulary-08-Bsz_Ito-.js")),
376
+ }, () => import("./b1-vocabulary-08-Cx9Giw8r.js")),
297
377
  t({
298
378
  id: "b1-vocabulary-09",
299
379
  name: "B1 Frequency Band 9 (401-450)",
@@ -303,7 +383,7 @@ var n = {
303
383
  difficulty: "intermediate",
304
384
  itemCount: 50,
305
385
  source: n
306
- }, () => import("./b1-vocabulary-09-CTf-UkCq.js")),
386
+ }, () => import("./b1-vocabulary-09-Bdf0_vRF.js")),
307
387
  t({
308
388
  id: "b1-vocabulary-10",
309
389
  name: "B1 Frequency Band 10 (451-500)",
@@ -313,7 +393,7 @@ var n = {
313
393
  difficulty: "intermediate",
314
394
  itemCount: 50,
315
395
  source: n
316
- }, () => import("./b1-vocabulary-10-DcfM0_X3.js")),
396
+ }, () => import("./b1-vocabulary-10-DgkE3aUr.js")),
317
397
  t({
318
398
  id: "b1-vocabulary-11",
319
399
  name: "B1 Frequency Band 11 (501-550)",
@@ -323,7 +403,7 @@ var n = {
323
403
  difficulty: "intermediate",
324
404
  itemCount: 50,
325
405
  source: n
326
- }, () => import("./b1-vocabulary-11-C4Aaqih_.js")),
406
+ }, () => import("./b1-vocabulary-11-BtbOvYEA.js")),
327
407
  t({
328
408
  id: "b1-vocabulary-12",
329
409
  name: "B1 Frequency Band 12 (551-600)",
@@ -333,7 +413,7 @@ var n = {
333
413
  difficulty: "intermediate",
334
414
  itemCount: 50,
335
415
  source: n
336
- }, () => import("./b1-vocabulary-12-CGzQf6OU.js")),
416
+ }, () => import("./b1-vocabulary-12-DhsAY-fb.js")),
337
417
  t({
338
418
  id: "b1-vocabulary-13",
339
419
  name: "B1 Frequency Band 13 (601-650)",
@@ -343,7 +423,7 @@ var n = {
343
423
  difficulty: "intermediate",
344
424
  itemCount: 50,
345
425
  source: n
346
- }, () => import("./b1-vocabulary-13-B0eJaQgN.js")),
426
+ }, () => import("./b1-vocabulary-13-DahuIhzT.js")),
347
427
  t({
348
428
  id: "b1-vocabulary-14",
349
429
  name: "B1 Frequency Band 14 (651-700)",
@@ -353,7 +433,7 @@ var n = {
353
433
  difficulty: "intermediate",
354
434
  itemCount: 50,
355
435
  source: n
356
- }, () => import("./b1-vocabulary-14-C6IMTsnB.js")),
436
+ }, () => import("./b1-vocabulary-14-CNtBzVbj.js")),
357
437
  t({
358
438
  id: "b1-vocabulary-15",
359
439
  name: "B1 Frequency Band 15 (701-750)",
@@ -363,7 +443,7 @@ var n = {
363
443
  difficulty: "intermediate",
364
444
  itemCount: 50,
365
445
  source: n
366
- }, () => import("./b1-vocabulary-15-Dji9RURH.js")),
446
+ }, () => import("./b1-vocabulary-15-DTkPzQt9.js")),
367
447
  t({
368
448
  id: "b1-vocabulary-16",
369
449
  name: "B1 Frequency Band 16 (751-800)",
@@ -373,7 +453,7 @@ var n = {
373
453
  difficulty: "intermediate",
374
454
  itemCount: 50,
375
455
  source: n
376
- }, () => import("./b1-vocabulary-16-CWAG8Q85.js")),
456
+ }, () => import("./b1-vocabulary-16-DjWPRN4R.js")),
377
457
  t({
378
458
  id: "b1-vocabulary-17",
379
459
  name: "B1 Frequency Band 17 (801-850)",
@@ -383,7 +463,7 @@ var n = {
383
463
  difficulty: "intermediate",
384
464
  itemCount: 50,
385
465
  source: n
386
- }, () => import("./b1-vocabulary-17-DtFsD3-3.js")),
466
+ }, () => import("./b1-vocabulary-17-CtEw6s11.js")),
387
467
  t({
388
468
  id: "b1-vocabulary-18",
389
469
  name: "B1 Frequency Band 18 (851-900)",
@@ -393,7 +473,7 @@ var n = {
393
473
  difficulty: "intermediate",
394
474
  itemCount: 50,
395
475
  source: n
396
- }, () => import("./b1-vocabulary-18-B_I4y72Z.js")),
476
+ }, () => import("./b1-vocabulary-18-oHrVWgvy.js")),
397
477
  t({
398
478
  id: "b1-vocabulary-19",
399
479
  name: "B1 Frequency Band 19 (901-950)",
@@ -403,7 +483,7 @@ var n = {
403
483
  difficulty: "intermediate",
404
484
  itemCount: 50,
405
485
  source: n
406
- }, () => import("./b1-vocabulary-19-Cx2P-p7b.js")),
486
+ }, () => import("./b1-vocabulary-19-CJL9dY39.js")),
407
487
  t({
408
488
  id: "b1-vocabulary-20",
409
489
  name: "B1 Frequency Band 20 (951-1000)",
@@ -413,7 +493,7 @@ var n = {
413
493
  difficulty: "intermediate",
414
494
  itemCount: 50,
415
495
  source: n
416
- }, () => import("./b1-vocabulary-20-B-8mikQe.js")),
496
+ }, () => import("./b1-vocabulary-20-CkCK3v5F.js")),
417
497
  t({
418
498
  id: "b1-vocabulary-21",
419
499
  name: "B1 Frequency Band 21 (1001-1050)",
@@ -423,7 +503,7 @@ var n = {
423
503
  difficulty: "intermediate",
424
504
  itemCount: 50,
425
505
  source: n
426
- }, () => import("./b1-vocabulary-21-Cq4vzuts.js")),
506
+ }, () => import("./b1-vocabulary-21-DC7mnzou.js")),
427
507
  t({
428
508
  id: "b1-vocabulary-22",
429
509
  name: "B1 Frequency Band 22 (1051-1100)",
@@ -433,7 +513,7 @@ var n = {
433
513
  difficulty: "intermediate",
434
514
  itemCount: 50,
435
515
  source: n
436
- }, () => import("./b1-vocabulary-22-C4a2UfmF.js")),
516
+ }, () => import("./b1-vocabulary-22-TA2ZbEGq.js")),
437
517
  t({
438
518
  id: "b1-vocabulary-23",
439
519
  name: "B1 Frequency Band 23 (1101-1150)",
@@ -443,7 +523,7 @@ var n = {
443
523
  difficulty: "intermediate",
444
524
  itemCount: 50,
445
525
  source: n
446
- }, () => import("./b1-vocabulary-23-Br1SHlKX.js")),
526
+ }, () => import("./b1-vocabulary-23-GXvUq-lw.js")),
447
527
  t({
448
528
  id: "b1-vocabulary-24",
449
529
  name: "B1 Frequency Band 24 (1151-1200)",
@@ -453,7 +533,7 @@ var n = {
453
533
  difficulty: "intermediate",
454
534
  itemCount: 49,
455
535
  source: n
456
- }, () => import("./b1-vocabulary-24-CxlDGYNk.js"))
536
+ }, () => import("./b1-vocabulary-24-DG99cDKl.js"))
457
537
  ]]), { getDescriptorById: a, getDescriptorsByExamGrade: o, getDescriptorsByCategory: s, getDescriptorsByDifficulty: c, getCategories: l } = i;
458
538
  //#endregion
459
539
  export { l as getCategories, a as getDescriptorById, s as getDescriptorsByCategory, c as getDescriptorsByDifficulty, o as getDescriptorsByExamGrade, i as vietnameseWordListCatalog };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\r\n * Vietnamese Word Lists\r\n *\r\n * CEFR-aligned vocabulary collections for Vietnamese language learning.\r\n * Uses descriptor-based lazy loading: metadata is eager, each set's\r\n * JSON is loaded on demand via `descriptor.load()`.\r\n */\r\n\r\nimport {\r\n createWordListCatalog,\r\n jsonDescriptor,\r\n type ExamGrade,\r\n type WordListDifficulty,\r\n type WordListItem,\r\n type WordListSet,\r\n} from \"@syllst/word-lists\";\r\n\r\n// ─── Sources ───────────────────────────────────────────────────────────────\r\n\r\nconst SUBTITLE_FREQUENCY_LIST = { name: \"Subtitle frequency list\", url: \"https://github.com/hermitdave/FrequencyWords\" };\r\nconst UNKNOWN_SOURCE = { name: \"Unknown source\" };\r\n\r\n// ─── Descriptors ───────────────────────────────────────────────────────────\r\n\r\nconst descriptors = [\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-01\",\r\n name: \"A1 Frequency Band 1 (1-50)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-02\",\r\n name: \"A1 Frequency Band 2 (51-100)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-03\",\r\n name: \"A1 Frequency Band 3 (101-150)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-04\",\r\n name: \"A1 Frequency Band 4 (151-200)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"a1-basic-greetings\",\r\n name: \"Basic Greetings\",\r\n description: \"Basic Greetings vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/basic-greetings.json\")),\r\n jsonDescriptor({\r\n id: \"a1-colors\",\r\n name: \"Colors\",\r\n description: \"Colors vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/colors.json\")),\r\n jsonDescriptor({\r\n id: \"a1-family-members\",\r\n name: \"Family Members\",\r\n description: \"Family Members vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 8,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/family-members.json\")),\r\n jsonDescriptor({\r\n id: \"a1-food-basics\",\r\n name: \"Food Basics\",\r\n description: \"Food Basics vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/food-basics.json\")),\r\n jsonDescriptor({\r\n id: \"a1-numbers-1-10\",\r\n name: \"Numbers 1-10\",\r\n description: \"Numbers 1-10 vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/numbers-1-10.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-01\",\r\n name: \"A2 Frequency Band 1 (1-50)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-02\",\r\n name: \"A2 Frequency Band 2 (51-100)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-03\",\r\n name: \"A2 Frequency Band 3 (101-150)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-04\",\r\n name: \"A2 Frequency Band 4 (151-200)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-05\",\r\n name: \"A2 Frequency Band 5 (201-250)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-05.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-06\",\r\n name: \"A2 Frequency Band 6 (251-300)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-06.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-07\",\r\n name: \"A2 Frequency Band 7 (301-350)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-07.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-08\",\r\n name: \"A2 Frequency Band 8 (351-400)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-08.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-09\",\r\n name: \"A2 Frequency Band 9 (401-450)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-09.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-10\",\r\n name: \"A2 Frequency Band 10 (451-500)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-10.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-11\",\r\n name: \"A2 Frequency Band 11 (501-550)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-11.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-12\",\r\n name: \"A2 Frequency Band 12 (551-600)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-12.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-01\",\r\n name: \"B1 Frequency Band 1 (1-50)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-02\",\r\n name: \"B1 Frequency Band 2 (51-100)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-03\",\r\n name: \"B1 Frequency Band 3 (101-150)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-04\",\r\n name: \"B1 Frequency Band 4 (151-200)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-05\",\r\n name: \"B1 Frequency Band 5 (201-250)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-05.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-06\",\r\n name: \"B1 Frequency Band 6 (251-300)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-06.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-07\",\r\n name: \"B1 Frequency Band 7 (301-350)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-07.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-08\",\r\n name: \"B1 Frequency Band 8 (351-400)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-08.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-09\",\r\n name: \"B1 Frequency Band 9 (401-450)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-09.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-10\",\r\n name: \"B1 Frequency Band 10 (451-500)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-10.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-11\",\r\n name: \"B1 Frequency Band 11 (501-550)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-11.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-12\",\r\n name: \"B1 Frequency Band 12 (551-600)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-12.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-13\",\r\n name: \"B1 Frequency Band 13 (601-650)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-13.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-14\",\r\n name: \"B1 Frequency Band 14 (651-700)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-14.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-15\",\r\n name: \"B1 Frequency Band 15 (701-750)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-15.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-16\",\r\n name: \"B1 Frequency Band 16 (751-800)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-16.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-17\",\r\n name: \"B1 Frequency Band 17 (801-850)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-17.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-18\",\r\n name: \"B1 Frequency Band 18 (851-900)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-18.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-19\",\r\n name: \"B1 Frequency Band 19 (901-950)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-19.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-20\",\r\n name: \"B1 Frequency Band 20 (951-1000)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-20.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-21\",\r\n name: \"B1 Frequency Band 21 (1001-1050)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-21.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-22\",\r\n name: \"B1 Frequency Band 22 (1051-1100)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-22.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-23\",\r\n name: \"B1 Frequency Band 23 (1101-1150)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-23.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-24\",\r\n name: \"B1 Frequency Band 24 (1151-1200)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 49,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-24.json\")),\r\n] as const;\r\n\r\nexport const vietnameseWordListCatalog = createWordListCatalog([...descriptors]);\r\n\r\n// Backward-compatible re-exports (deprecated — prefer catalog API)\r\nexport const {\r\n getDescriptorById,\r\n getDescriptorsByExamGrade,\r\n getDescriptorsByCategory,\r\n getDescriptorsByDifficulty,\r\n getCategories,\r\n} = vietnameseWordListCatalog;\r\n\r\nexport type { ExamGrade, WordListDifficulty, WordListItem, WordListSet };\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["/**\r\n * Vietnamese Word Lists\r\n *\r\n * CEFR-aligned vocabulary collections for Vietnamese language learning.\r\n * Uses descriptor-based lazy loading: metadata is eager, each set's\r\n * JSON is loaded on demand via `descriptor.load()`.\r\n */\r\n\r\nimport {\r\n createWordListCatalog,\r\n jsonDescriptor,\r\n type ExamGrade,\r\n type WordListDifficulty,\r\n type WordListItem,\r\n type WordListSet,\r\n} from \"@syllst/word-lists\";\r\n\r\n// ─── Sources ───────────────────────────────────────────────────────────────\r\n\r\nconst SUBTITLE_FREQUENCY_LIST = { name: \"Subtitle frequency list\", url: \"https://github.com/hermitdave/FrequencyWords\" };\r\nconst UNKNOWN_SOURCE = { name: \"Unknown source\" };\r\n\r\n// ─── Descriptors ───────────────────────────────────────────────────────────\r\n\r\nconst descriptors = [\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-01\",\r\n name: \"A1 Frequency Band 1 (1-50)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-02\",\r\n name: \"A1 Frequency Band 2 (51-100)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-03\",\r\n name: \"A1 Frequency Band 3 (101-150)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"a1-vocabulary-04\",\r\n name: \"A1 Frequency Band 4 (151-200)\",\r\n description: \"A1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a1/a1-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"a1-basic-greetings\",\r\n name: \"Basic Greetings\",\r\n description: \"Basic Greetings vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/basic-greetings.json\")),\r\n jsonDescriptor({\r\n id: \"a1-colors\",\r\n name: \"Colors\",\r\n description: \"Colors vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/colors.json\")),\r\n jsonDescriptor({\r\n id: \"a1-family-members\",\r\n name: \"Family Members\",\r\n description: \"Family Members vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 8,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/family-members.json\")),\r\n jsonDescriptor({\r\n id: \"a1-food-basics\",\r\n name: \"Food Basics\",\r\n description: \"Food Basics vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/food-basics.json\")),\r\n jsonDescriptor({\r\n id: \"a1-numbers-1-10\",\r\n name: \"Numbers 1-10\",\r\n description: \"Numbers 1-10 vocabulary list\",\r\n examGrade: \"A1\",\r\n category: \"general\",\r\n difficulty: \"beginner\",\r\n itemCount: 10,\r\n source: UNKNOWN_SOURCE,\r\n }, () => import(\"./json/a1/numbers-1-10.json\")),\r\n jsonDescriptor({\r\n id: \"pre-a1-survival-phrases\",\r\n name: \"Survival Phrases\",\r\n description: \"Essential yes/no, greetings, and basic commands\",\r\n examGrade: \"Pre-A1\",\r\n category: \"survival\",\r\n difficulty: \"beginner\",\r\n itemCount: 18,\r\n source: { name: \"Vietnamese essential phrases\" },\r\n }, () => import(\"./json/pre-a1/survival-phrases.json\")),\r\n jsonDescriptor({\r\n id: \"a2-body-parts\",\r\n name: \"Body Parts\",\r\n description: \"Human body parts and anatomy\",\r\n examGrade: \"A2\",\r\n category: \"anatomy\",\r\n difficulty: \"intermediate\",\r\n itemCount: 20,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/a2/body-parts.json\")),\r\n jsonDescriptor({\r\n id: \"a2-clothing\",\r\n name: \"Clothing\",\r\n description: \"Clothing and accessories\",\r\n examGrade: \"A2\",\r\n category: \"clothing\",\r\n difficulty: \"intermediate\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/a2/clothing.json\")),\r\n jsonDescriptor({\r\n id: \"a2-places\",\r\n name: \"Places\",\r\n description: \"Common places and buildings\",\r\n examGrade: \"A2\",\r\n category: \"places\",\r\n difficulty: \"intermediate\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/a2/places.json\")),\r\n jsonDescriptor({\r\n id: \"b1-emotions\",\r\n name: \"Emotions\",\r\n description: \"Emotions and feelings\",\r\n examGrade: \"B1\",\r\n category: \"emotions\",\r\n difficulty: \"intermediate\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/b1/emotions.json\")),\r\n jsonDescriptor({\r\n id: \"b1-professions\",\r\n name: \"Professions\",\r\n description: \"Jobs and professions\",\r\n examGrade: \"B1\",\r\n category: \"work\",\r\n difficulty: \"intermediate\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/b1/professions.json\")),\r\n jsonDescriptor({\r\n id: \"b1-weather\",\r\n name: \"Weather\",\r\n description: \"Weather and climate terms\",\r\n examGrade: \"B1\",\r\n category: \"nature\",\r\n difficulty: \"intermediate\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/b1/weather.json\")),\r\n jsonDescriptor({\r\n id: \"b2-abstract-concepts\",\r\n name: \"Abstract Concepts\",\r\n description: \"Abstract philosophical and social concepts\",\r\n examGrade: \"B2\",\r\n category: \"abstract\",\r\n difficulty: \"advanced\",\r\n itemCount: 15,\r\n source: { name: \"Vietnamese frequency and thematic vocabulary\" },\r\n }, () => import(\"./json/b2/abstract-concepts.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-01\",\r\n name: \"A2 Frequency Band 1 (1-50)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-02\",\r\n name: \"A2 Frequency Band 2 (51-100)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-03\",\r\n name: \"A2 Frequency Band 3 (101-150)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-04\",\r\n name: \"A2 Frequency Band 4 (151-200)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-05\",\r\n name: \"A2 Frequency Band 5 (201-250)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-05.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-06\",\r\n name: \"A2 Frequency Band 6 (251-300)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-06.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-07\",\r\n name: \"A2 Frequency Band 7 (301-350)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-07.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-08\",\r\n name: \"A2 Frequency Band 8 (351-400)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-08.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-09\",\r\n name: \"A2 Frequency Band 9 (401-450)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-09.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-10\",\r\n name: \"A2 Frequency Band 10 (451-500)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-10.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-11\",\r\n name: \"A2 Frequency Band 11 (501-550)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-11.json\")),\r\n jsonDescriptor({\r\n id: \"a2-vocabulary-12\",\r\n name: \"A2 Frequency Band 12 (551-600)\",\r\n description: \"A2 level Vietnamese frequency vocabulary\",\r\n examGrade: \"A2\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/a2/a2-vocabulary-12.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-01\",\r\n name: \"B1 Frequency Band 1 (1-50)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-01.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-02\",\r\n name: \"B1 Frequency Band 2 (51-100)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-02.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-03\",\r\n name: \"B1 Frequency Band 3 (101-150)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-03.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-04\",\r\n name: \"B1 Frequency Band 4 (151-200)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-04.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-05\",\r\n name: \"B1 Frequency Band 5 (201-250)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-05.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-06\",\r\n name: \"B1 Frequency Band 6 (251-300)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-06.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-07\",\r\n name: \"B1 Frequency Band 7 (301-350)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-07.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-08\",\r\n name: \"B1 Frequency Band 8 (351-400)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-08.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-09\",\r\n name: \"B1 Frequency Band 9 (401-450)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-09.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-10\",\r\n name: \"B1 Frequency Band 10 (451-500)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-10.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-11\",\r\n name: \"B1 Frequency Band 11 (501-550)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-11.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-12\",\r\n name: \"B1 Frequency Band 12 (551-600)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-12.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-13\",\r\n name: \"B1 Frequency Band 13 (601-650)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-13.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-14\",\r\n name: \"B1 Frequency Band 14 (651-700)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-14.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-15\",\r\n name: \"B1 Frequency Band 15 (701-750)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-15.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-16\",\r\n name: \"B1 Frequency Band 16 (751-800)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-16.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-17\",\r\n name: \"B1 Frequency Band 17 (801-850)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-17.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-18\",\r\n name: \"B1 Frequency Band 18 (851-900)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-18.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-19\",\r\n name: \"B1 Frequency Band 19 (901-950)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-19.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-20\",\r\n name: \"B1 Frequency Band 20 (951-1000)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-20.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-21\",\r\n name: \"B1 Frequency Band 21 (1001-1050)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-21.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-22\",\r\n name: \"B1 Frequency Band 22 (1051-1100)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-22.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-23\",\r\n name: \"B1 Frequency Band 23 (1101-1150)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 50,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-23.json\")),\r\n jsonDescriptor({\r\n id: \"b1-vocabulary-24\",\r\n name: \"B1 Frequency Band 24 (1151-1200)\",\r\n description: \"B1 level Vietnamese frequency vocabulary\",\r\n examGrade: \"B1\",\r\n category: \"general\",\r\n difficulty: \"intermediate\",\r\n itemCount: 49,\r\n source: SUBTITLE_FREQUENCY_LIST,\r\n }, () => import(\"./json/b1/b1-vocabulary-24.json\")),\r\n] as const;\r\n\r\nexport const vietnameseWordListCatalog = createWordListCatalog([...descriptors]);\r\n\r\n// Backward-compatible re-exports (deprecated — prefer catalog API)\r\nexport const {\r\n getDescriptorById,\r\n getDescriptorsByExamGrade,\r\n getDescriptorsByCategory,\r\n getDescriptorsByDifficulty,\r\n getCategories,\r\n} = vietnameseWordListCatalog;\r\n\r\nexport type { ExamGrade, WordListDifficulty, WordListItem, WordListSet };\r\n"],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ {
2
+ "id": "a2-body-parts",
3
+ "name": "Body Parts",
4
+ "desc": "Human body parts and anatomy",
5
+ "cat": "anatomy",
6
+ "level": "A2",
7
+ "difficulty": "intermediate",
8
+ "words": [
9
+ {
10
+ "word": "đầu",
11
+ "translation": "head",
12
+ "partOfSpeech": "noun"
13
+ },
14
+ {
15
+ "word": "tóc",
16
+ "translation": "hair",
17
+ "partOfSpeech": "noun"
18
+ },
19
+ {
20
+ "word": "mắt",
21
+ "translation": "eye",
22
+ "partOfSpeech": "noun"
23
+ },
24
+ {
25
+ "word": "mũi",
26
+ "translation": "nose",
27
+ "partOfSpeech": "noun"
28
+ },
29
+ {
30
+ "word": "miệng",
31
+ "translation": "mouth",
32
+ "partOfSpeech": "noun"
33
+ },
34
+ {
35
+ "word": "răng",
36
+ "translation": "tooth",
37
+ "partOfSpeech": "noun"
38
+ },
39
+ {
40
+ "word": "lưỡi",
41
+ "translation": "tongue",
42
+ "partOfSpeech": "noun"
43
+ },
44
+ {
45
+ "word": "tai",
46
+ "translation": "ear",
47
+ "partOfSpeech": "noun"
48
+ },
49
+ {
50
+ "word": "cổ",
51
+ "translation": "neck",
52
+ "partOfSpeech": "noun"
53
+ },
54
+ {
55
+ "word": "vai",
56
+ "translation": "shoulder",
57
+ "partOfSpeech": "noun"
58
+ },
59
+ {
60
+ "word": "tay",
61
+ "translation": "arm / hand",
62
+ "partOfSpeech": "noun"
63
+ },
64
+ {
65
+ "word": "khuỷu tay",
66
+ "translation": "elbow",
67
+ "partOfSpeech": "noun"
68
+ },
69
+ {
70
+ "word": "ngón tay",
71
+ "translation": "finger",
72
+ "partOfSpeech": "noun"
73
+ },
74
+ {
75
+ "word": "bụng",
76
+ "translation": "stomach / belly",
77
+ "partOfSpeech": "noun"
78
+ },
79
+ {
80
+ "word": "chân",
81
+ "translation": "leg / foot",
82
+ "partOfSpeech": "noun"
83
+ },
84
+ {
85
+ "word": "đầu gối",
86
+ "translation": "knee",
87
+ "partOfSpeech": "noun"
88
+ },
89
+ {
90
+ "word": "bàn chân",
91
+ "translation": "foot",
92
+ "partOfSpeech": "noun"
93
+ },
94
+ {
95
+ "word": "ngón chân",
96
+ "translation": "toe",
97
+ "partOfSpeech": "noun"
98
+ },
99
+ {
100
+ "word": "da",
101
+ "translation": "skin",
102
+ "partOfSpeech": "noun"
103
+ },
104
+ {
105
+ "word": "xương",
106
+ "translation": "bone",
107
+ "partOfSpeech": "noun"
108
+ }
109
+ ]
110
+ }
@@ -0,0 +1,85 @@
1
+ {
2
+ "id": "a2-clothing",
3
+ "name": "Clothing",
4
+ "desc": "Clothing and accessories",
5
+ "cat": "clothing",
6
+ "level": "A2",
7
+ "difficulty": "intermediate",
8
+ "words": [
9
+ {
10
+ "word": "áo",
11
+ "translation": "shirt / clothing",
12
+ "partOfSpeech": "noun"
13
+ },
14
+ {
15
+ "word": "áo sơ mi",
16
+ "translation": "shirt",
17
+ "partOfSpeech": "noun"
18
+ },
19
+ {
20
+ "word": "áo thun",
21
+ "translation": "T-shirt",
22
+ "partOfSpeech": "noun"
23
+ },
24
+ {
25
+ "word": "quần",
26
+ "translation": "pants / trousers",
27
+ "partOfSpeech": "noun"
28
+ },
29
+ {
30
+ "word": "quần jeans",
31
+ "translation": "jeans",
32
+ "partOfSpeech": "noun"
33
+ },
34
+ {
35
+ "word": "váy",
36
+ "translation": "dress / skirt",
37
+ "partOfSpeech": "noun"
38
+ },
39
+ {
40
+ "word": "giày",
41
+ "translation": "shoes",
42
+ "partOfSpeech": "noun"
43
+ },
44
+ {
45
+ "word": "dép",
46
+ "translation": "sandals / flip-flops",
47
+ "partOfSpeech": "noun"
48
+ },
49
+ {
50
+ "word": "mũ",
51
+ "translation": "hat / cap",
52
+ "partOfSpeech": "noun"
53
+ },
54
+ {
55
+ "word": "khăn",
56
+ "translation": "scarf / towel",
57
+ "partOfSpeech": "noun"
58
+ },
59
+ {
60
+ "word": "găng tay",
61
+ "translation": "gloves",
62
+ "partOfSpeech": "noun"
63
+ },
64
+ {
65
+ "word": "tất",
66
+ "translation": "socks",
67
+ "partOfSpeech": "noun"
68
+ },
69
+ {
70
+ "word": "áo khoác",
71
+ "translation": "jacket / coat",
72
+ "partOfSpeech": "noun"
73
+ },
74
+ {
75
+ "word": "áo len",
76
+ "translation": "sweater",
77
+ "partOfSpeech": "noun"
78
+ },
79
+ {
80
+ "word": "đồng hồ",
81
+ "translation": "watch",
82
+ "partOfSpeech": "noun"
83
+ }
84
+ ]
85
+ }