{"version":3,"file":"lesson.schema.cjs","sources":["../../../../../src/schema/public/lesson/lesson.schema.ts"],"sourcesContent":["import { z } from \"zod\";\nimport zodToCamelCase from \"zod-to-camel-case\";\n\nimport {\n  _stateSchema,\n  _cohortSchema,\n  timestampsSchema,\n  newState,\n  publishedState,\n} from \"@/schema/public/components/base/base.schema\";\nimport { safeString } from \"@/schema/public/components/base/safe-string.schema\";\nimport { keyLearningPointsSchema } from \"@/schema/public/components/keyLearningPoints/keyLearningPoints.schema\";\nimport { keywordsSchema } from \"@/schema/public/components/keywords/keywords.schema\";\nimport { equipmentAndResourcesSchema } from \"@/schema/public/components/equipmentAndResources/equipmentAndResources.schema\";\nimport { lessonOutlineSchema } from \"@/schema/public/components/lessonOutline/lessonOutline.schema\";\nimport { mediaClipsRecordSchema } from \"@/schema/public/components/mediaClips/mediaClips.schema\";\nimport { additionalFileObjectSchema } from \"@/schema/public/components/additionalFiles/additionalFiles.schema\";\nimport { featuresSchema } from \"@/schema/public/components/features/features.schema\";\nimport { misconceptionsAndCommonMistakesSchema } from \"@/schema/public/components/misconceptionsAndCommonMistakes/misconceptionsAndCommonMistakes.schema\";\nimport { teacherTipsSchema } from \"@/schema/public/components/teacherTips/teacherTips.schema\";\n\nexport const lessonSchema = timestampsSchema.extend({\n  lesson_id: z.number(),\n  lesson_uid: z.string(),\n  slug: z.string(),\n  title: safeString,\n  description: safeString,\n  pupil_lesson_outcome: safeString,\n  phonics_outcome: safeString.nullable(),\n  key_learning_points: z.array(keyLearningPointsSchema).nullable(),\n  equipment_and_resources: z.array(equipmentAndResourcesSchema).nullable(),\n  content_guidance_details: z\n    .array(z.object({ details: z.string() }))\n    .nullable(),\n  content_guidance: z.array(z.number()).nullable(),\n  copyright_content: z\n    .array(\n      z.object({\n        copyright_info: z.string(),\n      }),\n    )\n    .nullable(),\n  supervision_level: z.string().nullable(),\n  thirdpartycontent_list: z.array(z.number()).nullable(),\n  misconceptions_and_common_mistakes: z\n    .array(misconceptionsAndCommonMistakesSchema)\n    .nullable(),\n  keywords: z.array(keywordsSchema).nullable(),\n  video_id: z.number().nullable(),\n  sign_language_video_id: z.number().nullable(),\n  quiz_id_starter: z.number().nullable(),\n  quiz_id_exit: z.number().nullable(),\n  teacher_tips: z.array(teacherTipsSchema).nullable(),\n  asset_id_slidedeck: z.number().nullable(),\n  asset_id_worksheet: z.number().nullable(),\n  asset_id_worksheet_answers: z.number().nullable(),\n  asset_id_supplementary_asset: z.number().nullable(),\n  asset_id_lesson_guide: z.number().nullable(),\n  expiration_date: z.string().nullable(),\n  lesson_outline: z.array(lessonOutlineSchema).nullish(),\n  media_clips: mediaClipsRecordSchema.nullish(),\n  deprecated_fields: z.record(z.string(), z.unknown()).nullable(),\n  _state: _stateSchema,\n  _cohort: _cohortSchema,\n  _deleted: z.boolean(),\n  _release_id: z.number().nullable(),\n  teacher_details: z.array(z.object({})).nullable(),\n  attribution: z.array(z.object({})).nullable(),\n  tags: z.array(z.number()).nullable(),\n  tpc_media_list: z.array(z.number()).nullable(),\n  tpc_works_list: z.array(z.number()).nullable(),\n  tpc_downloadablefiles_list: z.array(z.number()).nullable(),\n  tpc_quizimages_list: z.array(z.number()).nullable(),\n  features: featuresSchema.nullable(),\n  new_vocabulary_list: z.array(z.object({})).nullable(),\n  revisited_vocabulary_list: z.array(z.object({})).nullable(),\n  downloadable_files: z.array(additionalFileObjectSchema).nullable(),\n  lesson_release_date: z.string().nullish(),\n});\nexport type Lesson = z.infer<typeof lessonSchema>;\n\nexport const lessonNewSchema = lessonSchema\n  .pick({\n    lesson_id: true,\n    lesson_uid: true,\n    phonics_outcome: true,\n    title: true,\n    key_learning_points: true,\n    equipment_and_resources: true,\n    content_guidance_details: true,\n    content_guidance: true,\n    copyright_content: true,\n    supervision_level: true,\n    thirdpartycontent_list: true,\n    misconceptions_and_common_mistakes: true,\n    keywords: true,\n    video_id: true,\n    sign_language_video_id: true,\n    teacher_tips: true,\n    quiz_id_starter: true,\n    quiz_id_exit: true,\n    asset_id_slidedeck: true,\n    asset_id_worksheet: true,\n    asset_id_worksheet_answers: true,\n    asset_id_supplementary_asset: true,\n    asset_id_lesson_guide: true,\n    expiration_date: true,\n    lesson_outline: true,\n    media_clips: true,\n    deprecated_fields: true,\n    _cohort: true,\n    _deleted: true,\n    _release_id: true,\n    teacher_details: true,\n    attribution: true,\n    tags: true,\n    tpc_media_list: true,\n    tpc_works_list: true,\n    tpc_downloadablefiles_list: true,\n    tpc_quizimages_list: true,\n    features: true,\n    new_vocabulary_list: true,\n    revisited_vocabulary_list: true,\n    downloadable_files: true,\n    lesson_release_date: true,\n  })\n  .extend({\n    _state: newState,\n    pupil_lesson_outcome: safeString.nullish(),\n    description: safeString.nullish(),\n  });\n\nexport const lessonPublishedSchema = lessonSchema.extend({\n  _state: publishedState,\n});\n\nexport type LessonNew = z.infer<typeof lessonNewSchema>;\nexport type LessonPublished = z.infer<typeof lessonPublishedSchema>;\n\nexport const lessonSchemaCamel = zodToCamelCase(lessonSchema);\nexport type LessonCamel = z.infer<typeof lessonSchemaCamel>;\n\nexport const lessonNewSchemaCamel = zodToCamelCase(lessonNewSchema);\nexport type LessonNewCamel = z.infer<typeof lessonNewSchemaCamel>;\n\nexport const lessonPublishedSchemaCamel = zodToCamelCase(lessonPublishedSchema);\nexport type LessonPublishedCamel = z.infer<typeof lessonPublishedSchemaCamel>;\n\n// Backwards compatibility exports\n/**\n * @deprecated Use lessonSchema instead.\n */\nexport const lessonData = lessonSchema;\nexport const lessonDataSchema = lessonSchema;\nexport type LessonData = Lesson;\n"],"names":["lessonSchema","timestampsSchema","extend","lesson_id","z","number","lesson_uid","string","slug","title","safeString","description","pupil_lesson_outcome","phonics_outcome","nullable","key_learning_points","array","keyLearningPointsSchema","equipment_and_resources","equipmentAndResourcesSchema","content_guidance_details","object","details","content_guidance","copyright_content","copyright_info","supervision_level","thirdpartycontent_list","misconceptions_and_common_mistakes","misconceptionsAndCommonMistakesSchema","keywords","keywordsSchema","video_id","sign_language_video_id","quiz_id_starter","quiz_id_exit","teacher_tips","teacherTipsSchema","asset_id_slidedeck","asset_id_worksheet","asset_id_worksheet_answers","asset_id_supplementary_asset","asset_id_lesson_guide","expiration_date","lesson_outline","lessonOutlineSchema","nullish","media_clips","mediaClipsRecordSchema","deprecated_fields","record","unknown","_state","_stateSchema","_cohort","_cohortSchema","_deleted","boolean","_release_id","teacher_details","attribution","tags","tpc_media_list","tpc_works_list","tpc_downloadablefiles_list","tpc_quizimages_list","features","featuresSchema","new_vocabulary_list","revisited_vocabulary_list","downloadable_files","additionalFileObjectSchema","lesson_release_date","lessonNewSchema","pick","newState","lessonPublishedSchema","publishedState","lessonSchemaCamel","zodToCamelCase","lessonNewSchemaCamel","lessonPublishedSchemaCamel","lessonData","lessonDataSchema"],"mappings":"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"}