@intellectif/lk-react 13.0.0 → 14.0.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/CHANGELOG.md +44 -0
- package/README.md +11 -3
- package/dist/{WrittenResponse-B5p_-RnJ.d.ts → WrittenResponse-C0P34En1.d.ts} +1 -1
- package/dist/{WrittenResponse-DWtS4tOL.d.cts → WrittenResponse-pB1ik8hg.d.cts} +1 -1
- package/dist/chunk-36FTYJWJ.cjs +869 -0
- package/dist/chunk-36FTYJWJ.cjs.map +1 -0
- package/dist/{chunk-PSHNTDKG.js → chunk-47HHC4GD.js} +13 -161
- package/dist/chunk-47HHC4GD.js.map +1 -0
- package/dist/chunk-62AKSD5Y.js +509 -0
- package/dist/chunk-62AKSD5Y.js.map +1 -0
- package/dist/{chunk-XAGWBVK3.js → chunk-72UGRIMM.js} +6 -5
- package/dist/chunk-72UGRIMM.js.map +1 -0
- package/dist/{chunk-SBIJJ374.cjs → chunk-B2XQLU2E.cjs} +5 -5
- package/dist/{chunk-SBIJJ374.cjs.map → chunk-B2XQLU2E.cjs.map} +1 -1
- package/dist/{chunk-DQERNAWI.js → chunk-BO6P723E.js} +26 -31
- package/dist/chunk-BO6P723E.js.map +1 -0
- package/dist/chunk-BRPEB43C.cjs +13 -0
- package/dist/chunk-BRPEB43C.cjs.map +1 -0
- package/dist/{chunk-NVUFEMPZ.cjs → chunk-BVRUUYYR.cjs} +30 -16
- package/dist/chunk-BVRUUYYR.cjs.map +1 -0
- package/dist/{chunk-AMGK7DDM.cjs → chunk-D4DQFTA7.cjs} +2 -2
- package/dist/chunk-D4DQFTA7.cjs.map +1 -0
- package/dist/chunk-D57QZILZ.js +863 -0
- package/dist/chunk-D57QZILZ.js.map +1 -0
- package/dist/chunk-F4TBCRGI.cjs +518 -0
- package/dist/chunk-F4TBCRGI.cjs.map +1 -0
- package/dist/{chunk-YILH4ETT.js → chunk-I33FOKZ7.js} +224 -31
- package/dist/chunk-I33FOKZ7.js.map +1 -0
- package/dist/{chunk-HT4FFZZQ.cjs → chunk-J2CDPIRC.cjs} +231 -38
- package/dist/chunk-J2CDPIRC.cjs.map +1 -0
- package/dist/{chunk-MA7GXUWC.cjs → chunk-LB3FEV7Z.cjs} +77 -2
- package/dist/chunk-LB3FEV7Z.cjs.map +1 -0
- package/dist/{chunk-5N7OLFHB.js → chunk-LGCUOLP6.js} +6 -5
- package/dist/chunk-LGCUOLP6.js.map +1 -0
- package/dist/{chunk-YZWXVZB3.js → chunk-LLXCX5KK.js} +6 -5
- package/dist/chunk-LLXCX5KK.js.map +1 -0
- package/dist/chunk-MCO52PV5.js +520 -0
- package/dist/chunk-MCO52PV5.js.map +1 -0
- package/dist/{chunk-K7NMNOPI.cjs → chunk-NDQD3ZRY.cjs} +15 -14
- package/dist/chunk-NDQD3ZRY.cjs.map +1 -0
- package/dist/chunk-OD65OZIW.cjs +159 -0
- package/dist/chunk-OD65OZIW.cjs.map +1 -0
- package/dist/chunk-RCMYEWBE.js +11 -0
- package/dist/chunk-RCMYEWBE.js.map +1 -0
- package/dist/{chunk-74QXBWCI.cjs → chunk-RRH7ZPXC.cjs} +6 -6
- package/dist/{chunk-74QXBWCI.cjs.map → chunk-RRH7ZPXC.cjs.map} +1 -1
- package/dist/{chunk-DQNVAXG6.js → chunk-RXS455MR.js} +2 -2
- package/dist/chunk-RXS455MR.js.map +1 -0
- package/dist/{chunk-Z63JRG4M.cjs → chunk-SE6WWDVW.cjs} +15 -14
- package/dist/chunk-SE6WWDVW.cjs.map +1 -0
- package/dist/{chunk-NVP6UEQQ.js → chunk-SWY6PWXK.js} +4 -4
- package/dist/{chunk-NVP6UEQQ.js.map → chunk-SWY6PWXK.js.map} +1 -1
- package/dist/{chunk-3Q4I4KT6.js → chunk-TDJEKXEP.js} +77 -2
- package/dist/chunk-TDJEKXEP.js.map +1 -0
- package/dist/{chunk-2GXSA322.cjs → chunk-U3APKQ7P.cjs} +15 -14
- package/dist/chunk-U3APKQ7P.cjs.map +1 -0
- package/dist/chunk-UDCQTOVU.cjs +523 -0
- package/dist/chunk-UDCQTOVU.cjs.map +1 -0
- package/dist/{chunk-K3EA547J.cjs → chunk-USBANZ7K.cjs} +27 -33
- package/dist/chunk-USBANZ7K.cjs.map +1 -0
- package/dist/{chunk-J73TDY7J.cjs → chunk-WTS34S5E.cjs} +25 -173
- package/dist/chunk-WTS34S5E.cjs.map +1 -0
- package/dist/{chunk-R7DI5UMU.js → chunk-XIBOFTOL.js} +3 -3
- package/dist/{chunk-R7DI5UMU.js.map → chunk-XIBOFTOL.js.map} +1 -1
- package/dist/{chunk-W4MXRZAB.js → chunk-XUEIUEPI.js} +6 -5
- package/dist/chunk-XUEIUEPI.js.map +1 -0
- package/dist/{chunk-UU2NV6SU.cjs → chunk-YEYKJFEC.cjs} +14 -13
- package/dist/chunk-YEYKJFEC.cjs.map +1 -0
- package/dist/{chunk-PY53ABWC.js → chunk-YMBBM5K7.js} +23 -9
- package/dist/chunk-YMBBM5K7.js.map +1 -0
- package/dist/chunk-YORQQXGO.js +155 -0
- package/dist/chunk-YORQQXGO.js.map +1 -0
- package/dist/components/ActivityPreview.cjs +15 -10
- package/dist/components/ActivityPreview.d.cts +9 -3
- package/dist/components/ActivityPreview.d.ts +9 -3
- package/dist/components/ActivityPreview.js +14 -9
- package/dist/components/ActivitySequence.cjs +16 -11
- package/dist/components/ActivitySequence.d.cts +108 -4
- package/dist/components/ActivitySequence.d.ts +108 -4
- package/dist/components/ActivitySequence.js +15 -10
- package/dist/components/Dictation.cjs +7 -5
- package/dist/components/Dictation.d.cts +2 -1
- package/dist/components/Dictation.d.ts +2 -1
- package/dist/components/Dictation.js +6 -4
- package/dist/components/FillInTheBlanks.cjs +6 -5
- package/dist/components/FillInTheBlanks.d.cts +2 -1
- package/dist/components/FillInTheBlanks.d.ts +2 -1
- package/dist/components/FillInTheBlanks.js +5 -4
- package/dist/components/GapSelect.cjs +6 -5
- package/dist/components/GapSelect.d.cts +2 -1
- package/dist/components/GapSelect.d.ts +2 -1
- package/dist/components/GapSelect.js +5 -4
- package/dist/components/MultipleChoice.cjs +6 -5
- package/dist/components/MultipleChoice.d.cts +2 -1
- package/dist/components/MultipleChoice.d.ts +2 -1
- package/dist/components/MultipleChoice.js +5 -4
- package/dist/components/PronunciationFeedback.cjs +16 -0
- package/dist/components/PronunciationFeedback.cjs.map +1 -0
- package/dist/components/PronunciationFeedback.d.cts +64 -0
- package/dist/components/PronunciationFeedback.d.ts +64 -0
- package/dist/components/PronunciationFeedback.js +7 -0
- package/dist/components/PronunciationFeedback.js.map +1 -0
- package/dist/components/ReadAloud.cjs +21 -0
- package/dist/components/ReadAloud.cjs.map +1 -0
- package/dist/components/ReadAloud.d.cts +15 -0
- package/dist/components/ReadAloud.d.ts +15 -0
- package/dist/components/ReadAloud.js +12 -0
- package/dist/components/ReadAloud.js.map +1 -0
- package/dist/components/StimulusPanel.cjs +4 -4
- package/dist/components/StimulusPanel.d.cts +2 -1
- package/dist/components/StimulusPanel.d.ts +2 -1
- package/dist/components/StimulusPanel.js +3 -3
- package/dist/components/WrittenResponse.cjs +6 -5
- package/dist/components/WrittenResponse.d.cts +4 -3
- package/dist/components/WrittenResponse.d.ts +4 -3
- package/dist/components/WrittenResponse.js +5 -4
- package/dist/hooks/useSpeechRecorder.cjs +17 -0
- package/dist/hooks/useSpeechRecorder.cjs.map +1 -0
- package/dist/hooks/useSpeechRecorder.d.cts +127 -0
- package/dist/hooks/useSpeechRecorder.d.ts +127 -0
- package/dist/hooks/useSpeechRecorder.js +4 -0
- package/dist/hooks/useSpeechRecorder.js.map +1 -0
- package/dist/i18n/LkIntlProvider.cjs +7 -7
- package/dist/i18n/LkIntlProvider.d.cts +3 -2
- package/dist/i18n/LkIntlProvider.d.ts +3 -2
- package/dist/i18n/LkIntlProvider.js +1 -1
- package/dist/index.cjs +53 -32
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +6 -2
- package/dist/index.d.ts +6 -2
- package/dist/index.js +17 -12
- package/dist/index.js.map +1 -1
- package/dist/machine-CuwKqWXC.d.cts +26 -0
- package/dist/machine-CuwKqWXC.d.ts +26 -0
- package/dist/{strings-DPTyLpHt.d.ts → strings--ADnHcaA.d.cts} +214 -4
- package/dist/{strings-DPTyLpHt.d.cts → strings-CtdSf2St.d.ts} +214 -4
- package/dist/theme/ThemeProvider.cjs +6 -6
- package/dist/theme/ThemeProvider.d.cts +4 -4
- package/dist/theme/ThemeProvider.d.ts +4 -4
- package/dist/theme/ThemeProvider.js +1 -1
- package/dist/theme/skin.css +596 -3
- package/package.json +33 -3
- package/dist/chunk-2GXSA322.cjs.map +0 -1
- package/dist/chunk-3Q4I4KT6.js.map +0 -1
- package/dist/chunk-5N7OLFHB.js.map +0 -1
- package/dist/chunk-AMGK7DDM.cjs.map +0 -1
- package/dist/chunk-DQERNAWI.js.map +0 -1
- package/dist/chunk-DQNVAXG6.js.map +0 -1
- package/dist/chunk-HT4FFZZQ.cjs.map +0 -1
- package/dist/chunk-J73TDY7J.cjs.map +0 -1
- package/dist/chunk-K3EA547J.cjs.map +0 -1
- package/dist/chunk-K7NMNOPI.cjs.map +0 -1
- package/dist/chunk-MA7GXUWC.cjs.map +0 -1
- package/dist/chunk-NVUFEMPZ.cjs.map +0 -1
- package/dist/chunk-PSHNTDKG.js.map +0 -1
- package/dist/chunk-PY53ABWC.js.map +0 -1
- package/dist/chunk-UU2NV6SU.cjs.map +0 -1
- package/dist/chunk-W4MXRZAB.js.map +0 -1
- package/dist/chunk-XAGWBVK3.js.map +0 -1
- package/dist/chunk-YILH4ETT.js.map +0 -1
- package/dist/chunk-YZWXVZB3.js.map +0 -1
- package/dist/chunk-Z63JRG4M.cjs.map +0 -1
|
@@ -1,13 +1,29 @@
|
|
|
1
|
-
import { SequenceEntry, ActivityResult, LearnerResponse, InteractionEvent, ItemOutcome, ThemeTokens } from '@intellectif/lk-core';
|
|
1
|
+
import { SequenceEntry, ActivityResult, LearnerResponse, InteractionEvent, SpeechAssessment, ItemOutcome, ThemeTokens } from '@intellectif/lk-core';
|
|
2
2
|
import { ComponentType } from 'react';
|
|
3
|
-
import { A as ActivityProps,
|
|
4
|
-
import { a as WrittenResponseSubmission } from '../WrittenResponse-
|
|
3
|
+
import { A as ActivityProps, g as RenderableActivity, e as RenderMode, S as SequenceMediaBudget, h as SequenceRecordingBinding, a as LkStringsOverride, H as HtmlSanitizer } from '../strings-CtdSf2St.js';
|
|
4
|
+
import { a as WrittenResponseSubmission } from '../WrittenResponse-C0P34En1.js';
|
|
5
|
+
import '../machine-CuwKqWXC.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* What one finished slot in a sequence produced. Two kinds, because two kinds
|
|
8
9
|
* of activity exist: those the SDK scores at submit time, and those a grader
|
|
9
10
|
* scores later. Collapsing them would mean inventing a score for ungraded
|
|
10
11
|
* work — the exact defect the deferred outcome exists to prevent.
|
|
12
|
+
*
|
|
13
|
+
* **A read-aloud hand-in adds no arm here, deliberately.** The obvious home for
|
|
14
|
+
* a handed-in take is `submitted`, and it is the wrong one: that arm's payload
|
|
15
|
+
* is typed `WrittenResponseSubmission`, this union is published from both the
|
|
16
|
+
* barrel and the `components/ActivitySequence` subpath, and a consumer narrows
|
|
17
|
+
* on `kind === 'submitted'` and reads `.text`. Widening the payload to a union
|
|
18
|
+
* would break every one of those reads — a breaking change to a published
|
|
19
|
+
* discriminated union, bought for a type that `responded` already describes: a
|
|
20
|
+
* read-aloud hand-in IS a raw `LearnerResponse` with no grade, which is exactly
|
|
21
|
+
* what `responded` carries.
|
|
22
|
+
*
|
|
23
|
+
* What a read-aloud does add is `unsubmitted`, for the one thing no existing
|
|
24
|
+
* arm can say honestly: a take that never reached storage. Any response would
|
|
25
|
+
* be a lie about it — a `recording` of `null` is the blank a learner chooses,
|
|
26
|
+
* and grades as 0.
|
|
11
27
|
*/
|
|
12
28
|
type SequenceItemOutcome = {
|
|
13
29
|
kind: 'scored';
|
|
@@ -17,6 +33,14 @@ type SequenceItemOutcome = {
|
|
|
17
33
|
slotId: string;
|
|
18
34
|
activityId: string;
|
|
19
35
|
result: ActivityResult;
|
|
36
|
+
/**
|
|
37
|
+
* The answer this score grades, for a slot whose grade arrives after its
|
|
38
|
+
* answer was handed in and whose learner may hand in another: a
|
|
39
|
+
* `practice` read-aloud, whose `response.recording` names the take the
|
|
40
|
+
* score belongs to. Absent for every other slot, whose score and answer
|
|
41
|
+
* arrive together.
|
|
42
|
+
*/
|
|
43
|
+
response?: LearnerResponse;
|
|
20
44
|
} | {
|
|
21
45
|
kind: 'submitted';
|
|
22
46
|
index: number;
|
|
@@ -44,8 +68,28 @@ type SequenceItemOutcome = {
|
|
|
44
68
|
* The raw answer, with no grade of any kind. This is what an `exam` slot
|
|
45
69
|
* produces: the client is forbidden to score, so a response is all there
|
|
46
70
|
* is until the server grades it.
|
|
71
|
+
*
|
|
72
|
+
* A read-aloud `recording` of `null` here is always a blank the learner
|
|
73
|
+
* chose to hand in, never a take that failed to upload — that is
|
|
74
|
+
* `unsubmitted`.
|
|
47
75
|
*/
|
|
48
76
|
response: LearnerResponse;
|
|
77
|
+
} | {
|
|
78
|
+
/**
|
|
79
|
+
* A question the learner tried to answer and could not hand in, and then
|
|
80
|
+
* left: a `practice` read-aloud whose take never reached your storage. It
|
|
81
|
+
* carries no response, because there is none.
|
|
82
|
+
*
|
|
83
|
+
* Deliberately not `responded` with a `recording` of `null`: that is the
|
|
84
|
+
* blank a learner chooses, and a grader marks it 0 with every word
|
|
85
|
+
* omitted — which would turn a storage outage into a zero. Grade nothing
|
|
86
|
+
* for this slot; the learner can still return to it, and a take stored
|
|
87
|
+
* then reaches you through `onSubmit`.
|
|
88
|
+
*/
|
|
89
|
+
kind: 'unsubmitted';
|
|
90
|
+
index: number;
|
|
91
|
+
slotId: string;
|
|
92
|
+
activityId: string;
|
|
49
93
|
};
|
|
50
94
|
/**
|
|
51
95
|
* A component that can render one activity inside a sequence. Register one per
|
|
@@ -69,6 +113,13 @@ interface ActivitySequenceProps {
|
|
|
69
113
|
* Renderers for activity types beyond the built-ins, keyed by `data.type`.
|
|
70
114
|
* A key matching a built-in overrides it, so a consumer can replace the
|
|
71
115
|
* bundled renderer without forking the sequencer.
|
|
116
|
+
*
|
|
117
|
+
* A registered renderer is an `ActivityRenderer`, which is
|
|
118
|
+
* `ComponentType<ActivityProps>` — so it receives the shared prop contract
|
|
119
|
+
* and nothing beyond it. `shuffleSeed`, `recordingBinding` and `assessment`
|
|
120
|
+
* are all outside that contract and none of them reaches an override: a
|
|
121
|
+
* replacement for `read-aloud` has to be given its own binding by whoever
|
|
122
|
+
* wrote it.
|
|
72
123
|
*/
|
|
73
124
|
renderers?: Readonly<Record<string, ActivityRenderer>>;
|
|
74
125
|
/**
|
|
@@ -105,12 +156,44 @@ interface ActivitySequenceProps {
|
|
|
105
156
|
* use `onFinished` for mixed sets — it is the general completion signal and
|
|
106
157
|
* reports both kinds of outcome. It also carries `slotId` per item, which
|
|
107
158
|
* this callback's bare array cannot.
|
|
159
|
+
*
|
|
160
|
+
* It fires straight after `onFinished`, with the same results, or never: a
|
|
161
|
+
* set `onFinished` reported with an ungraded slot is not reported here later,
|
|
162
|
+
* when a re-recorded take is graded.
|
|
108
163
|
*/
|
|
109
164
|
onComplete?: (results: ActivityResult[]) => void;
|
|
110
165
|
/**
|
|
111
166
|
* Called once every activity has been completed, whether it was scored at
|
|
112
167
|
* submit time or submitted for later grading. Use this for any set that
|
|
113
168
|
* mixes graded and deferred-graded activities.
|
|
169
|
+
*
|
|
170
|
+
* **Once per set**, and that matters for a `practice` read-aloud, whose grade
|
|
171
|
+
* arrives after the submit that completed the slot. When the last slot is
|
|
172
|
+
* filled while a read-aloud's take is still being stored or assessed, this
|
|
173
|
+
* waits for it and reports the set then — with the grade in place, or with
|
|
174
|
+
* the slot's raw `responded` outcome when the take came back with no grade.
|
|
175
|
+
* A take that never settles is a question still being answered, so the set
|
|
176
|
+
* is not reported while it runs.
|
|
177
|
+
*
|
|
178
|
+
* **A failure the learner can still retry is in flight too.** While a take
|
|
179
|
+
* that failed to upload, or whose assessment failed, is offered "Try again"
|
|
180
|
+
* on the question the learner is looking at, the set is not reported: the
|
|
181
|
+
* retry may yet store and grade it. It completes once the learner moves to
|
|
182
|
+
* another question — as the last take the slot stored, or as `unsubmitted`
|
|
183
|
+
* when it never stored one, which is never a blank.
|
|
184
|
+
*
|
|
185
|
+
* **A score and a response always describe the same take.** A read-aloud
|
|
186
|
+
* recorded again replaces the earlier take's grade with the new take's
|
|
187
|
+
* `responded`, and a result that arrives for a take the learner has since
|
|
188
|
+
* replaced, or for a paper no longer on screen, is not recorded at all.
|
|
189
|
+
*
|
|
190
|
+
* `onComplete` fires in the same report or not at all, so the two never
|
|
191
|
+
* describe one set differently. What arrives after the set was reported is
|
|
192
|
+
* not reported here again, because a consumer who persists on this callback
|
|
193
|
+
* must not write one attempt twice: a later take reaches you through
|
|
194
|
+
* `onSubmit`, and its grade through `onActivityComplete`, the per-item persist
|
|
195
|
+
* hook keyed by `slotId` — which only ever grades the answer `onSubmit` last
|
|
196
|
+
* reported for that slot.
|
|
114
197
|
*/
|
|
115
198
|
onFinished?: (items: SequenceItemOutcome[]) => void;
|
|
116
199
|
/** Forwarded to each activity. */
|
|
@@ -127,6 +210,27 @@ interface ActivitySequenceProps {
|
|
|
127
210
|
* {@link SequenceMediaBudget}.
|
|
128
211
|
*/
|
|
129
212
|
mediaBudget?: SequenceMediaBudget;
|
|
213
|
+
/**
|
|
214
|
+
* Where every read-aloud take in this sequence is stored, and how a
|
|
215
|
+
* judgement comes back. Required by any `read-aloud` slot outside `review`:
|
|
216
|
+
* the component refuses to render a recorder whose take is stored nowhere.
|
|
217
|
+
*
|
|
218
|
+
* Named `recordingBinding` rather than `recording` because both
|
|
219
|
+
* `ReadAloudData.recording` (the bounds an item declares) and
|
|
220
|
+
* `ReadAloudLearnerResponse.recording` (the take a learner handed in) already
|
|
221
|
+
* exist — the plain name would read as one of those. Same name at both
|
|
222
|
+
* levels, different types, as `mediaBudget` has.
|
|
223
|
+
*/
|
|
224
|
+
recordingBinding?: SequenceRecordingBinding;
|
|
225
|
+
/**
|
|
226
|
+
* Speech assessments keyed by `slotId`, forwarded to the matching read-aloud
|
|
227
|
+
* slot so `review` can show the per-word marks behind a stored grade.
|
|
228
|
+
*
|
|
229
|
+
* Read LIVE, like `outcomes` and unlike `responses`: an assessment is fetched
|
|
230
|
+
* beside the attempt it explains and lands after the first paint, and a
|
|
231
|
+
* mount-only read would show the grade with no marks under it for ever.
|
|
232
|
+
*/
|
|
233
|
+
assessments?: Readonly<Record<string, SpeechAssessment>>;
|
|
130
234
|
/** Overrides the SDK's chrome text for this sequence. See {@link LkIntlProvider}. */
|
|
131
235
|
strings?: LkStringsOverride;
|
|
132
236
|
/**
|
|
@@ -213,6 +317,6 @@ interface ActivitySequenceProps {
|
|
|
213
317
|
locale?: string;
|
|
214
318
|
disabled?: boolean;
|
|
215
319
|
}
|
|
216
|
-
declare function ActivitySequence({ activities, renderers, onActivityComplete, onComplete, onFinished, onSubmit, onInteraction, renderMode, shuffle, shuffleSeed, defaultIndex, onIndexChange, responses, submittedSlotIds, outcomes, sanitizeHtml, theme, locale, disabled, mediaBudget, strings, }: ActivitySequenceProps): React.JSX.Element;
|
|
320
|
+
declare function ActivitySequence({ activities, renderers, onActivityComplete, onComplete, onFinished, onSubmit, onInteraction, renderMode, shuffle, shuffleSeed, defaultIndex, onIndexChange, responses, submittedSlotIds, outcomes, sanitizeHtml, theme, locale, disabled, mediaBudget, recordingBinding, assessments, strings, }: ActivitySequenceProps): React.JSX.Element;
|
|
217
321
|
|
|
218
322
|
export { type ActivityRenderer, ActivitySequence, type ActivitySequenceProps, type SequenceItemOutcome };
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { ActivitySequence } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
10
|
-
import '../chunk-
|
|
2
|
+
export { ActivitySequence } from '../chunk-I33FOKZ7.js';
|
|
3
|
+
import '../chunk-SWY6PWXK.js';
|
|
4
|
+
import '../chunk-LLXCX5KK.js';
|
|
5
|
+
import '../chunk-LGCUOLP6.js';
|
|
6
|
+
import '../chunk-72UGRIMM.js';
|
|
7
|
+
import '../chunk-XUEIUEPI.js';
|
|
8
|
+
import '../chunk-47HHC4GD.js';
|
|
9
|
+
import '../chunk-D57QZILZ.js';
|
|
10
|
+
import '../chunk-62AKSD5Y.js';
|
|
11
|
+
import '../chunk-MCO52PV5.js';
|
|
12
|
+
import '../chunk-YORQQXGO.js';
|
|
13
|
+
import '../chunk-RCMYEWBE.js';
|
|
14
|
+
import '../chunk-BO6P723E.js';
|
|
15
|
+
import '../chunk-XIBOFTOL.js';
|
|
11
16
|
import '../chunk-6N43WDVG.js';
|
|
12
|
-
import '../chunk-
|
|
17
|
+
import '../chunk-TDJEKXEP.js';
|
|
13
18
|
//# sourceMappingURL=ActivitySequence.js.map
|
|
14
19
|
//# sourceMappingURL=ActivitySequence.js.map
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
4
|
+
var chunkWTS34S5E_cjs = require('../chunk-WTS34S5E.cjs');
|
|
5
|
+
require('../chunk-OD65OZIW.cjs');
|
|
6
|
+
require('../chunk-BRPEB43C.cjs');
|
|
7
|
+
require('../chunk-USBANZ7K.cjs');
|
|
8
|
+
require('../chunk-B2XQLU2E.cjs');
|
|
7
9
|
require('../chunk-XOR4MPEN.cjs');
|
|
8
|
-
require('../chunk-
|
|
10
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
9
11
|
|
|
10
12
|
|
|
11
13
|
|
|
12
14
|
Object.defineProperty(exports, "Dictation", {
|
|
13
15
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
16
|
+
get: function () { return chunkWTS34S5E_cjs.Dictation; }
|
|
15
17
|
});
|
|
16
18
|
//# sourceMappingURL=Dictation.cjs.map
|
|
17
19
|
//# sourceMappingURL=Dictation.cjs.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { DictationData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings
|
|
3
|
+
import { A as ActivityProps } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
import '../machine-CuwKqWXC.cjs';
|
|
4
5
|
|
|
5
6
|
interface DictationProps extends ActivityProps<DictationData> {
|
|
6
7
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { DictationData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings-
|
|
3
|
+
import { A as ActivityProps } from '../strings-CtdSf2St.js';
|
|
4
|
+
import '../machine-CuwKqWXC.js';
|
|
4
5
|
|
|
5
6
|
interface DictationProps extends ActivityProps<DictationData> {
|
|
6
7
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { Dictation } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
2
|
+
export { Dictation } from '../chunk-47HHC4GD.js';
|
|
3
|
+
import '../chunk-YORQQXGO.js';
|
|
4
|
+
import '../chunk-RCMYEWBE.js';
|
|
5
|
+
import '../chunk-BO6P723E.js';
|
|
6
|
+
import '../chunk-XIBOFTOL.js';
|
|
5
7
|
import '../chunk-6N43WDVG.js';
|
|
6
|
-
import '../chunk-
|
|
8
|
+
import '../chunk-TDJEKXEP.js';
|
|
7
9
|
//# sourceMappingURL=Dictation.js.map
|
|
8
10
|
//# sourceMappingURL=Dictation.js.map
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
4
|
+
var chunkSE6WWDVW_cjs = require('../chunk-SE6WWDVW.cjs');
|
|
5
|
+
require('../chunk-BRPEB43C.cjs');
|
|
6
|
+
require('../chunk-USBANZ7K.cjs');
|
|
7
|
+
require('../chunk-B2XQLU2E.cjs');
|
|
7
8
|
require('../chunk-XOR4MPEN.cjs');
|
|
8
|
-
require('../chunk-
|
|
9
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
|
|
12
13
|
Object.defineProperty(exports, "FillInTheBlanks", {
|
|
13
14
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkSE6WWDVW_cjs.FillInTheBlanks; }
|
|
15
16
|
});
|
|
16
17
|
//# sourceMappingURL=FillInTheBlanks.cjs.map
|
|
17
18
|
//# sourceMappingURL=FillInTheBlanks.cjs.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { FillInTheBlanksData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings
|
|
3
|
+
import { A as ActivityProps } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
import '../machine-CuwKqWXC.cjs';
|
|
4
5
|
|
|
5
6
|
interface FillInTheBlanksProps extends ActivityProps<FillInTheBlanksData> {
|
|
6
7
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { FillInTheBlanksData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings-
|
|
3
|
+
import { A as ActivityProps } from '../strings-CtdSf2St.js';
|
|
4
|
+
import '../machine-CuwKqWXC.js';
|
|
4
5
|
|
|
5
6
|
interface FillInTheBlanksProps extends ActivityProps<FillInTheBlanksData> {
|
|
6
7
|
/**
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { FillInTheBlanks } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
2
|
+
export { FillInTheBlanks } from '../chunk-72UGRIMM.js';
|
|
3
|
+
import '../chunk-RCMYEWBE.js';
|
|
4
|
+
import '../chunk-BO6P723E.js';
|
|
5
|
+
import '../chunk-XIBOFTOL.js';
|
|
5
6
|
import '../chunk-6N43WDVG.js';
|
|
6
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-TDJEKXEP.js';
|
|
7
8
|
//# sourceMappingURL=FillInTheBlanks.js.map
|
|
8
9
|
//# sourceMappingURL=FillInTheBlanks.js.map
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
4
|
+
var chunkU3APKQ7P_cjs = require('../chunk-U3APKQ7P.cjs');
|
|
5
|
+
require('../chunk-BRPEB43C.cjs');
|
|
6
|
+
require('../chunk-USBANZ7K.cjs');
|
|
7
|
+
require('../chunk-B2XQLU2E.cjs');
|
|
7
8
|
require('../chunk-XOR4MPEN.cjs');
|
|
8
|
-
require('../chunk-
|
|
9
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
|
|
12
13
|
Object.defineProperty(exports, "GapSelect", {
|
|
13
14
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkU3APKQ7P_cjs.GapSelect; }
|
|
15
16
|
});
|
|
16
17
|
//# sourceMappingURL=GapSelect.cjs.map
|
|
17
18
|
//# sourceMappingURL=GapSelect.cjs.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { GapSelectData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings
|
|
3
|
+
import { A as ActivityProps } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
import '../machine-CuwKqWXC.cjs';
|
|
4
5
|
|
|
5
6
|
interface GapSelectProps extends ActivityProps<GapSelectData> {
|
|
6
7
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { GapSelectData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings-
|
|
3
|
+
import { A as ActivityProps } from '../strings-CtdSf2St.js';
|
|
4
|
+
import '../machine-CuwKqWXC.js';
|
|
4
5
|
|
|
5
6
|
interface GapSelectProps extends ActivityProps<GapSelectData> {
|
|
6
7
|
/**
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { GapSelect } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
2
|
+
export { GapSelect } from '../chunk-XUEIUEPI.js';
|
|
3
|
+
import '../chunk-RCMYEWBE.js';
|
|
4
|
+
import '../chunk-BO6P723E.js';
|
|
5
|
+
import '../chunk-XIBOFTOL.js';
|
|
5
6
|
import '../chunk-6N43WDVG.js';
|
|
6
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-TDJEKXEP.js';
|
|
7
8
|
//# sourceMappingURL=GapSelect.js.map
|
|
8
9
|
//# sourceMappingURL=GapSelect.js.map
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
4
|
+
var chunkNDQD3ZRY_cjs = require('../chunk-NDQD3ZRY.cjs');
|
|
5
|
+
require('../chunk-BRPEB43C.cjs');
|
|
6
|
+
require('../chunk-USBANZ7K.cjs');
|
|
7
|
+
require('../chunk-B2XQLU2E.cjs');
|
|
7
8
|
require('../chunk-XOR4MPEN.cjs');
|
|
8
|
-
require('../chunk-
|
|
9
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
|
|
12
13
|
Object.defineProperty(exports, "MultipleChoice", {
|
|
13
14
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
15
|
+
get: function () { return chunkNDQD3ZRY_cjs.MultipleChoice; }
|
|
15
16
|
});
|
|
16
17
|
//# sourceMappingURL=MultipleChoice.cjs.map
|
|
17
18
|
//# sourceMappingURL=MultipleChoice.cjs.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { MultipleChoiceData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings
|
|
3
|
+
import { A as ActivityProps } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
import '../machine-CuwKqWXC.cjs';
|
|
4
5
|
|
|
5
6
|
interface MultipleChoiceProps extends ActivityProps<MultipleChoiceData> {
|
|
6
7
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { MultipleChoiceData } from '@intellectif/lk-core';
|
|
3
|
-
import { A as ActivityProps } from '../strings-
|
|
3
|
+
import { A as ActivityProps } from '../strings-CtdSf2St.js';
|
|
4
|
+
import '../machine-CuwKqWXC.js';
|
|
4
5
|
|
|
5
6
|
interface MultipleChoiceProps extends ActivityProps<MultipleChoiceData> {
|
|
6
7
|
/**
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { MultipleChoice } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
2
|
+
export { MultipleChoice } from '../chunk-LGCUOLP6.js';
|
|
3
|
+
import '../chunk-RCMYEWBE.js';
|
|
4
|
+
import '../chunk-BO6P723E.js';
|
|
5
|
+
import '../chunk-XIBOFTOL.js';
|
|
5
6
|
import '../chunk-6N43WDVG.js';
|
|
6
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-TDJEKXEP.js';
|
|
7
8
|
//# sourceMappingURL=MultipleChoice.js.map
|
|
8
9
|
//# sourceMappingURL=MultipleChoice.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var chunkF4TBCRGI_cjs = require('../chunk-F4TBCRGI.cjs');
|
|
5
|
+
require('../chunk-OD65OZIW.cjs');
|
|
6
|
+
require('../chunk-USBANZ7K.cjs');
|
|
7
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
Object.defineProperty(exports, "PronunciationFeedback", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: function () { return chunkF4TBCRGI_cjs.PronunciationFeedback; }
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=PronunciationFeedback.cjs.map
|
|
16
|
+
//# sourceMappingURL=PronunciationFeedback.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"PronunciationFeedback.cjs"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReadAloudData, SpeechAssessment, GradeRecord, ThemeTokens } from '@intellectif/lk-core';
|
|
3
|
+
import { a as LkStringsOverride } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
import '../machine-CuwKqWXC.cjs';
|
|
5
|
+
|
|
6
|
+
interface PronunciationFeedbackProps {
|
|
7
|
+
/**
|
|
8
|
+
* The item's reading and its language. Only these two fields, because they
|
|
9
|
+
* are the only ones a mark depends on — everything else about the activity
|
|
10
|
+
* belongs to whoever rendered it.
|
|
11
|
+
*/
|
|
12
|
+
data: Pick<ReadAloudData, 'referenceText' | 'locale'>;
|
|
13
|
+
/**
|
|
14
|
+
* The assessor's evidence. Checked with `validateSpeechAssessment` before it
|
|
15
|
+
* is aligned: see the note on this component about what a bad one costs.
|
|
16
|
+
*/
|
|
17
|
+
assessment: SpeechAssessment;
|
|
18
|
+
/**
|
|
19
|
+
* The grade the evidence produced, when one exists. Its `criteria` are what
|
|
20
|
+
* the dimensions are read from, because they are the numbers the learner was
|
|
21
|
+
* actually graded on. A grade that cannot be read — a score that is not a
|
|
22
|
+
* number between 0 and its maximum, a `passed` that is not a boolean — is
|
|
23
|
+
* shown as could-not-be-graded, never as a percentage made up from it.
|
|
24
|
+
*/
|
|
25
|
+
grade?: GradeRecord;
|
|
26
|
+
/**
|
|
27
|
+
* The learner's own take, playable. With it, each word that carries timings
|
|
28
|
+
* gets a button that plays just that word.
|
|
29
|
+
*/
|
|
30
|
+
audioUrl?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Confidence above which a break note is shown, 0..1. **No default**: how
|
|
33
|
+
* confident an engine has to be before a pause is worth telling a learner
|
|
34
|
+
* about is a calibration, and the SDK has no calibrated answer. Without it no
|
|
35
|
+
* break note is shown at all.
|
|
36
|
+
*/
|
|
37
|
+
breakThreshold?: number;
|
|
38
|
+
/** The same, for the monotone note read off `assessment.prosody`. */
|
|
39
|
+
monotoneThreshold?: number;
|
|
40
|
+
/**
|
|
41
|
+
* BCP 47 tag stamped as `lang` on the root: the INTERFACE language, the one
|
|
42
|
+
* this component's own sentences are written in. It is not `data.locale`,
|
|
43
|
+
* which is the language of the reading and is put on the words themselves.
|
|
44
|
+
*/
|
|
45
|
+
locale?: string;
|
|
46
|
+
/** Per-instance token overrides, applied as inline CSS vars on the root. */
|
|
47
|
+
theme?: Partial<ThemeTokens>;
|
|
48
|
+
/** Overrides the SDK's chrome text for this panel. See {@link LkIntlProvider}. */
|
|
49
|
+
strings?: LkStringsOverride;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Public pronunciation-feedback panel: the core wrapped in
|
|
54
|
+
* `ActivityErrorBoundary` so a render failure (the dev throw for evidence
|
|
55
|
+
* `validateSpeechAssessment` refuses among them) degrades to an accessible
|
|
56
|
+
* fallback instead of crashing the host.
|
|
57
|
+
*
|
|
58
|
+
* **No `activityTitle`.** Its `data` is two fields of a read-aloud item and
|
|
59
|
+
* carries no title, so the production fallback is the unnamed one. Naming it
|
|
60
|
+
* would mean inventing a title for a panel that never had one.
|
|
61
|
+
*/
|
|
62
|
+
declare function PronunciationFeedback(props: PronunciationFeedbackProps): react_jsx_runtime.JSX.Element;
|
|
63
|
+
|
|
64
|
+
export { PronunciationFeedback, type PronunciationFeedbackProps };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReadAloudData, SpeechAssessment, GradeRecord, ThemeTokens } from '@intellectif/lk-core';
|
|
3
|
+
import { a as LkStringsOverride } from '../strings-CtdSf2St.js';
|
|
4
|
+
import '../machine-CuwKqWXC.js';
|
|
5
|
+
|
|
6
|
+
interface PronunciationFeedbackProps {
|
|
7
|
+
/**
|
|
8
|
+
* The item's reading and its language. Only these two fields, because they
|
|
9
|
+
* are the only ones a mark depends on — everything else about the activity
|
|
10
|
+
* belongs to whoever rendered it.
|
|
11
|
+
*/
|
|
12
|
+
data: Pick<ReadAloudData, 'referenceText' | 'locale'>;
|
|
13
|
+
/**
|
|
14
|
+
* The assessor's evidence. Checked with `validateSpeechAssessment` before it
|
|
15
|
+
* is aligned: see the note on this component about what a bad one costs.
|
|
16
|
+
*/
|
|
17
|
+
assessment: SpeechAssessment;
|
|
18
|
+
/**
|
|
19
|
+
* The grade the evidence produced, when one exists. Its `criteria` are what
|
|
20
|
+
* the dimensions are read from, because they are the numbers the learner was
|
|
21
|
+
* actually graded on. A grade that cannot be read — a score that is not a
|
|
22
|
+
* number between 0 and its maximum, a `passed` that is not a boolean — is
|
|
23
|
+
* shown as could-not-be-graded, never as a percentage made up from it.
|
|
24
|
+
*/
|
|
25
|
+
grade?: GradeRecord;
|
|
26
|
+
/**
|
|
27
|
+
* The learner's own take, playable. With it, each word that carries timings
|
|
28
|
+
* gets a button that plays just that word.
|
|
29
|
+
*/
|
|
30
|
+
audioUrl?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Confidence above which a break note is shown, 0..1. **No default**: how
|
|
33
|
+
* confident an engine has to be before a pause is worth telling a learner
|
|
34
|
+
* about is a calibration, and the SDK has no calibrated answer. Without it no
|
|
35
|
+
* break note is shown at all.
|
|
36
|
+
*/
|
|
37
|
+
breakThreshold?: number;
|
|
38
|
+
/** The same, for the monotone note read off `assessment.prosody`. */
|
|
39
|
+
monotoneThreshold?: number;
|
|
40
|
+
/**
|
|
41
|
+
* BCP 47 tag stamped as `lang` on the root: the INTERFACE language, the one
|
|
42
|
+
* this component's own sentences are written in. It is not `data.locale`,
|
|
43
|
+
* which is the language of the reading and is put on the words themselves.
|
|
44
|
+
*/
|
|
45
|
+
locale?: string;
|
|
46
|
+
/** Per-instance token overrides, applied as inline CSS vars on the root. */
|
|
47
|
+
theme?: Partial<ThemeTokens>;
|
|
48
|
+
/** Overrides the SDK's chrome text for this panel. See {@link LkIntlProvider}. */
|
|
49
|
+
strings?: LkStringsOverride;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Public pronunciation-feedback panel: the core wrapped in
|
|
54
|
+
* `ActivityErrorBoundary` so a render failure (the dev throw for evidence
|
|
55
|
+
* `validateSpeechAssessment` refuses among them) degrades to an accessible
|
|
56
|
+
* fallback instead of crashing the host.
|
|
57
|
+
*
|
|
58
|
+
* **No `activityTitle`.** Its `data` is two fields of a read-aloud item and
|
|
59
|
+
* carries no title, so the production fallback is the unnamed one. Naming it
|
|
60
|
+
* would mean inventing a title for a panel that never had one.
|
|
61
|
+
*/
|
|
62
|
+
declare function PronunciationFeedback(props: PronunciationFeedbackProps): react_jsx_runtime.JSX.Element;
|
|
63
|
+
|
|
64
|
+
export { PronunciationFeedback, type PronunciationFeedbackProps };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
export { PronunciationFeedback } from '../chunk-62AKSD5Y.js';
|
|
3
|
+
import '../chunk-YORQQXGO.js';
|
|
4
|
+
import '../chunk-BO6P723E.js';
|
|
5
|
+
import '../chunk-TDJEKXEP.js';
|
|
6
|
+
//# sourceMappingURL=PronunciationFeedback.js.map
|
|
7
|
+
//# sourceMappingURL=PronunciationFeedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"PronunciationFeedback.js"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var chunk36FTYJWJ_cjs = require('../chunk-36FTYJWJ.cjs');
|
|
5
|
+
require('../chunk-F4TBCRGI.cjs');
|
|
6
|
+
require('../chunk-UDCQTOVU.cjs');
|
|
7
|
+
require('../chunk-OD65OZIW.cjs');
|
|
8
|
+
require('../chunk-BRPEB43C.cjs');
|
|
9
|
+
require('../chunk-USBANZ7K.cjs');
|
|
10
|
+
require('../chunk-B2XQLU2E.cjs');
|
|
11
|
+
require('../chunk-XOR4MPEN.cjs');
|
|
12
|
+
require('../chunk-LB3FEV7Z.cjs');
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
Object.defineProperty(exports, "ReadAloud", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () { return chunk36FTYJWJ_cjs.ReadAloud; }
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=ReadAloud.cjs.map
|
|
21
|
+
//# sourceMappingURL=ReadAloud.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"ReadAloud.cjs"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { c as ReadAloudProps } from '../strings--ADnHcaA.cjs';
|
|
3
|
+
export { R as ReadAloudAssessResult, d as RecordingBinding } from '../strings--ADnHcaA.cjs';
|
|
4
|
+
export { R as RecordedTake } from '../machine-CuwKqWXC.cjs';
|
|
5
|
+
import '@intellectif/lk-core';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Public Read Aloud activity: the core wrapped in `ActivityErrorBoundary` so a
|
|
9
|
+
* render failure (including the dev schema-validation throw and the
|
|
10
|
+
* missing-`upload` guard) degrades to an accessible fallback instead of
|
|
11
|
+
* crashing the host.
|
|
12
|
+
*/
|
|
13
|
+
declare function ReadAloud(props: ReadAloudProps): react_jsx_runtime.JSX.Element;
|
|
14
|
+
|
|
15
|
+
export { ReadAloud, ReadAloudProps };
|