@pie-players/pie-assessment-toolkit 0.3.61 → 0.3.63

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 (270) hide show
  1. package/dist/attempt/AssessmentSession.js +0 -1
  2. package/dist/attempt/TestSession.js +0 -1
  3. package/dist/attempt/adapters/activity-to-test-attempt-session.js +0 -1
  4. package/dist/components/ItemToolBar.custom-element.js +1 -10106
  5. package/dist/components/PieAssessmentToolkit.custom-element.js +48 -29930
  6. package/dist/components/SectionToolBar.custom-element.js +1 -14372
  7. package/dist/components/chunks/ItemToolBar-843902tp.js +51 -0
  8. package/dist/components/chunks/ItemToolBar-84nv78dy.js +22 -0
  9. package/dist/components/item-toolbar-element.js +0 -1
  10. package/dist/components/pie-assessment-toolkit-element.js +0 -1
  11. package/dist/components/section-toolbar-element.js +0 -1
  12. package/dist/context/assessment-toolkit-context.js +0 -1
  13. package/dist/context/runtime-context-consumer.js +0 -1
  14. package/dist/index.js +0 -1
  15. package/dist/item-loader.js +0 -1
  16. package/dist/policy/core/PolicySource.js +0 -1
  17. package/dist/policy/core/ToolPolicyEngine.js +0 -1
  18. package/dist/policy/core/compose-decision.js +0 -1
  19. package/dist/policy/core/decision-types.js +0 -1
  20. package/dist/policy/core/engine-context.js +0 -1
  21. package/dist/policy/core/pnp-policy-inputs.js +0 -1
  22. package/dist/policy/core/policy-source-tag.js +0 -1
  23. package/dist/policy/core/provenance.js +0 -1
  24. package/dist/policy/engine.js +0 -1
  25. package/dist/policy/internal.js +0 -1
  26. package/dist/policy/sources/PnpPolicySource.js +0 -1
  27. package/dist/runtime/RuntimeRegistry.js +0 -1
  28. package/dist/runtime/SectionRuntimeEngine.js +0 -1
  29. package/dist/runtime/adapter/SectionEngineAdapter.js +0 -1
  30. package/dist/runtime/adapter/coordinator-bridge.js +0 -1
  31. package/dist/runtime/adapter/dom-event-bridge.js +0 -1
  32. package/dist/runtime/adapter/framework-error-bridge.js +0 -1
  33. package/dist/runtime/adapter/instrumentation-bridge.js +0 -1
  34. package/dist/runtime/adapter/subscriber-fanout.js +0 -1
  35. package/dist/runtime/catalog-registration.js +0 -1
  36. package/dist/runtime/core/SectionEngineCore.js +0 -1
  37. package/dist/runtime/core/cohort.js +0 -1
  38. package/dist/runtime/core/engine-input.js +0 -1
  39. package/dist/runtime/core/engine-output.js +0 -1
  40. package/dist/runtime/core/engine-readiness.js +0 -1
  41. package/dist/runtime/core/engine-resolver.js +0 -1
  42. package/dist/runtime/core/engine-stage-derivation.js +0 -1
  43. package/dist/runtime/core/engine-state.js +0 -1
  44. package/dist/runtime/core/engine-transition.js +0 -1
  45. package/dist/runtime/engine-context.js +0 -1
  46. package/dist/runtime/engine.js +0 -1
  47. package/dist/runtime/internal.js +0 -1
  48. package/dist/runtime/registration-events.js +0 -1
  49. package/dist/runtime/runtime-id.js +0 -1
  50. package/dist/runtime/section-runtime-engine-host-context.js +0 -1
  51. package/dist/runtime/session-event-emitter-policy.js +0 -1
  52. package/dist/runtime/stage-emit-gate.js +0 -1
  53. package/dist/runtime/tool-host-contract.js +0 -1
  54. package/dist/services/AccessibilityCatalogResolver.js +0 -1
  55. package/dist/services/ContextVariableStore.js +0 -1
  56. package/dist/services/ElementToolStateStore.js +0 -1
  57. package/dist/services/HighlightCoordinator.js +35 -3
  58. package/dist/services/I18nService.js +0 -1
  59. package/dist/services/RangeSerializer.js +0 -1
  60. package/dist/services/SSMLExtractor.js +0 -1
  61. package/dist/services/TTSService.js +0 -1
  62. package/dist/services/ThemeProvider.js +0 -1
  63. package/dist/services/ToolConfigResolver.js +0 -1
  64. package/dist/services/ToolCoordinator.js +0 -1
  65. package/dist/services/ToolRegistry.js +0 -1
  66. package/dist/services/ToolkitCoordinator.js +0 -1
  67. package/dist/services/create-tools-config.js +0 -1
  68. package/dist/services/createDefaultToolRegistry.js +0 -1
  69. package/dist/services/defaultPersonalNeedsProfile.js +0 -1
  70. package/dist/services/framework-error-bus.js +0 -1
  71. package/dist/services/framework-error.js +0 -1
  72. package/dist/services/interfaces.js +0 -1
  73. package/dist/services/pnp-standard-features.js +0 -1
  74. package/dist/services/section-controller-types.js +0 -1
  75. package/dist/services/tool-config-defaults.js +0 -1
  76. package/dist/services/tool-config-validation.js +0 -1
  77. package/dist/services/tool-context.js +0 -1
  78. package/dist/services/tool-instance-id.js +0 -1
  79. package/dist/services/tool-providers/DesmosToolProvider.js +0 -1
  80. package/dist/services/tool-providers/TTSToolProvider.js +0 -1
  81. package/dist/services/tool-providers/ToolProviderApi.js +0 -1
  82. package/dist/services/tool-providers/ToolProviderRegistry.js +0 -1
  83. package/dist/services/tool-providers/index.js +0 -1
  84. package/dist/services/toolbar-items.js +0 -1
  85. package/dist/services/tools-config-normalizer.js +0 -1
  86. package/dist/services/tts/browser-provider.js +0 -1
  87. package/dist/services/tts/catalog-span-alignment.js +0 -1
  88. package/dist/services/tts/generated-speech/assemble-plan.js +0 -1
  89. package/dist/services/tts/generated-speech/dom/build-dom-plan.js +0 -1
  90. package/dist/services/tts/generated-speech/dom/to-chunk-inputs.js +0 -1
  91. package/dist/services/tts/generated-speech/dom/types.js +0 -1
  92. package/dist/services/tts/generated-speech/index.js +0 -1
  93. package/dist/services/tts/generated-speech/math-speech-cache.js +0 -1
  94. package/dist/services/tts/generated-speech/types.js +0 -1
  95. package/dist/services/tts/highlight-pipeline/boundary-normalizer.js +0 -1
  96. package/dist/services/tts/highlight-pipeline/create-highlight-plan.js +0 -1
  97. package/dist/services/tts/highlight-pipeline/highlight-policy.js +0 -1
  98. package/dist/services/tts/highlight-pipeline/index.js +0 -1
  99. package/dist/services/tts/highlight-pipeline/math-semantic-resolver.js +0 -1
  100. package/dist/services/tts/highlight-pipeline/normalize-speech-chunks.js +0 -1
  101. package/dist/services/tts/highlight-pipeline/prose-boundary-resolver.js +0 -1
  102. package/dist/services/tts/highlight-pipeline/readable-region.js +0 -1
  103. package/dist/services/tts/highlight-pipeline/rendered-math-target-resolver.js +0 -1
  104. package/dist/services/tts/highlight-pipeline/types.js +0 -1
  105. package/dist/services/tts/highlight-pipeline/visible-map-range.js +0 -1
  106. package/dist/services/tts/highlight-target-resolver.js +0 -1
  107. package/dist/services/tts/math-alignment/index.js +0 -1
  108. package/dist/services/tts/math-alignment/mathml-tokenizer.js +0 -1
  109. package/dist/services/tts/math-alignment/range-resolver.js +0 -1
  110. package/dist/services/tts/math-alignment/sequence-aligner.js +0 -1
  111. package/dist/services/tts/math-alignment/speech-tokenizer.js +0 -1
  112. package/dist/services/tts/math-alignment/types.js +0 -1
  113. package/dist/services/tts/math-aware-text-processing.js +0 -1
  114. package/dist/services/tts/math-speech.js +0 -1
  115. package/dist/services/tts/mathml-sanitization.js +0 -1
  116. package/dist/services/tts/ssml/spoken-text.js +0 -1
  117. package/dist/services/tts/text-processing.js +0 -1
  118. package/dist/services/tts/text-segmentation.js +0 -1
  119. package/dist/services/tts/visual-line-ranges.js +0 -1
  120. package/dist/services/tts-control-events.js +0 -1
  121. package/dist/services/tts-runtime-config.js +0 -1
  122. package/dist/tools/calculators/desmos-provider.js +0 -1
  123. package/dist/tools/client.js +0 -1
  124. package/dist/tools/index.js +0 -1
  125. package/dist/tools/library-loader.js +0 -1
  126. package/dist/tools/registrations/accessibility-tools.js +0 -1
  127. package/dist/tools/registrations/calculator.js +0 -1
  128. package/dist/tools/registrations/interaction-tools.js +0 -1
  129. package/dist/tools/registrations/measurement-tools.js +0 -1
  130. package/dist/tools/registrations/subject-specific-tools.js +0 -1
  131. package/dist/tools/registrations/toolbar-registration-helpers.js +0 -1
  132. package/dist/tools/registrations/tts.js +0 -1
  133. package/dist/tools/response-discovery.js +0 -1
  134. package/dist/tools/tool-tag-map.js +0 -1
  135. package/dist/tools/types.js +0 -1
  136. package/dist/tools/variant-resolver.js +0 -1
  137. package/dist/utils/logger.js +0 -1
  138. package/package.json +13 -11
  139. package/dist/attempt/AssessmentSession.js.map +0 -1
  140. package/dist/attempt/TestSession.js.map +0 -1
  141. package/dist/attempt/adapters/activity-to-test-attempt-session.js.map +0 -1
  142. package/dist/components/item-toolbar-element.js.map +0 -1
  143. package/dist/components/pie-assessment-toolkit-element.js.map +0 -1
  144. package/dist/components/section-toolbar-element.js.map +0 -1
  145. package/dist/context/assessment-toolkit-context.js.map +0 -1
  146. package/dist/context/runtime-context-consumer.js.map +0 -1
  147. package/dist/index.js.map +0 -1
  148. package/dist/item-loader.js.map +0 -1
  149. package/dist/policy/core/PolicySource.js.map +0 -1
  150. package/dist/policy/core/ToolPolicyEngine.js.map +0 -1
  151. package/dist/policy/core/compose-decision.js.map +0 -1
  152. package/dist/policy/core/decision-types.js.map +0 -1
  153. package/dist/policy/core/engine-context.js.map +0 -1
  154. package/dist/policy/core/pnp-policy-inputs.js.map +0 -1
  155. package/dist/policy/core/policy-source-tag.js.map +0 -1
  156. package/dist/policy/core/provenance.js.map +0 -1
  157. package/dist/policy/engine.js.map +0 -1
  158. package/dist/policy/internal.js.map +0 -1
  159. package/dist/policy/sources/PnpPolicySource.js.map +0 -1
  160. package/dist/runtime/RuntimeRegistry.js.map +0 -1
  161. package/dist/runtime/SectionRuntimeEngine.js.map +0 -1
  162. package/dist/runtime/adapter/SectionEngineAdapter.js.map +0 -1
  163. package/dist/runtime/adapter/coordinator-bridge.js.map +0 -1
  164. package/dist/runtime/adapter/dom-event-bridge.js.map +0 -1
  165. package/dist/runtime/adapter/framework-error-bridge.js.map +0 -1
  166. package/dist/runtime/adapter/instrumentation-bridge.js.map +0 -1
  167. package/dist/runtime/adapter/subscriber-fanout.js.map +0 -1
  168. package/dist/runtime/catalog-registration.js.map +0 -1
  169. package/dist/runtime/core/SectionEngineCore.js.map +0 -1
  170. package/dist/runtime/core/cohort.js.map +0 -1
  171. package/dist/runtime/core/engine-input.js.map +0 -1
  172. package/dist/runtime/core/engine-output.js.map +0 -1
  173. package/dist/runtime/core/engine-readiness.js.map +0 -1
  174. package/dist/runtime/core/engine-resolver.js.map +0 -1
  175. package/dist/runtime/core/engine-stage-derivation.js.map +0 -1
  176. package/dist/runtime/core/engine-state.js.map +0 -1
  177. package/dist/runtime/core/engine-transition.js.map +0 -1
  178. package/dist/runtime/engine-context.js.map +0 -1
  179. package/dist/runtime/engine.js.map +0 -1
  180. package/dist/runtime/internal.js.map +0 -1
  181. package/dist/runtime/registration-events.js.map +0 -1
  182. package/dist/runtime/runtime-id.js.map +0 -1
  183. package/dist/runtime/section-runtime-engine-host-context.js.map +0 -1
  184. package/dist/runtime/session-event-emitter-policy.js.map +0 -1
  185. package/dist/runtime/stage-emit-gate.js.map +0 -1
  186. package/dist/runtime/tool-host-contract.js.map +0 -1
  187. package/dist/services/AccessibilityCatalogResolver.js.map +0 -1
  188. package/dist/services/ContextVariableStore.js.map +0 -1
  189. package/dist/services/ElementToolStateStore.js.map +0 -1
  190. package/dist/services/HighlightCoordinator.js.map +0 -1
  191. package/dist/services/I18nService.js.map +0 -1
  192. package/dist/services/RangeSerializer.js.map +0 -1
  193. package/dist/services/SSMLExtractor.js.map +0 -1
  194. package/dist/services/TTSService.js.map +0 -1
  195. package/dist/services/ThemeProvider.js.map +0 -1
  196. package/dist/services/ToolConfigResolver.js.map +0 -1
  197. package/dist/services/ToolCoordinator.js.map +0 -1
  198. package/dist/services/ToolRegistry.js.map +0 -1
  199. package/dist/services/ToolkitCoordinator.js.map +0 -1
  200. package/dist/services/create-tools-config.js.map +0 -1
  201. package/dist/services/createDefaultToolRegistry.js.map +0 -1
  202. package/dist/services/defaultPersonalNeedsProfile.js.map +0 -1
  203. package/dist/services/framework-error-bus.js.map +0 -1
  204. package/dist/services/framework-error.js.map +0 -1
  205. package/dist/services/interfaces.js.map +0 -1
  206. package/dist/services/pnp-standard-features.js.map +0 -1
  207. package/dist/services/section-controller-types.js.map +0 -1
  208. package/dist/services/tool-config-defaults.js.map +0 -1
  209. package/dist/services/tool-config-validation.js.map +0 -1
  210. package/dist/services/tool-context.js.map +0 -1
  211. package/dist/services/tool-instance-id.js.map +0 -1
  212. package/dist/services/tool-providers/DesmosToolProvider.js.map +0 -1
  213. package/dist/services/tool-providers/TTSToolProvider.js.map +0 -1
  214. package/dist/services/tool-providers/ToolProviderApi.js.map +0 -1
  215. package/dist/services/tool-providers/ToolProviderRegistry.js.map +0 -1
  216. package/dist/services/tool-providers/index.js.map +0 -1
  217. package/dist/services/toolbar-items.js.map +0 -1
  218. package/dist/services/tools-config-normalizer.js.map +0 -1
  219. package/dist/services/tts/browser-provider.js.map +0 -1
  220. package/dist/services/tts/catalog-span-alignment.js.map +0 -1
  221. package/dist/services/tts/generated-speech/assemble-plan.js.map +0 -1
  222. package/dist/services/tts/generated-speech/dom/build-dom-plan.js.map +0 -1
  223. package/dist/services/tts/generated-speech/dom/to-chunk-inputs.js.map +0 -1
  224. package/dist/services/tts/generated-speech/dom/types.js.map +0 -1
  225. package/dist/services/tts/generated-speech/index.js.map +0 -1
  226. package/dist/services/tts/generated-speech/math-speech-cache.js.map +0 -1
  227. package/dist/services/tts/generated-speech/types.js.map +0 -1
  228. package/dist/services/tts/highlight-pipeline/boundary-normalizer.js.map +0 -1
  229. package/dist/services/tts/highlight-pipeline/create-highlight-plan.js.map +0 -1
  230. package/dist/services/tts/highlight-pipeline/highlight-policy.js.map +0 -1
  231. package/dist/services/tts/highlight-pipeline/index.js.map +0 -1
  232. package/dist/services/tts/highlight-pipeline/math-semantic-resolver.js.map +0 -1
  233. package/dist/services/tts/highlight-pipeline/normalize-speech-chunks.js.map +0 -1
  234. package/dist/services/tts/highlight-pipeline/prose-boundary-resolver.js.map +0 -1
  235. package/dist/services/tts/highlight-pipeline/readable-region.js.map +0 -1
  236. package/dist/services/tts/highlight-pipeline/rendered-math-target-resolver.js.map +0 -1
  237. package/dist/services/tts/highlight-pipeline/types.js.map +0 -1
  238. package/dist/services/tts/highlight-pipeline/visible-map-range.js.map +0 -1
  239. package/dist/services/tts/highlight-target-resolver.js.map +0 -1
  240. package/dist/services/tts/math-alignment/index.js.map +0 -1
  241. package/dist/services/tts/math-alignment/mathml-tokenizer.js.map +0 -1
  242. package/dist/services/tts/math-alignment/range-resolver.js.map +0 -1
  243. package/dist/services/tts/math-alignment/sequence-aligner.js.map +0 -1
  244. package/dist/services/tts/math-alignment/speech-tokenizer.js.map +0 -1
  245. package/dist/services/tts/math-alignment/types.js.map +0 -1
  246. package/dist/services/tts/math-aware-text-processing.js.map +0 -1
  247. package/dist/services/tts/math-speech.js.map +0 -1
  248. package/dist/services/tts/mathml-sanitization.js.map +0 -1
  249. package/dist/services/tts/ssml/spoken-text.js.map +0 -1
  250. package/dist/services/tts/text-processing.js.map +0 -1
  251. package/dist/services/tts/text-segmentation.js.map +0 -1
  252. package/dist/services/tts/visual-line-ranges.js.map +0 -1
  253. package/dist/services/tts-control-events.js.map +0 -1
  254. package/dist/services/tts-runtime-config.js.map +0 -1
  255. package/dist/tools/calculators/desmos-provider.js.map +0 -1
  256. package/dist/tools/client.js.map +0 -1
  257. package/dist/tools/index.js.map +0 -1
  258. package/dist/tools/library-loader.js.map +0 -1
  259. package/dist/tools/registrations/accessibility-tools.js.map +0 -1
  260. package/dist/tools/registrations/calculator.js.map +0 -1
  261. package/dist/tools/registrations/interaction-tools.js.map +0 -1
  262. package/dist/tools/registrations/measurement-tools.js.map +0 -1
  263. package/dist/tools/registrations/subject-specific-tools.js.map +0 -1
  264. package/dist/tools/registrations/toolbar-registration-helpers.js.map +0 -1
  265. package/dist/tools/registrations/tts.js.map +0 -1
  266. package/dist/tools/response-discovery.js.map +0 -1
  267. package/dist/tools/tool-tag-map.js.map +0 -1
  268. package/dist/tools/types.js.map +0 -1
  269. package/dist/tools/variant-resolver.js.map +0 -1
  270. package/dist/utils/logger.js.map +0 -1
@@ -47,4 +47,3 @@ export class RuntimeRegistry {
47
47
  this.shellsByElement.clear();
48
48
  }
49
49
  }
50
- //# sourceMappingURL=RuntimeRegistry.js.map
@@ -368,4 +368,3 @@ export class SectionRuntimeEngine {
368
368
  }
369
369
  }
370
370
  const noopDispose = () => { };
371
- //# sourceMappingURL=SectionRuntimeEngine.js.map
@@ -180,4 +180,3 @@ export class SectionEngineAdapter {
180
180
  this.instrumentationBridge.dispatch(output);
181
181
  }
182
182
  }
183
- //# sourceMappingURL=SectionEngineAdapter.js.map
@@ -124,4 +124,3 @@ export function createCoordinatorBridge(options) {
124
124
  }
125
125
  return { resolveSectionController, dispose };
126
126
  }
127
- //# sourceMappingURL=coordinator-bridge.js.map
@@ -92,4 +92,3 @@ export function createDomEventBridge(options) {
92
92
  }
93
93
  return { dispatch, setHost };
94
94
  }
95
- //# sourceMappingURL=dom-event-bridge.js.map
@@ -44,4 +44,3 @@ export function createFrameworkErrorBridge(options) {
44
44
  }
45
45
  return { dispatch };
46
46
  }
47
- //# sourceMappingURL=framework-error-bridge.js.map
@@ -36,4 +36,3 @@ export function createInstrumentationBridge(options = {}) {
36
36
  }
37
37
  return { dispatch, setHook };
38
38
  }
39
- //# sourceMappingURL=instrumentation-bridge.js.map
@@ -57,4 +57,3 @@ export function createSubscriberFanout() {
57
57
  }
58
58
  return { emit, subscribe, dispose, getListenerCount };
59
59
  }
60
- //# sourceMappingURL=subscriber-fanout.js.map
@@ -51,4 +51,3 @@ export function collectCatalogRegistrations(detail, runtime = {}) {
51
51
  }
52
52
  return registrations;
53
53
  }
54
- //# sourceMappingURL=catalog-registration.js.map
@@ -78,4 +78,3 @@ export class SectionEngineCore {
78
78
  }
79
79
  }
80
80
  }
81
- //# sourceMappingURL=SectionEngineCore.js.map
@@ -46,4 +46,3 @@ export function makeCohort(args) {
46
46
  attemptId: args.attemptId ?? "",
47
47
  };
48
48
  }
49
- //# sourceMappingURL=cohort.js.map
@@ -16,4 +16,3 @@
16
16
  * adapter; the core only sees readiness signals derived from them.
17
17
  */
18
18
  export {};
19
- //# sourceMappingURL=engine-input.js.map
@@ -24,4 +24,3 @@
24
24
  * "all items loaded" signal flows through `loading-complete` only.
25
25
  */
26
26
  export {};
27
- //# sourceMappingURL=engine-output.js.map
@@ -44,4 +44,3 @@ export function createReadinessDetail(args) {
44
44
  reason: args.reason,
45
45
  };
46
46
  }
47
- //# sourceMappingURL=engine-readiness.js.map
@@ -112,4 +112,3 @@ export function resolveSectionEngineRuntimeState(args, deps) {
112
112
  playerRuntime,
113
113
  };
114
114
  }
115
- //# sourceMappingURL=engine-resolver.js.map
@@ -27,4 +27,3 @@ export function phaseToStage(phase) {
27
27
  return "disposed";
28
28
  }
29
29
  }
30
- //# sourceMappingURL=engine-stage-derivation.js.map
@@ -46,4 +46,3 @@ export function createInitialEngineState() {
46
46
  loadedCount: 0,
47
47
  };
48
48
  }
49
- //# sourceMappingURL=engine-state.js.map
@@ -256,4 +256,3 @@ export function transition(state, input) {
256
256
  }
257
257
  }
258
258
  }
259
- //# sourceMappingURL=engine-transition.js.map
@@ -29,4 +29,3 @@
29
29
  * provided to descendants.
30
30
  */
31
31
  export const SECTION_RUNTIME_ENGINE_KEY = Symbol("@pie-players/section-runtime-engine");
32
- //# sourceMappingURL=engine-context.js.map
@@ -21,4 +21,3 @@
21
21
  export { SectionRuntimeEngine, } from "./SectionRuntimeEngine.js";
22
22
  export { SECTION_RUNTIME_ENGINE_KEY, } from "./engine-context.js";
23
23
  export { sectionRuntimeEngineHostContext, connectSectionRuntimeEngineHostContext, } from "./section-runtime-engine-host-context.js";
24
- //# sourceMappingURL=engine.js.map
@@ -43,4 +43,3 @@ export { phaseToStage } from "./core/engine-stage-derivation.js";
43
43
  export { DEFAULT_ASSESSMENT_ID, DEFAULT_ENV, DEFAULT_ISOLATION, DEFAULT_LAZY_INIT, DEFAULT_PLAYER_TYPE, resolveOnFrameworkError, resolveRuntime, resolveSectionEngineRuntimeState, resolveToolsConfig, } from "./core/engine-resolver.js";
44
44
  export { createReadinessDetail, resolveReadinessPhase, } from "./core/engine-readiness.js";
45
45
  export { transition } from "./core/engine-transition.js";
46
- //# sourceMappingURL=internal.js.map
@@ -4,4 +4,3 @@ export const PIE_INTERNAL_ITEM_SESSION_CHANGED_EVENT = "pie-item-session-changed
4
4
  export const PIE_ITEM_SESSION_CHANGED_EVENT = "item-session-changed";
5
5
  export const PIE_INTERNAL_CONTENT_LOADED_EVENT = "pie-content-loaded";
6
6
  export const PIE_INTERNAL_ITEM_PLAYER_ERROR_EVENT = "pie-item-player-error";
7
- //# sourceMappingURL=registration-events.js.map
@@ -7,4 +7,3 @@
7
7
  export function createRuntimeId(prefix = "runtime") {
8
8
  return `${prefix}-${Math.random().toString(16).slice(2)}-${Date.now()}`;
9
9
  }
10
- //# sourceMappingURL=runtime-id.js.map
@@ -93,4 +93,3 @@ export function connectSectionRuntimeEngineHostContext(host, onValue) {
93
93
  consumer.disconnect();
94
94
  };
95
95
  }
96
- //# sourceMappingURL=section-runtime-engine-host-context.js.map
@@ -54,4 +54,3 @@ function getMetadataOnlySignature(payload) {
54
54
  return String(payload.itemId || "");
55
55
  }
56
56
  }
57
- //# sourceMappingURL=session-event-emitter-policy.js.map
@@ -80,4 +80,3 @@ export function runStageEmitWithSuppression(context, detail) {
80
80
  }
81
81
  return true;
82
82
  }
83
- //# sourceMappingURL=stage-emit-gate.js.map
@@ -45,4 +45,3 @@ export function connectToolRegionScopeContext(host, onValue) {
45
45
  export function isContextValueDefined(value) {
46
46
  return value !== null && value !== undefined;
47
47
  }
48
- //# sourceMappingURL=tool-host-contract.js.map
@@ -418,4 +418,3 @@ export class AccessibilityCatalogResolver {
418
418
  this.reset();
419
419
  }
420
420
  }
421
- //# sourceMappingURL=AccessibilityCatalogResolver.js.map
@@ -204,4 +204,3 @@ export class ContextVariableStore {
204
204
  }
205
205
  }
206
206
  }
207
- //# sourceMappingURL=ContextVariableStore.js.map
@@ -197,4 +197,3 @@ export class ElementToolStateStore {
197
197
  this._notifyStateChange();
198
198
  }
199
199
  }
200
- //# sourceMappingURL=ElementToolStateStore.js.map
@@ -333,9 +333,17 @@ export class HighlightCoordinator {
333
333
  color: inherit;
334
334
  }
335
335
 
336
+ /* The base light/dark pair is fixed: #4221d5 on light, #9c89ec on dark.
337
+ One value cannot serve both -- #4221d5 is 2.41:1 on black and #9c89ec is
338
+ 2.85:1 on white -- so neither of those two consults the theme accent,
339
+ which is chosen against one background and illegible on the other.
340
+
341
+ Each state has its own token so overriding one never silently moves the
342
+ other, and so either can beat a host-set pie-primary: a var() fallback
343
+ can never override a value the host actually set. */
336
344
  ::highlight(annotation-underline) {
337
345
  background-color: transparent;
338
- text-decoration: underline 2px solid var(--pie-primary, #0066cc);
346
+ text-decoration: underline 2px solid var(--pie-annotation-underline, #4221d5);
339
347
  text-underline-offset: 2px;
340
348
  color: inherit;
341
349
  }
@@ -372,10 +380,35 @@ export class HighlightCoordinator {
372
380
  background-color: var(--pie-annotation-orange-highlight, rgba(154, 99, 0, 0.6));
373
381
  }
374
382
  ::highlight(annotation-underline) {
375
- text-decoration-color: var(--pie-primary, #4da6ff);
383
+ text-decoration-color: var(--pie-annotation-underline-dark, #9c89ec);
376
384
  }
377
385
  }
378
386
 
387
+ /* The media query above reports the OS preference, which is only a guess
388
+ at what the page is actually showing. An app that declares a theme has
389
+ the final say, so the rules below override it. pie-theme always stamps
390
+ data-theme on documentElement (scope="document") or on its own host, and
391
+ resolves to a dark palette only for the literal value "dark" -- every
392
+ other value, including DaisyUI theme ids, maps to a light base.
393
+
394
+ The three cases are mutually exclusive, so they never fight each other.
395
+ All carry attribute selectors, which outrank the bare ::highlight() rules
396
+ above -- including the one inside the media query, since a media query
397
+ adds no specificity -- whatever the source order. */
398
+ [data-theme="light"] ::highlight(annotation-underline) {
399
+ text-decoration-color: var(--pie-annotation-underline, #4221d5);
400
+ }
401
+
402
+ [data-theme="dark"] ::highlight(annotation-underline) {
403
+ text-decoration-color: var(--pie-annotation-underline-dark, #9c89ec);
404
+ }
405
+
406
+ /* A host or DaisyUI palette: follow its accent so the mark belongs to that
407
+ theme, falling back to the light default when it declares none. */
408
+ [data-theme]:not([data-theme="light"]):not([data-theme="dark"]) ::highlight(annotation-underline) {
409
+ text-decoration-color: var(--pie-annotation-underline, var(--pie-primary, #4221d5));
410
+ }
411
+
379
412
  /* WCAG 2.2 SC 1.4.11 non-text contrast: a highlight is the only indication
380
413
  that text is annotated, so the swatches saturate and the underline
381
414
  thickens when the user asks for more contrast.
@@ -885,4 +918,3 @@ export class HighlightCoordinator {
885
918
  this.themeObserver = null;
886
919
  }
887
920
  }
888
- //# sourceMappingURL=HighlightCoordinator.js.map
@@ -272,4 +272,3 @@ export class I18nService {
272
272
  return browserLang.split("-")[0];
273
273
  }
274
274
  }
275
- //# sourceMappingURL=I18nService.js.map
@@ -196,4 +196,3 @@ export class RangeSerializer {
196
196
  return data.map((item) => this.deserialize(item, root));
197
197
  }
198
198
  }
199
- //# sourceMappingURL=RangeSerializer.js.map
@@ -444,4 +444,3 @@ export class SSMLExtractor {
444
444
  this.catalogCounter = 0;
445
445
  }
446
446
  }
447
- //# sourceMappingURL=SSMLExtractor.js.map
@@ -1974,4 +1974,3 @@ export class TTSService {
1974
1974
  }
1975
1975
  }
1976
1976
  }
1977
- //# sourceMappingURL=TTSService.js.map
@@ -332,4 +332,3 @@ export class ThemeProvider {
332
332
  this.rootElement.style.removeProperty("--pie-button-focus-outline");
333
333
  }
334
334
  }
335
- //# sourceMappingURL=ThemeProvider.js.map
@@ -227,4 +227,3 @@ export class ToolConfigResolver {
227
227
  };
228
228
  }
229
229
  }
230
- //# sourceMappingURL=ToolConfigResolver.js.map
@@ -358,4 +358,3 @@ export class ToolCoordinator {
358
358
  }));
359
359
  }
360
360
  }
361
- //# sourceMappingURL=ToolCoordinator.js.map
@@ -412,4 +412,3 @@ export class ToolRegistry {
412
412
  return tool.renderToolbar(context, mergedContext);
413
413
  }
414
414
  }
415
- //# sourceMappingURL=ToolRegistry.js.map
@@ -1750,4 +1750,3 @@ export class ToolkitCoordinator {
1750
1750
  await this.registerProviderFromTool(ttsRegistration);
1751
1751
  }
1752
1752
  }
1753
- //# sourceMappingURL=ToolkitCoordinator.js.map
@@ -10,4 +10,3 @@ export function createToolsConfig(args) {
10
10
  toolRegistry: args.toolRegistry,
11
11
  });
12
12
  }
13
- //# sourceMappingURL=create-tools-config.js.map
@@ -123,4 +123,3 @@ export const DEFAULT_TOOL_ORDER = [
123
123
  "graph",
124
124
  "periodicTable",
125
125
  ];
126
- //# sourceMappingURL=createDefaultToolRegistry.js.map
@@ -22,4 +22,3 @@ export function createDefaultPersonalNeedsProfile() {
22
22
  activateAtInit: [],
23
23
  };
24
24
  }
25
- //# sourceMappingURL=defaultPersonalNeedsProfile.js.map
@@ -65,4 +65,3 @@ export class FrameworkErrorBus {
65
65
  return this.listeners.size;
66
66
  }
67
67
  }
68
- //# sourceMappingURL=framework-error-bus.js.map
@@ -77,4 +77,3 @@ export function formatFrameworkErrorForConsole(error) {
77
77
  return `${prefix} ${error.message}`;
78
78
  return `${prefix} ${error.message}\n- ${error.details.join("\n- ")}`;
79
79
  }
80
- //# sourceMappingURL=framework-error.js.map
@@ -9,4 +9,3 @@
9
9
  */
10
10
  export {};
11
11
  // I18nServiceApi is re-exported from @pie-players/pie-players-shared/i18n
12
- //# sourceMappingURL=interfaces.js.map
@@ -336,4 +336,3 @@ export function getFeatureCategory(featureId) {
336
336
  export function getFeaturesInCategory(category) {
337
337
  return Object.values(QTI_STANDARD_ACCESS_FEATURES[category]);
338
338
  }
339
- //# sourceMappingURL=pnp-standard-features.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=section-controller-types.js.map
@@ -52,4 +52,3 @@ export const SECTION_PLAYER_PREFERRED_TOOL_PLACEMENT = {
52
52
  item: ["calculator", "textToSpeech", "answerEliminator", "annotationToolbar"],
53
53
  passage: ["textToSpeech", "annotationToolbar"],
54
54
  };
55
- //# sourceMappingURL=tool-config-defaults.js.map
@@ -241,4 +241,3 @@ export function normalizeAndValidateToolsConfig(input, options = {}) {
241
241
  diagnostics,
242
242
  };
243
243
  }
244
- //# sourceMappingURL=tool-config-validation.js.map
@@ -292,4 +292,3 @@ export function hasScienceContent(context) {
292
292
  ];
293
293
  return scienceIndicators.some((pattern) => pattern.test(text));
294
294
  }
295
- //# sourceMappingURL=tool-context.js.map
@@ -52,4 +52,3 @@ export function toOverlayToolId(id) {
52
52
  return id;
53
53
  return createScopedToolId(parsed.baseToolId, parsed.scopeLevel, parsed.scopeId);
54
54
  }
55
- //# sourceMappingURL=tool-instance-id.js.map
@@ -161,4 +161,3 @@ export class DesmosToolProvider {
161
161
  console.log("[DesmosToolProvider] Destroyed");
162
162
  }
163
163
  }
164
- //# sourceMappingURL=DesmosToolProvider.js.map
@@ -194,4 +194,3 @@ export class TTSToolProvider {
194
194
  console.log("[TTSToolProvider] Destroyed");
195
195
  }
196
196
  }
197
- //# sourceMappingURL=TTSToolProvider.js.map
@@ -5,4 +5,3 @@
5
5
  * configuration, authentication, or external services.
6
6
  */
7
7
  export {};
8
- //# sourceMappingURL=ToolProviderApi.js.map
@@ -323,4 +323,3 @@ export class ToolProviderRegistry {
323
323
  console.log("[ToolProviderRegistry] Registry destroyed");
324
324
  }
325
325
  }
326
- //# sourceMappingURL=ToolProviderRegistry.js.map
@@ -11,4 +11,3 @@ export { ToolProviderRegistry } from "./ToolProviderRegistry.js";
11
11
  // Concrete providers
12
12
  export { DesmosToolProvider } from "./DesmosToolProvider.js";
13
13
  export { TTSToolProvider } from "./TTSToolProvider.js";
14
- //# sourceMappingURL=index.js.map
@@ -33,4 +33,3 @@ export function isInlineSvgIcon(icon) {
33
33
  export function isExternalIconUrl(icon) {
34
34
  return typeof icon === "string" && icon.trimStart().startsWith("http");
35
35
  }
36
- //# sourceMappingURL=toolbar-items.js.map
@@ -140,4 +140,3 @@ export function normalizeToolsConfig(input) {
140
140
  }
141
141
  return config;
142
142
  }
143
- //# sourceMappingURL=tools-config-normalizer.js.map
@@ -354,4 +354,3 @@ class BrowserTTSProviderImpl {
354
354
  }
355
355
  onWordBoundary;
356
356
  }
357
- //# sourceMappingURL=browser-provider.js.map
@@ -302,4 +302,3 @@ export const resolveVisibleSpanForBoundary = (alignment, spokenOffset) => {
302
302
  }
303
303
  return null;
304
304
  };
305
- //# sourceMappingURL=catalog-span-alignment.js.map
@@ -108,4 +108,3 @@ export const assembleGeneratedSpeech = async (args) => {
108
108
  plainSpeechText: normalizeTextForSpeech(speechParts.join(" ")),
109
109
  };
110
110
  };
111
- //# sourceMappingURL=assemble-plan.js.map
@@ -63,4 +63,3 @@ export const buildGeneratedSpeechFromRoot = async (args) => {
63
63
  visibleText: extracted.visibleText,
64
64
  };
65
65
  };
66
- //# sourceMappingURL=build-dom-plan.js.map
@@ -68,4 +68,3 @@ export const planToCompositionChunkInputs = (plan, options = {}) => plan.items.m
68
68
  }
69
69
  return buildPlainMathChunk(segment, anchor);
70
70
  });
71
- //# sourceMappingURL=to-chunk-inputs.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -14,4 +14,3 @@ export { assembleGeneratedSpeech, } from "./assemble-plan.js";
14
14
  export { createMemoizedMathSpeechResolver, } from "./math-speech-cache.js";
15
15
  export { buildGeneratedSpeechFromRoot, } from "./dom/build-dom-plan.js";
16
16
  export { planToCompositionChunkInputs } from "./dom/to-chunk-inputs.js";
17
- //# sourceMappingURL=index.js.map
@@ -77,4 +77,3 @@ export const createMemoizedMathSpeechResolver = (options = {}) => {
77
77
  return resolved;
78
78
  };
79
79
  };
80
- //# sourceMappingURL=math-speech-cache.js.map
@@ -15,4 +15,3 @@
15
15
  * (see `./dom/types.ts`).
16
16
  */
17
17
  export {};
18
- //# sourceMappingURL=types.js.map
@@ -103,4 +103,3 @@ export const normalizeBoundaryEvent = (chunk, event) => {
103
103
  : "resolved through speech tokenization",
104
104
  };
105
105
  };
106
- //# sourceMappingURL=boundary-normalizer.js.map
@@ -214,4 +214,3 @@ export const createTTSHighlightPlan = (args) => {
214
214
  },
215
215
  };
216
216
  };
217
- //# sourceMappingURL=create-highlight-plan.js.map
@@ -29,4 +29,3 @@ export const createHighlightDecision = (input) => {
29
29
  reason: input.reason,
30
30
  };
31
31
  };
32
- //# sourceMappingURL=highlight-policy.js.map
@@ -6,4 +6,3 @@ export * from "./normalize-speech-chunks.js";
6
6
  export * from "./prose-boundary-resolver.js";
7
7
  export * from "./readable-region.js";
8
8
  export * from "./rendered-math-target-resolver.js";
9
- //# sourceMappingURL=index.js.map
@@ -29,4 +29,3 @@ export const resolveMathBoundaryTarget = (chunk, boundary, event, candidates = c
29
29
  }
30
30
  return expressionFallback;
31
31
  };
32
- //# sourceMappingURL=math-semantic-resolver.js.map
@@ -41,4 +41,3 @@ export const normalizeSpeechChunks = (args) => {
41
41
  offsetSpace: chunkOffsetSpaceFor(chunk),
42
42
  }));
43
43
  };
44
- //# sourceMappingURL=normalize-speech-chunks.js.map
@@ -17,4 +17,3 @@ export const resolveProseBoundaryTarget = (chunk, boundary) => {
17
17
  range,
18
18
  };
19
19
  };
20
- //# sourceMappingURL=prose-boundary-resolver.js.map
@@ -16,4 +16,3 @@ export const resolveReadableRegion = (sourceElement, contentRoot) => {
16
16
  }
17
17
  return sourceElement;
18
18
  };
19
- //# sourceMappingURL=readable-region.js.map
@@ -195,4 +195,3 @@ export const createRenderedMathTargetResolver = () => {
195
195
  return rendered;
196
196
  };
197
197
  };
198
- //# sourceMappingURL=rendered-math-target-resolver.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -19,4 +19,3 @@ export const createRangeFromVisibleMap = (visibleMap, start, end) => {
19
19
  return null;
20
20
  }
21
21
  };
22
- //# sourceMappingURL=visible-map-range.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=highlight-target-resolver.js.map
@@ -63,4 +63,3 @@ export const resolveUniqueMathTargetForBoundaryWord = (alignment, args) => {
63
63
  });
64
64
  return matches.length === 1 ? matches[0].target : null;
65
65
  };
66
- //# sourceMappingURL=index.js.map
@@ -314,4 +314,3 @@ export const tokenizeMathML = (mathElement) => {
314
314
  expressionTarget: elementTarget(mathElement, "region-fallback"),
315
315
  };
316
316
  };
317
- //# sourceMappingURL=mathml-tokenizer.js.map
@@ -10,4 +10,3 @@ export const resolveMatchedHighlightTargetForBoundary = (args) => {
10
10
  const segment = args.alignment.segments.find((candidate) => candidate.speechTokenIds.includes(args.boundary.token.id));
11
11
  return segment?.target || null;
12
12
  };
13
- //# sourceMappingURL=range-resolver.js.map
@@ -116,4 +116,3 @@ export const alignSpeechToMath = (args) => {
116
116
  fallbackTarget: args.math.expressionTarget,
117
117
  };
118
118
  };
119
- //# sourceMappingURL=sequence-aligner.js.map
@@ -140,4 +140,3 @@ export const resolveSpokenOffsetToSpeechToken = (args) => {
140
140
  }
141
141
  return spokenCandidate;
142
142
  };
143
- //# sourceMappingURL=speech-tokenizer.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -348,4 +348,3 @@ export const collectMathAwareTextAndMap = (element, options) => {
348
348
  }
349
349
  return collectMathAware(element, options);
350
350
  };
351
- //# sourceMappingURL=math-aware-text-processing.js.map
@@ -146,4 +146,3 @@ export const resolveMathSpeechFromChunks = async (chunks, options = {}) => {
146
146
  ssml,
147
147
  };
148
148
  };
149
- //# sourceMappingURL=math-speech.js.map
@@ -167,4 +167,3 @@ export const canonicalizeMathML = (input) => {
167
167
  return null;
168
168
  return serializeMathNode(root);
169
169
  };
170
- //# sourceMappingURL=mathml-sanitization.js.map
@@ -156,4 +156,3 @@ export const extractSpokenText = (speechText) => {
156
156
  hasMarkup,
157
157
  };
158
158
  };
159
- //# sourceMappingURL=spoken-text.js.map
@@ -167,4 +167,3 @@ export const collectVisibleTextAndMap = (element, options) => {
167
167
  return { text, map };
168
168
  };
169
169
  export const extractVisibleText = (element, options) => collectVisibleTextAndMap(element, options).text;
170
- //# sourceMappingURL=text-processing.js.map