@khanacademy/perseus 49.2.1 → 50.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/dist/article-renderer.d.ts +2 -6
  2. package/dist/components/graph.d.ts +1 -1
  3. package/dist/components/graphie.d.ts +1 -1
  4. package/dist/components/highlighting/ui/highlight-set-renderer.d.ts +1 -4
  5. package/dist/components/highlighting/ui/highlighting-ui.d.ts +1 -4
  6. package/dist/components/i18n-context.d.ts +1 -1
  7. package/dist/components/input-with-examples.d.ts +1 -4
  8. package/dist/components/math-input.d.ts +2 -6
  9. package/dist/components/number-input.d.ts +2 -5
  10. package/dist/components/svg-image.d.ts +1 -1
  11. package/dist/es/index.js +547 -1380
  12. package/dist/es/index.js.map +1 -1
  13. package/dist/es/strings.js +40 -85
  14. package/dist/es/strings.js.map +1 -1
  15. package/dist/hint-renderer.d.ts +1 -4
  16. package/dist/hints-renderer.d.ts +2 -5
  17. package/dist/index.d.ts +5 -7
  18. package/dist/index.js +588 -1407
  19. package/dist/index.js.map +1 -1
  20. package/dist/renderer-util.d.ts +1 -1
  21. package/dist/renderer.d.ts +2 -5
  22. package/dist/server-item-renderer.d.ts +3 -7
  23. package/dist/strings.d.ts +8 -0
  24. package/dist/strings.js +40 -84
  25. package/dist/strings.js.map +1 -1
  26. package/dist/types.d.ts +1 -2
  27. package/dist/util/extract-perseus-data.d.ts +1 -1
  28. package/dist/util/parse-perseus-json/index.d.ts +33 -4
  29. package/dist/util/parse-perseus-json/perseus-parsers/categorizer-widget.d.ts +1 -1
  30. package/dist/util/parse-perseus-json/perseus-parsers/cs-program-widget.d.ts +1 -1
  31. package/dist/util/parse-perseus-json/perseus-parsers/definition-widget.d.ts +1 -1
  32. package/dist/util/parse-perseus-json/perseus-parsers/dropdown-widget.d.ts +1 -1
  33. package/dist/util/parse-perseus-json/perseus-parsers/explanation-widget.d.ts +1 -1
  34. package/dist/util/parse-perseus-json/perseus-parsers/expression-widget.d.ts +1 -1
  35. package/dist/util/parse-perseus-json/perseus-parsers/graded-group-set-widget.d.ts +1 -1
  36. package/dist/util/parse-perseus-json/perseus-parsers/graded-group-widget.d.ts +3 -3
  37. package/dist/util/parse-perseus-json/perseus-parsers/grapher-widget.d.ts +1 -1
  38. package/dist/util/parse-perseus-json/perseus-parsers/group-widget.d.ts +1 -1
  39. package/dist/util/parse-perseus-json/perseus-parsers/hint.d.ts +1 -1
  40. package/dist/util/parse-perseus-json/perseus-parsers/iframe-widget.d.ts +1 -1
  41. package/dist/util/parse-perseus-json/perseus-parsers/image-widget.d.ts +1 -1
  42. package/dist/util/parse-perseus-json/perseus-parsers/images-map.d.ts +1 -1
  43. package/dist/util/parse-perseus-json/perseus-parsers/input-number-widget.d.ts +1 -1
  44. package/dist/util/parse-perseus-json/perseus-parsers/interaction-widget.d.ts +1 -1
  45. package/dist/util/parse-perseus-json/perseus-parsers/interactive-graph-widget.d.ts +1 -1
  46. package/dist/util/parse-perseus-json/perseus-parsers/label-image-widget.d.ts +1 -1
  47. package/dist/util/parse-perseus-json/perseus-parsers/matcher-widget.d.ts +1 -1
  48. package/dist/util/parse-perseus-json/perseus-parsers/matrix-widget.d.ts +1 -1
  49. package/dist/util/parse-perseus-json/perseus-parsers/measurer-widget.d.ts +1 -1
  50. package/dist/util/parse-perseus-json/perseus-parsers/molecule-renderer-widget.d.ts +1 -1
  51. package/dist/util/parse-perseus-json/perseus-parsers/number-line-widget.d.ts +1 -1
  52. package/dist/util/parse-perseus-json/perseus-parsers/numeric-input-widget.d.ts +1 -1
  53. package/dist/util/parse-perseus-json/perseus-parsers/orderer-widget.d.ts +1 -1
  54. package/dist/util/parse-perseus-json/perseus-parsers/passage-ref-widget.d.ts +1 -1
  55. package/dist/util/parse-perseus-json/perseus-parsers/passage-widget.d.ts +1 -1
  56. package/dist/util/parse-perseus-json/perseus-parsers/perseus-article.d.ts +3 -0
  57. package/dist/util/parse-perseus-json/perseus-parsers/perseus-image-background.d.ts +1 -1
  58. package/dist/util/parse-perseus-json/perseus-parsers/perseus-item.d.ts +1 -1
  59. package/dist/util/parse-perseus-json/perseus-parsers/perseus-renderer.d.ts +1 -1
  60. package/dist/util/parse-perseus-json/perseus-parsers/phet-simulation-widget.d.ts +1 -1
  61. package/dist/util/parse-perseus-json/perseus-parsers/plotter-widget.d.ts +1 -1
  62. package/dist/util/parse-perseus-json/perseus-parsers/python-program-widget.d.ts +1 -1
  63. package/dist/util/parse-perseus-json/perseus-parsers/radio-widget.d.ts +1 -1
  64. package/dist/util/parse-perseus-json/perseus-parsers/sorter-widget.d.ts +1 -1
  65. package/dist/util/parse-perseus-json/perseus-parsers/table-widget.d.ts +1 -1
  66. package/dist/util/parse-perseus-json/perseus-parsers/versioned-widget-options.d.ts +1 -1
  67. package/dist/util/parse-perseus-json/perseus-parsers/video-widget.d.ts +1 -1
  68. package/dist/util/parse-perseus-json/perseus-parsers/widget.d.ts +1 -1
  69. package/dist/util/parse-perseus-json/perseus-parsers/widgets-map.d.ts +1 -1
  70. package/dist/util/test-utils.d.ts +1 -1
  71. package/dist/util.d.ts +1 -1
  72. package/dist/validation.types.d.ts +9 -3
  73. package/dist/widget-ai-utils/grapher/grapher-ai-utils.d.ts +1 -1
  74. package/dist/widget-ai-utils/interactive-graph/interactive-graph-ai-utils.d.ts +1 -1
  75. package/dist/widget-ai-utils/mock-widget/prompt-utils.d.ts +13 -0
  76. package/dist/widget-ai-utils/prompt-types.d.ts +2 -1
  77. package/dist/widget-container.d.ts +1 -1
  78. package/dist/widget-type-utils.d.ts +1 -1
  79. package/dist/widgets/categorizer/categorizer.d.ts +2 -5
  80. package/dist/widgets/cs-program/cs-program.d.ts +1 -1
  81. package/dist/widgets/definition/definition.d.ts +2 -5
  82. package/dist/widgets/deprecated-standin/deprecated-standin.d.ts +1 -4
  83. package/dist/widgets/dropdown/dropdown.d.ts +2 -5
  84. package/dist/widgets/explanation/explanation.d.ts +2 -5
  85. package/dist/widgets/expression/expression.d.ts +5 -8
  86. package/dist/widgets/graded-group/graded-group-answer-bar.d.ts +1 -4
  87. package/dist/widgets/graded-group/graded-group.d.ts +2 -5
  88. package/dist/widgets/graded-group-set/graded-group-set.d.ts +1 -1
  89. package/dist/widgets/grapher/grapher.d.ts +2 -2
  90. package/dist/widgets/group/group.d.ts +2 -5
  91. package/dist/widgets/iframe/iframe.d.ts +1 -1
  92. package/dist/widgets/image/image.d.ts +2 -5
  93. package/dist/widgets/input-number/input-number.d.ts +2 -6
  94. package/dist/widgets/interaction/interaction.d.ts +1 -1
  95. package/dist/widgets/interactive-graph.d.ts +4 -6
  96. package/dist/widgets/interactive-graphs/backgrounds/grid.d.ts +2 -2
  97. package/dist/widgets/interactive-graphs/backgrounds/legacy-grid.d.ts +1 -1
  98. package/dist/widgets/interactive-graphs/graph-locked-labels-layer.d.ts +1 -1
  99. package/dist/widgets/interactive-graphs/graph-locked-layer.d.ts +1 -1
  100. package/dist/widgets/interactive-graphs/graphs/circle.d.ts +2 -0
  101. package/dist/widgets/interactive-graphs/graphs/components/angle-indicators.d.ts +1 -1
  102. package/dist/widgets/interactive-graphs/interactive-graph-question-builder.d.ts +2 -2
  103. package/dist/widgets/interactive-graphs/locked-figures/locked-ellipse.d.ts +1 -1
  104. package/dist/widgets/interactive-graphs/locked-figures/locked-function.d.ts +1 -1
  105. package/dist/widgets/interactive-graphs/locked-figures/locked-label.d.ts +1 -1
  106. package/dist/widgets/interactive-graphs/locked-figures/locked-line.d.ts +1 -1
  107. package/dist/widgets/interactive-graphs/locked-figures/locked-point.d.ts +1 -1
  108. package/dist/widgets/interactive-graphs/locked-figures/locked-polygon.d.ts +1 -1
  109. package/dist/widgets/interactive-graphs/locked-figures/locked-vector.d.ts +1 -1
  110. package/dist/widgets/interactive-graphs/mafs-state-to-interactive-graph.d.ts +1 -1
  111. package/dist/widgets/interactive-graphs/reducer/initialize-graph-state.d.ts +1 -1
  112. package/dist/widgets/interactive-graphs/reducer/interactive-graph-state.d.ts +1 -1
  113. package/dist/widgets/interactive-graphs/reducer/use-graph-config.d.ts +2 -1
  114. package/dist/widgets/interactive-graphs/stateful-mafs-graph.d.ts +1 -1
  115. package/dist/widgets/interactive-graphs/types.d.ts +1 -1
  116. package/dist/widgets/interactive-graphs/utils.d.ts +1 -1
  117. package/dist/widgets/label-image/label-image.d.ts +2 -5
  118. package/dist/widgets/label-image/marker.d.ts +1 -4
  119. package/dist/widgets/matcher/matcher.d.ts +2 -5
  120. package/dist/widgets/matrix/matrix.d.ts +2 -5
  121. package/dist/widgets/measurer/measurer.d.ts +1 -1
  122. package/dist/widgets/mock-widgets/index.d.ts +2 -0
  123. package/dist/widgets/mock-widgets/mock-asset-loading-widget.d.ts +17 -0
  124. package/dist/widgets/mock-widgets/mock-widget.d.ts +47 -0
  125. package/dist/widgets/mock-widgets/score-mock-widget.d.ts +5 -0
  126. package/dist/widgets/molecule/molecule.d.ts +1 -1
  127. package/dist/widgets/number-line/number-line.d.ts +1 -4
  128. package/dist/widgets/numeric-input/numeric-input.d.ts +2 -6
  129. package/dist/widgets/orderer/orderer.d.ts +1 -1
  130. package/dist/widgets/passage/passage.d.ts +2 -5
  131. package/dist/widgets/passage-ref/passage-ref.d.ts +2 -5
  132. package/dist/widgets/passage-ref-target/passage-ref-target.d.ts +2 -5
  133. package/dist/widgets/phet-simulation/phet-simulation.d.ts +2 -5
  134. package/dist/widgets/plotter/plotter.d.ts +2 -5
  135. package/dist/widgets/radio/base-radio.d.ts +1 -1
  136. package/dist/widgets/radio/radio-component.d.ts +2 -5
  137. package/dist/widgets/radio/radio.d.ts +1 -1
  138. package/dist/widgets/sorter/sorter.d.ts +1 -1
  139. package/dist/widgets/table/table.d.ts +2 -5
  140. package/dist/widgets/video/video.d.ts +2 -5
  141. package/dist/widgets.d.ts +1 -1
  142. package/package.json +46 -45
  143. package/dist/interactive2/objective_.d.ts +0 -34
  144. package/dist/perseus-types.d.ts +0 -980
  145. package/dist/util/answer-types.d.ts +0 -69
  146. package/dist/util/math.d.ts +0 -29
@@ -6,10 +6,9 @@ import * as React from "react";
6
6
  import { PerseusI18nContext } from "./components/i18n-context";
7
7
  import { DependenciesContext } from "./dependencies";
8
8
  import Renderer from "./renderer";
9
- import type { PerseusArticle } from "./perseus-types";
10
9
  import type { PerseusDependenciesV2, SharedRendererProps } from "./types";
11
10
  import type { KeypadAPI } from "@khanacademy/math-input";
12
- import type { KeypadContextRendererInterface } from "@khanacademy/perseus-core";
11
+ import type { PerseusArticle, KeypadContextRendererInterface } from "@khanacademy/perseus-core";
13
12
  type Props = Partial<React.ContextType<typeof DependenciesContext>> & SharedRendererProps & {
14
13
  json: PerseusArticle;
15
14
  /**
@@ -26,10 +25,7 @@ type DefaultProps = {
26
25
  linterContext: Props["linterContext"];
27
26
  };
28
27
  declare class ArticleRenderer extends React.Component<Props> implements KeypadContextRendererInterface {
29
- static contextType: React.Context<{
30
- strings: import("./strings").PerseusStrings;
31
- locale: string;
32
- }>;
28
+ static contextType: React.Context<import("./components/i18n-context").I18nContextType>;
33
29
  context: React.ContextType<typeof PerseusI18nContext>;
34
30
  _currentFocus: any;
35
31
  sectionRenderers: Array<Renderer>;
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import type { Coord } from "../interactive2/types";
3
- import type { PerseusImageBackground } from "../perseus-types";
4
3
  import type { GridDimensions } from "../util";
4
+ import type { PerseusImageBackground } from "@khanacademy/perseus-core";
5
5
  type Props = {
6
6
  box: [number, number];
7
7
  labels: ReadonlyArray<string>;
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { Graphie as GraphieDrawingContext } from "../util/graphie";
3
3
  import type { Coord } from "../interactive2/types";
4
- import type { Range, Size } from "../perseus-types";
4
+ import type { Range, Size } from "@khanacademy/perseus-core";
5
5
  type Props = {
6
6
  addMouseLayer?: boolean;
7
7
  box: Size;
@@ -22,10 +22,7 @@ type State = {
22
22
  hoveringTooltipFor: string | null | undefined;
23
23
  };
24
24
  declare class HighlightSetRenderer extends React.PureComponent<Props, State> {
25
- static contextType: React.Context<{
26
- strings: import("../../../strings").PerseusStrings;
27
- locale: string;
28
- }>;
25
+ static contextType: React.Context<import("../../i18n-context").I18nContextType>;
29
26
  context: React.ContextType<typeof PerseusI18nContext>;
30
27
  state: State;
31
28
  _highlightRenderers: {
@@ -24,10 +24,7 @@ type Props = {
24
24
  zIndexes: ZIndexes;
25
25
  };
26
26
  declare class HighlightingUI extends React.PureComponent<Props> {
27
- static contextType: React.Context<{
28
- strings: import("../../../strings").PerseusStrings;
29
- locale: string;
30
- }>;
27
+ static contextType: React.Context<import("../../i18n-context").I18nContextType>;
31
28
  context: React.ContextType<typeof PerseusI18nContext>;
32
29
  _handleAddHighlight(highlightToAdd: DOMHighlight): void;
33
30
  _selectionIsValid(trackedSelection?: TrackedSelection | null): trackedSelection is TrackedSelection;
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import * as React from "react";
7
7
  import type { PerseusStrings } from "../strings";
8
- type I18nContextType = {
8
+ export type I18nContextType = {
9
9
  strings: PerseusStrings;
10
10
  locale: string;
11
11
  };
@@ -32,10 +32,7 @@ type State = {
32
32
  showExamples: boolean;
33
33
  };
34
34
  declare class InputWithExamples extends React.Component<Props, State> {
35
- static contextType: React.Context<{
36
- strings: import("../strings").PerseusStrings;
37
- locale: string;
38
- }>;
35
+ static contextType: React.Context<import("./i18n-context").I18nContextType>;
39
36
  context: React.ContextType<typeof PerseusI18nContext>;
40
37
  static defaultProps: DefaultProps;
41
38
  state: State;
@@ -1,9 +1,8 @@
1
1
  import { CursorContext, MathInputI18nContext } from "@khanacademy/math-input";
2
2
  import * as React from "react";
3
3
  import { PerseusI18nContext } from "./i18n-context";
4
- import type { LegacyButtonSets } from "../perseus-types";
5
4
  import type { Keys, MathFieldInterface } from "@khanacademy/math-input";
6
- import type { AnalyticsEventHandlerFn } from "@khanacademy/perseus-core";
5
+ import type { AnalyticsEventHandlerFn, LegacyButtonSets } from "@khanacademy/perseus-core";
7
6
  type ButtonsVisibleType = "always" | "never" | "focused";
8
7
  export type KeypadButtonSets = {
9
8
  advancedRelations?: boolean;
@@ -57,10 +56,7 @@ type State = {
57
56
  openedWithEventType?: string;
58
57
  };
59
58
  declare class InnerMathInput extends React.Component<InnerProps, State> {
60
- static contextType: React.Context<{
61
- strings: import("../strings").PerseusStrings;
62
- locale: string;
63
- }>;
59
+ static contextType: React.Context<import("./i18n-context").I18nContextType>;
64
60
  context: React.ContextType<typeof PerseusI18nContext>;
65
61
  mouseDown: boolean;
66
62
  __mathFieldWrapperRef: HTMLSpanElement | null;
@@ -1,7 +1,7 @@
1
1
  import PropTypes from "prop-types";
2
2
  import * as React from "react";
3
3
  import { PerseusI18nContext } from "./i18n-context";
4
- import type { MathFormat } from "../perseus-types";
4
+ import type { MathFormat } from "@khanacademy/perseus-core";
5
5
  /**
6
6
  * An input box that accepts only numeric strings
7
7
  *
@@ -22,10 +22,7 @@ import type { MathFormat } from "../perseus-types";
22
22
  * Optionally takes a `size` (`"mini"`, `"small"`,` `"normal"`)
23
23
  */
24
24
  declare class NumberInput extends React.Component<any, any> {
25
- static contextType: React.Context<{
26
- strings: import("../strings").PerseusStrings;
27
- locale: string;
28
- }>;
25
+ static contextType: React.Context<import("./i18n-context").I18nContextType>;
29
26
  context: React.ContextType<typeof PerseusI18nContext>;
30
27
  inputRef: React.RefObject<HTMLInputElement>;
31
28
  static propTypes: {
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import type { Coord } from "../interactive2/types";
3
- import type { Size } from "../perseus-types";
4
3
  import type { Alignment, Dimensions } from "../types";
4
+ import type { Size } from "@khanacademy/perseus-core";
5
5
  type Props = {
6
6
  allowFullBleed?: boolean;
7
7
  alt: string;