timeback-studio 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/README.md +51 -0
  2. package/dist/bin.js +21905 -0
  3. package/dist/cli/commands/credentials/add.d.ts +7 -0
  4. package/dist/cli/commands/credentials/add.d.ts.map +1 -0
  5. package/dist/cli/commands/credentials/email.d.ts +7 -0
  6. package/dist/cli/commands/credentials/email.d.ts.map +1 -0
  7. package/dist/cli/commands/credentials/index.d.ts +8 -0
  8. package/dist/cli/commands/credentials/index.d.ts.map +1 -0
  9. package/dist/cli/commands/credentials/lib/index.d.ts +3 -0
  10. package/dist/cli/commands/credentials/lib/index.d.ts.map +1 -0
  11. package/dist/cli/commands/credentials/lib/initial.d.ts +7 -0
  12. package/dist/cli/commands/credentials/lib/initial.d.ts.map +1 -0
  13. package/dist/cli/commands/credentials/lib/types.d.ts +11 -0
  14. package/dist/cli/commands/credentials/lib/types.d.ts.map +1 -0
  15. package/dist/cli/commands/credentials/list.d.ts +7 -0
  16. package/dist/cli/commands/credentials/list.d.ts.map +1 -0
  17. package/dist/cli/commands/credentials/menu.d.ts +7 -0
  18. package/dist/cli/commands/credentials/menu.d.ts.map +1 -0
  19. package/dist/cli/commands/credentials/remove.d.ts +7 -0
  20. package/dist/cli/commands/credentials/remove.d.ts.map +1 -0
  21. package/dist/cli/commands/serve/config.d.ts +57 -0
  22. package/dist/cli/commands/serve/config.d.ts.map +1 -0
  23. package/dist/cli/commands/serve/index.d.ts +19 -0
  24. package/dist/cli/commands/serve/index.d.ts.map +1 -0
  25. package/dist/cli/commands/serve/server.d.ts +12 -0
  26. package/dist/cli/commands/serve/server.d.ts.map +1 -0
  27. package/dist/cli/commands/serve/types.d.ts +16 -0
  28. package/dist/cli/commands/serve/types.d.ts.map +1 -0
  29. package/dist/cli/lib/courses.d.ts +17 -0
  30. package/dist/cli/lib/courses.d.ts.map +1 -0
  31. package/dist/cli/lib/credentials.d.ts +35 -0
  32. package/dist/cli/lib/credentials.d.ts.map +1 -0
  33. package/dist/cli/lib/index.d.ts +6 -0
  34. package/dist/cli/lib/index.d.ts.map +1 -0
  35. package/dist/cli/lib/onboarding/import.d.ts +23 -0
  36. package/dist/cli/lib/onboarding/import.d.ts.map +1 -0
  37. package/dist/cli/lib/onboarding/index.d.ts +27 -0
  38. package/dist/cli/lib/onboarding/index.d.ts.map +1 -0
  39. package/dist/cli/lib/onboarding/types.d.ts +18 -0
  40. package/dist/cli/lib/onboarding/types.d.ts.map +1 -0
  41. package/dist/cli/lib/terminal.d.ts +6 -0
  42. package/dist/cli/lib/terminal.d.ts.map +1 -0
  43. package/dist/config/constants.d.ts +60 -0
  44. package/dist/config/constants.d.ts.map +1 -0
  45. package/dist/config/index.d.ts +6 -0
  46. package/dist/config/index.d.ts.map +1 -0
  47. package/dist/config/timeback.d.ts +31 -0
  48. package/dist/config/timeback.d.ts.map +1 -0
  49. package/dist/config/types.d.ts +59 -0
  50. package/dist/config/types.d.ts.map +1 -0
  51. package/dist/config/utils.d.ts +12 -0
  52. package/dist/config/utils.d.ts.map +1 -0
  53. package/dist/index.d.ts +9 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +19787 -0
  56. package/dist/server/app.d.ts +9 -0
  57. package/dist/server/app.d.ts.map +1 -0
  58. package/dist/server/controllers/bootstrap.d.ts +619 -0
  59. package/dist/server/controllers/bootstrap.d.ts.map +1 -0
  60. package/dist/server/controllers/enrollment.d.ts +98 -0
  61. package/dist/server/controllers/enrollment.d.ts.map +1 -0
  62. package/dist/server/controllers/events.d.ts +82 -0
  63. package/dist/server/controllers/events.d.ts.map +1 -0
  64. package/dist/server/controllers/index.d.ts +7 -0
  65. package/dist/server/controllers/index.d.ts.map +1 -0
  66. package/dist/server/controllers/live.d.ts +22 -0
  67. package/dist/server/controllers/live.d.ts.map +1 -0
  68. package/dist/server/controllers/status.d.ts +95 -0
  69. package/dist/server/controllers/status.d.ts.map +1 -0
  70. package/dist/server/controllers/student-search.d.ts +39 -0
  71. package/dist/server/controllers/student-search.d.ts.map +1 -0
  72. package/dist/server/index.d.ts +2 -0
  73. package/dist/server/index.d.ts.map +1 -0
  74. package/dist/server/lib/context.d.ts +15 -0
  75. package/dist/server/lib/context.d.ts.map +1 -0
  76. package/dist/server/lib/errors.d.ts +40 -0
  77. package/dist/server/lib/errors.d.ts.map +1 -0
  78. package/dist/server/lib/index.d.ts +8 -0
  79. package/dist/server/lib/index.d.ts.map +1 -0
  80. package/dist/server/lib/manager.d.ts +10 -0
  81. package/dist/server/lib/manager.d.ts.map +1 -0
  82. package/dist/server/lib/middleware.d.ts +23 -0
  83. package/dist/server/lib/middleware.d.ts.map +1 -0
  84. package/dist/server/lib/request.d.ts +19 -0
  85. package/dist/server/lib/request.d.ts.map +1 -0
  86. package/dist/server/lib/sse.d.ts +26 -0
  87. package/dist/server/lib/sse.d.ts.map +1 -0
  88. package/dist/server/lib/types.d.ts +64 -0
  89. package/dist/server/lib/types.d.ts.map +1 -0
  90. package/dist/server/services/bootstrap.d.ts +38 -0
  91. package/dist/server/services/bootstrap.d.ts.map +1 -0
  92. package/dist/server/services/enrollment.d.ts +54 -0
  93. package/dist/server/services/enrollment.d.ts.map +1 -0
  94. package/dist/server/services/events.d.ts +50 -0
  95. package/dist/server/services/events.d.ts.map +1 -0
  96. package/dist/server/services/index.d.ts +13 -0
  97. package/dist/server/services/index.d.ts.map +1 -0
  98. package/dist/server/services/live.d.ts +83 -0
  99. package/dist/server/services/live.d.ts.map +1 -0
  100. package/dist/server/services/status.d.ts +24 -0
  101. package/dist/server/services/status.d.ts.map +1 -0
  102. package/dist/server/services/student-search.d.ts +32 -0
  103. package/dist/server/services/student-search.d.ts.map +1 -0
  104. package/dist/server/services/types/bootstrap.d.ts +47 -0
  105. package/dist/server/services/types/bootstrap.d.ts.map +1 -0
  106. package/dist/server/services/types/enrollment.d.ts +26 -0
  107. package/dist/server/services/types/enrollment.d.ts.map +1 -0
  108. package/dist/server/services/types/events.d.ts +22 -0
  109. package/dist/server/services/types/events.d.ts.map +1 -0
  110. package/dist/server/services/types/index.d.ts +11 -0
  111. package/dist/server/services/types/index.d.ts.map +1 -0
  112. package/dist/server/services/types/live.d.ts +34 -0
  113. package/dist/server/services/types/live.d.ts.map +1 -0
  114. package/dist/server/services/types/student-search.d.ts +31 -0
  115. package/dist/server/services/types/student-search.d.ts.map +1 -0
  116. package/dist/types.d.ts +83 -0
  117. package/dist/types.d.ts.map +1 -0
  118. package/dist/types.js +0 -0
  119. package/package.json +47 -0
@@ -0,0 +1,9 @@
1
+ import { Hono } from 'hono';
2
+ import type { AppContext } from '../config';
3
+ /**
4
+ * Creates the Hono app with API routes and middleware.
5
+ * @param ctx - Application context with config and credentials
6
+ * @returns Configured Hono application
7
+ */
8
+ export declare function createApp(ctx: AppContext): Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
9
+ //# sourceMappingURL=app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/server/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAiB3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAG3C;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,UAAU,8EA8CxC"}
@@ -0,0 +1,619 @@
1
+ /**
2
+ * Bootstrap Controller
3
+ *
4
+ * Thin HTTP layer - parses request, delegates to service, returns response.
5
+ */
6
+ import type { Context } from 'hono';
7
+ import type { AppContext } from '../../config';
8
+ import type { EnvVariables } from '../lib';
9
+ /**
10
+ * GET /api/bootstrap - Returns user and courses for the current environment.
11
+ *
12
+ * Requires env middleware to set `env` and `client` context variables.
13
+ *
14
+ * @param c - Hono context with env variables
15
+ * @param ctx - App context
16
+ * @returns JSON response with user and courses
17
+ */
18
+ export declare function handleBootstrap(c: Context<{
19
+ Variables: EnvVariables;
20
+ }>, ctx: AppContext): Promise<Response & import("hono").TypedResponse<{
21
+ user: {
22
+ sourcedId?: string | undefined;
23
+ status?: "active" | "tobedeleted" | undefined;
24
+ dateLastModified?: string | undefined;
25
+ metadata?: {
26
+ [x: string]: import("hono/utils/types").JSONValue;
27
+ } | null | undefined;
28
+ userMasterIdentifier?: string | null | undefined;
29
+ username?: string | null | undefined;
30
+ userIds?: {
31
+ type: string;
32
+ identifier: string;
33
+ }[] | undefined;
34
+ enabledUser: boolean;
35
+ givenName: string;
36
+ familyName: string;
37
+ middleName?: string | null | undefined;
38
+ identifier?: string | null | undefined;
39
+ email?: string | undefined;
40
+ roles: {
41
+ roleType: "primary" | "secondary";
42
+ role: import("@timeback/types").OneRosterUserRole;
43
+ org: {
44
+ sourcedId: string;
45
+ href: string;
46
+ type: string;
47
+ };
48
+ userProfile?: string | undefined;
49
+ metadata?: {
50
+ [x: string]: import("hono/utils/types").JSONValue;
51
+ } | null | undefined;
52
+ beginDate?: string | null | undefined;
53
+ endDate?: string | null | undefined;
54
+ }[];
55
+ agents?: {
56
+ sourcedId: string;
57
+ href: string;
58
+ type: string;
59
+ }[] | undefined;
60
+ userProfiles?: {
61
+ profileId: string;
62
+ profileType: string;
63
+ vendorId: string;
64
+ applicationId: string;
65
+ description?: string | null | undefined;
66
+ app: {
67
+ sourcedId: string;
68
+ name: string;
69
+ description?: string | null | undefined;
70
+ domain: string[];
71
+ metadata?: {
72
+ [x: string]: import("hono/utils/types").JSONValue;
73
+ } | null | undefined;
74
+ };
75
+ credentials: {
76
+ id: string;
77
+ type: string;
78
+ username: string;
79
+ password?: string | null | undefined;
80
+ }[];
81
+ }[] | undefined;
82
+ primaryOrg?: {
83
+ sourcedId: string;
84
+ href: string;
85
+ type: string;
86
+ name?: string | null | undefined;
87
+ } | undefined;
88
+ preferredFirstName?: string | null | undefined;
89
+ preferredMiddleName?: string | null | undefined;
90
+ preferredLastName?: string | null | undefined;
91
+ pronouns?: string | null | undefined;
92
+ grades?: import("@timeback/types").TimebackGrade[] | undefined;
93
+ password?: string | null | undefined;
94
+ sms?: string | null | undefined;
95
+ phone?: string | null | undefined;
96
+ demographics?: {
97
+ sourcedId?: string | undefined;
98
+ status?: "active" | "tobedeleted" | undefined;
99
+ dateLastModified?: string | undefined;
100
+ metadata?: {
101
+ [x: string]: import("hono/utils/types").JSONValue;
102
+ } | null | undefined;
103
+ birthDate?: string | null | undefined;
104
+ sex?: "female" | "male" | "other" | "unspecified" | null | undefined;
105
+ americanIndianOrAlaskaNative?: string | null | undefined;
106
+ asian?: string | null | undefined;
107
+ blackOrAfricanAmerican?: string | null | undefined;
108
+ nativeHawaiianOrOtherPacificIslander?: string | null | undefined;
109
+ white?: string | null | undefined;
110
+ demographicRaceTwoOrMoreRaces?: string | null | undefined;
111
+ hispanicOrLatinoEthnicity?: string | null | undefined;
112
+ countryOfBirthCode?: string | null | undefined;
113
+ stateOfBirthAbbreviation?: string | null | undefined;
114
+ cityOfBirth?: string | null | undefined;
115
+ publicSchoolResidenceStatus?: string | null | undefined;
116
+ } | null | undefined;
117
+ } | null;
118
+ courses: {
119
+ sourcedId?: string | undefined;
120
+ status?: "active" | "tobedeleted" | undefined;
121
+ dateLastModified?: string | undefined;
122
+ metadata?: {
123
+ [x: string]: import("hono/utils/types").JSONValue;
124
+ courseType?: "base" | "hole-filling" | "optional" | undefined;
125
+ isSupplemental?: boolean | undefined;
126
+ isCustom?: boolean | undefined;
127
+ publishStatus?: "deactivated" | "draft" | "published" | "testing" | undefined;
128
+ contactEmail?: string | undefined;
129
+ primaryApp?: string | undefined;
130
+ goals?: {
131
+ dailyXp?: number | undefined;
132
+ dailyLessons?: number | undefined;
133
+ dailyActiveMinutes?: number | undefined;
134
+ dailyAccuracy?: number | undefined;
135
+ dailyMasteredUnits?: number | undefined;
136
+ } | undefined;
137
+ metrics?: {
138
+ totalXp?: number | undefined;
139
+ totalLessons?: number | undefined;
140
+ totalGrades?: number | undefined;
141
+ courseType?: "Base" | "Hole-Filling" | "Optional" | "base" | "hole-filling" | "optional" | undefined;
142
+ isSupplemental?: boolean | undefined;
143
+ } | undefined;
144
+ } | null | undefined;
145
+ title: string;
146
+ courseCode?: string | undefined;
147
+ grades?: import("@timeback/types").TimebackGrade[] | undefined;
148
+ subjects?: import("@timeback/types").TimebackSubject[] | undefined;
149
+ subjectCodes?: string[] | undefined;
150
+ org: {
151
+ sourcedId: string;
152
+ };
153
+ level?: string | undefined;
154
+ gradingScheme?: string | undefined;
155
+ academicSession?: {
156
+ sourcedId: string;
157
+ } | undefined;
158
+ schoolYear?: {
159
+ sourcedId: string;
160
+ href: string;
161
+ type: string;
162
+ } | undefined;
163
+ resources?: {
164
+ sourcedId: string;
165
+ href: string;
166
+ type: string;
167
+ }[] | undefined;
168
+ }[];
169
+ components: {
170
+ sourcedId?: string | undefined;
171
+ status?: "active" | "tobedeleted" | undefined;
172
+ dateLastModified?: string | undefined;
173
+ metadata?: {
174
+ [x: string]: import("hono/utils/types").JSONValue;
175
+ } | null | undefined;
176
+ title: string;
177
+ course: {
178
+ sourcedId: string;
179
+ };
180
+ courseComponent?: {
181
+ sourcedId: string;
182
+ } | null | undefined;
183
+ parent?: {
184
+ sourcedId: string;
185
+ } | null | undefined;
186
+ sortOrder?: number | undefined;
187
+ prerequisites?: string[] | undefined;
188
+ prerequisiteCriteria?: "ALL" | "ANY" | undefined;
189
+ unlockDate?: string | undefined;
190
+ }[];
191
+ componentResources: {
192
+ sourcedId?: string | undefined;
193
+ status?: "active" | "tobedeleted" | undefined;
194
+ dateLastModified?: string | undefined;
195
+ metadata?: {
196
+ [x: string]: import("hono/utils/types").JSONValue;
197
+ } | null | undefined;
198
+ title: string;
199
+ courseComponent: {
200
+ sourcedId: string;
201
+ };
202
+ resource: {
203
+ sourcedId: string;
204
+ };
205
+ sortOrder?: number | undefined;
206
+ lessonType?: import("@timeback/types").LessonType | undefined;
207
+ resourceDetails?: {
208
+ sourcedId?: string | undefined;
209
+ status?: "active" | "tobedeleted" | undefined;
210
+ dateLastModified?: string | undefined;
211
+ title: string;
212
+ roles?: ("primary" | "secondary")[] | undefined;
213
+ importance?: "primary" | "secondary" | undefined;
214
+ vendorResourceId: string;
215
+ vendorId?: string | undefined;
216
+ applicationId?: string | undefined;
217
+ metadata?: {
218
+ [x: string]: import("hono/utils/types").JSONValue;
219
+ subject?: string | undefined;
220
+ grades?: string[] | undefined;
221
+ language?: string | undefined;
222
+ xp?: number | undefined;
223
+ learningObjectiveSet?: {
224
+ source: string;
225
+ learningObjectiveIds?: string[] | undefined;
226
+ learningObjectiveResults?: {
227
+ learningObjectiveId: string;
228
+ score?: number | undefined;
229
+ textScore?: string | undefined;
230
+ }[] | undefined;
231
+ }[] | null | undefined;
232
+ keywords?: string[] | undefined;
233
+ url?: string | undefined;
234
+ timeLength?: number | undefined;
235
+ activityType?: string | undefined;
236
+ type: "assessment-bank";
237
+ resources: string[];
238
+ } | {
239
+ [x: string]: import("hono/utils/types").JSONValue;
240
+ subject?: string | undefined;
241
+ grades?: string[] | undefined;
242
+ language?: string | undefined;
243
+ xp?: number | undefined;
244
+ learningObjectiveSet?: {
245
+ source: string;
246
+ learningObjectiveIds?: string[] | undefined;
247
+ learningObjectiveResults?: {
248
+ learningObjectiveId: string;
249
+ score?: number | undefined;
250
+ textScore?: string | undefined;
251
+ }[] | undefined;
252
+ }[] | null | undefined;
253
+ keywords?: string[] | undefined;
254
+ url?: string | undefined;
255
+ timeLength?: number | undefined;
256
+ activityType?: string | undefined;
257
+ type: "audio";
258
+ duration?: string | undefined;
259
+ format?: string | undefined;
260
+ speaker?: string | undefined;
261
+ } | {
262
+ [x: string]: import("hono/utils/types").JSONValue;
263
+ subject?: string | undefined;
264
+ grades?: string[] | undefined;
265
+ language?: string | undefined;
266
+ xp?: number | undefined;
267
+ learningObjectiveSet?: {
268
+ source: string;
269
+ learningObjectiveIds?: string[] | undefined;
270
+ learningObjectiveResults?: {
271
+ learningObjectiveId: string;
272
+ score?: number | undefined;
273
+ textScore?: string | undefined;
274
+ }[] | undefined;
275
+ }[] | null | undefined;
276
+ keywords?: string[] | undefined;
277
+ url?: string | undefined;
278
+ timeLength?: number | undefined;
279
+ activityType?: string | undefined;
280
+ } | {
281
+ [x: string]: import("hono/utils/types").JSONValue;
282
+ subject?: string | undefined;
283
+ grades?: string[] | undefined;
284
+ language?: string | undefined;
285
+ xp?: number | undefined;
286
+ learningObjectiveSet?: {
287
+ source: string;
288
+ learningObjectiveIds?: string[] | undefined;
289
+ learningObjectiveResults?: {
290
+ learningObjectiveId: string;
291
+ score?: number | undefined;
292
+ textScore?: string | undefined;
293
+ }[] | undefined;
294
+ }[] | null | undefined;
295
+ keywords?: string[] | undefined;
296
+ url?: string | undefined;
297
+ timeLength?: number | undefined;
298
+ activityType?: string | undefined;
299
+ type: "course-material";
300
+ subType?: "course" | "resource-collection" | "unit" | undefined;
301
+ author?: string | undefined;
302
+ format?: string | undefined;
303
+ instructionalMethod?: string | undefined;
304
+ } | {
305
+ [x: string]: import("hono/utils/types").JSONValue;
306
+ subject?: string | undefined;
307
+ grades?: string[] | undefined;
308
+ language?: string | undefined;
309
+ xp?: number | undefined;
310
+ learningObjectiveSet?: {
311
+ source: string;
312
+ learningObjectiveIds?: string[] | undefined;
313
+ learningObjectiveResults?: {
314
+ learningObjectiveId: string;
315
+ score?: number | undefined;
316
+ textScore?: string | undefined;
317
+ }[] | undefined;
318
+ }[] | null | undefined;
319
+ keywords?: string[] | undefined;
320
+ url?: string | undefined;
321
+ timeLength?: number | undefined;
322
+ activityType?: string | undefined;
323
+ type: "interactive";
324
+ launchUrl?: string | undefined;
325
+ toolProvider?: string | undefined;
326
+ instructionalMethod?: string | undefined;
327
+ } | {
328
+ [x: string]: import("hono/utils/types").JSONValue;
329
+ subject?: string | undefined;
330
+ grades?: string[] | undefined;
331
+ language?: string | undefined;
332
+ xp?: number | undefined;
333
+ learningObjectiveSet?: {
334
+ source: string;
335
+ learningObjectiveIds?: string[] | undefined;
336
+ learningObjectiveResults?: {
337
+ learningObjectiveId: string;
338
+ score?: number | undefined;
339
+ textScore?: string | undefined;
340
+ }[] | undefined;
341
+ }[] | null | undefined;
342
+ keywords?: string[] | undefined;
343
+ url?: string | undefined;
344
+ timeLength?: number | undefined;
345
+ activityType?: string | undefined;
346
+ type: "qti";
347
+ subType?: "qti-question" | "qti-stimulus" | "qti-test" | "qti-test-bank" | undefined;
348
+ } | {
349
+ [x: string]: import("hono/utils/types").JSONValue;
350
+ subject?: string | undefined;
351
+ grades?: string[] | undefined;
352
+ language?: string | undefined;
353
+ xp?: number | undefined;
354
+ learningObjectiveSet?: {
355
+ source: string;
356
+ learningObjectiveIds?: string[] | undefined;
357
+ learningObjectiveResults?: {
358
+ learningObjectiveId: string;
359
+ score?: number | undefined;
360
+ textScore?: string | undefined;
361
+ }[] | undefined;
362
+ }[] | null | undefined;
363
+ keywords?: string[] | undefined;
364
+ url?: string | undefined;
365
+ timeLength?: number | undefined;
366
+ activityType?: string | undefined;
367
+ type: "text";
368
+ format?: string | undefined;
369
+ author?: string | undefined;
370
+ pageCount?: number | undefined;
371
+ wordLength?: number | undefined;
372
+ } | {
373
+ [x: string]: import("hono/utils/types").JSONValue;
374
+ subject?: string | undefined;
375
+ grades?: string[] | undefined;
376
+ language?: string | undefined;
377
+ xp?: number | undefined;
378
+ learningObjectiveSet?: {
379
+ source: string;
380
+ learningObjectiveIds?: string[] | undefined;
381
+ learningObjectiveResults?: {
382
+ learningObjectiveId: string;
383
+ score?: number | undefined;
384
+ textScore?: string | undefined;
385
+ }[] | undefined;
386
+ }[] | null | undefined;
387
+ keywords?: string[] | undefined;
388
+ url?: string | undefined;
389
+ timeLength?: number | undefined;
390
+ activityType?: string | undefined;
391
+ type: "video";
392
+ duration?: string | undefined;
393
+ captionsAvailable?: boolean | undefined;
394
+ format?: string | undefined;
395
+ } | {
396
+ [x: string]: import("hono/utils/types").JSONValue;
397
+ subject?: string | undefined;
398
+ grades?: string[] | undefined;
399
+ language?: string | undefined;
400
+ xp?: number | undefined;
401
+ learningObjectiveSet?: {
402
+ source: string;
403
+ learningObjectiveIds?: string[] | undefined;
404
+ learningObjectiveResults?: {
405
+ learningObjectiveId: string;
406
+ score?: number | undefined;
407
+ textScore?: string | undefined;
408
+ }[] | undefined;
409
+ }[] | null | undefined;
410
+ keywords?: string[] | undefined;
411
+ url?: string | undefined;
412
+ timeLength?: number | undefined;
413
+ activityType?: string | undefined;
414
+ type: "visual";
415
+ format?: string | undefined;
416
+ resolution?: string | undefined;
417
+ } | null | undefined;
418
+ } | undefined;
419
+ }[];
420
+ classes: {
421
+ sourcedId?: string | undefined;
422
+ status?: "active" | "tobedeleted" | undefined;
423
+ dateLastModified?: string | undefined;
424
+ metadata?: {
425
+ [x: string]: import("hono/utils/types").JSONValue;
426
+ } | null | undefined;
427
+ title: string;
428
+ classCode?: string | null | undefined;
429
+ classType?: "homeroom" | "scheduled" | undefined;
430
+ location?: string | null | undefined;
431
+ grades?: import("@timeback/types").TimebackGrade[] | undefined;
432
+ subjects?: import("@timeback/types").TimebackSubject[] | undefined;
433
+ subjectCodes?: string[] | undefined;
434
+ periods?: string[] | undefined;
435
+ terms?: {
436
+ sourcedId: string;
437
+ href: string;
438
+ type: string;
439
+ }[] | undefined;
440
+ course?: {
441
+ sourcedId: string;
442
+ href: string;
443
+ type: string;
444
+ } | null | undefined;
445
+ school?: {
446
+ sourcedId: string;
447
+ href: string;
448
+ type: string;
449
+ } | null | undefined;
450
+ resources?: {
451
+ sourcedId: string;
452
+ href: string;
453
+ type: string;
454
+ }[] | undefined;
455
+ }[];
456
+ enrollments: {
457
+ sourcedId?: string | undefined;
458
+ status?: "active" | "tobedeleted" | undefined;
459
+ dateLastModified?: string | undefined;
460
+ metadata?: {
461
+ [x: string]: import("hono/utils/types").JSONValue;
462
+ goals?: {
463
+ dailyXp?: number | undefined;
464
+ dailyLessons?: number | undefined;
465
+ dailyActiveMinutes?: number | undefined;
466
+ dailyAccuracy?: number | undefined;
467
+ dailyMasteredUnits?: number | undefined;
468
+ } | undefined;
469
+ metrics?: {
470
+ totalXp?: number | undefined;
471
+ totalLessons?: number | undefined;
472
+ totalGrades?: number | undefined;
473
+ courseType?: string | undefined;
474
+ isSupplemental?: boolean | undefined;
475
+ } | undefined;
476
+ } | null | undefined;
477
+ user: {
478
+ sourcedId: string;
479
+ href: string;
480
+ type: string;
481
+ name?: string | undefined;
482
+ };
483
+ class: {
484
+ sourcedId: string;
485
+ href: string;
486
+ type: string;
487
+ name?: string | undefined;
488
+ };
489
+ school: {
490
+ sourcedId: string;
491
+ href: string;
492
+ type: string;
493
+ name?: string | undefined;
494
+ };
495
+ course: {
496
+ sourcedId: string;
497
+ href: string;
498
+ type: string;
499
+ name?: string | undefined;
500
+ };
501
+ role: import("@timeback/types").OneRosterUserRole;
502
+ primary?: string | null | undefined;
503
+ beginDate?: string | null | undefined;
504
+ endDate?: string | null | undefined;
505
+ userDetails?: {
506
+ sourcedId?: string | undefined;
507
+ status?: "active" | "tobedeleted" | undefined;
508
+ dateLastModified?: string | undefined;
509
+ metadata?: {
510
+ [x: string]: import("hono/utils/types").JSONValue;
511
+ } | null | undefined;
512
+ userMasterIdentifier?: string | null | undefined;
513
+ username?: string | null | undefined;
514
+ userIds?: {
515
+ type: string;
516
+ identifier: string;
517
+ }[] | undefined;
518
+ enabledUser: boolean;
519
+ givenName: string;
520
+ familyName: string;
521
+ middleName?: string | null | undefined;
522
+ identifier?: string | null | undefined;
523
+ email?: string | undefined;
524
+ roles: {
525
+ roleType: "primary" | "secondary";
526
+ role: import("@timeback/types").OneRosterUserRole;
527
+ org: {
528
+ sourcedId: string;
529
+ href: string;
530
+ type: string;
531
+ };
532
+ userProfile?: string | undefined;
533
+ metadata?: {
534
+ [x: string]: import("hono/utils/types").JSONValue;
535
+ } | null | undefined;
536
+ beginDate?: string | null | undefined;
537
+ endDate?: string | null | undefined;
538
+ }[];
539
+ agents?: {
540
+ sourcedId: string;
541
+ href: string;
542
+ type: string;
543
+ }[] | undefined;
544
+ userProfiles?: {
545
+ profileId: string;
546
+ profileType: string;
547
+ vendorId: string;
548
+ applicationId: string;
549
+ description?: string | null | undefined;
550
+ app: {
551
+ sourcedId: string;
552
+ name: string;
553
+ description?: string | null | undefined;
554
+ domain: string[];
555
+ metadata?: {
556
+ [x: string]: import("hono/utils/types").JSONValue;
557
+ } | null | undefined;
558
+ };
559
+ credentials: {
560
+ id: string;
561
+ type: string;
562
+ username: string;
563
+ password?: string | null | undefined;
564
+ }[];
565
+ }[] | undefined;
566
+ primaryOrg?: {
567
+ sourcedId: string;
568
+ href: string;
569
+ type: string;
570
+ name?: string | null | undefined;
571
+ } | undefined;
572
+ preferredFirstName?: string | null | undefined;
573
+ preferredMiddleName?: string | null | undefined;
574
+ preferredLastName?: string | null | undefined;
575
+ pronouns?: string | null | undefined;
576
+ grades?: import("@timeback/types").TimebackGrade[] | undefined;
577
+ password?: string | null | undefined;
578
+ sms?: string | null | undefined;
579
+ phone?: string | null | undefined;
580
+ demographics?: {
581
+ sourcedId?: string | undefined;
582
+ status?: "active" | "tobedeleted" | undefined;
583
+ dateLastModified?: string | undefined;
584
+ metadata?: {
585
+ [x: string]: import("hono/utils/types").JSONValue;
586
+ } | null | undefined;
587
+ birthDate?: string | null | undefined;
588
+ sex?: "female" | "male" | "other" | "unspecified" | null | undefined;
589
+ americanIndianOrAlaskaNative?: string | null | undefined;
590
+ asian?: string | null | undefined;
591
+ blackOrAfricanAmerican?: string | null | undefined;
592
+ nativeHawaiianOrOtherPacificIslander?: string | null | undefined;
593
+ white?: string | null | undefined;
594
+ demographicRaceTwoOrMoreRaces?: string | null | undefined;
595
+ hispanicOrLatinoEthnicity?: string | null | undefined;
596
+ countryOfBirthCode?: string | null | undefined;
597
+ stateOfBirthAbbreviation?: string | null | undefined;
598
+ cityOfBirth?: string | null | undefined;
599
+ publicSchoolResidenceStatus?: string | null | undefined;
600
+ } | null | undefined;
601
+ } | undefined;
602
+ }[];
603
+ classEnrollmentCounts: {
604
+ [x: string]: number;
605
+ };
606
+ stats: {
607
+ totalStudents: number;
608
+ totalTeachers: number;
609
+ totalCourses: number;
610
+ };
611
+ errors: {
612
+ code: import("../lib").StudioErrorCode;
613
+ message: string;
614
+ details?: {
615
+ [x: string]: import("hono/utils/types").JSONValue;
616
+ } | undefined;
617
+ }[];
618
+ }, import("hono/utils/http-status").ContentfulStatusCode, "json">>;
619
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/server/controllers/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAE1C;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,GAAG,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mEAU7F"}