@falkenslab/moodle-driver 0.5.1 → 0.6.0

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 (44) hide show
  1. package/dist/areas/activities/build.d.ts +15 -5
  2. package/dist/areas/activities/build.js +33 -10
  3. package/dist/areas/activities/build.js.map +1 -1
  4. package/dist/areas/activities/content.d.ts +3 -1
  5. package/dist/areas/activities/content.js +9 -1
  6. package/dist/areas/activities/content.js.map +1 -1
  7. package/dist/areas/courses/list.d.ts +5 -3
  8. package/dist/areas/courses/list.js +9 -3
  9. package/dist/areas/courses/list.js.map +1 -1
  10. package/dist/areas/courses/structure.d.ts +5 -1
  11. package/dist/areas/courses/structure.js +3 -1
  12. package/dist/areas/courses/structure.js.map +1 -1
  13. package/dist/areas/forums/discussions.d.ts +16 -0
  14. package/dist/areas/forums/discussions.js +30 -3
  15. package/dist/areas/forums/discussions.js.map +1 -1
  16. package/dist/areas/forums/posts.d.ts +35 -4
  17. package/dist/areas/forums/posts.js +57 -9
  18. package/dist/areas/forums/posts.js.map +1 -1
  19. package/dist/areas/participants/methods.d.ts +9 -6
  20. package/dist/areas/participants/methods.js +91 -39
  21. package/dist/areas/participants/methods.js.map +1 -1
  22. package/dist/categories.js +3 -0
  23. package/dist/categories.js.map +1 -1
  24. package/dist/cli/commands.generated.js +72 -9
  25. package/dist/cli/commands.generated.js.map +1 -1
  26. package/dist/client.js +2 -1
  27. package/dist/client.js.map +1 -1
  28. package/dist/core/embed.d.ts +19 -0
  29. package/dist/core/embed.js +88 -0
  30. package/dist/core/embed.js.map +1 -0
  31. package/dist/core/forms.d.ts +3 -1
  32. package/dist/core/forms.js +10 -3
  33. package/dist/core/forms.js.map +1 -1
  34. package/dist/core/text.d.ts +10 -0
  35. package/dist/core/text.js +19 -0
  36. package/dist/core/text.js.map +1 -1
  37. package/dist/index.d.ts +2 -2
  38. package/dist/index.js +1 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/internals.d.ts +1 -1
  41. package/dist/internals.js +1 -1
  42. package/dist/internals.js.map +1 -1
  43. package/dist/moodle-methods.generated.d.ts +46 -14
  44. package/package.json +1 -1
@@ -0,0 +1,88 @@
1
+ // Files embedded in rich text: what a person does inserting an image in Moodle's editor. Each
2
+ // editor (`<field>[text]`) has its own draft area (`<field>[itemid]`); the editor uploads the file
3
+ // there and writes its draft URL into the HTML, which Moodle turns into @@PLUGINFILE@@ on saving.
4
+ import path from "node:path";
5
+ import { checkLocalFiles } from "./files.js";
6
+ import { formValue, uploadToDraft } from "./forms.js";
7
+ import { MoodleError } from "./errors.js";
8
+ import { decodeEntities } from "./text.js";
9
+ // A src or href attribute, quoted: its start, the quote and the value.
10
+ const ATTRIBUTE = /(\s(?:src|href)\s*=\s*)(["'])(.*?)\2/gis;
11
+ /** An attribute's value as a name: entities decoded, then the URL's escapes (`my%20shot.png`). */
12
+ function nameOf(value) {
13
+ const decoded = decodeEntities(value).trim();
14
+ try {
15
+ return decodeURIComponent(decoded);
16
+ }
17
+ catch {
18
+ return decoded;
19
+ }
20
+ }
21
+ /** A reference to a file next to the text, not a URL: no scheme, not from the site's root, not an anchor, not a file Moodle already keeps. */
22
+ function isLocalName(name) {
23
+ return name !== "" && !/^[a-z][a-z0-9+.-]*:/i.test(name) && !/^[/#?]/.test(name) && !name.startsWith("@@PLUGINFILE@@");
24
+ }
25
+ /** The local names (`shot.png`) the `src` and `href` attributes of `html` use. */
26
+ export function localNames(html) {
27
+ return [...html.matchAll(ATTRIBUTE)].map((match) => nameOf(match[3])).filter(isLocalName);
28
+ }
29
+ /** The rich texts among a form's values: the `<editor>[text]` fields, by editor. */
30
+ function richTexts(values) {
31
+ const texts = new Map();
32
+ for (const [name, value] of Object.entries(values)) {
33
+ const editor = /^(.+)\[text\]$/.exec(name)?.[1];
34
+ if (editor && typeof value === "string")
35
+ texts.set(editor, value);
36
+ }
37
+ return texts;
38
+ }
39
+ /** The HTML of the editors (`<editor>[text]`) among a form's values, for `checkEmbeds`. */
40
+ export function editorTexts(values) {
41
+ return [...richTexts(values).values()];
42
+ }
43
+ /**
44
+ * Checks files to embed against the HTML that uses them, before anything is sent: absolute local
45
+ * paths that exist, one per name, each used by a `src` or `href` of the texts (`<img src="shot.png">`),
46
+ * and every local name the texts use given as a file.
47
+ */
48
+ export async function checkEmbeds(texts, files) {
49
+ await checkLocalFiles(files);
50
+ const names = files.map((file) => path.basename(file));
51
+ const twice = names.filter((name, i) => names.indexOf(name) !== i);
52
+ if (twice.length > 0)
53
+ throw new MoodleError(`Two files to embed have the same name: ${[...new Set(twice)].join(", ")}. The HTML names each by its file name.`, "invalid-input");
54
+ const used = new Set(texts.flatMap((html) => (html === undefined ? [] : localNames(html))));
55
+ const unused = names.filter((name) => !used.has(name));
56
+ if (unused.length > 0)
57
+ throw new MoodleError(`No text uses ${unused.map((name) => `"${name}"`).join(", ")}: name each file to embed in a src or href (<img src="${unused[0]}">).`, "invalid-input");
58
+ const missing = [...used].filter((name) => !names.includes(name));
59
+ if (missing.length > 0)
60
+ throw new MoodleError(`The text uses ${missing.map((name) => `"${name}"`).join(", ")}, but no file of that name is given to embed. Give its local path in embed, or a full URL.`, "invalid-input");
61
+ }
62
+ /**
63
+ * Embeds `files` (checked with `checkEmbeds` first) in the rich texts among `values`, in the open
64
+ * form `page`: each file is uploaded to the draft area of every editor whose HTML names it, and the
65
+ * `src` and `href` naming it are rewritten to its draft URL, in `values` itself. Throws when an editor
66
+ * that uses a file has no draft area in the form (it takes no files).
67
+ */
68
+ export async function embedFiles(page, values, files) {
69
+ if (files.length === 0)
70
+ return;
71
+ const byName = new Map(files.map((file) => [path.basename(file), file]));
72
+ for (const [editor, html] of richTexts(values)) {
73
+ const names = [...new Set(localNames(html))].filter((name) => byName.has(name));
74
+ if (names.length === 0)
75
+ continue;
76
+ const draft = await formValue(page, `${editor}[itemid]`);
77
+ if (!draft)
78
+ throw new MoodleError(`The form's ${editor} editor takes no files, so nothing can be embedded in it.`, "not-available");
79
+ // Overwritten: a file of the same name the text had before is replaced, and its URL stays.
80
+ const urls = await uploadToDraft(page, draft, names.map((name) => byName.get(name)), { overwrite: true });
81
+ const urlOf = new Map(names.map((name, i) => [name, urls[i]]));
82
+ values[`${editor}[text]`] = html.replace(ATTRIBUTE, (whole, start, quote, value) => {
83
+ const url = urlOf.get(nameOf(value));
84
+ return url ? `${start}${quote}${url}${quote}` : whole;
85
+ });
86
+ }
87
+ }
88
+ //# sourceMappingURL=embed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed.js","sourceRoot":"","sources":["../../src/core/embed.ts"],"names":[],"mappings":"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"}
@@ -47,10 +47,12 @@ export declare function deleteDraftFile(page: Page, draftItemId: string, name: s
47
47
  * upload repository's id comes from the page's file picker settings, the context from `M.cfg`.
48
48
  * A `DraftUpload` names the file in the area, in a subfolder when its `to` has one (created first).
49
49
  * With `overwrite`, a file of the same name is replaced; without it, Moodle keeps both, renaming the new one.
50
+ * Returns each file's draft URL (`draftfile.php/<user context>/user/draft/<item>/<name>`), in order:
51
+ * what an editor writes into its HTML for a file in its draft area.
50
52
  */
51
53
  export declare function uploadToDraft(page: Page, draftItemId: string, filePaths: (string | DraftUpload)[], { overwrite }?: {
52
54
  overwrite?: boolean;
53
- }): Promise<void>;
55
+ }): Promise<string[]>;
54
56
  /**
55
57
  * Removes files by their path in a form's draft area (`"notes.pdf"`, `"week1/notes.pdf"`), as the
56
58
  * file manager's delete does; the files the area had stay until the form is saved. Throws `FormError`
@@ -181,6 +181,8 @@ export async function deleteDraftFile(page, draftItemId, name) {
181
181
  * upload repository's id comes from the page's file picker settings, the context from `M.cfg`.
182
182
  * A `DraftUpload` names the file in the area, in a subfolder when its `to` has one (created first).
183
183
  * With `overwrite`, a file of the same name is replaced; without it, Moodle keeps both, renaming the new one.
184
+ * Returns each file's draft URL (`draftfile.php/<user context>/user/draft/<item>/<name>`), in order:
185
+ * what an editor writes into its HTML for a file in its draft area.
184
186
  */
185
187
  export async function uploadToDraft(page, draftItemId, filePaths, { overwrite = false } = {}) {
186
188
  const files = await Promise.all(filePaths.map(async (file) => {
@@ -195,12 +197,13 @@ export async function uploadToDraft(page, draftItemId, filePaths, { overwrite =
195
197
  await draftAction(page, "mkdir", { itemid: draftItemId, filepath: draftPath(parts.slice(0, i).join("/")), newdirname: parts[i] });
196
198
  }
197
199
  }
198
- const errors = await page.evaluate(async ({ draftItemId, files, overwrite }) => {
200
+ const { errors, urls } = await page.evaluate(async ({ draftItemId, files, overwrite }) => {
199
201
  const g = globalThis;
200
202
  const repo = /"id":"(\d+)","name":"(?:[^"\\]|\\.)*","type":"upload"/.exec(g.document.documentElement.innerHTML)?.[1];
201
203
  if (!repo)
202
- return ["the site has no upload repository enabled"];
204
+ return { errors: ["the site has no upload repository enabled"], urls: [] };
203
205
  const failed = [];
206
+ const urls = [];
204
207
  for (const file of files) {
205
208
  const body = new g.FormData();
206
209
  body.append("repo_upload_file", new g.Blob([Uint8Array.from(g.atob(file.base64), (c) => c.charCodeAt(0))]), file.name);
@@ -212,11 +215,15 @@ export async function uploadToDraft(page, draftItemId, filePaths, { overwrite =
212
215
  const answer = await response.json().catch(() => ({ error: "the answer isn't JSON" }));
213
216
  if (answer.error)
214
217
  failed.push(`${file.name}: ${answer.error}`);
218
+ // A name already there, not overwritten, comes back as a "fileexists" event with the new file's name.
219
+ else
220
+ urls.push(answer.url ?? answer.newfile?.url ?? "");
215
221
  }
216
- return failed;
222
+ return { errors: failed, urls };
217
223
  }, { draftItemId, files, overwrite });
218
224
  if (errors.length > 0)
219
225
  throw new FormError("Uploading failed:", errors.map((message) => ({ field: "files", message })));
226
+ return urls;
220
227
  }
221
228
  /**
222
229
  * Removes files by their path in a form's draft area (`"notes.pdf"`, `"week1/notes.pdf"`), as the
@@ -1 +1 @@
1
- {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../src/core/forms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../src/core/forms.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,16 @@ export declare function decodeEntities(text: string): string;
7
7
  * (see the conventions on page.evaluate).
8
8
  */
9
9
  export declare function readTexts(page: Page, selector: string): Promise<string[]>;
10
+ /** An image in a text (`<img>`): its URL, absolute, and its alternative text when it has one. */
11
+ export interface ImageItem {
12
+ url: string;
13
+ alt?: string;
14
+ }
15
+ /**
16
+ * The images (`<img>`) in each element matching `selector`, one list per element, each URL once;
17
+ * `data:` URLs are left out. An image of the site downloads with the session (`downloadFile`).
18
+ */
19
+ export declare function readImages(page: Page, selector: string): Promise<ImageItem[][]>;
10
20
  /** A video, audio or player found in a page's content. */
11
21
  export interface MediaItem {
12
22
  kind: "video" | "audio" | "youtube" | "vimeo" | "embed";
package/dist/core/text.js CHANGED
@@ -50,6 +50,25 @@ export function readTexts(page, selector) {
50
50
  });
51
51
  }, selector);
52
52
  }
53
+ /**
54
+ * The images (`<img>`) in each element matching `selector`, one list per element, each URL once;
55
+ * `data:` URLs are left out. An image of the site downloads with the session (`downloadFile`).
56
+ */
57
+ export function readImages(page, selector) {
58
+ return page.evaluate((selector) => {
59
+ const roots = Array.from(globalThis.document.querySelectorAll(selector));
60
+ return roots.map((root) => {
61
+ const found = new Map();
62
+ for (const img of Array.from(root.querySelectorAll("img[src]"))) {
63
+ const url = img.src;
64
+ const alt = img.getAttribute("alt")?.trim();
65
+ if (url && !url.startsWith("data:") && !found.has(url))
66
+ found.set(url, alt ? { url, alt } : { url });
67
+ }
68
+ return Array.from(found.values());
69
+ });
70
+ }, selector);
71
+ }
53
72
  /**
54
73
  * The media in the elements matching `selector`: `<video>`/`<audio>` and their sources, players in
55
74
  * iframes, video.js's `data-setup` sources (Moodle's media filter turns a YouTube link into one), and
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -22,7 +22,7 @@ export { MoodleServiceError } from "./core/ajax.js";
22
22
  export { FormError, type FieldValue, type DraftUpload, type DraftFile } from "./core/forms.js";
23
23
  export { findMoodleSite } from "./core/site.js";
24
24
  export { checkLocalFiles, downloadFile, type DownloadedFile } from "./core/files.js";
25
- export type { MediaItem } from "./core/text.js";
25
+ export type { MediaItem, ImageItem } from "./core/text.js";
26
26
  export { publicSiteInfo, courseActivityTypes } from "./areas/site/info.js";
27
27
  export { userById, siteName, courseRoles, courseAbilities, whoAmI, type User, type Me } from "./areas/site/users.js";
28
28
  export { listCourses, updateCourse, COURSE_CLASSIFICATIONS, CourseError, type CourseClassification, type Course } from "./areas/courses/list.js";
@@ -45,7 +45,7 @@ export { forumGrades, gradeForumUser, type ForumGrade, type ForumGrades } from "
45
45
  export { rate, type RateableItem } from "./areas/ratings/ratings.js";
46
46
  export { workshopInfo, setWorkshopPhase, assessWorkshopSubmission, WorkshopError, WORKSHOP_PHASES, type WorkshopPhase, type WorkshopInfo, type WorkshopSubmission, type WorkshopAssessment, type WorkshopCriterion } from "./areas/workshops/workshops.js";
47
47
  export { NotAForumError, ForumError } from "./areas/forums/discussions.js";
48
- export { forumDiscussions, discussion, replyToPost, startDiscussion, setDiscussionState, editPost, deletePost, type ForumDiscussion, type ForumPost, type PostInput, type PostChanges } from "./areas/forums/posts.js";
48
+ export { forumDiscussions, discussion, replyToPost, startDiscussion, setDiscussionState, setDiscussionSubscription, editPost, deletePost, type ForumDiscussion, type ForumPost, type PostInput, type PostChanges } from "./areas/forums/posts.js";
49
49
  export { getSurvey, submitSurvey, SurveyError, type SurveyType, type SurveyField, type SurveyQuestion } from "./areas/surveys/surveys.js";
50
50
  export { getChoice, answerChoice, ChoiceError, type Choice } from "./areas/surveys/choice.js";
51
51
  export { lessonPage, answerLessonPage, LessonError, type LessonField, type LessonPage } from "./areas/lessons/lessons.js";
package/dist/index.js CHANGED
@@ -50,7 +50,7 @@ export { forumGrades, gradeForumUser } from "./areas/forums/grading.js";
50
50
  export { rate } from "./areas/ratings/ratings.js";
51
51
  export { workshopInfo, setWorkshopPhase, assessWorkshopSubmission, WorkshopError, WORKSHOP_PHASES } from "./areas/workshops/workshops.js";
52
52
  export { NotAForumError, ForumError } from "./areas/forums/discussions.js";
53
- export { forumDiscussions, discussion, replyToPost, startDiscussion, setDiscussionState, editPost, deletePost } from "./areas/forums/posts.js";
53
+ export { forumDiscussions, discussion, replyToPost, startDiscussion, setDiscussionState, setDiscussionSubscription, editPost, deletePost } from "./areas/forums/posts.js";
54
54
  export { getSurvey, submitSurvey, SurveyError } from "./areas/surveys/surveys.js";
55
55
  export { getChoice, answerChoice, ChoiceError } from "./areas/surveys/choice.js";
56
56
  export { lessonPage, answerLessonPage, LessonError } from "./areas/lessons/lessons.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,6DAA6D;AAC7D,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,cAAc,EAA4C,MAAM,sBAAsB,CAAC;AACpL,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,eAAe,EAA+C,MAAM,yBAAyB,CAAC;AACjJ,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AAEjC,4BAA4B;AAC5B,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAoB,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAqD,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAuB,MAAM,iBAAiB,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAsB,MAAM,uBAAuB,CAAC;AAErH,WAAW;AACX,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,WAAW,EAA0C,MAAM,yBAAyB,CAAC;AACjJ,OAAO,EACL,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,iBAAiB,GAMlB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,aAAa,EAAsB,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAyC,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAkB,MAAM,0BAA0B,CAAC;AAElI,uDAAuD;AACvD,OAAO,EACL,cAAc,EACd,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,GAMtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAA+D,MAAM,+BAA+B,CAAC;AAE9J,eAAe;AACf,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,eAAe,EAA0C,MAAM,+BAA+B,CAAC;AAC5I,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAkE,MAAM,gCAAgC,CAAC;AAClN,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAA0B,MAAM,gCAAgC,CAAC;AAE9I,8BAA8B;AAC9B,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,SAAS,GAKV,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAA0B,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAwB,MAAM,4BAA4B,CAAC;AACvG,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAoD,MAAM,8BAA8B,CAAC;AAC/L,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,EACf,cAAc,EACd,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GAMlB,MAAM,4BAA4B,CAAC;AAEpC,0CAA0C;AAC1C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAqC,MAAM,2BAA2B,CAAC;AAC3G,OAAO,EAAE,IAAI,EAAqB,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,aAAa,EAAE,eAAe,EAAmH,MAAM,gCAAgC,CAAC;AAC3P,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,QAAQ,EAAE,UAAU,EAA0E,MAAM,yBAAyB,CAAC;AAClP,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAA0D,MAAM,4BAA4B,CAAC;AAC1I,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAe,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAqC,MAAM,4BAA4B,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAqC,MAAM,oBAAoB,CAAC;AAC3G,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAuE,MAAM,wBAAwB,CAAC;AAE3I,wDAAwD;AACxD,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAiB,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,cAAc,GAMf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,QAAQ,EAA6C,MAAM,8BAA8B,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAA6E,MAAM,0BAA0B,CAAC;AACzJ,OAAO,EACL,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,qBAAqB,EACrB,WAAW,GAMZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAA8C,MAAM,kCAAkC,CAAC;AACpK,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,EAAE,mBAAmB,EAAsC,MAAM,sCAAsC,CAAC;AACzJ,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAA4D,MAAM,gCAAgC,CAAC;AAChO,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAsD,MAAM,iCAAiC,CAAC;AAC3I,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAsB,MAAM,oCAAoC,CAAC;AAC/I,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAyC,MAAM,8BAA8B,CAAC;AAC1K,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,YAAY,EAA0E,MAAM,8BAA8B,CAAC"}
@@ -11,7 +11,7 @@ export { openSitePage, fetchSitePage, readSessionFacts, htmlSessionFacts, readMo
11
11
  export { readOwnProfile } from "./core/login.js";
12
12
  export { openForm, formValue, setFields, submitForm, uploadToDraft, draftFiles, deleteDraftFile, removeFromDraft, dateSelectorValues, dateSelectorDate, type DraftUpload, type DraftFile } from "./core/forms.js";
13
13
  export { inPage } from "./core/inPage.js";
14
- export { decodeEntities, readTexts, readMedia } from "./core/text.js";
14
+ export { decodeEntities, readTexts, readMedia, readImages } from "./core/text.js";
15
15
  export { readingSeconds, pause } from "./core/pace.js";
16
16
  export { editCourse, renameActivity, renameSection, type EditorAction } from "./core/editor.js";
17
17
  export { readWwwroot } from "./core/site.js";
package/dist/internals.js CHANGED
@@ -11,7 +11,7 @@ export { openSitePage, fetchSitePage, readSessionFacts, htmlSessionFacts, readMo
11
11
  export { readOwnProfile } from "./core/login.js";
12
12
  export { openForm, formValue, setFields, submitForm, uploadToDraft, draftFiles, deleteDraftFile, removeFromDraft, dateSelectorValues, dateSelectorDate } from "./core/forms.js";
13
13
  export { inPage } from "./core/inPage.js";
14
- export { decodeEntities, readTexts, readMedia } from "./core/text.js";
14
+ export { decodeEntities, readTexts, readMedia, readImages } from "./core/text.js";
15
15
  export { readingSeconds, pause } from "./core/pace.js";
16
16
  export { editCourse, renameActivity, renameSection } from "./core/editor.js";
17
17
  export { readWwwroot } from "./core/site.js";
@@ -1 +1 @@
1
- {"version":3,"file":"internals.js","sourceRoot":"","sources":["../src/internals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,WAAW,EAAE,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAqB,MAAM,mBAAmB,CAAC;AACzL,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,gBAAgB,EAAoC,MAAM,iBAAiB,CAAC;AAClN,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAA0C,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"internals.js","sourceRoot":"","sources":["../src/internals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,WAAW,EAAE,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAqB,MAAM,mBAAmB,CAAC;AACzL,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,gBAAgB,EAAoC,MAAM,iBAAiB,CAAC;AAClN,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAA0C,MAAM,0BAA0B,CAAC"}
@@ -93,11 +93,15 @@ export interface MoodleMethods {
93
93
  }): Promise<import("./areas/quizzes/structure.js").QuizChange & {
94
94
  sectionId: number;
95
95
  }>;
96
- /** Adds a section after another one (at the end without it), named when a name is given, with a description (HTML) when `summary` is. */
96
+ /**
97
+ * Adds a section after another one (at the end without it), named when a name is given, with a
98
+ * description (HTML) when `summary` is, and `embed`'s local files in it (`<img src="shot.png">`).
99
+ */
97
100
  addSection(courseId: number, options?: {
98
101
  name?: string | undefined;
99
102
  afterSectionId?: number | undefined;
100
103
  summary?: string | undefined;
104
+ embed?: string[] | undefined;
101
105
  }): Promise<import("./areas/activities/build.js").CourseChange>;
102
106
  /**
103
107
  * Allocates a marker (the user id of someone who can grade; several where the assignment uses
@@ -388,12 +392,16 @@ export interface MoodleMethods {
388
392
  }>;
389
393
  /** Deletes a section and every activity in it, with their participants' data. */
390
394
  deleteSection(courseId: number, sectionId: number): Promise<import("./areas/activities/build.js").CourseChange>;
391
- /** A discussion's posts, oldest first, with their messages as text. */
395
+ /**
396
+ * A discussion's posts, oldest first, with their messages as text, and whether the person is
397
+ * subscribed to it (`subscribed`, undefined where they can't subscribe or it's forced).
398
+ */
392
399
  discussion(discussionId: number): Promise<{
393
400
  discussion: {
394
401
  id: number;
395
402
  forumInstanceId: number;
396
403
  courseId: number;
404
+ subscribed: boolean | undefined;
397
405
  };
398
406
  posts: import("./areas/forums/posts.js").ForumPost[];
399
407
  }>;
@@ -426,8 +434,8 @@ export interface MoodleMethods {
426
434
  page?: number | undefined;
427
435
  }): Promise<import("./areas/quizzes/structure.js").QuizChange>;
428
436
  /**
429
- * Renames, shows or hides, describes (`summary`, HTML), restricts (`restrictions`; `{ conditions: [] }`
430
- * removes them) or moves a section after another one.
437
+ * Renames, shows or hides, describes (`summary`, HTML, with `embed`'s local files in it), restricts
438
+ * (`restrictions`; `{ conditions: [] }` removes them) or moves a section after another one.
431
439
  */
432
440
  editSection(courseId: number, sectionId: number, options: {
433
441
  name?: string | undefined;
@@ -435,6 +443,7 @@ export interface MoodleMethods {
435
443
  summary?: string | undefined;
436
444
  restrictions?: import("./areas/activities/conditions.js").Restrictions | undefined;
437
445
  afterSectionId?: number | undefined;
446
+ embed?: string[] | undefined;
438
447
  }): Promise<import("./areas/activities/build.js").CourseChange>;
439
448
  /**
440
449
  * Enrols users in a course by manual enrolment, as the participants page's "Enrol users" dialog does:
@@ -469,7 +478,7 @@ export interface MoodleMethods {
469
478
  questions: import("./areas/quizzes/attempts.js").Question[];
470
479
  } | undefined;
471
480
  }>;
472
- /** A forum's discussions, as its page lists them: who started each, replies, last post. */
481
+ /** A forum's discussions, as its page lists them: who started each, replies, last post, the person's subscription. */
473
482
  forumDiscussions(activityId: number): Promise<import("./areas/forums/posts.js").ForumDiscussion[]>;
474
483
  /**
475
484
  * Everyone's whole-forum grade in a forum graded as a whole, as its grader shows them: one per
@@ -774,10 +783,14 @@ export interface MoodleMethods {
774
783
  }>;
775
784
  /** Removes a slot (by its place, from 1) from a quiz, as the edit page's delete icon does; the question stays in its bank. */
776
785
  removeQuizSlot(activityId: number, slot: number): Promise<import("./areas/quizzes/structure.js").QuizChange>;
777
- /** Replies to a post; returns the new post's id and its discussion's. */
786
+ /**
787
+ * Replies to a post; returns the new post's id and its discussion's, and, when `subscribe` is given,
788
+ * the person's subscription to the discussion afterwards, read back (`subscribed`).
789
+ */
778
790
  replyToPost(postId: number, input: import("./areas/forums/posts.js").PostInput & {
779
791
  subject?: string | undefined;
780
792
  }): Promise<{
793
+ subscribed?: boolean | undefined;
781
794
  changed: string;
782
795
  postId: number | undefined;
783
796
  discussionId: number | undefined;
@@ -869,11 +882,23 @@ export interface MoodleMethods {
869
882
  discussion?: import("./areas/forums/posts.js").ForumDiscussion | undefined;
870
883
  }>;
871
884
  /**
872
- * Sets an enrolment method with its form: by id, or the course's first method of a type
873
- * (`{ type: "self" }`), added when the course has none and the "Add method" menu offers it. Only
874
- * what's given changes. Returns the method afterwards. Throws `EnrolmentError` for a method the
875
- * course doesn't have or can't add, `FormError` with Moodle's reason when it refuses the form (a key
876
- * required by the site, an end before the start).
885
+ * Subscribes the person to a discussion or unsubscribes them, as the discussion list's toggle does
886
+ * (`mod_forum_set_subscription_state`); what's already so is left alone. Returns the discussion as
887
+ * the forum lists it afterwards.
888
+ */
889
+ setDiscussionSubscription(activityId: number, discussionId: number, subscribed: boolean): Promise<{
890
+ changed: string;
891
+ discussion?: import("./areas/forums/posts.js").ForumDiscussion | undefined;
892
+ }>;
893
+ /**
894
+ * Sets an enrolment method: by id, or the course's first method of a type (`{ type: "self" }`),
895
+ * added when the course has none and the "Add method" menu offers it. Only what's given changes.
896
+ * `enabled` goes through the methods page's enable and disable icons, the rest through the method's
897
+ * form: what Moodle lets the person change differs by method (an editing teacher can't configure
898
+ * manual enrolment, enrol/manual:config, so neither switch it nor set its role). Returns the method
899
+ * afterwards. Throws `EnrolmentError` for a method the course doesn't have or can't add, and for a
900
+ * setting Moodle doesn't let the person change (naming it); `FormError` with Moodle's reason when it
901
+ * refuses the form (a key required by the site, an end before the start).
877
902
  */
878
903
  setEnrolmentMethod(courseId: number, method: number | {
879
904
  type: string;
@@ -975,12 +1000,17 @@ export interface MoodleMethods {
975
1000
  }>;
976
1001
  /** The site's name, from its public settings; `undefined` where the mobile app support is off. */
977
1002
  siteName(): Promise<string | undefined>;
978
- /** Starts a discussion in a forum; returns its id. */
1003
+ /**
1004
+ * Starts a discussion in a forum; returns its id, and whether it's pinned and the person subscribed
1005
+ * to it, as the forum lists it afterwards, so one call confirms what `subscribe` and `fields` set.
1006
+ */
979
1007
  startDiscussion(activityId: number, input: import("./areas/forums/posts.js").PostInput & {
980
1008
  subject: string;
981
1009
  }): Promise<{
982
1010
  changed: string;
983
1011
  discussionId: number | undefined;
1012
+ pinned: boolean | undefined;
1013
+ subscribed: boolean | undefined;
984
1014
  }>;
985
1015
  /** Starts an attempt, or continues the one in progress, and gives its questions. */
986
1016
  startQuizAttempt(activityId: number): Promise<{
@@ -1044,14 +1074,16 @@ export interface MoodleMethods {
1044
1074
  }): Promise<import("./areas/activities/build.js").CourseChange>;
1045
1075
  /**
1046
1076
  * Changes a course's full name, short name, summary (HTML) or any other setting by its form field
1047
- * name, through the course's settings form; returns the course as `listCourses` gives it. Moodle's
1048
- * refusals (a short name already taken) come back as `FormError` by field.
1077
+ * name, through the course's settings form; returns the course as `listCourses` gives it. `embed`
1078
+ * takes local files the summary names (`<img src="shot.png">`), put in it as Moodle's editor does.
1079
+ * Moodle's refusals (a short name already taken) come back as `FormError` by field.
1049
1080
  */
1050
1081
  updateCourse(courseId: number, options: {
1051
1082
  fullName?: string | undefined;
1052
1083
  shortName?: string | undefined;
1053
1084
  summary?: string | undefined;
1054
1085
  settings?: Record<string, import("./core/forms.js").FieldValue> | undefined;
1086
+ embed?: string[] | undefined;
1055
1087
  }): Promise<{
1056
1088
  changed: string;
1057
1089
  course?: import("./areas/courses/list.js").Course | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@falkenslab/moodle-driver",
3
- "version": "0.5.1",
3
+ "version": "0.6.0",
4
4
  "description": "Full control of Moodle as any user, from code or the command line, with their own login: no web services, no tokens, no admin.",
5
5
  "author": "Falkenslab",
6
6
  "license": "MIT",