@intellectif/lk-core 1.5.0 → 1.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.
- package/CHANGELOG.md +57 -0
- package/dist/ai-check.cjs +2 -2
- package/dist/ai-check.d.cts +1 -1
- package/dist/ai-check.d.ts +1 -1
- package/dist/ai-check.js +2 -2
- package/dist/{ai-BYryFkF9.d.ts → ai-i3jwXnpX.d.cts} +45 -4
- package/dist/ai-i3jwXnpX.d.cts.map +1 -0
- package/dist/{ai-BYryFkF9.d.cts → ai-i3jwXnpX.d.ts} +45 -4
- package/dist/ai-i3jwXnpX.d.ts.map +1 -0
- package/dist/{ai-writing-Cen7-3qs.cjs → ai-writing-C4YRVrFi.cjs} +275 -15
- package/dist/ai-writing-C4YRVrFi.cjs.map +1 -0
- package/dist/{ai-writing-D8PdhJJz.js → ai-writing-OJ5m_1EB.js} +273 -31
- package/dist/ai-writing-OJ5m_1EB.js.map +1 -0
- package/dist/{index-D7R3Ll8R.d.cts → index--U7hHV0s.d.cts} +2 -2
- package/dist/{index-D7R3Ll8R.d.cts.map → index--U7hHV0s.d.cts.map} +1 -1
- package/dist/{index-qMbxed1B.d.cts → index-CFRgZLhH.d.cts} +41 -12
- package/dist/index-CFRgZLhH.d.cts.map +1 -0
- package/dist/{index-DUaW1Tj5.d.ts → index-DeD8EI1D.d.ts} +2 -2
- package/dist/{index-DUaW1Tj5.d.ts.map → index-DeD8EI1D.d.ts.map} +1 -1
- package/dist/{index-wMc1E_aM.d.ts → index-Dj92T76o.d.ts} +2 -2
- package/dist/{index-wMc1E_aM.d.ts.map → index-Dj92T76o.d.ts.map} +1 -1
- package/dist/{index-Bg0aeWtM.d.cts → index-Uh1u57yq.d.cts} +2 -2
- package/dist/{index-Bg0aeWtM.d.cts.map → index-Uh1u57yq.d.cts.map} +1 -1
- package/dist/{index-CxpiWedW.d.ts → index-WBHSrIUU.d.ts} +41 -12
- package/dist/index-WBHSrIUU.d.ts.map +1 -0
- package/dist/index.cjs +63 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +137 -5
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +137 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +58 -8
- package/dist/index.js.map +1 -1
- package/dist/{item-group-DdSUCUjM.js → item-group-BbvvH_Ob.js} +3 -2
- package/dist/item-group-BbvvH_Ob.js.map +1 -0
- package/dist/{item-group-DEB7nLID.cjs → item-group-CQRbb8Rx.cjs} +3 -2
- package/dist/item-group-CQRbb8Rx.cjs.map +1 -0
- package/dist/{registry-DaZRpqjW.js → registry-B23o9UWh.js} +65 -18
- package/dist/registry-B23o9UWh.js.map +1 -0
- package/dist/{registry-Ce00A_OW.cjs → registry-Ih5n4PVZ.cjs} +82 -17
- package/dist/registry-Ih5n4PVZ.cjs.map +1 -0
- package/dist/{schemas-DksueYsu.cjs → schemas-Q2dyOgc2.cjs} +77 -14
- package/dist/schemas-Q2dyOgc2.cjs.map +1 -0
- package/dist/{schemas-BioKFf3F.js → schemas-yId-bJhD.js} +72 -15
- package/dist/schemas-yId-bJhD.js.map +1 -0
- package/dist/schemas.cjs +5 -2
- package/dist/schemas.d.cts +2 -2
- package/dist/schemas.d.ts +2 -2
- package/dist/schemas.js +4 -3
- package/dist/{scoring-BKNNTz-s.js → scoring-CLMdk8i9.js} +2 -2
- package/dist/{scoring-BKNNTz-s.js.map → scoring-CLMdk8i9.js.map} +1 -1
- package/dist/{scoring-lKQVYsxy.cjs → scoring-CaPS6q8b.cjs} +2 -2
- package/dist/{scoring-lKQVYsxy.cjs.map → scoring-CaPS6q8b.cjs.map} +1 -1
- package/dist/scoring.cjs +2 -2
- package/dist/scoring.d.cts +2 -2
- package/dist/scoring.d.ts +2 -2
- package/dist/scoring.js +2 -2
- package/dist/{xapi-NYrTlpID.cjs → xapi-BX0hvRRB.cjs} +2 -2
- package/dist/{xapi-NYrTlpID.cjs.map → xapi-BX0hvRRB.cjs.map} +1 -1
- package/dist/{xapi-wR6gu4qS.js → xapi-Cdk9fTvV.js} +2 -2
- package/dist/{xapi-wR6gu4qS.js.map → xapi-Cdk9fTvV.js.map} +1 -1
- package/dist/xapi.cjs +1 -1
- package/dist/xapi.d.cts +1 -1
- package/dist/xapi.d.ts +1 -1
- package/dist/xapi.js +1 -1
- package/package.json +1 -1
- package/dist/ai-BYryFkF9.d.cts.map +0 -1
- package/dist/ai-BYryFkF9.d.ts.map +0 -1
- package/dist/ai-writing-Cen7-3qs.cjs.map +0 -1
- package/dist/ai-writing-D8PdhJJz.js.map +0 -1
- package/dist/index-CxpiWedW.d.ts.map +0 -1
- package/dist/index-qMbxed1B.d.cts.map +0 -1
- package/dist/item-group-DEB7nLID.cjs.map +0 -1
- package/dist/item-group-DdSUCUjM.js.map +0 -1
- package/dist/registry-Ce00A_OW.cjs.map +0 -1
- package/dist/registry-DaZRpqjW.js.map +0 -1
- package/dist/schemas-BioKFf3F.js.map +0 -1
- package/dist/schemas-DksueYsu.cjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as ActivityType, Et as ActivityDataMap, Ot as ActivityMedia,
|
|
1
|
+
import { At as ActivityType, Et as ActivityDataMap, Ot as ActivityMedia, gn as ValidationResult, nn as MultipleChoiceOptionMedia, st as ItemGroup } from "./ai-i3jwXnpX.cjs";
|
|
2
2
|
//#region src/types/redacted.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* The learner-safe SHAPE of each built-in type.
|
|
@@ -288,22 +288,51 @@ declare const fillInTheBlanksJsonSchema: Record<string, unknown>;
|
|
|
288
288
|
* contract. Structural contract only.
|
|
289
289
|
*/
|
|
290
290
|
declare const writtenResponseJsonSchema: Record<string, unknown>;
|
|
291
|
+
/** The JSON Schema drafts the SDK writes. */
|
|
292
|
+
type JsonSchemaTarget = 'draft-2020-12' | 'draft-7';
|
|
291
293
|
/**
|
|
292
|
-
* Derives the JSON Schema
|
|
293
|
-
*
|
|
294
|
-
*
|
|
295
|
-
*
|
|
294
|
+
* Derives the JSON Schema for any REGISTERED activity type — the live,
|
|
295
|
+
* registry-backed replacement for the static per-type exports above, and the
|
|
296
|
+
* building block for AI generation pipelines (R6.1): pass the result as a
|
|
297
|
+
* structured-output schema so a model can only emit valid items.
|
|
296
298
|
*
|
|
297
|
-
*
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
299
|
+
* Draft 7 unless `target` says `'draft-2020-12'`. For a type you registered,
|
|
300
|
+
* it is the descriptor's `jsonSchema` when you gave one, in whatever draft you
|
|
301
|
+
* wrote it, or else what the schema produces through the Standard JSON Schema
|
|
302
|
+
* converter (`'~standard'.jsonSchema`) in the draft asked for — a zod 4.6
|
|
303
|
+
* schema has one. A fresh copy every call.
|
|
301
304
|
*
|
|
302
305
|
* @throws UnknownActivityTypeError when `type` has no registered descriptor.
|
|
303
306
|
* @throws Error when a registered type has neither a `jsonSchema` nor a schema
|
|
304
307
|
* that can produce one.
|
|
305
308
|
*/
|
|
306
|
-
declare function jsonSchemaFor(type: string
|
|
309
|
+
declare function jsonSchemaFor(type: string, options?: {
|
|
310
|
+
target?: JsonSchemaTarget;
|
|
311
|
+
}): Record<string, unknown>;
|
|
312
|
+
/**
|
|
313
|
+
* One JSON Schema document for content an outside tool writes: the root is a
|
|
314
|
+
* `SequenceEntry` — an activity of any registered type, or an item group whose
|
|
315
|
+
* items are typed too. Each type, the stimulus and the item group sit under
|
|
316
|
+
* `$defs` (`definitions` in draft 7), so a tool can also point at one of them.
|
|
317
|
+
* Draft 2020-12 unless `target` says `'draft-7'`.
|
|
318
|
+
*
|
|
319
|
+
* Structural, as every exported schema is: rules that span fields (one key in
|
|
320
|
+
* a single-answer question, a blank for each marker, a slow recording that is
|
|
321
|
+
* another file) cannot be written in JSON Schema. On import, `validateDraft`
|
|
322
|
+
* and `validateItemGroupDraft` decide. It includes the author-only fields
|
|
323
|
+
* (`transcript`, `script`), so a tool can write them.
|
|
324
|
+
*
|
|
325
|
+
* ```ts
|
|
326
|
+
* writeFileSync('schema.json', JSON.stringify(contentJsonSchema(), null, 2));
|
|
327
|
+
* ```
|
|
328
|
+
*/
|
|
329
|
+
declare function contentJsonSchema(options?: {
|
|
330
|
+
target?: JsonSchemaTarget;
|
|
331
|
+
}): Record<string, unknown>;
|
|
332
|
+
//#endregion
|
|
333
|
+
//#region src/schemas/media.d.ts
|
|
334
|
+
/** The most turns a recording's `script` may hold. */
|
|
335
|
+
declare const SCRIPT_MAX_TURNS = 500;
|
|
307
336
|
//#endregion
|
|
308
337
|
//#region src/schemas/index.d.ts
|
|
309
338
|
/**
|
|
@@ -339,5 +368,5 @@ declare function validateOptionMedia(value: unknown): ValidationResult<MultipleC
|
|
|
339
368
|
*/
|
|
340
369
|
declare function validateActivity<T extends ActivityType>(type: T, data: unknown): ValidationResult<ActivityDataMap[T]>;
|
|
341
370
|
//#endregion
|
|
342
|
-
export {
|
|
343
|
-
//# sourceMappingURL=index-
|
|
371
|
+
export { RedactedStimulus as A, RedactedGapSelectChoice as C, RedactedMultipleChoiceOption as D, RedactedMultipleChoiceData as E, RedactedMultipleChoiceOptionMedia as O, RedactedGapSelectBank as S, RedactedGapSelectGap as T, RedactedActivity as _, JsonSchemaTarget as a, RedactedDictationSlowMedia as b, fillInTheBlanksJsonSchema as c, jsonSchemaFor as d, multipleChoiceJsonSchema as f, validateItemGroup as g, writtenResponseJsonSchema as h, SCRIPT_MAX_TURNS as i, RedactedWrittenResponseData as j, RedactedReadAloudData as k, gapSelectJsonSchema as l, stimulusJsonSchema as m, validateMedia as n, contentJsonSchema as o, readAloudJsonSchema as p, validateOptionMedia as r, dictationJsonSchema as s, validateActivity as t, itemGroupJsonSchema as u, RedactedBlankConfig as v, RedactedGapSelectData as w, RedactedFillInTheBlanksData as x, RedactedDictationData as y };
|
|
372
|
+
//# sourceMappingURL=index-CFRgZLhH.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CFRgZLhH.d.cts","names":[],"sources":["../src/types/redacted.ts","../src/schemas/item-group.ts","../src/schemas/json-schema.ts","../src/schemas/media.ts","../src/schemas/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;UAoBU;EACR;EACA;EACA;EACA;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA,SAAS;EACT;EACA,WAAW;;;UAIH;EACR;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;EACA;EACA;EACA,KAAK;;;UAIU;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA,QAAQ;;;UAIO,mCAAmC;EAClD;EACA;EACA;EACA;EACA,SAAS;EACT;EACA;;;UAIe;EACf;EACA;;;UAIe,oCAAoC;EACnD;EACA;EACA;EACA,QAAQ;EACR;;;UAIe,oCAAoC;EACnD;EACA;EACA;EACA;EACA;EACA;IAEM;MACE;MACA;MACA;MACA;QAAW;QAAe;;;IAE5B;;EAGN;EACA;;;UAIe;EACf;EACA;;;UAIe;EACf;EACA,SAAS;;;UAIM;EACf;EACA,UAAU;EACV;;;UAIe,8BAA8B;EAC7C;EACA;EACA;EACA,MAAM;EACN,QAAQ;EACR;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe,8BAA8B;EAC7C;EACA,YAAY;EACZ;IAAU;;EACV;;;;;;;UAQe,8BAA8B;EAC7C;EACA;EACA;EACA;EACA,YAAY;EACZ;IACE;IACA;IACA;;EAEF;IACE;MACE;MACA;;;;;UAMW;EACf;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;EACA;;;;;;;;;;;;;;KAeU,mBACR,6BACA,8BACA,8BACA,wBACA,wBACA;;;;;;;;;;;;;iBC4MY,kBAAkB,gBAAgB,iBAAiB;;;;;;;cCnatD,oBAAoB;;;;;;;;cAWpB,qBAAqB;;;;;;;;;;;;;;;;;;cAqBrB,qBAAqB;;;;;;;;;;;cAcrB,qBAAqB;;;;;;;;;;cAarB,qBAAqB;cAIrB,0BAA0B;;;;;;cAY1B,2BAA2B;;;;;cAW3B,2BAA2B;;KAQ5B;;;;;;;;;;;;;;;;;iBAqBI,cACd,cACA;EAAW,SAAS;IACnB;;;;;;;;;;;;;;;;;;iBA4Ca,kBACd;EAAW,SAAS;IACnB;;;;cCzEU;;;;;;;;;;;;;iBCnDG,cAAc,iBAAiB,iBAAiB;;;;;;;;iBAWhD,oBAAoB,iBAAiB,iBAAiB;;;;;;;;;;;;;iBA8BtD,iBAAiB,UAAU,cACzC,MAAM,GACN,gBACC,iBAAiB,gBAAgB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as ActivityType,
|
|
1
|
+
import { At as ActivityType, I as AiGradingJudgement, In as Grader, Jt as ItemOutcome, Ln as GraderConfiguration, Mn as CriterionScore, Nn as GradeRecord, Pn as GradeRouting, Pt as DictationData, Tt as ActivityData, Yt as LearnerResponse, _n as WrittenResponseData, gn as ValidationResult, in as ReadAloudData, pn as ScoringResult, sn as ReadAloudLearnerResponse, yn as WrittenResponseRubric } from "./ai-i3jwXnpX.js";
|
|
2
2
|
//#region src/scoring/rounding.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* Rounding for assessment scores.
|
|
@@ -1392,4 +1392,4 @@ interface ItemTriesOutcome {
|
|
|
1392
1392
|
declare function evaluateTries(data: ActivityData, responses: readonly LearnerResponse[], options?: EvaluateOptions): ItemTriesOutcome;
|
|
1393
1393
|
//#endregion
|
|
1394
1394
|
export { hasGrade as $, diffDictationChars as A, Band as At, outcomeFromRoutedGrade as B, validateItemScoringPolicy as C, SpeechSyllable as Ct, DICTATION_MAX_TEXT_LENGTH as D, SpeechWordError as Dt, DICTATION_MAX_EQUIVALENCE_LENGTH as E, SpeechWord as Et, dictationReferenceWords as F, roundGrade as Ft, CalibrationReport as G, GradeFromJudgementOptions as H, CalibrationThresholds as I, TotalCalibration as J, CalibrationScope as K, GradeRoutingContext as L, DictationReference as M, RoundingPolicy as Mt, DictationWordAlignment as N, classifyBand as Nt, DICTATION_MAX_TRANSCRIPT_LENGTH as O, WavInspection as Ot, alignDictation as P, gte as Pt, gradeFromRubric as Q, GradeRoutingPolicy as R, scoreTries as S, SpeechPlausibilityPolicy as St, DICTATION_MAX_EQUIVALENCES as T, SpeechUnscorableCode as Tt, gradeFromJudgement as U, routeGrade as V, CalibrationPair as W, graderConfiguration as X, calibrationReport as Y, GradeFromRubricOptions as Z, DEFAULT_PASS_THRESHOLD as _, ReadAloudWordState as _t, evaluateTries as a, ItemTry as at, ITEM_SCORING_MAX_RETRIES as b, SpeechPhoneme as bt, inspectWav as c, AssessmentScore as ct, READ_ALOUD_MAX_SECONDS as d, PassFailureReason as dt, outcomeFromGrade as et, READ_ALOUD_MAX_TAKES as f, ScoredItem as ft, alignReadAloud as g, ReadAloudWordAlignment as gt, validateSpeechAssessment as h, GradeReadAloudOptions as ht, evaluate as i, ItemTriesScore as it, DictationAlignment as j, RoundingMode as jt, DictationCharOp as k, WavInspectionPolicy as kt, READ_ALOUD_MAX_DIMENSION_WEIGHT as l, AssessmentSectionInput as lt, gradeReadAloud as m, composeAssessmentScore as mt, ItemTriesOutcome as n, ItemScoringPolicy as nt, score as o, ItemTryScore as ot, SPEECH_ASSESSMENT_MAX_WORDS as p, SectionScore as pt, CriterionCalibration as q, ScoringOptions as r, ItemScoringPolicyIssue as rt, outcomeFromUnscorable as s, ResolvedItemScoringPolicy as st, EvaluateOptions as t, ItemScoringCount as tt, READ_ALOUD_MAX_REFERENCE_LENGTH as u, CompositionPolicy as ut, computePassThreshold as v, SpeechAssessment as vt, DICTATION_MAX_ACCEPTED_TRANSCRIPTS as w, SpeechUnscorable as wt, resolveItemScoringPolicy as x, SpeechPhonemeCandidate as xt, DEFAULT_ITEM_SCORING_POLICY as y, SpeechMeasurement as yt, inAuditSample as z };
|
|
1395
|
-
//# sourceMappingURL=index-
|
|
1395
|
+
//# sourceMappingURL=index-DeD8EI1D.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DeD8EI1D.d.ts","names":[],"sources":["../src/scoring/rounding.ts","../src/types/speech.ts","../src/scoring/compose.ts","../src/types/item-scoring.ts","../src/grading.ts","../src/scoring/assisted/calibration.ts","../src/scoring/assisted/grade-from-judgement.ts","../src/scoring/assisted/routing.ts","../src/scoring/dictation/align.ts","../src/scoring/dictation/chars.ts","../src/scoring/dictation/normalize.ts","../src/scoring/item-scoring.ts","../src/scoring/pass-threshold.ts","../src/scoring/speech/align.ts","../src/scoring/speech/assessment.ts","../src/scoring/speech/grade.ts","../src/scoring/speech/limits.ts","../src/scoring/speech/wav.ts","../src/scoring/unscorable.ts","../src/scoring/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;KAoBY;;UAGK;EACf,MAAM;;EAEN;;;;;;;;;iBAqFc,WAAW,eAAe,QAAQ;;;;;;;;;iBA2DlC,IAAI,eAAe,mBAAmB,QAAQ;;UAK7C;EACf;;EAEA;;;;;;;;;;iBAWc,aAAa,eAAe,gBAAgB,SAAS;;;;;;;;KC5KzD;;UAGK;;EAEf;;EAEA;;;UAIe;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA,UAAU;;;UAIK;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf;;EAEA;;EAEA,OAAO;;EAEP;;EAEA;;EAEA;EACA,YAAY;EACZ,WAAW;;;;;EAKX;IAAW;IAAqB;;;;;;;UAOjB;EACf;;EAEA;;EAEA;;EAEA;;;;;;EAMA;;;;;EAKA;;EAEA,UAAU;;EAEV;;EAEA;IACE;IACA;IACA;IACA;IACA;;;EAGF;;;;;;;EAOA;;EAEA;;EAEA,OAAO;;EAEP;IAAY;;;EAEZ;IAAW;;;;;;;;UAQI;;EAEf;;EAEA;;;;;;;UAQe;;EAEf;;EAEA;;;;;;;;;;;;;;;KAgBU;;UAaK;EACf;;EAEA,MAAM;;EAEN;;;;;;UAOe;;EAEf,UAAU;;EAEV,cAAc;;EAEd;;EAEA,WAAW;;;KAID;;;;;UAMK;;EAEf;;EAEA;;;;;;;EAOA;EACA,OAAO;;EAEP;;EAEA;;;;;;KAOU;EAEN;;EAEA;EACA;EACA;EACA;;EAEA;;EAEA;;EAEA;EAAc;;;UAGH;;EAEf;;EAEA;;;;;;;;;;;;;;;UC9Oe;;;;;;EAMf;;EAEA;;EAEA;;EAEA,SAAS;;;UAIM;EACf;EACA;;EAEA;;EAEA;EACA,OAAO;;;UAIQ;;EAEf;;EAEA;;;;;;EAMA,UAAU;;;UAIK;EACf;EACA;;EAEA;;;;;;;;;;;;;;;;;;;;EAoBA;EACA;;EAEA;;EAEA;;EAEA;EACA;;EAEA;;;;;EAKA;;EAEA;;EAEA;;;KAIU;;UAOK;EACf,UAAU;;EAEV;;;;;;;EAOA;;EAEA,mBAAmB;;;;;;;;EAQnB;;;;;;EAMA;;;;;;;;;;;;;;;EAeA;;EAEA;;;;;;;;;;;;;;iBAmEc,uBACd,mBAAmB,0BACnB,QAAQ,oBACP;;;;;;;;;;;;;;;;;;;;;;;;;UC3Mc;;;;;;;;;EASf;;;;;;EAMA;;;;;;;;;EASA;;;;;;;;;;EAUA,SAAS;;;KAIC;;;;;;UAOK;EACf;EACA;EACA;EACA,QAAQ;;;UAIO;;EAEf;EACA;;;UAIe;;EAEf;EACA;;;;;;EAMA;;;UAIe;;EAEf;;EAEA;EACA;;EAEA;;EAEA;;;UAIe;;EAEf;EACA;;EAEA;;;;;;EAMA,OAAO;;;;;UCtGQ;;;;;EAKf;;EAEA;;;;;;;;;;;;;EAaA,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmCG,gBACd,mBAAmB,kBACnB,eAAe,cACf,UAAS,yBACR;EAAgB;EAAkB;;;;;;;;;;;;;;;;;;;;;iBA6JrB,iBAAiB,OAAO,cAAc;;;;;;iBAsBtC,SACd,SAAS,cACR,WAAW,QAAQ;EAAe;;;;;UC1PpB;;EAEf,OAAO;;EAEP,QAAQ;;EAER,eAAe;;;UAIA;EACf,SAAS;EACT;;;UAIe;EACf;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;;;;;EAMA;;EAEA;;;;;;;EAOA;;EAEA;;EAEA;;EAEA;;EAEA;;;;;;EAMA;;;UAIe;EACf;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;;;;;;;UAQe;;EAEf,eAAe;;EAEf;;EAEA,UAAU;EACV,OAAO;;EAEP;;;iBAqGc,oBACd,OAAO,aACP,OAAO,mBACN;;;;;;;;;;;;;;iBAyQa,kBACd,gBAAgB,mBAChB,OAAO;EACJ;EAAU,QAAQ;;EAAwB;EAAW;;;;;KCld9C,4BAA4B,KAAK;;;;;;;;;;;;;;;;iBAiB7B,mBACd,WAAW,oBACX,MAAM,qBACN,UAAS,4BACR;EAAgB;EAAkB;;;;;;;;;;;UCNpB;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;;UAIe;;EAEf,cAAc;;;;;;EAMd;;EAEA;;EAEA;IAAU;IAAc;;;;UAIT;;EAEf;;EAEA,MAAM;;EAEN,cAAc;EACd,SAAS;;EAET;;;;;;;;iBA2Ic,cAAc,aAAa,cAAc;;;;;;;;;;;;;;;;;;;;;;;iBA8BzC,WAAW,OAAO,aAAa,SAAS,sBAAsB;;;;;;;;iBAiD9D,uBAAuB,OAAO,aAAa,SAAS,eAAe;;;;UCjRlE;;EAEf;;EAEA;;EAEA;;EAEA;EACA;;;;;;;;UASe;;;;;;EAMf;;EAEA;;EAEA;;;;;EAKA;;EAEA;;EAEA,OAAO;;;;;;;;KASG,qBAAqB,QAC/B,KAAK;;;;;;;;;iBAWS,wBACd,MAAM;EACgB;EAAgB;;;;;;;;;;;;;;;;;;;;iBA2BxB,eAAe,MAAM,oBAAoB,eAAe;;;;UChGvD;EACf;;EAEA;;EAEA;;;;;;;;;;;;;iBAcc,mBAAmB,mBAAmB,kBAAkB;;;;;;;;;;cCD3D;;;;;;cAMA;;cAEA;;;;;cAKA;;;;;cAKA;;;;;;;;cCvBA,6BAA6B;;cAQ7B;;;;;;;;;;;iBAqBG,0BACd;EAEI;EAAe,MAAM;;EACrB;EAAgB,QAAQ;;;;;;;;;;;;iBA0Ed,yBAAyB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;iBAyD3C,WACd,gBAAgB,WAChB,SAAS,oBAAoB,mCAC5B;;;;cCzKU;;;;;;;;;;;;;iBAcG,qBACd,cAAc,cACd,eACA,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCgDG,eACd,MAAM,KAAK,iCACX,YAAY,mBACX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCkKa,yBAAyB,iBAAiB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBC3F3D,eACd,MAAM,eACN,UAAU,0BACV,YAAY,yBACZ,SAAS,wBACR,cAAc;;;;;;;;;;cClJJ;;cAGA;;cAGA;;;;;;cAOA;;;;;;;;;cAUA;;;;;;;;;;;;;;;;;;;;;;;;;;iBC8EG,WAAW,OAAO,YAAY,QAAQ,sBAAsB;;;;;;;;;;;;iBCtG5D,sBAAsB;EAAU;EAAc;IAAmB;;;;;;;UCsHhE;;;;;;;;;;;;;EAaf,WAAW;;;;;;UAOI,wBAAwB;;;;;;;;;;;;;;;;EAgBvC,UAAU;;;;;;;;;;;;;;;iBAgBI,MACd,cAAc,cACd,cAAc,cACd,iBAAiB,iBACjB,UAAU,iBACT;;;;;;;;;;;;;;;;;;;;;;iBA0Ca,SACd,MAAM,cACN,UAAU,iBACV,UAAU,kBACT;;UA0Ec;;;;;;;;EAQf,SAAS;;EAET;;;;;;EAMA,OAAO;;;;;;;;;;;;;;;;;iBAkBO,cACd,MAAM,cACN,oBAAoB,mBACpB,UAAU,kBACT"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { An as XAPIStatement, On as XAPIResult, Sn as XAPIActor, pn as ScoringResult, wn as XAPIContext } from "./ai-i3jwXnpX.js";
|
|
2
2
|
//#region src/xapi/verbs.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* The set of xAPI verbs emitted by SDK activities, keyed by a stable
|
|
@@ -150,4 +150,4 @@ declare function xapiDefinitionFor(data: {
|
|
|
150
150
|
declare function validateXAPIStatement(statement: XAPIStatement): void;
|
|
151
151
|
//#endregion
|
|
152
152
|
export { XAPIObjectParams as a, xapiDefinitionFor as c, XAPI_VERB_DISPLAY as d, SubmittedStatementParams as i, XAPIVerb as l, AnsweredStatementParams as n, XAPIStatementParams as o, CompletedStatementParams as r, xAPIBuilder as s, validateXAPIStatement as t, XAPIVerbKey as u };
|
|
153
|
-
//# sourceMappingURL=index-
|
|
153
|
+
//# sourceMappingURL=index-Dj92T76o.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-Dj92T76o.d.ts","names":[],"sources":["../src/xapi/verbs.ts","../src/xapi/builder.ts","../src/xapi/validators.ts"],"mappings":";;;;;;cAIa;;;;;;;;;;;;;;;;;;;;;;;;;;KA2BD,2BAA2B;;;;;cAM1B,mBAAmB,OAAO,aAAa;;;;UCxBnC;;EAEf;EACA,OAAO;EACP,cAAc;;EAEd;;EAEA;;EAEA;;EAEA,UAAU;IAAQ;IAAY,cAAc;;;;UAI7B;EACf,OAAO;EACP,MAAM;EACN,QAAQ;EACR,SAAS;EACT,UAAU;;;UAIK;EACf,OAAO;EACP,QAAQ;EACR,eAAe;EACf;;EAEA;EACA,UAAU;EACV,mBAAmB;;;;;;;UAQJ;EACf,OAAO;EACP,QAAQ;EACR;;EAEA;EACA,UAAU;EACV,mBAAmB;;;UAIJ;EACf,OAAO;EACP,QAAQ;EACR,gBAAgB;EAChB;EACA,UAAU;EACV,mBAAmB;;;;;;;cAiGR;EACY,eAAA,QAAA,sBAAsB;EAoBd,uBAAA,QAAA,0BAA0B;;;;;;;EAqBzB,wBAAA,QAAA,2BAA2B;EAc3B,wBAAA,QAAA,2BAA2B;;;;;;;;;;;;;;;;iBA8B7C,kBAAkB;EAAQ;IAAiB,QAAQ;;;;;;;;;;;;;;;;iBClHnD,sBAAsB,WAAW"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as ActivityType,
|
|
1
|
+
import { At as ActivityType, I as AiGradingJudgement, In as Grader, Jt as ItemOutcome, Ln as GraderConfiguration, Mn as CriterionScore, Nn as GradeRecord, Pn as GradeRouting, Pt as DictationData, Tt as ActivityData, Yt as LearnerResponse, _n as WrittenResponseData, gn as ValidationResult, in as ReadAloudData, pn as ScoringResult, sn as ReadAloudLearnerResponse, yn as WrittenResponseRubric } from "./ai-i3jwXnpX.cjs";
|
|
2
2
|
//#region src/scoring/rounding.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* Rounding for assessment scores.
|
|
@@ -1392,4 +1392,4 @@ interface ItemTriesOutcome {
|
|
|
1392
1392
|
declare function evaluateTries(data: ActivityData, responses: readonly LearnerResponse[], options?: EvaluateOptions): ItemTriesOutcome;
|
|
1393
1393
|
//#endregion
|
|
1394
1394
|
export { hasGrade as $, diffDictationChars as A, Band as At, outcomeFromRoutedGrade as B, validateItemScoringPolicy as C, SpeechSyllable as Ct, DICTATION_MAX_TEXT_LENGTH as D, SpeechWordError as Dt, DICTATION_MAX_EQUIVALENCE_LENGTH as E, SpeechWord as Et, dictationReferenceWords as F, roundGrade as Ft, CalibrationReport as G, GradeFromJudgementOptions as H, CalibrationThresholds as I, TotalCalibration as J, CalibrationScope as K, GradeRoutingContext as L, DictationReference as M, RoundingPolicy as Mt, DictationWordAlignment as N, classifyBand as Nt, DICTATION_MAX_TRANSCRIPT_LENGTH as O, WavInspection as Ot, alignDictation as P, gte as Pt, gradeFromRubric as Q, GradeRoutingPolicy as R, scoreTries as S, SpeechPlausibilityPolicy as St, DICTATION_MAX_EQUIVALENCES as T, SpeechUnscorableCode as Tt, gradeFromJudgement as U, routeGrade as V, CalibrationPair as W, graderConfiguration as X, calibrationReport as Y, GradeFromRubricOptions as Z, DEFAULT_PASS_THRESHOLD as _, ReadAloudWordState as _t, evaluateTries as a, ItemTry as at, ITEM_SCORING_MAX_RETRIES as b, SpeechPhoneme as bt, inspectWav as c, AssessmentScore as ct, READ_ALOUD_MAX_SECONDS as d, PassFailureReason as dt, outcomeFromGrade as et, READ_ALOUD_MAX_TAKES as f, ScoredItem as ft, alignReadAloud as g, ReadAloudWordAlignment as gt, validateSpeechAssessment as h, GradeReadAloudOptions as ht, evaluate as i, ItemTriesScore as it, DictationAlignment as j, RoundingMode as jt, DictationCharOp as k, WavInspectionPolicy as kt, READ_ALOUD_MAX_DIMENSION_WEIGHT as l, AssessmentSectionInput as lt, gradeReadAloud as m, composeAssessmentScore as mt, ItemTriesOutcome as n, ItemScoringPolicy as nt, score as o, ItemTryScore as ot, SPEECH_ASSESSMENT_MAX_WORDS as p, SectionScore as pt, CriterionCalibration as q, ScoringOptions as r, ItemScoringPolicyIssue as rt, outcomeFromUnscorable as s, ResolvedItemScoringPolicy as st, EvaluateOptions as t, ItemScoringCount as tt, READ_ALOUD_MAX_REFERENCE_LENGTH as u, CompositionPolicy as ut, computePassThreshold as v, SpeechAssessment as vt, DICTATION_MAX_ACCEPTED_TRANSCRIPTS as w, SpeechUnscorable as wt, resolveItemScoringPolicy as x, SpeechPhonemeCandidate as xt, DEFAULT_ITEM_SCORING_POLICY as y, SpeechMeasurement as yt, inAuditSample as z };
|
|
1395
|
-
//# sourceMappingURL=index-
|
|
1395
|
+
//# sourceMappingURL=index-Uh1u57yq.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-Uh1u57yq.d.cts","names":[],"sources":["../src/scoring/rounding.ts","../src/types/speech.ts","../src/scoring/compose.ts","../src/types/item-scoring.ts","../src/grading.ts","../src/scoring/assisted/calibration.ts","../src/scoring/assisted/grade-from-judgement.ts","../src/scoring/assisted/routing.ts","../src/scoring/dictation/align.ts","../src/scoring/dictation/chars.ts","../src/scoring/dictation/normalize.ts","../src/scoring/item-scoring.ts","../src/scoring/pass-threshold.ts","../src/scoring/speech/align.ts","../src/scoring/speech/assessment.ts","../src/scoring/speech/grade.ts","../src/scoring/speech/limits.ts","../src/scoring/speech/wav.ts","../src/scoring/unscorable.ts","../src/scoring/index.ts"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as ActivityType, Et as ActivityDataMap, Ot as ActivityMedia,
|
|
1
|
+
import { At as ActivityType, Et as ActivityDataMap, Ot as ActivityMedia, gn as ValidationResult, nn as MultipleChoiceOptionMedia, st as ItemGroup } from "./ai-i3jwXnpX.js";
|
|
2
2
|
//#region src/types/redacted.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* The learner-safe SHAPE of each built-in type.
|
|
@@ -288,22 +288,51 @@ declare const fillInTheBlanksJsonSchema: Record<string, unknown>;
|
|
|
288
288
|
* contract. Structural contract only.
|
|
289
289
|
*/
|
|
290
290
|
declare const writtenResponseJsonSchema: Record<string, unknown>;
|
|
291
|
+
/** The JSON Schema drafts the SDK writes. */
|
|
292
|
+
type JsonSchemaTarget = 'draft-2020-12' | 'draft-7';
|
|
291
293
|
/**
|
|
292
|
-
* Derives the JSON Schema
|
|
293
|
-
*
|
|
294
|
-
*
|
|
295
|
-
*
|
|
294
|
+
* Derives the JSON Schema for any REGISTERED activity type — the live,
|
|
295
|
+
* registry-backed replacement for the static per-type exports above, and the
|
|
296
|
+
* building block for AI generation pipelines (R6.1): pass the result as a
|
|
297
|
+
* structured-output schema so a model can only emit valid items.
|
|
296
298
|
*
|
|
297
|
-
*
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
299
|
+
* Draft 7 unless `target` says `'draft-2020-12'`. For a type you registered,
|
|
300
|
+
* it is the descriptor's `jsonSchema` when you gave one, in whatever draft you
|
|
301
|
+
* wrote it, or else what the schema produces through the Standard JSON Schema
|
|
302
|
+
* converter (`'~standard'.jsonSchema`) in the draft asked for — a zod 4.6
|
|
303
|
+
* schema has one. A fresh copy every call.
|
|
301
304
|
*
|
|
302
305
|
* @throws UnknownActivityTypeError when `type` has no registered descriptor.
|
|
303
306
|
* @throws Error when a registered type has neither a `jsonSchema` nor a schema
|
|
304
307
|
* that can produce one.
|
|
305
308
|
*/
|
|
306
|
-
declare function jsonSchemaFor(type: string
|
|
309
|
+
declare function jsonSchemaFor(type: string, options?: {
|
|
310
|
+
target?: JsonSchemaTarget;
|
|
311
|
+
}): Record<string, unknown>;
|
|
312
|
+
/**
|
|
313
|
+
* One JSON Schema document for content an outside tool writes: the root is a
|
|
314
|
+
* `SequenceEntry` — an activity of any registered type, or an item group whose
|
|
315
|
+
* items are typed too. Each type, the stimulus and the item group sit under
|
|
316
|
+
* `$defs` (`definitions` in draft 7), so a tool can also point at one of them.
|
|
317
|
+
* Draft 2020-12 unless `target` says `'draft-7'`.
|
|
318
|
+
*
|
|
319
|
+
* Structural, as every exported schema is: rules that span fields (one key in
|
|
320
|
+
* a single-answer question, a blank for each marker, a slow recording that is
|
|
321
|
+
* another file) cannot be written in JSON Schema. On import, `validateDraft`
|
|
322
|
+
* and `validateItemGroupDraft` decide. It includes the author-only fields
|
|
323
|
+
* (`transcript`, `script`), so a tool can write them.
|
|
324
|
+
*
|
|
325
|
+
* ```ts
|
|
326
|
+
* writeFileSync('schema.json', JSON.stringify(contentJsonSchema(), null, 2));
|
|
327
|
+
* ```
|
|
328
|
+
*/
|
|
329
|
+
declare function contentJsonSchema(options?: {
|
|
330
|
+
target?: JsonSchemaTarget;
|
|
331
|
+
}): Record<string, unknown>;
|
|
332
|
+
//#endregion
|
|
333
|
+
//#region src/schemas/media.d.ts
|
|
334
|
+
/** The most turns a recording's `script` may hold. */
|
|
335
|
+
declare const SCRIPT_MAX_TURNS = 500;
|
|
307
336
|
//#endregion
|
|
308
337
|
//#region src/schemas/index.d.ts
|
|
309
338
|
/**
|
|
@@ -339,5 +368,5 @@ declare function validateOptionMedia(value: unknown): ValidationResult<MultipleC
|
|
|
339
368
|
*/
|
|
340
369
|
declare function validateActivity<T extends ActivityType>(type: T, data: unknown): ValidationResult<ActivityDataMap[T]>;
|
|
341
370
|
//#endregion
|
|
342
|
-
export {
|
|
343
|
-
//# sourceMappingURL=index-
|
|
371
|
+
export { RedactedStimulus as A, RedactedGapSelectChoice as C, RedactedMultipleChoiceOption as D, RedactedMultipleChoiceData as E, RedactedMultipleChoiceOptionMedia as O, RedactedGapSelectBank as S, RedactedGapSelectGap as T, RedactedActivity as _, JsonSchemaTarget as a, RedactedDictationSlowMedia as b, fillInTheBlanksJsonSchema as c, jsonSchemaFor as d, multipleChoiceJsonSchema as f, validateItemGroup as g, writtenResponseJsonSchema as h, SCRIPT_MAX_TURNS as i, RedactedWrittenResponseData as j, RedactedReadAloudData as k, gapSelectJsonSchema as l, stimulusJsonSchema as m, validateMedia as n, contentJsonSchema as o, readAloudJsonSchema as p, validateOptionMedia as r, dictationJsonSchema as s, validateActivity as t, itemGroupJsonSchema as u, RedactedBlankConfig as v, RedactedGapSelectData as w, RedactedFillInTheBlanksData as x, RedactedDictationData as y };
|
|
372
|
+
//# sourceMappingURL=index-WBHSrIUU.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-WBHSrIUU.d.ts","names":[],"sources":["../src/types/redacted.ts","../src/schemas/item-group.ts","../src/schemas/json-schema.ts","../src/schemas/media.ts","../src/schemas/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;UAoBU;EACR;EACA;EACA;EACA;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA,SAAS;EACT;EACA,WAAW;;;UAIH;EACR;EACA;;;UAIQ;EACR;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;EACA;EACA;EACA,KAAK;;;UAIU;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA,QAAQ;;;UAIO,mCAAmC;EAClD;EACA;EACA;EACA;EACA,SAAS;EACT;EACA;;;UAIe;EACf;EACA;;;UAIe,oCAAoC;EACnD;EACA;EACA;EACA,QAAQ;EACR;;;UAIe,oCAAoC;EACnD;EACA;EACA;EACA;EACA;EACA;IAEM;MACE;MACA;MACA;MACA;QAAW;QAAe;;;IAE5B;;EAGN;EACA;;;UAIe;EACf;EACA;;;UAIe;EACf;EACA,SAAS;;;UAIM;EACf;EACA,UAAU;EACV;;;UAIe,8BAA8B;EAC7C;EACA;EACA;EACA,MAAM;EACN,QAAQ;EACR;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe,8BAA8B;EAC7C;EACA,YAAY;EACZ;IAAU;;EACV;;;;;;;UAQe,8BAA8B;EAC7C;EACA;EACA;EACA;EACA,YAAY;EACZ;IACE;IACA;IACA;;EAEF;IACE;MACE;MACA;;;;;UAMW;EACf;EACA;EACA;EACA;EACA;EACA,QAAQ;EACR;EACA;;;;;;;;;;;;;;KAeU,mBACR,6BACA,8BACA,8BACA,wBACA,wBACA;;;;;;;;;;;;;iBC4MY,kBAAkB,gBAAgB,iBAAiB;;;;;;;cCnatD,oBAAoB;;;;;;;;cAWpB,qBAAqB;;;;;;;;;;;;;;;;;;cAqBrB,qBAAqB;;;;;;;;;;;cAcrB,qBAAqB;;;;;;;;;;cAarB,qBAAqB;cAIrB,0BAA0B;;;;;;cAY1B,2BAA2B;;;;;cAW3B,2BAA2B;;KAQ5B;;;;;;;;;;;;;;;;;iBAqBI,cACd,cACA;EAAW,SAAS;IACnB;;;;;;;;;;;;;;;;;;iBA4Ca,kBACd;EAAW,SAAS;IACnB;;;;cCzEU;;;;;;;;;;;;;iBCnDG,cAAc,iBAAiB,iBAAiB;;;;;;;;iBAWhD,oBAAoB,iBAAiB,iBAAiB;;;;;;;;;;;;;iBA8BtD,iBAAiB,UAAU,cACzC,MAAM,GACN,gBACC,iBAAiB,gBAAgB"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_registry = require("./registry-
|
|
3
|
-
const require_ai_writing = require("./ai-writing-
|
|
4
|
-
const require_scoring = require("./scoring-
|
|
5
|
-
const require_item_group = require("./item-group-
|
|
6
|
-
const require_schemas = require("./schemas-
|
|
7
|
-
const require_xapi = require("./xapi-
|
|
2
|
+
const require_registry = require("./registry-Ih5n4PVZ.cjs");
|
|
3
|
+
const require_ai_writing = require("./ai-writing-C4YRVrFi.cjs");
|
|
4
|
+
const require_scoring = require("./scoring-CaPS6q8b.cjs");
|
|
5
|
+
const require_item_group = require("./item-group-CQRbb8Rx.cjs");
|
|
6
|
+
const require_schemas = require("./schemas-Q2dyOgc2.cjs");
|
|
7
|
+
const require_xapi = require("./xapi-BX0hvRRB.cjs");
|
|
8
8
|
//#region src/delivery.ts
|
|
9
9
|
/**
|
|
10
10
|
* The policy that restricts nothing: every setting `true`. It is what an absent
|
|
@@ -907,7 +907,8 @@ const ITEM_GROUP_FIELD_POLICY = {
|
|
|
907
907
|
media: require_registry.MEDIA_FIELD_POLICY,
|
|
908
908
|
locale: "public",
|
|
909
909
|
attribution: "public",
|
|
910
|
-
transcript: "author-only"
|
|
910
|
+
transcript: "author-only",
|
|
911
|
+
script: "author-only"
|
|
911
912
|
},
|
|
912
913
|
timeline: {
|
|
913
914
|
cues: {
|
|
@@ -994,6 +995,55 @@ function assertRedactedItemGroup(data) {
|
|
|
994
995
|
}
|
|
995
996
|
});
|
|
996
997
|
}
|
|
998
|
+
/** A deep copy of plain data with every field its policy calls `author-only` left out. */
|
|
999
|
+
function withoutAuthorOnlyValue(value, policy) {
|
|
1000
|
+
if (Array.isArray(value)) return value.map((element) => withoutAuthorOnlyValue(element, policy));
|
|
1001
|
+
if (value === null || typeof value !== "object") return value;
|
|
1002
|
+
const output = {};
|
|
1003
|
+
for (const [key, field] of Object.entries(value)) {
|
|
1004
|
+
const classification = policy?.[key];
|
|
1005
|
+
if (classification === "author-only") continue;
|
|
1006
|
+
output[key] = withoutAuthorOnlyValue(field, classification === void 0 || isSensitivity(classification) ? void 0 : classification);
|
|
1007
|
+
}
|
|
1008
|
+
return output;
|
|
1009
|
+
}
|
|
1010
|
+
/** The policy an activity is stripped under; the same one `redact()` reads. */
|
|
1011
|
+
function policyOf(type) {
|
|
1012
|
+
const descriptor = typeof type === "string" ? require_registry.getActivityTypeDescriptor(type) : void 0;
|
|
1013
|
+
if (descriptor === void 0) throw new require_registry.UnknownActivityTypeError(String(type));
|
|
1014
|
+
if (descriptor.fieldPolicy === void 0) throw new Error(`Activity type "${descriptor.type}" has no fieldPolicy; withoutAuthorOnly() cannot tell which of its fields are author-only.`);
|
|
1015
|
+
return descriptor.fieldPolicy;
|
|
1016
|
+
}
|
|
1017
|
+
/**
|
|
1018
|
+
* A copy of an activity or an item group without its `author-only` fields:
|
|
1019
|
+
* a recording's `transcript` and `script`, on an item's media, a
|
|
1020
|
+
* multiple-choice option's recording, a stimulus or its media. Everything
|
|
1021
|
+
* else is kept as stored, the answer key and your own fields included, and
|
|
1022
|
+
* the copy is not marked redacted, so it scores exactly as the stored item.
|
|
1023
|
+
*
|
|
1024
|
+
* For practice an app scores in the browser, where the learner may hold the
|
|
1025
|
+
* key but not the author's material. It is NOT a learner-safe projection: an
|
|
1026
|
+
* exam, or anything a learner must not be able to answer from the payload,
|
|
1027
|
+
* goes through {@link redact} / {@link redactItemGroup}, whose output a scorer
|
|
1028
|
+
* refuses.
|
|
1029
|
+
*
|
|
1030
|
+
* ```ts
|
|
1031
|
+
* res.json(withoutAuthorOnly(practiceItem));
|
|
1032
|
+
* ```
|
|
1033
|
+
*
|
|
1034
|
+
* @throws UnknownActivityTypeError when an activity's type is not registered,
|
|
1035
|
+
* and Error when it declares no `fieldPolicy`.
|
|
1036
|
+
*/
|
|
1037
|
+
function withoutAuthorOnly(entry) {
|
|
1038
|
+
if (typeof entry !== "object" || entry === null || Array.isArray(entry)) throw new TypeError("withoutAuthorOnly: expects an activity or an item group.");
|
|
1039
|
+
const record = entry;
|
|
1040
|
+
if (record.type !== "item-group") return withoutAuthorOnlyValue(entry, policyOf(record.type));
|
|
1041
|
+
const { items, ...container } = record;
|
|
1042
|
+
return {
|
|
1043
|
+
...withoutAuthorOnlyValue(container, ITEM_GROUP_FIELD_POLICY),
|
|
1044
|
+
...Array.isArray(items) ? { items: items.map((item) => withoutAuthorOnlyValue(item, policyOf(item?.type))) } : items !== void 0 ? { items } : {}
|
|
1045
|
+
};
|
|
1046
|
+
}
|
|
997
1047
|
//#endregion
|
|
998
1048
|
//#region src/timeline.ts
|
|
999
1049
|
/**
|
|
@@ -1081,6 +1131,7 @@ exports.READ_ALOUD_MAX_REFERENCE_LENGTH = require_registry.READ_ALOUD_MAX_REFERE
|
|
|
1081
1131
|
exports.READ_ALOUD_MAX_SECONDS = require_registry.READ_ALOUD_MAX_SECONDS;
|
|
1082
1132
|
exports.READ_ALOUD_MAX_TAKES = require_registry.READ_ALOUD_MAX_TAKES;
|
|
1083
1133
|
exports.RedactedScoringError = require_registry.RedactedScoringError;
|
|
1134
|
+
exports.SCRIPT_MAX_TURNS = require_registry.SCRIPT_MAX_TURNS;
|
|
1084
1135
|
exports.SPEECH_ASSESSMENT_MAX_WORDS = require_registry.SPEECH_ASSESSMENT_MAX_WORDS;
|
|
1085
1136
|
exports.TIMELINE_MAX_CHAPTERS = require_item_group.TIMELINE_MAX_CHAPTERS;
|
|
1086
1137
|
exports.TIMELINE_MAX_ITEMS = require_item_group.TIMELINE_MAX_ITEMS;
|
|
@@ -1120,6 +1171,7 @@ exports.composeAssessmentScore = require_scoring.composeAssessmentScore;
|
|
|
1120
1171
|
exports.composeTimelineScore = composeTimelineScore;
|
|
1121
1172
|
exports.computePassThreshold = require_scoring.computePassThreshold;
|
|
1122
1173
|
exports.contentHash = require_scoring.contentHash;
|
|
1174
|
+
exports.contentJsonSchema = require_schemas.contentJsonSchema;
|
|
1123
1175
|
exports.countWords = require_registry.countWords;
|
|
1124
1176
|
exports.createDraft = require_ai_writing.createDraft;
|
|
1125
1177
|
exports.createInteractiveVideoDraft = require_ai_writing.createInteractiveVideoDraft;
|
|
@@ -1161,6 +1213,8 @@ exports.isItemGroup = isItemGroup;
|
|
|
1161
1213
|
exports.itemGroupJsonSchema = require_schemas.itemGroupJsonSchema;
|
|
1162
1214
|
exports.jsonSchemaFor = require_schemas.jsonSchemaFor;
|
|
1163
1215
|
exports.levenshteinDistance = require_registry.levenshteinDistance;
|
|
1216
|
+
exports.listMediaRefs = require_ai_writing.listMediaRefs;
|
|
1217
|
+
exports.mapMediaRefs = require_ai_writing.mapMediaRefs;
|
|
1164
1218
|
exports.matchText = require_registry.matchText;
|
|
1165
1219
|
exports.multipleChoiceJsonSchema = require_schemas.multipleChoiceJsonSchema;
|
|
1166
1220
|
exports.multipleChoiceType = require_registry.multipleChoiceType;
|
|
@@ -1193,6 +1247,7 @@ exports.serializeMediaPlayLedger = serializeMediaPlayLedger;
|
|
|
1193
1247
|
exports.slotMediaKey = slotMediaKey;
|
|
1194
1248
|
exports.stimulusJsonSchema = require_schemas.stimulusJsonSchema;
|
|
1195
1249
|
exports.stimulusMediaKey = stimulusMediaKey;
|
|
1250
|
+
exports.transcriptOf = require_ai_writing.transcriptOf;
|
|
1196
1251
|
exports.validateActivity = require_schemas.validateActivity;
|
|
1197
1252
|
exports.validateDeliveryPolicy = validateDeliveryPolicy;
|
|
1198
1253
|
exports.validateDraft = require_ai_writing.validateDraft;
|
|
@@ -1204,6 +1259,7 @@ exports.validateOptionMedia = require_schemas.validateOptionMedia;
|
|
|
1204
1259
|
exports.validateSpeechAssessment = require_scoring.validateSpeechAssessment;
|
|
1205
1260
|
exports.validateXAPIStatement = require_xapi.validateXAPIStatement;
|
|
1206
1261
|
exports.verifyAttemptPlan = verifyAttemptPlan;
|
|
1262
|
+
exports.withoutAuthorOnly = withoutAuthorOnly;
|
|
1207
1263
|
exports.writtenResponseJsonSchema = require_schemas.writtenResponseJsonSchema;
|
|
1208
1264
|
exports.writtenResponseType = require_registry.writtenResponseType;
|
|
1209
1265
|
exports.xAPIBuilder = require_xapi.xAPIBuilder;
|