@studious-lms/server 1.13.0 → 1.14.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 (306) hide show
  1. package/.dockerignore +28 -0
  2. package/.env.example +5 -0
  3. package/.github/workflows/deploy.yml +123 -0
  4. package/Dockerfile +54 -0
  5. package/dist/index.js +5 -2
  6. package/dist/index.js.map +1 -1
  7. package/dist/lib/config/cors.d.ts.map +1 -1
  8. package/dist/lib/config/cors.js +31 -11
  9. package/dist/lib/config/cors.js.map +1 -1
  10. package/dist/lib/config/env.d.ts +17 -0
  11. package/dist/lib/config/env.d.ts.map +1 -1
  12. package/dist/lib/config/env.js +8 -2
  13. package/dist/lib/config/env.js.map +1 -1
  14. package/dist/lib/googleCloudStorage.d.ts +10 -0
  15. package/dist/lib/googleCloudStorage.d.ts.map +1 -1
  16. package/dist/lib/googleCloudStorage.js +22 -2
  17. package/dist/lib/googleCloudStorage.js.map +1 -1
  18. package/dist/lib/prisma.d.ts +104 -5
  19. package/dist/lib/prisma.d.ts.map +1 -1
  20. package/dist/lib/prisma.js +33 -2
  21. package/dist/lib/prisma.js.map +1 -1
  22. package/dist/models/agenda.d.ts +20 -20
  23. package/dist/models/announcement.d.ts +177 -69
  24. package/dist/models/announcement.d.ts.map +1 -1
  25. package/dist/models/assignment.d.ts +551 -353
  26. package/dist/models/assignment.d.ts.map +1 -1
  27. package/dist/models/attendance.d.ts +197 -71
  28. package/dist/models/attendance.d.ts.map +1 -1
  29. package/dist/models/auth.d.ts +348 -114
  30. package/dist/models/auth.d.ts.map +1 -1
  31. package/dist/models/class.d.ts +324 -198
  32. package/dist/models/class.d.ts.map +1 -1
  33. package/dist/models/class.js +2 -2
  34. package/dist/models/class.js.map +1 -1
  35. package/dist/models/cloudStorage.d.ts +146 -56
  36. package/dist/models/cloudStorage.d.ts.map +1 -1
  37. package/dist/models/comment.d.ts +267 -115
  38. package/dist/models/comment.d.ts.map +1 -1
  39. package/dist/models/conversation.d.ts +199 -73
  40. package/dist/models/conversation.d.ts.map +1 -1
  41. package/dist/models/department.d.ts +196 -70
  42. package/dist/models/department.d.ts.map +1 -1
  43. package/dist/models/event.d.ts +287 -125
  44. package/dist/models/event.d.ts.map +1 -1
  45. package/dist/models/file.d.ts +389 -263
  46. package/dist/models/file.d.ts.map +1 -1
  47. package/dist/models/folder.d.ts +433 -181
  48. package/dist/models/folder.d.ts.map +1 -1
  49. package/dist/models/labChat.d.ts +209 -83
  50. package/dist/models/labChat.d.ts.map +1 -1
  51. package/dist/models/marketing.d.ts +80 -26
  52. package/dist/models/marketing.d.ts.map +1 -1
  53. package/dist/models/message.d.ts +95 -41
  54. package/dist/models/message.d.ts.map +1 -1
  55. package/dist/models/newtonChat.d.ts +83 -29
  56. package/dist/models/newtonChat.d.ts.map +1 -1
  57. package/dist/models/notification.d.ts +61 -25
  58. package/dist/models/notification.d.ts.map +1 -1
  59. package/dist/models/school.d.ts +349 -133
  60. package/dist/models/school.d.ts.map +1 -1
  61. package/dist/models/section.d.ts +216 -72
  62. package/dist/models/section.d.ts.map +1 -1
  63. package/dist/models/tag.d.ts +156 -48
  64. package/dist/models/tag.d.ts.map +1 -1
  65. package/dist/models/user.d.ts +82 -28
  66. package/dist/models/user.d.ts.map +1 -1
  67. package/dist/models/worksheet.d.ts +1020 -411
  68. package/dist/models/worksheet.d.ts.map +1 -1
  69. package/dist/models/worksheet.js +8 -2
  70. package/dist/models/worksheet.js.map +1 -1
  71. package/dist/pipelines/aiLabChat.d.ts +0 -8
  72. package/dist/pipelines/aiLabChat.d.ts.map +1 -1
  73. package/dist/pipelines/aiLabChat.js +50 -67
  74. package/dist/pipelines/aiLabChat.js.map +1 -1
  75. package/dist/pipelines/aiLabChatContract.d.ts +393 -388
  76. package/dist/pipelines/aiLabChatContract.d.ts.map +1 -1
  77. package/dist/pipelines/aiLabChatContract.js +63 -69
  78. package/dist/pipelines/aiLabChatContract.js.map +1 -1
  79. package/dist/pipelines/aiNewtonChat.d.ts.map +1 -1
  80. package/dist/pipelines/aiNewtonChat.js +41 -41
  81. package/dist/pipelines/aiNewtonChat.js.map +1 -1
  82. package/dist/pipelines/gradeWorksheet.d.ts +8 -8
  83. package/dist/pipelines/labChatPrompt.d.ts +10 -8
  84. package/dist/pipelines/labChatPrompt.d.ts.map +1 -1
  85. package/dist/pipelines/labChatPrompt.js +47 -67
  86. package/dist/pipelines/labChatPrompt.js.map +1 -1
  87. package/dist/pipelines/pdfToWorksheet.d.ts +2 -2
  88. package/dist/routers/_app.d.ts +2203 -1957
  89. package/dist/routers/_app.d.ts.map +1 -1
  90. package/dist/routers/_app.js +4 -2
  91. package/dist/routers/_app.js.map +1 -1
  92. package/dist/routers/admin.d.ts +13 -13
  93. package/dist/routers/agenda.d.ts +18 -18
  94. package/dist/routers/announcement.d.ts +32 -32
  95. package/dist/routers/assignment.d.ts +335 -335
  96. package/dist/routers/attendance.d.ts +10 -10
  97. package/dist/routers/auth.d.ts +2 -2
  98. package/dist/routers/class.d.ts +147 -147
  99. package/dist/routers/comment.d.ts +22 -22
  100. package/dist/routers/conversation.d.ts +17 -17
  101. package/dist/routers/department.d.ts +34 -34
  102. package/dist/routers/discussion.d.ts +65 -53
  103. package/dist/routers/discussion.d.ts.map +1 -1
  104. package/dist/routers/discussion.js +6 -2
  105. package/dist/routers/discussion.js.map +1 -1
  106. package/dist/routers/embedding.d.ts +69 -0
  107. package/dist/routers/embedding.d.ts.map +1 -0
  108. package/dist/routers/embedding.js +143 -0
  109. package/dist/routers/embedding.js.map +1 -0
  110. package/dist/routers/event.d.ts +39 -39
  111. package/dist/routers/file.d.ts +12 -12
  112. package/dist/routers/folder.d.ts +38 -38
  113. package/dist/routers/labChat.d.ts +19 -19
  114. package/dist/routers/marketing.d.ts +2 -2
  115. package/dist/routers/message.d.ts +13 -13
  116. package/dist/routers/newtonChat.d.ts +4 -4
  117. package/dist/routers/notifications.d.ts +9 -9
  118. package/dist/routers/permissions.d.ts +14 -14
  119. package/dist/routers/school.d.ts +55 -55
  120. package/dist/routers/search.d.ts +22 -1
  121. package/dist/routers/search.d.ts.map +1 -1
  122. package/dist/routers/search.js +9 -3
  123. package/dist/routers/search.js.map +1 -1
  124. package/dist/routers/section.d.ts +4 -4
  125. package/dist/routers/studentProgress.d.ts +1 -1
  126. package/dist/routers/tag.d.ts +7 -7
  127. package/dist/routers/user.d.ts +10 -10
  128. package/dist/routers/worksheet.d.ts +95 -57
  129. package/dist/routers/worksheet.d.ts.map +1 -1
  130. package/dist/routers/worksheet.js +26 -2
  131. package/dist/routers/worksheet.js.map +1 -1
  132. package/dist/routes/aiStream.d.ts +2 -0
  133. package/dist/routes/aiStream.d.ts.map +1 -0
  134. package/dist/routes/aiStream.js +696 -0
  135. package/dist/routes/aiStream.js.map +1 -0
  136. package/dist/seedDatabase.d.ts +2 -2
  137. package/dist/seedDatabase.js +6 -6
  138. package/dist/seedDatabase.js.map +1 -1
  139. package/dist/services/adminInstitution.d.ts +8 -8
  140. package/dist/services/adminRunJob.d.ts +4 -4
  141. package/dist/services/agenda.d.ts +18 -18
  142. package/dist/services/aiChatStream.d.ts +68 -0
  143. package/dist/services/aiChatStream.d.ts.map +1 -0
  144. package/dist/services/aiChatStream.js +157 -0
  145. package/dist/services/aiChatStream.js.map +1 -0
  146. package/dist/services/aiModifierTools.d.ts +32 -0
  147. package/dist/services/aiModifierTools.d.ts.map +1 -0
  148. package/dist/services/aiModifierTools.js +165 -0
  149. package/dist/services/aiModifierTools.js.map +1 -0
  150. package/dist/services/aiProposalTools.d.ts +32 -0
  151. package/dist/services/aiProposalTools.d.ts.map +1 -0
  152. package/dist/services/aiProposalTools.js +207 -0
  153. package/dist/services/aiProposalTools.js.map +1 -0
  154. package/dist/services/aiStream.d.ts +22 -0
  155. package/dist/services/aiStream.d.ts.map +1 -0
  156. package/dist/services/aiStream.js +142 -0
  157. package/dist/services/aiStream.js.map +1 -0
  158. package/dist/services/aiTools.d.ts +16 -0
  159. package/dist/services/aiTools.d.ts.map +1 -0
  160. package/dist/services/aiTools.js +271 -0
  161. package/dist/services/aiTools.js.map +1 -0
  162. package/dist/services/announcement.d.ts +12 -12
  163. package/dist/services/announcement.d.ts.map +1 -1
  164. package/dist/services/announcement.js +7 -2
  165. package/dist/services/announcement.js.map +1 -1
  166. package/dist/services/assignment.d.ts +293 -293
  167. package/dist/services/assignment.d.ts.map +1 -1
  168. package/dist/services/assignment.js +28 -9
  169. package/dist/services/assignment.js.map +1 -1
  170. package/dist/services/attendance.d.ts +10 -10
  171. package/dist/services/auth.d.ts +2 -2
  172. package/dist/services/class.d.ts +138 -138
  173. package/dist/services/class.d.ts.map +1 -1
  174. package/dist/services/class.js +19 -3
  175. package/dist/services/class.js.map +1 -1
  176. package/dist/services/comment.d.ts +22 -22
  177. package/dist/services/conversation.d.ts +17 -17
  178. package/dist/services/department.d.ts +33 -33
  179. package/dist/services/discussion.d.ts +58 -58
  180. package/dist/services/discussion.d.ts.map +1 -1
  181. package/dist/services/discussion.js +8 -8
  182. package/dist/services/discussion.js.map +1 -1
  183. package/dist/services/discussionSummary.d.ts +21 -0
  184. package/dist/services/discussionSummary.d.ts.map +1 -0
  185. package/dist/services/discussionSummary.js +179 -0
  186. package/dist/services/discussionSummary.js.map +1 -0
  187. package/dist/services/embedding.d.ts +67 -0
  188. package/dist/services/embedding.d.ts.map +1 -0
  189. package/dist/services/embedding.js +226 -0
  190. package/dist/services/embedding.js.map +1 -0
  191. package/dist/services/event.d.ts +37 -37
  192. package/dist/services/file.d.ts +24 -24
  193. package/dist/services/folder.d.ts +36 -36
  194. package/dist/services/labChat.d.ts +19 -19
  195. package/dist/services/marketing.d.ts +2 -2
  196. package/dist/services/message.d.ts +11 -11
  197. package/dist/services/message.d.ts.map +1 -1
  198. package/dist/services/message.js +2 -2
  199. package/dist/services/message.js.map +1 -1
  200. package/dist/services/newtonChat.d.ts +4 -4
  201. package/dist/services/notification.d.ts +9 -9
  202. package/dist/services/notification.d.ts.map +1 -1
  203. package/dist/services/permissions.d.ts +14 -14
  204. package/dist/services/school.d.ts +50 -50
  205. package/dist/services/search.d.ts +12 -0
  206. package/dist/services/search.d.ts.map +1 -1
  207. package/dist/services/search.js +120 -2
  208. package/dist/services/search.js.map +1 -1
  209. package/dist/services/section.d.ts +3 -3
  210. package/dist/services/tag.d.ts +4 -4
  211. package/dist/services/user.d.ts +4 -4
  212. package/dist/services/user.d.ts.map +1 -1
  213. package/dist/services/user.js +10 -15
  214. package/dist/services/user.js.map +1 -1
  215. package/dist/services/worksheet.d.ts +60 -48
  216. package/dist/services/worksheet.d.ts.map +1 -1
  217. package/dist/services/worksheet.js +11 -4
  218. package/dist/services/worksheet.js.map +1 -1
  219. package/dist/utils/streamBroadcast.d.ts +11 -0
  220. package/dist/utils/streamBroadcast.d.ts.map +1 -0
  221. package/dist/utils/streamBroadcast.js +32 -0
  222. package/dist/utils/streamBroadcast.js.map +1 -0
  223. package/dist/workers/connection.d.ts +15 -0
  224. package/dist/workers/connection.d.ts.map +1 -1
  225. package/dist/workers/connection.js +20 -2
  226. package/dist/workers/connection.js.map +1 -1
  227. package/dist/workers/index.js +4 -2
  228. package/dist/workers/index.js.map +1 -1
  229. package/dist/workers/processors/createRunJobWorker.d.ts.map +1 -1
  230. package/dist/workers/processors/createRunJobWorker.js +31 -8
  231. package/dist/workers/processors/createRunJobWorker.js.map +1 -1
  232. package/dist/workers/processors/embedContent.d.ts +8 -0
  233. package/dist/workers/processors/embedContent.d.ts.map +1 -0
  234. package/dist/workers/processors/embedContent.js +76 -0
  235. package/dist/workers/processors/embedContent.js.map +1 -0
  236. package/dist/workers/queues.d.ts +6 -0
  237. package/dist/workers/queues.d.ts.map +1 -1
  238. package/dist/workers/queues.js +5 -3
  239. package/dist/workers/queues.js.map +1 -1
  240. package/package.json +5 -1
  241. package/prisma/migrations/20260609215135_init/migration.sql +1412 -0
  242. package/prisma/migrations/20260610130000_add_worksheet_tags/migration.sql +13 -0
  243. package/prisma/schema.prisma +38 -7
  244. package/src/index.ts +4 -0
  245. package/src/lib/config/cors.ts +32 -9
  246. package/src/lib/config/env.ts +6 -0
  247. package/src/lib/googleCloudStorage.ts +21 -0
  248. package/src/lib/prisma.ts +40 -1
  249. package/src/models/class.ts +3 -2
  250. package/src/models/worksheet.ts +5 -2
  251. package/src/pipelines/aiLabChat.ts +54 -79
  252. package/src/pipelines/aiLabChatContract.ts +69 -69
  253. package/src/pipelines/aiNewtonChat.ts +46 -43
  254. package/src/pipelines/labChatPrompt.ts +63 -88
  255. package/src/routers/_app.ts +2 -0
  256. package/src/routers/discussion.ts +7 -0
  257. package/src/routers/embedding.ts +159 -0
  258. package/src/routers/search.ts +10 -1
  259. package/src/routers/worksheet.ts +27 -0
  260. package/src/routes/aiStream.ts +789 -0
  261. package/src/seedDatabase.ts +4 -4
  262. package/src/services/aiChatStream.ts +219 -0
  263. package/src/services/aiModifierTools.ts +188 -0
  264. package/src/services/aiProposalTools.ts +272 -0
  265. package/src/services/aiStream.ts +175 -0
  266. package/src/services/aiTools.ts +290 -0
  267. package/src/services/announcement.ts +7 -0
  268. package/src/services/assignment.ts +28 -7
  269. package/src/services/class.ts +20 -1
  270. package/src/services/discussion.ts +9 -8
  271. package/src/services/discussionSummary.ts +226 -0
  272. package/src/services/embedding.ts +285 -0
  273. package/src/services/message.ts +2 -2
  274. package/src/services/search.ts +138 -0
  275. package/src/services/user.ts +9 -17
  276. package/src/services/worksheet.ts +9 -2
  277. package/src/utils/streamBroadcast.ts +48 -0
  278. package/src/workers/connection.ts +19 -0
  279. package/src/workers/index.ts +2 -0
  280. package/src/workers/processors/createRunJobWorker.ts +32 -6
  281. package/src/workers/processors/embedContent.ts +90 -0
  282. package/src/workers/queues.ts +5 -1
  283. package/tests/unit/pipelines/aiLabChatContract.test.ts +38 -21
  284. package/tests/unit/pipelines/labChatPrompt.test.ts +23 -36
  285. package/prisma/migrations/20250807062924_init/migration.sql +0 -436
  286. package/prisma/migrations/20250919063704_init2/migration.sql +0 -24
  287. package/prisma/migrations/20250920143543_add_profile_fields/migration.sql +0 -15
  288. package/prisma/migrations/20250922165147_add_chat_models/migration.sql +0 -68
  289. package/prisma/migrations/20250922165314_add_chat_roles/migration.sql +0 -5
  290. package/prisma/migrations/20250922171242_refactor_notification_system/migration.sql +0 -20
  291. package/prisma/migrations/20250922172208_add_mentions_system/migration.sql +0 -21
  292. package/prisma/migrations/20250925072732_add_lab_chat_system/migration.sql +0 -25
  293. package/prisma/migrations/20251020151505_add_upload_tracking_fields/migration.sql +0 -57
  294. package/prisma/migrations/20251109122857_annuoncements_comments/migration.sql +0 -30
  295. package/prisma/migrations/20251109135555_reactions_announcements_comments/migration.sql +0 -35
  296. package/prisma/migrations/20260410124000_add_submission_recommendation_state/migration.sql +0 -14
  297. package/prisma/migrations/20260415103500_add_session_type/migration.sql +0 -33
  298. package/prisma/migrations/20260415133000_add_ai_usage_logs/migration.sql +0 -19
  299. package/prisma/migrations/20260417083000_add_conversation_member_hidden_at/migration.sql +0 -2
  300. package/prisma/migrations/20260502230500_assignment_submission_comments/migration.sql +0 -60
  301. package/prisma/migrations/20260504071500_school_memberships/migration.sql +0 -81
  302. package/prisma/migrations/20260506162500_consolidate_run_job_and_unify_job_status/migration.sql +0 -166
  303. package/prisma/migrations/20260509220000_institution_overhaul/migration.sql +0 -184
  304. package/prisma/migrations/20260510170000_add_folder_permissions/migration.sql +0 -93
  305. package/prisma/migrations/20260510183000_add_discussions/migration.sql +0 -151
  306. /package/.github/workflows/{npm.yml → npm-publish.yml} +0 -0
@@ -50,20 +50,20 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
50
50
  id: string;
51
51
  username: string;
52
52
  profile: {
53
- displayName: string | null;
54
53
  profilePicture: string | null;
54
+ displayName: string | null;
55
55
  profilePictureThumbnail: string | null;
56
56
  } | null;
57
57
  }[];
58
58
  color: string | null;
59
59
  schoolId: string | null;
60
60
  school: {
61
- name: string;
62
61
  id: string;
62
+ name: string;
63
63
  } | null;
64
64
  department: {
65
- name: string;
66
65
  id: string;
66
+ name: string;
67
67
  color: string | null;
68
68
  } | null;
69
69
  discussionsEnabled: boolean;
@@ -104,20 +104,20 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
104
104
  id: string;
105
105
  username: string;
106
106
  profile: {
107
- displayName: string | null;
108
107
  profilePicture: string | null;
108
+ displayName: string | null;
109
109
  profilePictureThumbnail: string | null;
110
110
  } | null;
111
111
  }[];
112
112
  color: string | null;
113
113
  schoolId: string | null;
114
114
  school: {
115
- name: string;
116
115
  id: string;
116
+ name: string;
117
117
  } | null;
118
118
  department: {
119
- name: string;
120
119
  id: string;
120
+ name: string;
121
121
  color: string | null;
122
122
  } | null;
123
123
  discussionsEnabled: boolean;
@@ -135,16 +135,16 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
135
135
  output: {
136
136
  class: {
137
137
  sections: {
138
- name: string;
139
138
  id: string;
139
+ name: string;
140
140
  color: string | null;
141
141
  classId: string;
142
142
  order: number | null;
143
143
  }[];
144
144
  affiliation: {
145
145
  school: {
146
- name: string;
147
146
  id: string;
147
+ name: string;
148
148
  description: string | null;
149
149
  logo: {
150
150
  path: string;
@@ -153,14 +153,14 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
153
153
  } | null;
154
154
  } | null;
155
155
  department: {
156
- name: string;
157
156
  id: string;
157
+ name: string;
158
158
  description: string | null;
159
159
  color: string | null;
160
160
  } | null;
161
161
  tags: {
162
- name: string;
163
162
  id: string;
163
+ name: string;
164
164
  color: string;
165
165
  departmentId: string | null;
166
166
  }[];
@@ -170,12 +170,20 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
170
170
  submitted: boolean | null | undefined;
171
171
  returned: boolean | null | undefined;
172
172
  type: import(".prisma/client").$Enums.AssignmentType;
173
- id: string;
174
- createdAt: Date | null;
173
+ markScheme: {
174
+ id: string;
175
+ structured: string;
176
+ } | null;
177
+ gradingBoundary: {
178
+ id: string;
179
+ structured: string;
180
+ } | null;
175
181
  section: {
176
- name: string;
177
182
  id: string;
183
+ name: string;
178
184
  } | null;
185
+ id: string;
186
+ createdAt: Date | null;
179
187
  submissions: {
180
188
  id: string;
181
189
  studentId: string;
@@ -187,43 +195,20 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
187
195
  returned: boolean | null;
188
196
  }[];
189
197
  title: string;
190
- instructions: string;
191
198
  dueDate: Date;
192
- graded: boolean;
193
199
  maxGrade: number | null;
200
+ instructions: string;
201
+ graded: boolean;
194
202
  weight: number;
195
203
  inProgress: boolean;
196
204
  order: number | null;
197
- markScheme: {
198
- id: string;
199
- structured: string;
200
- } | null;
201
- gradingBoundary: {
202
- id: string;
203
- structured: string;
204
- } | null;
205
- }[];
206
- announcements: {
207
- id: string;
208
- createdAt: Date;
209
- modifiedAt: Date | null;
210
- remarks: string;
211
- teacher: {
212
- id: string;
213
- username: string;
214
- profile: {
215
- displayName: string | null;
216
- profilePicture: string | null;
217
- profilePictureThumbnail: string | null;
218
- } | null;
219
- };
220
205
  }[];
221
206
  teachers: {
222
207
  id: string;
223
208
  username: string;
224
209
  profile: {
225
- displayName: string | null;
226
210
  profilePicture: string | null;
211
+ displayName: string | null;
227
212
  profilePictureThumbnail: string | null;
228
213
  } | null;
229
214
  }[];
@@ -231,17 +216,32 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
231
216
  id: string;
232
217
  username: string;
233
218
  profile: {
234
- displayName: string | null;
235
219
  profilePicture: string | null;
220
+ displayName: string | null;
236
221
  profilePictureThumbnail: string | null;
237
222
  } | null;
238
223
  }[];
239
- name: string;
224
+ announcements: {
225
+ id: string;
226
+ createdAt: Date;
227
+ remarks: string;
228
+ modifiedAt: Date | null;
229
+ teacher: {
230
+ id: string;
231
+ username: string;
232
+ profile: {
233
+ profilePicture: string | null;
234
+ displayName: string | null;
235
+ profilePictureThumbnail: string | null;
236
+ } | null;
237
+ };
238
+ }[];
239
+ section: string;
240
240
  id: string;
241
+ name: string;
241
242
  schoolId: string | null;
242
- subject: string;
243
243
  color: string | null;
244
- section: string;
244
+ subject: string;
245
245
  syllabus: string | null;
246
246
  departmentId: string | null;
247
247
  discussionsEnabled: boolean;
@@ -255,10 +255,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
255
255
  input: {
256
256
  [x: string]: unknown;
257
257
  classId: string;
258
+ section?: string | undefined;
258
259
  name?: string | undefined;
259
- subject?: string | undefined;
260
260
  color?: string | undefined;
261
- section?: string | undefined;
261
+ subject?: string | undefined;
262
262
  departmentId?: string | null | undefined;
263
263
  discussionsEnabled?: boolean | undefined;
264
264
  studentsCanCreateDiscussions?: boolean | undefined;
@@ -266,11 +266,11 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
266
266
  };
267
267
  output: {
268
268
  updatedClass: {
269
- name: string;
269
+ section: string;
270
270
  id: string;
271
- subject: string;
271
+ name: string;
272
272
  color: string | null;
273
- section: string;
273
+ subject: string;
274
274
  departmentId: string | null;
275
275
  discussionsEnabled: boolean;
276
276
  studentsCanCreateDiscussions: boolean;
@@ -281,14 +281,14 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
281
281
  }>;
282
282
  create: import("@trpc/server").TRPCMutationProcedure<{
283
283
  input: {
284
+ section: string;
284
285
  name: string;
285
286
  subject: string;
286
- section: string;
287
+ teachers?: string[] | undefined;
288
+ students?: string[] | undefined;
287
289
  schoolId?: string | undefined;
288
290
  color?: string | undefined;
289
291
  departmentId?: string | undefined;
290
- teachers?: string[] | undefined;
291
- students?: string[] | undefined;
292
292
  };
293
293
  output: {
294
294
  teachers: {
@@ -308,12 +308,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
308
308
  schoolId: string | null;
309
309
  }[];
310
310
  } & {
311
- name: string;
311
+ section: string;
312
312
  id: string;
313
+ name: string;
313
314
  schoolId: string | null;
314
- subject: string;
315
315
  color: string | null;
316
- section: string;
316
+ subject: string;
317
317
  syllabus: string | null;
318
318
  departmentId: string | null;
319
319
  discussionsEnabled: boolean;
@@ -343,10 +343,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
343
343
  };
344
344
  output: {
345
345
  updatedClass: {
346
- name: string;
346
+ section: string;
347
347
  id: string;
348
+ name: string;
348
349
  subject: string;
349
- section: string;
350
350
  };
351
351
  newStudent: {
352
352
  id: string;
@@ -364,12 +364,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
364
364
  };
365
365
  output: {
366
366
  updatedClass: {
367
- name: string;
367
+ section: string;
368
368
  id: string;
369
+ name: string;
369
370
  schoolId: string | null;
370
- subject: string;
371
371
  color: string | null;
372
- section: string;
372
+ subject: string;
373
373
  syllabus: string | null;
374
374
  departmentId: string | null;
375
375
  discussionsEnabled: boolean;
@@ -392,12 +392,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
392
392
  };
393
393
  output: {
394
394
  updatedClass: {
395
- name: string;
395
+ section: string;
396
396
  id: string;
397
+ name: string;
397
398
  schoolId: string | null;
398
- subject: string;
399
399
  color: string | null;
400
- section: string;
400
+ subject: string;
401
401
  syllabus: string | null;
402
402
  departmentId: string | null;
403
403
  discussionsEnabled: boolean;
@@ -424,10 +424,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
424
424
  };
425
425
  output: {
426
426
  joinedClass: {
427
- name: string;
427
+ section: string;
428
428
  id: string;
429
+ name: string;
429
430
  subject: string;
430
- section: string;
431
431
  };
432
432
  };
433
433
  meta: object;
@@ -461,6 +461,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
461
461
  output: {
462
462
  grades: ({
463
463
  assignment: {
464
+ markScheme: {
465
+ structured: string;
466
+ } | null;
467
+ gradingBoundary: {
468
+ structured: string;
469
+ } | null;
464
470
  id: string;
465
471
  title: string;
466
472
  dueDate: Date;
@@ -468,12 +474,6 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
468
474
  weight: number;
469
475
  markSchemeId: string | null;
470
476
  gradingBoundaryId: string | null;
471
- markScheme: {
472
- structured: string;
473
- } | null;
474
- gradingBoundary: {
475
- structured: string;
476
- } | null;
477
477
  };
478
478
  } & {
479
479
  id: string;
@@ -548,10 +548,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
548
548
  classId: string;
549
549
  };
550
550
  output: {
551
- name: string | null;
552
551
  id: string;
553
- departmentId: string | null;
552
+ name: string | null;
554
553
  classId: string | null;
554
+ departmentId: string | null;
555
555
  structured: string;
556
556
  }[];
557
557
  meta: object;
@@ -563,10 +563,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
563
563
  structure: string;
564
564
  };
565
565
  output: {
566
- name: string | null;
567
566
  id: string;
568
- departmentId: string | null;
567
+ name: string | null;
569
568
  classId: string | null;
569
+ departmentId: string | null;
570
570
  structured: string;
571
571
  };
572
572
  meta: object;
@@ -579,10 +579,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
579
579
  structure: string;
580
580
  };
581
581
  output: {
582
- name: string | null;
583
582
  id: string;
584
- departmentId: string | null;
583
+ name: string | null;
585
584
  classId: string | null;
585
+ departmentId: string | null;
586
586
  structured: string;
587
587
  };
588
588
  meta: object;
@@ -594,10 +594,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
594
594
  markSchemeId: string;
595
595
  };
596
596
  output: {
597
- name: string | null;
598
597
  id: string;
599
- departmentId: string | null;
598
+ name: string | null;
600
599
  classId: string | null;
600
+ departmentId: string | null;
601
601
  structured: string;
602
602
  };
603
603
  meta: object;
@@ -608,10 +608,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
608
608
  classId: string;
609
609
  };
610
610
  output: {
611
- name: string | null;
612
611
  id: string;
613
- departmentId: string | null;
612
+ name: string | null;
614
613
  classId: string | null;
614
+ departmentId: string | null;
615
615
  structured: string;
616
616
  }[];
617
617
  meta: object;
@@ -623,10 +623,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
623
623
  structure: string;
624
624
  };
625
625
  output: {
626
- name: string | null;
627
626
  id: string;
628
- departmentId: string | null;
627
+ name: string | null;
629
628
  classId: string | null;
629
+ departmentId: string | null;
630
630
  structured: string;
631
631
  };
632
632
  meta: object;
@@ -639,10 +639,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
639
639
  structure: string;
640
640
  };
641
641
  output: {
642
- name: string | null;
643
642
  id: string;
644
- departmentId: string | null;
643
+ name: string | null;
645
644
  classId: string | null;
645
+ departmentId: string | null;
646
646
  structured: string;
647
647
  };
648
648
  meta: object;
@@ -654,10 +654,10 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
654
654
  gradingBoundaryId: string;
655
655
  };
656
656
  output: {
657
- name: string | null;
658
657
  id: string;
659
- departmentId: string | null;
658
+ name: string | null;
660
659
  classId: string | null;
660
+ departmentId: string | null;
661
661
  structured: string;
662
662
  };
663
663
  meta: object;
@@ -670,17 +670,17 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
670
670
  output: {
671
671
  syllabus: string | null | undefined;
672
672
  gradingBoundaries: {
673
- name: string | null;
674
673
  id: string;
675
- departmentId: string | null;
674
+ name: string | null;
676
675
  classId: string | null;
676
+ departmentId: string | null;
677
677
  structured: string;
678
678
  }[];
679
679
  markSchemes: {
680
- name: string | null;
681
680
  id: string;
682
- departmentId: string | null;
681
+ name: string | null;
683
682
  classId: string | null;
683
+ departmentId: string | null;
684
684
  structured: string;
685
685
  }[];
686
686
  };
@@ -693,12 +693,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
693
693
  contents: string;
694
694
  };
695
695
  output: {
696
- name: string;
696
+ section: string;
697
697
  id: string;
698
+ name: string;
698
699
  schoolId: string | null;
699
- subject: string;
700
700
  color: string | null;
701
- section: string;
701
+ subject: string;
702
702
  syllabus: string | null;
703
703
  departmentId: string | null;
704
704
  discussionsEnabled: boolean;
@@ -717,10 +717,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
717
717
  id: string;
718
718
  createdAt: Date | null;
719
719
  classId: string;
720
- modifiedAt: Date | null;
721
720
  title: string;
722
- instructions: string;
723
721
  dueDate: Date;
722
+ maxGrade: number | null;
723
+ eventId: string | null;
724
+ instructions: string;
725
+ modifiedAt: Date | null;
724
726
  teacherId: string;
725
727
  acceptFiles: boolean;
726
728
  acceptExtendedResponse: boolean;
@@ -729,11 +731,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
729
731
  aiPolicyLevel: number;
730
732
  sectionId: string | null;
731
733
  graded: boolean;
732
- maxGrade: number | null;
733
734
  weight: number;
734
735
  inProgress: boolean;
735
736
  template: boolean;
736
- eventId: string | null;
737
737
  markSchemeId: string | null;
738
738
  order: number | null;
739
739
  gradingBoundaryId: string | null;
@@ -748,9 +748,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
748
748
  title: string;
749
749
  instructions: string;
750
750
  dueDate?: Date | undefined;
751
+ maxGrade?: number | undefined;
751
752
  sectionId?: string | undefined;
752
753
  graded?: boolean | undefined;
753
- maxGrade?: number | undefined;
754
754
  weight?: number | undefined;
755
755
  markSchemeId?: string | undefined;
756
756
  gradingBoundaryId?: string | undefined;
@@ -760,10 +760,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
760
760
  id: string;
761
761
  createdAt: Date | null;
762
762
  classId: string;
763
- modifiedAt: Date | null;
764
763
  title: string;
765
- instructions: string;
766
764
  dueDate: Date;
765
+ maxGrade: number | null;
766
+ eventId: string | null;
767
+ instructions: string;
768
+ modifiedAt: Date | null;
767
769
  teacherId: string;
768
770
  acceptFiles: boolean;
769
771
  acceptExtendedResponse: boolean;
@@ -772,11 +774,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
772
774
  aiPolicyLevel: number;
773
775
  sectionId: string | null;
774
776
  graded: boolean;
775
- maxGrade: number | null;
776
777
  weight: number;
777
778
  inProgress: boolean;
778
779
  template: boolean;
779
- eventId: string | null;
780
780
  markSchemeId: string | null;
781
781
  order: number | null;
782
782
  gradingBoundaryId: string | null;
@@ -789,11 +789,11 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
789
789
  classId: string;
790
790
  draftId: string;
791
791
  title?: string | undefined;
792
- instructions?: string | undefined;
793
792
  dueDate?: Date | undefined;
793
+ maxGrade?: number | undefined;
794
+ instructions?: string | undefined;
794
795
  sectionId?: string | undefined;
795
796
  graded?: boolean | undefined;
796
- maxGrade?: number | undefined;
797
797
  weight?: number | undefined;
798
798
  markSchemeId?: string | undefined;
799
799
  gradingBoundaryId?: string | undefined;
@@ -803,10 +803,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
803
803
  id: string;
804
804
  createdAt: Date | null;
805
805
  classId: string;
806
- modifiedAt: Date | null;
807
806
  title: string;
808
- instructions: string;
809
807
  dueDate: Date;
808
+ maxGrade: number | null;
809
+ eventId: string | null;
810
+ instructions: string;
811
+ modifiedAt: Date | null;
810
812
  teacherId: string;
811
813
  acceptFiles: boolean;
812
814
  acceptExtendedResponse: boolean;
@@ -815,11 +817,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
815
817
  aiPolicyLevel: number;
816
818
  sectionId: string | null;
817
819
  graded: boolean;
818
- maxGrade: number | null;
819
820
  weight: number;
820
821
  inProgress: boolean;
821
822
  template: boolean;
822
- eventId: string | null;
823
823
  markSchemeId: string | null;
824
824
  order: number | null;
825
825
  gradingBoundaryId: string | null;
@@ -837,10 +837,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
837
837
  id: string;
838
838
  createdAt: Date | null;
839
839
  classId: string;
840
- modifiedAt: Date | null;
841
840
  title: string;
842
- instructions: string;
843
841
  dueDate: Date;
842
+ maxGrade: number | null;
843
+ eventId: string | null;
844
+ instructions: string;
845
+ modifiedAt: Date | null;
844
846
  teacherId: string;
845
847
  acceptFiles: boolean;
846
848
  acceptExtendedResponse: boolean;
@@ -849,11 +851,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
849
851
  aiPolicyLevel: number;
850
852
  sectionId: string | null;
851
853
  graded: boolean;
852
- maxGrade: number | null;
853
854
  weight: number;
854
855
  inProgress: boolean;
855
856
  template: boolean;
856
- eventId: string | null;
857
857
  markSchemeId: string | null;
858
858
  order: number | null;
859
859
  gradingBoundaryId: string | null;
@@ -866,8 +866,8 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
866
866
  classId: string;
867
867
  draftId: string;
868
868
  dueDate?: Date | undefined;
869
- graded?: boolean | undefined;
870
869
  maxGrade?: number | undefined;
870
+ graded?: boolean | undefined;
871
871
  weight?: number | undefined;
872
872
  };
873
873
  output: {
@@ -875,10 +875,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
875
875
  id: string;
876
876
  createdAt: Date | null;
877
877
  classId: string;
878
- modifiedAt: Date | null;
879
878
  title: string;
880
- instructions: string;
881
879
  dueDate: Date;
880
+ maxGrade: number | null;
881
+ eventId: string | null;
882
+ instructions: string;
883
+ modifiedAt: Date | null;
882
884
  teacherId: string;
883
885
  acceptFiles: boolean;
884
886
  acceptExtendedResponse: boolean;
@@ -887,11 +889,9 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
887
889
  aiPolicyLevel: number;
888
890
  sectionId: string | null;
889
891
  graded: boolean;
890
- maxGrade: number | null;
891
892
  weight: number;
892
893
  inProgress: boolean;
893
894
  template: boolean;
894
- eventId: string | null;
895
895
  markSchemeId: string | null;
896
896
  order: number | null;
897
897
  gradingBoundaryId: string | null;
@@ -913,12 +913,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
913
913
  teacherAttachments: {
914
914
  path: string;
915
915
  type: string;
916
- name: string;
917
- id: string;
918
916
  user: {
919
917
  id: string;
920
918
  username: string;
921
919
  } | null;
920
+ id: string;
921
+ name: string;
922
922
  size: number | null;
923
923
  uploadedAt: Date | null;
924
924
  thumbnailId: string | null;
@@ -929,12 +929,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
929
929
  attachments: {
930
930
  path: string;
931
931
  type: string;
932
- name: string;
933
- id: string;
934
932
  user: {
935
933
  id: string;
936
934
  username: string;
937
935
  } | null;
936
+ id: string;
937
+ name: string;
938
938
  size: number | null;
939
939
  uploadedAt: Date | null;
940
940
  thumbnailId: string | null;
@@ -942,12 +942,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
942
942
  annotations: {
943
943
  path: string;
944
944
  type: string;
945
- name: string;
946
- id: string;
947
945
  user: {
948
946
  id: string;
949
947
  username: string;
950
948
  } | null;
949
+ id: string;
950
+ name: string;
951
951
  size: number | null;
952
952
  uploadedAt: Date | null;
953
953
  thumbnailId: string | null;
@@ -965,16 +965,29 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
965
965
  classFiles: any;
966
966
  assignments: {
967
967
  type: import(".prisma/client").$Enums.AssignmentType;
968
- id: string;
969
- createdAt: Date | null;
968
+ markScheme: {
969
+ id: string;
970
+ structured: string;
971
+ } | null;
972
+ gradingBoundary: {
973
+ id: string;
974
+ structured: string;
975
+ } | null;
970
976
  section: {
971
- name: string;
972
977
  id: string;
978
+ name: string;
973
979
  } | null;
980
+ id: string;
981
+ createdAt: Date | null;
974
982
  classId: string;
983
+ worksheets: {
984
+ id: string;
985
+ }[];
975
986
  title: string;
976
- instructions: string;
977
987
  dueDate: Date;
988
+ maxGrade: number | null;
989
+ eventId: string | null;
990
+ instructions: string;
978
991
  teacherId: string;
979
992
  acceptFiles: boolean;
980
993
  acceptExtendedResponse: boolean;
@@ -983,45 +996,32 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
983
996
  aiPolicyLevel: number;
984
997
  sectionId: string | null;
985
998
  graded: boolean;
986
- maxGrade: number | null;
987
999
  weight: number;
988
1000
  inProgress: boolean;
989
- eventId: string | null;
990
1001
  markSchemeId: string | null;
991
1002
  order: number | null;
992
1003
  gradingBoundaryId: string | null;
993
- markScheme: {
994
- id: string;
995
- structured: string;
996
- } | null;
997
- gradingBoundary: {
998
- id: string;
999
- structured: string;
1000
- } | null;
1001
- worksheets: {
1002
- id: string;
1003
- }[];
1004
1004
  }[];
1005
1005
  sections: {
1006
- name: string;
1007
1006
  id: string;
1007
+ name: string;
1008
1008
  color: string | null;
1009
1009
  classId: string;
1010
1010
  order: number | null;
1011
1011
  }[];
1012
1012
  worksheets: {
1013
- name: string;
1014
1013
  id: string;
1014
+ name: string;
1015
1015
  classId: string;
1016
1016
  questions: {
1017
1017
  type: import(".prisma/client").$Enums.WorksheetQuestionType;
1018
1018
  options: import("@prisma/client/runtime/library.js").JsonValue;
1019
+ markScheme: import("@prisma/client/runtime/library.js").JsonValue;
1019
1020
  order: number | null;
1020
- points: number;
1021
1021
  worksheetId: string;
1022
- markScheme: import("@prisma/client/runtime/library.js").JsonValue;
1023
1022
  question: string;
1024
1023
  answer: string;
1024
+ points: number;
1025
1025
  }[];
1026
1026
  }[];
1027
1027
  markSchemes: {
@@ -1034,12 +1034,12 @@ export declare const classRouter: import("@trpc/server").TRPCBuiltRouter<{
1034
1034
  classId: string | null;
1035
1035
  structured: string;
1036
1036
  }[];
1037
- name: string;
1037
+ section: string;
1038
1038
  id: string;
1039
+ name: string;
1039
1040
  schoolId: string | null;
1040
- subject: string;
1041
1041
  color: string | null;
1042
- section: string;
1042
+ subject: string;
1043
1043
  syllabus: string | null;
1044
1044
  departmentId: string | null;
1045
1045
  discussionsEnabled: boolean;