memrise 0.7.1 → 0.9.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 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,16 +96,57 @@ await client.setLevelTitle("level-id", "02/19");
92
96
  // Delete a level
93
97
  await client.deleteLevel("level-id");
94
98
 
95
- // Remove a thing from a level
96
- await client.deleteThingFromLevel("level-id", "thing-id");
99
+ // Set what a level prompts with and what it tests on
100
+ await client.setLevelColumnPair("level-id", {
101
+ learningColumn: 1,
102
+ definitionColumn: 2,
103
+ });
104
+
105
+ // Change a pool column's display and testing settings
106
+ await client.setPoolColumnSettings("pool-id", "Definition", {
107
+ keyboard: "abc def",
108
+ typingStrict: true,
109
+ });
110
+
111
+ // Edit an existing item, by column name or numeric key
112
+ await client.updateThing("thing-id", { Definition: "corrected" });
113
+
114
+ // Skip the name and pool lookups, and the verifying read-back
115
+ await client.updateThing(
116
+ "thing-id",
117
+ { "2": "corrected" },
118
+ { poolId: "pool-id", verify: false },
119
+ );
120
+
121
+ // Or one cell at a time
122
+ await client.updateThingCell("thing-id", "2", "corrected");
123
+ await client.updateThingCell("thing-id", "Pronunciation", "kon-ni-chi-wa", {
124
+ cellType: "attribute",
125
+ });
126
+
127
+ // Read a single row, every column, by thing ID
128
+ const { thing } = await client.getThing("thing-id");
97
129
 
98
- // List every thing in a level, with the thing IDs deleteThingFromLevel needs
130
+ // Take a thing out of a level. The pool row survives, so other levels using
131
+ // it are untouched.
132
+ await client.detachThingFromLevel("level-id", "thing-id");
133
+
134
+ // Destroy the pool row itself, removing it from every level at once
135
+ await client.deleteThing("thing-id");
136
+
137
+ // Rows left in the pool that no level uses. Detaching creates these.
138
+ const orphans = await client.findOrphanedThings("course-id");
139
+
140
+ // Or the whole pool, each row with the levels it belongs to
141
+ const poolThings = await client.getPoolThings("course-id");
142
+
143
+ // List every thing in a level, with the thing IDs the delete calls need
99
144
  const levelThings = await client.getLevelThings("course-id", "level-id");
100
145
 
101
146
  // Or just the thing IDs, with no extra request for the text
102
147
  const thingIds = await client.getLevelThingIds("course-id", "level-id");
103
148
 
104
- // Search pool. At least one non-empty column value is required -- Memrise has
149
+ // Search pool. At least one non-empty column value is required, because Memrise has
105
150
  // no "return everything" mode, use getLevelThings to enumerate instead.
106
151
  const results = await client.searchPool("pool-id", {
107
152
  "1": "search term",
@@ -121,6 +166,10 @@ new MemriseClient(username: string, password: string, clientId?: string)
121
166
 
122
167
  ### Methods
123
168
 
169
+ **Account:**
170
+
171
+ - `getMe()` - The signed-in account: id, username, email, locale, Pro status and lifetime statistics
172
+
124
173
  **Course Management:**
125
174
 
126
175
  - `getAllMyCourses(limit?)` - Every course on your dashboard, following pagination
@@ -153,15 +202,27 @@ new MemriseClient(username: string, password: string, clientId?: string)
153
202
  - `bulkAddToPool(poolId, rows, delimiter?)` - Bulk add items to a pool (not attached to a level)
154
203
  - `addLevelToCourse(courseId, poolId?, kind?)` - Add a new level to a course
155
204
  - `setLevelTitle(levelId, newTitle)` - Rename a level
205
+ - `setLevelColumnPair(levelId, pair)` - Set which column the level prompts with (`learningColumn`) and which it tests on (`definitionColumn`). Level-scoped, so levels sharing a pool can test different pairs
156
206
  - `deleteLevel(levelId)` - Delete a level
157
- - `deleteThingFromLevel(levelId, thingId)` - Remove a thing from a level
207
+ - `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)
208
+ - `deleteThing(thingId)` - Destroy a pool row outright. Removes it from every level at once and cannot be undone
209
+
210
+ **Editing Items:**
211
+
212
+ - `getThing(thingId)` - Read one pool row, every column and attribute
213
+ - `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)
214
+ - `updateThingCell(thingId, cell, newValue, options?)` - Overwrite one cell. Options: `cellType`, `poolId`
158
215
 
159
216
  **Pool Operations:**
160
217
 
161
218
  - `searchPool(poolId, columns, excludeThingIds?, originalOnly?)` - Search pool. Requires at least one non-empty column value; an empty filter throws (the endpoint answers 500)
162
- - `getPool(poolId)` - Get pool information
219
+ - `getPool(poolId)` - Get pool information, including each column's label and settings
220
+ - `setPoolColumnSettings(poolId, column, settings)` - Update a column's display and testing settings. Omitted fields keep their current value
163
221
  - `getPoolIdForLevelId(levelId)` - Pool behind a level, without needing the course ID
164
222
  - `resolveColumnKeys(poolId, row)` - Translate column names to numeric keys
223
+ - `resolveColumnKey(poolId, column)` - Translate one column name to its numeric key
224
+ - `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
225
+ - `findOrphanedThings(courseId)` - Pool rows no level uses
165
226
 
166
227
  ## Column names
167
228
 
@@ -208,9 +269,9 @@ silently returning the wrong level.
208
269
 
209
270
  Memrise exposes two identifiers for what looks like the same item:
210
271
 
211
- - **thing** — the row in the pool database. `deleteThingFromLevel`,
272
+ - **thing**: the row in the pool database. `detachThingFromLevel`,
212
273
  `searchPool` and the `addThing*` responses all speak thing IDs.
213
- - **learnable** — a thing *plus* the pair of columns being tested. Levels and
274
+ - **learnable**: a thing *plus* the pair of columns being tested. Levels and
214
275
  the course-facing APIs report learnable IDs.
215
276
 
216
277
  A learnable ID packs both together: the thing ID sits in the high bits and the
@@ -233,7 +294,7 @@ which:
233
294
  types. They erase to plain numbers at runtime, but passing one where the
234
295
  other belongs is a compile error. Use `asThingId()` / `asLearnableId()` to
235
296
  brand a number from elsewhere.
236
- - **So does the runtime.** Passing a learnable ID to `deleteThingFromLevel`
297
+ - **So does the runtime.** Passing a learnable ID to `detachThingFromLevel`
237
298
  throws immediately with the thing ID you probably meant, rather than failing
238
299
  somewhere downstream.
239
300
 
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, PoolColumnSettings, PoolThing, Profile, SearchPoolResponse, SetLevelColumnsResponse, SetLevelTitleResponse, SetPoolColumnSettingsResponse, 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
  *
@@ -21,6 +26,21 @@ export declare function thingIdFromLearnableId(learnableId: number): ThingId;
21
26
  * Which pair of columns a learnable tests, e.g. column 1 prompting column 2.
22
27
  */
23
28
  export declare function columnPairFromLearnableId(learnableId: number): ColumnPair;
29
+ /**
30
+ * Read a boolean column setting that the pool endpoint reports as a CSS class.
31
+ *
32
+ * `show_bigger` and `never_italicize` are accepted by
33
+ * `/ajax/pool/columns/set/` but come back only as entries in the column's
34
+ * `classes` list.
35
+ */
36
+ export declare function classFlag(column: {
37
+ classes?: string[];
38
+ }, className: string): boolean;
39
+ /**
40
+ * Resolve a column, given by label or numeric key, against columns already in
41
+ * hand. Numeric keys pass through; labels match case-insensitively.
42
+ */
43
+ export declare function columnKeyFromColumns(columns: Record<string, PoolColumnConfig>, column: string | number, poolId: string | number): string;
24
44
  /**
25
45
  * Build a learnable ID from a thing and the column pair being tested.
26
46
  *
@@ -33,7 +53,7 @@ export declare function learnableIdFromThingId(thingId: number, pair: ColumnPair
33
53
  /**
34
54
  * Guard a value that must be a thing ID.
35
55
  *
36
- * This exists for the error message, not for correctness -- callers that
56
+ * This exists for the error message, not for correctness. Callers that
37
57
  * mutate a level still verify membership. It turns the most common mistake
38
58
  * into an answer instead of a confusing failure downstream.
39
59
  */
@@ -47,6 +67,8 @@ export declare class MemriseClient {
47
67
  private authReady;
48
68
  private poolIdByLevel;
49
69
  private columnKeysByPool;
70
+ private attributeKeysByPool;
71
+ private poolIdByThing;
50
72
  constructor(username: string, password: string, clientId?: string);
51
73
  private authenticateWithCredentials;
52
74
  private mergeSetCookieCookies;
@@ -59,8 +81,78 @@ export declare class MemriseClient {
59
81
  addThingToLevel(levelId: string | number, columns: Record<string, string>): Promise<AddThingResponse>;
60
82
  addLevelToCourse(courseId: string | number, poolId?: string | number, kind?: string): Promise<AddLevelResponse>;
61
83
  setLevelTitle(levelId: string | number, newTitle: string): Promise<SetLevelTitleResponse>;
84
+ /**
85
+ * Set which pair of columns a level tests.
86
+ *
87
+ * `learningColumn` is what the learner is prompted with, `definitionColumn`
88
+ * is what they are tested on. The pairing belongs to the level, not the
89
+ * pool, so levels sharing a pool can test different pairs.
90
+ *
91
+ * Existing learnable IDs encode the old pair, so read the level again after
92
+ * changing it rather than reusing IDs from before the call.
93
+ */
94
+ setLevelColumnPair(levelId: string | number, pair: ColumnPair): Promise<SetLevelColumnsResponse>;
95
+ /**
96
+ * Update a pool column's display and testing settings.
97
+ *
98
+ * The endpoint replaces the whole column config, so omitted fields are
99
+ * read back from the pool and resent unchanged. The column may be given by
100
+ * label or by numeric key, and is resolved against that same read rather
101
+ * than the name cache, which a concurrent rename could have left stale.
102
+ */
103
+ setPoolColumnSettings(poolId: string | number, column: string | number, settings: PoolColumnSettings): Promise<SetPoolColumnSettingsResponse>;
62
104
  deleteLevel(levelId: string | number): Promise<DeleteLevelResponse>;
63
- deleteThingFromLevel(levelId: string | number, thingId: string | number): Promise<DeleteThingResponse>;
105
+ /** Fetch one pool row by its thing ID. */
106
+ getThing(thingId: string | number): Promise<GetThingResponse>;
107
+ /**
108
+ * Overwrite one cell of an existing thing, in a single request.
109
+ *
110
+ * `cell` may be a column (or attribute) label or the numeric key Memrise
111
+ * uses on the wire. Resolving a label needs the thing's pool, which is
112
+ * looked up unless `poolId` is given.
113
+ */
114
+ updateThingCell(thingId: string | number, cell: string | number, newValue: string, options?: UpdateThingCellOptions): Promise<UpdateThingCellResponse>;
115
+ /**
116
+ * Overwrite several cells of one thing, then confirm the write.
117
+ *
118
+ * Memrise writes one cell per request, so cell names are all resolved
119
+ * before the first write; an unknown name fails the call rather than
120
+ * leaving the row half-updated.
121
+ *
122
+ * `/ajax/thing/cell/update/` answers `{"success": null}` whether or not
123
+ * it wrote, and drops writes under the account rate limit, so the row is
124
+ * read back once at the end and a mismatch is an error. `verify: false`
125
+ * skips that read.
126
+ */
127
+ updateThing(thingId: string | number, columns: Record<string, string>, options?: UpdateThingOptions): Promise<UpdateThingResponse>;
128
+ /** Which pool a thing lives in, so its cells can be named. */
129
+ private poolIdForThing;
130
+ /** Translate a cell label into the numeric key Memrise wants. */
131
+ private resolveCellId;
132
+ /**
133
+ * Take a thing out of one level, leaving the pool row alone.
134
+ *
135
+ * This is a detach, not a delete: levels share a pool, so the row stays
136
+ * put and any other level using it is untouched. Rows detached from every
137
+ * level linger in the pool (see {@link findOrphanedThings});
138
+ * {@link deleteThing} destroys the row itself.
139
+ */
140
+ detachThingFromLevel(levelId: string | number, thingId: string | number): Promise<DetachThingResponse>;
141
+ /**
142
+ * @deprecated Use {@link detachThingFromLevel}. It detaches the row from
143
+ * one level; {@link deleteThing} is what destroys it.
144
+ */
145
+ deleteThingFromLevel(levelId: string | number, thingId: string | number): Promise<DetachThingResponse>;
146
+ /**
147
+ * Destroy a pool row outright, removing it from every level at once.
148
+ *
149
+ * Unlike {@link detachThingFromLevel} this cannot be undone and is not
150
+ * scoped to one lesson: one pool backs every level of a course, so a row
151
+ * shared by several levels disappears from all of them.
152
+ * `getCourseItems(courseId)` reports each item's `levelIds`, which is
153
+ * what would be affected.
154
+ */
155
+ deleteThing(thingId: string | number): Promise<DeleteThingResponse>;
64
156
  /**
65
157
  * Add one item to a course, addressed by the level number Memrise shows.
66
158
  */
@@ -73,6 +165,8 @@ export declare class MemriseClient {
73
165
  bulkAddToCourse(courseId: string | number, rows: BulkThingRows, levelNumber?: number, delimiter?: BulkWordDelimiter): Promise<BulkAddResponse>;
74
166
  searchPool(poolId: string | number, columns: Record<string, string>, excludeThingIds?: string[], originalOnly?: boolean): Promise<SearchPoolResponse>;
75
167
  getPool(poolId: string | number): Promise<GetPoolResponse>;
168
+ /** The signed-in account, as `/v1.25/me/` reports it. */
169
+ getMe(): Promise<Profile>;
76
170
  getMyCourses(limit?: number, offset?: number): Promise<GetDashboardCoursesResponse>;
77
171
  /**
78
172
  * Every course on your dashboard, following pagination.
@@ -89,8 +183,8 @@ export declare class MemriseClient {
89
183
  /**
90
184
  * Every item in a course, each tagged with the level it sits in.
91
185
  *
92
- * The level mapping is free -- it comes from the same levels response used
93
- * to collect the IDs -- and without it the result is a dead end, since
186
+ * The level mapping is free, coming from the same levels response used
187
+ * to collect the IDs, and without it the result is a dead end, since
94
188
  * removing an item needs the level it belongs to.
95
189
  */
96
190
  getCourseItems(courseId: string | number, limit?: number): Promise<CourseItem[]>;
@@ -146,7 +240,7 @@ export declare class MemriseClient {
146
240
  *
147
241
  * The levels endpoint is course-scoped, so this consults a cache that every
148
242
  * getCourseLevels call populates, and falls back to sweeping the courses on
149
- * your dashboard. All JSON -- no page scraping.
243
+ * your dashboard. All JSON, no page scraping.
150
244
  *
151
245
  * A level with no items is invisible to that endpoint. Levels created
152
246
  * through addLevelToCourse are cached at creation, but for anything else,
@@ -154,6 +248,12 @@ export declare class MemriseClient {
154
248
  */
155
249
  getPoolIdForLevelId(levelId: string | number): Promise<number>;
156
250
  private columnKeysFor;
251
+ private attributeKeysFor;
252
+ /**
253
+ * Translate a single column, given by label or numeric key, into the
254
+ * numeric key Memrise wants. Numeric keys pass through without a lookup.
255
+ */
256
+ resolveColumnKey(poolId: string | number, column: string | number): Promise<string>;
157
257
  /**
158
258
  * Translate a row keyed by column name into the numeric keys Memrise
159
259
  * wants. Numeric keys pass through untouched, so callers that already
@@ -168,6 +268,23 @@ export declare class MemriseClient {
168
268
  private resolveRowsForLevel;
169
269
  /** Resolve named columns in bulk rows against a pool. */
170
270
  private resolveRowsForPool;
271
+ /**
272
+ * Every row in a course's pool, attached or not, with the levels each one
273
+ * belongs to.
274
+ *
275
+ * This is a **scrape**, and the only way to see a pool whole: the levels
276
+ * endpoint reports attached rows only, and `/ajax/pool/search/` cannot
277
+ * list without a search term. It walks the editor's database pages, 20
278
+ * rows each, so a large pool costs a request per 20 rows.
279
+ */
280
+ getPoolThings(courseId: string | number): Promise<PoolThing[]>;
281
+ /**
282
+ * Rows sitting in a course's pool that no level uses.
283
+ *
284
+ * Detaching leaves rows behind, so these accumulate. {@link deleteThing}
285
+ * is what clears them.
286
+ */
287
+ findOrphanedThings(courseId: string | number): Promise<PoolThing[]>;
171
288
  getCourseColumns(courseId: string | number): Promise<Record<string, PoolColumnConfig>>;
172
289
  }
173
290
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
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
  /**
@@ -93,6 +133,32 @@ export function columnPairFromLearnableId(learnableId) {
93
133
  definitionColumn: pair & 0xff,
94
134
  };
95
135
  }
136
+ /**
137
+ * Read a boolean column setting that the pool endpoint reports as a CSS class.
138
+ *
139
+ * `show_bigger` and `never_italicize` are accepted by
140
+ * `/ajax/pool/columns/set/` but come back only as entries in the column's
141
+ * `classes` list.
142
+ */
143
+ export function classFlag(column, className) {
144
+ return (column.classes ?? []).includes(className);
145
+ }
146
+ /**
147
+ * Resolve a column, given by label or numeric key, against columns already in
148
+ * hand. Numeric keys pass through; labels match case-insensitively.
149
+ */
150
+ export function columnKeyFromColumns(columns, column, poolId) {
151
+ const raw = String(column).trim();
152
+ if (/^\d+$/.test(raw))
153
+ return raw;
154
+ const wanted = raw.toLowerCase();
155
+ for (const [key, config] of Object.entries(columns)) {
156
+ if (config.label.trim().toLowerCase() === wanted)
157
+ return key;
158
+ }
159
+ const labels = Object.values(columns).map((config) => config.label.trim().toLowerCase());
160
+ throw new Error(`Pool ${poolId} has no column named "${column}". Available columns: ${labels.join(", ")}.`);
161
+ }
96
162
  /**
97
163
  * Build a learnable ID from a thing and the column pair being tested.
98
164
  *
@@ -115,7 +181,7 @@ const MAX_PLAUSIBLE_THING_ID = 0xffffffff;
115
181
  /**
116
182
  * Guard a value that must be a thing ID.
117
183
  *
118
- * This exists for the error message, not for correctness -- callers that
184
+ * This exists for the error message, not for correctness. Callers that
119
185
  * mutate a level still verify membership. It turns the most common mistake
120
186
  * into an answer instead of a confusing failure downstream.
121
187
  */
@@ -141,6 +207,8 @@ export class MemriseClient {
141
207
  authReady;
142
208
  poolIdByLevel = new Map();
143
209
  columnKeysByPool = new Map();
210
+ attributeKeysByPool = new Map();
211
+ poolIdByThing = new Map();
144
212
  constructor(username, password, clientId = DEFAULT_CLIENT_ID) {
145
213
  this.cookie = "";
146
214
  this.csrfToken = null;
@@ -384,6 +452,84 @@ export class MemriseClient {
384
452
  });
385
453
  return response.data;
386
454
  }
455
+ /**
456
+ * Set which pair of columns a level tests.
457
+ *
458
+ * `learningColumn` is what the learner is prompted with, `definitionColumn`
459
+ * is what they are tested on. The pairing belongs to the level, not the
460
+ * pool, so levels sharing a pool can test different pairs.
461
+ *
462
+ * Existing learnable IDs encode the old pair, so read the level again after
463
+ * changing it rather than reusing IDs from before the call.
464
+ */
465
+ async setLevelColumnPair(levelId, pair) {
466
+ await this.ensureAuthenticated();
467
+ const data = new URLSearchParams();
468
+ data.append("level_id", String(levelId));
469
+ data.append("column_a", String(pair.learningColumn));
470
+ data.append("column_b", String(pair.definitionColumn));
471
+ const response = await this.client.post("/ajax/level/set_columns/", data, {
472
+ headers: {
473
+ "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
474
+ },
475
+ });
476
+ return response.data;
477
+ }
478
+ /**
479
+ * Update a pool column's display and testing settings.
480
+ *
481
+ * The endpoint replaces the whole column config, so omitted fields are
482
+ * read back from the pool and resent unchanged. The column may be given by
483
+ * label or by numeric key, and is resolved against that same read rather
484
+ * than the name cache, which a concurrent rename could have left stale.
485
+ */
486
+ async setPoolColumnSettings(poolId, column, settings) {
487
+ await this.ensureAuthenticated();
488
+ const { pool } = await this.getPool(poolId);
489
+ const columnKey = columnKeyFromColumns(pool.columns, column, poolId);
490
+ const current = pool.columns[columnKey];
491
+ if (!current) {
492
+ throw new Error(`Pool ${poolId} has no column ${columnKey}. Available columns: ${Object.keys(pool.columns).join(", ")}.`);
493
+ }
494
+ const merged = {
495
+ label: settings.label ?? current.label,
496
+ keyboard: settings.keyboard ?? current.keyboard,
497
+ show_bigger: settings.showBigger ?? classFlag(current, "bigger"),
498
+ never_italicize: settings.neverItalicize ?? classFlag(current, "unitalic"),
499
+ typing_disabled: settings.typingDisabled ?? current.typing_disabled,
500
+ tapping_disabled: settings.tappingDisabled ?? current.tapping_disabled,
501
+ typing_strict: settings.typingStrict ?? current.typing_strict,
502
+ always_show: settings.alwaysShow ?? current.always_show,
503
+ show_after_tests: settings.showAfterTests ?? current.show_after_tests,
504
+ };
505
+ const data = new URLSearchParams();
506
+ data.append("pool_id", String(poolId));
507
+ data.append("column_key", columnKey);
508
+ // The pool shape is inferred, not contracted. A missing value would
509
+ // otherwise reach the wire as the string "undefined", and this endpoint
510
+ // replaces the whole config rather than patching it.
511
+ data.append("label", merged.label ?? "");
512
+ data.append("keyboard", merged.keyboard ?? "");
513
+ for (const flag of [
514
+ "show_bigger",
515
+ "never_italicize",
516
+ "typing_disabled",
517
+ "tapping_disabled",
518
+ "typing_strict",
519
+ "always_show",
520
+ "show_after_tests",
521
+ ]) {
522
+ data.append(flag, merged[flag] ? "true" : "false");
523
+ }
524
+ const response = await this.client.post("/ajax/pool/columns/set/", data, {
525
+ headers: {
526
+ "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
527
+ },
528
+ });
529
+ // The label may have changed, so the cached name lookup is stale.
530
+ this.columnKeysByPool.delete(String(poolId));
531
+ return response.data;
532
+ }
387
533
  async deleteLevel(levelId) {
388
534
  await this.ensureAuthenticated();
389
535
  const data = new URLSearchParams();
@@ -395,8 +541,125 @@ export class MemriseClient {
395
541
  });
396
542
  return response.data;
397
543
  }
398
- async deleteThingFromLevel(levelId, thingId) {
399
- assertThingId(Number(thingId), "deleteThingFromLevel");
544
+ /** Fetch one pool row by its thing ID. */
545
+ async getThing(thingId) {
546
+ assertThingId(Number(thingId), "getThing");
547
+ await this.ensureAuthenticated();
548
+ const response = await this.client.get("/ajax/thing/get/", { params: { thing_id: thingId } });
549
+ const poolId = response.data?.thing?.pool_id;
550
+ if (poolId != null) {
551
+ this.poolIdByThing.set(String(thingId), poolId);
552
+ }
553
+ return response.data;
554
+ }
555
+ /**
556
+ * Overwrite one cell of an existing thing, in a single request.
557
+ *
558
+ * `cell` may be a column (or attribute) label or the numeric key Memrise
559
+ * uses on the wire. Resolving a label needs the thing's pool, which is
560
+ * looked up unless `poolId` is given.
561
+ */
562
+ async updateThingCell(thingId, cell, newValue, options = {}) {
563
+ assertThingId(Number(thingId), "updateThingCell");
564
+ await this.ensureAuthenticated();
565
+ const cellType = options.cellType ?? "column";
566
+ const cellId = await this.resolveCellId(thingId, cell, cellType, options);
567
+ const data = new URLSearchParams();
568
+ data.append("thing_id", String(thingId));
569
+ data.append("cell_id", cellId);
570
+ data.append("cell_type", cellType);
571
+ data.append("new_val", newValue);
572
+ const response = await this.client.post("/ajax/thing/cell/update/", data, {
573
+ headers: {
574
+ "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
575
+ },
576
+ });
577
+ return response.data;
578
+ }
579
+ /**
580
+ * Overwrite several cells of one thing, then confirm the write.
581
+ *
582
+ * Memrise writes one cell per request, so cell names are all resolved
583
+ * before the first write; an unknown name fails the call rather than
584
+ * leaving the row half-updated.
585
+ *
586
+ * `/ajax/thing/cell/update/` answers `{"success": null}` whether or not
587
+ * it wrote, and drops writes under the account rate limit, so the row is
588
+ * read back once at the end and a mismatch is an error. `verify: false`
589
+ * skips that read.
590
+ */
591
+ async updateThing(thingId, columns, options = {}) {
592
+ const id = assertThingId(Number(thingId), "updateThing");
593
+ const cellType = options.cellType ?? "column";
594
+ const verify = options.verify ?? true;
595
+ const entries = Object.entries(columns);
596
+ if (entries.length === 0) {
597
+ throw new Error(`updateThing needs at least one ${cellType} to write.`);
598
+ }
599
+ const resolved = {};
600
+ for (const [cell, value] of entries) {
601
+ resolved[await this.resolveCellId(thingId, cell, cellType, options)] =
602
+ value;
603
+ }
604
+ for (const [cellId, value] of Object.entries(resolved)) {
605
+ const response = await this.updateThingCell(thingId, cellId, value, {
606
+ cellType,
607
+ });
608
+ if (response?.success === false) {
609
+ throw new Error(`Memrise refused the update of ${cellType} ${cellId} on thing ${thingId}: ${JSON.stringify(response)}`);
610
+ }
611
+ }
612
+ if (!verify) {
613
+ return { success: true, thingId: id, updated: resolved, verified: false };
614
+ }
615
+ const { thing } = await this.getThing(thingId);
616
+ const written = (cellType === "column" ? thing.columns : thing.attributes) ?? {};
617
+ for (const [cellId, value] of Object.entries(resolved)) {
618
+ const cell = written[cellId];
619
+ if (cell?.val !== value) {
620
+ 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.`);
621
+ }
622
+ }
623
+ return { success: true, thingId: id, updated: resolved, verified: true };
624
+ }
625
+ /** Which pool a thing lives in, so its cells can be named. */
626
+ async poolIdForThing(thingId) {
627
+ const key = String(thingId);
628
+ const cached = this.poolIdByThing.get(key);
629
+ if (cached !== undefined)
630
+ return cached;
631
+ const { thing } = await this.getThing(thingId);
632
+ if (thing?.pool_id == null) {
633
+ throw new Error(`Thing ${thingId} did not report a pool, so its cells cannot be resolved by name. Pass numeric cell keys instead.`);
634
+ }
635
+ this.poolIdByThing.set(key, thing.pool_id);
636
+ return thing.pool_id;
637
+ }
638
+ /** Translate a cell label into the numeric key Memrise wants. */
639
+ async resolveCellId(thingId, cell, cellType, options = {}) {
640
+ const raw = String(cell).trim();
641
+ if (/^\d+$/.test(raw))
642
+ return raw;
643
+ const poolId = options.poolId ?? (await this.poolIdForThing(thingId));
644
+ const byLabel = cellType === "column"
645
+ ? await this.columnKeysFor(poolId)
646
+ : await this.attributeKeysFor(poolId);
647
+ const key = byLabel.get(raw.toLowerCase());
648
+ if (!key) {
649
+ throw new Error(`Pool ${poolId} has no ${cellType} named "${cell}". Available ${cellType}s: ${[...byLabel.keys()].join(", ")}.`);
650
+ }
651
+ return key;
652
+ }
653
+ /**
654
+ * Take a thing out of one level, leaving the pool row alone.
655
+ *
656
+ * This is a detach, not a delete: levels share a pool, so the row stays
657
+ * put and any other level using it is untouched. Rows detached from every
658
+ * level linger in the pool (see {@link findOrphanedThings});
659
+ * {@link deleteThing} destroys the row itself.
660
+ */
661
+ async detachThingFromLevel(levelId, thingId) {
662
+ assertThingId(Number(thingId), "detachThingFromLevel");
400
663
  await this.ensureAuthenticated();
401
664
  const data = new URLSearchParams();
402
665
  data.append("level_id", String(levelId));
@@ -408,6 +671,44 @@ export class MemriseClient {
408
671
  });
409
672
  return response.data;
410
673
  }
674
+ /**
675
+ * @deprecated Use {@link detachThingFromLevel}. It detaches the row from
676
+ * one level; {@link deleteThing} is what destroys it.
677
+ */
678
+ async deleteThingFromLevel(levelId, thingId) {
679
+ return this.detachThingFromLevel(levelId, thingId);
680
+ }
681
+ /**
682
+ * Destroy a pool row outright, removing it from every level at once.
683
+ *
684
+ * Unlike {@link detachThingFromLevel} this cannot be undone and is not
685
+ * scoped to one lesson: one pool backs every level of a course, so a row
686
+ * shared by several levels disappears from all of them.
687
+ * `getCourseItems(courseId)` reports each item's `levelIds`, which is
688
+ * what would be affected.
689
+ */
690
+ async deleteThing(thingId) {
691
+ assertThingId(Number(thingId), "deleteThing");
692
+ await this.ensureAuthenticated();
693
+ const data = new URLSearchParams();
694
+ data.append("thing_id", String(thingId));
695
+ try {
696
+ const response = await this.client.post("/ajax/thing/delete/", data, {
697
+ headers: {
698
+ "content-type": "application/x-www-form-urlencoded; charset=UTF-8",
699
+ },
700
+ });
701
+ return response.data;
702
+ }
703
+ catch (error) {
704
+ // Deleting twice answers 404, which reads as a transport failure
705
+ // unless the caller is told what it means.
706
+ if (axios.isAxiosError(error) && error.response?.status === 404) {
707
+ 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 });
708
+ }
709
+ throw error;
710
+ }
711
+ }
411
712
  /**
412
713
  * Add one item to a course, addressed by the level number Memrise shows.
413
714
  */
@@ -496,6 +797,12 @@ export class MemriseClient {
496
797
  });
497
798
  return response.data;
498
799
  }
800
+ /** The signed-in account, as `/v1.25/me/` reports it. */
801
+ async getMe() {
802
+ await this.ensureAuthenticated();
803
+ const response = await this.client.get("/v1.25/me/");
804
+ return response.data.profile;
805
+ }
499
806
  async getMyCourses(limit = 9, offset = 0) {
500
807
  await this.ensureAuthenticated();
501
808
  const params = {
@@ -600,8 +907,8 @@ export class MemriseClient {
600
907
  /**
601
908
  * Every item in a course, each tagged with the level it sits in.
602
909
  *
603
- * The level mapping is free -- it comes from the same levels response used
604
- * to collect the IDs -- and without it the result is a dead end, since
910
+ * The level mapping is free, coming from the same levels response used
911
+ * to collect the IDs, and without it the result is a dead end, since
605
912
  * removing an item needs the level it belongs to.
606
913
  */
607
914
  async getCourseItems(courseId, limit) {
@@ -743,7 +1050,7 @@ export class MemriseClient {
743
1050
  *
744
1051
  * The levels endpoint is course-scoped, so this consults a cache that every
745
1052
  * getCourseLevels call populates, and falls back to sweeping the courses on
746
- * your dashboard. All JSON -- no page scraping.
1053
+ * your dashboard. All JSON, no page scraping.
747
1054
  *
748
1055
  * A level with no items is invisible to that endpoint. Levels created
749
1056
  * through addLevelToCourse are cached at creation, but for anything else,
@@ -775,6 +1082,34 @@ export class MemriseClient {
775
1082
  this.columnKeysByPool.set(key, byLabel);
776
1083
  return byLabel;
777
1084
  }
1085
+ async attributeKeysFor(poolId) {
1086
+ const key = String(poolId);
1087
+ const cached = this.attributeKeysByPool.get(key);
1088
+ if (cached)
1089
+ return cached;
1090
+ const { pool } = await this.getPool(poolId);
1091
+ const byLabel = new Map();
1092
+ for (const [attributeKey, config] of Object.entries(pool.attributes ?? {})) {
1093
+ byLabel.set(config.label.trim().toLowerCase(), attributeKey);
1094
+ }
1095
+ this.attributeKeysByPool.set(key, byLabel);
1096
+ return byLabel;
1097
+ }
1098
+ /**
1099
+ * Translate a single column, given by label or numeric key, into the
1100
+ * numeric key Memrise wants. Numeric keys pass through without a lookup.
1101
+ */
1102
+ async resolveColumnKey(poolId, column) {
1103
+ const raw = String(column).trim();
1104
+ if (/^\d+$/.test(raw))
1105
+ return raw;
1106
+ const byLabel = await this.columnKeysFor(poolId);
1107
+ const key = byLabel.get(raw.toLowerCase());
1108
+ if (!key) {
1109
+ throw new Error(`Pool ${poolId} has no column named "${column}". Available columns: ${[...byLabel.keys()].join(", ")}.`);
1110
+ }
1111
+ return key;
1112
+ }
778
1113
  /**
779
1114
  * Translate a row keyed by column name into the numeric keys Memrise
780
1115
  * wants. Numeric keys pass through untouched, so callers that already
@@ -831,6 +1166,74 @@ export class MemriseClient {
831
1166
  }
832
1167
  return resolved;
833
1168
  }
1169
+ /**
1170
+ * Every row in a course's pool, attached or not, with the levels each one
1171
+ * belongs to.
1172
+ *
1173
+ * This is a **scrape**, and the only way to see a pool whole: the levels
1174
+ * endpoint reports attached rows only, and `/ajax/pool/search/` cannot
1175
+ * list without a search term. It walks the editor's database pages, 20
1176
+ * rows each, so a large pool costs a request per 20 rows.
1177
+ */
1178
+ async getPoolThings(courseId) {
1179
+ await this.ensureAuthenticated();
1180
+ const course = await this.getCourseById(courseId);
1181
+ if (!course) {
1182
+ throw new Error(`Course ${courseId} is not on your dashboard, so its pool pages cannot be read.`);
1183
+ }
1184
+ const levels = await this.getCourseLevelsIncludingEmpty(courseId, course.slug);
1185
+ const firstLevel = levels[0];
1186
+ if (!firstLevel) {
1187
+ throw new Error(`No levels found for course ${courseId}.`);
1188
+ }
1189
+ // A level can test one row through several learnables, so collect
1190
+ // level IDs in a set rather than one entry per learnable.
1191
+ const levelsByThing = new Map();
1192
+ for (const level of levels) {
1193
+ for (const learnableId of level.learnable_ids ?? []) {
1194
+ const thingId = thingIdFromLearnableId(learnableId);
1195
+ const attachedTo = levelsByThing.get(thingId) ?? new Set();
1196
+ attachedTo.add(level.id);
1197
+ levelsByThing.set(thingId, attachedTo);
1198
+ }
1199
+ }
1200
+ const things = [];
1201
+ const seen = new Set();
1202
+ for (let page = 1; page <= POOL_PAGE_LIMIT; page++) {
1203
+ const response = await this.client.get(`/course/${courseId}/${course.slug}/edit/database/${firstLevel.pool_id}/?page=${page}`);
1204
+ const rows = parsePoolPage(String(response.data));
1205
+ if (rows.length === 0)
1206
+ break;
1207
+ let fresh = 0;
1208
+ for (const row of rows) {
1209
+ // Pages can overlap as rows shift; the first sighting wins.
1210
+ if (seen.has(row.thingId))
1211
+ continue;
1212
+ seen.add(row.thingId);
1213
+ fresh++;
1214
+ things.push({
1215
+ thingId: asThingId(row.thingId),
1216
+ values: row.values,
1217
+ levelIds: [...(levelsByThing.get(row.thingId) ?? [])],
1218
+ });
1219
+ }
1220
+ // A page past the end may redirect back to one already read
1221
+ // instead of coming back empty, which would run to the cap.
1222
+ if (fresh === 0)
1223
+ break;
1224
+ }
1225
+ return things;
1226
+ }
1227
+ /**
1228
+ * Rows sitting in a course's pool that no level uses.
1229
+ *
1230
+ * Detaching leaves rows behind, so these accumulate. {@link deleteThing}
1231
+ * is what clears them.
1232
+ */
1233
+ async findOrphanedThings(courseId) {
1234
+ const things = await this.getPoolThings(courseId);
1235
+ return things.filter((thing) => thing.levelIds.length === 0);
1236
+ }
834
1237
  async getCourseColumns(courseId) {
835
1238
  const levels = await this.getCourseLevels(courseId);
836
1239
  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
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Memrise has two ID namespaces that are easy to confuse. These brands are
3
- * compile-time only -- they erase to plain numbers at runtime -- but they stop
3
+ * compile-time only (they erase to plain numbers at runtime), but they stop
4
4
  * a learnable ID being passed where a thing ID belongs.
5
5
  *
6
6
  * IDs handed back by this SDK are already branded. To brand a number from
@@ -69,6 +69,49 @@ export interface DeleteLevelResponse {
69
69
  success: boolean;
70
70
  [key: string]: unknown;
71
71
  }
72
+ export interface SetLevelColumnsResponse {
73
+ success: boolean;
74
+ [key: string]: unknown;
75
+ }
76
+ /** Which family of cell `/ajax/thing/cell/update/` should write to. */
77
+ export type ThingCellType = "column" | "attribute";
78
+ export interface UpdateThingCellResponse {
79
+ /** Always `null` in practice. The endpoint reports nothing about the write. */
80
+ success: boolean | null;
81
+ [key: string]: unknown;
82
+ }
83
+ export interface UpdateThingCellOptions {
84
+ /** Which family of cells to write. Defaults to `"column"`. */
85
+ cellType?: ThingCellType;
86
+ /** Pool the thing belongs to. Resolves cell names without a lookup. */
87
+ poolId?: string | number;
88
+ }
89
+ export interface UpdateThingOptions extends UpdateThingCellOptions {
90
+ /**
91
+ * Read the row back and confirm the new values are there.
92
+ *
93
+ * @default true
94
+ */
95
+ verify?: boolean;
96
+ }
97
+ export interface UpdateThingResponse {
98
+ success: boolean;
99
+ thingId: ThingId;
100
+ /** Cells written, in the order they were sent, keyed numerically. */
101
+ updated: Record<string, string>;
102
+ /** Whether the write was read back and confirmed. */
103
+ verified: boolean;
104
+ }
105
+ export interface GetThingResponse {
106
+ thing: MemriseThing;
107
+ [key: string]: unknown;
108
+ }
109
+ /** Response to detaching a thing from a level. */
110
+ export interface DetachThingResponse {
111
+ success: boolean;
112
+ [key: string]: unknown;
113
+ }
114
+ /** Response to destroying a thing outright. */
72
115
  export interface DeleteThingResponse {
73
116
  success: boolean;
74
117
  [key: string]: unknown;
@@ -89,7 +132,7 @@ export interface ColumnPair {
89
132
  definitionColumn: number;
90
133
  }
91
134
  export interface LevelThing {
92
- /** Pool-authoring identity. This is what deleteThingFromLevel needs. */
135
+ /** Pool-authoring identity. This is what detachThingFromLevel needs. */
93
136
  thingId: ThingId;
94
137
  /** Course-facing identity the thing ID was derived from. */
95
138
  learnableId: LearnableId;
@@ -98,6 +141,14 @@ export interface LevelThing {
98
141
  itemType: string;
99
142
  difficulty: string;
100
143
  }
144
+ /** A pool row as the editor's database pages report it. */
145
+ export interface PoolThing {
146
+ thingId: ThingId;
147
+ /** Column values in column order, as displayed. Text only. */
148
+ values: string[];
149
+ /** Levels of the course this row is attached to. Empty means orphaned. */
150
+ levelIds: number[];
151
+ }
101
152
  export interface PoolColumnConfig {
102
153
  kind: string;
103
154
  label: string;
@@ -114,6 +165,42 @@ export interface PoolAttributeConfig {
114
165
  label: string;
115
166
  show_at_tests: boolean;
116
167
  }
168
+ /**
169
+ * Per-column learning settings, as `/ajax/pool/columns/set/` accepts them.
170
+ *
171
+ * Every field is optional; anything omitted keeps the column's current value.
172
+ */
173
+ export interface PoolColumnSettings {
174
+ /** Column heading shown in the editor and the learning experience. */
175
+ label?: string;
176
+ /**
177
+ * Characters forming the on-screen keyboard. A space wraps to a new row.
178
+ * Empty means the learner's own keyboard.
179
+ */
180
+ keyboard?: string;
181
+ /** Render the text slightly larger, e.g. for Chinese. */
182
+ showBigger?: boolean;
183
+ /** Keep the text upright in contexts that would otherwise italicize it. */
184
+ neverItalicize?: boolean;
185
+ /** Suppress typing tests for this column. */
186
+ typingDisabled?: boolean;
187
+ /** Suppress tapping ('rearrange the words') tests for this column. */
188
+ tappingDisabled?: boolean;
189
+ /** Mark typing without ignoring spacing, capitalization or accents. */
190
+ typingStrict?: boolean;
191
+ /** Display the column even when it is not being tested on. */
192
+ alwaysShow?: boolean;
193
+ /** Display the column after a test. */
194
+ showAfterTests?: boolean;
195
+ }
196
+ export interface SetPoolColumnSettingsResponse {
197
+ /**
198
+ * Whether the write was accepted. Named `saved`, so a caller checking
199
+ * `success` here reads `undefined`.
200
+ */
201
+ saved: boolean;
202
+ [key: string]: unknown;
203
+ }
117
204
  export interface Pool {
118
205
  id: number;
119
206
  name: string;
@@ -214,5 +301,44 @@ export interface AuthWebResponse {
214
301
  success?: boolean;
215
302
  [key: string]: unknown;
216
303
  }
304
+ export interface ProfileSubscription {
305
+ expiry: string;
306
+ is_active: boolean;
307
+ is_on_hold: boolean;
308
+ subscription_type: number;
309
+ }
310
+ export interface ProfileAvatar {
311
+ normal: string;
312
+ small: string;
313
+ large: string;
314
+ }
315
+ export interface ProfileStatistics {
316
+ points: number;
317
+ longest_streak: number;
318
+ num_things_flowered: number;
319
+ }
320
+ /** The signed-in account. */
321
+ export interface Profile {
322
+ id: number;
323
+ username: string;
324
+ email: string;
325
+ date_joined: string;
326
+ language: string;
327
+ timezone: string;
328
+ is_staff: boolean;
329
+ is_pro: boolean;
330
+ is_guest: boolean;
331
+ has_facebook: boolean;
332
+ has_password_set: boolean;
333
+ has_lapsed_pro: boolean;
334
+ pro_trial_ended: string | null;
335
+ subscription: ProfileSubscription;
336
+ avatar: ProfileAvatar;
337
+ statistics: ProfileStatistics;
338
+ [key: string]: unknown;
339
+ }
340
+ export interface GetMeResponse {
341
+ profile: Profile;
342
+ }
217
343
  export {};
218
344
  //# sourceMappingURL=types.d.ts.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memrise",
3
- "version": "0.7.1",
3
+ "version": "0.9.0",
4
4
  "description": "Unofficial Memrise API client for Node.js and Bun",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",