@playcademy/sdk 0.20.1-beta.1 → 0.20.1-beta.3
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/dist/index.d.ts +1202 -26
- package/dist/index.js +3 -1
- package/dist/internal.d.ts +3195 -85
- package/dist/internal.js +3 -1
- package/dist/server/edge.d.ts +1301 -24
- package/dist/server/edge.js +42 -8
- package/dist/server.d.ts +1301 -24
- package/dist/server.js +42 -8
- package/dist/types.d.ts +1727 -29
- package/package.json +1 -1
package/dist/server/edge.js
CHANGED
|
@@ -10,13 +10,6 @@ var __export = (target, all) => {
|
|
|
10
10
|
};
|
|
11
11
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
12
12
|
|
|
13
|
-
// src/core/timeback/assessment-request.ts
|
|
14
|
-
function canonicalAssessmentInput(input) {
|
|
15
|
-
const request = { ...input };
|
|
16
|
-
delete request.preparationReceipt;
|
|
17
|
-
return request;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
13
|
// ../constants/src/auth.ts
|
|
21
14
|
var DEFAULT_PERSONAL_API_KEY_PERMISSIONS = {
|
|
22
15
|
games: ["read", "write", "delete"],
|
|
@@ -27,6 +20,8 @@ var DEFAULT_PERSONAL_API_KEY_PERMISSIONS = {
|
|
|
27
20
|
var PLAYCADEMY_BROWSER_TIME_ZONE_HEADER = "x-playcademy-browser-time-zone";
|
|
28
21
|
var PLAYCADEMY_ASSESSMENT_ASSET_SHA256_HEADER = "x-playcademy-content-sha256";
|
|
29
22
|
var ASSESSMENT_ASSET_MAX_BYTES = 4 * 1024 * 1024;
|
|
23
|
+
// ../constants/src/skills.ts
|
|
24
|
+
var SKILL_STATUS_MAX_SKILLS = 50;
|
|
30
25
|
// ../constants/src/timeback.ts
|
|
31
26
|
var TIMEBACK_ROUTES = {
|
|
32
27
|
END_ACTIVITY: "/integrations/timeback/end-activity",
|
|
@@ -68,6 +63,44 @@ var TIMEBACK_GAME_METRIC_COMPARISON_TOLERANCE = {
|
|
|
68
63
|
time: 60,
|
|
69
64
|
score: 0.5 / 10 ** TIMEBACK_GAME_METRIC_DECIMAL_PLACES.score
|
|
70
65
|
};
|
|
66
|
+
// ../utils/src/skills.ts
|
|
67
|
+
function normalizeSkillId(skill) {
|
|
68
|
+
return skill.trim().toLowerCase();
|
|
69
|
+
}
|
|
70
|
+
function normalizeSkillIds(skills2, max) {
|
|
71
|
+
const normalized = [...new Set(skills2.map(normalizeSkillId).filter((skill) => skill.length > 0))];
|
|
72
|
+
if (normalized.length === 0) {
|
|
73
|
+
return { ok: false, error: "At least one skill is required" };
|
|
74
|
+
}
|
|
75
|
+
if (normalized.length > max) {
|
|
76
|
+
return { ok: false, error: `At most ${max} skills can be requested at once` };
|
|
77
|
+
}
|
|
78
|
+
return { ok: true, skills: normalized };
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// src/server/namespaces/skills.ts
|
|
82
|
+
function createSkillsNamespace(client) {
|
|
83
|
+
return {
|
|
84
|
+
getStatus: (request) => {
|
|
85
|
+
const normalized = normalizeSkillIds(request.skills, SKILL_STATUS_MAX_SKILLS);
|
|
86
|
+
if (!normalized.ok) {
|
|
87
|
+
throw new Error(normalized.error);
|
|
88
|
+
}
|
|
89
|
+
return client["request"]("/api/skills/status", "POST", {
|
|
90
|
+
game: request.game,
|
|
91
|
+
studentId: request.studentId,
|
|
92
|
+
skills: normalized.skills
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
// src/core/timeback/assessment-request.ts
|
|
98
|
+
function canonicalAssessmentInput(input) {
|
|
99
|
+
const request = { ...input };
|
|
100
|
+
delete request.preparationReceipt;
|
|
101
|
+
return request;
|
|
102
|
+
}
|
|
103
|
+
|
|
71
104
|
// src/core/guards.ts
|
|
72
105
|
var VALID_GRADES = TIMEBACK_GRADES;
|
|
73
106
|
var VALID_SUBJECTS = TIMEBACK_SUBJECTS;
|
|
@@ -337,7 +370,7 @@ function extractApiErrorInfo(error) {
|
|
|
337
370
|
}
|
|
338
371
|
|
|
339
372
|
// src/version.ts
|
|
340
|
-
var SDK_VERSION = "0.20.1-beta.
|
|
373
|
+
var SDK_VERSION = "0.20.1-beta.3";
|
|
341
374
|
|
|
342
375
|
// src/server/request.ts
|
|
343
376
|
async function makeApiRequest(opts) {
|
|
@@ -429,6 +462,7 @@ class PlaycademyClient {
|
|
|
429
462
|
return this.state.config;
|
|
430
463
|
}
|
|
431
464
|
timeback = createTimebackNamespace(this);
|
|
465
|
+
skills = createSkillsNamespace(this);
|
|
432
466
|
}
|
|
433
467
|
// src/server/utils/verify-game-token.ts
|
|
434
468
|
async function verifyGameToken(gameToken, options) {
|