@intellectif/lk-react 14.0.0 → 15.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 +49 -0
- package/README.md +5 -2
- package/dist/{WrittenResponse-pB1ik8hg.d.cts → WrittenResponse-BPbhERgk.d.cts} +1 -1
- package/dist/{WrittenResponse-C0P34En1.d.ts → WrittenResponse-ZAxLR_AU.d.ts} +1 -1
- package/dist/{chunk-YEYKJFEC.cjs → chunk-26GQO5I2.cjs} +12 -12
- package/dist/{chunk-YEYKJFEC.cjs.map → chunk-26GQO5I2.cjs.map} +1 -1
- package/dist/chunk-2HAEQDHQ.js +2330 -0
- package/dist/chunk-2HAEQDHQ.js.map +1 -0
- package/dist/{chunk-47HHC4GD.js → chunk-33BQNWAQ.js} +5 -5
- package/dist/{chunk-47HHC4GD.js.map → chunk-33BQNWAQ.js.map} +1 -1
- package/dist/{chunk-SE6WWDVW.cjs → chunk-4H3JTX74.cjs} +13 -13
- package/dist/{chunk-SE6WWDVW.cjs.map → chunk-4H3JTX74.cjs.map} +1 -1
- package/dist/{chunk-TDJEKXEP.js → chunk-52GXJNQ3.js} +84 -2
- package/dist/chunk-52GXJNQ3.js.map +1 -0
- package/dist/{chunk-USBANZ7K.cjs → chunk-53YOZOGN.cjs} +5 -5
- package/dist/{chunk-USBANZ7K.cjs.map → chunk-53YOZOGN.cjs.map} +1 -1
- package/dist/{chunk-LLXCX5KK.js → chunk-AF72QUBI.js} +5 -5
- package/dist/{chunk-LLXCX5KK.js.map → chunk-AF72QUBI.js.map} +1 -1
- package/dist/{chunk-XUEIUEPI.js → chunk-CE6OGJE6.js} +5 -5
- package/dist/{chunk-XUEIUEPI.js.map → chunk-CE6OGJE6.js.map} +1 -1
- package/dist/{chunk-RRH7ZPXC.cjs → chunk-DP3DM7FR.cjs} +6 -6
- package/dist/{chunk-RRH7ZPXC.cjs.map → chunk-DP3DM7FR.cjs.map} +1 -1
- package/dist/{chunk-J2CDPIRC.cjs → chunk-DQ3VVU5T.cjs} +27 -25
- package/dist/chunk-DQ3VVU5T.cjs.map +1 -0
- package/dist/{chunk-U3APKQ7P.cjs → chunk-EKBEKDWO.cjs} +13 -13
- package/dist/{chunk-U3APKQ7P.cjs.map → chunk-EKBEKDWO.cjs.map} +1 -1
- package/dist/{chunk-RXS455MR.js → chunk-EVBYEWHO.js} +3 -2
- package/dist/chunk-EVBYEWHO.js.map +1 -0
- package/dist/{chunk-B2XQLU2E.cjs → chunk-FKGUKFC7.cjs} +24 -6
- package/dist/chunk-FKGUKFC7.cjs.map +1 -0
- package/dist/{chunk-YMBBM5K7.js → chunk-H6I2JDNW.js} +10 -10
- package/dist/{chunk-YMBBM5K7.js.map → chunk-H6I2JDNW.js.map} +1 -1
- package/dist/{chunk-XIBOFTOL.js → chunk-HA3VRF6E.js} +22 -4
- package/dist/chunk-HA3VRF6E.js.map +1 -0
- package/dist/{chunk-I33FOKZ7.js → chunk-I2QGW4GD.js} +14 -12
- package/dist/chunk-I2QGW4GD.js.map +1 -0
- package/dist/{chunk-72UGRIMM.js → chunk-IE5ZNCWN.js} +5 -5
- package/dist/{chunk-72UGRIMM.js.map → chunk-IE5ZNCWN.js.map} +1 -1
- package/dist/{chunk-NDQD3ZRY.cjs → chunk-L7NE7PR4.cjs} +13 -13
- package/dist/{chunk-NDQD3ZRY.cjs.map → chunk-L7NE7PR4.cjs.map} +1 -1
- package/dist/{chunk-D57QZILZ.js → chunk-QEB6O6GU.js} +62 -37
- package/dist/chunk-QEB6O6GU.js.map +1 -0
- package/dist/{chunk-62AKSD5Y.js → chunk-QM4AV6EG.js} +39 -11
- package/dist/chunk-QM4AV6EG.js.map +1 -0
- package/dist/{chunk-LGCUOLP6.js → chunk-RT5FTHUU.js} +5 -5
- package/dist/{chunk-LGCUOLP6.js.map → chunk-RT5FTHUU.js.map} +1 -1
- package/dist/chunk-SRD4KVAP.cjs +2332 -0
- package/dist/chunk-SRD4KVAP.cjs.map +1 -0
- package/dist/{chunk-BVRUUYYR.cjs → chunk-UAYWLYFW.cjs} +18 -18
- package/dist/{chunk-BVRUUYYR.cjs.map → chunk-UAYWLYFW.cjs.map} +1 -1
- package/dist/{chunk-D4DQFTA7.cjs → chunk-UCKA22ZJ.cjs} +3 -2
- package/dist/chunk-UCKA22ZJ.cjs.map +1 -0
- package/dist/{chunk-F4TBCRGI.cjs → chunk-WKOV25NP.cjs} +42 -13
- package/dist/chunk-WKOV25NP.cjs.map +1 -0
- package/dist/{chunk-WTS34S5E.cjs → chunk-XMJE34FY.cjs} +13 -13
- package/dist/{chunk-WTS34S5E.cjs.map → chunk-XMJE34FY.cjs.map} +1 -1
- package/dist/{chunk-SWY6PWXK.js → chunk-YWQH35VO.js} +4 -4
- package/dist/{chunk-SWY6PWXK.js.map → chunk-YWQH35VO.js.map} +1 -1
- package/dist/{chunk-LB3FEV7Z.cjs → chunk-Z6TVOAO5.cjs} +84 -2
- package/dist/chunk-Z6TVOAO5.cjs.map +1 -0
- package/dist/{chunk-36FTYJWJ.cjs → chunk-ZH5WT2IE.cjs} +80 -55
- package/dist/chunk-ZH5WT2IE.cjs.map +1 -0
- package/dist/{chunk-BO6P723E.js → chunk-ZJMTHPHY.js} +3 -3
- package/dist/{chunk-BO6P723E.js.map → chunk-ZJMTHPHY.js.map} +1 -1
- package/dist/components/ActivityPreview.cjs +12 -12
- package/dist/components/ActivityPreview.d.cts +2 -2
- package/dist/components/ActivityPreview.d.ts +2 -2
- package/dist/components/ActivityPreview.js +11 -11
- package/dist/components/ActivitySequence.cjs +13 -13
- package/dist/components/ActivitySequence.d.cts +14 -7
- package/dist/components/ActivitySequence.d.ts +14 -7
- package/dist/components/ActivitySequence.js +12 -12
- package/dist/components/Dictation.cjs +5 -5
- package/dist/components/Dictation.d.cts +1 -1
- package/dist/components/Dictation.d.ts +1 -1
- package/dist/components/Dictation.js +4 -4
- package/dist/components/FillInTheBlanks.cjs +5 -5
- package/dist/components/FillInTheBlanks.d.cts +1 -1
- package/dist/components/FillInTheBlanks.d.ts +1 -1
- package/dist/components/FillInTheBlanks.js +4 -4
- package/dist/components/GapSelect.cjs +5 -5
- package/dist/components/GapSelect.d.cts +1 -1
- package/dist/components/GapSelect.d.ts +1 -1
- package/dist/components/GapSelect.js +4 -4
- package/dist/components/InteractiveVideo.cjs +26 -0
- package/dist/components/InteractiveVideo.cjs.map +1 -0
- package/dist/components/InteractiveVideo.d.cts +77 -0
- package/dist/components/InteractiveVideo.d.ts +77 -0
- package/dist/components/InteractiveVideo.js +17 -0
- package/dist/components/InteractiveVideo.js.map +1 -0
- package/dist/components/MultipleChoice.cjs +5 -5
- package/dist/components/MultipleChoice.d.cts +1 -1
- package/dist/components/MultipleChoice.d.ts +1 -1
- package/dist/components/MultipleChoice.js +4 -4
- package/dist/components/PronunciationFeedback.cjs +4 -4
- package/dist/components/PronunciationFeedback.d.cts +5 -2
- package/dist/components/PronunciationFeedback.d.ts +5 -2
- package/dist/components/PronunciationFeedback.js +3 -3
- package/dist/components/ReadAloud.cjs +6 -6
- package/dist/components/ReadAloud.d.cts +2 -2
- package/dist/components/ReadAloud.d.ts +2 -2
- package/dist/components/ReadAloud.js +5 -5
- package/dist/components/StimulusPanel.cjs +4 -4
- package/dist/components/StimulusPanel.d.cts +1 -1
- package/dist/components/StimulusPanel.d.ts +1 -1
- package/dist/components/StimulusPanel.js +3 -3
- package/dist/components/WrittenResponse.cjs +5 -5
- package/dist/components/WrittenResponse.d.cts +3 -3
- package/dist/components/WrittenResponse.d.ts +3 -3
- package/dist/components/WrittenResponse.js +4 -4
- package/dist/i18n/LkIntlProvider.cjs +7 -7
- package/dist/i18n/LkIntlProvider.d.cts +2 -2
- package/dist/i18n/LkIntlProvider.d.ts +2 -2
- package/dist/i18n/LkIntlProvider.js +1 -1
- package/dist/index.cjs +44 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +15 -14
- package/dist/index.js.map +1 -1
- package/dist/{strings--ADnHcaA.d.cts → strings-5588Q4Te.d.cts} +118 -1
- package/dist/{strings-CtdSf2St.d.ts → strings-D0IWcsUm.d.ts} +118 -1
- package/dist/theme/ThemeProvider.cjs +6 -6
- package/dist/theme/ThemeProvider.js +1 -1
- package/dist/theme/defaults.css +2 -0
- package/dist/theme/skin.css +1365 -1
- package/package.json +13 -3
- package/dist/chunk-36FTYJWJ.cjs.map +0 -1
- package/dist/chunk-62AKSD5Y.js.map +0 -1
- package/dist/chunk-B2XQLU2E.cjs.map +0 -1
- package/dist/chunk-D4DQFTA7.cjs.map +0 -1
- package/dist/chunk-D57QZILZ.js.map +0 -1
- package/dist/chunk-F4TBCRGI.cjs.map +0 -1
- package/dist/chunk-I33FOKZ7.js.map +0 -1
- package/dist/chunk-J2CDPIRC.cjs.map +0 -1
- package/dist/chunk-LB3FEV7Z.cjs.map +0 -1
- package/dist/chunk-RXS455MR.js.map +0 -1
- package/dist/chunk-TDJEKXEP.js.map +0 -1
- package/dist/chunk-XIBOFTOL.js.map +0 -1
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
import { SpeechAssessment, GradeRecord, ReadAloudData, RecordingRef, LearnerResponse, ActivityData, ActivityResult, ItemOutcome, MediaPlayLedgerEntry, MediaPlayClaim, MediaPlayGrant, InteractionEvent, ThemeTokens, RedactedActivityData, ItemGroup, SequenceEntry, ReadAloudDimension, ReadAloudWordState, Stimulus } from '@intellectif/lk-core';
|
|
2
2
|
import { R as RecordedTake, S as SpeechRecorderError } from './machine-CuwKqWXC.cjs';
|
|
3
3
|
|
|
4
|
+
/** The size captions are drawn at. */
|
|
5
|
+
type CaptionSize = 'small' | 'medium' | 'large';
|
|
6
|
+
/** What the player remembers between videos, for one browser. */
|
|
7
|
+
interface VideoPreferences {
|
|
8
|
+
/** One of the speed list. */
|
|
9
|
+
speed: number;
|
|
10
|
+
/** 0 to 1. */
|
|
11
|
+
volume: number;
|
|
12
|
+
muted: boolean;
|
|
13
|
+
/** Captions shown. */
|
|
14
|
+
captions: boolean;
|
|
15
|
+
/** The caption language chosen, as a track's `srclang`; null for the default track. */
|
|
16
|
+
captionLanguage: string | null;
|
|
17
|
+
captionSize: CaptionSize;
|
|
18
|
+
/** A dark box behind each caption line. Off draws the text with an outline only. */
|
|
19
|
+
captionBackground: boolean;
|
|
20
|
+
/** The contents and transcript panel is open. */
|
|
21
|
+
panel: boolean;
|
|
22
|
+
/** Single-key shortcuts act while the player has focus (WCAG 2.1.4 lets a learner turn them off). */
|
|
23
|
+
shortcuts: boolean;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* One row of the shortcut list. The list and the key handler read the same
|
|
28
|
+
* table, so a shortcut can never be documented and not work, or work and not
|
|
29
|
+
* be documented.
|
|
30
|
+
*/
|
|
31
|
+
type VideoShortcutAction = 'play-pause' | 'jump-10' | 'jump-5' | 'jump-1' | 'frame' | 'speed' | 'percent' | 'start-end' | 'chapter' | 'mute' | 'captions' | 'transcript' | 'picture-in-picture' | 'fullscreen' | 'shortcut-list';
|
|
32
|
+
|
|
4
33
|
/**
|
|
5
34
|
* What an application's assessor came back with.
|
|
6
35
|
*
|
|
@@ -61,6 +90,15 @@ interface ReadAloudProps extends ActivityProps<ReadAloudData> {
|
|
|
61
90
|
breakThreshold?: number;
|
|
62
91
|
/** The same, for the monotone note. */
|
|
63
92
|
monotoneThreshold?: number;
|
|
93
|
+
/**
|
|
94
|
+
* The URL of a self-hosted copy of `CAPTURE_PROCESSOR_SOURCE`, handed to the
|
|
95
|
+
* recorder, for a Content-Security-Policy whose `script-src` does not allow
|
|
96
|
+
* `blob:`. Without it the capture module is loaded from a `blob:` URL, and a
|
|
97
|
+
* policy that refuses one sends every take through the deprecated
|
|
98
|
+
* main-thread `ScriptProcessorNode` — a take that still records, so nothing
|
|
99
|
+
* says so. See `useSpeechRecorder`'s option of the same name.
|
|
100
|
+
*/
|
|
101
|
+
workletUrl?: string;
|
|
64
102
|
/**
|
|
65
103
|
* Never called. A read-aloud answer is a key in your storage, and there is
|
|
66
104
|
* none until the take has been uploaded — so there is no intermediate
|
|
@@ -589,6 +627,13 @@ interface LkStrings {
|
|
|
589
627
|
readAloudRerecord: string;
|
|
590
628
|
/** Accessible name of the player for the take the learner just made. */
|
|
591
629
|
readAloudYourRecording: string;
|
|
630
|
+
/**
|
|
631
|
+
* In place of the player for the learner's own take, and of the buttons that
|
|
632
|
+
* play one word of it, when the page refuses to play it — most often a
|
|
633
|
+
* Content-Security-Policy whose `media-src` does not allow `blob:`. Said
|
|
634
|
+
* rather than left as controls that do nothing when pressed.
|
|
635
|
+
*/
|
|
636
|
+
readAloudPlaybackUnavailable: string;
|
|
592
637
|
/**
|
|
593
638
|
* Live progress while recording. Whole seconds, not a `m:ss` clock: a
|
|
594
639
|
* recording is bounded in seconds by the item, and a translation should not
|
|
@@ -670,6 +715,78 @@ interface LkStrings {
|
|
|
670
715
|
pronunciationMonotone: string;
|
|
671
716
|
/** Names the alphabet the phoneme symbols are written in. */
|
|
672
717
|
pronunciationIpaNote: string;
|
|
718
|
+
/** Jump buttons, e.g. "Back 10 seconds". */
|
|
719
|
+
videoBack: (seconds: number) => string;
|
|
720
|
+
videoForward: (seconds: number) => string;
|
|
721
|
+
/** The centre button once the video has ended. */
|
|
722
|
+
videoReplay: string;
|
|
723
|
+
/** The time readout flips between elapsed and remaining; these name what a press shows next. */
|
|
724
|
+
videoShowRemaining: string;
|
|
725
|
+
videoShowElapsed: string;
|
|
726
|
+
/** The captions button, named by what a press does. */
|
|
727
|
+
videoCaptionsShow: string;
|
|
728
|
+
videoCaptionsHide: string;
|
|
729
|
+
/** In the captions menu when a caption file could not be read. */
|
|
730
|
+
videoCaptionsFailed: string;
|
|
731
|
+
/** A speed in the speed menu, e.g. "1.25×". */
|
|
732
|
+
videoSpeedValue: (rate: number) => string;
|
|
733
|
+
videoSettings: string;
|
|
734
|
+
videoCaptionLanguage: string;
|
|
735
|
+
videoCaptionSize: string;
|
|
736
|
+
videoCaptionSizeValue: (size: CaptionSize) => string;
|
|
737
|
+
videoCaptionBackground: string;
|
|
738
|
+
videoKeyboardShortcuts: string;
|
|
739
|
+
videoShortcutList: string;
|
|
740
|
+
/** Closes the shortcut list. */
|
|
741
|
+
videoClose: string;
|
|
742
|
+
/** A setting's state in the settings menu. */
|
|
743
|
+
videoOn: string;
|
|
744
|
+
videoOff: string;
|
|
745
|
+
/** What each row of the shortcut list does. */
|
|
746
|
+
videoShortcut: (action: VideoShortcutAction) => string;
|
|
747
|
+
/** The button that opens the panel below the video, and its two tabs. */
|
|
748
|
+
videoPanel: string;
|
|
749
|
+
videoContents: string;
|
|
750
|
+
videoTranscript: string;
|
|
751
|
+
videoTranscriptSearch: string;
|
|
752
|
+
videoTranscriptNoMatch: string;
|
|
753
|
+
videoPictureInPicture: string;
|
|
754
|
+
videoFullscreen: string;
|
|
755
|
+
videoExitFullscreen: string;
|
|
756
|
+
/**
|
|
757
|
+
* Why the video will not play, by `MediaError.code` (1 aborted, 2 network,
|
|
758
|
+
* 3 decode, 4 source), with 0 for anything else.
|
|
759
|
+
*/
|
|
760
|
+
videoError: (code: number) => string;
|
|
761
|
+
videoTryAgain: string;
|
|
762
|
+
/** A quiz with no title of its own. */
|
|
763
|
+
videoQuiz: string;
|
|
764
|
+
/** Where the learner is inside a quiz, e.g. "Question 2 of 5". */
|
|
765
|
+
videoQuestionProgress: (index: number, total: number) => string;
|
|
766
|
+
/** A step of the quiz's step indicator, for assistive technology. */
|
|
767
|
+
videoQuestionStep: (index: number, answered: boolean) => string;
|
|
768
|
+
videoNextQuestion: string;
|
|
769
|
+
videoContinue: string;
|
|
770
|
+
videoSkipQuiz: string;
|
|
771
|
+
videoRewatch: string;
|
|
772
|
+
/** Exam mode, once a question is submitted: saved, not graded. */
|
|
773
|
+
videoAnswerSaved: string;
|
|
774
|
+
videoRequired: string;
|
|
775
|
+
/** A quiz's progress in the contents panel and on the end screen. */
|
|
776
|
+
videoQuizProgress: (answered: number, total: number) => string;
|
|
777
|
+
/** Announced when a quiz opens. */
|
|
778
|
+
videoQuizOpened: (time: string, questions: number) => string;
|
|
779
|
+
/** Announced when a seek stopped at a required quiz. */
|
|
780
|
+
videoHeldAtQuiz: (time: string) => string;
|
|
781
|
+
/** Announced when a seek stopped at the furthest point reached. */
|
|
782
|
+
videoHeldAhead: string;
|
|
783
|
+
videoEnded: string;
|
|
784
|
+
/** Practice end screen: questions answered, and the score. */
|
|
785
|
+
videoEndScore: (answered: number, total: number, percent: number) => string;
|
|
786
|
+
/** Exam end screen: questions answered, no score. */
|
|
787
|
+
videoEndAnswered: (answered: number, total: number) => string;
|
|
788
|
+
videoWatchAgain: string;
|
|
789
|
+
videoFinish: string;
|
|
673
790
|
/**
|
|
674
791
|
* `<ActivityPreview>`, in place of a draft that still has something missing.
|
|
675
792
|
* Author-facing, not learner-facing — but an editor is translated too.
|
|
@@ -728,4 +845,4 @@ declare const DEFAULT_STRINGS: LkStrings;
|
|
|
728
845
|
*/
|
|
729
846
|
declare function mergeStrings(base: LkStrings, override?: LkStringsOverride): LkStrings;
|
|
730
847
|
|
|
731
|
-
export { type ActivityProps as A, DEFAULT_STRINGS as D, type HtmlSanitizer as H, type LkStrings as L, type MediaBudgetBinding as M, type ReadAloudAssessResult as R, type SequenceMediaBudget as S, type LkStringsOverride as a, type MediaTransportStrings as b, type ReadAloudProps as c, type RecordingBinding as d, type RenderMode as e, type Renderable as f, type RenderableActivity as g, type SequenceRecordingBinding as h, type SequenceRecordingSlot as i, asRenderable as j, asRenderableSequence as k, mergeStrings as m };
|
|
848
|
+
export { type ActivityProps as A, type CaptionSize as C, DEFAULT_STRINGS as D, type HtmlSanitizer as H, type LkStrings as L, type MediaBudgetBinding as M, type ReadAloudAssessResult as R, type SequenceMediaBudget as S, type VideoPreferences as V, type LkStringsOverride as a, type MediaTransportStrings as b, type ReadAloudProps as c, type RecordingBinding as d, type RenderMode as e, type Renderable as f, type RenderableActivity as g, type SequenceRecordingBinding as h, type SequenceRecordingSlot as i, asRenderable as j, asRenderableSequence as k, mergeStrings as m };
|
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
import { SpeechAssessment, GradeRecord, ReadAloudData, RecordingRef, LearnerResponse, ActivityData, ActivityResult, ItemOutcome, MediaPlayLedgerEntry, MediaPlayClaim, MediaPlayGrant, InteractionEvent, ThemeTokens, RedactedActivityData, ItemGroup, SequenceEntry, ReadAloudDimension, ReadAloudWordState, Stimulus } from '@intellectif/lk-core';
|
|
2
2
|
import { R as RecordedTake, S as SpeechRecorderError } from './machine-CuwKqWXC.js';
|
|
3
3
|
|
|
4
|
+
/** The size captions are drawn at. */
|
|
5
|
+
type CaptionSize = 'small' | 'medium' | 'large';
|
|
6
|
+
/** What the player remembers between videos, for one browser. */
|
|
7
|
+
interface VideoPreferences {
|
|
8
|
+
/** One of the speed list. */
|
|
9
|
+
speed: number;
|
|
10
|
+
/** 0 to 1. */
|
|
11
|
+
volume: number;
|
|
12
|
+
muted: boolean;
|
|
13
|
+
/** Captions shown. */
|
|
14
|
+
captions: boolean;
|
|
15
|
+
/** The caption language chosen, as a track's `srclang`; null for the default track. */
|
|
16
|
+
captionLanguage: string | null;
|
|
17
|
+
captionSize: CaptionSize;
|
|
18
|
+
/** A dark box behind each caption line. Off draws the text with an outline only. */
|
|
19
|
+
captionBackground: boolean;
|
|
20
|
+
/** The contents and transcript panel is open. */
|
|
21
|
+
panel: boolean;
|
|
22
|
+
/** Single-key shortcuts act while the player has focus (WCAG 2.1.4 lets a learner turn them off). */
|
|
23
|
+
shortcuts: boolean;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* One row of the shortcut list. The list and the key handler read the same
|
|
28
|
+
* table, so a shortcut can never be documented and not work, or work and not
|
|
29
|
+
* be documented.
|
|
30
|
+
*/
|
|
31
|
+
type VideoShortcutAction = 'play-pause' | 'jump-10' | 'jump-5' | 'jump-1' | 'frame' | 'speed' | 'percent' | 'start-end' | 'chapter' | 'mute' | 'captions' | 'transcript' | 'picture-in-picture' | 'fullscreen' | 'shortcut-list';
|
|
32
|
+
|
|
4
33
|
/**
|
|
5
34
|
* What an application's assessor came back with.
|
|
6
35
|
*
|
|
@@ -61,6 +90,15 @@ interface ReadAloudProps extends ActivityProps<ReadAloudData> {
|
|
|
61
90
|
breakThreshold?: number;
|
|
62
91
|
/** The same, for the monotone note. */
|
|
63
92
|
monotoneThreshold?: number;
|
|
93
|
+
/**
|
|
94
|
+
* The URL of a self-hosted copy of `CAPTURE_PROCESSOR_SOURCE`, handed to the
|
|
95
|
+
* recorder, for a Content-Security-Policy whose `script-src` does not allow
|
|
96
|
+
* `blob:`. Without it the capture module is loaded from a `blob:` URL, and a
|
|
97
|
+
* policy that refuses one sends every take through the deprecated
|
|
98
|
+
* main-thread `ScriptProcessorNode` — a take that still records, so nothing
|
|
99
|
+
* says so. See `useSpeechRecorder`'s option of the same name.
|
|
100
|
+
*/
|
|
101
|
+
workletUrl?: string;
|
|
64
102
|
/**
|
|
65
103
|
* Never called. A read-aloud answer is a key in your storage, and there is
|
|
66
104
|
* none until the take has been uploaded — so there is no intermediate
|
|
@@ -589,6 +627,13 @@ interface LkStrings {
|
|
|
589
627
|
readAloudRerecord: string;
|
|
590
628
|
/** Accessible name of the player for the take the learner just made. */
|
|
591
629
|
readAloudYourRecording: string;
|
|
630
|
+
/**
|
|
631
|
+
* In place of the player for the learner's own take, and of the buttons that
|
|
632
|
+
* play one word of it, when the page refuses to play it — most often a
|
|
633
|
+
* Content-Security-Policy whose `media-src` does not allow `blob:`. Said
|
|
634
|
+
* rather than left as controls that do nothing when pressed.
|
|
635
|
+
*/
|
|
636
|
+
readAloudPlaybackUnavailable: string;
|
|
592
637
|
/**
|
|
593
638
|
* Live progress while recording. Whole seconds, not a `m:ss` clock: a
|
|
594
639
|
* recording is bounded in seconds by the item, and a translation should not
|
|
@@ -670,6 +715,78 @@ interface LkStrings {
|
|
|
670
715
|
pronunciationMonotone: string;
|
|
671
716
|
/** Names the alphabet the phoneme symbols are written in. */
|
|
672
717
|
pronunciationIpaNote: string;
|
|
718
|
+
/** Jump buttons, e.g. "Back 10 seconds". */
|
|
719
|
+
videoBack: (seconds: number) => string;
|
|
720
|
+
videoForward: (seconds: number) => string;
|
|
721
|
+
/** The centre button once the video has ended. */
|
|
722
|
+
videoReplay: string;
|
|
723
|
+
/** The time readout flips between elapsed and remaining; these name what a press shows next. */
|
|
724
|
+
videoShowRemaining: string;
|
|
725
|
+
videoShowElapsed: string;
|
|
726
|
+
/** The captions button, named by what a press does. */
|
|
727
|
+
videoCaptionsShow: string;
|
|
728
|
+
videoCaptionsHide: string;
|
|
729
|
+
/** In the captions menu when a caption file could not be read. */
|
|
730
|
+
videoCaptionsFailed: string;
|
|
731
|
+
/** A speed in the speed menu, e.g. "1.25×". */
|
|
732
|
+
videoSpeedValue: (rate: number) => string;
|
|
733
|
+
videoSettings: string;
|
|
734
|
+
videoCaptionLanguage: string;
|
|
735
|
+
videoCaptionSize: string;
|
|
736
|
+
videoCaptionSizeValue: (size: CaptionSize) => string;
|
|
737
|
+
videoCaptionBackground: string;
|
|
738
|
+
videoKeyboardShortcuts: string;
|
|
739
|
+
videoShortcutList: string;
|
|
740
|
+
/** Closes the shortcut list. */
|
|
741
|
+
videoClose: string;
|
|
742
|
+
/** A setting's state in the settings menu. */
|
|
743
|
+
videoOn: string;
|
|
744
|
+
videoOff: string;
|
|
745
|
+
/** What each row of the shortcut list does. */
|
|
746
|
+
videoShortcut: (action: VideoShortcutAction) => string;
|
|
747
|
+
/** The button that opens the panel below the video, and its two tabs. */
|
|
748
|
+
videoPanel: string;
|
|
749
|
+
videoContents: string;
|
|
750
|
+
videoTranscript: string;
|
|
751
|
+
videoTranscriptSearch: string;
|
|
752
|
+
videoTranscriptNoMatch: string;
|
|
753
|
+
videoPictureInPicture: string;
|
|
754
|
+
videoFullscreen: string;
|
|
755
|
+
videoExitFullscreen: string;
|
|
756
|
+
/**
|
|
757
|
+
* Why the video will not play, by `MediaError.code` (1 aborted, 2 network,
|
|
758
|
+
* 3 decode, 4 source), with 0 for anything else.
|
|
759
|
+
*/
|
|
760
|
+
videoError: (code: number) => string;
|
|
761
|
+
videoTryAgain: string;
|
|
762
|
+
/** A quiz with no title of its own. */
|
|
763
|
+
videoQuiz: string;
|
|
764
|
+
/** Where the learner is inside a quiz, e.g. "Question 2 of 5". */
|
|
765
|
+
videoQuestionProgress: (index: number, total: number) => string;
|
|
766
|
+
/** A step of the quiz's step indicator, for assistive technology. */
|
|
767
|
+
videoQuestionStep: (index: number, answered: boolean) => string;
|
|
768
|
+
videoNextQuestion: string;
|
|
769
|
+
videoContinue: string;
|
|
770
|
+
videoSkipQuiz: string;
|
|
771
|
+
videoRewatch: string;
|
|
772
|
+
/** Exam mode, once a question is submitted: saved, not graded. */
|
|
773
|
+
videoAnswerSaved: string;
|
|
774
|
+
videoRequired: string;
|
|
775
|
+
/** A quiz's progress in the contents panel and on the end screen. */
|
|
776
|
+
videoQuizProgress: (answered: number, total: number) => string;
|
|
777
|
+
/** Announced when a quiz opens. */
|
|
778
|
+
videoQuizOpened: (time: string, questions: number) => string;
|
|
779
|
+
/** Announced when a seek stopped at a required quiz. */
|
|
780
|
+
videoHeldAtQuiz: (time: string) => string;
|
|
781
|
+
/** Announced when a seek stopped at the furthest point reached. */
|
|
782
|
+
videoHeldAhead: string;
|
|
783
|
+
videoEnded: string;
|
|
784
|
+
/** Practice end screen: questions answered, and the score. */
|
|
785
|
+
videoEndScore: (answered: number, total: number, percent: number) => string;
|
|
786
|
+
/** Exam end screen: questions answered, no score. */
|
|
787
|
+
videoEndAnswered: (answered: number, total: number) => string;
|
|
788
|
+
videoWatchAgain: string;
|
|
789
|
+
videoFinish: string;
|
|
673
790
|
/**
|
|
674
791
|
* `<ActivityPreview>`, in place of a draft that still has something missing.
|
|
675
792
|
* Author-facing, not learner-facing — but an editor is translated too.
|
|
@@ -728,4 +845,4 @@ declare const DEFAULT_STRINGS: LkStrings;
|
|
|
728
845
|
*/
|
|
729
846
|
declare function mergeStrings(base: LkStrings, override?: LkStringsOverride): LkStrings;
|
|
730
847
|
|
|
731
|
-
export { type ActivityProps as A, DEFAULT_STRINGS as D, type HtmlSanitizer as H, type LkStrings as L, type MediaBudgetBinding as M, type ReadAloudAssessResult as R, type SequenceMediaBudget as S, type LkStringsOverride as a, type MediaTransportStrings as b, type ReadAloudProps as c, type RecordingBinding as d, type RenderMode as e, type Renderable as f, type RenderableActivity as g, type SequenceRecordingBinding as h, type SequenceRecordingSlot as i, asRenderable as j, asRenderableSequence as k, mergeStrings as m };
|
|
848
|
+
export { type ActivityProps as A, type CaptionSize as C, DEFAULT_STRINGS as D, type HtmlSanitizer as H, type LkStrings as L, type MediaBudgetBinding as M, type ReadAloudAssessResult as R, type SequenceMediaBudget as S, type VideoPreferences as V, type LkStringsOverride as a, type MediaTransportStrings as b, type ReadAloudProps as c, type RecordingBinding as d, type RenderMode as e, type Renderable as f, type RenderableActivity as g, type SequenceRecordingBinding as h, type SequenceRecordingSlot as i, asRenderable as j, asRenderableSequence as k, mergeStrings as m };
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunkUCKA22ZJ_cjs = require('../chunk-UCKA22ZJ.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "ThemeProvider", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkUCKA22ZJ_cjs.ThemeProvider; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "createTailwindTheme", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkUCKA22ZJ_cjs.createTailwindTheme; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "darkTheme", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkUCKA22ZJ_cjs.darkTheme; }
|
|
19
19
|
});
|
|
20
20
|
Object.defineProperty(exports, "defaultTheme", {
|
|
21
21
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
22
|
+
get: function () { return chunkUCKA22ZJ_cjs.defaultTheme; }
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "useTheme", {
|
|
25
25
|
enumerable: true,
|
|
26
|
-
get: function () { return
|
|
26
|
+
get: function () { return chunkUCKA22ZJ_cjs.useTheme; }
|
|
27
27
|
});
|
|
28
28
|
//# sourceMappingURL=ThemeProvider.cjs.map
|
|
29
29
|
//# sourceMappingURL=ThemeProvider.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { ThemeProvider, createTailwindTheme, darkTheme, defaultTheme, useTheme } from '../chunk-
|
|
2
|
+
export { ThemeProvider, createTailwindTheme, darkTheme, defaultTheme, useTheme } from '../chunk-EVBYEWHO.js';
|
|
3
3
|
//# sourceMappingURL=ThemeProvider.js.map
|
|
4
4
|
//# sourceMappingURL=ThemeProvider.js.map
|
package/dist/theme/defaults.css
CHANGED