@khanacademy/perseus 49.1.7 → 49.2.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.
Files changed (30) hide show
  1. package/dist/components/math-input.d.ts +2 -1
  2. package/dist/es/index.css +6 -0
  3. package/dist/es/index.js +277 -147
  4. package/dist/es/index.js.map +1 -1
  5. package/dist/es/strings.js +16 -12
  6. package/dist/es/strings.js.map +1 -1
  7. package/dist/index.css +6 -0
  8. package/dist/index.js +277 -138
  9. package/dist/index.js.map +1 -1
  10. package/dist/perseus-types.d.ts +12 -9
  11. package/dist/server-item-renderer.d.ts +1 -1
  12. package/dist/strings.d.ts +6 -5
  13. package/dist/strings.js +16 -12
  14. package/dist/strings.js.map +1 -1
  15. package/dist/types.d.ts +2 -5
  16. package/dist/util/parse-perseus-json/general-purpose-parsers/convert.d.ts +2 -0
  17. package/dist/util/parse-perseus-json/general-purpose-parsers/discriminated-union.d.ts +21 -0
  18. package/dist/util/parse-perseus-json/general-purpose-parsers/discriminated-union.typetest.d.ts +1 -0
  19. package/dist/util/parse-perseus-json/perseus-parsers/versioned-widget-options.d.ts +36 -0
  20. package/dist/widgets/expression/expression.d.ts +3 -3
  21. package/dist/widgets/interactive-graphs/graph-locked-labels-layer.d.ts +1 -3
  22. package/dist/widgets/interactive-graphs/graph-locked-layer.d.ts +0 -2
  23. package/dist/widgets/interactive-graphs/locked-figures/locked-ellipse.d.ts +1 -5
  24. package/dist/widgets/interactive-graphs/locked-figures/locked-function.d.ts +1 -5
  25. package/dist/widgets/interactive-graphs/locked-figures/locked-line.d.ts +0 -2
  26. package/dist/widgets/interactive-graphs/locked-figures/locked-point.d.ts +1 -5
  27. package/dist/widgets/interactive-graphs/locked-figures/locked-polygon.d.ts +1 -5
  28. package/dist/widgets/interactive-graphs/locked-figures/locked-vector.d.ts +1 -5
  29. package/dist/widgets/passage-ref/passage-ref.d.ts +7 -3
  30. package/package.json +2 -2
@@ -60,7 +60,7 @@ export type ShowSolutions = "all" | "selected" | "none";
60
60
  * "new-awesomeness": MyAwesomeNewWidget;
61
61
  *
62
62
  * // A deprecated widget
63
- * "super-old-widget": AutoCorrectWidget;
63
+ * "super-old-widget": DeprecatedStandinWidget;
64
64
  * }
65
65
  * }
66
66
  *
@@ -110,7 +110,10 @@ export interface PerseusWidgetTypes {
110
110
  sorter: SorterWidget;
111
111
  table: TableWidget;
112
112
  video: VideoWidget;
113
- sequence: AutoCorrectWidget;
113
+ "lights-puzzle": DeprecatedStandinWidget;
114
+ sequence: DeprecatedStandinWidget;
115
+ simulator: DeprecatedStandinWidget;
116
+ transformer: DeprecatedStandinWidget;
114
117
  }
115
118
  /**
116
119
  * A map of widget IDs to widget options. This is most often used as the type
@@ -239,8 +242,8 @@ export type InputNumberWidget = WidgetOptions<'input-number', PerseusInputNumber
239
242
  export type MoleculeRendererWidget = WidgetOptions<'molecule-renderer', PerseusMoleculeRendererWidgetOptions>;
240
243
  export type RefTargetWidget = WidgetOptions<'passage-ref-target', PerseusPassageRefTargetWidgetOptions>;
241
244
  export type VideoWidget = WidgetOptions<'video', PerseusVideoWidgetOptions>;
242
- export type AutoCorrectWidget = WidgetOptions<'deprecated-standin', object>;
243
- export type PerseusWidget = CategorizerWidget | CSProgramWidget | DefinitionWidget | DropdownWidget | ExplanationWidget | ExpressionWidget | GradedGroupSetWidget | GradedGroupWidget | GrapherWidget | GroupWidget | IFrameWidget | ImageWidget | InputNumberWidget | InteractionWidget | InteractiveGraphWidget | LabelImageWidget | MatcherWidget | MatrixWidget | MeasurerWidget | MoleculeRendererWidget | NumberLineWidget | NumericInputWidget | OrdererWidget | PassageRefWidget | PassageWidget | PhetSimulationWidget | PlotterWidget | PythonProgramWidget | RadioWidget | RefTargetWidget | SorterWidget | TableWidget | VideoWidget | AutoCorrectWidget;
245
+ export type DeprecatedStandinWidget = WidgetOptions<'deprecated-standin', object>;
246
+ export type PerseusWidget = CategorizerWidget | CSProgramWidget | DefinitionWidget | DropdownWidget | ExplanationWidget | ExpressionWidget | GradedGroupSetWidget | GradedGroupWidget | GrapherWidget | GroupWidget | IFrameWidget | ImageWidget | InputNumberWidget | InteractionWidget | InteractiveGraphWidget | LabelImageWidget | MatcherWidget | MatrixWidget | MeasurerWidget | MoleculeRendererWidget | NumberLineWidget | NumericInputWidget | OrdererWidget | PassageRefWidget | PassageWidget | PhetSimulationWidget | PlotterWidget | PythonProgramWidget | RadioWidget | RefTargetWidget | SorterWidget | TableWidget | VideoWidget | DeprecatedStandinWidget;
244
247
  /**
245
248
  * A background image applied to various widgets.
246
249
  */
@@ -290,7 +293,7 @@ export type PerseusExplanationWidgetOptions = {
290
293
  widgets: PerseusWidgetsMap;
291
294
  static: boolean;
292
295
  };
293
- export type LegacyButtonSets = ReadonlyArray<"basic" | "basic+div" | "trig" | "prealgebra" | "logarithms" | "basic relations" | "advanced relations">;
296
+ export type LegacyButtonSets = ReadonlyArray<"basic" | "basic+div" | "trig" | "prealgebra" | "logarithms" | "basic relations" | "advanced relations" | "scientific">;
294
297
  export type PerseusExpressionWidgetOptions = {
295
298
  answerForms: ReadonlyArray<PerseusExpressionAnswerForm>;
296
299
  buttonSets: LegacyButtonSets;
@@ -566,7 +569,7 @@ export type PerseusGraphTypePolygon = {
566
569
  showAngles?: boolean;
567
570
  showSides?: boolean;
568
571
  snapTo?: "grid" | "angles" | "sides";
569
- match?: "similar" | "congruent" | "approx";
572
+ match?: "similar" | "congruent" | "approx" | "exact";
570
573
  coords?: ReadonlyArray<Coord> | null;
571
574
  startCoords?: ReadonlyArray<Coord>;
572
575
  } & PerseusGraphTypeCommon;
@@ -699,7 +702,7 @@ export type PerseusNumericInputWidgetOptions = {
699
702
  };
700
703
  export type PerseusNumericInputAnswer = {
701
704
  message: string;
702
- value?: number;
705
+ value?: number | null;
703
706
  status: string;
704
707
  answerForms?: ReadonlyArray<MathFormat>;
705
708
  strict: boolean;
@@ -717,7 +720,7 @@ export type PerseusNumberLineWidgetOptions = {
717
720
  snapDivisions: number;
718
721
  tickStep: number | null | undefined;
719
722
  correctRel: string | null | undefined;
720
- correctX: number;
723
+ correctX: number | null;
721
724
  initialX: number | null | undefined;
722
725
  showTooltip?: boolean;
723
726
  static: boolean;
@@ -739,7 +742,7 @@ export type PerseusPassageWidgetOptions = {
739
742
  export type PerseusPassageRefWidgetOptions = {
740
743
  passageNumber: number;
741
744
  referenceNumber: number;
742
- summaryText: string;
745
+ summaryText?: string;
743
746
  };
744
747
  export declare const plotterPlotTypes: readonly ["bar", "line", "pic", "histogram", "dotplot"];
745
748
  export type PlotType = (typeof plotterPlotTypes)[number];
@@ -155,7 +155,7 @@ declare const ref: React.ForwardRefExoticComponent<Omit<Pick<SharedRendererProps
155
155
  crossOutEnabled?: boolean;
156
156
  editorChangeDelay?: number;
157
157
  flags?: {
158
- mafs?: false | ({ [Key in typeof import("./types").MafsGraphTypeFlags[number]]?: boolean; } & { [Key in typeof import("./types").InteractiveGraphLockedFeaturesFlags[number]]?: boolean; });
158
+ mafs?: false | { [Key in typeof import("./types").MafsGraphTypeFlags[number]]?: boolean; };
159
159
  };
160
160
  onWidgetStartProps?: (widgets: import("./perseus-types").PerseusWidgetsMap) => void;
161
161
  }> | undefined;
package/dist/strings.d.ts CHANGED
@@ -254,19 +254,20 @@ export type PerseusStrings = {
254
254
  angleMeasure: string;
255
255
  }) => string;
256
256
  srAngleGraphAriaLabel: string;
257
- srAngleGraphAriaDescription: ({ angleMeasure, vertexX, vertexY, isX, isY, tsX, tsY, }: {
257
+ srAngleGraphAriaDescription: ({ angleMeasure, vertexX, vertexY, startingSideX, startingSideY, endingSideX, endingSideY, }: {
258
258
  angleMeasure: string;
259
259
  vertexX: string;
260
260
  vertexY: string;
261
- isX: string;
262
- isY: string;
263
- tsX: string;
264
- tsY: string;
261
+ startingSideX: string;
262
+ startingSideY: string;
263
+ endingSideX: string;
264
+ endingSideY: string;
265
265
  }) => string;
266
266
  };
267
267
  /**
268
268
  * Untranslated strings used in Perseus. To be used by an external
269
269
  * translator to produce translated strings, passed in as `PerseusStrings`.
270
+ * !! Note: Ensure that all escape sequences are double-escaped. (e.g. `\\text` -> `\\\\text`)
270
271
  */
271
272
  export declare const strings: {
272
273
  [key in keyof PerseusStrings]: string | {
package/dist/strings.js CHANGED
@@ -9,6 +9,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
  /**
10
10
  * Untranslated strings used in Perseus. To be used by an external
11
11
  * translator to produce translated strings, passed in as `PerseusStrings`.
12
+ * !! Note: Ensure that all escape sequences are double-escaped. (e.g. `\\text` -> `\\\\text`)
12
13
  */
13
14
  const strings = {
14
15
  closeKeypad: "close math keypad",
@@ -18,10 +19,10 @@ const strings = {
18
19
  addHighlight: "Add highlight",
19
20
  hintPos: "Hint #%(pos)s",
20
21
  errorRendering: "Error rendering: %(error)s",
21
- APPROXIMATED_PI_ERROR: "Your answer is close, but you may " + "have approximated pi. Enter your " + "answer as a multiple of pi, like " + "<code>12\\ \\text{pi}</code> or " + "<code>2/3\\ \\text{pi}</code>",
22
+ APPROXIMATED_PI_ERROR: "Your answer is close, but you may " + "have approximated pi. Enter your " + "answer as a multiple of pi, like " + "12 pi or " + "2/3 pi",
22
23
  EXTRA_SYMBOLS_ERROR: "We could not understand your " + "answer. Please check your answer for extra " + "text or symbols.",
23
24
  NEEDS_TO_BE_SIMPLFIED_ERROR: "Your answer is almost correct, " + "but it needs to be simplified.",
24
- MISSING_PERCENT_ERROR: "Your answer is almost correct, " + "but it is missing a " + "<code>\\%</code> at the end.",
25
+ MISSING_PERCENT_ERROR: "Your answer is almost correct, " + "but it is missing a " + "<code>\\\\%</code> at the end.",
25
26
  MULTIPLICATION_SIGN_ERROR: "I'm a computer. I only understand " + "multiplication if you use an asterisk " + "(*) as the multiplication sign.",
26
27
  WRONG_CASE_ERROR: "Your answer includes use of a variable with the wrong case.",
27
28
  WRONG_LETTER_ERROR: "Your answer includes a wrong variable letter.",
@@ -53,10 +54,10 @@ const strings = {
53
54
  simplifiedProperExample: "a *simplified proper* fraction, like $3/5$",
54
55
  improperExample: "an *improper* fraction, like $10/7$ or $14/8$",
55
56
  simplifiedImproperExample: "a *simplified improper* fraction, like $7/4$",
56
- mixedExample: "a mixed number, like $1\\ 3/4$",
57
+ mixedExample: "a mixed number, like $1\\\\ 3/4$",
57
58
  decimalExample: "an *exact* decimal, like $0.75$",
58
- percentExample: "a percent, like $12.34\\%$",
59
- piExample: "a multiple of pi, like $12\\ \\text{pi}$ or $2/3\\ \\text{pi}$",
59
+ percentExample: "a percent, like $12.34\\\\%$",
60
+ piExample: "a multiple of pi, like $12$ pi or $2/3$ pi",
60
61
  yourAnswer: "**Your answer should be** ",
61
62
  yourAnswerLabel: "Your answer:",
62
63
  addPoints: "Click to add points",
@@ -234,10 +235,13 @@ const strings = {
234
235
  context: "Screenreader-accessible description of a vertex on an angle graph with an angle measure",
235
236
  message: "Point 2, vertex at %(x)s comma %(y)s. Angle %(angleMeasure)s degrees"
236
237
  },
237
- srAngleGraphAriaLabel: "An angle on a coordinate plane.",
238
+ srAngleGraphAriaLabel: {
239
+ context: "Screenreader-accessible label of an angle graph on a coordinate plane",
240
+ message: "An angle on a coordinate plane."
241
+ },
238
242
  srAngleGraphAriaDescription: {
239
243
  context: "Screenreader-only description of an angle on a coordinate plane.",
240
- message: "The angle measure is %(angleMeasure)s degrees with a vertex at %(vertexX)s comma %(vertexY)s, a point on the initial side at %(isX)s comma %(isY)s and a point on the terminal side at %(tsX)s comma %(tsY)s"
244
+ message: "The angle measure is %(angleMeasure)s degrees with a vertex at %(vertexX)s comma %(vertexY)s, a point on the starting side at %(startingSideX)s comma %(startingSideY)s and a point on the ending side at %(endingSideX)s comma %(endingSideY)s"
241
245
  }
242
246
  // The above strings are used for interactive graph SR descriptions.
243
247
  };
@@ -621,12 +625,12 @@ const mockStrings = {
621
625
  angleMeasure,
622
626
  vertexX,
623
627
  vertexY,
624
- isX,
625
- isY,
626
- tsX,
627
- tsY
628
+ startingSideX,
629
+ startingSideY,
630
+ endingSideX,
631
+ endingSideY
628
632
  } = _ref40;
629
- return `The angle measure is ${angleMeasure} degrees with a vertex at ${vertexX} comma ${vertexY}, a point on the initial side at ${isX} comma ${isY} and a point on the terminal side at ${tsX} comma ${tsY}.`;
633
+ return `The angle measure is ${angleMeasure} degrees with a vertex at ${vertexX} comma ${vertexY}, a point on the starting side at ${startingSideX} comma ${startingSideY} and a point on the ending side at ${endingSideX} comma ${endingSideY}.`;
630
634
  }
631
635
  // The above strings are used for interactive graph SR descriptions.
632
636
  };
@@ -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 selectAnAnswer: string;\n // The following strings are used for interactive graph SR descriptions.\n addPoint: string;\n removePoint: string;\n graphKeyboardPrompt: string;\n closePolygon: string;\n openPolygon: 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 srCircleGraph: string;\n srCircleShape: ({\n centerX,\n centerY,\n }: {\n centerX: string;\n centerY: string;\n }) => string;\n srCircleRadiusPoint: ({\n radiusPointX,\n radiusPointY,\n }: {\n radiusPointX: string;\n radiusPointY: string;\n }) => string;\n srCircleRadius: ({radius}: {radius: number}) => string;\n srCircleOuterPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n point3X,\n point3Y,\n point4X,\n point4Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n point3X: string;\n point3Y: string;\n point4X: string;\n point4Y: string;\n }) => string;\n srLinearGraph: string;\n srLinearGraphPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n }) => string;\n srLinearGraphSlopeIncreasing: string;\n srLinearGraphSlopeDecreasing: string;\n srLinearGraphSlopeHorizontal: string;\n srLinearGraphSlopeVertical: string;\n srLinearGraphXOnlyIntercept: ({xIntercept}: {xIntercept: string}) => string;\n srLinearGraphYOnlyIntercept: ({yIntercept}: {yIntercept: string}) => string;\n srLinearGraphBothIntercepts: ({\n xIntercept,\n yIntercept,\n }: {\n xIntercept: string;\n yIntercept: string;\n }) => string;\n srLinearGraphOriginIntercept: string;\n srLinearGrabHandle: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n }) => string;\n srAngleSideAtCoordinates: ({\n point,\n side,\n x,\n y,\n }: {\n point: number;\n side: string;\n x: string;\n y: string;\n }) => string;\n srAngleVertexAtCoordinatesWithAngleMeasure: ({\n x,\n y,\n angleMeasure,\n }: {\n x: string;\n y: string;\n angleMeasure: string;\n }) => string;\n srAngleGraphAriaLabel: string;\n srAngleGraphAriaDescription: ({\n angleMeasure,\n vertexX,\n vertexY,\n isX,\n isY,\n tsX,\n tsY,\n }: {\n angleMeasure: string;\n vertexX: string;\n vertexY: string;\n isX: string;\n isY: string;\n tsX: string;\n tsY: string;\n }) => string;\n // The above strings are used for interactive graph SR descriptions.\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 selectAnAnswer: \"Select an answer\",\n\n // The following strings are used for interactive graph SR descriptions.\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n closePolygon: \"Close shape\",\n openPolygon: \"Re-open shape\",\n srInteractiveElements: \"Interactive elements: %(elements)s\",\n srNoInteractiveElements: \"No interactive elements\",\n // TODO(LEMS-2660): The following strings are ones that will need\n // translation tickets after all interactive graph SR strings have\n // been finalized. Remove this comment after the tickets have been\n // created.\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 srCircleGraph: {\n context: \"Aria label for the circle graph as a whole.\",\n message: \"A circle on a coordinate plane.\",\n },\n srCircleShape: {\n context:\n \"Aria label for the interactive circle shape in a circle graph.\",\n message:\n \"Circle. The center point is at %(centerX)s comma %(centerY)s.\",\n },\n srCircleRadiusPoint: {\n context:\n \"Aria label for the interactive point that sits on the edge of the circle in a circle graph. Moving this point updates the radius of the circle\",\n message: \"Radius point at %(radiusPointX)s comma %(radiusPointY)s.\",\n },\n srCircleRadius: {\n context:\n \"Screenreader-only description of the radius of a circle in a circle graph.\",\n message: \"Circle radius is %(radius)s.\",\n },\n srCircleOuterPoints: {\n context:\n \"Screenreader-only description of key points on a circle in a circle graph.\",\n message:\n \"Points on the circle at %(point1X)s comma %(point1Y)s, %(point2X)s comma %(point2Y)s, %(point3X)s comma %(point3Y)s, %(point4X)s comma %(point4Y)s.\",\n },\n srLinearGraph: {\n context: \"Aria label for the linear graph as a whole.\",\n message: \"A line on a coordinate plane.\",\n },\n srLinearGraphPoints: {\n context:\n \"Additional information about the points for the linear graph as a whole.\",\n message:\n \"The line has two points, point 1 at %(point1X)s comma %(point1Y)s and point 2 at %(point2X)s comma %(point2Y)s.\",\n },\n srLinearGraphSlopeIncreasing: {\n context:\n \"Screenreader-only description of a line's decreasing slope on a linear graph.\",\n message: \"Its slope increases from left to right.\",\n },\n srLinearGraphSlopeDecreasing: {\n context:\n \"Screenreader-only description of a line's increasing slope on a linear graph.\",\n message: \"Its slope decreases from left to right.\",\n },\n srLinearGraphSlopeHorizontal: {\n context:\n \"Screenreader-only description of a line's horizontal slope on a linear graph.\",\n message: \"Its slope is zero.\",\n },\n srLinearGraphSlopeVertical: {\n context:\n \"Screenreader-only description of a line's vertical slope on a linear graph.\",\n message: \"Its slope is undefined.\",\n },\n srLinearGraphXOnlyIntercept: {\n context:\n \"Screenreader-only description of a line's x-intercept on a linear graph when it only has an x intercept.\",\n message: \"The line crosses the X-axis at %(xIntercept)s comma 0.\",\n },\n srLinearGraphYOnlyIntercept: {\n context:\n \"Screenreader-only description of a line's y-intercept on a linear graph when it only has a y intercept.\",\n message: \"The line crosses the Y-axis at 0 comma %(yIntercept)s.\",\n },\n srLinearGraphBothIntercepts: {\n context:\n \"Screenreader-only description of a line's x and y intercepts on a linear graph when both intercepts are present.\",\n message:\n \"The line crosses the X-axis at %(xIntercept)s comma 0 and the Y-axis at 0 comma %(yIntercept)s.\",\n },\n srLinearGraphOriginIntercept: {\n context:\n \"Screenreader-only description of the line's intercept when the intercept is the graph's origin.\",\n message: \"The line crosses the x and y axes at the graph's origin.\",\n },\n srLinearGrabHandle: {\n context:\n \"Screenreader-only label on the grab handle for the line on a linear graph.\",\n message:\n \"Line from %(point1X)s comma %(point1Y)s to %(point2X)s comma %(point2Y)s.\",\n },\n srAngleSideAtCoordinates: {\n context:\n \"Screenreader-accessible description of the side / vertex of an angle graph\",\n message: \"Point %(point)s, %(side)s at %(x)s comma %(y)s\",\n },\n srAngleVertexAtCoordinatesWithAngleMeasure: {\n context:\n \"Screenreader-accessible description of a vertex on an angle graph with an angle measure\",\n message:\n \"Point 2, vertex at %(x)s comma %(y)s. Angle %(angleMeasure)s degrees\",\n },\n srAngleGraphAriaLabel: \"An angle on a coordinate plane.\",\n srAngleGraphAriaDescription: {\n context:\n \"Screenreader-only description of an angle on a coordinate plane.\",\n message:\n \"The angle measure is %(angleMeasure)s degrees with a vertex at %(vertexX)s comma %(vertexY)s, a point on the initial side at %(isX)s comma %(isY)s and a point on the terminal side at %(tsX)s comma %(tsY)s\",\n },\n // The above strings are used for interactive graph SR descriptions.\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 selectAnAnswer: \"Select an answer\",\n\n // The following strings are used for interactive graph SR descriptions.\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n closePolygon: \"Close shape\",\n openPolygon: \"Re-open shape\",\n srPointAtCoordinates: ({num, x, y}) => `Point ${num} at ${x} comma ${y}`,\n srInteractiveElements: ({elements}) => `Interactive elements: ${elements}`,\n srNoInteractiveElements: \"No interactive elements\",\n srCircleGraph: \"A circle on a coordinate plane.\",\n srCircleShape: ({centerX, centerY}) =>\n `Circle. The center point is at ${centerX} comma ${centerY}.`,\n srCircleRadiusPoint: ({radiusPointX, radiusPointY}) =>\n `Radius point at ${radiusPointX} comma ${radiusPointY}.`,\n srCircleRadius: ({radius}) => `Circle radius is ${radius}.`,\n srCircleOuterPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n point3X,\n point3Y,\n point4X,\n point4Y,\n }) =>\n `Points on the circle at ${point1X} comma ${point1Y}, ${point2X} comma ${point2Y}, ${point3X} comma ${point3Y}, ${point4X} comma ${point4Y}.`,\n srLinearGraph: \"A line on a coordinate plane.\",\n srLinearGraphPoints: ({point1X, point1Y, point2X, point2Y}) =>\n `The line has two points, point 1 at ${point1X} comma ${point1Y} and point 2 at ${point2X} comma ${point2Y}.`,\n srLinearGraphSlopeIncreasing: \"Its slope increases from left to right.\",\n srLinearGraphSlopeDecreasing: \"Its slope decreases from left to right.\",\n srLinearGraphSlopeHorizontal: \"Its slope is zero.\",\n srLinearGraphSlopeVertical: \"Its slope is undefined.\",\n srLinearGraphXOnlyIntercept: ({xIntercept}) =>\n `The line crosses the X-axis at ${xIntercept} comma 0.`,\n srLinearGraphYOnlyIntercept: ({yIntercept}) =>\n `The line crosses the Y-axis at 0 comma ${yIntercept}.`,\n srLinearGraphBothIntercepts: ({xIntercept, yIntercept}) =>\n `The line crosses the X-axis at ${xIntercept} comma 0 and the Y-axis at 0 comma ${yIntercept}.`,\n srLinearGraphOriginIntercept:\n \"The line crosses the x and y axes at the graph's origin.\",\n srLinearGrabHandle: ({point1X, point1Y, point2X, point2Y}) =>\n `Line from ${point1X} comma ${point1Y} to ${point2X} comma ${point2Y}.`,\n srAngleSideAtCoordinates: ({point, side, x, y}) =>\n `Point ${point}, ${side} at ${x} comma ${y}`,\n srAngleVertexAtCoordinatesWithAngleMeasure: ({x, y, angleMeasure}) =>\n `Point 2, vertex at ${x} comma ${y}. Angle ${angleMeasure} degrees`,\n srAngleGraphAriaLabel: \"An angle on a coordinate plane.\",\n srAngleGraphAriaDescription: ({\n angleMeasure,\n vertexX,\n vertexY,\n isX,\n isY,\n tsX,\n tsY,\n }) =>\n `The angle measure is ${angleMeasure} degrees with a vertex at ${vertexX} comma ${vertexY}, a point on the initial side at ${isX} comma ${isY} and a point on the terminal side at ${tsX} comma ${tsY}.`,\n // The above strings are used for interactive graph SR descriptions.\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","selectAnAnswer","addPoint","removePoint","graphKeyboardPrompt","closePolygon","openPolygon","srInteractiveElements","srNoInteractiveElements","srPointAtCoordinates","srCircleGraph","srCircleShape","srCircleRadiusPoint","srCircleRadius","srCircleOuterPoints","srLinearGraph","srLinearGraphPoints","srLinearGraphSlopeIncreasing","srLinearGraphSlopeDecreasing","srLinearGraphSlopeHorizontal","srLinearGraphSlopeVertical","srLinearGraphXOnlyIntercept","srLinearGraphYOnlyIntercept","srLinearGraphBothIntercepts","srLinearGraphOriginIntercept","srLinearGrabHandle","srAngleSideAtCoordinates","srAngleVertexAtCoordinatesWithAngleMeasure","srAngleGraphAriaLabel","srAngleGraphAriaDescription","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","_ref29","centerX","centerY","_ref30","radiusPointX","radiusPointY","_ref31","radius","_ref32","point1X","point1Y","point2X","point2Y","point3X","point3Y","point4X","point4Y","_ref33","_ref34","xIntercept","_ref35","yIntercept","_ref36","_ref37","_ref38","point","side","_ref39","angleMeasure","_ref40","vertexX","vertexY","isX","isY","tsX","tsY"],"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 selectAnAnswer: string;\n // The following strings are used for interactive graph SR descriptions.\n addPoint: string;\n removePoint: string;\n graphKeyboardPrompt: string;\n closePolygon: string;\n openPolygon: 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 srCircleGraph: string;\n srCircleShape: ({\n centerX,\n centerY,\n }: {\n centerX: string;\n centerY: string;\n }) => string;\n srCircleRadiusPoint: ({\n radiusPointX,\n radiusPointY,\n }: {\n radiusPointX: string;\n radiusPointY: string;\n }) => string;\n srCircleRadius: ({radius}: {radius: number}) => string;\n srCircleOuterPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n point3X,\n point3Y,\n point4X,\n point4Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n point3X: string;\n point3Y: string;\n point4X: string;\n point4Y: string;\n }) => string;\n srLinearGraph: string;\n srLinearGraphPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n }) => string;\n srLinearGraphSlopeIncreasing: string;\n srLinearGraphSlopeDecreasing: string;\n srLinearGraphSlopeHorizontal: string;\n srLinearGraphSlopeVertical: string;\n srLinearGraphXOnlyIntercept: ({xIntercept}: {xIntercept: string}) => string;\n srLinearGraphYOnlyIntercept: ({yIntercept}: {yIntercept: string}) => string;\n srLinearGraphBothIntercepts: ({\n xIntercept,\n yIntercept,\n }: {\n xIntercept: string;\n yIntercept: string;\n }) => string;\n srLinearGraphOriginIntercept: string;\n srLinearGrabHandle: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n }: {\n point1X: string;\n point1Y: string;\n point2X: string;\n point2Y: string;\n }) => string;\n srAngleSideAtCoordinates: ({\n point,\n side,\n x,\n y,\n }: {\n point: number;\n side: string;\n x: string;\n y: string;\n }) => string;\n srAngleVertexAtCoordinatesWithAngleMeasure: ({\n x,\n y,\n angleMeasure,\n }: {\n x: string;\n y: string;\n angleMeasure: string;\n }) => string;\n srAngleGraphAriaLabel: string;\n srAngleGraphAriaDescription: ({\n angleMeasure,\n vertexX,\n vertexY,\n startingSideX,\n startingSideY,\n endingSideX,\n endingSideY,\n }: {\n angleMeasure: string;\n vertexX: string;\n vertexY: string;\n startingSideX: string;\n startingSideY: string;\n endingSideX: string;\n endingSideY: string;\n }) => string;\n // The above strings are used for interactive graph SR descriptions.\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 * !! Note: Ensure that all escape sequences are double-escaped. (e.g. `\\\\text` -> `\\\\\\\\text`)\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 \"12 pi or \" +\n \"2/3 pi\",\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$ pi or $2/3$ 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 selectAnAnswer: \"Select an answer\",\n\n // The following strings are used for interactive graph SR descriptions.\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n closePolygon: \"Close shape\",\n openPolygon: \"Re-open shape\",\n srInteractiveElements: \"Interactive elements: %(elements)s\",\n srNoInteractiveElements: \"No interactive elements\",\n // TODO(LEMS-2660): The following strings are ones that will need\n // translation tickets after all interactive graph SR strings have\n // been finalized. Remove this comment after the tickets have been\n // created.\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 srCircleGraph: {\n context: \"Aria label for the circle graph as a whole.\",\n message: \"A circle on a coordinate plane.\",\n },\n srCircleShape: {\n context:\n \"Aria label for the interactive circle shape in a circle graph.\",\n message:\n \"Circle. The center point is at %(centerX)s comma %(centerY)s.\",\n },\n srCircleRadiusPoint: {\n context:\n \"Aria label for the interactive point that sits on the edge of the circle in a circle graph. Moving this point updates the radius of the circle\",\n message: \"Radius point at %(radiusPointX)s comma %(radiusPointY)s.\",\n },\n srCircleRadius: {\n context:\n \"Screenreader-only description of the radius of a circle in a circle graph.\",\n message: \"Circle radius is %(radius)s.\",\n },\n srCircleOuterPoints: {\n context:\n \"Screenreader-only description of key points on a circle in a circle graph.\",\n message:\n \"Points on the circle at %(point1X)s comma %(point1Y)s, %(point2X)s comma %(point2Y)s, %(point3X)s comma %(point3Y)s, %(point4X)s comma %(point4Y)s.\",\n },\n srLinearGraph: {\n context: \"Aria label for the linear graph as a whole.\",\n message: \"A line on a coordinate plane.\",\n },\n srLinearGraphPoints: {\n context:\n \"Additional information about the points for the linear graph as a whole.\",\n message:\n \"The line has two points, point 1 at %(point1X)s comma %(point1Y)s and point 2 at %(point2X)s comma %(point2Y)s.\",\n },\n srLinearGraphSlopeIncreasing: {\n context:\n \"Screenreader-only description of a line's decreasing slope on a linear graph.\",\n message: \"Its slope increases from left to right.\",\n },\n srLinearGraphSlopeDecreasing: {\n context:\n \"Screenreader-only description of a line's increasing slope on a linear graph.\",\n message: \"Its slope decreases from left to right.\",\n },\n srLinearGraphSlopeHorizontal: {\n context:\n \"Screenreader-only description of a line's horizontal slope on a linear graph.\",\n message: \"Its slope is zero.\",\n },\n srLinearGraphSlopeVertical: {\n context:\n \"Screenreader-only description of a line's vertical slope on a linear graph.\",\n message: \"Its slope is undefined.\",\n },\n srLinearGraphXOnlyIntercept: {\n context:\n \"Screenreader-only description of a line's x-intercept on a linear graph when it only has an x intercept.\",\n message: \"The line crosses the X-axis at %(xIntercept)s comma 0.\",\n },\n srLinearGraphYOnlyIntercept: {\n context:\n \"Screenreader-only description of a line's y-intercept on a linear graph when it only has a y intercept.\",\n message: \"The line crosses the Y-axis at 0 comma %(yIntercept)s.\",\n },\n srLinearGraphBothIntercepts: {\n context:\n \"Screenreader-only description of a line's x and y intercepts on a linear graph when both intercepts are present.\",\n message:\n \"The line crosses the X-axis at %(xIntercept)s comma 0 and the Y-axis at 0 comma %(yIntercept)s.\",\n },\n srLinearGraphOriginIntercept: {\n context:\n \"Screenreader-only description of the line's intercept when the intercept is the graph's origin.\",\n message: \"The line crosses the x and y axes at the graph's origin.\",\n },\n srLinearGrabHandle: {\n context:\n \"Screenreader-only label on the grab handle for the line on a linear graph.\",\n message:\n \"Line from %(point1X)s comma %(point1Y)s to %(point2X)s comma %(point2Y)s.\",\n },\n srAngleSideAtCoordinates: {\n context:\n \"Screenreader-accessible description of the side / vertex of an angle graph\",\n message: \"Point %(point)s, %(side)s at %(x)s comma %(y)s\",\n },\n srAngleVertexAtCoordinatesWithAngleMeasure: {\n context:\n \"Screenreader-accessible description of a vertex on an angle graph with an angle measure\",\n message:\n \"Point 2, vertex at %(x)s comma %(y)s. Angle %(angleMeasure)s degrees\",\n },\n srAngleGraphAriaLabel: {\n context:\n \"Screenreader-accessible label of an angle graph on a coordinate plane\",\n message: \"An angle on a coordinate plane.\",\n },\n srAngleGraphAriaDescription: {\n context:\n \"Screenreader-only description of an angle on a coordinate plane.\",\n message:\n \"The angle measure is %(angleMeasure)s degrees with a vertex at %(vertexX)s comma %(vertexY)s, a point on the starting side at %(startingSideX)s comma %(startingSideY)s and a point on the ending side at %(endingSideX)s comma %(endingSideY)s\",\n },\n // The above strings are used for interactive graph SR descriptions.\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 selectAnAnswer: \"Select an answer\",\n\n // The following strings are used for interactive graph SR descriptions.\n graphKeyboardPrompt: \"Press Shift + Enter to interact with the graph\",\n addPoint: \"Add Point\",\n removePoint: \"Remove Point\",\n closePolygon: \"Close shape\",\n openPolygon: \"Re-open shape\",\n srPointAtCoordinates: ({num, x, y}) => `Point ${num} at ${x} comma ${y}`,\n srInteractiveElements: ({elements}) => `Interactive elements: ${elements}`,\n srNoInteractiveElements: \"No interactive elements\",\n srCircleGraph: \"A circle on a coordinate plane.\",\n srCircleShape: ({centerX, centerY}) =>\n `Circle. The center point is at ${centerX} comma ${centerY}.`,\n srCircleRadiusPoint: ({radiusPointX, radiusPointY}) =>\n `Radius point at ${radiusPointX} comma ${radiusPointY}.`,\n srCircleRadius: ({radius}) => `Circle radius is ${radius}.`,\n srCircleOuterPoints: ({\n point1X,\n point1Y,\n point2X,\n point2Y,\n point3X,\n point3Y,\n point4X,\n point4Y,\n }) =>\n `Points on the circle at ${point1X} comma ${point1Y}, ${point2X} comma ${point2Y}, ${point3X} comma ${point3Y}, ${point4X} comma ${point4Y}.`,\n srLinearGraph: \"A line on a coordinate plane.\",\n srLinearGraphPoints: ({point1X, point1Y, point2X, point2Y}) =>\n `The line has two points, point 1 at ${point1X} comma ${point1Y} and point 2 at ${point2X} comma ${point2Y}.`,\n srLinearGraphSlopeIncreasing: \"Its slope increases from left to right.\",\n srLinearGraphSlopeDecreasing: \"Its slope decreases from left to right.\",\n srLinearGraphSlopeHorizontal: \"Its slope is zero.\",\n srLinearGraphSlopeVertical: \"Its slope is undefined.\",\n srLinearGraphXOnlyIntercept: ({xIntercept}) =>\n `The line crosses the X-axis at ${xIntercept} comma 0.`,\n srLinearGraphYOnlyIntercept: ({yIntercept}) =>\n `The line crosses the Y-axis at 0 comma ${yIntercept}.`,\n srLinearGraphBothIntercepts: ({xIntercept, yIntercept}) =>\n `The line crosses the X-axis at ${xIntercept} comma 0 and the Y-axis at 0 comma ${yIntercept}.`,\n srLinearGraphOriginIntercept:\n \"The line crosses the x and y axes at the graph's origin.\",\n srLinearGrabHandle: ({point1X, point1Y, point2X, point2Y}) =>\n `Line from ${point1X} comma ${point1Y} to ${point2X} comma ${point2Y}.`,\n srAngleSideAtCoordinates: ({point, side, x, y}) =>\n `Point ${point}, ${side} at ${x} comma ${y}`,\n srAngleVertexAtCoordinatesWithAngleMeasure: ({x, y, angleMeasure}) =>\n `Point 2, vertex at ${x} comma ${y}. Angle ${angleMeasure} degrees`,\n srAngleGraphAriaLabel: \"An angle on a coordinate plane.\",\n srAngleGraphAriaDescription: ({\n angleMeasure,\n vertexX,\n vertexY,\n startingSideX,\n startingSideY,\n endingSideX,\n endingSideY,\n }) =>\n `The angle measure is ${angleMeasure} degrees with a vertex at ${vertexX} comma ${vertexY}, a point on the starting side at ${startingSideX} comma ${startingSideY} and a point on the ending side at ${endingSideX} comma ${endingSideY}.`,\n // The above strings are used for interactive graph SR descriptions.\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","selectAnAnswer","addPoint","removePoint","graphKeyboardPrompt","closePolygon","openPolygon","srInteractiveElements","srNoInteractiveElements","srPointAtCoordinates","srCircleGraph","srCircleShape","srCircleRadiusPoint","srCircleRadius","srCircleOuterPoints","srLinearGraph","srLinearGraphPoints","srLinearGraphSlopeIncreasing","srLinearGraphSlopeDecreasing","srLinearGraphSlopeHorizontal","srLinearGraphSlopeVertical","srLinearGraphXOnlyIntercept","srLinearGraphYOnlyIntercept","srLinearGraphBothIntercepts","srLinearGraphOriginIntercept","srLinearGrabHandle","srAngleSideAtCoordinates","srAngleVertexAtCoordinatesWithAngleMeasure","srAngleGraphAriaLabel","srAngleGraphAriaDescription","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","_ref29","centerX","centerY","_ref30","radiusPointX","radiusPointY","_ref31","radius","_ref32","point1X","point1Y","point2X","point2Y","point3X","point3Y","point4X","point4Y","_ref33","_ref34","xIntercept","_ref35","yIntercept","_ref36","_ref37","_ref38","point","side","_ref39","angleMeasure","_ref40","vertexX","vertexY","startingSideX","startingSideY","endingSideX","endingSideY"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -116,7 +116,6 @@ type TrackInteractionArgs = {
116
116
  correct?: boolean;
117
117
  } & Partial<TrackingGradedGroupExtraArguments> & Partial<TrackingSequenceExtraArguments>;
118
118
  export declare const MafsGraphTypeFlags: readonly ["angle", "segment", "linear", "linear-system", "ray", "polygon", "unlimited-polygon", "circle", "quadratic", "sinusoid", "point", "unlimited-point", "none"];
119
- export declare const InteractiveGraphLockedFeaturesFlags: readonly ["interactive-graph-locked-features-labels", "locked-figures-aria", "locked-point-labels", "locked-line-labels", "locked-vector-labels", "locked-ellipse-labels", "locked-polygon-labels", "locked-function-labels"];
120
119
  /**
121
120
  * APIOptions provides different ways to customize the behaviour of Perseus.
122
121
  *
@@ -243,11 +242,9 @@ export type APIOptions = Readonly<{
243
242
  *
244
243
  * Add values to the relevant array to create new flags.
245
244
  */
246
- mafs?: false | ({
245
+ mafs?: false | {
247
246
  [Key in (typeof MafsGraphTypeFlags)[number]]?: boolean;
248
- } & {
249
- [Key in (typeof InteractiveGraphLockedFeaturesFlags)[number]]?: boolean;
250
- });
247
+ };
251
248
  };
252
249
  /**
253
250
  * This is a callback function that returns all of the Widget props
@@ -0,0 +1,2 @@
1
+ import type { PartialParser } from "../parser-types";
2
+ export declare function convert<A, B>(f: (value: A) => B): PartialParser<A, B>;
@@ -0,0 +1,21 @@
1
+ import type { Parser } from "../parser-types";
2
+ type Primitive = number | string | boolean | null | undefined;
3
+ /**
4
+ * discriminatedUnion() should be preferred over union() when parsing a
5
+ * discriminated union type, because discriminatedUnion() produces more
6
+ * understandable failure messages. It takes the discriminant as the source of
7
+ * truth for which variant is to be parsed, and expects the other data to match
8
+ * that variant.
9
+ */
10
+ export declare function discriminatedUnionOn<DK extends string>(discriminantKey: DK): DiscriminatedUnionBuilder<DK, never>;
11
+ declare class DiscriminatedUnionBuilder<DK extends string, Union extends {
12
+ [k in DK]: Primitive;
13
+ }> {
14
+ private discriminantKey;
15
+ parser: Parser<Union>;
16
+ constructor(discriminantKey: DK, parser: Parser<Union>);
17
+ withBranch<Variant extends {
18
+ [k in DK]: Primitive;
19
+ }>(discriminantValue: Primitive, parseNewVariant: Parser<Variant>): DiscriminatedUnionBuilder<DK, Union | Variant>;
20
+ }
21
+ export {};
@@ -0,0 +1,36 @@
1
+ import type { Version } from "../../../perseus-types";
2
+ import type { Parser } from "../parser-types";
3
+ type Versioned = {
4
+ version?: Version;
5
+ };
6
+ /**
7
+ * Creates a parser for a widget options type with multiple major versions. Old
8
+ * versions are migrated to the latest version. The parse fails if the input
9
+ * data does not match any of the versions.
10
+ *
11
+ * @example
12
+ * const parseOptions = versionedWidgetOptions(3, parseOptionsV3)
13
+ * .withMigrationFrom(2, parseOptionsV2, migrateV2ToV3)
14
+ * .withMigrationFrom(1, parseOptionsV1, migrateV1ToV2)
15
+ * .withMigrationFrom(0, parseOptionsV0, migrateV0ToV1)
16
+ * .parser;
17
+ *
18
+ * @param latestMajorVersion the latest major version of the widget options.
19
+ * @param parseLatest a {@link Parser} for the latest version of the widget
20
+ * options.
21
+ * @returns a builder object, to which migrations from earlier versions can be
22
+ * added. Migrations must be added in "reverse chronological" order as in the
23
+ * example above.
24
+ */
25
+ export declare function versionedWidgetOptions<Latest extends Versioned>(latestMajorVersion: number, parseLatest: Parser<Latest>): VersionedWidgetOptionsParserBuilder<Latest, Latest>;
26
+ declare class VersionedWidgetOptionsParserBuilder<Latest extends Versioned, MigratableWidgetOptions extends Versioned> {
27
+ private migrateToLatest;
28
+ private parseOtherVersions;
29
+ parser: Parser<Latest>;
30
+ constructor(majorVersion: number, parseThisVersion: Parser<MigratableWidgetOptions>, migrateToLatest: (m: MigratableWidgetOptions) => Latest, parseOtherVersions: Parser<Latest>);
31
+ /**
32
+ * Add a migration from an old version of the widget options.
33
+ */
34
+ withMigrationFrom<Old extends Versioned>(majorVersion: number, parseOldVersion: Parser<Old>, migrateToNextVersion: (old: Old) => MigratableWidgetOptions): VersionedWidgetOptionsParserBuilder<Latest, Old>;
35
+ }
36
+ export {};
@@ -87,7 +87,7 @@ export declare class Expression extends React.Component<Props, ExpressionState>
87
87
  * to be included as keys on the keypad. These are scraped from the answer
88
88
  * forms.
89
89
  */
90
- declare const keypadConfigurationForProps: (widgetOptions: PerseusExpressionWidgetOptions) => KeypadConfiguration;
90
+ export declare const keypadConfigurationForProps: (widgetOptions: PerseusExpressionWidgetOptions) => KeypadConfiguration;
91
91
  declare const _default: {
92
92
  name: string;
93
93
  displayName: string;
@@ -132,7 +132,7 @@ declare const _default: {
132
132
  crossOutEnabled?: boolean;
133
133
  editorChangeDelay?: number;
134
134
  flags?: {
135
- mafs?: false | ({ [Key in typeof import("../../types").MafsGraphTypeFlags[number]]?: boolean; } & { [Key in typeof import("../../types").InteractiveGraphLockedFeaturesFlags[number]]?: boolean; });
135
+ mafs?: false | { [Key in typeof import("../../types").MafsGraphTypeFlags[number]]?: boolean; };
136
136
  };
137
137
  onWidgetStartProps?: (widgets: import("../..").PerseusWidgetsMap) => void;
138
138
  }> & {
@@ -210,7 +210,7 @@ declare const _default: {
210
210
  crossOutEnabled?: boolean;
211
211
  editorChangeDelay?: number;
212
212
  flags?: {
213
- mafs?: false | ({ [Key in typeof import("../../types").MafsGraphTypeFlags[number]]?: boolean; } & { [Key in typeof import("../../types").InteractiveGraphLockedFeaturesFlags[number]]?: boolean; });
213
+ mafs?: false | { [Key in typeof import("../../types").MafsGraphTypeFlags[number]]?: boolean; };
214
214
  };
215
215
  onWidgetStartProps?: (widgets: import("../..").PerseusWidgetsMap) => void;
216
216
  }> & {
@@ -1,9 +1,7 @@
1
1
  import * as React from "react";
2
2
  import type { LockedFigure } from "../../perseus-types";
3
- import type { APIOptions } from "../../types";
4
3
  type Props = {
5
- flags?: APIOptions["flags"];
6
4
  lockedFigures: ReadonlyArray<LockedFigure>;
7
5
  };
8
- export default function GraphLockedLabelsLayer(props: Props): (React.JSX.Element | null)[];
6
+ export default function GraphLockedLabelsLayer(props: Props): React.JSX.Element[];
9
7
  export {};
@@ -1,9 +1,7 @@
1
1
  import * as React from "react";
2
2
  import type { LockedFigure } from "../../perseus-types";
3
- import type { APIOptions } from "../../types";
4
3
  import type { Interval } from "mafs";
5
4
  type Props = {
6
- flags?: APIOptions["flags"];
7
5
  lockedFigures: ReadonlyArray<LockedFigure>;
8
6
  range: [x: Interval, y: Interval];
9
7
  };
@@ -1,8 +1,4 @@
1
1
  import * as React from "react";
2
2
  import { type LockedEllipseType } from "../../../perseus-types";
3
- import type { APIOptions } from "../../../types";
4
- type Props = LockedEllipseType & {
5
- flags?: APIOptions["flags"];
6
- };
7
- declare const LockedEllipse: (props: Props) => React.JSX.Element;
3
+ declare const LockedEllipse: (props: LockedEllipseType) => React.JSX.Element;
8
4
  export default LockedEllipse;