@syllst/th 0.2.2 → 0.3.8

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 (208) hide show
  1. package/LICENSE +21 -0
  2. package/dist/index.d.ts +10 -15
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +65 -62
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.umd.cjs +71 -0
  7. package/dist/index.umd.cjs.map +1 -0
  8. package/dist/syllabi/alphabet/index.d.ts +2 -5
  9. package/dist/syllabi/alphabet/index.d.ts.map +1 -0
  10. package/dist/syllabi/dialogue/index.d.ts +2 -5
  11. package/dist/syllabi/dialogue/index.d.ts.map +1 -0
  12. package/dist/syllabi/essentials/index.d.ts +2 -5
  13. package/dist/syllabi/essentials/index.d.ts.map +1 -0
  14. package/dist/syllabi/food/index.d.ts +2 -5
  15. package/dist/syllabi/food/index.d.ts.map +1 -0
  16. package/dist/syllabi/grammar/index.d.ts +2 -5
  17. package/dist/syllabi/grammar/index.d.ts.map +1 -0
  18. package/dist/syllabi/numbers/index.d.ts +2 -5
  19. package/dist/syllabi/numbers/index.d.ts.map +1 -0
  20. package/dist/syllabi/reading/index.d.ts +2 -5
  21. package/dist/syllabi/reading/index.d.ts.map +1 -0
  22. package/dist/syllabi/travel/index.d.ts +2 -5
  23. package/dist/syllabi/travel/index.d.ts.map +1 -0
  24. package/dist/syllabi/vowels-tones/index.d.ts +2 -5
  25. package/dist/syllabi/vowels-tones/index.d.ts.map +1 -0
  26. package/package.json +27 -15
  27. package/dist/index-BM-LWlCm.js +0 -52
  28. package/dist/index-BM-LWlCm.js.map +0 -1
  29. package/dist/index-Bjym0crS.js +0 -48
  30. package/dist/index-Bjym0crS.js.map +0 -1
  31. package/dist/index-BuKXw7-Z.js +0 -46
  32. package/dist/index-BuKXw7-Z.js.map +0 -1
  33. package/dist/index-ByS0o5dz.js +0 -52
  34. package/dist/index-ByS0o5dz.js.map +0 -1
  35. package/dist/index-C9VnG7dT.js +0 -52
  36. package/dist/index-C9VnG7dT.js.map +0 -1
  37. package/dist/index-CPQkjFjV.js +0 -50
  38. package/dist/index-CPQkjFjV.js.map +0 -1
  39. package/dist/index-CkHd3Fal.js +0 -56
  40. package/dist/index-CkHd3Fal.js.map +0 -1
  41. package/dist/index-DBkPBXe2.js +0 -52
  42. package/dist/index-DBkPBXe2.js.map +0 -1
  43. package/dist/index-DdRhLqkM.js +0 -82
  44. package/dist/index-DdRhLqkM.js.map +0 -1
  45. package/dist/lesson-01-B0wtSaSl.js +0 -118
  46. package/dist/lesson-01-B0wtSaSl.js.map +0 -1
  47. package/dist/lesson-01-C9vbUlA4.js +0 -138
  48. package/dist/lesson-01-C9vbUlA4.js.map +0 -1
  49. package/dist/lesson-01-CPmBFTe0.js +0 -132
  50. package/dist/lesson-01-CPmBFTe0.js.map +0 -1
  51. package/dist/lesson-01-Cc4Ws8eR.js +0 -158
  52. package/dist/lesson-01-Cc4Ws8eR.js.map +0 -1
  53. package/dist/lesson-01-Cm5k-m-9.js +0 -136
  54. package/dist/lesson-01-Cm5k-m-9.js.map +0 -1
  55. package/dist/lesson-01-DELblCNj.js +0 -97
  56. package/dist/lesson-01-DELblCNj.js.map +0 -1
  57. package/dist/lesson-01-Djl_72e7.js +0 -153
  58. package/dist/lesson-01-Djl_72e7.js.map +0 -1
  59. package/dist/lesson-01-LEHTeGQQ.js +0 -155
  60. package/dist/lesson-01-LEHTeGQQ.js.map +0 -1
  61. package/dist/lesson-01-ih_-OO_O.js +0 -111
  62. package/dist/lesson-01-ih_-OO_O.js.map +0 -1
  63. package/dist/lesson-02-B2aZrKUQ.js +0 -120
  64. package/dist/lesson-02-B2aZrKUQ.js.map +0 -1
  65. package/dist/lesson-02-BI1Vnwiz.js +0 -169
  66. package/dist/lesson-02-BI1Vnwiz.js.map +0 -1
  67. package/dist/lesson-02-BXbwEMaL.js +0 -180
  68. package/dist/lesson-02-BXbwEMaL.js.map +0 -1
  69. package/dist/lesson-02-CbJJ5Amt.js +0 -201
  70. package/dist/lesson-02-CbJJ5Amt.js.map +0 -1
  71. package/dist/lesson-02-DGrALAgG.js +0 -203
  72. package/dist/lesson-02-DGrALAgG.js.map +0 -1
  73. package/dist/lesson-02-DcMDDBDL.js +0 -116
  74. package/dist/lesson-02-DcMDDBDL.js.map +0 -1
  75. package/dist/lesson-02-Dk59HZWp.js +0 -222
  76. package/dist/lesson-02-Dk59HZWp.js.map +0 -1
  77. package/dist/lesson-02-L8oNhBej.js +0 -145
  78. package/dist/lesson-02-L8oNhBej.js.map +0 -1
  79. package/dist/lesson-02-VDOme3ES.js +0 -204
  80. package/dist/lesson-02-VDOme3ES.js.map +0 -1
  81. package/dist/lesson-03-9WioSe19.js +0 -196
  82. package/dist/lesson-03-9WioSe19.js.map +0 -1
  83. package/dist/lesson-03-BZutWzMD.js +0 -124
  84. package/dist/lesson-03-BZutWzMD.js.map +0 -1
  85. package/dist/lesson-03-Bj5hWZ9t.js +0 -152
  86. package/dist/lesson-03-Bj5hWZ9t.js.map +0 -1
  87. package/dist/lesson-03-CSIF5xRS.js +0 -181
  88. package/dist/lesson-03-CSIF5xRS.js.map +0 -1
  89. package/dist/lesson-03-CSKig363.js +0 -225
  90. package/dist/lesson-03-CSKig363.js.map +0 -1
  91. package/dist/lesson-03-DPJOG2M_.js +0 -138
  92. package/dist/lesson-03-DPJOG2M_.js.map +0 -1
  93. package/dist/lesson-03-DkjCuJ26.js +0 -237
  94. package/dist/lesson-03-DkjCuJ26.js.map +0 -1
  95. package/dist/lesson-03-DucbRMOQ.js +0 -171
  96. package/dist/lesson-03-DucbRMOQ.js.map +0 -1
  97. package/dist/lesson-03-MIne1PbH.js +0 -185
  98. package/dist/lesson-03-MIne1PbH.js.map +0 -1
  99. package/dist/lesson-04-0Pj_x1DU.js +0 -233
  100. package/dist/lesson-04-0Pj_x1DU.js.map +0 -1
  101. package/dist/lesson-04-B9h0p9kE.js +0 -190
  102. package/dist/lesson-04-B9h0p9kE.js.map +0 -1
  103. package/dist/lesson-04-BLuPI1-X.js +0 -216
  104. package/dist/lesson-04-BLuPI1-X.js.map +0 -1
  105. package/dist/lesson-04-CmDvofL4.js +0 -230
  106. package/dist/lesson-04-CmDvofL4.js.map +0 -1
  107. package/dist/lesson-04-DGKHK4LW.js +0 -178
  108. package/dist/lesson-04-DGKHK4LW.js.map +0 -1
  109. package/dist/lesson-04-DUcHZzsk.js +0 -218
  110. package/dist/lesson-04-DUcHZzsk.js.map +0 -1
  111. package/dist/lesson-04-DnVIXXk-.js +0 -141
  112. package/dist/lesson-04-DnVIXXk-.js.map +0 -1
  113. package/dist/lesson-04-FZnIE7tu.js +0 -187
  114. package/dist/lesson-04-FZnIE7tu.js.map +0 -1
  115. package/dist/lesson-04-ToX3nRz1.js +0 -172
  116. package/dist/lesson-04-ToX3nRz1.js.map +0 -1
  117. package/dist/lesson-05-2aTCGXMh.js +0 -181
  118. package/dist/lesson-05-2aTCGXMh.js.map +0 -1
  119. package/dist/lesson-05-BvitRdE8.js +0 -206
  120. package/dist/lesson-05-BvitRdE8.js.map +0 -1
  121. package/dist/lesson-05-CgXGkcjS.js +0 -143
  122. package/dist/lesson-05-CgXGkcjS.js.map +0 -1
  123. package/dist/lesson-05-ClfrUrvX.js +0 -244
  124. package/dist/lesson-05-ClfrUrvX.js.map +0 -1
  125. package/dist/lesson-05-D2zf9n7k.js +0 -201
  126. package/dist/lesson-05-D2zf9n7k.js.map +0 -1
  127. package/dist/lesson-05-DWquBfdl.js +0 -220
  128. package/dist/lesson-05-DWquBfdl.js.map +0 -1
  129. package/dist/lesson-05-DpIkwhJ8.js +0 -244
  130. package/dist/lesson-05-DpIkwhJ8.js.map +0 -1
  131. package/dist/lesson-05-UYz39ORV.js +0 -189
  132. package/dist/lesson-05-UYz39ORV.js.map +0 -1
  133. package/dist/lesson-05-t6XuANiZ.js +0 -180
  134. package/dist/lesson-05-t6XuANiZ.js.map +0 -1
  135. package/dist/lesson-06-B2y08mKv.js +0 -238
  136. package/dist/lesson-06-B2y08mKv.js.map +0 -1
  137. package/dist/lesson-06-CHqaVQix.js +0 -202
  138. package/dist/lesson-06-CHqaVQix.js.map +0 -1
  139. package/dist/lesson-06-CaCZBX1V.js +0 -273
  140. package/dist/lesson-06-CaCZBX1V.js.map +0 -1
  141. package/dist/lesson-06-ClplsJBT.js +0 -204
  142. package/dist/lesson-06-ClplsJBT.js.map +0 -1
  143. package/dist/lesson-06-CzGnNKo5.js +0 -141
  144. package/dist/lesson-06-CzGnNKo5.js.map +0 -1
  145. package/dist/lesson-06-Dg_bQLNC.js +0 -172
  146. package/dist/lesson-06-Dg_bQLNC.js.map +0 -1
  147. package/dist/lesson-06-OWFMgO0a.js +0 -231
  148. package/dist/lesson-06-OWFMgO0a.js.map +0 -1
  149. package/dist/lesson-06-Q2aRAzws.js +0 -190
  150. package/dist/lesson-06-Q2aRAzws.js.map +0 -1
  151. package/dist/lesson-07-BLDUA_Ff.js +0 -194
  152. package/dist/lesson-07-BLDUA_Ff.js.map +0 -1
  153. package/dist/lesson-07-BpyF1Ssq.js +0 -236
  154. package/dist/lesson-07-BpyF1Ssq.js.map +0 -1
  155. package/dist/lesson-07-C4GrfDTW.js +0 -234
  156. package/dist/lesson-07-C4GrfDTW.js.map +0 -1
  157. package/dist/lesson-07-CVCUt1Jn.js +0 -206
  158. package/dist/lesson-07-CVCUt1Jn.js.map +0 -1
  159. package/dist/lesson-07-DQFXCZsZ.js +0 -197
  160. package/dist/lesson-07-DQFXCZsZ.js.map +0 -1
  161. package/dist/lesson-07-Dcry2Yjo.js +0 -248
  162. package/dist/lesson-07-Dcry2Yjo.js.map +0 -1
  163. package/dist/lesson-07-JS_cqdNr.js +0 -142
  164. package/dist/lesson-07-JS_cqdNr.js.map +0 -1
  165. package/dist/lesson-08-18gscaS0.js +0 -227
  166. package/dist/lesson-08-18gscaS0.js.map +0 -1
  167. package/dist/lesson-08-2kBUq_B2.js +0 -220
  168. package/dist/lesson-08-2kBUq_B2.js.map +0 -1
  169. package/dist/lesson-08-BP5lpiGe.js +0 -287
  170. package/dist/lesson-08-BP5lpiGe.js.map +0 -1
  171. package/dist/lesson-08-BXm9GgdN.js +0 -146
  172. package/dist/lesson-08-BXm9GgdN.js.map +0 -1
  173. package/dist/lesson-08-Bru0PdEK.js +0 -277
  174. package/dist/lesson-08-Bru0PdEK.js.map +0 -1
  175. package/dist/lesson-08-Dd-8cbGW.js +0 -205
  176. package/dist/lesson-08-Dd-8cbGW.js.map +0 -1
  177. package/dist/lesson-09-B1qWE3Yl.js +0 -221
  178. package/dist/lesson-09-B1qWE3Yl.js.map +0 -1
  179. package/dist/lesson-09-B5Vb70xj.js +0 -143
  180. package/dist/lesson-09-B5Vb70xj.js.map +0 -1
  181. package/dist/lesson-10-00qNLc7A.js +0 -233
  182. package/dist/lesson-10-00qNLc7A.js.map +0 -1
  183. package/dist/lesson-10-Dw-Jtm3D.js +0 -156
  184. package/dist/lesson-10-Dw-Jtm3D.js.map +0 -1
  185. package/dist/lesson-11-BM3R_S7I.js +0 -260
  186. package/dist/lesson-11-BM3R_S7I.js.map +0 -1
  187. package/dist/lesson-12-D1Wx7CyK.js +0 -277
  188. package/dist/lesson-12-D1Wx7CyK.js.map +0 -1
  189. package/dist/skills-hcn-pGD0.js +0 -244
  190. package/dist/skills-hcn-pGD0.js.map +0 -1
  191. package/dist/syllabi/alphabet/index.js +0 -9
  192. package/dist/syllabi/alphabet/index.js.map +0 -1
  193. package/dist/syllabi/dialogue/index.js +0 -10
  194. package/dist/syllabi/dialogue/index.js.map +0 -1
  195. package/dist/syllabi/essentials/index.js +0 -10
  196. package/dist/syllabi/essentials/index.js.map +0 -1
  197. package/dist/syllabi/food/index.js +0 -10
  198. package/dist/syllabi/food/index.js.map +0 -1
  199. package/dist/syllabi/grammar/index.js +0 -10
  200. package/dist/syllabi/grammar/index.js.map +0 -1
  201. package/dist/syllabi/numbers/index.js +0 -10
  202. package/dist/syllabi/numbers/index.js.map +0 -1
  203. package/dist/syllabi/reading/index.js +0 -10
  204. package/dist/syllabi/reading/index.js.map +0 -1
  205. package/dist/syllabi/travel/index.js +0 -10
  206. package/dist/syllabi/travel/index.js.map +0 -1
  207. package/dist/syllabi/vowels-tones/index.js +0 -10
  208. package/dist/syllabi/vowels-tones/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"lesson-04-BLuPI1-X.js","sources":["../src/syllabi/alphabet/lessons/lesson-04.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-script-lesson-04\\ntitle: \\\"บทที่ 4 — พยัญชนะสูง II\\\"\\ndescription: \\\"High-Class Consonants Part 2: ถ ฉ ผ ฝ — Completing the aspirated set\\\"\\norder: 4\\nparentId: thai-script-alphabet\\ndifficulty: beginner\\ncefrLevel: A1\\ncategories:\\n - consonants\\n - high-class\\n - aspirated\\n - basic-characters\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-script-lesson-03\\n learningObjectives:\\n - id: obj-high-consonants-2\\n description: \\\"Learn 4 more high-class consonants\\\"\\n skill: character-recognition\\n references: [bag, cymbals, bee, lid]\\n - id: obj-th-ph-sounds\\n description: \\\"Understand TH and PH/F sound pairs\\\"\\n skill: character-sound-mapping\\n - id: obj-complete-high\\n description: \\\"Complete your high-class consonant inventory\\\"\\n skill: character-recognition\\n - id: obj-aspirated-distinction\\n description: \\\"Practice distinguishing aspirated sounds\\\"\\n skill: character-sound-mapping\\n---\\n\\n# บทที่ 4 (Lesson 4) — High-Class Consonants II\\n\\n## Introduction\\n\\nIn this lesson, you'll learn 4 more high-class consonants, focusing on the **TH** sounds (ถ) and **PH/F** sounds (ฉ ผ ฝ). These complete the most common high-class consonants.\\n\\n## The TH Sound Family\\n\\nThai has many consonants romanized as \\\"TH\\\" — but they're NOT like English \\\"th\\\" (as in \\\"think\\\"). Thai TH is simply an **aspirated T** — a T with a puff of air. The tongue position is the same as T, not the English TH.\\n\\n| Consonant | Class | Sound | Notes |\\n|-----------|-------|-------|-------|\\n| ต | Middle | t (unaspirated) | No air puff |\\n| ถ | High | th (aspirated) | Strong air puff |\\n| ท | Low | th (aspirated) | Same as ถ, different class |\\n| ธ | Low | th (aspirated) | Same sound |\\n\\nThe TH consonants all sound identical! The class determines tone, not sound quality.\\n\\n## Characters\\n\\n:::character-set{id=\\\"thai-high-consonants-2\\\" title=\\\"High-Class Consonants II\\\"}\\n\\n::character{id=\\\"bag\\\" canonicalRef=\\\"bag\\\" data:class=\\\"high\\\" char=\\\"ถ\\\" name=\\\"ถ ถุง (thɔ̌ɔ thǔng)\\\" nativeName=\\\"ถ ถุง\\\" transliteration=\\\"th/t\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"cymbals\\\" canonicalRef=\\\"cymbals\\\" data:class=\\\"high\\\" char=\\\"ฉ\\\" name=\\\"ฉ ฉิ่ง (chɔ̌ɔ chìng)\\\" nativeName=\\\"ฉ ฉิ่ง\\\" transliteration=\\\"ch/-\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"bee\\\" canonicalRef=\\\"bee\\\" data:class=\\\"high\\\" char=\\\"ผ\\\" name=\\\"ผ ผึ้ง (phɔ̌ɔ phʉ̂ng)\\\" nativeName=\\\"ผ ผึ้ง\\\" transliteration=\\\"ph/-\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"lid\\\" canonicalRef=\\\"lid\\\" data:class=\\\"high\\\" char=\\\"ฝ\\\" name=\\\"ฝ ฝา (fɔ̌ɔ fǎa)\\\" nativeName=\\\"ฝ ฝา\\\" transliteration=\\\"f/-\\\" charType=\\\"consonant\\\"}\\n\\n:::\\n\\n## The CH Sound Pair\\n\\nThai has two CH consonants:\\n\\n| Consonant | Class | Example |\\n|-----------|-------|---------|\\n| ฉ (cymbals) | High | ฉัน (chǎn) \\\"I\\\" — rising tone |\\n| ช (elephant) | Low | ช้าง (cháang) \\\"elephant\\\" |\\n\\nBoth sound like English \\\"ch\\\" in \\\"chair\\\". The difference is purely tonal:\\n- ฉา = chǎa (rising)\\n- ชา = chaa (mid) or cháa (with tone mark)\\n\\n## The PH/F Family\\n\\nThai distinguishes between aspirated P (PH) and F:\\n\\n**PH sounds** (aspirated P, lips together then release):\\n| Consonant | Class |\\n|-----------|-------|\\n| ผ (bee) | High |\\n| พ (tray) | Low |\\n| ภ (ship) | Low |\\n\\n**F sounds** (continuous air through lips):\\n| Consonant | Class |\\n|-----------|-------|\\n| ฝ (lid) | High |\\n| ฟ (tooth) | Low |\\n\\nTo English speakers, PH and F sound similar. In Thai:\\n- **PH** = explosive release (like English \\\"p\\\" + breath)\\n- **F** = continuous friction (like English \\\"f\\\")\\n\\n## Why So Many Duplicates?\\n\\nYou might wonder: why have ถ ท ธ all making the same TH sound?\\n\\nHistorical reasons! These consonants came from different Sanskrit/Pali sounds:\\n- ถ, ท = different Sanskrit dental sounds\\n- ธ = Sanskrit voiced aspirate\\n\\nOver centuries, they merged in pronunciation but remained distinct in spelling — like English \\\"knight\\\" keeping its silent K.\\n\\n## Consonants Without Final Forms\\n\\nNotice that ฉ, ผ, and ฝ have no final sound listed. These consonants:\\n1. Rarely or never appear in final position in native Thai words\\n2. When they do (in loanwords), they're pronounced as the closest final sound\\n\\nThis is common for high-class consonants — many are initial-only.\\n\\n## High-Class Summary\\n\\nYou've now learned 7 of the 11 high-class consonants:\\n\\n| Learned | Sound | Mnemonic |\\n|---------|-------|----------|\\n| ข | kh | Egg |\\n| ส | s | Tiger |\\n| ห | h | Box |\\n| ถ | th | Bag |\\n| ฉ | ch | Cymbals |\\n| ผ | ph | Bee |\\n| ฝ | f | Lid |\\n\\nThe remaining 4 (ฐ ศ ษ ฑ) are rare and will be covered in advanced lessons.\\n\\n## Key Points\\n\\n1. **Thai TH ≠ English TH**: It's aspirated T, not the \\\"think\\\" sound\\n2. **PH ≠ F**: PH is explosive, F is continuous friction\\n3. **Same sound, different class**: Many TH and PH consonants sound identical\\n4. **Initial-only consonants**: ฉ, ผ, ฝ almost never end syllables\\n5. **Historical spelling**: Duplicate sounds exist due to Sanskrit origins\\n\\n## Shape Recognition\\n\\n- **ถ** looks like ก/ข family (K-sounds) with modifications\\n- **ฉ** has a hook shape\\n- **ผ** and **ฝ** look similar — ฝ has the extra curve on top\\n- Note how related sounds often have related shapes\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"high-2-matching\\\" type=\\\"matching\\\" title=\\\"Match Consonants to Mnemonics\\\" skill=\\\"character-name-recall\\\" tests=\\\"bag,cymbals,bee,lid\\\" objectiveId=\\\"obj-high-consonants-2\\\"}\\n\\n**Question:** Match each high-class consonant to its mnemonic word\\n\\n- ถ\\n- ฉ\\n- ผ\\n- ฝ\\n\\n**Answer:**\\n\\n- bag (ถุง)\\n- cymbals (ฉิ่ง)\\n- bee (ผึ้ง)\\n- lid (ฝา)\\n\\n**Explanation:** Each Thai consonant has a traditional mnemonic word that helps remember both the character and its sound.\\n\\n:::\\n\\n:::exercise{id=\\\"high-2-sound-recognition\\\" type=\\\"fill-in-blank\\\" title=\\\"Sound Recognition\\\" skill=\\\"character-sound-mapping\\\" tests=\\\"bag,cymbals,bee,lid\\\" objectiveId=\\\"obj-th-ph-sounds\\\"}\\n\\n**Question:** Which consonant makes each sound?\\n\\n- Aspirated TH sound (like \\\"top\\\" with more breath)\\n- CH sound (like \\\"chair\\\")\\n- Aspirated PH sound (explosive P with breath)\\n- F sound (continuous friction)\\n\\n**Answer:**\\n\\n- ถ (thɔ̌ɔ thǔng)\\n- ฉ (chɔ̌ɔ chìng)\\n- ผ (phɔ̌ɔ phʉ̂ng)\\n- ฝ (fɔ̌ɔ fǎa)\\n\\n**Explanation:** High-class consonants are aspirated versions of sounds. PH is explosive (lips together then release), while F is continuous (air through lips).\\n\\n:::\\n\\n:::exercise{id=\\\"high-2-class-comparison\\\" type=\\\"multiple-choice\\\" title=\\\"Class Comparison\\\" skill=\\\"character-class-identification\\\" objectiveId=\\\"obj-aspirated-distinction\\\"}\\n\\n**Question:** Which pair of consonants makes the same sound but belongs to different classes?\\n\\n**Options:**\\n- ก and ข\\n- ถ and ท\\n- ผ and ฝ\\n- ฉ and ช\\n\\n**Answer:** 4\\n\\n**Explanation:** ฉ (high-class) and ช (low-class) both make the CH sound but belong to different classes, affecting tone. Similarly, ถ (high) and ท (low) both make TH sound.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 5, you'll begin learning **low-class consonants** — the largest group, with 24 members! You'll start with the most common ones: น ง ว.\\n\""],"names":["lesson04"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -1,230 +0,0 @@
1
- const n = `---
2
- type: lesson
3
- id: thai-food-lesson-04
4
- title: "บทที่ 4 — วิธีทำอาหาร"
5
- description: "Cooking Methods: Fried, grilled, steamed, and more"
6
- order: 4
7
- parentId: thai-food
8
- difficulty: beginner
9
- cefrLevel: A2
10
- categories:
11
- - food
12
- - cooking
13
- - vocabulary
14
- metadata:
15
- estimatedTime: 30
16
- prerequisites:
17
- - thai-food-lesson-03
18
- learningObjectives:
19
- - id: obj-identify-cooking-methods
20
- description: "Identify cooking methods in dish names"
21
- skill: word-recognition
22
- - id: obj-understand-menu-descriptions
23
- description: "Understand menu descriptions"
24
- skill: reading-comprehension
25
- - id: obj-request-preparations
26
- description: "Request specific preparations"
27
- skill: word-production
28
- - id: obj-recognize-cooking-techniques
29
- description: "Recognize common Thai cooking techniques"
30
- skill: pattern-recognition
31
- ---
32
-
33
- # บทที่ 4 (Lesson 4) — Cooking Methods
34
-
35
- ## Introduction
36
-
37
- Thai dish names often include the cooking method. Learning these words helps you decode menus and understand what you're ordering. Each method creates different flavors and textures.
38
-
39
- ## Primary Cooking Methods
40
-
41
- :::vocabulary-set{id="thai-cooking" title="Cooking Methods"}
42
-
43
- ::vocab-item{id="pad" word="ผัด" pronunciation="phàt" meaning="stir-fried"}
44
-
45
- ::vocab-item{id="tod" word="ทอด" pronunciation="thɔ̂ɔt" meaning="deep-fried"}
46
-
47
- ::vocab-item{id="yang" word="ย่าง" pronunciation="yâang" meaning="grilled"}
48
-
49
- ::vocab-item{id="tom" word="ต้ม" pronunciation="dtôm" meaning="boiled/soup"}
50
-
51
- ::vocab-item{id="nueng" word="นึ่ง" pronunciation="nʉ̂ng" meaning="steamed"}
52
-
53
- ::vocab-item{id="op" word="อบ" pronunciation="òp" meaning="baked/roasted"}
54
-
55
- ::vocab-item{id="ping" word="ปิ้ง" pronunciation="bpîng" meaning="grilled (direct heat)"}
56
-
57
- :::
58
-
59
- ### Method + Ingredient Pattern
60
-
61
- | Dish Name | Method + Ingredient |
62
- |-----------|---------------------|
63
- | ผัดไทย | stir-fried + Thai style |
64
- | ไก่ทอด | chicken + deep-fried |
65
- | หมูย่าง | pork + grilled |
66
- | ต้มยำ | boiled + mixed |
67
- | ปลานึ่ง | fish + steamed |
68
-
69
- ## Stir-Fry Dishes (ผัด)
70
-
71
- :::vocabulary-set{id="thai-stirfry" title="Stir-Fry Dishes"}
72
-
73
- ::vocab-item{id="pad-krapao" word="ผัดกะเพรา" pronunciation="phàt grà-phrao" meaning="basil stir-fry"}
74
-
75
- ::vocab-item{id="pad-see-ew" word="ผัดซีอิ๊ว" pronunciation="phàt sii-íw" meaning="soy sauce stir-fry"}
76
-
77
- ::vocab-item{id="pad-prik-gaeng" word="ผัดพริกแกง" pronunciation="phàt phrík gaeng" meaning="curry paste stir-fry"}
78
-
79
- ::vocab-item{id="pad-pak-ruam" word="ผัดผักรวม" pronunciation="phàt phàk ruam" meaning="mixed vegetable stir-fry"}
80
-
81
- :::
82
-
83
- ## Soup & Boiled Dishes (ต้ม)
84
-
85
- :::vocabulary-set{id="thai-soup" title="Soup Dishes"}
86
-
87
- ::vocab-item{id="tom-yam" word="ต้มยำ" pronunciation="dtôm yam" meaning="spicy-sour soup"}
88
-
89
- ::vocab-item{id="tom-kha" word="ต้มข่า" pronunciation="dtôm khàa" meaning="galangal soup"}
90
-
91
- ::vocab-item{id="gaeng-jued" word="แกงจืด" pronunciation="gaeng jʉ̀ʉt" meaning="clear soup"}
92
-
93
- ::vocab-item{id="tom-sap" word="ต้มแซ่บ" pronunciation="dtôm sâep" meaning="Isaan spicy soup"}
94
-
95
- :::
96
-
97
- ## Grilled & Fried Items
98
-
99
- | Thai | Method | Example |
100
- |------|--------|---------|
101
- | ไก่ย่าง | grilled | Grilled chicken |
102
- | หมูปิ้ง | skewered/grilled | Pork skewers |
103
- | ปลาทอด | deep-fried | Fried fish |
104
- | กุ้งทอด | deep-fried | Fried shrimp |
105
- | ปอเปี๊ยะทอด | deep-fried | Fried spring rolls |
106
-
107
- ## Curry Types (แกง)
108
-
109
- :::vocabulary-set{id="thai-curry" title="Curry Types"}
110
-
111
- ::vocab-item{id="gaeng" word="แกง" pronunciation="gaeng" meaning="curry"}
112
-
113
- ::vocab-item{id="gaeng-keow-wan" word="แกงเขียวหวาน" pronunciation="gaeng khǐao wǎan" meaning="green curry"}
114
-
115
- ::vocab-item{id="gaeng-ped" word="แกงเผ็ด" pronunciation="gaeng phèt" meaning="red curry"}
116
-
117
- ::vocab-item{id="gaeng-massaman" word="แกงมัสมั่น" pronunciation="gaeng mát-sà-màn" meaning="massaman curry"}
118
-
119
- ::vocab-item{id="panang" word="พะแนง" pronunciation="phá-naeng" meaning="panang curry"}
120
-
121
- :::
122
-
123
- ## Raw & Fresh Preparations
124
-
125
- | Thai | Meaning | Example Dish |
126
- |------|---------|--------------|
127
- | สด | fresh/raw | กุ้งสด (fresh shrimp) |
128
- | ยำ | spicy salad | ยำวุ้นเส้น |
129
- | ลาบ | minced salad | ลาบหมู |
130
- | น้ำตก | waterfall (grilled salad) | น้ำตกหมู |
131
-
132
- ## Special Preparations
133
-
134
- | Thai | Meaning |
135
- |------|---------|
136
- | ราดหน้า | with gravy on top |
137
- | ใส่น้ำมันหอย | with oyster sauce |
138
- | ผัดไฟแดง | high-heat stir-fry |
139
- | หมักแล้ว | marinated |
140
-
141
- ## Practice Conversation
142
-
143
- **Asking about preparation:**
144
- - คุณ: อันนี้ทำยังไงครับ (How is this made?)
145
- - พนักงาน: ผัดกับกระเทียมค่ะ (Stir-fried with garlic)
146
-
147
- **Requesting specific cooking:**
148
- - คุณ: ขอปลานึ่งมะนาวครับ (Steamed fish with lime, please)
149
- - พนักงาน: ปลาอะไรดีคะ (What kind of fish?)
150
- - คุณ: ปลากะพงครับ (Sea bass, please)
151
-
152
- ## Key Points
153
-
154
- 1. **ผัด = stir-fried**: Most common cooking method
155
- 2. **ทอด = deep-fried**: Creates crispy texture
156
- 3. **ต้ม = soup/boiled**: Includes all soup dishes
157
- 4. **แกง = curry**: Rich, coconut-based dishes
158
-
159
- ## Cooking Method Comparison Table
160
-
161
- | Method | Thai | Texture | Common Dishes |
162
- |--------|------|---------|---------------|
163
- | Stir-fry | ผัด | Quick-cooked, saucy | ผัดไทย, ผัดกะเพรา |
164
- | Deep-fry | ทอด | Crispy, golden | ไก่ทอด, ปลาทอด |
165
- | Grill | ย่าง/ปิ้ง | Smoky, charred | หมูย่าง, หมูปิ้ง |
166
- | Boil/Soup | ต้ม | Liquid, brothy | ต้มยำ, ต้มข่า |
167
- | Steam | นึ่ง | Tender, moist | ปลานึ่ง, ไข่ตุ๋น |
168
- | Curry | แกง | Rich, coconut-based | แกงเขียวหวาน, แกงเผ็ด |
169
-
170
- ## Practice Exercises
171
-
172
- :::exercise{id="food-4-method-recognition" type="matching" title="Cooking Method Recognition" skill="word-recognition" objectiveId="obj-identify-cooking-methods"}
173
-
174
- **Question:** Match each dish to its cooking method
175
-
176
- - ผัดไทย
177
- - ไก่ทอด
178
- - ต้มยำกุ้ง
179
- - หมูย่าง
180
-
181
- **Answer:**
182
-
183
- - ผัดไทย → ผัด (stir-fried)
184
- - ไก่ทอด → ทอด (deep-fried)
185
- - ต้มยำกุ้ง → ต้ม (boiled/soup)
186
- - หมูย่าง → ย่าง (grilled)
187
-
188
- **Explanation:** The first word in many Thai dish names indicates the cooking method. Learning these helps you understand what you're ordering and predict the dish's texture and flavor.
189
-
190
- :::
191
-
192
- :::exercise{id="food-4-curry-types" type="fill-in-blank" title="Curry Types" skill="pattern-recognition" objectiveId="obj-recognize-cooking-techniques"}
193
-
194
- **Question:** What are the main curry types in Thai cuisine?
195
-
196
- **Answer:**
197
-
198
- - แกงเขียวหวาน (green curry) - spiciest, with green chilies
199
- - แกงเผ็ด (red curry) - moderately spicy, with red chilies
200
- - แกงมัสมั่น (massaman curry) - mild, sweet, with spices
201
- - พะแนง (panang curry) - thick, less soupy than others
202
-
203
- **Explanation:** All curries start with แกง. The color or name indicates the spice level and ingredients. Green is usually spiciest, red is medium, massaman is mild and sweet.
204
-
205
- :::
206
-
207
- :::exercise{id="food-4-requesting-preparation" type="multiple-choice" title="Requesting Specific Preparation" skill="word-production" objectiveId="obj-request-preparations"}
208
-
209
- **Question:** How do you request "steamed fish with lime"?
210
-
211
- **Options:**
212
- - ปลาทอดมะนาว
213
- - ปลานึ่งมะนาว
214
- - ปลาย่างมะนาว
215
- - ปลาต้มมะนาว
216
-
217
- **Answer:** 2
218
-
219
- **Explanation:** นึ่ง means "steamed". So ปลานึ่งมะนาว is "steamed fish with lime". ทอด is fried, ย่าง is grilled, ต้ม is boiled. Choose based on your preferred cooking method.
220
-
221
- :::
222
-
223
- ## What's Next
224
-
225
- In Lesson 5, you'll learn essential restaurant phrases for ordering and paying.
226
- `;
227
- export {
228
- n as default
229
- };
230
- //# sourceMappingURL=lesson-04-CmDvofL4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lesson-04-CmDvofL4.js","sources":["../src/syllabi/food/lessons/lesson-04.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-food-lesson-04\\ntitle: \\\"บทที่ 4 — วิธีทำอาหาร\\\"\\ndescription: \\\"Cooking Methods: Fried, grilled, steamed, and more\\\"\\norder: 4\\nparentId: thai-food\\ndifficulty: beginner\\ncefrLevel: A2\\ncategories:\\n - food\\n - cooking\\n - vocabulary\\nmetadata:\\n estimatedTime: 30\\n prerequisites:\\n - thai-food-lesson-03\\n learningObjectives:\\n - id: obj-identify-cooking-methods\\n description: \\\"Identify cooking methods in dish names\\\"\\n skill: word-recognition\\n - id: obj-understand-menu-descriptions\\n description: \\\"Understand menu descriptions\\\"\\n skill: reading-comprehension\\n - id: obj-request-preparations\\n description: \\\"Request specific preparations\\\"\\n skill: word-production\\n - id: obj-recognize-cooking-techniques\\n description: \\\"Recognize common Thai cooking techniques\\\"\\n skill: pattern-recognition\\n---\\n\\n# บทที่ 4 (Lesson 4) — Cooking Methods\\n\\n## Introduction\\n\\nThai dish names often include the cooking method. Learning these words helps you decode menus and understand what you're ordering. Each method creates different flavors and textures.\\n\\n## Primary Cooking Methods\\n\\n:::vocabulary-set{id=\\\"thai-cooking\\\" title=\\\"Cooking Methods\\\"}\\n\\n::vocab-item{id=\\\"pad\\\" word=\\\"ผัด\\\" pronunciation=\\\"phàt\\\" meaning=\\\"stir-fried\\\"}\\n\\n::vocab-item{id=\\\"tod\\\" word=\\\"ทอด\\\" pronunciation=\\\"thɔ̂ɔt\\\" meaning=\\\"deep-fried\\\"}\\n\\n::vocab-item{id=\\\"yang\\\" word=\\\"ย่าง\\\" pronunciation=\\\"yâang\\\" meaning=\\\"grilled\\\"}\\n\\n::vocab-item{id=\\\"tom\\\" word=\\\"ต้ม\\\" pronunciation=\\\"dtôm\\\" meaning=\\\"boiled/soup\\\"}\\n\\n::vocab-item{id=\\\"nueng\\\" word=\\\"นึ่ง\\\" pronunciation=\\\"nʉ̂ng\\\" meaning=\\\"steamed\\\"}\\n\\n::vocab-item{id=\\\"op\\\" word=\\\"อบ\\\" pronunciation=\\\"òp\\\" meaning=\\\"baked/roasted\\\"}\\n\\n::vocab-item{id=\\\"ping\\\" word=\\\"ปิ้ง\\\" pronunciation=\\\"bpîng\\\" meaning=\\\"grilled (direct heat)\\\"}\\n\\n:::\\n\\n### Method + Ingredient Pattern\\n\\n| Dish Name | Method + Ingredient |\\n|-----------|---------------------|\\n| ผัดไทย | stir-fried + Thai style |\\n| ไก่ทอด | chicken + deep-fried |\\n| หมูย่าง | pork + grilled |\\n| ต้มยำ | boiled + mixed |\\n| ปลานึ่ง | fish + steamed |\\n\\n## Stir-Fry Dishes (ผัด)\\n\\n:::vocabulary-set{id=\\\"thai-stirfry\\\" title=\\\"Stir-Fry Dishes\\\"}\\n\\n::vocab-item{id=\\\"pad-krapao\\\" word=\\\"ผัดกะเพรา\\\" pronunciation=\\\"phàt grà-phrao\\\" meaning=\\\"basil stir-fry\\\"}\\n\\n::vocab-item{id=\\\"pad-see-ew\\\" word=\\\"ผัดซีอิ๊ว\\\" pronunciation=\\\"phàt sii-íw\\\" meaning=\\\"soy sauce stir-fry\\\"}\\n\\n::vocab-item{id=\\\"pad-prik-gaeng\\\" word=\\\"ผัดพริกแกง\\\" pronunciation=\\\"phàt phrík gaeng\\\" meaning=\\\"curry paste stir-fry\\\"}\\n\\n::vocab-item{id=\\\"pad-pak-ruam\\\" word=\\\"ผัดผักรวม\\\" pronunciation=\\\"phàt phàk ruam\\\" meaning=\\\"mixed vegetable stir-fry\\\"}\\n\\n:::\\n\\n## Soup & Boiled Dishes (ต้ม)\\n\\n:::vocabulary-set{id=\\\"thai-soup\\\" title=\\\"Soup Dishes\\\"}\\n\\n::vocab-item{id=\\\"tom-yam\\\" word=\\\"ต้มยำ\\\" pronunciation=\\\"dtôm yam\\\" meaning=\\\"spicy-sour soup\\\"}\\n\\n::vocab-item{id=\\\"tom-kha\\\" word=\\\"ต้มข่า\\\" pronunciation=\\\"dtôm khàa\\\" meaning=\\\"galangal soup\\\"}\\n\\n::vocab-item{id=\\\"gaeng-jued\\\" word=\\\"แกงจืด\\\" pronunciation=\\\"gaeng jʉ̀ʉt\\\" meaning=\\\"clear soup\\\"}\\n\\n::vocab-item{id=\\\"tom-sap\\\" word=\\\"ต้มแซ่บ\\\" pronunciation=\\\"dtôm sâep\\\" meaning=\\\"Isaan spicy soup\\\"}\\n\\n:::\\n\\n## Grilled & Fried Items\\n\\n| Thai | Method | Example |\\n|------|--------|---------|\\n| ไก่ย่าง | grilled | Grilled chicken |\\n| หมูปิ้ง | skewered/grilled | Pork skewers |\\n| ปลาทอด | deep-fried | Fried fish |\\n| กุ้งทอด | deep-fried | Fried shrimp |\\n| ปอเปี๊ยะทอด | deep-fried | Fried spring rolls |\\n\\n## Curry Types (แกง)\\n\\n:::vocabulary-set{id=\\\"thai-curry\\\" title=\\\"Curry Types\\\"}\\n\\n::vocab-item{id=\\\"gaeng\\\" word=\\\"แกง\\\" pronunciation=\\\"gaeng\\\" meaning=\\\"curry\\\"}\\n\\n::vocab-item{id=\\\"gaeng-keow-wan\\\" word=\\\"แกงเขียวหวาน\\\" pronunciation=\\\"gaeng khǐao wǎan\\\" meaning=\\\"green curry\\\"}\\n\\n::vocab-item{id=\\\"gaeng-ped\\\" word=\\\"แกงเผ็ด\\\" pronunciation=\\\"gaeng phèt\\\" meaning=\\\"red curry\\\"}\\n\\n::vocab-item{id=\\\"gaeng-massaman\\\" word=\\\"แกงมัสมั่น\\\" pronunciation=\\\"gaeng mát-sà-màn\\\" meaning=\\\"massaman curry\\\"}\\n\\n::vocab-item{id=\\\"panang\\\" word=\\\"พะแนง\\\" pronunciation=\\\"phá-naeng\\\" meaning=\\\"panang curry\\\"}\\n\\n:::\\n\\n## Raw & Fresh Preparations\\n\\n| Thai | Meaning | Example Dish |\\n|------|---------|--------------|\\n| สด | fresh/raw | กุ้งสด (fresh shrimp) |\\n| ยำ | spicy salad | ยำวุ้นเส้น |\\n| ลาบ | minced salad | ลาบหมู |\\n| น้ำตก | waterfall (grilled salad) | น้ำตกหมู |\\n\\n## Special Preparations\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ราดหน้า | with gravy on top |\\n| ใส่น้ำมันหอย | with oyster sauce |\\n| ผัดไฟแดง | high-heat stir-fry |\\n| หมักแล้ว | marinated |\\n\\n## Practice Conversation\\n\\n**Asking about preparation:**\\n- คุณ: อันนี้ทำยังไงครับ (How is this made?)\\n- พนักงาน: ผัดกับกระเทียมค่ะ (Stir-fried with garlic)\\n\\n**Requesting specific cooking:**\\n- คุณ: ขอปลานึ่งมะนาวครับ (Steamed fish with lime, please)\\n- พนักงาน: ปลาอะไรดีคะ (What kind of fish?)\\n- คุณ: ปลากะพงครับ (Sea bass, please)\\n\\n## Key Points\\n\\n1. **ผัด = stir-fried**: Most common cooking method\\n2. **ทอด = deep-fried**: Creates crispy texture\\n3. **ต้ม = soup/boiled**: Includes all soup dishes\\n4. **แกง = curry**: Rich, coconut-based dishes\\n\\n## Cooking Method Comparison Table\\n\\n| Method | Thai | Texture | Common Dishes |\\n|--------|------|---------|---------------|\\n| Stir-fry | ผัด | Quick-cooked, saucy | ผัดไทย, ผัดกะเพรา |\\n| Deep-fry | ทอด | Crispy, golden | ไก่ทอด, ปลาทอด |\\n| Grill | ย่าง/ปิ้ง | Smoky, charred | หมูย่าง, หมูปิ้ง |\\n| Boil/Soup | ต้ม | Liquid, brothy | ต้มยำ, ต้มข่า |\\n| Steam | นึ่ง | Tender, moist | ปลานึ่ง, ไข่ตุ๋น |\\n| Curry | แกง | Rich, coconut-based | แกงเขียวหวาน, แกงเผ็ด |\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"food-4-method-recognition\\\" type=\\\"matching\\\" title=\\\"Cooking Method Recognition\\\" skill=\\\"word-recognition\\\" objectiveId=\\\"obj-identify-cooking-methods\\\"}\\n\\n**Question:** Match each dish to its cooking method\\n\\n- ผัดไทย\\n- ไก่ทอด\\n- ต้มยำกุ้ง\\n- หมูย่าง\\n\\n**Answer:**\\n\\n- ผัดไทย → ผัด (stir-fried)\\n- ไก่ทอด → ทอด (deep-fried)\\n- ต้มยำกุ้ง → ต้ม (boiled/soup)\\n- หมูย่าง → ย่าง (grilled)\\n\\n**Explanation:** The first word in many Thai dish names indicates the cooking method. Learning these helps you understand what you're ordering and predict the dish's texture and flavor.\\n\\n:::\\n\\n:::exercise{id=\\\"food-4-curry-types\\\" type=\\\"fill-in-blank\\\" title=\\\"Curry Types\\\" skill=\\\"pattern-recognition\\\" objectiveId=\\\"obj-recognize-cooking-techniques\\\"}\\n\\n**Question:** What are the main curry types in Thai cuisine?\\n\\n**Answer:**\\n\\n- แกงเขียวหวาน (green curry) - spiciest, with green chilies\\n- แกงเผ็ด (red curry) - moderately spicy, with red chilies\\n- แกงมัสมั่น (massaman curry) - mild, sweet, with spices\\n- พะแนง (panang curry) - thick, less soupy than others\\n\\n**Explanation:** All curries start with แกง. The color or name indicates the spice level and ingredients. Green is usually spiciest, red is medium, massaman is mild and sweet.\\n\\n:::\\n\\n:::exercise{id=\\\"food-4-requesting-preparation\\\" type=\\\"multiple-choice\\\" title=\\\"Requesting Specific Preparation\\\" skill=\\\"word-production\\\" objectiveId=\\\"obj-request-preparations\\\"}\\n\\n**Question:** How do you request \\\"steamed fish with lime\\\"?\\n\\n**Options:**\\n- ปลาทอดมะนาว\\n- ปลานึ่งมะนาว\\n- ปลาย่างมะนาว\\n- ปลาต้มมะนาว\\n\\n**Answer:** 2\\n\\n**Explanation:** นึ่ง means \\\"steamed\\\". So ปลานึ่งมะนาว is \\\"steamed fish with lime\\\". ทอด is fried, ย่าง is grilled, ต้ม is boiled. Choose based on your preferred cooking method.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 5, you'll learn essential restaurant phrases for ordering and paying.\\n\""],"names":["lesson04"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -1,178 +0,0 @@
1
- const n = `---
2
- type: lesson
3
- id: thai-travel-lesson-04
4
- title: "บทที่ 4 — ที่พัก"
5
- description: "Accommodation: Booking rooms and hotel vocabulary"
6
- order: 4
7
- parentId: thai-vocab-travel
8
- difficulty: beginner
9
- cefrLevel: A2
10
- categories:
11
- - travel
12
- - accommodation
13
- metadata:
14
- estimatedTime: 25
15
- prerequisites:
16
- - thai-travel-lesson-03
17
- learningObjectives:
18
- - id: obj-04a
19
- description: "Book hotel rooms"
20
- skill: pattern-application
21
- - id: obj-04b
22
- description: "Ask about amenities"
23
- skill: pattern-recognition
24
- - id: obj-04c
25
- description: "Check in and check out"
26
- skill: situational-response
27
- - id: obj-04d
28
- description: "Handle room issues"
29
- skill: situational-response
30
- ---
31
-
32
- # บทที่ 4 (Lesson 4) — Accommodation
33
-
34
- ## Introduction
35
-
36
- From luxury hotels to cozy guesthouses, knowing accommodation vocabulary helps you find the perfect place to stay.
37
-
38
- ## Accommodation Types
39
-
40
- :::vocabulary-set{id="thai-accommodation-types" title="Types of Accommodation"}
41
-
42
- ::vocab-item{id="rong-raem" word="โรงแรม" pronunciation="roong raem" meaning="hotel"}
43
-
44
- ::vocab-item{id="guest-house" word="เกสต์เฮ้าส์" pronunciation="gét háo" meaning="guesthouse"}
45
-
46
- ::vocab-item{id="hostel" word="โฮสเทล" pronunciation="hóot-then" meaning="hostel"}
47
-
48
- ::vocab-item{id="resort" word="รีสอร์ท" pronunciation="rii-sɔ̀ɔt" meaning="resort"}
49
-
50
- ::vocab-item{id="ban-phak" word="บ้านพัก" pronunciation="bâan phák" meaning="vacation house"}
51
-
52
- :::
53
-
54
- ## Room Vocabulary
55
-
56
- :::vocabulary-set{id="thai-room-vocab" title="Room Vocabulary"}
57
-
58
- ::vocab-item{id="hong" word="ห้อง" pronunciation="hông" meaning="room"}
59
-
60
- ::vocab-item{id="hong-phat" word="ห้องพัก" pronunciation="hông phák" meaning="guest room"}
61
-
62
- ::vocab-item{id="tiang" word="เตียง" pronunciation="dtiang" meaning="bed"}
63
-
64
- ::vocab-item{id="tiang-diao" word="เตียงเดี่ยว" pronunciation="dtiang dìao" meaning="single bed"}
65
-
66
- ::vocab-item{id="tiang-khu" word="เตียงคู่" pronunciation="dtiang khûu" meaning="double bed"}
67
-
68
- :::
69
-
70
- ## Amenities
71
-
72
- | Thai | Meaning |
73
- |------|---------|
74
- | แอร์ | air conditioning |
75
- | ไวไฟ | WiFi |
76
- | อาหารเช้า | breakfast |
77
- | สระว่ายน้ำ | swimming pool |
78
- | ที่จอดรถ | parking |
79
- | ลิฟต์ | elevator |
80
-
81
- ## Check-in/Out Phrases
82
-
83
- | Thai | Meaning |
84
- |------|---------|
85
- | จองห้อง | book a room |
86
- | เช็คอิน | check in |
87
- | เช็คเอาท์ | check out |
88
- | กุญแจห้อง | room key |
89
- | บัตรห้อง | key card |
90
- | ชั้นไหน | which floor? |
91
-
92
- ## Sample Conversations
93
-
94
- **Checking in:**
95
- - คุณ: สวัสดีครับ ผมจองห้องไว้ครับ (Hello, I have a reservation)
96
- - พนักงาน: ชื่ออะไรคะ (What name?)
97
- - คุณ: John Smith ครับ
98
- - พนักงาน: ห้อง 405 ค่ะ ชั้น 4 ค่ะ (Room 405, 4th floor)
99
-
100
- **Asking about amenities:**
101
- - คุณ: มีไวไฟไหมครับ (Is there WiFi?)
102
- - พนักงาน: มีค่ะ ฟรีค่ะ (Yes, it's free)
103
- - คุณ: รวมอาหารเช้าไหมครับ (Is breakfast included?)
104
- - พนักงาน: รวมค่ะ ชั้นล่างค่ะ (Yes, downstairs)
105
-
106
- ## Key Points
107
-
108
- 1. **จอง = book/reserve**: Essential for hotels
109
- 2. **ห้อง + type**: ห้องพัก = guest room, ห้องน้ำ = bathroom
110
- 3. **เตียงเดี่ยว/คู่**: Single vs double bed
111
- 4. **รวม = included**: Check if breakfast/WiFi is รวม (included)
112
-
113
- ## Practice Exercises
114
-
115
- :::exercise{id="travel-4-accommodation-types" type="matching" title="Accommodation Types" skill="word-recognition" objectiveId="obj-04a"}
116
-
117
- **Question:** Match each accommodation type to its Thai name
118
-
119
- - Hotel
120
- - Guesthouse
121
- - Hostel
122
- - Resort
123
-
124
- **Answer:**
125
-
126
- - Hotel → โรงแรม
127
- - Guesthouse → เกสต์เฮ้าส์
128
- - Hostel → โฮสเทล
129
- - Resort → รีสอร์ท
130
-
131
- **Explanation:** Many accommodation terms are borrowed from English but pronounced in Thai style. โรงแรม is the most common term for hotels.
132
-
133
- :::
134
-
135
- :::exercise{id="travel-4-room-amenities" type="fill-in-blank" title="Asking About Amenities" skill="pattern-application" objectiveId="obj-04b"}
136
-
137
- **Question:** How do you ask about these amenities?
138
-
139
- - WiFi
140
- - Breakfast
141
- - Air conditioning
142
- - Swimming pool
143
-
144
- **Answer:**
145
-
146
- - มีไวไฟไหม (Is there WiFi?)
147
- - รวมอาหารเช้าไหม (Is breakfast included?)
148
- - มีแอร์ไหม (Is there AC?)
149
- - มีสระว่ายน้ำไหม (Is there a swimming pool?)
150
-
151
- **Explanation:** Use มี...ไหม to ask if something exists or is available. Use รวม...ไหม to ask if something is included in the price.
152
-
153
- :::
154
-
155
- :::exercise{id="travel-4-check-in" type="multiple-choice" title="Check-in Process" skill="situational-response" objectiveId="obj-04c"}
156
-
157
- **Question:** What do you say when checking into a hotel?
158
-
159
- **Options:**
160
- - ผมจองห้องไว้ (I have a reservation)
161
- - ผมต้องการห้อง (I need a room)
162
- - ห้องว่างไหม (Is there a room available?)
163
- - All of the above work
164
-
165
- **Answer:** 4
166
-
167
- **Explanation:** All three phrases work! ผมจองห้องไว้ is for when you have a reservation. ผมต้องการห้อง is for walk-ins. ห้องว่างไหม asks about availability. Choose based on your situation.
168
-
169
- :::
170
-
171
- ## What's Next
172
-
173
- In Lesson 5, you'll learn shopping vocabulary for markets and malls.
174
- `;
175
- export {
176
- n as default
177
- };
178
- //# sourceMappingURL=lesson-04-DGKHK4LW.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lesson-04-DGKHK4LW.js","sources":["../src/syllabi/travel/lessons/lesson-04.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-travel-lesson-04\\ntitle: \\\"บทที่ 4 — ที่พัก\\\"\\ndescription: \\\"Accommodation: Booking rooms and hotel vocabulary\\\"\\norder: 4\\nparentId: thai-vocab-travel\\ndifficulty: beginner\\ncefrLevel: A2\\ncategories:\\n - travel\\n - accommodation\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-travel-lesson-03\\n learningObjectives:\\n - id: obj-04a\\n description: \\\"Book hotel rooms\\\"\\n skill: pattern-application\\n - id: obj-04b\\n description: \\\"Ask about amenities\\\"\\n skill: pattern-recognition\\n - id: obj-04c\\n description: \\\"Check in and check out\\\"\\n skill: situational-response\\n - id: obj-04d\\n description: \\\"Handle room issues\\\"\\n skill: situational-response\\n---\\n\\n# บทที่ 4 (Lesson 4) — Accommodation\\n\\n## Introduction\\n\\nFrom luxury hotels to cozy guesthouses, knowing accommodation vocabulary helps you find the perfect place to stay.\\n\\n## Accommodation Types\\n\\n:::vocabulary-set{id=\\\"thai-accommodation-types\\\" title=\\\"Types of Accommodation\\\"}\\n\\n::vocab-item{id=\\\"rong-raem\\\" word=\\\"โรงแรม\\\" pronunciation=\\\"roong raem\\\" meaning=\\\"hotel\\\"}\\n\\n::vocab-item{id=\\\"guest-house\\\" word=\\\"เกสต์เฮ้าส์\\\" pronunciation=\\\"gét háo\\\" meaning=\\\"guesthouse\\\"}\\n\\n::vocab-item{id=\\\"hostel\\\" word=\\\"โฮสเทล\\\" pronunciation=\\\"hóot-then\\\" meaning=\\\"hostel\\\"}\\n\\n::vocab-item{id=\\\"resort\\\" word=\\\"รีสอร์ท\\\" pronunciation=\\\"rii-sɔ̀ɔt\\\" meaning=\\\"resort\\\"}\\n\\n::vocab-item{id=\\\"ban-phak\\\" word=\\\"บ้านพัก\\\" pronunciation=\\\"bâan phák\\\" meaning=\\\"vacation house\\\"}\\n\\n:::\\n\\n## Room Vocabulary\\n\\n:::vocabulary-set{id=\\\"thai-room-vocab\\\" title=\\\"Room Vocabulary\\\"}\\n\\n::vocab-item{id=\\\"hong\\\" word=\\\"ห้อง\\\" pronunciation=\\\"hông\\\" meaning=\\\"room\\\"}\\n\\n::vocab-item{id=\\\"hong-phat\\\" word=\\\"ห้องพัก\\\" pronunciation=\\\"hông phák\\\" meaning=\\\"guest room\\\"}\\n\\n::vocab-item{id=\\\"tiang\\\" word=\\\"เตียง\\\" pronunciation=\\\"dtiang\\\" meaning=\\\"bed\\\"}\\n\\n::vocab-item{id=\\\"tiang-diao\\\" word=\\\"เตียงเดี่ยว\\\" pronunciation=\\\"dtiang dìao\\\" meaning=\\\"single bed\\\"}\\n\\n::vocab-item{id=\\\"tiang-khu\\\" word=\\\"เตียงคู่\\\" pronunciation=\\\"dtiang khûu\\\" meaning=\\\"double bed\\\"}\\n\\n:::\\n\\n## Amenities\\n\\n| Thai | Meaning |\\n|------|---------|\\n| แอร์ | air conditioning |\\n| ไวไฟ | WiFi |\\n| อาหารเช้า | breakfast |\\n| สระว่ายน้ำ | swimming pool |\\n| ที่จอดรถ | parking |\\n| ลิฟต์ | elevator |\\n\\n## Check-in/Out Phrases\\n\\n| Thai | Meaning |\\n|------|---------|\\n| จองห้อง | book a room |\\n| เช็คอิน | check in |\\n| เช็คเอาท์ | check out |\\n| กุญแจห้อง | room key |\\n| บัตรห้อง | key card |\\n| ชั้นไหน | which floor? |\\n\\n## Sample Conversations\\n\\n**Checking in:**\\n- คุณ: สวัสดีครับ ผมจองห้องไว้ครับ (Hello, I have a reservation)\\n- พนักงาน: ชื่ออะไรคะ (What name?)\\n- คุณ: John Smith ครับ\\n- พนักงาน: ห้อง 405 ค่ะ ชั้น 4 ค่ะ (Room 405, 4th floor)\\n\\n**Asking about amenities:**\\n- คุณ: มีไวไฟไหมครับ (Is there WiFi?)\\n- พนักงาน: มีค่ะ ฟรีค่ะ (Yes, it's free)\\n- คุณ: รวมอาหารเช้าไหมครับ (Is breakfast included?)\\n- พนักงาน: รวมค่ะ ชั้นล่างค่ะ (Yes, downstairs)\\n\\n## Key Points\\n\\n1. **จอง = book/reserve**: Essential for hotels\\n2. **ห้อง + type**: ห้องพัก = guest room, ห้องน้ำ = bathroom\\n3. **เตียงเดี่ยว/คู่**: Single vs double bed\\n4. **รวม = included**: Check if breakfast/WiFi is รวม (included)\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"travel-4-accommodation-types\\\" type=\\\"matching\\\" title=\\\"Accommodation Types\\\" skill=\\\"word-recognition\\\" objectiveId=\\\"obj-04a\\\"}\\n\\n**Question:** Match each accommodation type to its Thai name\\n\\n- Hotel\\n- Guesthouse\\n- Hostel\\n- Resort\\n\\n**Answer:**\\n\\n- Hotel → โรงแรม\\n- Guesthouse → เกสต์เฮ้าส์\\n- Hostel → โฮสเทล\\n- Resort → รีสอร์ท\\n\\n**Explanation:** Many accommodation terms are borrowed from English but pronounced in Thai style. โรงแรม is the most common term for hotels.\\n\\n:::\\n\\n:::exercise{id=\\\"travel-4-room-amenities\\\" type=\\\"fill-in-blank\\\" title=\\\"Asking About Amenities\\\" skill=\\\"pattern-application\\\" objectiveId=\\\"obj-04b\\\"}\\n\\n**Question:** How do you ask about these amenities?\\n\\n- WiFi\\n- Breakfast\\n- Air conditioning\\n- Swimming pool\\n\\n**Answer:**\\n\\n- มีไวไฟไหม (Is there WiFi?)\\n- รวมอาหารเช้าไหม (Is breakfast included?)\\n- มีแอร์ไหม (Is there AC?)\\n- มีสระว่ายน้ำไหม (Is there a swimming pool?)\\n\\n**Explanation:** Use มี...ไหม to ask if something exists or is available. Use รวม...ไหม to ask if something is included in the price.\\n\\n:::\\n\\n:::exercise{id=\\\"travel-4-check-in\\\" type=\\\"multiple-choice\\\" title=\\\"Check-in Process\\\" skill=\\\"situational-response\\\" objectiveId=\\\"obj-04c\\\"}\\n\\n**Question:** What do you say when checking into a hotel?\\n\\n**Options:**\\n- ผมจองห้องไว้ (I have a reservation)\\n- ผมต้องการห้อง (I need a room)\\n- ห้องว่างไหม (Is there a room available?)\\n- All of the above work\\n\\n**Answer:** 4\\n\\n**Explanation:** All three phrases work! ผมจองห้องไว้ is for when you have a reservation. ผมต้องการห้อง is for walk-ins. ห้องว่างไหม asks about availability. Choose based on your situation.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 5, you'll learn shopping vocabulary for markets and malls.\\n\""],"names":["lesson04"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}