30 lines
805 B
TypeScript
30 lines
805 B
TypeScript
// recommend a NEW activity (not a review) to do for the user based on their
|
|
// current mastery levels
|
|
//
|
|
|
|
import { Exercise } from "materialdb/db";
|
|
import type { Sequelize } from "sequelize-typescript";
|
|
import type { LoginStatus } from "$lib/auth";
|
|
import { createInstance } from "$lib/exercise";
|
|
|
|
export async function get(req) {
|
|
let db: Sequelize = req.locals.db;
|
|
let loginStatus: LoginStatus = req.locals.loginStatus;
|
|
console.log("login Status:", loginStatus);
|
|
|
|
let exercise = await Exercise.findOne({
|
|
where: {
|
|
// TODO: join against ExerciseSatisfiesConcept
|
|
},
|
|
order: db.random(),
|
|
});
|
|
console.log("picked", exercise);
|
|
|
|
let instance = await createInstance(loginStatus, exercise);
|
|
console.log("instance", instance);
|
|
|
|
return {
|
|
body: { exercise: instance },
|
|
};
|
|
}
|