@khanacademy/perseus-editor 5.3.0 → 6.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.
- package/dist/all-editors.d.ts +38 -1
- package/dist/components/color-swatch.d.ts +9 -0
- package/dist/components/locked-figure-settings.d.ts +2 -1
- package/dist/components/locked-line-settings.d.ts +8 -0
- package/dist/es/index.css +1 -1
- package/dist/es/index.js +385 -198
- package/dist/es/index.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +410 -209
- package/dist/index.js.map +1 -1
- package/dist/widgets/input-number-editor.d.ts +6 -0
- package/dist/widgets/interactive-graph-editor.d.ts +208 -70
- package/dist/widgets/numeric-input-editor.d.ts +69 -1
- package/package.json +4 -6
- package/dist/components/color-circle.d.ts +0 -9
- package/dist/strings.js +0 -9
|
@@ -1,2 +1,70 @@
|
|
|
1
|
-
|
|
1
|
+
import { PerseusI18nContext } from "@khanacademy/perseus";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import type { APIOptionsWithDefaults } from "@khanacademy/perseus";
|
|
4
|
+
type MathFormat = "integer" | "mixed" | "improper" | "proper" | "decimal" | "percent" | "pi";
|
|
5
|
+
type PerseusNumericInputAnswerForm = {
|
|
6
|
+
simplify: "required" | "correct" | "enforced" | "optional" | null | undefined;
|
|
7
|
+
name: MathFormat;
|
|
8
|
+
};
|
|
9
|
+
type PerseusNumericInputAnswer = {
|
|
10
|
+
message: string;
|
|
11
|
+
value: number;
|
|
12
|
+
status: string;
|
|
13
|
+
answerForms?: ReadonlyArray<MathFormat>;
|
|
14
|
+
strict: boolean;
|
|
15
|
+
maxError: number | null | undefined;
|
|
16
|
+
simplify: string | null | undefined;
|
|
17
|
+
};
|
|
18
|
+
type PerseusNumericInputWidgetOptions = {
|
|
19
|
+
answers: ReadonlyArray<PerseusNumericInputAnswer>;
|
|
20
|
+
labelText: string;
|
|
21
|
+
size: string;
|
|
22
|
+
coefficient: boolean;
|
|
23
|
+
rightAlign?: boolean;
|
|
24
|
+
static?: boolean;
|
|
25
|
+
answerForms?: ReadonlyArray<PerseusNumericInputAnswerForm>;
|
|
26
|
+
};
|
|
27
|
+
type Props = PerseusNumericInputWidgetOptions & {
|
|
28
|
+
onChange: (results: any) => any;
|
|
29
|
+
apiOptions?: APIOptionsWithDefaults;
|
|
30
|
+
};
|
|
31
|
+
type State = {
|
|
32
|
+
lastStatus: string;
|
|
33
|
+
showOptions: boolean[];
|
|
34
|
+
};
|
|
35
|
+
declare class NumericInputEditor extends React.Component<Props, State> {
|
|
36
|
+
static contextType: React.Context<{
|
|
37
|
+
strings: import("../../../perseus/src/strings").PerseusStrings;
|
|
38
|
+
locale: string;
|
|
39
|
+
}>;
|
|
40
|
+
context: React.ContextType<typeof PerseusI18nContext>;
|
|
41
|
+
static widgetName: string;
|
|
42
|
+
static displayName: string;
|
|
43
|
+
static defaultProps: {
|
|
44
|
+
answers: {
|
|
45
|
+
value: null;
|
|
46
|
+
status: string;
|
|
47
|
+
message: string;
|
|
48
|
+
simplify: string;
|
|
49
|
+
answerForms: never[];
|
|
50
|
+
strict: boolean;
|
|
51
|
+
maxError: null;
|
|
52
|
+
}[];
|
|
53
|
+
size: string;
|
|
54
|
+
coefficient: boolean;
|
|
55
|
+
labelText: string;
|
|
56
|
+
rightAlign: boolean;
|
|
57
|
+
};
|
|
58
|
+
constructor(props: Props);
|
|
59
|
+
render(): JSX.Element;
|
|
60
|
+
change(...args: any[]): any;
|
|
61
|
+
onToggleOptions(choiceIndex: any): void;
|
|
62
|
+
onTrashAnswer(choiceIndex: any): void;
|
|
63
|
+
onSpace(e: any, callback: any): void;
|
|
64
|
+
onStatusChange(choiceIndex: any): void;
|
|
65
|
+
updateAnswer(choiceIndex: any, update: any): ((p3: any) => void) | undefined;
|
|
66
|
+
addAnswer(): void;
|
|
67
|
+
getSaveWarnings(): never[];
|
|
68
|
+
serialize(): any;
|
|
69
|
+
}
|
|
2
70
|
export default NumericInputEditor;
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Perseus editors",
|
|
4
4
|
"author": "Khan Academy",
|
|
5
5
|
"license": "MIT",
|
|
6
|
-
"version": "
|
|
6
|
+
"version": "6.0.0",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@khanacademy/kas": "^0.3.9",
|
|
29
29
|
"@khanacademy/kmath": "^0.1.12",
|
|
30
|
-
"@khanacademy/math-input": "^
|
|
31
|
-
"@khanacademy/perseus": "^
|
|
30
|
+
"@khanacademy/math-input": "^18.0.0",
|
|
31
|
+
"@khanacademy/perseus": "^22.0.0",
|
|
32
32
|
"@khanacademy/perseus-core": "1.4.2"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
@@ -38,7 +38,6 @@
|
|
|
38
38
|
"@khanacademy/wonder-blocks-core": "^6.4.0",
|
|
39
39
|
"@khanacademy/wonder-blocks-dropdown": "^5.2.0",
|
|
40
40
|
"@khanacademy/wonder-blocks-form": "^4.5.0",
|
|
41
|
-
"@khanacademy/wonder-blocks-i18n": "^2.0.2",
|
|
42
41
|
"@khanacademy/wonder-blocks-icon": "4.1.0",
|
|
43
42
|
"@khanacademy/wonder-blocks-icon-button": "^5.2.0",
|
|
44
43
|
"@khanacademy/wonder-blocks-switch": "^1.1.15",
|
|
@@ -51,7 +50,7 @@
|
|
|
51
50
|
"create-react-class": "^15.6.3",
|
|
52
51
|
"jquery": "^2.1.1",
|
|
53
52
|
"katex": "^0.11.1",
|
|
54
|
-
"perseus-build-settings": "^0.
|
|
53
|
+
"perseus-build-settings": "^0.4.0",
|
|
55
54
|
"prop-types": "^15.6.1",
|
|
56
55
|
"react": "16.14.0",
|
|
57
56
|
"react-dom": "16.14.0",
|
|
@@ -64,7 +63,6 @@
|
|
|
64
63
|
"@khanacademy/wonder-blocks-core": "^6.4.0",
|
|
65
64
|
"@khanacademy/wonder-blocks-dropdown": "^5.2.0",
|
|
66
65
|
"@khanacademy/wonder-blocks-form": "^4.5.0",
|
|
67
|
-
"@khanacademy/wonder-blocks-i18n": "^2.0.2",
|
|
68
66
|
"@khanacademy/wonder-blocks-icon": "4.1.0",
|
|
69
67
|
"@khanacademy/wonder-blocks-icon-button": "^5.2.0",
|
|
70
68
|
"@khanacademy/wonder-blocks-switch": "^1.1.15",
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import type { LockedFigureColor } from "@khanacademy/perseus";
|
|
3
|
-
type Props = {
|
|
4
|
-
color: LockedFigureColor;
|
|
5
|
-
filled?: boolean;
|
|
6
|
-
decorative?: boolean;
|
|
7
|
-
};
|
|
8
|
-
declare const ColorCircle: (props: Props) => JSX.Element;
|
|
9
|
-
export default ColorCircle;
|