@khanacademy/perseus 41.5.0 → 42.0.1
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/dist/es/index.js +513 -268
- package/dist/es/index.js.map +1 -1
- package/dist/es/strings.js +3 -2
- package/dist/es/strings.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.js +519 -263
- package/dist/index.js.map +1 -1
- package/dist/renderer-util.d.ts +3 -2
- package/dist/renderer.d.ts +7 -10
- package/dist/server-item-renderer.d.ts +33 -2
- package/dist/strings.d.ts +2 -1
- package/dist/strings.js +3 -2
- package/dist/strings.js.map +1 -1
- package/dist/types.d.ts +6 -1
- package/dist/util/deprecated-widgets/input-number.d.ts +9 -0
- package/dist/util/deprecated-widgets/modernize-widgets-utils.d.ts +4 -0
- package/dist/util/parse-perseus-json/exhaustive-test-tool/index.d.ts +2 -0
- package/dist/widget-ai-utils/graded-group/{prompt-utils.d.ts → graded-group-ai-utils.d.ts} +1 -1
- package/dist/widget-ai-utils/graded-group-set/{prompt-utils.d.ts → graded-group-set-ai-utils.d.ts} +1 -1
- package/dist/widget-ai-utils/group/{prompt-utils.d.ts → group-ai-utils.d.ts} +1 -1
- package/dist/widget-ai-utils/prompt-types.d.ts +33 -0
- package/dist/widget-ai-utils/unsupported-widget.d.ts +1 -1
- package/dist/widgets/categorizer/categorizer.d.ts +1 -1
- package/dist/widgets/definition/definition.d.ts +1 -1
- package/dist/widgets/dropdown/dropdown.d.ts +1 -1
- package/dist/widgets/explanation/explanation.d.ts +1 -1
- package/dist/widgets/expression/expression.d.ts +3 -3
- package/dist/widgets/graded-group/graded-group.d.ts +1 -1
- package/dist/widgets/graded-group-set/graded-group-set.d.ts +1 -1
- package/dist/widgets/grapher/grapher.d.ts +1 -1
- package/dist/widgets/group/group.d.ts +1 -1
- package/dist/widgets/image/image.d.ts +1 -1
- package/dist/widgets/input-number/input-number.d.ts +1 -1
- package/dist/widgets/interactive-graph.d.ts +1 -1
- package/dist/widgets/interactive-graphs/graphs/components/movable-point.d.ts +9 -0
- package/dist/widgets/interactive-graphs/graphs/components/use-control-point.d.ts +9 -0
- package/dist/widgets/label-image/label-image.d.ts +1 -1
- package/dist/widgets/matcher/matcher.d.ts +1 -1
- package/dist/widgets/matrix/matrix.d.ts +1 -1
- package/dist/widgets/number-line/number-line.d.ts +1 -1
- package/dist/widgets/orderer/orderer.d.ts +1 -1
- package/dist/widgets/passage/passage.d.ts +1 -1
- package/dist/widgets/passage-ref/passage-ref.d.ts +1 -1
- package/dist/widgets/radio/radio-component.d.ts +1 -1
- package/dist/widgets/sorter/sorter.d.ts +1 -1
- package/package.json +1 -1
- package/dist/prompt-types.d.ts +0 -33
- /package/dist/widget-ai-utils/categorizer/{prompt-utils.d.ts → categorizer-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/cs-program/{prompt-utils.d.ts → cs-program-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/definition/{prompt-utils.d.ts → definition-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/dropdown/{prompt-utils.d.ts → dropdown-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/explanation/{prompt-utils.d.ts → explanation-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/expression/{prompt-utils.d.ts → expression-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/grapher/{prompt-utils.d.ts → grapher-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/iframe/{prompt-utils.d.ts → iframe-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/image/{prompt-utils.d.ts → image-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/input-number/{prompt-utils.d.ts → input-number-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/interaction/{prompt-utils.d.ts → interaction-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/interactive-graph/{prompt-utils.d.ts → interactive-graph-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/label-image/{prompt-utils.d.ts → label-image-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/matcher/{prompt-utils.d.ts → matcher-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/matrix/{prompt-utils.d.ts → matrix-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/measurer/{prompt-utils.d.ts → measurer-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/number-line/{prompt-utils.d.ts → number-line-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/orderer/{prompt-utils.d.ts → orderer-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/passage/{prompt-utils.d.ts → passage-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/passage-ref/{prompt-utils.d.ts → passage-ref-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/phet-simulation/{prompt-utils.d.ts → phet-simulation-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/plotter/{prompt-utils.d.ts → plotter-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/python-program/{prompt-utils.d.ts → python-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/radio/{prompt-utils.d.ts → radio-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/sorter/{prompt-utils.d.ts → sorter-ai-utils.d.ts} +0 -0
- /package/dist/widget-ai-utils/video/{prompt-utils.d.ts → video-ai-utils.d.ts} +0 -0
package/dist/renderer-util.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { PerseusWidgetsMap } from "./perseus-types";
|
|
1
|
+
import type { PerseusRenderer, PerseusWidgetsMap } from "./perseus-types";
|
|
2
2
|
import type { PerseusStrings } from "./strings";
|
|
3
3
|
import type { PerseusScore } from "./types";
|
|
4
4
|
import type { UserInputMap } from "./validation.types";
|
|
5
5
|
export declare function emptyWidgetsFunctional(widgets: PerseusWidgetsMap, widgetIds: Array<string>, userInputMap: UserInputMap, strings: PerseusStrings, locale: string): ReadonlyArray<string>;
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function scorePerseusItem(perseusRenderData: PerseusRenderer, userInputMap: UserInputMap, strings: PerseusStrings, locale: string): PerseusScore;
|
|
7
|
+
export declare function scoreWidgetsFunctional(widgets: PerseusWidgetsMap, widgetIds: ReadonlyArray<string>, userInputMap: UserInputMap, strings: PerseusStrings, locale: string): {
|
|
7
8
|
[widgetId: string]: PerseusScore;
|
|
8
9
|
};
|
package/dist/renderer.d.ts
CHANGED
|
@@ -5,10 +5,10 @@ import TranslationLinter from "./translation-linter";
|
|
|
5
5
|
import WidgetContainer from "./widget-container";
|
|
6
6
|
import type { DependenciesContext } from "./dependencies";
|
|
7
7
|
import type { PerseusRenderer, PerseusWidget, PerseusWidgetOptions, PerseusWidgetsMap, ShowSolutions } from "./perseus-types";
|
|
8
|
-
import type { GetPromptJSONInterface, RendererPromptJSON } from "./prompt-types";
|
|
9
8
|
import type { PerseusStrings } from "./strings";
|
|
10
9
|
import type { APIOptions, APIOptionsWithDefaults, FilterCriterion, FocusPath, PerseusScore, SerializedState, Widget, WidgetProps } from "./types";
|
|
11
10
|
import type { UserInputArray, UserInputMap } from "./validation.types";
|
|
11
|
+
import type { GetPromptJSONInterface, RendererPromptJSON } from "./widget-ai-utils/prompt-types";
|
|
12
12
|
import type { KeypadAPI } from "@khanacademy/math-input";
|
|
13
13
|
import type { LinterContextProps } from "@khanacademy/perseus-linter";
|
|
14
14
|
import "./styles/perseus-renderer.less";
|
|
@@ -218,18 +218,15 @@ declare class Renderer extends React.Component<Props, State> implements GetPromp
|
|
|
218
218
|
*/
|
|
219
219
|
getPromptJSON(): RendererPromptJSON;
|
|
220
220
|
/**
|
|
221
|
-
*
|
|
222
|
-
*
|
|
223
|
-
*
|
|
221
|
+
* Scores the content.
|
|
222
|
+
*
|
|
223
|
+
* @deprecated use scorePerseusItem
|
|
224
224
|
*/
|
|
225
|
-
|
|
226
|
-
[widgetId: string]: PerseusScore;
|
|
227
|
-
};
|
|
225
|
+
score(): PerseusScore;
|
|
228
226
|
/**
|
|
229
|
-
*
|
|
227
|
+
* @deprecated use scorePerseusItem
|
|
230
228
|
*/
|
|
231
|
-
|
|
232
|
-
guessAndScore(): [UserInputArray, PerseusScore];
|
|
229
|
+
guessAndScore: () => [UserInputArray, PerseusScore];
|
|
233
230
|
examples: () => ReadonlyArray<string> | null | undefined;
|
|
234
231
|
handletranslationLintErrors: (lintErrors: ReadonlyArray<string>) => void;
|
|
235
232
|
render(): React.ReactNode;
|
|
@@ -11,13 +11,15 @@ import * as React from "react";
|
|
|
11
11
|
import { PerseusI18nContext } from "./components/i18n-context";
|
|
12
12
|
import Renderer from "./renderer";
|
|
13
13
|
import type { PerseusItem, ShowSolutions } from "./perseus-types";
|
|
14
|
-
import type { GetPromptJSONInterface, RendererPromptJSON } from "./prompt-types";
|
|
15
14
|
import type { FocusPath, PerseusDependenciesV2, SharedRendererProps } from "./types";
|
|
15
|
+
import type { UserInputArray, UserInputMap } from "./validation.types";
|
|
16
|
+
import type { GetPromptJSONInterface, RendererPromptJSON } from "./widget-ai-utils/prompt-types";
|
|
16
17
|
import type { KeypadAPI } from "@khanacademy/math-input";
|
|
17
18
|
import type { KeypadContextRendererInterface, RendererInterface, KEScore } from "@khanacademy/perseus-core";
|
|
18
19
|
type OwnProps = {
|
|
19
20
|
hintsVisible?: number;
|
|
20
21
|
item: PerseusItem;
|
|
22
|
+
score?: KEScore | null;
|
|
21
23
|
problemNum?: number;
|
|
22
24
|
reviewMode?: boolean;
|
|
23
25
|
keypadElement?: KeypadAPI | null | undefined;
|
|
@@ -30,8 +32,23 @@ type HOCProps = {
|
|
|
30
32
|
type Props = SharedRendererProps & OwnProps & HOCProps;
|
|
31
33
|
type DefaultProps = Required<Pick<Props, "apiOptions" | "onRendered" | "linterContext">>;
|
|
32
34
|
type State = {
|
|
35
|
+
/**
|
|
36
|
+
* questionCompleted is used to signal that a learner has attempted
|
|
37
|
+
* the exercise. This is used when widgets want to show things like
|
|
38
|
+
* rationale or partial correctness.
|
|
39
|
+
*/
|
|
33
40
|
questionCompleted: boolean;
|
|
34
|
-
|
|
41
|
+
/**
|
|
42
|
+
* As far as I can tell, this is used to highlight empty widgets
|
|
43
|
+
* after a learner has clicked the "check" button. I don't think this could
|
|
44
|
+
* still be used though, because the "check" button is disabled while there
|
|
45
|
+
* are empty widgets.
|
|
46
|
+
*/
|
|
47
|
+
questionHighlightedWidgets: ReadonlyArray<string>;
|
|
48
|
+
/**
|
|
49
|
+
* Keeps track of whether each asset (SvgImage or TeX) rendered by
|
|
50
|
+
* the questionRenderer has finished loading or rendering.
|
|
51
|
+
*/
|
|
35
52
|
assetStatuses: {
|
|
36
53
|
[assetKey: string]: boolean;
|
|
37
54
|
};
|
|
@@ -76,8 +93,22 @@ export declare class ServerItemRenderer extends React.Component<Props, State> im
|
|
|
76
93
|
blur(): void;
|
|
77
94
|
getNumHints(): number;
|
|
78
95
|
getPromptJSON(): RendererPromptJSON;
|
|
96
|
+
/**
|
|
97
|
+
* Returns an array of the widget `.getUserInput()` results
|
|
98
|
+
*
|
|
99
|
+
* TODO: can we remove this? Seems to be just for backwards
|
|
100
|
+
* compatibility with old Perseus Chrome logging
|
|
101
|
+
* @deprecated use getUserInput
|
|
102
|
+
*/
|
|
103
|
+
getUserInputLegacy(): UserInputArray;
|
|
104
|
+
/**
|
|
105
|
+
* Returns an object of the widget `.getUserInput()` results
|
|
106
|
+
*/
|
|
107
|
+
getUserInput(): UserInputMap;
|
|
79
108
|
/**
|
|
80
109
|
* Grades the item.
|
|
110
|
+
*
|
|
111
|
+
* @deprecated use scorePerseusItem
|
|
81
112
|
*/
|
|
82
113
|
scoreInput(): KEScore;
|
|
83
114
|
/**
|
package/dist/strings.d.ts
CHANGED
|
@@ -180,7 +180,8 @@ export type PerseusStrings = {
|
|
|
180
180
|
addPoint: string;
|
|
181
181
|
removePoint: string;
|
|
182
182
|
graphKeyboardPrompt: string;
|
|
183
|
-
srPointAtCoordinates: ({ x, y }: {
|
|
183
|
+
srPointAtCoordinates: ({ num, x, y, }: {
|
|
184
|
+
num: number;
|
|
184
185
|
x: string;
|
|
185
186
|
y: string;
|
|
186
187
|
}) => string;
|
package/dist/strings.js
CHANGED
|
@@ -150,7 +150,7 @@ const strings = {
|
|
|
150
150
|
graphKeyboardPrompt: "Press Shift + Enter to interact with the graph",
|
|
151
151
|
srPointAtCoordinates: {
|
|
152
152
|
context: "Screenreader-accessible description of a point on a graph",
|
|
153
|
-
message: "Point at %(x)s comma %(y)s"
|
|
153
|
+
message: "Point %(num)s at %(x)s comma %(y)s"
|
|
154
154
|
},
|
|
155
155
|
srInteractiveElements: "Interactive elements: %(elements)s",
|
|
156
156
|
srNoInteractiveElements: "No interactive elements"
|
|
@@ -418,10 +418,11 @@ const mockStrings = {
|
|
|
418
418
|
graphKeyboardPrompt: "Press Shift + Enter to interact with the graph",
|
|
419
419
|
srPointAtCoordinates: _ref27 => {
|
|
420
420
|
let {
|
|
421
|
+
num,
|
|
421
422
|
x,
|
|
422
423
|
y
|
|
423
424
|
} = _ref27;
|
|
424
|
-
return `Point at ${x} comma ${y}`;
|
|
425
|
+
return `Point ${num} at ${x} comma ${y}`;
|
|
425
426
|
},
|
|
426
427
|
srInteractiveElements: _ref28 => {
|
|
427
428
|
let {
|
package/dist/strings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strings.js","sources":["../src/strings.ts"],"sourcesContent":["/**\n * The translated strings that are used to render Perseus.\n */\nexport type PerseusStrings = {\n closeKeypad: string;\n openKeypad: string;\n mathInputBox: string;\n removeHighlight: string;\n addHighlight: string;\n hintPos: ({pos}: {pos: number}) => string;\n errorRendering: ({error}: {error: string}) => string;\n APPROXIMATED_PI_ERROR: string;\n EXTRA_SYMBOLS_ERROR: string;\n NEEDS_TO_BE_SIMPLFIED_ERROR: string;\n MISSING_PERCENT_ERROR: string;\n MULTIPLICATION_SIGN_ERROR: string;\n WRONG_CASE_ERROR: string;\n WRONG_LETTER_ERROR: string;\n invalidSelection: string;\n ERROR_TITLE: string;\n ERROR_MESSAGE: string;\n hints: string;\n getAnotherHint: string;\n deprecatedStandin: string;\n keepTrying: string;\n tryAgain: string;\n check: string;\n correctExcited: string;\n nextQuestion: string;\n skipToTitle: ({title}: {title: string}) => string;\n current: string;\n correct: string;\n correctSelected: string;\n correctCrossedOut: string;\n incorrect: string;\n incorrectSelected: string;\n hideExplanation: string;\n explain: string;\n INVALID_MESSAGE_PREFIX: string;\n DEFAULT_INVALID_MESSAGE_1: string;\n DEFAULT_INVALID_MESSAGE_2: string;\n integerExample: string;\n properExample: string;\n simplifiedProperExample: string;\n improperExample: string;\n simplifiedImproperExample: string;\n mixedExample: string;\n decimalExample: string;\n percentExample: string;\n piExample: string;\n yourAnswer: string;\n yourAnswerLabel: string;\n addPoints: string;\n addVertices: string;\n tapMultiple: string;\n tapSingle: string;\n clickMultiple: string;\n clickSingle: string;\n choices: string;\n answers: ({num}: {num: number}) => string;\n hideAnswersToggleLabel: string;\n moves: ({num}: {num: number}) => string;\n clickTiles: string;\n turnOffLights: string;\n fillAllCells: string;\n molecularDrawing: ({content}: {content: string}) => string;\n switchDirection: string;\n circleOpen: string;\n circleFilled: string;\n numDivisions: string;\n divisions: ({divRangeString}: {divRangeString: string}) => string;\n lineRange: ({lineRange}: {lineRange: string}) => string;\n lineNumber: ({lineNumber}: {lineNumber: string}) => string;\n symbolPassage: ({\n questionSymbol,\n questionNumber,\n }: {\n questionSymbol: string;\n questionNumber: string;\n }) => string;\n symbolQuestion: ({sentenceSymbol}: {sentenceSymbol: string}) => string;\n lineLabel: string;\n beginningPassage: string;\n beginningFootnotes: string;\n endPassage: string;\n questionMarker: ({number}: {number: string}) => string;\n circleMarker: ({number}: {number: string}) => string;\n sentenceMarker: ({number}: {number: string}) => string;\n dragHandles: string;\n tapAddPoints: string;\n false: string;\n true: string;\n no: string;\n yes: string;\n chooseCorrectNum: string;\n notNoneOfTheAbove: string;\n noneOfTheAbove: string;\n chooseNumAnswers: ({numCorrect}: {numCorrect: string}) => string;\n chooseAllAnswers: string;\n chooseOneAnswer: string;\n choiceCheckedCorrect: ({letter}: {letter: string}) => string;\n choiceCrossedOutCorrect: ({letter}: {letter: string}) => string;\n choiceCorrect: ({letter}: {letter: string}) => string;\n choiceCheckedIncorrect: ({letter}: {letter: string}) => string;\n choiceCrossedOutIncorrect: ({letter}: {letter: string}) => string;\n choiceIncorrect: ({letter}: {letter: string}) => string;\n choiceChecked: ({letter}: {letter: string}) => string;\n choiceCrossedOut: ({letter}: {letter: string}) => string;\n choice: ({letter}: {letter: string}) => string;\n crossOut: string;\n crossOutOption: string;\n crossOutChoice: ({letter}: {letter: string}) => string;\n bringBack: string;\n openMenuForChoice: ({letter}: {letter: string}) => string;\n letters: string;\n rightArrow: string;\n dontUnderstandUnits: string;\n checkSigFigs: string;\n answerNumericallyIncorrect: string;\n checkUnits: string;\n dontUnderstand: string;\n loading: string;\n videoTranscript: string;\n somethingWrong: string;\n videoWrapper: string;\n mathInputTitle: string;\n mathInputDescription: string;\n sin: string;\n cos: string;\n tan: string;\n simulationLoadFail: string;\n simulationLocaleWarning: string;\n addPoint: string;\n removePoint: string;\n graphKeyboardPrompt: string;\n srPointAtCoordinates: ({x, y}: {x: string; y: string}) => string;\n srInteractiveElements: ({elements}: {elements: string}) => string;\n srNoInteractiveElements: string;\n};\n\n/**\n * Untranslated strings used in Perseus. To be used by an external\n * translator to produce translated strings, passed in as `PerseusStrings`.\n */\nexport const strings: {\n [key in keyof PerseusStrings]:\n | string\n | {context?: string; message: string}\n | {context?: string; one: string; other: string};\n} = {\n closeKeypad: \"close math keypad\",\n openKeypad: \"open math keypad\",\n mathInputBox: \"Math input box\",\n removeHighlight: \"Remove highlight\",\n addHighlight: \"Add highlight\",\n hintPos: \"Hint #%(pos)s\",\n errorRendering: \"Error rendering: %(error)s\",\n APPROXIMATED_PI_ERROR:\n \"Your answer is close, but you may \" +\n \"have approximated pi. Enter your \" +\n \"answer as a multiple of pi, like \" +\n \"<code>12\\\\ \\\\text{pi}</code> or \" +\n \"<code>2/3\\\\ \\\\text{pi}</code>\",\n EXTRA_SYMBOLS_ERROR:\n \"We could not understand your \" +\n \"answer. Please check your answer for extra \" +\n \"text or symbols.\",\n NEEDS_TO_BE_SIMPLFIED_ERROR:\n \"Your answer is almost correct, \" + \"but it needs to be simplified.\",\n MISSING_PERCENT_ERROR:\n \"Your answer is almost correct, \" +\n \"but it is missing a \" +\n \"<code>\\\\%</code> at the end.\",\n MULTIPLICATION_SIGN_ERROR:\n \"I'm a computer. I only understand \" +\n \"multiplication if you use an asterisk \" +\n \"(*) as the multiplication sign.\",\n WRONG_CASE_ERROR:\n \"Your answer includes use of a variable with the wrong case.\",\n WRONG_LETTER_ERROR: \"Your answer includes a wrong variable letter.\",\n invalidSelection: \"Make sure you select something for every row.\",\n ERROR_TITLE: \"Oops!\",\n ERROR_MESSAGE: \"Sorry, I don't understand that!\",\n hints: \"Hints\",\n getAnotherHint: \"Get another hint\",\n deprecatedStandin:\n \"Sorry, this part of the question is no longer available. 😅 Don't worry, you won't be graded on this part. Keep going!\",\n keepTrying: \"Keep trying\",\n tryAgain: \"Try again\",\n check: \"Check\",\n correctExcited: \"Correct!\",\n nextQuestion: \"Next question\",\n skipToTitle: \"Skip to %(title)s\",\n current: \"Current\",\n correct: \"Correct\",\n correctSelected: \"Correct (selected)\",\n correctCrossedOut: \"Correct (but you crossed it out)\",\n incorrect: \"Incorrect\",\n incorrectSelected: \"Incorrect (selected)\",\n hideExplanation: \"Hide explanation\",\n explain: \"Explain\",\n INVALID_MESSAGE_PREFIX: \"We couldn't grade your answer.\",\n DEFAULT_INVALID_MESSAGE_1: \"It looks like you left something blank or \",\n DEFAULT_INVALID_MESSAGE_2: \"entered in an invalid answer.\",\n integerExample: \"an integer, like $6$\",\n properExample: \"a *proper* fraction, like $1/2$ or $6/10$\",\n simplifiedProperExample: \"a *simplified proper* fraction, like $3/5$\",\n improperExample: \"an *improper* fraction, like $10/7$ or $14/8$\",\n simplifiedImproperExample: \"a *simplified improper* fraction, like $7/4$\",\n mixedExample: \"a mixed number, like $1\\\\ 3/4$\",\n decimalExample: \"an *exact* decimal, like $0.75$\",\n percentExample: \"a percent, like $12.34\\\\%$\",\n piExample: \"a multiple of pi, like $12\\\\ \\\\text{pi}$ or $2/3\\\\ \\\\text{pi}$\",\n yourAnswer: \"**Your answer should be** \",\n yourAnswerLabel: \"Your answer:\",\n addPoints: \"Click to add points\",\n addVertices: \"Click to add vertices\",\n tapMultiple: \"Tap each dot on the image to select all answers that apply.\",\n tapSingle: \"Tap each dot on the image to select an answer.\",\n clickMultiple:\n \"Click each dot on the image to select all answers that apply.\",\n clickSingle: \"Click each dot on the image to select an answer.\",\n choices: \"Choices:\",\n answers: {\n one: \"%(num)s answer\",\n other: \"%(num)s answers\",\n },\n hideAnswersToggleLabel: \"Hide answer choices\",\n moves: {\n one: \"Moves: %(num)s\",\n other: \"Moves: %(num)s\",\n },\n clickTiles: \"Click on the tiles to change the lights.\",\n turnOffLights: \"You must turn on all of the lights to continue.\",\n fillAllCells: \"Make sure you fill in all cells in the matrix.\",\n molecularDrawing:\n \"A molecular structure drawing. SMILES notation: %(content)s\",\n switchDirection: \"Switch direction\",\n circleOpen: \"Make circle open\",\n circleFilled: \"Make circle filled\",\n numDivisions: \"Number of divisions:\",\n divisions:\n \"Please make sure the number of divisions is in the range %(divRangeString)s.\",\n lineRange: \"lines %(lineRange)s\",\n lineNumber: \"line %(lineNumber)s\",\n symbolPassage:\n \"The symbol %(questionSymbol)s indicates that question %(questionNumber)s references this portion of the passage.\",\n symbolQuestion:\n \" The symbol %(sentenceSymbol)s indicates that the following sentence is referenced in a question.\",\n lineLabel: {\n context: \"a label next to a reading passage to denote the line number\",\n message: \"Line\",\n },\n beginningPassage: \"Beginning of reading passage.\",\n beginningFootnotes: \"Beginning of reading passage footnotes.\",\n endPassage: \"End of reading passage.\",\n questionMarker: \"[Marker for question %(number)s]\",\n circleMarker: \"[Circle marker %(number)s]\",\n sentenceMarker: \"[Sentence %(number)s]\",\n dragHandles: \"Drag handles to make graph\",\n tapAddPoints: \"Tap to add points\",\n false: \"False\",\n true: \"True\",\n no: \"No\",\n yes: \"Yes\",\n chooseCorrectNum: \"Please choose the correct number of answers.\",\n notNoneOfTheAbove:\n \"'None of the above' may not be selected when other answers are selected.\",\n noneOfTheAbove: \"None of the above\",\n chooseNumAnswers: \"Choose %(numCorrect)s answers:\",\n chooseAllAnswers: \"Choose all answers that apply:\",\n chooseOneAnswer: \"Choose 1 answer:\",\n choiceCheckedCorrect: \"(Choice %(letter)s, Checked, Correct)\",\n choiceCrossedOutCorrect: \"(Choice %(letter)s, Crossed out, Correct)\",\n choiceCorrect: \"(Choice %(letter)s, Correct)\",\n choiceCheckedIncorrect: \"(Choice %(letter)s, Checked, Incorrect)\",\n choiceCrossedOutIncorrect: \"(Choice %(letter)s, Crossed out, Incorrect)\",\n choiceIncorrect: \"(Choice %(letter)s, Incorrect)\",\n choiceChecked: \"(Choice %(letter)s, Checked)\",\n choiceCrossedOut: \"(Choice %(letter)s, Crossed out)\",\n choice: \"(Choice %(letter)s)\",\n crossOut: \"Cross out\",\n crossOutOption: \"Cross out option\",\n crossOutChoice: \"Cross out Choice %(letter)s\",\n bringBack: \"Bring back\",\n openMenuForChoice: \"Open menu for Choice %(letter)s\",\n letters: {\n context:\n \"This is a list of single-character labels that will appear in front of multiple-choice options. For instance, a multiple-choice question with three options would display (A) first option (B) second option (C) third option. There must be spaces between each of the different characters. The characters will show up next to options in the order that they are listed here. Most multiple choice questions have 5 or fewer options.\",\n message: \"A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\",\n },\n rightArrow: \"Reaction arrow pointing to the right.\",\n dontUnderstandUnits: \"I couldn't understand those units.\",\n checkSigFigs: \"Check your significant figures.\",\n answerNumericallyIncorrect: \"That answer is numerically incorrect.\",\n checkUnits: \"Check your units.\",\n dontUnderstand: \"I don't understand that\",\n loading: \"Loading...\",\n videoTranscript: \"See video transcript\",\n somethingWrong: \"Something went wrong.\",\n videoWrapper: \"Khan Academy video wrapper\",\n mathInputTitle: \"mathematics keyboard\",\n mathInputDescription:\n \"Use keyboard/mouse to interact with math-based input fields\",\n sin: \"sin\",\n cos: \"cos\",\n tan: \"tan\",\n simulationLoadFail: \"Sorry, this simulation cannot load.\",\n simulationLocaleWarning:\n \"Sorry, this simulation isn't available in your language.\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n srPointAtCoordinates: {\n context: \"Screenreader-accessible description of a point on a graph\",\n message: \"Point at %(x)s comma %(y)s\",\n },\n srInteractiveElements: \"Interactive elements: %(elements)s\",\n srNoInteractiveElements: \"No interactive elements\",\n};\n\n/**\n * Mock strings for the Perseus package, to be used for tests and Storybook.\n */\nexport const mockStrings: PerseusStrings = {\n closeKeypad: \"close math keypad\",\n openKeypad: \"open math keypad\",\n mathInputBox: \"Math input box\",\n removeHighlight: \"Remove highlight\",\n addHighlight: \"Add highlight\",\n hintPos: ({pos}) => `Hint #${pos}`,\n errorRendering: ({error}) => `Error rendering: ${error}`,\n APPROXIMATED_PI_ERROR:\n \"Your answer is close, but you may \" +\n \"have approximated pi. Enter your \" +\n \"answer as a multiple of pi, like \" +\n \"<code>12\\\\ \\\\text{pi}</code> or \" +\n \"<code>2/3\\\\ \\\\text{pi}</code>\",\n EXTRA_SYMBOLS_ERROR:\n \"We could not understand your \" +\n \"answer. Please check your answer for extra \" +\n \"text or symbols.\",\n NEEDS_TO_BE_SIMPLFIED_ERROR:\n \"Your answer is almost correct, \" + \"but it needs to be simplified.\",\n MISSING_PERCENT_ERROR:\n \"Your answer is almost correct, \" +\n \"but it is missing a \" +\n \"<code>\\\\%</code> at the end.\",\n MULTIPLICATION_SIGN_ERROR:\n \"I'm a computer. I only understand \" +\n \"multiplication if you use an asterisk \" +\n \"(*) as the multiplication sign.\",\n WRONG_CASE_ERROR:\n \"Your answer includes use of a variable with the wrong case.\",\n WRONG_LETTER_ERROR: \"Your answer includes a wrong variable letter.\",\n invalidSelection: \"Make sure you select something for every row.\",\n ERROR_TITLE: \"Oops!\",\n ERROR_MESSAGE: \"Sorry, I don't understand that!\",\n hints: \"Hints\",\n getAnotherHint: \"Get another hint\",\n deprecatedStandin:\n \"Sorry, this part of the question is no longer available. 😅 Don't worry, you won't be graded on this part. Keep going!\",\n keepTrying: \"Keep trying\",\n tryAgain: \"Try again\",\n check: \"Check\",\n correctExcited: \"Correct!\",\n nextQuestion: \"Next question\",\n skipToTitle: ({title}) => `Skip to ${title}`,\n current: \"Current\",\n correct: \"Correct\",\n correctSelected: \"Correct (selected)\",\n correctCrossedOut: \"Correct (but you crossed it out)\",\n incorrect: \"Incorrect\",\n incorrectSelected: \"Incorrect (selected)\",\n hideExplanation: \"Hide explanation\",\n explain: \"Explain\",\n INVALID_MESSAGE_PREFIX: \"We couldn't grade your answer.\",\n DEFAULT_INVALID_MESSAGE_1: \"It looks like you left something blank or \",\n DEFAULT_INVALID_MESSAGE_2: \"entered in an invalid answer.\",\n integerExample: \"an integer, like $6$\",\n properExample: \"a *proper* fraction, like $1/2$ or $6/10$\",\n simplifiedProperExample: \"a *simplified proper* fraction, like $3/5$\",\n improperExample: \"an *improper* fraction, like $10/7$ or $14/8$\",\n simplifiedImproperExample: \"a *simplified improper* fraction, like $7/4$\",\n mixedExample: \"a mixed number, like $1\\\\ 3/4$\",\n decimalExample: \"an *exact* decimal, like $0.75$\",\n percentExample: \"a percent, like $12.34\\\\%$\",\n piExample: \"a multiple of pi, like $12\\\\ \\\\text{pi}$ or $2/3\\\\ \\\\text{pi}$\",\n yourAnswer: \"**Your answer should be** \",\n yourAnswerLabel: \"Your answer:\",\n addPoints: \"Click to add points\",\n addVertices: \"Click to add vertices\",\n tapMultiple: \"Tap each dot on the image to select all answers that apply.\",\n tapSingle: \"Tap each dot on the image to select an answer.\",\n clickMultiple:\n \"Click each dot on the image to select all answers that apply.\",\n clickSingle: \"Click each dot on the image to select an answer.\",\n choices: \"Choices:\",\n answers: ({num}) => (num === 1 ? `${num} answer` : `${num} answers`),\n hideAnswersToggleLabel: \"Hide answer choices\",\n moves: ({num}) => (num === 1 ? `Moves: ${num}` : `Moves: ${num}`),\n clickTiles: \"Click on the tiles to change the lights.\",\n turnOffLights: \"You must turn on all of the lights to continue.\",\n fillAllCells: \"Make sure you fill in all cells in the matrix.\",\n molecularDrawing: ({content}) =>\n `A molecular structure drawing. SMILES notation: ${content}`,\n switchDirection: \"Switch direction\",\n circleOpen: \"Make circle open\",\n circleFilled: \"Make circle filled\",\n numDivisions: \"Number of divisions:\",\n divisions: ({divRangeString}) =>\n `Please make sure the number of divisions is in the range ${divRangeString}.`,\n lineRange: ({lineRange}: {lineRange: string}) => `lines ${lineRange}`,\n lineNumber: ({lineNumber}: {lineNumber: string}) => `line ${lineNumber}`,\n symbolPassage: ({questionSymbol, questionNumber}) =>\n `The symbol ${questionSymbol} indicates that question ${questionNumber} references this portion of the passage.`,\n symbolQuestion: ({sentenceSymbol}) =>\n ` The symbol ${sentenceSymbol} indicates that the following sentence is referenced in a question.`,\n lineLabel: \"Line\",\n beginningPassage: \"Beginning of reading passage.\",\n beginningFootnotes: \"Beginning of reading passage footnotes.\",\n endPassage: \"End of reading passage.\",\n questionMarker: ({number}) => `[Marker for question ${number}]`,\n circleMarker: ({number}) => `[Circle marker ${number}]`,\n sentenceMarker: ({number}) => `[Sentence ${number}]`,\n dragHandles: \"Drag handles to make graph\",\n tapAddPoints: \"Tap to add points\",\n false: \"False\",\n true: \"True\",\n no: \"No\",\n yes: \"Yes\",\n chooseCorrectNum: \"Please choose the correct number of answers.\",\n notNoneOfTheAbove:\n \"'None of the above' may not be selected when other answers are selected.\",\n noneOfTheAbove: \"None of the above\",\n chooseNumAnswers: ({numCorrect}) => `Choose ${numCorrect} answers:`,\n chooseAllAnswers: \"Choose all answers that apply:\",\n chooseOneAnswer: \"Choose 1 answer:\",\n choiceCheckedCorrect: ({letter}) => `(Choice ${letter}, Checked, Correct)`,\n choiceCrossedOutCorrect: ({letter}) =>\n `(Choice ${letter}, Crossed out, Correct)`,\n choiceCorrect: ({letter}) => `(Choice ${letter}, Correct)`,\n choiceCheckedIncorrect: ({letter}) =>\n `(Choice ${letter}, Checked, Incorrect)`,\n choiceCrossedOutIncorrect: ({letter}) =>\n `(Choice ${letter}, Crossed out, Incorrect)`,\n choiceIncorrect: ({letter}) => `(Choice ${letter}, Incorrect)`,\n choiceChecked: ({letter}) => `(Choice ${letter}, Checked)`,\n choiceCrossedOut: ({letter}) => `(Choice ${letter}, Crossed out)`,\n choice: ({letter}) => `(Choice ${letter})`,\n crossOut: \"Cross out\",\n crossOutOption: \"Cross out option\",\n crossOutChoice: ({letter}) => `Cross out Choice ${letter}`,\n bringBack: \"Bring back\",\n openMenuForChoice: ({letter}) => `Open menu for Choice ${letter}`,\n letters: \"A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\",\n rightArrow: \"Reaction arrow pointing to the right.\",\n dontUnderstandUnits: \"I couldn't understand those units.\",\n checkSigFigs: \"Check your significant figures.\",\n answerNumericallyIncorrect: \"That answer is numerically incorrect.\",\n checkUnits: \"Check your units.\",\n dontUnderstand: \"I don't understand that\",\n loading: \"Loading...\",\n videoTranscript: \"See video transcript\",\n somethingWrong: \"Something went wrong.\",\n videoWrapper: \"Khan Academy video wrapper\",\n mathInputTitle: \"mathematics keyboard\",\n mathInputDescription:\n \"Use keyboard/mouse to interact with math-based input fields\",\n sin: \"sin\",\n cos: \"cos\",\n tan: \"tan\",\n simulationLoadFail: \"Sorry, this simulation cannot load.\",\n simulationLocaleWarning:\n \"Sorry, this simulation isn't available in your language.\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n srPointAtCoordinates: ({x, y}) => `Point at ${x} comma ${y}`,\n srInteractiveElements: ({elements}) => `Interactive elements: ${elements}`,\n srNoInteractiveElements: \"No interactive elements\",\n};\n"],"names":["strings","closeKeypad","openKeypad","mathInputBox","removeHighlight","addHighlight","hintPos","errorRendering","APPROXIMATED_PI_ERROR","EXTRA_SYMBOLS_ERROR","NEEDS_TO_BE_SIMPLFIED_ERROR","MISSING_PERCENT_ERROR","MULTIPLICATION_SIGN_ERROR","WRONG_CASE_ERROR","WRONG_LETTER_ERROR","invalidSelection","ERROR_TITLE","ERROR_MESSAGE","hints","getAnotherHint","deprecatedStandin","keepTrying","tryAgain","check","correctExcited","nextQuestion","skipToTitle","current","correct","correctSelected","correctCrossedOut","incorrect","incorrectSelected","hideExplanation","explain","INVALID_MESSAGE_PREFIX","DEFAULT_INVALID_MESSAGE_1","DEFAULT_INVALID_MESSAGE_2","integerExample","properExample","simplifiedProperExample","improperExample","simplifiedImproperExample","mixedExample","decimalExample","percentExample","piExample","yourAnswer","yourAnswerLabel","addPoints","addVertices","tapMultiple","tapSingle","clickMultiple","clickSingle","choices","answers","one","other","hideAnswersToggleLabel","moves","clickTiles","turnOffLights","fillAllCells","molecularDrawing","switchDirection","circleOpen","circleFilled","numDivisions","divisions","lineRange","lineNumber","symbolPassage","symbolQuestion","lineLabel","context","message","beginningPassage","beginningFootnotes","endPassage","questionMarker","circleMarker","sentenceMarker","dragHandles","tapAddPoints","false","true","no","yes","chooseCorrectNum","notNoneOfTheAbove","noneOfTheAbove","chooseNumAnswers","chooseAllAnswers","chooseOneAnswer","choiceCheckedCorrect","choiceCrossedOutCorrect","choiceCorrect","choiceCheckedIncorrect","choiceCrossedOutIncorrect","choiceIncorrect","choiceChecked","choiceCrossedOut","choice","crossOut","crossOutOption","crossOutChoice","bringBack","openMenuForChoice","letters","rightArrow","dontUnderstandUnits","checkSigFigs","answerNumericallyIncorrect","checkUnits","dontUnderstand","loading","videoTranscript","somethingWrong","videoWrapper","mathInputTitle","mathInputDescription","sin","cos","tan","simulationLoadFail","simulationLocaleWarning","addPoint","removePoint","graphKeyboardPrompt","srPointAtCoordinates","srInteractiveElements","srNoInteractiveElements","mockStrings","_ref","pos","_ref2","error","_ref3","title","_ref4","num","_ref5","_ref6","content","_ref7","divRangeString","_ref8","_ref9","_ref10","questionSymbol","questionNumber","_ref11","sentenceSymbol","_ref12","number","_ref13","_ref14","_ref15","numCorrect","_ref16","letter","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_ref23","_ref24","_ref25","_ref26","_ref27","x","y","_ref28","elements"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"strings.js","sources":["../src/strings.ts"],"sourcesContent":["/**\n * The translated strings that are used to render Perseus.\n */\nexport type PerseusStrings = {\n closeKeypad: string;\n openKeypad: string;\n mathInputBox: string;\n removeHighlight: string;\n addHighlight: string;\n hintPos: ({pos}: {pos: number}) => string;\n errorRendering: ({error}: {error: string}) => string;\n APPROXIMATED_PI_ERROR: string;\n EXTRA_SYMBOLS_ERROR: string;\n NEEDS_TO_BE_SIMPLFIED_ERROR: string;\n MISSING_PERCENT_ERROR: string;\n MULTIPLICATION_SIGN_ERROR: string;\n WRONG_CASE_ERROR: string;\n WRONG_LETTER_ERROR: string;\n invalidSelection: string;\n ERROR_TITLE: string;\n ERROR_MESSAGE: string;\n hints: string;\n getAnotherHint: string;\n deprecatedStandin: string;\n keepTrying: string;\n tryAgain: string;\n check: string;\n correctExcited: string;\n nextQuestion: string;\n skipToTitle: ({title}: {title: string}) => string;\n current: string;\n correct: string;\n correctSelected: string;\n correctCrossedOut: string;\n incorrect: string;\n incorrectSelected: string;\n hideExplanation: string;\n explain: string;\n INVALID_MESSAGE_PREFIX: string;\n DEFAULT_INVALID_MESSAGE_1: string;\n DEFAULT_INVALID_MESSAGE_2: string;\n integerExample: string;\n properExample: string;\n simplifiedProperExample: string;\n improperExample: string;\n simplifiedImproperExample: string;\n mixedExample: string;\n decimalExample: string;\n percentExample: string;\n piExample: string;\n yourAnswer: string;\n yourAnswerLabel: string;\n addPoints: string;\n addVertices: string;\n tapMultiple: string;\n tapSingle: string;\n clickMultiple: string;\n clickSingle: string;\n choices: string;\n answers: ({num}: {num: number}) => string;\n hideAnswersToggleLabel: string;\n moves: ({num}: {num: number}) => string;\n clickTiles: string;\n turnOffLights: string;\n fillAllCells: string;\n molecularDrawing: ({content}: {content: string}) => string;\n switchDirection: string;\n circleOpen: string;\n circleFilled: string;\n numDivisions: string;\n divisions: ({divRangeString}: {divRangeString: string}) => string;\n lineRange: ({lineRange}: {lineRange: string}) => string;\n lineNumber: ({lineNumber}: {lineNumber: string}) => string;\n symbolPassage: ({\n questionSymbol,\n questionNumber,\n }: {\n questionSymbol: string;\n questionNumber: string;\n }) => string;\n symbolQuestion: ({sentenceSymbol}: {sentenceSymbol: string}) => string;\n lineLabel: string;\n beginningPassage: string;\n beginningFootnotes: string;\n endPassage: string;\n questionMarker: ({number}: {number: string}) => string;\n circleMarker: ({number}: {number: string}) => string;\n sentenceMarker: ({number}: {number: string}) => string;\n dragHandles: string;\n tapAddPoints: string;\n false: string;\n true: string;\n no: string;\n yes: string;\n chooseCorrectNum: string;\n notNoneOfTheAbove: string;\n noneOfTheAbove: string;\n chooseNumAnswers: ({numCorrect}: {numCorrect: string}) => string;\n chooseAllAnswers: string;\n chooseOneAnswer: string;\n choiceCheckedCorrect: ({letter}: {letter: string}) => string;\n choiceCrossedOutCorrect: ({letter}: {letter: string}) => string;\n choiceCorrect: ({letter}: {letter: string}) => string;\n choiceCheckedIncorrect: ({letter}: {letter: string}) => string;\n choiceCrossedOutIncorrect: ({letter}: {letter: string}) => string;\n choiceIncorrect: ({letter}: {letter: string}) => string;\n choiceChecked: ({letter}: {letter: string}) => string;\n choiceCrossedOut: ({letter}: {letter: string}) => string;\n choice: ({letter}: {letter: string}) => string;\n crossOut: string;\n crossOutOption: string;\n crossOutChoice: ({letter}: {letter: string}) => string;\n bringBack: string;\n openMenuForChoice: ({letter}: {letter: string}) => string;\n letters: string;\n rightArrow: string;\n dontUnderstandUnits: string;\n checkSigFigs: string;\n answerNumericallyIncorrect: string;\n checkUnits: string;\n dontUnderstand: string;\n loading: string;\n videoTranscript: string;\n somethingWrong: string;\n videoWrapper: string;\n mathInputTitle: string;\n mathInputDescription: string;\n sin: string;\n cos: string;\n tan: string;\n simulationLoadFail: string;\n simulationLocaleWarning: string;\n addPoint: string;\n removePoint: string;\n graphKeyboardPrompt: string;\n srPointAtCoordinates: ({\n num,\n x,\n y,\n }: {\n num: number;\n x: string;\n y: string;\n }) => string;\n srInteractiveElements: ({elements}: {elements: string}) => string;\n srNoInteractiveElements: string;\n};\n\n/**\n * Untranslated strings used in Perseus. To be used by an external\n * translator to produce translated strings, passed in as `PerseusStrings`.\n */\nexport const strings: {\n [key in keyof PerseusStrings]:\n | string\n | {context?: string; message: string}\n | {context?: string; one: string; other: string};\n} = {\n closeKeypad: \"close math keypad\",\n openKeypad: \"open math keypad\",\n mathInputBox: \"Math input box\",\n removeHighlight: \"Remove highlight\",\n addHighlight: \"Add highlight\",\n hintPos: \"Hint #%(pos)s\",\n errorRendering: \"Error rendering: %(error)s\",\n APPROXIMATED_PI_ERROR:\n \"Your answer is close, but you may \" +\n \"have approximated pi. Enter your \" +\n \"answer as a multiple of pi, like \" +\n \"<code>12\\\\ \\\\text{pi}</code> or \" +\n \"<code>2/3\\\\ \\\\text{pi}</code>\",\n EXTRA_SYMBOLS_ERROR:\n \"We could not understand your \" +\n \"answer. Please check your answer for extra \" +\n \"text or symbols.\",\n NEEDS_TO_BE_SIMPLFIED_ERROR:\n \"Your answer is almost correct, \" + \"but it needs to be simplified.\",\n MISSING_PERCENT_ERROR:\n \"Your answer is almost correct, \" +\n \"but it is missing a \" +\n \"<code>\\\\%</code> at the end.\",\n MULTIPLICATION_SIGN_ERROR:\n \"I'm a computer. I only understand \" +\n \"multiplication if you use an asterisk \" +\n \"(*) as the multiplication sign.\",\n WRONG_CASE_ERROR:\n \"Your answer includes use of a variable with the wrong case.\",\n WRONG_LETTER_ERROR: \"Your answer includes a wrong variable letter.\",\n invalidSelection: \"Make sure you select something for every row.\",\n ERROR_TITLE: \"Oops!\",\n ERROR_MESSAGE: \"Sorry, I don't understand that!\",\n hints: \"Hints\",\n getAnotherHint: \"Get another hint\",\n deprecatedStandin:\n \"Sorry, this part of the question is no longer available. 😅 Don't worry, you won't be graded on this part. Keep going!\",\n keepTrying: \"Keep trying\",\n tryAgain: \"Try again\",\n check: \"Check\",\n correctExcited: \"Correct!\",\n nextQuestion: \"Next question\",\n skipToTitle: \"Skip to %(title)s\",\n current: \"Current\",\n correct: \"Correct\",\n correctSelected: \"Correct (selected)\",\n correctCrossedOut: \"Correct (but you crossed it out)\",\n incorrect: \"Incorrect\",\n incorrectSelected: \"Incorrect (selected)\",\n hideExplanation: \"Hide explanation\",\n explain: \"Explain\",\n INVALID_MESSAGE_PREFIX: \"We couldn't grade your answer.\",\n DEFAULT_INVALID_MESSAGE_1: \"It looks like you left something blank or \",\n DEFAULT_INVALID_MESSAGE_2: \"entered in an invalid answer.\",\n integerExample: \"an integer, like $6$\",\n properExample: \"a *proper* fraction, like $1/2$ or $6/10$\",\n simplifiedProperExample: \"a *simplified proper* fraction, like $3/5$\",\n improperExample: \"an *improper* fraction, like $10/7$ or $14/8$\",\n simplifiedImproperExample: \"a *simplified improper* fraction, like $7/4$\",\n mixedExample: \"a mixed number, like $1\\\\ 3/4$\",\n decimalExample: \"an *exact* decimal, like $0.75$\",\n percentExample: \"a percent, like $12.34\\\\%$\",\n piExample: \"a multiple of pi, like $12\\\\ \\\\text{pi}$ or $2/3\\\\ \\\\text{pi}$\",\n yourAnswer: \"**Your answer should be** \",\n yourAnswerLabel: \"Your answer:\",\n addPoints: \"Click to add points\",\n addVertices: \"Click to add vertices\",\n tapMultiple: \"Tap each dot on the image to select all answers that apply.\",\n tapSingle: \"Tap each dot on the image to select an answer.\",\n clickMultiple:\n \"Click each dot on the image to select all answers that apply.\",\n clickSingle: \"Click each dot on the image to select an answer.\",\n choices: \"Choices:\",\n answers: {\n one: \"%(num)s answer\",\n other: \"%(num)s answers\",\n },\n hideAnswersToggleLabel: \"Hide answer choices\",\n moves: {\n one: \"Moves: %(num)s\",\n other: \"Moves: %(num)s\",\n },\n clickTiles: \"Click on the tiles to change the lights.\",\n turnOffLights: \"You must turn on all of the lights to continue.\",\n fillAllCells: \"Make sure you fill in all cells in the matrix.\",\n molecularDrawing:\n \"A molecular structure drawing. SMILES notation: %(content)s\",\n switchDirection: \"Switch direction\",\n circleOpen: \"Make circle open\",\n circleFilled: \"Make circle filled\",\n numDivisions: \"Number of divisions:\",\n divisions:\n \"Please make sure the number of divisions is in the range %(divRangeString)s.\",\n lineRange: \"lines %(lineRange)s\",\n lineNumber: \"line %(lineNumber)s\",\n symbolPassage:\n \"The symbol %(questionSymbol)s indicates that question %(questionNumber)s references this portion of the passage.\",\n symbolQuestion:\n \" The symbol %(sentenceSymbol)s indicates that the following sentence is referenced in a question.\",\n lineLabel: {\n context: \"a label next to a reading passage to denote the line number\",\n message: \"Line\",\n },\n beginningPassage: \"Beginning of reading passage.\",\n beginningFootnotes: \"Beginning of reading passage footnotes.\",\n endPassage: \"End of reading passage.\",\n questionMarker: \"[Marker for question %(number)s]\",\n circleMarker: \"[Circle marker %(number)s]\",\n sentenceMarker: \"[Sentence %(number)s]\",\n dragHandles: \"Drag handles to make graph\",\n tapAddPoints: \"Tap to add points\",\n false: \"False\",\n true: \"True\",\n no: \"No\",\n yes: \"Yes\",\n chooseCorrectNum: \"Please choose the correct number of answers.\",\n notNoneOfTheAbove:\n \"'None of the above' may not be selected when other answers are selected.\",\n noneOfTheAbove: \"None of the above\",\n chooseNumAnswers: \"Choose %(numCorrect)s answers:\",\n chooseAllAnswers: \"Choose all answers that apply:\",\n chooseOneAnswer: \"Choose 1 answer:\",\n choiceCheckedCorrect: \"(Choice %(letter)s, Checked, Correct)\",\n choiceCrossedOutCorrect: \"(Choice %(letter)s, Crossed out, Correct)\",\n choiceCorrect: \"(Choice %(letter)s, Correct)\",\n choiceCheckedIncorrect: \"(Choice %(letter)s, Checked, Incorrect)\",\n choiceCrossedOutIncorrect: \"(Choice %(letter)s, Crossed out, Incorrect)\",\n choiceIncorrect: \"(Choice %(letter)s, Incorrect)\",\n choiceChecked: \"(Choice %(letter)s, Checked)\",\n choiceCrossedOut: \"(Choice %(letter)s, Crossed out)\",\n choice: \"(Choice %(letter)s)\",\n crossOut: \"Cross out\",\n crossOutOption: \"Cross out option\",\n crossOutChoice: \"Cross out Choice %(letter)s\",\n bringBack: \"Bring back\",\n openMenuForChoice: \"Open menu for Choice %(letter)s\",\n letters: {\n context:\n \"This is a list of single-character labels that will appear in front of multiple-choice options. For instance, a multiple-choice question with three options would display (A) first option (B) second option (C) third option. There must be spaces between each of the different characters. The characters will show up next to options in the order that they are listed here. Most multiple choice questions have 5 or fewer options.\",\n message: \"A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\",\n },\n rightArrow: \"Reaction arrow pointing to the right.\",\n dontUnderstandUnits: \"I couldn't understand those units.\",\n checkSigFigs: \"Check your significant figures.\",\n answerNumericallyIncorrect: \"That answer is numerically incorrect.\",\n checkUnits: \"Check your units.\",\n dontUnderstand: \"I don't understand that\",\n loading: \"Loading...\",\n videoTranscript: \"See video transcript\",\n somethingWrong: \"Something went wrong.\",\n videoWrapper: \"Khan Academy video wrapper\",\n mathInputTitle: \"mathematics keyboard\",\n mathInputDescription:\n \"Use keyboard/mouse to interact with math-based input fields\",\n sin: \"sin\",\n cos: \"cos\",\n tan: \"tan\",\n simulationLoadFail: \"Sorry, this simulation cannot load.\",\n simulationLocaleWarning:\n \"Sorry, this simulation isn't available in your language.\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n srPointAtCoordinates: {\n context: \"Screenreader-accessible description of a point on a graph\",\n message: \"Point %(num)s at %(x)s comma %(y)s\",\n },\n srInteractiveElements: \"Interactive elements: %(elements)s\",\n srNoInteractiveElements: \"No interactive elements\",\n};\n\n/**\n * Mock strings for the Perseus package, to be used for tests and Storybook.\n */\nexport const mockStrings: PerseusStrings = {\n closeKeypad: \"close math keypad\",\n openKeypad: \"open math keypad\",\n mathInputBox: \"Math input box\",\n removeHighlight: \"Remove highlight\",\n addHighlight: \"Add highlight\",\n hintPos: ({pos}) => `Hint #${pos}`,\n errorRendering: ({error}) => `Error rendering: ${error}`,\n APPROXIMATED_PI_ERROR:\n \"Your answer is close, but you may \" +\n \"have approximated pi. Enter your \" +\n \"answer as a multiple of pi, like \" +\n \"<code>12\\\\ \\\\text{pi}</code> or \" +\n \"<code>2/3\\\\ \\\\text{pi}</code>\",\n EXTRA_SYMBOLS_ERROR:\n \"We could not understand your \" +\n \"answer. Please check your answer for extra \" +\n \"text or symbols.\",\n NEEDS_TO_BE_SIMPLFIED_ERROR:\n \"Your answer is almost correct, \" + \"but it needs to be simplified.\",\n MISSING_PERCENT_ERROR:\n \"Your answer is almost correct, \" +\n \"but it is missing a \" +\n \"<code>\\\\%</code> at the end.\",\n MULTIPLICATION_SIGN_ERROR:\n \"I'm a computer. I only understand \" +\n \"multiplication if you use an asterisk \" +\n \"(*) as the multiplication sign.\",\n WRONG_CASE_ERROR:\n \"Your answer includes use of a variable with the wrong case.\",\n WRONG_LETTER_ERROR: \"Your answer includes a wrong variable letter.\",\n invalidSelection: \"Make sure you select something for every row.\",\n ERROR_TITLE: \"Oops!\",\n ERROR_MESSAGE: \"Sorry, I don't understand that!\",\n hints: \"Hints\",\n getAnotherHint: \"Get another hint\",\n deprecatedStandin:\n \"Sorry, this part of the question is no longer available. 😅 Don't worry, you won't be graded on this part. Keep going!\",\n keepTrying: \"Keep trying\",\n tryAgain: \"Try again\",\n check: \"Check\",\n correctExcited: \"Correct!\",\n nextQuestion: \"Next question\",\n skipToTitle: ({title}) => `Skip to ${title}`,\n current: \"Current\",\n correct: \"Correct\",\n correctSelected: \"Correct (selected)\",\n correctCrossedOut: \"Correct (but you crossed it out)\",\n incorrect: \"Incorrect\",\n incorrectSelected: \"Incorrect (selected)\",\n hideExplanation: \"Hide explanation\",\n explain: \"Explain\",\n INVALID_MESSAGE_PREFIX: \"We couldn't grade your answer.\",\n DEFAULT_INVALID_MESSAGE_1: \"It looks like you left something blank or \",\n DEFAULT_INVALID_MESSAGE_2: \"entered in an invalid answer.\",\n integerExample: \"an integer, like $6$\",\n properExample: \"a *proper* fraction, like $1/2$ or $6/10$\",\n simplifiedProperExample: \"a *simplified proper* fraction, like $3/5$\",\n improperExample: \"an *improper* fraction, like $10/7$ or $14/8$\",\n simplifiedImproperExample: \"a *simplified improper* fraction, like $7/4$\",\n mixedExample: \"a mixed number, like $1\\\\ 3/4$\",\n decimalExample: \"an *exact* decimal, like $0.75$\",\n percentExample: \"a percent, like $12.34\\\\%$\",\n piExample: \"a multiple of pi, like $12\\\\ \\\\text{pi}$ or $2/3\\\\ \\\\text{pi}$\",\n yourAnswer: \"**Your answer should be** \",\n yourAnswerLabel: \"Your answer:\",\n addPoints: \"Click to add points\",\n addVertices: \"Click to add vertices\",\n tapMultiple: \"Tap each dot on the image to select all answers that apply.\",\n tapSingle: \"Tap each dot on the image to select an answer.\",\n clickMultiple:\n \"Click each dot on the image to select all answers that apply.\",\n clickSingle: \"Click each dot on the image to select an answer.\",\n choices: \"Choices:\",\n answers: ({num}) => (num === 1 ? `${num} answer` : `${num} answers`),\n hideAnswersToggleLabel: \"Hide answer choices\",\n moves: ({num}) => (num === 1 ? `Moves: ${num}` : `Moves: ${num}`),\n clickTiles: \"Click on the tiles to change the lights.\",\n turnOffLights: \"You must turn on all of the lights to continue.\",\n fillAllCells: \"Make sure you fill in all cells in the matrix.\",\n molecularDrawing: ({content}) =>\n `A molecular structure drawing. SMILES notation: ${content}`,\n switchDirection: \"Switch direction\",\n circleOpen: \"Make circle open\",\n circleFilled: \"Make circle filled\",\n numDivisions: \"Number of divisions:\",\n divisions: ({divRangeString}) =>\n `Please make sure the number of divisions is in the range ${divRangeString}.`,\n lineRange: ({lineRange}: {lineRange: string}) => `lines ${lineRange}`,\n lineNumber: ({lineNumber}: {lineNumber: string}) => `line ${lineNumber}`,\n symbolPassage: ({questionSymbol, questionNumber}) =>\n `The symbol ${questionSymbol} indicates that question ${questionNumber} references this portion of the passage.`,\n symbolQuestion: ({sentenceSymbol}) =>\n ` The symbol ${sentenceSymbol} indicates that the following sentence is referenced in a question.`,\n lineLabel: \"Line\",\n beginningPassage: \"Beginning of reading passage.\",\n beginningFootnotes: \"Beginning of reading passage footnotes.\",\n endPassage: \"End of reading passage.\",\n questionMarker: ({number}) => `[Marker for question ${number}]`,\n circleMarker: ({number}) => `[Circle marker ${number}]`,\n sentenceMarker: ({number}) => `[Sentence ${number}]`,\n dragHandles: \"Drag handles to make graph\",\n tapAddPoints: \"Tap to add points\",\n false: \"False\",\n true: \"True\",\n no: \"No\",\n yes: \"Yes\",\n chooseCorrectNum: \"Please choose the correct number of answers.\",\n notNoneOfTheAbove:\n \"'None of the above' may not be selected when other answers are selected.\",\n noneOfTheAbove: \"None of the above\",\n chooseNumAnswers: ({numCorrect}) => `Choose ${numCorrect} answers:`,\n chooseAllAnswers: \"Choose all answers that apply:\",\n chooseOneAnswer: \"Choose 1 answer:\",\n choiceCheckedCorrect: ({letter}) => `(Choice ${letter}, Checked, Correct)`,\n choiceCrossedOutCorrect: ({letter}) =>\n `(Choice ${letter}, Crossed out, Correct)`,\n choiceCorrect: ({letter}) => `(Choice ${letter}, Correct)`,\n choiceCheckedIncorrect: ({letter}) =>\n `(Choice ${letter}, Checked, Incorrect)`,\n choiceCrossedOutIncorrect: ({letter}) =>\n `(Choice ${letter}, Crossed out, Incorrect)`,\n choiceIncorrect: ({letter}) => `(Choice ${letter}, Incorrect)`,\n choiceChecked: ({letter}) => `(Choice ${letter}, Checked)`,\n choiceCrossedOut: ({letter}) => `(Choice ${letter}, Crossed out)`,\n choice: ({letter}) => `(Choice ${letter})`,\n crossOut: \"Cross out\",\n crossOutOption: \"Cross out option\",\n crossOutChoice: ({letter}) => `Cross out Choice ${letter}`,\n bringBack: \"Bring back\",\n openMenuForChoice: ({letter}) => `Open menu for Choice ${letter}`,\n letters: \"A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\",\n rightArrow: \"Reaction arrow pointing to the right.\",\n dontUnderstandUnits: \"I couldn't understand those units.\",\n checkSigFigs: \"Check your significant figures.\",\n answerNumericallyIncorrect: \"That answer is numerically incorrect.\",\n checkUnits: \"Check your units.\",\n dontUnderstand: \"I don't understand that\",\n loading: \"Loading...\",\n videoTranscript: \"See video transcript\",\n somethingWrong: \"Something went wrong.\",\n videoWrapper: \"Khan Academy video wrapper\",\n mathInputTitle: \"mathematics keyboard\",\n mathInputDescription:\n \"Use keyboard/mouse to interact with math-based input fields\",\n sin: \"sin\",\n cos: \"cos\",\n tan: \"tan\",\n simulationLoadFail: \"Sorry, this simulation cannot load.\",\n simulationLocaleWarning:\n \"Sorry, this simulation isn't available in your language.\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n srPointAtCoordinates: ({num, x, y}) => `Point ${num} at ${x} comma ${y}`,\n srInteractiveElements: ({elements}) => `Interactive elements: ${elements}`,\n srNoInteractiveElements: \"No interactive elements\",\n};\n"],"names":["strings","closeKeypad","openKeypad","mathInputBox","removeHighlight","addHighlight","hintPos","errorRendering","APPROXIMATED_PI_ERROR","EXTRA_SYMBOLS_ERROR","NEEDS_TO_BE_SIMPLFIED_ERROR","MISSING_PERCENT_ERROR","MULTIPLICATION_SIGN_ERROR","WRONG_CASE_ERROR","WRONG_LETTER_ERROR","invalidSelection","ERROR_TITLE","ERROR_MESSAGE","hints","getAnotherHint","deprecatedStandin","keepTrying","tryAgain","check","correctExcited","nextQuestion","skipToTitle","current","correct","correctSelected","correctCrossedOut","incorrect","incorrectSelected","hideExplanation","explain","INVALID_MESSAGE_PREFIX","DEFAULT_INVALID_MESSAGE_1","DEFAULT_INVALID_MESSAGE_2","integerExample","properExample","simplifiedProperExample","improperExample","simplifiedImproperExample","mixedExample","decimalExample","percentExample","piExample","yourAnswer","yourAnswerLabel","addPoints","addVertices","tapMultiple","tapSingle","clickMultiple","clickSingle","choices","answers","one","other","hideAnswersToggleLabel","moves","clickTiles","turnOffLights","fillAllCells","molecularDrawing","switchDirection","circleOpen","circleFilled","numDivisions","divisions","lineRange","lineNumber","symbolPassage","symbolQuestion","lineLabel","context","message","beginningPassage","beginningFootnotes","endPassage","questionMarker","circleMarker","sentenceMarker","dragHandles","tapAddPoints","false","true","no","yes","chooseCorrectNum","notNoneOfTheAbove","noneOfTheAbove","chooseNumAnswers","chooseAllAnswers","chooseOneAnswer","choiceCheckedCorrect","choiceCrossedOutCorrect","choiceCorrect","choiceCheckedIncorrect","choiceCrossedOutIncorrect","choiceIncorrect","choiceChecked","choiceCrossedOut","choice","crossOut","crossOutOption","crossOutChoice","bringBack","openMenuForChoice","letters","rightArrow","dontUnderstandUnits","checkSigFigs","answerNumericallyIncorrect","checkUnits","dontUnderstand","loading","videoTranscript","somethingWrong","videoWrapper","mathInputTitle","mathInputDescription","sin","cos","tan","simulationLoadFail","simulationLocaleWarning","addPoint","removePoint","graphKeyboardPrompt","srPointAtCoordinates","srInteractiveElements","srNoInteractiveElements","mockStrings","_ref","pos","_ref2","error","_ref3","title","_ref4","num","_ref5","_ref6","content","_ref7","divRangeString","_ref8","_ref9","_ref10","questionSymbol","questionNumber","_ref11","sentenceSymbol","_ref12","number","_ref13","_ref14","_ref15","numCorrect","_ref16","letter","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_ref23","_ref24","_ref25","_ref26","_ref27","x","y","_ref28","elements"],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { ILogger } from "./logging/log";
|
|
2
2
|
import type { Item } from "./multi-items/item-types";
|
|
3
3
|
import type { Hint, PerseusAnswerArea, PerseusGraphType, PerseusWidget, PerseusWidgetsMap } from "./perseus-types";
|
|
4
|
-
import type { WidgetPromptJSON } from "./prompt-types";
|
|
5
4
|
import type { PerseusStrings } from "./strings";
|
|
6
5
|
import type { SizeClass } from "./util/sizing-utils";
|
|
7
6
|
import type { Rubric, UserInput, UserInputArray, UserInputMap } from "./validation.types";
|
|
7
|
+
import type { WidgetPromptJSON } from "./widget-ai-utils/prompt-types";
|
|
8
8
|
import type { KeypadAPI } from "@khanacademy/math-input";
|
|
9
9
|
import type { AnalyticsEventHandlerFn } from "@khanacademy/perseus-core";
|
|
10
10
|
import type { LinterContextProps } from "@khanacademy/perseus-linter";
|
|
@@ -403,6 +403,11 @@ export type WidgetProps<RenderProps, Rubric = Empty, TrackingExtraArgs = Empty>
|
|
|
403
403
|
problemNum: number | null | undefined;
|
|
404
404
|
apiOptions: APIOptionsWithDefaults;
|
|
405
405
|
keypadElement?: any;
|
|
406
|
+
/**
|
|
407
|
+
* questionCompleted is used to signal that a learner has attempted
|
|
408
|
+
* the exercise. This is used when widgets want to show things like
|
|
409
|
+
* rationale or partial correctness.
|
|
410
|
+
*/
|
|
406
411
|
questionCompleted?: boolean;
|
|
407
412
|
onFocus: (blurPath: FocusPath) => void;
|
|
408
413
|
onBlur: (blurPath: FocusPath) => void;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PerseusRenderer, PerseusWidgetsMap, UserInputMap } from "@khanacademy/perseus";
|
|
2
|
+
type WidgetRenameMap = {
|
|
3
|
+
[oldKey: string]: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const inputNumberToNumericInput: (json: PerseusRenderer) => PerseusRenderer;
|
|
6
|
+
export declare const convertInputNumberWidgetOptions: (json: PerseusRenderer, renameMap: WidgetRenameMap) => PerseusWidgetsMap;
|
|
7
|
+
export declare const getInputNumberRenameMap: (json: PerseusRenderer) => WidgetRenameMap;
|
|
8
|
+
export declare const convertUserInputNumberData: (userInputMap: UserInputMap) => UserInputMap;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PerseusRenderer, UserInputMap } from "@khanacademy/perseus";
|
|
2
|
+
export declare const convertDeprecatedWidgets: (json: PerseusRenderer) => PerseusRenderer;
|
|
3
|
+
export declare const conversionRequired: (json: PerseusRenderer) => boolean;
|
|
4
|
+
export declare const convertUserInputData: (userInputMap: UserInputMap) => UserInputMap;
|
package/dist/widget-ai-utils/graded-group-set/{prompt-utils.d.ts → graded-group-set-ai-utils.d.ts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type gradedGroupSet from "../../widgets/graded-group-set";
|
|
2
|
-
import type { GradedGroupPromptJSON } from "../graded-group/
|
|
2
|
+
import type { GradedGroupPromptJSON } from "../graded-group/graded-group-ai-utils";
|
|
3
3
|
import type React from "react";
|
|
4
4
|
export type GradedGroupSetPromptJSON = {
|
|
5
5
|
type: "graded-group-set";
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { CategorizerPromptJSON } from "./categorizer/categorizer-ai-utils";
|
|
2
|
+
import type { DefinitionPromptJSON } from "./definition/definition-ai-utils";
|
|
3
|
+
import type { DropdownPromptJSON } from "./dropdown/dropdown-ai-utils";
|
|
4
|
+
import type { ExplanationPromptJSON } from "./explanation/explanation-ai-utils";
|
|
5
|
+
import type { ExpressionPromptJSON } from "./expression/expression-ai-utils";
|
|
6
|
+
import type { GradedGroupPromptJSON } from "./graded-group/graded-group-ai-utils";
|
|
7
|
+
import type { GradedGroupSetPromptJSON } from "./graded-group-set/graded-group-set-ai-utils";
|
|
8
|
+
import type { GrapherPromptJSON } from "./grapher/grapher-ai-utils";
|
|
9
|
+
import type { GroupPromptJSON } from "./group/group-ai-utils";
|
|
10
|
+
import type { ImagePromptJSON } from "./image/image-ai-utils";
|
|
11
|
+
import type { InputNumberPromptJSON } from "./input-number/input-number-ai-utils";
|
|
12
|
+
import type { LabelImagePromptJSON } from "./label-image/label-image-ai-utils";
|
|
13
|
+
import type { MatcherPromptJSON } from "./matcher/matcher-ai-utils";
|
|
14
|
+
import type { MatrixPromptJSON } from "./matrix/matrix-ai-utils";
|
|
15
|
+
import type { NumberLinePromptJSON } from "./number-line/number-line-ai-utils";
|
|
16
|
+
import type { NumericInputPromptJSON } from "./numeric-input/prompt-utils";
|
|
17
|
+
import type { OrdererPromptJSON } from "./orderer/orderer-ai-utils";
|
|
18
|
+
import type { PassagePromptJSON } from "./passage/passage-ai-utils";
|
|
19
|
+
import type { PassageRefPromptJSON } from "./passage-ref/passage-ref-ai-utils";
|
|
20
|
+
import type { RadioPromptJSON } from "./radio/radio-ai-utils";
|
|
21
|
+
import type { SorterPromptJSON } from "./sorter/sorter-ai-utils";
|
|
22
|
+
import type { UnsupportedWidgetPromptJSON } from "./unsupported-widget";
|
|
23
|
+
export type UnsupportedWidget = "cs-program" | "iframe" | "interaction" | "interactive-graph-unsupported" | "measurer" | "phet-simulation" | "plotter" | "python-program" | "video";
|
|
24
|
+
export type WidgetPromptJSON = CategorizerPromptJSON | DefinitionPromptJSON | DropdownPromptJSON | ExplanationPromptJSON | ExpressionPromptJSON | GradedGroupPromptJSON | GradedGroupSetPromptJSON | GrapherPromptJSON | GroupPromptJSON | ImagePromptJSON | InputNumberPromptJSON | LabelImagePromptJSON | MatcherPromptJSON | MatrixPromptJSON | NumberLinePromptJSON | NumericInputPromptJSON | OrdererPromptJSON | PassagePromptJSON | PassageRefPromptJSON | RadioPromptJSON | SorterPromptJSON | UnsupportedWidgetPromptJSON;
|
|
25
|
+
export type RendererPromptJSON = {
|
|
26
|
+
content: string;
|
|
27
|
+
widgets: {
|
|
28
|
+
[widgetId: string]: WidgetPromptJSON;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export interface GetPromptJSONInterface {
|
|
32
|
+
getPromptJSON(): RendererPromptJSON;
|
|
33
|
+
}
|
|
@@ -4,7 +4,7 @@ import scoreCategorizer from "./score-categorizer";
|
|
|
4
4
|
import type { PerseusCategorizerWidgetOptions } from "../../perseus-types";
|
|
5
5
|
import type { Widget, WidgetProps } from "../../types";
|
|
6
6
|
import type { PerseusCategorizerRubric, PerseusCategorizerUserInput } from "../../validation.types";
|
|
7
|
-
import type { CategorizerPromptJSON } from "../../widget-ai-utils/categorizer/
|
|
7
|
+
import type { CategorizerPromptJSON } from "../../widget-ai-utils/categorizer/categorizer-ai-utils";
|
|
8
8
|
type Props = WidgetProps<RenderProps, PerseusCategorizerRubric> & {
|
|
9
9
|
values: ReadonlyArray<string>;
|
|
10
10
|
};
|
|
@@ -2,7 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
import { PerseusI18nContext } from "../../components/i18n-context";
|
|
3
3
|
import type { PerseusRenderer, PerseusDefinitionWidgetOptions } from "../../perseus-types";
|
|
4
4
|
import type { Widget, WidgetProps } from "../../types";
|
|
5
|
-
import type { DefinitionPromptJSON } from "../../widget-ai-utils/definition/
|
|
5
|
+
import type { DefinitionPromptJSON } from "../../widget-ai-utils/definition/definition-ai-utils";
|
|
6
6
|
type RenderProps = PerseusDefinitionWidgetOptions;
|
|
7
7
|
type DefinitionProps = WidgetProps<RenderProps> & {
|
|
8
8
|
widgets: PerseusRenderer["widgets"];
|
|
@@ -3,7 +3,7 @@ import scoreDropdown from "./score-dropdown";
|
|
|
3
3
|
import type { PerseusDropdownWidgetOptions } from "../../perseus-types";
|
|
4
4
|
import type { Widget, WidgetProps } from "../../types";
|
|
5
5
|
import type { PerseusDropdownRubric, PerseusDropdownUserInput } from "../../validation.types";
|
|
6
|
-
import type { DropdownPromptJSON } from "../../widget-ai-utils/dropdown/
|
|
6
|
+
import type { DropdownPromptJSON } from "../../widget-ai-utils/dropdown/dropdown-ai-utils";
|
|
7
7
|
type Props = WidgetProps<RenderProps, PerseusDropdownRubric> & {
|
|
8
8
|
selected: number;
|
|
9
9
|
};
|
|
@@ -2,7 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
import { PerseusI18nContext } from "../../components/i18n-context";
|
|
3
3
|
import type { PerseusExplanationWidgetOptions } from "../../perseus-types";
|
|
4
4
|
import type { Widget, WidgetProps } from "../../types";
|
|
5
|
-
import type { ExplanationPromptJSON } from "../../widget-ai-utils/explanation/
|
|
5
|
+
import type { ExplanationPromptJSON } from "../../widget-ai-utils/explanation/explanation-ai-utils";
|
|
6
6
|
type RenderProps = PerseusExplanationWidgetOptions;
|
|
7
7
|
type Props = WidgetProps<RenderProps>;
|
|
8
8
|
type DefaultProps = {
|
|
@@ -5,7 +5,7 @@ import type { DependenciesContext } from "../../dependencies";
|
|
|
5
5
|
import type { PerseusExpressionWidgetOptions } from "../../perseus-types";
|
|
6
6
|
import type { FocusPath, Widget, WidgetProps } from "../../types";
|
|
7
7
|
import type { PerseusExpressionRubric, PerseusExpressionUserInput } from "../../validation.types";
|
|
8
|
-
import type { ExpressionPromptJSON } from "../../widget-ai-utils/expression/
|
|
8
|
+
import type { ExpressionPromptJSON } from "../../widget-ai-utils/expression/expression-ai-utils";
|
|
9
9
|
import type { Keys as Key, KeypadConfiguration } from "@khanacademy/math-input";
|
|
10
10
|
type InputPath = ReadonlyArray<string>;
|
|
11
11
|
type RenderProps = {
|
|
@@ -272,7 +272,7 @@ declare const _default: {
|
|
|
272
272
|
visibleLabel: string | undefined;
|
|
273
273
|
ariaLabel: string | undefined;
|
|
274
274
|
value: string;
|
|
275
|
-
}, "ariaLabel" | "static" | "onChange" | "keypadElement" | "containerSizeClass" | "widgetId" | "problemNum" | "questionCompleted" | "findWidgets" | "trackInteraction" | "
|
|
275
|
+
}, "ariaLabel" | "static" | "onChange" | "keypadElement" | "containerSizeClass" | "widgetId" | "problemNum" | "questionCompleted" | "findWidgets" | "trackInteraction" | "buttonsVisible" | keyof import("../../types").PerseusDependenciesV2 | "visibleLabel" | "keypadConfiguration" | "alignment" | "reviewModeRubric" | "reviewMode" | "isLastUsedWidget"> & {
|
|
276
276
|
value?: string | undefined;
|
|
277
277
|
onFocus?: ((blurPath: FocusPath) => void) | undefined;
|
|
278
278
|
onBlur?: ((blurPath: FocusPath) => void) | undefined;
|
|
@@ -352,10 +352,10 @@ declare const _default: {
|
|
|
352
352
|
setDrawingAreaAvailable: (arg1: boolean) => unknown;
|
|
353
353
|
showAlignmentOptions: NonNullable<boolean | undefined>;
|
|
354
354
|
}> | undefined;
|
|
355
|
-
linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
|
|
356
355
|
buttonSets?: import("../../perseus-types").LegacyButtonSets | undefined;
|
|
357
356
|
functions?: readonly string[] | undefined;
|
|
358
357
|
times?: boolean | undefined;
|
|
358
|
+
linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
|
|
359
359
|
} & {}, keyof import("../../types").PerseusDependenciesV2> & React.RefAttributes<Expression>>;
|
|
360
360
|
transform: (widgetOptions: PerseusExpressionWidgetOptions) => RenderProps;
|
|
361
361
|
version: {
|
|
@@ -5,7 +5,7 @@ import type { ANSWER_BAR_STATES } from "./graded-group-answer-bar";
|
|
|
5
5
|
import type { PerseusGradedGroupWidgetOptions } from "../../perseus-types";
|
|
6
6
|
import type { FocusPath, TrackingGradedGroupExtraArguments, Widget, WidgetProps } from "../../types";
|
|
7
7
|
import type { PerseusGradedGroupRubric } from "../../validation.types";
|
|
8
|
-
import type { GradedGroupPromptJSON } from "../../widget-ai-utils/graded-group/
|
|
8
|
+
import type { GradedGroupPromptJSON } from "../../widget-ai-utils/graded-group/graded-group-ai-utils";
|
|
9
9
|
declare const GRADING_STATUSES: {
|
|
10
10
|
readonly ungraded: "ungraded";
|
|
11
11
|
readonly correct: "correct";
|
|
@@ -4,7 +4,7 @@ import { GradedGroup } from "../graded-group/graded-group";
|
|
|
4
4
|
import type { PerseusGradedGroupSetWidgetOptions } from "../../perseus-types";
|
|
5
5
|
import type { FocusPath, Widget, WidgetProps } from "../../types";
|
|
6
6
|
import type { PerseusGradedGroupSetRubric } from "../../validation.types";
|
|
7
|
-
import type { GradedGroupSetPromptJSON } from "../../widget-ai-utils/graded-group-set/
|
|
7
|
+
import type { GradedGroupSetPromptJSON } from "../../widget-ai-utils/graded-group-set/graded-group-set-ai-utils";
|
|
8
8
|
type RenderProps = PerseusGradedGroupSetWidgetOptions;
|
|
9
9
|
type Props = Changeable.ChangeableProps & WidgetProps<RenderProps, PerseusGradedGroupSetRubric> & {
|
|
10
10
|
trackInteraction: () => void;
|
|
@@ -6,7 +6,7 @@ import type { PerseusGrapherWidgetOptions } from "../../perseus-types";
|
|
|
6
6
|
import type { Widget, WidgetProps } from "../../types";
|
|
7
7
|
import type { GridDimensions } from "../../util";
|
|
8
8
|
import type { PerseusGrapherRubric, PerseusGrapherUserInput } from "../../validation.types";
|
|
9
|
-
import type { GrapherPromptJSON } from "../../widget-ai-utils/grapher/
|
|
9
|
+
import type { GrapherPromptJSON } from "../../widget-ai-utils/grapher/grapher-ai-utils";
|
|
10
10
|
import type { PropsFor } from "@khanacademy/wonder-blocks-core";
|
|
11
11
|
type RenderProps = {
|
|
12
12
|
availableTypes: PerseusGrapherWidgetOptions["availableTypes"];
|
|
@@ -4,7 +4,7 @@ import Renderer from "../../renderer";
|
|
|
4
4
|
import type { PerseusGroupWidgetOptions } from "../../perseus-types";
|
|
5
5
|
import type { ChangeFn, FocusPath, Widget, WidgetProps } from "../../types";
|
|
6
6
|
import type { PerseusGroupRubric, UserInputArray } from "../../validation.types";
|
|
7
|
-
import type { GroupPromptJSON } from "../../widget-ai-utils/group/
|
|
7
|
+
import type { GroupPromptJSON } from "../../widget-ai-utils/group/group-ai-utils";
|
|
8
8
|
type RenderProps = PerseusGroupWidgetOptions;
|
|
9
9
|
type Props = WidgetProps<RenderProps, PerseusGroupRubric>;
|
|
10
10
|
type DefaultProps = {
|
|
@@ -2,7 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
import { PerseusI18nContext } from "../../components/i18n-context";
|
|
3
3
|
import type { PerseusImageWidgetOptions } from "../../perseus-types";
|
|
4
4
|
import type { ChangeFn, WidgetProps, Widget } from "../../types";
|
|
5
|
-
import type { ImagePromptJSON } from "../../widget-ai-utils/image/
|
|
5
|
+
import type { ImagePromptJSON } from "../../widget-ai-utils/image/image-ai-utils";
|
|
6
6
|
type RenderProps = PerseusImageWidgetOptions;
|
|
7
7
|
type ExternalProps = WidgetProps<RenderProps>;
|
|
8
8
|
type Props = ExternalProps & {
|
|
@@ -5,7 +5,7 @@ import type { PerseusInputNumberWidgetOptions } from "../../perseus-types";
|
|
|
5
5
|
import type { PerseusStrings } from "../../strings";
|
|
6
6
|
import type { Path, Widget, WidgetProps } from "../../types";
|
|
7
7
|
import type { PerseusInputNumberRubric, PerseusInputNumberUserInput } from "../../validation.types";
|
|
8
|
-
import type { InputNumberPromptJSON } from "../../widget-ai-utils/input-number/
|
|
8
|
+
import type { InputNumberPromptJSON } from "../../widget-ai-utils/input-number/input-number-ai-utils";
|
|
9
9
|
type RenderProps = {
|
|
10
10
|
simplify: PerseusInputNumberWidgetOptions["simplify"];
|
|
11
11
|
size: PerseusInputNumberWidgetOptions["size"];
|
|
@@ -8,7 +8,7 @@ import type { PerseusGraphType, PerseusGraphTypeAngle, PerseusGraphTypePoint, Pe
|
|
|
8
8
|
import type { ChangeHandler, WidgetProps } from "../types";
|
|
9
9
|
import type { QuadraticCoefficient, Range, SineCoefficient } from "../util/geometry";
|
|
10
10
|
import type { PerseusInteractiveGraphRubric, PerseusInteractiveGraphUserInput } from "../validation.types";
|
|
11
|
-
import type { InteractiveGraphPromptJSON } from "../widget-ai-utils/interactive-graph/
|
|
11
|
+
import type { InteractiveGraphPromptJSON } from "../widget-ai-utils/interactive-graph/interactive-graph-ai-utils";
|
|
12
12
|
import type { UnsupportedWidgetPromptJSON } from "../widget-ai-utils/unsupported-widget";
|
|
13
13
|
type RenderProps = PerseusInteractiveGraphWidgetOptions;
|
|
14
14
|
type Props = WidgetProps<RenderProps, PerseusInteractiveGraphRubric>;
|