@khanacademy/perseus 66.5.0 → 67.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.
@@ -159,7 +159,6 @@ declare const _default: React.ForwardRefExoticComponent<Omit<Pick<SharedRenderer
159
159
  canScrollPage?: boolean;
160
160
  editorChangeDelay?: number;
161
161
  flags?: Record<"new-radio-widget", boolean>;
162
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
163
162
  }> | undefined;
164
163
  linterContext?: PerseusLinter.LinterContextProps | undefined;
165
164
  onRendered?: ((isRendered: boolean) => void) | undefined;
package/dist/types.d.ts CHANGED
@@ -224,16 +224,6 @@ export type APIOptions = Readonly<{
224
224
  * Define the feature flag name in packages/perseus-core/src/feature-flags.ts
225
225
  */
226
226
  flags?: Record<(typeof PerseusFeatureFlags)[number], boolean>;
227
- /**
228
- * This is a callback function that returns all of the Widget props
229
- * after they have been transformed by the widget's transform function.
230
- * This is useful for when we need to know how a widget has shuffled its
231
- * the available choices.
232
- *
233
- * @deprecated [LEMS-3185] this is externalizing an internal implementation
234
- * detail similar to serialized state
235
- */
236
- onWidgetStartProps?: (widgets: PerseusWidgetsMap) => void;
237
227
  }>;
238
228
  type TeXProps = {
239
229
  children: string;
@@ -33,7 +33,7 @@ export declare function sharedInitializeUserInput(widgetOptions: PerseusWidgetsM
33
33
  *
34
34
  * @deprecated - do not use in new code.
35
35
  */
36
- export declare function sharedRestoreUserInputFromSerializedState(serializedState: unknown, widgetsMap: PerseusWidgetsMap): UserInputMap;
36
+ export declare function deriveUserInputFromSerializedState(serializedState: unknown, widgetsMap: PerseusWidgetsMap): UserInputMap;
37
37
  /**
38
38
  * UserInputManager is a stateful wrapper for handling and storing user input.
39
39
  * Ideally we'll get to a place where widgets are functional components
@@ -101,7 +101,6 @@ export declare class Expression extends React.Component<Props> implements Widget
101
101
  canScrollPage?: boolean;
102
102
  editorChangeDelay?: number;
103
103
  flags?: Record<"new-radio-widget", boolean>;
104
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
105
104
  }> & {
106
105
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
107
106
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -194,7 +193,6 @@ declare const _default: {
194
193
  canScrollPage?: boolean;
195
194
  editorChangeDelay?: number;
196
195
  flags?: Record<"new-radio-widget", boolean>;
197
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
198
196
  }> & {
199
197
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
200
198
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -92,7 +92,6 @@ declare class Grapher extends React.Component<Props> implements Widget {
92
92
  canScrollPage?: boolean;
93
93
  editorChangeDelay?: number;
94
94
  flags?: Record<"new-radio-widget", boolean>;
95
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
96
95
  }> & {
97
96
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
98
97
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -193,7 +193,6 @@ declare class InteractiveGraph extends React.Component<Props, State> {
193
193
  canScrollPage?: boolean;
194
194
  editorChangeDelay?: number;
195
195
  flags?: Record<"new-radio-widget", boolean>;
196
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
197
196
  }> & {
198
197
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
199
198
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -76,7 +76,6 @@ declare class MockWidgetComponent extends React.Component<Props> implements Widg
76
76
  canScrollPage?: boolean;
77
77
  editorChangeDelay?: number;
78
78
  flags?: Record<"new-radio-widget", boolean>;
79
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
80
79
  }> & {
81
80
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
82
81
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -121,7 +121,6 @@ declare class NumberLine extends React.Component<Props, State> implements Widget
121
121
  canScrollPage?: boolean;
122
122
  editorChangeDelay?: number;
123
123
  flags?: Record<"new-radio-widget", boolean>;
124
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
125
124
  }> & {
126
125
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
127
126
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -83,7 +83,6 @@ export declare class NumericInput extends React.Component<NumericInputProps> imp
83
83
  canScrollPage?: boolean;
84
84
  editorChangeDelay?: number;
85
85
  flags?: Record<"new-radio-widget", boolean>;
86
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
87
86
  }> & {
88
87
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
89
88
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -42,7 +42,6 @@ export declare const NumericInputComponent: React.ForwardRefExoticComponent<impo
42
42
  canScrollPage?: boolean;
43
43
  editorChangeDelay?: number;
44
44
  flags?: Record<"new-radio-widget", boolean>;
45
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
46
45
  }> & {
47
46
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
48
47
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -130,7 +130,6 @@ export declare class Plotter extends React.Component<Props, State> implements Wi
130
130
  canScrollPage?: boolean;
131
131
  editorChangeDelay?: number;
132
132
  flags?: Record<"new-radio-widget", boolean>;
133
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
134
133
  }> & {
135
134
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
136
135
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -7,12 +7,16 @@ declare class RadioQuestionBuilder {
7
7
  private hasNoneOfTheAbove?;
8
8
  private multipleSelect?;
9
9
  private randomize?;
10
+ private static?;
11
+ private numCorrect?;
10
12
  build(): PerseusRenderer;
11
13
  withContent(content: string): RadioQuestionBuilder;
12
14
  withCountChoices(countChoices: boolean): RadioQuestionBuilder;
13
15
  withHasNoneOfTheAbove(hasNoneOfTheAbove: boolean): RadioQuestionBuilder;
14
16
  withMultipleSelect(multipleSelect: boolean): RadioQuestionBuilder;
15
17
  withRandomize(randomize: boolean): RadioQuestionBuilder;
18
+ withStatic(isStatic: boolean): RadioQuestionBuilder;
19
+ withNumCorrect(numCorrect: number): RadioQuestionBuilder;
16
20
  addChoice(content: string, options?: {
17
21
  correct?: boolean;
18
22
  rationale?: string;
@@ -78,7 +78,6 @@ declare class Radio extends RadioOld {
78
78
  canScrollPage?: boolean;
79
79
  editorChangeDelay?: number;
80
80
  flags?: Record<"new-radio-widget", boolean>;
81
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
82
81
  }> & {
83
82
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
84
83
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
@@ -85,7 +85,6 @@ declare class Table extends React.Component<Props> implements Widget {
85
85
  canScrollPage?: boolean;
86
86
  editorChangeDelay?: number;
87
87
  flags?: Record<"new-radio-widget", boolean>;
88
- onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
89
88
  }> & {
90
89
  baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
91
90
  canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
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": "66.5.0",
6
+ "version": "67.0.0",
7
7
  "publishConfig": {
8
8
  "access": "public"
9
9
  },
@@ -42,15 +42,15 @@
42
42
  "tiny-invariant": "1.3.1",
43
43
  "uuid": "^10.0.0",
44
44
  "@khanacademy/kas": "2.1.0",
45
- "@khanacademy/keypad-context": "3.1.4",
46
- "@khanacademy/kmath": "2.1.4",
47
- "@khanacademy/math-input": "26.1.5",
48
- "@khanacademy/perseus-core": "18.7.0",
49
- "@khanacademy/perseus-linter": "4.2.4",
45
+ "@khanacademy/keypad-context": "3.1.5",
46
+ "@khanacademy/kmath": "2.1.5",
47
+ "@khanacademy/math-input": "26.1.6",
48
+ "@khanacademy/perseus-core": "18.8.0",
49
+ "@khanacademy/perseus-linter": "4.2.5",
50
+ "@khanacademy/perseus-score": "7.6.2",
50
51
  "@khanacademy/perseus-utils": "2.1.0",
51
- "@khanacademy/pure-markdown": "2.2.0",
52
- "@khanacademy/perseus-score": "7.6.1",
53
- "@khanacademy/simple-markdown": "2.1.0"
52
+ "@khanacademy/simple-markdown": "2.1.0",
53
+ "@khanacademy/pure-markdown": "2.2.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@khanacademy/wonder-blocks-banner": "4.2.14",