@pie-players/pie-default-tool-loaders 0.3.74 → 1.0.0-beta.0
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 +116 -107
- package/dist/calculator-providers/CortexToolProvider.d.ts +0 -3
- package/dist/calculator-providers/CortexToolProvider.js +0 -14
- package/dist/calculator-providers/DesmosToolProvider.d.ts +0 -3
- package/dist/calculator-providers/DesmosToolProvider.js +0 -14
- package/dist/calculator-providers/GeoGebraToolProvider.d.ts +0 -3
- package/dist/calculator-providers/GeoGebraToolProvider.js +0 -14
- package/dist/calculator-providers/LazyCalculatorToolProvider.d.ts +3 -5
- package/dist/calculator-providers/LazyCalculatorToolProvider.js +1 -1
- package/dist/content-alternates.d.ts +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -2
- package/dist/packaged-capability-composition.d.ts +22 -50
- package/dist/packaged-capability-composition.js +61 -266
- package/dist/registrations/accessibility-tools.d.ts +1 -5
- package/dist/registrations/accessibility-tools.js +11 -49
- package/dist/registrations/audio-transcript.d.ts +8 -7
- package/dist/registrations/audio-transcript.js +12 -8
- package/dist/registrations/calculator.d.ts +2 -6
- package/dist/registrations/calculator.js +17 -39
- package/dist/registrations/dictionary-tools.d.ts +6 -5
- package/dist/registrations/dictionary-tools.js +21 -26
- package/dist/registrations/interaction-tools.d.ts +1 -7
- package/dist/registrations/interaction-tools.js +22 -30
- package/dist/registrations/measurement-tools.d.ts +1 -5
- package/dist/registrations/measurement-tools.js +1 -17
- package/dist/registrations/overlay-element-cache.d.ts +3 -1
- package/dist/registrations/overlay-element-cache.js +2 -1
- package/dist/registrations/overlay-toolbar-render.d.ts +9 -19
- package/dist/registrations/overlay-toolbar-render.js +9 -16
- package/dist/registrations/selection-actions.d.ts +1 -1
- package/dist/registrations/selection-actions.js +1 -1
- package/dist/registrations/subject-specific-tools.d.ts +1 -5
- package/dist/registrations/subject-specific-tools.js +1 -15
- package/dist/registrations/tts.d.ts +2 -8
- package/dist/registrations/tts.js +28 -99
- package/package.json +22 -23
|
@@ -2,21 +2,17 @@
|
|
|
2
2
|
* The `renderToolbar` shape shared by every packaged capability that puts one
|
|
3
3
|
* overlay behind one toolbar button.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* the
|
|
9
|
-
* binding, the button, the component-override lookup, the `tool-id` attribute, the
|
|
10
|
-
* sync — was identical, which is why one rule landing in three spellings was
|
|
11
|
-
* possible: the shell title was `resolveToolRegistrationName` in two files,
|
|
12
|
-
* `displayName` in a third and a raw `t(key)` in a fourth.
|
|
5
|
+
* What varies between capabilities is the two options below: whether the overlay
|
|
6
|
+
* paints its own chrome or takes a draggable window, and that window's size. The
|
|
7
|
+
* visibility binding, the button, the component-override lookup, the `tool-id`
|
|
8
|
+
* attribute and the sync are shared, so the shell title has one spelling.
|
|
13
9
|
*
|
|
14
|
-
* Catalog keys are derived from `toolId
|
|
15
|
-
* `tools.<toolId>.
|
|
16
|
-
*
|
|
17
|
-
*
|
|
10
|
+
* Catalog keys are derived from `toolId`: `tools.<toolId>.buttonA11y` and
|
|
11
|
+
* `tools.<toolId>.tooltip`. A capability needing a different prefix — the
|
|
12
|
+
* dictionary variants, which compose several capabilities off one element —
|
|
13
|
+
* keeps its own renderer.
|
|
18
14
|
*/
|
|
19
|
-
import { applyOverlaySurface, createScopedVisibilityBinding, createToolElement, resolveToolRegistrationName, syncButtonAndOverlayVisibility, } from "@pie-players/pie-assessment-toolkit/tools/
|
|
15
|
+
import { applyOverlaySurface, createScopedVisibilityBinding, createToolElement, resolveToolRegistrationName, syncButtonAndOverlayVisibility, } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
20
16
|
import { resolveOverlayElement } from "./overlay-element-cache.js";
|
|
21
17
|
export function renderOverlayToolbar(registration, context, toolbarContext, options = {}) {
|
|
22
18
|
const { toolId } = registration;
|
|
@@ -74,9 +70,6 @@ export function renderOverlayToolbar(registration, context, toolbarContext, opti
|
|
|
74
70
|
overlay,
|
|
75
71
|
isActive: visibility.isActive,
|
|
76
72
|
});
|
|
77
|
-
if (options.handsOverCoordinator && toolbarContext.toolkitCoordinator) {
|
|
78
|
-
overlay.toolkitCoordinator = toolbarContext.toolkitCoordinator;
|
|
79
|
-
}
|
|
80
73
|
},
|
|
81
74
|
subscribeActive: visibility.subscribeActive,
|
|
82
75
|
};
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* cannot originate one at all. Every tool named here also opens from the toolbar and
|
|
13
13
|
* carries its own term field.
|
|
14
14
|
*/
|
|
15
|
-
import type { ToolSelectionAction, ToolSurfaceServices } from "@pie-players/pie-assessment-toolkit/tools/
|
|
15
|
+
import type { ToolSelectionAction, ToolSurfaceServices } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
16
16
|
/**
|
|
17
17
|
* Actions for the gateway to render, given the services it was handed.
|
|
18
18
|
*
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* cannot originate one at all. Every tool named here also opens from the toolbar and
|
|
13
13
|
* carries its own term field.
|
|
14
14
|
*/
|
|
15
|
-
import { resolveFallbackToolIcon } from "@pie-players/pie-assessment-toolkit/tools/
|
|
15
|
+
import { resolveFallbackToolIcon } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
16
16
|
function asRequestCapable(coordinator) {
|
|
17
17
|
const candidate = coordinator;
|
|
18
18
|
if (typeof candidate?.canRequestTool !== "function")
|
|
@@ -4,12 +4,8 @@
|
|
|
4
4
|
* Registers tools for specific subject areas:
|
|
5
5
|
* - Graph (coordinate plane)
|
|
6
6
|
* - Periodic Table (chemistry reference)
|
|
7
|
-
*
|
|
8
|
-
* Maps to QTI 3.0 standard access features:
|
|
9
|
-
* - graph (assessment tool)
|
|
10
|
-
* - periodicTable (assessment tool)
|
|
11
7
|
*/
|
|
12
|
-
import type { ToolRegistration } from "@pie-players/pie-assessment-toolkit/tools/
|
|
8
|
+
import type { ToolRegistration } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
13
9
|
/**
|
|
14
10
|
* Graph tool registration
|
|
15
11
|
*
|
|
@@ -4,12 +4,8 @@
|
|
|
4
4
|
* Registers tools for specific subject areas:
|
|
5
5
|
* - Graph (coordinate plane)
|
|
6
6
|
* - Periodic Table (chemistry reference)
|
|
7
|
-
*
|
|
8
|
-
* Maps to QTI 3.0 standard access features:
|
|
9
|
-
* - graph (assessment tool)
|
|
10
|
-
* - periodicTable (assessment tool)
|
|
11
7
|
*/
|
|
12
|
-
import { hasMathContent, hasScienceContent, } from "@pie-players/pie-assessment-toolkit/tools/
|
|
8
|
+
import { hasMathContent, hasScienceContent, } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
13
9
|
import { renderOverlayToolbar } from "./overlay-toolbar-render.js";
|
|
14
10
|
/**
|
|
15
11
|
* Graph tool registration
|
|
@@ -27,11 +23,6 @@ export const graphToolRegistration = {
|
|
|
27
23
|
// A floating tool, placed on a section toolbar or on an item toolbar where
|
|
28
24
|
// the toolkit runs without a section.
|
|
29
25
|
supportedLevels: ["section", "item"],
|
|
30
|
-
// `graphingCalculator` grants the calculator, whose graphing type a host
|
|
31
|
-
// selects through render params; the coordinate plane is not that tool.
|
|
32
|
-
pnpSupportIds: [
|
|
33
|
-
"graph", // QTI 3.0 standard (assessment.graph)
|
|
34
|
-
],
|
|
35
26
|
/**
|
|
36
27
|
* Pass 2: Graph is relevant when math content is present
|
|
37
28
|
*/
|
|
@@ -66,11 +57,6 @@ export const periodicTableToolRegistration = {
|
|
|
66
57
|
// A floating tool, placed on a section toolbar or on an item toolbar where
|
|
67
58
|
// the toolkit runs without a section.
|
|
68
59
|
supportedLevels: ["section", "item"],
|
|
69
|
-
// PNP support IDs
|
|
70
|
-
// Maps to QTI 3.0 standard feature: periodicTable
|
|
71
|
-
pnpSupportIds: [
|
|
72
|
-
"periodicTable", // QTI 3.0 standard (assessment.periodicTable)
|
|
73
|
-
],
|
|
74
60
|
/**
|
|
75
61
|
* Pass 2: Periodic table is relevant when science content is present
|
|
76
62
|
*/
|
|
@@ -2,20 +2,14 @@
|
|
|
2
2
|
* Text-to-Speech (TTS) Tool Registration
|
|
3
3
|
*
|
|
4
4
|
* Registers the TTS tool for reading content aloud.
|
|
5
|
-
*
|
|
6
|
-
* Maps to QTI 3.0 standard access features:
|
|
7
|
-
* - textToSpeech (auditory support)
|
|
8
|
-
* - readAloud (auditory support)
|
|
9
5
|
*/
|
|
10
|
-
import type { ToolRegistration } from "@pie-players/pie-assessment-toolkit/tools/
|
|
11
|
-
export declare const TOOL_ELEMENT_UNMOUNT_CALLBACK_PROP = "__pieToolElementUnmount";
|
|
12
|
-
export declare const TOOL_ACTIVE_CHANGE_EVENT = "pie-tool-active-change";
|
|
6
|
+
import type { ToolRegistration } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
13
7
|
/**
|
|
14
8
|
* Text-to-Speech tool registration
|
|
15
9
|
*
|
|
16
10
|
* Supports:
|
|
17
11
|
* - Reading content aloud using browser TTS or external providers
|
|
18
12
|
* - Context-aware visibility (shows when readable text is available)
|
|
19
|
-
* -
|
|
13
|
+
* - Item and passage levels
|
|
20
14
|
*/
|
|
21
15
|
export declare const ttsToolRegistration: ToolRegistration;
|
|
@@ -2,28 +2,22 @@
|
|
|
2
2
|
* Text-to-Speech (TTS) Tool Registration
|
|
3
3
|
*
|
|
4
4
|
* Registers the TTS tool for reading content aloud.
|
|
5
|
-
*
|
|
6
|
-
* Maps to QTI 3.0 standard access features:
|
|
7
|
-
* - textToSpeech (auditory support)
|
|
8
|
-
* - readAloud (auditory support)
|
|
9
5
|
*/
|
|
10
|
-
import {
|
|
11
|
-
import { createScopedToolId } from "@pie-players/pie-assessment-toolkit/tools/
|
|
12
|
-
import { buildRuntimeTTSConfig,
|
|
13
|
-
import { TTSToolProvider } from "@pie-players/pie-assessment-toolkit/tools/
|
|
6
|
+
import { hasSpokenContent } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
7
|
+
import { createScopedToolId, createToolElement, TOOL_ACTIVE_CHANGE_EVENT, } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
8
|
+
import { buildRuntimeTTSConfig, normalizeTTSSpeedControlOptions, resolveTTSHostToolbarLayout, resolveTTSRuntimeSettings, } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
9
|
+
import { TTSToolProvider } from "@pie-players/pie-assessment-toolkit/tools/registration";
|
|
10
|
+
import { resolveOverlayElement } from "./overlay-element-cache.js";
|
|
14
11
|
// This package owns the server adapter's import, so the toolkit never names it
|
|
15
12
|
// and a bundler building the toolkit alone has nothing to resolve.
|
|
16
13
|
const loadServerTTSProvider = async () => (await import("@pie-players/tts-client-server")).ServerTTSProvider;
|
|
17
|
-
const inlineTTSControls = new Map();
|
|
18
|
-
export const TOOL_ELEMENT_UNMOUNT_CALLBACK_PROP = "__pieToolElementUnmount";
|
|
19
|
-
export const TOOL_ACTIVE_CHANGE_EVENT = "pie-tool-active-change";
|
|
20
14
|
/**
|
|
21
15
|
* Text-to-Speech tool registration
|
|
22
16
|
*
|
|
23
17
|
* Supports:
|
|
24
18
|
* - Reading content aloud using browser TTS or external providers
|
|
25
19
|
* - Context-aware visibility (shows when readable text is available)
|
|
26
|
-
* -
|
|
20
|
+
* - Item and passage levels
|
|
27
21
|
*/
|
|
28
22
|
export const ttsToolRegistration = {
|
|
29
23
|
toolId: "textToSpeech",
|
|
@@ -33,123 +27,69 @@ export const ttsToolRegistration = {
|
|
|
33
27
|
descriptionKey: "tools.textToSpeech.description",
|
|
34
28
|
icon: "volume-up",
|
|
35
29
|
provider: {
|
|
36
|
-
getProviderId: () => "tts",
|
|
37
30
|
createProvider: (config) => {
|
|
38
|
-
|
|
39
|
-
return new TTSToolProvider(resolveTTSBackend(settings), {
|
|
31
|
+
return new TTSToolProvider(resolveTTSRuntimeSettings(config).backend, {
|
|
40
32
|
loadServerProvider: loadServerTTSProvider,
|
|
41
33
|
});
|
|
42
34
|
},
|
|
43
|
-
getInitConfig: (config) =>
|
|
44
|
-
const settings = resolveTTSRuntimeSettings(config);
|
|
45
|
-
const backend = resolveTTSBackend(settings);
|
|
46
|
-
const serverProvider = resolveRuntimeProvider(settings, backend);
|
|
47
|
-
const transportMode = resolveTransportMode(settings, serverProvider);
|
|
48
|
-
return {
|
|
49
|
-
backend,
|
|
50
|
-
serverProvider,
|
|
51
|
-
transportMode,
|
|
52
|
-
...buildRuntimeTTSConfig(settings),
|
|
53
|
-
};
|
|
54
|
-
},
|
|
35
|
+
getInitConfig: (config) => buildRuntimeTTSConfig(resolveTTSRuntimeSettings(config)),
|
|
55
36
|
getAuthFetcher: (config) => {
|
|
56
37
|
const runtimeAuthFetcher = config?.provider?.runtime?.authFetcher;
|
|
57
38
|
return typeof runtimeAuthFetcher === "function"
|
|
58
39
|
? runtimeAuthFetcher
|
|
59
40
|
: undefined;
|
|
60
41
|
},
|
|
61
|
-
sanitizeConfig: (config) => {
|
|
62
|
-
const settings = config.settings && typeof config.settings === "object"
|
|
63
|
-
? { ...config.settings }
|
|
64
|
-
: undefined;
|
|
65
|
-
if (settings && "layoutMode" in settings) {
|
|
66
|
-
settings.layoutMode = normalizeTTSLayoutMode(settings.layoutMode);
|
|
67
|
-
}
|
|
68
|
-
if (settings && "speedOptions" in settings) {
|
|
69
|
-
settings.speedOptions = normalizeTTSSpeedControlOptions(settings.speedOptions);
|
|
70
|
-
}
|
|
71
|
-
const normalizedConfig = {
|
|
72
|
-
...config,
|
|
73
|
-
};
|
|
74
|
-
if ("layoutMode" in normalizedConfig) {
|
|
75
|
-
normalizedConfig.layoutMode = normalizeTTSLayoutMode(normalizedConfig.layoutMode);
|
|
76
|
-
}
|
|
77
|
-
if ("speedOptions" in normalizedConfig) {
|
|
78
|
-
normalizedConfig.speedOptions = normalizeTTSSpeedControlOptions(normalizedConfig.speedOptions);
|
|
79
|
-
}
|
|
80
|
-
if (settings) {
|
|
81
|
-
normalizedConfig.settings = settings;
|
|
82
|
-
}
|
|
83
|
-
return normalizedConfig;
|
|
84
|
-
},
|
|
85
42
|
lazy: true,
|
|
86
43
|
},
|
|
44
|
+
sanitizeConfig: (config) => {
|
|
45
|
+
const normalizedConfig = {
|
|
46
|
+
...config,
|
|
47
|
+
};
|
|
48
|
+
if ("speedOptions" in normalizedConfig) {
|
|
49
|
+
normalizedConfig.speedOptions = normalizeTTSSpeedControlOptions(normalizedConfig.speedOptions);
|
|
50
|
+
}
|
|
51
|
+
return normalizedConfig;
|
|
52
|
+
},
|
|
87
53
|
// TTS is inline-only and scoped to item/passage contexts.
|
|
88
54
|
supportedLevels: ["item", "passage"],
|
|
89
|
-
// PNP support IDs that enable this tool
|
|
90
|
-
// Maps to QTI 3.0 standard features: textToSpeech, readAloud
|
|
91
|
-
pnpSupportIds: [
|
|
92
|
-
"textToSpeech", // QTI 3.0 standard (auditory.textToSpeech)
|
|
93
|
-
"readAloud", // QTI 3.0 standard (auditory.readAloud)
|
|
94
|
-
],
|
|
95
55
|
/**
|
|
96
56
|
* Pass 2: Determine if TTS is relevant in this context
|
|
97
57
|
*
|
|
98
|
-
* TTS is relevant when
|
|
99
|
-
* - Context contains readable text (at least 10 characters)
|
|
58
|
+
* TTS is relevant when the context holds readable text or a catalog idref.
|
|
100
59
|
*/
|
|
101
60
|
isVisibleInContext(context) {
|
|
102
|
-
return
|
|
61
|
+
return hasSpokenContent(context);
|
|
103
62
|
},
|
|
104
|
-
renderToolbar(
|
|
63
|
+
renderToolbar(context, toolbarContext) {
|
|
105
64
|
const resolveRuntimeSettings = () => resolveTTSRuntimeSettings(toolbarContext.toolkitCoordinator?.getToolConfig(this.toolId) ||
|
|
106
65
|
undefined);
|
|
107
66
|
const resolveElementSpeedOptions = () => {
|
|
108
67
|
const runtimeSettings = resolveRuntimeSettings();
|
|
109
68
|
return normalizeTTSSpeedControlOptions(runtimeSettings.speedOptions);
|
|
110
69
|
};
|
|
111
|
-
const resolveLayoutMode = () => resolveTTSLayoutMode(resolveRuntimeSettings());
|
|
112
|
-
const resolveHostLayout = () => resolveTTSHostToolbarLayout(resolveRuntimeSettings());
|
|
113
70
|
const fullToolId = createScopedToolId(this.toolId, toolbarContext.scope.level, toolbarContext.scope.scopeId);
|
|
114
71
|
const resolveControlSize = () => {
|
|
115
72
|
const raw = toolbarContext.ui?.size;
|
|
116
73
|
return raw === "sm" || raw === "lg" ? raw : "md";
|
|
117
74
|
};
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
if (element &&
|
|
121
|
-
typeof element.isConnected ===
|
|
122
|
-
"boolean" &&
|
|
123
|
-
!element.isConnected) {
|
|
124
|
-
inlineTTSControls.delete(fullToolId);
|
|
125
|
-
element = undefined;
|
|
126
|
-
}
|
|
127
|
-
if (!element) {
|
|
128
|
-
element = document.createElement("pie-tool-tts-inline");
|
|
129
|
-
element[TOOL_ELEMENT_UNMOUNT_CALLBACK_PROP] = () => {
|
|
130
|
-
if (inlineTTSControls.get(fullToolId) === element) {
|
|
131
|
-
inlineTTSControls.delete(fullToolId);
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
inlineTTSControls.set(fullToolId, element);
|
|
135
|
-
}
|
|
75
|
+
const element = resolveOverlayElement(toolbarContext, fullToolId, () => createToolElement(this.toolId, context, toolbarContext, toolbarContext.componentOverrides));
|
|
76
|
+
const applyAttributes = () => {
|
|
136
77
|
element.setAttribute("catalog-id", toolbarContext.catalogId || toolbarContext.itemId);
|
|
137
|
-
element.setAttribute("language", toolbarContext.language || "en-US");
|
|
138
78
|
element.setAttribute("size", resolveControlSize());
|
|
139
|
-
element.setAttribute("layout-mode",
|
|
79
|
+
element.setAttribute("layout-mode", resolveRuntimeSettings().layoutMode);
|
|
140
80
|
element.speedOptions = resolveElementSpeedOptions();
|
|
141
81
|
element.showSingleSpeedOption =
|
|
142
82
|
resolveRuntimeSettings().showSingleSpeedOption === true;
|
|
143
|
-
return element;
|
|
144
83
|
};
|
|
145
|
-
|
|
84
|
+
applyAttributes();
|
|
85
|
+
const hostLayout = resolveTTSHostToolbarLayout(resolveRuntimeSettings());
|
|
146
86
|
return {
|
|
147
87
|
toolId: this.toolId,
|
|
148
88
|
button: null,
|
|
149
89
|
elements: [
|
|
150
90
|
{
|
|
151
|
-
element
|
|
152
|
-
mount:
|
|
91
|
+
element,
|
|
92
|
+
mount: "before-buttons",
|
|
153
93
|
layoutHints: {
|
|
154
94
|
controlsRow: {
|
|
155
95
|
reserveSpace: hostLayout.controlsRow.reserveSpace,
|
|
@@ -162,7 +102,6 @@ export const ttsToolRegistration = {
|
|
|
162
102
|
},
|
|
163
103
|
],
|
|
164
104
|
subscribeActive: (callback) => {
|
|
165
|
-
const element = ensureElement();
|
|
166
105
|
const handler = (event) => {
|
|
167
106
|
const detail = event.detail;
|
|
168
107
|
callback(detail?.active === true);
|
|
@@ -172,17 +111,7 @@ export const ttsToolRegistration = {
|
|
|
172
111
|
element.removeEventListener(TOOL_ACTIVE_CHANGE_EVENT, handler);
|
|
173
112
|
};
|
|
174
113
|
},
|
|
175
|
-
sync:
|
|
176
|
-
const element = ensureElement();
|
|
177
|
-
element.setAttribute("tool-id", fullToolId);
|
|
178
|
-
element.setAttribute("catalog-id", toolbarContext.catalogId || toolbarContext.itemId);
|
|
179
|
-
element.setAttribute("language", toolbarContext.language || "en-US");
|
|
180
|
-
element.setAttribute("size", resolveControlSize());
|
|
181
|
-
element.setAttribute("layout-mode", resolveLayoutMode());
|
|
182
|
-
element.speedOptions = resolveElementSpeedOptions();
|
|
183
|
-
element.showSingleSpeedOption =
|
|
184
|
-
resolveRuntimeSettings().showSingleSpeedOption === true;
|
|
185
|
-
},
|
|
114
|
+
sync: applyAttributes,
|
|
186
115
|
};
|
|
187
116
|
},
|
|
188
117
|
};
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-players/pie-default-tool-loaders",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0-beta.0",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "Composition layer for the packaged PIE assessment tools: registrations, tag map, placement
|
|
5
|
+
"description": "Composition layer for the packaged PIE assessment tools: registrations, tag map, placement preset, universal and empty profiles, and lazy module loaders",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "git+https://github.com/pie-framework/pie-players.git",
|
|
@@ -33,30 +33,29 @@
|
|
|
33
33
|
"test": "bun test"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@pie-players/pie-assessment-toolkit": "0.
|
|
37
|
-
"@pie-players/pie-calculator": "0.
|
|
38
|
-
"@pie-players/pie-calculator-cortex": "0.
|
|
39
|
-
"@pie-players/pie-calculator-desmos": "0.
|
|
40
|
-
"@pie-players/pie-calculator-geogebra": "0.
|
|
41
|
-
"@pie-players/pie-players-shared": "0.
|
|
42
|
-
"@pie-players/pie-tool-annotation-toolbar": "0.
|
|
43
|
-
"@pie-players/pie-tool-answer-eliminator": "0.
|
|
44
|
-
"@pie-players/pie-tool-calculator-
|
|
45
|
-
"@pie-players/pie-tool-
|
|
46
|
-
"@pie-players/pie-tool-
|
|
47
|
-
"@pie-players/pie-tool-
|
|
48
|
-
"@pie-players/pie-tool-
|
|
49
|
-
"@pie-players/pie-tool-
|
|
50
|
-
"@pie-players/pie-tool-
|
|
51
|
-
"@pie-players/pie-tool-
|
|
52
|
-
"@pie-players/pie-tool-
|
|
53
|
-
"@pie-players/pie-tool-
|
|
54
|
-
"@pie-players/
|
|
55
|
-
"@pie-players/pie-tool-tts-inline": "0.3.74",
|
|
56
|
-
"@pie-players/tts-client-server": "0.3.74"
|
|
36
|
+
"@pie-players/pie-assessment-toolkit": "1.0.0-beta.0",
|
|
37
|
+
"@pie-players/pie-calculator": "1.0.0-beta.0",
|
|
38
|
+
"@pie-players/pie-calculator-cortex": "1.0.0-beta.0",
|
|
39
|
+
"@pie-players/pie-calculator-desmos": "1.0.0-beta.0",
|
|
40
|
+
"@pie-players/pie-calculator-geogebra": "1.0.0-beta.0",
|
|
41
|
+
"@pie-players/pie-players-shared": "1.0.0-beta.0",
|
|
42
|
+
"@pie-players/pie-tool-annotation-toolbar": "1.0.0-beta.0",
|
|
43
|
+
"@pie-players/pie-tool-answer-eliminator": "1.0.0-beta.0",
|
|
44
|
+
"@pie-players/pie-tool-calculator-shared": "1.0.0-beta.0",
|
|
45
|
+
"@pie-players/pie-tool-dictionary": "1.0.0-beta.0",
|
|
46
|
+
"@pie-players/pie-tool-graph": "1.0.0-beta.0",
|
|
47
|
+
"@pie-players/pie-tool-line-reader": "1.0.0-beta.0",
|
|
48
|
+
"@pie-players/pie-tool-periodic-table": "1.0.0-beta.0",
|
|
49
|
+
"@pie-players/pie-tool-picture-dictionary": "1.0.0-beta.0",
|
|
50
|
+
"@pie-players/pie-tool-protractor": "1.0.0-beta.0",
|
|
51
|
+
"@pie-players/pie-tool-ruler": "1.0.0-beta.0",
|
|
52
|
+
"@pie-players/pie-tool-theme": "1.0.0-beta.0",
|
|
53
|
+
"@pie-players/pie-tool-tts-inline": "1.0.0-beta.0",
|
|
54
|
+
"@pie-players/tts-client-server": "1.0.0-beta.0"
|
|
57
55
|
},
|
|
58
56
|
"devDependencies": {
|
|
59
57
|
"@biomejs/biome": "^2.5.15",
|
|
58
|
+
"@happy-dom/global-registrator": "^20.14.5",
|
|
60
59
|
"typescript": "^5.9.3"
|
|
61
60
|
},
|
|
62
61
|
"homepage": "https://github.com/pie-framework/pie-players/tree/master/packages/default-tool-loaders#readme",
|