@longsightgroup/qti3-core 0.10.4 → 0.10.6
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 +62 -4
- package/dist/catalog.d.ts +8 -0
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +10 -0
- package/dist/catalog.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/item-scoring-expectation.d.ts +2 -0
- package/dist/item-scoring-expectation.d.ts.map +1 -1
- package/dist/item-scoring-expectation.js +8 -0
- package/dist/item-scoring-expectation.js.map +1 -1
- package/dist/parser.js +4 -6
- package/dist/parser.js.map +1 -1
- package/dist/qti-package-assets.d.ts +3 -2
- package/dist/qti-package-assets.d.ts.map +1 -1
- package/dist/qti-package-assets.js.map +1 -1
- package/dist/qti-package-items.d.ts +1 -0
- package/dist/qti-package-items.d.ts.map +1 -1
- package/dist/qti-package-items.js +36 -32
- package/dist/qti-package-items.js.map +1 -1
- package/dist/qti-package-manifest.d.ts +3 -2
- package/dist/qti-package-manifest.d.ts.map +1 -1
- package/dist/qti-package-manifest.js.map +1 -1
- package/dist/qti-package-metadata.d.ts +3 -2
- package/dist/qti-package-metadata.d.ts.map +1 -1
- package/dist/qti-package-metadata.js +5 -2
- package/dist/qti-package-metadata.js.map +1 -1
- package/dist/qti-package-plan.d.ts +41 -0
- package/dist/qti-package-plan.d.ts.map +1 -0
- package/dist/qti-package-plan.js +85 -0
- package/dist/qti-package-plan.js.map +1 -0
- package/dist/qti-package-stream.d.ts +38 -0
- package/dist/qti-package-stream.d.ts.map +1 -0
- package/dist/qti-package-stream.js +149 -0
- package/dist/qti-package-stream.js.map +1 -0
- package/dist/qti-package.d.ts.map +1 -1
- package/dist/qti-package.js +21 -51
- package/dist/qti-package.js.map +1 -1
- package/dist/response-validation-policy.d.ts +3 -1
- package/dist/response-validation-policy.d.ts.map +1 -1
- package/dist/response-validation-policy.js +63 -5
- package/dist/response-validation-policy.js.map +1 -1
- package/dist/response-validation.d.ts +3 -1
- package/dist/response-validation.d.ts.map +1 -1
- package/dist/response-validation.js +30 -9
- package/dist/response-validation.js.map +1 -1
- package/dist/scoring-disposition-policy.d.ts.map +1 -1
- package/dist/scoring-disposition-policy.js +6 -2
- package/dist/scoring-disposition-policy.js.map +1 -1
- package/dist/support-evidence.d.ts.map +1 -1
- package/dist/support-evidence.js +14 -3
- package/dist/support-evidence.js.map +1 -1
- package/dist/support.js +9 -2
- package/dist/support.js.map +1 -1
- package/dist/text-response.d.ts +9 -0
- package/dist/text-response.d.ts.map +1 -0
- package/dist/text-response.js +102 -0
- package/dist/text-response.js.map +1 -0
- package/dist/trusted-item-session.d.ts.map +1 -1
- package/dist/trusted-item-session.js +4 -3
- package/dist/trusted-item-session.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/validation-interactions.d.ts.map +1 -1
- package/dist/validation-interactions.js +102 -12
- package/dist/validation-interactions.js.map +1 -1
- package/package.json +1 -1
- package/src/catalog.ts +29 -0
- package/src/index.ts +15 -0
- package/src/item-scoring-expectation.ts +8 -0
- package/src/parser.ts +4 -6
- package/src/qti-package-assets.ts +3 -4
- package/src/qti-package-items.ts +50 -40
- package/src/qti-package-manifest.ts +2 -3
- package/src/qti-package-metadata.ts +16 -4
- package/src/qti-package-plan.ts +168 -0
- package/src/qti-package-stream.ts +254 -0
- package/src/qti-package.ts +27 -87
- package/src/response-validation-policy.ts +71 -3
- package/src/response-validation.ts +49 -4
- package/src/scoring-disposition-policy.ts +7 -2
- package/src/support-evidence.ts +14 -3
- package/src/support.ts +11 -2
- package/src/text-response.ts +106 -0
- package/src/trusted-item-session.ts +4 -3
- package/src/types.ts +2 -0
- package/src/validation-interactions.ts +139 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-interactions.js","sourceRoot":"","sources":["../src/validation-interactions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validation-interactions.js","sourceRoot":"","sources":["../src/validation-interactions.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/catalog.ts
CHANGED
|
@@ -13,6 +13,15 @@ export interface QtiCatalogSupportResolutionOptions {
|
|
|
13
13
|
supports?: string | readonly string[] | undefined;
|
|
14
14
|
languages?: string | readonly string[] | undefined;
|
|
15
15
|
includeDefaultFallback?: boolean | undefined;
|
|
16
|
+
/** Exact catalog/support/language tuples. Replaces language ranking and fallback; [] selects nothing. */
|
|
17
|
+
exactSelections?: readonly QtiCatalogSupportSelection[] | undefined;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** An already resolved catalog selection; absent language selects only unlanguaged content. */
|
|
21
|
+
export interface QtiCatalogSupportSelection {
|
|
22
|
+
readonly catalogId: string;
|
|
23
|
+
readonly support: string;
|
|
24
|
+
readonly entryLanguage?: string | undefined;
|
|
16
25
|
}
|
|
17
26
|
|
|
18
27
|
export interface QtiCatalogSupportResolution {
|
|
@@ -100,6 +109,26 @@ function matchingCatalogSupports(
|
|
|
100
109
|
): QtiResolvedCatalogSupport[] {
|
|
101
110
|
return catalog.cards.flatMap((card) => {
|
|
102
111
|
if (supportFilter && !supportFilter.has(card.support.toLowerCase())) return [];
|
|
112
|
+
if (options.exactSelections !== undefined) {
|
|
113
|
+
const selections = options.exactSelections.filter(
|
|
114
|
+
(selection) =>
|
|
115
|
+
selection.catalogId === catalog.id &&
|
|
116
|
+
selection.support.toLowerCase() === card.support.toLowerCase(),
|
|
117
|
+
);
|
|
118
|
+
return catalogCandidates(card)
|
|
119
|
+
.filter((candidate) =>
|
|
120
|
+
selections.some(
|
|
121
|
+
(selection) =>
|
|
122
|
+
selection.entryLanguage?.toLowerCase() === candidate.language?.toLowerCase(),
|
|
123
|
+
),
|
|
124
|
+
)
|
|
125
|
+
.map((candidate) =>
|
|
126
|
+
resolvedSupport(catalog, {
|
|
127
|
+
...candidate,
|
|
128
|
+
selectionReason: candidate.language === undefined ? "unlanguaged" : "exact-language",
|
|
129
|
+
}),
|
|
130
|
+
);
|
|
131
|
+
}
|
|
103
132
|
return selectedCandidates(card, languages, options).map((candidate) =>
|
|
104
133
|
resolvedSupport(catalog, candidate),
|
|
105
134
|
);
|
package/src/index.ts
CHANGED
|
@@ -9,6 +9,7 @@ export {
|
|
|
9
9
|
createCatalogSupportResolution,
|
|
10
10
|
type QtiCatalogSupportResolution,
|
|
11
11
|
type QtiCatalogSupportResolutionOptions,
|
|
12
|
+
type QtiCatalogSupportSelection,
|
|
12
13
|
type QtiCatalogSelectionReason,
|
|
13
14
|
type QtiResolvedCatalogReference,
|
|
14
15
|
type QtiResolvedCatalogSupport,
|
|
@@ -368,3 +369,17 @@ export {
|
|
|
368
369
|
readQtiJsonValue,
|
|
369
370
|
unknownToDisplayString,
|
|
370
371
|
} from "./value-format.js";
|
|
372
|
+
|
|
373
|
+
export {
|
|
374
|
+
parseQtiPackageStream,
|
|
375
|
+
type QtiPackageSource,
|
|
376
|
+
type QtiPackageStreamLimits,
|
|
377
|
+
type QtiPackageStreamEvent,
|
|
378
|
+
type QtiPackageStreamSummary,
|
|
379
|
+
} from "./qti-package-stream.js";
|
|
380
|
+
|
|
381
|
+
export {
|
|
382
|
+
captureQtiTextResponse,
|
|
383
|
+
formatQtiTextResponse,
|
|
384
|
+
qtiTextResponseString,
|
|
385
|
+
} from "./text-response.js";
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import type { QtiAssessmentItem } from "./types.js";
|
|
2
2
|
|
|
3
|
+
/** An external score cannot be inferred from an initialized or restored outcome value. */
|
|
4
|
+
export function itemHasExternalScore(item: QtiAssessmentItem): boolean {
|
|
5
|
+
const scoring = item.outcomeDeclarations.find((declaration) => declaration.identifier === "SCORE")
|
|
6
|
+
?.attributes["external-scored"];
|
|
7
|
+
return scoring === "human" || scoring === "externalMachine";
|
|
8
|
+
}
|
|
9
|
+
|
|
3
10
|
/** Items that declare automated scoring via response processing or a SCORE outcome. */
|
|
4
11
|
export function itemExpectsAutomatedScore(item: QtiAssessmentItem): boolean {
|
|
12
|
+
if (itemHasExternalScore(item)) return false;
|
|
5
13
|
return (
|
|
6
14
|
Boolean(item.responseProcessing) ||
|
|
7
15
|
item.outcomeDeclarations.some((declaration) => declaration.identifier === "SCORE")
|
package/src/parser.ts
CHANGED
|
@@ -518,6 +518,7 @@ function parseObjectAsset(node: XmlNode | undefined): QtiObjectAsset | undefined
|
|
|
518
518
|
const inferredSvgDimensions = inlineSvgDimensions(data);
|
|
519
519
|
return {
|
|
520
520
|
data,
|
|
521
|
+
imageAttributes: node.localName === "img" ? node.attributes : pictureImage?.attributes,
|
|
521
522
|
type:
|
|
522
523
|
node.attributes.type ??
|
|
523
524
|
pictureImage?.attributes.type ??
|
|
@@ -655,10 +656,7 @@ function firstSourceType(sources: QtiMediaSource[]): string | undefined {
|
|
|
655
656
|
}
|
|
656
657
|
|
|
657
658
|
function firstSrcsetCandidate(srcset: string | undefined): string | undefined {
|
|
658
|
-
return srcset
|
|
659
|
-
?.split(",")
|
|
660
|
-
.map((candidate) => candidate.trim().split(/\s+/)[0])
|
|
661
|
-
.find((candidate) => candidate && candidate.length > 0);
|
|
659
|
+
return srcset?.trim().split(/\s+/)[0]?.replace(/,+$/, "");
|
|
662
660
|
}
|
|
663
661
|
|
|
664
662
|
function assetTypeFromData(data: string | undefined): string | undefined {
|
|
@@ -760,7 +758,7 @@ function matchSetIndex(node: XmlNode): number {
|
|
|
760
758
|
return siblings.indexOf(node);
|
|
761
759
|
}
|
|
762
760
|
|
|
763
|
-
const objectElementNames = new Set(["object", "img"]);
|
|
764
|
-
const mediaElementNames = new Set(["audio", "video",
|
|
761
|
+
const objectElementNames = new Set(["object", "img", "picture"]);
|
|
762
|
+
const mediaElementNames = new Set(["audio", "video", "object", "img"]);
|
|
765
763
|
const drawingElementNames = new Set(["picture", ...objectElementNames]);
|
|
766
764
|
const blockBoundaryElementNames = new Set(["p", "div"]);
|
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
resolvePackageHref,
|
|
15
15
|
type PackageXmlFile,
|
|
16
16
|
} from "./qti-package-xml.js";
|
|
17
|
-
import type { QtiPackageEntry } from "./qti-package-zip.js";
|
|
18
17
|
import type { QtiDiagnostic } from "./types.js";
|
|
19
18
|
|
|
20
19
|
interface PendingAssetReference {
|
|
@@ -87,8 +86,8 @@ export function discoverContentAssetHrefs(
|
|
|
87
86
|
export function collectPackageAssets(
|
|
88
87
|
resourcesByIdentifier: ReadonlyMap<string, QtiManifestResource>,
|
|
89
88
|
assessmentTest: QtiAssessmentTestPackageModel | undefined,
|
|
90
|
-
items: readonly QtiPackageItem[],
|
|
91
|
-
entriesByPath:
|
|
89
|
+
items: readonly Pick<QtiPackageItem, "href" | "manifestResourceIdentifier" | "assetHrefs">[],
|
|
90
|
+
entriesByPath: { has(path: string): boolean },
|
|
92
91
|
diagnostics: QtiDiagnostic[],
|
|
93
92
|
): QtiPackageAsset[] {
|
|
94
93
|
const pending: PendingAssetReference[] = [];
|
|
@@ -220,7 +219,7 @@ function collectPackageRelativeTextRefs(
|
|
|
220
219
|
|
|
221
220
|
function materializeAssets(
|
|
222
221
|
pending: readonly PendingAssetReference[],
|
|
223
|
-
entriesByPath:
|
|
222
|
+
entriesByPath: { has(path: string): boolean },
|
|
224
223
|
): QtiPackageAsset[] {
|
|
225
224
|
const assetsByHref = new Map<string, PendingAssetReference[]>();
|
|
226
225
|
for (const reference of pending) {
|
package/src/qti-package-items.ts
CHANGED
|
@@ -346,6 +346,55 @@ export function itemReferencesForPackageShape(
|
|
|
346
346
|
return references;
|
|
347
347
|
}
|
|
348
348
|
|
|
349
|
+
export function parsePackageItem(
|
|
350
|
+
reference: PackageItemReference,
|
|
351
|
+
entry: QtiPackageEntry,
|
|
352
|
+
xmlFile: PackageXmlFile | undefined,
|
|
353
|
+
diagnostics: QtiDiagnostic[],
|
|
354
|
+
): QtiPackageItem {
|
|
355
|
+
const resolvedXml = xmlFile ?? parsePackageXml(entry);
|
|
356
|
+
// Full QTI parse for document model; lightweight tree above supplies metadata and asset refs.
|
|
357
|
+
const parsed = parseQtiXml(resolvedXml.xml);
|
|
358
|
+
const itemDiagnostics = parsed.diagnostics.map((diagnostic) =>
|
|
359
|
+
scopeDiagnosticToPackagePath(reference.href, diagnostic),
|
|
360
|
+
);
|
|
361
|
+
diagnostics.push(...itemDiagnostics);
|
|
362
|
+
|
|
363
|
+
const assetHrefs = resolvedXml.root ? discoverContentAssetHrefs(resolvedXml, diagnostics) : [];
|
|
364
|
+
const root =
|
|
365
|
+
resolvedXml.root?.localName === "qti-assessment-item" &&
|
|
366
|
+
resolvedXml.root.uri === QTI_ASI_NAMESPACE
|
|
367
|
+
? resolvedXml.root
|
|
368
|
+
: undefined;
|
|
369
|
+
const item = parsed.document?.item;
|
|
370
|
+
const timeLimits = root
|
|
371
|
+
? parseTimeLimits(qtiChildElements(root, "qti-time-limits")[0], reference.href, diagnostics)
|
|
372
|
+
: undefined;
|
|
373
|
+
|
|
374
|
+
return {
|
|
375
|
+
href: reference.href,
|
|
376
|
+
source: reference.source,
|
|
377
|
+
manifestResourceIdentifier: reference.manifestResourceIdentifier,
|
|
378
|
+
assessmentItemRefIdentifier: reference.assessmentItemRefIdentifier,
|
|
379
|
+
identifier: item?.identifier,
|
|
380
|
+
title: item?.title,
|
|
381
|
+
document: parsed.document,
|
|
382
|
+
timing: root ? parseTimingMetadata(root, reference.href, diagnostics, timeLimits) : undefined,
|
|
383
|
+
timeLimits,
|
|
384
|
+
standards: uniqueStandards([
|
|
385
|
+
...reference.standards.filter(
|
|
386
|
+
(standard) =>
|
|
387
|
+
standard.resourcePartIdentifier === undefined ||
|
|
388
|
+
standard.resourcePartIdentifier === item?.identifier,
|
|
389
|
+
),
|
|
390
|
+
...(root ? parseStandardAlignments(root, reference.href) : []),
|
|
391
|
+
]),
|
|
392
|
+
assetHrefs,
|
|
393
|
+
diagnostics: itemDiagnostics,
|
|
394
|
+
xml: resolvedXml.xml,
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
|
|
349
398
|
export function parsePackageItems(
|
|
350
399
|
references: readonly PackageItemReference[],
|
|
351
400
|
entriesByPath: ReadonlyMap<string, QtiPackageEntry>,
|
|
@@ -380,46 +429,7 @@ export function parsePackageItems(
|
|
|
380
429
|
continue;
|
|
381
430
|
}
|
|
382
431
|
|
|
383
|
-
|
|
384
|
-
// Full QTI parse for document model; lightweight tree above supplies metadata and asset refs.
|
|
385
|
-
const parsed = parseQtiXml(xmlFile.xml);
|
|
386
|
-
const itemDiagnostics = parsed.diagnostics.map((diagnostic) =>
|
|
387
|
-
scopeDiagnosticToPackagePath(reference.href, diagnostic),
|
|
388
|
-
);
|
|
389
|
-
diagnostics.push(...itemDiagnostics);
|
|
390
|
-
|
|
391
|
-
const assetHrefs = xmlFile.root ? discoverContentAssetHrefs(xmlFile, diagnostics) : [];
|
|
392
|
-
const root =
|
|
393
|
-
xmlFile.root?.localName === "qti-assessment-item" && xmlFile.root.uri === QTI_ASI_NAMESPACE
|
|
394
|
-
? xmlFile.root
|
|
395
|
-
: undefined;
|
|
396
|
-
const item = parsed.document?.item;
|
|
397
|
-
const timeLimits = root
|
|
398
|
-
? parseTimeLimits(qtiChildElements(root, "qti-time-limits")[0], reference.href, diagnostics)
|
|
399
|
-
: undefined;
|
|
400
|
-
|
|
401
|
-
items.push({
|
|
402
|
-
href: reference.href,
|
|
403
|
-
source: reference.source,
|
|
404
|
-
manifestResourceIdentifier: reference.manifestResourceIdentifier,
|
|
405
|
-
assessmentItemRefIdentifier: reference.assessmentItemRefIdentifier,
|
|
406
|
-
identifier: item?.identifier,
|
|
407
|
-
title: item?.title,
|
|
408
|
-
document: parsed.document,
|
|
409
|
-
timing: root ? parseTimingMetadata(root, reference.href, diagnostics, timeLimits) : undefined,
|
|
410
|
-
timeLimits,
|
|
411
|
-
standards: uniqueStandards([
|
|
412
|
-
...reference.standards.filter(
|
|
413
|
-
(standard) =>
|
|
414
|
-
standard.resourcePartIdentifier === undefined ||
|
|
415
|
-
standard.resourcePartIdentifier === item?.identifier,
|
|
416
|
-
),
|
|
417
|
-
...(root ? parseStandardAlignments(root, reference.href) : []),
|
|
418
|
-
]),
|
|
419
|
-
assetHrefs,
|
|
420
|
-
diagnostics: itemDiagnostics,
|
|
421
|
-
xml: xmlFile.xml,
|
|
422
|
-
});
|
|
432
|
+
items.push(parsePackageItem(reference, entry, xmlFilesByPath.get(reference.href), diagnostics));
|
|
423
433
|
}
|
|
424
434
|
|
|
425
435
|
return items;
|
|
@@ -3,7 +3,6 @@ import { normalizePackagePath, pushPackageDiagnostic } from "./qti-package-paths
|
|
|
3
3
|
import { parseStandardAlignments } from "./qti-package-metadata.js";
|
|
4
4
|
import type { QtiManifestFile, QtiManifestResource, QtiPackageShape } from "./qti-package-types.js";
|
|
5
5
|
import { childPackageElements, packageDescendants, stripHrefSuffix } from "./qti-package-xml.js";
|
|
6
|
-
import type { QtiPackageEntry } from "./qti-package-zip.js";
|
|
7
6
|
import type { QtiDiagnostic } from "./types.js";
|
|
8
7
|
import { QTI_PACKAGE_MANIFEST_NAMESPACE } from "./qti-namespaces.js";
|
|
9
8
|
|
|
@@ -21,7 +20,7 @@ export function isQtiAssessmentTestResource(type: string): boolean {
|
|
|
21
20
|
|
|
22
21
|
export function parseManifestResources(
|
|
23
22
|
manifestRoot: QtiPackageXmlNode,
|
|
24
|
-
entriesByPath:
|
|
23
|
+
entriesByPath: { has(path: string): boolean },
|
|
25
24
|
diagnostics: QtiDiagnostic[],
|
|
26
25
|
): QtiManifestResource[] {
|
|
27
26
|
const resourceNodes = packageDescendants(
|
|
@@ -72,7 +71,7 @@ export function parseManifestResources(
|
|
|
72
71
|
|
|
73
72
|
function parseManifestFiles(
|
|
74
73
|
resourceNode: QtiPackageXmlNode,
|
|
75
|
-
entriesByPath:
|
|
74
|
+
entriesByPath: { has(path: string): boolean },
|
|
76
75
|
diagnostics: QtiDiagnostic[],
|
|
77
76
|
): QtiManifestFile[] {
|
|
78
77
|
const files: QtiManifestFile[] = [];
|
|
@@ -282,19 +282,31 @@ function optionalFiniteNumber(raw: string | undefined): number | undefined {
|
|
|
282
282
|
return Number.isFinite(value) ? value : undefined;
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
-
export function
|
|
285
|
+
export function primaryTimingFromScan(
|
|
286
286
|
assessmentTest: QtiAssessmentTestPackageModel | undefined,
|
|
287
|
-
|
|
287
|
+
timedItemCount: number,
|
|
288
|
+
soleItemTiming: QtiTimingMetadata | undefined,
|
|
288
289
|
): QtiTimingMetadata | undefined {
|
|
289
290
|
if (assessmentTest?.timing) return assessmentTest.timing;
|
|
291
|
+
return timedItemCount === 1 ? soleItemTiming : undefined;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
export function primaryTiming(
|
|
295
|
+
assessmentTest: QtiAssessmentTestPackageModel | undefined,
|
|
296
|
+
items: readonly Pick<QtiPackageItem, "timing">[],
|
|
297
|
+
): QtiTimingMetadata | undefined {
|
|
290
298
|
const timedItems = items.filter((item) => item.timing !== undefined);
|
|
291
|
-
return
|
|
299
|
+
return primaryTimingFromScan(
|
|
300
|
+
assessmentTest,
|
|
301
|
+
timedItems.length,
|
|
302
|
+
timedItems.length === 1 ? timedItems[0]?.timing : undefined,
|
|
303
|
+
);
|
|
292
304
|
}
|
|
293
305
|
|
|
294
306
|
export function packageTitle(
|
|
295
307
|
manifestRoot: QtiPackageXmlNode | undefined,
|
|
296
308
|
assessmentTest: QtiAssessmentTestPackageModel | undefined,
|
|
297
|
-
items: readonly QtiPackageItem[],
|
|
309
|
+
items: readonly Pick<QtiPackageItem, "title">[],
|
|
298
310
|
): string {
|
|
299
311
|
const manifestTitle = manifestRoot
|
|
300
312
|
? packageDescendants(manifestRoot, "title", QTI_PACKAGE_MANIFEST_NAMESPACE)
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import type { QtiPackageXmlNode } from "./package-xml.js";
|
|
2
|
+
import { collectPackageAssets } from "./qti-package-assets.js";
|
|
3
|
+
import { QTI_PACKAGE_MANIFEST_PATH } from "./qti-package-manifest.js";
|
|
4
|
+
import {
|
|
5
|
+
packageTitle,
|
|
6
|
+
parseStandardAlignments,
|
|
7
|
+
primaryTimingFromScan,
|
|
8
|
+
uniqueStandards,
|
|
9
|
+
} from "./qti-package-metadata.js";
|
|
10
|
+
import { pushPackageDiagnostic } from "./qti-package-paths.js";
|
|
11
|
+
import {
|
|
12
|
+
detectPackageShape,
|
|
13
|
+
diagnoseManifestDependencyReferences,
|
|
14
|
+
diagnosePrimaryResourceHrefs,
|
|
15
|
+
indexManifestResources,
|
|
16
|
+
isQtiAssessmentTestResource,
|
|
17
|
+
isQtiItemResource,
|
|
18
|
+
parseManifestResources,
|
|
19
|
+
} from "./qti-package-manifest.js";
|
|
20
|
+
import { pushXmlDiagnostics, type PackageXmlFile } from "./qti-package-xml.js";
|
|
21
|
+
import type {
|
|
22
|
+
QtiAssessmentTestPackageModel,
|
|
23
|
+
QtiManifestResource,
|
|
24
|
+
QtiPackageItem,
|
|
25
|
+
QtiPackageParseResult,
|
|
26
|
+
QtiPackageShape,
|
|
27
|
+
QtiStandardAlignment,
|
|
28
|
+
QtiTimingMetadata,
|
|
29
|
+
} from "./qti-package-types.js";
|
|
30
|
+
import { QTI_PACKAGE_MANIFEST_NAMESPACE } from "./qti-namespaces.js";
|
|
31
|
+
import type { QtiDiagnostic } from "./types.js";
|
|
32
|
+
|
|
33
|
+
/** Package metadata without extracted bodies or retained item models. */
|
|
34
|
+
export type QtiPackageSummary = Omit<QtiPackageParseResult, "items" | "entries"> & {
|
|
35
|
+
readonly itemCount: number;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/** Inspect manifest semantics against an entry inventory without reading item bodies. */
|
|
39
|
+
export function inspectPackageManifest(
|
|
40
|
+
entriesByPath: { has(path: string): boolean },
|
|
41
|
+
manifestXml: PackageXmlFile | undefined,
|
|
42
|
+
diagnostics: QtiDiagnostic[],
|
|
43
|
+
) {
|
|
44
|
+
if (!manifestXml) {
|
|
45
|
+
pushPackageDiagnostic(
|
|
46
|
+
diagnostics,
|
|
47
|
+
"package.manifest.missing",
|
|
48
|
+
"error",
|
|
49
|
+
"QTI package does not contain imsmanifest.xml.",
|
|
50
|
+
QTI_PACKAGE_MANIFEST_PATH,
|
|
51
|
+
);
|
|
52
|
+
} else {
|
|
53
|
+
pushXmlDiagnostics(manifestXml, diagnostics);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const manifestRoot =
|
|
57
|
+
manifestXml?.root?.localName === "manifest" &&
|
|
58
|
+
manifestXml.root.uri === QTI_PACKAGE_MANIFEST_NAMESPACE
|
|
59
|
+
? manifestXml.root
|
|
60
|
+
: undefined;
|
|
61
|
+
if (manifestXml?.root && !manifestRoot) {
|
|
62
|
+
pushPackageDiagnostic(
|
|
63
|
+
diagnostics,
|
|
64
|
+
"package.manifest.root",
|
|
65
|
+
"error",
|
|
66
|
+
manifestXml.root.localName === "manifest"
|
|
67
|
+
? `Expected imsmanifest.xml manifest in namespace ${QTI_PACKAGE_MANIFEST_NAMESPACE}, found ${manifestXml.root.uri ?? "(none)"}.`
|
|
68
|
+
: `Expected imsmanifest.xml root manifest, found ${manifestXml.root.localName}.`,
|
|
69
|
+
QTI_PACKAGE_MANIFEST_PATH,
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const manifestResources = manifestRoot
|
|
74
|
+
? parseManifestResources(manifestRoot, entriesByPath, diagnostics)
|
|
75
|
+
: [];
|
|
76
|
+
const resourcesByIdentifier = indexManifestResources(manifestResources, diagnostics);
|
|
77
|
+
diagnoseManifestDependencyReferences(manifestResources, resourcesByIdentifier, diagnostics);
|
|
78
|
+
|
|
79
|
+
const itemResources = manifestResources.filter((resource) => isQtiItemResource(resource.type));
|
|
80
|
+
const assessmentTestResources = manifestResources.filter((resource) =>
|
|
81
|
+
isQtiAssessmentTestResource(resource.type),
|
|
82
|
+
);
|
|
83
|
+
diagnosePrimaryResourceHrefs([...itemResources, ...assessmentTestResources], diagnostics);
|
|
84
|
+
|
|
85
|
+
const packageShape = detectPackageShape(itemResources, assessmentTestResources, diagnostics);
|
|
86
|
+
return {
|
|
87
|
+
manifestRoot,
|
|
88
|
+
manifestResources,
|
|
89
|
+
resourcesByIdentifier,
|
|
90
|
+
itemResources,
|
|
91
|
+
assessmentTestResources,
|
|
92
|
+
packageShape,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export interface BuildPackageSummaryInput {
|
|
97
|
+
readonly manifestRoot: QtiPackageXmlNode | undefined;
|
|
98
|
+
readonly manifestResources: readonly QtiManifestResource[];
|
|
99
|
+
readonly resourcesByIdentifier: ReadonlyMap<string, QtiManifestResource>;
|
|
100
|
+
readonly packageShape: QtiPackageShape;
|
|
101
|
+
readonly assessmentTest: QtiAssessmentTestPackageModel | undefined;
|
|
102
|
+
readonly assetItems: readonly Pick<
|
|
103
|
+
QtiPackageItem,
|
|
104
|
+
"href" | "manifestResourceIdentifier" | "assetHrefs"
|
|
105
|
+
>[];
|
|
106
|
+
readonly titleItems: readonly Pick<QtiPackageItem, "title">[];
|
|
107
|
+
readonly timedItemCount: number;
|
|
108
|
+
readonly soleItemTiming: QtiTimingMetadata | undefined;
|
|
109
|
+
readonly itemStandards: readonly QtiStandardAlignment[];
|
|
110
|
+
readonly entriesByPath: { has(path: string): boolean };
|
|
111
|
+
readonly diagnostics: QtiDiagnostic[];
|
|
112
|
+
readonly itemCount: number;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/** Build canonical package metadata shared by sync and incremental parsers. */
|
|
116
|
+
export function buildPackageSummary(input: BuildPackageSummaryInput): QtiPackageSummary {
|
|
117
|
+
const assets = collectPackageAssets(
|
|
118
|
+
input.resourcesByIdentifier,
|
|
119
|
+
input.assessmentTest,
|
|
120
|
+
input.assetItems,
|
|
121
|
+
input.entriesByPath,
|
|
122
|
+
input.diagnostics,
|
|
123
|
+
);
|
|
124
|
+
return {
|
|
125
|
+
ok: input.diagnostics.every((diagnostic) => diagnostic.severity !== "error"),
|
|
126
|
+
title: packageTitle(input.manifestRoot, input.assessmentTest, input.titleItems),
|
|
127
|
+
packageShape: input.packageShape,
|
|
128
|
+
manifestResources: input.manifestResources,
|
|
129
|
+
assessmentTest: input.assessmentTest,
|
|
130
|
+
assets,
|
|
131
|
+
standards: uniqueStandards([
|
|
132
|
+
...(input.manifestRoot
|
|
133
|
+
? parseStandardAlignments(input.manifestRoot, QTI_PACKAGE_MANIFEST_PATH)
|
|
134
|
+
: []),
|
|
135
|
+
...(input.assessmentTest?.standards ?? []),
|
|
136
|
+
...input.itemStandards,
|
|
137
|
+
]),
|
|
138
|
+
timing: primaryTimingFromScan(input.assessmentTest, input.timedItemCount, input.soleItemTiming),
|
|
139
|
+
diagnostics: input.diagnostics,
|
|
140
|
+
itemCount: input.itemCount,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export function failedPackageSummary(diagnostics: QtiDiagnostic[]): QtiPackageSummary {
|
|
145
|
+
return {
|
|
146
|
+
ok: false,
|
|
147
|
+
title: "",
|
|
148
|
+
packageShape: "unknown",
|
|
149
|
+
manifestResources: [],
|
|
150
|
+
assessmentTest: undefined,
|
|
151
|
+
assets: [],
|
|
152
|
+
standards: [],
|
|
153
|
+
timing: undefined,
|
|
154
|
+
itemCount: 0,
|
|
155
|
+
diagnostics,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export function enforceDiagnosticLimit(diagnostics: QtiDiagnostic[], maxDiagnostics: number): void {
|
|
160
|
+
if (diagnostics.length < maxDiagnostics) return;
|
|
161
|
+
diagnostics.length = maxDiagnostics;
|
|
162
|
+
pushPackageDiagnostic(
|
|
163
|
+
diagnostics,
|
|
164
|
+
"package.diagnostics.limit",
|
|
165
|
+
"error",
|
|
166
|
+
"Package processing stopped at the diagnostic limit.",
|
|
167
|
+
);
|
|
168
|
+
}
|