// Generated by ReScript, PLEASE EDIT WITH CARE import * as React from "react"; import * as AnnotationTypes from "./AnnotationTypes.js"; import * as AnnotationStorage from "./AnnotationStorage.js"; function use(courseId) { let match = React.useState(() => AnnotationTypes.initialState); let setState = match[1]; let state = match[0]; let selectLesson = lesson => { let savedNote = AnnotationStorage.loadNote(courseId, lesson.id); let notes = {}; if (savedNote !== undefined) { notes[lesson.id] = savedNote; } setState(param => ({ selectedLesson: lesson, isPenOpen: true, notes: notes })); }; let updateNote = (lessonId, note) => { AnnotationStorage.saveNote(courseId, lessonId, note); setState(prev => { let notes = {}; notes[lessonId] = note; return { selectedLesson: prev.selectedLesson, isPenOpen: prev.isPenOpen, notes: notes }; }); }; let closePen = () => setState(prev => ({ selectedLesson: undefined, isPenOpen: false, notes: prev.notes })); let getNote = lessonId => state.notes[lessonId]; return [ state, selectLesson, updateNote, closePen, getNote ]; } export { use, } /* react Not a pure module */