@pie-players/pie-assessment-toolkit 0.2.7 → 0.2.10
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 +200 -67
- package/dist/attempt/TestSession.d.ts +23 -21
- package/dist/attempt/TestSession.d.ts.map +1 -1
- package/dist/attempt/TestSession.js +17 -15
- package/dist/attempt/TestSession.js.map +1 -1
- package/dist/attempt/adapters/activity-to-test-attempt-session.d.ts +50 -0
- package/dist/attempt/adapters/activity-to-test-attempt-session.d.ts.map +1 -0
- package/dist/attempt/adapters/activity-to-test-attempt-session.js +135 -0
- package/dist/attempt/adapters/activity-to-test-attempt-session.js.map +1 -0
- package/dist/components/ItemToolBar.custom-element.js +953 -0
- package/dist/components/PieAssessmentToolkit.custom-element.js +757 -0
- package/dist/components/SectionToolBar.custom-element.js +162 -0
- package/dist/components/item-toolbar-element.d.ts +3 -0
- package/dist/components/item-toolbar-element.d.ts.map +1 -0
- package/dist/components/item-toolbar-element.js +2 -0
- package/dist/components/item-toolbar-element.js.map +1 -0
- package/dist/components/pie-assessment-toolkit-element.d.ts +3 -0
- package/dist/components/pie-assessment-toolkit-element.d.ts.map +1 -0
- package/dist/components/pie-assessment-toolkit-element.js +2 -0
- package/dist/components/pie-assessment-toolkit-element.js.map +1 -0
- package/dist/components/section-toolbar-element.d.ts +3 -0
- package/dist/components/section-toolbar-element.d.ts.map +1 -0
- package/dist/components/section-toolbar-element.js +2 -0
- package/dist/components/section-toolbar-element.js.map +1 -0
- package/dist/context/assessment-toolkit-context.d.ts +52 -0
- package/dist/context/assessment-toolkit-context.d.ts.map +1 -0
- package/dist/context/assessment-toolkit-context.js +6 -0
- package/dist/context/assessment-toolkit-context.js.map +1 -0
- package/dist/context/runtime-context-consumer.d.ts +14 -0
- package/dist/context/runtime-context-consumer.d.ts.map +1 -0
- package/dist/context/runtime-context-consumer.js +52 -0
- package/dist/context/runtime-context-consumer.js.map +1 -0
- package/dist/index.d.ts +19 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -11
- package/dist/index.js.map +1 -1
- package/dist/runtime/RuntimeRegistry.d.ts +13 -0
- package/dist/runtime/RuntimeRegistry.d.ts.map +1 -0
- package/dist/runtime/RuntimeRegistry.js +50 -0
- package/dist/runtime/RuntimeRegistry.js.map +1 -0
- package/dist/runtime/SectionRuntimeEngine.d.ts +45 -0
- package/dist/runtime/SectionRuntimeEngine.d.ts.map +1 -0
- package/dist/runtime/SectionRuntimeEngine.js +81 -0
- package/dist/runtime/SectionRuntimeEngine.js.map +1 -0
- package/dist/runtime/registration-events.d.ts +19 -0
- package/dist/runtime/registration-events.d.ts.map +1 -0
- package/dist/runtime/registration-events.js +4 -0
- package/dist/runtime/registration-events.js.map +1 -0
- package/dist/runtime/runtime-event-guards.d.ts +3 -0
- package/dist/runtime/runtime-event-guards.d.ts.map +1 -0
- package/dist/runtime/runtime-event-guards.js +9 -0
- package/dist/runtime/runtime-event-guards.js.map +1 -0
- package/dist/runtime/tool-host-contract.d.ts +30 -0
- package/dist/runtime/tool-host-contract.d.ts.map +1 -0
- package/dist/runtime/tool-host-contract.js +48 -0
- package/dist/runtime/tool-host-contract.js.map +1 -0
- package/dist/services/HighlightCoordinator.d.ts +9 -0
- package/dist/services/HighlightCoordinator.d.ts.map +1 -1
- package/dist/services/HighlightCoordinator.js +196 -55
- package/dist/services/HighlightCoordinator.js.map +1 -1
- package/dist/services/TTSService.d.ts +21 -1
- package/dist/services/TTSService.d.ts.map +1 -1
- package/dist/services/TTSService.js +356 -117
- package/dist/services/TTSService.js.map +1 -1
- package/dist/services/ThemeProvider.d.ts +1 -0
- package/dist/services/ThemeProvider.d.ts.map +1 -1
- package/dist/services/ThemeProvider.js +82 -46
- package/dist/services/ThemeProvider.js.map +1 -1
- package/dist/services/ToolConfigResolver.d.ts +1 -1
- package/dist/services/ToolConfigResolver.js +1 -1
- package/dist/services/ToolCoordinator.d.ts +1 -1
- package/dist/services/ToolCoordinator.d.ts.map +1 -1
- package/dist/services/ToolRegistry.d.ts +76 -67
- package/dist/services/ToolRegistry.d.ts.map +1 -1
- package/dist/services/ToolRegistry.js +73 -22
- package/dist/services/ToolRegistry.js.map +1 -1
- package/dist/services/ToolkitCoordinator.d.ts +126 -8
- package/dist/services/ToolkitCoordinator.d.ts.map +1 -1
- package/dist/services/ToolkitCoordinator.js +607 -72
- package/dist/services/ToolkitCoordinator.js.map +1 -1
- package/dist/services/createDefaultToolRegistry.d.ts +11 -12
- package/dist/services/createDefaultToolRegistry.d.ts.map +1 -1
- package/dist/services/createDefaultToolRegistry.js +9 -56
- package/dist/services/createDefaultToolRegistry.js.map +1 -1
- package/dist/services/defaultPersonalNeedsProfile.d.ts +4 -0
- package/dist/services/defaultPersonalNeedsProfile.d.ts.map +1 -0
- package/dist/services/defaultPersonalNeedsProfile.js +25 -0
- package/dist/services/defaultPersonalNeedsProfile.js.map +1 -0
- package/dist/services/interfaces.d.ts +62 -2
- package/dist/services/interfaces.d.ts.map +1 -1
- package/dist/services/interfaces.js.map +1 -1
- package/dist/services/pnp-standard-features.d.ts +3 -4
- package/dist/services/pnp-standard-features.d.ts.map +1 -1
- package/dist/services/pnp-standard-features.js +0 -3
- package/dist/services/pnp-standard-features.js.map +1 -1
- package/dist/services/section-controller-types.d.ts +37 -0
- package/dist/services/section-controller-types.d.ts.map +1 -0
- package/dist/services/section-controller-types.js +2 -0
- package/dist/services/section-controller-types.js.map +1 -0
- package/dist/services/tool-config-defaults.d.ts +14 -0
- package/dist/services/tool-config-defaults.d.ts.map +1 -0
- package/dist/services/tool-config-defaults.js +23 -0
- package/dist/services/tool-config-defaults.js.map +1 -0
- package/dist/services/tool-context.d.ts +4 -4
- package/dist/services/tool-context.d.ts.map +1 -1
- package/dist/services/tool-context.js +156 -20
- package/dist/services/tool-context.js.map +1 -1
- package/dist/services/tool-instance-id.d.ts +15 -0
- package/dist/services/tool-instance-id.d.ts.map +1 -0
- package/dist/services/tool-instance-id.js +55 -0
- package/dist/services/tool-instance-id.js.map +1 -0
- package/dist/services/tool-providers/IToolProvider.d.ts +2 -3
- package/dist/services/tool-providers/IToolProvider.d.ts.map +1 -1
- package/dist/services/tool-providers/IToolProvider.js +1 -2
- package/dist/services/tool-providers/IToolProvider.js.map +1 -1
- package/dist/services/tool-providers/MathJsToolProvider.d.ts +25 -0
- package/dist/services/tool-providers/MathJsToolProvider.d.ts.map +1 -0
- package/dist/services/tool-providers/MathJsToolProvider.js +53 -0
- package/dist/services/tool-providers/MathJsToolProvider.js.map +1 -0
- package/dist/services/tool-providers/index.d.ts +2 -0
- package/dist/services/tool-providers/index.d.ts.map +1 -1
- package/dist/services/tool-providers/index.js +1 -0
- package/dist/services/tool-providers/index.js.map +1 -1
- package/dist/services/toolbar-items.d.ts +26 -0
- package/dist/services/toolbar-items.d.ts.map +1 -0
- package/dist/services/toolbar-items.js +10 -0
- package/dist/services/toolbar-items.js.map +1 -0
- package/dist/services/tools-config-normalizer.d.ts +26 -0
- package/dist/services/tools-config-normalizer.d.ts.map +1 -0
- package/dist/services/tools-config-normalizer.js +62 -0
- package/dist/services/tools-config-normalizer.js.map +1 -0
- package/dist/services/tts/browser-provider.d.ts.map +1 -1
- package/dist/services/tts/browser-provider.js +201 -34
- package/dist/services/tts/browser-provider.js.map +1 -1
- package/dist/services/tts/text-processing.d.ts +17 -0
- package/dist/services/tts/text-processing.d.ts.map +1 -0
- package/dist/services/tts/text-processing.js +144 -0
- package/dist/services/tts/text-processing.js.map +1 -0
- package/dist/tools/calculators/ti-provider.d.ts.map +1 -1
- package/dist/tools/calculators/ti-provider.js +127 -4
- package/dist/tools/calculators/ti-provider.js.map +1 -1
- package/dist/tools/client.d.ts +2 -1
- package/dist/tools/client.d.ts.map +1 -1
- package/dist/tools/client.js +2 -1
- package/dist/tools/client.js.map +1 -1
- package/dist/tools/default-tool-module-loaders.d.ts +9 -0
- package/dist/tools/default-tool-module-loaders.d.ts.map +1 -0
- package/dist/tools/default-tool-module-loaders.js +11 -0
- package/dist/tools/default-tool-module-loaders.js.map +1 -0
- package/dist/tools/index.d.ts +2 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/library-loader.d.ts +1 -1
- package/dist/tools/library-loader.d.ts.map +1 -1
- package/dist/tools/library-loader.js +7 -2
- package/dist/tools/library-loader.js.map +1 -1
- package/dist/tools/registrations/accessibility-tools.d.ts +8 -11
- package/dist/tools/registrations/accessibility-tools.d.ts.map +1 -1
- package/dist/tools/registrations/accessibility-tools.js +108 -120
- package/dist/tools/registrations/accessibility-tools.js.map +1 -1
- package/dist/tools/registrations/calculator.d.ts +2 -2
- package/dist/tools/registrations/calculator.d.ts.map +1 -1
- package/dist/tools/registrations/calculator.js +42 -55
- package/dist/tools/registrations/calculator.js.map +1 -1
- package/dist/tools/registrations/interaction-tools.d.ts.map +1 -1
- package/dist/tools/registrations/interaction-tools.js +77 -52
- package/dist/tools/registrations/interaction-tools.js.map +1 -1
- package/dist/tools/registrations/measurement-tools.d.ts.map +1 -1
- package/dist/tools/registrations/measurement-tools.js +63 -38
- package/dist/tools/registrations/measurement-tools.js.map +1 -1
- package/dist/tools/registrations/subject-specific-tools.d.ts.map +1 -1
- package/dist/tools/registrations/subject-specific-tools.js +63 -38
- package/dist/tools/registrations/subject-specific-tools.js.map +1 -1
- package/dist/tools/registrations/tts.d.ts +1 -1
- package/dist/tools/registrations/tts.d.ts.map +1 -1
- package/dist/tools/registrations/tts.js +171 -41
- package/dist/tools/registrations/tts.js.map +1 -1
- package/dist/tools/response-discovery.d.ts +12 -14
- package/dist/tools/response-discovery.d.ts.map +1 -1
- package/dist/tools/response-discovery.js +23 -80
- package/dist/tools/response-discovery.js.map +1 -1
- package/dist/tools/tool-tag-map.d.ts +3 -3
- package/dist/tools/tool-tag-map.d.ts.map +1 -1
- package/dist/tools/tool-tag-map.js +4 -4
- package/dist/tools/tool-tag-map.js.map +1 -1
- package/dist/tools/types.d.ts +3 -1
- package/dist/tools/types.d.ts.map +1 -1
- package/package.json +28 -27
- package/src/README.md +16 -32
- package/src/components/ItemToolBar.svelte +701 -0
- package/src/components/PieAssessmentToolkit.svelte +610 -0
- package/src/components/SectionToolBar.svelte +58 -0
- package/src/components/ToolButton.svelte +11 -11
- package/src/components/ToolButtonGroup.svelte +27 -11
- package/src/tools/README.md +6 -5
- package/src/tools/calculators/README.md +4 -4
- package/dist/player/AssessmentPlayer.d.ts +0 -397
- package/dist/player/AssessmentPlayer.d.ts.map +0 -1
- package/dist/player/AssessmentPlayer.js +0 -974
- package/dist/player/AssessmentPlayer.js.map +0 -1
- package/dist/player/index.d.ts +0 -17
- package/dist/player/index.d.ts.map +0 -1
- package/dist/player/index.js +0 -15
- package/dist/player/index.js.map +0 -1
- package/dist/player/navigation-types.d.ts +0 -63
- package/dist/player/navigation-types.d.ts.map +0 -1
- package/dist/player/navigation-types.js +0 -7
- package/dist/player/navigation-types.js.map +0 -1
- package/dist/player/qti-navigation.d.ts +0 -29
- package/dist/player/qti-navigation.d.ts.map +0 -1
- package/dist/player/qti-navigation.js +0 -160
- package/dist/player/qti-navigation.js.map +0 -1
- package/dist/reference-layout/index.d.ts +0 -19
- package/dist/reference-layout/index.d.ts.map +0 -1
- package/dist/reference-layout/index.js +0 -20
- package/dist/reference-layout/index.js.map +0 -1
- package/dist/services/AnnotationToolbarConfig.d.ts +0 -134
- package/dist/services/AnnotationToolbarConfig.d.ts.map +0 -1
- package/dist/services/AnnotationToolbarConfig.js +0 -100
- package/dist/services/AnnotationToolbarConfig.js.map +0 -1
- package/dist/services/AssessmentAuthoringService.d.ts +0 -60
- package/dist/services/AssessmentAuthoringService.d.ts.map +0 -1
- package/dist/services/AssessmentAuthoringService.js +0 -183
- package/dist/services/AssessmentAuthoringService.js.map +0 -1
- package/dist/services/PNPMapper.d.ts +0 -81
- package/dist/services/PNPMapper.d.ts.map +0 -1
- package/dist/services/PNPMapper.js +0 -108
- package/dist/services/PNPMapper.js.map +0 -1
- package/dist/services/tts/provider-interface.d.ts +0 -131
- package/dist/services/tts/provider-interface.d.ts.map +0 -1
- package/dist/services/tts/provider-interface.js +0 -10
- package/dist/services/tts/provider-interface.js.map +0 -1
- package/src/components/PNPProfileTester.example.svelte +0 -188
- package/src/components/PNPProfileTester.svelte +0 -397
- package/src/components/PNPProvenanceViewer.svelte +0 -260
- package/src/components/QuestionToolBar.svelte +0 -483
- package/src/player/AssessmentLayout.svelte +0 -68
- package/src/player/README.md +0 -154
- package/src/reference-layout/README.md +0 -135
- package/src/reference-layout/ReferenceLayout.svelte +0 -201
- package/src/reference-layout/components/AssessmentContent.svelte +0 -259
- package/src/reference-layout/components/AssessmentFooter.svelte +0 -89
- package/src/reference-layout/components/AssessmentHeader.svelte +0 -250
- package/src/reference-layout/components/AssessmentNavigation.svelte +0 -134
- package/src/reference-layout/components/AssessmentToolsBar.svelte +0 -176
- package/src/reference-layout/components/ItemPanel.svelte +0 -200
- package/src/reference-layout/components/NotesPanel.svelte +0 -179
- package/src/reference-layout/components/PassagePanel.svelte +0 -76
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-players/pie-assessment-toolkit",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.10",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "PIE assessment toolkit: composable services + reference implementation for assessment players and tool coordination",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
|
-
"url": "git+https://github.com/pie-framework/pie-players.git"
|
|
9
|
+
"url": "git+https://github.com/pie-framework/pie-players.git",
|
|
10
|
+
"directory": "packages/assessment-toolkit"
|
|
10
11
|
},
|
|
11
12
|
"publishConfig": {
|
|
12
13
|
"access": "public"
|
|
@@ -24,25 +25,17 @@
|
|
|
24
25
|
"types": "./dist/tools/client.d.ts",
|
|
25
26
|
"import": "./dist/tools/client.js"
|
|
26
27
|
},
|
|
27
|
-
"./
|
|
28
|
-
"types": "./dist/
|
|
29
|
-
"import": "./dist/
|
|
28
|
+
"./components/item-toolbar-element": {
|
|
29
|
+
"types": "./dist/components/item-toolbar-element.d.ts",
|
|
30
|
+
"import": "./dist/components/item-toolbar-element.js"
|
|
30
31
|
},
|
|
31
|
-
"./assessment-
|
|
32
|
-
"
|
|
33
|
-
"import": "./
|
|
32
|
+
"./components/pie-assessment-toolkit-element": {
|
|
33
|
+
"types": "./dist/components/pie-assessment-toolkit-element.d.ts",
|
|
34
|
+
"import": "./dist/components/pie-assessment-toolkit-element.js"
|
|
34
35
|
},
|
|
35
|
-
"./components/
|
|
36
|
-
"
|
|
37
|
-
"import": "./
|
|
38
|
-
},
|
|
39
|
-
"./components/PNPProvenanceViewer.svelte": {
|
|
40
|
-
"svelte": "./src/components/PNPProvenanceViewer.svelte",
|
|
41
|
-
"import": "./src/components/PNPProvenanceViewer.svelte"
|
|
42
|
-
},
|
|
43
|
-
"./components/PNPProfileTester.svelte": {
|
|
44
|
-
"svelte": "./src/components/PNPProfileTester.svelte",
|
|
45
|
-
"import": "./src/components/PNPProfileTester.svelte"
|
|
36
|
+
"./components/section-toolbar-element": {
|
|
37
|
+
"types": "./dist/components/section-toolbar-element.d.ts",
|
|
38
|
+
"import": "./dist/components/section-toolbar-element.js"
|
|
46
39
|
},
|
|
47
40
|
"./services/pnp-standard-features": {
|
|
48
41
|
"types": "./dist/services/pnp-standard-features.d.ts",
|
|
@@ -63,7 +56,7 @@
|
|
|
63
56
|
"README.md"
|
|
64
57
|
],
|
|
65
58
|
"scripts": {
|
|
66
|
-
"build": "tsc -p tsconfig.json",
|
|
59
|
+
"build": "rm -rf dist tsconfig.tsbuildinfo && tsc -p tsconfig.json && node ./scripts/build-ce-components.mjs",
|
|
67
60
|
"dev": "tsc -p tsconfig.json --watch",
|
|
68
61
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
69
62
|
"lint": "biome check .",
|
|
@@ -71,12 +64,12 @@
|
|
|
71
64
|
"test": "bun test"
|
|
72
65
|
},
|
|
73
66
|
"dependencies": {
|
|
74
|
-
"@pie-players/pie-calculator": "0.1.
|
|
75
|
-
"@pie-players/pie-calculator-desmos": "0.1.
|
|
76
|
-
"@pie-players/pie-
|
|
77
|
-
"@pie-players/pie-
|
|
78
|
-
"@pie-players/tts
|
|
79
|
-
"@
|
|
67
|
+
"@pie-players/pie-calculator": "0.1.5",
|
|
68
|
+
"@pie-players/pie-calculator-desmos": "0.1.6",
|
|
69
|
+
"@pie-players/pie-context": "0.1.2",
|
|
70
|
+
"@pie-players/pie-players-shared": "0.2.6",
|
|
71
|
+
"@pie-players/pie-tts": "0.1.5",
|
|
72
|
+
"@pie-players/tts-client-server": "0.2.5",
|
|
80
73
|
"daisyui": "^5.5.18"
|
|
81
74
|
},
|
|
82
75
|
"peerDependencies": {
|
|
@@ -85,5 +78,13 @@
|
|
|
85
78
|
"devDependencies": {
|
|
86
79
|
"@biomejs/biome": "^2.3.10",
|
|
87
80
|
"typescript": "^5.9.3"
|
|
88
|
-
}
|
|
81
|
+
},
|
|
82
|
+
"homepage": "https://github.com/pie-framework/pie-players/tree/master/packages/assessment-toolkit#readme",
|
|
83
|
+
"bugs": {
|
|
84
|
+
"url": "https://github.com/pie-framework/pie-players/issues"
|
|
85
|
+
},
|
|
86
|
+
"engines": {
|
|
87
|
+
"node": ">=18.0.0"
|
|
88
|
+
},
|
|
89
|
+
"sideEffects": true
|
|
89
90
|
}
|
package/src/README.md
CHANGED
|
@@ -76,18 +76,13 @@ sectionPlayer.catalogResolver = catalogResolver;
|
|
|
76
76
|
sectionPlayer.section = section;
|
|
77
77
|
```
|
|
78
78
|
|
|
79
|
-
### ✅
|
|
79
|
+
### ✅ Runtime Integration
|
|
80
80
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
- Manage navigation across sections
|
|
84
|
-
- Coordinate section player instances
|
|
85
|
-
- Provide assessment-level state management
|
|
86
|
-
- But delegate to section players for rendering
|
|
81
|
+
Use this toolkit package for shared services, section-player orchestration, and host-app integrations.
|
|
87
82
|
|
|
88
83
|
## Project Structure
|
|
89
84
|
|
|
90
|
-
```
|
|
85
|
+
```text
|
|
91
86
|
assessment-toolkit/
|
|
92
87
|
├── core/
|
|
93
88
|
│ └── TypedEventBus.ts # Event system
|
|
@@ -202,10 +197,10 @@ const studentProfile: StudentAccommodations = {
|
|
|
202
197
|
accommodations: ['tts', 'calculator', 'extended-time']
|
|
203
198
|
};
|
|
204
199
|
|
|
205
|
-
// Test blocks
|
|
200
|
+
// Test blocks lineReader but allows calculator
|
|
206
201
|
const rosterConfig: RosterToolConfig = {
|
|
207
202
|
calculator: "1",
|
|
208
|
-
|
|
203
|
+
lineReader: "0"
|
|
209
204
|
};
|
|
210
205
|
|
|
211
206
|
// Current item requires scientific calculator
|
|
@@ -226,7 +221,7 @@ const resolved = resolver.resolveAll({
|
|
|
226
221
|
// Result:
|
|
227
222
|
// - calculator: enabled (scientific, required by item)
|
|
228
223
|
// - tts: enabled (student accommodation)
|
|
229
|
-
// -
|
|
224
|
+
// - lineReader: disabled (blocked by roster)
|
|
230
225
|
```
|
|
231
226
|
|
|
232
227
|
## Integration Patterns
|
|
@@ -374,8 +369,6 @@ await ttsService.updateSettings({
|
|
|
374
369
|
});
|
|
375
370
|
```
|
|
376
371
|
|
|
377
|
-
**Unified Settings UI**: A pre-built settings component is available in `section-demos/src/lib/components/AssessmentToolkitSettings.svelte` that provides a tabbed interface for configuring TTS, highlighting, and other toolkit features. See the component's README for integration details.
|
|
378
|
-
|
|
379
372
|
### AccessibilityCatalogResolver
|
|
380
373
|
|
|
381
374
|
Manages QTI 3.0 accessibility catalogs (SSML, sign language, braille, simplified language, etc.).
|
|
@@ -434,6 +427,7 @@ catalogResolver.addItemCatalogs(result.catalogs);
|
|
|
434
427
|
```
|
|
435
428
|
|
|
436
429
|
**Example Input:**
|
|
430
|
+
|
|
437
431
|
```typescript
|
|
438
432
|
{
|
|
439
433
|
prompt: `<div>
|
|
@@ -444,6 +438,7 @@ catalogResolver.addItemCatalogs(result.catalogs);
|
|
|
444
438
|
```
|
|
445
439
|
|
|
446
440
|
**Example Output:**
|
|
441
|
+
|
|
447
442
|
```typescript
|
|
448
443
|
{
|
|
449
444
|
// Cleaned config
|
|
@@ -513,7 +508,7 @@ The toolkit natively supports QTI 3.0 features for standards-compliant assessmen
|
|
|
513
508
|
Student accommodations and IEP/504 support with automatic tool resolution:
|
|
514
509
|
|
|
515
510
|
```typescript
|
|
516
|
-
import {
|
|
511
|
+
import { PNPToolResolver } from '@pie-players/pie-assessment-toolkit';
|
|
517
512
|
|
|
518
513
|
// QTI 3.0 assessment with PNP
|
|
519
514
|
const assessment = {
|
|
@@ -535,9 +530,6 @@ const assessment = {
|
|
|
535
530
|
}
|
|
536
531
|
};
|
|
537
532
|
|
|
538
|
-
// Simple initialization - tools automatically resolved
|
|
539
|
-
const player = new AssessmentPlayer({ assessment, loadItem });
|
|
540
|
-
|
|
541
533
|
// Or use PNPToolResolver directly
|
|
542
534
|
const resolver = new PNPToolResolver();
|
|
543
535
|
const tools = resolver.resolveTools(assessment, currentItemRef);
|
|
@@ -553,7 +545,6 @@ const tools = resolver.resolveTools(assessment, currentItemRef);
|
|
|
553
545
|
'protractor' → 'protractor'
|
|
554
546
|
'highlighter' → 'highlighter'
|
|
555
547
|
'lineReader' → 'lineReader'
|
|
556
|
-
'magnifier' → 'magnifier'
|
|
557
548
|
'colorContrast' → 'colorScheme'
|
|
558
549
|
'answerMasking' → 'answerEliminator'
|
|
559
550
|
```
|
|
@@ -563,8 +554,11 @@ and can be overridden via `createDefaultToolRegistry(...)`:
|
|
|
563
554
|
|
|
564
555
|
```typescript
|
|
565
556
|
import { createDefaultToolRegistry } from '@pie-players/pie-assessment-toolkit';
|
|
557
|
+
import { DEFAULT_TOOL_MODULE_LOADERS } from '@pie-players/pie-default-tool-loaders';
|
|
566
558
|
|
|
567
559
|
const toolRegistry = createDefaultToolRegistry({
|
|
560
|
+
// Lazy tool module loading (recommended)
|
|
561
|
+
toolModuleLoaders: DEFAULT_TOOL_MODULE_LOADERS,
|
|
568
562
|
toolTagMap: {
|
|
569
563
|
calculator: 'my-calculator-tool',
|
|
570
564
|
textToSpeech: 'my-tts-tool'
|
|
@@ -577,7 +571,7 @@ const toolRegistry = createDefaultToolRegistry({
|
|
|
577
571
|
Global variables shared across assessment items:
|
|
578
572
|
|
|
579
573
|
```typescript
|
|
580
|
-
import {
|
|
574
|
+
import { ContextVariableStore } from '@pie-players/pie-assessment-toolkit';
|
|
581
575
|
|
|
582
576
|
// Assessment with context declarations
|
|
583
577
|
const assessment = {
|
|
@@ -597,17 +591,7 @@ const assessment = {
|
|
|
597
591
|
]
|
|
598
592
|
};
|
|
599
593
|
|
|
600
|
-
// Use
|
|
601
|
-
const player = new AssessmentPlayer({ assessment, loadItem });
|
|
602
|
-
|
|
603
|
-
const seed = player.getContextVariable('RANDOM_SEED');
|
|
604
|
-
player.setContextVariable('DIFFICULTY_LEVEL', 'hard');
|
|
605
|
-
|
|
606
|
-
// Pass to PIE elements
|
|
607
|
-
const context = player.getContextVariables();
|
|
608
|
-
await renderItem(item, session, context);
|
|
609
|
-
|
|
610
|
-
// Or use ContextVariableStore directly
|
|
594
|
+
// Use ContextVariableStore directly
|
|
611
595
|
const store = new ContextVariableStore(assessment.contextDeclarations);
|
|
612
596
|
store.set('RANDOM_SEED', 12345);
|
|
613
597
|
const context = store.toObject();
|
|
@@ -624,7 +608,7 @@ const context = store.toObject();
|
|
|
624
608
|
|
|
625
609
|
Tool resolution follows this precedence (highest to lowest):
|
|
626
610
|
|
|
627
|
-
```
|
|
611
|
+
```text
|
|
628
612
|
1. District Block (absolute veto)
|
|
629
613
|
2. Test Administration Override
|
|
630
614
|
3. Item Restriction (per-item block)
|
|
@@ -636,5 +620,5 @@ Tool resolution follows this precedence (highest to lowest):
|
|
|
636
620
|
## Related Documentation
|
|
637
621
|
|
|
638
622
|
- [Architecture Overview](../../../docs/ARCHITECTURE.md) - Complete system architecture
|
|
639
|
-
- [Assessment Toolkit Architecture](../../../docs/tools-and-accomodations/
|
|
623
|
+
- [Assessment Toolkit Architecture](../../../docs/tools-and-accomodations/tools-high-level-architecture.md) - Toolkit design
|
|
640
624
|
- [Tools Architecture](../../../docs/tools-and-accomodations/tools-high-level-architecture.md) - Tool coordination
|