@pie-players/pie-assessment-toolkit 0.3.2 → 0.3.4
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 +5 -8
- package/dist/components/ItemToolBar.custom-element.js +539 -94
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/services/PNPToolResolver.d.ts.map +1 -1
- package/dist/services/PNPToolResolver.js +4 -1
- package/dist/services/PNPToolResolver.js.map +1 -1
- package/dist/services/ToolRegistry.d.ts +51 -0
- package/dist/services/ToolRegistry.d.ts.map +1 -1
- package/dist/services/ToolRegistry.js +60 -0
- package/dist/services/ToolRegistry.js.map +1 -1
- package/dist/services/ToolkitCoordinator.d.ts +12 -24
- package/dist/services/ToolkitCoordinator.d.ts.map +1 -1
- package/dist/services/ToolkitCoordinator.js +60 -99
- package/dist/services/ToolkitCoordinator.js.map +1 -1
- package/dist/services/defaultPersonalNeedsProfile.js +2 -2
- package/dist/services/defaultPersonalNeedsProfile.js.map +1 -1
- package/dist/services/interfaces.d.ts +8 -3
- 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 +1 -1
- package/dist/services/tool-providers/index.d.ts +0 -4
- package/dist/services/tool-providers/index.d.ts.map +1 -1
- package/dist/services/tool-providers/index.js +0 -2
- package/dist/services/tool-providers/index.js.map +1 -1
- package/dist/services/tools-config-normalizer.d.ts +40 -3
- package/dist/services/tools-config-normalizer.d.ts.map +1 -1
- package/dist/services/tools-config-normalizer.js +86 -11
- package/dist/services/tools-config-normalizer.js.map +1 -1
- package/dist/tools/client.d.ts +0 -2
- package/dist/tools/client.d.ts.map +1 -1
- package/dist/tools/client.js +0 -4
- package/dist/tools/client.js.map +1 -1
- package/dist/tools/default-tool-module-loaders.js +1 -1
- package/dist/tools/default-tool-module-loaders.js.map +1 -1
- package/dist/tools/library-loader.d.ts.map +1 -1
- package/dist/tools/library-loader.js +0 -35
- package/dist/tools/library-loader.js.map +1 -1
- package/dist/tools/registrations/accessibility-tools.d.ts.map +1 -1
- package/dist/tools/registrations/accessibility-tools.js +44 -41
- package/dist/tools/registrations/accessibility-tools.js.map +1 -1
- package/dist/tools/registrations/calculator.d.ts.map +1 -1
- package/dist/tools/registrations/calculator.js +50 -2
- 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 +22 -28
- 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 +19 -27
- 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 +53 -37
- package/dist/tools/registrations/subject-specific-tools.js.map +1 -1
- package/dist/tools/registrations/toolbar-registration-helpers.d.ts +15 -0
- package/dist/tools/registrations/toolbar-registration-helpers.d.ts.map +1 -0
- package/dist/tools/registrations/toolbar-registration-helpers.js +22 -0
- package/dist/tools/registrations/toolbar-registration-helpers.js.map +1 -0
- package/dist/tools/registrations/tts.d.ts.map +1 -1
- package/dist/tools/registrations/tts.js +49 -0
- package/dist/tools/registrations/tts.js.map +1 -1
- package/dist/tools/types.d.ts +1 -1
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js.map +1 -1
- package/package.json +8 -10
- package/dist/services/tool-providers/MathJsToolProvider.d.ts +0 -25
- package/dist/services/tool-providers/MathJsToolProvider.d.ts.map +0 -1
- package/dist/services/tool-providers/MathJsToolProvider.js +0 -53
- package/dist/services/tool-providers/MathJsToolProvider.js.map +0 -1
- package/dist/services/tool-providers/TIToolProvider.d.ts +0 -107
- package/dist/services/tool-providers/TIToolProvider.d.ts.map +0 -1
- package/dist/services/tool-providers/TIToolProvider.js +0 -123
- package/dist/services/tool-providers/TIToolProvider.js.map +0 -1
- package/dist/tools/calculators/mathjs-provider.d.ts +0 -50
- package/dist/tools/calculators/mathjs-provider.d.ts.map +0 -1
- package/dist/tools/calculators/mathjs-provider.js +0 -660
- package/dist/tools/calculators/mathjs-provider.js.map +0 -1
- package/dist/tools/calculators/ti-provider.d.ts +0 -122
- package/dist/tools/calculators/ti-provider.d.ts.map +0 -1
- package/dist/tools/calculators/ti-provider.js +0 -710
- package/dist/tools/calculators/ti-provider.js.map +0 -1
- package/src/README.md +0 -626
- package/src/components/ItemToolBar.svelte +0 -717
- package/src/components/PieAssessmentToolkit.svelte +0 -681
- package/src/components/SectionToolBar.svelte +0 -58
- package/src/components/ToolButton.svelte +0 -146
- package/src/components/ToolButtonGroup.svelte +0 -125
- package/src/tools/README.md +0 -617
- package/src/tools/calculators/README.md +0 -395
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
* - highlighting (cognitive/reading support)
|
|
12
12
|
*/
|
|
13
13
|
import { hasChoiceInteraction, hasReadableText, } from "../../services/tool-context.js";
|
|
14
|
-
import { createScopedToolId } from "../../services/tool-instance-id.js";
|
|
15
14
|
import { createToolElement, } from "../tool-tag-map.js";
|
|
15
|
+
import { createScopedVisibilityBinding, syncButtonAndOverlayVisibility, } from "./toolbar-registration-helpers.js";
|
|
16
16
|
/**
|
|
17
17
|
* Answer Eliminator tool registration
|
|
18
18
|
*
|
|
@@ -41,10 +41,10 @@ export const answerEliminatorToolRegistration = {
|
|
|
41
41
|
return hasChoiceInteraction(context);
|
|
42
42
|
},
|
|
43
43
|
renderToolbar(context, toolbarContext) {
|
|
44
|
-
const
|
|
44
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
45
45
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
46
46
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
47
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
47
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
48
48
|
overlay.setAttribute("strategy", "strikethrough");
|
|
49
49
|
overlay.setAttribute("button-alignment", "inline");
|
|
50
50
|
const button = {
|
|
@@ -55,16 +55,18 @@ export const answerEliminatorToolRegistration = {
|
|
|
55
55
|
ariaLabel: "Answer eliminator - Strike through choices",
|
|
56
56
|
tooltip: "Strike Through",
|
|
57
57
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
58
|
-
active:
|
|
58
|
+
active: visibility.isActive(),
|
|
59
59
|
};
|
|
60
60
|
return {
|
|
61
61
|
toolId: this.toolId,
|
|
62
62
|
button,
|
|
63
63
|
elements: [{ element: overlay, mount: "after-buttons" }],
|
|
64
64
|
sync: () => {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
syncButtonAndOverlayVisibility({
|
|
66
|
+
button,
|
|
67
|
+
overlay,
|
|
68
|
+
isActive: visibility.isActive,
|
|
69
|
+
});
|
|
68
70
|
if (toolbarContext.toolCoordinator) {
|
|
69
71
|
overlay.coordinator = toolbarContext.toolCoordinator;
|
|
70
72
|
}
|
|
@@ -77,13 +79,7 @@ export const answerEliminatorToolRegistration = {
|
|
|
77
79
|
overlay.globalElementId = globalElementId;
|
|
78
80
|
}
|
|
79
81
|
},
|
|
80
|
-
subscribeActive:
|
|
81
|
-
if (!toolbarContext.subscribeVisibility)
|
|
82
|
-
return () => { };
|
|
83
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
84
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
85
|
-
});
|
|
86
|
-
},
|
|
82
|
+
subscribeActive: visibility.subscribeActive,
|
|
87
83
|
};
|
|
88
84
|
},
|
|
89
85
|
};
|
|
@@ -110,7 +106,7 @@ export const highlighterToolRegistration = {
|
|
|
110
106
|
return hasReadableText(context);
|
|
111
107
|
},
|
|
112
108
|
renderToolbar(context, toolbarContext) {
|
|
113
|
-
const
|
|
109
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
114
110
|
const button = {
|
|
115
111
|
toolId: this.toolId,
|
|
116
112
|
label: this.name,
|
|
@@ -119,31 +115,29 @@ export const highlighterToolRegistration = {
|
|
|
119
115
|
ariaLabel: "Highlighter - Highlight text",
|
|
120
116
|
tooltip: "Highlight",
|
|
121
117
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
122
|
-
active:
|
|
118
|
+
active: visibility.isActive(),
|
|
123
119
|
};
|
|
124
120
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
125
121
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
126
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
122
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
127
123
|
return {
|
|
128
124
|
toolId: this.toolId,
|
|
129
125
|
button,
|
|
130
126
|
elements: [{ element: overlay, mount: "after-buttons" }],
|
|
131
127
|
sync: () => {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
128
|
+
syncButtonAndOverlayVisibility({
|
|
129
|
+
button,
|
|
130
|
+
overlay,
|
|
131
|
+
isActive: visibility.isActive,
|
|
132
|
+
onActiveChange: (active) => {
|
|
133
|
+
overlay.enabled = active;
|
|
134
|
+
},
|
|
135
|
+
});
|
|
136
136
|
if (toolbarContext.ttsService) {
|
|
137
137
|
overlay.ttsService = toolbarContext.ttsService;
|
|
138
138
|
}
|
|
139
139
|
},
|
|
140
|
-
subscribeActive:
|
|
141
|
-
if (!toolbarContext.subscribeVisibility)
|
|
142
|
-
return () => { };
|
|
143
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
144
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
145
|
-
});
|
|
146
|
-
},
|
|
140
|
+
subscribeActive: visibility.subscribeActive,
|
|
147
141
|
};
|
|
148
142
|
},
|
|
149
143
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/interaction-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH,OAAO,EACN,oBAAoB,EACpB,eAAe,GACf,MAAM,gCAAgC,CAAC;AACxC,OAAO,
|
|
1
|
+
{"version":3,"file":"interaction-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/interaction-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"measurement-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/measurement-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"measurement-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/measurement-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAYxC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,gBAoEnC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,EAAE,gBAoExC,CAAC"}
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
* - protractor (assessment tool)
|
|
9
9
|
*/
|
|
10
10
|
import { hasMathContent } from "../../services/tool-context.js";
|
|
11
|
-
import { createScopedToolId } from "../../services/tool-instance-id.js";
|
|
12
11
|
import { createToolElement, } from "../tool-tag-map.js";
|
|
12
|
+
import { createScopedVisibilityBinding, syncButtonAndOverlayVisibility, } from "./toolbar-registration-helpers.js";
|
|
13
13
|
/**
|
|
14
14
|
* Ruler tool registration
|
|
15
15
|
*
|
|
@@ -36,7 +36,7 @@ export const rulerToolRegistration = {
|
|
|
36
36
|
return hasMathContent(context);
|
|
37
37
|
},
|
|
38
38
|
renderToolbar(context, toolbarContext) {
|
|
39
|
-
const
|
|
39
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
40
40
|
const button = {
|
|
41
41
|
toolId: this.toolId,
|
|
42
42
|
label: this.name,
|
|
@@ -45,30 +45,26 @@ export const rulerToolRegistration = {
|
|
|
45
45
|
ariaLabel: "Open ruler tool",
|
|
46
46
|
tooltip: "Ruler",
|
|
47
47
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
48
|
-
active:
|
|
48
|
+
active: visibility.isActive(),
|
|
49
49
|
};
|
|
50
50
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
51
51
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
52
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
52
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
53
53
|
return {
|
|
54
54
|
toolId: this.toolId,
|
|
55
55
|
button,
|
|
56
56
|
elements: [{ element: overlay, mount: "after-buttons" }],
|
|
57
57
|
sync: () => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
syncButtonAndOverlayVisibility({
|
|
59
|
+
button,
|
|
60
|
+
overlay,
|
|
61
|
+
isActive: visibility.isActive,
|
|
62
|
+
});
|
|
61
63
|
if (toolbarContext.toolkitCoordinator) {
|
|
62
64
|
overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
|
|
63
65
|
}
|
|
64
66
|
},
|
|
65
|
-
subscribeActive:
|
|
66
|
-
if (!toolbarContext.subscribeVisibility)
|
|
67
|
-
return () => { };
|
|
68
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
69
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
70
|
-
});
|
|
71
|
-
},
|
|
67
|
+
subscribeActive: visibility.subscribeActive,
|
|
72
68
|
};
|
|
73
69
|
},
|
|
74
70
|
};
|
|
@@ -98,7 +94,7 @@ export const protractorToolRegistration = {
|
|
|
98
94
|
return hasMathContent(context);
|
|
99
95
|
},
|
|
100
96
|
renderToolbar(context, toolbarContext) {
|
|
101
|
-
const
|
|
97
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
102
98
|
const button = {
|
|
103
99
|
toolId: this.toolId,
|
|
104
100
|
label: this.name,
|
|
@@ -107,30 +103,26 @@ export const protractorToolRegistration = {
|
|
|
107
103
|
ariaLabel: "Open protractor tool",
|
|
108
104
|
tooltip: "Protractor",
|
|
109
105
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
110
|
-
active:
|
|
106
|
+
active: visibility.isActive(),
|
|
111
107
|
};
|
|
112
108
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
113
109
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
114
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
110
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
115
111
|
return {
|
|
116
112
|
toolId: this.toolId,
|
|
117
113
|
button,
|
|
118
114
|
elements: [{ element: overlay, mount: "after-buttons" }],
|
|
119
115
|
sync: () => {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
116
|
+
syncButtonAndOverlayVisibility({
|
|
117
|
+
button,
|
|
118
|
+
overlay,
|
|
119
|
+
isActive: visibility.isActive,
|
|
120
|
+
});
|
|
123
121
|
if (toolbarContext.toolkitCoordinator) {
|
|
124
122
|
overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
|
|
125
123
|
}
|
|
126
124
|
},
|
|
127
|
-
subscribeActive:
|
|
128
|
-
if (!toolbarContext.subscribeVisibility)
|
|
129
|
-
return () => { };
|
|
130
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
131
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
132
|
-
});
|
|
133
|
-
},
|
|
125
|
+
subscribeActive: visibility.subscribeActive,
|
|
134
126
|
};
|
|
135
127
|
},
|
|
136
128
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"measurement-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/measurement-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,
|
|
1
|
+
{"version":3,"file":"measurement-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/measurement-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subject-specific-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/subject-specific-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"subject-specific-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/subject-specific-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAYxC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,gBAiFnC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,EAAE,gBAgF3C,CAAC"}
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
* - periodicTable (assessment tool)
|
|
12
12
|
*/
|
|
13
13
|
import { hasMathContent, hasScienceContent } from "../../services/tool-context.js";
|
|
14
|
-
import { createScopedToolId } from "../../services/tool-instance-id.js";
|
|
15
14
|
import { createToolElement, } from "../tool-tag-map.js";
|
|
15
|
+
import { createScopedVisibilityBinding, syncButtonAndOverlayVisibility, } from "./toolbar-registration-helpers.js";
|
|
16
16
|
/**
|
|
17
17
|
* Graph tool registration
|
|
18
18
|
*
|
|
@@ -24,8 +24,8 @@ export const graphToolRegistration = {
|
|
|
24
24
|
name: "Graph",
|
|
25
25
|
description: "Graphing calculator and coordinate plane",
|
|
26
26
|
icon: "chart-bar",
|
|
27
|
-
// Graph
|
|
28
|
-
supportedLevels: ["
|
|
27
|
+
// Graph is a section-level floating tool.
|
|
28
|
+
supportedLevels: ["section"],
|
|
29
29
|
// PNP support IDs
|
|
30
30
|
// Maps to QTI 3.0 standard features: graph, graphingCalculator
|
|
31
31
|
pnpSupportIds: [
|
|
@@ -41,7 +41,7 @@ export const graphToolRegistration = {
|
|
|
41
41
|
return hasMathContent(context);
|
|
42
42
|
},
|
|
43
43
|
renderToolbar(context, toolbarContext) {
|
|
44
|
-
const
|
|
44
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
45
45
|
const button = {
|
|
46
46
|
toolId: this.toolId,
|
|
47
47
|
label: this.name,
|
|
@@ -50,30 +50,38 @@ export const graphToolRegistration = {
|
|
|
50
50
|
ariaLabel: "Graph - Graphing calculator",
|
|
51
51
|
tooltip: "Graph",
|
|
52
52
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
53
|
-
active:
|
|
53
|
+
active: visibility.isActive(),
|
|
54
54
|
};
|
|
55
55
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
56
56
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
57
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
57
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
58
58
|
return {
|
|
59
59
|
toolId: this.toolId,
|
|
60
60
|
button,
|
|
61
|
-
elements: [
|
|
61
|
+
elements: [
|
|
62
|
+
{
|
|
63
|
+
element: overlay,
|
|
64
|
+
mount: "after-buttons",
|
|
65
|
+
shell: {
|
|
66
|
+
title: this.name,
|
|
67
|
+
draggable: true,
|
|
68
|
+
resizable: true,
|
|
69
|
+
closeable: true,
|
|
70
|
+
initialWidth: 920,
|
|
71
|
+
initialHeight: 680,
|
|
72
|
+
minWidth: 640,
|
|
73
|
+
minHeight: 500,
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
],
|
|
62
77
|
sync: () => {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
subscribeActive: (callback) => {
|
|
71
|
-
if (!toolbarContext.subscribeVisibility)
|
|
72
|
-
return () => { };
|
|
73
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
74
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
78
|
+
syncButtonAndOverlayVisibility({
|
|
79
|
+
button,
|
|
80
|
+
overlay,
|
|
81
|
+
isActive: visibility.isActive,
|
|
75
82
|
});
|
|
76
83
|
},
|
|
84
|
+
subscribeActive: visibility.subscribeActive,
|
|
77
85
|
};
|
|
78
86
|
},
|
|
79
87
|
};
|
|
@@ -88,8 +96,8 @@ export const periodicTableToolRegistration = {
|
|
|
88
96
|
name: "Periodic Table",
|
|
89
97
|
description: "Chemistry periodic table reference",
|
|
90
98
|
icon: "beaker",
|
|
91
|
-
// Periodic table
|
|
92
|
-
supportedLevels: ["
|
|
99
|
+
// Periodic table is a section-level floating tool.
|
|
100
|
+
supportedLevels: ["section"],
|
|
93
101
|
// PNP support IDs
|
|
94
102
|
// Maps to QTI 3.0 standard feature: periodicTable
|
|
95
103
|
pnpSupportIds: [
|
|
@@ -104,7 +112,7 @@ export const periodicTableToolRegistration = {
|
|
|
104
112
|
return hasScienceContent(context);
|
|
105
113
|
},
|
|
106
114
|
renderToolbar(context, toolbarContext) {
|
|
107
|
-
const
|
|
115
|
+
const visibility = createScopedVisibilityBinding(this.toolId, toolbarContext);
|
|
108
116
|
const button = {
|
|
109
117
|
toolId: this.toolId,
|
|
110
118
|
label: this.name,
|
|
@@ -113,30 +121,38 @@ export const periodicTableToolRegistration = {
|
|
|
113
121
|
ariaLabel: "Periodic table - Chemistry reference",
|
|
114
122
|
tooltip: "Periodic Table",
|
|
115
123
|
onClick: () => toolbarContext.toggleTool(this.toolId),
|
|
116
|
-
active:
|
|
124
|
+
active: visibility.isActive(),
|
|
117
125
|
};
|
|
118
126
|
const componentOverrides = toolbarContext.componentOverrides ?? {};
|
|
119
127
|
const overlay = createToolElement(this.toolId, context, toolbarContext, componentOverrides);
|
|
120
|
-
overlay.setAttribute("tool-id", fullToolId);
|
|
128
|
+
overlay.setAttribute("tool-id", visibility.fullToolId);
|
|
121
129
|
return {
|
|
122
130
|
toolId: this.toolId,
|
|
123
131
|
button,
|
|
124
|
-
elements: [
|
|
132
|
+
elements: [
|
|
133
|
+
{
|
|
134
|
+
element: overlay,
|
|
135
|
+
mount: "after-buttons",
|
|
136
|
+
shell: {
|
|
137
|
+
title: this.name,
|
|
138
|
+
draggable: true,
|
|
139
|
+
resizable: true,
|
|
140
|
+
closeable: true,
|
|
141
|
+
initialWidth: 1160,
|
|
142
|
+
initialHeight: 760,
|
|
143
|
+
minWidth: 920,
|
|
144
|
+
minHeight: 620,
|
|
145
|
+
},
|
|
146
|
+
},
|
|
147
|
+
],
|
|
125
148
|
sync: () => {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
|
|
131
|
-
}
|
|
132
|
-
},
|
|
133
|
-
subscribeActive: (callback) => {
|
|
134
|
-
if (!toolbarContext.subscribeVisibility)
|
|
135
|
-
return () => { };
|
|
136
|
-
return toolbarContext.subscribeVisibility(() => {
|
|
137
|
-
callback(toolbarContext.isToolVisible(fullToolId));
|
|
149
|
+
syncButtonAndOverlayVisibility({
|
|
150
|
+
button,
|
|
151
|
+
overlay,
|
|
152
|
+
isActive: visibility.isActive,
|
|
138
153
|
});
|
|
139
154
|
},
|
|
155
|
+
subscribeActive: visibility.subscribeActive,
|
|
140
156
|
};
|
|
141
157
|
},
|
|
142
158
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subject-specific-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/subject-specific-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,
|
|
1
|
+
{"version":3,"file":"subject-specific-tools.js","sourceRoot":"","sources":["../../../src/tools/registrations/subject-specific-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ToolToolbarButtonDefinition, ToolToolbarRenderResult, ToolbarContext } from "../../services/ToolRegistry.js";
|
|
2
|
+
export declare function createScopedVisibilityBinding(toolId: string, toolbarContext: ToolbarContext): {
|
|
3
|
+
fullToolId: string;
|
|
4
|
+
isActive: () => boolean;
|
|
5
|
+
subscribeActive: ToolToolbarRenderResult["subscribeActive"];
|
|
6
|
+
};
|
|
7
|
+
export declare function syncButtonAndOverlayVisibility(args: {
|
|
8
|
+
button: ToolToolbarButtonDefinition;
|
|
9
|
+
overlay: {
|
|
10
|
+
visible?: boolean;
|
|
11
|
+
};
|
|
12
|
+
isActive: () => boolean;
|
|
13
|
+
onActiveChange?: (active: boolean) => void;
|
|
14
|
+
}): void;
|
|
15
|
+
//# sourceMappingURL=toolbar-registration-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar-registration-helpers.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/toolbar-registration-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,2BAA2B,EAC3B,uBAAuB,EACvB,cAAc,EACd,MAAM,gCAAgC,CAAC;AAGxC,wBAAgB,6BAA6B,CAC5C,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,GAC5B;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,eAAe,EAAE,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;CAC5D,CAgBA;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE;IACpD,MAAM,EAAE,2BAA2B,CAAC;IACpC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC/B,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC3C,GAAG,IAAI,CAKP"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createScopedToolId } from "../../services/tool-instance-id.js";
|
|
2
|
+
export function createScopedVisibilityBinding(toolId, toolbarContext) {
|
|
3
|
+
const fullToolId = createScopedToolId(toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
|
|
4
|
+
return {
|
|
5
|
+
fullToolId,
|
|
6
|
+
isActive: () => toolbarContext.isToolVisible(fullToolId),
|
|
7
|
+
subscribeActive: (callback) => {
|
|
8
|
+
if (!toolbarContext.subscribeVisibility)
|
|
9
|
+
return () => { };
|
|
10
|
+
return toolbarContext.subscribeVisibility(() => {
|
|
11
|
+
callback(toolbarContext.isToolVisible(fullToolId));
|
|
12
|
+
});
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export function syncButtonAndOverlayVisibility(args) {
|
|
17
|
+
const active = args.isActive();
|
|
18
|
+
args.button.active = active;
|
|
19
|
+
args.overlay.visible = active;
|
|
20
|
+
args.onActiveChange?.(active);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=toolbar-registration-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar-registration-helpers.js","sourceRoot":"","sources":["../../../src/tools/registrations/toolbar-registration-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,UAAU,6BAA6B,CAC5C,MAAc,EACd,cAA8B;IAM9B,MAAM,UAAU,GAAG,kBAAkB,CACpC,MAAM,EACN,cAAc,CAAC,KAAK,CAAC,KAAK,EAC1B,cAAc,CAAC,KAAK,CAAC,OAAO,CAC5B,CAAC;IACF,OAAO;QACN,UAAU;QACV,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC;QACxD,eAAe,EAAE,CAAC,QAAmC,EAAE,EAAE;YACxD,IAAI,CAAC,cAAc,CAAC,mBAAmB;gBAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;YACzD,OAAO,cAAc,CAAC,mBAAmB,CAAC,GAAG,EAAE;gBAC9C,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAK9C;IACA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;IAC9B,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"tts.d.ts","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAIhB,MAAM,gCAAgC,CAAC;AAkCxC;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,gBA0RjC,CAAC"}
|
|
@@ -9,6 +9,14 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { hasReadableText } from "../../services/tool-context.js";
|
|
11
11
|
import { createScopedToolId } from "../../services/tool-instance-id.js";
|
|
12
|
+
import { TTSToolProvider } from "../../services/tool-providers/index.js";
|
|
13
|
+
const toRecord = (value) => value && typeof value === "object" ? value : {};
|
|
14
|
+
const resolveTTSRuntimeSettings = (config) => {
|
|
15
|
+
const configRecord = toRecord(config);
|
|
16
|
+
const settingsRecord = toRecord(config?.settings);
|
|
17
|
+
const merged = { ...configRecord, ...settingsRecord };
|
|
18
|
+
return merged;
|
|
19
|
+
};
|
|
12
20
|
/**
|
|
13
21
|
* Text-to-Speech tool registration
|
|
14
22
|
*
|
|
@@ -22,6 +30,47 @@ export const ttsToolRegistration = {
|
|
|
22
30
|
name: "Text to Speech",
|
|
23
31
|
description: "Read content aloud",
|
|
24
32
|
icon: "volume-up",
|
|
33
|
+
provider: {
|
|
34
|
+
getProviderId: () => "tts",
|
|
35
|
+
createProvider: (config) => {
|
|
36
|
+
const settings = resolveTTSRuntimeSettings(config);
|
|
37
|
+
return new TTSToolProvider(settings.backend || "browser");
|
|
38
|
+
},
|
|
39
|
+
getInitConfig: (config) => {
|
|
40
|
+
const settings = resolveTTSRuntimeSettings(config);
|
|
41
|
+
const backend = settings.backend || "browser";
|
|
42
|
+
const serverProvider = settings.serverProvider ||
|
|
43
|
+
settings.provider ||
|
|
44
|
+
(backend === "polly" || backend === "google" ? backend : undefined);
|
|
45
|
+
return {
|
|
46
|
+
backend,
|
|
47
|
+
apiEndpoint: settings.apiEndpoint,
|
|
48
|
+
serverProvider,
|
|
49
|
+
providerOptions: backend === "polly"
|
|
50
|
+
? {
|
|
51
|
+
...(settings.engine ? { engine: settings.engine } : {}),
|
|
52
|
+
...(typeof settings.sampleRate === "number"
|
|
53
|
+
? { sampleRate: settings.sampleRate }
|
|
54
|
+
: {}),
|
|
55
|
+
...(settings.format ? { format: settings.format } : {}),
|
|
56
|
+
speechMarkTypes: settings.speechMarksMode === "word+sentence"
|
|
57
|
+
? ["word", "sentence"]
|
|
58
|
+
: ["word"],
|
|
59
|
+
}
|
|
60
|
+
: undefined,
|
|
61
|
+
voice: settings.defaultVoice,
|
|
62
|
+
rate: settings.rate,
|
|
63
|
+
pitch: settings.pitch,
|
|
64
|
+
};
|
|
65
|
+
},
|
|
66
|
+
getAuthFetcher: (config) => {
|
|
67
|
+
const runtimeAuthFetcher = config?.provider?.runtime?.authFetcher;
|
|
68
|
+
return typeof runtimeAuthFetcher === "function"
|
|
69
|
+
? runtimeAuthFetcher
|
|
70
|
+
: undefined;
|
|
71
|
+
},
|
|
72
|
+
lazy: true,
|
|
73
|
+
},
|
|
25
74
|
// TTS can appear at all levels except assessment and element.
|
|
26
75
|
supportedLevels: ["section", "item", "passage", "rubric"],
|
|
27
76
|
// PNP support IDs that enable this tool
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.js","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"tts.js","sourceRoot":"","sources":["../../../src/tools/registrations/tts.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Tool system type definitions
|
|
3
3
|
*/
|
|
4
|
-
export type { CalculationHistoryEntry, Calculator, CalculatorProvider, CalculatorProviderCapabilities, CalculatorProviderConfig, CalculatorState, CalculatorType, DesmosCalculatorConfig,
|
|
4
|
+
export type { CalculationHistoryEntry, Calculator, CalculatorProvider, CalculatorProviderCapabilities, CalculatorProviderConfig, CalculatorState, CalculatorType, DesmosCalculatorConfig, } from "@pie-players/pie-calculator";
|
|
5
5
|
export type ToolId = string;
|
|
6
6
|
export interface ToolState {
|
|
7
7
|
id: ToolId;
|