@polyglot-bundles/vi-minimal-pairs 0.2.4 → 0.2.6
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/dist/data/level-0.d.ts +1 -1
- package/dist/data/level-0.js +40 -23
- package/dist/data/level-1.d.ts +1 -1
- package/dist/data/level-1.js +139 -69
- package/dist/data/level-2.d.ts +1 -1
- package/dist/data/level-2.js +100 -50
- package/dist/data/level-3.d.ts +1 -1
- package/dist/data/level-3.js +81 -41
- package/dist/data/level-4.d.ts +1 -1
- package/dist/data/level-4.js +62 -32
- package/dist/data/level-5.d.ts +1 -1
- package/dist/data/level-5.js +42 -25
- package/dist/data.d.ts +1 -1
- package/dist/data.js +19 -21
- package/dist/index.d.ts +1 -1
- package/dist/index.js +10 -20
- package/dist/levels.d.ts +1 -1
- package/dist/levels.js +34 -10
- package/dist/pronunciationTips.d.ts +1 -1
- package/dist/pronunciationTips.js +8 -8
- package/package.json +8 -7
package/dist/data/level-0.d.ts
CHANGED
package/dist/data/level-0.js
CHANGED
|
@@ -1,23 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
//#region src/data/level-0.ts
|
|
2
|
+
var e = [{
|
|
3
|
+
pairId: "vi_l0_001",
|
|
4
|
+
level: 0,
|
|
5
|
+
tags: ["level_0"],
|
|
6
|
+
contrastFeature: "consonant",
|
|
7
|
+
contrastDescription: "/k/ vs /t/",
|
|
8
|
+
word1: {
|
|
9
|
+
script: "ca",
|
|
10
|
+
romanization: "ca",
|
|
11
|
+
definition: "fish; song",
|
|
12
|
+
audioFile: null
|
|
13
|
+
},
|
|
14
|
+
word2: {
|
|
15
|
+
script: "ta",
|
|
16
|
+
romanization: "ta",
|
|
17
|
+
definition: "we",
|
|
18
|
+
audioFile: null
|
|
19
|
+
}
|
|
20
|
+
}, {
|
|
21
|
+
pairId: "vi_l0_002",
|
|
22
|
+
level: 0,
|
|
23
|
+
tags: ["level_0"],
|
|
24
|
+
contrastFeature: "consonant",
|
|
25
|
+
contrastDescription: "/m/ vs /n/",
|
|
26
|
+
word1: {
|
|
27
|
+
script: "mẹ",
|
|
28
|
+
romanization: "mẹ",
|
|
29
|
+
definition: "mother",
|
|
30
|
+
audioFile: null
|
|
31
|
+
},
|
|
32
|
+
word2: {
|
|
33
|
+
script: "nẹ",
|
|
34
|
+
romanization: "nẹ",
|
|
35
|
+
definition: "(dialectal)",
|
|
36
|
+
audioFile: null
|
|
37
|
+
}
|
|
38
|
+
}];
|
|
39
|
+
//#endregion
|
|
40
|
+
export { e as level0Pairs };
|
package/dist/data/level-1.d.ts
CHANGED
package/dist/data/level-1.js
CHANGED
|
@@ -1,70 +1,140 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
1
|
+
//#region src/data/level-1.ts
|
|
2
|
+
var e = [
|
|
3
|
+
{
|
|
4
|
+
pairId: "vi_l1_001",
|
|
5
|
+
level: 1,
|
|
6
|
+
tags: ["level_1", "tone"],
|
|
7
|
+
contrastFeature: "tone",
|
|
8
|
+
contrastDescription: "ngang (mid level) vs sắc (high rising)",
|
|
9
|
+
pronunciationTipId: "tone_ngang_sac",
|
|
10
|
+
word1: {
|
|
11
|
+
script: "ma",
|
|
12
|
+
romanization: "ma",
|
|
13
|
+
definition: "ghost",
|
|
14
|
+
audioFile: null
|
|
15
|
+
},
|
|
16
|
+
word2: {
|
|
17
|
+
script: "má",
|
|
18
|
+
romanization: "má",
|
|
19
|
+
definition: "mother; cheek",
|
|
20
|
+
audioFile: null
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
pairId: "vi_l1_002",
|
|
25
|
+
level: 1,
|
|
26
|
+
tags: ["level_1", "tone"],
|
|
27
|
+
contrastFeature: "tone",
|
|
28
|
+
contrastDescription: "ngang (mid level) vs huyền (low falling)",
|
|
29
|
+
word1: {
|
|
30
|
+
script: "ma",
|
|
31
|
+
romanization: "ma",
|
|
32
|
+
definition: "ghost",
|
|
33
|
+
audioFile: null
|
|
34
|
+
},
|
|
35
|
+
word2: {
|
|
36
|
+
script: "mà",
|
|
37
|
+
romanization: "mà",
|
|
38
|
+
definition: "but; that",
|
|
39
|
+
audioFile: null
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
pairId: "vi_l1_003",
|
|
44
|
+
level: 1,
|
|
45
|
+
tags: ["level_1", "tone"],
|
|
46
|
+
contrastFeature: "tone",
|
|
47
|
+
contrastDescription: "ngang (mid level) vs hỏi (dipping)",
|
|
48
|
+
word1: {
|
|
49
|
+
script: "ma",
|
|
50
|
+
romanization: "ma",
|
|
51
|
+
definition: "ghost",
|
|
52
|
+
audioFile: null
|
|
53
|
+
},
|
|
54
|
+
word2: {
|
|
55
|
+
script: "mả",
|
|
56
|
+
romanization: "mả",
|
|
57
|
+
definition: "grave; tomb",
|
|
58
|
+
audioFile: null
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
pairId: "vi_l1_004",
|
|
63
|
+
level: 1,
|
|
64
|
+
tags: ["level_1", "tone"],
|
|
65
|
+
contrastFeature: "tone",
|
|
66
|
+
contrastDescription: "ngang (mid level) vs ngã (creaky rising)",
|
|
67
|
+
word1: {
|
|
68
|
+
script: "ma",
|
|
69
|
+
romanization: "ma",
|
|
70
|
+
definition: "ghost",
|
|
71
|
+
audioFile: null
|
|
72
|
+
},
|
|
73
|
+
word2: {
|
|
74
|
+
script: "mã",
|
|
75
|
+
romanization: "mã",
|
|
76
|
+
definition: "horse; code",
|
|
77
|
+
audioFile: null
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
pairId: "vi_l1_005",
|
|
82
|
+
level: 1,
|
|
83
|
+
tags: ["level_1", "tone"],
|
|
84
|
+
contrastFeature: "tone",
|
|
85
|
+
contrastDescription: "ngang (mid level) vs nặng (glottalized low)",
|
|
86
|
+
word1: {
|
|
87
|
+
script: "ma",
|
|
88
|
+
romanization: "ma",
|
|
89
|
+
definition: "ghost",
|
|
90
|
+
audioFile: null
|
|
91
|
+
},
|
|
92
|
+
word2: {
|
|
93
|
+
script: "mạ",
|
|
94
|
+
romanization: "mạ",
|
|
95
|
+
definition: "rice seedling",
|
|
96
|
+
audioFile: null
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
pairId: "vi_l1_006",
|
|
101
|
+
level: 1,
|
|
102
|
+
tags: ["level_1", "tone"],
|
|
103
|
+
contrastFeature: "tone",
|
|
104
|
+
contrastDescription: "sắc (high rising) vs ngã (creaky rising)",
|
|
105
|
+
word1: {
|
|
106
|
+
script: "mái",
|
|
107
|
+
romanization: "mái",
|
|
108
|
+
definition: "roof",
|
|
109
|
+
audioFile: null
|
|
110
|
+
},
|
|
111
|
+
word2: {
|
|
112
|
+
script: "mãi",
|
|
113
|
+
romanization: "mãi",
|
|
114
|
+
definition: "forever",
|
|
115
|
+
audioFile: null
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
pairId: "vi_l1_007",
|
|
120
|
+
level: 1,
|
|
121
|
+
tags: ["level_1", "tone"],
|
|
122
|
+
contrastFeature: "tone",
|
|
123
|
+
contrastDescription: "Full six-tone contrast on /a/",
|
|
124
|
+
word1: {
|
|
125
|
+
script: "a",
|
|
126
|
+
romanization: "a",
|
|
127
|
+
definition: "ah!",
|
|
128
|
+
audioFile: null
|
|
129
|
+
},
|
|
130
|
+
word2: {
|
|
131
|
+
script: "á",
|
|
132
|
+
romanization: "á",
|
|
133
|
+
definition: "oh! (surprise)",
|
|
134
|
+
audioFile: null
|
|
135
|
+
},
|
|
136
|
+
notes: "Complete series: a (ah!), á (oh!), à (ah...), ả (hả?), ã (ãh), ạ (ạ!)"
|
|
137
|
+
}
|
|
67
138
|
];
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
};
|
|
139
|
+
//#endregion
|
|
140
|
+
export { e as level1Pairs };
|
package/dist/data/level-2.d.ts
CHANGED
package/dist/data/level-2.js
CHANGED
|
@@ -1,51 +1,101 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
//#region src/data/level-2.ts
|
|
2
|
+
var e = [
|
|
3
|
+
{
|
|
4
|
+
pairId: "vi_l2_001",
|
|
5
|
+
level: 2,
|
|
6
|
+
tags: ["level_2", "consonant"],
|
|
7
|
+
contrastFeature: "consonant",
|
|
8
|
+
contrastDescription: "/t/ vs /ɗ/ (voiceless vs implosive)",
|
|
9
|
+
pronunciationTipId: "consonant_t_d",
|
|
10
|
+
word1: {
|
|
11
|
+
script: "tôi",
|
|
12
|
+
romanization: "tôi",
|
|
13
|
+
definition: "I",
|
|
14
|
+
audioFile: null
|
|
15
|
+
},
|
|
16
|
+
word2: {
|
|
17
|
+
script: "đôi",
|
|
18
|
+
romanization: "đôi",
|
|
19
|
+
definition: "pair",
|
|
20
|
+
audioFile: null
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
pairId: "vi_l2_002",
|
|
25
|
+
level: 2,
|
|
26
|
+
tags: ["level_2", "consonant"],
|
|
27
|
+
contrastFeature: "consonant",
|
|
28
|
+
contrastDescription: "/s/ vs /x/",
|
|
29
|
+
word1: {
|
|
30
|
+
script: "sa",
|
|
31
|
+
romanization: "sa",
|
|
32
|
+
definition: "to fall; to borrow",
|
|
33
|
+
audioFile: null
|
|
34
|
+
},
|
|
35
|
+
word2: {
|
|
36
|
+
script: "xa",
|
|
37
|
+
romanization: "xa",
|
|
38
|
+
definition: "far",
|
|
39
|
+
audioFile: null
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
pairId: "vi_l2_003",
|
|
44
|
+
level: 2,
|
|
45
|
+
tags: ["level_2", "consonant"],
|
|
46
|
+
contrastFeature: "consonant",
|
|
47
|
+
contrastDescription: "/tr/ vs /ch/",
|
|
48
|
+
word1: {
|
|
49
|
+
script: "trẻ",
|
|
50
|
+
romanization: "trẻ",
|
|
51
|
+
definition: "young",
|
|
52
|
+
audioFile: null
|
|
53
|
+
},
|
|
54
|
+
word2: {
|
|
55
|
+
script: "chẻ",
|
|
56
|
+
romanization: "chẻ",
|
|
57
|
+
definition: "to split",
|
|
58
|
+
audioFile: null
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
pairId: "vi_l2_004",
|
|
63
|
+
level: 2,
|
|
64
|
+
tags: ["level_2", "consonant"],
|
|
65
|
+
contrastFeature: "consonant",
|
|
66
|
+
contrastDescription: "/g/ vs /k/",
|
|
67
|
+
word1: {
|
|
68
|
+
script: "gây",
|
|
69
|
+
romanization: "gây",
|
|
70
|
+
definition: "to cause",
|
|
71
|
+
audioFile: null
|
|
72
|
+
},
|
|
73
|
+
word2: {
|
|
74
|
+
script: "cây",
|
|
75
|
+
romanization: "cây",
|
|
76
|
+
definition: "tree",
|
|
77
|
+
audioFile: null
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
pairId: "vi_l2_005",
|
|
82
|
+
level: 2,
|
|
83
|
+
tags: ["level_2", "consonant"],
|
|
84
|
+
contrastFeature: "consonant",
|
|
85
|
+
contrastDescription: "/ŋ/ vs /ɲ/",
|
|
86
|
+
word1: {
|
|
87
|
+
script: "ngà",
|
|
88
|
+
romanization: "ngà",
|
|
89
|
+
definition: "ivory",
|
|
90
|
+
audioFile: null
|
|
91
|
+
},
|
|
92
|
+
word2: {
|
|
93
|
+
script: "nhà",
|
|
94
|
+
romanization: "nhà",
|
|
95
|
+
definition: "house",
|
|
96
|
+
audioFile: null
|
|
97
|
+
}
|
|
98
|
+
}
|
|
48
99
|
];
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
};
|
|
100
|
+
//#endregion
|
|
101
|
+
export { e as level2Pairs };
|
package/dist/data/level-3.d.ts
CHANGED
package/dist/data/level-3.js
CHANGED
|
@@ -1,42 +1,82 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
1
|
+
//#region src/data/level-3.ts
|
|
2
|
+
var e = [
|
|
3
|
+
{
|
|
4
|
+
pairId: "vi_l3_001",
|
|
5
|
+
level: 3,
|
|
6
|
+
tags: ["level_3", "vowel"],
|
|
7
|
+
contrastFeature: "vowel",
|
|
8
|
+
contrastDescription: "/a/ vs /ɛ/",
|
|
9
|
+
pronunciationTipId: "vowel_a_e",
|
|
10
|
+
word1: {
|
|
11
|
+
script: "cỏ",
|
|
12
|
+
romanization: "cỏ",
|
|
13
|
+
definition: "grass",
|
|
14
|
+
audioFile: null
|
|
15
|
+
},
|
|
16
|
+
word2: {
|
|
17
|
+
script: "cá",
|
|
18
|
+
romanization: "cá",
|
|
19
|
+
definition: "fish",
|
|
20
|
+
audioFile: null
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
pairId: "vi_l3_002",
|
|
25
|
+
level: 3,
|
|
26
|
+
tags: ["level_3", "vowel"],
|
|
27
|
+
contrastFeature: "vowel",
|
|
28
|
+
contrastDescription: "/e/ vs /i/",
|
|
29
|
+
word1: {
|
|
30
|
+
script: "tê",
|
|
31
|
+
romanization: "tê",
|
|
32
|
+
definition: "numb",
|
|
33
|
+
audioFile: null
|
|
34
|
+
},
|
|
35
|
+
word2: {
|
|
36
|
+
script: "ti",
|
|
37
|
+
romanization: "ti",
|
|
38
|
+
definition: "small",
|
|
39
|
+
audioFile: null
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
pairId: "vi_l3_003",
|
|
44
|
+
level: 3,
|
|
45
|
+
tags: ["level_3", "vowel"],
|
|
46
|
+
contrastFeature: "vowel",
|
|
47
|
+
contrastDescription: "Monophthong vs diphthong",
|
|
48
|
+
word1: {
|
|
49
|
+
script: "cây",
|
|
50
|
+
romanization: "cây",
|
|
51
|
+
definition: "tree",
|
|
52
|
+
audioFile: null
|
|
53
|
+
},
|
|
54
|
+
word2: {
|
|
55
|
+
script: "cơi",
|
|
56
|
+
romanization: "cơi",
|
|
57
|
+
definition: "to open; enlarge",
|
|
58
|
+
audioFile: null
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
pairId: "vi_l3_004",
|
|
63
|
+
level: 3,
|
|
64
|
+
tags: ["level_3", "vowel"],
|
|
65
|
+
contrastFeature: "vowel",
|
|
66
|
+
contrastDescription: "/u/ vs /o/",
|
|
67
|
+
word1: {
|
|
68
|
+
script: "tua",
|
|
69
|
+
romanization: "tua",
|
|
70
|
+
definition: "tentacle",
|
|
71
|
+
audioFile: null
|
|
72
|
+
},
|
|
73
|
+
word2: {
|
|
74
|
+
script: "toa",
|
|
75
|
+
romanization: "toa",
|
|
76
|
+
definition: "train car",
|
|
77
|
+
audioFile: null
|
|
78
|
+
}
|
|
79
|
+
}
|
|
39
80
|
];
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
};
|
|
81
|
+
//#endregion
|
|
82
|
+
export { e as level3Pairs };
|
package/dist/data/level-4.d.ts
CHANGED
package/dist/data/level-4.js
CHANGED
|
@@ -1,33 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
//#region src/data/level-4.ts
|
|
2
|
+
var e = [
|
|
3
|
+
{
|
|
4
|
+
pairId: "vi_l4_001",
|
|
5
|
+
level: 4,
|
|
6
|
+
tags: ["level_4", "final"],
|
|
7
|
+
contrastFeature: "final_consonant",
|
|
8
|
+
contrastDescription: "Final /-n/ vs final /-ŋ/",
|
|
9
|
+
pronunciationTipId: "final_n_ng",
|
|
10
|
+
word1: {
|
|
11
|
+
script: "tân",
|
|
12
|
+
romanization: "tân",
|
|
13
|
+
definition: "new",
|
|
14
|
+
audioFile: null
|
|
15
|
+
},
|
|
16
|
+
word2: {
|
|
17
|
+
script: "tâng",
|
|
18
|
+
romanization: "tâng",
|
|
19
|
+
definition: "to pitch; flatter",
|
|
20
|
+
audioFile: null
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
pairId: "vi_l4_002",
|
|
25
|
+
level: 4,
|
|
26
|
+
tags: ["level_4", "final"],
|
|
27
|
+
contrastFeature: "final_consonant",
|
|
28
|
+
contrastDescription: "Final /-n/ vs final /-k/",
|
|
29
|
+
word1: {
|
|
30
|
+
script: "bạn",
|
|
31
|
+
romanization: "bạn",
|
|
32
|
+
definition: "friend",
|
|
33
|
+
audioFile: null
|
|
34
|
+
},
|
|
35
|
+
word2: {
|
|
36
|
+
script: "bạc",
|
|
37
|
+
romanization: "bạc",
|
|
38
|
+
definition: "silver",
|
|
39
|
+
audioFile: null
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
pairId: "vi_l4_003",
|
|
44
|
+
level: 4,
|
|
45
|
+
tags: ["level_4", "final"],
|
|
46
|
+
contrastFeature: "final_consonant",
|
|
47
|
+
contrastDescription: "Final /-m/ vs final /-n/",
|
|
48
|
+
word1: {
|
|
49
|
+
script: "tim",
|
|
50
|
+
romanization: "tim",
|
|
51
|
+
definition: "heart",
|
|
52
|
+
audioFile: null
|
|
53
|
+
},
|
|
54
|
+
word2: {
|
|
55
|
+
script: "tin",
|
|
56
|
+
romanization: "tin",
|
|
57
|
+
definition: "news; tin",
|
|
58
|
+
audioFile: null
|
|
59
|
+
}
|
|
60
|
+
}
|
|
30
61
|
];
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
};
|
|
62
|
+
//#endregion
|
|
63
|
+
export { e as level4Pairs };
|
package/dist/data/level-5.d.ts
CHANGED
package/dist/data/level-5.js
CHANGED
|
@@ -1,25 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
1
|
+
//#region src/data/level-5.ts
|
|
2
|
+
var e = [{
|
|
3
|
+
pairId: "vi_l5_001",
|
|
4
|
+
level: 5,
|
|
5
|
+
tags: ["level_5", "tone"],
|
|
6
|
+
contrastFeature: "tone",
|
|
7
|
+
contrastDescription: "hỏi vs ngã (Northern distinction)",
|
|
8
|
+
word1: {
|
|
9
|
+
script: "sửa",
|
|
10
|
+
romanization: "sửa",
|
|
11
|
+
definition: "to repair",
|
|
12
|
+
audioFile: null
|
|
13
|
+
},
|
|
14
|
+
word2: {
|
|
15
|
+
script: "sữa",
|
|
16
|
+
romanization: "sữa",
|
|
17
|
+
definition: "milk",
|
|
18
|
+
audioFile: null
|
|
19
|
+
},
|
|
20
|
+
notes: "This distinction is maintained in Northern Vietnamese but merged in Southern"
|
|
21
|
+
}, {
|
|
22
|
+
pairId: "vi_l5_002",
|
|
23
|
+
level: 5,
|
|
24
|
+
tags: ["level_5", "consonant"],
|
|
25
|
+
contrastFeature: "consonant",
|
|
26
|
+
contrastDescription: "/l/ vs /n/ (regional variation)",
|
|
27
|
+
word1: {
|
|
28
|
+
script: "lửa",
|
|
29
|
+
romanization: "lửa",
|
|
30
|
+
definition: "fire",
|
|
31
|
+
audioFile: null
|
|
32
|
+
},
|
|
33
|
+
word2: {
|
|
34
|
+
script: "nửa",
|
|
35
|
+
romanization: "nửa",
|
|
36
|
+
definition: "half",
|
|
37
|
+
audioFile: null
|
|
38
|
+
},
|
|
39
|
+
notes: "Some Southern dialects merge /l/ and /n/. Northern speakers maintain the distinction."
|
|
40
|
+
}];
|
|
41
|
+
//#endregion
|
|
42
|
+
export { e as level5Pairs };
|
package/dist/data.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MinimalPairsLanguageData } from '
|
|
1
|
+
import { MinimalPairsLanguageData } from '@polyglot-bundles/content-shared';
|
|
2
2
|
export declare const minimalPairsData: MinimalPairsLanguageData;
|
|
3
3
|
export default minimalPairsData;
|
|
4
4
|
//# sourceMappingURL=data.d.ts.map
|
package/dist/data.js
CHANGED
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
import { levels as
|
|
2
|
-
import { pronunciationTips as
|
|
3
|
-
import { level0Pairs as
|
|
4
|
-
import { level1Pairs as
|
|
5
|
-
import { level2Pairs as
|
|
1
|
+
import { levels as e } from "./levels.js";
|
|
2
|
+
import { pronunciationTips as t } from "./pronunciationTips.js";
|
|
3
|
+
import { level0Pairs as n } from "./data/level-0.js";
|
|
4
|
+
import { level1Pairs as r } from "./data/level-1.js";
|
|
5
|
+
import { level2Pairs as i } from "./data/level-2.js";
|
|
6
6
|
import { level3Pairs as a } from "./data/level-3.js";
|
|
7
|
-
import { level4Pairs as
|
|
7
|
+
import { level4Pairs as o } from "./data/level-4.js";
|
|
8
8
|
import { level5Pairs as s } from "./data/level-5.js";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
};
|
|
21
|
-
export {
|
|
22
|
-
x as default,
|
|
23
|
-
x as minimalPairsData
|
|
9
|
+
var c = {
|
|
10
|
+
levels: e,
|
|
11
|
+
minimalPairs: [
|
|
12
|
+
...n,
|
|
13
|
+
...r,
|
|
14
|
+
...i,
|
|
15
|
+
...a,
|
|
16
|
+
...o,
|
|
17
|
+
...s
|
|
18
|
+
],
|
|
19
|
+
pronunciationTips: t
|
|
24
20
|
};
|
|
21
|
+
//#endregion
|
|
22
|
+
export { c as default, c as minimalPairsData };
|
package/dist/index.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ export { level2Pairs } from './data/level-2';
|
|
|
7
7
|
export { level3Pairs } from './data/level-3';
|
|
8
8
|
export { level4Pairs } from './data/level-4';
|
|
9
9
|
export { level5Pairs } from './data/level-5';
|
|
10
|
-
export type { MinimalPairsLanguageData, MinimalPairsLevelInfo, MinimalPairsMinimalPair, MinimalPairsPronunciationTipsMap, MinimalPairsRubySegment, MinimalPairsWordInfo, } from '
|
|
10
|
+
export type { MinimalPairsLanguageData, MinimalPairsLevelInfo, MinimalPairsMinimalPair, MinimalPairsPronunciationTipsMap, MinimalPairsRubySegment, MinimalPairsWordInfo, } from '@polyglot-bundles/content-shared';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,20 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
10
|
-
export {
|
|
11
|
-
o as default,
|
|
12
|
-
m as level0Pairs,
|
|
13
|
-
a as level1Pairs,
|
|
14
|
-
v as level2Pairs,
|
|
15
|
-
n as level3Pairs,
|
|
16
|
-
c as level4Pairs,
|
|
17
|
-
T as level5Pairs,
|
|
18
|
-
p as levels,
|
|
19
|
-
f as pronunciationTips
|
|
20
|
-
};
|
|
1
|
+
import { levels as e } from "./levels.js";
|
|
2
|
+
import { pronunciationTips as t } from "./pronunciationTips.js";
|
|
3
|
+
import { level0Pairs as n } from "./data/level-0.js";
|
|
4
|
+
import { level1Pairs as r } from "./data/level-1.js";
|
|
5
|
+
import { level2Pairs as i } from "./data/level-2.js";
|
|
6
|
+
import { level3Pairs as a } from "./data/level-3.js";
|
|
7
|
+
import { level4Pairs as o } from "./data/level-4.js";
|
|
8
|
+
import { level5Pairs as s } from "./data/level-5.js";
|
|
9
|
+
import c from "./data.js";
|
|
10
|
+
export { c as default, n as level0Pairs, r as level1Pairs, i as level2Pairs, a as level3Pairs, o as level4Pairs, s as level5Pairs, e as levels, t as pronunciationTips };
|
package/dist/levels.d.ts
CHANGED
package/dist/levels.js
CHANGED
|
@@ -1,11 +1,35 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
//#region src/levels.ts
|
|
2
|
+
var e = [
|
|
3
|
+
{
|
|
4
|
+
level: 0,
|
|
5
|
+
title: "Getting Started",
|
|
6
|
+
description: "Practice with clearly different sounds"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
level: 1,
|
|
10
|
+
title: "Six Tones",
|
|
11
|
+
description: "The Vietnamese tonal system"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
level: 2,
|
|
15
|
+
title: "Initial Consonants",
|
|
16
|
+
description: "Consonant contrasts at syllable start"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
level: 3,
|
|
20
|
+
title: "Vowels",
|
|
21
|
+
description: "Vietnamese vowel quality"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
level: 4,
|
|
25
|
+
title: "Final Consonants",
|
|
26
|
+
description: "Syllable-ending contrasts"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
level: 5,
|
|
30
|
+
title: "Expert Level",
|
|
31
|
+
description: "Subtle regional and phonetic distinctions"
|
|
32
|
+
}
|
|
8
33
|
];
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
};
|
|
34
|
+
//#endregion
|
|
35
|
+
export { e as levels };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { MinimalPairsPronunciationTipsMap } from '
|
|
1
|
+
import { MinimalPairsPronunciationTipsMap } from '@polyglot-bundles/content-shared';
|
|
2
2
|
export declare const pronunciationTips: MinimalPairsPronunciationTipsMap;
|
|
3
3
|
//# sourceMappingURL=pronunciationTips.d.ts.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export {
|
|
8
|
-
n as pronunciationTips
|
|
1
|
+
//#region src/pronunciationTips.ts
|
|
2
|
+
var e = {
|
|
3
|
+
tone_ngang_sac: "ngang (mid): level, neutral. sắc (high rising): starts mid, rises sharply like a question in English.",
|
|
4
|
+
consonant_t_d: "/t/ is voiceless with no aspiration. /ɗ/ (đ) is implosive - pull the glottis down while making the sound.",
|
|
5
|
+
vowel_a_e: "/a/ is open central. /ɛ/ (e) is open-mid front. Vietnamese has many vowel qualities.",
|
|
6
|
+
final_n_ng: "/-n/ is alveolar (tongue on ridge). /-ŋ/ (ng) is velar (back of tongue against soft palate)."
|
|
9
7
|
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { e as pronunciationTips };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@polyglot-bundles/vi-minimal-pairs",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -50,12 +50,13 @@
|
|
|
50
50
|
"dist"
|
|
51
51
|
],
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@polyglot-bundles/content-shared": "0.
|
|
54
|
-
"@polyglot-bundles/vi-lang": "0.2.
|
|
53
|
+
"@polyglot-bundles/content-shared": "0.5.1",
|
|
54
|
+
"@polyglot-bundles/vi-lang": "0.2.2"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"vite": "^
|
|
58
|
-
"vite-plugin-dts": "^4.
|
|
57
|
+
"vite": "^8.0.8",
|
|
58
|
+
"vite-plugin-dts": "^4.5.4",
|
|
59
|
+
"@polyglot-bundles/lang-tooling": "0.0.0"
|
|
59
60
|
},
|
|
60
61
|
"publishConfig": {
|
|
61
62
|
"access": "public"
|
|
@@ -66,7 +67,7 @@
|
|
|
66
67
|
"directory": "packages/vi/minimal-pairs"
|
|
67
68
|
},
|
|
68
69
|
"scripts": {
|
|
69
|
-
"
|
|
70
|
-
"
|
|
70
|
+
"typecheck": "tsc --noEmit",
|
|
71
|
+
"build": "vite build"
|
|
71
72
|
}
|
|
72
73
|
}
|