@khanacademy/perseus 28.1.0 → 29.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.
@@ -1,6 +1,6 @@
1
1
  import WrappedPath from "./wrapped-path";
2
+ import type { Coord } from "./types";
2
3
  import type { Graphie } from "../util/graphie";
3
- import type { Coord } from "@khanacademy/perseus";
4
4
  export declare class Arrowhead extends WrappedPath {
5
5
  private static scale;
6
6
  center: Coord;
@@ -1,2 +1,2 @@
1
- import type { Coord } from "@khanacademy/perseus";
1
+ import type { Coord } from "./types";
2
2
  export declare const getClipPoint: (graph: any, coord: Coord, angle: number) => any;
@@ -1,7 +1,6 @@
1
1
  import type { Movable } from "./movable";
2
- import type { Constraint, ConstraintCallbacks } from "./types";
2
+ import type { Constraint, ConstraintCallbacks, Coord } from "./types";
3
3
  import type { Graphie } from "../util/graphie";
4
- import type { Coord } from "@khanacademy/perseus";
5
4
  type State = {
6
5
  add: unknown[];
7
6
  added: boolean;
@@ -96,13 +96,13 @@ export declare const ApiOptions: {
96
96
  circle?: boolean | undefined;
97
97
  polygon?: boolean | undefined;
98
98
  linear?: boolean | undefined;
99
- point?: boolean | undefined;
100
99
  quadratic?: boolean | undefined;
101
100
  sinusoid?: boolean | undefined;
102
- angle?: boolean | undefined;
103
- "linear-system"?: boolean | undefined;
101
+ point?: boolean | undefined;
104
102
  ray?: boolean | undefined;
105
103
  segment?: boolean | undefined;
104
+ angle?: boolean | undefined;
105
+ "linear-system"?: boolean | undefined;
106
106
  } & {
107
107
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
108
108
  } & {
@@ -75,14 +75,28 @@ export type PerseusWidgetsMap = {
75
75
  } & {
76
76
  [key in `video ${number}`]: VideoWidget;
77
77
  };
78
+ /**
79
+ * A "PerseusItem" is a classic Perseus item. It is rendered by the
80
+ * `ServerItemRenderer` and the layout is pre-set.
81
+ *
82
+ * To render more complex Perseus items, see the `Item` type in the multi item
83
+ * area.
84
+ */
78
85
  export type PerseusItem = {
79
86
  question: PerseusRenderer;
80
87
  hints: ReadonlyArray<Hint>;
81
88
  answerArea: PerseusAnswerArea | null | undefined;
82
- _multi: any;
83
89
  itemDataVersion: Version;
84
90
  answer: any;
85
91
  };
92
+ /**
93
+ * A "MultiItem" is an advanced Perseus item. It is rendered by the
94
+ * `MultiRenderer` and you can control the layout of individual parts of the
95
+ * item.
96
+ */
97
+ export type MultiItem = {
98
+ _multi: any;
99
+ };
86
100
  export type PerseusArticle = ReadonlyArray<PerseusRenderer>;
87
101
  export type Version = {
88
102
  major: number;
@@ -62,13 +62,6 @@ type Props = Partial<React.ContextType<typeof DependenciesContext>> & {
62
62
  problemNum?: number;
63
63
  questionCompleted?: boolean;
64
64
  reviewMode?: boolean | null | undefined;
65
- /**
66
- * Some widgets (e.g. InteractiveGraph) support "hint mode", a state where
67
- * the widget is non-editable, may have a partial solution filled in,
68
- * and may have special styling. Setting hintMode to true will turn on hint
69
- * mode for all rendered widgets.
70
- */
71
- hintMode?: boolean;
72
65
  /**
73
66
  * If set to "all", all rationales or solutions will be shown. If set to
74
67
  * "selected", soltions will only be shown for selected choices. If set to
@@ -108,7 +101,7 @@ type State = {
108
101
  jiptContent: any;
109
102
  lastUsedWidgetId: string | null | undefined;
110
103
  };
111
- type DefaultProps = Required<Pick<Props, "alwaysUpdate" | "content" | "findExternalWidgets" | "highlightedWidgets" | "images" | "linterContext" | "onInteractWithWidget" | "onRender" | "onSerializedStateUpdated" | "questionCompleted" | "showSolutions" | "reviewMode" | "hintMode" | "serializedState" | "widgets">>;
104
+ type DefaultProps = Required<Pick<Props, "alwaysUpdate" | "content" | "findExternalWidgets" | "highlightedWidgets" | "images" | "linterContext" | "onInteractWithWidget" | "onRender" | "onSerializedStateUpdated" | "questionCompleted" | "showSolutions" | "reviewMode" | "serializedState" | "widgets">>;
112
105
  declare class Renderer extends React.Component<Props, State> {
113
106
  _currentFocus: FocusPath | null | undefined;
114
107
  _foundTextNodes: boolean;
@@ -105,7 +105,8 @@ export declare class ServerItemRenderer extends React.Component<Props, State> im
105
105
  setAssetStatus: (assetKey: string, status: boolean) => void;
106
106
  render(): React.ReactNode;
107
107
  }
108
- declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps, "problemNum" | "keypadElement" | "showSolutions" | "reviewMode" | "item" | "dependencies" | "hintsVisible"> & {
108
+ declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps, "item" | "problemNum" | "showSolutions" | "reviewMode" | "keypadElement" | "hintsVisible" | "dependencies"> & {
109
+ linterContext?: PerseusLinter.LinterContextProps | undefined;
109
110
  apiOptions?: Readonly<{
110
111
  isArticle?: boolean | undefined;
111
112
  onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
@@ -143,13 +144,13 @@ declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps
143
144
  circle?: boolean | undefined;
144
145
  polygon?: boolean | undefined;
145
146
  linear?: boolean | undefined;
146
- point?: boolean | undefined;
147
147
  quadratic?: boolean | undefined;
148
148
  sinusoid?: boolean | undefined;
149
- angle?: boolean | undefined;
150
- "linear-system"?: boolean | undefined;
149
+ point?: boolean | undefined;
151
150
  ray?: boolean | undefined;
152
151
  segment?: boolean | undefined;
152
+ angle?: boolean | undefined;
153
+ "linear-system"?: boolean | undefined;
153
154
  } & {
154
155
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
155
156
  } & {
@@ -162,7 +163,6 @@ declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps
162
163
  } | undefined;
163
164
  onWidgetStartProps?: ((widgets: import("./perseus-types").PerseusWidgetsMap) => void) | undefined;
164
165
  }> | undefined;
165
- linterContext?: PerseusLinter.LinterContextProps | undefined;
166
166
  onRendered?: ((isRendered: boolean) => void) | undefined;
167
167
  } & {}, "onRendered"> & React.RefAttributes<ServerItemRenderer>>;
168
168
  export default ref;
package/dist/types.d.ts CHANGED
@@ -373,7 +373,6 @@ export type WidgetProps<RenderProps, Rubric, TrackingExtraArgs = Empty> = Render
373
373
  onBlur: (blurPath: FocusPath) => void;
374
374
  findWidgets: (arg1: FilterCriterion) => ReadonlyArray<Widget>;
375
375
  reviewModeRubric: Rubric;
376
- hintMode: boolean;
377
376
  onChange: ChangeHandler;
378
377
  trackInteraction: (extraData?: TrackingExtraArgs) => void;
379
378
  isLastUsedWidget: boolean;
@@ -1,2 +1,3 @@
1
- declare const FixPassageRefs: (itemData: any) => any;
2
- export default FixPassageRefs;
1
+ import type { MultiItem, PerseusItem } from "../perseus-types";
2
+ declare const fixPassageRefs: (itemData: PerseusItem | MultiItem) => any;
3
+ export default fixPassageRefs;
@@ -142,13 +142,13 @@ declare const _default: Readonly<{
142
142
  circle?: boolean | undefined;
143
143
  polygon?: boolean | undefined;
144
144
  linear?: boolean | undefined;
145
- point?: boolean | undefined;
146
145
  quadratic?: boolean | undefined;
147
146
  sinusoid?: boolean | undefined;
148
- angle?: boolean | undefined;
149
- "linear-system"?: boolean | undefined;
147
+ point?: boolean | undefined;
150
148
  ray?: boolean | undefined;
151
149
  segment?: boolean | undefined;
150
+ angle?: boolean | undefined;
151
+ "linear-system"?: boolean | undefined;
152
152
  } & {
153
153
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
154
154
  } & {
@@ -183,7 +183,6 @@ declare const _default: Readonly<{
183
183
  onBlur: (blurPath: import("../types").FocusPath) => void;
184
184
  findWidgets: (arg1: import("../types").FilterCriterion) => readonly any[];
185
185
  reviewModeRubric: PerseusExpressionWidgetOptions;
186
- hintMode: boolean;
187
186
  onChange: import("../types").ChangeHandler;
188
187
  trackInteraction: (extraData?: Empty | undefined) => void;
189
188
  isLastUsedWidget: boolean;
@@ -227,13 +226,13 @@ declare const _default: Readonly<{
227
226
  circle?: boolean | undefined;
228
227
  polygon?: boolean | undefined;
229
228
  linear?: boolean | undefined;
230
- point?: boolean | undefined;
231
229
  quadratic?: boolean | undefined;
232
230
  sinusoid?: boolean | undefined;
233
- angle?: boolean | undefined;
234
- "linear-system"?: boolean | undefined;
231
+ point?: boolean | undefined;
235
232
  ray?: boolean | undefined;
236
233
  segment?: boolean | undefined;
234
+ angle?: boolean | undefined;
235
+ "linear-system"?: boolean | undefined;
237
236
  } & {
238
237
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
239
238
  } & {
@@ -271,11 +270,11 @@ declare const _default: Readonly<{
271
270
  visibleLabel: string | undefined;
272
271
  ariaLabel: string | undefined;
273
272
  value: string;
274
- }, "static" | "analytics" | "onChange" | "ariaLabel" | "buttonsVisible" | "containerSizeClass" | "widgetId" | "problemNum" | "questionCompleted" | "findWidgets" | "hintMode" | "trackInteraction" | "keypadElement" | "visibleLabel" | "keypadConfiguration" | "alignment" | "reviewModeRubric" | "isLastUsedWidget"> & {
273
+ }, "ariaLabel" | "trackInteraction" | "static" | "onChange" | "analytics" | "problemNum" | "questionCompleted" | "keypadElement" | "alignment" | "buttonsVisible" | "containerSizeClass" | "widgetId" | "findWidgets" | "visibleLabel" | "keypadConfiguration" | "reviewModeRubric" | "isLastUsedWidget"> & {
275
274
  value?: string | undefined;
276
- buttonSets?: import("../perseus-types").LegacyButtonSets | undefined;
277
275
  onFocus?: ((blurPath: import("../types").FocusPath) => void) | undefined;
278
276
  onBlur?: ((blurPath: import("../types").FocusPath) => void) | undefined;
277
+ linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
279
278
  apiOptions?: Readonly<Readonly<{
280
279
  isArticle?: boolean | undefined;
281
280
  onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
@@ -313,13 +312,13 @@ declare const _default: Readonly<{
313
312
  circle?: boolean | undefined;
314
313
  polygon?: boolean | undefined;
315
314
  linear?: boolean | undefined;
316
- point?: boolean | undefined;
317
315
  quadratic?: boolean | undefined;
318
316
  sinusoid?: boolean | undefined;
319
- angle?: boolean | undefined;
320
- "linear-system"?: boolean | undefined;
317
+ point?: boolean | undefined;
321
318
  ray?: boolean | undefined;
322
319
  segment?: boolean | undefined;
320
+ angle?: boolean | undefined;
321
+ "linear-system"?: boolean | undefined;
323
322
  } & {
324
323
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
325
324
  } & {
@@ -348,9 +347,9 @@ declare const _default: Readonly<{
348
347
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
349
348
  showAlignmentOptions: NonNullable<boolean | undefined>;
350
349
  }> | undefined;
350
+ buttonSets?: import("../perseus-types").LegacyButtonSets | undefined;
351
351
  functions?: readonly string[] | undefined;
352
352
  times?: boolean | undefined;
353
- linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
354
353
  } & {}, "analytics"> & React.RefAttributes<Expression>>) | undefined;
355
354
  widget: React.ForwardRefExoticComponent<Omit<Pick<RenderProps & {
356
355
  widgetId: string;
@@ -394,13 +393,13 @@ declare const _default: Readonly<{
394
393
  circle?: boolean | undefined;
395
394
  polygon?: boolean | undefined;
396
395
  linear?: boolean | undefined;
397
- point?: boolean | undefined;
398
396
  quadratic?: boolean | undefined;
399
397
  sinusoid?: boolean | undefined;
400
- angle?: boolean | undefined;
401
- "linear-system"?: boolean | undefined;
398
+ point?: boolean | undefined;
402
399
  ray?: boolean | undefined;
403
400
  segment?: boolean | undefined;
401
+ angle?: boolean | undefined;
402
+ "linear-system"?: boolean | undefined;
404
403
  } & {
405
404
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
406
405
  } & {
@@ -435,7 +434,6 @@ declare const _default: Readonly<{
435
434
  onBlur: (blurPath: import("../types").FocusPath) => void;
436
435
  findWidgets: (arg1: import("../types").FilterCriterion) => readonly any[];
437
436
  reviewModeRubric: PerseusExpressionWidgetOptions;
438
- hintMode: boolean;
439
437
  onChange: import("../types").ChangeHandler;
440
438
  trackInteraction: (extraData?: Empty | undefined) => void;
441
439
  isLastUsedWidget: boolean;
@@ -479,13 +477,13 @@ declare const _default: Readonly<{
479
477
  circle?: boolean | undefined;
480
478
  polygon?: boolean | undefined;
481
479
  linear?: boolean | undefined;
482
- point?: boolean | undefined;
483
480
  quadratic?: boolean | undefined;
484
481
  sinusoid?: boolean | undefined;
485
- angle?: boolean | undefined;
486
- "linear-system"?: boolean | undefined;
482
+ point?: boolean | undefined;
487
483
  ray?: boolean | undefined;
488
484
  segment?: boolean | undefined;
485
+ angle?: boolean | undefined;
486
+ "linear-system"?: boolean | undefined;
489
487
  } & {
490
488
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
491
489
  } & {
@@ -523,11 +521,11 @@ declare const _default: Readonly<{
523
521
  visibleLabel: string | undefined;
524
522
  ariaLabel: string | undefined;
525
523
  value: string;
526
- }, "static" | "analytics" | "onChange" | "ariaLabel" | "buttonsVisible" | "containerSizeClass" | "widgetId" | "problemNum" | "questionCompleted" | "findWidgets" | "hintMode" | "trackInteraction" | "keypadElement" | "visibleLabel" | "keypadConfiguration" | "alignment" | "reviewModeRubric" | "isLastUsedWidget"> & {
524
+ }, "ariaLabel" | "trackInteraction" | "static" | "onChange" | "analytics" | "problemNum" | "questionCompleted" | "keypadElement" | "alignment" | "buttonsVisible" | "containerSizeClass" | "widgetId" | "findWidgets" | "visibleLabel" | "keypadConfiguration" | "reviewModeRubric" | "isLastUsedWidget"> & {
527
525
  value?: string | undefined;
528
- buttonSets?: import("../perseus-types").LegacyButtonSets | undefined;
529
526
  onFocus?: ((blurPath: import("../types").FocusPath) => void) | undefined;
530
527
  onBlur?: ((blurPath: import("../types").FocusPath) => void) | undefined;
528
+ linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
531
529
  apiOptions?: Readonly<Readonly<{
532
530
  isArticle?: boolean | undefined;
533
531
  onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
@@ -565,13 +563,13 @@ declare const _default: Readonly<{
565
563
  circle?: boolean | undefined;
566
564
  polygon?: boolean | undefined;
567
565
  linear?: boolean | undefined;
568
- point?: boolean | undefined;
569
566
  quadratic?: boolean | undefined;
570
567
  sinusoid?: boolean | undefined;
571
- angle?: boolean | undefined;
572
- "linear-system"?: boolean | undefined;
568
+ point?: boolean | undefined;
573
569
  ray?: boolean | undefined;
574
570
  segment?: boolean | undefined;
571
+ angle?: boolean | undefined;
572
+ "linear-system"?: boolean | undefined;
575
573
  } & {
576
574
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
577
575
  } & {
@@ -600,9 +598,9 @@ declare const _default: Readonly<{
600
598
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
601
599
  showAlignmentOptions: NonNullable<boolean | undefined>;
602
600
  }> | undefined;
601
+ buttonSets?: import("../perseus-types").LegacyButtonSets | undefined;
603
602
  functions?: readonly string[] | undefined;
604
603
  times?: boolean | undefined;
605
- linterContext?: import("@khanacademy/perseus-linter").LinterContextProps | undefined;
606
604
  } & {}, "analytics"> & React.RefAttributes<Expression>>;
607
605
  accessible?: boolean | ((props: any) => boolean) | undefined;
608
606
  hidden?: boolean | undefined;
@@ -1,5 +1,5 @@
1
+ import type { Coord } from "../../interactive2/types";
1
2
  import type { CollinearTuple, LockedFigureColor, LockedFigureFillType, LockedFunctionType, PerseusRenderer } from "../../perseus-types";
2
- import type { Coord } from "@khanacademy/perseus";
3
3
  import type { vec } from "mafs";
4
4
  export type LockedFunctionOptions = Omit<Partial<LockedFunctionType>, "type" | "equation">;
5
5
  export declare function interactiveGraphQuestionBuilder(): InteractiveGraphQuestionBuilder;
@@ -17,8 +17,10 @@ declare class InteractiveGraphQuestionBuilder {
17
17
  private interactiveFigureConfig;
18
18
  private lockedFigures;
19
19
  private snapTo;
20
+ private staticMode;
20
21
  build(): PerseusRenderer;
21
22
  withContent(content: string): InteractiveGraphQuestionBuilder;
23
+ withStaticMode(staticMode: boolean): InteractiveGraphQuestionBuilder;
22
24
  withBackgroundImage(url: string, height: number, width: number, options?: {
23
25
  scale?: number;
24
26
  bottom?: number;
@@ -16,7 +16,7 @@ export type MafsGraphProps = {
16
16
  labels: InteractiveGraphProps["labels"];
17
17
  state: InteractiveGraphState;
18
18
  dispatch: React.Dispatch<InteractiveGraphAction>;
19
- hintMode: boolean;
20
19
  readOnly: boolean;
20
+ static: boolean | null | undefined;
21
21
  };
22
22
  export declare const MafsGraph: (props: MafsGraphProps) => React.JSX.Element;
@@ -1,6 +1,6 @@
1
+ import type { Coord } from "../../../interactive2/types";
1
2
  import type { PerseusGraphType, PerseusGraphTypeAngle, PerseusGraphTypeCircle, PerseusGraphTypeLinear, PerseusGraphTypeLinearSystem, PerseusGraphTypePoint, PerseusGraphTypePolygon, PerseusGraphTypeQuadratic, PerseusGraphTypeRay, PerseusGraphTypeSegment, PerseusGraphTypeSinusoid } from "../../../perseus-types";
2
3
  import type { InteractiveGraphState, PairOfPoints } from "../types";
3
- import type { Coord } from "@khanacademy/perseus";
4
4
  import type { Interval } from "mafs";
5
5
  export type InitializeGraphStateParams = {
6
6
  range: [x: Interval, y: Interval];
@@ -1,5 +1,5 @@
1
+ import type { PerseusGraphType } from "../../../perseus-types";
1
2
  import type { CircleGraphState, InteractiveGraphState } from "../types";
2
- import type { PerseusGraphType } from "@khanacademy/perseus";
3
3
  export declare function getGradableGraph(state: InteractiveGraphState, initialGraph: PerseusGraphType): PerseusGraphType;
4
4
  /**
5
5
  * determine radius of a circle graph
@@ -1,11 +1,12 @@
1
1
  import * as React from "react";
2
2
  import type { InteractiveGraphProps } from "./types";
3
+ import type { PerseusGraphType } from "../../perseus-types";
3
4
  import type { Widget } from "../../renderer";
4
- import type { PerseusGraphType } from "@khanacademy/perseus";
5
5
  export type StatefulMafsGraphProps = {
6
6
  box: [number, number];
7
7
  backgroundImage?: InteractiveGraphProps["backgroundImage"];
8
8
  graph: PerseusGraphType;
9
+ correct: PerseusGraphType;
9
10
  lockedFigures?: InteractiveGraphProps["lockedFigures"];
10
11
  range: InteractiveGraphProps["range"];
11
12
  snapStep: InteractiveGraphProps["snapStep"];
@@ -17,7 +18,7 @@ export type StatefulMafsGraphProps = {
17
18
  showTooltips: Required<InteractiveGraphProps["showTooltips"]>;
18
19
  showProtractor: boolean;
19
20
  labels: InteractiveGraphProps["labels"];
20
- hintMode: boolean;
21
21
  readOnly: boolean;
22
+ static: InteractiveGraphProps["static"];
22
23
  };
23
24
  export declare const StatefulMafsGraph: React.ForwardRefExoticComponent<StatefulMafsGraphProps & React.RefAttributes<Partial<Widget>>>;
@@ -1,7 +1,7 @@
1
1
  import type { InteractiveGraphAction } from "./reducer/interactive-graph-action";
2
+ import type { Coord } from "../../interactive2/types";
2
3
  import type { PerseusInteractiveGraphWidgetOptions } from "../../perseus-types";
3
4
  import type { WidgetProps } from "../../types";
4
- import type { Coord } from "@khanacademy/perseus";
5
5
  import type { Interval, vec } from "mafs";
6
6
  export type InteractiveGraphProps = WidgetProps<PerseusInteractiveGraphWidgetOptions, PerseusInteractiveGraphWidgetOptions>;
7
7
  export type MafsGraphProps<T extends InteractiveGraphState> = {
@@ -134,13 +134,13 @@ declare const _default: Readonly<{
134
134
  circle?: boolean | undefined;
135
135
  polygon?: boolean | undefined;
136
136
  linear?: boolean | undefined;
137
- point?: boolean | undefined;
138
137
  quadratic?: boolean | undefined;
139
138
  sinusoid?: boolean | undefined;
140
- angle?: boolean | undefined;
141
- "linear-system"?: boolean | undefined;
139
+ point?: boolean | undefined;
142
140
  ray?: boolean | undefined;
143
141
  segment?: boolean | undefined;
142
+ angle?: boolean | undefined;
143
+ "linear-system"?: boolean | undefined;
144
144
  } & {
145
145
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
146
146
  } & {
@@ -202,13 +202,13 @@ declare const _default: Readonly<{
202
202
  circle?: boolean | undefined;
203
203
  polygon?: boolean | undefined;
204
204
  linear?: boolean | undefined;
205
- point?: boolean | undefined;
206
205
  quadratic?: boolean | undefined;
207
206
  sinusoid?: boolean | undefined;
208
- angle?: boolean | undefined;
209
- "linear-system"?: boolean | undefined;
207
+ point?: boolean | undefined;
210
208
  ray?: boolean | undefined;
211
209
  segment?: boolean | undefined;
210
+ angle?: boolean | undefined;
211
+ "linear-system"?: boolean | undefined;
212
212
  } & {
213
213
  "interactive-graph-locked-features-m2b"?: boolean | undefined;
214
214
  } & {
@@ -5,10 +5,10 @@ declare const _default: Readonly<{
5
5
  widget: any;
6
6
  accessible?: boolean | ((props: any) => boolean) | undefined;
7
7
  hidden?: boolean | undefined;
8
- version?: import("@khanacademy/perseus").Version | undefined;
9
- supportedAlignments?: readonly import("@khanacademy/perseus").Alignment[] | undefined;
10
- defaultAlignment?: import("@khanacademy/perseus").Alignment | undefined;
11
- getDefaultAlignment?: (() => import("@khanacademy/perseus").Alignment) | undefined;
8
+ version?: import("../types").Version | undefined;
9
+ supportedAlignments?: readonly import("../types").Alignment[] | undefined;
10
+ defaultAlignment?: import("../types").Alignment | undefined;
11
+ getDefaultAlignment?: (() => import("../types").Alignment) | undefined;
12
12
  isLintable?: boolean | undefined;
13
13
  tracking?: import("../types").Tracking | undefined;
14
14
  traverseChildWidgets?: any;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Core Perseus API (includes renderers and widgets)",
4
4
  "author": "Khan Academy",
5
5
  "license": "MIT",
6
- "version": "28.1.0",
6
+ "version": "29.0.0",
7
7
  "publishConfig": {
8
8
  "access": "public"
9
9
  },
@@ -42,9 +42,10 @@
42
42
  "dependencies": {
43
43
  "@khanacademy/kas": "^0.3.11",
44
44
  "@khanacademy/kmath": "^0.1.13",
45
- "@khanacademy/math-input": "^20.1.2",
45
+ "@khanacademy/keypad-context": "^1.0.0",
46
+ "@khanacademy/math-input": "^21.0.0",
46
47
  "@khanacademy/perseus-core": "1.5.0",
47
- "@khanacademy/perseus-linter": "^1.0.0",
48
+ "@khanacademy/perseus-linter": "^1.1.0",
48
49
  "@khanacademy/pure-markdown": "^0.3.7",
49
50
  "@khanacademy/simple-markdown": "^0.13.0",
50
51
  "@use-gesture/react": "^10.2.27",
@@ -1,3 +0,0 @@
1
- /**
2
- * Sets up the basic environment for running Perseus in.
3
- */