@syllst/th 0.2.3 → 0.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/LICENSE +21 -0
  2. package/dist/index.d.ts +21 -15
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +98 -59
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.umd.cjs +106 -0
  7. package/dist/index.umd.cjs.map +1 -0
  8. package/dist/syllabi/alphabet/index.d.ts +2 -5
  9. package/dist/syllabi/alphabet/index.d.ts.map +1 -0
  10. package/dist/syllabi/dialogue/index.d.ts +2 -5
  11. package/dist/syllabi/dialogue/index.d.ts.map +1 -0
  12. package/dist/syllabi/essentials/index.d.ts +2 -5
  13. package/dist/syllabi/essentials/index.d.ts.map +1 -0
  14. package/dist/syllabi/food/index.d.ts +2 -5
  15. package/dist/syllabi/food/index.d.ts.map +1 -0
  16. package/dist/syllabi/grammar/index.d.ts +2 -5
  17. package/dist/syllabi/grammar/index.d.ts.map +1 -0
  18. package/dist/syllabi/numbers/index.d.ts +2 -5
  19. package/dist/syllabi/numbers/index.d.ts.map +1 -0
  20. package/dist/syllabi/reading/index.d.ts +2 -5
  21. package/dist/syllabi/reading/index.d.ts.map +1 -0
  22. package/dist/syllabi/travel/index.d.ts +2 -5
  23. package/dist/syllabi/travel/index.d.ts.map +1 -0
  24. package/dist/syllabi/vowels-tones/index.d.ts +2 -5
  25. package/dist/syllabi/vowels-tones/index.d.ts.map +1 -0
  26. package/package.json +7 -5
  27. package/dist/index-BM-LWlCm.js +0 -52
  28. package/dist/index-BM-LWlCm.js.map +0 -1
  29. package/dist/index-Bjym0crS.js +0 -48
  30. package/dist/index-Bjym0crS.js.map +0 -1
  31. package/dist/index-BuKXw7-Z.js +0 -46
  32. package/dist/index-BuKXw7-Z.js.map +0 -1
  33. package/dist/index-ByS0o5dz.js +0 -52
  34. package/dist/index-ByS0o5dz.js.map +0 -1
  35. package/dist/index-C9VnG7dT.js +0 -52
  36. package/dist/index-C9VnG7dT.js.map +0 -1
  37. package/dist/index-CPQkjFjV.js +0 -50
  38. package/dist/index-CPQkjFjV.js.map +0 -1
  39. package/dist/index-CkHd3Fal.js +0 -56
  40. package/dist/index-CkHd3Fal.js.map +0 -1
  41. package/dist/index-DBkPBXe2.js +0 -52
  42. package/dist/index-DBkPBXe2.js.map +0 -1
  43. package/dist/index-DdRhLqkM.js +0 -82
  44. package/dist/index-DdRhLqkM.js.map +0 -1
  45. package/dist/lesson-01-B0wtSaSl.js +0 -118
  46. package/dist/lesson-01-B0wtSaSl.js.map +0 -1
  47. package/dist/lesson-01-C9vbUlA4.js +0 -138
  48. package/dist/lesson-01-C9vbUlA4.js.map +0 -1
  49. package/dist/lesson-01-CPmBFTe0.js +0 -132
  50. package/dist/lesson-01-CPmBFTe0.js.map +0 -1
  51. package/dist/lesson-01-Cc4Ws8eR.js +0 -158
  52. package/dist/lesson-01-Cc4Ws8eR.js.map +0 -1
  53. package/dist/lesson-01-Cm5k-m-9.js +0 -136
  54. package/dist/lesson-01-Cm5k-m-9.js.map +0 -1
  55. package/dist/lesson-01-DELblCNj.js +0 -97
  56. package/dist/lesson-01-DELblCNj.js.map +0 -1
  57. package/dist/lesson-01-Djl_72e7.js +0 -153
  58. package/dist/lesson-01-Djl_72e7.js.map +0 -1
  59. package/dist/lesson-01-LEHTeGQQ.js +0 -155
  60. package/dist/lesson-01-LEHTeGQQ.js.map +0 -1
  61. package/dist/lesson-01-ih_-OO_O.js +0 -111
  62. package/dist/lesson-01-ih_-OO_O.js.map +0 -1
  63. package/dist/lesson-02-B2aZrKUQ.js +0 -120
  64. package/dist/lesson-02-B2aZrKUQ.js.map +0 -1
  65. package/dist/lesson-02-BI1Vnwiz.js +0 -169
  66. package/dist/lesson-02-BI1Vnwiz.js.map +0 -1
  67. package/dist/lesson-02-BXbwEMaL.js +0 -180
  68. package/dist/lesson-02-BXbwEMaL.js.map +0 -1
  69. package/dist/lesson-02-CbJJ5Amt.js +0 -201
  70. package/dist/lesson-02-CbJJ5Amt.js.map +0 -1
  71. package/dist/lesson-02-DGrALAgG.js +0 -203
  72. package/dist/lesson-02-DGrALAgG.js.map +0 -1
  73. package/dist/lesson-02-DcMDDBDL.js +0 -116
  74. package/dist/lesson-02-DcMDDBDL.js.map +0 -1
  75. package/dist/lesson-02-Dk59HZWp.js +0 -222
  76. package/dist/lesson-02-Dk59HZWp.js.map +0 -1
  77. package/dist/lesson-02-L8oNhBej.js +0 -145
  78. package/dist/lesson-02-L8oNhBej.js.map +0 -1
  79. package/dist/lesson-02-VDOme3ES.js +0 -204
  80. package/dist/lesson-02-VDOme3ES.js.map +0 -1
  81. package/dist/lesson-03-9WioSe19.js +0 -196
  82. package/dist/lesson-03-9WioSe19.js.map +0 -1
  83. package/dist/lesson-03-BZutWzMD.js +0 -124
  84. package/dist/lesson-03-BZutWzMD.js.map +0 -1
  85. package/dist/lesson-03-Bj5hWZ9t.js +0 -152
  86. package/dist/lesson-03-Bj5hWZ9t.js.map +0 -1
  87. package/dist/lesson-03-CSIF5xRS.js +0 -181
  88. package/dist/lesson-03-CSIF5xRS.js.map +0 -1
  89. package/dist/lesson-03-CSKig363.js +0 -225
  90. package/dist/lesson-03-CSKig363.js.map +0 -1
  91. package/dist/lesson-03-DPJOG2M_.js +0 -138
  92. package/dist/lesson-03-DPJOG2M_.js.map +0 -1
  93. package/dist/lesson-03-DkjCuJ26.js +0 -237
  94. package/dist/lesson-03-DkjCuJ26.js.map +0 -1
  95. package/dist/lesson-03-DucbRMOQ.js +0 -171
  96. package/dist/lesson-03-DucbRMOQ.js.map +0 -1
  97. package/dist/lesson-03-MIne1PbH.js +0 -185
  98. package/dist/lesson-03-MIne1PbH.js.map +0 -1
  99. package/dist/lesson-04-0Pj_x1DU.js +0 -233
  100. package/dist/lesson-04-0Pj_x1DU.js.map +0 -1
  101. package/dist/lesson-04-B9h0p9kE.js +0 -190
  102. package/dist/lesson-04-B9h0p9kE.js.map +0 -1
  103. package/dist/lesson-04-BLuPI1-X.js +0 -216
  104. package/dist/lesson-04-BLuPI1-X.js.map +0 -1
  105. package/dist/lesson-04-CmDvofL4.js +0 -230
  106. package/dist/lesson-04-CmDvofL4.js.map +0 -1
  107. package/dist/lesson-04-DGKHK4LW.js +0 -178
  108. package/dist/lesson-04-DGKHK4LW.js.map +0 -1
  109. package/dist/lesson-04-DUcHZzsk.js +0 -218
  110. package/dist/lesson-04-DUcHZzsk.js.map +0 -1
  111. package/dist/lesson-04-DnVIXXk-.js +0 -141
  112. package/dist/lesson-04-DnVIXXk-.js.map +0 -1
  113. package/dist/lesson-04-FZnIE7tu.js +0 -187
  114. package/dist/lesson-04-FZnIE7tu.js.map +0 -1
  115. package/dist/lesson-04-ToX3nRz1.js +0 -172
  116. package/dist/lesson-04-ToX3nRz1.js.map +0 -1
  117. package/dist/lesson-05-2aTCGXMh.js +0 -181
  118. package/dist/lesson-05-2aTCGXMh.js.map +0 -1
  119. package/dist/lesson-05-BvitRdE8.js +0 -206
  120. package/dist/lesson-05-BvitRdE8.js.map +0 -1
  121. package/dist/lesson-05-CgXGkcjS.js +0 -143
  122. package/dist/lesson-05-CgXGkcjS.js.map +0 -1
  123. package/dist/lesson-05-ClfrUrvX.js +0 -244
  124. package/dist/lesson-05-ClfrUrvX.js.map +0 -1
  125. package/dist/lesson-05-D2zf9n7k.js +0 -201
  126. package/dist/lesson-05-D2zf9n7k.js.map +0 -1
  127. package/dist/lesson-05-DWquBfdl.js +0 -220
  128. package/dist/lesson-05-DWquBfdl.js.map +0 -1
  129. package/dist/lesson-05-DpIkwhJ8.js +0 -244
  130. package/dist/lesson-05-DpIkwhJ8.js.map +0 -1
  131. package/dist/lesson-05-UYz39ORV.js +0 -189
  132. package/dist/lesson-05-UYz39ORV.js.map +0 -1
  133. package/dist/lesson-05-t6XuANiZ.js +0 -180
  134. package/dist/lesson-05-t6XuANiZ.js.map +0 -1
  135. package/dist/lesson-06-B2y08mKv.js +0 -238
  136. package/dist/lesson-06-B2y08mKv.js.map +0 -1
  137. package/dist/lesson-06-CHqaVQix.js +0 -202
  138. package/dist/lesson-06-CHqaVQix.js.map +0 -1
  139. package/dist/lesson-06-CaCZBX1V.js +0 -273
  140. package/dist/lesson-06-CaCZBX1V.js.map +0 -1
  141. package/dist/lesson-06-ClplsJBT.js +0 -204
  142. package/dist/lesson-06-ClplsJBT.js.map +0 -1
  143. package/dist/lesson-06-CzGnNKo5.js +0 -141
  144. package/dist/lesson-06-CzGnNKo5.js.map +0 -1
  145. package/dist/lesson-06-Dg_bQLNC.js +0 -172
  146. package/dist/lesson-06-Dg_bQLNC.js.map +0 -1
  147. package/dist/lesson-06-OWFMgO0a.js +0 -231
  148. package/dist/lesson-06-OWFMgO0a.js.map +0 -1
  149. package/dist/lesson-06-Q2aRAzws.js +0 -190
  150. package/dist/lesson-06-Q2aRAzws.js.map +0 -1
  151. package/dist/lesson-07-BLDUA_Ff.js +0 -194
  152. package/dist/lesson-07-BLDUA_Ff.js.map +0 -1
  153. package/dist/lesson-07-BpyF1Ssq.js +0 -236
  154. package/dist/lesson-07-BpyF1Ssq.js.map +0 -1
  155. package/dist/lesson-07-C4GrfDTW.js +0 -234
  156. package/dist/lesson-07-C4GrfDTW.js.map +0 -1
  157. package/dist/lesson-07-CVCUt1Jn.js +0 -206
  158. package/dist/lesson-07-CVCUt1Jn.js.map +0 -1
  159. package/dist/lesson-07-DQFXCZsZ.js +0 -197
  160. package/dist/lesson-07-DQFXCZsZ.js.map +0 -1
  161. package/dist/lesson-07-Dcry2Yjo.js +0 -248
  162. package/dist/lesson-07-Dcry2Yjo.js.map +0 -1
  163. package/dist/lesson-07-JS_cqdNr.js +0 -142
  164. package/dist/lesson-07-JS_cqdNr.js.map +0 -1
  165. package/dist/lesson-08-18gscaS0.js +0 -227
  166. package/dist/lesson-08-18gscaS0.js.map +0 -1
  167. package/dist/lesson-08-2kBUq_B2.js +0 -220
  168. package/dist/lesson-08-2kBUq_B2.js.map +0 -1
  169. package/dist/lesson-08-BP5lpiGe.js +0 -287
  170. package/dist/lesson-08-BP5lpiGe.js.map +0 -1
  171. package/dist/lesson-08-BXm9GgdN.js +0 -146
  172. package/dist/lesson-08-BXm9GgdN.js.map +0 -1
  173. package/dist/lesson-08-Bru0PdEK.js +0 -277
  174. package/dist/lesson-08-Bru0PdEK.js.map +0 -1
  175. package/dist/lesson-08-Dd-8cbGW.js +0 -205
  176. package/dist/lesson-08-Dd-8cbGW.js.map +0 -1
  177. package/dist/lesson-09-B1qWE3Yl.js +0 -221
  178. package/dist/lesson-09-B1qWE3Yl.js.map +0 -1
  179. package/dist/lesson-09-B5Vb70xj.js +0 -143
  180. package/dist/lesson-09-B5Vb70xj.js.map +0 -1
  181. package/dist/lesson-10-00qNLc7A.js +0 -233
  182. package/dist/lesson-10-00qNLc7A.js.map +0 -1
  183. package/dist/lesson-10-Dw-Jtm3D.js +0 -156
  184. package/dist/lesson-10-Dw-Jtm3D.js.map +0 -1
  185. package/dist/lesson-11-BM3R_S7I.js +0 -260
  186. package/dist/lesson-11-BM3R_S7I.js.map +0 -1
  187. package/dist/lesson-12-D1Wx7CyK.js +0 -277
  188. package/dist/lesson-12-D1Wx7CyK.js.map +0 -1
  189. package/dist/skills-hcn-pGD0.js +0 -244
  190. package/dist/skills-hcn-pGD0.js.map +0 -1
  191. package/dist/syllabi/alphabet/index.js +0 -9
  192. package/dist/syllabi/alphabet/index.js.map +0 -1
  193. package/dist/syllabi/dialogue/index.js +0 -10
  194. package/dist/syllabi/dialogue/index.js.map +0 -1
  195. package/dist/syllabi/essentials/index.js +0 -10
  196. package/dist/syllabi/essentials/index.js.map +0 -1
  197. package/dist/syllabi/food/index.js +0 -10
  198. package/dist/syllabi/food/index.js.map +0 -1
  199. package/dist/syllabi/grammar/index.js +0 -10
  200. package/dist/syllabi/grammar/index.js.map +0 -1
  201. package/dist/syllabi/numbers/index.js +0 -10
  202. package/dist/syllabi/numbers/index.js.map +0 -1
  203. package/dist/syllabi/reading/index.js +0 -10
  204. package/dist/syllabi/reading/index.js.map +0 -1
  205. package/dist/syllabi/travel/index.js +0 -10
  206. package/dist/syllabi/travel/index.js.map +0 -1
  207. package/dist/syllabi/vowels-tones/index.js +0 -10
  208. package/dist/syllabi/vowels-tones/index.js.map +0 -1
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 syllst contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.d.ts CHANGED
@@ -1,15 +1,21 @@
1
- import { ContentLoader } from '@syllst/content-shared';
2
- import { LoadedLesson } from '@syllst/content-shared';
3
- import { SyllabusConfig } from '@syllst/content-shared';
4
-
5
- export declare const config: SyllabusConfig;
6
-
7
- export declare const getAvailableLessons: () => number[];
8
-
9
- export declare const loadAllLessons: () => Promise<LoadedLesson[]>;
10
-
11
- export declare const loader: ContentLoader;
12
-
13
- export declare const loadLesson: (lessonNumber: number) => Promise<LoadedLesson | null>;
14
-
15
- export { }
1
+ import { config as alphabetConfig, loader as alphabetLoader } from './syllabi/alphabet';
2
+ import { config as vowelsTonesConfig, loader as vowelsTonesLoader } from './syllabi/vowels-tones';
3
+ import { config as numbersConfig, loader as numbersLoader } from './syllabi/numbers';
4
+ import { config as essentialsConfig, loader as essentialsLoader } from './syllabi/essentials';
5
+ import { config as foodConfig, loader as foodLoader } from './syllabi/food';
6
+ import { config as travelConfig, loader as travelLoader } from './syllabi/travel';
7
+ import { config as dialogueConfig, loader as dialogueLoader } from './syllabi/dialogue';
8
+ import { config as grammarConfig, loader as grammarLoader } from './syllabi/grammar';
9
+ import { config as readingConfig, loader as readingLoader } from './syllabi/reading';
10
+ export { alphabetConfig, alphabetLoader };
11
+ export { vowelsTonesConfig, vowelsTonesLoader };
12
+ export { numbersConfig, numbersLoader };
13
+ export { essentialsConfig, essentialsLoader };
14
+ export { foodConfig, foodLoader };
15
+ export { travelConfig, travelLoader };
16
+ export { dialogueConfig, dialogueLoader };
17
+ export { grammarConfig, grammarLoader };
18
+ export { readingConfig, readingLoader };
19
+ export declare const allConfigs: import('@syllst/core').SyllabusConfig[];
20
+ export declare function getConfigById(id: string): import('@syllst/core').SyllabusConfig | undefined;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AAGxC,eAAO,MAAM,UAAU,yCAUtB,CAAC;AAGF,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,qDAEvC"}
package/dist/index.js CHANGED
@@ -1,64 +1,103 @@
1
- import { c as r } from "./index-DdRhLqkM.js";
2
- import { i as T, l as y } from "./index-DdRhLqkM.js";
3
- import { c as s } from "./index-DBkPBXe2.js";
4
- import { i as I, l as j } from "./index-DBkPBXe2.js";
5
- import { c as i } from "./index-BuKXw7-Z.js";
6
- import { i as q, l as z } from "./index-BuKXw7-Z.js";
7
- import { c as e } from "./index-Bjym0crS.js";
8
- import { i as D, l as E } from "./index-Bjym0crS.js";
9
- import { c as f } from "./index-C9VnG7dT.js";
10
- import { i as G, l as H } from "./index-C9VnG7dT.js";
11
- import { c as n } from "./index-CPQkjFjV.js";
12
- import { i as K, l as M } from "./index-CPQkjFjV.js";
13
- import { c as m } from "./index-ByS0o5dz.js";
14
- import { i as O, l as P } from "./index-ByS0o5dz.js";
15
- import { c as t } from "./index-BM-LWlCm.js";
16
- import { i as R, l as S } from "./index-BM-LWlCm.js";
17
- import { c as g } from "./index-CkHd3Fal.js";
18
- import { i as V, l as W } from "./index-CkHd3Fal.js";
19
- const l = [
20
- r,
21
- s,
22
- i,
23
- e,
24
- f,
25
- n,
26
- m,
27
- t,
28
- g
1
+ import { createLoader } from "@syllst/processor";
2
+ const config$8 = {
3
+ id: "alphabet",
4
+ title: "Alphabet",
5
+ description: "Thai alphabet (consonants and initial consonants)",
6
+ language: "th",
7
+ script: "thai"
8
+ };
9
+ const loader$8 = createLoader(config$8);
10
+ const config$7 = {
11
+ id: "vowels-tones",
12
+ title: "Vowels & Tones",
13
+ description: "Thai vowels and tone rules",
14
+ language: "th",
15
+ script: "thai"
16
+ };
17
+ const loader$7 = createLoader(config$7);
18
+ const config$6 = {
19
+ id: "numbers",
20
+ title: "Numbers",
21
+ description: "Learn Thai numbers and counting",
22
+ language: "th"
23
+ };
24
+ const loader$6 = createLoader(config$6);
25
+ const config$5 = {
26
+ id: "essentials",
27
+ title: "Essentials",
28
+ description: "Essential Thai phrases and vocabulary",
29
+ language: "th"
30
+ };
31
+ const loader$5 = createLoader(config$5);
32
+ const config$4 = {
33
+ id: "food",
34
+ title: "Food",
35
+ description: "Thai food vocabulary and dining phrases",
36
+ language: "th"
37
+ };
38
+ const loader$4 = createLoader(config$4);
39
+ const config$3 = {
40
+ id: "travel",
41
+ title: "Travel",
42
+ description: "Thai travel phrases and vocabulary",
43
+ language: "th"
44
+ };
45
+ const loader$3 = createLoader(config$3);
46
+ const config$2 = {
47
+ id: "dialogue",
48
+ title: "Dialogue",
49
+ description: "Thai conversation dialogues",
50
+ language: "th"
51
+ };
52
+ const loader$2 = createLoader(config$2);
53
+ const config$1 = {
54
+ id: "grammar",
55
+ title: "Grammar",
56
+ description: "Thai grammar fundamentals",
57
+ language: "th"
58
+ };
59
+ const loader$1 = createLoader(config$1);
60
+ const config = {
61
+ id: "reading",
62
+ title: "Reading",
63
+ description: "Thai reading comprehension",
64
+ language: "th"
65
+ };
66
+ const loader = createLoader(config);
67
+ const allConfigs = [
68
+ config$8,
69
+ config$7,
70
+ config$6,
71
+ config$5,
72
+ config$4,
73
+ config$3,
74
+ config$2,
75
+ config$1,
76
+ config
29
77
  ];
30
- function v(o) {
31
- return l.find((a) => a.id === o);
78
+ function getConfigById(id) {
79
+ return allConfigs.find((config2) => config2.id === id);
32
80
  }
33
81
  export {
34
- l as allConfigs,
35
- T as alphabet,
36
- r as alphabetConfig,
37
- y as alphabetLoader,
38
- O as dialogue,
39
- m as dialogueConfig,
40
- P as dialogueLoader,
41
- D as essentials,
42
- e as essentialsConfig,
43
- E as essentialsLoader,
44
- G as food,
45
- f as foodConfig,
46
- H as foodLoader,
47
- v as getConfigById,
48
- R as grammar,
49
- t as grammarConfig,
50
- S as grammarLoader,
51
- q as numbers,
52
- i as numbersConfig,
53
- z as numbersLoader,
54
- V as reading,
55
- g as readingConfig,
56
- W as readingLoader,
57
- K as travel,
58
- n as travelConfig,
59
- M as travelLoader,
60
- I as vowelsTones,
61
- s as vowelsTonesConfig,
62
- j as vowelsTonesLoader
82
+ allConfigs,
83
+ config$8 as alphabetConfig,
84
+ loader$8 as alphabetLoader,
85
+ config$2 as dialogueConfig,
86
+ loader$2 as dialogueLoader,
87
+ config$5 as essentialsConfig,
88
+ loader$5 as essentialsLoader,
89
+ config$4 as foodConfig,
90
+ loader$4 as foodLoader,
91
+ getConfigById,
92
+ config$1 as grammarConfig,
93
+ loader$1 as grammarLoader,
94
+ config$6 as numbersConfig,
95
+ loader$6 as numbersLoader,
96
+ config as readingConfig,
97
+ loader as readingLoader,
98
+ config$3 as travelConfig,
99
+ loader$3 as travelLoader,
100
+ config$7 as vowelsTonesConfig,
101
+ loader$7 as vowelsTonesLoader
63
102
  };
64
103
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["/**\n * @syllst/th\n *\n * Thai SYLLST content package.\n * Contains all Thai language syllabi: alphabet, vowels-tones, numbers,\n * essentials, food, travel, dialogue, grammar, and reading.\n */\n\n// Re-export all syllabi\nexport * as alphabet from './syllabi/alphabet/index.js';\nexport * as vowelsTones from './syllabi/vowels-tones/index.js';\nexport * as numbers from './syllabi/numbers/index.js';\nexport * as essentials from './syllabi/essentials/index.js';\nexport * as food from './syllabi/food/index.js';\nexport * as travel from './syllabi/travel/index.js';\nexport * as dialogue from './syllabi/dialogue/index.js';\nexport * as grammar from './syllabi/grammar/index.js';\nexport * as reading from './syllabi/reading/index.js';\n\n// Re-export configs for convenience\nexport { config as alphabetConfig } from './syllabi/alphabet/index.js';\nexport { config as vowelsTonesConfig } from './syllabi/vowels-tones/index.js';\nexport { config as numbersConfig } from './syllabi/numbers/index.js';\nexport { config as essentialsConfig } from './syllabi/essentials/index.js';\nexport { config as foodConfig } from './syllabi/food/index.js';\nexport { config as travelConfig } from './syllabi/travel/index.js';\nexport { config as dialogueConfig } from './syllabi/dialogue/index.js';\nexport { config as grammarConfig } from './syllabi/grammar/index.js';\nexport { config as readingConfig } from './syllabi/reading/index.js';\n\n// Re-export loaders for convenience\nexport { loader as alphabetLoader } from './syllabi/alphabet/index.js';\nexport { loader as vowelsTonesLoader } from './syllabi/vowels-tones/index.js';\nexport { loader as numbersLoader } from './syllabi/numbers/index.js';\nexport { loader as essentialsLoader } from './syllabi/essentials/index.js';\nexport { loader as foodLoader } from './syllabi/food/index.js';\nexport { loader as travelLoader } from './syllabi/travel/index.js';\nexport { loader as dialogueLoader } from './syllabi/dialogue/index.js';\nexport { loader as grammarLoader } from './syllabi/grammar/index.js';\nexport { loader as readingLoader } from './syllabi/reading/index.js';\n\n// Re-export types from content-shared\nexport type { SyllabusConfig, ContentLoader, LoadedLesson } from '@syllst/content-shared';\n\n// Export all configs as array for iteration\nimport { config as alphabetConfig } from './syllabi/alphabet/index.js';\nimport { config as vowelsTonesConfig } from './syllabi/vowels-tones/index.js';\nimport { config as numbersConfig } from './syllabi/numbers/index.js';\nimport { config as essentialsConfig } from './syllabi/essentials/index.js';\nimport { config as foodConfig } from './syllabi/food/index.js';\nimport { config as travelConfig } from './syllabi/travel/index.js';\nimport { config as dialogueConfig } from './syllabi/dialogue/index.js';\nimport { config as grammarConfig } from './syllabi/grammar/index.js';\nimport { config as readingConfig } from './syllabi/reading/index.js';\n\nimport type { SyllabusConfig } from '@syllst/content-shared';\n\n/**\n * All Thai syllabi configurations\n */\nexport const allConfigs: SyllabusConfig[] = [\n alphabetConfig,\n vowelsTonesConfig,\n numbersConfig,\n essentialsConfig,\n foodConfig,\n travelConfig,\n dialogueConfig,\n grammarConfig,\n readingConfig,\n];\n\n/**\n * Get a syllabus config by ID\n */\nexport function getConfigById(id: string): SyllabusConfig | undefined {\n return allConfigs.find(c => c.id === id);\n}\n"],"names":["allConfigs","alphabetConfig","vowelsTonesConfig","numbersConfig","essentialsConfig","foodConfig","travelConfig","dialogueConfig","grammarConfig","readingConfig","getConfigById","id","c"],"mappings":";;;;;;;;;;;;;;;;;;AA4DO,MAAMA,IAA+B;AAAA,EAC1CC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACF;AAKO,SAASC,EAAcC,GAAwC;AACpE,SAAOX,EAAW,KAAK,CAAAY,MAAKA,EAAE,OAAOD,CAAE;AACzC;"}
1
+ {"version":3,"file":"index.js","sources":["../src/syllabi/alphabet/index.ts","../src/syllabi/vowels-tones/index.ts","../src/syllabi/numbers/index.ts","../src/syllabi/essentials/index.ts","../src/syllabi/food/index.ts","../src/syllabi/travel/index.ts","../src/syllabi/dialogue/index.ts","../src/syllabi/grammar/index.ts","../src/syllabi/reading/index.ts","../src/index.ts"],"sourcesContent":["import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'alphabet',\n title: 'Alphabet',\n description: 'Thai alphabet (consonants and initial consonants)',\n language: 'th',\n script: 'thai',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'vowels-tones',\n title: 'Vowels & Tones',\n description: 'Thai vowels and tone rules',\n language: 'th',\n script: 'thai',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'numbers',\n title: 'Numbers',\n description: 'Learn Thai numbers and counting',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'essentials',\n title: 'Essentials',\n description: 'Essential Thai phrases and vocabulary',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'food',\n title: 'Food',\n description: 'Thai food vocabulary and dining phrases',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'travel',\n title: 'Travel',\n description: 'Thai travel phrases and vocabulary',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'dialogue',\n title: 'Dialogue',\n description: 'Thai conversation dialogues',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'grammar',\n title: 'Grammar',\n description: 'Thai grammar fundamentals',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'reading',\n title: 'Reading',\n description: 'Thai reading comprehension',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","/**\r\n * @syllst/th\r\n *\r\n * Thai language learning content for the syllabus framework.\r\n */\r\n\r\n// Import syllabi with unique names\r\nimport { config as alphabetConfig, loader as alphabetLoader } from './syllabi/alphabet';\r\nimport { config as vowelsTonesConfig, loader as vowelsTonesLoader } from './syllabi/vowels-tones';\r\nimport { config as numbersConfig, loader as numbersLoader } from './syllabi/numbers';\r\nimport { config as essentialsConfig, loader as essentialsLoader } from './syllabi/essentials';\r\nimport { config as foodConfig, loader as foodLoader } from './syllabi/food';\r\nimport { config as travelConfig, loader as travelLoader } from './syllabi/travel';\r\nimport { config as dialogueConfig, loader as dialogueLoader } from './syllabi/dialogue';\r\nimport { config as grammarConfig, loader as grammarLoader } from './syllabi/grammar';\r\nimport { config as readingConfig, loader as readingLoader } from './syllabi/reading';\r\n\r\n// Re-export configs and loaders\r\nexport { alphabetConfig, alphabetLoader };\r\nexport { vowelsTonesConfig, vowelsTonesLoader };\r\nexport { numbersConfig, numbersLoader };\r\nexport { essentialsConfig, essentialsLoader };\r\nexport { foodConfig, foodLoader };\r\nexport { travelConfig, travelLoader };\r\nexport { dialogueConfig, dialogueLoader };\r\nexport { grammarConfig, grammarLoader };\r\nexport { readingConfig, readingLoader };\r\n\r\n// Helper function to get all configs\r\nexport const allConfigs = [\r\n alphabetConfig,\r\n vowelsTonesConfig,\r\n numbersConfig,\r\n essentialsConfig,\r\n foodConfig,\r\n travelConfig,\r\n dialogueConfig,\r\n grammarConfig,\r\n readingConfig,\r\n];\r\n\r\n// Helper function to get config by ID\r\nexport function getConfigById(id: string) {\r\n return allConfigs.find((config) => config.id === id);\r\n}\r\n"],"names":["config","loader","alphabetConfig","vowelsTonesConfig","numbersConfig","essentialsConfig","foodConfig","travelConfig","dialogueConfig","grammarConfig","readingConfig"],"mappings":";AAGO,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,QAAQ;AACV;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACTlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,QAAQ;AACV;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACTlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAMA,WAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAMC,WAAS,aAAaD,QAAM;ACRlC,MAAM,SAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AACZ;AAGO,MAAM,SAAS,aAAa,MAAM;ACkBlC,MAAM,aAAa;AAAA,EACxBE;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACF;AAGO,SAAS,cAAc,IAAY;AACxC,SAAO,WAAW,KAAK,CAACV,YAAWA,QAAO,OAAO,EAAE;AACrD;"}
@@ -0,0 +1,106 @@
1
+ (function(global, factory) {
2
+ typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("@syllst/processor")) : typeof define === "function" && define.amd ? define(["exports", "@syllst/processor"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global["syllst-th"] = {}, global.syllstProcessor));
3
+ })(this, (function(exports2, processor) {
4
+ "use strict";
5
+ const config$8 = {
6
+ id: "alphabet",
7
+ title: "Alphabet",
8
+ description: "Thai alphabet (consonants and initial consonants)",
9
+ language: "th",
10
+ script: "thai"
11
+ };
12
+ const loader$8 = processor.createLoader(config$8);
13
+ const config$7 = {
14
+ id: "vowels-tones",
15
+ title: "Vowels & Tones",
16
+ description: "Thai vowels and tone rules",
17
+ language: "th",
18
+ script: "thai"
19
+ };
20
+ const loader$7 = processor.createLoader(config$7);
21
+ const config$6 = {
22
+ id: "numbers",
23
+ title: "Numbers",
24
+ description: "Learn Thai numbers and counting",
25
+ language: "th"
26
+ };
27
+ const loader$6 = processor.createLoader(config$6);
28
+ const config$5 = {
29
+ id: "essentials",
30
+ title: "Essentials",
31
+ description: "Essential Thai phrases and vocabulary",
32
+ language: "th"
33
+ };
34
+ const loader$5 = processor.createLoader(config$5);
35
+ const config$4 = {
36
+ id: "food",
37
+ title: "Food",
38
+ description: "Thai food vocabulary and dining phrases",
39
+ language: "th"
40
+ };
41
+ const loader$4 = processor.createLoader(config$4);
42
+ const config$3 = {
43
+ id: "travel",
44
+ title: "Travel",
45
+ description: "Thai travel phrases and vocabulary",
46
+ language: "th"
47
+ };
48
+ const loader$3 = processor.createLoader(config$3);
49
+ const config$2 = {
50
+ id: "dialogue",
51
+ title: "Dialogue",
52
+ description: "Thai conversation dialogues",
53
+ language: "th"
54
+ };
55
+ const loader$2 = processor.createLoader(config$2);
56
+ const config$1 = {
57
+ id: "grammar",
58
+ title: "Grammar",
59
+ description: "Thai grammar fundamentals",
60
+ language: "th"
61
+ };
62
+ const loader$1 = processor.createLoader(config$1);
63
+ const config = {
64
+ id: "reading",
65
+ title: "Reading",
66
+ description: "Thai reading comprehension",
67
+ language: "th"
68
+ };
69
+ const loader = processor.createLoader(config);
70
+ const allConfigs = [
71
+ config$8,
72
+ config$7,
73
+ config$6,
74
+ config$5,
75
+ config$4,
76
+ config$3,
77
+ config$2,
78
+ config$1,
79
+ config
80
+ ];
81
+ function getConfigById(id) {
82
+ return allConfigs.find((config2) => config2.id === id);
83
+ }
84
+ exports2.allConfigs = allConfigs;
85
+ exports2.alphabetConfig = config$8;
86
+ exports2.alphabetLoader = loader$8;
87
+ exports2.dialogueConfig = config$2;
88
+ exports2.dialogueLoader = loader$2;
89
+ exports2.essentialsConfig = config$5;
90
+ exports2.essentialsLoader = loader$5;
91
+ exports2.foodConfig = config$4;
92
+ exports2.foodLoader = loader$4;
93
+ exports2.getConfigById = getConfigById;
94
+ exports2.grammarConfig = config$1;
95
+ exports2.grammarLoader = loader$1;
96
+ exports2.numbersConfig = config$6;
97
+ exports2.numbersLoader = loader$6;
98
+ exports2.readingConfig = config;
99
+ exports2.readingLoader = loader;
100
+ exports2.travelConfig = config$3;
101
+ exports2.travelLoader = loader$3;
102
+ exports2.vowelsTonesConfig = config$7;
103
+ exports2.vowelsTonesLoader = loader$7;
104
+ Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
105
+ }));
106
+ //# sourceMappingURL=index.umd.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.umd.cjs","sources":["../src/syllabi/alphabet/index.ts","../src/syllabi/vowels-tones/index.ts","../src/syllabi/numbers/index.ts","../src/syllabi/essentials/index.ts","../src/syllabi/food/index.ts","../src/syllabi/travel/index.ts","../src/syllabi/dialogue/index.ts","../src/syllabi/grammar/index.ts","../src/syllabi/reading/index.ts","../src/index.ts"],"sourcesContent":["import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'alphabet',\n title: 'Alphabet',\n description: 'Thai alphabet (consonants and initial consonants)',\n language: 'th',\n script: 'thai',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'vowels-tones',\n title: 'Vowels & Tones',\n description: 'Thai vowels and tone rules',\n language: 'th',\n script: 'thai',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'numbers',\n title: 'Numbers',\n description: 'Learn Thai numbers and counting',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'essentials',\n title: 'Essentials',\n description: 'Essential Thai phrases and vocabulary',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'food',\n title: 'Food',\n description: 'Thai food vocabulary and dining phrases',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'travel',\n title: 'Travel',\n description: 'Thai travel phrases and vocabulary',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'dialogue',\n title: 'Dialogue',\n description: 'Thai conversation dialogues',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'grammar',\n title: 'Grammar',\n description: 'Thai grammar fundamentals',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","import { createLoader } from '@syllst/processor';\nimport type { SyllabusConfig } from '@syllst/core/types';\n\nexport const config: SyllabusConfig = {\n id: 'reading',\n title: 'Reading',\n description: 'Thai reading comprehension',\n language: 'th',\n};\n\n// Create loader - lessons are loaded at runtime from the lessons directory\nexport const loader = createLoader(config);\n","/**\r\n * @syllst/th\r\n *\r\n * Thai language learning content for the syllabus framework.\r\n */\r\n\r\n// Import syllabi with unique names\r\nimport { config as alphabetConfig, loader as alphabetLoader } from './syllabi/alphabet';\r\nimport { config as vowelsTonesConfig, loader as vowelsTonesLoader } from './syllabi/vowels-tones';\r\nimport { config as numbersConfig, loader as numbersLoader } from './syllabi/numbers';\r\nimport { config as essentialsConfig, loader as essentialsLoader } from './syllabi/essentials';\r\nimport { config as foodConfig, loader as foodLoader } from './syllabi/food';\r\nimport { config as travelConfig, loader as travelLoader } from './syllabi/travel';\r\nimport { config as dialogueConfig, loader as dialogueLoader } from './syllabi/dialogue';\r\nimport { config as grammarConfig, loader as grammarLoader } from './syllabi/grammar';\r\nimport { config as readingConfig, loader as readingLoader } from './syllabi/reading';\r\n\r\n// Re-export configs and loaders\r\nexport { alphabetConfig, alphabetLoader };\r\nexport { vowelsTonesConfig, vowelsTonesLoader };\r\nexport { numbersConfig, numbersLoader };\r\nexport { essentialsConfig, essentialsLoader };\r\nexport { foodConfig, foodLoader };\r\nexport { travelConfig, travelLoader };\r\nexport { dialogueConfig, dialogueLoader };\r\nexport { grammarConfig, grammarLoader };\r\nexport { readingConfig, readingLoader };\r\n\r\n// Helper function to get all configs\r\nexport const allConfigs = [\r\n alphabetConfig,\r\n vowelsTonesConfig,\r\n numbersConfig,\r\n essentialsConfig,\r\n foodConfig,\r\n travelConfig,\r\n dialogueConfig,\r\n grammarConfig,\r\n readingConfig,\r\n];\r\n\r\n// Helper function to get config by ID\r\nexport function getConfigById(id: string) {\r\n return allConfigs.find((config) => config.id === id);\r\n}\r\n"],"names":["config","loader","createLoader","alphabetConfig","vowelsTonesConfig","numbersConfig","essentialsConfig","foodConfig","travelConfig","dialogueConfig","grammarConfig","readingConfig"],"mappings":";;;;AAGO,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACTlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACTlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAMA,WAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAMC,WAASC,UAAAA,aAAaF,QAAM;ACRlC,QAAM,SAAyB;AAAA,IACpC,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAGO,QAAM,SAASE,UAAAA,aAAa,MAAM;ACkBlC,QAAM,aAAa;AAAA,IACxBC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,EACF;AAGO,WAAS,cAAc,IAAY;AACxC,WAAO,WAAW,KAAK,CAACX,YAAWA,QAAO,OAAO,EAAE;AAAA,EACrD;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '../../shared.js';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('../../shared.js').LoadedLesson>;
5
- export declare const loadAllLessons: () => Promise<import('../../shared.js').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/alphabet/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAMpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/dialogue/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/essentials/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/food/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/grammar/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/numbers/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/reading/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/travel/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAKpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
@@ -1,7 +1,4 @@
1
- import { SyllabusConfig, ContentLoader } from '@syllst/content-shared';
1
+ import { SyllabusConfig } from '@syllst/core/types';
2
2
  export declare const config: SyllabusConfig;
3
- export declare const loader: ContentLoader;
4
- export declare const loadLesson: (lessonNumber: number) => Promise<import('@syllst/content-shared').LoadedLesson | null>;
5
- export declare const loadAllLessons: () => Promise<import('@syllst/content-shared').LoadedLesson[]>;
6
- export declare const getAvailableLessons: () => number[];
3
+ export declare const loader: import('@syllst/processor').ContentLoader;
7
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/syllabi/vowels-tones/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,MAAM,EAAE,cAMpB,CAAC;AAGF,eAAO,MAAM,MAAM,2CAAuB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@syllst/th",
3
- "version": "0.2.3",
3
+ "version": "0.3.11",
4
4
  "description": "Thai SYLLST content - all Thai language syllabi in one package",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -67,12 +67,14 @@
67
67
  "vite": "^7.3.1",
68
68
  "vite-plugin-dts": "^4.5.4",
69
69
  "vitest": "^4.0.18",
70
- "@laeng/th": "0.2.2",
71
- "@syllst/content-shared": "0.2.3"
70
+ "@laeng/th": "^0.2.3",
71
+ "@mdx-js/rollup": "^3.0.0",
72
+ "remark-frontmatter": "^5.0.0",
73
+ "remark-mdx": "^3.0.0"
72
74
  },
73
75
  "peerDependencies": {
74
- "@syllst/core": "^0.4.2",
75
- "@syllst/processor": "^0.5.0"
76
+ "@syllst/core": "0.6.0",
77
+ "@syllst/processor": "0.5.6"
76
78
  },
77
79
  "publishConfig": {
78
80
  "access": "public"
@@ -1,52 +0,0 @@
1
- import { c as o } from "./skills-hcn-pGD0.js";
2
- const r = {
3
- id: "th-grammar",
4
- title: "ไวยากรณ์ไทย (Thai Grammar)",
5
- description: "Essential Thai grammar patterns",
6
- language: "th",
7
- locale: "th-TH",
8
- lessonCount: 8,
9
- difficulty: "intermediate",
10
- cefrLevel: "B1",
11
- icon: "grammar",
12
- version: "0.1.0"
13
- };
14
- async function a(t) {
15
- switch (t) {
16
- case 1:
17
- return import("./lesson-01-DELblCNj.js");
18
- case 2:
19
- return import("./lesson-02-DcMDDBDL.js");
20
- case 3:
21
- return import("./lesson-03-CSIF5xRS.js");
22
- case 4:
23
- return import("./lesson-04-B9h0p9kE.js");
24
- case 5:
25
- return import("./lesson-05-2aTCGXMh.js");
26
- case 6:
27
- return import("./lesson-06-CHqaVQix.js");
28
- case 7:
29
- return import("./lesson-07-CVCUt1Jn.js");
30
- case 8:
31
- return import("./lesson-08-2kBUq_B2.js");
32
- default:
33
- throw new Error(`Lesson ${t} not found`);
34
- }
35
- }
36
- const e = o(r, a), s = e.loadLesson.bind(e), n = e.loadAllLessons.bind(e), i = e.getAvailableLessons.bind(e), l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
37
- __proto__: null,
38
- config: r,
39
- getAvailableLessons: i,
40
- loadAllLessons: n,
41
- loadLesson: s,
42
- loader: e
43
- }, Symbol.toStringTag, { value: "Module" }));
44
- export {
45
- n as a,
46
- s as b,
47
- r as c,
48
- i as g,
49
- l as i,
50
- e as l
51
- };
52
- //# sourceMappingURL=index-BM-LWlCm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BM-LWlCm.js","sources":["../src/syllabi/grammar/index.ts"],"sourcesContent":["/**\n * Thai Grammar syllabus\n */\n\nimport { createContentLoader, type SyllabusConfig, type ContentLoader } from '@syllst/content-shared';\n\nexport const config: SyllabusConfig = {\n id: 'th-grammar',\n title: 'ไวยากรณ์ไทย (Thai Grammar)',\n description: 'Essential Thai grammar patterns',\n language: 'th',\n locale: 'th-TH',\n lessonCount: 8,\n difficulty: 'intermediate',\n cefrLevel: 'B1',\n icon: 'grammar',\n version: '0.1.0',\n};\n\nasync function loadLessonMDX(lessonNumber: number) {\n switch (lessonNumber) {\n case 1: return import('./lessons/lesson-01.mdx?raw');\n case 2: return import('./lessons/lesson-02.mdx?raw');\n case 3: return import('./lessons/lesson-03.mdx?raw');\n case 4: return import('./lessons/lesson-04.mdx?raw');\n case 5: return import('./lessons/lesson-05.mdx?raw');\n case 6: return import('./lessons/lesson-06.mdx?raw');\n case 7: return import('./lessons/lesson-07.mdx?raw');\n case 8: return import('./lessons/lesson-08.mdx?raw');\n default: throw new Error(`Lesson ${lessonNumber} not found`);\n }\n}\n\nexport const loader: ContentLoader = createContentLoader(config, loadLessonMDX);\nexport const loadLesson = loader.loadLesson.bind(loader);\nexport const loadAllLessons = loader.loadAllLessons.bind(loader);\nexport const getAvailableLessons = loader.getAvailableLessons.bind(loader);\n"],"names":["config","loadLessonMDX","lessonNumber","loader","createContentLoader","loadLesson","loadAllLessons","getAvailableLessons"],"mappings":";AAMO,MAAMA,IAAyB;AAAA,EACpC,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,aAAa;AAAA,EACb,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,MAAM;AAAA,EACN,SAAS;AACX;AAEA,eAAeC,EAAcC,GAAsB;AACjD,UAAQA,GAAA;AAAA,IACN,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD,KAAK;AAAG,aAAO,OAAO,yBAA6B;AAAA,IACnD;AAAS,YAAM,IAAI,MAAM,UAAUA,CAAY,YAAY;AAAA,EAAA;AAE/D;AAEO,MAAMC,IAAwBC,EAAoBJ,GAAQC,CAAa,GACjEI,IAAaF,EAAO,WAAW,KAAKA,CAAM,GAC1CG,IAAiBH,EAAO,eAAe,KAAKA,CAAM,GAClDI,IAAsBJ,EAAO,oBAAoB,KAAKA,CAAM;;;;;;;;"}