@syllst/th 0.1.3 → 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 +5 -5
  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
@@ -14,10 +14,16 @@ categories:
14
14
  metadata:
15
15
  estimatedTime: 25
16
16
  prerequisites: []
17
- objectives:
18
- - "Recognize common street sign vocabulary"
19
- - "Read Thai addresses and street names"
20
- - "Understand directional indicators on signs"
17
+ learningObjectives:
18
+ - id: obj-r1-sign-vocab
19
+ description: "Recognize common street sign vocabulary"
20
+ skill: word-recognition
21
+ - id: obj-r1-address-reading
22
+ description: "Read Thai addresses and street names"
23
+ skill: text-decoding
24
+ - id: obj-r1-directional-indicators
25
+ description: "Understand directional indicators on signs"
26
+ skill: reading-comprehension
21
27
  ---
22
28
 
23
29
  # Street Signs
@@ -64,7 +70,7 @@ Thai streets are full of signs that become readable with practice. This lesson c
64
70
 
65
71
  ## Practice Exercises
66
72
 
67
- :::exercise{id="reading-1-sign-recognition" type="matching" title="Street Sign Recognition"}
73
+ :::exercise{id="reading-1-sign-recognition" type="matching" title="Street Sign Recognition" skill="word-recognition" objectiveId="obj-r1-sign-vocab"}
68
74
 
69
75
  **Question:** Match each sign to its meaning
70
76
 
@@ -84,7 +90,7 @@ Thai streets are full of signs that become readable with practice. This lesson c
84
90
 
85
91
  :::
86
92
 
87
- :::exercise{id="reading-1-address-components" type="fill-in-blank" title="Address Components"}
93
+ :::exercise{id="reading-1-address-components" type="fill-in-blank" title="Address Components" skill="text-decoding" objectiveId="obj-r1-address-reading"}
88
94
 
89
95
  **Question:** What do these address components mean?
90
96
 
@@ -104,7 +110,7 @@ Thai streets are full of signs that become readable with practice. This lesson c
104
110
 
105
111
  :::
106
112
 
107
- :::exercise{id="reading-1-street-types" type="multiple-choice" title="Street Types"}
113
+ :::exercise{id="reading-1-street-types" type="multiple-choice" title="Street Types" skill="reading-comprehension" objectiveId="obj-r1-directional-indicators"}
108
114
 
109
115
  **Question:** What's the difference between ถนน and ซอย?
110
116
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-reading-lesson-01
18
- objectives:
19
- - "Read food names in Thai script"
20
- - "Understand menu categories"
21
- - "Recognize pricing and portion information"
18
+ learningObjectives:
19
+ - id: obj-r2-food-names
20
+ description: "Read food names in Thai script"
21
+ skill: text-decoding
22
+ - id: obj-r2-menu-categories
23
+ description: "Understand menu categories"
24
+ skill: reading-comprehension
25
+ - id: obj-r2-pricing
26
+ description: "Recognize pricing and portion information"
27
+ skill: word-recognition
22
28
  ---
23
29
 
24
30
  # Restaurant Menus
@@ -73,7 +79,7 @@ Pork fried rice - 50 baht
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-2-menu-categories" type="matching" title="Menu Category Recognition"}
82
+ :::exercise{id="reading-2-menu-categories" type="matching" title="Menu Category Recognition" skill="reading-comprehension" objectiveId="obj-r2-menu-categories"}
77
83
 
78
84
  **Question:** Match each menu category to its meaning
79
85
 
@@ -93,7 +99,7 @@ Pork fried rice - 50 baht
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-2-menu-descriptors" type="fill-in-blank" title="Menu Descriptors"}
102
+ :::exercise{id="reading-2-menu-descriptors" type="fill-in-blank" title="Menu Descriptors" skill="word-recognition" objectiveId="obj-r2-pricing"}
97
103
 
98
104
  **Question:** What do these menu descriptors mean?
99
105
 
@@ -113,7 +119,7 @@ Pork fried rice - 50 baht
113
119
 
114
120
  :::
115
121
 
116
- :::exercise{id="reading-2-price-reading" type="multiple-choice" title="Reading Prices"}
122
+ :::exercise{id="reading-2-price-reading" type="multiple-choice" title="Reading Prices" skill="text-decoding" objectiveId="obj-r2-food-names"}
117
123
 
118
124
  **Question:** How do you read "80 บาท" from a menu?
119
125
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-reading-lesson-02
18
- objectives:
19
- - "Navigate BTS/MRT stations"
20
- - "Read airport signage"
21
- - "Understand bus and train information"
18
+ learningObjectives:
19
+ - id: obj-r3-station-navigation
20
+ description: "Navigate BTS/MRT stations"
21
+ skill: text-decoding
22
+ - id: obj-r3-airport-signage
23
+ description: "Read airport signage"
24
+ skill: word-recognition
25
+ - id: obj-r3-transport-info
26
+ description: "Understand bus and train information"
27
+ skill: reading-comprehension
22
28
  ---
23
29
 
24
30
  # Transportation Signs
@@ -73,7 +79,7 @@ Transfer at Siam Station
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-3-transport-vocab" type="matching" title="Transportation Vocabulary"}
82
+ :::exercise{id="reading-3-transport-vocab" type="matching" title="Transportation Vocabulary" skill="text-decoding" objectiveId="obj-r3-station-navigation"}
77
83
 
78
84
  **Question:** Match each transport term to its meaning
79
85
 
@@ -93,7 +99,7 @@ Transfer at Siam Station
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-3-bts-mrt" type="fill-in-blank" title="BTS vs MRT"}
102
+ :::exercise{id="reading-3-bts-mrt" type="fill-in-blank" title="BTS vs MRT" skill="reading-comprehension" objectiveId="obj-r3-transport-info"}
97
103
 
98
104
  **Question:** What's the difference between BTS and MRT in Thai?
99
105
 
@@ -106,7 +112,7 @@ Transfer at Siam Station
106
112
 
107
113
  :::
108
114
 
109
- :::exercise{id="reading-3-airport-signs" type="multiple-choice" title="Airport Signage"}
115
+ :::exercise{id="reading-3-airport-signs" type="multiple-choice" title="Airport Signage" skill="word-recognition" objectiveId="obj-r3-airport-signage"}
110
116
 
111
117
  **Question:** What does "ขาออก" mean at an airport?
112
118
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 25
16
16
  prerequisites:
17
17
  - thai-reading-lesson-03
18
- objectives:
19
- - "Identify different types of shops"
20
- - "Read store hours and information"
21
- - "Understand sale and promotion signs"
18
+ learningObjectives:
19
+ - id: obj-r4-shop-types
20
+ description: "Identify different types of shops"
21
+ skill: word-recognition
22
+ - id: obj-r4-store-hours
23
+ description: "Read store hours and information"
24
+ skill: text-decoding
25
+ - id: obj-r4-sale-signs
26
+ description: "Understand sale and promotion signs"
27
+ skill: reading-comprehension
22
28
  ---
23
29
 
24
30
  # Shop Signs
@@ -73,7 +79,7 @@ Coffee shop open 7am-10pm
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-4-shop-types" type="matching" title="Shop Type Recognition"}
82
+ :::exercise{id="reading-4-shop-types" type="matching" title="Shop Type Recognition" skill="word-recognition" objectiveId="obj-r4-shop-types"}
77
83
 
78
84
  **Question:** Match each shop type to its Thai name
79
85
 
@@ -93,7 +99,7 @@ Coffee shop open 7am-10pm
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-4-store-hours" type="fill-in-blank" title="Reading Store Hours"}
102
+ :::exercise{id="reading-4-store-hours" type="fill-in-blank" title="Reading Store Hours" skill="text-decoding" objectiveId="obj-r4-store-hours"}
97
103
 
98
104
  **Question:** How do you read store hours in Thai?
99
105
 
@@ -109,7 +115,7 @@ Store hours use:
109
115
 
110
116
  :::
111
117
 
112
- :::exercise{id="reading-4-sale-signs" type="multiple-choice" title="Sale Sign Recognition"}
118
+ :::exercise{id="reading-4-sale-signs" type="multiple-choice" title="Sale Sign Recognition" skill="reading-comprehension" objectiveId="obj-r4-sale-signs"}
113
119
 
114
120
  **Question:** What does "ซื้อ 1 แถม 1" mean?
115
121
 
@@ -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
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 25
16
16
  prerequisites:
17
17
  - thai-reading-lesson-05
18
- objectives:
19
- - "Understand directional vocabulary"
20
- - "Read distance and location signs"
21
- - "Navigate using Thai signs"
18
+ learningObjectives:
19
+ - id: obj-r6-direction-vocab
20
+ description: "Understand directional vocabulary"
21
+ skill: word-recognition
22
+ - id: obj-r6-distance-signs
23
+ description: "Read distance and location signs"
24
+ skill: text-decoding
25
+ - id: obj-r6-navigation
26
+ description: "Navigate using Thai signs"
27
+ skill: reading-comprehension
22
28
  ---
23
29
 
24
30
  # Direction Signs
@@ -73,7 +79,7 @@ Parking floors B1-B3
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-6-direction-vocab" type="matching" title="Direction Vocabulary"}
82
+ :::exercise{id="reading-6-direction-vocab" type="matching" title="Direction Vocabulary" skill="word-recognition" objectiveId="obj-r6-direction-vocab"}
77
83
 
78
84
  **Question:** Match each direction word to its meaning
79
85
 
@@ -93,7 +99,7 @@ Parking floors B1-B3
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-6-distance-reading" type="fill-in-blank" title="Reading Distance"}
102
+ :::exercise{id="reading-6-distance-reading" type="fill-in-blank" title="Reading Distance" skill="text-decoding" objectiveId="obj-r6-distance-signs"}
97
103
 
98
104
  **Question:** How do you read distance on signs?
99
105
 
@@ -109,7 +115,7 @@ Distance signs use:
109
115
 
110
116
  :::
111
117
 
112
- :::exercise{id="reading-6-facility-signs" type="multiple-choice" title="Facility Sign Recognition"}
118
+ :::exercise{id="reading-6-facility-signs" type="multiple-choice" title="Facility Sign Recognition" skill="reading-comprehension" objectiveId="obj-r6-navigation"}
113
119
 
114
120
  **Question:** What does "ที่จอดรถ" mean?
115
121
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 35
16
16
  prerequisites:
17
17
  - thai-reading-lesson-06
18
- objectives:
19
- - "Understand news headline structure"
20
- - "Recognize common news vocabulary"
21
- - "Read condensed Thai text"
18
+ learningObjectives:
19
+ - id: obj-r7-headline-structure
20
+ description: "Understand news headline structure"
21
+ skill: pattern-recognition
22
+ - id: obj-r7-news-vocab
23
+ description: "Recognize common news vocabulary"
24
+ skill: word-recognition
25
+ - id: obj-r7-condensed-text
26
+ description: "Read condensed Thai text"
27
+ skill: reading-comprehension
22
28
  ---
23
29
 
24
30
  # News Headlines
@@ -73,7 +79,7 @@ Storm enters south, citizens warned to be careful
73
79
 
74
80
  ## Practice Exercises
75
81
 
76
- :::exercise{id="reading-7-news-categories" type="matching" title="News Category Recognition"}
82
+ :::exercise{id="reading-7-news-categories" type="matching" title="News Category Recognition" skill="word-recognition" objectiveId="obj-r7-news-vocab"}
77
83
 
78
84
  **Question:** Match each news category to its Thai name
79
85
 
@@ -93,7 +99,7 @@ Storm enters south, citizens warned to be careful
93
99
 
94
100
  :::
95
101
 
96
- :::exercise{id="reading-7-headline-structure" type="fill-in-blank" title="Headline Structure"}
102
+ :::exercise{id="reading-7-headline-structure" type="fill-in-blank" title="Headline Structure" skill="pattern-recognition" objectiveId="obj-r7-headline-structure"}
97
103
 
98
104
  **Question:** How are Thai news headlines structured?
99
105
 
@@ -110,7 +116,7 @@ Example: "รัฐบาลประกาศมาตรการใหม่"
110
116
 
111
117
  :::
112
118
 
113
- :::exercise{id="reading-7-news-vocab" type="multiple-choice" title="Common News Vocabulary"}
119
+ :::exercise{id="reading-7-news-vocab" type="multiple-choice" title="Common News Vocabulary" skill="reading-comprehension" objectiveId="obj-r7-condensed-text"}
114
120
 
115
121
  **Question:** What does "รัฐบาล" mean in news headlines?
116
122
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 30
16
16
  prerequisites:
17
17
  - thai-reading-lesson-07
18
- objectives:
19
- - "Read official announcement formats"
20
- - "Understand formal Thai writing"
21
- - "Recognize notice patterns"
18
+ learningObjectives:
19
+ - id: obj-r8-announcement-formats
20
+ description: "Read official announcement formats"
21
+ skill: reading-comprehension
22
+ - id: obj-r8-formal-writing
23
+ description: "Understand formal Thai writing"
24
+ skill: word-recognition
25
+ - id: obj-r8-notice-patterns
26
+ description: "Recognize notice patterns"
27
+ skill: pattern-recognition
22
28
  ---
23
29
 
24
30
  # Short Notices
@@ -74,7 +80,7 @@ Official notices appear in buildings, offices, and public spaces. Learn their pa
74
80
 
75
81
  ## Practice Exercises
76
82
 
77
- :::exercise{id="reading-8-notice-headers" type="matching" title="Notice Header Recognition"}
83
+ :::exercise{id="reading-8-notice-headers" type="matching" title="Notice Header Recognition" skill="word-recognition" objectiveId="obj-r8-announcement-formats"}
78
84
 
79
85
  **Question:** Match each notice header to its meaning
80
86
 
@@ -94,7 +100,7 @@ Official notices appear in buildings, offices, and public spaces. Learn their pa
94
100
 
95
101
  :::
96
102
 
97
- :::exercise{id="reading-8-formal-phrases" type="fill-in-blank" title="Formal Notice Phrases"}
103
+ :::exercise{id="reading-8-formal-phrases" type="fill-in-blank" title="Formal Notice Phrases" skill="word-recognition" objectiveId="obj-r8-formal-writing"}
98
104
 
99
105
  **Question:** What do these formal phrases mean?
100
106
 
@@ -114,7 +120,7 @@ Official notices appear in buildings, offices, and public spaces. Learn their pa
114
120
 
115
121
  :::
116
122
 
117
- :::exercise{id="reading-8-time-references" type="multiple-choice" title="Time References in Notices"}
123
+ :::exercise{id="reading-8-time-references" type="multiple-choice" title="Time References in Notices" skill="pattern-recognition" objectiveId="obj-r8-notice-patterns"}
118
124
 
119
125
  **Question:** What does "ชั่วคราว" mean in a notice?
120
126
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 35
16
16
  prerequisites:
17
17
  - thai-reading-lesson-08
18
- objectives:
19
- - "Follow narrative structure in Thai"
20
- - "Understand story vocabulary"
21
- - "Read connected paragraphs"
18
+ learningObjectives:
19
+ - id: obj-r9-narrative-structure
20
+ description: "Follow narrative structure in Thai"
21
+ skill: reading-comprehension
22
+ - id: obj-r9-story-vocab
23
+ description: "Understand story vocabulary"
24
+ skill: word-recognition
25
+ - id: obj-r9-connected-paragraphs
26
+ description: "Read connected paragraphs"
27
+ skill: reading-comprehension
22
28
  ---
23
29
 
24
30
  # Simple Stories
@@ -75,7 +81,7 @@ Short stories help build reading fluency. Practice following Thai narratives.
75
81
 
76
82
  ## Practice Exercises
77
83
 
78
- :::exercise{id="reading-9-story-vocab" type="matching" title="Story Vocabulary"}
84
+ :::exercise{id="reading-9-story-vocab" type="matching" title="Story Vocabulary" skill="word-recognition" objectiveId="obj-r9-story-vocab"}
79
85
 
80
86
  **Question:** Match each story word to its meaning
81
87
 
@@ -95,7 +101,7 @@ Short stories help build reading fluency. Practice following Thai narratives.
95
101
 
96
102
  :::
97
103
 
98
- :::exercise{id="reading-9-time-markers" type="fill-in-blank" title="Story Time Markers"}
104
+ :::exercise{id="reading-9-time-markers" type="fill-in-blank" title="Story Time Markers" skill="word-recognition" objectiveId="obj-r9-connected-paragraphs"}
99
105
 
100
106
  **Question:** What are common time markers in Thai stories?
101
107
 
@@ -111,7 +117,7 @@ Common time markers:
111
117
 
112
118
  :::
113
119
 
114
- :::exercise{id="reading-9-comprehension" type="multiple-choice" title="Story Comprehension"}
120
+ :::exercise{id="reading-9-comprehension" type="multiple-choice" title="Story Comprehension" skill="reading-comprehension" objectiveId="obj-r9-narrative-structure"}
115
121
 
116
122
  **Question:** In the story "แมวกับปลา", what did the cat do?
117
123
 
@@ -15,10 +15,16 @@ metadata:
15
15
  estimatedTime: 35
16
16
  prerequisites:
17
17
  - thai-reading-lesson-09
18
- objectives:
19
- - "Read receipts and bills"
20
- - "Understand forms and applications"
21
- - "Navigate everyday documents"
18
+ learningObjectives:
19
+ - id: obj-r10-receipts-bills
20
+ description: "Read receipts and bills"
21
+ skill: reading-comprehension
22
+ - id: obj-r10-forms-applications
23
+ description: "Understand forms and applications"
24
+ skill: reading-comprehension
25
+ - id: obj-r10-everyday-documents
26
+ description: "Navigate everyday documents"
27
+ skill: word-recognition
22
28
  ---
23
29
 
24
30
  # Daily Life Reading
@@ -86,7 +92,7 @@ Thai Kitchen Restaurant
86
92
 
87
93
  ## Practice Exercises
88
94
 
89
- :::exercise{id="reading-10-receipt-terms" type="matching" title="Receipt Vocabulary"}
95
+ :::exercise{id="reading-10-receipt-terms" type="matching" title="Receipt Vocabulary" skill="word-recognition" objectiveId="obj-r10-receipts-bills"}
90
96
 
91
97
  **Question:** Match each receipt term to its meaning
92
98
 
@@ -106,7 +112,7 @@ Thai Kitchen Restaurant
106
112
 
107
113
  :::
108
114
 
109
- :::exercise{id="reading-10-form-fields" type="fill-in-blank" title="Form Field Recognition"}
115
+ :::exercise{id="reading-10-form-fields" type="fill-in-blank" title="Form Field Recognition" skill="word-recognition" objectiveId="obj-r10-forms-applications"}
110
116
 
111
117
  **Question:** What do these form fields mean?
112
118
 
@@ -124,7 +130,7 @@ Thai Kitchen Restaurant
124
130
 
125
131
  :::
126
132
 
127
- :::exercise{id="reading-10-document-types" type="multiple-choice" title="Document Type Recognition"}
133
+ :::exercise{id="reading-10-document-types" type="multiple-choice" title="Document Type Recognition" skill="word-recognition" objectiveId="obj-r10-everyday-documents"}
128
134
 
129
135
  **Question:** What is ใบสมัคร?
130
136
 
@@ -12,11 +12,19 @@ categories:
12
12
  - transport
13
13
  metadata:
14
14
  estimatedTime: 25
15
- objectives:
16
- - "Name common vehicles and transport types"
17
- - "Hail taxis and tuk-tuks"
18
- - "Use public transportation vocabulary"
19
- - "Rent vehicles"
15
+ learningObjectives:
16
+ - id: obj-01a
17
+ description: "Name common vehicles and transport types"
18
+ skill: word-recognition
19
+ - id: obj-01b
20
+ description: "Hail taxis and tuk-tuks"
21
+ skill: situational-response
22
+ - id: obj-01c
23
+ description: "Use public transportation vocabulary"
24
+ skill: word-production
25
+ - id: obj-01d
26
+ description: "Rent vehicles"
27
+ skill: pattern-application
20
28
  ---
21
29
 
22
30
  # บทที่ 1 (Lesson 1) — Getting Around
@@ -85,7 +93,7 @@ Thailand has diverse transportation options from modern BTS trains to traditiona
85
93
 
86
94
  ## Practice Exercises
87
95
 
88
- :::exercise{id="travel-1-transport-types" type="matching" title="Transportation Types"}
96
+ :::exercise{id="travel-1-transport-types" type="matching" title="Transportation Types" skill="word-recognition" objectiveId="obj-01a"}
89
97
 
90
98
  **Question:** Match each transport type to its Thai name
91
99
 
@@ -107,7 +115,7 @@ Thailand has diverse transportation options from modern BTS trains to traditiona
107
115
 
108
116
  :::
109
117
 
110
- :::exercise{id="travel-1-taxi-etiquette" type="multiple-choice" title="Taxi Etiquette"}
118
+ :::exercise{id="travel-1-taxi-etiquette" type="multiple-choice" title="Taxi Etiquette" skill="situational-response" objectiveId="obj-01b"}
111
119
 
112
120
  **Question:** What should you always say when getting in a taxi in Thailand?
113
121
 
@@ -123,7 +131,7 @@ Thailand has diverse transportation options from modern BTS trains to traditiona
123
131
 
124
132
  :::
125
133
 
126
- :::exercise{id="travel-1-hailing-transport" type="fill-in-blank" title="Hailing Transportation"}
134
+ :::exercise{id="travel-1-hailing-transport" type="fill-in-blank" title="Hailing Transportation" skill="situational-response" objectiveId="obj-01b"}
127
135
 
128
136
  **Question:** How do you hail different types of transport?
129
137
 
@@ -14,11 +14,19 @@ metadata:
14
14
  estimatedTime: 25
15
15
  prerequisites:
16
16
  - thai-travel-lesson-01
17
- objectives:
18
- - "Give and understand basic directions"
19
- - "Ask where places are"
20
- - "Describe relative positions"
21
- - "Use distance vocabulary"
17
+ learningObjectives:
18
+ - id: obj-02a
19
+ description: "Give and understand basic directions"
20
+ skill: pattern-application
21
+ - id: obj-02b
22
+ description: "Ask where places are"
23
+ skill: pattern-recognition
24
+ - id: obj-02c
25
+ description: "Describe relative positions"
26
+ skill: word-production
27
+ - id: obj-02d
28
+ description: "Use distance vocabulary"
29
+ skill: word-recognition
22
30
  ---
23
31
 
24
32
  # บทที่ 2 (Lesson 2) — Directions
@@ -97,7 +105,7 @@ Knowing direction words transforms you from a lost tourist into a confident navi
97
105
 
98
106
  ## Practice Exercises
99
107
 
100
- :::exercise{id="travel-2-basic-directions" type="matching" title="Basic Direction Recognition"}
108
+ :::exercise{id="travel-2-basic-directions" type="matching" title="Basic Direction Recognition" skill="word-recognition" objectiveId="obj-02a"}
101
109
 
102
110
  **Question:** Match each direction to its Thai word
103
111
 
@@ -117,7 +125,7 @@ Knowing direction words transforms you from a lost tourist into a confident navi
117
125
 
118
126
  :::
119
127
 
120
- :::exercise{id="travel-2-distance" type="multiple-choice" title="Distance Vocabulary"}
128
+ :::exercise{id="travel-2-distance" type="multiple-choice" title="Distance Vocabulary" skill="word-recognition" objectiveId="obj-02d"}
121
129
 
122
130
  **Question:** What's the difference between ใกล้ and ไกล?
123
131
 
@@ -133,7 +141,7 @@ Knowing direction words transforms you from a lost tourist into a confident navi
133
141
 
134
142
  :::
135
143
 
136
- :::exercise{id="travel-2-asking-directions" type="fill-in-blank" title="Asking for Directions"}
144
+ :::exercise{id="travel-2-asking-directions" type="fill-in-blank" title="Asking for Directions" skill="pattern-application" objectiveId="obj-02b"}
137
145
 
138
146
  **Question:** How do you ask these questions?
139
147
 
@@ -14,11 +14,19 @@ metadata:
14
14
  estimatedTime: 25
15
15
  prerequisites:
16
16
  - thai-travel-lesson-02
17
- objectives:
18
- - "Name common tourist destinations"
19
- - "Identify essential service locations"
20
- - "Ask about nearby places"
21
- - "Give location-based directions"
17
+ learningObjectives:
18
+ - id: obj-03a
19
+ description: "Name common tourist destinations"
20
+ skill: word-recognition
21
+ - id: obj-03b
22
+ description: "Identify essential service locations"
23
+ skill: word-recognition
24
+ - id: obj-03c
25
+ description: "Ask about nearby places"
26
+ skill: pattern-application
27
+ - id: obj-03d
28
+ description: "Give location-based directions"
29
+ skill: pattern-application
22
30
  ---
23
31
 
24
32
  # บทที่ 3 (Lesson 3) — Key Places
@@ -98,7 +106,7 @@ Knowing the names of important places helps you navigate cities and communicate
98
106
 
99
107
  ## Practice Exercises
100
108
 
101
- :::exercise{id="travel-3-place-names" type="matching" title="Place Name Recognition"}
109
+ :::exercise{id="travel-3-place-names" type="matching" title="Place Name Recognition" skill="word-recognition" objectiveId="obj-03a"}
102
110
 
103
111
  **Question:** Match each place to its Thai name
104
112
 
@@ -120,7 +128,7 @@ Knowing the names of important places helps you navigate cities and communicate
120
128
 
121
129
  :::
122
130
 
123
- :::exercise{id="travel-3-asking-about-places" type="fill-in-blank" title="Asking About Places"}
131
+ :::exercise{id="travel-3-asking-about-places" type="fill-in-blank" title="Asking About Places" skill="pattern-application" objectiveId="obj-03c"}
124
132
 
125
133
  **Question:** How do you ask if there's a place nearby?
126
134
 
@@ -137,7 +145,7 @@ Examples:
137
145
 
138
146
  :::
139
147
 
140
- :::exercise{id="travel-3-service-locations" type="multiple-choice" title="Service Locations"}
148
+ :::exercise{id="travel-3-service-locations" type="multiple-choice" title="Service Locations" skill="word-recognition" objectiveId="obj-03b"}
141
149
 
142
150
  **Question:** How do you say "convenience store" in Thai?
143
151