@pie-players/pie-assessment-toolkit 0.3.26 → 0.3.28

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 (50) hide show
  1. package/README.md +13 -2
  2. package/dist/components/ItemToolBar.custom-element.js +92 -5
  3. package/dist/components/PieAssessmentToolkit.custom-element.js +278 -7
  4. package/dist/index.d.ts +5 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +3 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/services/HighlightCoordinator.d.ts +3 -2
  9. package/dist/services/HighlightCoordinator.d.ts.map +1 -1
  10. package/dist/services/HighlightCoordinator.js +6 -3
  11. package/dist/services/HighlightCoordinator.js.map +1 -1
  12. package/dist/services/TTSService.d.ts +3 -0
  13. package/dist/services/TTSService.d.ts.map +1 -1
  14. package/dist/services/TTSService.js +66 -5
  15. package/dist/services/TTSService.js.map +1 -1
  16. package/dist/services/ToolRegistry.d.ts +7 -1
  17. package/dist/services/ToolRegistry.d.ts.map +1 -1
  18. package/dist/services/ToolRegistry.js.map +1 -1
  19. package/dist/services/ToolkitCoordinator.d.ts +11 -0
  20. package/dist/services/ToolkitCoordinator.d.ts.map +1 -1
  21. package/dist/services/ToolkitCoordinator.js +46 -6
  22. package/dist/services/ToolkitCoordinator.js.map +1 -1
  23. package/dist/services/framework-error.d.ts +34 -0
  24. package/dist/services/framework-error.d.ts.map +1 -0
  25. package/dist/services/framework-error.js +43 -0
  26. package/dist/services/framework-error.js.map +1 -0
  27. package/dist/services/tool-config-validation.d.ts +7 -0
  28. package/dist/services/tool-config-validation.d.ts.map +1 -1
  29. package/dist/services/tool-config-validation.js +22 -1
  30. package/dist/services/tool-config-validation.js.map +1 -1
  31. package/dist/services/tts/visual-line-ranges.d.ts +19 -0
  32. package/dist/services/tts/visual-line-ranges.d.ts.map +1 -0
  33. package/dist/services/tts/visual-line-ranges.js +227 -0
  34. package/dist/services/tts/visual-line-ranges.js.map +1 -0
  35. package/dist/services/tts-runtime-config.d.ts +29 -0
  36. package/dist/services/tts-runtime-config.d.ts.map +1 -1
  37. package/dist/services/tts-runtime-config.js +101 -9
  38. package/dist/services/tts-runtime-config.js.map +1 -1
  39. package/dist/tools/default-tool-module-loaders.d.ts.map +1 -1
  40. package/dist/tools/default-tool-module-loaders.js +1 -4
  41. package/dist/tools/default-tool-module-loaders.js.map +1 -1
  42. package/dist/tools/registrations/accessibility-tools.js +1 -1
  43. package/dist/tools/registrations/accessibility-tools.js.map +1 -1
  44. package/dist/tools/registrations/measurement-tools.js +4 -4
  45. package/dist/tools/registrations/measurement-tools.js.map +1 -1
  46. package/dist/tools/registrations/tts.d.ts +1 -0
  47. package/dist/tools/registrations/tts.d.ts.map +1 -1
  48. package/dist/tools/registrations/tts.js +54 -23
  49. package/dist/tools/registrations/tts.js.map +1 -1
  50. package/package.json +7 -7
@@ -9,27 +9,11 @@
9
9
  */
10
10
  import { hasReadableText } from "../../services/tool-context.js";
11
11
  import { createScopedToolId } from "../../services/tool-instance-id.js";
12
- import { buildRuntimeTTSConfig, resolveTTSBackend, resolveTTSRuntimeSettings, resolveRuntimeProvider, resolveTransportMode, } from "../../services/tts-runtime-config.js";
12
+ import { buildRuntimeTTSConfig, normalizeTTSLayoutMode, normalizeTTSSpeedOptions, resolveTTSHostToolbarLayout, resolveTTSLayoutMode, resolveTTSBackend, resolveTTSRuntimeSettings, resolveRuntimeProvider, resolveTransportMode, } from "../../services/tts-runtime-config.js";
13
13
  import { TTSToolProvider } from "../../services/tool-providers/index.js";
14
14
  const inlineTTSControls = new Map();
15
15
  export const TOOL_ELEMENT_UNMOUNT_CALLBACK_PROP = "__pieToolElementUnmount";
16
- const DEFAULT_SPEED_OPTIONS = Object.freeze([1.5, 2]);
17
- const resolveSpeedOptions = (value) => {
18
- if (!Array.isArray(value))
19
- return [...DEFAULT_SPEED_OPTIONS];
20
- if (value.length === 0)
21
- return [];
22
- const deduped = new Set();
23
- for (const entry of value) {
24
- if (typeof entry !== "number" || !Number.isFinite(entry) || entry <= 0)
25
- continue;
26
- const rounded = Math.round(entry * 100) / 100;
27
- if (rounded === 1)
28
- continue;
29
- deduped.add(rounded);
30
- }
31
- return deduped.size ? Array.from(deduped) : [...DEFAULT_SPEED_OPTIONS];
32
- };
16
+ export const TOOL_ACTIVE_CHANGE_EVENT = "pie-tool-active-change";
33
17
  /**
34
18
  * Text-to-Speech tool registration
35
19
  *
@@ -67,10 +51,34 @@ export const ttsToolRegistration = {
67
51
  ? runtimeAuthFetcher
68
52
  : undefined;
69
53
  },
54
+ sanitizeConfig: (config) => {
55
+ const settings = config.settings && typeof config.settings === "object"
56
+ ? { ...config.settings }
57
+ : undefined;
58
+ if (settings && "layoutMode" in settings) {
59
+ settings.layoutMode = normalizeTTSLayoutMode(settings.layoutMode);
60
+ }
61
+ if (settings && "speedOptions" in settings) {
62
+ settings.speedOptions = normalizeTTSSpeedOptions(settings.speedOptions);
63
+ }
64
+ const normalizedConfig = {
65
+ ...config,
66
+ };
67
+ if ("layoutMode" in normalizedConfig) {
68
+ normalizedConfig.layoutMode = normalizeTTSLayoutMode(normalizedConfig.layoutMode);
69
+ }
70
+ if ("speedOptions" in normalizedConfig) {
71
+ normalizedConfig.speedOptions = normalizeTTSSpeedOptions(normalizedConfig.speedOptions);
72
+ }
73
+ if (settings) {
74
+ normalizedConfig.settings = settings;
75
+ }
76
+ return normalizedConfig;
77
+ },
70
78
  lazy: true,
71
79
  },
72
- // TTS can appear at all levels except assessment and element.
73
- supportedLevels: ["section", "item", "passage", "rubric"],
80
+ // TTS is inline-only and scoped to item/passage contexts.
81
+ supportedLevels: ["item", "passage"],
74
82
  // PNP support IDs that enable this tool
75
83
  // Maps to QTI 3.0 standard features: textToSpeech, readAloud
76
84
  pnpSupportIds: [
@@ -89,10 +97,13 @@ export const ttsToolRegistration = {
89
97
  return hasReadableText(context);
90
98
  },
91
99
  renderToolbar(_context, toolbarContext) {
100
+ const resolveRuntimeSettings = () => resolveTTSRuntimeSettings(toolbarContext.toolkitCoordinator?.getToolConfig(this.toolId) || undefined);
92
101
  const resolveElementSpeedOptions = () => {
93
- const runtimeSettings = resolveTTSRuntimeSettings(toolbarContext.toolkitCoordinator?.getToolConfig(this.toolId) || undefined);
94
- return resolveSpeedOptions(runtimeSettings.speedOptions);
102
+ const runtimeSettings = resolveRuntimeSettings();
103
+ return normalizeTTSSpeedOptions(runtimeSettings.speedOptions);
95
104
  };
105
+ const resolveLayoutMode = () => resolveTTSLayoutMode(resolveRuntimeSettings());
106
+ const resolveHostLayout = () => resolveTTSHostToolbarLayout(resolveRuntimeSettings());
96
107
  const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
97
108
  const resolveControlSize = () => {
98
109
  const raw = toolbarContext.ui?.size;
@@ -119,25 +130,45 @@ export const ttsToolRegistration = {
119
130
  element.setAttribute("catalog-id", toolbarContext.catalogId || toolbarContext.itemId);
120
131
  element.setAttribute("language", toolbarContext.language || "en-US");
121
132
  element.setAttribute("size", resolveControlSize());
133
+ element.setAttribute("layout-mode", resolveLayoutMode());
122
134
  element.speedOptions =
123
135
  resolveElementSpeedOptions();
124
136
  return element;
125
137
  };
138
+ const hostLayout = resolveHostLayout();
126
139
  return {
127
140
  toolId: this.toolId,
128
141
  button: null,
129
142
  elements: [
130
143
  {
131
144
  element: ensureElement(),
132
- mount: "before-buttons",
145
+ mount: hostLayout.mount,
146
+ layoutHints: {
147
+ controlsRow: {
148
+ reserveSpace: hostLayout.controlsRow.reserveSpace,
149
+ showWhenToolActive: hostLayout.controlsRow.expandWhenToolActive,
150
+ },
151
+ },
133
152
  },
134
153
  ],
154
+ subscribeActive: (callback) => {
155
+ const element = ensureElement();
156
+ const handler = (event) => {
157
+ const detail = event.detail;
158
+ callback(detail?.active === true);
159
+ };
160
+ element.addEventListener(TOOL_ACTIVE_CHANGE_EVENT, handler);
161
+ return () => {
162
+ element.removeEventListener(TOOL_ACTIVE_CHANGE_EVENT, handler);
163
+ };
164
+ },
135
165
  sync: () => {
136
166
  const element = ensureElement();
137
167
  element.setAttribute("tool-id", fullToolId);
138
168
  element.setAttribute("catalog-id", toolbarContext.catalogId || toolbarContext.itemId);
139
169
  element.setAttribute("language", toolbarContext.language || "en-US");
140
170
  element.setAttribute("size", resolveControlSize());
171
+ element.setAttribute("layout-mode", resolveLayoutMode());
141
172
  element.speedOptions =
142
173
  resolveElementSpeedOptions();
143
174
  },
@@ -1 +1 @@
1
- {"version":3,"file":"tts.js","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tts.js","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-players/pie-assessment-toolkit",
3
- "version": "0.3.26",
3
+ "version": "0.3.28",
4
4
  "type": "module",
5
5
  "description": "PIE assessment toolkit: composable services + reference implementation for assessment players and tool coordination",
6
6
  "license": "MIT",
@@ -63,15 +63,15 @@
63
63
  "test": "bun test"
64
64
  },
65
65
  "dependencies": {
66
- "@pie-players/pie-calculator": "0.3.26",
67
- "@pie-players/pie-context": "0.3.26",
68
- "@pie-players/pie-players-shared": "0.3.26",
69
- "@pie-players/pie-tts": "0.3.26",
66
+ "@pie-players/pie-calculator": "0.3.28",
67
+ "@pie-players/pie-context": "0.3.28",
68
+ "@pie-players/pie-players-shared": "0.3.28",
69
+ "@pie-players/pie-tts": "0.3.28",
70
70
  "svelte": "^5.54.0"
71
71
  },
72
72
  "peerDependencies": {
73
- "@pie-players/pie-calculator-desmos": "0.3.26",
74
- "@pie-players/tts-client-server": "0.3.26"
73
+ "@pie-players/pie-calculator-desmos": "0.3.28",
74
+ "@pie-players/tts-client-server": "0.3.28"
75
75
  },
76
76
  "peerDependenciesMeta": {
77
77
  "@pie-players/pie-calculator-desmos": {