@oaknational/oak-curriculum-schema 1.1.5 → 1.1.7
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.
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/src/base.schema.ts +19 -0
- package/dist/src/fixtures/index.ts +3 -0
- package/dist/src/fixtures/lessonData.fixture.ts +30 -0
- package/dist/src/fixtures/programmeFields.fixture.ts +34 -0
- package/dist/src/fixtures/unitData.fixture.ts +12 -0
- package/dist/src/index.ts +4 -0
- package/dist/src/lessonData.fixture.ts +30 -0
- package/dist/src/lessonData.schema.ts +32 -0
- package/dist/src/lessonData.test.ts +11 -0
- package/dist/src/programmeFields.fixture.ts +34 -0
- package/dist/src/programmeFields.schema.ts +45 -0
- package/dist/src/programmeFields.test.ts +11 -0
- package/dist/src/schema/base.schema.ts +19 -0
- package/dist/src/schema/index.ts +4 -0
- package/dist/src/schema/lessonData.schema.ts +32 -0
- package/dist/src/schema/programmeFields.schema.ts +45 -0
- package/dist/src/schema/unitData.schema.ts +16 -0
- package/dist/src/test/lessonData.test.ts +11 -0
- package/dist/src/test/programmeFields.test.ts +11 -0
- package/dist/src/unitData.fixture.ts +12 -0
- package/dist/src/unitData.schema.ts +16 -0
- package/dist/types.d.ts +225 -0
- package/package.json +4 -6
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("zod");const s=e.z.enum(["published","new","migration"]),t=e.z.enum(["2020-2023","2023-2024","0"]),l=e.z.enum(["KS1","KS2","KS3","KS4","EYFS"]),r=e.z.enum(["ks1","ks2","ks3","ks4","early-years-foundation-stage"]),n=e.z.enum(["Key Stage 1","Key Stage 2","Key Stage 3","Key Stage 4","Early Years Foundation Stage"]),i=e.z.object({lesson_id:e.z.number(),lesson_uid:e.z.string(),slug:e.z.string(),title:e.z.string(),description:e.z.string(),pupil_lesson_outcome:e.z.string(),key_learning_points:e.z.array(e.z.object({})),equipment_and_resources:e.z.array(e.z.object({})).nullable(),content_guidance_details:e.z.array(e.z.object({})).nullable(),content_guidance:e.z.array(e.z.number()).nullable(),copyright_content:e.z.array(e.z.object({})).nullable(),supervision_level:e.z.string().nullable(),thirdpartycontent_list:e.z.array(e.z.number()).nullable(),misconceptions_and_common_mistakes:e.z.array(e.z.object({})).nullable(),keywords:e.z.array(e.z.object({})).nullable(),video_id:e.z.number().nullable(),sign_language_video_id:e.z.number().nullable(),quiz_id_starter:e.z.number().nullable(),quiz_id_exit:e.z.number().nullable(),asset_id_slidedeck:e.z.number().nullable(),asset_id_worksheet:e.z.number().nullable(),deprecated_fields:e.z.record(e.z.unknown()).nullable(),_state:s,_cohort:t}),a=e.z.object({tier:e.z.string().nullable(),tier_id:e.z.number().nullable(),tier_slug:e.z.string().nullable(),tier_description:e.z.string().nullable(),tier_display_order:e.z.number().nullable(),examboard:e.z.string().nullable(),examboard_id:e.z.number().nullable(),examboard_slug:e.z.string().nullable(),examboard_description:e.z.string().nullable(),examboard_display_order:e.z.number().nullable(),year:e.z.string(),year_slug:e.z.string(),year_id:e.z.number(),year_description:e.z.string(),year_display_order:e.z.number(),keystage:l,keystage_id:e.z.number(),keystage_slug:r,keystage_description:n,keystage_display_order:e.z.number(),phase:e.z.string(),phase_id:e.z.number(),phase_slug:e.z.string(),phase_description:e.z.string(),phase_display_order:e.z.number(),subject:e.z.string(),subject_id:e.z.number(),subject_slug:e.z.string(),subject_description:e.z.string(),subject_display_order:e.z.number(),legacy:e.z.string().optional(),dataset:e.z.string().optional()}),u=e.z.object({unit_id:e.z.number(),unit_uid:e.z.string(),description:e.z.string().nullable(),slug:e.z.string(),tags:e.z.array(e.z.number()).nullable(),title:e.z.string(),_state:s,_cohort:t});exports._cohortSchema=t,exports._stateSchema=s,exports.keystageDescriptions=n,exports.keystageSlugs=r,exports.keystages=l,exports.lessonDataFixture=e=>({lesson_id:1,lesson_uid:"lesson-uid",title:"lesson-title",description:"lesson-description",slug:"lesson-slug",pupil_lesson_outcome:"pupil-lesson-outcome",key_learning_points:[{}],equipment_and_resources:null,content_guidance_details:null,content_guidance:null,supervision_level:null,thirdpartycontent_list:null,misconceptions_and_common_mistakes:null,keywords:null,video_id:null,sign_language_video_id:null,quiz_id_starter:null,quiz_id_exit:null,asset_id_slidedeck:null,asset_id_worksheet:null,copyright_content:null,_state:"published",_cohort:"2023-2024",deprecated_fields:null}),exports.lessonDataSchema=i,exports.programmeFieldsFixture=()=>({tier:null,tier_id:null,tier_slug:null,tier_description:null,tier_display_order:null,examboard:null,examboard_id:null,examboard_slug:null,examboard_description:null,examboard_display_order:null,year:"year",year_slug:"year-1",year_id:1,year_description:"year-description",year_display_order:1,keystage:"KS1",keystage_id:1,keystage_slug:"ks1",keystage_description:"Key Stage 1",keystage_display_order:1,phase:"primary",phase_id:0,phase_slug:"primary",phase_description:"primary",phase_display_order:1,subject:"subject",subject_id:1,subject_slug:"subject-slug",subject_description:"subject-description",subject_display_order:1}),exports.programmeFieldsSchema=a,exports.unitDataFixture=()=>({unit_id:0,unit_uid:"unit-uid",description:null,slug:"unit-slug",tags:null,title:"unit-title",_state:"published",_cohort:"2023-2024"}),exports.unitDataSchema=u;
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/schema/base.schema.ts","../../src/schema/lessonData.schema.ts","../../src/schema/programmeFields.schema.ts","../../src/schema/unitData.schema.ts","../../src/fixtures/lessonData.fixture.ts","../../src/fixtures/programmeFields.fixture.ts","../../src/fixtures/unitData.fixture.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const _stateSchema = z.enum([\"published\", \"new\", \"migration\"]);\nexport const _cohortSchema = z.enum([\"2020-2023\", \"2023-2024\", \"0\"]);\nexport const keystages = z.enum([\"KS1\", \"KS2\", \"KS3\", \"KS4\", \"EYFS\"]);\nexport const keystageSlugs = z.enum([\n \"ks1\",\n \"ks2\",\n \"ks3\",\n \"ks4\",\n \"early-years-foundation-stage\",\n]);\nexport const keystageDescriptions = z.enum([\n \"Key Stage 1\",\n \"Key Stage 2\",\n \"Key Stage 3\",\n \"Key Stage 4\",\n \"Early Years Foundation Stage\",\n]);\n","import { z } from \"zod\";\n\nimport { _stateSchema, _cohortSchema } from \"./base.schema\";\n\nexport const lessonDataSchema = z.object({\n lesson_id: z.number(),\n lesson_uid: z.string(),\n slug: z.string(),\n title: z.string(),\n description: z.string(),\n pupil_lesson_outcome: z.string(),\n key_learning_points: z.array(z.object({})),\n equipment_and_resources: z.array(z.object({})).nullable(),\n content_guidance_details: z.array(z.object({})).nullable(),\n content_guidance: z.array(z.number()).nullable(),\n copyright_content: z.array(z.object({})).nullable(),\n supervision_level: z.string().nullable(),\n thirdpartycontent_list: z.array(z.number()).nullable(),\n misconceptions_and_common_mistakes: z.array(z.object({})).nullable(),\n keywords: z.array(z.object({})).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 asset_id_slidedeck: z.number().nullable(),\n asset_id_worksheet: z.number().nullable(),\n deprecated_fields: z.record(z.unknown()).nullable(),\n _state: _stateSchema,\n _cohort: _cohortSchema,\n});\n\nexport type LessonData = z.infer<typeof lessonDataSchema>;\n","import { z } from \"zod\";\nimport { keystages, keystageSlugs, keystageDescriptions } from \"./base.schema\";\n\nexport const programmeFieldsSchema = z.object({\n tier: z.string().nullable(),\n tier_id: z.number().nullable(),\n tier_slug: z.string().nullable(),\n tier_description: z.string().nullable(),\n tier_display_order: z.number().nullable(),\n\n examboard: z.string().nullable(),\n examboard_id: z.number().nullable(),\n examboard_slug: z.string().nullable(),\n examboard_description: z.string().nullable(),\n examboard_display_order: z.number().nullable(),\n\n year: z.string(),\n year_slug: z.string(),\n year_id: z.number(),\n year_description: z.string(),\n year_display_order: z.number(),\n\n keystage: keystages,\n keystage_id: z.number(),\n keystage_slug: keystageSlugs,\n keystage_description: keystageDescriptions,\n keystage_display_order: z.number(),\n\n phase: z.string(),\n phase_id: z.number(),\n phase_slug: z.string(),\n phase_description: z.string(),\n phase_display_order: z.number(),\n\n subject: z.string(),\n subject_id: z.number(),\n subject_slug: z.string(),\n subject_description: z.string(),\n subject_display_order: z.number(),\n\n legacy: z.string().optional(),\n dataset: z.string().optional(),\n});\n\nexport type ProgrammeFields = z.infer<typeof programmeFieldsSchema>;\n","import { z } from \"zod\";\n\nimport { _stateSchema, _cohortSchema } from \"./base.schema\";\n\nexport const unitDataSchema = z.object({\n unit_id: z.number(),\n unit_uid: z.string(),\n description: z.string().nullable(),\n slug: z.string(),\n tags: z.array(z.number()).nullable(),\n title: z.string(),\n _state: _stateSchema,\n _cohort: _cohortSchema,\n});\n\nexport type UnitData = z.infer<typeof unitDataSchema>;\n","import { LessonData } from \"@/schema/lessonData.schema\";\n\nexport const lessonDataFixture = (\n overrides?: Partial<LessonData>,\n): LessonData => ({\n lesson_id: 1,\n lesson_uid: \"lesson-uid\",\n title: \"lesson-title\",\n description: \"lesson-description\",\n slug: \"lesson-slug\",\n pupil_lesson_outcome: \"pupil-lesson-outcome\",\n key_learning_points: [{}],\n equipment_and_resources: null,\n content_guidance_details: null,\n content_guidance: null,\n supervision_level: null,\n thirdpartycontent_list: null,\n misconceptions_and_common_mistakes: null,\n keywords: null,\n video_id: null,\n sign_language_video_id: null,\n quiz_id_starter: null,\n quiz_id_exit: null,\n asset_id_slidedeck: null,\n asset_id_worksheet: null,\n copyright_content: null,\n _state: \"published\",\n _cohort: \"2023-2024\",\n deprecated_fields: null,\n});\n","import { ProgrammeFields } from \"@/schema/programmeFields.schema\";\n\nexport const programmeFieldsFixture = (): ProgrammeFields => ({\n tier: null,\n tier_id: null,\n tier_slug: null,\n tier_description: null,\n tier_display_order: null,\n examboard: null,\n examboard_id: null,\n examboard_slug: null,\n examboard_description: null,\n examboard_display_order: null,\n year: \"year\",\n year_slug: \"year-1\",\n year_id: 1,\n year_description: \"year-description\",\n year_display_order: 1,\n keystage: \"KS1\",\n keystage_id: 1,\n keystage_slug: \"ks1\",\n keystage_description: \"Key Stage 1\",\n keystage_display_order: 1,\n phase: \"primary\",\n phase_id: 0,\n phase_slug: \"primary\",\n phase_description: \"primary\",\n phase_display_order: 1,\n subject: \"subject\",\n subject_id: 1,\n subject_slug: \"subject-slug\",\n subject_description: \"subject-description\",\n subject_display_order: 1,\n});\n","import { UnitData } from \"@/schema/unitData.schema\";\n\nexport const unitDataFixture = (): UnitData => ({\n unit_id: 0,\n unit_uid: \"unit-uid\",\n description: null,\n slug: \"unit-slug\",\n tags: null,\n title: \"unit-title\",\n _state: \"published\",\n _cohort: \"2023-2024\",\n});\n"],"names":["_stateSchema","z","enum","_cohortSchema","keystages","keystageSlugs","keystageDescriptions","lessonDataSchema","object","lesson_id","number","lesson_uid","string","slug","title","description","pupil_lesson_outcome","key_learning_points","array","equipment_and_resources","nullable","content_guidance_details","content_guidance","copyright_content","supervision_level","thirdpartycontent_list","misconceptions_and_common_mistakes","keywords","video_id","sign_language_video_id","quiz_id_starter","quiz_id_exit","asset_id_slidedeck","asset_id_worksheet","deprecated_fields","record","unknown","_state","_cohort","programmeFieldsSchema","tier","tier_id","tier_slug","tier_description","tier_display_order","examboard","examboard_id","examboard_slug","examboard_description","examboard_display_order","year","year_slug","year_id","year_description","year_display_order","keystage","keystage_id","keystage_slug","keystage_description","keystage_display_order","phase","phase_id","phase_slug","phase_description","phase_display_order","subject","subject_id","subject_slug","subject_description","subject_display_order","legacy","optional","dataset","unitDataSchema","unit_id","unit_uid","tags","overrides"],"mappings":"kCAEa,MAAAA,EAAeC,EAACA,EAACC,KAAK,CAAC,YAAa,MAAO,cAC3CC,EAAgBF,EAACA,EAACC,KAAK,CAAC,YAAa,YAAa,MAClDE,EAAYH,EAAAA,EAAEC,KAAK,CAAC,MAAO,MAAO,MAAO,MAAO,SAChDG,EAAgBJ,EAACA,EAACC,KAAK,CAClC,MACA,MACA,MACA,MACA,iCAEWI,EAAuBL,EAACA,EAACC,KAAK,CACzC,cACA,cACA,cACA,cACA,iCCbWK,EAAmBN,EAACA,EAACO,OAAO,CACvCC,UAAWR,EAACA,EAACS,SACbC,WAAYV,EAACA,EAACW,SACdC,KAAMZ,EAACA,EAACW,SACRE,MAAOb,EAACA,EAACW,SACTG,YAAad,EAACA,EAACW,SACfI,qBAAsBf,EAACA,EAACW,SACxBK,oBAAqBhB,EAACA,EAACiB,MAAMjB,EAACA,EAACO,OAAO,CAAE,IACxCW,wBAAyBlB,EAACA,EAACiB,MAAMjB,EAAAA,EAAEO,OAAO,CAAE,IAAGY,WAC/CC,yBAA0BpB,EAACA,EAACiB,MAAMjB,EAAAA,EAAEO,OAAO,CAAE,IAAGY,WAChDE,iBAAkBrB,EAACA,EAACiB,MAAMjB,EAACA,EAACS,UAAUU,WACtCG,kBAAmBtB,EAACA,EAACiB,MAAMjB,EAAAA,EAAEO,OAAO,CAAE,IAAGY,WACzCI,kBAAmBvB,EAACA,EAACW,SAASQ,WAC9BK,uBAAwBxB,EAACA,EAACiB,MAAMjB,EAACA,EAACS,UAAUU,WAC5CM,mCAAoCzB,EAACA,EAACiB,MAAMjB,EAAAA,EAAEO,OAAO,CAAE,IAAGY,WAC1DO,SAAU1B,EAACA,EAACiB,MAAMjB,EAAAA,EAAEO,OAAO,CAAE,IAAGY,WAChCQ,SAAU3B,EAACA,EAACS,SAASU,WACrBS,uBAAwB5B,EAACA,EAACS,SAASU,WACnCU,gBAAiB7B,EAACA,EAACS,SAASU,WAC5BW,aAAc9B,EAACA,EAACS,SAASU,WACzBY,mBAAoB/B,EAACA,EAACS,SAASU,WAC/Ba,mBAAoBhC,EAACA,EAACS,SAASU,WAC/Bc,kBAAmBjC,EAACA,EAACkC,OAAOlC,EAACA,EAACmC,WAAWhB,WACzCiB,OAAQrC,EACRsC,QAASnC,ICzBEoC,EAAwBtC,EAACA,EAACO,OAAO,CAC5CgC,KAAMvC,EAACA,EAACW,SAASQ,WACjBqB,QAASxC,EAACA,EAACS,SAASU,WACpBsB,UAAWzC,EAACA,EAACW,SAASQ,WACtBuB,iBAAkB1C,EAACA,EAACW,SAASQ,WAC7BwB,mBAAoB3C,EAACA,EAACS,SAASU,WAE/ByB,UAAW5C,EAACA,EAACW,SAASQ,WACtB0B,aAAc7C,EAACA,EAACS,SAASU,WACzB2B,eAAgB9C,EAACA,EAACW,SAASQ,WAC3B4B,sBAAuB/C,EAACA,EAACW,SAASQ,WAClC6B,wBAAyBhD,EAACA,EAACS,SAASU,WAEpC8B,KAAMjD,EAACA,EAACW,SACRuC,UAAWlD,EAACA,EAACW,SACbwC,QAASnD,EAACA,EAACS,SACX2C,iBAAkBpD,EAACA,EAACW,SACpB0C,mBAAoBrD,EAACA,EAACS,SAEtB6C,SAAUnD,EACVoD,YAAavD,EAACA,EAACS,SACf+C,cAAepD,EACfqD,qBAAsBpD,EACtBqD,uBAAwB1D,EAACA,EAACS,SAE1BkD,MAAO3D,EAACA,EAACW,SACTiD,SAAU5D,EAACA,EAACS,SACZoD,WAAY7D,EAACA,EAACW,SACdmD,kBAAmB9D,EAACA,EAACW,SACrBoD,oBAAqB/D,EAACA,EAACS,SAEvBuD,QAAShE,EAACA,EAACW,SACXsD,WAAYjE,EAACA,EAACS,SACdyD,aAAclE,EAACA,EAACW,SAChBwD,oBAAqBnE,EAACA,EAACW,SACvByD,sBAAuBpE,EAACA,EAACS,SAEzB4D,OAAQrE,EAACA,EAACW,SAAS2D,WACnBC,QAASvE,EAACA,EAACW,SAAS2D,aCrCTE,EAAiBxE,EAACA,EAACO,OAAO,CACrCkE,QAASzE,EAACA,EAACS,SACXiE,SAAU1E,EAACA,EAACW,SACZG,YAAad,EAACA,EAACW,SAASQ,WACxBP,KAAMZ,EAACA,EAACW,SACRgE,KAAM3E,EAACA,EAACiB,MAAMjB,EAACA,EAACS,UAAUU,WAC1BN,MAAOb,EAACA,EAACW,SACTyB,OAAQrC,EACRsC,QAASnC,wJCTT0E,IACgB,CAChBpE,UAAW,EACXE,WAAY,aACZG,MAAO,eACPC,YAAa,qBACbF,KAAM,cACNG,qBAAsB,uBACtBC,oBAAqB,CAAC,CAAA,GACtBE,wBAAyB,KACzBE,yBAA0B,KAC1BC,iBAAkB,KAClBE,kBAAmB,KACnBC,uBAAwB,KACxBC,mCAAoC,KACpCC,SAAU,KACVC,SAAU,KACVC,uBAAwB,KACxBC,gBAAiB,KACjBC,aAAc,KACdC,mBAAoB,KACpBC,mBAAoB,KACpBV,kBAAmB,KACnBc,OAAQ,YACRC,QAAS,YACTJ,kBAAmB,iEC1BiB,KAAwB,CAC5DM,KAAM,KACNC,QAAS,KACTC,UAAW,KACXC,iBAAkB,KAClBC,mBAAoB,KACpBC,UAAW,KACXC,aAAc,KACdC,eAAgB,KAChBC,sBAAuB,KACvBC,wBAAyB,KACzBC,KAAM,OACNC,UAAW,SACXC,QAAS,EACTC,iBAAkB,mBAClBC,mBAAoB,EACpBC,SAAU,MACVC,YAAa,EACbC,cAAe,MACfC,qBAAsB,cACtBC,uBAAwB,EACxBC,MAAO,UACPC,SAAU,EACVC,WAAY,UACZC,kBAAmB,UACnBC,oBAAqB,EACrBC,QAAS,UACTC,WAAY,EACZC,aAAc,eACdC,oBAAqB,sBACrBC,sBAAuB,4DC9BM,KAAiB,CAC9CK,QAAS,EACTC,SAAU,WACV5D,YAAa,KACbF,KAAM,YACN+D,KAAM,KACN9D,MAAO,aACPuB,OAAQ,YACRC,QAAS"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{z as e}from"zod";const l=e.enum(["published","new","migration"]),n=e.enum(["2020-2023","2023-2024","0"]),i=e.enum(["KS1","KS2","KS3","KS4","EYFS"]),s=e.enum(["ks1","ks2","ks3","ks4","early-years-foundation-stage"]),t=e.enum(["Key Stage 1","Key Stage 2","Key Stage 3","Key Stage 4","Early Years Foundation Stage"]),r=e.object({lesson_id:e.number(),lesson_uid:e.string(),slug:e.string(),title:e.string(),description:e.string(),pupil_lesson_outcome:e.string(),key_learning_points:e.array(e.object({})),equipment_and_resources:e.array(e.object({})).nullable(),content_guidance_details:e.array(e.object({})).nullable(),content_guidance:e.array(e.number()).nullable(),copyright_content:e.array(e.object({})).nullable(),supervision_level:e.string().nullable(),thirdpartycontent_list:e.array(e.number()).nullable(),misconceptions_and_common_mistakes:e.array(e.object({})).nullable(),keywords:e.array(e.object({})).nullable(),video_id:e.number().nullable(),sign_language_video_id:e.number().nullable(),quiz_id_starter:e.number().nullable(),quiz_id_exit:e.number().nullable(),asset_id_slidedeck:e.number().nullable(),asset_id_worksheet:e.number().nullable(),deprecated_fields:e.record(e.unknown()).nullable(),_state:l,_cohort:n}),a=e.object({tier:e.string().nullable(),tier_id:e.number().nullable(),tier_slug:e.string().nullable(),tier_description:e.string().nullable(),tier_display_order:e.number().nullable(),examboard:e.string().nullable(),examboard_id:e.number().nullable(),examboard_slug:e.string().nullable(),examboard_description:e.string().nullable(),examboard_display_order:e.number().nullable(),year:e.string(),year_slug:e.string(),year_id:e.number(),year_description:e.string(),year_display_order:e.number(),keystage:i,keystage_id:e.number(),keystage_slug:s,keystage_description:t,keystage_display_order:e.number(),phase:e.string(),phase_id:e.number(),phase_slug:e.string(),phase_description:e.string(),phase_display_order:e.number(),subject:e.string(),subject_id:e.number(),subject_slug:e.string(),subject_description:e.string(),subject_display_order:e.number(),legacy:e.string().optional(),dataset:e.string().optional()}),u=e.object({unit_id:e.number(),unit_uid:e.string(),description:e.string().nullable(),slug:e.string(),tags:e.array(e.number()).nullable(),title:e.string(),_state:l,_cohort:n}),_=e=>({lesson_id:1,lesson_uid:"lesson-uid",title:"lesson-title",description:"lesson-description",slug:"lesson-slug",pupil_lesson_outcome:"pupil-lesson-outcome",key_learning_points:[{}],equipment_and_resources:null,content_guidance_details:null,content_guidance:null,supervision_level:null,thirdpartycontent_list:null,misconceptions_and_common_mistakes:null,keywords:null,video_id:null,sign_language_video_id:null,quiz_id_starter:null,quiz_id_exit:null,asset_id_slidedeck:null,asset_id_worksheet:null,copyright_content:null,_state:"published",_cohort:"2023-2024",deprecated_fields:null}),d=()=>({tier:null,tier_id:null,tier_slug:null,tier_description:null,tier_display_order:null,examboard:null,examboard_id:null,examboard_slug:null,examboard_description:null,examboard_display_order:null,year:"year",year_slug:"year-1",year_id:1,year_description:"year-description",year_display_order:1,keystage:"KS1",keystage_id:1,keystage_slug:"ks1",keystage_description:"Key Stage 1",keystage_display_order:1,phase:"primary",phase_id:0,phase_slug:"primary",phase_description:"primary",phase_display_order:1,subject:"subject",subject_id:1,subject_slug:"subject-slug",subject_description:"subject-description",subject_display_order:1}),o=()=>({unit_id:0,unit_uid:"unit-uid",description:null,slug:"unit-slug",tags:null,title:"unit-title",_state:"published",_cohort:"2023-2024"});export{n as _cohortSchema,l as _stateSchema,t as keystageDescriptions,s as keystageSlugs,i as keystages,_ as lessonDataFixture,r as lessonDataSchema,d as programmeFieldsFixture,a as programmeFieldsSchema,o as unitDataFixture,u as unitDataSchema};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/schema/base.schema.ts","../../src/schema/lessonData.schema.ts","../../src/schema/programmeFields.schema.ts","../../src/schema/unitData.schema.ts","../../src/fixtures/lessonData.fixture.ts","../../src/fixtures/programmeFields.fixture.ts","../../src/fixtures/unitData.fixture.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const _stateSchema = z.enum([\"published\", \"new\", \"migration\"]);\nexport const _cohortSchema = z.enum([\"2020-2023\", \"2023-2024\", \"0\"]);\nexport const keystages = z.enum([\"KS1\", \"KS2\", \"KS3\", \"KS4\", \"EYFS\"]);\nexport const keystageSlugs = z.enum([\n \"ks1\",\n \"ks2\",\n \"ks3\",\n \"ks4\",\n \"early-years-foundation-stage\",\n]);\nexport const keystageDescriptions = z.enum([\n \"Key Stage 1\",\n \"Key Stage 2\",\n \"Key Stage 3\",\n \"Key Stage 4\",\n \"Early Years Foundation Stage\",\n]);\n","import { z } from \"zod\";\n\nimport { _stateSchema, _cohortSchema } from \"./base.schema\";\n\nexport const lessonDataSchema = z.object({\n lesson_id: z.number(),\n lesson_uid: z.string(),\n slug: z.string(),\n title: z.string(),\n description: z.string(),\n pupil_lesson_outcome: z.string(),\n key_learning_points: z.array(z.object({})),\n equipment_and_resources: z.array(z.object({})).nullable(),\n content_guidance_details: z.array(z.object({})).nullable(),\n content_guidance: z.array(z.number()).nullable(),\n copyright_content: z.array(z.object({})).nullable(),\n supervision_level: z.string().nullable(),\n thirdpartycontent_list: z.array(z.number()).nullable(),\n misconceptions_and_common_mistakes: z.array(z.object({})).nullable(),\n keywords: z.array(z.object({})).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 asset_id_slidedeck: z.number().nullable(),\n asset_id_worksheet: z.number().nullable(),\n deprecated_fields: z.record(z.unknown()).nullable(),\n _state: _stateSchema,\n _cohort: _cohortSchema,\n});\n\nexport type LessonData = z.infer<typeof lessonDataSchema>;\n","import { z } from \"zod\";\nimport { keystages, keystageSlugs, keystageDescriptions } from \"./base.schema\";\n\nexport const programmeFieldsSchema = z.object({\n tier: z.string().nullable(),\n tier_id: z.number().nullable(),\n tier_slug: z.string().nullable(),\n tier_description: z.string().nullable(),\n tier_display_order: z.number().nullable(),\n\n examboard: z.string().nullable(),\n examboard_id: z.number().nullable(),\n examboard_slug: z.string().nullable(),\n examboard_description: z.string().nullable(),\n examboard_display_order: z.number().nullable(),\n\n year: z.string(),\n year_slug: z.string(),\n year_id: z.number(),\n year_description: z.string(),\n year_display_order: z.number(),\n\n keystage: keystages,\n keystage_id: z.number(),\n keystage_slug: keystageSlugs,\n keystage_description: keystageDescriptions,\n keystage_display_order: z.number(),\n\n phase: z.string(),\n phase_id: z.number(),\n phase_slug: z.string(),\n phase_description: z.string(),\n phase_display_order: z.number(),\n\n subject: z.string(),\n subject_id: z.number(),\n subject_slug: z.string(),\n subject_description: z.string(),\n subject_display_order: z.number(),\n\n legacy: z.string().optional(),\n dataset: z.string().optional(),\n});\n\nexport type ProgrammeFields = z.infer<typeof programmeFieldsSchema>;\n","import { z } from \"zod\";\n\nimport { _stateSchema, _cohortSchema } from \"./base.schema\";\n\nexport const unitDataSchema = z.object({\n unit_id: z.number(),\n unit_uid: z.string(),\n description: z.string().nullable(),\n slug: z.string(),\n tags: z.array(z.number()).nullable(),\n title: z.string(),\n _state: _stateSchema,\n _cohort: _cohortSchema,\n});\n\nexport type UnitData = z.infer<typeof unitDataSchema>;\n","import { LessonData } from \"@/schema/lessonData.schema\";\n\nexport const lessonDataFixture = (\n overrides?: Partial<LessonData>,\n): LessonData => ({\n lesson_id: 1,\n lesson_uid: \"lesson-uid\",\n title: \"lesson-title\",\n description: \"lesson-description\",\n slug: \"lesson-slug\",\n pupil_lesson_outcome: \"pupil-lesson-outcome\",\n key_learning_points: [{}],\n equipment_and_resources: null,\n content_guidance_details: null,\n content_guidance: null,\n supervision_level: null,\n thirdpartycontent_list: null,\n misconceptions_and_common_mistakes: null,\n keywords: null,\n video_id: null,\n sign_language_video_id: null,\n quiz_id_starter: null,\n quiz_id_exit: null,\n asset_id_slidedeck: null,\n asset_id_worksheet: null,\n copyright_content: null,\n _state: \"published\",\n _cohort: \"2023-2024\",\n deprecated_fields: null,\n});\n","import { ProgrammeFields } from \"@/schema/programmeFields.schema\";\n\nexport const programmeFieldsFixture = (): ProgrammeFields => ({\n tier: null,\n tier_id: null,\n tier_slug: null,\n tier_description: null,\n tier_display_order: null,\n examboard: null,\n examboard_id: null,\n examboard_slug: null,\n examboard_description: null,\n examboard_display_order: null,\n year: \"year\",\n year_slug: \"year-1\",\n year_id: 1,\n year_description: \"year-description\",\n year_display_order: 1,\n keystage: \"KS1\",\n keystage_id: 1,\n keystage_slug: \"ks1\",\n keystage_description: \"Key Stage 1\",\n keystage_display_order: 1,\n phase: \"primary\",\n phase_id: 0,\n phase_slug: \"primary\",\n phase_description: \"primary\",\n phase_display_order: 1,\n subject: \"subject\",\n subject_id: 1,\n subject_slug: \"subject-slug\",\n subject_description: \"subject-description\",\n subject_display_order: 1,\n});\n","import { UnitData } from \"@/schema/unitData.schema\";\n\nexport const unitDataFixture = (): UnitData => ({\n unit_id: 0,\n unit_uid: \"unit-uid\",\n description: null,\n slug: \"unit-slug\",\n tags: null,\n title: \"unit-title\",\n _state: \"published\",\n _cohort: \"2023-2024\",\n});\n"],"names":["_stateSchema","z","enum","_cohortSchema","keystages","keystageSlugs","keystageDescriptions","lessonDataSchema","object","lesson_id","number","lesson_uid","string","slug","title","description","pupil_lesson_outcome","key_learning_points","array","equipment_and_resources","nullable","content_guidance_details","content_guidance","copyright_content","supervision_level","thirdpartycontent_list","misconceptions_and_common_mistakes","keywords","video_id","sign_language_video_id","quiz_id_starter","quiz_id_exit","asset_id_slidedeck","asset_id_worksheet","deprecated_fields","record","unknown","_state","_cohort","programmeFieldsSchema","tier","tier_id","tier_slug","tier_description","tier_display_order","examboard","examboard_id","examboard_slug","examboard_description","examboard_display_order","year","year_slug","year_id","year_description","year_display_order","keystage","keystage_id","keystage_slug","keystage_description","keystage_display_order","phase","phase_id","phase_slug","phase_description","phase_display_order","subject","subject_id","subject_slug","subject_description","subject_display_order","legacy","optional","dataset","unitDataSchema","unit_id","unit_uid","tags","lessonDataFixture","overrides","programmeFieldsFixture","unitDataFixture"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
export const _stateSchema = z.enum(["published", "new", "migration"]);
|
|
4
|
+
export const _cohortSchema = z.enum(["2020-2023", "2023-2024", "0"]);
|
|
5
|
+
export const keystages = z.enum(["KS1", "KS2", "KS3", "KS4", "EYFS"]);
|
|
6
|
+
export const keystageSlugs = z.enum([
|
|
7
|
+
"ks1",
|
|
8
|
+
"ks2",
|
|
9
|
+
"ks3",
|
|
10
|
+
"ks4",
|
|
11
|
+
"early-years-foundation-stage",
|
|
12
|
+
]);
|
|
13
|
+
export const keystageDescriptions = z.enum([
|
|
14
|
+
"Key Stage 1",
|
|
15
|
+
"Key Stage 2",
|
|
16
|
+
"Key Stage 3",
|
|
17
|
+
"Key Stage 4",
|
|
18
|
+
"Early Years Foundation Stage",
|
|
19
|
+
]);
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { LessonData } from "@/schema/lessonData.schema";
|
|
2
|
+
|
|
3
|
+
export const lessonDataFixture = (
|
|
4
|
+
overrides?: Partial<LessonData>,
|
|
5
|
+
): LessonData => ({
|
|
6
|
+
lesson_id: 1,
|
|
7
|
+
lesson_uid: "lesson-uid",
|
|
8
|
+
title: "lesson-title",
|
|
9
|
+
description: "lesson-description",
|
|
10
|
+
slug: "lesson-slug",
|
|
11
|
+
pupil_lesson_outcome: "pupil-lesson-outcome",
|
|
12
|
+
key_learning_points: [{}],
|
|
13
|
+
equipment_and_resources: null,
|
|
14
|
+
content_guidance_details: null,
|
|
15
|
+
content_guidance: null,
|
|
16
|
+
supervision_level: null,
|
|
17
|
+
thirdpartycontent_list: null,
|
|
18
|
+
misconceptions_and_common_mistakes: null,
|
|
19
|
+
keywords: null,
|
|
20
|
+
video_id: null,
|
|
21
|
+
sign_language_video_id: null,
|
|
22
|
+
quiz_id_starter: null,
|
|
23
|
+
quiz_id_exit: null,
|
|
24
|
+
asset_id_slidedeck: null,
|
|
25
|
+
asset_id_worksheet: null,
|
|
26
|
+
copyright_content: null,
|
|
27
|
+
_state: "published",
|
|
28
|
+
_cohort: "2023-2024",
|
|
29
|
+
deprecated_fields: null,
|
|
30
|
+
});
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ProgrammeFields } from "@/schema/programmeFields.schema";
|
|
2
|
+
|
|
3
|
+
export const programmeFieldsFixture = (): ProgrammeFields => ({
|
|
4
|
+
tier: null,
|
|
5
|
+
tier_id: null,
|
|
6
|
+
tier_slug: null,
|
|
7
|
+
tier_description: null,
|
|
8
|
+
tier_display_order: null,
|
|
9
|
+
examboard: null,
|
|
10
|
+
examboard_id: null,
|
|
11
|
+
examboard_slug: null,
|
|
12
|
+
examboard_description: null,
|
|
13
|
+
examboard_display_order: null,
|
|
14
|
+
year: "year",
|
|
15
|
+
year_slug: "year-1",
|
|
16
|
+
year_id: 1,
|
|
17
|
+
year_description: "year-description",
|
|
18
|
+
year_display_order: 1,
|
|
19
|
+
keystage: "KS1",
|
|
20
|
+
keystage_id: 1,
|
|
21
|
+
keystage_slug: "ks1",
|
|
22
|
+
keystage_description: "Key Stage 1",
|
|
23
|
+
keystage_display_order: 1,
|
|
24
|
+
phase: "primary",
|
|
25
|
+
phase_id: 0,
|
|
26
|
+
phase_slug: "primary",
|
|
27
|
+
phase_description: "primary",
|
|
28
|
+
phase_display_order: 1,
|
|
29
|
+
subject: "subject",
|
|
30
|
+
subject_id: 1,
|
|
31
|
+
subject_slug: "subject-slug",
|
|
32
|
+
subject_description: "subject-description",
|
|
33
|
+
subject_display_order: 1,
|
|
34
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { UnitData } from "@/schema/unitData.schema";
|
|
2
|
+
|
|
3
|
+
export const unitDataFixture = (): UnitData => ({
|
|
4
|
+
unit_id: 0,
|
|
5
|
+
unit_uid: "unit-uid",
|
|
6
|
+
description: null,
|
|
7
|
+
slug: "unit-slug",
|
|
8
|
+
tags: null,
|
|
9
|
+
title: "unit-title",
|
|
10
|
+
_state: "published",
|
|
11
|
+
_cohort: "2023-2024",
|
|
12
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { LessonData } from "@/schema/lessonData.schema";
|
|
2
|
+
|
|
3
|
+
export const lessonDataFixture = (
|
|
4
|
+
overrides?: Partial<LessonData>,
|
|
5
|
+
): LessonData => ({
|
|
6
|
+
lesson_id: 1,
|
|
7
|
+
lesson_uid: "lesson-uid",
|
|
8
|
+
title: "lesson-title",
|
|
9
|
+
description: "lesson-description",
|
|
10
|
+
slug: "lesson-slug",
|
|
11
|
+
pupil_lesson_outcome: "pupil-lesson-outcome",
|
|
12
|
+
key_learning_points: [{}],
|
|
13
|
+
equipment_and_resources: null,
|
|
14
|
+
content_guidance_details: null,
|
|
15
|
+
content_guidance: null,
|
|
16
|
+
supervision_level: null,
|
|
17
|
+
thirdpartycontent_list: null,
|
|
18
|
+
misconceptions_and_common_mistakes: null,
|
|
19
|
+
keywords: null,
|
|
20
|
+
video_id: null,
|
|
21
|
+
sign_language_video_id: null,
|
|
22
|
+
quiz_id_starter: null,
|
|
23
|
+
quiz_id_exit: null,
|
|
24
|
+
asset_id_slidedeck: null,
|
|
25
|
+
asset_id_worksheet: null,
|
|
26
|
+
copyright_content: null,
|
|
27
|
+
_state: "published",
|
|
28
|
+
_cohort: "2023-2024",
|
|
29
|
+
deprecated_fields: null,
|
|
30
|
+
});
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
import { _stateSchema, _cohortSchema } from "./base.schema";
|
|
4
|
+
|
|
5
|
+
export const lessonDataSchema = z.object({
|
|
6
|
+
lesson_id: z.number(),
|
|
7
|
+
lesson_uid: z.string(),
|
|
8
|
+
slug: z.string(),
|
|
9
|
+
title: z.string(),
|
|
10
|
+
description: z.string(),
|
|
11
|
+
pupil_lesson_outcome: z.string(),
|
|
12
|
+
key_learning_points: z.array(z.object({})),
|
|
13
|
+
equipment_and_resources: z.array(z.object({})).nullable(),
|
|
14
|
+
content_guidance_details: z.array(z.object({})).nullable(),
|
|
15
|
+
content_guidance: z.array(z.number()).nullable(),
|
|
16
|
+
copyright_content: z.array(z.object({})).nullable(),
|
|
17
|
+
supervision_level: z.string().nullable(),
|
|
18
|
+
thirdpartycontent_list: z.array(z.number()).nullable(),
|
|
19
|
+
misconceptions_and_common_mistakes: z.array(z.object({})).nullable(),
|
|
20
|
+
keywords: z.array(z.object({})).nullable(),
|
|
21
|
+
video_id: z.number().nullable(),
|
|
22
|
+
sign_language_video_id: z.number().nullable(),
|
|
23
|
+
quiz_id_starter: z.number().nullable(),
|
|
24
|
+
quiz_id_exit: z.number().nullable(),
|
|
25
|
+
asset_id_slidedeck: z.number().nullable(),
|
|
26
|
+
asset_id_worksheet: z.number().nullable(),
|
|
27
|
+
deprecated_fields: z.record(z.unknown()).nullable(),
|
|
28
|
+
_state: _stateSchema,
|
|
29
|
+
_cohort: _cohortSchema,
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
export type LessonData = z.infer<typeof lessonDataSchema>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
|
|
3
|
+
import { lessonDataFixture } from "@/fixtures/lessonData.fixture";
|
|
4
|
+
import { lessonDataSchema } from "@/schema/lessonData.schema";
|
|
5
|
+
|
|
6
|
+
describe("lessonData", () => {
|
|
7
|
+
it("conforms to the schema", () => {
|
|
8
|
+
const l = lessonDataFixture();
|
|
9
|
+
expect(() => lessonDataSchema.parse(l)).not.toThrow();
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ProgrammeFields } from "@/schema/programmeFields.schema";
|
|
2
|
+
|
|
3
|
+
export const programmeFieldsFixture = (): ProgrammeFields => ({
|
|
4
|
+
tier: null,
|
|
5
|
+
tier_id: null,
|
|
6
|
+
tier_slug: null,
|
|
7
|
+
tier_description: null,
|
|
8
|
+
tier_display_order: null,
|
|
9
|
+
examboard: null,
|
|
10
|
+
examboard_id: null,
|
|
11
|
+
examboard_slug: null,
|
|
12
|
+
examboard_description: null,
|
|
13
|
+
examboard_display_order: null,
|
|
14
|
+
year: "year",
|
|
15
|
+
year_slug: "year-1",
|
|
16
|
+
year_id: 1,
|
|
17
|
+
year_description: "year-description",
|
|
18
|
+
year_display_order: 1,
|
|
19
|
+
keystage: "KS1",
|
|
20
|
+
keystage_id: 1,
|
|
21
|
+
keystage_slug: "ks1",
|
|
22
|
+
keystage_description: "Key Stage 1",
|
|
23
|
+
keystage_display_order: 1,
|
|
24
|
+
phase: "primary",
|
|
25
|
+
phase_id: 0,
|
|
26
|
+
phase_slug: "primary",
|
|
27
|
+
phase_description: "primary",
|
|
28
|
+
phase_display_order: 1,
|
|
29
|
+
subject: "subject",
|
|
30
|
+
subject_id: 1,
|
|
31
|
+
subject_slug: "subject-slug",
|
|
32
|
+
subject_description: "subject-description",
|
|
33
|
+
subject_display_order: 1,
|
|
34
|
+
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { keystages, keystageSlugs, keystageDescriptions } from "./base.schema";
|
|
3
|
+
|
|
4
|
+
export const programmeFieldsSchema = z.object({
|
|
5
|
+
tier: z.string().nullable(),
|
|
6
|
+
tier_id: z.number().nullable(),
|
|
7
|
+
tier_slug: z.string().nullable(),
|
|
8
|
+
tier_description: z.string().nullable(),
|
|
9
|
+
tier_display_order: z.number().nullable(),
|
|
10
|
+
|
|
11
|
+
examboard: z.string().nullable(),
|
|
12
|
+
examboard_id: z.number().nullable(),
|
|
13
|
+
examboard_slug: z.string().nullable(),
|
|
14
|
+
examboard_description: z.string().nullable(),
|
|
15
|
+
examboard_display_order: z.number().nullable(),
|
|
16
|
+
|
|
17
|
+
year: z.string(),
|
|
18
|
+
year_slug: z.string(),
|
|
19
|
+
year_id: z.number(),
|
|
20
|
+
year_description: z.string(),
|
|
21
|
+
year_display_order: z.number(),
|
|
22
|
+
|
|
23
|
+
keystage: keystages,
|
|
24
|
+
keystage_id: z.number(),
|
|
25
|
+
keystage_slug: keystageSlugs,
|
|
26
|
+
keystage_description: keystageDescriptions,
|
|
27
|
+
keystage_display_order: z.number(),
|
|
28
|
+
|
|
29
|
+
phase: z.string(),
|
|
30
|
+
phase_id: z.number(),
|
|
31
|
+
phase_slug: z.string(),
|
|
32
|
+
phase_description: z.string(),
|
|
33
|
+
phase_display_order: z.number(),
|
|
34
|
+
|
|
35
|
+
subject: z.string(),
|
|
36
|
+
subject_id: z.number(),
|
|
37
|
+
subject_slug: z.string(),
|
|
38
|
+
subject_description: z.string(),
|
|
39
|
+
subject_display_order: z.number(),
|
|
40
|
+
|
|
41
|
+
legacy: z.string().optional(),
|
|
42
|
+
dataset: z.string().optional(),
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export type ProgrammeFields = z.infer<typeof programmeFieldsSchema>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
|
|
3
|
+
import { programmeFieldsFixture } from "@/fixtures/programmeFields.fixture";
|
|
4
|
+
import { programmeFieldsSchema } from "@/schema/programmeFields.schema";
|
|
5
|
+
|
|
6
|
+
describe("programmeFields", () => {
|
|
7
|
+
it("conforms to the schema", () => {
|
|
8
|
+
const l = programmeFieldsFixture();
|
|
9
|
+
expect(() => programmeFieldsSchema.parse(l)).not.toThrow();
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
export const _stateSchema = z.enum(["published", "new", "migration"]);
|
|
4
|
+
export const _cohortSchema = z.enum(["2020-2023", "2023-2024", "0"]);
|
|
5
|
+
export const keystages = z.enum(["KS1", "KS2", "KS3", "KS4", "EYFS"]);
|
|
6
|
+
export const keystageSlugs = z.enum([
|
|
7
|
+
"ks1",
|
|
8
|
+
"ks2",
|
|
9
|
+
"ks3",
|
|
10
|
+
"ks4",
|
|
11
|
+
"early-years-foundation-stage",
|
|
12
|
+
]);
|
|
13
|
+
export const keystageDescriptions = z.enum([
|
|
14
|
+
"Key Stage 1",
|
|
15
|
+
"Key Stage 2",
|
|
16
|
+
"Key Stage 3",
|
|
17
|
+
"Key Stage 4",
|
|
18
|
+
"Early Years Foundation Stage",
|
|
19
|
+
]);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
import { _stateSchema, _cohortSchema } from "./base.schema";
|
|
4
|
+
|
|
5
|
+
export const lessonDataSchema = z.object({
|
|
6
|
+
lesson_id: z.number(),
|
|
7
|
+
lesson_uid: z.string(),
|
|
8
|
+
slug: z.string(),
|
|
9
|
+
title: z.string(),
|
|
10
|
+
description: z.string(),
|
|
11
|
+
pupil_lesson_outcome: z.string(),
|
|
12
|
+
key_learning_points: z.array(z.object({})),
|
|
13
|
+
equipment_and_resources: z.array(z.object({})).nullable(),
|
|
14
|
+
content_guidance_details: z.array(z.object({})).nullable(),
|
|
15
|
+
content_guidance: z.array(z.number()).nullable(),
|
|
16
|
+
copyright_content: z.array(z.object({})).nullable(),
|
|
17
|
+
supervision_level: z.string().nullable(),
|
|
18
|
+
thirdpartycontent_list: z.array(z.number()).nullable(),
|
|
19
|
+
misconceptions_and_common_mistakes: z.array(z.object({})).nullable(),
|
|
20
|
+
keywords: z.array(z.object({})).nullable(),
|
|
21
|
+
video_id: z.number().nullable(),
|
|
22
|
+
sign_language_video_id: z.number().nullable(),
|
|
23
|
+
quiz_id_starter: z.number().nullable(),
|
|
24
|
+
quiz_id_exit: z.number().nullable(),
|
|
25
|
+
asset_id_slidedeck: z.number().nullable(),
|
|
26
|
+
asset_id_worksheet: z.number().nullable(),
|
|
27
|
+
deprecated_fields: z.record(z.unknown()).nullable(),
|
|
28
|
+
_state: _stateSchema,
|
|
29
|
+
_cohort: _cohortSchema,
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
export type LessonData = z.infer<typeof lessonDataSchema>;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { keystages, keystageSlugs, keystageDescriptions } from "./base.schema";
|
|
3
|
+
|
|
4
|
+
export const programmeFieldsSchema = z.object({
|
|
5
|
+
tier: z.string().nullable(),
|
|
6
|
+
tier_id: z.number().nullable(),
|
|
7
|
+
tier_slug: z.string().nullable(),
|
|
8
|
+
tier_description: z.string().nullable(),
|
|
9
|
+
tier_display_order: z.number().nullable(),
|
|
10
|
+
|
|
11
|
+
examboard: z.string().nullable(),
|
|
12
|
+
examboard_id: z.number().nullable(),
|
|
13
|
+
examboard_slug: z.string().nullable(),
|
|
14
|
+
examboard_description: z.string().nullable(),
|
|
15
|
+
examboard_display_order: z.number().nullable(),
|
|
16
|
+
|
|
17
|
+
year: z.string(),
|
|
18
|
+
year_slug: z.string(),
|
|
19
|
+
year_id: z.number(),
|
|
20
|
+
year_description: z.string(),
|
|
21
|
+
year_display_order: z.number(),
|
|
22
|
+
|
|
23
|
+
keystage: keystages,
|
|
24
|
+
keystage_id: z.number(),
|
|
25
|
+
keystage_slug: keystageSlugs,
|
|
26
|
+
keystage_description: keystageDescriptions,
|
|
27
|
+
keystage_display_order: z.number(),
|
|
28
|
+
|
|
29
|
+
phase: z.string(),
|
|
30
|
+
phase_id: z.number(),
|
|
31
|
+
phase_slug: z.string(),
|
|
32
|
+
phase_description: z.string(),
|
|
33
|
+
phase_display_order: z.number(),
|
|
34
|
+
|
|
35
|
+
subject: z.string(),
|
|
36
|
+
subject_id: z.number(),
|
|
37
|
+
subject_slug: z.string(),
|
|
38
|
+
subject_description: z.string(),
|
|
39
|
+
subject_display_order: z.number(),
|
|
40
|
+
|
|
41
|
+
legacy: z.string().optional(),
|
|
42
|
+
dataset: z.string().optional(),
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export type ProgrammeFields = z.infer<typeof programmeFieldsSchema>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
import { _stateSchema, _cohortSchema } from "./base.schema";
|
|
4
|
+
|
|
5
|
+
export const unitDataSchema = z.object({
|
|
6
|
+
unit_id: z.number(),
|
|
7
|
+
unit_uid: z.string(),
|
|
8
|
+
description: z.string().nullable(),
|
|
9
|
+
slug: z.string(),
|
|
10
|
+
tags: z.array(z.number()).nullable(),
|
|
11
|
+
title: z.string(),
|
|
12
|
+
_state: _stateSchema,
|
|
13
|
+
_cohort: _cohortSchema,
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export type UnitData = z.infer<typeof unitDataSchema>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
|
|
3
|
+
import { lessonDataFixture } from "@/fixtures/lessonData.fixture";
|
|
4
|
+
import { lessonDataSchema } from "@/schema/lessonData.schema";
|
|
5
|
+
|
|
6
|
+
describe("lessonData", () => {
|
|
7
|
+
it("conforms to the schema", () => {
|
|
8
|
+
const l = lessonDataFixture();
|
|
9
|
+
expect(() => lessonDataSchema.parse(l)).not.toThrow();
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
|
|
3
|
+
import { programmeFieldsFixture } from "@/fixtures/programmeFields.fixture";
|
|
4
|
+
import { programmeFieldsSchema } from "@/schema/programmeFields.schema";
|
|
5
|
+
|
|
6
|
+
describe("programmeFields", () => {
|
|
7
|
+
it("conforms to the schema", () => {
|
|
8
|
+
const l = programmeFieldsFixture();
|
|
9
|
+
expect(() => programmeFieldsSchema.parse(l)).not.toThrow();
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { UnitData } from "@/schema/unitData.schema";
|
|
2
|
+
|
|
3
|
+
export const unitDataFixture = (): UnitData => ({
|
|
4
|
+
unit_id: 0,
|
|
5
|
+
unit_uid: "unit-uid",
|
|
6
|
+
description: null,
|
|
7
|
+
slug: "unit-slug",
|
|
8
|
+
tags: null,
|
|
9
|
+
title: "unit-title",
|
|
10
|
+
_state: "published",
|
|
11
|
+
_cohort: "2023-2024",
|
|
12
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
import { _stateSchema, _cohortSchema } from "./base.schema";
|
|
4
|
+
|
|
5
|
+
export const unitDataSchema = z.object({
|
|
6
|
+
unit_id: z.number(),
|
|
7
|
+
unit_uid: z.string(),
|
|
8
|
+
description: z.string().nullable(),
|
|
9
|
+
slug: z.string(),
|
|
10
|
+
tags: z.array(z.number()).nullable(),
|
|
11
|
+
title: z.string(),
|
|
12
|
+
_state: _stateSchema,
|
|
13
|
+
_cohort: _cohortSchema,
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export type UnitData = z.infer<typeof unitDataSchema>;
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
declare const _stateSchema: z.ZodEnum<["published", "new", "migration"]>;
|
|
4
|
+
declare const _cohortSchema: z.ZodEnum<["2020-2023", "2023-2024", "0"]>;
|
|
5
|
+
declare const keystages: z.ZodEnum<["KS1", "KS2", "KS3", "KS4", "EYFS"]>;
|
|
6
|
+
declare const keystageSlugs: z.ZodEnum<["ks1", "ks2", "ks3", "ks4", "early-years-foundation-stage"]>;
|
|
7
|
+
declare const keystageDescriptions: z.ZodEnum<["Key Stage 1", "Key Stage 2", "Key Stage 3", "Key Stage 4", "Early Years Foundation Stage"]>;
|
|
8
|
+
|
|
9
|
+
declare const lessonDataSchema: z.ZodObject<{
|
|
10
|
+
lesson_id: z.ZodNumber;
|
|
11
|
+
lesson_uid: z.ZodString;
|
|
12
|
+
slug: z.ZodString;
|
|
13
|
+
title: z.ZodString;
|
|
14
|
+
description: z.ZodString;
|
|
15
|
+
pupil_lesson_outcome: z.ZodString;
|
|
16
|
+
key_learning_points: z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">;
|
|
17
|
+
equipment_and_resources: z.ZodNullable<z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">>;
|
|
18
|
+
content_guidance_details: z.ZodNullable<z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">>;
|
|
19
|
+
content_guidance: z.ZodNullable<z.ZodArray<z.ZodNumber, "many">>;
|
|
20
|
+
copyright_content: z.ZodNullable<z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">>;
|
|
21
|
+
supervision_level: z.ZodNullable<z.ZodString>;
|
|
22
|
+
thirdpartycontent_list: z.ZodNullable<z.ZodArray<z.ZodNumber, "many">>;
|
|
23
|
+
misconceptions_and_common_mistakes: z.ZodNullable<z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">>;
|
|
24
|
+
keywords: z.ZodNullable<z.ZodArray<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>, "many">>;
|
|
25
|
+
video_id: z.ZodNullable<z.ZodNumber>;
|
|
26
|
+
sign_language_video_id: z.ZodNullable<z.ZodNumber>;
|
|
27
|
+
quiz_id_starter: z.ZodNullable<z.ZodNumber>;
|
|
28
|
+
quiz_id_exit: z.ZodNullable<z.ZodNumber>;
|
|
29
|
+
asset_id_slidedeck: z.ZodNullable<z.ZodNumber>;
|
|
30
|
+
asset_id_worksheet: z.ZodNullable<z.ZodNumber>;
|
|
31
|
+
deprecated_fields: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
32
|
+
_state: z.ZodEnum<["published", "new", "migration"]>;
|
|
33
|
+
_cohort: z.ZodEnum<["2020-2023", "2023-2024", "0"]>;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
lesson_id: number;
|
|
36
|
+
lesson_uid: string;
|
|
37
|
+
slug: string;
|
|
38
|
+
title: string;
|
|
39
|
+
description: string;
|
|
40
|
+
pupil_lesson_outcome: string;
|
|
41
|
+
key_learning_points: {}[];
|
|
42
|
+
equipment_and_resources: {}[] | null;
|
|
43
|
+
content_guidance_details: {}[] | null;
|
|
44
|
+
content_guidance: number[] | null;
|
|
45
|
+
copyright_content: {}[] | null;
|
|
46
|
+
supervision_level: string | null;
|
|
47
|
+
thirdpartycontent_list: number[] | null;
|
|
48
|
+
misconceptions_and_common_mistakes: {}[] | null;
|
|
49
|
+
keywords: {}[] | null;
|
|
50
|
+
video_id: number | null;
|
|
51
|
+
sign_language_video_id: number | null;
|
|
52
|
+
quiz_id_starter: number | null;
|
|
53
|
+
quiz_id_exit: number | null;
|
|
54
|
+
asset_id_slidedeck: number | null;
|
|
55
|
+
asset_id_worksheet: number | null;
|
|
56
|
+
deprecated_fields: Record<string, unknown> | null;
|
|
57
|
+
_state: "published" | "new" | "migration";
|
|
58
|
+
_cohort: "0" | "2020-2023" | "2023-2024";
|
|
59
|
+
}, {
|
|
60
|
+
lesson_id: number;
|
|
61
|
+
lesson_uid: string;
|
|
62
|
+
slug: string;
|
|
63
|
+
title: string;
|
|
64
|
+
description: string;
|
|
65
|
+
pupil_lesson_outcome: string;
|
|
66
|
+
key_learning_points: {}[];
|
|
67
|
+
equipment_and_resources: {}[] | null;
|
|
68
|
+
content_guidance_details: {}[] | null;
|
|
69
|
+
content_guidance: number[] | null;
|
|
70
|
+
copyright_content: {}[] | null;
|
|
71
|
+
supervision_level: string | null;
|
|
72
|
+
thirdpartycontent_list: number[] | null;
|
|
73
|
+
misconceptions_and_common_mistakes: {}[] | null;
|
|
74
|
+
keywords: {}[] | null;
|
|
75
|
+
video_id: number | null;
|
|
76
|
+
sign_language_video_id: number | null;
|
|
77
|
+
quiz_id_starter: number | null;
|
|
78
|
+
quiz_id_exit: number | null;
|
|
79
|
+
asset_id_slidedeck: number | null;
|
|
80
|
+
asset_id_worksheet: number | null;
|
|
81
|
+
deprecated_fields: Record<string, unknown> | null;
|
|
82
|
+
_state: "published" | "new" | "migration";
|
|
83
|
+
_cohort: "0" | "2020-2023" | "2023-2024";
|
|
84
|
+
}>;
|
|
85
|
+
type LessonData = z.infer<typeof lessonDataSchema>;
|
|
86
|
+
|
|
87
|
+
declare const programmeFieldsSchema: z.ZodObject<{
|
|
88
|
+
tier: z.ZodNullable<z.ZodString>;
|
|
89
|
+
tier_id: z.ZodNullable<z.ZodNumber>;
|
|
90
|
+
tier_slug: z.ZodNullable<z.ZodString>;
|
|
91
|
+
tier_description: z.ZodNullable<z.ZodString>;
|
|
92
|
+
tier_display_order: z.ZodNullable<z.ZodNumber>;
|
|
93
|
+
examboard: z.ZodNullable<z.ZodString>;
|
|
94
|
+
examboard_id: z.ZodNullable<z.ZodNumber>;
|
|
95
|
+
examboard_slug: z.ZodNullable<z.ZodString>;
|
|
96
|
+
examboard_description: z.ZodNullable<z.ZodString>;
|
|
97
|
+
examboard_display_order: z.ZodNullable<z.ZodNumber>;
|
|
98
|
+
year: z.ZodString;
|
|
99
|
+
year_slug: z.ZodString;
|
|
100
|
+
year_id: z.ZodNumber;
|
|
101
|
+
year_description: z.ZodString;
|
|
102
|
+
year_display_order: z.ZodNumber;
|
|
103
|
+
keystage: z.ZodEnum<["KS1", "KS2", "KS3", "KS4", "EYFS"]>;
|
|
104
|
+
keystage_id: z.ZodNumber;
|
|
105
|
+
keystage_slug: z.ZodEnum<["ks1", "ks2", "ks3", "ks4", "early-years-foundation-stage"]>;
|
|
106
|
+
keystage_description: z.ZodEnum<["Key Stage 1", "Key Stage 2", "Key Stage 3", "Key Stage 4", "Early Years Foundation Stage"]>;
|
|
107
|
+
keystage_display_order: z.ZodNumber;
|
|
108
|
+
phase: z.ZodString;
|
|
109
|
+
phase_id: z.ZodNumber;
|
|
110
|
+
phase_slug: z.ZodString;
|
|
111
|
+
phase_description: z.ZodString;
|
|
112
|
+
phase_display_order: z.ZodNumber;
|
|
113
|
+
subject: z.ZodString;
|
|
114
|
+
subject_id: z.ZodNumber;
|
|
115
|
+
subject_slug: z.ZodString;
|
|
116
|
+
subject_description: z.ZodString;
|
|
117
|
+
subject_display_order: z.ZodNumber;
|
|
118
|
+
legacy: z.ZodOptional<z.ZodString>;
|
|
119
|
+
dataset: z.ZodOptional<z.ZodString>;
|
|
120
|
+
}, "strip", z.ZodTypeAny, {
|
|
121
|
+
tier: string | null;
|
|
122
|
+
tier_id: number | null;
|
|
123
|
+
tier_slug: string | null;
|
|
124
|
+
tier_description: string | null;
|
|
125
|
+
tier_display_order: number | null;
|
|
126
|
+
examboard: string | null;
|
|
127
|
+
examboard_id: number | null;
|
|
128
|
+
examboard_slug: string | null;
|
|
129
|
+
examboard_description: string | null;
|
|
130
|
+
examboard_display_order: number | null;
|
|
131
|
+
year: string;
|
|
132
|
+
year_slug: string;
|
|
133
|
+
year_id: number;
|
|
134
|
+
year_description: string;
|
|
135
|
+
year_display_order: number;
|
|
136
|
+
keystage: "KS1" | "KS2" | "KS3" | "KS4" | "EYFS";
|
|
137
|
+
keystage_id: number;
|
|
138
|
+
keystage_slug: "ks1" | "ks2" | "ks3" | "ks4" | "early-years-foundation-stage";
|
|
139
|
+
keystage_description: "Key Stage 1" | "Key Stage 2" | "Key Stage 3" | "Key Stage 4" | "Early Years Foundation Stage";
|
|
140
|
+
keystage_display_order: number;
|
|
141
|
+
phase: string;
|
|
142
|
+
phase_id: number;
|
|
143
|
+
phase_slug: string;
|
|
144
|
+
phase_description: string;
|
|
145
|
+
phase_display_order: number;
|
|
146
|
+
subject: string;
|
|
147
|
+
subject_id: number;
|
|
148
|
+
subject_slug: string;
|
|
149
|
+
subject_description: string;
|
|
150
|
+
subject_display_order: number;
|
|
151
|
+
legacy?: string | undefined;
|
|
152
|
+
dataset?: string | undefined;
|
|
153
|
+
}, {
|
|
154
|
+
tier: string | null;
|
|
155
|
+
tier_id: number | null;
|
|
156
|
+
tier_slug: string | null;
|
|
157
|
+
tier_description: string | null;
|
|
158
|
+
tier_display_order: number | null;
|
|
159
|
+
examboard: string | null;
|
|
160
|
+
examboard_id: number | null;
|
|
161
|
+
examboard_slug: string | null;
|
|
162
|
+
examboard_description: string | null;
|
|
163
|
+
examboard_display_order: number | null;
|
|
164
|
+
year: string;
|
|
165
|
+
year_slug: string;
|
|
166
|
+
year_id: number;
|
|
167
|
+
year_description: string;
|
|
168
|
+
year_display_order: number;
|
|
169
|
+
keystage: "KS1" | "KS2" | "KS3" | "KS4" | "EYFS";
|
|
170
|
+
keystage_id: number;
|
|
171
|
+
keystage_slug: "ks1" | "ks2" | "ks3" | "ks4" | "early-years-foundation-stage";
|
|
172
|
+
keystage_description: "Key Stage 1" | "Key Stage 2" | "Key Stage 3" | "Key Stage 4" | "Early Years Foundation Stage";
|
|
173
|
+
keystage_display_order: number;
|
|
174
|
+
phase: string;
|
|
175
|
+
phase_id: number;
|
|
176
|
+
phase_slug: string;
|
|
177
|
+
phase_description: string;
|
|
178
|
+
phase_display_order: number;
|
|
179
|
+
subject: string;
|
|
180
|
+
subject_id: number;
|
|
181
|
+
subject_slug: string;
|
|
182
|
+
subject_description: string;
|
|
183
|
+
subject_display_order: number;
|
|
184
|
+
legacy?: string | undefined;
|
|
185
|
+
dataset?: string | undefined;
|
|
186
|
+
}>;
|
|
187
|
+
type ProgrammeFields = z.infer<typeof programmeFieldsSchema>;
|
|
188
|
+
|
|
189
|
+
declare const unitDataSchema: z.ZodObject<{
|
|
190
|
+
unit_id: z.ZodNumber;
|
|
191
|
+
unit_uid: z.ZodString;
|
|
192
|
+
description: z.ZodNullable<z.ZodString>;
|
|
193
|
+
slug: z.ZodString;
|
|
194
|
+
tags: z.ZodNullable<z.ZodArray<z.ZodNumber, "many">>;
|
|
195
|
+
title: z.ZodString;
|
|
196
|
+
_state: z.ZodEnum<["published", "new", "migration"]>;
|
|
197
|
+
_cohort: z.ZodEnum<["2020-2023", "2023-2024", "0"]>;
|
|
198
|
+
}, "strip", z.ZodTypeAny, {
|
|
199
|
+
slug: string;
|
|
200
|
+
title: string;
|
|
201
|
+
description: string | null;
|
|
202
|
+
_state: "published" | "new" | "migration";
|
|
203
|
+
_cohort: "0" | "2020-2023" | "2023-2024";
|
|
204
|
+
unit_id: number;
|
|
205
|
+
unit_uid: string;
|
|
206
|
+
tags: number[] | null;
|
|
207
|
+
}, {
|
|
208
|
+
slug: string;
|
|
209
|
+
title: string;
|
|
210
|
+
description: string | null;
|
|
211
|
+
_state: "published" | "new" | "migration";
|
|
212
|
+
_cohort: "0" | "2020-2023" | "2023-2024";
|
|
213
|
+
unit_id: number;
|
|
214
|
+
unit_uid: string;
|
|
215
|
+
tags: number[] | null;
|
|
216
|
+
}>;
|
|
217
|
+
type UnitData = z.infer<typeof unitDataSchema>;
|
|
218
|
+
|
|
219
|
+
declare const lessonDataFixture: (overrides?: Partial<LessonData>) => LessonData;
|
|
220
|
+
|
|
221
|
+
declare const programmeFieldsFixture: () => ProgrammeFields;
|
|
222
|
+
|
|
223
|
+
declare const unitDataFixture: () => UnitData;
|
|
224
|
+
|
|
225
|
+
export { type LessonData, type ProgrammeFields, type UnitData, _cohortSchema, _stateSchema, keystageDescriptions, keystageSlugs, keystages, lessonDataFixture, lessonDataSchema, programmeFieldsFixture, programmeFieldsSchema, unitDataFixture, unitDataSchema };
|
package/package.json
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oaknational/oak-curriculum-schema",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.7",
|
|
4
4
|
"description": "Contract tests to ensure data integrity between Oak apps and their data",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
7
7
|
"types": "dist/types.d.ts",
|
|
8
8
|
"files": [
|
|
9
|
-
"dist
|
|
10
|
-
"dist/esm",
|
|
11
|
-
"dist/types.d.ts",
|
|
12
|
-
"dist/src"
|
|
9
|
+
"dist"
|
|
13
10
|
],
|
|
14
11
|
"scripts": {
|
|
15
12
|
"test": "vitest",
|
|
@@ -17,7 +14,8 @@
|
|
|
17
14
|
"build": "rollup -c --bundleConfigAsCjs",
|
|
18
15
|
"lint": "eslint --fix",
|
|
19
16
|
"check-types": "tsc",
|
|
20
|
-
"prepare": "husky"
|
|
17
|
+
"prepare": "husky",
|
|
18
|
+
"prepublishOnly": "npm run build"
|
|
21
19
|
},
|
|
22
20
|
"author": "",
|
|
23
21
|
"license": "MIT",
|