@vibeuniv/mcp-server 0.3.1 β 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/api-client.d.ts +3 -1
- package/dist/lib/api-client.d.ts.map +1 -1
- package/dist/lib/api-client.js +13 -0
- package/dist/lib/api-client.js.map +1 -1
- package/dist/lib/file-scanner.d.ts +13 -0
- package/dist/lib/file-scanner.d.ts.map +1 -1
- package/dist/lib/file-scanner.js +43 -1
- package/dist/lib/file-scanner.js.map +1 -1
- package/dist/tools/analyze.d.ts.map +1 -1
- package/dist/tools/analyze.js +13 -4
- package/dist/tools/analyze.js.map +1 -1
- package/dist/tools/ask-tutor.d.ts.map +1 -1
- package/dist/tools/ask-tutor.js +17 -5
- package/dist/tools/ask-tutor.js.map +1 -1
- package/dist/tools/generate-curriculum.d.ts.map +1 -1
- package/dist/tools/generate-curriculum.js +389 -66
- package/dist/tools/generate-curriculum.js.map +1 -1
- package/dist/tools/submit-analysis.d.ts.map +1 -1
- package/dist/tools/submit-analysis.js +17 -7
- package/dist/tools/submit-analysis.js.map +1 -1
- package/dist/tools/submit-curriculum.d.ts.map +1 -1
- package/dist/tools/submit-curriculum.js +66 -19
- package/dist/tools/submit-curriculum.js.map +1 -1
- package/dist/tools/submit-tech-stacks.d.ts.map +1 -1
- package/dist/tools/submit-tech-stacks.js +12 -3
- package/dist/tools/submit-tech-stacks.js.map +1 -1
- package/dist/tools/sync-project.d.ts.map +1 -1
- package/dist/tools/sync-project.js +33 -15
- package/dist/tools/sync-project.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/lib/api-client.d.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import type { AnalysisResult, CreateProjectInput, CurriculumContext, CurriculumSubmitResult, EducationalAnalysisData, KnowledgeHintsResult, LearningPath, Project, ProjectDetail, ProjectFile, SessionLog, TechStackItem, TechStackSubmission, TechStackSubmitResult, TutorContext, TutorResponse } from "../types.js";
|
|
1
|
+
import type { AnalysisResult, CreateProjectInput, CurriculumContext, CurriculumSubmitResult, EducationalAnalysisData, KnowledgeHintsResult, LearningPath, Locale, Project, ProjectDetail, ProjectFile, SessionLog, TechStackItem, TechStackSubmission, TechStackSubmitResult, TutorContext, TutorResponse } from "../types.js";
|
|
2
2
|
export declare class VibeUnivClient {
|
|
3
3
|
private apiKey;
|
|
4
4
|
private baseUrl;
|
|
5
|
+
private cachedLocale;
|
|
5
6
|
constructor(apiKey: string, baseUrl: string);
|
|
7
|
+
getUserLocale(): Promise<Locale>;
|
|
6
8
|
private request;
|
|
7
9
|
createProject(data: CreateProjectInput): Promise<Project>;
|
|
8
10
|
uploadFiles(projectId: string, files: ProjectFile[]): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EAEd,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,YAAY,EACZ,OAAO,EACP,aAAa,EACb,WAAW,EACX,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACd,MAAM,aAAa,CAAC;AA2DrB,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EAEd,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,YAAY,EACZ,MAAM,EACN,OAAO,EACP,aAAa,EACb,WAAW,EACX,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACd,MAAM,aAAa,CAAC;AA2DrB,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAuB;gBAE/B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAKrC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;YAWxB,OAAO;IA2Cf,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAYnE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAoBnD,YAAY;IAyCpB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA2BzD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAYhE,QAAQ,CACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,CAAC;IAenB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAuC1D,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoBrE,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAYlF,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,sBAAsB,CAAC;IAsB5B,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAO3D,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,mBAAmB,GAC9B,OAAO,CAAC,qBAAqB,CAAC;IAQ3B,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAOzD,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAM1E"}
|
package/dist/lib/api-client.js
CHANGED
|
@@ -3,10 +3,23 @@ const MAX_POLL_ATTEMPTS = 60;
|
|
|
3
3
|
export class VibeUnivClient {
|
|
4
4
|
apiKey;
|
|
5
5
|
baseUrl;
|
|
6
|
+
cachedLocale = null;
|
|
6
7
|
constructor(apiKey, baseUrl) {
|
|
7
8
|
this.apiKey = apiKey;
|
|
8
9
|
this.baseUrl = baseUrl.replace(/\/$/, "");
|
|
9
10
|
}
|
|
11
|
+
async getUserLocale() {
|
|
12
|
+
if (this.cachedLocale)
|
|
13
|
+
return this.cachedLocale;
|
|
14
|
+
try {
|
|
15
|
+
const data = await this.request("GET", "/user/locale");
|
|
16
|
+
this.cachedLocale = data.locale;
|
|
17
|
+
return data.locale;
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
return "ko";
|
|
21
|
+
}
|
|
22
|
+
}
|
|
10
23
|
async request(method, path, body) {
|
|
11
24
|
if (!this.apiKey) {
|
|
12
25
|
throw new Error("VIBEUNIV_API_KEY is not configured. " +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAsBA,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAwD7B,MAAM,OAAO,cAAc;IACjB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,YAAY,GAAkB,IAAI,CAAC;IAE3C,YAAY,MAAc,EAAE,OAAe;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAqB,KAAK,EAAE,cAAc,CAAC,CAAC;YAC3E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;YAChC,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EACd,IAAY,EACZ,IAAc;QAEd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,sCAAsC;gBACpC,sDAAsD;gBACtD,0DAA0D;gBAC1D,uDAAuD,CAC1D,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QAErC,MAAM,OAAO,GAA2B;YACtC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;YACtC,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,2BAA2B;SAC1C,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM;YACN,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmB,CAAC;QAEvD,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,YAAY,GAChB,IAAI,CAAC,KAAK,IAAI,kCAAkC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAwB;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAU,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,KAAoB;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,SAAS,EAAE,CAAC,CAAC,IAAI;YACjB,SAAS,EAAE,CAAC,CAAC,YAAY;YACzB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,YAAY,EAAE,CAAC,CAAC,MAAM;SACvB,CAAC,CAAC,CAAC;QACJ,MAAM,IAAI,CAAC,OAAO,CAAO,MAAM,EAAE,aAAa,SAAS,QAAQ,EAAE;YAC/D,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,MAAM,EACN,aAAa,SAAS,UAAU,CACjC,CAAC;QAEF,MAAM,MAAM,GAAmB;YAC7B,EAAE,EAAE,GAAG,CAAC,MAAM;YACd,SAAS;YACT,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,SAAiB,EACjB,KAAa;QAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;YAEtE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,KAAK,EACL,aAAa,SAAS,YAAY,KAAK,EAAE,CAC1C,CAAC;YAEF,MAAM,MAAM,GAAmB;gBAC7B,EAAE,EAAE,GAAG,CAAC,MAAM;gBACd,SAAS;gBACT,MAAM,EAAE,GAAG,CAAC,MAAkC;gBAC9C,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,SAAS;gBAC5C,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,CAAC,CAAC,eAAe;oBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,SAAS;oBAC/B,UAAU,EAAE,CAAC,CAAC,gBAAgB;oBAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;iBACzB,CAAC,CAAC;gBACH,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;gBACtC,WAAW,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;gBAC1C,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtD,CAAC;YAEF,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAChE,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,OAAO,CAAC,KAAK,CACX,+CAA+C,CAAC,GAAG,CAAC,IAAI,iBAAiB,GAAG,CAC7E,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,KAAK,EACL,aAAa,SAAS,WAAW,CAClC,CAAC;QAEF,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,SAAS;YACT,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;YACzC,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,YAAY,EAAE,GAAG,CAAC,aAAa;YAC/B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/B,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;gBAChC,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;gBACtB,KAAK,EAAE,CAAC,CAAC,YAAY;gBACrB,gBAAgB,EAAE,CAAC,CAAC,iBAAiB,IAAI,SAAS;gBAClD,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,IAAgB;QAClD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,MAAM,EACN,aAAa,SAAS,WAAW,EACjC;YACE,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,YAAY;SACjC,CACF,CAAC;QACF,OAAO,GAAG,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,SAAiB,EACjB,QAAgB,EAChB,cAAuB;QAEvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,MAAM,EACN,aAAa,SAAS,QAAQ,EAC9B;YACE,QAAQ;YACR,eAAe,EAAE,cAAc;SAChC,CACF,CAAC;QACF,OAAO;YACL,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,cAAc,EAAE,GAAG,CAAC,eAAe;SACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,SAAiB,EAAE,YAAqC;QACtF,MAAM,IAAI,CAAC,OAAO,CAChB,MAAM,EACN,aAAa,SAAS,uBAAuB,EAC7C,EAAE,aAAa,EAAE,YAAY,EAAE,CAChC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QAmBnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,KAAK,EACL,aAAa,SAAS,QAAQ,CAC/B,CAAC;QAEF,MAAM,KAAK,GAAoB,EAAE,CAAC;QAClC,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBACpC,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,IAAI,CAAC,eAAe;oBAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS;oBAClC,UAAU,EAAE,IAAI,CAAC,gBAAgB;oBACjC,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,SAAmB;QAOzC,MAAM,UAAU,GAAG,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,KAAK,EACL,oBAAoB,UAAU,EAAE,CACjC,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,cAAc,EAAE,GAAG,CAAC,eAAe;YACnC,cAAc,EAAE,GAAG,CAAC,eAAe;SACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAiB;QAC5C,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,OAAO,CACvB,KAAK,EACL,aAAa,SAAS,uBAAuB,CAC9C,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,6DAA6D,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACvH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,UAAmC;QAQnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC5B,MAAM,EACN,aAAa,SAAS,aAAa,EACnC,EAAE,UAAU,EAAE,CACf,CAAC;QAEF,OAAO;YACL,cAAc,EAAE,GAAG,CAAC,gBAAgB;YACpC,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,YAAY,EAAE,GAAG,CAAC,aAAa;SAChC,CAAC;IACJ,CAAC;IAED,mEAAmE;IAEnE,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACtC,OAAO,IAAI,CAAC,OAAO,CACjB,KAAK,EACL,aAAa,SAAS,SAAS,CAChC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,UAA+B;QAE/B,OAAO,IAAI,CAAC,OAAO,CACjB,MAAM,EACN,aAAa,SAAS,cAAc,EACpC,UAAU,CACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,OAAO,IAAI,CAAC,OAAO,CACjB,KAAK,EACL,aAAa,SAAS,gBAAgB,CACvC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,OAAO,IAAI,CAAC,OAAO,CACjB,KAAK,EACL,aAAa,SAAS,qBAAqB,CAC5C,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ProjectFile } from "../types.js";
|
|
2
|
+
export declare function isTeachingCriticalFile(relativePath: string): boolean;
|
|
2
3
|
/**
|
|
3
4
|
* Extract lightweight header from source code files.
|
|
4
5
|
* Returns only import/require statements, export statements,
|
|
@@ -7,4 +8,16 @@ import type { ProjectFile } from "../types.js";
|
|
|
7
8
|
*/
|
|
8
9
|
export declare function extractFileHeader(content: string): string;
|
|
9
10
|
export declare function scanProjectFiles(rootDir: string): Promise<ProjectFile[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Scan local project and return only teaching-critical files
|
|
13
|
+
* (page.tsx, layout.tsx, API routes, middleware, lib/*, server/*, types/*).
|
|
14
|
+
* Config files excluded. Files truncated to maxContentLength.
|
|
15
|
+
*/
|
|
16
|
+
export declare function scanTeachingCriticalFiles(rootDir: string, options?: {
|
|
17
|
+
maxFiles?: number;
|
|
18
|
+
maxContentLength?: number;
|
|
19
|
+
}): Promise<Array<{
|
|
20
|
+
file_path: string;
|
|
21
|
+
content: string;
|
|
22
|
+
}>>;
|
|
10
23
|
//# sourceMappingURL=file-scanner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/file-scanner.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"file-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/file-scanner.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAuG/C,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAcpE;AAgDD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA+EzD;AAyCD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC,CAuExB;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7D,OAAO,CAAC,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CA0CxD"}
|
package/dist/lib/file-scanner.js
CHANGED
|
@@ -91,7 +91,7 @@ const TEACHING_CRITICAL_PATTERNS = [
|
|
|
91
91
|
"server/**/*.ts",
|
|
92
92
|
"types/**/*.ts",
|
|
93
93
|
];
|
|
94
|
-
function isTeachingCriticalFile(relativePath) {
|
|
94
|
+
export function isTeachingCriticalFile(relativePath) {
|
|
95
95
|
return TEACHING_CRITICAL_PATTERNS.some((pattern) => {
|
|
96
96
|
// Convert glob pattern to regex using placeholders to avoid
|
|
97
97
|
// conflicting replacements between glob wildcards and regex syntax.
|
|
@@ -297,4 +297,46 @@ export async function scanProjectFiles(rootDir) {
|
|
|
297
297
|
console.error(`[vibeuniv] Scanned ${foundFiles.length} files (${rootMatches.length} config + ${limitedSource.length} source) in ${rootDir}`);
|
|
298
298
|
return foundFiles;
|
|
299
299
|
}
|
|
300
|
+
/**
|
|
301
|
+
* Scan local project and return only teaching-critical files
|
|
302
|
+
* (page.tsx, layout.tsx, API routes, middleware, lib/*, server/*, types/*).
|
|
303
|
+
* Config files excluded. Files truncated to maxContentLength.
|
|
304
|
+
*/
|
|
305
|
+
export async function scanTeachingCriticalFiles(rootDir, options = {}) {
|
|
306
|
+
const maxFiles = options.maxFiles ?? 20;
|
|
307
|
+
const maxContentLength = options.maxContentLength ?? 8000;
|
|
308
|
+
// Collect source files only (config files excluded)
|
|
309
|
+
const sourceMatches = await collectFiles(rootDir, SOURCE_PATTERNS, IGNORE_PATTERNS);
|
|
310
|
+
// Filter to teaching-critical files only
|
|
311
|
+
const teachingFiles = sourceMatches.filter((p) => isTeachingCriticalFile(p));
|
|
312
|
+
// Sort by depth (entry points first), then alphabetically
|
|
313
|
+
teachingFiles.sort((a, b) => {
|
|
314
|
+
const depthA = a.split("/").length;
|
|
315
|
+
const depthB = b.split("/").length;
|
|
316
|
+
if (depthA !== depthB)
|
|
317
|
+
return depthA - depthB;
|
|
318
|
+
return a.localeCompare(b);
|
|
319
|
+
});
|
|
320
|
+
const limited = teachingFiles.slice(0, maxFiles);
|
|
321
|
+
const results = [];
|
|
322
|
+
for (const relativePath of limited) {
|
|
323
|
+
const absolutePath = join(rootDir, relativePath);
|
|
324
|
+
try {
|
|
325
|
+
const fileStat = await stat(absolutePath);
|
|
326
|
+
if (!fileStat.isFile() || fileStat.size > MAX_FILE_SIZE)
|
|
327
|
+
continue;
|
|
328
|
+
let content = await readFile(absolutePath, "utf-8");
|
|
329
|
+
if (content.length > maxContentLength) {
|
|
330
|
+
content = content.slice(0, maxContentLength) +
|
|
331
|
+
`\n// ... truncated (original ${content.length} chars)`;
|
|
332
|
+
}
|
|
333
|
+
results.push({ file_path: relativePath, content });
|
|
334
|
+
}
|
|
335
|
+
catch {
|
|
336
|
+
console.error(`[vibeuniv] Warning: Could not read file ${relativePath}`);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
console.error(`[vibeuniv] Scanned ${results.length} teaching-critical files locally`);
|
|
340
|
+
return results;
|
|
341
|
+
}
|
|
300
342
|
//# sourceMappingURL=file-scanner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-scanner.js","sourceRoot":"","sources":["../../src/lib/file-scanner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO;AACxC,MAAM,gBAAgB,GAAG,EAAE,CAAC,CAAC,gBAAgB;AAC7C,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B,iFAAiF;AACjF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AAEH,uEAAuE;AAEvE,MAAM,gBAAgB,GAAG;IACvB,cAAc;IACd,kBAAkB;IAClB,SAAS;IACT,gBAAgB;IAChB,cAAc;IACd,kBAAkB;IAClB,SAAS;IACT,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,eAAe;CAChB,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,gBAAgB;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,gBAAgB;IAChB,cAAc;IACd,oBAAoB;IACpB,qBAAqB;IACrB,YAAY;IACZ,cAAc;IACd,aAAa;IACb,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,GAAG,gBAAgB;IACnB,GAAG,gBAAgB;IACnB,GAAG,YAAY;IACf,WAAW;CACZ,CAAC;AAEF,uEAAuE;AAEvE,MAAM,eAAe,GAAG;IACtB,mBAAmB;IACnB,0BAA0B;IAC1B,4BAA4B;IAC5B,iCAAiC;IACjC,0BAA0B;IAC1B,6BAA6B;IAC7B,0BAA0B;IAC1B,6BAA6B;IAC7B,oBAAoB;IACpB,SAAS;IACT,SAAS;IACT,OAAO;IACP,aAAa;IACb,KAAK;IACL,SAAS;CACV,CAAC;AAEF,uEAAuE;AAEvE,wEAAwE;AACxE,uEAAuE;AACvE,sEAAsE;AACtE,2EAA2E;AAE3E,MAAM,0BAA0B,GAAG;IACjC,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,kBAAkB;IAClB,iBAAiB;IACjB,eAAe;IACf,eAAe;IACf,aAAa;IACb,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"file-scanner.js","sourceRoot":"","sources":["../../src/lib/file-scanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,eAAO,MAAM,aAAa;;;CAMzB,CAAC;AAEF,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,eAAO,MAAM,aAAa;;;CAMzB,CAAC;AAEF,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAiH/E"}
|
package/dist/tools/analyze.js
CHANGED
|
@@ -29,11 +29,20 @@ export function registerAnalyze(server, client) {
|
|
|
29
29
|
}
|
|
30
30
|
output += "\n";
|
|
31
31
|
}
|
|
32
|
+
const locale = await client.getUserLocale();
|
|
32
33
|
output += "To re-analyze, call vibeuniv_analyze with force: true.\n\n";
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
if (locale === "en") {
|
|
35
|
+
output += "π Next step: Generate a learning curriculum\n";
|
|
36
|
+
output += "Ask the user which difficulty level they prefer:\n";
|
|
37
|
+
output += " - beginner / intermediate / advanced\n";
|
|
38
|
+
output += "After confirming the difficulty, call vibeuniv_generate_curriculum.";
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
output += "π λ€μ λ¨κ³: νμ΅ μ»€λ¦¬νλΌ μμ±\n";
|
|
42
|
+
output += "μ¬μ©μμκ² μνλ λμ΄λλ₯Ό λ¬Όμ΄λ³΄μΈμ:\n";
|
|
43
|
+
output += " - beginner (μ΄κΈ) / intermediate (μ€κΈ) / advanced (κ³ κΈ)\n";
|
|
44
|
+
output += "λμ΄λλ₯Ό νμΈν ν vibeuniv_generate_curriculumμ νΈμΆνμΈμ.";
|
|
45
|
+
}
|
|
37
46
|
return {
|
|
38
47
|
content: [{ type: "text", text: output }],
|
|
39
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IACrE,KAAK,EAAE,CAAC;SACL,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,sDAAsD,CAAC;CACpE,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,MAAiB,EAAE,MAAsB;IACvE,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,iEAAiE,EACjE,aAAa,EACb,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAC3C,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;QAC9B,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,0CAA0C,UAAU,KAAK,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAEzD,4EAA4E;YAC5E,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnD,IAAI,MAAM,GAAG,YAAY,MAAM,CAAC,IAAI,iBAAiB,MAAM,CAAC,kBAAkB,CAAC,MAAM,6BAA6B,CAAC;gBAEnH,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4C,CAAC;gBACpE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAClD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBACvC,CAAC;gBAED,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxC,MAAM,IAAI,MAAM,QAAQ,KAAK,CAAC;oBAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;wBACrD,MAAM,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,OAAO,KAAK,UAAU,iBAAiB,CAAC;oBACzE,CAAC;oBACD,MAAM,IAAI,IAAI,CAAC;gBACjB,CAAC;gBAED,MAAM,IAAI,4DAA4D,CAAC;gBACvE,MAAM,IAAI,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-tutor.d.ts","sourceRoot":"","sources":["../../src/tools/ask-tutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"ask-tutor.d.ts","sourceRoot":"","sources":["../../src/tools/ask-tutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAuFhF"}
|
package/dist/tools/ask-tutor.js
CHANGED
|
@@ -8,11 +8,19 @@ export function registerAskTutor(server, client) {
|
|
|
8
8
|
try {
|
|
9
9
|
console.error(`[vibeuniv] Fetching tutor context for project ${project_id}...`);
|
|
10
10
|
const context = await client.getTutorContext(project_id);
|
|
11
|
+
const locale = await client.getUserLocale();
|
|
11
12
|
// Build tutor instructions for local AI
|
|
12
13
|
let output = `## AI Tutor β Answer the student's question below\n\n`;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
if (locale === "en") {
|
|
15
|
+
output += `You are a friendly tutor for a "vibe coder" β someone who built a working app with AI tools but wants to understand WHY it works.\n\n`;
|
|
16
|
+
output += `**Style:** Reference the student's actual code with file paths. Explain simply with analogies. ~500 words max. Be encouraging.\n`;
|
|
17
|
+
output += `**Rules:** Never make up code not in the project. No filler ("Great question!"). Admit unknowns honestly. **Write ALL in English.**\n\n`;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
output += `You are a friendly tutor for a "vibe coder" β someone who built a working app with AI tools but wants to understand WHY it works.\n\n`;
|
|
21
|
+
output += `**Style:** Reference the student's actual code with file paths. Explain simply with analogies. ~500 words max. Be encouraging.\n`;
|
|
22
|
+
output += `**Rules:** Never make up code not in the project. No filler ("Great question!"). Admit unknowns honestly. **λ°λμ νκ΅μ΄ ν΄μμ²΄λ‘ λ΅λ³νμΈμ.**\n\n`;
|
|
23
|
+
}
|
|
16
24
|
// Tech stacks section
|
|
17
25
|
if (context.techStacks.length > 0) {
|
|
18
26
|
output += `### Student's Project Technologies\n\n`;
|
|
@@ -40,7 +48,9 @@ export function registerAskTutor(server, client) {
|
|
|
40
48
|
// Module list with vibeuniv.com links
|
|
41
49
|
if (lc.modules && lc.modules.length > 0) {
|
|
42
50
|
output += `### Available Learning Modules\n\n`;
|
|
43
|
-
output +=
|
|
51
|
+
output += locale === "en"
|
|
52
|
+
? `Below are the student's learning modules. If a module is relevant to your answer, include a vibeuniv.com link:\n\n`
|
|
53
|
+
: `μλλ νμμ νμ΅ λͺ¨λ λͺ©λ‘μ
λλ€. λ΅λ³κ³Ό κ΄λ ¨λ λͺ¨λμ΄ μμΌλ©΄ vibeuniv.com λ§ν¬λ₯Ό μλ΄νμΈμ:\n\n`;
|
|
44
54
|
for (const mod of lc.modules) {
|
|
45
55
|
output += `${mod.module_order}. [${mod.title}](https://vibeuniv.com/learning/${lc.learning_path_id}/${mod.id})\n`;
|
|
46
56
|
}
|
|
@@ -48,7 +58,9 @@ export function registerAskTutor(server, client) {
|
|
|
48
58
|
}
|
|
49
59
|
}
|
|
50
60
|
// Instruction to suggest learning links
|
|
51
|
-
output +=
|
|
61
|
+
output += locale === "en"
|
|
62
|
+
? `At the end, if a related module exists: π Learn more β [Module name](link). If none, skip.\n\n`
|
|
63
|
+
: `λ΅λ³ λμ κ΄λ ¨ λͺ¨λμ΄ μμΌλ©΄: π λ μμΈν β [λͺ¨λλͺ
](λ§ν¬) νμμΌλ‘ μλ΄. μμΌλ©΄ μλ΅.\n\n`;
|
|
52
64
|
// User question
|
|
53
65
|
output += `### Student's Question\n\n`;
|
|
54
66
|
output += question;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-tutor.js","sourceRoot":"","sources":["../../src/tools/ask-tutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;CAC9F,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,MAAsB;IACxE,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,uFAAuF,EACvF,cAAc,EACd,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAC3C,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;QACjC,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,iDAAiD,UAAU,KAAK,CAAC,CAAC;YAChF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAEzD,wCAAwC;YACxC,IAAI,MAAM,GAAG,uDAAuD,CAAC;YAErE,MAAM,IAAI,uIAAuI,CAAC;
|
|
1
|
+
{"version":3,"file":"ask-tutor.js","sourceRoot":"","sources":["../../src/tools/ask-tutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-curriculum.d.ts","sourceRoot":"","sources":["../../src/tools/generate-curriculum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-curriculum.d.ts","sourceRoot":"","sources":["../../src/tools/generate-curriculum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD,eAAO,MAAM,wBAAwB;;;CAMpC,CAAC;AAoPF,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CA4X1F"}
|