timeback-studio 0.1.3 → 0.1.5

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 (34) hide show
  1. package/dist/bin.js +1546 -472
  2. package/dist/cli/commands/credentials/lib/initial.d.ts +9 -2
  3. package/dist/cli/commands/credentials/lib/initial.d.ts.map +1 -1
  4. package/dist/cli/commands/serve/config.d.ts +51 -7
  5. package/dist/cli/commands/serve/config.d.ts.map +1 -1
  6. package/dist/cli/commands/serve/env.d.ts +32 -0
  7. package/dist/cli/commands/serve/env.d.ts.map +1 -0
  8. package/dist/cli/commands/serve/index.d.ts +5 -3
  9. package/dist/cli/commands/serve/index.d.ts.map +1 -1
  10. package/dist/cli/commands/serve/server.d.ts.map +1 -1
  11. package/dist/cli/commands/serve/types.d.ts +1 -1
  12. package/dist/cli/commands/serve/types.d.ts.map +1 -1
  13. package/dist/cli/lib/courses.d.ts +32 -0
  14. package/dist/cli/lib/courses.d.ts.map +1 -1
  15. package/dist/cli/lib/credentials.d.ts +11 -24
  16. package/dist/cli/lib/credentials.d.ts.map +1 -1
  17. package/dist/cli/lib/index.d.ts +2 -2
  18. package/dist/cli/lib/index.d.ts.map +1 -1
  19. package/dist/cli/lib/onboarding/index.d.ts +1 -1
  20. package/dist/cli/lib/types.d.ts +13 -0
  21. package/dist/cli/lib/types.d.ts.map +1 -0
  22. package/dist/config/timeback.d.ts +1 -1
  23. package/dist/config/types.d.ts +2 -8
  24. package/dist/config/types.d.ts.map +1 -1
  25. package/dist/index.js +15403 -14329
  26. package/dist/server/controllers/enrollment.d.ts.map +1 -1
  27. package/dist/server/services/bootstrap.d.ts.map +1 -1
  28. package/dist/server/services/enrollment.d.ts +5 -3
  29. package/dist/server/services/enrollment.d.ts.map +1 -1
  30. package/dist/server/services/types/enrollment.d.ts +6 -1
  31. package/dist/server/services/types/enrollment.d.ts.map +1 -1
  32. package/dist/types.d.ts +1 -1
  33. package/dist/types.d.ts.map +1 -1
  34. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../src/server/controllers/enrollment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAa1C;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAezE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAe3E;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAe7E"}
1
+ {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../src/server/controllers/enrollment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAkB1C;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAezE;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAe3E;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC;;;;;;;;;;;;;;;;;;;kBAe7E"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/server/services/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGpD,OAAO,KAAK,EACX,eAAe,EAIf,mBAAmB,EACnB,MAAM,SAAS,CAAA;AAyBhB;;;;GAIG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,YAAY,MAAM,EAAE,cAAc,EAEjC;IAED;;;;;OAKG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CA8CzE;IAMD;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;YAkBN,oBAAoB;YAoEpB,0BAA0B;YAuC1B,cAAc;YA0Cd,YAAY;YAgCZ,gBAAgB;YA0BhB,gBAAgB;CAuD9B"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/server/services/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAeH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGpD,OAAO,KAAK,EACX,eAAe,EAIf,mBAAmB,EACnB,MAAM,SAAS,CAAA;AAyBhB;;;;GAIG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,YAAY,MAAM,EAAE,cAAc,EAEjC;IAED;;;;;OAKG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CA8CzE;IAMD;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;YAkBN,oBAAoB;YAoEpB,0BAA0B;YA8F1B,cAAc;YAgGd,YAAY;YAgCZ,gBAAgB;YA2BhB,gBAAgB;CAmH9B"}
@@ -14,14 +14,16 @@ export declare class EnrollmentService {
14
14
  private readonly client;
15
15
  constructor(client: TimebackClient);
16
16
  /**
17
- * Enroll a student in a class.
17
+ * Enroll a student in a class or course.
18
18
  *
19
- * Creates a new enrollment linking the student to the specified class.
19
+ * - If `classId` is provided: Creates enrollment in that specific class (OneRoster)
20
+ * - If `courseId` is provided: Creates enrollment via EduBridge, auto-creating class if needed
20
21
  *
21
- * @param options - Enrollment options (classId, userId)
22
+ * @param options - Enrollment options (classId or courseId, and userId)
22
23
  * @returns Result with enrollment ID or errors
23
24
  */
24
25
  enroll(options: EnrollStudentOptions): Promise<EnrollmentResult>;
26
+ private enrollViaCourse;
25
27
  /**
26
28
  * Unenroll a student from a class.
27
29
  *
@@ -1 +1 @@
1
- {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../src/server/services/enrollment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAI9F;;;;GAIG;AACH,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,YAAY,MAAM,EAAE,cAAc,EAEjC;IAED;;;;;;;OAOG;IACG,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA0BrE;IAED;;;;;;;OAOG;IACG,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqB1E;IAED;;;;;;;OAOG;IACG,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqB5E;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;CAuB7B"}
1
+ {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../src/server/services/enrollment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAI9F;;;;GAIG;AACH,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,YAAY,MAAM,EAAE,cAAc,EAEjC;IAED;;;;;;;;OAQG;IACG,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAwCrE;YAaa,eAAe;IA0B7B;;;;;;;OAOG;IACG,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqB1E;IAED;;;;;;;OAOG;IACG,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqB5E;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;CAuB7B"}
@@ -12,10 +12,15 @@ export interface EnrollmentResult {
12
12
  }
13
13
  /**
14
14
  * Options for enrolling a student.
15
+ *
16
+ * Either `classId` or `courseId` must be provided:
17
+ * - `classId`: Enroll in a specific class (standard OneRoster)
18
+ * - `courseId`: Enroll in course, auto-creating class if needed (EduBridge)
15
19
  */
16
20
  export interface EnrollStudentOptions {
17
- classId: string;
18
21
  userId: string;
22
+ classId?: string;
23
+ courseId?: string;
19
24
  }
20
25
  /**
21
26
  * Options for unenrolling or reactivating a student.
@@ -1 +1 @@
1
- {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../../src/server/services/types/enrollment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,WAAW,EAAE,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,YAAY,EAAE,MAAM,CAAA;CACpB"}
1
+ {"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../../../src/server/services/types/enrollment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,WAAW,EAAE,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC,YAAY,EAAE,MAAM,CAAA;CACpB"}
package/dist/types.d.ts CHANGED
@@ -11,7 +11,7 @@ export type { LoadedUserConfig as StudioConfig } from './config/types';
11
11
  /**
12
12
  * Standard error codes for Studio API.
13
13
  */
14
- export type StudioErrorCode = 'USER_FETCH_FAILED' | 'USERS_FETCH_FAILED' | 'COURSE_FETCH_FAILED' | 'COMPONENTS_FETCH_FAILED' | 'COMPONENT_RESOURCES_FETCH_FAILED' | 'RESOURCES_FETCH_FAILED' | 'CLASSES_FETCH_FAILED' | 'ANALYTICS_FETCH_FAILED' | 'ENV_NOT_CONFIGURED' | 'ENV_INVALID' | 'ENROLLMENT_FAILED' | 'UNENROLLMENT_FAILED' | 'UNKNOWN_ERROR';
14
+ export type StudioErrorCode = 'USER_FETCH_FAILED' | 'USERS_FETCH_FAILED' | 'USERS_FETCH_PARTIAL' | 'COURSE_FETCH_FAILED' | 'COMPONENTS_FETCH_FAILED' | 'COMPONENT_RESOURCES_FETCH_FAILED' | 'RESOURCES_FETCH_FAILED' | 'RESOURCES_FETCH_PARTIAL' | 'CLASSES_FETCH_FAILED' | 'ENROLLMENTS_FETCH_FAILED' | 'ENROLLMENTS_FETCH_PARTIAL' | 'ANALYTICS_FETCH_FAILED' | 'ENV_NOT_CONFIGURED' | 'ENV_INVALID' | 'ENROLLMENT_FAILED' | 'UNENROLLMENT_FAILED' | 'UNKNOWN_ERROR';
15
15
  /**
16
16
  * Serializable error in Studio API responses.
17
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,YAAY,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAMtE;;GAEG;AACH,MAAM,MAAM,eAAe,GAExB,mBAAmB,GACnB,oBAAoB,GACpB,qBAAqB,GACrB,yBAAyB,GACzB,kCAAkC,GAClC,wBAAwB,GACxB,sBAAsB,GACtB,wBAAwB,GAExB,oBAAoB,GACpB,aAAa,GAEb,mBAAmB,GACnB,qBAAqB,GAErB,eAAe,CAAA;AAElB;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC3B,2CAA2C;IAC3C,IAAI,EAAE,eAAe,CAAA;IACrB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAMD,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,gBAAgB,CAAA;IACxB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,sBAAsB,EAAE,iBAAiB,EAAE,CAAA;IAC3C,QAAQ,EAAE,OAAO,CAAA;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IAClC,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAA;IAC7B,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAA;CACjB;AAMD,+EAA+E;AAC/E,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEhD,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,kBAAkB,CAAA;CACxB;AAED,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,kBAAkB,CAAA;CACxB;AAED,qCAAqC;AACrC,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;AAM5D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,IAAI,EAAE,UAAU,EAAE,CAAA;CAClB;AAED,yCAAyC;AACzC,MAAM,MAAM,eAAe,GAAG,MAAM,cAAc,CAAA;AAMlD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;KAC7E,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI;CAC5C,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACvD,YAAY,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAMtE;;GAEG;AACH,MAAM,MAAM,eAAe,GAExB,mBAAmB,GACnB,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,kCAAkC,GAClC,wBAAwB,GACxB,yBAAyB,GACzB,sBAAsB,GACtB,0BAA0B,GAC1B,2BAA2B,GAC3B,wBAAwB,GAExB,oBAAoB,GACpB,aAAa,GAEb,mBAAmB,GACnB,qBAAqB,GAErB,eAAe,CAAA;AAElB;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC3B,2CAA2C;IAC3C,IAAI,EAAE,eAAe,CAAA;IACrB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAMD,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,gBAAgB,CAAA;IACxB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,sBAAsB,EAAE,iBAAiB,EAAE,CAAA;IAC3C,QAAQ,EAAE,OAAO,CAAA;CACjB;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IAClC,iCAAiC;IACjC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAA;IAC7B,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAA;CACjB;AAMD,+EAA+E;AAC/E,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEhD,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,kBAAkB,CAAA;CACxB;AAED,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,kBAAkB,CAAA;CACxB;AAED,qCAAqC;AACrC,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;AAM5D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,IAAI,EAAE,UAAU,EAAE,CAAA;CAClB;AAED,yCAAyC;AACzC,MAAM,MAAM,eAAe,GAAG,MAAM,cAAc,CAAA;AAMlD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;KAC7E,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI;CAC5C,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "timeback-studio",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -28,10 +28,10 @@
28
28
  "@clack/prompts": "^0.11.0",
29
29
  "@hono/node-server": "^1.19.7",
30
30
  "@timeback/core": "0.1.3",
31
+ "c12": "^3.3.3",
31
32
  "colorette": "^2.0.20",
32
33
  "commander": "^14.0.2",
33
34
  "hono": "^4.11.1",
34
- "jiti": "^2.6.1",
35
35
  "zod": "^4.2.1"
36
36
  },
37
37
  "devDependencies": {