codeforlife 2.10.1 → 2.10.3

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 (90) hide show
  1. package/dist/{Countdown-ZA68a09m.js → Countdown-BTyB1rrK.js} +3 -3
  2. package/dist/{Countdown-ZA68a09m.js.map → Countdown-BTyB1rrK.js.map} +1 -1
  3. package/dist/{Countdown-7-Mzftzr.cjs → Countdown-CyJ-01oU.cjs} +2 -2
  4. package/dist/{Countdown-7-Mzftzr.cjs.map → Countdown-CyJ-01oU.cjs.map} +1 -1
  5. package/dist/{Image-KHEjEELP.js → Image-C-f2ChBh.js} +2 -2
  6. package/dist/{Image-KHEjEELP.js.map → Image-C-f2ChBh.js.map} +1 -1
  7. package/dist/{Image-mgT45r_B.cjs → Image-CgYjq-tA.cjs} +2 -2
  8. package/dist/{Image-mgT45r_B.cjs.map → Image-CgYjq-tA.cjs.map} +1 -1
  9. package/dist/{LinkButton-cfljqSBx.cjs → LinkButton-BOPjG7_2.cjs} +2 -2
  10. package/dist/{LinkButton-cfljqSBx.cjs.map → LinkButton-BOPjG7_2.cjs.map} +1 -1
  11. package/dist/{LinkButton-Do07PnhU.js → LinkButton-Bk50AHHg.js} +3 -3
  12. package/dist/{LinkButton-Do07PnhU.js.map → LinkButton-Bk50AHHg.js.map} +1 -1
  13. package/dist/{Navigate-Cu8Ge031.cjs → Navigate-C_sgy8Xs.cjs} +2 -2
  14. package/dist/{Navigate-Cu8Ge031.cjs.map → Navigate-C_sgy8Xs.cjs.map} +1 -1
  15. package/dist/{Navigate-DC6ag0th.js → Navigate-SL_oMjPc.js} +3 -3
  16. package/dist/{Navigate-DC6ag0th.js.map → Navigate-SL_oMjPc.js.map} +1 -1
  17. package/dist/api/endpoints/index.cjs.js +1 -1
  18. package/dist/api/endpoints/index.es.js +2 -2
  19. package/dist/api/index.cjs.js +1 -1
  20. package/dist/api/index.es.js +3 -3
  21. package/dist/{api-CYqNqtN9.js → api-BvUiTeR7.js} +2 -2
  22. package/dist/{api-CYqNqtN9.js.map → api-BvUiTeR7.js.map} +1 -1
  23. package/dist/{api-CnMfjRk3.cjs → api-CaeeoZaI.cjs} +2 -2
  24. package/dist/{api-CnMfjRk3.cjs.map → api-CaeeoZaI.cjs.map} +1 -1
  25. package/dist/{auth-C_aSIrwD.cjs → auth-B7Vdot4N.cjs} +2 -2
  26. package/dist/{auth-C_aSIrwD.cjs.map → auth-B7Vdot4N.cjs.map} +1 -1
  27. package/dist/{auth-CvJ5Mh6y.js → auth-CQ1InCxP.js} +4 -4
  28. package/dist/{auth-CvJ5Mh6y.js.map → auth-CQ1InCxP.js.map} +1 -1
  29. package/dist/components/form/index.cjs.js +1 -1
  30. package/dist/components/form/index.es.js +1 -1
  31. package/dist/components/index.cjs.js +1 -1
  32. package/dist/components/index.es.js +11 -11
  33. package/dist/components/page/index.cjs.js +1 -1
  34. package/dist/components/page/index.es.js +1 -1
  35. package/dist/components/router/index.cjs.js +1 -1
  36. package/dist/components/router/index.es.js +2 -2
  37. package/dist/components/table/index.cjs.js +1 -1
  38. package/dist/components/table/index.es.js +1 -1
  39. package/dist/features/index.cjs.js +1 -1
  40. package/dist/features/index.es.js +6 -6
  41. package/dist/hooks/index.cjs.js +1 -1
  42. package/dist/hooks/index.es.js +1 -1
  43. package/dist/{index-CA-ugBSa.cjs → index-B6aNVvMr.cjs} +2 -2
  44. package/dist/{index-CA-ugBSa.cjs.map → index-B6aNVvMr.cjs.map} +1 -1
  45. package/dist/{index-DuVBQMst.js → index-C-3iPCa4.js} +5 -5
  46. package/dist/{index-DuVBQMst.js.map → index-C-3iPCa4.js.map} +1 -1
  47. package/dist/{index-DsVpb45W.cjs → index-CBPn0wyX.cjs} +2 -2
  48. package/dist/{index-DsVpb45W.cjs.map → index-CBPn0wyX.cjs.map} +1 -1
  49. package/dist/{index-BUMdUVBH.cjs → index-CIj5ef8a.cjs} +2 -2
  50. package/dist/{index-BUMdUVBH.cjs.map → index-CIj5ef8a.cjs.map} +1 -1
  51. package/dist/{index-DlQc68Q4.js → index-DcmDxIXA.js} +5 -5
  52. package/dist/{index-DlQc68Q4.js.map → index-DcmDxIXA.js.map} +1 -1
  53. package/dist/{index-B3cd2A-G.js → index-Dfo744Sb.js} +2 -2
  54. package/dist/{index-B3cd2A-G.js.map → index-Dfo744Sb.js.map} +1 -1
  55. package/dist/{index-Brh3Kbv6.js → index-VverRavP.js} +2 -2
  56. package/dist/{index-Brh3Kbv6.js.map → index-VverRavP.js.map} +1 -1
  57. package/dist/{index-DZ7ETsOg.cjs → index-ifedknoZ.cjs} +2 -2
  58. package/dist/{index-DZ7ETsOg.cjs.map → index-ifedknoZ.cjs.map} +1 -1
  59. package/dist/jsx-runtime-C7wFtzyj.js +285 -0
  60. package/dist/jsx-runtime-C7wFtzyj.js.map +1 -0
  61. package/dist/jsx-runtime-Dszzpdy0.cjs +23 -0
  62. package/dist/jsx-runtime-Dszzpdy0.cjs.map +1 -0
  63. package/dist/{schemas-BZbJpkD5.cjs → schemas-CpAWhNsP.cjs} +2 -2
  64. package/dist/{schemas-BZbJpkD5.cjs.map → schemas-CpAWhNsP.cjs.map} +1 -1
  65. package/dist/{schemas-CDXuSjyI.js → schemas-D3tO0rys.js} +2 -2
  66. package/dist/{schemas-CDXuSjyI.js.map → schemas-D3tO0rys.js.map} +1 -1
  67. package/dist/theme/components/index.cjs.js +1 -1
  68. package/dist/theme/components/index.es.js +1 -1
  69. package/dist/theme/index.cjs.js +1 -1
  70. package/dist/theme/index.es.js +2 -2
  71. package/dist/{urls-BY-za1bX.js → urls-5m9PgoEX.js} +2 -2
  72. package/dist/{urls-BY-za1bX.js.map → urls-5m9PgoEX.js.map} +1 -1
  73. package/dist/{urls-MaVXL_C2.cjs → urls-RtSTEZfW.cjs} +2 -2
  74. package/dist/{urls-MaVXL_C2.cjs.map → urls-RtSTEZfW.cjs.map} +1 -1
  75. package/dist/utils/api.cjs.js +1 -1
  76. package/dist/utils/api.es.js +2 -2
  77. package/dist/utils/router.cjs.js +1 -1
  78. package/dist/utils/router.es.js +2 -2
  79. package/dist/utils/test.cjs.js +250 -1
  80. package/dist/utils/test.cjs.js.map +1 -1
  81. package/dist/utils/test.es.js +25214 -39
  82. package/dist/utils/test.es.js.map +1 -1
  83. package/dist/utils/theme.cjs.js +1 -1
  84. package/dist/utils/theme.es.js +2 -2
  85. package/package.json +8 -8
  86. package/dist/jsx-runtime-CeSfJrVB.cjs +0 -31
  87. package/dist/jsx-runtime-CeSfJrVB.cjs.map +0 -1
  88. package/dist/jsx-runtime-XvoU0p7t.js +0 -634
  89. package/dist/jsx-runtime-XvoU0p7t.js.map +0 -1
  90. package/dist/setupTests.d.ts +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";const g=require("yup"),h=require("./utils/general.cjs.js"),t=require("./utils/schema.cjs.js");require("./jsx-runtime-CeSfJrVB.cjs");require("@mui/material");require("react");require("@mui/icons-material");function f(n){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const i in n)if(i!=="default"){const l=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(c,i,l.get?l:{enumerable:!0,get:()=>n[i]})}}return c.default=n,Object.freeze(c)}const e=f(g),r={user:t.numericId(),teacher:t.numericId(),student:t.numericId(),school:t.numericId(),klass:t.uppercaseAsciiAlphanumericString().length(5),authFactor:t.numericId(),otpBypassToken:t.numericId()},a={id:r.teacher.required(),school:r.school,is_admin:e.bool().required()},m={id:r.student.required(),school:r.school.required(),klass:r.klass.required(),auto_gen_password:e.string().required()},s={id:r.user.required(),requesting_to_join_class:r.klass,first_name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-'"}).required().max(150),last_name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-'"}).max(150),last_login:e.date(),email:e.string().email(),password:e.string().required(),is_staff:e.bool().required(),is_active:e.bool().required(),date_joined:e.date().required(),teacher:e.object(a).optional(),student:e.object(m).optional()},u={...s,password:s.password.min(10,"must be at least 10 characters long").matches(/[A-Z]/,"must contain at least one uppercase letter").matches(/[a-z]/,"must contain at least one lowercase letter").matches(/[0-9]/,"must contain at least one digit").matches(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,"must contain at least one special character"),email:s.email.required(),last_name:s.last_name.required(),teacher:s.teacher.required(),student:e.string().oneOf([void 0])},o={...a,school:a.school.required()},d={...u,teacher:e.object(o)},p={...o,is_admin:o.is_admin.isTrue()},S={...d,teacher:e.object(p)},_={...o,is_admin:o.is_admin.isFalse()},b={...d,teacher:e.object(_)},q={...a,school:e.string().oneOf([void 0]),is_admin:a.is_admin.isFalse()},O={...u,teacher:e.object(q)},T={...s,password:s.password.min(6,"must be at least 6 characters long"),email:s.email.oneOf([void 0]),last_name:s.last_name.oneOf([void 0]),teacher:e.string().oneOf([void 0]),student:s.student.required()},j={...s,password:s.password.min(8,"must be at least 8 characters long").matches(/[A-Z]/,"must contain at least one uppercase letter").matches(/[a-z]/,"must contain at least one lowercase letter").matches(/[0-9]/,"must contain at least one digit"),email:s.email.required(),last_name:s.last_name.required(),teacher:e.string().oneOf([void 0]),student:e.string().oneOf([void 0])},y={...a,user:r.user.required()},A={...o,user:r.user.required()},k={...p,user:r.user.required()},w={..._,user:r.user.required()},v={...q,user:r.user.required()},U={...m,user:r.user.required()},I={id:r.school.required(),name:t.unicodeAlphanumericString({spaces:!0,specialChars:"'."}).required().max(200),country:e.string().oneOf(h.COUNTRY_ISO_CODES),uk_county:e.string().oneOf(h.UK_COUNTIES)},C={id:r.klass.required(),teacher:r.teacher.required(),school:r.school.required(),name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-_"}).required().max(200),read_classmates_data:e.bool().required(),receive_requests_until:e.date()},F={id:r.authFactor.required(),user:r.user.required(),type:e.string().oneOf(["otp"]).required()},N={id:r.otpBypassToken.required(),user:r.user.required(),token:t.lowercaseAsciiAlphanumericString().required().length(8)},x=Object.freeze(Object.defineProperty({__proto__:null,adminSchoolTeacher:k,adminSchoolTeacherUser:S,authFactor:F,indyUser:j,klass:C,nonAdminSchoolTeacher:w,nonAdminSchoolTeacherUser:b,nonSchoolTeacher:v,nonSchoolTeacherUser:O,otpBypassToken:N,school:I,schoolTeacher:A,schoolTeacherUser:d,student:U,studentUser:T,teacher:y,teacherUser:u,user:s},Symbol.toStringTag,{value:"Module"}));exports.schemas=x;exports.user=s;
2
- //# sourceMappingURL=schemas-BZbJpkD5.cjs.map
1
+ "use strict";const g=require("yup"),h=require("./utils/general.cjs.js"),t=require("./utils/schema.cjs.js");require("./jsx-runtime-Dszzpdy0.cjs");require("@mui/material");require("react");require("@mui/icons-material");function f(n){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const i in n)if(i!=="default"){const l=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(c,i,l.get?l:{enumerable:!0,get:()=>n[i]})}}return c.default=n,Object.freeze(c)}const e=f(g),r={user:t.numericId(),teacher:t.numericId(),student:t.numericId(),school:t.numericId(),klass:t.uppercaseAsciiAlphanumericString().length(5),authFactor:t.numericId(),otpBypassToken:t.numericId()},a={id:r.teacher.required(),school:r.school,is_admin:e.bool().required()},m={id:r.student.required(),school:r.school.required(),klass:r.klass.required(),auto_gen_password:e.string().required()},s={id:r.user.required(),requesting_to_join_class:r.klass,first_name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-'"}).required().max(150),last_name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-'"}).max(150),last_login:e.date(),email:e.string().email(),password:e.string().required(),is_staff:e.bool().required(),is_active:e.bool().required(),date_joined:e.date().required(),teacher:e.object(a).optional(),student:e.object(m).optional()},u={...s,password:s.password.min(10,"must be at least 10 characters long").matches(/[A-Z]/,"must contain at least one uppercase letter").matches(/[a-z]/,"must contain at least one lowercase letter").matches(/[0-9]/,"must contain at least one digit").matches(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,"must contain at least one special character"),email:s.email.required(),last_name:s.last_name.required(),teacher:s.teacher.required(),student:e.string().oneOf([void 0])},o={...a,school:a.school.required()},d={...u,teacher:e.object(o)},p={...o,is_admin:o.is_admin.isTrue()},S={...d,teacher:e.object(p)},_={...o,is_admin:o.is_admin.isFalse()},b={...d,teacher:e.object(_)},q={...a,school:e.string().oneOf([void 0]),is_admin:a.is_admin.isFalse()},O={...u,teacher:e.object(q)},T={...s,password:s.password.min(6,"must be at least 6 characters long"),email:s.email.oneOf([void 0]),last_name:s.last_name.oneOf([void 0]),teacher:e.string().oneOf([void 0]),student:s.student.required()},j={...s,password:s.password.min(8,"must be at least 8 characters long").matches(/[A-Z]/,"must contain at least one uppercase letter").matches(/[a-z]/,"must contain at least one lowercase letter").matches(/[0-9]/,"must contain at least one digit"),email:s.email.required(),last_name:s.last_name.required(),teacher:e.string().oneOf([void 0]),student:e.string().oneOf([void 0])},y={...a,user:r.user.required()},A={...o,user:r.user.required()},k={...p,user:r.user.required()},w={..._,user:r.user.required()},v={...q,user:r.user.required()},U={...m,user:r.user.required()},I={id:r.school.required(),name:t.unicodeAlphanumericString({spaces:!0,specialChars:"'."}).required().max(200),country:e.string().oneOf(h.COUNTRY_ISO_CODES),uk_county:e.string().oneOf(h.UK_COUNTIES)},C={id:r.klass.required(),teacher:r.teacher.required(),school:r.school.required(),name:t.unicodeAlphanumericString({spaces:!0,specialChars:"-_"}).required().max(200),read_classmates_data:e.bool().required(),receive_requests_until:e.date()},F={id:r.authFactor.required(),user:r.user.required(),type:e.string().oneOf(["otp"]).required()},N={id:r.otpBypassToken.required(),user:r.user.required(),token:t.lowercaseAsciiAlphanumericString().required().length(8)},x=Object.freeze(Object.defineProperty({__proto__:null,adminSchoolTeacher:k,adminSchoolTeacherUser:S,authFactor:F,indyUser:j,klass:C,nonAdminSchoolTeacher:w,nonAdminSchoolTeacherUser:b,nonSchoolTeacher:v,nonSchoolTeacherUser:O,otpBypassToken:N,school:I,schoolTeacher:A,schoolTeacherUser:d,student:U,studentUser:T,teacher:y,teacherUser:u,user:s},Symbol.toStringTag,{value:"Module"}));exports.schemas=x;exports.user=s;
2
+ //# sourceMappingURL=schemas-CpAWhNsP.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemas-BZbJpkD5.cjs","sources":["../src/api/schemas.ts"],"sourcesContent":["import * as yup from \"yup\"\n\nimport type {\n AdminSchoolTeacher,\n AdminSchoolTeacherUser,\n AuthFactor,\n Class,\n IndependentUser,\n NonAdminSchoolTeacher,\n NonAdminSchoolTeacherUser,\n NonSchoolTeacher,\n NonSchoolTeacherUser,\n OtpBypassToken,\n School,\n SchoolTeacher,\n SchoolTeacherUser,\n Student,\n StudentUser,\n Teacher,\n TeacherUser,\n User,\n} from \"./models\"\nimport { COUNTRY_ISO_CODES, UK_COUNTIES } from \"../utils/general\"\nimport {\n lowercaseAsciiAlphanumericString,\n numericId,\n unicodeAlphanumericString,\n uppercaseAsciiAlphanumericString,\n} from \"../utils/schema\"\nimport { type Schemas } from \"../utils/api\"\n\n// NOTE: do not use .required() here.\nconst id = {\n user: numericId(),\n teacher: numericId(),\n student: numericId(),\n school: numericId(),\n klass: uppercaseAsciiAlphanumericString().length(5),\n authFactor: numericId(),\n otpBypassToken: numericId(),\n}\n\n// -----------------------------------------------------------------------------\n// User Schemas\n// -----------------------------------------------------------------------------\n\nconst _userTeacher: Omit<Schemas<Teacher>, \"user\"> = {\n id: id.teacher.required(),\n school: id.school,\n is_admin: yup.bool().required(),\n}\n\nconst _userStudent: Omit<Schemas<Student>, \"user\"> = {\n id: id.student.required(),\n school: id.school.required(),\n klass: id.klass.required(),\n auto_gen_password: yup.string().required(),\n}\n\nexport const user: Schemas<User> = {\n id: id.user.required(),\n requesting_to_join_class: id.klass,\n first_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n })\n .required()\n .max(150),\n last_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n }).max(150),\n last_login: yup.date(),\n email: yup.string().email(),\n password: yup.string().required(),\n is_staff: yup.bool().required(),\n is_active: yup.bool().required(),\n date_joined: yup.date().required(),\n teacher: yup.object(_userTeacher).optional(),\n student: yup.object(_userStudent).optional(),\n}\n\nexport const teacherUser: Schemas<TeacherUser> = {\n ...user,\n password: user.password\n .min(10, \"must be at least 10 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\")\n .matches(\n /[!@#$%^&*()_+\\-=[\\]{};':\"\\\\|,.<>/?]/,\n \"must contain at least one special character\",\n ),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: user.teacher.required(),\n student: yup.string().oneOf([undefined]),\n}\n\nconst _userSchoolTeacher: Omit<Schemas<SchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: _userTeacher.school.required(),\n}\n\nexport const schoolTeacherUser: Schemas<SchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userSchoolTeacher),\n}\n\nconst _userAdminSchoolTeacher: Omit<Schemas<AdminSchoolTeacher>, \"user\"> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isTrue(),\n}\n\nexport const adminSchoolTeacherUser: Schemas<AdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userAdminSchoolTeacher),\n}\n\nconst _userNonAdminSchoolTeacher: Omit<\n Schemas<NonAdminSchoolTeacher>,\n \"user\"\n> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isFalse(),\n}\n\nexport const nonAdminSchoolTeacherUser: Schemas<NonAdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userNonAdminSchoolTeacher),\n}\n\nconst _userNonSchoolTeacher: Omit<Schemas<NonSchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: yup.string().oneOf([undefined]),\n is_admin: _userTeacher.is_admin.isFalse(),\n}\n\nexport const nonSchoolTeacherUser: Schemas<NonSchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userNonSchoolTeacher),\n}\n\nexport const studentUser: Schemas<StudentUser> = {\n ...user,\n password: user.password.min(6, \"must be at least 6 characters long\"),\n email: user.email.oneOf([undefined]),\n last_name: user.last_name.oneOf([undefined]),\n teacher: yup.string().oneOf([undefined]),\n student: user.student.required(),\n}\n\nexport const indyUser: Schemas<IndependentUser> = {\n ...user,\n password: user.password\n .min(8, \"must be at least 8 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\"),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: yup.string().oneOf([undefined]),\n student: yup.string().oneOf([undefined]),\n}\n\n// -----------------------------------------------------------------------------\n// Teacher Schemas\n// -----------------------------------------------------------------------------\n\nexport const teacher: Schemas<Teacher> = {\n ..._userTeacher,\n user: id.user.required(),\n}\n\nexport const schoolTeacher: Schemas<SchoolTeacher> = {\n ..._userSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const adminSchoolTeacher: Schemas<AdminSchoolTeacher> = {\n ..._userAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonAdminSchoolTeacher: Schemas<NonAdminSchoolTeacher> = {\n ..._userNonAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonSchoolTeacher: Schemas<NonSchoolTeacher> = {\n ..._userNonSchoolTeacher,\n user: id.user.required(),\n}\n\n// -----------------------------------------------------------------------------\n// Other Schemas\n// -----------------------------------------------------------------------------\n\nexport const student: Schemas<Student> = {\n ..._userStudent,\n user: id.user.required(),\n}\n\nexport const school: Schemas<School> = {\n id: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"'.\",\n })\n .required()\n .max(200),\n country: yup.string().oneOf(COUNTRY_ISO_CODES),\n uk_county: yup.string().oneOf(UK_COUNTIES),\n}\n\nexport const klass: Schemas<Class> = {\n id: id.klass.required(),\n teacher: id.teacher.required(),\n school: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-_\",\n })\n .required()\n .max(200),\n read_classmates_data: yup.bool().required(),\n receive_requests_until: yup.date(),\n}\n\nexport const authFactor: Schemas<AuthFactor> = {\n id: id.authFactor.required(),\n user: id.user.required(),\n type: yup\n .string()\n .oneOf([\"otp\"] as const)\n .required(),\n}\n\nexport const otpBypassToken: Schemas<OtpBypassToken> = {\n id: id.otpBypassToken.required(),\n user: id.user.required(),\n token: lowercaseAsciiAlphanumericString().required().length(8),\n}\n"],"names":["id","numericId","uppercaseAsciiAlphanumericString","_userTeacher","yup","_userStudent","user","unicodeAlphanumericString","teacherUser","_userSchoolTeacher","schoolTeacherUser","_userAdminSchoolTeacher","adminSchoolTeacherUser","_userNonAdminSchoolTeacher","nonAdminSchoolTeacherUser","_userNonSchoolTeacher","nonSchoolTeacherUser","studentUser","indyUser","teacher","schoolTeacher","adminSchoolTeacher","nonAdminSchoolTeacher","nonSchoolTeacher","student","school","COUNTRY_ISO_CODES","UK_COUNTIES","klass","authFactor","otpBypassToken","lowercaseAsciiAlphanumericString"],"mappings":"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"}
1
+ {"version":3,"file":"schemas-CpAWhNsP.cjs","sources":["../src/api/schemas.ts"],"sourcesContent":["import * as yup from \"yup\"\n\nimport type {\n AdminSchoolTeacher,\n AdminSchoolTeacherUser,\n AuthFactor,\n Class,\n IndependentUser,\n NonAdminSchoolTeacher,\n NonAdminSchoolTeacherUser,\n NonSchoolTeacher,\n NonSchoolTeacherUser,\n OtpBypassToken,\n School,\n SchoolTeacher,\n SchoolTeacherUser,\n Student,\n StudentUser,\n Teacher,\n TeacherUser,\n User,\n} from \"./models\"\nimport { COUNTRY_ISO_CODES, UK_COUNTIES } from \"../utils/general\"\nimport {\n lowercaseAsciiAlphanumericString,\n numericId,\n unicodeAlphanumericString,\n uppercaseAsciiAlphanumericString,\n} from \"../utils/schema\"\nimport { type Schemas } from \"../utils/api\"\n\n// NOTE: do not use .required() here.\nconst id = {\n user: numericId(),\n teacher: numericId(),\n student: numericId(),\n school: numericId(),\n klass: uppercaseAsciiAlphanumericString().length(5),\n authFactor: numericId(),\n otpBypassToken: numericId(),\n}\n\n// -----------------------------------------------------------------------------\n// User Schemas\n// -----------------------------------------------------------------------------\n\nconst _userTeacher: Omit<Schemas<Teacher>, \"user\"> = {\n id: id.teacher.required(),\n school: id.school,\n is_admin: yup.bool().required(),\n}\n\nconst _userStudent: Omit<Schemas<Student>, \"user\"> = {\n id: id.student.required(),\n school: id.school.required(),\n klass: id.klass.required(),\n auto_gen_password: yup.string().required(),\n}\n\nexport const user: Schemas<User> = {\n id: id.user.required(),\n requesting_to_join_class: id.klass,\n first_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n })\n .required()\n .max(150),\n last_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n }).max(150),\n last_login: yup.date(),\n email: yup.string().email(),\n password: yup.string().required(),\n is_staff: yup.bool().required(),\n is_active: yup.bool().required(),\n date_joined: yup.date().required(),\n teacher: yup.object(_userTeacher).optional(),\n student: yup.object(_userStudent).optional(),\n}\n\nexport const teacherUser: Schemas<TeacherUser> = {\n ...user,\n password: user.password\n .min(10, \"must be at least 10 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\")\n .matches(\n /[!@#$%^&*()_+\\-=[\\]{};':\"\\\\|,.<>/?]/,\n \"must contain at least one special character\",\n ),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: user.teacher.required(),\n student: yup.string().oneOf([undefined]),\n}\n\nconst _userSchoolTeacher: Omit<Schemas<SchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: _userTeacher.school.required(),\n}\n\nexport const schoolTeacherUser: Schemas<SchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userSchoolTeacher),\n}\n\nconst _userAdminSchoolTeacher: Omit<Schemas<AdminSchoolTeacher>, \"user\"> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isTrue(),\n}\n\nexport const adminSchoolTeacherUser: Schemas<AdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userAdminSchoolTeacher),\n}\n\nconst _userNonAdminSchoolTeacher: Omit<\n Schemas<NonAdminSchoolTeacher>,\n \"user\"\n> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isFalse(),\n}\n\nexport const nonAdminSchoolTeacherUser: Schemas<NonAdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userNonAdminSchoolTeacher),\n}\n\nconst _userNonSchoolTeacher: Omit<Schemas<NonSchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: yup.string().oneOf([undefined]),\n is_admin: _userTeacher.is_admin.isFalse(),\n}\n\nexport const nonSchoolTeacherUser: Schemas<NonSchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userNonSchoolTeacher),\n}\n\nexport const studentUser: Schemas<StudentUser> = {\n ...user,\n password: user.password.min(6, \"must be at least 6 characters long\"),\n email: user.email.oneOf([undefined]),\n last_name: user.last_name.oneOf([undefined]),\n teacher: yup.string().oneOf([undefined]),\n student: user.student.required(),\n}\n\nexport const indyUser: Schemas<IndependentUser> = {\n ...user,\n password: user.password\n .min(8, \"must be at least 8 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\"),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: yup.string().oneOf([undefined]),\n student: yup.string().oneOf([undefined]),\n}\n\n// -----------------------------------------------------------------------------\n// Teacher Schemas\n// -----------------------------------------------------------------------------\n\nexport const teacher: Schemas<Teacher> = {\n ..._userTeacher,\n user: id.user.required(),\n}\n\nexport const schoolTeacher: Schemas<SchoolTeacher> = {\n ..._userSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const adminSchoolTeacher: Schemas<AdminSchoolTeacher> = {\n ..._userAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonAdminSchoolTeacher: Schemas<NonAdminSchoolTeacher> = {\n ..._userNonAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonSchoolTeacher: Schemas<NonSchoolTeacher> = {\n ..._userNonSchoolTeacher,\n user: id.user.required(),\n}\n\n// -----------------------------------------------------------------------------\n// Other Schemas\n// -----------------------------------------------------------------------------\n\nexport const student: Schemas<Student> = {\n ..._userStudent,\n user: id.user.required(),\n}\n\nexport const school: Schemas<School> = {\n id: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"'.\",\n })\n .required()\n .max(200),\n country: yup.string().oneOf(COUNTRY_ISO_CODES),\n uk_county: yup.string().oneOf(UK_COUNTIES),\n}\n\nexport const klass: Schemas<Class> = {\n id: id.klass.required(),\n teacher: id.teacher.required(),\n school: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-_\",\n })\n .required()\n .max(200),\n read_classmates_data: yup.bool().required(),\n receive_requests_until: yup.date(),\n}\n\nexport const authFactor: Schemas<AuthFactor> = {\n id: id.authFactor.required(),\n user: id.user.required(),\n type: yup\n .string()\n .oneOf([\"otp\"] as const)\n .required(),\n}\n\nexport const otpBypassToken: Schemas<OtpBypassToken> = {\n id: id.otpBypassToken.required(),\n user: id.user.required(),\n token: lowercaseAsciiAlphanumericString().required().length(8),\n}\n"],"names":["id","numericId","uppercaseAsciiAlphanumericString","_userTeacher","yup","_userStudent","user","unicodeAlphanumericString","teacherUser","_userSchoolTeacher","schoolTeacherUser","_userAdminSchoolTeacher","adminSchoolTeacherUser","_userNonAdminSchoolTeacher","nonAdminSchoolTeacherUser","_userNonSchoolTeacher","nonSchoolTeacherUser","studentUser","indyUser","teacher","schoolTeacher","adminSchoolTeacher","nonAdminSchoolTeacher","nonSchoolTeacher","student","school","COUNTRY_ISO_CODES","UK_COUNTIES","klass","authFactor","otpBypassToken","lowercaseAsciiAlphanumericString"],"mappings":"ofAgCMA,EAAK,CACT,KAAMC,EAAAA,UAAA,EACN,QAASA,EAAAA,UAAA,EACT,QAASA,EAAAA,UAAA,EACT,OAAQA,EAAAA,UAAA,EACR,MAAOC,EAAAA,iCAAA,EAAmC,OAAO,CAAC,EAClD,WAAYD,EAAAA,UAAA,EACZ,eAAgBA,EAAAA,UAAA,CAClB,EAMME,EAA+C,CACnD,GAAIH,EAAG,QAAQ,SAAA,EACf,OAAQA,EAAG,OACX,SAAUI,EAAI,KAAA,EAAO,SAAA,CACvB,EAEMC,EAA+C,CACnD,GAAIL,EAAG,QAAQ,SAAA,EACf,OAAQA,EAAG,OAAO,SAAA,EAClB,MAAOA,EAAG,MAAM,SAAA,EAChB,kBAAmBI,EAAI,OAAA,EAAS,SAAA,CAClC,EAEaE,EAAsB,CACjC,GAAIN,EAAG,KAAK,SAAA,EACZ,yBAA0BA,EAAG,MAC7B,WAAYO,EAAAA,0BAA0B,CACpC,OAAQ,GACR,aAAc,IAAA,CACf,EACE,SAAA,EACA,IAAI,GAAG,EACV,UAAWA,EAAAA,0BAA0B,CACnC,OAAQ,GACR,aAAc,IAAA,CACf,EAAE,IAAI,GAAG,EACV,WAAYH,EAAI,KAAA,EAChB,MAAOA,EAAI,OAAA,EAAS,MAAA,EACpB,SAAUA,EAAI,OAAA,EAAS,SAAA,EACvB,SAAUA,EAAI,KAAA,EAAO,SAAA,EACrB,UAAWA,EAAI,KAAA,EAAO,SAAA,EACtB,YAAaA,EAAI,KAAA,EAAO,SAAA,EACxB,QAASA,EAAI,OAAOD,CAAY,EAAE,SAAA,EAClC,QAASC,EAAI,OAAOC,CAAY,EAAE,SAAA,CACpC,EAEaG,EAAoC,CAC/C,GAAGF,EACH,SAAUA,EAAK,SACZ,IAAI,GAAI,qCAAqC,EAC7C,QAAQ,QAAS,4CAA4C,EAC7D,QAAQ,QAAS,4CAA4C,EAC7D,QAAQ,QAAS,iCAAiC,EAClD,QACC,sCACA,6CAAA,EAEJ,MAAOA,EAAK,MAAM,SAAA,EAClB,UAAWA,EAAK,UAAU,SAAA,EAC1B,QAASA,EAAK,QAAQ,SAAA,EACtB,QAASF,EAAI,OAAA,EAAS,MAAM,CAAC,MAAS,CAAC,CACzC,EAEMK,EAA2D,CAC/D,GAAGN,EACH,OAAQA,EAAa,OAAO,SAAA,CAC9B,EAEaO,EAAgD,CAC3D,GAAGF,EACH,QAASJ,EAAI,OAAOK,CAAkB,CACxC,EAEME,EAAqE,CACzE,GAAGF,EACH,SAAUA,EAAmB,SAAS,OAAA,CACxC,EAEaG,EAA0D,CACrE,GAAGF,EACH,QAASN,EAAI,OAAOO,CAAuB,CAC7C,EAEME,EAGF,CACF,GAAGJ,EACH,SAAUA,EAAmB,SAAS,QAAA,CACxC,EAEaK,EAAgE,CAC3E,GAAGJ,EACH,QAASN,EAAI,OAAOS,CAA0B,CAChD,EAEME,EAAiE,CACrE,GAAGZ,EACH,OAAQC,EAAI,OAAA,EAAS,MAAM,CAAC,MAAS,CAAC,EACtC,SAAUD,EAAa,SAAS,QAAA,CAClC,EAEaa,EAAsD,CACjE,GAAGR,EACH,QAASJ,EAAI,OAAOW,CAAqB,CAC3C,EAEaE,EAAoC,CAC/C,GAAGX,EACH,SAAUA,EAAK,SAAS,IAAI,EAAG,oCAAoC,EACnE,MAAOA,EAAK,MAAM,MAAM,CAAC,MAAS,CAAC,EACnC,UAAWA,EAAK,UAAU,MAAM,CAAC,MAAS,CAAC,EAC3C,QAASF,EAAI,OAAA,EAAS,MAAM,CAAC,MAAS,CAAC,EACvC,QAASE,EAAK,QAAQ,SAAA,CACxB,EAEaY,EAAqC,CAChD,GAAGZ,EACH,SAAUA,EAAK,SACZ,IAAI,EAAG,oCAAoC,EAC3C,QAAQ,QAAS,4CAA4C,EAC7D,QAAQ,QAAS,4CAA4C,EAC7D,QAAQ,QAAS,iCAAiC,EACrD,MAAOA,EAAK,MAAM,SAAA,EAClB,UAAWA,EAAK,UAAU,SAAA,EAC1B,QAASF,EAAI,OAAA,EAAS,MAAM,CAAC,MAAS,CAAC,EACvC,QAASA,EAAI,OAAA,EAAS,MAAM,CAAC,MAAS,CAAC,CACzC,EAMae,EAA4B,CACvC,GAAGhB,EACH,KAAMH,EAAG,KAAK,SAAA,CAChB,EAEaoB,EAAwC,CACnD,GAAGX,EACH,KAAMT,EAAG,KAAK,SAAA,CAChB,EAEaqB,EAAkD,CAC7D,GAAGV,EACH,KAAMX,EAAG,KAAK,SAAA,CAChB,EAEasB,EAAwD,CACnE,GAAGT,EACH,KAAMb,EAAG,KAAK,SAAA,CAChB,EAEauB,EAA8C,CACzD,GAAGR,EACH,KAAMf,EAAG,KAAK,SAAA,CAChB,EAMawB,EAA4B,CACvC,GAAGnB,EACH,KAAML,EAAG,KAAK,SAAA,CAChB,EAEayB,EAA0B,CACrC,GAAIzB,EAAG,OAAO,SAAA,EACd,KAAMO,EAAAA,0BAA0B,CAC9B,OAAQ,GACR,aAAc,IAAA,CACf,EACE,SAAA,EACA,IAAI,GAAG,EACV,QAASH,EAAI,SAAS,MAAMsB,EAAAA,iBAAiB,EAC7C,UAAWtB,EAAI,OAAA,EAAS,MAAMuB,EAAAA,WAAW,CAC3C,EAEaC,EAAwB,CACnC,GAAI5B,EAAG,MAAM,SAAA,EACb,QAASA,EAAG,QAAQ,SAAA,EACpB,OAAQA,EAAG,OAAO,SAAA,EAClB,KAAMO,EAAAA,0BAA0B,CAC9B,OAAQ,GACR,aAAc,IAAA,CACf,EACE,SAAA,EACA,IAAI,GAAG,EACV,qBAAsBH,EAAI,KAAA,EAAO,SAAA,EACjC,uBAAwBA,EAAI,KAAA,CAC9B,EAEayB,EAAkC,CAC7C,GAAI7B,EAAG,WAAW,SAAA,EAClB,KAAMA,EAAG,KAAK,SAAA,EACd,KAAMI,EACH,OAAA,EACA,MAAM,CAAC,KAAK,CAAU,EACtB,SAAA,CACL,EAEa0B,EAA0C,CACrD,GAAI9B,EAAG,eAAe,SAAA,EACtB,KAAMA,EAAG,KAAK,SAAA,EACd,MAAO+B,EAAAA,iCAAA,EAAmC,SAAA,EAAW,OAAO,CAAC,CAC/D"}
@@ -1,7 +1,7 @@
1
1
  import * as e from "yup";
2
2
  import { UK_COUNTIES as m, COUNTRY_ISO_CODES as p } from "./utils/general.es.js";
3
3
  import { numericId as t, uppercaseAsciiAlphanumericString as _, unicodeAlphanumericString as i, lowercaseAsciiAlphanumericString as q } from "./utils/schema.es.js";
4
- import "./jsx-runtime-XvoU0p7t.js";
4
+ import "./jsx-runtime-C7wFtzyj.js";
5
5
  import "@mui/material";
6
6
  import "react";
7
7
  import "@mui/icons-material";
@@ -159,4 +159,4 @@ export {
159
159
  Z as s,
160
160
  r as u
161
161
  };
162
- //# sourceMappingURL=schemas-CDXuSjyI.js.map
162
+ //# sourceMappingURL=schemas-D3tO0rys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemas-CDXuSjyI.js","sources":["../src/api/schemas.ts"],"sourcesContent":["import * as yup from \"yup\"\n\nimport type {\n AdminSchoolTeacher,\n AdminSchoolTeacherUser,\n AuthFactor,\n Class,\n IndependentUser,\n NonAdminSchoolTeacher,\n NonAdminSchoolTeacherUser,\n NonSchoolTeacher,\n NonSchoolTeacherUser,\n OtpBypassToken,\n School,\n SchoolTeacher,\n SchoolTeacherUser,\n Student,\n StudentUser,\n Teacher,\n TeacherUser,\n User,\n} from \"./models\"\nimport { COUNTRY_ISO_CODES, UK_COUNTIES } from \"../utils/general\"\nimport {\n lowercaseAsciiAlphanumericString,\n numericId,\n unicodeAlphanumericString,\n uppercaseAsciiAlphanumericString,\n} from \"../utils/schema\"\nimport { type Schemas } from \"../utils/api\"\n\n// NOTE: do not use .required() here.\nconst id = {\n user: numericId(),\n teacher: numericId(),\n student: numericId(),\n school: numericId(),\n klass: uppercaseAsciiAlphanumericString().length(5),\n authFactor: numericId(),\n otpBypassToken: numericId(),\n}\n\n// -----------------------------------------------------------------------------\n// User Schemas\n// -----------------------------------------------------------------------------\n\nconst _userTeacher: Omit<Schemas<Teacher>, \"user\"> = {\n id: id.teacher.required(),\n school: id.school,\n is_admin: yup.bool().required(),\n}\n\nconst _userStudent: Omit<Schemas<Student>, \"user\"> = {\n id: id.student.required(),\n school: id.school.required(),\n klass: id.klass.required(),\n auto_gen_password: yup.string().required(),\n}\n\nexport const user: Schemas<User> = {\n id: id.user.required(),\n requesting_to_join_class: id.klass,\n first_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n })\n .required()\n .max(150),\n last_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n }).max(150),\n last_login: yup.date(),\n email: yup.string().email(),\n password: yup.string().required(),\n is_staff: yup.bool().required(),\n is_active: yup.bool().required(),\n date_joined: yup.date().required(),\n teacher: yup.object(_userTeacher).optional(),\n student: yup.object(_userStudent).optional(),\n}\n\nexport const teacherUser: Schemas<TeacherUser> = {\n ...user,\n password: user.password\n .min(10, \"must be at least 10 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\")\n .matches(\n /[!@#$%^&*()_+\\-=[\\]{};':\"\\\\|,.<>/?]/,\n \"must contain at least one special character\",\n ),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: user.teacher.required(),\n student: yup.string().oneOf([undefined]),\n}\n\nconst _userSchoolTeacher: Omit<Schemas<SchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: _userTeacher.school.required(),\n}\n\nexport const schoolTeacherUser: Schemas<SchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userSchoolTeacher),\n}\n\nconst _userAdminSchoolTeacher: Omit<Schemas<AdminSchoolTeacher>, \"user\"> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isTrue(),\n}\n\nexport const adminSchoolTeacherUser: Schemas<AdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userAdminSchoolTeacher),\n}\n\nconst _userNonAdminSchoolTeacher: Omit<\n Schemas<NonAdminSchoolTeacher>,\n \"user\"\n> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isFalse(),\n}\n\nexport const nonAdminSchoolTeacherUser: Schemas<NonAdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userNonAdminSchoolTeacher),\n}\n\nconst _userNonSchoolTeacher: Omit<Schemas<NonSchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: yup.string().oneOf([undefined]),\n is_admin: _userTeacher.is_admin.isFalse(),\n}\n\nexport const nonSchoolTeacherUser: Schemas<NonSchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userNonSchoolTeacher),\n}\n\nexport const studentUser: Schemas<StudentUser> = {\n ...user,\n password: user.password.min(6, \"must be at least 6 characters long\"),\n email: user.email.oneOf([undefined]),\n last_name: user.last_name.oneOf([undefined]),\n teacher: yup.string().oneOf([undefined]),\n student: user.student.required(),\n}\n\nexport const indyUser: Schemas<IndependentUser> = {\n ...user,\n password: user.password\n .min(8, \"must be at least 8 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\"),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: yup.string().oneOf([undefined]),\n student: yup.string().oneOf([undefined]),\n}\n\n// -----------------------------------------------------------------------------\n// Teacher Schemas\n// -----------------------------------------------------------------------------\n\nexport const teacher: Schemas<Teacher> = {\n ..._userTeacher,\n user: id.user.required(),\n}\n\nexport const schoolTeacher: Schemas<SchoolTeacher> = {\n ..._userSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const adminSchoolTeacher: Schemas<AdminSchoolTeacher> = {\n ..._userAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonAdminSchoolTeacher: Schemas<NonAdminSchoolTeacher> = {\n ..._userNonAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonSchoolTeacher: Schemas<NonSchoolTeacher> = {\n ..._userNonSchoolTeacher,\n user: id.user.required(),\n}\n\n// -----------------------------------------------------------------------------\n// Other Schemas\n// -----------------------------------------------------------------------------\n\nexport const student: Schemas<Student> = {\n ..._userStudent,\n user: id.user.required(),\n}\n\nexport const school: Schemas<School> = {\n id: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"'.\",\n })\n .required()\n .max(200),\n country: yup.string().oneOf(COUNTRY_ISO_CODES),\n uk_county: yup.string().oneOf(UK_COUNTIES),\n}\n\nexport const klass: Schemas<Class> = {\n id: id.klass.required(),\n teacher: id.teacher.required(),\n school: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-_\",\n })\n .required()\n .max(200),\n read_classmates_data: yup.bool().required(),\n receive_requests_until: yup.date(),\n}\n\nexport const authFactor: Schemas<AuthFactor> = {\n id: id.authFactor.required(),\n user: id.user.required(),\n type: yup\n .string()\n .oneOf([\"otp\"] as const)\n .required(),\n}\n\nexport const otpBypassToken: Schemas<OtpBypassToken> = {\n id: id.otpBypassToken.required(),\n user: id.user.required(),\n token: lowercaseAsciiAlphanumericString().required().length(8),\n}\n"],"names":["id","numericId","uppercaseAsciiAlphanumericString","_userTeacher","yup","_userStudent","user","unicodeAlphanumericString","teacherUser","_userSchoolTeacher","schoolTeacherUser","_userAdminSchoolTeacher","adminSchoolTeacherUser","_userNonAdminSchoolTeacher","nonAdminSchoolTeacherUser","_userNonSchoolTeacher","nonSchoolTeacherUser","studentUser","indyUser","teacher","schoolTeacher","adminSchoolTeacher","nonAdminSchoolTeacher","nonSchoolTeacher","student","school","COUNTRY_ISO_CODES","UK_COUNTIES","klass","authFactor","otpBypassToken","lowercaseAsciiAlphanumericString"],"mappings":"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"}
1
+ {"version":3,"file":"schemas-D3tO0rys.js","sources":["../src/api/schemas.ts"],"sourcesContent":["import * as yup from \"yup\"\n\nimport type {\n AdminSchoolTeacher,\n AdminSchoolTeacherUser,\n AuthFactor,\n Class,\n IndependentUser,\n NonAdminSchoolTeacher,\n NonAdminSchoolTeacherUser,\n NonSchoolTeacher,\n NonSchoolTeacherUser,\n OtpBypassToken,\n School,\n SchoolTeacher,\n SchoolTeacherUser,\n Student,\n StudentUser,\n Teacher,\n TeacherUser,\n User,\n} from \"./models\"\nimport { COUNTRY_ISO_CODES, UK_COUNTIES } from \"../utils/general\"\nimport {\n lowercaseAsciiAlphanumericString,\n numericId,\n unicodeAlphanumericString,\n uppercaseAsciiAlphanumericString,\n} from \"../utils/schema\"\nimport { type Schemas } from \"../utils/api\"\n\n// NOTE: do not use .required() here.\nconst id = {\n user: numericId(),\n teacher: numericId(),\n student: numericId(),\n school: numericId(),\n klass: uppercaseAsciiAlphanumericString().length(5),\n authFactor: numericId(),\n otpBypassToken: numericId(),\n}\n\n// -----------------------------------------------------------------------------\n// User Schemas\n// -----------------------------------------------------------------------------\n\nconst _userTeacher: Omit<Schemas<Teacher>, \"user\"> = {\n id: id.teacher.required(),\n school: id.school,\n is_admin: yup.bool().required(),\n}\n\nconst _userStudent: Omit<Schemas<Student>, \"user\"> = {\n id: id.student.required(),\n school: id.school.required(),\n klass: id.klass.required(),\n auto_gen_password: yup.string().required(),\n}\n\nexport const user: Schemas<User> = {\n id: id.user.required(),\n requesting_to_join_class: id.klass,\n first_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n })\n .required()\n .max(150),\n last_name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-'\",\n }).max(150),\n last_login: yup.date(),\n email: yup.string().email(),\n password: yup.string().required(),\n is_staff: yup.bool().required(),\n is_active: yup.bool().required(),\n date_joined: yup.date().required(),\n teacher: yup.object(_userTeacher).optional(),\n student: yup.object(_userStudent).optional(),\n}\n\nexport const teacherUser: Schemas<TeacherUser> = {\n ...user,\n password: user.password\n .min(10, \"must be at least 10 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\")\n .matches(\n /[!@#$%^&*()_+\\-=[\\]{};':\"\\\\|,.<>/?]/,\n \"must contain at least one special character\",\n ),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: user.teacher.required(),\n student: yup.string().oneOf([undefined]),\n}\n\nconst _userSchoolTeacher: Omit<Schemas<SchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: _userTeacher.school.required(),\n}\n\nexport const schoolTeacherUser: Schemas<SchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userSchoolTeacher),\n}\n\nconst _userAdminSchoolTeacher: Omit<Schemas<AdminSchoolTeacher>, \"user\"> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isTrue(),\n}\n\nexport const adminSchoolTeacherUser: Schemas<AdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userAdminSchoolTeacher),\n}\n\nconst _userNonAdminSchoolTeacher: Omit<\n Schemas<NonAdminSchoolTeacher>,\n \"user\"\n> = {\n ..._userSchoolTeacher,\n is_admin: _userSchoolTeacher.is_admin.isFalse(),\n}\n\nexport const nonAdminSchoolTeacherUser: Schemas<NonAdminSchoolTeacherUser> = {\n ...schoolTeacherUser,\n teacher: yup.object(_userNonAdminSchoolTeacher),\n}\n\nconst _userNonSchoolTeacher: Omit<Schemas<NonSchoolTeacher>, \"user\"> = {\n ..._userTeacher,\n school: yup.string().oneOf([undefined]),\n is_admin: _userTeacher.is_admin.isFalse(),\n}\n\nexport const nonSchoolTeacherUser: Schemas<NonSchoolTeacherUser> = {\n ...teacherUser,\n teacher: yup.object(_userNonSchoolTeacher),\n}\n\nexport const studentUser: Schemas<StudentUser> = {\n ...user,\n password: user.password.min(6, \"must be at least 6 characters long\"),\n email: user.email.oneOf([undefined]),\n last_name: user.last_name.oneOf([undefined]),\n teacher: yup.string().oneOf([undefined]),\n student: user.student.required(),\n}\n\nexport const indyUser: Schemas<IndependentUser> = {\n ...user,\n password: user.password\n .min(8, \"must be at least 8 characters long\")\n .matches(/[A-Z]/, \"must contain at least one uppercase letter\")\n .matches(/[a-z]/, \"must contain at least one lowercase letter\")\n .matches(/[0-9]/, \"must contain at least one digit\"),\n email: user.email.required(),\n last_name: user.last_name.required(),\n teacher: yup.string().oneOf([undefined]),\n student: yup.string().oneOf([undefined]),\n}\n\n// -----------------------------------------------------------------------------\n// Teacher Schemas\n// -----------------------------------------------------------------------------\n\nexport const teacher: Schemas<Teacher> = {\n ..._userTeacher,\n user: id.user.required(),\n}\n\nexport const schoolTeacher: Schemas<SchoolTeacher> = {\n ..._userSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const adminSchoolTeacher: Schemas<AdminSchoolTeacher> = {\n ..._userAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonAdminSchoolTeacher: Schemas<NonAdminSchoolTeacher> = {\n ..._userNonAdminSchoolTeacher,\n user: id.user.required(),\n}\n\nexport const nonSchoolTeacher: Schemas<NonSchoolTeacher> = {\n ..._userNonSchoolTeacher,\n user: id.user.required(),\n}\n\n// -----------------------------------------------------------------------------\n// Other Schemas\n// -----------------------------------------------------------------------------\n\nexport const student: Schemas<Student> = {\n ..._userStudent,\n user: id.user.required(),\n}\n\nexport const school: Schemas<School> = {\n id: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"'.\",\n })\n .required()\n .max(200),\n country: yup.string().oneOf(COUNTRY_ISO_CODES),\n uk_county: yup.string().oneOf(UK_COUNTIES),\n}\n\nexport const klass: Schemas<Class> = {\n id: id.klass.required(),\n teacher: id.teacher.required(),\n school: id.school.required(),\n name: unicodeAlphanumericString({\n spaces: true,\n specialChars: \"-_\",\n })\n .required()\n .max(200),\n read_classmates_data: yup.bool().required(),\n receive_requests_until: yup.date(),\n}\n\nexport const authFactor: Schemas<AuthFactor> = {\n id: id.authFactor.required(),\n user: id.user.required(),\n type: yup\n .string()\n .oneOf([\"otp\"] as const)\n .required(),\n}\n\nexport const otpBypassToken: Schemas<OtpBypassToken> = {\n id: id.otpBypassToken.required(),\n user: id.user.required(),\n token: lowercaseAsciiAlphanumericString().required().length(8),\n}\n"],"names":["id","numericId","uppercaseAsciiAlphanumericString","_userTeacher","yup","_userStudent","user","unicodeAlphanumericString","teacherUser","_userSchoolTeacher","schoolTeacherUser","_userAdminSchoolTeacher","adminSchoolTeacherUser","_userNonAdminSchoolTeacher","nonAdminSchoolTeacherUser","_userNonSchoolTeacher","nonSchoolTeacherUser","studentUser","indyUser","teacher","schoolTeacher","adminSchoolTeacher","nonAdminSchoolTeacher","nonSchoolTeacher","student","school","COUNTRY_ISO_CODES","UK_COUNTIES","klass","authFactor","otpBypassToken","lowercaseAsciiAlphanumericString"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";require("@mui/material");const e=require("../../index-DZ7ETsOg.cjs");module.exports=e.components;
1
+ "use strict";require("@mui/material");const e=require("../../index-ifedknoZ.cjs");module.exports=e.components;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1,5 +1,5 @@
1
1
  import "@mui/material";
2
- import { c as a } from "../../index-Brh3Kbv6.js";
2
+ import { c as a } from "../../index-VverRavP.js";
3
3
  export {
4
4
  a as default
5
5
  };
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("@mui/material"),c=require("../index-DZ7ETsOg.cjs"),o=require("../palette-BnIdHKDE.cjs"),a=require("../jsx-runtime-CeSfJrVB.cjs"),h=require("@mui/icons-material"),j=({options:t=d,withShapes:x=!1,userType:m,bgcolor:n,children:v,sx:M,...g})=>{let l,p,r;switch(m){case"teacher":n=n??o.primary[400],l="tertiary",p="secondary",r=o.palette.primary.contrastText;break;case"student":n=n??o.tertiary[500],l="secondary",p="primary",r=o.palette.tertiary.contrastText;break;case"independent":n=n??o.secondary[500],l="primary",p="tertiary",r=o.palette.secondary.contrastText;break}const y={display:{xs:"none",md:"block"},fontSize:"180px",position:"absolute"},u={color:r,textDecorationColor:r};function s(e,k,O,T="root"){return{...c.getStyleOverrides(e,O,T,t.components),...!c.includesClassNames(e,["no-override"])&&k}}const b=i.responsiveFontSizes(i.createTheme({...t,components:{...t.components,MuiTypography:{...t.components?.MuiTypography,styleOverrides:{...t.components?.MuiTypography?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiTypography")}},MuiFormHelperText:{...t.components?.MuiFormHelperText,styleOverrides:{...t.components?.MuiFormHelperText?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiFormHelperText")}},MuiLink:{...t.components?.MuiLink,styleOverrides:{...t.components?.MuiLink?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiLink")}},MuiButton:{...t.components?.MuiButton,styleOverrides:{...t.components?.MuiButton?.styleOverrides,contained:({ownerState:e})=>s(e,{...m==="independent"&&{backgroundColor:"white","&:hover":{backgroundColor:"#f6f5f5",boxShadow:["0px 6px 10px 0px rgba(0, 0, 0, 0.14)","0px 1px 18px 0px rgba(0, 0, 0, 0.12)","0px 3px 5px 0px rgba(0, 0, 0, 0.2);"].join()},[`&.${i.buttonClasses.disabled}`]:{backgroundColor:"white",color:r}}},"MuiButton","contained"),outlined:({ownerState:e})=>s(e,{...u,border:`2px solid ${r}`,"&:hover":{border:`2px solid ${r}`,backgroundColor:"transparent",textDecoration:"underline"}},"MuiButton","outlined")}},MuiCheckbox:{...t.components?.MuiCheckbox,styleOverrides:{...t.components?.MuiCheckbox?.styleOverrides,root:({ownerState:e})=>s(e,{color:`${r} !important`},"MuiCheckbox")}},MuiSvgIcon:{...t.components?.MuiSvgIcon,styleOverrides:{...t.components?.MuiSvgIcon?.styleOverrides,root:({ownerState:e})=>s(e,{"&.checkbox-error":{color:`${r} !important`}},"MuiSvgIcon")}}}}));return a.jsxRuntimeExports.jsx(i.ThemeProvider,{theme:b,children:a.jsxRuntimeExports.jsxs(i.Box,{sx:{...M,...x&&{paddingY:{xs:2,sm:3,md:5},paddingX:{xs:2,sm:5,md:10},marginX:{md:"90px"}},bgcolor:n,alignItems:"center",position:"relative"},...g,children:[x&&a.jsxRuntimeExports.jsxs(a.jsxRuntimeExports.Fragment,{children:[a.jsxRuntimeExports.jsx(h.Circle,{color:l,sx:{...y,top:"5%",left:"0%",transform:"translate(-60%, 0%)"}}),a.jsxRuntimeExports.jsx(h.Hexagon,{color:p,sx:{...y,bottom:"5%",right:"0%",transform:"translate(60%, 0%) rotate(90deg)"}})]}),v]})})},d={palette:o.palette,components:c.components,spacing:c.spacing,typography:c.typography},C=i.responsiveFontSizes(i.createTheme(d));exports.colors=o.colors;exports.ThemedBox=j;exports.default=C;exports.themeOptions=d;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("@mui/material"),c=require("../index-ifedknoZ.cjs"),o=require("../palette-BnIdHKDE.cjs"),a=require("../jsx-runtime-Dszzpdy0.cjs"),h=require("@mui/icons-material"),j=({options:t=d,withShapes:x=!1,userType:m,bgcolor:n,children:v,sx:M,...g})=>{let l,p,r;switch(m){case"teacher":n=n??o.primary[400],l="tertiary",p="secondary",r=o.palette.primary.contrastText;break;case"student":n=n??o.tertiary[500],l="secondary",p="primary",r=o.palette.tertiary.contrastText;break;case"independent":n=n??o.secondary[500],l="primary",p="tertiary",r=o.palette.secondary.contrastText;break}const y={display:{xs:"none",md:"block"},fontSize:"180px",position:"absolute"},u={color:r,textDecorationColor:r};function s(e,k,O,T="root"){return{...c.getStyleOverrides(e,O,T,t.components),...!c.includesClassNames(e,["no-override"])&&k}}const b=i.responsiveFontSizes(i.createTheme({...t,components:{...t.components,MuiTypography:{...t.components?.MuiTypography,styleOverrides:{...t.components?.MuiTypography?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiTypography")}},MuiFormHelperText:{...t.components?.MuiFormHelperText,styleOverrides:{...t.components?.MuiFormHelperText?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiFormHelperText")}},MuiLink:{...t.components?.MuiLink,styleOverrides:{...t.components?.MuiLink?.styleOverrides,root:({ownerState:e})=>s(e,{...u},"MuiLink")}},MuiButton:{...t.components?.MuiButton,styleOverrides:{...t.components?.MuiButton?.styleOverrides,contained:({ownerState:e})=>s(e,{...m==="independent"&&{backgroundColor:"white","&:hover":{backgroundColor:"#f6f5f5",boxShadow:["0px 6px 10px 0px rgba(0, 0, 0, 0.14)","0px 1px 18px 0px rgba(0, 0, 0, 0.12)","0px 3px 5px 0px rgba(0, 0, 0, 0.2);"].join()},[`&.${i.buttonClasses.disabled}`]:{backgroundColor:"white",color:r}}},"MuiButton","contained"),outlined:({ownerState:e})=>s(e,{...u,border:`2px solid ${r}`,"&:hover":{border:`2px solid ${r}`,backgroundColor:"transparent",textDecoration:"underline"}},"MuiButton","outlined")}},MuiCheckbox:{...t.components?.MuiCheckbox,styleOverrides:{...t.components?.MuiCheckbox?.styleOverrides,root:({ownerState:e})=>s(e,{color:`${r} !important`},"MuiCheckbox")}},MuiSvgIcon:{...t.components?.MuiSvgIcon,styleOverrides:{...t.components?.MuiSvgIcon?.styleOverrides,root:({ownerState:e})=>s(e,{"&.checkbox-error":{color:`${r} !important`}},"MuiSvgIcon")}}}}));return a.jsxRuntimeExports.jsx(i.ThemeProvider,{theme:b,children:a.jsxRuntimeExports.jsxs(i.Box,{sx:{...M,...x&&{paddingY:{xs:2,sm:3,md:5},paddingX:{xs:2,sm:5,md:10},marginX:{md:"90px"}},bgcolor:n,alignItems:"center",position:"relative"},...g,children:[x&&a.jsxRuntimeExports.jsxs(a.jsxRuntimeExports.Fragment,{children:[a.jsxRuntimeExports.jsx(h.Circle,{color:l,sx:{...y,top:"5%",left:"0%",transform:"translate(-60%, 0%)"}}),a.jsxRuntimeExports.jsx(h.Hexagon,{color:p,sx:{...y,bottom:"5%",right:"0%",transform:"translate(60%, 0%) rotate(90deg)"}})]}),v]})})},d={palette:o.palette,components:c.components,spacing:c.spacing,typography:c.typography},C=i.responsiveFontSizes(i.createTheme(d));exports.colors=o.colors;exports.ThemedBox=j;exports.default=C;exports.themeOptions=d;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1,8 +1,8 @@
1
1
  import { responsiveFontSizes as x, createTheme as u, buttonClasses as O, ThemeProvider as C, Box as T } from "@mui/material";
2
- import { g as S, i as j, t as B, s as F, c as I } from "../index-Brh3Kbv6.js";
2
+ import { g as S, i as j, t as B, s as F, c as I } from "../index-VverRavP.js";
3
3
  import { s as H, p as m, t as $, a as L } from "../palette-CYwuLBW7.js";
4
4
  import { c as G } from "../palette-CYwuLBW7.js";
5
- import { j as s } from "../jsx-runtime-XvoU0p7t.js";
5
+ import { j as s } from "../jsx-runtime-C7wFtzyj.js";
6
6
  import { Circle as w, Hexagon as z } from "@mui/icons-material";
7
7
  const R = ({
8
8
  options: r = y,
@@ -1,4 +1,4 @@
1
- import { m as s } from "./api-CYqNqtN9.js";
1
+ import { m as s } from "./api-BvUiTeR7.js";
2
2
  const t = {
3
3
  user: s("users/", "users/<id>/"),
4
4
  teacher: s("users/teachers/", "users/teachers/<id>/"),
@@ -11,4 +11,4 @@ const t = {
11
11
  export {
12
12
  t as u
13
13
  };
14
- //# sourceMappingURL=urls-BY-za1bX.js.map
14
+ //# sourceMappingURL=urls-5m9PgoEX.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"urls-BY-za1bX.js","sources":["../src/api/urls.ts"],"sourcesContent":["import { modelUrls } from \"../utils/api\"\n\nconst urls = {\n user: modelUrls(\"users/\", \"users/<id>/\"),\n teacher: modelUrls(\"users/teachers/\", \"users/teachers/<id>/\"),\n student: modelUrls(\"users/students/\", \"users/students/<id>/\"),\n school: modelUrls(\"schools/\", \"schools/<id>/\"),\n class: modelUrls(\"classes/\", \"classes/<id>/\"),\n otpBypassToken: modelUrls(\"otp-bypass-tokens/\", \"otp-bypass-tokens/<id>/\"),\n authFactor: modelUrls(\"auth-factors/\", \"auth-factors/<id>/\"),\n}\n\nexport default urls\n"],"names":["urls","modelUrls"],"mappings":";AAEA,MAAMA,IAAO;AAAA,EACX,MAAMC,EAAU,UAAU,aAAa;AAAA,EACvC,SAASA,EAAU,mBAAmB,sBAAsB;AAAA,EAC5D,SAASA,EAAU,mBAAmB,sBAAsB;AAAA,EAC5D,QAAQA,EAAU,YAAY,eAAe;AAAA,EAC7C,OAAOA,EAAU,YAAY,eAAe;AAAA,EAC5C,gBAAgBA,EAAU,sBAAsB,yBAAyB;AAAA,EACzE,YAAYA,EAAU,iBAAiB,oBAAoB;AAC7D;"}
1
+ {"version":3,"file":"urls-5m9PgoEX.js","sources":["../src/api/urls.ts"],"sourcesContent":["import { modelUrls } from \"../utils/api\"\n\nconst urls = {\n user: modelUrls(\"users/\", \"users/<id>/\"),\n teacher: modelUrls(\"users/teachers/\", \"users/teachers/<id>/\"),\n student: modelUrls(\"users/students/\", \"users/students/<id>/\"),\n school: modelUrls(\"schools/\", \"schools/<id>/\"),\n class: modelUrls(\"classes/\", \"classes/<id>/\"),\n otpBypassToken: modelUrls(\"otp-bypass-tokens/\", \"otp-bypass-tokens/<id>/\"),\n authFactor: modelUrls(\"auth-factors/\", \"auth-factors/<id>/\"),\n}\n\nexport default urls\n"],"names":["urls","modelUrls"],"mappings":";AAEA,MAAMA,IAAO;AAAA,EACX,MAAMC,EAAU,UAAU,aAAa;AAAA,EACvC,SAASA,EAAU,mBAAmB,sBAAsB;AAAA,EAC5D,SAASA,EAAU,mBAAmB,sBAAsB;AAAA,EAC5D,QAAQA,EAAU,YAAY,eAAe;AAAA,EAC7C,OAAOA,EAAU,YAAY,eAAe;AAAA,EAC5C,gBAAgBA,EAAU,sBAAsB,yBAAyB;AAAA,EACzE,YAAYA,EAAU,iBAAiB,oBAAoB;AAC7D;"}
@@ -1,2 +1,2 @@
1
- "use strict";const s=require("./api-CnMfjRk3.cjs"),e={user:s.modelUrls("users/","users/<id>/"),teacher:s.modelUrls("users/teachers/","users/teachers/<id>/"),student:s.modelUrls("users/students/","users/students/<id>/"),school:s.modelUrls("schools/","schools/<id>/"),class:s.modelUrls("classes/","classes/<id>/"),otpBypassToken:s.modelUrls("otp-bypass-tokens/","otp-bypass-tokens/<id>/"),authFactor:s.modelUrls("auth-factors/","auth-factors/<id>/")};exports.urls=e;
2
- //# sourceMappingURL=urls-MaVXL_C2.cjs.map
1
+ "use strict";const s=require("./api-CaeeoZaI.cjs"),e={user:s.modelUrls("users/","users/<id>/"),teacher:s.modelUrls("users/teachers/","users/teachers/<id>/"),student:s.modelUrls("users/students/","users/students/<id>/"),school:s.modelUrls("schools/","schools/<id>/"),class:s.modelUrls("classes/","classes/<id>/"),otpBypassToken:s.modelUrls("otp-bypass-tokens/","otp-bypass-tokens/<id>/"),authFactor:s.modelUrls("auth-factors/","auth-factors/<id>/")};exports.urls=e;
2
+ //# sourceMappingURL=urls-RtSTEZfW.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"urls-MaVXL_C2.cjs","sources":["../src/api/urls.ts"],"sourcesContent":["import { modelUrls } from \"../utils/api\"\n\nconst urls = {\n user: modelUrls(\"users/\", \"users/<id>/\"),\n teacher: modelUrls(\"users/teachers/\", \"users/teachers/<id>/\"),\n student: modelUrls(\"users/students/\", \"users/students/<id>/\"),\n school: modelUrls(\"schools/\", \"schools/<id>/\"),\n class: modelUrls(\"classes/\", \"classes/<id>/\"),\n otpBypassToken: modelUrls(\"otp-bypass-tokens/\", \"otp-bypass-tokens/<id>/\"),\n authFactor: modelUrls(\"auth-factors/\", \"auth-factors/<id>/\"),\n}\n\nexport default urls\n"],"names":["urls","modelUrls"],"mappings":"mDAEMA,EAAO,CACX,KAAMC,EAAAA,UAAU,SAAU,aAAa,EACvC,QAASA,EAAAA,UAAU,kBAAmB,sBAAsB,EAC5D,QAASA,EAAAA,UAAU,kBAAmB,sBAAsB,EAC5D,OAAQA,EAAAA,UAAU,WAAY,eAAe,EAC7C,MAAOA,EAAAA,UAAU,WAAY,eAAe,EAC5C,eAAgBA,EAAAA,UAAU,qBAAsB,yBAAyB,EACzE,WAAYA,EAAAA,UAAU,gBAAiB,oBAAoB,CAC7D"}
1
+ {"version":3,"file":"urls-RtSTEZfW.cjs","sources":["../src/api/urls.ts"],"sourcesContent":["import { modelUrls } from \"../utils/api\"\n\nconst urls = {\n user: modelUrls(\"users/\", \"users/<id>/\"),\n teacher: modelUrls(\"users/teachers/\", \"users/teachers/<id>/\"),\n student: modelUrls(\"users/students/\", \"users/students/<id>/\"),\n school: modelUrls(\"schools/\", \"schools/<id>/\"),\n class: modelUrls(\"classes/\", \"classes/<id>/\"),\n otpBypassToken: modelUrls(\"otp-bypass-tokens/\", \"otp-bypass-tokens/<id>/\"),\n authFactor: modelUrls(\"auth-factors/\", \"auth-factors/<id>/\"),\n}\n\nexport default urls\n"],"names":["urls","modelUrls"],"mappings":"mDAEMA,EAAO,CACX,KAAMC,EAAAA,UAAU,SAAU,aAAa,EACvC,QAASA,EAAAA,UAAU,kBAAmB,sBAAsB,EAC5D,QAASA,EAAAA,UAAU,kBAAmB,sBAAsB,EAC5D,OAAQA,EAAAA,UAAU,WAAY,eAAe,EAC7C,MAAOA,EAAAA,UAAU,WAAY,eAAe,EAC5C,eAAgBA,EAAAA,UAAU,qBAAsB,yBAAyB,EACzE,WAAYA,EAAAA,UAAU,gBAAiB,oBAAoB,CAC7D"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../jsx-runtime-CeSfJrVB.cjs");require("@mui/material");require("react");require("./general.cjs.js");require("yup");const e=require("../api-CnMfjRk3.cjs");exports.buildUrl=e.buildUrl;exports.handleResultState=e.handleResultState;exports.isModelId=e.isModelId;exports.isSafeHttpMethod=e.isSafeHttpMethod;exports.listTag=e.listTag;exports.modelUrls=e.modelUrls;exports.tagData=e.tagData;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../jsx-runtime-Dszzpdy0.cjs");require("@mui/material");require("react");require("./general.cjs.js");require("yup");const e=require("../api-CaeeoZaI.cjs");exports.buildUrl=e.buildUrl;exports.handleResultState=e.handleResultState;exports.isModelId=e.isModelId;exports.isSafeHttpMethod=e.isSafeHttpMethod;exports.listTag=e.listTag;exports.modelUrls=e.modelUrls;exports.tagData=e.tagData;
2
2
  //# sourceMappingURL=api.cjs.js.map
@@ -1,9 +1,9 @@
1
- import "../jsx-runtime-XvoU0p7t.js";
1
+ import "../jsx-runtime-C7wFtzyj.js";
2
2
  import "@mui/material";
3
3
  import "react";
4
4
  import "./general.es.js";
5
5
  import "yup";
6
- import { b as e, h as m, a as p, i as d, l as h, m as b, t as f } from "../api-CYqNqtN9.js";
6
+ import { b as e, h as m, a as p, i as d, l as h, m as b, t as f } from "../api-BvUiTeR7.js";
7
7
  export {
8
8
  e as buildUrl,
9
9
  m as handleResultState,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react-router");require("../jsx-runtime-CeSfJrVB.cjs");require("react");require("@mui/icons-material");require("@mui/material");require("../palette-BnIdHKDE.cjs");require("../auth-C_aSIrwD.cjs");function q(e,o={}){function c(r,g,t){typeof r.__=="object"&&(t=t?{...t,...r.__}:r.__);const _=typeof e=="string"&&t?l.generatePath(e,t):e;Object.entries(r).forEach(([u,i])=>{if(u!=="__")if(i=i,typeof i=="string"){if(typeof _=="string"&&(!g||u!=="_")){let n=_+i;n.endsWith("/")&&(n=n.slice(0,-1)),r[u]=n}}else c(i,!1,t)})}const f={...o,_:typeof e=="string"?e:"",__:e};return e===""?f._="/":c(f,!0),f}function s(e,o){return e.__[o]}exports.getParam=s;exports.path=q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react-router");require("../jsx-runtime-Dszzpdy0.cjs");require("react");require("@mui/icons-material");require("@mui/material");require("../palette-BnIdHKDE.cjs");require("../auth-B7Vdot4N.cjs");function q(e,o={}){function c(r,g,t){typeof r.__=="object"&&(t=t?{...t,...r.__}:r.__);const _=typeof e=="string"&&t?l.generatePath(e,t):e;Object.entries(r).forEach(([u,i])=>{if(u!=="__")if(i=i,typeof i=="string"){if(typeof _=="string"&&(!g||u!=="_")){let n=_+i;n.endsWith("/")&&(n=n.slice(0,-1)),r[u]=n}}else c(i,!1,t)})}const f={...o,_:typeof e=="string"?e:"",__:e};return e===""?f._="/":c(f,!0),f}function s(e,o){return e.__[o]}exports.getParam=s;exports.path=q;
2
2
  //# sourceMappingURL=router.cjs.js.map
@@ -1,10 +1,10 @@
1
1
  import { generatePath as p } from "react-router";
2
- import "../jsx-runtime-XvoU0p7t.js";
2
+ import "../jsx-runtime-C7wFtzyj.js";
3
3
  import "react";
4
4
  import "@mui/icons-material";
5
5
  import "@mui/material";
6
6
  import "../palette-CYwuLBW7.js";
7
- import "../auth-CvJ5Mh6y.js";
7
+ import "../auth-CQ1InCxP.js";
8
8
  function x(t, n = {}) {
9
9
  function c(i, l, e) {
10
10
  typeof i.__ == "object" && (e = e ? { ...e, ...i.__ } : i.__);