memrise 0.7.1 → 0.8.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.
- package/README.md +52 -6
- package/dist/index.d.ts +79 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +286 -2
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +87 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -16,6 +16,10 @@ import { MemriseClient } from "memrise";
|
|
|
16
16
|
// Initialize with username and password
|
|
17
17
|
const client = new MemriseClient("username", "password");
|
|
18
18
|
|
|
19
|
+
// Get the signed-in account
|
|
20
|
+
const me = await client.getMe();
|
|
21
|
+
console.log(me.username, me.is_pro);
|
|
22
|
+
|
|
19
23
|
// Get your courses
|
|
20
24
|
const courses = await client.getMyCourses();
|
|
21
25
|
console.log(courses);
|
|
@@ -92,10 +96,39 @@ await client.setLevelTitle("level-id", "02/19");
|
|
|
92
96
|
// Delete a level
|
|
93
97
|
await client.deleteLevel("level-id");
|
|
94
98
|
|
|
95
|
-
//
|
|
96
|
-
await client.
|
|
99
|
+
// Edit an existing item, by column name or numeric key
|
|
100
|
+
await client.updateThing("thing-id", { Definition: "corrected" });
|
|
101
|
+
|
|
102
|
+
// Skip the name and pool lookups, and the verifying read-back
|
|
103
|
+
await client.updateThing(
|
|
104
|
+
"thing-id",
|
|
105
|
+
{ "2": "corrected" },
|
|
106
|
+
{ poolId: "pool-id", verify: false },
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
// Or one cell at a time
|
|
110
|
+
await client.updateThingCell("thing-id", "2", "corrected");
|
|
111
|
+
await client.updateThingCell("thing-id", "Pronunciation", "kon-ni-chi-wa", {
|
|
112
|
+
cellType: "attribute",
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
// Read a single row, every column, by thing ID
|
|
116
|
+
const { thing } = await client.getThing("thing-id");
|
|
117
|
+
|
|
118
|
+
// Take a thing out of a level. The pool row survives, so other levels using
|
|
119
|
+
// it are untouched.
|
|
120
|
+
await client.detachThingFromLevel("level-id", "thing-id");
|
|
121
|
+
|
|
122
|
+
// Destroy the pool row itself, removing it from every level at once
|
|
123
|
+
await client.deleteThing("thing-id");
|
|
97
124
|
|
|
98
|
-
//
|
|
125
|
+
// Rows left in the pool that no level uses. Detaching creates these.
|
|
126
|
+
const orphans = await client.findOrphanedThings("course-id");
|
|
127
|
+
|
|
128
|
+
// Or the whole pool, each row with the levels it belongs to
|
|
129
|
+
const poolThings = await client.getPoolThings("course-id");
|
|
130
|
+
|
|
131
|
+
// List every thing in a level, with the thing IDs the delete calls need
|
|
99
132
|
const levelThings = await client.getLevelThings("course-id", "level-id");
|
|
100
133
|
|
|
101
134
|
// Or just the thing IDs, with no extra request for the text
|
|
@@ -121,6 +154,10 @@ new MemriseClient(username: string, password: string, clientId?: string)
|
|
|
121
154
|
|
|
122
155
|
### Methods
|
|
123
156
|
|
|
157
|
+
**Account:**
|
|
158
|
+
|
|
159
|
+
- `getMe()` - The signed-in account: id, username, email, locale, Pro status and lifetime statistics
|
|
160
|
+
|
|
124
161
|
**Course Management:**
|
|
125
162
|
|
|
126
163
|
- `getAllMyCourses(limit?)` - Every course on your dashboard, following pagination
|
|
@@ -154,7 +191,14 @@ new MemriseClient(username: string, password: string, clientId?: string)
|
|
|
154
191
|
- `addLevelToCourse(courseId, poolId?, kind?)` - Add a new level to a course
|
|
155
192
|
- `setLevelTitle(levelId, newTitle)` - Rename a level
|
|
156
193
|
- `deleteLevel(levelId)` - Delete a level
|
|
157
|
-
- `
|
|
194
|
+
- `detachThingFromLevel(levelId, thingId)` - Take a thing out of one level. The pool row survives, so levels sharing it keep it (was `deleteThingFromLevel`, still available as a deprecated alias)
|
|
195
|
+
- `deleteThing(thingId)` - Destroy a pool row outright. Removes it from every level at once and cannot be undone
|
|
196
|
+
|
|
197
|
+
**Editing Items:**
|
|
198
|
+
|
|
199
|
+
- `getThing(thingId)` - Read one pool row, every column and attribute
|
|
200
|
+
- `updateThing(thingId, columns, options?)` - Overwrite several cells of one thing, then read the row back to confirm. Options: `cellType` (`"column"` by default, or `"attribute"`), `poolId`, `verify` (`false` skips the read-back)
|
|
201
|
+
- `updateThingCell(thingId, cell, newValue, options?)` - Overwrite one cell. Options: `cellType`, `poolId`
|
|
158
202
|
|
|
159
203
|
**Pool Operations:**
|
|
160
204
|
|
|
@@ -162,6 +206,8 @@ new MemriseClient(username: string, password: string, clientId?: string)
|
|
|
162
206
|
- `getPool(poolId)` - Get pool information
|
|
163
207
|
- `getPoolIdForLevelId(levelId)` - Pool behind a level, without needing the course ID
|
|
164
208
|
- `resolveColumnKeys(poolId, row)` - Translate column names to numeric keys
|
|
209
|
+
- `getPoolThings(courseId)` - Every row in the course's pool, with the levels each belongs to. Scrapes the editor's database pages, the only way to see a pool whole
|
|
210
|
+
- `findOrphanedThings(courseId)` - Pool rows no level uses
|
|
165
211
|
|
|
166
212
|
## Column names
|
|
167
213
|
|
|
@@ -208,7 +254,7 @@ silently returning the wrong level.
|
|
|
208
254
|
|
|
209
255
|
Memrise exposes two identifiers for what looks like the same item:
|
|
210
256
|
|
|
211
|
-
- **thing** — the row in the pool database. `
|
|
257
|
+
- **thing** — the row in the pool database. `detachThingFromLevel`,
|
|
212
258
|
`searchPool` and the `addThing*` responses all speak thing IDs.
|
|
213
259
|
- **learnable** — a thing *plus* the pair of columns being tested. Levels and
|
|
214
260
|
the course-facing APIs report learnable IDs.
|
|
@@ -233,7 +279,7 @@ which:
|
|
|
233
279
|
types. They erase to plain numbers at runtime, but passing one where the
|
|
234
280
|
other belongs is a compile error. Use `asThingId()` / `asLearnableId()` to
|
|
235
281
|
brand a number from elsewhere.
|
|
236
|
-
- **So does the runtime.** Passing a learnable ID to `
|
|
282
|
+
- **So does the runtime.** Passing a learnable ID to `detachThingFromLevel`
|
|
237
283
|
throws immediately with the thing ID you probably meant, rather than failing
|
|
238
284
|
somewhere downstream.
|
|
239
285
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { asLearnableId, asThingId } from "./types.js";
|
|
2
2
|
export type * from "./types.js";
|
|
3
|
-
import type { AccessTokenResponse, ColumnPair, CourseItem, LearnableId, ThingId, AddLevelResponse, AddThingResponse, AuthWebResponse, BulkAddResponse, BulkThingRow, BulkThingRows, BulkWordDelimiter, CourseLevel, DashboardCourse, DeleteLevelResponse, DeleteThingResponse, GetDashboardCoursesResponse, GetPoolResponse, Learnable, LevelThing, PoolColumnConfig, SearchPoolResponse, SetLevelTitleResponse } from "./types.js";
|
|
3
|
+
import type { AccessTokenResponse, ColumnPair, CourseItem, LearnableId, ThingId, AddLevelResponse, AddThingResponse, AuthWebResponse, BulkAddResponse, BulkThingRow, BulkThingRows, BulkWordDelimiter, CourseLevel, DashboardCourse, DeleteLevelResponse, DeleteThingResponse, DetachThingResponse, GetDashboardCoursesResponse, GetThingResponse, GetPoolResponse, Learnable, LevelThing, PoolColumnConfig, PoolThing, Profile, SearchPoolResponse, SetLevelTitleResponse, UpdateThingCellOptions, UpdateThingCellResponse, UpdateThingOptions, UpdateThingResponse } from "./types.js";
|
|
4
4
|
/**
|
|
5
5
|
* Choose a delimiter that appears in none of the values.
|
|
6
6
|
*
|
|
@@ -10,6 +10,11 @@ import type { AccessTokenResponse, ColumnPair, CourseItem, LearnableId, ThingId,
|
|
|
10
10
|
*/
|
|
11
11
|
export declare function pickBulkDelimiter(rows: BulkThingRow[]): BulkWordDelimiter;
|
|
12
12
|
export declare function formatBulkThingData(rows: BulkThingRows, delimiter?: BulkWordDelimiter): string;
|
|
13
|
+
/** Pull the rows out of one page of the editor's pool database. */
|
|
14
|
+
export declare function parsePoolPage(html: string): {
|
|
15
|
+
thingId: number;
|
|
16
|
+
values: string[];
|
|
17
|
+
}[];
|
|
13
18
|
/**
|
|
14
19
|
* Recover the thing ID a learnable was built from.
|
|
15
20
|
*
|
|
@@ -47,6 +52,8 @@ export declare class MemriseClient {
|
|
|
47
52
|
private authReady;
|
|
48
53
|
private poolIdByLevel;
|
|
49
54
|
private columnKeysByPool;
|
|
55
|
+
private attributeKeysByPool;
|
|
56
|
+
private poolIdByThing;
|
|
50
57
|
constructor(username: string, password: string, clientId?: string);
|
|
51
58
|
private authenticateWithCredentials;
|
|
52
59
|
private mergeSetCookieCookies;
|
|
@@ -60,7 +67,57 @@ export declare class MemriseClient {
|
|
|
60
67
|
addLevelToCourse(courseId: string | number, poolId?: string | number, kind?: string): Promise<AddLevelResponse>;
|
|
61
68
|
setLevelTitle(levelId: string | number, newTitle: string): Promise<SetLevelTitleResponse>;
|
|
62
69
|
deleteLevel(levelId: string | number): Promise<DeleteLevelResponse>;
|
|
63
|
-
|
|
70
|
+
/** Fetch one pool row by its thing ID. */
|
|
71
|
+
getThing(thingId: string | number): Promise<GetThingResponse>;
|
|
72
|
+
/**
|
|
73
|
+
* Overwrite one cell of an existing thing, in a single request.
|
|
74
|
+
*
|
|
75
|
+
* `cell` may be a column (or attribute) label or the numeric key Memrise
|
|
76
|
+
* uses on the wire. Resolving a label needs the thing's pool, which is
|
|
77
|
+
* looked up unless `poolId` is given.
|
|
78
|
+
*/
|
|
79
|
+
updateThingCell(thingId: string | number, cell: string | number, newValue: string, options?: UpdateThingCellOptions): Promise<UpdateThingCellResponse>;
|
|
80
|
+
/**
|
|
81
|
+
* Overwrite several cells of one thing, then confirm the write.
|
|
82
|
+
*
|
|
83
|
+
* Memrise writes one cell per request, so cell names are all resolved
|
|
84
|
+
* before the first write; an unknown name fails the call rather than
|
|
85
|
+
* leaving the row half-updated.
|
|
86
|
+
*
|
|
87
|
+
* `/ajax/thing/cell/update/` answers `{"success": null}` whether or not
|
|
88
|
+
* it wrote, and drops writes under the account rate limit, so the row is
|
|
89
|
+
* read back once at the end and a mismatch is an error. `verify: false`
|
|
90
|
+
* skips that read.
|
|
91
|
+
*/
|
|
92
|
+
updateThing(thingId: string | number, columns: Record<string, string>, options?: UpdateThingOptions): Promise<UpdateThingResponse>;
|
|
93
|
+
/** Which pool a thing lives in, so its cells can be named. */
|
|
94
|
+
private poolIdForThing;
|
|
95
|
+
/** Translate a cell label into the numeric key Memrise wants. */
|
|
96
|
+
private resolveCellId;
|
|
97
|
+
/**
|
|
98
|
+
* Take a thing out of one level, leaving the pool row alone.
|
|
99
|
+
*
|
|
100
|
+
* This is a detach, not a delete: levels share a pool, so the row stays
|
|
101
|
+
* put and any other level using it is untouched. Rows detached from every
|
|
102
|
+
* level linger in the pool (see {@link findOrphanedThings});
|
|
103
|
+
* {@link deleteThing} destroys the row itself.
|
|
104
|
+
*/
|
|
105
|
+
detachThingFromLevel(levelId: string | number, thingId: string | number): Promise<DetachThingResponse>;
|
|
106
|
+
/**
|
|
107
|
+
* @deprecated Use {@link detachThingFromLevel}. It detaches the row from
|
|
108
|
+
* one level; {@link deleteThing} is what destroys it.
|
|
109
|
+
*/
|
|
110
|
+
deleteThingFromLevel(levelId: string | number, thingId: string | number): Promise<DetachThingResponse>;
|
|
111
|
+
/**
|
|
112
|
+
* Destroy a pool row outright, removing it from every level at once.
|
|
113
|
+
*
|
|
114
|
+
* Unlike {@link detachThingFromLevel} this cannot be undone and is not
|
|
115
|
+
* scoped to one lesson: one pool backs every level of a course, so a row
|
|
116
|
+
* shared by several levels disappears from all of them.
|
|
117
|
+
* `getCourseItems(courseId)` reports each item's `levelIds`, which is
|
|
118
|
+
* what would be affected.
|
|
119
|
+
*/
|
|
120
|
+
deleteThing(thingId: string | number): Promise<DeleteThingResponse>;
|
|
64
121
|
/**
|
|
65
122
|
* Add one item to a course, addressed by the level number Memrise shows.
|
|
66
123
|
*/
|
|
@@ -73,6 +130,8 @@ export declare class MemriseClient {
|
|
|
73
130
|
bulkAddToCourse(courseId: string | number, rows: BulkThingRows, levelNumber?: number, delimiter?: BulkWordDelimiter): Promise<BulkAddResponse>;
|
|
74
131
|
searchPool(poolId: string | number, columns: Record<string, string>, excludeThingIds?: string[], originalOnly?: boolean): Promise<SearchPoolResponse>;
|
|
75
132
|
getPool(poolId: string | number): Promise<GetPoolResponse>;
|
|
133
|
+
/** The signed-in account, as `/v1.25/me/` reports it. */
|
|
134
|
+
getMe(): Promise<Profile>;
|
|
76
135
|
getMyCourses(limit?: number, offset?: number): Promise<GetDashboardCoursesResponse>;
|
|
77
136
|
/**
|
|
78
137
|
* Every course on your dashboard, following pagination.
|
|
@@ -154,6 +213,7 @@ export declare class MemriseClient {
|
|
|
154
213
|
*/
|
|
155
214
|
getPoolIdForLevelId(levelId: string | number): Promise<number>;
|
|
156
215
|
private columnKeysFor;
|
|
216
|
+
private attributeKeysFor;
|
|
157
217
|
/**
|
|
158
218
|
* Translate a row keyed by column name into the numeric keys Memrise
|
|
159
219
|
* wants. Numeric keys pass through untouched, so callers that already
|
|
@@ -168,6 +228,23 @@ export declare class MemriseClient {
|
|
|
168
228
|
private resolveRowsForLevel;
|
|
169
229
|
/** Resolve named columns in bulk rows against a pool. */
|
|
170
230
|
private resolveRowsForPool;
|
|
231
|
+
/**
|
|
232
|
+
* Every row in a course's pool, attached or not, with the levels each one
|
|
233
|
+
* belongs to.
|
|
234
|
+
*
|
|
235
|
+
* This is a **scrape**, and the only way to see a pool whole: the levels
|
|
236
|
+
* endpoint reports attached rows only, and `/ajax/pool/search/` cannot
|
|
237
|
+
* list without a search term. It walks the editor's database pages, 20
|
|
238
|
+
* rows each, so a large pool costs a request per 20 rows.
|
|
239
|
+
*/
|
|
240
|
+
getPoolThings(courseId: string | number): Promise<PoolThing[]>;
|
|
241
|
+
/**
|
|
242
|
+
* Rows sitting in a course's pool that no level uses.
|
|
243
|
+
*
|
|
244
|
+
* Detaching leaves rows behind, so these accumulate. {@link deleteThing}
|
|
245
|
+
* is what clears them.
|
|
246
|
+
*/
|
|
247
|
+
findOrphanedThings(courseId: string | number): Promise<PoolThing[]>;
|
|
171
248
|
getCourseColumns(courseId: string | number): Promise<Record<string, PoolColumnConfig>>;
|
|
172
249
|
}
|
|
173
250
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACtD,mBAAmB,YAAY,CAAC;AAChC,OAAO,KAAK,EACX,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EAEnB,2BAA2B,EAE3B,eAAe,EACf,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -59,6 +59,40 @@ export function formatBulkThingData(rows, delimiter) {
|
|
|
59
59
|
})
|
|
60
60
|
.join("\n");
|
|
61
61
|
}
|
|
62
|
+
const HTML_ENTITIES = {
|
|
63
|
+
amp: "&",
|
|
64
|
+
lt: "<",
|
|
65
|
+
gt: ">",
|
|
66
|
+
quot: '"',
|
|
67
|
+
apos: "'",
|
|
68
|
+
nbsp: "\u00a0",
|
|
69
|
+
};
|
|
70
|
+
/** Turn the entities the editor emits back into the characters they stand for. */
|
|
71
|
+
function decodeHtmlEntities(text) {
|
|
72
|
+
return text.replace(/&(#x?[0-9a-f]+|[a-z]+);/gi, (whole, body) => {
|
|
73
|
+
if (body.startsWith("#")) {
|
|
74
|
+
const codePoint = body.startsWith("#x") || body.startsWith("#X")
|
|
75
|
+
? Number.parseInt(body.slice(2), 16)
|
|
76
|
+
: Number.parseInt(body.slice(1), 10);
|
|
77
|
+
return Number.isFinite(codePoint)
|
|
78
|
+
? String.fromCodePoint(codePoint)
|
|
79
|
+
: whole;
|
|
80
|
+
}
|
|
81
|
+
return HTML_ENTITIES[body.toLowerCase()] ?? whole;
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/** Pull the rows out of one page of the editor's pool database. */
|
|
85
|
+
export function parsePoolPage(html) {
|
|
86
|
+
const rows = [
|
|
87
|
+
...String(html).matchAll(/data-thing-id="(\d+)"([\s\S]*?)<\/tr>/g),
|
|
88
|
+
];
|
|
89
|
+
return rows.map(([, rawId, body]) => ({
|
|
90
|
+
thingId: Number(rawId),
|
|
91
|
+
values: [
|
|
92
|
+
...(body ?? "").matchAll(/<div class="[^"]*\btext\b[^"]*"[^>]*>([\s\S]*?)<\/div>/g),
|
|
93
|
+
].map((match) => decodeHtmlEntities(match[1]?.replace(/<[^>]*>/g, "") ?? "").trim()),
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
62
96
|
/**
|
|
63
97
|
* Learnable IDs are derived from the thing they were built from: the thing ID
|
|
64
98
|
* occupies the high bits and the low 16 bits identify the column pair the
|
|
@@ -72,6 +106,12 @@ const LEARNABLE_THING_SHIFT = 65536;
|
|
|
72
106
|
* accepted and 793 answers 414, so this leaves plenty of headroom.
|
|
73
107
|
*/
|
|
74
108
|
const LEARNABLE_BATCH_SIZE = 200;
|
|
109
|
+
/**
|
|
110
|
+
* Safety stop when walking the editor's pool database pages. At 20 rows a
|
|
111
|
+
* page this covers 20,000 rows; the loop normally exits on the first empty
|
|
112
|
+
* page.
|
|
113
|
+
*/
|
|
114
|
+
const POOL_PAGE_LIMIT = 1000;
|
|
75
115
|
/** /v1.25/dashboard/courses/ rejects a limit above this with a 400. */
|
|
76
116
|
const DASHBOARD_MAX_PAGE_SIZE = 9;
|
|
77
117
|
/**
|
|
@@ -141,6 +181,8 @@ export class MemriseClient {
|
|
|
141
181
|
authReady;
|
|
142
182
|
poolIdByLevel = new Map();
|
|
143
183
|
columnKeysByPool = new Map();
|
|
184
|
+
attributeKeysByPool = new Map();
|
|
185
|
+
poolIdByThing = new Map();
|
|
144
186
|
constructor(username, password, clientId = DEFAULT_CLIENT_ID) {
|
|
145
187
|
this.cookie = "";
|
|
146
188
|
this.csrfToken = null;
|
|
@@ -395,8 +437,125 @@ export class MemriseClient {
|
|
|
395
437
|
});
|
|
396
438
|
return response.data;
|
|
397
439
|
}
|
|
398
|
-
|
|
399
|
-
|
|
440
|
+
/** Fetch one pool row by its thing ID. */
|
|
441
|
+
async getThing(thingId) {
|
|
442
|
+
assertThingId(Number(thingId), "getThing");
|
|
443
|
+
await this.ensureAuthenticated();
|
|
444
|
+
const response = await this.client.get("/ajax/thing/get/", { params: { thing_id: thingId } });
|
|
445
|
+
const poolId = response.data?.thing?.pool_id;
|
|
446
|
+
if (poolId != null) {
|
|
447
|
+
this.poolIdByThing.set(String(thingId), poolId);
|
|
448
|
+
}
|
|
449
|
+
return response.data;
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Overwrite one cell of an existing thing, in a single request.
|
|
453
|
+
*
|
|
454
|
+
* `cell` may be a column (or attribute) label or the numeric key Memrise
|
|
455
|
+
* uses on the wire. Resolving a label needs the thing's pool, which is
|
|
456
|
+
* looked up unless `poolId` is given.
|
|
457
|
+
*/
|
|
458
|
+
async updateThingCell(thingId, cell, newValue, options = {}) {
|
|
459
|
+
assertThingId(Number(thingId), "updateThingCell");
|
|
460
|
+
await this.ensureAuthenticated();
|
|
461
|
+
const cellType = options.cellType ?? "column";
|
|
462
|
+
const cellId = await this.resolveCellId(thingId, cell, cellType, options);
|
|
463
|
+
const data = new URLSearchParams();
|
|
464
|
+
data.append("thing_id", String(thingId));
|
|
465
|
+
data.append("cell_id", cellId);
|
|
466
|
+
data.append("cell_type", cellType);
|
|
467
|
+
data.append("new_val", newValue);
|
|
468
|
+
const response = await this.client.post("/ajax/thing/cell/update/", data, {
|
|
469
|
+
headers: {
|
|
470
|
+
"content-type": "application/x-www-form-urlencoded; charset=UTF-8",
|
|
471
|
+
},
|
|
472
|
+
});
|
|
473
|
+
return response.data;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Overwrite several cells of one thing, then confirm the write.
|
|
477
|
+
*
|
|
478
|
+
* Memrise writes one cell per request, so cell names are all resolved
|
|
479
|
+
* before the first write; an unknown name fails the call rather than
|
|
480
|
+
* leaving the row half-updated.
|
|
481
|
+
*
|
|
482
|
+
* `/ajax/thing/cell/update/` answers `{"success": null}` whether or not
|
|
483
|
+
* it wrote, and drops writes under the account rate limit, so the row is
|
|
484
|
+
* read back once at the end and a mismatch is an error. `verify: false`
|
|
485
|
+
* skips that read.
|
|
486
|
+
*/
|
|
487
|
+
async updateThing(thingId, columns, options = {}) {
|
|
488
|
+
const id = assertThingId(Number(thingId), "updateThing");
|
|
489
|
+
const cellType = options.cellType ?? "column";
|
|
490
|
+
const verify = options.verify ?? true;
|
|
491
|
+
const entries = Object.entries(columns);
|
|
492
|
+
if (entries.length === 0) {
|
|
493
|
+
throw new Error(`updateThing needs at least one ${cellType} to write.`);
|
|
494
|
+
}
|
|
495
|
+
const resolved = {};
|
|
496
|
+
for (const [cell, value] of entries) {
|
|
497
|
+
resolved[await this.resolveCellId(thingId, cell, cellType, options)] =
|
|
498
|
+
value;
|
|
499
|
+
}
|
|
500
|
+
for (const [cellId, value] of Object.entries(resolved)) {
|
|
501
|
+
const response = await this.updateThingCell(thingId, cellId, value, {
|
|
502
|
+
cellType,
|
|
503
|
+
});
|
|
504
|
+
if (response?.success === false) {
|
|
505
|
+
throw new Error(`Memrise refused the update of ${cellType} ${cellId} on thing ${thingId}: ${JSON.stringify(response)}`);
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
if (!verify) {
|
|
509
|
+
return { success: true, thingId: id, updated: resolved, verified: false };
|
|
510
|
+
}
|
|
511
|
+
const { thing } = await this.getThing(thingId);
|
|
512
|
+
const written = (cellType === "column" ? thing.columns : thing.attributes) ?? {};
|
|
513
|
+
for (const [cellId, value] of Object.entries(resolved)) {
|
|
514
|
+
const cell = written[cellId];
|
|
515
|
+
if (cell?.val !== value) {
|
|
516
|
+
throw new Error(`Update of ${cellType} ${cellId} on thing ${thingId} did not stick: expected ${JSON.stringify(value)}, found ${JSON.stringify(cell?.val)}. Memrise reports nothing on this endpoint and drops writes under its rate limit, so retry rather than assuming the value is set.`);
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
return { success: true, thingId: id, updated: resolved, verified: true };
|
|
520
|
+
}
|
|
521
|
+
/** Which pool a thing lives in, so its cells can be named. */
|
|
522
|
+
async poolIdForThing(thingId) {
|
|
523
|
+
const key = String(thingId);
|
|
524
|
+
const cached = this.poolIdByThing.get(key);
|
|
525
|
+
if (cached !== undefined)
|
|
526
|
+
return cached;
|
|
527
|
+
const { thing } = await this.getThing(thingId);
|
|
528
|
+
if (thing?.pool_id == null) {
|
|
529
|
+
throw new Error(`Thing ${thingId} did not report a pool, so its cells cannot be resolved by name. Pass numeric cell keys instead.`);
|
|
530
|
+
}
|
|
531
|
+
this.poolIdByThing.set(key, thing.pool_id);
|
|
532
|
+
return thing.pool_id;
|
|
533
|
+
}
|
|
534
|
+
/** Translate a cell label into the numeric key Memrise wants. */
|
|
535
|
+
async resolveCellId(thingId, cell, cellType, options = {}) {
|
|
536
|
+
const raw = String(cell).trim();
|
|
537
|
+
if (/^\d+$/.test(raw))
|
|
538
|
+
return raw;
|
|
539
|
+
const poolId = options.poolId ?? (await this.poolIdForThing(thingId));
|
|
540
|
+
const byLabel = cellType === "column"
|
|
541
|
+
? await this.columnKeysFor(poolId)
|
|
542
|
+
: await this.attributeKeysFor(poolId);
|
|
543
|
+
const key = byLabel.get(raw.toLowerCase());
|
|
544
|
+
if (!key) {
|
|
545
|
+
throw new Error(`Pool ${poolId} has no ${cellType} named "${cell}". Available ${cellType}s: ${[...byLabel.keys()].join(", ")}.`);
|
|
546
|
+
}
|
|
547
|
+
return key;
|
|
548
|
+
}
|
|
549
|
+
/**
|
|
550
|
+
* Take a thing out of one level, leaving the pool row alone.
|
|
551
|
+
*
|
|
552
|
+
* This is a detach, not a delete: levels share a pool, so the row stays
|
|
553
|
+
* put and any other level using it is untouched. Rows detached from every
|
|
554
|
+
* level linger in the pool (see {@link findOrphanedThings});
|
|
555
|
+
* {@link deleteThing} destroys the row itself.
|
|
556
|
+
*/
|
|
557
|
+
async detachThingFromLevel(levelId, thingId) {
|
|
558
|
+
assertThingId(Number(thingId), "detachThingFromLevel");
|
|
400
559
|
await this.ensureAuthenticated();
|
|
401
560
|
const data = new URLSearchParams();
|
|
402
561
|
data.append("level_id", String(levelId));
|
|
@@ -408,6 +567,44 @@ export class MemriseClient {
|
|
|
408
567
|
});
|
|
409
568
|
return response.data;
|
|
410
569
|
}
|
|
570
|
+
/**
|
|
571
|
+
* @deprecated Use {@link detachThingFromLevel}. It detaches the row from
|
|
572
|
+
* one level; {@link deleteThing} is what destroys it.
|
|
573
|
+
*/
|
|
574
|
+
async deleteThingFromLevel(levelId, thingId) {
|
|
575
|
+
return this.detachThingFromLevel(levelId, thingId);
|
|
576
|
+
}
|
|
577
|
+
/**
|
|
578
|
+
* Destroy a pool row outright, removing it from every level at once.
|
|
579
|
+
*
|
|
580
|
+
* Unlike {@link detachThingFromLevel} this cannot be undone and is not
|
|
581
|
+
* scoped to one lesson: one pool backs every level of a course, so a row
|
|
582
|
+
* shared by several levels disappears from all of them.
|
|
583
|
+
* `getCourseItems(courseId)` reports each item's `levelIds`, which is
|
|
584
|
+
* what would be affected.
|
|
585
|
+
*/
|
|
586
|
+
async deleteThing(thingId) {
|
|
587
|
+
assertThingId(Number(thingId), "deleteThing");
|
|
588
|
+
await this.ensureAuthenticated();
|
|
589
|
+
const data = new URLSearchParams();
|
|
590
|
+
data.append("thing_id", String(thingId));
|
|
591
|
+
try {
|
|
592
|
+
const response = await this.client.post("/ajax/thing/delete/", data, {
|
|
593
|
+
headers: {
|
|
594
|
+
"content-type": "application/x-www-form-urlencoded; charset=UTF-8",
|
|
595
|
+
},
|
|
596
|
+
});
|
|
597
|
+
return response.data;
|
|
598
|
+
}
|
|
599
|
+
catch (error) {
|
|
600
|
+
// Deleting twice answers 404, which reads as a transport failure
|
|
601
|
+
// unless the caller is told what it means.
|
|
602
|
+
if (axios.isAxiosError(error) && error.response?.status === 404) {
|
|
603
|
+
throw new Error(`Thing ${thingId} does not exist, so it cannot be deleted. It may already be gone; this endpoint is not idempotent.`, { cause: error });
|
|
604
|
+
}
|
|
605
|
+
throw error;
|
|
606
|
+
}
|
|
607
|
+
}
|
|
411
608
|
/**
|
|
412
609
|
* Add one item to a course, addressed by the level number Memrise shows.
|
|
413
610
|
*/
|
|
@@ -496,6 +693,12 @@ export class MemriseClient {
|
|
|
496
693
|
});
|
|
497
694
|
return response.data;
|
|
498
695
|
}
|
|
696
|
+
/** The signed-in account, as `/v1.25/me/` reports it. */
|
|
697
|
+
async getMe() {
|
|
698
|
+
await this.ensureAuthenticated();
|
|
699
|
+
const response = await this.client.get("/v1.25/me/");
|
|
700
|
+
return response.data.profile;
|
|
701
|
+
}
|
|
499
702
|
async getMyCourses(limit = 9, offset = 0) {
|
|
500
703
|
await this.ensureAuthenticated();
|
|
501
704
|
const params = {
|
|
@@ -775,6 +978,19 @@ export class MemriseClient {
|
|
|
775
978
|
this.columnKeysByPool.set(key, byLabel);
|
|
776
979
|
return byLabel;
|
|
777
980
|
}
|
|
981
|
+
async attributeKeysFor(poolId) {
|
|
982
|
+
const key = String(poolId);
|
|
983
|
+
const cached = this.attributeKeysByPool.get(key);
|
|
984
|
+
if (cached)
|
|
985
|
+
return cached;
|
|
986
|
+
const { pool } = await this.getPool(poolId);
|
|
987
|
+
const byLabel = new Map();
|
|
988
|
+
for (const [attributeKey, config] of Object.entries(pool.attributes ?? {})) {
|
|
989
|
+
byLabel.set(config.label.trim().toLowerCase(), attributeKey);
|
|
990
|
+
}
|
|
991
|
+
this.attributeKeysByPool.set(key, byLabel);
|
|
992
|
+
return byLabel;
|
|
993
|
+
}
|
|
778
994
|
/**
|
|
779
995
|
* Translate a row keyed by column name into the numeric keys Memrise
|
|
780
996
|
* wants. Numeric keys pass through untouched, so callers that already
|
|
@@ -831,6 +1047,74 @@ export class MemriseClient {
|
|
|
831
1047
|
}
|
|
832
1048
|
return resolved;
|
|
833
1049
|
}
|
|
1050
|
+
/**
|
|
1051
|
+
* Every row in a course's pool, attached or not, with the levels each one
|
|
1052
|
+
* belongs to.
|
|
1053
|
+
*
|
|
1054
|
+
* This is a **scrape**, and the only way to see a pool whole: the levels
|
|
1055
|
+
* endpoint reports attached rows only, and `/ajax/pool/search/` cannot
|
|
1056
|
+
* list without a search term. It walks the editor's database pages, 20
|
|
1057
|
+
* rows each, so a large pool costs a request per 20 rows.
|
|
1058
|
+
*/
|
|
1059
|
+
async getPoolThings(courseId) {
|
|
1060
|
+
await this.ensureAuthenticated();
|
|
1061
|
+
const course = await this.getCourseById(courseId);
|
|
1062
|
+
if (!course) {
|
|
1063
|
+
throw new Error(`Course ${courseId} is not on your dashboard, so its pool pages cannot be read.`);
|
|
1064
|
+
}
|
|
1065
|
+
const levels = await this.getCourseLevelsIncludingEmpty(courseId, course.slug);
|
|
1066
|
+
const firstLevel = levels[0];
|
|
1067
|
+
if (!firstLevel) {
|
|
1068
|
+
throw new Error(`No levels found for course ${courseId}.`);
|
|
1069
|
+
}
|
|
1070
|
+
// A level can test one row through several learnables, so collect
|
|
1071
|
+
// level IDs in a set rather than one entry per learnable.
|
|
1072
|
+
const levelsByThing = new Map();
|
|
1073
|
+
for (const level of levels) {
|
|
1074
|
+
for (const learnableId of level.learnable_ids ?? []) {
|
|
1075
|
+
const thingId = thingIdFromLearnableId(learnableId);
|
|
1076
|
+
const attachedTo = levelsByThing.get(thingId) ?? new Set();
|
|
1077
|
+
attachedTo.add(level.id);
|
|
1078
|
+
levelsByThing.set(thingId, attachedTo);
|
|
1079
|
+
}
|
|
1080
|
+
}
|
|
1081
|
+
const things = [];
|
|
1082
|
+
const seen = new Set();
|
|
1083
|
+
for (let page = 1; page <= POOL_PAGE_LIMIT; page++) {
|
|
1084
|
+
const response = await this.client.get(`/course/${courseId}/${course.slug}/edit/database/${firstLevel.pool_id}/?page=${page}`);
|
|
1085
|
+
const rows = parsePoolPage(String(response.data));
|
|
1086
|
+
if (rows.length === 0)
|
|
1087
|
+
break;
|
|
1088
|
+
let fresh = 0;
|
|
1089
|
+
for (const row of rows) {
|
|
1090
|
+
// Pages can overlap as rows shift; the first sighting wins.
|
|
1091
|
+
if (seen.has(row.thingId))
|
|
1092
|
+
continue;
|
|
1093
|
+
seen.add(row.thingId);
|
|
1094
|
+
fresh++;
|
|
1095
|
+
things.push({
|
|
1096
|
+
thingId: asThingId(row.thingId),
|
|
1097
|
+
values: row.values,
|
|
1098
|
+
levelIds: [...(levelsByThing.get(row.thingId) ?? [])],
|
|
1099
|
+
});
|
|
1100
|
+
}
|
|
1101
|
+
// A page past the end may redirect back to one already read
|
|
1102
|
+
// instead of coming back empty, which would run to the cap.
|
|
1103
|
+
if (fresh === 0)
|
|
1104
|
+
break;
|
|
1105
|
+
}
|
|
1106
|
+
return things;
|
|
1107
|
+
}
|
|
1108
|
+
/**
|
|
1109
|
+
* Rows sitting in a course's pool that no level uses.
|
|
1110
|
+
*
|
|
1111
|
+
* Detaching leaves rows behind, so these accumulate. {@link deleteThing}
|
|
1112
|
+
* is what clears them.
|
|
1113
|
+
*/
|
|
1114
|
+
async findOrphanedThings(courseId) {
|
|
1115
|
+
const things = await this.getPoolThings(courseId);
|
|
1116
|
+
return things.filter((thing) => thing.levelIds.length === 0);
|
|
1117
|
+
}
|
|
834
1118
|
async getCourseColumns(courseId) {
|
|
835
1119
|
const levels = await this.getCourseLevels(courseId);
|
|
836
1120
|
if (levels.length === 0) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -69,6 +69,45 @@ export interface DeleteLevelResponse {
|
|
|
69
69
|
success: boolean;
|
|
70
70
|
[key: string]: unknown;
|
|
71
71
|
}
|
|
72
|
+
/** Which family of cell `/ajax/thing/cell/update/` should write to. */
|
|
73
|
+
export type ThingCellType = "column" | "attribute";
|
|
74
|
+
export interface UpdateThingCellResponse {
|
|
75
|
+
/** Always `null` in practice. The endpoint reports nothing about the write. */
|
|
76
|
+
success: boolean | null;
|
|
77
|
+
[key: string]: unknown;
|
|
78
|
+
}
|
|
79
|
+
export interface UpdateThingCellOptions {
|
|
80
|
+
/** Which family of cells to write. Defaults to `"column"`. */
|
|
81
|
+
cellType?: ThingCellType;
|
|
82
|
+
/** Pool the thing belongs to. Resolves cell names without a lookup. */
|
|
83
|
+
poolId?: string | number;
|
|
84
|
+
}
|
|
85
|
+
export interface UpdateThingOptions extends UpdateThingCellOptions {
|
|
86
|
+
/**
|
|
87
|
+
* Read the row back and confirm the new values are there.
|
|
88
|
+
*
|
|
89
|
+
* @default true
|
|
90
|
+
*/
|
|
91
|
+
verify?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export interface UpdateThingResponse {
|
|
94
|
+
success: boolean;
|
|
95
|
+
thingId: ThingId;
|
|
96
|
+
/** Cells written, in the order they were sent, keyed numerically. */
|
|
97
|
+
updated: Record<string, string>;
|
|
98
|
+
/** Whether the write was read back and confirmed. */
|
|
99
|
+
verified: boolean;
|
|
100
|
+
}
|
|
101
|
+
export interface GetThingResponse {
|
|
102
|
+
thing: MemriseThing;
|
|
103
|
+
[key: string]: unknown;
|
|
104
|
+
}
|
|
105
|
+
/** Response to detaching a thing from a level. */
|
|
106
|
+
export interface DetachThingResponse {
|
|
107
|
+
success: boolean;
|
|
108
|
+
[key: string]: unknown;
|
|
109
|
+
}
|
|
110
|
+
/** Response to destroying a thing outright. */
|
|
72
111
|
export interface DeleteThingResponse {
|
|
73
112
|
success: boolean;
|
|
74
113
|
[key: string]: unknown;
|
|
@@ -89,7 +128,7 @@ export interface ColumnPair {
|
|
|
89
128
|
definitionColumn: number;
|
|
90
129
|
}
|
|
91
130
|
export interface LevelThing {
|
|
92
|
-
/** Pool-authoring identity. This is what
|
|
131
|
+
/** Pool-authoring identity. This is what detachThingFromLevel needs. */
|
|
93
132
|
thingId: ThingId;
|
|
94
133
|
/** Course-facing identity the thing ID was derived from. */
|
|
95
134
|
learnableId: LearnableId;
|
|
@@ -98,6 +137,14 @@ export interface LevelThing {
|
|
|
98
137
|
itemType: string;
|
|
99
138
|
difficulty: string;
|
|
100
139
|
}
|
|
140
|
+
/** A pool row as the editor's database pages report it. */
|
|
141
|
+
export interface PoolThing {
|
|
142
|
+
thingId: ThingId;
|
|
143
|
+
/** Column values in column order, as displayed. Text only. */
|
|
144
|
+
values: string[];
|
|
145
|
+
/** Levels of the course this row is attached to. Empty means orphaned. */
|
|
146
|
+
levelIds: number[];
|
|
147
|
+
}
|
|
101
148
|
export interface PoolColumnConfig {
|
|
102
149
|
kind: string;
|
|
103
150
|
label: string;
|
|
@@ -214,5 +261,44 @@ export interface AuthWebResponse {
|
|
|
214
261
|
success?: boolean;
|
|
215
262
|
[key: string]: unknown;
|
|
216
263
|
}
|
|
264
|
+
export interface ProfileSubscription {
|
|
265
|
+
expiry: string;
|
|
266
|
+
is_active: boolean;
|
|
267
|
+
is_on_hold: boolean;
|
|
268
|
+
subscription_type: number;
|
|
269
|
+
}
|
|
270
|
+
export interface ProfileAvatar {
|
|
271
|
+
normal: string;
|
|
272
|
+
small: string;
|
|
273
|
+
large: string;
|
|
274
|
+
}
|
|
275
|
+
export interface ProfileStatistics {
|
|
276
|
+
points: number;
|
|
277
|
+
longest_streak: number;
|
|
278
|
+
num_things_flowered: number;
|
|
279
|
+
}
|
|
280
|
+
/** The signed-in account. */
|
|
281
|
+
export interface Profile {
|
|
282
|
+
id: number;
|
|
283
|
+
username: string;
|
|
284
|
+
email: string;
|
|
285
|
+
date_joined: string;
|
|
286
|
+
language: string;
|
|
287
|
+
timezone: string;
|
|
288
|
+
is_staff: boolean;
|
|
289
|
+
is_pro: boolean;
|
|
290
|
+
is_guest: boolean;
|
|
291
|
+
has_facebook: boolean;
|
|
292
|
+
has_password_set: boolean;
|
|
293
|
+
has_lapsed_pro: boolean;
|
|
294
|
+
pro_trial_ended: string | null;
|
|
295
|
+
subscription: ProfileSubscription;
|
|
296
|
+
avatar: ProfileAvatar;
|
|
297
|
+
statistics: ProfileStatistics;
|
|
298
|
+
[key: string]: unknown;
|
|
299
|
+
}
|
|
300
|
+
export interface GetMeResponse {
|
|
301
|
+
profile: Profile;
|
|
302
|
+
}
|
|
217
303
|
export {};
|
|
218
304
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"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"}
|