@oaknational/google-classroom-addon 1.29.0 → 1.31.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.
@@ -1,2 +1,2 @@
1
- import t from"zod";var n=t.object({courseId:t.string(),itemId:t.string(),addOnToken:t.string(),title:t.string(),lessonSlug:t.string(),programmeSlug:t.string(),unitSlug:t.string(),maxPoints:t.number().optional(),teacherLoginHint:t.string().optional()}),i=t.object({courseId:t.string(),postId:t.string(),id:t.string(),title:t.string(),teacherViewUri:t.object({uri:t.string()}),studentViewUri:t.object({uri:t.string()}),studentWorkReviewUri:t.object({uri:t.string()}).optional(),itemId:t.string(),maxPoints:t.number().nullish()}),o=t.string(),e=t.object({accessToken:t.string(),loginHint:t.string(),refreshToken:t.string().optional(),profilePictureUrl:t.string().optional(),email:t.string().optional()}),r=t.object({token:t.string()}),s=t.tuple([n,t.string().min(1),t.string().min(1)]),a=i.extend({attachmentId:t.string(),createdAt:t.string(),teacherLoginHint:t.string().optional()}),l=t.object({loginHint:t.string(),refreshToken:t.string().optional(),profilePictureUrl:t.string().optional()}),g=["NEW","CREATED","RECLAIMED_BY_STUDENT"],u=t.enum(["correct","incorrect"]),p=t.union([t.string(),t.number(),t.array(t.union([t.string(),t.number()]).nullable()),t.null()]),d=t.object({mode:t.enum(["init","incomplete","input","grading","feedback"]),grade:t.number(),pupilAnswer:p.optional().nullable(),feedback:t.union([u,t.array(u)]).optional(),isPartiallyCorrect:t.boolean().optional(),correctAnswer:t.union([t.string(),t.array(t.union([t.string(),t.undefined()]))]).optional(),usedHint:t.boolean().optional()}),c=t.object({grade:t.number(),numQuestions:t.number(),isComplete:t.boolean(),questionResults:t.array(d).optional()}),b=t.object({played:t.boolean(),duration:t.number(),timeElapsed:t.number(),isComplete:t.boolean()}),m=t.object({worksheetAvailable:t.boolean().optional(),worksheetDownloaded:t.boolean().optional(),isComplete:t.boolean()}),I=t.object({submissionId:t.string(),attachmentId:t.string(),courseId:t.string(),itemId:t.string(),pupilLoginHint:t.string(),starterQuiz:c.optional(),exitQuiz:c.optional(),video:b.optional(),intro:m.optional(),updatedAt:t.string(),createdAt:t.string()}),j=t.object({submissionId:t.string(),attachmentId:t.string(),courseId:t.string(),itemId:t.string(),pupilLoginHint:t.string(),starterQuiz:c.optional(),exitQuiz:c.optional(),video:b.optional(),intro:m.optional()});export{s as CreateAttachmentCallSchema,g as UPDATABLE_SUBMISSION_STATES,a as classroomAttachmentEntitySchema,i as classroomAttachmentSchema,o as codeSchema,n as createAnnouncementAttachmentArgsSchema,e as googleOAuthUserSchema,m as introProgressSchema,I as pupilLessonProgressSchema,d as questionResultSchema,c as quizProgressSchema,r as tokenPayloadSchema,j as upsertPupilLessonProgressArgsSchema,l as userCredentialsEntitySchema,b as videoProgressSchema};
1
+ import t from"zod";var n,i=t.object({courseId:t.string(),itemId:t.string(),addOnToken:t.string(),title:t.string(),lessonSlug:t.string(),programmeSlug:t.string(),unitSlug:t.string(),maxPoints:t.number().optional(),teacherLoginHint:t.string().optional()}),o=t.object({courseId:t.string(),postId:t.string(),id:t.string(),title:t.string(),teacherViewUri:t.object({uri:t.string()}),studentViewUri:t.object({uri:t.string()}),studentWorkReviewUri:t.object({uri:t.string()}).optional(),itemId:t.string(),maxPoints:t.number().nullish()}),e=t.string(),r=t.object({accessToken:t.string(),loginHint:t.string(),refreshToken:t.string().optional(),profilePictureUrl:t.string().optional(),email:t.string().optional()}),s=t.object({token:t.string()}),a=t.tuple([i,t.string().min(1),t.string().min(1)]),l=o.extend({attachmentId:t.string(),createdAt:t.string(),teacherLoginHint:t.string().optional()}),g=t.object({loginHint:t.string(),refreshToken:t.string().optional(),profilePictureUrl:t.string().optional()}),u=["NEW","CREATED","RECLAIMED_BY_STUDENT"],p=t.enum(["correct","incorrect"]),c=t.union([t.string(),t.number(),t.array(t.union([t.string(),t.number()]).nullable()),t.null()]),d=t.object({mode:t.enum(["init","incomplete","input","grading","feedback"]),grade:t.number(),pupilAnswer:c.optional().nullable(),feedback:t.union([p,t.array(p)]).optional(),isPartiallyCorrect:t.boolean().optional(),correctAnswer:t.union([t.string(),t.array(t.union([t.string(),t.undefined()]))]).optional(),usedHint:t.boolean().optional()}),b=t.object({grade:t.number(),numQuestions:t.number(),isComplete:t.boolean(),questionResults:t.array(d).optional()}),m=t.object({played:t.boolean(),duration:t.number(),timeElapsed:t.number(),isComplete:t.boolean()}),E=t.object({worksheetAvailable:t.boolean().optional(),worksheetDownloaded:t.boolean().optional(),isComplete:t.boolean()});!function(t){t.SUBMISSION_STATE_UNSPECIFIED="SUBMISSION_STATE_UNSPECIFIED",t.NEW="NEW",t.CREATED="CREATED",t.RECLAIMED_BY_STUDENT="RECLAIMED_BY_STUDENT",t.TURNED_IN="TURNED_IN",t.RETURNED="RETURNED"}(n||(n={}));var I=t.enum(n),T=t.object({postSubmissionState:I,submissionId:t.string(),attachmentId:t.string(),courseId:t.string(),itemId:t.string(),pupilLoginHint:t.string(),starterQuiz:b.optional(),exitQuiz:b.optional(),video:m.optional(),intro:E.optional(),updatedAt:t.string(),createdAt:t.string()}),S=t.object({submissionId:t.string(),attachmentId:t.string(),courseId:t.string(),itemId:t.string(),pupilLoginHint:t.string(),starterQuiz:b.optional(),exitQuiz:b.optional(),video:m.optional(),intro:E.optional()});export{a as CreateAttachmentCallSchema,n as PostSubmissionState,u as UPDATABLE_SUBMISSION_STATES,l as classroomAttachmentEntitySchema,o as classroomAttachmentSchema,e as codeSchema,i as createAnnouncementAttachmentArgsSchema,r as googleOAuthUserSchema,E as introProgressSchema,I as postSubmissionStateSchema,T as pupilLessonProgressSchema,d as questionResultSchema,b as quizProgressSchema,s as tokenPayloadSchema,S as upsertPupilLessonProgressArgsSchema,g as userCredentialsEntitySchema,m as videoProgressSchema};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/types/services/GoogleClassroomClientTypes.ts","../../../src/types/services/GoogleOAuthClientTypes.ts","../../../src/types/services/FirestoreClientTypes.ts","../../../src/types/services/PupilLessonProgressTypes.ts"],"sourcesContent":["import z from \"zod\";\n\nexport const createAnnouncementAttachmentArgsSchema = z.object({\n courseId: z.string(),\n itemId: z.string(),\n addOnToken: z.string(),\n title: z.string(),\n lessonSlug: z.string(),\n programmeSlug: z.string(),\n unitSlug: z.string(),\n maxPoints: z.number().optional(),\n teacherLoginHint: z.string().optional(),\n});\n\nexport type CreateAnnouncementAttachmentArgs = z.infer<\n typeof createAnnouncementAttachmentArgsSchema\n>;\n\nexport const classroomAttachmentSchema = z.object({\n courseId: z.string(),\n postId: z.string(),\n id: z.string(),\n title: z.string(),\n teacherViewUri: z.object({\n uri: z.string(),\n }),\n studentViewUri: z.object({\n uri: z.string(),\n }),\n studentWorkReviewUri: z\n .object({\n uri: z.string(),\n })\n .optional(),\n itemId: z.string(),\n maxPoints: z.number().nullish(),\n});\n\nexport type ClassroomAttachment = z.infer<typeof classroomAttachmentSchema>;\n","import z from \"zod\";\n\nimport { createAnnouncementAttachmentArgsSchema } from \"./GoogleClassroomClientTypes\";\n\nexport const codeSchema = z.string();\nexport type Code = z.infer<typeof codeSchema>;\n\nexport const googleOAuthUserSchema = z.object({\n accessToken: z.string(),\n loginHint: z.string(),\n refreshToken: z.string().optional(),\n profilePictureUrl: z.string().optional(),\n email: z.string().optional(),\n});\n\nexport type GoogleOAuthUser = z.infer<typeof googleOAuthUserSchema>;\n\nexport const tokenPayloadSchema = z.object({\n token: z.string(),\n});\n\nexport type TokenPayload = z.infer<typeof tokenPayloadSchema>;\n\nexport const CreateAttachmentCallSchema = z.tuple([\n createAnnouncementAttachmentArgsSchema,\n z.string().min(1), // accessToken\n z.string().min(1), // session\n]);\n\nexport type CreateAttachmentCall = z.infer<typeof CreateAttachmentCallSchema>;\n","import z from \"zod\";\n\nimport { classroomAttachmentSchema } from \"./GoogleClassroomClientTypes\";\n\nexport const classroomAttachmentEntitySchema = classroomAttachmentSchema.extend(\n {\n attachmentId: z.string(),\n createdAt: z.string(),\n teacherLoginHint: z.string().optional(),\n },\n);\n\nexport type ClassroomAttachmentEntity = z.infer<\n typeof classroomAttachmentEntitySchema\n>;\n\nexport const userCredentialsEntitySchema = z.object({\n loginHint: z.string(),\n refreshToken: z.string().optional(),\n profilePictureUrl: z.string().optional(),\n});\n\nexport type UserCredentialsEntity = z.infer<typeof userCredentialsEntitySchema>;\n","import z from \"zod\";\n\nexport const UPDATABLE_SUBMISSION_STATES = [\n \"NEW\",\n \"CREATED\",\n \"RECLAIMED_BY_STUDENT\",\n] as const;\n\nexport type UpdatableSubmissionState =\n (typeof UPDATABLE_SUBMISSION_STATES)[number];\n\nconst questionFeedbackSchema = z.enum([\"correct\", \"incorrect\"]);\n\nconst pupilAnswerSchema = z.union([\n z.string(),\n z.number(),\n z.array(z.union([z.string(), z.number()]).nullable()),\n z.null(),\n]);\n\nexport const questionResultSchema = z.object({\n mode: z.enum([\"init\", \"incomplete\", \"input\", \"grading\", \"feedback\"]),\n grade: z.number(),\n pupilAnswer: pupilAnswerSchema.optional().nullable(),\n feedback: z\n .union([questionFeedbackSchema, z.array(questionFeedbackSchema)])\n .optional(),\n isPartiallyCorrect: z.boolean().optional(),\n correctAnswer: z\n .union([z.string(), z.array(z.union([z.string(), z.undefined()]))])\n .optional(),\n usedHint: z.boolean().optional(),\n});\n\nexport const quizProgressSchema = z.object({\n grade: z.number(),\n numQuestions: z.number(),\n isComplete: z.boolean(),\n questionResults: z.array(questionResultSchema).optional(),\n});\n\nexport const videoProgressSchema = z.object({\n played: z.boolean(),\n duration: z.number(),\n timeElapsed: z.number(),\n isComplete: z.boolean(),\n});\n\nexport const introProgressSchema = z.object({\n worksheetAvailable: z.boolean().optional(),\n worksheetDownloaded: z.boolean().optional(),\n isComplete: z.boolean(),\n});\n\nexport const pupilLessonProgressSchema = z.object({\n submissionId: z.string(),\n attachmentId: z.string(),\n courseId: z.string(),\n itemId: z.string(),\n pupilLoginHint: z.string(),\n\n starterQuiz: quizProgressSchema.optional(),\n exitQuiz: quizProgressSchema.optional(),\n video: videoProgressSchema.optional(),\n intro: introProgressSchema.optional(),\n\n updatedAt: z.string(),\n createdAt: z.string(),\n});\n\nexport type PupilLessonProgress = z.infer<typeof pupilLessonProgressSchema>;\n\nexport const upsertPupilLessonProgressArgsSchema = z.object({\n submissionId: z.string(),\n attachmentId: z.string(),\n courseId: z.string(),\n itemId: z.string(),\n pupilLoginHint: z.string(),\n\n starterQuiz: quizProgressSchema.optional(),\n exitQuiz: quizProgressSchema.optional(),\n video: videoProgressSchema.optional(),\n intro: introProgressSchema.optional(),\n});\n\nexport type UpsertPupilLessonProgressArgs = z.infer<\n typeof upsertPupilLessonProgressArgsSchema\n>;\n"],"names":["createAnnouncementAttachmentArgsSchema","z","object","courseId","string","itemId","addOnToken","title","lessonSlug","programmeSlug","unitSlug","maxPoints","number","optional","teacherLoginHint","classroomAttachmentSchema","postId","id","teacherViewUri","uri","studentViewUri","studentWorkReviewUri","nullish","codeSchema","googleOAuthUserSchema","accessToken","loginHint","refreshToken","profilePictureUrl","email","tokenPayloadSchema","token","CreateAttachmentCallSchema","tuple","min","classroomAttachmentEntitySchema","extend","attachmentId","createdAt","userCredentialsEntitySchema","UPDATABLE_SUBMISSION_STATES","questionFeedbackSchema","enum","pupilAnswerSchema","union","array","nullable","null","questionResultSchema","mode","grade","pupilAnswer","feedback","isPartiallyCorrect","boolean","correctAnswer","undefined","usedHint","quizProgressSchema","numQuestions","isComplete","questionResults","videoProgressSchema","played","duration","timeElapsed","introProgressSchema","worksheetAvailable","worksheetDownloaded","pupilLessonProgressSchema","submissionId","pupilLoginHint","starterQuiz","exitQuiz","video","intro","updatedAt","upsertPupilLessonProgressArgsSchema"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/types/services/GoogleClassroomClientTypes.ts","../../../src/types/services/PupilLessonProgressTypes.ts","../../../src/types/services/GoogleOAuthClientTypes.ts","../../../src/types/services/FirestoreClientTypes.ts"],"sourcesContent":["import z from \"zod\";\n\nexport const createAnnouncementAttachmentArgsSchema = z.object({\n courseId: z.string(),\n itemId: z.string(),\n addOnToken: z.string(),\n title: z.string(),\n lessonSlug: z.string(),\n programmeSlug: z.string(),\n unitSlug: z.string(),\n maxPoints: z.number().optional(),\n teacherLoginHint: z.string().optional(),\n});\n\nexport type CreateAnnouncementAttachmentArgs = z.infer<\n typeof createAnnouncementAttachmentArgsSchema\n>;\n\nexport const classroomAttachmentSchema = z.object({\n courseId: z.string(),\n postId: z.string(),\n id: z.string(),\n title: z.string(),\n teacherViewUri: z.object({\n uri: z.string(),\n }),\n studentViewUri: z.object({\n uri: z.string(),\n }),\n studentWorkReviewUri: z\n .object({\n uri: z.string(),\n })\n .optional(),\n itemId: z.string(),\n maxPoints: z.number().nullish(),\n});\n\nexport type ClassroomAttachment = z.infer<typeof classroomAttachmentSchema>;\n","import z from \"zod\";\n\nexport const UPDATABLE_SUBMISSION_STATES = [\n \"NEW\",\n \"CREATED\",\n \"RECLAIMED_BY_STUDENT\",\n] as const;\n\nexport type UpdatableSubmissionState =\n (typeof UPDATABLE_SUBMISSION_STATES)[number];\n\nconst questionFeedbackSchema = z.enum([\"correct\", \"incorrect\"]);\n\nconst pupilAnswerSchema = z.union([\n z.string(),\n z.number(),\n z.array(z.union([z.string(), z.number()]).nullable()),\n z.null(),\n]);\n\nexport const questionResultSchema = z.object({\n mode: z.enum([\"init\", \"incomplete\", \"input\", \"grading\", \"feedback\"]),\n grade: z.number(),\n pupilAnswer: pupilAnswerSchema.optional().nullable(),\n feedback: z\n .union([questionFeedbackSchema, z.array(questionFeedbackSchema)])\n .optional(),\n isPartiallyCorrect: z.boolean().optional(),\n correctAnswer: z\n .union([z.string(), z.array(z.union([z.string(), z.undefined()]))])\n .optional(),\n usedHint: z.boolean().optional(),\n});\n\nexport const quizProgressSchema = z.object({\n grade: z.number(),\n numQuestions: z.number(),\n isComplete: z.boolean(),\n questionResults: z.array(questionResultSchema).optional(),\n});\n\nexport const videoProgressSchema = z.object({\n played: z.boolean(),\n duration: z.number(),\n timeElapsed: z.number(),\n isComplete: z.boolean(),\n});\n\nexport const introProgressSchema = z.object({\n worksheetAvailable: z.boolean().optional(),\n worksheetDownloaded: z.boolean().optional(),\n isComplete: z.boolean(),\n});\n\nexport enum PostSubmissionState {\n SUBMISSION_STATE_UNSPECIFIED = \"SUBMISSION_STATE_UNSPECIFIED\",\n NEW = \"NEW\",\n CREATED = \"CREATED\",\n RECLAIMED_BY_STUDENT = \"RECLAIMED_BY_STUDENT\",\n TURNED_IN = \"TURNED_IN\",\n RETURNED = \"RETURNED\",\n}\n\nexport const postSubmissionStateSchema = z.enum(PostSubmissionState);\n\nexport const pupilLessonProgressSchema = z.object({\n postSubmissionState: postSubmissionStateSchema,\n submissionId: z.string(),\n attachmentId: z.string(),\n courseId: z.string(),\n itemId: z.string(),\n pupilLoginHint: z.string(),\n\n starterQuiz: quizProgressSchema.optional(),\n exitQuiz: quizProgressSchema.optional(),\n video: videoProgressSchema.optional(),\n intro: introProgressSchema.optional(),\n\n updatedAt: z.string(),\n createdAt: z.string(),\n});\n\nexport type PupilLessonProgress = z.infer<typeof pupilLessonProgressSchema>;\n\nexport const upsertPupilLessonProgressArgsSchema = z.object({\n submissionId: z.string(),\n attachmentId: z.string(),\n courseId: z.string(),\n itemId: z.string(),\n pupilLoginHint: z.string(),\n starterQuiz: quizProgressSchema.optional(),\n exitQuiz: quizProgressSchema.optional(),\n video: videoProgressSchema.optional(),\n intro: introProgressSchema.optional(),\n});\n\nexport type UpsertPupilLessonProgressArgs = z.infer<\n typeof upsertPupilLessonProgressArgsSchema\n>;\n","import z from \"zod\";\n\nimport { createAnnouncementAttachmentArgsSchema } from \"./GoogleClassroomClientTypes\";\n\nexport const codeSchema = z.string();\nexport type Code = z.infer<typeof codeSchema>;\n\nexport const googleOAuthUserSchema = z.object({\n accessToken: z.string(),\n loginHint: z.string(),\n refreshToken: z.string().optional(),\n profilePictureUrl: z.string().optional(),\n email: z.string().optional(),\n});\n\nexport type GoogleOAuthUser = z.infer<typeof googleOAuthUserSchema>;\n\nexport const tokenPayloadSchema = z.object({\n token: z.string(),\n});\n\nexport type TokenPayload = z.infer<typeof tokenPayloadSchema>;\n\nexport const CreateAttachmentCallSchema = z.tuple([\n createAnnouncementAttachmentArgsSchema,\n z.string().min(1), // accessToken\n z.string().min(1), // session\n]);\n\nexport type CreateAttachmentCall = z.infer<typeof CreateAttachmentCallSchema>;\n","import z from \"zod\";\n\nimport { classroomAttachmentSchema } from \"./GoogleClassroomClientTypes\";\n\nexport const classroomAttachmentEntitySchema = classroomAttachmentSchema.extend(\n {\n attachmentId: z.string(),\n createdAt: z.string(),\n teacherLoginHint: z.string().optional(),\n },\n);\n\nexport type ClassroomAttachmentEntity = z.infer<\n typeof classroomAttachmentEntitySchema\n>;\n\nexport const userCredentialsEntitySchema = z.object({\n loginHint: z.string(),\n refreshToken: z.string().optional(),\n profilePictureUrl: z.string().optional(),\n});\n\nexport type UserCredentialsEntity = z.infer<typeof userCredentialsEntitySchema>;\n"],"names":["PostSubmissionState","createAnnouncementAttachmentArgsSchema","z","object","courseId","string","itemId","addOnToken","title","lessonSlug","programmeSlug","unitSlug","maxPoints","number","optional","teacherLoginHint","classroomAttachmentSchema","postId","id","teacherViewUri","uri","studentViewUri","studentWorkReviewUri","nullish","codeSchema","googleOAuthUserSchema","accessToken","loginHint","refreshToken","profilePictureUrl","email","tokenPayloadSchema","token","CreateAttachmentCallSchema","tuple","min","classroomAttachmentEntitySchema","extend","attachmentId","createdAt","userCredentialsEntitySchema","UPDATABLE_SUBMISSION_STATES","questionFeedbackSchema","enum","pupilAnswerSchema","union","array","nullable","null","questionResultSchema","mode","grade","pupilAnswer","feedback","isPartiallyCorrect","boolean","correctAnswer","undefined","usedHint","quizProgressSchema","numQuestions","isComplete","questionResults","videoProgressSchema","played","duration","timeElapsed","introProgressSchema","worksheetAvailable","worksheetDownloaded","postSubmissionStateSchema","pupilLessonProgressSchema","postSubmissionState","submissionId","pupilLoginHint","starterQuiz","exitQuiz","video","intro","updatedAt","upsertPupilLessonProgressArgsSchema"],"mappings":"mBAEO,ICoDKA,EDpDCC,EAAyCC,EAAEC,OAAO,CAC7DC,SAAUF,EAAEG,SACZC,OAAQJ,EAAEG,SACVE,WAAYL,EAAEG,SACdG,MAAON,EAAEG,SACTI,WAAYP,EAAEG,SACdK,cAAeR,EAAEG,SACjBM,SAAUT,EAAEG,SACZO,UAAWV,EAAEW,SAASC,WACtBC,iBAAkBb,EAAEG,SAASS,aAOlBE,EAA4Bd,EAAEC,OAAO,CAChDC,SAAUF,EAAEG,SACZY,OAAQf,EAAEG,SACVa,GAAIhB,EAAEG,SACNG,MAAON,EAAEG,SACTc,eAAgBjB,EAAEC,OAAO,CACvBiB,IAAKlB,EAAEG,WAETgB,eAAgBnB,EAAEC,OAAO,CACvBiB,IAAKlB,EAAEG,WAETiB,qBAAsBpB,EACnBC,OAAO,CACNiB,IAAKlB,EAAEG,WAERS,WACHR,OAAQJ,EAAEG,SACVO,UAAWV,EAAEW,SAASU,YE/BXC,EAAatB,EAAEG,SAGfoB,EAAwBvB,EAAEC,OAAO,CAC5CuB,YAAaxB,EAAEG,SACfsB,UAAWzB,EAAEG,SACbuB,aAAc1B,EAAEG,SAASS,WACzBe,kBAAmB3B,EAAEG,SAASS,WAC9BgB,MAAO5B,EAAEG,SAASS,aAKPiB,EAAqB7B,EAAEC,OAAO,CACzC6B,MAAO9B,EAAEG,WAKE4B,EAA6B/B,EAAEgC,MAAM,CAChDjC,EACAC,EAAEG,SAAS8B,IAAI,GACfjC,EAAEG,SAAS8B,IAAI,KCtBJC,EAAkCpB,EAA0BqB,OACvE,CACEC,aAAcpC,EAAEG,SAChBkC,UAAWrC,EAAEG,SACbU,iBAAkBb,EAAEG,SAASS,aAQpB0B,EAA8BtC,EAAEC,OAAO,CAClDwB,UAAWzB,EAAEG,SACbuB,aAAc1B,EAAEG,SAASS,WACzBe,kBAAmB3B,EAAEG,SAASS,aFjBnB2B,EAA8B,CACzC,MACA,UACA,wBAMIC,EAAyBxC,EAAEyC,KAAK,CAAC,UAAW,cAE5CC,EAAoB1C,EAAE2C,MAAM,CAChC3C,EAAEG,SACFH,EAAEW,SACFX,EAAE4C,MAAM5C,EAAE2C,MAAM,CAAC3C,EAAEG,SAAUH,EAAEW,WAAWkC,YAC1C7C,EAAE8C,SAGSC,EAAuB/C,EAAEC,OAAO,CAC3C+C,KAAMhD,EAAEyC,KAAK,CAAC,OAAQ,aAAc,QAAS,UAAW,aACxDQ,MAAOjD,EAAEW,SACTuC,YAAaR,EAAkB9B,WAAWiC,WAC1CM,SAAUnD,EACP2C,MAAM,CAACH,EAAwBxC,EAAE4C,MAAMJ,KACvC5B,WACHwC,mBAAoBpD,EAAEqD,UAAUzC,WAChC0C,cAAetD,EACZ2C,MAAM,CAAC3C,EAAEG,SAAUH,EAAE4C,MAAM5C,EAAE2C,MAAM,CAAC3C,EAAEG,SAAUH,EAAEuD,iBAClD3C,WACH4C,SAAUxD,EAAEqD,UAAUzC,aAGX6C,EAAqBzD,EAAEC,OAAO,CACzCgD,MAAOjD,EAAEW,SACT+C,aAAc1D,EAAEW,SAChBgD,WAAY3D,EAAEqD,UACdO,gBAAiB5D,EAAE4C,MAAMG,GAAsBnC,aAGpCiD,EAAsB7D,EAAEC,OAAO,CAC1C6D,OAAQ9D,EAAEqD,UACVU,SAAU/D,EAAEW,SACZqD,YAAahE,EAAEW,SACfgD,WAAY3D,EAAEqD,YAGHY,EAAsBjE,EAAEC,OAAO,CAC1CiE,mBAAoBlE,EAAEqD,UAAUzC,WAChCuD,oBAAqBnE,EAAEqD,UAAUzC,WACjC+C,WAAY3D,EAAEqD,aAGhB,SAAYvD,GACVA,EAAA,6BAAA,+BACAA,EAAA,IAAA,MACAA,EAAA,QAAA,UACAA,EAAA,qBAAA,uBACAA,EAAA,UAAA,YACAA,EAAA,SAAA,UACD,CAPD,CAAYA,IAAAA,EAAmB,CAAA,IASxB,IAAMsE,EAA4BpE,EAAEyC,KAAK3C,GAEnCuE,EAA4BrE,EAAEC,OAAO,CAChDqE,oBAAqBF,EACrBG,aAAcvE,EAAEG,SAChBiC,aAAcpC,EAAEG,SAChBD,SAAUF,EAAEG,SACZC,OAAQJ,EAAEG,SACVqE,eAAgBxE,EAAEG,SAElBsE,YAAahB,EAAmB7C,WAChC8D,SAAUjB,EAAmB7C,WAC7B+D,MAAOd,EAAoBjD,WAC3BgE,MAAOX,EAAoBrD,WAE3BiE,UAAW7E,EAAEG,SACbkC,UAAWrC,EAAEG,WAKF2E,EAAsC9E,EAAEC,OAAO,CAC1DsE,aAAcvE,EAAEG,SAChBiC,aAAcpC,EAAEG,SAChBD,SAAUF,EAAEG,SACZC,OAAQJ,EAAEG,SACVqE,eAAgBxE,EAAEG,SAClBsE,YAAahB,EAAmB7C,WAChC8D,SAAUjB,EAAmB7C,WAC7B+D,MAAOd,EAAoBjD,WAC3BgE,MAAOX,EAAoBrD"}
@@ -40,7 +40,16 @@ declare const createAnnouncementAttachmentArgsSchema: z.ZodObject<{
40
40
  }, z.core.$strip>;
41
41
  type CreateAnnouncementAttachmentArgs = z.infer<typeof createAnnouncementAttachmentArgsSchema>;
42
42
 
43
+ declare enum PostSubmissionState {
44
+ SUBMISSION_STATE_UNSPECIFIED = "SUBMISSION_STATE_UNSPECIFIED",
45
+ NEW = "NEW",
46
+ CREATED = "CREATED",
47
+ RECLAIMED_BY_STUDENT = "RECLAIMED_BY_STUDENT",
48
+ TURNED_IN = "TURNED_IN",
49
+ RETURNED = "RETURNED"
50
+ }
43
51
  declare const pupilLessonProgressSchema: z.ZodObject<{
52
+ postSubmissionState: z.ZodEnum<typeof PostSubmissionState>;
44
53
  submissionId: z.ZodString;
45
54
  attachmentId: z.ZodString;
46
55
  courseId: z.ZodString;
@@ -185,6 +194,13 @@ declare const upsertPupilLessonProgressArgsSchema: z.ZodObject<{
185
194
  }, z.core.$strip>;
186
195
  type UpsertPupilLessonProgressArgs = z.infer<typeof upsertPupilLessonProgressArgsSchema>;
187
196
 
197
+ type FetchPupilResponseArgs = {
198
+ courseId: string;
199
+ itemId: string;
200
+ attachmentId: string;
201
+ submissionId: string;
202
+ };
203
+
188
204
  type VerifiedAuthSession = {
189
205
  session: string;
190
206
  token: string;
@@ -284,6 +300,7 @@ declare class OakGoogleClassroomAddOn {
284
300
  * @param submissionId - The Google Classroom submission ID
285
301
  */
286
302
  getPupilLessonProgress(submissionId: string, attachmentId: string, itemId: string): Promise<PupilLessonProgress | null>;
303
+ getPostSubmissionState(args: FetchPupilResponseArgs, accessToken: string, session: string): Promise<string>;
287
304
  }
288
305
 
289
306
  declare enum ExceptionType {
package/dist/types.d.ts CHANGED
@@ -146,7 +146,17 @@ declare const introProgressSchema: z.ZodObject<{
146
146
  worksheetDownloaded: z.ZodOptional<z.ZodBoolean>;
147
147
  isComplete: z.ZodBoolean;
148
148
  }, z.core.$strip>;
149
+ declare enum PostSubmissionState {
150
+ SUBMISSION_STATE_UNSPECIFIED = "SUBMISSION_STATE_UNSPECIFIED",
151
+ NEW = "NEW",
152
+ CREATED = "CREATED",
153
+ RECLAIMED_BY_STUDENT = "RECLAIMED_BY_STUDENT",
154
+ TURNED_IN = "TURNED_IN",
155
+ RETURNED = "RETURNED"
156
+ }
157
+ declare const postSubmissionStateSchema: z.ZodEnum<typeof PostSubmissionState>;
149
158
  declare const pupilLessonProgressSchema: z.ZodObject<{
159
+ postSubmissionState: z.ZodEnum<typeof PostSubmissionState>;
150
160
  submissionId: z.ZodString;
151
161
  attachmentId: z.ZodString;
152
162
  courseId: z.ZodString;
@@ -291,5 +301,5 @@ declare const upsertPupilLessonProgressArgsSchema: z.ZodObject<{
291
301
  }, z.core.$strip>;
292
302
  type UpsertPupilLessonProgressArgs = z.infer<typeof upsertPupilLessonProgressArgsSchema>;
293
303
 
294
- export { CreateAttachmentCallSchema, UPDATABLE_SUBMISSION_STATES, classroomAttachmentEntitySchema, classroomAttachmentSchema, codeSchema, createAnnouncementAttachmentArgsSchema, googleOAuthUserSchema, introProgressSchema, pupilLessonProgressSchema, questionResultSchema, quizProgressSchema, tokenPayloadSchema, upsertPupilLessonProgressArgsSchema, userCredentialsEntitySchema, videoProgressSchema };
304
+ export { CreateAttachmentCallSchema, PostSubmissionState, UPDATABLE_SUBMISSION_STATES, classroomAttachmentEntitySchema, classroomAttachmentSchema, codeSchema, createAnnouncementAttachmentArgsSchema, googleOAuthUserSchema, introProgressSchema, postSubmissionStateSchema, pupilLessonProgressSchema, questionResultSchema, quizProgressSchema, tokenPayloadSchema, upsertPupilLessonProgressArgsSchema, userCredentialsEntitySchema, videoProgressSchema };
295
305
  export type { ClassroomAttachment, ClassroomAttachmentEntity, Code, CreateAnnouncementAttachmentArgs, CreateAttachmentCall, GoogleOAuthUser, PupilLessonProgress, TokenPayload, UpdatableSubmissionState, UpsertPupilLessonProgressArgs, UserCredentialsEntity };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oaknational/google-classroom-addon",
3
- "version": "1.29.0",
3
+ "version": "1.31.0",
4
4
  "description": "Components and helpers for the Oak Google Classroom Add-on",
5
5
  "exports": {
6
6
  "./ui": {