@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.
Files changed (249) hide show
  1. package/README.md +200 -67
  2. package/dist/attempt/TestSession.d.ts +23 -21
  3. package/dist/attempt/TestSession.d.ts.map +1 -1
  4. package/dist/attempt/TestSession.js +17 -15
  5. package/dist/attempt/TestSession.js.map +1 -1
  6. package/dist/attempt/adapters/activity-to-test-attempt-session.d.ts +50 -0
  7. package/dist/attempt/adapters/activity-to-test-attempt-session.d.ts.map +1 -0
  8. package/dist/attempt/adapters/activity-to-test-attempt-session.js +135 -0
  9. package/dist/attempt/adapters/activity-to-test-attempt-session.js.map +1 -0
  10. package/dist/components/ItemToolBar.custom-element.js +953 -0
  11. package/dist/components/PieAssessmentToolkit.custom-element.js +757 -0
  12. package/dist/components/SectionToolBar.custom-element.js +162 -0
  13. package/dist/components/item-toolbar-element.d.ts +3 -0
  14. package/dist/components/item-toolbar-element.d.ts.map +1 -0
  15. package/dist/components/item-toolbar-element.js +2 -0
  16. package/dist/components/item-toolbar-element.js.map +1 -0
  17. package/dist/components/pie-assessment-toolkit-element.d.ts +3 -0
  18. package/dist/components/pie-assessment-toolkit-element.d.ts.map +1 -0
  19. package/dist/components/pie-assessment-toolkit-element.js +2 -0
  20. package/dist/components/pie-assessment-toolkit-element.js.map +1 -0
  21. package/dist/components/section-toolbar-element.d.ts +3 -0
  22. package/dist/components/section-toolbar-element.d.ts.map +1 -0
  23. package/dist/components/section-toolbar-element.js +2 -0
  24. package/dist/components/section-toolbar-element.js.map +1 -0
  25. package/dist/context/assessment-toolkit-context.d.ts +52 -0
  26. package/dist/context/assessment-toolkit-context.d.ts.map +1 -0
  27. package/dist/context/assessment-toolkit-context.js +6 -0
  28. package/dist/context/assessment-toolkit-context.js.map +1 -0
  29. package/dist/context/runtime-context-consumer.d.ts +14 -0
  30. package/dist/context/runtime-context-consumer.d.ts.map +1 -0
  31. package/dist/context/runtime-context-consumer.js +52 -0
  32. package/dist/context/runtime-context-consumer.js.map +1 -0
  33. package/dist/index.d.ts +19 -6
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +14 -11
  36. package/dist/index.js.map +1 -1
  37. package/dist/runtime/RuntimeRegistry.d.ts +13 -0
  38. package/dist/runtime/RuntimeRegistry.d.ts.map +1 -0
  39. package/dist/runtime/RuntimeRegistry.js +50 -0
  40. package/dist/runtime/RuntimeRegistry.js.map +1 -0
  41. package/dist/runtime/SectionRuntimeEngine.d.ts +45 -0
  42. package/dist/runtime/SectionRuntimeEngine.d.ts.map +1 -0
  43. package/dist/runtime/SectionRuntimeEngine.js +81 -0
  44. package/dist/runtime/SectionRuntimeEngine.js.map +1 -0
  45. package/dist/runtime/registration-events.d.ts +19 -0
  46. package/dist/runtime/registration-events.d.ts.map +1 -0
  47. package/dist/runtime/registration-events.js +4 -0
  48. package/dist/runtime/registration-events.js.map +1 -0
  49. package/dist/runtime/runtime-event-guards.d.ts +3 -0
  50. package/dist/runtime/runtime-event-guards.d.ts.map +1 -0
  51. package/dist/runtime/runtime-event-guards.js +9 -0
  52. package/dist/runtime/runtime-event-guards.js.map +1 -0
  53. package/dist/runtime/tool-host-contract.d.ts +30 -0
  54. package/dist/runtime/tool-host-contract.d.ts.map +1 -0
  55. package/dist/runtime/tool-host-contract.js +48 -0
  56. package/dist/runtime/tool-host-contract.js.map +1 -0
  57. package/dist/services/HighlightCoordinator.d.ts +9 -0
  58. package/dist/services/HighlightCoordinator.d.ts.map +1 -1
  59. package/dist/services/HighlightCoordinator.js +196 -55
  60. package/dist/services/HighlightCoordinator.js.map +1 -1
  61. package/dist/services/TTSService.d.ts +21 -1
  62. package/dist/services/TTSService.d.ts.map +1 -1
  63. package/dist/services/TTSService.js +356 -117
  64. package/dist/services/TTSService.js.map +1 -1
  65. package/dist/services/ThemeProvider.d.ts +1 -0
  66. package/dist/services/ThemeProvider.d.ts.map +1 -1
  67. package/dist/services/ThemeProvider.js +82 -46
  68. package/dist/services/ThemeProvider.js.map +1 -1
  69. package/dist/services/ToolConfigResolver.d.ts +1 -1
  70. package/dist/services/ToolConfigResolver.js +1 -1
  71. package/dist/services/ToolCoordinator.d.ts +1 -1
  72. package/dist/services/ToolCoordinator.d.ts.map +1 -1
  73. package/dist/services/ToolRegistry.d.ts +76 -67
  74. package/dist/services/ToolRegistry.d.ts.map +1 -1
  75. package/dist/services/ToolRegistry.js +73 -22
  76. package/dist/services/ToolRegistry.js.map +1 -1
  77. package/dist/services/ToolkitCoordinator.d.ts +126 -8
  78. package/dist/services/ToolkitCoordinator.d.ts.map +1 -1
  79. package/dist/services/ToolkitCoordinator.js +607 -72
  80. package/dist/services/ToolkitCoordinator.js.map +1 -1
  81. package/dist/services/createDefaultToolRegistry.d.ts +11 -12
  82. package/dist/services/createDefaultToolRegistry.d.ts.map +1 -1
  83. package/dist/services/createDefaultToolRegistry.js +9 -56
  84. package/dist/services/createDefaultToolRegistry.js.map +1 -1
  85. package/dist/services/defaultPersonalNeedsProfile.d.ts +4 -0
  86. package/dist/services/defaultPersonalNeedsProfile.d.ts.map +1 -0
  87. package/dist/services/defaultPersonalNeedsProfile.js +25 -0
  88. package/dist/services/defaultPersonalNeedsProfile.js.map +1 -0
  89. package/dist/services/interfaces.d.ts +62 -2
  90. package/dist/services/interfaces.d.ts.map +1 -1
  91. package/dist/services/interfaces.js.map +1 -1
  92. package/dist/services/pnp-standard-features.d.ts +3 -4
  93. package/dist/services/pnp-standard-features.d.ts.map +1 -1
  94. package/dist/services/pnp-standard-features.js +0 -3
  95. package/dist/services/pnp-standard-features.js.map +1 -1
  96. package/dist/services/section-controller-types.d.ts +37 -0
  97. package/dist/services/section-controller-types.d.ts.map +1 -0
  98. package/dist/services/section-controller-types.js +2 -0
  99. package/dist/services/section-controller-types.js.map +1 -0
  100. package/dist/services/tool-config-defaults.d.ts +14 -0
  101. package/dist/services/tool-config-defaults.d.ts.map +1 -0
  102. package/dist/services/tool-config-defaults.js +23 -0
  103. package/dist/services/tool-config-defaults.js.map +1 -0
  104. package/dist/services/tool-context.d.ts +4 -4
  105. package/dist/services/tool-context.d.ts.map +1 -1
  106. package/dist/services/tool-context.js +156 -20
  107. package/dist/services/tool-context.js.map +1 -1
  108. package/dist/services/tool-instance-id.d.ts +15 -0
  109. package/dist/services/tool-instance-id.d.ts.map +1 -0
  110. package/dist/services/tool-instance-id.js +55 -0
  111. package/dist/services/tool-instance-id.js.map +1 -0
  112. package/dist/services/tool-providers/IToolProvider.d.ts +2 -3
  113. package/dist/services/tool-providers/IToolProvider.d.ts.map +1 -1
  114. package/dist/services/tool-providers/IToolProvider.js +1 -2
  115. package/dist/services/tool-providers/IToolProvider.js.map +1 -1
  116. package/dist/services/tool-providers/MathJsToolProvider.d.ts +25 -0
  117. package/dist/services/tool-providers/MathJsToolProvider.d.ts.map +1 -0
  118. package/dist/services/tool-providers/MathJsToolProvider.js +53 -0
  119. package/dist/services/tool-providers/MathJsToolProvider.js.map +1 -0
  120. package/dist/services/tool-providers/index.d.ts +2 -0
  121. package/dist/services/tool-providers/index.d.ts.map +1 -1
  122. package/dist/services/tool-providers/index.js +1 -0
  123. package/dist/services/tool-providers/index.js.map +1 -1
  124. package/dist/services/toolbar-items.d.ts +26 -0
  125. package/dist/services/toolbar-items.d.ts.map +1 -0
  126. package/dist/services/toolbar-items.js +10 -0
  127. package/dist/services/toolbar-items.js.map +1 -0
  128. package/dist/services/tools-config-normalizer.d.ts +26 -0
  129. package/dist/services/tools-config-normalizer.d.ts.map +1 -0
  130. package/dist/services/tools-config-normalizer.js +62 -0
  131. package/dist/services/tools-config-normalizer.js.map +1 -0
  132. package/dist/services/tts/browser-provider.d.ts.map +1 -1
  133. package/dist/services/tts/browser-provider.js +201 -34
  134. package/dist/services/tts/browser-provider.js.map +1 -1
  135. package/dist/services/tts/text-processing.d.ts +17 -0
  136. package/dist/services/tts/text-processing.d.ts.map +1 -0
  137. package/dist/services/tts/text-processing.js +144 -0
  138. package/dist/services/tts/text-processing.js.map +1 -0
  139. package/dist/tools/calculators/ti-provider.d.ts.map +1 -1
  140. package/dist/tools/calculators/ti-provider.js +127 -4
  141. package/dist/tools/calculators/ti-provider.js.map +1 -1
  142. package/dist/tools/client.d.ts +2 -1
  143. package/dist/tools/client.d.ts.map +1 -1
  144. package/dist/tools/client.js +2 -1
  145. package/dist/tools/client.js.map +1 -1
  146. package/dist/tools/default-tool-module-loaders.d.ts +9 -0
  147. package/dist/tools/default-tool-module-loaders.d.ts.map +1 -0
  148. package/dist/tools/default-tool-module-loaders.js +11 -0
  149. package/dist/tools/default-tool-module-loaders.js.map +1 -0
  150. package/dist/tools/index.d.ts +2 -1
  151. package/dist/tools/index.d.ts.map +1 -1
  152. package/dist/tools/index.js +2 -1
  153. package/dist/tools/index.js.map +1 -1
  154. package/dist/tools/library-loader.d.ts +1 -1
  155. package/dist/tools/library-loader.d.ts.map +1 -1
  156. package/dist/tools/library-loader.js +7 -2
  157. package/dist/tools/library-loader.js.map +1 -1
  158. package/dist/tools/registrations/accessibility-tools.d.ts +8 -11
  159. package/dist/tools/registrations/accessibility-tools.d.ts.map +1 -1
  160. package/dist/tools/registrations/accessibility-tools.js +108 -120
  161. package/dist/tools/registrations/accessibility-tools.js.map +1 -1
  162. package/dist/tools/registrations/calculator.d.ts +2 -2
  163. package/dist/tools/registrations/calculator.d.ts.map +1 -1
  164. package/dist/tools/registrations/calculator.js +42 -55
  165. package/dist/tools/registrations/calculator.js.map +1 -1
  166. package/dist/tools/registrations/interaction-tools.d.ts.map +1 -1
  167. package/dist/tools/registrations/interaction-tools.js +77 -52
  168. package/dist/tools/registrations/interaction-tools.js.map +1 -1
  169. package/dist/tools/registrations/measurement-tools.d.ts.map +1 -1
  170. package/dist/tools/registrations/measurement-tools.js +63 -38
  171. package/dist/tools/registrations/measurement-tools.js.map +1 -1
  172. package/dist/tools/registrations/subject-specific-tools.d.ts.map +1 -1
  173. package/dist/tools/registrations/subject-specific-tools.js +63 -38
  174. package/dist/tools/registrations/subject-specific-tools.js.map +1 -1
  175. package/dist/tools/registrations/tts.d.ts +1 -1
  176. package/dist/tools/registrations/tts.d.ts.map +1 -1
  177. package/dist/tools/registrations/tts.js +171 -41
  178. package/dist/tools/registrations/tts.js.map +1 -1
  179. package/dist/tools/response-discovery.d.ts +12 -14
  180. package/dist/tools/response-discovery.d.ts.map +1 -1
  181. package/dist/tools/response-discovery.js +23 -80
  182. package/dist/tools/response-discovery.js.map +1 -1
  183. package/dist/tools/tool-tag-map.d.ts +3 -3
  184. package/dist/tools/tool-tag-map.d.ts.map +1 -1
  185. package/dist/tools/tool-tag-map.js +4 -4
  186. package/dist/tools/tool-tag-map.js.map +1 -1
  187. package/dist/tools/types.d.ts +3 -1
  188. package/dist/tools/types.d.ts.map +1 -1
  189. package/package.json +28 -27
  190. package/src/README.md +16 -32
  191. package/src/components/ItemToolBar.svelte +701 -0
  192. package/src/components/PieAssessmentToolkit.svelte +610 -0
  193. package/src/components/SectionToolBar.svelte +58 -0
  194. package/src/components/ToolButton.svelte +11 -11
  195. package/src/components/ToolButtonGroup.svelte +27 -11
  196. package/src/tools/README.md +6 -5
  197. package/src/tools/calculators/README.md +4 -4
  198. package/dist/player/AssessmentPlayer.d.ts +0 -397
  199. package/dist/player/AssessmentPlayer.d.ts.map +0 -1
  200. package/dist/player/AssessmentPlayer.js +0 -974
  201. package/dist/player/AssessmentPlayer.js.map +0 -1
  202. package/dist/player/index.d.ts +0 -17
  203. package/dist/player/index.d.ts.map +0 -1
  204. package/dist/player/index.js +0 -15
  205. package/dist/player/index.js.map +0 -1
  206. package/dist/player/navigation-types.d.ts +0 -63
  207. package/dist/player/navigation-types.d.ts.map +0 -1
  208. package/dist/player/navigation-types.js +0 -7
  209. package/dist/player/navigation-types.js.map +0 -1
  210. package/dist/player/qti-navigation.d.ts +0 -29
  211. package/dist/player/qti-navigation.d.ts.map +0 -1
  212. package/dist/player/qti-navigation.js +0 -160
  213. package/dist/player/qti-navigation.js.map +0 -1
  214. package/dist/reference-layout/index.d.ts +0 -19
  215. package/dist/reference-layout/index.d.ts.map +0 -1
  216. package/dist/reference-layout/index.js +0 -20
  217. package/dist/reference-layout/index.js.map +0 -1
  218. package/dist/services/AnnotationToolbarConfig.d.ts +0 -134
  219. package/dist/services/AnnotationToolbarConfig.d.ts.map +0 -1
  220. package/dist/services/AnnotationToolbarConfig.js +0 -100
  221. package/dist/services/AnnotationToolbarConfig.js.map +0 -1
  222. package/dist/services/AssessmentAuthoringService.d.ts +0 -60
  223. package/dist/services/AssessmentAuthoringService.d.ts.map +0 -1
  224. package/dist/services/AssessmentAuthoringService.js +0 -183
  225. package/dist/services/AssessmentAuthoringService.js.map +0 -1
  226. package/dist/services/PNPMapper.d.ts +0 -81
  227. package/dist/services/PNPMapper.d.ts.map +0 -1
  228. package/dist/services/PNPMapper.js +0 -108
  229. package/dist/services/PNPMapper.js.map +0 -1
  230. package/dist/services/tts/provider-interface.d.ts +0 -131
  231. package/dist/services/tts/provider-interface.d.ts.map +0 -1
  232. package/dist/services/tts/provider-interface.js +0 -10
  233. package/dist/services/tts/provider-interface.js.map +0 -1
  234. package/src/components/PNPProfileTester.example.svelte +0 -188
  235. package/src/components/PNPProfileTester.svelte +0 -397
  236. package/src/components/PNPProvenanceViewer.svelte +0 -260
  237. package/src/components/QuestionToolBar.svelte +0 -483
  238. package/src/player/AssessmentLayout.svelte +0 -68
  239. package/src/player/README.md +0 -154
  240. package/src/reference-layout/README.md +0 -135
  241. package/src/reference-layout/ReferenceLayout.svelte +0 -201
  242. package/src/reference-layout/components/AssessmentContent.svelte +0 -259
  243. package/src/reference-layout/components/AssessmentFooter.svelte +0 -89
  244. package/src/reference-layout/components/AssessmentHeader.svelte +0 -250
  245. package/src/reference-layout/components/AssessmentNavigation.svelte +0 -134
  246. package/src/reference-layout/components/AssessmentToolsBar.svelte +0 -176
  247. package/src/reference-layout/components/ItemPanel.svelte +0 -200
  248. package/src/reference-layout/components/NotesPanel.svelte +0 -179
  249. package/src/reference-layout/components/PassagePanel.svelte +0 -76
@@ -2,71 +2,17 @@
2
2
  * Accessibility Tools Registrations
3
3
  *
4
4
  * Registers tools for visual accessibility and reading support:
5
- * - Magnifier (zoom lens)
6
5
  * - Line Reader (reading guide)
7
6
  * - Color Scheme (theme/contrast)
8
7
  * - Annotation Toolbar (text highlighting)
9
8
  *
10
9
  * Maps to QTI 3.0 standard access features from:
11
- * - visual category: magnification, highContrastDisplay, colorContrast
10
+ * - visual category: highContrastDisplay, colorContrast
12
11
  * - reading category: readingMask, readingGuide, highlighting
13
12
  */
14
13
  import { hasReadableText } from "../../services/tool-context.js";
14
+ import { createScopedToolId } from "../../services/tool-instance-id.js";
15
15
  import { createToolElement, } from "../tool-tag-map.js";
16
- /**
17
- * Magnifier tool registration
18
- *
19
- * Provides a draggable zoom lens for visual accessibility.
20
- * Global tool that works across entire assessment.
21
- */
22
- export const magnifierToolRegistration = {
23
- toolId: "magnifier",
24
- name: "Magnifier",
25
- description: "Zoom lens for visual accessibility",
26
- icon: "magnifying-glass",
27
- // Magnifier is assessment-wide (global)
28
- supportedLevels: ["assessment", "section"],
29
- // PNP support IDs
30
- // Maps to QTI 3.0 standard features: magnification, screenMagnifier, zoomable
31
- pnpSupportIds: [
32
- "magnification", // QTI 3.0 standard (visual.magnification)
33
- "screenMagnifier", // QTI 3.0 standard (visual.screenMagnifier)
34
- "zoomable", // QTI 3.0 standard (visual.zoomable)
35
- "magnifier", // Common variant
36
- "zoom", // Common variant
37
- "visualZoom", // Common variant
38
- ],
39
- /**
40
- * Pass 2: Magnifier is always relevant when allowed
41
- */
42
- isVisibleInContext(context) {
43
- return true; // Always show if allowed by orchestrator
44
- },
45
- createButton(context, options) {
46
- return {
47
- toolId: this.toolId,
48
- label: this.name,
49
- icon: typeof this.icon === "function" ? this.icon(context) : this.icon,
50
- disabled: options.disabled || false,
51
- ariaLabel: options.ariaLabel || "Magnifier - Zoom in on content",
52
- tooltip: options.tooltip || "Magnifier",
53
- onClick: options.onClick || (() => { }),
54
- className: options.className,
55
- };
56
- },
57
- createToolInstance(context, options) {
58
- const componentOverrides = options.config ?? {};
59
- const magnifier = createToolElement(this.toolId, context, options, componentOverrides);
60
- magnifier.visible = true;
61
- if (options.config?.toolkitCoordinator) {
62
- magnifier.toolkitCoordinator = options.config.toolkitCoordinator;
63
- }
64
- if (options.onClose) {
65
- magnifier.addEventListener("close", options.onClose);
66
- }
67
- return magnifier;
68
- },
69
- };
70
16
  /**
71
17
  * Line Reader tool registration
72
18
  *
@@ -95,41 +41,53 @@ export const lineReaderToolRegistration = {
95
41
  isVisibleInContext(context) {
96
42
  return hasReadableText(context);
97
43
  },
98
- createButton(context, options) {
99
- return {
44
+ renderToolbar(context, toolbarContext) {
45
+ const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
46
+ const button = {
100
47
  toolId: this.toolId,
101
48
  label: this.name,
102
49
  icon: typeof this.icon === "function" ? this.icon(context) : this.icon,
103
- disabled: options.disabled || false,
104
- ariaLabel: options.ariaLabel || "Line reader - Reading guide",
105
- tooltip: options.tooltip || "Line Reader",
106
- onClick: options.onClick || (() => { }),
107
- className: options.className,
50
+ disabled: false,
51
+ ariaLabel: "Line reader - Reading guide",
52
+ tooltip: "Line Reader",
53
+ onClick: () => toolbarContext.toggleTool(this.toolId),
54
+ active: toolbarContext.isToolVisible(fullToolId),
55
+ };
56
+ const componentOverrides = toolbarContext.componentOverrides ?? {};
57
+ const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
58
+ overlay.setAttribute("tool-id", fullToolId);
59
+ return {
60
+ toolId: this.toolId,
61
+ button,
62
+ elements: [{ element: overlay, mount: "after-buttons" }],
63
+ sync: () => {
64
+ const active = toolbarContext.isToolVisible(fullToolId);
65
+ button.active = active;
66
+ overlay.visible = active;
67
+ if (toolbarContext.toolkitCoordinator) {
68
+ overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
69
+ }
70
+ },
71
+ subscribeActive: (callback) => {
72
+ if (!toolbarContext.subscribeVisibility)
73
+ return () => { };
74
+ return toolbarContext.subscribeVisibility(() => {
75
+ callback(toolbarContext.isToolVisible(fullToolId));
76
+ });
77
+ },
108
78
  };
109
- },
110
- createToolInstance(context, options) {
111
- const componentOverrides = options.config ?? {};
112
- const lineReader = createToolElement(this.toolId, context, options, componentOverrides);
113
- lineReader.visible = true;
114
- if (options.config?.toolkitCoordinator) {
115
- lineReader.toolkitCoordinator = options.config.toolkitCoordinator;
116
- }
117
- if (options.onClose) {
118
- lineReader.addEventListener("close", options.onClose);
119
- }
120
- return lineReader;
121
79
  },
122
80
  };
123
81
  /**
124
- * Color Scheme tool registration
82
+ * Theme tool registration
125
83
  *
126
- * Provides Learnosity-standard accessible color schemes and theme controls.
84
+ * Provides accessible theme and contrast controls.
127
85
  * Global tool that affects entire assessment.
128
86
  */
129
- export const colorSchemeToolRegistration = {
130
- toolId: "colorScheme",
131
- name: "Color Scheme",
132
- description: "Accessible color themes and contrast",
87
+ export const themeToolRegistration = {
88
+ toolId: "theme",
89
+ name: "Theme",
90
+ description: "Accessible themes and contrast",
133
91
  icon: "swatch",
134
92
  // Color scheme is assessment-wide
135
93
  supportedLevels: ["assessment", "section"],
@@ -139,7 +97,8 @@ export const colorSchemeToolRegistration = {
139
97
  "highContrastDisplay", // QTI 3.0 standard (visual.highContrastDisplay)
140
98
  "colorContrast", // QTI 3.0 standard (visual.colorContrast)
141
99
  "invertColors", // QTI 3.0 standard (visual.invertColors)
142
- "colorScheme", // Common variant
100
+ "colorScheme", // Legacy alias
101
+ "theme", // Canonical id
143
102
  "highContrast", // Common variant
144
103
  "customColors", // Common variant
145
104
  ],
@@ -149,31 +108,48 @@ export const colorSchemeToolRegistration = {
149
108
  isVisibleInContext(context) {
150
109
  return true; // Always show if allowed by orchestrator
151
110
  },
152
- createButton(context, options) {
153
- return {
111
+ renderToolbar(context, toolbarContext) {
112
+ const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
113
+ const button = {
154
114
  toolId: this.toolId,
155
115
  label: this.name,
156
116
  icon: typeof this.icon === "function" ? this.icon(context) : this.icon,
157
- disabled: options.disabled || false,
158
- ariaLabel: options.ariaLabel || "Color scheme - Change colors and contrast",
159
- tooltip: options.tooltip || "Color Scheme",
160
- onClick: options.onClick || (() => { }),
161
- className: options.className,
117
+ disabled: false,
118
+ ariaLabel: "Theme - Change colors and contrast",
119
+ tooltip: "Theme",
120
+ onClick: () => toolbarContext.toggleTool(this.toolId),
121
+ active: toolbarContext.isToolVisible(fullToolId),
122
+ };
123
+ const componentOverrides = toolbarContext.componentOverrides ?? {};
124
+ const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
125
+ overlay.setAttribute("tool-id", fullToolId);
126
+ return {
127
+ toolId: this.toolId,
128
+ button,
129
+ elements: [{ element: overlay, mount: "after-buttons" }],
130
+ sync: () => {
131
+ const active = toolbarContext.isToolVisible(fullToolId);
132
+ button.active = active;
133
+ overlay.visible = active;
134
+ if (toolbarContext.toolkitCoordinator) {
135
+ overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
136
+ }
137
+ },
138
+ subscribeActive: (callback) => {
139
+ if (!toolbarContext.subscribeVisibility)
140
+ return () => { };
141
+ return toolbarContext.subscribeVisibility(() => {
142
+ callback(toolbarContext.isToolVisible(fullToolId));
143
+ });
144
+ },
162
145
  };
163
- },
164
- createToolInstance(context, options) {
165
- const componentOverrides = options.config ?? {};
166
- const colorScheme = createToolElement(this.toolId, context, options, componentOverrides);
167
- colorScheme.visible = true;
168
- if (options.config?.toolkitCoordinator) {
169
- colorScheme.toolkitCoordinator = options.config.toolkitCoordinator;
170
- }
171
- if (options.onClose) {
172
- colorScheme.addEventListener("close", options.onClose);
173
- }
174
- return colorScheme;
175
146
  },
176
147
  };
148
+ /**
149
+ * Backward-compatible export name used by existing imports.
150
+ * Canonical toolId is `theme`; `colorScheme` remains an alias at config level.
151
+ */
152
+ export const colorSchemeToolRegistration = themeToolRegistration;
177
153
  /**
178
154
  * Annotation Toolbar registration
179
155
  *
@@ -202,29 +178,41 @@ export const annotationToolbarRegistration = {
202
178
  isVisibleInContext(context) {
203
179
  return hasReadableText(context);
204
180
  },
205
- createButton(context, options) {
206
- return {
181
+ renderToolbar(context, toolbarContext) {
182
+ const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
183
+ const button = {
207
184
  toolId: this.toolId,
208
185
  label: this.name,
209
186
  icon: typeof this.icon === "function" ? this.icon(context) : this.icon,
210
- disabled: options.disabled || false,
211
- ariaLabel: options.ariaLabel || "Annotation toolbar - Highlight text",
212
- tooltip: options.tooltip || "Highlight",
213
- onClick: options.onClick || (() => { }),
214
- className: options.className,
187
+ disabled: false,
188
+ ariaLabel: "Annotation toolbar - Highlight text",
189
+ tooltip: "Highlight",
190
+ onClick: () => toolbarContext.toggleTool(this.toolId),
191
+ active: toolbarContext.isToolVisible(fullToolId),
192
+ };
193
+ const componentOverrides = toolbarContext.componentOverrides ?? {};
194
+ const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
195
+ overlay.setAttribute("tool-id", fullToolId);
196
+ return {
197
+ toolId: this.toolId,
198
+ button,
199
+ elements: [{ element: overlay, mount: "after-buttons" }],
200
+ sync: () => {
201
+ const active = toolbarContext.isToolVisible(fullToolId);
202
+ button.active = active;
203
+ overlay.visible = active;
204
+ if (toolbarContext.toolkitCoordinator) {
205
+ overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
206
+ }
207
+ },
208
+ subscribeActive: (callback) => {
209
+ if (!toolbarContext.subscribeVisibility)
210
+ return () => { };
211
+ return toolbarContext.subscribeVisibility(() => {
212
+ callback(toolbarContext.isToolVisible(fullToolId));
213
+ });
214
+ },
215
215
  };
216
- },
217
- createToolInstance(context, options) {
218
- const componentOverrides = options.config ?? {};
219
- const toolbar = createToolElement(this.toolId, context, options, componentOverrides);
220
- toolbar.visible = true;
221
- if (options.config?.toolkitCoordinator) {
222
- toolbar.toolkitCoordinator = options.config.toolkitCoordinator;
223
- }
224
- if (options.onClose) {
225
- toolbar.addEventListener("close", options.onClose);
226
- }
227
- return toolbar;
228
216
  },
229
217
  };
230
218
  //# sourceMappingURL=accessibility-tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accessibility-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/accessibility-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accessibility-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/accessibility-tools.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,8 @@ import type { ToolRegistration } from "../../services/ToolRegistry.js";
14
14
  *
15
15
  * Supports:
16
16
  * - Basic, scientific, and graphing calculators via Desmos
17
- * - Context-aware visibility (shows when math content is detected)
18
- * - All levels except assessment (section, item, passage, rubric, element)
17
+ * - Context-aware visibility (shows only when math content is detected)
18
+ * - Item level only
19
19
  */
20
20
  export declare const calculatorToolRegistration: ToolRegistration;
21
21
  //# sourceMappingURL=calculator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAQxC;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,EAAE,gBA4GxC,CAAC"}
1
+ {"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAMxC;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,EAAE,gBAiFxC,CAAC"}
@@ -9,22 +9,23 @@
9
9
  * - graphingCalculator (assessment tool)
10
10
  */
11
11
  import { hasMathContent } from "../../services/tool-context.js";
12
- import { createToolElement, } from "../tool-tag-map.js";
12
+ import { createScopedToolId } from "../../services/tool-instance-id.js";
13
+ import { createToolElement } from "../tool-tag-map.js";
13
14
  /**
14
15
  * Calculator tool registration
15
16
  *
16
17
  * Supports:
17
18
  * - Basic, scientific, and graphing calculators via Desmos
18
- * - Context-aware visibility (shows when math content is detected)
19
- * - All levels except assessment (section, item, passage, rubric, element)
19
+ * - Context-aware visibility (shows only when math content is detected)
20
+ * - Item level only
20
21
  */
21
22
  export const calculatorToolRegistration = {
22
23
  toolId: "calculator",
23
24
  name: "Calculator",
24
25
  description: "Multi-type calculator (basic, scientific, graphing)",
25
26
  icon: "calculator",
26
- // Calculator can appear at all levels except assessment
27
- supportedLevels: ["section", "item", "passage", "rubric", "element"],
27
+ // Calculator is item-level in this player architecture.
28
+ supportedLevels: ["item"],
28
29
  // PNP support IDs that enable this tool
29
30
  // Maps to QTI 3.0 standard features: calculator, graphingCalculator
30
31
  pnpSupportIds: [
@@ -36,63 +37,49 @@ export const calculatorToolRegistration = {
36
37
  /**
37
38
  * Pass 2: Determine if calculator is relevant in this context
38
39
  *
39
- * Calculator is relevant when:
40
- * - Context contains mathematical content (MathML, LaTeX, arithmetic)
41
- * - Section/item level (always show - student might need for any problem)
40
+ * Calculator is relevant when context contains mathematical content
41
+ * (MathML, LaTeX, arithmetic markers).
42
42
  */
43
43
  isVisibleInContext(context) {
44
- // At section/item level, always show (student might need it)
45
- if (context.level === "section" || context.level === "item") {
46
- return true;
47
- }
48
- // At passage/rubric/element level, show if math content detected
44
+ // Show only when math is present in item content.
49
45
  return hasMathContent(context);
50
46
  },
51
- /**
52
- * Create calculator button for toolbar
53
- */
54
- createButton(context, options) {
55
- const icon = typeof this.icon === "function" ? this.icon(context) : this.icon;
56
- return {
47
+ renderToolbar(context, toolbarContext) {
48
+ const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
49
+ const componentOverrides = toolbarContext.componentOverrides;
50
+ const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
51
+ overlay.setAttribute("tool-id", fullToolId);
52
+ const button = {
57
53
  toolId: this.toolId,
58
54
  label: this.name,
59
- icon: icon,
60
- disabled: options.disabled || false,
61
- ariaLabel: options.ariaLabel ||
62
- "Open calculator - Press to activate calculator tool",
63
- tooltip: options.tooltip || "Calculator",
64
- onClick: options.onClick || (() => { }),
65
- className: options.className,
55
+ icon: typeof this.icon === "function" ? this.icon(context) : this.icon,
56
+ disabled: false,
57
+ ariaLabel: "Open scientific calculator",
58
+ tooltip: "Calculator",
59
+ onClick: () => toolbarContext.toggleTool(this.toolId),
60
+ active: toolbarContext.isToolVisible(fullToolId),
61
+ };
62
+ return {
63
+ toolId: this.toolId,
64
+ elements: [{ element: overlay, mount: "after-buttons" }],
65
+ button,
66
+ sync: () => {
67
+ const active = toolbarContext.isToolVisible(fullToolId);
68
+ button.active = active;
69
+ button.ariaLabel = active
70
+ ? "Close scientific calculator"
71
+ : "Open scientific calculator";
72
+ button.tooltip = active ? "Close calculator" : "Calculator";
73
+ overlay.visible = active;
74
+ },
75
+ subscribeActive: (callback) => {
76
+ if (!toolbarContext.subscribeVisibility)
77
+ return () => { };
78
+ return toolbarContext.subscribeVisibility(() => {
79
+ callback(toolbarContext.isToolVisible(fullToolId));
80
+ });
81
+ },
66
82
  };
67
- },
68
- /**
69
- * Create calculator tool instance
70
- *
71
- * Creates a <pie-tool-calculator> web component and initializes it.
72
- */
73
- createToolInstance(context, options) {
74
- const componentOverrides = options.config ?? {};
75
- const calculator = createToolElement(this.toolId, context, options, componentOverrides);
76
- // Set default calculator type (can be overridden via config)
77
- const calculatorType = options.config?.calculatorType || "scientific";
78
- const availableTypes = options.config?.availableTypes || [
79
- "basic",
80
- "scientific",
81
- "graphing",
82
- ];
83
- // Configure calculator
84
- calculator.visible = true;
85
- calculator.calculatorType = calculatorType;
86
- calculator.availableTypes = availableTypes;
87
- // Pass toolkit coordinator if available from context
88
- if (options.config?.toolkitCoordinator) {
89
- calculator.toolkitCoordinator = options.config.toolkitCoordinator;
90
- }
91
- // Handle close callback
92
- if (options.onClose) {
93
- calculator.addEventListener("close", options.onClose);
94
- }
95
- return calculator;
96
83
  },
97
84
  };
98
85
  //# sourceMappingURL=calculator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/tools/registrations/calculator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACN,iBAAiB,GAEjB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAqB;IAC3D,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,qDAAqD;IAClE,IAAI,EAAE,YAAY;IAElB,wDAAwD;IACxD,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;IAEpE,wCAAwC;IACxC,oEAAoE;IACpE,aAAa,EAAE;QACd,YAAY,EAAE,0CAA0C;QACxD,oBAAoB,EAAE,mDAAmD;QACzE,iBAAiB,EAAE,iBAAiB;QACpC,sBAAsB,EAAE,iBAAiB;KACzC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAoB;QACtC,6DAA6D;QAC7D,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC;QACb,CAAC;QAED,iEAAiE;QACjE,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,YAAY,CACX,OAAoB,EACpB,OAA0B;QAE1B,MAAM,IAAI,GACT,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAElE,OAAO;YACN,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,IAAI;YAChB,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK;YACnC,SAAS,EACR,OAAO,CAAC,SAAS;gBACjB,qDAAqD;YACtD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,YAAY;YACxC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;YACtC,SAAS,EAAE,OAAO,CAAC,SAAS;SAC5B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CACjB,OAAoB,EACpB,OAA4B;QAE5B,MAAM,kBAAkB,GACtB,OAAO,CAAC,MAA6C,IAAI,EAAE,CAAC;QAC9D,MAAM,UAAU,GAAG,iBAAiB,CACnC,IAAI,CAAC,MAAM,EACX,OAAO,EACP,OAAO,EACP,kBAAkB,CAMlB,CAAC;QAEF,6DAA6D;QAC7D,MAAM,cAAc,GAClB,OAAO,CAAC,MAAM,EAAE,cAAyB,IAAI,YAAY,CAAC;QAC5D,MAAM,cAAc,GAAI,OAAO,CAAC,MAAM,EAAE,cAA2B,IAAI;YACtE,OAAO;YACP,YAAY;YACZ,UAAU;SACV,CAAC;QAEF,uBAAuB;QACvB,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,UAAU,CAAC,cAAc,GAAG,cAAc,CAAC;QAC3C,UAAU,CAAC,cAAc,GAAG,cAAc,CAAC;QAE3C,qDAAqD;QACrD,IAAI,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC;YACxC,UAAU,CAAC,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACnE,CAAC;QAED,wBAAwB;QACxB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,UAAU,CAAC;IACnB,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/tools/registrations/calculator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interaction-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/interaction-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAWxC;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,EAAE,gBAiF9C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBAkEzC,CAAC"}
1
+ {"version":3,"file":"interaction-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/interaction-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAYxC;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,EAAE,gBA4F9C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBA0EzC,CAAC"}