@polyglot-bundles/ja-minimal-pairs 0.1.1
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.d.ts +4 -0
- package/dist/data.d.ts.map +1 -0
- package/dist/data.js +148 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/package.json +40 -0
package/dist/data.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,eAAO,MAAM,gBAAgB,EAAE,wBA6F9B,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
package/dist/data.js
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
const i = {
|
|
2
|
+
levels: [
|
|
3
|
+
{ level: 0, title: "Getting Started", description: "Practice with clearly different sounds" },
|
|
4
|
+
{ level: 1, title: "Vowels", description: "Japanese vowel differences" },
|
|
5
|
+
{ level: 2, title: "Long Vowels", description: "Short vs long vowels" },
|
|
6
|
+
{ level: 3, title: "Voicing", description: "Voiceless vs voiced consonants" },
|
|
7
|
+
{ level: 4, title: "Special Sounds", description: "The differences of n, tt, and long vowels" },
|
|
8
|
+
{ level: 5, title: "Expert Level", description: "Subtle differences" }
|
|
9
|
+
],
|
|
10
|
+
minimalPairs: [
|
|
11
|
+
// Level 0
|
|
12
|
+
{
|
|
13
|
+
pairId: "ja_l0_001",
|
|
14
|
+
level: 0,
|
|
15
|
+
tags: ["level_0"],
|
|
16
|
+
contrastFeature: "consonant",
|
|
17
|
+
contrastDescription: "/k/ vs /s/",
|
|
18
|
+
word1: { script: "かさ", romanization: "kasa", definition: "umbrella", audioFile: null },
|
|
19
|
+
word2: { script: "ささ", romanization: "sasa", definition: "bamboo grass", audioFile: null }
|
|
20
|
+
},
|
|
21
|
+
// Level 1: Vowels
|
|
22
|
+
{
|
|
23
|
+
pairId: "ja_l1_001",
|
|
24
|
+
level: 1,
|
|
25
|
+
tags: ["level_1", "vowel"],
|
|
26
|
+
contrastFeature: "vowel",
|
|
27
|
+
contrastDescription: "/a/ vs /o/",
|
|
28
|
+
pronunciationTipId: "vowel_a_o",
|
|
29
|
+
word1: { script: "さか", romanization: "saka", definition: "slope", audioFile: null },
|
|
30
|
+
word2: { script: "さこ", romanization: "sako", definition: "cape", audioFile: null }
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
pairId: "ja_l1_002",
|
|
34
|
+
level: 1,
|
|
35
|
+
tags: ["level_1", "vowel"],
|
|
36
|
+
contrastFeature: "vowel",
|
|
37
|
+
contrastDescription: "/i/ vs /e/",
|
|
38
|
+
word1: { script: "きた", romanization: "kita", definition: "north; came", audioFile: null },
|
|
39
|
+
word2: { script: "けた", romanization: "keta", definition: "digit", audioFile: null }
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
pairId: "ja_l1_003",
|
|
43
|
+
level: 1,
|
|
44
|
+
tags: ["level_1", "vowel"],
|
|
45
|
+
contrastFeature: "vowel",
|
|
46
|
+
contrastDescription: "/u/ vs /o/",
|
|
47
|
+
word1: { script: "くち", romanization: "kuchi", definition: "mouth", audioFile: null },
|
|
48
|
+
word2: { script: "こち", romanization: "kochi", definition: "this way", audioFile: null }
|
|
49
|
+
},
|
|
50
|
+
// Level 2: Long vowels
|
|
51
|
+
{
|
|
52
|
+
pairId: "ja_l2_001",
|
|
53
|
+
level: 2,
|
|
54
|
+
tags: ["level_2", "length"],
|
|
55
|
+
contrastFeature: "vowel",
|
|
56
|
+
contrastDescription: "Short /o/ vs Long /oo/",
|
|
57
|
+
pronunciationTipId: "vowel_length",
|
|
58
|
+
word1: { script: "おばさん", romanization: "obasan", definition: "aunt; middle-aged woman", audioFile: null },
|
|
59
|
+
word2: { script: "おばあさん", romanization: "obaasan", definition: "grandmother; elderly woman", audioFile: null }
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
pairId: "ja_l2_002",
|
|
63
|
+
level: 2,
|
|
64
|
+
tags: ["level_2", "length"],
|
|
65
|
+
contrastFeature: "vowel",
|
|
66
|
+
contrastDescription: "Short /u/ vs Long /uu/",
|
|
67
|
+
word1: { script: "ゆき", romanization: "yuki", definition: "snow", audioFile: null },
|
|
68
|
+
word2: { script: "ゆうき", romanization: "yuuki", definition: "courage", audioFile: null }
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
pairId: "ja_l2_003",
|
|
72
|
+
level: 2,
|
|
73
|
+
tags: ["level_2", "length"],
|
|
74
|
+
contrastFeature: "vowel",
|
|
75
|
+
contrastDescription: "Short /e/ vs Long /ee/",
|
|
76
|
+
word1: { script: "せんせい", romanization: "sensei", definition: "teacher", audioFile: null },
|
|
77
|
+
word2: { script: "せんせえ", romanization: "sensee", definition: "(casual form of sensei)", audioFile: null }
|
|
78
|
+
},
|
|
79
|
+
// Level 3: Voicing
|
|
80
|
+
{
|
|
81
|
+
pairId: "ja_l3_001",
|
|
82
|
+
level: 3,
|
|
83
|
+
tags: ["level_3", "voicing"],
|
|
84
|
+
contrastFeature: "consonant",
|
|
85
|
+
contrastDescription: "/k/ vs /g/ - voiceless vs voiced",
|
|
86
|
+
pronunciationTipId: "consonant_k_g",
|
|
87
|
+
word1: { script: "かみ", romanization: "kami", definition: "paper; god; hair", audioFile: null },
|
|
88
|
+
word2: { script: "がみ", romanization: "gami", definition: "harsh scolding", audioFile: null }
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
pairId: "ja_l3_002",
|
|
92
|
+
level: 3,
|
|
93
|
+
tags: ["level_3", "voicing"],
|
|
94
|
+
contrastFeature: "consonant",
|
|
95
|
+
contrastDescription: "/t/ vs /d/",
|
|
96
|
+
word1: { script: "たいこ", romanization: "taiko", definition: "drum", audioFile: null },
|
|
97
|
+
word2: { script: "だいこ", romanization: "daiko", definition: "substitute", audioFile: null }
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
pairId: "ja_l3_003",
|
|
101
|
+
level: 3,
|
|
102
|
+
tags: ["level_3", "voicing"],
|
|
103
|
+
contrastFeature: "consonant",
|
|
104
|
+
contrastDescription: "/h/ vs /b/ vs /p/",
|
|
105
|
+
word1: { script: "はな", romanization: "hana", definition: "flower; nose", audioFile: null },
|
|
106
|
+
word2: { script: "ばな", romanization: "bana", definition: "(in compounds)", audioFile: null }
|
|
107
|
+
},
|
|
108
|
+
// Level 4: Special sounds
|
|
109
|
+
{
|
|
110
|
+
pairId: "ja_l4_001",
|
|
111
|
+
level: 4,
|
|
112
|
+
tags: ["level_4", "special"],
|
|
113
|
+
contrastFeature: "consonant",
|
|
114
|
+
contrastDescription: "Without vs with ん /n/",
|
|
115
|
+
word1: { script: "かさい", romanization: "kasai", definition: "fire", audioFile: null },
|
|
116
|
+
word2: { script: "かんさい", romanization: "kansai", definition: "Kansai region", audioFile: null }
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
pairId: "ja_l4_002",
|
|
120
|
+
level: 4,
|
|
121
|
+
tags: ["level_4", "special"],
|
|
122
|
+
contrastFeature: "consonant",
|
|
123
|
+
contrastDescription: "Without vs with っ (geminate)",
|
|
124
|
+
word1: { script: "いて", romanization: "ite", definition: "being (te-form)", audioFile: null },
|
|
125
|
+
word2: { script: "いって", romanization: "itte", definition: "going (te-form)", audioFile: null }
|
|
126
|
+
},
|
|
127
|
+
// Level 5: Expert
|
|
128
|
+
{
|
|
129
|
+
pairId: "ja_l5_001",
|
|
130
|
+
level: 5,
|
|
131
|
+
tags: ["level_5", "pitch"],
|
|
132
|
+
contrastFeature: "pitch_accent",
|
|
133
|
+
contrastDescription: "Pitch accent: はし (bridge) vs はし (chopsticks)",
|
|
134
|
+
word1: { script: "はし", romanization: "hashi", definition: "bridge (LH)", audioFile: null },
|
|
135
|
+
word2: { script: "はし", romanization: "hashi", definition: "chopsticks (HL)", audioFile: null },
|
|
136
|
+
notes: "Same spelling, different pitch accent patterns"
|
|
137
|
+
}
|
|
138
|
+
],
|
|
139
|
+
pronunciationTips: {
|
|
140
|
+
vowel_a_o: "/a/ is open, /o/ is rounded. Japanese vowels are pure, not diphthongs.",
|
|
141
|
+
vowel_length: "Long vowels are held exactly twice as long as short vowels.",
|
|
142
|
+
consonant_k_g: "/k/ is voiceless (no throat vibration). /g/ is voiced (throat vibrates)."
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
export {
|
|
146
|
+
i as default,
|
|
147
|
+
i as minimalPairsData
|
|
148
|
+
};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { minimalPairsData as default } from './data';
|
|
2
|
+
export { minimalPairsData } from './data';
|
|
3
|
+
export type { MinimalPairsLanguageData, MinimalPairsLevelInfo, MinimalPairsMinimalPair, MinimalPairsPronunciationTipsMap, MinimalPairsRubySegment, MinimalPairsWordInfo, } from '../../content-shared/src';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAG1C,YAAY,EACV,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,gCAAgC,EAChC,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,kCAAkC,CAAC"}
|
package/dist/index.js
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@polyglot-bundles/ja-minimal-pairs",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"types": "./dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.js"
|
|
11
|
+
},
|
|
12
|
+
"./data": {
|
|
13
|
+
"types": "./dist/data.d.ts",
|
|
14
|
+
"import": "./dist/data.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist"
|
|
19
|
+
],
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"@polyglot-bundles/content-shared": "0.2.0",
|
|
22
|
+
"@polyglot-bundles/ja-lang": "0.2.0"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"vite": "^5.4.0",
|
|
26
|
+
"vite-plugin-dts": "^4.0.0"
|
|
27
|
+
},
|
|
28
|
+
"publishConfig": {
|
|
29
|
+
"access": "public"
|
|
30
|
+
},
|
|
31
|
+
"repository": {
|
|
32
|
+
"type": "git",
|
|
33
|
+
"url": "https://github.com/fustilio/polyglot-bundles",
|
|
34
|
+
"directory": "packages/ja/minimal-pairs"
|
|
35
|
+
},
|
|
36
|
+
"scripts": {
|
|
37
|
+
"build": "vite build",
|
|
38
|
+
"clean": "rm -rf dist"
|
|
39
|
+
}
|
|
40
|
+
}
|