@khanacademy/perseus 63.0.1 → 64.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/es/index.js +41 -62
- package/dist/es/index.js.map +1 -1
- package/dist/es/strings.js +1 -1
- package/dist/es/strings.js.map +1 -1
- package/dist/index.js +40 -61
- package/dist/index.js.map +1 -1
- package/dist/server-item-renderer.d.ts +0 -1
- package/dist/strings.d.ts +6 -26
- package/dist/strings.js +1 -1
- package/dist/strings.js.map +1 -1
- package/dist/types.d.ts +5 -27
- package/dist/widgets/expression/expression.d.ts +0 -3
- package/dist/widgets/interactive-graph.d.ts +6 -1
- package/dist/widgets/label-image/label-image.d.ts +19 -14
- package/dist/widgets/label-image/marker.d.ts +4 -5
- package/dist/widgets/measurer/measurer.d.ts +0 -1
- package/dist/widgets/numeric-input/numeric-input.d.ts +0 -2
- package/dist/widgets/radio/base-radio.d.ts +0 -2
- package/dist/widgets/radio/base-radio.new.d.ts +0 -2
- package/dist/widgets/radio/choice-a11y-text.d.ts +1 -1
- package/dist/widgets/radio/choice-icon/choice-icon.d.ts +0 -1
- package/dist/widgets/radio/choice-icon/choice-icon.new.d.ts +0 -1
- package/dist/widgets/radio/choice.d.ts +0 -2
- package/dist/widgets/radio/choice.new.d.ts +0 -2
- package/dist/widgets/radio/option-status.d.ts +0 -1
- package/dist/widgets/radio/option-status.new.d.ts +1 -2
- package/dist/widgets/radio/radio-component.d.ts +0 -1
- package/dist/widgets/radio/radio.d.ts +0 -1
- package/dist/widgets/radio/utils/string-utils.d.ts +2 -5
- package/package.json +62 -62
- package/dist/widgets/radio/choice-icon/cross-out-line.d.ts +0 -9
|
@@ -9,8 +9,7 @@ import * as React from "react";
|
|
|
9
9
|
import { PerseusI18nContext } from "../../components/i18n-context";
|
|
10
10
|
import Marker from "./marker";
|
|
11
11
|
import type { DependencyProps } from "../../dependencies";
|
|
12
|
-
import type {
|
|
13
|
-
import type { APIOptions, Widget } from "../../types";
|
|
12
|
+
import type { Widget, WidgetProps } from "../../types";
|
|
14
13
|
import type { LabelImagePromptJSON } from "../../widget-ai-utils/label-image/label-image-ai-utils";
|
|
15
14
|
import type { InteractiveMarkerType, PerseusLabelImageWidgetOptions, PerseusLabelImageUserInput } from "@khanacademy/perseus-core";
|
|
16
15
|
type PreferredPopoverDirection = "NONE" | "UP" | "DOWN" | "LEFT" | "RIGHT";
|
|
@@ -32,10 +31,13 @@ type Point = {
|
|
|
32
31
|
x: number;
|
|
33
32
|
y: number;
|
|
34
33
|
};
|
|
35
|
-
type
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
export type OptionalAnswersMarkerType = Omit<InteractiveMarkerType, "answers"> & {
|
|
35
|
+
answers?: string[];
|
|
36
|
+
};
|
|
37
|
+
type Options = Omit<PerseusLabelImageWidgetOptions, "markers"> & {
|
|
38
|
+
markers: ReadonlyArray<OptionalAnswersMarkerType>;
|
|
39
|
+
};
|
|
40
|
+
type Props = WidgetProps<Options> & DependencyProps & {
|
|
39
41
|
preferredPopoverDirection?: PreferredPopoverDirection;
|
|
40
42
|
};
|
|
41
43
|
type LabelImageState = {
|
|
@@ -43,7 +45,7 @@ type LabelImageState = {
|
|
|
43
45
|
markersInteracted: boolean;
|
|
44
46
|
hideAnswers: boolean;
|
|
45
47
|
};
|
|
46
|
-
export declare class LabelImage extends React.Component<
|
|
48
|
+
export declare class LabelImage extends React.Component<Props, LabelImageState> implements Widget {
|
|
47
49
|
static contextType: React.Context<import("../../components/i18n-context").I18nContextType>;
|
|
48
50
|
context: React.ContextType<typeof PerseusI18nContext>;
|
|
49
51
|
_markers: Array<Marker | null | undefined>;
|
|
@@ -64,14 +66,18 @@ export declare class LabelImage extends React.Component<LabelImageProps, LabelIm
|
|
|
64
66
|
* Given a cardinal navigation direction (in the x or y axis), return the
|
|
65
67
|
* next marker index to visit.
|
|
66
68
|
*/
|
|
67
|
-
static navigateToMarkerIndex(navigateDirection: Direction, markers:
|
|
68
|
-
|
|
69
|
+
static navigateToMarkerIndex(navigateDirection: Direction, markers: ReadonlyArray<{
|
|
70
|
+
x: number;
|
|
71
|
+
y: number;
|
|
72
|
+
showCorrectness?: "correct" | "incorrect";
|
|
73
|
+
}>, thisIndex: number): number;
|
|
74
|
+
constructor(props: Props);
|
|
69
75
|
componentDidMount(): void;
|
|
70
76
|
componentWillUnmount(): void;
|
|
71
77
|
getUserInput(): PerseusLabelImageUserInput;
|
|
72
78
|
getPromptJSON(): LabelImagePromptJSON;
|
|
73
79
|
showRationalesForCurrentlySelectedChoices(): void;
|
|
74
|
-
handleMarkerChange(index: number, marker:
|
|
80
|
+
handleMarkerChange(index: number, marker: Props["markers"][number]): void;
|
|
75
81
|
activateMarker(index: number, opened: boolean): void;
|
|
76
82
|
handleMarkerKeyDown(index: number, e: React.KeyboardEvent): void;
|
|
77
83
|
handleAnswerChoicesChangeForMarker(index: number, selection: ReadonlyArray<boolean>): void;
|
|
@@ -82,10 +88,9 @@ export declare class LabelImage extends React.Component<LabelImageProps, LabelIm
|
|
|
82
88
|
declare const _default: {
|
|
83
89
|
name: string;
|
|
84
90
|
displayName: string;
|
|
85
|
-
widget: React.ForwardRefExoticComponent<Omit<
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
questionCompleted: boolean;
|
|
91
|
+
widget: React.ForwardRefExoticComponent<Omit<Omit<PerseusLabelImageWidgetOptions, "markers"> & {
|
|
92
|
+
markers: ReadonlyArray<OptionalAnswersMarkerType>;
|
|
93
|
+
} & import("../../types").UniversalWidgetProps<Empty, Empty> & Partial<import("../..").PerseusDependenciesV2> & {
|
|
89
94
|
preferredPopoverDirection?: PreferredPopoverDirection;
|
|
90
95
|
}, keyof import("../..").PerseusDependenciesV2> & React.RefAttributes<LabelImage>>;
|
|
91
96
|
accessible: true;
|
|
@@ -5,17 +5,16 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { PerseusI18nContext } from "../../components/i18n-context";
|
|
8
|
-
import type { AnalyticsEventHandlerFn, InteractiveMarkerType } from "@khanacademy/perseus-core";
|
|
9
8
|
import type { CSSProperties } from "aphrodite";
|
|
10
|
-
type Props =
|
|
9
|
+
type Props = {
|
|
10
|
+
selected?: string[];
|
|
11
|
+
showCorrectness?: "correct" | "incorrect";
|
|
12
|
+
label: string;
|
|
11
13
|
showSelected: boolean;
|
|
12
14
|
showPulsate: boolean;
|
|
13
15
|
answerSide: "top" | "bottom" | "left" | "right";
|
|
14
16
|
answerStyles?: CSSProperties;
|
|
15
17
|
showAnswer?: boolean;
|
|
16
|
-
analytics?: {
|
|
17
|
-
onAnalyticsEvent: AnalyticsEventHandlerFn;
|
|
18
|
-
};
|
|
19
18
|
focused: boolean;
|
|
20
19
|
hovered: boolean;
|
|
21
20
|
};
|
|
@@ -40,14 +40,12 @@ export declare const NumericInputComponent: React.ForwardRefExoticComponent<impo
|
|
|
40
40
|
setDrawingAreaAvailable?: (arg1: boolean) => unknown;
|
|
41
41
|
hintProgressColor?: string;
|
|
42
42
|
canScrollPage?: boolean;
|
|
43
|
-
crossOutEnabled?: boolean;
|
|
44
43
|
editorChangeDelay?: number;
|
|
45
44
|
flags?: Record<"new-radio-widget", boolean>;
|
|
46
45
|
onWidgetStartProps?: (widgets: import("@khanacademy/perseus-core").PerseusWidgetsMap) => void;
|
|
47
46
|
}> & {
|
|
48
47
|
baseElements: NonNullable<import("../..").APIOptions["baseElements"]>;
|
|
49
48
|
canScrollPage: NonNullable<import("../..").APIOptions["canScrollPage"]>;
|
|
50
|
-
crossOutEnabled: NonNullable<import("../..").APIOptions["crossOutEnabled"]>;
|
|
51
49
|
editorChangeDelay: NonNullable<import("../..").APIOptions["editorChangeDelay"]>;
|
|
52
50
|
groupAnnotator: NonNullable<import("../..").APIOptions["groupAnnotator"]>;
|
|
53
51
|
isArticle: NonNullable<import("../..").APIOptions["isArticle"]>;
|
|
@@ -3,7 +3,6 @@ import * as React from "react";
|
|
|
3
3
|
import type { APIOptions } from "../../types";
|
|
4
4
|
export type ChoiceType = {
|
|
5
5
|
checked: boolean;
|
|
6
|
-
crossedOut: boolean;
|
|
7
6
|
content: React.ReactNode;
|
|
8
7
|
rationale: React.ReactNode;
|
|
9
8
|
hasRationale: boolean;
|
|
@@ -30,7 +29,6 @@ type Props = {
|
|
|
30
29
|
reviewMode: boolean;
|
|
31
30
|
onChange: (newValues: {
|
|
32
31
|
checked: ReadonlyArray<boolean>;
|
|
33
|
-
crossedOut: ReadonlyArray<boolean>;
|
|
34
32
|
}) => void;
|
|
35
33
|
registerFocusFunction?: (arg1: FocusFunction) => void;
|
|
36
34
|
isLastUsedWidget?: boolean;
|
|
@@ -3,7 +3,6 @@ import * as React from "react";
|
|
|
3
3
|
import type { APIOptions } from "../../types";
|
|
4
4
|
export type ChoiceType = {
|
|
5
5
|
checked: boolean;
|
|
6
|
-
crossedOut: boolean;
|
|
7
6
|
content: React.ReactNode;
|
|
8
7
|
rationale: React.ReactNode;
|
|
9
8
|
hasRationale: boolean;
|
|
@@ -29,7 +28,6 @@ type Props = {
|
|
|
29
28
|
reviewMode: boolean;
|
|
30
29
|
onChange: (newValues: {
|
|
31
30
|
checked: ReadonlyArray<boolean>;
|
|
32
|
-
crossedOut: ReadonlyArray<boolean>;
|
|
33
31
|
}) => void;
|
|
34
32
|
isLastUsedWidget?: boolean;
|
|
35
33
|
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { PerseusStrings } from "../../strings";
|
|
2
|
-
declare function getA11yText(letter: string, checked: boolean, correct: boolean,
|
|
2
|
+
declare function getA11yText(letter: string, checked: boolean, correct: boolean, showCorrectness: boolean, strings: PerseusStrings): string;
|
|
3
3
|
export default getA11yText;
|
|
@@ -12,11 +12,9 @@ export type ChoiceProps = {
|
|
|
12
12
|
showRationale: boolean;
|
|
13
13
|
showCorrectness: boolean;
|
|
14
14
|
multipleSelect: boolean;
|
|
15
|
-
crossedOut: boolean;
|
|
16
15
|
previouslyAnswered?: boolean;
|
|
17
16
|
onChange?: (newValues: {
|
|
18
17
|
checked: boolean;
|
|
19
|
-
crossedOut: boolean;
|
|
20
18
|
}) => void;
|
|
21
19
|
};
|
|
22
20
|
declare const _default: React.ForwardRefExoticComponent<ChoiceProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -12,11 +12,9 @@ export type ChoiceProps = {
|
|
|
12
12
|
showRationale: boolean;
|
|
13
13
|
showCorrectness: boolean;
|
|
14
14
|
multipleSelect: boolean;
|
|
15
|
-
crossedOut: boolean;
|
|
16
15
|
previouslyAnswered?: boolean;
|
|
17
16
|
onChange?: (newValues: {
|
|
18
17
|
checked: boolean;
|
|
19
|
-
crossedOut: boolean;
|
|
20
18
|
}) => void;
|
|
21
19
|
};
|
|
22
20
|
/**
|
|
@@ -9,7 +9,6 @@ import * as React from "react";
|
|
|
9
9
|
type Props = {
|
|
10
10
|
correct: boolean;
|
|
11
11
|
checked: boolean;
|
|
12
|
-
crossedOut: boolean;
|
|
13
12
|
previouslyAnswered: boolean;
|
|
14
13
|
reviewMode: boolean;
|
|
15
14
|
};
|
|
@@ -20,5 +19,5 @@ type Props = {
|
|
|
20
19
|
*
|
|
21
20
|
* TODO(LEMS-2994): Clean up this file.
|
|
22
21
|
*/
|
|
23
|
-
declare const OptionStatus: ({ checked, correct,
|
|
22
|
+
declare const OptionStatus: ({ checked, correct, previouslyAnswered, reviewMode, }: Props) => React.ReactElement | null;
|
|
24
23
|
export default OptionStatus;
|
|
@@ -34,7 +34,6 @@ declare class Radio extends React.Component<Props> implements Widget {
|
|
|
34
34
|
registerFocusFunction(fun: FocusFunction): void;
|
|
35
35
|
updateChoices: (newValueLists: Readonly<{
|
|
36
36
|
checked: ReadonlyArray<boolean>;
|
|
37
|
-
crossedOut: ReadonlyArray<boolean>;
|
|
38
37
|
}>) => void;
|
|
39
38
|
getUserInput(): PerseusRadioUserInput;
|
|
40
39
|
getPromptJSON(): RadioPromptJSON;
|
|
@@ -10,7 +10,6 @@ declare const _default: {
|
|
|
10
10
|
transform: (widgetOptions: PerseusRadioWidgetOptions, strings: PerseusStrings, problemNum?: number | null) => RenderProps;
|
|
11
11
|
staticTransform: (widgetOptions: PerseusRadioWidgetOptions, strings: PerseusStrings, problemNum?: number | null) => RenderProps;
|
|
12
12
|
version: import("@khanacademy/perseus-core").Version | undefined;
|
|
13
|
-
propUpgrades: import("@khanacademy/perseus-core").WidgetOptionsUpgradeMap | undefined;
|
|
14
13
|
isLintable: true;
|
|
15
14
|
};
|
|
16
15
|
export default _default;
|
|
@@ -14,7 +14,6 @@ export declare const getChoiceLetter: (pos: number, strings: PerseusStrings) =>
|
|
|
14
14
|
interface GetOptionStatusTextProps {
|
|
15
15
|
checked: boolean;
|
|
16
16
|
correct: boolean;
|
|
17
|
-
crossedOut: boolean;
|
|
18
17
|
strings: PerseusStrings;
|
|
19
18
|
}
|
|
20
19
|
/**
|
|
@@ -22,11 +21,10 @@ interface GetOptionStatusTextProps {
|
|
|
22
21
|
*
|
|
23
22
|
* @param checked - Whether the option is checked.
|
|
24
23
|
* @param correct - Whether the option is correct.
|
|
25
|
-
* @param crossedOut - Whether the option is crossed out.
|
|
26
24
|
* @param strings - The strings for the Radio widget.
|
|
27
25
|
* @returns The appropriate string for the option status.
|
|
28
26
|
*/
|
|
29
|
-
export declare const getOptionStatusText: ({ checked, correct,
|
|
27
|
+
export declare const getOptionStatusText: ({ checked, correct, strings, }: GetOptionStatusTextProps) => string;
|
|
30
28
|
interface GetInstructionsTextProps {
|
|
31
29
|
multipleSelect: boolean;
|
|
32
30
|
countChoices: boolean | null | undefined;
|
|
@@ -50,7 +48,6 @@ interface GetA11yTextProps {
|
|
|
50
48
|
letter: string;
|
|
51
49
|
checked: boolean;
|
|
52
50
|
correct: boolean;
|
|
53
|
-
crossedOut: boolean;
|
|
54
51
|
showCorrectness: boolean;
|
|
55
52
|
strings: PerseusStrings;
|
|
56
53
|
}
|
|
@@ -68,5 +65,5 @@ interface GetA11yTextProps {
|
|
|
68
65
|
* @param strings - The strings for the Radio widget.
|
|
69
66
|
* @returns The a11y string for the Radio option.
|
|
70
67
|
*/
|
|
71
|
-
export declare const getA11yText: ({ letter, checked, correct,
|
|
68
|
+
export declare const getA11yText: ({ letter, checked, correct, showCorrectness, strings, }: GetA11yTextProps) => string;
|
|
72
69
|
export {};
|
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": "
|
|
6
|
+
"version": "64.0.0",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -39,85 +39,85 @@
|
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@use-gesture/react": "^10.2.27",
|
|
41
41
|
"mafs": "0.19.0",
|
|
42
|
-
"tiny-invariant": "
|
|
42
|
+
"tiny-invariant": "1.3.1",
|
|
43
43
|
"uuid": "^10.0.0",
|
|
44
|
-
"@khanacademy/kas": "2.0.
|
|
45
|
-
"@khanacademy/keypad-context": "3.0.
|
|
46
|
-
"@khanacademy/kmath": "2.0.
|
|
47
|
-
"@khanacademy/math-input": "
|
|
48
|
-
"@khanacademy/perseus-core": "
|
|
49
|
-
"@khanacademy/perseus-linter": "3.0.
|
|
50
|
-
"@khanacademy/perseus-score": "7.0.
|
|
51
|
-
"@khanacademy/perseus-utils": "2.0.
|
|
52
|
-
"@khanacademy/pure-markdown": "2.0.
|
|
53
|
-
"@khanacademy/simple-markdown": "2.0.
|
|
44
|
+
"@khanacademy/kas": "2.0.5",
|
|
45
|
+
"@khanacademy/keypad-context": "3.0.12",
|
|
46
|
+
"@khanacademy/kmath": "2.0.12",
|
|
47
|
+
"@khanacademy/math-input": "26.0.1",
|
|
48
|
+
"@khanacademy/perseus-core": "13.0.0",
|
|
49
|
+
"@khanacademy/perseus-linter": "3.0.12",
|
|
50
|
+
"@khanacademy/perseus-score": "7.0.2",
|
|
51
|
+
"@khanacademy/perseus-utils": "2.0.4",
|
|
52
|
+
"@khanacademy/pure-markdown": "2.0.5",
|
|
53
|
+
"@khanacademy/simple-markdown": "2.0.5"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@khanacademy/wonder-blocks-banner": "4.1.
|
|
57
|
-
"@khanacademy/wonder-blocks-button": "10.0.
|
|
58
|
-
"@khanacademy/wonder-blocks-clickable": "7.1.
|
|
59
|
-
"@khanacademy/wonder-blocks-core": "12.
|
|
60
|
-
"@khanacademy/wonder-blocks-data": "14.1.
|
|
61
|
-
"@khanacademy/wonder-blocks-dropdown": "10.1.
|
|
62
|
-
"@khanacademy/wonder-blocks-form": "7.1.
|
|
63
|
-
"@khanacademy/wonder-blocks-icon-button": "10.
|
|
64
|
-
"@khanacademy/wonder-blocks-icon": "5.1.
|
|
65
|
-
"@khanacademy/wonder-blocks-labeled-field": "3.0.
|
|
66
|
-
"@khanacademy/wonder-blocks-layout": "3.1.
|
|
67
|
-
"@khanacademy/wonder-blocks-link": "9.1.
|
|
68
|
-
"@khanacademy/wonder-blocks-pill": "3.1.
|
|
69
|
-
"@khanacademy/wonder-blocks-popover": "6.1.
|
|
70
|
-
"@khanacademy/wonder-blocks-progress-spinner": "3.1.
|
|
71
|
-
"@khanacademy/wonder-blocks-switch": "3.2.
|
|
72
|
-
"@khanacademy/wonder-blocks-tokens": "10.
|
|
73
|
-
"@khanacademy/wonder-blocks-tooltip": "4.1.
|
|
74
|
-
"@khanacademy/wonder-blocks-typography": "
|
|
56
|
+
"@khanacademy/wonder-blocks-banner": "4.1.21",
|
|
57
|
+
"@khanacademy/wonder-blocks-button": "10.0.5",
|
|
58
|
+
"@khanacademy/wonder-blocks-clickable": "7.1.5",
|
|
59
|
+
"@khanacademy/wonder-blocks-core": "12.3.0",
|
|
60
|
+
"@khanacademy/wonder-blocks-data": "14.1.4",
|
|
61
|
+
"@khanacademy/wonder-blocks-dropdown": "10.1.5",
|
|
62
|
+
"@khanacademy/wonder-blocks-form": "7.1.18",
|
|
63
|
+
"@khanacademy/wonder-blocks-icon-button": "10.2.1",
|
|
64
|
+
"@khanacademy/wonder-blocks-icon": "5.1.4",
|
|
65
|
+
"@khanacademy/wonder-blocks-labeled-field": "3.0.13",
|
|
66
|
+
"@khanacademy/wonder-blocks-layout": "3.1.16",
|
|
67
|
+
"@khanacademy/wonder-blocks-link": "9.1.5",
|
|
68
|
+
"@khanacademy/wonder-blocks-pill": "3.1.18",
|
|
69
|
+
"@khanacademy/wonder-blocks-popover": "6.1.6",
|
|
70
|
+
"@khanacademy/wonder-blocks-progress-spinner": "3.1.16",
|
|
71
|
+
"@khanacademy/wonder-blocks-switch": "3.2.9",
|
|
72
|
+
"@khanacademy/wonder-blocks-tokens": "10.4.0",
|
|
73
|
+
"@khanacademy/wonder-blocks-tooltip": "4.1.20",
|
|
74
|
+
"@khanacademy/wonder-blocks-typography": "4.2.0",
|
|
75
75
|
"@khanacademy/wonder-stuff-core": "1.5.4",
|
|
76
|
-
"@phosphor-icons/core": "
|
|
77
|
-
"@popperjs/core": "
|
|
78
|
-
"aphrodite": "
|
|
76
|
+
"@phosphor-icons/core": "2.0.2",
|
|
77
|
+
"@popperjs/core": "2.10.2",
|
|
78
|
+
"aphrodite": "1.2.5",
|
|
79
79
|
"classnames": "1.1.4",
|
|
80
80
|
"csstype": "^3.1.3",
|
|
81
81
|
"intersection-observer": "^0.12.0",
|
|
82
|
-
"jquery": "
|
|
82
|
+
"jquery": "2.1.1",
|
|
83
83
|
"lodash.debounce": "^4.0.8",
|
|
84
84
|
"prop-types": "15.6.1",
|
|
85
|
-
"react": "
|
|
86
|
-
"react-dom": "
|
|
85
|
+
"react": "18.2.0",
|
|
86
|
+
"react-dom": "18.2.0",
|
|
87
87
|
"react-popper": "^2.2.5",
|
|
88
|
-
"underscore": "
|
|
89
|
-
"perseus-build-settings": "0.6.
|
|
90
|
-
"raphael": "1.5.
|
|
88
|
+
"underscore": "1.4.4",
|
|
89
|
+
"perseus-build-settings": "0.6.2",
|
|
90
|
+
"raphael": "1.5.4"
|
|
91
91
|
},
|
|
92
92
|
"peerDependencies": {
|
|
93
|
-
"@khanacademy/wonder-blocks-banner": "4.1.
|
|
94
|
-
"@khanacademy/wonder-blocks-button": "10.0.
|
|
95
|
-
"@khanacademy/wonder-blocks-clickable": "7.1.
|
|
96
|
-
"@khanacademy/wonder-blocks-core": "12.
|
|
97
|
-
"@khanacademy/wonder-blocks-data": "14.1.
|
|
98
|
-
"@khanacademy/wonder-blocks-dropdown": "10.1.
|
|
99
|
-
"@khanacademy/wonder-blocks-form": "7.1.
|
|
100
|
-
"@khanacademy/wonder-blocks-icon": "5.1.
|
|
101
|
-
"@khanacademy/wonder-blocks-icon-button": "10.
|
|
102
|
-
"@khanacademy/wonder-blocks-labeled-field": "3.0.
|
|
103
|
-
"@khanacademy/wonder-blocks-layout": "3.1.
|
|
104
|
-
"@khanacademy/wonder-blocks-link": "9.1.
|
|
105
|
-
"@khanacademy/wonder-blocks-pill": "3.1.
|
|
106
|
-
"@khanacademy/wonder-blocks-popover": "6.1.
|
|
107
|
-
"@khanacademy/wonder-blocks-progress-spinner": "3.1.
|
|
108
|
-
"@khanacademy/wonder-blocks-switch": "3.2.
|
|
109
|
-
"@khanacademy/wonder-blocks-tokens": "10.
|
|
110
|
-
"@khanacademy/wonder-blocks-tooltip": "4.1.
|
|
111
|
-
"@khanacademy/wonder-blocks-typography": "
|
|
112
|
-
"@khanacademy/wonder-stuff-core": "1.5.4",
|
|
93
|
+
"@khanacademy/wonder-blocks-banner": "^4.1.21",
|
|
94
|
+
"@khanacademy/wonder-blocks-button": "^10.0.5",
|
|
95
|
+
"@khanacademy/wonder-blocks-clickable": "^7.1.5",
|
|
96
|
+
"@khanacademy/wonder-blocks-core": "^12.3.0",
|
|
97
|
+
"@khanacademy/wonder-blocks-data": "^14.1.4",
|
|
98
|
+
"@khanacademy/wonder-blocks-dropdown": "^10.1.5",
|
|
99
|
+
"@khanacademy/wonder-blocks-form": "^7.1.18",
|
|
100
|
+
"@khanacademy/wonder-blocks-icon": "^5.1.4",
|
|
101
|
+
"@khanacademy/wonder-blocks-icon-button": "^10.2.1",
|
|
102
|
+
"@khanacademy/wonder-blocks-labeled-field": "^3.0.13",
|
|
103
|
+
"@khanacademy/wonder-blocks-layout": "^3.1.16",
|
|
104
|
+
"@khanacademy/wonder-blocks-link": "^9.1.5",
|
|
105
|
+
"@khanacademy/wonder-blocks-pill": "^3.1.18",
|
|
106
|
+
"@khanacademy/wonder-blocks-popover": "^6.1.6",
|
|
107
|
+
"@khanacademy/wonder-blocks-progress-spinner": "^3.1.16",
|
|
108
|
+
"@khanacademy/wonder-blocks-switch": "^3.2.9",
|
|
109
|
+
"@khanacademy/wonder-blocks-tokens": "^10.4.0",
|
|
110
|
+
"@khanacademy/wonder-blocks-tooltip": "^4.1.20",
|
|
111
|
+
"@khanacademy/wonder-blocks-typography": "^4.2.0",
|
|
112
|
+
"@khanacademy/wonder-stuff-core": "^1.5.4",
|
|
113
113
|
"@phosphor-icons/core": "^2.0.2",
|
|
114
114
|
"@popperjs/core": "^2.10.2",
|
|
115
115
|
"aphrodite": "^1.2.5",
|
|
116
|
-
"classnames": "1.1.4",
|
|
116
|
+
"classnames": "^1.1.4",
|
|
117
117
|
"intersection-observer": "^0.12.0",
|
|
118
118
|
"jquery": "^2.1.1",
|
|
119
119
|
"lodash.debounce": "^4.0.8",
|
|
120
|
-
"prop-types": "15.6.1",
|
|
120
|
+
"prop-types": "^15.6.1",
|
|
121
121
|
"react": "^18.2.0",
|
|
122
122
|
"react-dom": "^18.2.0",
|
|
123
123
|
"react-popper": "^2.2.5",
|