@syllst/th 0.1.2 → 0.2.0

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 (330) hide show
  1. package/dist/{index-of_athp-.js → index-4uNMctdq.js} +13 -13
  2. package/dist/{index-of_athp-.js.map → index-4uNMctdq.js.map} +1 -1
  3. package/dist/{index-Dy38Hmlm.js → index-BM-LWlCm.js} +10 -10
  4. package/dist/{index-Dy38Hmlm.js.map → index-BM-LWlCm.js.map} +1 -1
  5. package/dist/{index-CTQ45BVw.js → index-Bjym0crS.js} +8 -8
  6. package/dist/{index-CTQ45BVw.js.map → index-Bjym0crS.js.map} +1 -1
  7. package/dist/{index-B029m98V.js → index-BuKXw7-Z.js} +7 -7
  8. package/dist/{index-B029m98V.js.map → index-BuKXw7-Z.js.map} +1 -1
  9. package/dist/{index-CoqP9GZL.js → index-ByS0o5dz.js} +10 -10
  10. package/dist/{index-CoqP9GZL.js.map → index-ByS0o5dz.js.map} +1 -1
  11. package/dist/{index-BCA5Llwg.js → index-C9VnG7dT.js} +10 -10
  12. package/dist/{index-BCA5Llwg.js.map → index-C9VnG7dT.js.map} +1 -1
  13. package/dist/{index-vuRo2mLK.js → index-CPQkjFjV.js} +9 -9
  14. package/dist/{index-vuRo2mLK.js.map → index-CPQkjFjV.js.map} +1 -1
  15. package/dist/{index-BFcg5D_W.js → index-CkHd3Fal.js} +12 -12
  16. package/dist/{index-BFcg5D_W.js.map → index-CkHd3Fal.js.map} +1 -1
  17. package/dist/{index-CB8M6CK6.js → index-DBkPBXe2.js} +10 -10
  18. package/dist/{index-CB8M6CK6.js.map → index-DBkPBXe2.js.map} +1 -1
  19. package/dist/index.d.ts +1 -1
  20. package/dist/index.js +18 -18
  21. package/dist/{lesson-01--9NOyHZ6.js → lesson-01-B0wtSaSl.js} +21 -9
  22. package/dist/lesson-01-B0wtSaSl.js.map +1 -0
  23. package/dist/{lesson-01-97FtYE6g.js → lesson-01-C9vbUlA4.js} +14 -6
  24. package/dist/lesson-01-C9vbUlA4.js.map +1 -0
  25. package/dist/{lesson-01-CF4tJfZ3.js → lesson-01-CPmBFTe0.js} +28 -16
  26. package/dist/lesson-01-CPmBFTe0.js.map +1 -0
  27. package/dist/{lesson-01-3hBted4A.js → lesson-01-Cc4Ws8eR.js} +25 -14
  28. package/dist/lesson-01-Cc4Ws8eR.js.map +1 -0
  29. package/dist/{lesson-01-BYKAZiua.js → lesson-01-Cm5k-m-9.js} +14 -8
  30. package/dist/lesson-01-Cm5k-m-9.js.map +1 -0
  31. package/dist/{lesson-01-WV3ic8Ok.js → lesson-01-DELblCNj.js} +11 -5
  32. package/dist/lesson-01-DELblCNj.js.map +1 -0
  33. package/dist/{lesson-01-CRx-yw4C.js → lesson-01-Djl_72e7.js} +14 -6
  34. package/dist/lesson-01-Djl_72e7.js.map +1 -0
  35. package/dist/{lesson-01-BhjY6ArF.js → lesson-01-LEHTeGQQ.js} +17 -9
  36. package/dist/lesson-01-LEHTeGQQ.js.map +1 -0
  37. package/dist/{lesson-01-BNdHXAGR.js → lesson-01-ih_-OO_O.js} +14 -6
  38. package/dist/lesson-01-ih_-OO_O.js.map +1 -0
  39. package/dist/{lesson-02-C8dfzXvq.js → lesson-02-B2aZrKUQ.js} +14 -6
  40. package/dist/lesson-02-B2aZrKUQ.js.map +1 -0
  41. package/dist/{lesson-02-C2ALLvoT.js → lesson-02-BI1Vnwiz.js} +17 -9
  42. package/dist/lesson-02-BI1Vnwiz.js.map +1 -0
  43. package/dist/{lesson-02-BGnp0Ik_.js → lesson-02-BXbwEMaL.js} +27 -15
  44. package/dist/lesson-02-BXbwEMaL.js.map +1 -0
  45. package/dist/{lesson-02-BAbq-QGP.js → lesson-02-CbJJ5Amt.js} +24 -14
  46. package/dist/lesson-02-CbJJ5Amt.js.map +1 -0
  47. package/dist/{lesson-02-Bm9EJuN8.js → lesson-02-DGrALAgG.js} +21 -9
  48. package/dist/lesson-02-DGrALAgG.js.map +1 -0
  49. package/dist/{lesson-02-C0ZL4z3c.js → lesson-02-DcMDDBDL.js} +11 -5
  50. package/dist/lesson-02-DcMDDBDL.js.map +1 -0
  51. package/dist/{lesson-02-B2Xg7RVU.js → lesson-02-Dk59HZWp.js} +17 -9
  52. package/dist/lesson-02-Dk59HZWp.js.map +1 -0
  53. package/dist/{lesson-02-BO3BXPMJ.js → lesson-02-L8oNhBej.js} +14 -8
  54. package/dist/lesson-02-L8oNhBej.js.map +1 -0
  55. package/dist/{lesson-02-CsejVbCo.js → lesson-02-VDOme3ES.js} +17 -9
  56. package/dist/lesson-02-VDOme3ES.js.map +1 -0
  57. package/dist/{lesson-03-DV2SUWVH.js → lesson-03-9WioSe19.js} +21 -9
  58. package/dist/lesson-03-9WioSe19.js.map +1 -0
  59. package/dist/{lesson-03-DiV17_Os.js → lesson-03-BZutWzMD.js} +14 -6
  60. package/dist/lesson-03-BZutWzMD.js.map +1 -0
  61. package/dist/{lesson-03-Xc8-2Yt3.js → lesson-03-CSIF5xRS.js} +14 -8
  62. package/dist/lesson-03-CSIF5xRS.js.map +1 -0
  63. package/dist/{lesson-03-DrJgbfDQ.js → lesson-03-CSKig363.js} +17 -9
  64. package/dist/lesson-03-CSKig363.js.map +1 -0
  65. package/dist/{lesson-03-XVahXvgf.js → lesson-03-CoDPKwa1.js} +21 -14
  66. package/dist/lesson-03-CoDPKwa1.js.map +1 -0
  67. package/dist/{lesson-03-8NtAeqFh.js → lesson-03-DPJOG2M_.js} +14 -8
  68. package/dist/lesson-03-DPJOG2M_.js.map +1 -0
  69. package/dist/{lesson-03-CKTNtgY1.js → lesson-03-DkjCuJ26.js} +17 -9
  70. package/dist/lesson-03-DkjCuJ26.js.map +1 -0
  71. package/dist/{lesson-03-BdZfKRhq.js → lesson-03-DucbRMOQ.js} +17 -9
  72. package/dist/lesson-03-DucbRMOQ.js.map +1 -0
  73. package/dist/{lesson-03-D8va_Q9B.js → lesson-03-MIne1PbH.js} +26 -14
  74. package/dist/lesson-03-MIne1PbH.js.map +1 -0
  75. package/dist/{lesson-04-Dfc7S4nT.js → lesson-04-0Pj_x1DU.js} +17 -9
  76. package/dist/lesson-04-0Pj_x1DU.js.map +1 -0
  77. package/dist/{lesson-04-ZrSBM0BX.js → lesson-04-B9h0p9kE.js} +14 -8
  78. package/dist/lesson-04-B9h0p9kE.js.map +1 -0
  79. package/dist/{lesson-04-DEEPJ_rd.js → lesson-04-BLuPI1-X.js} +22 -13
  80. package/dist/lesson-04-BLuPI1-X.js.map +1 -0
  81. package/dist/{lesson-04-rapx_3vA.js → lesson-04-CmDvofL4.js} +17 -9
  82. package/dist/lesson-04-CmDvofL4.js.map +1 -0
  83. package/dist/{lesson-04-DtXVhdGB.js → lesson-04-DGKHK4LW.js} +17 -9
  84. package/dist/lesson-04-DGKHK4LW.js.map +1 -0
  85. package/dist/{lesson-04-CtNr2B3E.js → lesson-04-DUcHZzsk.js} +21 -9
  86. package/dist/lesson-04-DUcHZzsk.js.map +1 -0
  87. package/dist/{lesson-04-BpRrNmzO.js → lesson-04-DnVIXXk-.js} +14 -8
  88. package/dist/lesson-04-DnVIXXk-.js.map +1 -0
  89. package/dist/{lesson-04-ioLXnB0j.js → lesson-04-FZnIE7tu.js} +27 -15
  90. package/dist/lesson-04-FZnIE7tu.js.map +1 -0
  91. package/dist/{lesson-04-D__vMCyA.js → lesson-04-ToX3nRz1.js} +17 -9
  92. package/dist/lesson-04-ToX3nRz1.js.map +1 -0
  93. package/dist/{lesson-05-D_GdROUn.js → lesson-05-2aTCGXMh.js} +14 -8
  94. package/dist/lesson-05-2aTCGXMh.js.map +1 -0
  95. package/dist/{lesson-05-ip400cxe.js → lesson-05-BvitRdE8.js} +28 -16
  96. package/dist/lesson-05-BvitRdE8.js.map +1 -0
  97. package/dist/{lesson-05-D1d3kc3M.js → lesson-05-CgXGkcjS.js} +14 -8
  98. package/dist/lesson-05-CgXGkcjS.js.map +1 -0
  99. package/dist/{lesson-05-D2SVU-I0.js → lesson-05-ClfrUrvX.js} +17 -9
  100. package/dist/lesson-05-ClfrUrvX.js.map +1 -0
  101. package/dist/{lesson-05-CKxXcooO.js → lesson-05-D2zf9n7k.js} +23 -13
  102. package/dist/lesson-05-D2zf9n7k.js.map +1 -0
  103. package/dist/{lesson-05-DusKUtbm.js → lesson-05-DWquBfdl.js} +21 -9
  104. package/dist/lesson-05-DWquBfdl.js.map +1 -0
  105. package/dist/{lesson-05-Bm6fg-DJ.js → lesson-05-DpIkwhJ8.js} +17 -9
  106. package/dist/lesson-05-DpIkwhJ8.js.map +1 -0
  107. package/dist/{lesson-05-DBsHyFlt.js → lesson-05-UYz39ORV.js} +17 -9
  108. package/dist/lesson-05-UYz39ORV.js.map +1 -0
  109. package/dist/{lesson-05-DXOLS7G0.js → lesson-05-t6XuANiZ.js} +17 -9
  110. package/dist/lesson-05-t6XuANiZ.js.map +1 -0
  111. package/dist/{lesson-06-1ZsbrE1a.js → lesson-06-B2y08mKv.js} +17 -9
  112. package/dist/lesson-06-B2y08mKv.js.map +1 -0
  113. package/dist/{lesson-06-1CE05TRX.js → lesson-06-CHqaVQix.js} +16 -10
  114. package/dist/lesson-06-CHqaVQix.js.map +1 -0
  115. package/dist/{lesson-06-Bliedg7n.js → lesson-06-CaCZBX1V.js} +17 -9
  116. package/dist/lesson-06-CaCZBX1V.js.map +1 -0
  117. package/dist/{lesson-06-Du9J8sYl.js → lesson-06-ClplsJBT.js} +30 -18
  118. package/dist/lesson-06-ClplsJBT.js.map +1 -0
  119. package/dist/{lesson-06-BG26PBTF.js → lesson-06-CzGnNKo5.js} +14 -8
  120. package/dist/lesson-06-CzGnNKo5.js.map +1 -0
  121. package/dist/{lesson-06-CnKkcUb-.js → lesson-06-Dg_bQLNC.js} +17 -9
  122. package/dist/lesson-06-Dg_bQLNC.js.map +1 -0
  123. package/dist/{lesson-06-Aw-X-HMV.js → lesson-06-OWFMgO0a.js} +23 -14
  124. package/dist/lesson-06-OWFMgO0a.js.map +1 -0
  125. package/dist/{lesson-06-CvN9pDsE.js → lesson-06-Q2aRAzws.js} +17 -9
  126. package/dist/lesson-06-Q2aRAzws.js.map +1 -0
  127. package/dist/{lesson-07-DjCMCYkK.js → lesson-07-BLDUA_Ff.js} +17 -9
  128. package/dist/lesson-07-BLDUA_Ff.js.map +1 -0
  129. package/dist/{lesson-07-DezS1ojS.js → lesson-07-BpyF1Ssq.js} +27 -15
  130. package/dist/lesson-07-BpyF1Ssq.js.map +1 -0
  131. package/dist/{lesson-07-rvSSQiVh.js → lesson-07-C4GrfDTW.js} +25 -13
  132. package/dist/lesson-07-C4GrfDTW.js.map +1 -0
  133. package/dist/{lesson-07-CTFSd9gF.js → lesson-07-CVCUt1Jn.js} +14 -8
  134. package/dist/lesson-07-CVCUt1Jn.js.map +1 -0
  135. package/dist/{lesson-07-8zdPFyjE.js → lesson-07-DQFXCZsZ.js} +17 -9
  136. package/dist/lesson-07-DQFXCZsZ.js.map +1 -0
  137. package/dist/{lesson-07-X6anzbAn.js → lesson-07-Dcry2Yjo.js} +17 -9
  138. package/dist/lesson-07-Dcry2Yjo.js.map +1 -0
  139. package/dist/{lesson-07-B9bkJ3gP.js → lesson-07-JS_cqdNr.js} +14 -8
  140. package/dist/lesson-07-JS_cqdNr.js.map +1 -0
  141. package/dist/{lesson-08-CeDWopKc.js → lesson-08-18gscaS0.js} +25 -13
  142. package/dist/lesson-08-18gscaS0.js.map +1 -0
  143. package/dist/{lesson-08-Cyzy_VeP.js → lesson-08-2kBUq_B2.js} +14 -8
  144. package/dist/lesson-08-2kBUq_B2.js.map +1 -0
  145. package/dist/{lesson-08-BYfkPBkH.js → lesson-08-BP5lpiGe.js} +17 -9
  146. package/dist/lesson-08-BP5lpiGe.js.map +1 -0
  147. package/dist/{lesson-08-Bb_v_gD-.js → lesson-08-BXm9GgdN.js} +14 -8
  148. package/dist/lesson-08-BXm9GgdN.js.map +1 -0
  149. package/dist/{lesson-08-BqW5C_OE.js → lesson-08-Bru0PdEK.js} +21 -9
  150. package/dist/lesson-08-Bru0PdEK.js.map +1 -0
  151. package/dist/{lesson-08-hJlci9W5.js → lesson-08-Dd-8cbGW.js} +17 -9
  152. package/dist/lesson-08-Dd-8cbGW.js.map +1 -0
  153. package/dist/{lesson-09-DHRHZIc1.js → lesson-09-B1qWE3Yl.js} +27 -15
  154. package/dist/lesson-09-B1qWE3Yl.js.map +1 -0
  155. package/dist/{lesson-09-BQ1CZCjT.js → lesson-09-B5Vb70xj.js} +14 -8
  156. package/dist/lesson-09-B5Vb70xj.js.map +1 -0
  157. package/dist/{lesson-10-BdfkVT7s.js → lesson-10-00qNLc7A.js} +25 -13
  158. package/dist/lesson-10-00qNLc7A.js.map +1 -0
  159. package/dist/{lesson-10-C7YEQ8et.js → lesson-10-Dw-Jtm3D.js} +14 -8
  160. package/dist/lesson-10-Dw-Jtm3D.js.map +1 -0
  161. package/dist/{lesson-11-oJQ8ZxJk.js → lesson-11-BM3R_S7I.js} +25 -13
  162. package/dist/lesson-11-BM3R_S7I.js.map +1 -0
  163. package/dist/{lesson-12-D69m5ETy.js → lesson-12-D1Wx7CyK.js} +33 -21
  164. package/dist/lesson-12-D1Wx7CyK.js.map +1 -0
  165. package/dist/skills-hcn-pGD0.js +244 -0
  166. package/dist/skills-hcn-pGD0.js.map +1 -0
  167. package/dist/syllabi/alphabet/index.js +1 -1
  168. package/dist/syllabi/dialogue/index.d.ts +1 -1
  169. package/dist/syllabi/dialogue/index.js +2 -2
  170. package/dist/syllabi/essentials/index.d.ts +1 -1
  171. package/dist/syllabi/essentials/index.js +2 -2
  172. package/dist/syllabi/food/index.d.ts +1 -1
  173. package/dist/syllabi/food/index.js +2 -2
  174. package/dist/syllabi/grammar/index.d.ts +1 -1
  175. package/dist/syllabi/grammar/index.js +2 -2
  176. package/dist/syllabi/numbers/index.d.ts +1 -1
  177. package/dist/syllabi/numbers/index.js +2 -2
  178. package/dist/syllabi/reading/index.d.ts +1 -1
  179. package/dist/syllabi/reading/index.js +2 -2
  180. package/dist/syllabi/travel/index.d.ts +1 -1
  181. package/dist/syllabi/travel/index.js +2 -2
  182. package/dist/syllabi/vowels-tones/index.d.ts +1 -1
  183. package/dist/syllabi/vowels-tones/index.js +2 -2
  184. package/package.json +10 -7
  185. package/src/syllabi/alphabet/lessons/lesson-01.mdx +24 -13
  186. package/src/syllabi/alphabet/lessons/lesson-02.mdx +23 -13
  187. package/src/syllabi/alphabet/lessons/lesson-03.mdx +20 -13
  188. package/src/syllabi/alphabet/lessons/lesson-04.mdx +21 -12
  189. package/src/syllabi/alphabet/lessons/lesson-05.mdx +22 -12
  190. package/src/syllabi/alphabet/lessons/lesson-06.mdx +22 -13
  191. package/src/syllabi/alphabet/lessons/lesson-07.mdx +26 -14
  192. package/src/syllabi/alphabet/lessons/lesson-08.mdx +24 -12
  193. package/src/syllabi/alphabet/lessons/lesson-09.mdx +26 -14
  194. package/src/syllabi/alphabet/lessons/lesson-10.mdx +24 -12
  195. package/src/syllabi/alphabet/lessons/lesson-11.mdx +24 -12
  196. package/src/syllabi/alphabet/lessons/lesson-12.mdx +32 -20
  197. package/src/syllabi/dialogue/lessons/lesson-01.mdx +13 -5
  198. package/src/syllabi/dialogue/lessons/lesson-02.mdx +13 -5
  199. package/src/syllabi/dialogue/lessons/lesson-03.mdx +13 -5
  200. package/src/syllabi/dialogue/lessons/lesson-04.mdx +16 -8
  201. package/src/syllabi/dialogue/lessons/lesson-05.mdx +16 -8
  202. package/src/syllabi/dialogue/lessons/lesson-06.mdx +16 -8
  203. package/src/syllabi/dialogue/lessons/lesson-07.mdx +16 -8
  204. package/src/syllabi/dialogue/lessons/lesson-08.mdx +16 -8
  205. package/src/syllabi/essentials/lessons/lesson-01.mdx +13 -5
  206. package/src/syllabi/essentials/lessons/lesson-02.mdx +16 -8
  207. package/src/syllabi/essentials/lessons/lesson-03.mdx +16 -8
  208. package/src/syllabi/essentials/lessons/lesson-04.mdx +16 -8
  209. package/src/syllabi/essentials/lessons/lesson-05.mdx +16 -8
  210. package/src/syllabi/essentials/lessons/lesson-06.mdx +16 -8
  211. package/src/syllabi/food/lessons/lesson-01.mdx +13 -5
  212. package/src/syllabi/food/lessons/lesson-02.mdx +16 -8
  213. package/src/syllabi/food/lessons/lesson-03.mdx +16 -8
  214. package/src/syllabi/food/lessons/lesson-04.mdx +16 -8
  215. package/src/syllabi/food/lessons/lesson-05.mdx +16 -8
  216. package/src/syllabi/food/lessons/lesson-06.mdx +16 -8
  217. package/src/syllabi/food/lessons/lesson-07.mdx +16 -8
  218. package/src/syllabi/food/lessons/lesson-08.mdx +16 -8
  219. package/src/syllabi/grammar/lessons/lesson-01.mdx +10 -4
  220. package/src/syllabi/grammar/lessons/lesson-02.mdx +10 -4
  221. package/src/syllabi/grammar/lessons/lesson-03.mdx +13 -7
  222. package/src/syllabi/grammar/lessons/lesson-04.mdx +13 -7
  223. package/src/syllabi/grammar/lessons/lesson-05.mdx +13 -7
  224. package/src/syllabi/grammar/lessons/lesson-06.mdx +13 -7
  225. package/src/syllabi/grammar/lessons/lesson-07.mdx +13 -7
  226. package/src/syllabi/grammar/lessons/lesson-08.mdx +13 -7
  227. package/src/syllabi/numbers/lessons/lesson-01.mdx +27 -15
  228. package/src/syllabi/numbers/lessons/lesson-02.mdx +20 -8
  229. package/src/syllabi/numbers/lessons/lesson-03.mdx +20 -8
  230. package/src/syllabi/numbers/lessons/lesson-04.mdx +20 -8
  231. package/src/syllabi/numbers/lessons/lesson-05.mdx +20 -8
  232. package/src/syllabi/reading/lessons/lesson-01.mdx +13 -7
  233. package/src/syllabi/reading/lessons/lesson-02.mdx +13 -7
  234. package/src/syllabi/reading/lessons/lesson-03.mdx +13 -7
  235. package/src/syllabi/reading/lessons/lesson-04.mdx +13 -7
  236. package/src/syllabi/reading/lessons/lesson-05.mdx +13 -7
  237. package/src/syllabi/reading/lessons/lesson-06.mdx +13 -7
  238. package/src/syllabi/reading/lessons/lesson-07.mdx +13 -7
  239. package/src/syllabi/reading/lessons/lesson-08.mdx +13 -7
  240. package/src/syllabi/reading/lessons/lesson-09.mdx +13 -7
  241. package/src/syllabi/reading/lessons/lesson-10.mdx +13 -7
  242. package/src/syllabi/travel/lessons/lesson-01.mdx +16 -8
  243. package/src/syllabi/travel/lessons/lesson-02.mdx +16 -8
  244. package/src/syllabi/travel/lessons/lesson-03.mdx +16 -8
  245. package/src/syllabi/travel/lessons/lesson-04.mdx +16 -8
  246. package/src/syllabi/travel/lessons/lesson-05.mdx +16 -8
  247. package/src/syllabi/travel/lessons/lesson-06.mdx +16 -8
  248. package/src/syllabi/travel/lessons/lesson-07.mdx +16 -8
  249. package/src/syllabi/vowels-tones/lessons/lesson-01.mdx +20 -8
  250. package/src/syllabi/vowels-tones/lessons/lesson-02.mdx +26 -14
  251. package/src/syllabi/vowels-tones/lessons/lesson-03.mdx +25 -13
  252. package/src/syllabi/vowels-tones/lessons/lesson-04.mdx +24 -12
  253. package/src/syllabi/vowels-tones/lessons/lesson-05.mdx +27 -15
  254. package/src/syllabi/vowels-tones/lessons/lesson-06.mdx +29 -17
  255. package/src/syllabi/vowels-tones/lessons/lesson-07.mdx +24 -12
  256. package/src/syllabi/vowels-tones/lessons/lesson-08.mdx +20 -8
  257. package/dist/index-DADMaTE7.js +0 -27
  258. package/dist/index-DADMaTE7.js.map +0 -1
  259. package/dist/lesson-01--9NOyHZ6.js.map +0 -1
  260. package/dist/lesson-01-3hBted4A.js.map +0 -1
  261. package/dist/lesson-01-97FtYE6g.js.map +0 -1
  262. package/dist/lesson-01-BNdHXAGR.js.map +0 -1
  263. package/dist/lesson-01-BYKAZiua.js.map +0 -1
  264. package/dist/lesson-01-BhjY6ArF.js.map +0 -1
  265. package/dist/lesson-01-CF4tJfZ3.js.map +0 -1
  266. package/dist/lesson-01-CRx-yw4C.js.map +0 -1
  267. package/dist/lesson-01-WV3ic8Ok.js.map +0 -1
  268. package/dist/lesson-02-B2Xg7RVU.js.map +0 -1
  269. package/dist/lesson-02-BAbq-QGP.js.map +0 -1
  270. package/dist/lesson-02-BGnp0Ik_.js.map +0 -1
  271. package/dist/lesson-02-BO3BXPMJ.js.map +0 -1
  272. package/dist/lesson-02-Bm9EJuN8.js.map +0 -1
  273. package/dist/lesson-02-C0ZL4z3c.js.map +0 -1
  274. package/dist/lesson-02-C2ALLvoT.js.map +0 -1
  275. package/dist/lesson-02-C8dfzXvq.js.map +0 -1
  276. package/dist/lesson-02-CsejVbCo.js.map +0 -1
  277. package/dist/lesson-03-8NtAeqFh.js.map +0 -1
  278. package/dist/lesson-03-BdZfKRhq.js.map +0 -1
  279. package/dist/lesson-03-CKTNtgY1.js.map +0 -1
  280. package/dist/lesson-03-D8va_Q9B.js.map +0 -1
  281. package/dist/lesson-03-DV2SUWVH.js.map +0 -1
  282. package/dist/lesson-03-DiV17_Os.js.map +0 -1
  283. package/dist/lesson-03-DrJgbfDQ.js.map +0 -1
  284. package/dist/lesson-03-XVahXvgf.js.map +0 -1
  285. package/dist/lesson-03-Xc8-2Yt3.js.map +0 -1
  286. package/dist/lesson-04-BpRrNmzO.js.map +0 -1
  287. package/dist/lesson-04-CtNr2B3E.js.map +0 -1
  288. package/dist/lesson-04-DEEPJ_rd.js.map +0 -1
  289. package/dist/lesson-04-D__vMCyA.js.map +0 -1
  290. package/dist/lesson-04-Dfc7S4nT.js.map +0 -1
  291. package/dist/lesson-04-DtXVhdGB.js.map +0 -1
  292. package/dist/lesson-04-ZrSBM0BX.js.map +0 -1
  293. package/dist/lesson-04-ioLXnB0j.js.map +0 -1
  294. package/dist/lesson-04-rapx_3vA.js.map +0 -1
  295. package/dist/lesson-05-Bm6fg-DJ.js.map +0 -1
  296. package/dist/lesson-05-CKxXcooO.js.map +0 -1
  297. package/dist/lesson-05-D1d3kc3M.js.map +0 -1
  298. package/dist/lesson-05-D2SVU-I0.js.map +0 -1
  299. package/dist/lesson-05-DBsHyFlt.js.map +0 -1
  300. package/dist/lesson-05-DXOLS7G0.js.map +0 -1
  301. package/dist/lesson-05-D_GdROUn.js.map +0 -1
  302. package/dist/lesson-05-DusKUtbm.js.map +0 -1
  303. package/dist/lesson-05-ip400cxe.js.map +0 -1
  304. package/dist/lesson-06-1CE05TRX.js.map +0 -1
  305. package/dist/lesson-06-1ZsbrE1a.js.map +0 -1
  306. package/dist/lesson-06-Aw-X-HMV.js.map +0 -1
  307. package/dist/lesson-06-BG26PBTF.js.map +0 -1
  308. package/dist/lesson-06-Bliedg7n.js.map +0 -1
  309. package/dist/lesson-06-CnKkcUb-.js.map +0 -1
  310. package/dist/lesson-06-CvN9pDsE.js.map +0 -1
  311. package/dist/lesson-06-Du9J8sYl.js.map +0 -1
  312. package/dist/lesson-07-8zdPFyjE.js.map +0 -1
  313. package/dist/lesson-07-B9bkJ3gP.js.map +0 -1
  314. package/dist/lesson-07-CTFSd9gF.js.map +0 -1
  315. package/dist/lesson-07-DezS1ojS.js.map +0 -1
  316. package/dist/lesson-07-DjCMCYkK.js.map +0 -1
  317. package/dist/lesson-07-X6anzbAn.js.map +0 -1
  318. package/dist/lesson-07-rvSSQiVh.js.map +0 -1
  319. package/dist/lesson-08-BYfkPBkH.js.map +0 -1
  320. package/dist/lesson-08-Bb_v_gD-.js.map +0 -1
  321. package/dist/lesson-08-BqW5C_OE.js.map +0 -1
  322. package/dist/lesson-08-CeDWopKc.js.map +0 -1
  323. package/dist/lesson-08-Cyzy_VeP.js.map +0 -1
  324. package/dist/lesson-08-hJlci9W5.js.map +0 -1
  325. package/dist/lesson-09-BQ1CZCjT.js.map +0 -1
  326. package/dist/lesson-09-DHRHZIc1.js.map +0 -1
  327. package/dist/lesson-10-BdfkVT7s.js.map +0 -1
  328. package/dist/lesson-10-C7YEQ8et.js.map +0 -1
  329. package/dist/lesson-11-oJQ8ZxJk.js.map +0 -1
  330. package/dist/lesson-12-D69m5ETy.js.map +0 -1
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 25
16
16
  prerequisites:
17
17
  - thai-reading-lesson-04
18
- objectives:
19
- - "Recognize warning sign patterns"
20
- - "Understand safety instructions"
21
- - "Read prohibition signs"
18
+ learningObjectives:
19
+ - id: obj-r5-warning-patterns
20
+ description: "Recognize warning sign patterns"
21
+ skill: pattern-recognition
22
+ - id: obj-r5-safety-instructions
23
+ description: "Understand safety instructions"
24
+ skill: reading-comprehension
25
+ - id: obj-r5-prohibition-signs
26
+ description: "Read prohibition signs"
27
+ skill: word-recognition
22
28
  ---
23
29
 
24
30
  # Warning Signs
@@ -73,7 +79,7 @@ No smoking in this area
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-5-warning-words" type="matching" title="Warning Word Recognition"}
82
+ :::exercise{id="reading-5-warning-words" type="matching" title="Warning Word Recognition" skill="pattern-recognition" objectiveId="obj-r5-warning-patterns"}
77
83
 
78
84
  **Question:** Match each warning word to its meaning
79
85
 
@@ -93,7 +99,7 @@ No smoking in this area
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-5-prohibition-signs" type="fill-in-blank" title="Prohibition Signs"}
102
+ :::exercise{id="reading-5-prohibition-signs" type="fill-in-blank" title="Prohibition Signs" skill="word-recognition" objectiveId="obj-r5-prohibition-signs"}
97
103
 
98
104
  **Question:** How do prohibition signs work in Thai?
99
105
 
@@ -111,7 +117,7 @@ Examples:
111
117
 
112
118
  :::
113
119
 
114
- :::exercise{id="reading-5-safety-instructions" type="multiple-choice" title="Safety Instructions"}
120
+ :::exercise{id="reading-5-safety-instructions" type="multiple-choice" title="Safety Instructions" skill="reading-comprehension" objectiveId="obj-r5-safety-instructions"}
115
121
 
116
122
  **Question:** What does "ทางหนีไฟ" mean?
117
123
 
@@ -134,4 +140,4 @@ In Lesson 6, you'll master directional signs — navigate using Thai directions,
134
140
  export {
135
141
  n as default
136
142
  };
137
- //# sourceMappingURL=lesson-05-D1d3kc3M.js.map
143
+ //# sourceMappingURL=lesson-05-CgXGkcjS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-CgXGkcjS.js","sources":["../src/syllabi/reading/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-reading-lesson-05\\ntitle: \\\"บทที่ 5 — ป้ายเตือน\\\"\\ndescription: \\\"Warning Signs: Read Thai warning and safety signs\\\"\\norder: 5\\nparentId: thai-reading\\ndifficulty: intermediate\\ncefrLevel: B1\\ncategories:\\n - reading\\n - safety\\n - signs\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-reading-lesson-04\\n learningObjectives:\\n - id: obj-r5-warning-patterns\\n description: \\\"Recognize warning sign patterns\\\"\\n skill: pattern-recognition\\n - id: obj-r5-safety-instructions\\n description: \\\"Understand safety instructions\\\"\\n skill: reading-comprehension\\n - id: obj-r5-prohibition-signs\\n description: \\\"Read prohibition signs\\\"\\n skill: word-recognition\\n---\\n\\n# Warning Signs\\n\\nWarning signs keep you safe. They follow consistent patterns across Thailand.\\n\\n## Warning Words\\n\\n| Thai | Romanization | English |\\n|------|--------------|---------|\\n| ระวัง | rawang | caution/beware |\\n| อันตราย | antarai | danger |\\n| ห้าม | ham | prohibited |\\n| เตือน | tuean | warning |\\n\\n## Common Warnings\\n\\n| Thai | Romanization | English |\\n|------|--------------|---------|\\n| ระวังรถ | rawang rot | watch for vehicles |\\n| ระวังหัว | rawang hua | watch your head |\\n| พื้นลื่น | phuen luen | slippery floor |\\n| ไฟฟ้าแรงสูง | faifa raeng sung | high voltage |\\n\\n## Prohibition Signs\\n\\n| Thai | Romanization | English |\\n|------|--------------|---------|\\n| ห้ามสูบบุหรี่ | ham sup buri | no smoking |\\n| ห้ามถ่ายรูป | ham thai rup | no photography |\\n| ห้ามเข้า | ham khao | no entry |\\n| ห้ามจับ | ham jap | do not touch |\\n\\n## Safety Instructions\\n\\n| Thai | Romanization | English |\\n|------|--------------|---------|\\n| ทางหนีไฟ | thang ni fai | fire escape |\\n| ถังดับเพลิง | thang dap phloeng | fire extinguisher |\\n| ทางออกฉุกเฉิน | thang ok chukchoen | emergency exit |\\n| จุดรวมพล | jut ruam phon | assembly point |\\n\\n## Practice Reading\\n\\n**ระวัง! พื้นลื่น**\\n*rawang! phuen luen*\\nCaution! Slippery floor\\n\\n**ห้ามสูบบุหรี่ในบริเวณนี้**\\n*ham sup buri nai boriwet ni*\\nNo smoking in this area\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"reading-5-warning-words\\\" type=\\\"matching\\\" title=\\\"Warning Word Recognition\\\" skill=\\\"pattern-recognition\\\" objectiveId=\\\"obj-r5-warning-patterns\\\"}\\n\\n**Question:** Match each warning word to its meaning\\n\\n- ระวัง\\n- อันตราย\\n- ห้าม\\n- เตือน\\n\\n**Answer:**\\n\\n- ระวัง → Caution/beware\\n- อันตราย → Danger\\n- ห้าม → Prohibited\\n- เตือน → Warning\\n\\n**Explanation:** These words appear on safety signs. ระวัง means \\\"be careful\\\", อันตราย means \\\"dangerous\\\", ห้าม means \\\"prohibited\\\", and เตือน means \\\"warning\\\". Learning these helps you stay safe.\\n\\n:::\\n\\n:::exercise{id=\\\"reading-5-prohibition-signs\\\" type=\\\"fill-in-blank\\\" title=\\\"Prohibition Signs\\\" skill=\\\"word-recognition\\\" objectiveId=\\\"obj-r5-prohibition-signs\\\"}\\n\\n**Question:** How do prohibition signs work in Thai?\\n\\n**Answer:**\\n\\nProhibition signs use the pattern: **ห้าม + [action]**\\n\\nExamples:\\n- ห้ามสูบบุหรี่ (no smoking)\\n- ห้ามถ่ายรูป (no photography)\\n- ห้ามเข้า (no entry)\\n- ห้ามจับ (do not touch)\\n\\n**Explanation:** ห้าม means \\\"prohibited\\\" and is followed by the action that's forbidden. This pattern is consistent across all prohibition signs.\\n\\n:::\\n\\n:::exercise{id=\\\"reading-5-safety-instructions\\\" type=\\\"multiple-choice\\\" title=\\\"Safety Instructions\\\" skill=\\\"reading-comprehension\\\" objectiveId=\\\"obj-r5-safety-instructions\\\"}\\n\\n**Question:** What does \\\"ทางหนีไฟ\\\" mean?\\n\\n**Options:**\\n- Fire escape\\n- Fire extinguisher\\n- Fire alarm\\n- Fire department\\n\\n**Answer:** 1\\n\\n**Explanation:** ทางหนีไฟ literally means \\\"fire escape way\\\" - the escape route in case of fire. ทาง means \\\"way/path\\\", หนี means \\\"escape\\\", ไฟ means \\\"fire\\\".\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll master directional signs — navigate using Thai directions, distance indicators, and facility locations.\\n\""],"names":["lesson05"],"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;"}
@@ -15,11 +15,19 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-essentials-lesson-04
18
- objectives:
19
- - "Express likes and dislikes"
20
- - "Describe emotions and states"
21
- - "Give simple opinions"
22
- - "Use intensifiers correctly"
18
+ learningObjectives:
19
+ - id: obj-emotions-likes-dislikes
20
+ description: "Express likes and dislikes"
21
+ skill: word-production
22
+ - id: obj-emotions-describe
23
+ description: "Describe emotions and states"
24
+ skill: word-recognition
25
+ - id: obj-emotions-opinions
26
+ description: "Give simple opinions"
27
+ skill: pattern-application
28
+ - id: obj-emotions-intensifiers
29
+ description: "Use intensifiers correctly"
30
+ skill: pattern-application
23
31
  ---
24
32
 
25
33
  # บทที่ 5 (Lesson 5) — Emotions & Opinions
@@ -172,7 +180,7 @@ Being able to express how you feel and what you think is essential for meaningfu
172
180
 
173
181
  ## Practice Exercises
174
182
 
175
- :::exercise{id="emotions-1-likes-dislikes" type="matching" title="Expressing Likes and Dislikes"}
183
+ :::exercise{id="emotions-1-likes-dislikes" type="matching" title="Expressing Likes and Dislikes" skill="word-recognition" objectiveId="obj-emotions-likes-dislikes"}
176
184
 
177
185
  **Question:** Match each phrase to its meaning
178
186
 
@@ -192,7 +200,7 @@ Being able to express how you feel and what you think is essential for meaningfu
192
200
 
193
201
  :::
194
202
 
195
- :::exercise{id="emotions-1-intensifiers" type="fill-in-blank" title="Using Intensifiers"}
203
+ :::exercise{id="emotions-1-intensifiers" type="fill-in-blank" title="Using Intensifiers" skill="pattern-application" objectiveId="obj-emotions-intensifiers"}
196
204
 
197
205
  **Question:** How do you intensify these phrases?
198
206
 
@@ -210,7 +218,7 @@ Being able to express how you feel and what you think is essential for meaningfu
210
218
 
211
219
  :::
212
220
 
213
- :::exercise{id="emotions-1-opinions" type="multiple-choice" title="Giving Opinions"}
221
+ :::exercise{id="emotions-1-opinions" type="multiple-choice" title="Giving Opinions" skill="pattern-application" objectiveId="obj-emotions-opinions"}
214
222
 
215
223
  **Question:** How do you say "I think it's good" in Thai?
216
224
 
@@ -233,4 +241,4 @@ In Lesson 6, you'll learn essential survival phrases — emergencies, directions
233
241
  export {
234
242
  n as default
235
243
  };
236
- //# sourceMappingURL=lesson-05-D2SVU-I0.js.map
244
+ //# sourceMappingURL=lesson-05-ClfrUrvX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-ClfrUrvX.js","sources":["../src/syllabi/essentials/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-essentials-lesson-05\\ntitle: \\\"บทที่ 5 — ความรู้สึกและความคิดเห็น\\\"\\ndescription: \\\"Emotions & Opinions: Expressing likes, dislikes, and feelings\\\"\\norder: 5\\nparentId: thai-essentials\\ndifficulty: beginner\\ncefrLevel: A1\\ncategories:\\n - emotions\\n - opinions\\n - adjectives\\nmetadata:\\n estimatedTime: 30\\n prerequisites:\\n - thai-essentials-lesson-04\\n learningObjectives:\\n - id: obj-emotions-likes-dislikes\\n description: \\\"Express likes and dislikes\\\"\\n skill: word-production\\n - id: obj-emotions-describe\\n description: \\\"Describe emotions and states\\\"\\n skill: word-recognition\\n - id: obj-emotions-opinions\\n description: \\\"Give simple opinions\\\"\\n skill: pattern-application\\n - id: obj-emotions-intensifiers\\n description: \\\"Use intensifiers correctly\\\"\\n skill: pattern-application\\n---\\n\\n# บทที่ 5 (Lesson 5) — Emotions & Opinions\\n\\n## Introduction\\n\\nBeing able to express how you feel and what you think is essential for meaningful connection. Thai has a rich vocabulary for emotions, and learning to express them helps you move beyond transactional conversations.\\n\\n## Expressing Likes\\n\\n### ชอบ (chɔ̂ɔp) — \\\"Like\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ผมชอบอาหารไทย | I like Thai food |\\n| ฉันชอบเมืองนี้ | I like this city |\\n| คุณชอบอะไร | What do you like? |\\n| ชอบมาก | Like it a lot |\\n\\n### รัก (rák) — \\\"Love\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ผมรักครอบครัว | I love my family |\\n| รักประเทศไทย | Love Thailand |\\n| รักคุณ | Love you |\\n\\n## Expressing Dislikes\\n\\n### ไม่ชอบ (mâi chɔ̂ɔp) — \\\"Don't like\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ไม่ชอบผักชี | Don't like cilantro |\\n| ไม่ชอบอากาศร้อน | Don't like hot weather |\\n| ไม่ค่อยชอบ | Don't really like (softer) |\\n\\n### เกลียด (glìat) — \\\"Hate\\\" (strong)\\n\\n| Thai | Meaning |\\n|------|---------|\\n| เกลียดยุง | Hate mosquitoes |\\n| เกลียดการรอ | Hate waiting |\\n\\n**Note**: เกลียด is quite strong. Use ไม่ค่อยชอบ for polite dislike.\\n\\n## Basic Emotions\\n\\n:::vocabulary-set{id=\\\"thai-emotions\\\" title=\\\"Emotions\\\"}\\n\\n::vocab-item{id=\\\"dii-jai\\\" word=\\\"ดีใจ\\\" pronunciation=\\\"dii-jai\\\" meaning=\\\"happy, glad\\\"}\\n\\n::vocab-item{id=\\\"sia-jai\\\" word=\\\"เสียใจ\\\" pronunciation=\\\"sǐa-jai\\\" meaning=\\\"sad, sorry\\\"}\\n\\n::vocab-item{id=\\\"geng\\\" word=\\\"เก่ง\\\" pronunciation=\\\"gèng\\\" meaning=\\\"talented, good at\\\"}\\n\\n::vocab-item{id=\\\"glua\\\" word=\\\"กลัว\\\" pronunciation=\\\"glua\\\" meaning=\\\"afraid, scared\\\"}\\n\\n::vocab-item{id=\\\"grohd\\\" word=\\\"โกรธ\\\" pronunciation=\\\"gròot\\\" meaning=\\\"angry\\\"}\\n\\n::vocab-item{id=\\\"bua\\\" word=\\\"เบื่อ\\\" pronunciation=\\\"bʉ̀a\\\" meaning=\\\"bored\\\"}\\n\\n::vocab-item{id=\\\"nuai\\\" word=\\\"เหนื่อย\\\" pronunciation=\\\"nʉ̀ai\\\" meaning=\\\"tired\\\"}\\n\\n::vocab-item{id=\\\"hiw\\\" word=\\\"หิว\\\" pronunciation=\\\"hǐw\\\" meaning=\\\"hungry\\\"}\\n\\n:::\\n\\n## States & Feelings\\n\\n| Thai | Meaning | Example |\\n|------|---------|---------|\\n| สบาย | comfortable, fine | สบายดี (I'm fine) |\\n| ร้อน | hot | ร้อนมาก (very hot) |\\n| หนาว | cold | หนาวไหม (Are you cold?) |\\n| อิ่ม | full (from eating) | อิ่มแล้ว (I'm full now) |\\n\\n## Intensifiers\\n\\n### มาก (mâak) — \\\"Very/A lot\\\"\\n\\n| Basic | Intensified |\\n|-------|-------------|\\n| ดี (good) | ดีมาก (very good) |\\n| ชอบ (like) | ชอบมาก (like a lot) |\\n| แพง (expensive) | แพงมาก (very expensive) |\\n\\n### ที่สุด (thîi-sùt) — \\\"The most\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ดีที่สุด | The best |\\n| ชอบที่สุด | Like the most |\\n| สวยที่สุด | The most beautiful |\\n\\n### นิดหน่อย (nít-nòi) — \\\"A little\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| เหนื่อยนิดหน่อย | A little tired |\\n| แพงนิดหน่อย | A little expensive |\\n| หิวนิดหน่อย | A little hungry |\\n\\n## Giving Opinions\\n\\n### คิดว่า (khít wâa) — \\\"Think that...\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ผมคิดว่าดี | I think it's good |\\n| คุณคิดว่าไง | What do you think? |\\n| คิดว่าไม่แพง | I think it's not expensive |\\n\\n### รู้สึกว่า (rúu-sʉ̀k wâa) — \\\"Feel that...\\\"\\n\\n| Thai | Meaning |\\n|------|---------|\\n| รู้สึกว่าเหนื่อย | I feel tired |\\n| รู้สึกว่าดี | I feel good/I feel it's good |\\n\\n## Agreement & Disagreement\\n\\n| Thai | Meaning | Tone |\\n|------|---------|------|\\n| เห็นด้วย | Agree | Neutral |\\n| ไม่เห็นด้วย | Disagree | Neutral |\\n| ใช่เลย | Exactly! | Enthusiastic |\\n| ไม่แน่ใจ | Not sure | Hesitant |\\n\\n## Common Conversations\\n\\n**Asking how someone feels:**\\n- A: รู้สึกยังไงครับ (How do you feel?)\\n- B: รู้สึกดีค่ะ (I feel good)\\n\\n**Sharing opinions:**\\n- A: คุณคิดว่าอาหารไทยเป็นยังไงครับ (What do you think of Thai food?)\\n- B: ชอบมากค่ะ อร่อยที่สุด (I like it a lot. The most delicious!)\\n\\n**Expressing state:**\\n- A: เหนื่อยไหมครับ (Are you tired?)\\n- B: เหนื่อยนิดหน่อยค่ะ (A little tired)\\n\\n## Key Points\\n\\n1. **ชอบ for likes**: Simple and versatile\\n2. **ไม่ค่อย softens**: \\\"Not really\\\" is gentler than \\\"don't\\\"\\n3. **มาก intensifies**: \\\"Very\\\" or \\\"a lot\\\"\\n4. **คิดว่า for opinions**: \\\"I think that...\\\"\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"emotions-1-likes-dislikes\\\" type=\\\"matching\\\" title=\\\"Expressing Likes and Dislikes\\\" skill=\\\"word-recognition\\\" objectiveId=\\\"obj-emotions-likes-dislikes\\\"}\\n\\n**Question:** Match each phrase to its meaning\\n\\n- ผมชอบอาหารไทย\\n- ไม่ค่อยชอบผักชี\\n- เกลียดยุง\\n- ชอบมาก\\n\\n**Answer:**\\n\\n- ผมชอบอาหารไทย → I like Thai food\\n- ไม่ค่อยชอบผักชี → Don't really like cilantro (polite)\\n- เกลียดยุง → Hate mosquitoes (strong)\\n- ชอบมาก → Like it a lot\\n\\n**Explanation:** ชอบ is for likes, ไม่ค่อยชอบ is a polite way to express dislike, and เกลียด is strong dislike. มาก intensifies any emotion or opinion.\\n\\n:::\\n\\n:::exercise{id=\\\"emotions-1-intensifiers\\\" type=\\\"fill-in-blank\\\" title=\\\"Using Intensifiers\\\" skill=\\\"pattern-application\\\" objectiveId=\\\"obj-emotions-intensifiers\\\"}\\n\\n**Question:** How do you intensify these phrases?\\n\\n- ดี (good)\\n- ชอบ (like)\\n- แพง (expensive)\\n\\n**Answer:**\\n\\n- ดี → ดี**มาก** (very good) or ดี**ที่สุด** (the best)\\n- ชอบ → ชอบ**มาก** (like a lot) or ชอบ**ที่สุด** (like the most)\\n- แพง → แพง**มาก** (very expensive) or แพง**ที่สุด** (the most expensive)\\n\\n**Explanation:** มาก means \\\"very\\\" or \\\"a lot\\\", while ที่สุด means \\\"the most\\\" or \\\"the best\\\". Use มาก for general intensification, ที่สุด for superlatives.\\n\\n:::\\n\\n:::exercise{id=\\\"emotions-1-opinions\\\" type=\\\"multiple-choice\\\" title=\\\"Giving Opinions\\\" skill=\\\"pattern-application\\\" objectiveId=\\\"obj-emotions-opinions\\\"}\\n\\n**Question:** How do you say \\\"I think it's good\\\" in Thai?\\n\\n**Options:**\\n- ผมดี\\n- ผมคิดว่าดี\\n- ผมรู้สึกว่าดี\\n- ผมชอบดี\\n\\n**Answer:** 2\\n\\n**Explanation:** คิดว่า means \\\"think that\\\" and is used for opinions. รู้สึกว่า means \\\"feel that\\\" and is more for physical/emotional states. The pattern is: subject + คิดว่า + opinion.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll learn essential survival phrases — emergencies, directions, and getting help.\\n\""],"names":["lesson05"],"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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -16,11 +16,21 @@ metadata:
16
16
  estimatedTime: 25
17
17
  prerequisites:
18
18
  - thai-script-lesson-04
19
- objectives:
20
- - "Learn 4 common low-class consonants"
21
- - "Understand low-class tone behavior"
22
- - "Compare paired consonants across classes"
23
- - "Practice the NG sound"
19
+ learningObjectives:
20
+ - id: obj-low-consonants-1
21
+ description: "Learn 4 common low-class consonants"
22
+ skill: character-recognition
23
+ references: [mouse, snake, ring, buffalo]
24
+ - id: obj-low-tone
25
+ description: "Understand low-class tone behavior"
26
+ skill: character-class-identification
27
+ - id: obj-paired-consonants
28
+ description: "Compare paired consonants across classes"
29
+ skill: character-class-identification
30
+ - id: obj-ng-sound
31
+ description: "Practice the NG sound"
32
+ skill: character-sound-mapping
33
+ references: [snake]
24
34
  ---
25
35
 
26
36
  # บทที่ 5 (Lesson 5) — Low-Class Consonants I
@@ -41,13 +51,13 @@ This makes low-class tone rules slightly more complex — but still predictable
41
51
 
42
52
  :::character-set{id="thai-low-consonants-1" title="Low-Class Consonants I"}
43
53
 
44
- ::character{id="th-mouse" char="น" name="น หนู (nɔɔ nǔu)" nativeName="น หนู" transliteration="n" charType="consonant"}
54
+ ::character{id="mouse" canonicalRef="mouse" data:class="low" char="น" name="น หนู (nɔɔ nǔu)" nativeName="น หนู" transliteration="n" charType="consonant"}
45
55
 
46
- ::character{id="th-snake" char="ง" name="ง งู (ngɔɔ nguu)" nativeName="ง งู" transliteration="ng" charType="consonant"}
56
+ ::character{id="snake" canonicalRef="snake" data:class="low" char="ง" name="ง งู (ngɔɔ nguu)" nativeName="ง งู" transliteration="ng" charType="consonant"}
47
57
 
48
- ::character{id="th-ring" char="ว" name="ว แหวน (wɔɔ wǎaen)" nativeName="ว แหวน" transliteration="w" charType="consonant"}
58
+ ::character{id="ring" canonicalRef="ring" data:class="low" char="ว" name="ว แหวน (wɔɔ wǎaen)" nativeName="ว แหวน" transliteration="w" charType="consonant"}
49
59
 
50
- ::character{id="th-buffalo" char="ค" name="ค ควาย (khɔɔ khwaai)" nativeName="ค ควาย" transliteration="kh/k" charType="consonant"}
60
+ ::character{id="buffalo" canonicalRef="buffalo" data:class="low" char="ค" name="ค ควาย (khɔɔ khwaai)" nativeName="ค ควาย" transliteration="kh/k" charType="consonant"}
51
61
 
52
62
  :::
53
63
 
@@ -132,7 +142,7 @@ All nasals are low-class. To get high-class tones with nasals, use ห:
132
142
 
133
143
  ## Practice Exercises
134
144
 
135
- :::exercise{id="low-1-ng-practice" type="fill-in-blank" title="NG Sound Practice"}
145
+ :::exercise{id="low-1-ng-practice" type="fill-in-blank" title="NG Sound Practice" skill="character-sound-mapping" tests="snake" objectiveId="obj-ng-sound"}
136
146
 
137
147
  **Question:** Practice the NG initial sound. Which word starts with NG?
138
148
 
@@ -146,7 +156,7 @@ All nasals are low-class. To get high-class tones with nasals, use ห:
146
156
 
147
157
  :::
148
158
 
149
- :::exercise{id="low-1-pairing" type="matching" title="Consonant Pairing"}
159
+ :::exercise{id="low-1-pairing" type="matching" title="Consonant Pairing" skill="character-class-identification" tests="buffalo,mouse,snake,ring" objectiveId="obj-paired-consonants"}
150
160
 
151
161
  **Question:** Match each low-class consonant with its high-class pair (if it has one)
152
162
 
@@ -166,7 +176,7 @@ All nasals are low-class. To get high-class tones with nasals, use ห:
166
176
 
167
177
  :::
168
178
 
169
- :::exercise{id="low-1-tone-comparison" type="multiple-choice" title="Tone Comparison"}
179
+ :::exercise{id="low-1-tone-comparison" type="multiple-choice" title="Tone Comparison" skill="character-class-identification" objectiveId="obj-low-tone"}
170
180
 
171
181
  **Question:** Which syllable has a mid tone in a live syllable (open ending)?
172
182
 
@@ -188,4 +198,4 @@ In Lesson 6, you'll learn more low-class consonants including ช (elephant),
188
198
  export {
189
199
  n as default
190
200
  };
191
- //# sourceMappingURL=lesson-05-CKxXcooO.js.map
201
+ //# sourceMappingURL=lesson-05-D2zf9n7k.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-D2zf9n7k.js","sources":["../src/syllabi/alphabet/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-script-lesson-05\\ntitle: \\\"บทที่ 5 — พยัญชนะต่ำ I\\\"\\ndescription: \\\"Low-Class Consonants Part 1: น ง ว ค — The most common low-class consonants\\\"\\norder: 5\\nparentId: thai-script-alphabet\\ndifficulty: intermediate\\ncefrLevel: A2\\ncategories:\\n - consonants\\n - low-class\\n - nasal\\n - basic-characters\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-script-lesson-04\\n learningObjectives:\\n - id: obj-low-consonants-1\\n description: \\\"Learn 4 common low-class consonants\\\"\\n skill: character-recognition\\n references: [mouse, snake, ring, buffalo]\\n - id: obj-low-tone\\n description: \\\"Understand low-class tone behavior\\\"\\n skill: character-class-identification\\n - id: obj-paired-consonants\\n description: \\\"Compare paired consonants across classes\\\"\\n skill: character-class-identification\\n - id: obj-ng-sound\\n description: \\\"Practice the NG sound\\\"\\n skill: character-sound-mapping\\n references: [snake]\\n---\\n\\n# บทที่ 5 (Lesson 5) — Low-Class Consonants I\\n\\n## Introduction\\n\\nWelcome to **low-class consonants** (พยัญชนะต่ำ) — the largest group with 24 members! These consonants were historically \\\"voiced\\\" sounds (made with vocal cord vibration), which is why they're grouped together despite having different sounds today.\\n\\n## Why \\\"Low\\\" Class?\\n\\nThe name comes from tone behavior:\\n- In live syllables, low-class consonants produce **mid tone** (like middle-class)\\n- In dead syllables, they produce **high tone** or **falling tone** (unlike middle-class)\\n\\nThis makes low-class tone rules slightly more complex — but still predictable once you learn the patterns.\\n\\n## Characters\\n\\n:::character-set{id=\\\"thai-low-consonants-1\\\" title=\\\"Low-Class Consonants I\\\"}\\n\\n::character{id=\\\"mouse\\\" canonicalRef=\\\"mouse\\\" data:class=\\\"low\\\" char=\\\"น\\\" name=\\\"น หนู (nɔɔ nǔu)\\\" nativeName=\\\"น หนู\\\" transliteration=\\\"n\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"snake\\\" canonicalRef=\\\"snake\\\" data:class=\\\"low\\\" char=\\\"ง\\\" name=\\\"ง งู (ngɔɔ nguu)\\\" nativeName=\\\"ง งู\\\" transliteration=\\\"ng\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"ring\\\" canonicalRef=\\\"ring\\\" data:class=\\\"low\\\" char=\\\"ว\\\" name=\\\"ว แหวน (wɔɔ wǎaen)\\\" nativeName=\\\"ว แหวน\\\" transliteration=\\\"w\\\" charType=\\\"consonant\\\"}\\n\\n::character{id=\\\"buffalo\\\" canonicalRef=\\\"buffalo\\\" data:class=\\\"low\\\" char=\\\"ค\\\" name=\\\"ค ควาย (khɔɔ khwaai)\\\" nativeName=\\\"ค ควาย\\\" transliteration=\\\"kh/k\\\" charType=\\\"consonant\\\"}\\n\\n:::\\n\\n## The NG Sound: Thailand's Gift to Learners\\n\\n**ง** represents the NG sound — the same sound at the END of English \\\"sing\\\". But in Thai, NG can START a syllable!\\n\\nThis is challenging for English speakers because we never begin words with NG:\\n- ง่าย (ngâai) = easy\\n- งู (nguu) = snake\\n- เงิน (ngəən) = money\\n\\n**Practice tip**: Say \\\"sing\\\" and hold the final NG. Now try adding a vowel: \\\"ng...aa\\\". That's how Thai NG-initial words work!\\n\\n## The Paired System\\n\\nLow-class consonants often pair with high-class consonants:\\n\\n| Low-Class | High-Class | Sound | Example |\\n|-----------|------------|-------|---------|\\n| ค (buffalo) | ข (egg) | kh | Both = aspirated K |\\n| ง (snake) | — | ng | No high-class pair |\\n| น (mouse) | — | n | No high-class pair (but ห can lift it) |\\n| ว (ring) | — | w | No high-class pair |\\n\\nWhen a low-class consonant has no high-class pair, **ห** steps in as the \\\"tone lifter\\\":\\n- หน (hn) = low-class น treated as high for tone\\n- หง (hng) = same for ง\\n- หว (hw) = same for ว\\n\\n## Sound Changes\\n\\n| Consonant | Initial Sound | Final Sound | Example |\\n|-----------|---------------|-------------|---------|\\n| น | **n** | **n** | นา (naa) / วัน (wan) |\\n| ง | **ng** | **ng** | งู (nguu) / วัง (wang) |\\n| ว | **w** | **o** (vowel-like) | วัน (wan) / แมว (maaeo) |\\n| ค | **kh** | **k** | คา (khaa) / รัก (rák) |\\n\\n**Note**: Final ว often sounds like a vowel (/o/ or /u/), creating diphthongs.\\n\\n## Low vs Middle-Class Tones\\n\\nCompare the same syllable pattern with different consonant classes:\\n\\n| Syllable | Class | Tone | Sound |\\n|----------|-------|------|-------|\\n| กา | Middle | Mid | gaa (—) |\\n| ขา | High | Rising | khǎa (//) |\\n| คา | Low | Mid | khaa (—) |\\n\\nAll three use the same vowel (า), but the tone differs based on consonant class!\\n\\n## The Nasal Family\\n\\nThai has 5 nasal consonants:\\n| Consonant | Sound | Class |\\n|-----------|-------|-------|\\n| ม | m | Low |\\n| น | n | Low |\\n| ง | ng | Low |\\n| ณ | n | Low (rare) |\\n| ญ | y/n | Low |\\n\\nAll nasals are low-class. To get high-class tones with nasals, use ห:\\n- หม, หน, หง (silent ห lifts the tone)\\n\\n## Key Points\\n\\n1. **Low-class = 24 consonants**: The biggest group\\n2. **NG can start syllables**: Practice \\\"ng...aa\\\" to master this\\n3. **Paired with high-class**: ค pairs with ข (same sound, different tone)\\n4. **ห as lifter**: หน หง หว give high-class tones with low-class sounds\\n5. **Final ว = vowel-like**: Creates diphthongs like แมว (maaeo)\\n\\n## Shape Recognition\\n\\n- **น** has a long tail curving down\\n- **ง** is compact, like a squiggle\\n- **ว** looks like a cursive oval\\n- **ค** resembles ก/ข family but with low-class marker\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"low-1-ng-practice\\\" type=\\\"fill-in-blank\\\" title=\\\"NG Sound Practice\\\" skill=\\\"character-sound-mapping\\\" tests=\\\"snake\\\" objectiveId=\\\"obj-ng-sound\\\"}\\n\\n**Question:** Practice the NG initial sound. Which word starts with NG?\\n\\n- ง่าย (ngâai) - easy\\n- งู (nguu) - snake\\n- เงิน (ngəən) - money\\n\\n**Answer:** All three words start with ง (ng). Practice saying \\\"sing\\\" and holding the final NG sound, then add a vowel.\\n\\n**Explanation:** The NG sound can start syllables in Thai, which is challenging for English speakers. Practice by holding the NG from \\\"sing\\\" and adding vowels.\\n\\n:::\\n\\n:::exercise{id=\\\"low-1-pairing\\\" type=\\\"matching\\\" title=\\\"Consonant Pairing\\\" skill=\\\"character-class-identification\\\" tests=\\\"buffalo,mouse,snake,ring\\\" objectiveId=\\\"obj-paired-consonants\\\"}\\n\\n**Question:** Match each low-class consonant with its high-class pair (if it has one)\\n\\n- ค (buffalo)\\n- น (mouse)\\n- ง (snake)\\n- ว (ring)\\n\\n**Answer:**\\n\\n- ค pairs with ข (both = kh sound)\\n- น pairs with ห (ห lifts น to high-class tone)\\n- ง pairs with ห (ห lifts ง to high-class tone)\\n- ว pairs with ห (ห lifts ว to high-class tone)\\n\\n**Explanation:** Low-class consonants without high-class pairs use ห as a \\\"tone lifter\\\" to achieve high-class tone behavior.\\n\\n:::\\n\\n:::exercise{id=\\\"low-1-tone-comparison\\\" type=\\\"multiple-choice\\\" title=\\\"Tone Comparison\\\" skill=\\\"character-class-identification\\\" objectiveId=\\\"obj-low-tone\\\"}\\n\\n**Question:** Which syllable has a mid tone in a live syllable (open ending)?\\n\\n**Options:**\\n- กา (middle-class ก)\\n- ขา (high-class ข)\\n- คา (low-class ค)\\n\\n**Answer:** Both 1 and 3\\n\\n**Explanation:** Both middle-class กา and low-class คา produce mid tone in live syllables. High-class ขา produces rising tone. The consonant class determines the base tone.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll learn more low-class consonants including ช (elephant), ซ (chain), and ฮ (owl).\\n\""],"names":["lesson05"],"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;"}
@@ -15,11 +15,23 @@ metadata:
15
15
  estimatedTime: 25
16
16
  prerequisites:
17
17
  - thai-numbers-lesson-04
18
- objectives:
19
- - "Handle money and prices confidently"
20
- - "Say and understand phone numbers"
21
- - "Use numbers in shopping situations"
22
- - "Ask about prices and quantities"
18
+ learningObjectives:
19
+ - id: obj-handle-money-prices
20
+ description: "Handle money and prices confidently"
21
+ skill: word-production
22
+ references: [num-zero, num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]
23
+ - id: obj-say-phone-numbers
24
+ description: "Say and understand phone numbers"
25
+ skill: word-pronunciation
26
+ references: [num-zero, num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]
27
+ - id: obj-numbers-shopping
28
+ description: "Use numbers in shopping situations"
29
+ skill: word-recognition
30
+ references: [num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]
31
+ - id: obj-ask-prices-quantities
32
+ description: "Ask about prices and quantities"
33
+ skill: word-production
34
+ references: [num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]
23
35
  ---
24
36
 
25
37
  # บทที่ 5 (Lesson 5) — Money & Practical Numbers
@@ -146,7 +158,7 @@ Try these in Thai:
146
158
 
147
159
  ## Practice Exercises
148
160
 
149
- :::exercise{id="numbers-5-price-practice" type="fill-in-blank" title="Price Practice"}
161
+ :::exercise{id="numbers-5-price-practice" type="fill-in-blank" title="Price Practice" skill="word-production" objectiveId="obj-handle-money-prices"}
150
162
 
151
163
  **Question:** How do you say these prices in Thai?
152
164
 
@@ -164,7 +176,7 @@ Try these in Thai:
164
176
 
165
177
  :::
166
178
 
167
- :::exercise{id="numbers-5-phone-numbers" type="matching" title="Phone Number Practice"}
179
+ :::exercise{id="numbers-5-phone-numbers" type="matching" title="Phone Number Practice" skill="word-pronunciation" tests="num-zero,num-one,num-two,num-three,num-four,num-five,num-six,num-seven,num-eight" objectiveId="obj-say-phone-numbers"}
168
180
 
169
181
  **Question:** How do you say this phone number: 081-234-5678?
170
182
 
@@ -176,7 +188,7 @@ Try these in Thai:
176
188
 
177
189
  :::
178
190
 
179
- :::exercise{id="numbers-5-classifiers" type="multiple-choice" title="Using Classifiers"}
191
+ :::exercise{id="numbers-5-classifiers" type="multiple-choice" title="Using Classifiers" skill="word-recognition" tests="num-three" objectiveId="obj-numbers-shopping"}
180
192
 
181
193
  **Question:** How do you say "3 dogs" in Thai?
182
194
 
@@ -205,4 +217,4 @@ Keep practicing in real situations — numbers are the foundation for so much of
205
217
  export {
206
218
  n as default
207
219
  };
208
- //# sourceMappingURL=lesson-05-DusKUtbm.js.map
220
+ //# sourceMappingURL=lesson-05-DWquBfdl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-DWquBfdl.js","sources":["../src/syllabi/numbers/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-numbers-lesson-05\\ntitle: \\\"บทที่ 5 — เงินและตัวเลขในชีวิตจริง\\\"\\ndescription: \\\"Money & Practical Numbers: Prices, phone numbers, and real-world usage\\\"\\norder: 5\\nparentId: thai-numbers\\ndifficulty: beginner\\ncefrLevel: A1\\ncategories:\\n - numbers\\n - money\\n - practical\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-numbers-lesson-04\\n learningObjectives:\\n - id: obj-handle-money-prices\\n description: \\\"Handle money and prices confidently\\\"\\n skill: word-production\\n references: [num-zero, num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]\\n - id: obj-say-phone-numbers\\n description: \\\"Say and understand phone numbers\\\"\\n skill: word-pronunciation\\n references: [num-zero, num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]\\n - id: obj-numbers-shopping\\n description: \\\"Use numbers in shopping situations\\\"\\n skill: word-recognition\\n references: [num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]\\n - id: obj-ask-prices-quantities\\n description: \\\"Ask about prices and quantities\\\"\\n skill: word-production\\n references: [num-one, num-two, num-three, num-four, num-five, num-six, num-seven, num-eight, num-nine]\\n---\\n\\n# บทที่ 5 (Lesson 5) — Money & Practical Numbers\\n\\n## Introduction\\n\\nNumbers are everywhere in daily life — prices, phone numbers, addresses, quantities. This lesson focuses on practical situations where you'll use Thai numbers every day.\\n\\n## Thai Currency\\n\\nThailand uses the **Baht** (บาท, bàat) with **Satang** (สตางค์, sà-dtaang) as the smaller unit.\\n\\n- 1 Baht = 100 Satang\\n- Coins: 1, 2, 5, 10 Baht; 25, 50 Satang\\n- Notes: 20, 50, 100, 500, 1000 Baht\\n\\n## Saying Prices\\n\\n**Structure**: [number] + บาท + (สตางค์)\\n\\n| Price | Thai |\\n|-------|------|\\n| ฿50 | ห้าสิบบาท |\\n| ฿199 | หนึ่งร้อยเก้าสิบเก้าบาท |\\n| ฿2,500 | สองพันห้าร้อยบาท |\\n| ฿35.50 | สามสิบห้าบาทห้าสิบสตางค์ |\\n\\n## Asking About Prices\\n\\n| Thai | Meaning |\\n|------|---------|\\n| เท่าไหร่ (thâo-rài) | How much? |\\n| ราคาเท่าไหร่ (raa-khaa thâo-rài) | What's the price? |\\n| อันนี้เท่าไหร่ (an-níi thâo-rài) | How much is this? |\\n| แพงไป (phaeng bpai) | Too expensive |\\n| ลดได้ไหม (lót dâi mǎi) | Can you reduce? |\\n\\n## Phone Numbers\\n\\nThai phone numbers are said digit by digit:\\n\\n| Format | Example | How to Say |\\n|--------|---------|------------|\\n| Mobile | 081-234-5678 | ศูนย์แปดหนึ่ง-สองสามสี่-ห้าหกเจ็ดแปด |\\n| Landline | 02-123-4567 | ศูนย์สอง-หนึ่งสองสาม-สี่ห้าหกเจ็ด |\\n\\n**Tip**: Zero is often said as ศูนย์ (sǒon) in phone numbers, not โอ.\\n\\n## Quantities & Classifiers\\n\\nWhen counting things, Thai uses classifiers:\\n\\n**Structure**: [noun] + [number] + [classifier]\\n\\n| Classifier | Used For | Example |\\n|------------|----------|---------|\\n| คน (khon) | people | คน ๓ คน (3 people) |\\n| ตัว (dtua) | animals | หมา ๒ ตัว (2 dogs) |\\n| อัน (an) | small objects | ปากกา ๕ อัน (5 pens) |\\n| ใบ (bai) | flat things | กระดาษ ๑๐ ใบ (10 papers) |\\n| เล่ม (lêm) | books | หนังสือ ๓ เล่ม (3 books) |\\n| ขวด (khùat) | bottles | น้ำ ๒ ขวด (2 bottles) |\\n| ถุง (thǔng) | bags | ข้าว ๑ ถุง (1 bag of rice) |\\n| จาน (jaan) | plates/dishes | ข้าวผัด ๒ จาน (2 fried rice) |\\n\\n## Shopping Phrases\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ขอ...หนึ่ง (khǎw ... nʉ̀ng) | I'd like one... |\\n| เอา...สอง (ao ... sǒng) | I'll take two... |\\n| ขอดูหน่อย (khǎw duu nòi) | Can I see? |\\n| มีไหม (mii mǎi) | Do you have? |\\n| หมดแล้ว (mòt láew) | Sold out |\\n\\n## Ordinal Numbers\\n\\nTo make ordinal numbers, add ที่ (thîi) before the number:\\n\\n| Ordinal | Thai |\\n|---------|------|\\n| 1st | ที่หนึ่ง (thîi nʉ̀ng) |\\n| 2nd | ที่สอง (thîi sǒng) |\\n| 3rd | ที่สาม (thîi sǎam) |\\n| first floor | ชั้นที่หนึ่ง |\\n| second place | อันดับที่สอง |\\n\\n## Fractions & Decimals\\n\\n| Concept | Thai |\\n|---------|------|\\n| half | ครึ่ง (khrʉ̂ng) |\\n| quarter | หนึ่งส่วนสี่ (nʉ̀ng sùan sìi) |\\n| 2.5 | สองจุดห้า (sǒng jùt hâa) |\\n| percent | เปอร์เซ็นต์ (bpəə-sen) |\\n\\n## Real Conversations\\n\\n**At a market:**\\n- คุณ: อันนี้เท่าไหร่ครับ/คะ (How much is this?)\\n- ขาย: สามร้อยห้าสิบบาท (350 baht)\\n- คุณ: ลดได้ไหม (Can you reduce?)\\n- ขาย: สามร้อยได้ (300 is okay)\\n\\n**At a restaurant:**\\n- คุณ: ขอข้าวผัดสองจานครับ/ค่ะ (Two fried rice please)\\n- พนักงาน: รับอะไรดื่มไหม (Any drinks?)\\n- คุณ: น้ำเปล่าสองขวด (Two water bottles)\\n\\n## Key Points\\n\\n1. **บาท for currency**: Always add บาท after the amount\\n2. **Classifiers required**: Can't just say \\\"3 dogs\\\" — need ตัว\\n3. **Digit by digit**: Phone numbers are said one digit at a time\\n4. **ที่ for ordinals**: Prefix for 1st, 2nd, 3rd, etc.\\n\\n## Practice Scenarios\\n\\nTry these in Thai:\\n1. Ask for the price of something\\n2. Say your phone number\\n3. Order 3 coffees (กาแฟ, classifier = แก้ว/ถ้วย)\\n4. Say \\\"too expensive, can you reduce?\\\"\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"numbers-5-price-practice\\\" type=\\\"fill-in-blank\\\" title=\\\"Price Practice\\\" skill=\\\"word-production\\\" objectiveId=\\\"obj-handle-money-prices\\\"}\\n\\n**Question:** How do you say these prices in Thai?\\n\\n- ฿199\\n- ฿2,500\\n- ฿35.50\\n\\n**Answer:**\\n\\n- ฿199 → หนึ่งร้อยเก้าสิบเก้าบาท\\n- ฿2,500 → สองพันห้าร้อยบาท\\n- ฿35.50 → สามสิบห้าบาทห้าสิบสตางค์\\n\\n**Explanation:** Always add บาท after the baht amount. For prices with satang (cents), add the satang amount after บาท. Remember to use เอ็ด for numbers ending in 1 in compounds.\\n\\n:::\\n\\n:::exercise{id=\\\"numbers-5-phone-numbers\\\" type=\\\"matching\\\" title=\\\"Phone Number Practice\\\" skill=\\\"word-pronunciation\\\" tests=\\\"num-zero,num-one,num-two,num-three,num-four,num-five,num-six,num-seven,num-eight\\\" objectiveId=\\\"obj-say-phone-numbers\\\"}\\n\\n**Question:** How do you say this phone number: 081-234-5678?\\n\\n**Answer:**\\n\\nศูนย์แปดหนึ่ง-สองสามสี่-ห้าหกเจ็ดแปด\\n\\n**Explanation:** Thai phone numbers are said digit by digit. Zero is usually said as ศูนย์ (sǒon), not โอ. Say each digit clearly, pausing at the dashes.\\n\\n:::\\n\\n:::exercise{id=\\\"numbers-5-classifiers\\\" type=\\\"multiple-choice\\\" title=\\\"Using Classifiers\\\" skill=\\\"word-recognition\\\" tests=\\\"num-three\\\" objectiveId=\\\"obj-numbers-shopping\\\"}\\n\\n**Question:** How do you say \\\"3 dogs\\\" in Thai?\\n\\n**Options:**\\n- หมา 3\\n- 3 หมา\\n- หมา 3 ตัว\\n- หมา 3 ตัว\\n\\n**Answer:** 3\\n\\n**Explanation:** Thai requires classifiers when counting. The pattern is: [noun] + [number] + [classifier]. For animals, use ตัว. So \\\"3 dogs\\\" is หมา 3 ตัว (or หมา สาม ตัว if using Thai numerals).\\n\\n:::\\n\\n## Congratulations!\\n\\nYou've completed the Thai Numbers course! You can now:\\n- Read Thai numerals\\n- Count to millions\\n- Tell time and read dates\\n- Handle money and everyday number situations\\n\\nKeep practicing in real situations — numbers are the foundation for so much of daily communication!\\n\""],"names":["lesson05"],"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;"}
@@ -15,11 +15,19 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-food-lesson-04
18
- objectives:
19
- - "Order food confidently"
20
- - "Ask questions about dishes"
21
- - "Request modifications"
22
- - "Pay the bill"
18
+ learningObjectives:
19
+ - id: obj-order-food-confidently
20
+ description: "Order food confidently"
21
+ skill: pattern-application
22
+ - id: obj-ask-about-dishes
23
+ description: "Ask questions about dishes"
24
+ skill: situational-response
25
+ - id: obj-request-modifications
26
+ description: "Request modifications"
27
+ skill: pattern-application
28
+ - id: obj-pay-bill
29
+ description: "Pay the bill"
30
+ skill: situational-response
23
31
  ---
24
32
 
25
33
  # บทที่ 5 (Lesson 5) — Restaurant Phrases
@@ -170,7 +178,7 @@ With your food vocabulary, you're ready to put it into action. This lesson cover
170
178
 
171
179
  ## Practice Exercises
172
180
 
173
- :::exercise{id="food-5-ordering-patterns" type="matching" title="Ordering Pattern Recognition"}
181
+ :::exercise{id="food-5-ordering-patterns" type="matching" title="Ordering Pattern Recognition" skill="pattern-recognition" objectiveId="obj-order-food-confidently"}
174
182
 
175
183
  **Question:** Match each ordering phrase to its meaning
176
184
 
@@ -190,7 +198,7 @@ With your food vocabulary, you're ready to put it into action. This lesson cover
190
198
 
191
199
  :::
192
200
 
193
- :::exercise{id="food-5-modifications" type="fill-in-blank" title="Making Modifications"}
201
+ :::exercise{id="food-5-modifications" type="fill-in-blank" title="Making Modifications" skill="pattern-application" objectiveId="obj-request-modifications"}
194
202
 
195
203
  **Question:** How do you make these requests?
196
204
 
@@ -210,7 +218,7 @@ With your food vocabulary, you're ready to put it into action. This lesson cover
210
218
 
211
219
  :::
212
220
 
213
- :::exercise{id="food-5-payment" type="multiple-choice" title="Paying the Bill"}
221
+ :::exercise{id="food-5-payment" type="multiple-choice" title="Paying the Bill" skill="situational-response" objectiveId="obj-pay-bill"}
214
222
 
215
223
  **Question:** What's the most common way to ask for the bill in Thailand?
216
224
 
@@ -233,4 +241,4 @@ In Lesson 6, you'll master street food vocabulary — Thailand's most exciting f
233
241
  export {
234
242
  n as default
235
243
  };
236
- //# sourceMappingURL=lesson-05-Bm6fg-DJ.js.map
244
+ //# sourceMappingURL=lesson-05-DpIkwhJ8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-DpIkwhJ8.js","sources":["../src/syllabi/food/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-food-lesson-05\\ntitle: \\\"บทที่ 5 — ภาษาในร้านอาหาร\\\"\\ndescription: \\\"Restaurant Phrases: Ordering, asking questions, and paying\\\"\\norder: 5\\nparentId: thai-food\\ndifficulty: beginner\\ncefrLevel: A2\\ncategories:\\n - food\\n - restaurant\\n - phrases\\nmetadata:\\n estimatedTime: 30\\n prerequisites:\\n - thai-food-lesson-04\\n learningObjectives:\\n - id: obj-order-food-confidently\\n description: \\\"Order food confidently\\\"\\n skill: pattern-application\\n - id: obj-ask-about-dishes\\n description: \\\"Ask questions about dishes\\\"\\n skill: situational-response\\n - id: obj-request-modifications\\n description: \\\"Request modifications\\\"\\n skill: pattern-application\\n - id: obj-pay-bill\\n description: \\\"Pay the bill\\\"\\n skill: situational-response\\n---\\n\\n# บทที่ 5 (Lesson 5) — Restaurant Phrases\\n\\n## Introduction\\n\\nWith your food vocabulary, you're ready to put it into action. This lesson covers the complete restaurant experience — from being seated to paying the bill.\\n\\n## Arriving & Being Seated\\n\\n:::vocabulary-set{id=\\\"thai-seating\\\" title=\\\"Seating Phrases\\\"}\\n\\n::vocab-item{id=\\\"to-wang\\\" word=\\\"โต๊ะว่าง\\\" pronunciation=\\\"dtó wâang\\\" meaning=\\\"available table\\\"}\\n\\n::vocab-item{id=\\\"kii-kon\\\" word=\\\"กี่คน\\\" pronunciation=\\\"gìi khon\\\" meaning=\\\"how many people\\\"}\\n\\n::vocab-item{id=\\\"jong-to\\\" word=\\\"จองโต๊ะ\\\" pronunciation=\\\"joong dtó\\\" meaning=\\\"reserve a table\\\"}\\n\\n::vocab-item{id=\\\"raw\\\" word=\\\"รอ\\\" pronunciation=\\\"rɔɔ\\\" meaning=\\\"wait\\\"}\\n\\n:::\\n\\n**Common exchanges:**\\n| Staff Says | Meaning |\\n|------------|---------|\\n| กี่คนคะ/ครับ | How many people? |\\n| ตามมาเลยค่ะ | Follow me |\\n| นั่งตรงนี้นะคะ | Sit here please |\\n| รออีกสักครู่นะคะ | Please wait a moment |\\n\\n## Ordering Food\\n\\n### Basic Ordering Patterns\\n\\n| Pattern | Example | Meaning |\\n|---------|---------|---------|\\n| ขอ...หนึ่งที่ | ขอผัดไทยหนึ่งที่ | One pad thai, please |\\n| เอา... | เอาต้มยำกุ้ง | I'll have tom yam goong |\\n| สั่ง... | สั่งข้าวผัดสองที่ | Order 2 fried rice |\\n\\n### Quantity Words\\n\\n:::vocabulary-set{id=\\\"thai-quantity\\\" title=\\\"Quantities\\\"}\\n\\n::vocab-item{id=\\\"nueng-ti\\\" word=\\\"หนึ่งที่\\\" pronunciation=\\\"nʉ̀ng thîi\\\" meaning=\\\"one order/portion\\\"}\\n\\n::vocab-item{id=\\\"song-ti\\\" word=\\\"สองที่\\\" pronunciation=\\\"sɔ̌ɔng thîi\\\" meaning=\\\"two orders\\\"}\\n\\n::vocab-item{id=\\\"sam-ti\\\" word=\\\"สามที่\\\" pronunciation=\\\"sǎam thîi\\\" meaning=\\\"three orders\\\"}\\n\\n::vocab-item{id=\\\"perm\\\" word=\\\"เพิ่ม\\\" pronunciation=\\\"phə̂əm\\\" meaning=\\\"more/additional\\\"}\\n\\n:::\\n\\n## Asking Questions\\n\\n| Thai | Meaning | When to Use |\\n|------|---------|-------------|\\n| อันนี้คืออะไรครับ | What is this? | Pointing at menu |\\n| มีอะไรแนะนำครับ | What do you recommend? | Asking for suggestions |\\n| อันไหนอร่อยครับ | Which one is delicious? | Seeking advice |\\n| เผ็ดไหมครับ | Is it spicy? | Checking spice level |\\n| มี...ไหมครับ | Do you have...? | Checking availability |\\n\\n## Making Modifications\\n\\n:::vocabulary-set{id=\\\"thai-mods\\\" title=\\\"Modification Phrases\\\"}\\n\\n::vocab-item{id=\\\"mai-sai\\\" word=\\\"ไม่ใส่\\\" pronunciation=\\\"mâi sài\\\" meaning=\\\"without / don't add\\\"}\\n\\n::vocab-item{id=\\\"sai-perm\\\" word=\\\"ใส่เพิ่ม\\\" pronunciation=\\\"sài phə̂əm\\\" meaning=\\\"add more\\\"}\\n\\n::vocab-item{id=\\\"yaek\\\" word=\\\"แยก\\\" pronunciation=\\\"yâek\\\" meaning=\\\"separate\\\"}\\n\\n::vocab-item{id=\\\"plian-pen\\\" word=\\\"เปลี่ยนเป็น\\\" pronunciation=\\\"bplìan bpen\\\" meaning=\\\"change to\\\"}\\n\\n:::\\n\\n**Modification examples:**\\n| Request | Meaning |\\n|---------|---------|\\n| ไม่ใส่ผักชี | No cilantro |\\n| ใส่ไข่เพิ่ม | Add extra egg |\\n| แยกน้ำจิ้ม | Sauce on the side |\\n| เปลี่ยนเป็นไก่ได้ไหม | Can I change it to chicken? |\\n\\n## During the Meal\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ขอน้ำเพิ่มครับ | More water, please |\\n| ขอข้าวเพิ่มครับ | More rice, please |\\n| ขอช้อนส้อมครับ | Spoon and fork, please |\\n| ขอตะเกียบครับ | Chopsticks, please |\\n| ขอทิชชู่ครับ | Napkins, please |\\n\\n## Paying the Bill\\n\\n:::vocabulary-set{id=\\\"thai-payment\\\" title=\\\"Payment Vocabulary\\\"}\\n\\n::vocab-item{id=\\\"check-bin\\\" word=\\\"เช็คบิล\\\" pronunciation=\\\"chék bin\\\" meaning=\\\"check/bill please\\\"}\\n\\n::vocab-item{id=\\\"kep-tang\\\" word=\\\"เก็บเงิน\\\" pronunciation=\\\"gèp ngəən\\\" meaning=\\\"collect money (pay)\\\"}\\n\\n::vocab-item{id=\\\"tang-sot\\\" word=\\\"เงินสด\\\" pronunciation=\\\"ngəən sòt\\\" meaning=\\\"cash\\\"}\\n\\n::vocab-item{id=\\\"bat\\\" word=\\\"บัตร\\\" pronunciation=\\\"bàt\\\" meaning=\\\"card\\\"}\\n\\n::vocab-item{id=\\\"jai-yaek\\\" word=\\\"จ่ายแยก\\\" pronunciation=\\\"jàai yâek\\\" meaning=\\\"pay separately\\\"}\\n\\n:::\\n\\n**Paying phrases:**\\n| Thai | Meaning |\\n|------|---------|\\n| เช็คบิลด้วยครับ | Bill please |\\n| รับบัตรไหมครับ | Do you accept cards? |\\n| จ่ายเงินสดครับ | I'll pay cash |\\n| ทอนครับ | Here's the change |\\n| ไม่ต้องทอนครับ | Keep the change |\\n\\n## Complete Restaurant Conversation\\n\\n**Arriving:**\\n- พนักงาน: สวัสดีค่ะ กี่คนคะ (Hello, how many?)\\n- คุณ: สองคนครับ (Two people)\\n- พนักงาน: ตามมาเลยค่ะ (Follow me)\\n\\n**Ordering:**\\n- พนักงาน: สั่งอะไรดีคะ (What would you like?)\\n- คุณ: ขอผัดกะเพราหมูหนึ่งที่ ไม่เผ็ดมาก (Pork basil, not too spicy)\\n- คุณ: กับต้มยำกุ้งอีกหนึ่งที่ครับ (And one tom yam goong)\\n- พนักงาน: เอาข้าวไหมคะ (Would you like rice?)\\n- คุณ: เอาครับ สองที่ (Yes, two portions)\\n\\n**Paying:**\\n- คุณ: เช็คบิลด้วยครับ (Bill please)\\n- พนักงาน: ทั้งหมด 280 บาทค่ะ (Total 280 baht)\\n- คุณ: รับบัตรไหมครับ (Do you take cards?)\\n- พนักงาน: รับค่ะ (Yes)\\n\\n## Key Points\\n\\n1. **ขอ...หนึ่งที่**: Standard ordering pattern\\n2. **ไม่ใส่ + [item]**: Remove ingredient\\n3. **เช็คบิล**: Universal for \\\"bill please\\\"\\n4. **ครับ/ค่ะ**: Always add polite particles!\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"food-5-ordering-patterns\\\" type=\\\"matching\\\" title=\\\"Ordering Pattern Recognition\\\" skill=\\\"pattern-recognition\\\" objectiveId=\\\"obj-order-food-confidently\\\"}\\n\\n**Question:** Match each ordering phrase to its meaning\\n\\n- ขอ...หนึ่งที่\\n- เอา...\\n- สั่ง...\\n- ขอเพิ่ม\\n\\n**Answer:**\\n\\n- ขอ...หนึ่งที่ → One order of...please (most polite)\\n- เอา... → I'll have... (direct but acceptable)\\n- สั่ง... → Order... (formal, used by staff)\\n- ขอเพิ่ม → More, please (requesting additional)\\n\\n**Explanation:** ขอ...หนึ่งที่ is the standard polite ordering pattern. เอา is more direct. สั่ง is what staff use. Choose based on formality level.\\n\\n:::\\n\\n:::exercise{id=\\\"food-5-modifications\\\" type=\\\"fill-in-blank\\\" title=\\\"Making Modifications\\\" skill=\\\"pattern-application\\\" objectiveId=\\\"obj-request-modifications\\\"}\\n\\n**Question:** How do you make these requests?\\n\\n- No cilantro\\n- Add extra egg\\n- Sauce on the side\\n- Change to chicken\\n\\n**Answer:**\\n\\n- ไม่ใส่ผักชี (no cilantro)\\n- ใส่ไข่เพิ่ม (add extra egg)\\n- แยกน้ำจิ้ม (sauce separate/on the side)\\n- เปลี่ยนเป็นไก่ได้ไหม (can change to chicken?)\\n\\n**Explanation:** ไม่ใส่ means \\\"don't add\\\", ใส่เพิ่ม means \\\"add more\\\", แยก means \\\"separate\\\", and เปลี่ยนเป็น means \\\"change to\\\". These phrases give you control over your order.\\n\\n:::\\n\\n:::exercise{id=\\\"food-5-payment\\\" type=\\\"multiple-choice\\\" title=\\\"Paying the Bill\\\" skill=\\\"situational-response\\\" objectiveId=\\\"obj-pay-bill\\\"}\\n\\n**Question:** What's the most common way to ask for the bill in Thailand?\\n\\n**Options:**\\n- บิลครับ\\n- เช็คบิลด้วยครับ\\n- เก็บเงินด้วยครับ\\n- All of the above\\n\\n**Answer:** 4\\n\\n**Explanation:** All three phrases work! เช็คบิล is most common (from English \\\"check bill\\\"), but เก็บเงิน (collect money) is also widely used. บิล alone is understood but less common.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll master street food vocabulary — Thailand's most exciting food scene.\\n\""],"names":["lesson05"],"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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
@@ -15,11 +15,19 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-dialogue-lesson-04
18
- objectives:
19
- - "Take a taxi and negotiate fare"
20
- - "Use the BTS/MRT"
21
- - "Ask about routes and schedules"
22
- - "Handle common transport situations"
18
+ learningObjectives:
19
+ - id: obj-transport-taxi
20
+ description: "Take a taxi and negotiate fare"
21
+ skill: situational-response
22
+ - id: obj-transport-bts
23
+ description: "Use the BTS/MRT"
24
+ skill: dialogue-comprehension
25
+ - id: obj-transport-routes
26
+ description: "Ask about routes and schedules"
27
+ skill: pattern-recognition
28
+ - id: obj-transport-situations
29
+ description: "Handle common transport situations"
30
+ skill: polite-register
23
31
  ---
24
32
 
25
33
  # บทที่ 5 (Lesson 5) — Taking Transportation
@@ -117,7 +125,7 @@ If a taxi driver refuses to use the meter or won't go to your destination, just
117
125
 
118
126
  ## Practice Exercises
119
127
 
120
- :::exercise{id="dialogue-5-taxi-etiquette" type="multiple-choice" title="Taxi Etiquette"}
128
+ :::exercise{id="dialogue-5-taxi-etiquette" type="multiple-choice" title="Taxi Etiquette" skill="situational-response" objectiveId="obj-transport-taxi"}
121
129
 
122
130
  **Question:** What should you always say when getting in a taxi in Thailand?
123
131
 
@@ -133,7 +141,7 @@ If a taxi driver refuses to use the meter or won't go to your destination, just
133
141
 
134
142
  :::
135
143
 
136
- :::exercise{id="dialogue-5-bts-navigation" type="fill-in-blank" title="BTS Navigation"}
144
+ :::exercise{id="dialogue-5-bts-navigation" type="fill-in-blank" title="BTS Navigation" skill="pattern-application" objectiveId="obj-transport-routes"}
137
145
 
138
146
  **Question:** How do you ask these questions on the BTS?
139
147
 
@@ -151,7 +159,7 @@ If a taxi driver refuses to use the meter or won't go to your destination, just
151
159
 
152
160
  :::
153
161
 
154
- :::exercise{id="dialogue-5-transport-vocab" type="matching" title="Transportation Vocabulary"}
162
+ :::exercise{id="dialogue-5-transport-vocab" type="matching" title="Transportation Vocabulary" skill="word-recognition" objectiveId="obj-transport-bts"}
155
163
 
156
164
  **Question:** Match each transport type to its Thai name
157
165
 
@@ -178,4 +186,4 @@ In Lesson 6, you'll learn dialogues for meeting people — introductions, small
178
186
  export {
179
187
  n as default
180
188
  };
181
- //# sourceMappingURL=lesson-05-DBsHyFlt.js.map
189
+ //# sourceMappingURL=lesson-05-UYz39ORV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-UYz39ORV.js","sources":["../src/syllabi/dialogue/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-dialogue-lesson-05\\ntitle: \\\"บทที่ 5 — การเดินทาง\\\"\\ndescription: \\\"Taking Transportation: Taxis, BTS, and getting around\\\"\\norder: 5\\nparentId: thai-dialogue\\ndifficulty: intermediate\\ncefrLevel: A2\\ncategories:\\n - dialogue\\n - transportation\\n - travel\\nmetadata:\\n estimatedTime: 30\\n prerequisites:\\n - thai-dialogue-lesson-04\\n learningObjectives:\\n - id: obj-transport-taxi\\n description: \\\"Take a taxi and negotiate fare\\\"\\n skill: situational-response\\n - id: obj-transport-bts\\n description: \\\"Use the BTS/MRT\\\"\\n skill: dialogue-comprehension\\n - id: obj-transport-routes\\n description: \\\"Ask about routes and schedules\\\"\\n skill: pattern-recognition\\n - id: obj-transport-situations\\n description: \\\"Handle common transport situations\\\"\\n skill: polite-register\\n---\\n\\n# บทที่ 5 (Lesson 5) — Taking Transportation\\n\\n## Situation 1: Taking a Taxi\\n\\n:::dialogue{id=\\\"taxi-dialogue-1\\\" title=\\\"Going by Taxi\\\"}\\n\\n**คุณ (You):** ไปสยามได้ไหมครับ/คะ?\\n*bpai sà-yǎam dâai mái khráp/khá?*\\nCan you go to Siam?\\n\\n**คนขับ (Driver):** ได้ครับ ไปเมตเตอร์หรือครับ?\\n*dâai khráp, bpai méet-dtəə rǔue khráp?*\\nYes. By meter?\\n\\n**คุณ:** เมตเตอร์ครับ/ค่ะ\\n*méet-dtəə khráp/khâ*\\nBy meter, please.\\n\\n**คนขับ:** ได้ครับ ขึ้นมาเลยครับ\\n*dâai khráp, khûen maa ləəi khráp*\\nOK, get in.\\n\\n*[During the ride]*\\n\\n**คุณ:** จอดตรงนี้ได้ไหมครับ/คะ?\\n*jàawt dtrong-níi dâai mái khráp/khá?*\\nCan you stop here?\\n\\n**คนขับ:** ได้ครับ 85 บาทครับ\\n*dâai khráp, bpàet-sìp-hâa bàat khráp*\\nSure. 85 baht.\\n\\n**คุณ:** นี่ครับ/ค่ะ ไม่ต้องทอน\\n*nîi khráp/khâ, mâi dtâwng thawn*\\nHere. Keep the change.\\n\\n:::\\n\\n## Situation 2: BTS/MRT\\n\\n:::dialogue{id=\\\"bts-dialogue-1\\\" title=\\\"Using the BTS\\\"}\\n\\n**คุณ (You):** ขอโทษครับ/ค่ะ ไปอโศกต้องลงสถานีไหนครับ/คะ?\\n*khǎaw-thôot khráp/khâ, bpai à-sòok dtâwng long sà-thǎa-nii nǎi khráp/khá?*\\nExcuse me, which station for Asok?\\n\\n**คนไทย:** ลงสถานีอโศกเลยครับ สายสีเขียว\\n*long sà-thǎa-nii à-sòok ləəi khráp, sǎai sǐi khǐaw*\\nGet off at Asok station. The green line.\\n\\n**คุณ:** ต้องเปลี่ยนสายไหมครับ/คะ?\\n*dtâwng bplìian sǎai mái khráp/khá?*\\nDo I need to change lines?\\n\\n**คนไทย:** ไม่ต้องครับ ตรงไปเลย 3 สถานี\\n*mâi dtâwng khráp, dtrong bpai ləəi sǎam sà-thǎa-nii*\\nNo, go straight. 3 stations.\\n\\n:::\\n\\n## Key Phrases\\n\\n| Thai | Romanization | Meaning |\\n|------|--------------|---------|\\n| ไป...ได้ไหม? | bpai...dâai mái? | Can you go to...? |\\n| ไปเมตเตอร์ | bpai méet-dtəə | go by meter |\\n| จอดตรงนี้ | jàawt dtrong-níi | stop here |\\n| ไม่ต้องทอน | mâi dtâwng thawn | keep the change |\\n| ลงสถานีไหน? | long sà-thǎa-nii nǎi? | which station to get off? |\\n| ต้องเปลี่ยนสายไหม? | dtâwng bplìian sǎai mái? | need to change lines? |\\n\\n## Transport Vocabulary\\n\\n| Thai | Meaning |\\n|------|---------|\\n| แท็กซี่ | taxi |\\n| รถไฟฟ้า (BTS) | BTS Skytrain |\\n| รถไฟใต้ดิน (MRT) | MRT subway |\\n| ตุ๊กตุ๊ก | tuk-tuk |\\n| มอเตอร์ไซค์รับจ้าง | motorcycle taxi |\\n| เรือ | boat |\\n\\n## Taxi Tips\\n\\n1. **Always use the meter** - Say \\\"ไปเมตเตอร์\\\" (by meter)\\n2. **Know your destination** - Have the address in Thai if possible\\n3. **Small bills** - Drivers often don't have change\\n4. **Rush hour** - Consider BTS/MRT during traffic\\n\\n## Cultural Note\\n\\nIf a taxi driver refuses to use the meter or won't go to your destination, just find another taxi - it's very common. Don't argue; simply say \\\"ไม่เป็นไร\\\" (never mind) and try the next one. Always insist on \\\"ไปเมตเตอร์\\\" (by meter) - it's your right and usually cheaper than negotiated fares.\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"dialogue-5-taxi-etiquette\\\" type=\\\"multiple-choice\\\" title=\\\"Taxi Etiquette\\\" skill=\\\"situational-response\\\" objectiveId=\\\"obj-transport-taxi\\\"}\\n\\n**Question:** What should you always say when getting in a taxi in Thailand?\\n\\n**Options:**\\n- ไปเร็วๆ (go fast)\\n- ไปเมตเตอร์ (by meter)\\n- ไม่ต้องทอน (keep the change)\\n- ไปได้ไหม (can you go?)\\n\\n**Answer:** 2\\n\\n**Explanation:** Always say \\\"ไปเมตเตอร์\\\" (by meter) to ensure you're charged the correct fare. This is essential in Thailand where some drivers try to negotiate higher fixed prices.\\n\\n:::\\n\\n:::exercise{id=\\\"dialogue-5-bts-navigation\\\" type=\\\"fill-in-blank\\\" title=\\\"BTS Navigation\\\" skill=\\\"pattern-application\\\" objectiveId=\\\"obj-transport-routes\\\"}\\n\\n**Question:** How do you ask these questions on the BTS?\\n\\n- Which station for [destination]?\\n- Do I need to change lines?\\n- How many stations?\\n\\n**Answer:**\\n\\n- ไป[destination]ต้องลงสถานีไหนครับ/คะ? (Which station for [destination]?)\\n- ต้องเปลี่ยนสายไหมครับ/คะ? (Need to change lines?)\\n- กี่สถานี? (How many stations?)\\n\\n**Explanation:** ลง means \\\"get off\\\" (as in getting off a train). เปลี่ยนสาย means \\\"change lines\\\". Knowing these phrases helps you navigate Bangkok's transit system independently.\\n\\n:::\\n\\n:::exercise{id=\\\"dialogue-5-transport-vocab\\\" type=\\\"matching\\\" title=\\\"Transportation Vocabulary\\\" skill=\\\"word-recognition\\\" objectiveId=\\\"obj-transport-bts\\\"}\\n\\n**Question:** Match each transport type to its Thai name\\n\\n- Taxi\\n- BTS\\n- MRT\\n- Tuk-tuk\\n\\n**Answer:**\\n\\n- Taxi → แท็กซี่\\n- BTS → รถไฟฟ้า (electric train)\\n- MRT → รถไฟใต้ดิน (subway/underground train)\\n- Tuk-tuk → ตุ๊กตุ๊ก\\n\\n**Explanation:** BTS is รถไฟฟ้า (literally \\\"electric train\\\"), MRT is รถไฟใต้ดิน (literally \\\"underground train\\\"). Knowing these helps you ask for directions and buy tickets.\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll learn dialogues for meeting people — introductions, small talk, and social conversations in Thai.\\n\""],"names":["lesson05"],"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;"}
@@ -14,11 +14,19 @@ metadata:
14
14
  estimatedTime: 25
15
15
  prerequisites:
16
16
  - thai-travel-lesson-04
17
- objectives:
18
- - "Ask about prices"
19
- - "Bargain politely"
20
- - "Understand payment methods"
21
- - "Shop at markets and malls"
17
+ learningObjectives:
18
+ - id: obj-05a
19
+ description: "Ask about prices"
20
+ skill: pattern-application
21
+ - id: obj-05b
22
+ description: "Bargain politely"
23
+ skill: polite-register
24
+ - id: obj-05c
25
+ description: "Understand payment methods"
26
+ skill: word-recognition
27
+ - id: obj-05d
28
+ description: "Shop at markets and malls"
29
+ skill: situational-response
22
30
  ---
23
31
 
24
32
  # บทที่ 5 (Lesson 5) — Shopping
@@ -112,7 +120,7 @@ Shopping in Thailand ranges from air-conditioned malls to bustling night markets
112
120
 
113
121
  ## Practice Exercises
114
122
 
115
- :::exercise{id="travel-5-bargaining" type="matching" title="Bargaining Phrases"}
123
+ :::exercise{id="travel-5-bargaining" type="matching" title="Bargaining Phrases" skill="polite-register" objectiveId="obj-05b"}
116
124
 
117
125
  **Question:** Match each bargaining phrase to its meaning
118
126
 
@@ -132,7 +140,7 @@ Shopping in Thailand ranges from air-conditioned malls to bustling night markets
132
140
 
133
141
  :::
134
142
 
135
- :::exercise{id="travel-5-payment-methods" type="fill-in-blank" title="Payment Methods"}
143
+ :::exercise{id="travel-5-payment-methods" type="fill-in-blank" title="Payment Methods" skill="word-production" objectiveId="obj-05c"}
136
144
 
137
145
  **Question:** How do you ask about payment methods?
138
146
 
@@ -146,7 +154,7 @@ Shopping in Thailand ranges from air-conditioned malls to bustling night markets
146
154
 
147
155
  :::
148
156
 
149
- :::exercise{id="travel-5-bargaining-strategy" type="multiple-choice" title="Bargaining Strategy"}
157
+ :::exercise{id="travel-5-bargaining-strategy" type="multiple-choice" title="Bargaining Strategy" skill="situational-response" objectiveId="obj-05d"}
150
158
 
151
159
  **Question:** Where is bargaining expected in Thailand?
152
160
 
@@ -169,4 +177,4 @@ In Lesson 6, you'll learn time and schedule vocabulary for planning your travels
169
177
  export {
170
178
  n as default
171
179
  };
172
- //# sourceMappingURL=lesson-05-DXOLS7G0.js.map
180
+ //# sourceMappingURL=lesson-05-t6XuANiZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lesson-05-t6XuANiZ.js","sources":["../src/syllabi/travel/lessons/lesson-05.mdx?raw"],"sourcesContent":["export default \"---\\ntype: lesson\\nid: thai-travel-lesson-05\\ntitle: \\\"บทที่ 5 — ช้อปปิ้ง\\\"\\ndescription: \\\"Shopping: Bargaining, prices, and payment\\\"\\norder: 5\\nparentId: thai-vocab-travel\\ndifficulty: beginner\\ncefrLevel: A2\\ncategories:\\n - travel\\n - shopping\\nmetadata:\\n estimatedTime: 25\\n prerequisites:\\n - thai-travel-lesson-04\\n learningObjectives:\\n - id: obj-05a\\n description: \\\"Ask about prices\\\"\\n skill: pattern-application\\n - id: obj-05b\\n description: \\\"Bargain politely\\\"\\n skill: polite-register\\n - id: obj-05c\\n description: \\\"Understand payment methods\\\"\\n skill: word-recognition\\n - id: obj-05d\\n description: \\\"Shop at markets and malls\\\"\\n skill: situational-response\\n---\\n\\n# บทที่ 5 (Lesson 5) — Shopping\\n\\n## Introduction\\n\\nShopping in Thailand ranges from air-conditioned malls to bustling night markets. Knowing how to ask prices and bargain can save you money and make shopping more fun.\\n\\n## Price & Payment\\n\\n:::vocabulary-set{id=\\\"thai-price-vocab\\\" title=\\\"Price Vocabulary\\\"}\\n\\n::vocab-item{id=\\\"raakhaa\\\" word=\\\"ราคา\\\" pronunciation=\\\"raa-khaa\\\" meaning=\\\"price\\\"}\\n\\n::vocab-item{id=\\\"tao-rai\\\" word=\\\"เท่าไหร่\\\" pronunciation=\\\"thâo-rài\\\" meaning=\\\"how much\\\"}\\n\\n::vocab-item{id=\\\"baht\\\" word=\\\"บาท\\\" pronunciation=\\\"bàat\\\" meaning=\\\"baht (currency)\\\"}\\n\\n::vocab-item{id=\\\"phaeng\\\" word=\\\"แพง\\\" pronunciation=\\\"phaeng\\\" meaning=\\\"expensive\\\"}\\n\\n::vocab-item{id=\\\"thuuk\\\" word=\\\"ถูก\\\" pronunciation=\\\"thùuk\\\" meaning=\\\"cheap\\\"}\\n\\n:::\\n\\n## Payment Methods\\n\\n:::vocabulary-set{id=\\\"thai-payment\\\" title=\\\"Payment Methods\\\"}\\n\\n::vocab-item{id=\\\"ngoen-sot\\\" word=\\\"เงินสด\\\" pronunciation=\\\"ngəən sòt\\\" meaning=\\\"cash\\\"}\\n\\n::vocab-item{id=\\\"bat\\\" word=\\\"บัตร\\\" pronunciation=\\\"bàt\\\" meaning=\\\"card\\\"}\\n\\n::vocab-item{id=\\\"bat-credit\\\" word=\\\"บัตรเครดิต\\\" pronunciation=\\\"bàt khree-dìt\\\" meaning=\\\"credit card\\\"}\\n\\n::vocab-item{id=\\\"jai\\\" word=\\\"จ่าย\\\" pronunciation=\\\"jàai\\\" meaning=\\\"pay\\\"}\\n\\n::vocab-item{id=\\\"thon\\\" word=\\\"ทอน\\\" pronunciation=\\\"thɔɔn\\\" meaning=\\\"change (money)\\\"}\\n\\n:::\\n\\n## Bargaining Phrases\\n\\n| Thai | Meaning |\\n|------|---------|\\n| ลดได้ไหม | Can you reduce the price? |\\n| ลดหน่อย | Discount please |\\n| แพงไป | Too expensive |\\n| ถูกกว่านี้ได้ไหม | Can it be cheaper? |\\n| ราคาสุดท้าย | Final price? |\\n| เอาราคานี้ | I'll take it at this price |\\n\\n## Shopping Phrases\\n\\n| Thai | Meaning |\\n|------|---------|\\n| อันนี้เท่าไหร่ | How much is this? |\\n| ขอดูหน่อย | Can I look? |\\n| มีสีอื่นไหม | Do you have other colors? |\\n| มีไซส์ใหญ่กว่าไหม | Do you have a bigger size? |\\n| เอาอันนี้ | I'll take this one |\\n| ไม่เอา ขอบคุณ | No thanks |\\n\\n## Sample Conversations\\n\\n**At a market:**\\n- คุณ: อันนี้เท่าไหร่ครับ (How much is this?)\\n- แม่ค้า: 300 บาทค่ะ (300 baht)\\n- คุณ: แพงไปครับ ลดได้ไหม (Too expensive. Can you reduce?)\\n- แม่ค้า: 250 ได้ค่ะ (250 okay)\\n- คุณ: 200 ได้ไหมครับ (How about 200?)\\n- แม่ค้า: ได้ค่ะ (Okay)\\n\\n**At a mall:**\\n- คุณ: รับบัตรไหมครับ (Do you take cards?)\\n- พนักงาน: รับค่ะ (Yes)\\n- คุณ: เอาอันนี้ครับ (I'll take this)\\n\\n## Bargaining Tips\\n\\n1. **Markets**: Bargaining expected, start at 50-60% of asking price\\n2. **Malls**: Fixed prices, no bargaining\\n3. **Street vendors**: Light bargaining okay\\n4. **Smile**: Stay friendly, it's a game not a battle\\n\\n## Key Points\\n\\n1. **เท่าไหร่ = how much**: Your most used phrase\\n2. **ลดได้ไหม = can you reduce?**: Polite bargaining starter\\n3. **แพง/ถูก = expensive/cheap**: Express your opinion\\n4. **เงินสด/บัตร = cash/card**: Know your payment options\\n\\n## Practice Exercises\\n\\n:::exercise{id=\\\"travel-5-bargaining\\\" type=\\\"matching\\\" title=\\\"Bargaining Phrases\\\" skill=\\\"polite-register\\\" objectiveId=\\\"obj-05b\\\"}\\n\\n**Question:** Match each bargaining phrase to its meaning\\n\\n- ลดได้ไหม\\n- แพงไป\\n- ถูกกว่านี้ได้ไหม\\n- ราคาสุดท้าย\\n\\n**Answer:**\\n\\n- ลดได้ไหม → Can you reduce the price? (polite start)\\n- แพงไป → Too expensive (expressing opinion)\\n- ถูกกว่านี้ได้ไหม → Can it be cheaper? (negotiating)\\n- ราคาสุดท้าย → Final price? (closing the deal)\\n\\n**Explanation:** Bargaining is expected at markets. Start with ลดได้ไหม, express if it's แพงไป, negotiate with ถูกกว่านี้ได้ไหม, and close with ราคาสุดท้าย.\\n\\n:::\\n\\n:::exercise{id=\\\"travel-5-payment-methods\\\" type=\\\"fill-in-blank\\\" title=\\\"Payment Methods\\\" skill=\\\"word-production\\\" objectiveId=\\\"obj-05c\\\"}\\n\\n**Question:** How do you ask about payment methods?\\n\\n**Answer:**\\n\\n- รับบัตรไหม (Do you take cards?)\\n- จ่ายเงินสดได้ไหม (Can I pay cash?)\\n- มี ATM ใกล้ๆ ไหม (Is there an ATM nearby?)\\n\\n**Explanation:** Many places in Thailand are cash-only, especially markets and street vendors. Always ask รับบัตรไหม if you want to use a card. Have cash as backup.\\n\\n:::\\n\\n:::exercise{id=\\\"travel-5-bargaining-strategy\\\" type=\\\"multiple-choice\\\" title=\\\"Bargaining Strategy\\\" skill=\\\"situational-response\\\" objectiveId=\\\"obj-05d\\\"}\\n\\n**Question:** Where is bargaining expected in Thailand?\\n\\n**Options:**\\n- Only at markets\\n- Markets and small shops (not malls)\\n- Everywhere\\n- Nowhere, it's rude\\n\\n**Answer:** 2\\n\\n**Explanation:** Bargaining is expected at markets and small shops without fixed prices. At malls, department stores, and places with price tags, prices are usually fixed. Always bargain with a smile!\\n\\n:::\\n\\n## What's Next\\n\\nIn Lesson 6, you'll learn time and schedule vocabulary for planning your travels.\\n\""],"names":["lesson05"],"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;"}