@khanacademy/perseus 92.1.0 → 93.0.1
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/chunk-rolldown-runtime-DWWV-OC4.js +14 -0
- package/dist/components/drag-and-drop/answer-tile/answer-tile.d.ts +2 -1
- package/dist/components/drag-and-drop/answer-tile/index.d.ts +0 -1
- package/dist/components/drag-and-drop/blank/blank-component.d.ts +2 -1
- package/dist/components/drag-and-drop/blank/index.d.ts +0 -1
- package/dist/components/drag-and-drop/dnd-action-menu/index.d.ts +1 -1
- package/dist/index.css +2 -27
- package/dist/index.d.ts +1 -1
- package/dist/index.js +21515 -118
- package/dist/index.js.map +1 -1
- package/dist/renderer.d.ts +1 -0
- package/dist/server-item-renderer.d.ts +0 -8
- package/dist/strings.js +1021 -3
- package/dist/strings.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/util/graphie-utils.d.ts +4 -2
- package/dist/util/{test-utils.d.ts → scoring.testutils.d.ts} +2 -1
- package/dist/widgets/image/utils.d.ts +0 -55
- package/dist/widgets/interactive-graphs/graph.testutils.d.ts +2 -0
- package/dist/widgets/interactive-graphs/graphs/components/movable-line/index.d.ts +0 -1
- package/dist/widgets/interactive-graphs/utils.d.ts +0 -2
- package/dist/widgets/radio/utils/string-utils.d.ts +0 -47
- package/package.json +50 -50
- package/dist/chunk-register-all-widgets-for-testing-DhqLyGU0.js +0 -2136
- package/dist/chunk-register-all-widgets-for-testing-DhqLyGU0.js.map +0 -1
- package/dist/index.css.map +0 -1
- package/dist/testing/article-renderer-with-debug-ui.d.ts +0 -17
- package/dist/testing/debug-accordion-ui.d.ts +0 -14
- package/dist/testing/debug-check-answer-footer.d.ts +0 -20
- package/dist/testing/extract-widget-ids-contract-tests.d.ts +0 -10
- package/dist/testing/feature-flags-context.d.ts +0 -7
- package/dist/testing/feature-flags-util.d.ts +0 -15
- package/dist/testing/image-loader-utils.d.ts +0 -9
- package/dist/testing/item-flipbook/item-flipbook-model.d.ts +0 -22
- package/dist/testing/item-flipbook/item-flipbook-view-model.d.ts +0 -57
- package/dist/testing/item-flipbook/item-flipbook-view.d.ts +0 -7
- package/dist/testing/item-flipbook/item-flipbook.d.ts +0 -2
- package/dist/testing/item-flipbook/safe-parse-perseus-item.d.ts +0 -2
- package/dist/testing/item-renderer-hooks.d.ts +0 -45
- package/dist/testing/item-renderer-reducer.d.ts +0 -39
- package/dist/testing/object-utils.d.ts +0 -1
- package/dist/testing/render-question-with-cypress.d.ts +0 -9
- package/dist/testing/server-item-renderer-with-debug-ui.d.ts +0 -17
- package/dist/testing/split-view.d.ts +0 -13
- package/dist/testing/storybook-view-options-context.d.ts +0 -7
- package/dist/testing/test-dependencies.d.ts +0 -6
- package/dist/testing/test-keypad-context-wrapper.d.ts +0 -10
- package/dist/testing/test-mathjax.d.ts +0 -10
- package/dist/testing/use-storybook-api-options.d.ts +0 -6
- package/dist/testing/user-input-ui.d.ts +0 -7
- package/dist/testing/wait.d.ts +0 -27
- package/dist/testing.d.ts +0 -5
- package/dist/testing.js +0 -68116
- package/dist/testing.js.map +0 -1
- package/dist/util/scoring.d.ts +0 -2
- package/dist/widgets/interactive-graphs/utils/point-labels/point-labels.d.ts +0 -2
- package/dist/widgets/mock-widgets/index.d.ts +0 -2
- /package/dist/widgets/mock-widgets/{mock-asset-loading-widget.d.ts → mock-asset-loading-widget.testutils.d.ts} +0 -0
- /package/dist/widgets/table/{test-util.d.ts → table.testutils.d.ts} +0 -0
package/dist/types.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export type DeviceType = "phone" | "tablet" | "desktop";
|
|
|
22
22
|
* @deprecated and likely a very broken API
|
|
23
23
|
* [LEMS-3185] do not trust serializedState
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
type SerializedState = Record<string, any>;
|
|
26
26
|
/**
|
|
27
27
|
* The Widget type represents the common API that the Renderer uses to interact
|
|
28
28
|
* with all widgets. All widgets must implement the methods in this API, unless
|
|
@@ -32,8 +32,10 @@ type CacheEntry = {
|
|
|
32
32
|
range: [Coord, Coord];
|
|
33
33
|
};
|
|
34
34
|
/**
|
|
35
|
-
* Reset the label data cache.
|
|
36
|
-
*
|
|
35
|
+
* Reset the label data cache.
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
38
|
+
* This is used for testing to ensure a clean state between test cases.
|
|
37
39
|
*/
|
|
38
40
|
export declare function resetLabelDataCache(): void;
|
|
39
41
|
export declare function loadGraphie(url: string, onDataLoaded: (data: CacheEntry, localized: boolean) => void): void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { CategorizerWidget,
|
|
1
|
+
import type { CategorizerWidget, PerseusItem, PerseusRenderer, PerseusScore, PerseusWidgetTypes, UserInputMap } from "@khanacademy/perseus-core";
|
|
2
|
+
export declare function isCorrect(score: PerseusScore): boolean;
|
|
2
3
|
/**
|
|
3
4
|
* Thin wrapper around scorePerseusItem for internal testing. Returns the
|
|
4
5
|
* aggregate score; tests that need the per-widget breakdown should call
|
|
@@ -7,58 +7,3 @@ export declare function isGif(url: string): boolean;
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function decodeGifFrames(src: string): Promise<ParsedFrame[]>;
|
|
9
9
|
export declare function isSvg(url: string): boolean;
|
|
10
|
-
export declare const earthMoonImage: {
|
|
11
|
-
url: string;
|
|
12
|
-
width: number;
|
|
13
|
-
height: number;
|
|
14
|
-
};
|
|
15
|
-
export declare const frescoImage: {
|
|
16
|
-
url: string;
|
|
17
|
-
width: number;
|
|
18
|
-
height: number;
|
|
19
|
-
};
|
|
20
|
-
export declare const portraitImage: {
|
|
21
|
-
url: string;
|
|
22
|
-
width: number;
|
|
23
|
-
height: number;
|
|
24
|
-
};
|
|
25
|
-
export declare const portraitImageTitle = "The Arnolfini Portrait";
|
|
26
|
-
export declare const portraitImageCaption = "Jan van Eyck, *The Arnolfini Portrait*, 1434, oil on oak panel, 82.2 x 60 cm (National Gallery, London; photo: [Steven Zucker](https://flic.kr/p/2qEGNDi), CC BY-NC-SA 4.0)";
|
|
27
|
-
export declare const portraitImageLongDescription = "Jan van Eyck, The Arnolfini Portrait, 1434, oil on oak panel, 82.2 x 60 cm (National Gallery, London; photo: Steven Zucker, CC BY-NC-SA 4.0)";
|
|
28
|
-
export declare const scienceImage: {
|
|
29
|
-
url: string;
|
|
30
|
-
width: number;
|
|
31
|
-
height: number;
|
|
32
|
-
};
|
|
33
|
-
export declare const scienceImageCaption = "*A diagram of prophase. During this stage of mitosis, chromosomes condense, the nuclear envelope breaks apart, and the mitotic spindle begins to form. Created with [Biorender.com](BioRender.com).*";
|
|
34
|
-
export declare const scienceImageAlt = "A diagram shows a single, circular cell.";
|
|
35
|
-
export declare const graphieImage: {
|
|
36
|
-
url: string;
|
|
37
|
-
width: number;
|
|
38
|
-
height: number;
|
|
39
|
-
};
|
|
40
|
-
export declare const graphieImageAlt = "An array of isosceles triangles. A triangle has height A. Two smaller triangle, one with height B and one with height C, have approximately the same combined height as A.";
|
|
41
|
-
export declare const animatedGifLandscape: {
|
|
42
|
-
url: string;
|
|
43
|
-
width: number;
|
|
44
|
-
height: number;
|
|
45
|
-
};
|
|
46
|
-
export declare const animatedGifLandscapeAlt = "A person on a skateboard moves back and forth across a concrete structure that forms the shape of a U.";
|
|
47
|
-
export declare const animatedGifPortrait: {
|
|
48
|
-
url: string;
|
|
49
|
-
width: number;
|
|
50
|
-
height: number;
|
|
51
|
-
};
|
|
52
|
-
export declare const animatedGifPortraitAlt = "A surreal illustration of Earth with a faucet attached, draining resources, above a wallet filled with currency, against a red background.";
|
|
53
|
-
export declare const nonAnimatedGif: {
|
|
54
|
-
url: string;
|
|
55
|
-
width: number;
|
|
56
|
-
height: number;
|
|
57
|
-
};
|
|
58
|
-
export declare const nonAnimatedGifAlt = "A black and white cat resting on a blanket on a couch, with its eyes closed and arms and legs tucked in.";
|
|
59
|
-
export declare const svgImage: {
|
|
60
|
-
url: string;
|
|
61
|
-
width: number;
|
|
62
|
-
height: number;
|
|
63
|
-
};
|
|
64
|
-
export declare const extremelyLongDescription = "\nLorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex sapien vitae pellentesque sem placerat. In id cursus mi pretium tellus duis convallis. Tempus leo eu aenean sed diam urna tempor. Pulvinar vivamus fringilla lacus nec metus bibendum egestas. Iaculis massa nisl malesuada lacinia integer nunc posuere. Ut hendrerit semper vel class aptent taciti sociosqu. Ad litora torquent per conubia nostra inceptos himenaeos.\n\nLorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex sapien vitae pellentesque sem placerat. In id cursus mi pretium tellus duis convallis. Tempus leo eu aenean sed diam urna tempor. Pulvinar vivamus fringilla lacus nec metus bibendum egestas. Iaculis massa nisl malesuada lacinia integer nunc posuere. Ut hendrerit semper vel class aptent taciti sociosqu. Ad litora torquent per conubia nostra inceptos himenaeos.\n\nLorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex sapien vitae pellentesque sem placerat. In id cursus mi pretium tellus duis convallis. Tempus leo eu aenean sed diam urna tempor. Pulvinar vivamus fringilla lacus nec metus bibendum egestas. Iaculis massa nisl malesuada lacinia integer nunc posuere. Ut hendrerit semper vel class aptent taciti sociosqu. Ad litora torquent per conubia nostra inceptos himenaeos.\n\nLorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex sapien vitae pellentesque sem placerat. In id cursus mi pretium tellus duis convallis. Tempus leo eu aenean sed diam urna tempor. Pulvinar vivamus fringilla lacus nec metus bibendum egestas. Iaculis massa nisl malesuada lacinia integer nunc posuere. Ut hendrerit semper vel class aptent taciti sociosqu. Ad litora torquent per conubia nostra inceptos himenaeos.\n\nLorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex sapien vitae pellentesque sem placerat. In id cursus mi pretium tellus duis convallis. Tempus leo eu aenean sed diam urna tempor. Pulvinar vivamus fringilla lacus nec metus bibendum egestas. Iaculis massa nisl malesuada lacinia integer nunc posuere. Ut hendrerit semper vel class aptent taciti sociosqu. Ad litora torquent per conubia nostra inceptos himenaeos.\n";
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { MafsGraphProps } from "./mafs-graph";
|
|
2
1
|
import type { InteractiveGraphState, UnlimitedGraphState } from "./types";
|
|
3
2
|
import type { Coord } from "../../interactive2/types";
|
|
4
3
|
import type { PerseusInteractiveGraphWidgetOptions } from "@khanacademy/perseus-core";
|
|
@@ -37,7 +36,6 @@ export declare const mathOnlyParser: import("@khanacademy/simple-markdown").Pars
|
|
|
37
36
|
* and the text outside of the $ blocks will be non-TeX text.
|
|
38
37
|
*/
|
|
39
38
|
export declare function replaceOutsideTeX(mathString: string): string;
|
|
40
|
-
export declare function getBaseMafsGraphPropsForTests(): MafsGraphProps;
|
|
41
39
|
export declare const calculateNestedSVGCoords: (range: vec.Vector2[], width: number, height: number) => {
|
|
42
40
|
viewboxX: number;
|
|
43
41
|
viewboxY: number;
|
|
@@ -1,30 +1,4 @@
|
|
|
1
1
|
import type { PerseusStrings } from "../../../strings";
|
|
2
|
-
/**
|
|
3
|
-
* Given a choice's position in the radio widget, return the corresponding
|
|
4
|
-
* "choice letter". (For example, `getChoiceLetter(0)` is "A",
|
|
5
|
-
* `getChoiceLetter(1)` is "B", etc.)
|
|
6
|
-
*
|
|
7
|
-
* All locales use English letters for the choice letters.
|
|
8
|
-
*
|
|
9
|
-
* @param pos - The position of the choice in the radio widget.
|
|
10
|
-
* @param strings - The strings for the Radio widget.
|
|
11
|
-
* @returns The choice letter for the given position.
|
|
12
|
-
*/
|
|
13
|
-
export declare const getChoiceLetter: (pos: number, strings: PerseusStrings) => string;
|
|
14
|
-
interface GetOptionStatusTextProps {
|
|
15
|
-
checked: boolean;
|
|
16
|
-
correct: boolean;
|
|
17
|
-
strings: PerseusStrings;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Get the correct (translated) string for an option status (correct, incorrect, selected, etc.)
|
|
21
|
-
*
|
|
22
|
-
* @param checked - Whether the option is checked.
|
|
23
|
-
* @param correct - Whether the option is correct.
|
|
24
|
-
* @param strings - The strings for the Radio widget.
|
|
25
|
-
* @returns The appropriate string for the option status.
|
|
26
|
-
*/
|
|
27
|
-
export declare const getOptionStatusText: ({ checked, correct, strings, }: GetOptionStatusTextProps) => string;
|
|
28
2
|
interface GetInstructionsTextProps {
|
|
29
3
|
multipleSelect: boolean;
|
|
30
4
|
countChoices: boolean | null | undefined;
|
|
@@ -44,25 +18,4 @@ interface GetInstructionsTextProps {
|
|
|
44
18
|
* @returns The instructions string for the widget.
|
|
45
19
|
*/
|
|
46
20
|
export declare const getInstructionsText: ({ multipleSelect, countChoices, numCorrect, strings, }: GetInstructionsTextProps) => string;
|
|
47
|
-
interface GetA11yTextProps {
|
|
48
|
-
letter: string;
|
|
49
|
-
checked: boolean;
|
|
50
|
-
correct: boolean;
|
|
51
|
-
showCorrectness: boolean;
|
|
52
|
-
strings: PerseusStrings;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Get the (translated) a11y string for a Radio widget.
|
|
56
|
-
*
|
|
57
|
-
* This string is provided to screen readers to help the user
|
|
58
|
-
* understand the current state of a Radio option.
|
|
59
|
-
*
|
|
60
|
-
* @param letter - The letter for the choice.
|
|
61
|
-
* @param checked - Whether the choice is checked.
|
|
62
|
-
* @param correct - Whether the choice is correct.
|
|
63
|
-
* @param showCorrectness - Whether the correctness is shown.
|
|
64
|
-
* @param strings - The strings for the Radio widget.
|
|
65
|
-
* @returns The a11y string for the Radio option.
|
|
66
|
-
*/
|
|
67
|
-
export declare const getA11yText: ({ letter, checked, correct, showCorrectness, strings, }: GetA11yTextProps) => string;
|
|
68
21
|
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": "93.0.1",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -19,8 +19,7 @@
|
|
|
19
19
|
"exports": {
|
|
20
20
|
".": "./dist/index.js",
|
|
21
21
|
"./strings": "./dist/strings.js",
|
|
22
|
-
"./styles.css": "./dist/index.css"
|
|
23
|
-
"./testing": "./dist/testing.js"
|
|
22
|
+
"./styles.css": "./dist/index.css"
|
|
24
23
|
},
|
|
25
24
|
"files": [
|
|
26
25
|
"dist"
|
|
@@ -28,80 +27,81 @@
|
|
|
28
27
|
"dependencies": {
|
|
29
28
|
"@dnd-kit/dom": "^0.5.0",
|
|
30
29
|
"@dnd-kit/react": "^0.5.0",
|
|
31
|
-
"@khanacademy/kas": "3.
|
|
32
|
-
"@khanacademy/keypad-context": "6.0.
|
|
33
|
-
"@khanacademy/kmath": "3.1.
|
|
34
|
-
"@khanacademy/math-input": "30.
|
|
35
|
-
"@khanacademy/perseus-core": "42.0
|
|
36
|
-
"@khanacademy/perseus-linter": "
|
|
37
|
-
"@khanacademy/perseus-score": "9.0.
|
|
38
|
-
"@khanacademy/perseus-utils": "3.0.
|
|
39
|
-
"@khanacademy/pure-markdown": "3.1.
|
|
40
|
-
"@khanacademy/simple-markdown": "4.0.
|
|
30
|
+
"@khanacademy/kas": "3.1.1",
|
|
31
|
+
"@khanacademy/keypad-context": "6.0.10",
|
|
32
|
+
"@khanacademy/kmath": "3.1.3",
|
|
33
|
+
"@khanacademy/math-input": "30.2.0",
|
|
34
|
+
"@khanacademy/perseus-core": "42.1.0",
|
|
35
|
+
"@khanacademy/perseus-linter": "7.0.1",
|
|
36
|
+
"@khanacademy/perseus-score": "9.0.11",
|
|
37
|
+
"@khanacademy/perseus-utils": "3.0.2",
|
|
38
|
+
"@khanacademy/pure-markdown": "3.1.1",
|
|
39
|
+
"@khanacademy/simple-markdown": "4.0.2",
|
|
41
40
|
"@use-gesture/react": "^10.2.27",
|
|
42
41
|
"gifuct-js": "^2.1.2",
|
|
43
|
-
"jquery": "
|
|
42
|
+
"jquery": "4.0.0",
|
|
44
43
|
"mafs": "0.19.0",
|
|
45
44
|
"tiny-invariant": "1.3.1",
|
|
46
45
|
"uuid": "^10.0.0"
|
|
47
46
|
},
|
|
48
47
|
"devDependencies": {
|
|
48
|
+
"@internal/build-settings": "0.9.2",
|
|
49
49
|
"@khanacademy/wonder-blocks-announcer": "1.1.2",
|
|
50
|
-
"@khanacademy/wonder-blocks-banner": "5.
|
|
51
|
-
"@khanacademy/wonder-blocks-button": "11.7.
|
|
52
|
-
"@khanacademy/wonder-blocks-clickable": "8.3.
|
|
50
|
+
"@khanacademy/wonder-blocks-banner": "5.2.0",
|
|
51
|
+
"@khanacademy/wonder-blocks-button": "11.7.13",
|
|
52
|
+
"@khanacademy/wonder-blocks-clickable": "8.3.2",
|
|
53
53
|
"@khanacademy/wonder-blocks-core": "12.5.0",
|
|
54
54
|
"@khanacademy/wonder-blocks-data": "15.1.0",
|
|
55
|
-
"@khanacademy/wonder-blocks-dropdown": "10.13.
|
|
56
|
-
"@khanacademy/wonder-blocks-form": "7.
|
|
57
|
-
"@khanacademy/wonder-blocks-icon": "6.0.
|
|
58
|
-
"@khanacademy/wonder-blocks-icon-button": "12.0.
|
|
59
|
-
"@khanacademy/wonder-blocks-labeled-field": "4.
|
|
60
|
-
"@khanacademy/wonder-blocks-layout": "3.1
|
|
61
|
-
"@khanacademy/wonder-blocks-link": "10.
|
|
62
|
-
"@khanacademy/wonder-blocks-modal": "8.
|
|
63
|
-
"@khanacademy/wonder-blocks-popover": "7.
|
|
64
|
-
"@khanacademy/wonder-blocks-progress-spinner": "3.
|
|
65
|
-
"@khanacademy/wonder-blocks-switch": "3.4.
|
|
55
|
+
"@khanacademy/wonder-blocks-dropdown": "10.13.7",
|
|
56
|
+
"@khanacademy/wonder-blocks-form": "7.7.4",
|
|
57
|
+
"@khanacademy/wonder-blocks-icon": "6.0.3",
|
|
58
|
+
"@khanacademy/wonder-blocks-icon-button": "12.0.2",
|
|
59
|
+
"@khanacademy/wonder-blocks-labeled-field": "4.3.4",
|
|
60
|
+
"@khanacademy/wonder-blocks-layout": "3.2.1",
|
|
61
|
+
"@khanacademy/wonder-blocks-link": "10.5.1",
|
|
62
|
+
"@khanacademy/wonder-blocks-modal": "8.10.1",
|
|
63
|
+
"@khanacademy/wonder-blocks-popover": "7.1.1",
|
|
64
|
+
"@khanacademy/wonder-blocks-progress-spinner": "3.2.0",
|
|
65
|
+
"@khanacademy/wonder-blocks-switch": "3.4.15",
|
|
66
66
|
"@khanacademy/wonder-blocks-timing": "7.1.0",
|
|
67
|
-
"@khanacademy/wonder-blocks-tokens": "18.
|
|
68
|
-
"@khanacademy/wonder-blocks-tooltip": "4.2.
|
|
69
|
-
"@khanacademy/wonder-blocks-typography": "5.0.
|
|
67
|
+
"@khanacademy/wonder-blocks-tokens": "18.1.0",
|
|
68
|
+
"@khanacademy/wonder-blocks-tooltip": "4.2.12",
|
|
69
|
+
"@khanacademy/wonder-blocks-typography": "5.0.6",
|
|
70
70
|
"@khanacademy/wonder-stuff-core": "3.0.0",
|
|
71
71
|
"@phosphor-icons/core": "2.0.2",
|
|
72
72
|
"@popperjs/core": "2.10.2",
|
|
73
73
|
"aphrodite": "1.2.5",
|
|
74
74
|
"classnames": "1.1.4",
|
|
75
|
-
"perseus-build-settings": "0.9.2",
|
|
76
75
|
"prop-types": "15.8.1",
|
|
77
76
|
"raphael": "1.5.4",
|
|
78
77
|
"react": "18.2.0",
|
|
79
78
|
"react-dom": "18.2.0",
|
|
79
|
+
"react-json-view": "^1.21.3",
|
|
80
80
|
"react-popper": "^2.2.5",
|
|
81
81
|
"underscore": "1.4.4"
|
|
82
82
|
},
|
|
83
83
|
"peerDependencies": {
|
|
84
84
|
"@khanacademy/wonder-blocks-announcer": "^1.1.2",
|
|
85
|
-
"@khanacademy/wonder-blocks-banner": "^5.
|
|
86
|
-
"@khanacademy/wonder-blocks-button": "^11.7.
|
|
87
|
-
"@khanacademy/wonder-blocks-clickable": "^8.3.
|
|
85
|
+
"@khanacademy/wonder-blocks-banner": "^5.2.0",
|
|
86
|
+
"@khanacademy/wonder-blocks-button": "^11.7.13",
|
|
87
|
+
"@khanacademy/wonder-blocks-clickable": "^8.3.2",
|
|
88
88
|
"@khanacademy/wonder-blocks-core": "^12.5.0",
|
|
89
89
|
"@khanacademy/wonder-blocks-data": "^15.1.0",
|
|
90
|
-
"@khanacademy/wonder-blocks-dropdown": "^10.13.
|
|
91
|
-
"@khanacademy/wonder-blocks-form": "^7.
|
|
92
|
-
"@khanacademy/wonder-blocks-icon": "^6.0.
|
|
93
|
-
"@khanacademy/wonder-blocks-icon-button": "^12.0.
|
|
94
|
-
"@khanacademy/wonder-blocks-labeled-field": "^4.
|
|
95
|
-
"@khanacademy/wonder-blocks-layout": "^3.1
|
|
96
|
-
"@khanacademy/wonder-blocks-link": "^10.
|
|
97
|
-
"@khanacademy/wonder-blocks-modal": "^8.
|
|
98
|
-
"@khanacademy/wonder-blocks-popover": "^7.
|
|
99
|
-
"@khanacademy/wonder-blocks-progress-spinner": "^3.
|
|
100
|
-
"@khanacademy/wonder-blocks-switch": "^3.4.
|
|
90
|
+
"@khanacademy/wonder-blocks-dropdown": "^10.13.7",
|
|
91
|
+
"@khanacademy/wonder-blocks-form": "^7.7.4",
|
|
92
|
+
"@khanacademy/wonder-blocks-icon": "^6.0.3",
|
|
93
|
+
"@khanacademy/wonder-blocks-icon-button": "^12.0.2",
|
|
94
|
+
"@khanacademy/wonder-blocks-labeled-field": "^4.3.4",
|
|
95
|
+
"@khanacademy/wonder-blocks-layout": "^3.2.1",
|
|
96
|
+
"@khanacademy/wonder-blocks-link": "^10.5.1",
|
|
97
|
+
"@khanacademy/wonder-blocks-modal": "^8.10.1",
|
|
98
|
+
"@khanacademy/wonder-blocks-popover": "^7.1.1",
|
|
99
|
+
"@khanacademy/wonder-blocks-progress-spinner": "^3.2.0",
|
|
100
|
+
"@khanacademy/wonder-blocks-switch": "^3.4.15",
|
|
101
101
|
"@khanacademy/wonder-blocks-timing": "^7.1.0",
|
|
102
|
-
"@khanacademy/wonder-blocks-tokens": "^18.
|
|
103
|
-
"@khanacademy/wonder-blocks-tooltip": "^4.2.
|
|
104
|
-
"@khanacademy/wonder-blocks-typography": "^5.0.
|
|
102
|
+
"@khanacademy/wonder-blocks-tokens": "^18.1.0",
|
|
103
|
+
"@khanacademy/wonder-blocks-tooltip": "^4.2.12",
|
|
104
|
+
"@khanacademy/wonder-blocks-typography": "^5.0.6",
|
|
105
105
|
"@khanacademy/wonder-stuff-core": "^3.0.0",
|
|
106
106
|
"@phosphor-icons/core": "^2.0.2",
|
|
107
107
|
"@popperjs/core": "^2.10.2",
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
},
|
|
116
116
|
"keywords": [],
|
|
117
117
|
"khan": {
|
|
118
|
-
"catalogHash": "
|
|
118
|
+
"catalogHash": "c5e0d95da455a764"
|
|
119
119
|
},
|
|
120
120
|
"scripts": {}
|
|
121
121
|
}
|