@polyglot-bundles/ru-minimal-pairs 0.3.3 → 0.3.5

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.
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level0Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-0.d.ts.map
@@ -0,0 +1,40 @@
1
+ //#region src/data/level-0.ts
2
+ var e = [{
3
+ pairId: "ru_l0_001",
4
+ level: 0,
5
+ tags: ["level_0"],
6
+ contrastFeature: "consonant",
7
+ contrastDescription: "/b/ vs /p/",
8
+ word1: {
9
+ script: "ба́та",
10
+ romanization: "báta",
11
+ definition: "bat (animal)",
12
+ audioFile: null
13
+ },
14
+ word2: {
15
+ script: "па́та",
16
+ romanization: "páta",
17
+ definition: "pata (type of dance)",
18
+ audioFile: null
19
+ }
20
+ }, {
21
+ pairId: "ru_l0_002",
22
+ level: 0,
23
+ tags: ["level_0"],
24
+ contrastFeature: "consonant",
25
+ contrastDescription: "/m/ vs /f/",
26
+ word1: {
27
+ script: "ма́та",
28
+ romanization: "máta",
29
+ definition: "mother (vocative)",
30
+ audioFile: null
31
+ },
32
+ word2: {
33
+ script: "фа́та",
34
+ romanization: "fátа",
35
+ definition: "fat (archaic)",
36
+ audioFile: null
37
+ }
38
+ }];
39
+ //#endregion
40
+ export { e as level0Pairs };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level1Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-1.d.ts.map
@@ -0,0 +1,102 @@
1
+ //#region src/data/level-1.ts
2
+ var e = [
3
+ {
4
+ pairId: "ru_l1_001",
5
+ level: 1,
6
+ tags: ["level_1", "vowel"],
7
+ contrastFeature: "vowel",
8
+ contrastDescription: "/a/ vs /o/",
9
+ pronunciationTipId: "vowel_a_o",
10
+ word1: {
11
+ script: "мама́",
12
+ romanization: "mamá",
13
+ definition: "mom",
14
+ audioFile: null
15
+ },
16
+ word2: {
17
+ script: "мома́",
18
+ romanization: "momá",
19
+ definition: "mom (dialectal)",
20
+ audioFile: null
21
+ }
22
+ },
23
+ {
24
+ pairId: "ru_l1_002",
25
+ level: 1,
26
+ tags: ["level_1", "vowel"],
27
+ contrastFeature: "vowel",
28
+ contrastDescription: "/e/ vs /i/",
29
+ pronunciationTipId: "vowel_e_i",
30
+ word1: {
31
+ script: "дерево́",
32
+ romanization: "derévó",
33
+ definition: "tree",
34
+ audioFile: null
35
+ },
36
+ word2: {
37
+ script: "дирево́",
38
+ romanization: "direzvó",
39
+ definition: "(dialectal variant)",
40
+ audioFile: null
41
+ }
42
+ },
43
+ {
44
+ pairId: "ru_l1_003",
45
+ level: 1,
46
+ tags: ["level_1", "vowel"],
47
+ contrastFeature: "vowel",
48
+ contrastDescription: "/o/ vs /u/",
49
+ word1: {
50
+ script: "до́ма",
51
+ romanization: "dóma",
52
+ definition: "home (accusative)",
53
+ audioFile: null
54
+ },
55
+ word2: {
56
+ script: "ду́ма",
57
+ romanization: "dúma",
58
+ definition: "think! (imperative)",
59
+ audioFile: null
60
+ }
61
+ },
62
+ {
63
+ pairId: "ru_l1_004",
64
+ level: 1,
65
+ tags: ["level_1", "vowel"],
66
+ contrastFeature: "vowel",
67
+ contrastDescription: "/a/ vs /i/",
68
+ word1: {
69
+ script: "пара́",
70
+ romanization: "pará",
71
+ definition: "pair",
72
+ audioFile: null
73
+ },
74
+ word2: {
75
+ script: "пира́",
76
+ romanization: "pirá",
77
+ definition: "feast (genitive)",
78
+ audioFile: null
79
+ }
80
+ },
81
+ {
82
+ pairId: "ru_l1_005",
83
+ level: 1,
84
+ tags: ["level_1", "vowel"],
85
+ contrastFeature: "vowel",
86
+ contrastDescription: "/e/ vs /o/",
87
+ word1: {
88
+ script: "ме́сто",
89
+ romanization: "méssto",
90
+ definition: "place",
91
+ audioFile: null
92
+ },
93
+ word2: {
94
+ script: "мо́сто",
95
+ romanization: "mósto",
96
+ definition: "bridge (accusative)",
97
+ audioFile: null
98
+ }
99
+ }
100
+ ];
101
+ //#endregion
102
+ export { e as level1Pairs };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level2Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-2.d.ts.map
@@ -0,0 +1,101 @@
1
+ //#region src/data/level-2.ts
2
+ var e = [
3
+ {
4
+ pairId: "ru_l2_001",
5
+ level: 2,
6
+ tags: ["level_2", "consonant"],
7
+ contrastFeature: "consonant",
8
+ contrastDescription: "/b/ vs /p/ (voiced vs voiceless)",
9
+ pronunciationTipId: "consonant_voicing",
10
+ word1: {
11
+ script: "ба́ба",
12
+ romanization: "bába",
13
+ definition: "old woman; grandmother",
14
+ audioFile: null
15
+ },
16
+ word2: {
17
+ script: "па́ба",
18
+ romanization: "pába",
19
+ definition: "(dialectal variant)",
20
+ audioFile: null
21
+ }
22
+ },
23
+ {
24
+ pairId: "ru_l2_002",
25
+ level: 2,
26
+ tags: ["level_2", "consonant"],
27
+ contrastFeature: "consonant",
28
+ contrastDescription: "/d/ vs /t/",
29
+ word1: {
30
+ script: "да́ма",
31
+ romanization: "dámа",
32
+ definition: "lady",
33
+ audioFile: null
34
+ },
35
+ word2: {
36
+ script: "та́ма",
37
+ romanization: "támа",
38
+ definition: "(dialectal variant)",
39
+ audioFile: null
40
+ }
41
+ },
42
+ {
43
+ pairId: "ru_l2_003",
44
+ level: 2,
45
+ tags: ["level_2", "consonant"],
46
+ contrastFeature: "consonant",
47
+ contrastDescription: "/v/ vs /f/",
48
+ word1: {
49
+ script: "ва́за",
50
+ romanization: "váza",
51
+ definition: "vase",
52
+ audioFile: null
53
+ },
54
+ word2: {
55
+ script: "фа́за",
56
+ romanization: "fáza",
57
+ definition: "phase; stage",
58
+ audioFile: null
59
+ }
60
+ },
61
+ {
62
+ pairId: "ru_l2_004",
63
+ level: 2,
64
+ tags: ["level_2", "consonant"],
65
+ contrastFeature: "consonant",
66
+ contrastDescription: "/z/ vs /s/",
67
+ word1: {
68
+ script: "за́мок",
69
+ romanization: "zámok",
70
+ definition: "lock (lock on a door)",
71
+ audioFile: null
72
+ },
73
+ word2: {
74
+ script: "са́мок",
75
+ romanization: "sámok",
76
+ definition: "(dialectal variant)",
77
+ audioFile: null
78
+ }
79
+ },
80
+ {
81
+ pairId: "ru_l2_005",
82
+ level: 2,
83
+ tags: ["level_2", "consonant"],
84
+ contrastFeature: "consonant",
85
+ contrastDescription: "/ɡ/ vs /k/",
86
+ word1: {
87
+ script: "га́за",
88
+ romanization: "gáza",
89
+ definition: "gas (genitive)",
90
+ audioFile: null
91
+ },
92
+ word2: {
93
+ script: "ка́за",
94
+ romanization: "káza",
95
+ definition: "kaza (type of hat)",
96
+ audioFile: null
97
+ }
98
+ }
99
+ ];
100
+ //#endregion
101
+ export { e as level2Pairs };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level3Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-3.d.ts.map
@@ -0,0 +1,101 @@
1
+ //#region src/data/level-3.ts
2
+ var e = [
3
+ {
4
+ pairId: "ru_l3_001",
5
+ level: 3,
6
+ tags: ["level_3", "palatalization"],
7
+ contrastFeature: "consonant",
8
+ contrastDescription: "/t/ vs /tʲ/ (hard vs soft t)",
9
+ pronunciationTipId: "palatalization",
10
+ word1: {
11
+ script: "та́ка",
12
+ romanization: "tákа",
13
+ definition: "(dialectal variant)",
14
+ audioFile: null
15
+ },
16
+ word2: {
17
+ script: "тья́ка",
18
+ romanization: "tʲákа",
19
+ definition: "(dialectal variant)",
20
+ audioFile: null
21
+ }
22
+ },
23
+ {
24
+ pairId: "ru_l3_002",
25
+ level: 3,
26
+ tags: ["level_3", "palatalization"],
27
+ contrastFeature: "consonant",
28
+ contrastDescription: "/d/ vs /dʲ/ (hard vs soft d)",
29
+ word1: {
30
+ script: "да́ча",
31
+ romanization: "dácha",
32
+ definition: "country house; dacha",
33
+ audioFile: null
34
+ },
35
+ word2: {
36
+ script: "дья́ча",
37
+ romanization: "dʲácha",
38
+ definition: "deacon's wife",
39
+ audioFile: null
40
+ }
41
+ },
42
+ {
43
+ pairId: "ru_l3_003",
44
+ level: 3,
45
+ tags: ["level_3", "palatalization"],
46
+ contrastFeature: "consonant",
47
+ contrastDescription: "/s/ vs /sʲ/ (hard vs soft s)",
48
+ word1: {
49
+ script: "са́ха",
50
+ romanization: "sáха",
51
+ definition: "sugar",
52
+ audioFile: null
53
+ },
54
+ word2: {
55
+ script: "сья́ха",
56
+ romanization: "sʲáха",
57
+ definition: "(dialectal variant)",
58
+ audioFile: null
59
+ }
60
+ },
61
+ {
62
+ pairId: "ru_l3_004",
63
+ level: 3,
64
+ tags: ["level_3", "palatalization"],
65
+ contrastFeature: "consonant",
66
+ contrastDescription: "/l/ vs /lʲ/ (hard vs soft l)",
67
+ word1: {
68
+ script: "бал",
69
+ romanization: "bal",
70
+ definition: "ball (dance)",
71
+ audioFile: null
72
+ },
73
+ word2: {
74
+ script: "баль",
75
+ romanization: "balʲ",
76
+ definition: "ballet",
77
+ audioFile: null
78
+ }
79
+ },
80
+ {
81
+ pairId: "ru_l3_005",
82
+ level: 3,
83
+ tags: ["level_3", "palatalization"],
84
+ contrastFeature: "consonant",
85
+ contrastDescription: "/n/ vs /nʲ/ (hard vs soft n)",
86
+ word1: {
87
+ script: "ан",
88
+ romanization: "an",
89
+ definition: "an (unit)",
90
+ audioFile: null
91
+ },
92
+ word2: {
93
+ script: "ань",
94
+ romanization: "anʲ",
95
+ definition: "any (feminine)",
96
+ audioFile: null
97
+ }
98
+ }
99
+ ];
100
+ //#endregion
101
+ export { e as level3Pairs };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level4Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-4.d.ts.map
@@ -0,0 +1,124 @@
1
+ //#region src/data/level-4.ts
2
+ var e = [
3
+ {
4
+ pairId: "ru_l4_001",
5
+ level: 4,
6
+ tags: [
7
+ "level_4",
8
+ "vowel",
9
+ "reduction"
10
+ ],
11
+ contrastFeature: "vowel",
12
+ contrastDescription: "/a/ stressed vs unstressed",
13
+ pronunciationTipId: "vowel_reduction",
14
+ word1: {
15
+ script: "ма́ма",
16
+ romanization: "máma",
17
+ definition: "mom",
18
+ audioFile: null
19
+ },
20
+ word2: {
21
+ script: "мама́",
22
+ romanization: "mamá",
23
+ definition: "mom (vocative)",
24
+ audioFile: null
25
+ },
26
+ notes: "First syllable /a/ is unstressed (reduced to /ə/), second is stressed."
27
+ },
28
+ {
29
+ pairId: "ru_l4_002",
30
+ level: 4,
31
+ tags: [
32
+ "level_4",
33
+ "vowel",
34
+ "reduction"
35
+ ],
36
+ contrastFeature: "vowel",
37
+ contrastDescription: "/o/ stressed vs unstressed",
38
+ word1: {
39
+ script: "мо́ре",
40
+ romanization: "móre",
41
+ definition: "sea",
42
+ audioFile: null
43
+ },
44
+ word2: {
45
+ script: "моро́",
46
+ romanization: "moró",
47
+ definition: "sea (genitive)",
48
+ audioFile: null
49
+ },
50
+ notes: "Stressed /o/ stays full, unstressed /o/ reduces to /a/ (the 'o-kanie' phenomenon)."
51
+ },
52
+ {
53
+ pairId: "ru_l4_003",
54
+ level: 4,
55
+ tags: [
56
+ "level_4",
57
+ "vowel",
58
+ "reduction"
59
+ ],
60
+ contrastFeature: "vowel",
61
+ contrastDescription: "Full vowel vs reduced vowel in similar words",
62
+ word1: {
63
+ script: "ра́бочий",
64
+ romanization: "rábochiy",
65
+ definition: "working (masc.)",
66
+ audioFile: null
67
+ },
68
+ word2: {
69
+ script: "рабо́та",
70
+ romanization: "рабóta",
71
+ definition: "work; job",
72
+ audioFile: null
73
+ },
74
+ notes: "In unstressed position, /a/ and /o/ both reduce to /ə/ (the 'akanie' phenomenon)."
75
+ },
76
+ {
77
+ pairId: "ru_l4_004",
78
+ level: 4,
79
+ tags: [
80
+ "level_4",
81
+ "vowel",
82
+ "reduction"
83
+ ],
84
+ contrastFeature: "vowel",
85
+ contrastDescription: "/i/ stressed vs unstressed",
86
+ word1: {
87
+ script: "би́ло",
88
+ romanization: "bílo",
89
+ definition: "white (neut. past)",
90
+ audioFile: null
91
+ },
92
+ word2: {
93
+ script: "било́",
94
+ romanization: "biló",
95
+ definition: "it happened",
96
+ audioFile: null
97
+ }
98
+ },
99
+ {
100
+ pairId: "ru_l4_005",
101
+ level: 4,
102
+ tags: [
103
+ "level_4",
104
+ "vowel",
105
+ "reduction"
106
+ ],
107
+ contrastFeature: "vowel",
108
+ contrastDescription: "/u/ stressed vs unstressed",
109
+ word1: {
110
+ script: "ду́ха",
111
+ romanization: "dúha",
112
+ definition: "spirit (genitive)",
113
+ audioFile: null
114
+ },
115
+ word2: {
116
+ script: "духа́",
117
+ romanization: "dukhá",
118
+ definition: "spirit (vocative)",
119
+ audioFile: null
120
+ }
121
+ }
122
+ ];
123
+ //#endregion
124
+ export { e as level4Pairs };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsMinimalPair } from '../../../../../content-shared/src';
1
+ import { MinimalPairsMinimalPair } from '@polyglot-bundles/content-shared';
2
2
  export declare const level5Pairs: MinimalPairsMinimalPair[];
3
3
  //# sourceMappingURL=level-5.d.ts.map
@@ -0,0 +1,104 @@
1
+ //#region src/data/level-5.ts
2
+ var e = [
3
+ {
4
+ pairId: "ru_l5_001",
5
+ level: 5,
6
+ tags: ["level_5", "consonant"],
7
+ contrastFeature: "consonant",
8
+ contrastDescription: "/ʒ/ vs /ʃ/ (zh vs sh)",
9
+ pronunciationTipId: "consonant_ʒ_ʃ",
10
+ word1: {
11
+ script: "жу́к",
12
+ romanization: "žúk",
13
+ definition: "beetle",
14
+ audioFile: null
15
+ },
16
+ word2: {
17
+ script: "шу́к",
18
+ romanization: "šúk",
19
+ definition: "(dialectal variant)",
20
+ audioFile: null
21
+ }
22
+ },
23
+ {
24
+ pairId: "ru_l5_002",
25
+ level: 5,
26
+ tags: ["level_5", "consonant"],
27
+ contrastFeature: "consonant",
28
+ contrastDescription: "/tʲ/ vs /dʲ/ (soft t vs soft d)",
29
+ word1: {
30
+ script: "тьма",
31
+ romanization: "tʲma",
32
+ definition: "darkness",
33
+ audioFile: null
34
+ },
35
+ word2: {
36
+ script: "дья",
37
+ romanization: "dʲa",
38
+ definition: "through (archaic)",
39
+ audioFile: null
40
+ }
41
+ },
42
+ {
43
+ pairId: "ru_l5_003",
44
+ level: 5,
45
+ tags: ["level_5", "palatalization"],
46
+ contrastFeature: "consonant",
47
+ contrastDescription: "Palatalized consonant clusters",
48
+ word1: {
49
+ script: "съе́зд",
50
+ romanization: "sʲésd",
51
+ definition: "congress; conference",
52
+ audioFile: null
53
+ },
54
+ word2: {
55
+ script: "зъе́зд",
56
+ romanization: "zʲésd",
57
+ definition: "(dialectal variant)",
58
+ audioFile: null
59
+ },
60
+ notes: "The 'ъ' (hard sign) creates a palatalized environment before 'e' sounds."
61
+ },
62
+ {
63
+ pairId: "ru_l5_004",
64
+ level: 5,
65
+ tags: ["level_5", "vowel"],
66
+ contrastFeature: "vowel",
67
+ contrastDescription: "/ə/ (reduced) vs full vowels",
68
+ word1: {
69
+ script: "пошёл",
70
+ romanization: "pošól",
71
+ definition: "he went",
72
+ audioFile: null
73
+ },
74
+ word2: {
75
+ script: "пошо́л",
76
+ romanization: "pošól",
77
+ definition: "(dialectal variant)",
78
+ audioFile: null
79
+ },
80
+ notes: "Unstressed vowels undergo reduction - /o/ becomes /ə/, /a/ becomes /ə/."
81
+ },
82
+ {
83
+ pairId: "ru_l5_005",
84
+ level: 5,
85
+ tags: ["level_5", "complex"],
86
+ contrastFeature: "complex",
87
+ contrastDescription: "Full palatalization contrast",
88
+ word1: {
89
+ script: "мой",
90
+ romanization: "mój",
91
+ definition: "my (masc.)",
92
+ audioFile: null
93
+ },
94
+ word2: {
95
+ script: "мёд",
96
+ romanization: "mód",
97
+ definition: "honey",
98
+ audioFile: null
99
+ },
100
+ notes: "The 'ё' represents /jo/ with palatalized preceding consonant and reduced vowel quality."
101
+ }
102
+ ];
103
+ //#endregion
104
+ export { e as level5Pairs };
package/dist/data.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { MinimalPairsLanguageData } from '../../../../content-shared/src';
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 r } from "./levels.js";
2
- import { pronunciationTips as i } from "./pronunciationTips.js";
3
- import { level0Pairs as o } from "./level0.js";
4
- import { level1Pairs as m } from "./level1.js";
5
- import { level2Pairs as l } from "./level2.js";
6
- import { level3Pairs as a } from "./level3.js";
7
- import { level4Pairs as e } from "./level4.js";
8
- import { level5Pairs as s } from "./level5.js";
9
- const t = [
10
- ...o,
11
- ...m,
12
- ...l,
13
- ...a,
14
- ...e,
15
- ...s
16
- ], x = {
17
- levels: r,
18
- minimalPairs: t,
19
- pronunciationTips: i
20
- };
21
- export {
22
- x as default,
23
- x as minimalPairsData
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
+ 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
@@ -5,5 +5,5 @@ export { level2Pairs } from './data/level-2';
5
5
  export { level3Pairs } from './data/level-3';
6
6
  export { level4Pairs } from './data/level-4';
7
7
  export { level5Pairs } from './data/level-5';
8
- export type { MinimalPairsLanguageData, MinimalPairsLevelInfo, MinimalPairsMinimalPair, MinimalPairsPronunciationTipsMap, MinimalPairsRubySegment, MinimalPairsWordInfo, } from '../../../../content-shared/src';
8
+ export type { MinimalPairsLanguageData, MinimalPairsLevelInfo, MinimalPairsMinimalPair, MinimalPairsPronunciationTipsMap, MinimalPairsRubySegment, MinimalPairsWordInfo, } from '@polyglot-bundles/content-shared';
9
9
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,16 +1,8 @@
1
- import { default as l } from "./data.js";
2
- import { level0Pairs as a } from "./level0.js";
3
- import { level1Pairs as m } from "./level1.js";
4
- import { level2Pairs as f } from "./level2.js";
5
- import { level3Pairs as p } from "./level3.js";
6
- import { level4Pairs as P } from "./level4.js";
7
- import { level5Pairs as d } from "./level5.js";
8
- export {
9
- a as level0Pairs,
10
- m as level1Pairs,
11
- f as level2Pairs,
12
- p as level3Pairs,
13
- P as level4Pairs,
14
- d as level5Pairs,
15
- l as minimalPairsData
16
- };
1
+ import { level0Pairs as e } from "./data/level-0.js";
2
+ import { level1Pairs as t } from "./data/level-1.js";
3
+ import { level2Pairs as n } from "./data/level-2.js";
4
+ import { level3Pairs as r } from "./data/level-3.js";
5
+ import { level4Pairs as i } from "./data/level-4.js";
6
+ import { level5Pairs as a } from "./data/level-5.js";
7
+ import o from "./data.js";
8
+ export { e as level0Pairs, t as level1Pairs, n as level2Pairs, r as level3Pairs, i as level4Pairs, a as level5Pairs, o as minimalPairsData };
package/dist/levels.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { MinimalPairsLevelInfo } from '../../../../content-shared/src';
1
+ import { MinimalPairsLevelInfo } from '@polyglot-bundles/content-shared';
2
2
  export declare const levels: MinimalPairsLevelInfo[];
3
3
  //# sourceMappingURL=levels.d.ts.map
package/dist/levels.js CHANGED
@@ -1,11 +1,35 @@
1
- const e = [
2
- { level: 0, title: "Getting Started", description: "Practice with clearly different sounds" },
3
- { level: 1, title: "Vowel Contrasts", description: "The five main vowel phonemes" },
4
- { level: 2, title: "Voicing Contrasts", description: "Voiceless vs voiced consonant pairs" },
5
- { level: 3, title: "Palatalization Contrasts", description: "Hard vs soft consonants" },
6
- { level: 4, title: "Vowel Reduction Contrasts", description: "Stressed vs unstressed vowels" },
7
- { level: 5, title: "Expert Level", description: "Subtle distinctions and advanced phonology" }
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: "Vowel Contrasts",
11
+ description: "The five main vowel phonemes"
12
+ },
13
+ {
14
+ level: 2,
15
+ title: "Voicing Contrasts",
16
+ description: "Voiceless vs voiced consonant pairs"
17
+ },
18
+ {
19
+ level: 3,
20
+ title: "Palatalization Contrasts",
21
+ description: "Hard vs soft consonants"
22
+ },
23
+ {
24
+ level: 4,
25
+ title: "Vowel Reduction Contrasts",
26
+ description: "Stressed vs unstressed vowels"
27
+ },
28
+ {
29
+ level: 5,
30
+ title: "Expert Level",
31
+ description: "Subtle distinctions and advanced phonology"
32
+ }
8
33
  ];
9
- export {
10
- e as levels
11
- };
34
+ //#endregion
35
+ export { e as levels };
@@ -1,3 +1,3 @@
1
- import { MinimalPairsPronunciationTipsMap } from '../../../../content-shared/src';
1
+ import { MinimalPairsPronunciationTipsMap } from '@polyglot-bundles/content-shared';
2
2
  export declare const pronunciationTips: MinimalPairsPronunciationTipsMap;
3
3
  //# sourceMappingURL=pronunciationTips.d.ts.map
@@ -1,13 +1,13 @@
1
- const e = {
2
- vowel_a_o: "/a/ (а) is open back unrounded. /o/ (о) is rounded. In unstressed position, /o/ reduces to /a/ (akanie).",
3
- vowel_e_i: "/e/ (э) is open-mid front. /i/ (и) is close front. /i/ is more tense and higher.",
4
- vowel_a_o_2: "/a/ (а) is pronounced 'ah'. /o/ (о) is pronounced 'ah' when stressed, 'uh' when unstressed.",
5
- consonant_voicing: "Voiced consonants (б, д, в, з, г) vibrate your vocal cords. Voiceless (п, т, ф, с, к) do not. Hold your throat to feel the difference.",
6
- palatalization: "Palatalized consonants (soft) are pronounced with the middle of the tongue raised toward the hard palate. Non-palatalized (hard) are pronounced without this raise.",
7
- vowel_reduction: "Russian has vowel reduction: unstressed /a/ and /o/ both become /ə/ (a schwa-like sound). This is called 'akanie'. Unstressed /e/ and /i/ also reduce.",
8
- consonant_ʒ_ʃ: "/ʒ/ (ж) is a voiced retroflex fricative - like the 's' in 'measure'. /ʃ/ (ш) is voiceless - like the 'sh' in 'ship'.",
9
- consonant_ʒ_ʃ_2: "Ж is always voiced like a humming bee. Ш is always voiceless like a snake. Remember: 'ЖЖЖ' for ж, 'ШШШ' for ш."
10
- };
11
- export {
12
- e as pronunciationTips
1
+ //#region src/pronunciationTips.ts
2
+ var e = {
3
+ vowel_a_o: "/a/ (а) is open back unrounded. /o/ (о) is rounded. In unstressed position, /o/ reduces to /a/ (akanie).",
4
+ vowel_e_i: "/e/ (э) is open-mid front. /i/ (и) is close front. /i/ is more tense and higher.",
5
+ vowel_a_o_2: "/a/ (а) is pronounced 'ah'. /o/ (о) is pronounced 'ah' when stressed, 'uh' when unstressed.",
6
+ consonant_voicing: "Voiced consonants (б, д, в, з, г) vibrate your vocal cords. Voiceless (п, т, ф, с, к) do not. Hold your throat to feel the difference.",
7
+ palatalization: "Palatalized consonants (soft) are pronounced with the middle of the tongue raised toward the hard palate. Non-palatalized (hard) are pronounced without this raise.",
8
+ vowel_reduction: "Russian has vowel reduction: unstressed /a/ and /o/ both become /ə/ (a schwa-like sound). This is called 'akanie'. Unstressed /e/ and /i/ also reduce.",
9
+ consonant_ʒ_ʃ: "/ʒ/ (ж) is a voiced retroflex fricative - like the 's' in 'measure'. /ʃ/ (ш) is voiceless - like the 'sh' in 'ship'.",
10
+ consonant_ʒ_ʃ_2: "Ж is always voiced like a humming bee. Ш is always voiceless like a snake. Remember: 'ЖЖЖ' for ж, 'ШШШ' for ш."
13
11
  };
12
+ //#endregion
13
+ export { e as pronunciationTips };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polyglot-bundles/ru-minimal-pairs",
3
- "version": "0.3.3",
3
+ "version": "0.3.5",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -49,12 +49,11 @@
49
49
  "files": [
50
50
  "dist"
51
51
  ],
52
- "dependencies": {
53
- "@polyglot-bundles/content-shared": "0.4.1"
54
- },
55
52
  "devDependencies": {
56
- "vite": "^5.4.0",
57
- "vite-plugin-dts": "^4.0.0"
53
+ "vite": "^8.0.8",
54
+ "vite-plugin-dts": "^4.5.4",
55
+ "@polyglot-bundles/lang-tooling": "0.0.0",
56
+ "@polyglot-bundles/content-shared": "0.5.3"
58
57
  },
59
58
  "publishConfig": {
60
59
  "access": "public"
@@ -65,7 +64,7 @@
65
64
  "directory": "packages/ru/minimal-pairs"
66
65
  },
67
66
  "scripts": {
68
- "build": "vite build",
69
- "clean": "rm -rf dist"
67
+ "typecheck": "tsc --noEmit",
68
+ "build": "vite build"
70
69
  }
71
70
  }
package/dist/level0.js DELETED
@@ -1,23 +0,0 @@
1
- const i = [
2
- {
3
- pairId: "ru_l0_001",
4
- level: 0,
5
- tags: ["level_0"],
6
- contrastFeature: "consonant",
7
- contrastDescription: "/b/ vs /p/",
8
- word1: { script: "ба́та", romanization: "báta", definition: "bat (animal)", audioFile: null },
9
- word2: { script: "па́та", romanization: "páta", definition: "pata (type of dance)", audioFile: null }
10
- },
11
- {
12
- pairId: "ru_l0_002",
13
- level: 0,
14
- tags: ["level_0"],
15
- contrastFeature: "consonant",
16
- contrastDescription: "/m/ vs /f/",
17
- word1: { script: "ма́та", romanization: "máta", definition: "mother (vocative)", audioFile: null },
18
- word2: { script: "фа́та", romanization: "fátа", definition: "fat (archaic)", audioFile: null }
19
- }
20
- ];
21
- export {
22
- i as level0Pairs
23
- };
package/dist/level1.js DELETED
@@ -1,52 +0,0 @@
1
- const i = [
2
- {
3
- pairId: "ru_l1_001",
4
- level: 1,
5
- tags: ["level_1", "vowel"],
6
- contrastFeature: "vowel",
7
- contrastDescription: "/a/ vs /o/",
8
- pronunciationTipId: "vowel_a_o",
9
- word1: { script: "мама́", romanization: "mamá", definition: "mom", audioFile: null },
10
- word2: { script: "мома́", romanization: "momá", definition: "mom (dialectal)", audioFile: null }
11
- },
12
- {
13
- pairId: "ru_l1_002",
14
- level: 1,
15
- tags: ["level_1", "vowel"],
16
- contrastFeature: "vowel",
17
- contrastDescription: "/e/ vs /i/",
18
- pronunciationTipId: "vowel_e_i",
19
- word1: { script: "дерево́", romanization: "derévó", definition: "tree", audioFile: null },
20
- word2: { script: "дирево́", romanization: "direzvó", definition: "(dialectal variant)", audioFile: null }
21
- },
22
- {
23
- pairId: "ru_l1_003",
24
- level: 1,
25
- tags: ["level_1", "vowel"],
26
- contrastFeature: "vowel",
27
- contrastDescription: "/o/ vs /u/",
28
- word1: { script: "до́ма", romanization: "dóma", definition: "home (accusative)", audioFile: null },
29
- word2: { script: "ду́ма", romanization: "dúma", definition: "think! (imperative)", audioFile: null }
30
- },
31
- {
32
- pairId: "ru_l1_004",
33
- level: 1,
34
- tags: ["level_1", "vowel"],
35
- contrastFeature: "vowel",
36
- contrastDescription: "/a/ vs /i/",
37
- word1: { script: "пара́", romanization: "pará", definition: "pair", audioFile: null },
38
- word2: { script: "пира́", romanization: "pirá", definition: "feast (genitive)", audioFile: null }
39
- },
40
- {
41
- pairId: "ru_l1_005",
42
- level: 1,
43
- tags: ["level_1", "vowel"],
44
- contrastFeature: "vowel",
45
- contrastDescription: "/e/ vs /o/",
46
- word1: { script: "ме́сто", romanization: "méssto", definition: "place", audioFile: null },
47
- word2: { script: "мо́сто", romanization: "mósto", definition: "bridge (accusative)", audioFile: null }
48
- }
49
- ];
50
- export {
51
- i as level1Pairs
52
- };
package/dist/level2.js DELETED
@@ -1,51 +0,0 @@
1
- const i = [
2
- {
3
- pairId: "ru_l2_001",
4
- level: 2,
5
- tags: ["level_2", "consonant"],
6
- contrastFeature: "consonant",
7
- contrastDescription: "/b/ vs /p/ (voiced vs voiceless)",
8
- pronunciationTipId: "consonant_voicing",
9
- word1: { script: "ба́ба", romanization: "bába", definition: "old woman; grandmother", audioFile: null },
10
- word2: { script: "па́ба", romanization: "pába", definition: "(dialectal variant)", audioFile: null }
11
- },
12
- {
13
- pairId: "ru_l2_002",
14
- level: 2,
15
- tags: ["level_2", "consonant"],
16
- contrastFeature: "consonant",
17
- contrastDescription: "/d/ vs /t/",
18
- word1: { script: "да́ма", romanization: "dámа", definition: "lady", audioFile: null },
19
- word2: { script: "та́ма", romanization: "támа", definition: "(dialectal variant)", audioFile: null }
20
- },
21
- {
22
- pairId: "ru_l2_003",
23
- level: 2,
24
- tags: ["level_2", "consonant"],
25
- contrastFeature: "consonant",
26
- contrastDescription: "/v/ vs /f/",
27
- word1: { script: "ва́за", romanization: "váza", definition: "vase", audioFile: null },
28
- word2: { script: "фа́за", romanization: "fáza", definition: "phase; stage", audioFile: null }
29
- },
30
- {
31
- pairId: "ru_l2_004",
32
- level: 2,
33
- tags: ["level_2", "consonant"],
34
- contrastFeature: "consonant",
35
- contrastDescription: "/z/ vs /s/",
36
- word1: { script: "за́мок", romanization: "zámok", definition: "lock (lock on a door)", audioFile: null },
37
- word2: { script: "са́мок", romanization: "sámok", definition: "(dialectal variant)", audioFile: null }
38
- },
39
- {
40
- pairId: "ru_l2_005",
41
- level: 2,
42
- tags: ["level_2", "consonant"],
43
- contrastFeature: "consonant",
44
- contrastDescription: "/ɡ/ vs /k/",
45
- word1: { script: "га́за", romanization: "gáza", definition: "gas (genitive)", audioFile: null },
46
- word2: { script: "ка́за", romanization: "káza", definition: "kaza (type of hat)", audioFile: null }
47
- }
48
- ];
49
- export {
50
- i as level2Pairs
51
- };
package/dist/level3.js DELETED
@@ -1,51 +0,0 @@
1
- const i = [
2
- {
3
- pairId: "ru_l3_001",
4
- level: 3,
5
- tags: ["level_3", "palatalization"],
6
- contrastFeature: "consonant",
7
- contrastDescription: "/t/ vs /tʲ/ (hard vs soft t)",
8
- pronunciationTipId: "palatalization",
9
- word1: { script: "та́ка", romanization: "tákа", definition: "(dialectal variant)", audioFile: null },
10
- word2: { script: "тья́ка", romanization: "tʲákа", definition: "(dialectal variant)", audioFile: null }
11
- },
12
- {
13
- pairId: "ru_l3_002",
14
- level: 3,
15
- tags: ["level_3", "palatalization"],
16
- contrastFeature: "consonant",
17
- contrastDescription: "/d/ vs /dʲ/ (hard vs soft d)",
18
- word1: { script: "да́ча", romanization: "dácha", definition: "country house; dacha", audioFile: null },
19
- word2: { script: "дья́ча", romanization: "dʲácha", definition: "deacon's wife", audioFile: null }
20
- },
21
- {
22
- pairId: "ru_l3_003",
23
- level: 3,
24
- tags: ["level_3", "palatalization"],
25
- contrastFeature: "consonant",
26
- contrastDescription: "/s/ vs /sʲ/ (hard vs soft s)",
27
- word1: { script: "са́ха", romanization: "sáха", definition: "sugar", audioFile: null },
28
- word2: { script: "сья́ха", romanization: "sʲáха", definition: "(dialectal variant)", audioFile: null }
29
- },
30
- {
31
- pairId: "ru_l3_004",
32
- level: 3,
33
- tags: ["level_3", "palatalization"],
34
- contrastFeature: "consonant",
35
- contrastDescription: "/l/ vs /lʲ/ (hard vs soft l)",
36
- word1: { script: "бал", romanization: "bal", definition: "ball (dance)", audioFile: null },
37
- word2: { script: "баль", romanization: "balʲ", definition: "ballet", audioFile: null }
38
- },
39
- {
40
- pairId: "ru_l3_005",
41
- level: 3,
42
- tags: ["level_3", "palatalization"],
43
- contrastFeature: "consonant",
44
- contrastDescription: "/n/ vs /nʲ/ (hard vs soft n)",
45
- word1: { script: "ан", romanization: "an", definition: "an (unit)", audioFile: null },
46
- word2: { script: "ань", romanization: "anʲ", definition: "any (feminine)", audioFile: null }
47
- }
48
- ];
49
- export {
50
- i as level3Pairs
51
- };
package/dist/level4.js DELETED
@@ -1,54 +0,0 @@
1
- const e = [
2
- {
3
- pairId: "ru_l4_001",
4
- level: 4,
5
- tags: ["level_4", "vowel", "reduction"],
6
- contrastFeature: "vowel",
7
- contrastDescription: "/a/ stressed vs unstressed",
8
- pronunciationTipId: "vowel_reduction",
9
- word1: { script: "ма́ма", romanization: "máma", definition: "mom", audioFile: null },
10
- word2: { script: "мама́", romanization: "mamá", definition: "mom (vocative)", audioFile: null },
11
- notes: "First syllable /a/ is unstressed (reduced to /ə/), second is stressed."
12
- },
13
- {
14
- pairId: "ru_l4_002",
15
- level: 4,
16
- tags: ["level_4", "vowel", "reduction"],
17
- contrastFeature: "vowel",
18
- contrastDescription: "/o/ stressed vs unstressed",
19
- word1: { script: "мо́ре", romanization: "móre", definition: "sea", audioFile: null },
20
- word2: { script: "моро́", romanization: "moró", definition: "sea (genitive)", audioFile: null },
21
- notes: "Stressed /o/ stays full, unstressed /o/ reduces to /a/ (the 'o-kanie' phenomenon)."
22
- },
23
- {
24
- pairId: "ru_l4_003",
25
- level: 4,
26
- tags: ["level_4", "vowel", "reduction"],
27
- contrastFeature: "vowel",
28
- contrastDescription: "Full vowel vs reduced vowel in similar words",
29
- word1: { script: "ра́бочий", romanization: "rábochiy", definition: "working (masc.)", audioFile: null },
30
- word2: { script: "рабо́та", romanization: "рабóta", definition: "work; job", audioFile: null },
31
- notes: "In unstressed position, /a/ and /o/ both reduce to /ə/ (the 'akanie' phenomenon)."
32
- },
33
- {
34
- pairId: "ru_l4_004",
35
- level: 4,
36
- tags: ["level_4", "vowel", "reduction"],
37
- contrastFeature: "vowel",
38
- contrastDescription: "/i/ stressed vs unstressed",
39
- word1: { script: "би́ло", romanization: "bílo", definition: "white (neut. past)", audioFile: null },
40
- word2: { script: "било́", romanization: "biló", definition: "it happened", audioFile: null }
41
- },
42
- {
43
- pairId: "ru_l4_005",
44
- level: 4,
45
- tags: ["level_4", "vowel", "reduction"],
46
- contrastFeature: "vowel",
47
- contrastDescription: "/u/ stressed vs unstressed",
48
- word1: { script: "ду́ха", romanization: "dúha", definition: "spirit (genitive)", audioFile: null },
49
- word2: { script: "духа́", romanization: "dukhá", definition: "spirit (vocative)", audioFile: null }
50
- }
51
- ];
52
- export {
53
- e as level4Pairs
54
- };
package/dist/level5.js DELETED
@@ -1,54 +0,0 @@
1
- const i = [
2
- {
3
- pairId: "ru_l5_001",
4
- level: 5,
5
- tags: ["level_5", "consonant"],
6
- contrastFeature: "consonant",
7
- contrastDescription: "/ʒ/ vs /ʃ/ (zh vs sh)",
8
- pronunciationTipId: "consonant_ʒ_ʃ",
9
- word1: { script: "жу́к", romanization: "žúk", definition: "beetle", audioFile: null },
10
- word2: { script: "шу́к", romanization: "šúk", definition: "(dialectal variant)", audioFile: null }
11
- },
12
- {
13
- pairId: "ru_l5_002",
14
- level: 5,
15
- tags: ["level_5", "consonant"],
16
- contrastFeature: "consonant",
17
- contrastDescription: "/tʲ/ vs /dʲ/ (soft t vs soft d)",
18
- word1: { script: "тьма", romanization: "tʲma", definition: "darkness", audioFile: null },
19
- word2: { script: "дья", romanization: "dʲa", definition: "through (archaic)", audioFile: null }
20
- },
21
- {
22
- pairId: "ru_l5_003",
23
- level: 5,
24
- tags: ["level_5", "palatalization"],
25
- contrastFeature: "consonant",
26
- contrastDescription: "Palatalized consonant clusters",
27
- word1: { script: "съе́зд", romanization: "sʲésd", definition: "congress; conference", audioFile: null },
28
- word2: { script: "зъе́зд", romanization: "zʲésd", definition: "(dialectal variant)", audioFile: null },
29
- notes: "The 'ъ' (hard sign) creates a palatalized environment before 'e' sounds."
30
- },
31
- {
32
- pairId: "ru_l5_004",
33
- level: 5,
34
- tags: ["level_5", "vowel"],
35
- contrastFeature: "vowel",
36
- contrastDescription: "/ə/ (reduced) vs full vowels",
37
- word1: { script: "пошёл", romanization: "pošól", definition: "he went", audioFile: null },
38
- word2: { script: "пошо́л", romanization: "pošól", definition: "(dialectal variant)", audioFile: null },
39
- notes: "Unstressed vowels undergo reduction - /o/ becomes /ə/, /a/ becomes /ə/."
40
- },
41
- {
42
- pairId: "ru_l5_005",
43
- level: 5,
44
- tags: ["level_5", "complex"],
45
- contrastFeature: "complex",
46
- contrastDescription: "Full palatalization contrast",
47
- word1: { script: "мой", romanization: "mój", definition: "my (masc.)", audioFile: null },
48
- word2: { script: "мёд", romanization: "mód", definition: "honey", audioFile: null },
49
- notes: "The 'ё' represents /jo/ with palatalized preceding consonant and reduced vowel quality."
50
- }
51
- ];
52
- export {
53
- i as level5Pairs
54
- };