@khanacademy/perseus 21.4.0 → 21.6.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.css +3 -0
- package/dist/es/index.js +101 -55
- package/dist/es/index.js.map +1 -1
- package/dist/index.css +3 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +102 -51
- package/dist/index.js.map +1 -1
- package/dist/perseus-api.d.ts +5 -3
- package/dist/perseus-types.d.ts +17 -8
- package/dist/server-item-renderer.d.ts +9 -10
- package/dist/types.d.ts +8 -5
- package/dist/widgets/expression.d.ts +30 -18
- package/dist/widgets/interactive-graphs/locked-line.d.ts +4 -0
- package/dist/widgets/interactive-graphs/locked-point.d.ts +4 -0
- package/dist/widgets/label-image.d.ts +10 -6
- package/package.json +34 -35
package/dist/perseus-api.d.ts
CHANGED
|
@@ -96,13 +96,15 @@ export declare const ApiOptions: {
|
|
|
96
96
|
crossOutEnabled?: boolean | undefined;
|
|
97
97
|
editorChangeDelay?: number | undefined;
|
|
98
98
|
flags?: {
|
|
99
|
-
mafs?: false | {
|
|
99
|
+
mafs?: false | ({
|
|
100
100
|
polygon?: boolean | undefined;
|
|
101
101
|
linear?: boolean | undefined;
|
|
102
|
+
ray?: boolean | undefined;
|
|
102
103
|
segment?: boolean | undefined;
|
|
103
104
|
"linear-system"?: boolean | undefined;
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
} & {
|
|
106
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
107
|
+
}) | undefined;
|
|
106
108
|
} | undefined;
|
|
107
109
|
onWidgetStartProps?: ((widgets: import("./perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
108
110
|
}> & {
|
package/dist/perseus-types.d.ts
CHANGED
|
@@ -4,10 +4,6 @@ export type Range = Interval;
|
|
|
4
4
|
export type Size = [number, number];
|
|
5
5
|
export type CollinearTuple = readonly [vec.Vector2, vec.Vector2];
|
|
6
6
|
export type ShowSolutions = "all" | "selected" | "none";
|
|
7
|
-
export type StyleParams = {
|
|
8
|
-
fill?: string;
|
|
9
|
-
stroke?: string;
|
|
10
|
-
};
|
|
11
7
|
type Empty = Record<never, never>;
|
|
12
8
|
export type PerseusWidgetsMap = {
|
|
13
9
|
[key in `categorizer ${number}`]: CategorizerWidget;
|
|
@@ -351,12 +347,25 @@ export type PerseusInteractiveGraphWidgetOptions = {
|
|
|
351
347
|
correct: PerseusGraphType;
|
|
352
348
|
lockedFigures?: ReadonlyArray<LockedFigure>;
|
|
353
349
|
};
|
|
354
|
-
export
|
|
355
|
-
export type
|
|
356
|
-
export type
|
|
350
|
+
export declare const lockedFigureColors: readonly ["purple", "blue", "teal", "green", "gold", "red", "pink"];
|
|
351
|
+
export type LockedFigureColor = (typeof lockedFigureColors)[number];
|
|
352
|
+
export type LockedFigure = LockedPointType | LockedLineType;
|
|
353
|
+
export type LockedFigureType = LockedFigure["type"];
|
|
354
|
+
export type LockedPointType = {
|
|
357
355
|
type: "point";
|
|
358
356
|
coord: Coord;
|
|
359
|
-
|
|
357
|
+
color: LockedFigureColor;
|
|
358
|
+
filled: boolean;
|
|
359
|
+
};
|
|
360
|
+
export type LockedLineType = {
|
|
361
|
+
type: "line";
|
|
362
|
+
kind: "line" | "ray" | "segment";
|
|
363
|
+
points: [startPoint: LockedPointType, endPoint: LockedPointType];
|
|
364
|
+
color: LockedFigureColor;
|
|
365
|
+
lineStyle: "solid" | "dashed";
|
|
366
|
+
showArrows: boolean;
|
|
367
|
+
showStartPoint: boolean;
|
|
368
|
+
showEndPoint: boolean;
|
|
360
369
|
};
|
|
361
370
|
export type PerseusGraphType = PerseusGraphTypeAngle | PerseusGraphTypeCircle | PerseusGraphTypeLinear | PerseusGraphTypeLinearSystem | PerseusGraphTypePoint | PerseusGraphTypePolygon | PerseusGraphTypeQuadratic | PerseusGraphTypeRay | PerseusGraphTypeSegment | PerseusGraphTypeSinusoid;
|
|
362
371
|
export type PerseusGraphTypeCommon = {
|
|
@@ -9,7 +9,7 @@ import * as PerseusLinter from "@khanacademy/perseus-linter";
|
|
|
9
9
|
*/
|
|
10
10
|
import * as React from "react";
|
|
11
11
|
import Renderer from "./renderer";
|
|
12
|
-
import type { PerseusItem } from "./perseus-types";
|
|
12
|
+
import type { PerseusItem, ShowSolutions } from "./perseus-types";
|
|
13
13
|
import type { APIOptions, FocusPath, PerseusDependenciesV2 } from "./types";
|
|
14
14
|
import type { KeypadAPI } from "@khanacademy/math-input";
|
|
15
15
|
import type { KeypadContextRendererInterface, RendererInterface, KEScore } from "@khanacademy/perseus-core";
|
|
@@ -23,16 +23,13 @@ type OwnProps = {
|
|
|
23
23
|
reviewMode?: boolean;
|
|
24
24
|
keypadElement?: KeypadAPI | null | undefined;
|
|
25
25
|
dependencies: PerseusDependenciesV2;
|
|
26
|
+
showSolutions?: ShowSolutions;
|
|
26
27
|
};
|
|
27
28
|
type HOCProps = {
|
|
28
29
|
onRendered: (isRendered: boolean) => void;
|
|
29
30
|
};
|
|
30
31
|
type Props = OwnProps & HOCProps;
|
|
31
|
-
type DefaultProps =
|
|
32
|
-
apiOptions: Props["apiOptions"];
|
|
33
|
-
onRendered: Props["onRendered"];
|
|
34
|
-
linterContext: Props["linterContext"];
|
|
35
|
-
};
|
|
32
|
+
type DefaultProps = Required<Pick<Props, "apiOptions" | "onRendered" | "linterContext">>;
|
|
36
33
|
type State = {
|
|
37
34
|
questionCompleted: boolean;
|
|
38
35
|
questionHighlightedWidgets: ReadonlyArray<any>;
|
|
@@ -102,7 +99,7 @@ export declare class ServerItemRenderer extends React.Component<Props, State> im
|
|
|
102
99
|
setAssetStatus: (assetKey: string, status: boolean) => void;
|
|
103
100
|
render(): React.ReactNode;
|
|
104
101
|
}
|
|
105
|
-
declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps, "item" | "problemNum" | "keypadElement" | "reviewMode" | "dependencies" | "hintsVisible"> & {
|
|
102
|
+
declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps, "item" | "problemNum" | "keypadElement" | "showSolutions" | "reviewMode" | "dependencies" | "hintsVisible"> & {
|
|
106
103
|
apiOptions?: Readonly<{
|
|
107
104
|
isArticle?: boolean | undefined;
|
|
108
105
|
onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
|
|
@@ -138,13 +135,15 @@ declare const ref: React.ForwardRefExoticComponent<Omit<Pick<OwnProps & HOCProps
|
|
|
138
135
|
crossOutEnabled?: boolean | undefined;
|
|
139
136
|
editorChangeDelay?: number | undefined;
|
|
140
137
|
flags?: {
|
|
141
|
-
mafs?: false | {
|
|
138
|
+
mafs?: false | ({
|
|
142
139
|
polygon?: boolean | undefined;
|
|
143
140
|
linear?: boolean | undefined;
|
|
141
|
+
ray?: boolean | undefined;
|
|
144
142
|
segment?: boolean | undefined;
|
|
145
143
|
"linear-system"?: boolean | undefined;
|
|
146
|
-
|
|
147
|
-
|
|
144
|
+
} & {
|
|
145
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
146
|
+
}) | undefined;
|
|
148
147
|
} | undefined;
|
|
149
148
|
onWidgetStartProps?: ((widgets: import("./perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
150
149
|
}> | undefined;
|
package/dist/types.d.ts
CHANGED
|
@@ -77,7 +77,8 @@ type TrackInteractionArgs = {
|
|
|
77
77
|
id: string;
|
|
78
78
|
correct?: boolean;
|
|
79
79
|
} & Partial<TrackingGradedGroupExtraArguments> & Partial<TrackingSequenceExtraArguments>;
|
|
80
|
-
export declare const
|
|
80
|
+
export declare const MafsGraphTypeFlags: readonly ["segment", "linear", "linear-system", "ray", "polygon"];
|
|
81
|
+
export declare const InteractiveGraphLockedFeaturesFlags: readonly ["interactive-graph-locked-features-m1"];
|
|
81
82
|
/**
|
|
82
83
|
* APIOptions provides different ways to customize the behaviour of Perseus.
|
|
83
84
|
*
|
|
@@ -203,11 +204,13 @@ export type APIOptions = Readonly<{
|
|
|
203
204
|
/**
|
|
204
205
|
* Flags related to the interactive-graph Mafs migration.
|
|
205
206
|
*
|
|
206
|
-
* Add values to the
|
|
207
|
+
* Add values to the relevant array to create new flags.
|
|
207
208
|
*/
|
|
208
|
-
mafs?: false | {
|
|
209
|
-
[Key in (typeof
|
|
210
|
-
}
|
|
209
|
+
mafs?: false | ({
|
|
210
|
+
[Key in (typeof MafsGraphTypeFlags)[number]]?: boolean;
|
|
211
|
+
} & {
|
|
212
|
+
[Key in (typeof InteractiveGraphLockedFeaturesFlags)[number]]?: boolean;
|
|
213
|
+
});
|
|
211
214
|
};
|
|
212
215
|
/**
|
|
213
216
|
* This is a callback function that returns all of the Widget props
|
|
@@ -124,13 +124,15 @@ declare const _default: Readonly<{
|
|
|
124
124
|
crossOutEnabled?: boolean | undefined;
|
|
125
125
|
editorChangeDelay?: number | undefined;
|
|
126
126
|
flags?: {
|
|
127
|
-
mafs?: false | {
|
|
127
|
+
mafs?: false | ({
|
|
128
128
|
polygon?: boolean | undefined;
|
|
129
129
|
linear?: boolean | undefined;
|
|
130
|
+
ray?: boolean | undefined;
|
|
130
131
|
segment?: boolean | undefined;
|
|
131
132
|
"linear-system"?: boolean | undefined;
|
|
132
|
-
|
|
133
|
-
|
|
133
|
+
} & {
|
|
134
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
135
|
+
}) | undefined;
|
|
134
136
|
} | undefined;
|
|
135
137
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
136
138
|
}> & {
|
|
@@ -199,13 +201,15 @@ declare const _default: Readonly<{
|
|
|
199
201
|
crossOutEnabled?: boolean | undefined;
|
|
200
202
|
editorChangeDelay?: number | undefined;
|
|
201
203
|
flags?: {
|
|
202
|
-
mafs?: false | {
|
|
204
|
+
mafs?: false | ({
|
|
203
205
|
polygon?: boolean | undefined;
|
|
204
206
|
linear?: boolean | undefined;
|
|
207
|
+
ray?: boolean | undefined;
|
|
205
208
|
segment?: boolean | undefined;
|
|
206
209
|
"linear-system"?: boolean | undefined;
|
|
207
|
-
|
|
208
|
-
|
|
210
|
+
} & {
|
|
211
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
212
|
+
}) | undefined;
|
|
209
213
|
} | undefined;
|
|
210
214
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
211
215
|
}> & {
|
|
@@ -274,13 +278,15 @@ declare const _default: Readonly<{
|
|
|
274
278
|
crossOutEnabled?: boolean | undefined;
|
|
275
279
|
editorChangeDelay?: number | undefined;
|
|
276
280
|
flags?: {
|
|
277
|
-
mafs?: false | {
|
|
281
|
+
mafs?: false | ({
|
|
278
282
|
polygon?: boolean | undefined;
|
|
279
283
|
linear?: boolean | undefined;
|
|
284
|
+
ray?: boolean | undefined;
|
|
280
285
|
segment?: boolean | undefined;
|
|
281
286
|
"linear-system"?: boolean | undefined;
|
|
282
|
-
|
|
283
|
-
|
|
287
|
+
} & {
|
|
288
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
289
|
+
}) | undefined;
|
|
284
290
|
} | undefined;
|
|
285
291
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
286
292
|
}> & {
|
|
@@ -346,13 +352,15 @@ declare const _default: Readonly<{
|
|
|
346
352
|
crossOutEnabled?: boolean | undefined;
|
|
347
353
|
editorChangeDelay?: number | undefined;
|
|
348
354
|
flags?: {
|
|
349
|
-
mafs?: false | {
|
|
355
|
+
mafs?: false | ({
|
|
350
356
|
polygon?: boolean | undefined;
|
|
351
357
|
linear?: boolean | undefined;
|
|
358
|
+
ray?: boolean | undefined;
|
|
352
359
|
segment?: boolean | undefined;
|
|
353
360
|
"linear-system"?: boolean | undefined;
|
|
354
|
-
|
|
355
|
-
|
|
361
|
+
} & {
|
|
362
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
363
|
+
}) | undefined;
|
|
356
364
|
} | undefined;
|
|
357
365
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
358
366
|
}> & {
|
|
@@ -421,13 +429,15 @@ declare const _default: Readonly<{
|
|
|
421
429
|
crossOutEnabled?: boolean | undefined;
|
|
422
430
|
editorChangeDelay?: number | undefined;
|
|
423
431
|
flags?: {
|
|
424
|
-
mafs?: false | {
|
|
432
|
+
mafs?: false | ({
|
|
425
433
|
polygon?: boolean | undefined;
|
|
426
434
|
linear?: boolean | undefined;
|
|
435
|
+
ray?: boolean | undefined;
|
|
427
436
|
segment?: boolean | undefined;
|
|
428
437
|
"linear-system"?: boolean | undefined;
|
|
429
|
-
|
|
430
|
-
|
|
438
|
+
} & {
|
|
439
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
440
|
+
}) | undefined;
|
|
431
441
|
} | undefined;
|
|
432
442
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
433
443
|
}> & {
|
|
@@ -496,13 +506,15 @@ declare const _default: Readonly<{
|
|
|
496
506
|
crossOutEnabled?: boolean | undefined;
|
|
497
507
|
editorChangeDelay?: number | undefined;
|
|
498
508
|
flags?: {
|
|
499
|
-
mafs?: false | {
|
|
509
|
+
mafs?: false | ({
|
|
500
510
|
polygon?: boolean | undefined;
|
|
501
511
|
linear?: boolean | undefined;
|
|
512
|
+
ray?: boolean | undefined;
|
|
502
513
|
segment?: boolean | undefined;
|
|
503
514
|
"linear-system"?: boolean | undefined;
|
|
504
|
-
|
|
505
|
-
|
|
515
|
+
} & {
|
|
516
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
517
|
+
}) | undefined;
|
|
506
518
|
} | undefined;
|
|
507
519
|
onWidgetStartProps?: ((widgets: import("../perseus-types").PerseusWidgetsMap) => void) | undefined;
|
|
508
520
|
}> & {
|
|
@@ -123,13 +123,15 @@ declare const _default: Readonly<{
|
|
|
123
123
|
crossOutEnabled?: boolean | undefined;
|
|
124
124
|
editorChangeDelay?: number | undefined;
|
|
125
125
|
flags?: {
|
|
126
|
-
mafs?: false | {
|
|
126
|
+
mafs?: false | ({
|
|
127
127
|
polygon?: boolean | undefined;
|
|
128
128
|
linear?: boolean | undefined;
|
|
129
|
+
ray?: boolean | undefined;
|
|
129
130
|
segment?: boolean | undefined;
|
|
130
131
|
"linear-system"?: boolean | undefined;
|
|
131
|
-
|
|
132
|
-
|
|
132
|
+
} & {
|
|
133
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
134
|
+
}) | undefined;
|
|
133
135
|
} | undefined;
|
|
134
136
|
onWidgetStartProps?: ((widgets: import("..").PerseusWidgetsMap) => void) | undefined;
|
|
135
137
|
}>;
|
|
@@ -180,13 +182,15 @@ declare const _default: Readonly<{
|
|
|
180
182
|
crossOutEnabled?: boolean | undefined;
|
|
181
183
|
editorChangeDelay?: number | undefined;
|
|
182
184
|
flags?: {
|
|
183
|
-
mafs?: false | {
|
|
185
|
+
mafs?: false | ({
|
|
184
186
|
polygon?: boolean | undefined;
|
|
185
187
|
linear?: boolean | undefined;
|
|
188
|
+
ray?: boolean | undefined;
|
|
186
189
|
segment?: boolean | undefined;
|
|
187
190
|
"linear-system"?: boolean | undefined;
|
|
188
|
-
|
|
189
|
-
|
|
191
|
+
} & {
|
|
192
|
+
"interactive-graph-locked-features-m1"?: boolean | undefined;
|
|
193
|
+
}) | undefined;
|
|
190
194
|
} | undefined;
|
|
191
195
|
onWidgetStartProps?: ((widgets: import("..").PerseusWidgetsMap) => void) | undefined;
|
|
192
196
|
}>;
|
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": "21.
|
|
6
|
+
"version": "21.6.0",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -27,33 +27,32 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@khanacademy/kas": "^0.3.9",
|
|
29
29
|
"@khanacademy/kmath": "^0.1.12",
|
|
30
|
-
"@khanacademy/math-input": "^17.
|
|
30
|
+
"@khanacademy/math-input": "^17.5.0",
|
|
31
31
|
"@khanacademy/perseus-core": "1.4.2",
|
|
32
32
|
"@khanacademy/perseus-linter": "^0.3.12",
|
|
33
33
|
"@khanacademy/pure-markdown": "^0.3.1",
|
|
34
34
|
"@khanacademy/simple-markdown": "^0.11.4",
|
|
35
|
-
"@khanacademy/wonder-blocks-banner": "^3.0.33",
|
|
36
35
|
"mafs": "https://github.com/Khan/mafs/releases/download/v0.18.1%2Bbuild-cd8b2467893342ba0b02100073fe21f93f8b1125/mafs-0.18.1.tgz"
|
|
37
36
|
},
|
|
38
37
|
"devDependencies": {
|
|
39
|
-
"@khanacademy/wonder-blocks-
|
|
40
|
-
"@khanacademy/wonder-blocks-
|
|
41
|
-
"@khanacademy/wonder-blocks-
|
|
42
|
-
"@khanacademy/wonder-blocks-
|
|
43
|
-
"@khanacademy/wonder-blocks-
|
|
44
|
-
"@khanacademy/wonder-blocks-
|
|
38
|
+
"@khanacademy/wonder-blocks-banner": "^3.0.41",
|
|
39
|
+
"@khanacademy/wonder-blocks-button": "^6.3.0",
|
|
40
|
+
"@khanacademy/wonder-blocks-clickable": "^4.2.0",
|
|
41
|
+
"@khanacademy/wonder-blocks-core": "^6.4.0",
|
|
42
|
+
"@khanacademy/wonder-blocks-data": "^13.0.7",
|
|
43
|
+
"@khanacademy/wonder-blocks-dropdown": "^5.2.0",
|
|
44
|
+
"@khanacademy/wonder-blocks-form": "^4.5.0",
|
|
45
45
|
"@khanacademy/wonder-blocks-i18n": "^2.0.2",
|
|
46
|
-
"@khanacademy/wonder-blocks-icon": "^4.0
|
|
47
|
-
"@khanacademy/wonder-blocks-layout": "^2.0.
|
|
48
|
-
"@khanacademy/wonder-blocks-link": "^6.0
|
|
49
|
-
"@khanacademy/wonder-blocks-
|
|
50
|
-
"@khanacademy/wonder-blocks-
|
|
51
|
-
"@khanacademy/wonder-blocks-
|
|
52
|
-
"@khanacademy/wonder-blocks-
|
|
53
|
-
"@khanacademy/wonder-blocks-switch": "^1.1.12",
|
|
46
|
+
"@khanacademy/wonder-blocks-icon": "^4.1.0",
|
|
47
|
+
"@khanacademy/wonder-blocks-layout": "^2.0.31",
|
|
48
|
+
"@khanacademy/wonder-blocks-link": "^6.1.0",
|
|
49
|
+
"@khanacademy/wonder-blocks-pill": "^2.2.0",
|
|
50
|
+
"@khanacademy/wonder-blocks-popover": "^3.2.0",
|
|
51
|
+
"@khanacademy/wonder-blocks-progress-spinner": "^2.1.0",
|
|
52
|
+
"@khanacademy/wonder-blocks-switch": "^1.1.15",
|
|
54
53
|
"@khanacademy/wonder-blocks-tokens": "^1.1.0",
|
|
55
|
-
"@khanacademy/wonder-blocks-tooltip": "^2.1
|
|
56
|
-
"@khanacademy/wonder-blocks-typography": "^2.1.
|
|
54
|
+
"@khanacademy/wonder-blocks-tooltip": "^2.2.1",
|
|
55
|
+
"@khanacademy/wonder-blocks-typography": "^2.1.11",
|
|
57
56
|
"@khanacademy/wonder-stuff-core": "^1.5.1",
|
|
58
57
|
"@phosphor-icons/core": "^2.0.2",
|
|
59
58
|
"@popperjs/core": "^2.10.1",
|
|
@@ -72,24 +71,24 @@
|
|
|
72
71
|
"underscore": "^1.4.4"
|
|
73
72
|
},
|
|
74
73
|
"peerDependencies": {
|
|
75
|
-
"@khanacademy/wonder-blocks-
|
|
76
|
-
"@khanacademy/wonder-blocks-
|
|
77
|
-
"@khanacademy/wonder-blocks-
|
|
78
|
-
"@khanacademy/wonder-blocks-
|
|
79
|
-
"@khanacademy/wonder-blocks-
|
|
80
|
-
"@khanacademy/wonder-blocks-
|
|
74
|
+
"@khanacademy/wonder-blocks-banner": "^3.0.41",
|
|
75
|
+
"@khanacademy/wonder-blocks-button": "^6.3.0",
|
|
76
|
+
"@khanacademy/wonder-blocks-clickable": "^4.2.0",
|
|
77
|
+
"@khanacademy/wonder-blocks-core": "^6.4.0",
|
|
78
|
+
"@khanacademy/wonder-blocks-data": "^13.0.7",
|
|
79
|
+
"@khanacademy/wonder-blocks-dropdown": "^5.2.0",
|
|
80
|
+
"@khanacademy/wonder-blocks-form": "^4.5.0",
|
|
81
81
|
"@khanacademy/wonder-blocks-i18n": "^2.0.2",
|
|
82
|
-
"@khanacademy/wonder-blocks-icon": "^4.0
|
|
83
|
-
"@khanacademy/wonder-blocks-layout": "^2.0.
|
|
84
|
-
"@khanacademy/wonder-blocks-link": "^6.0
|
|
85
|
-
"@khanacademy/wonder-blocks-
|
|
86
|
-
"@khanacademy/wonder-blocks-
|
|
87
|
-
"@khanacademy/wonder-blocks-
|
|
88
|
-
"@khanacademy/wonder-blocks-
|
|
89
|
-
"@khanacademy/wonder-blocks-switch": "^1.1.12",
|
|
82
|
+
"@khanacademy/wonder-blocks-icon": "^4.1.0",
|
|
83
|
+
"@khanacademy/wonder-blocks-layout": "^2.0.31",
|
|
84
|
+
"@khanacademy/wonder-blocks-link": "^6.1.0",
|
|
85
|
+
"@khanacademy/wonder-blocks-pill": "^2.2.0",
|
|
86
|
+
"@khanacademy/wonder-blocks-popover": "^3.2.0",
|
|
87
|
+
"@khanacademy/wonder-blocks-progress-spinner": "^2.1.0",
|
|
88
|
+
"@khanacademy/wonder-blocks-switch": "^1.1.15",
|
|
90
89
|
"@khanacademy/wonder-blocks-tokens": "^1.1.0",
|
|
91
|
-
"@khanacademy/wonder-blocks-tooltip": "^2.1
|
|
92
|
-
"@khanacademy/wonder-blocks-typography": "^2.1.
|
|
90
|
+
"@khanacademy/wonder-blocks-tooltip": "^2.2.1",
|
|
91
|
+
"@khanacademy/wonder-blocks-typography": "^2.1.11",
|
|
93
92
|
"@khanacademy/wonder-stuff-core": "^1.5.1",
|
|
94
93
|
"@phosphor-icons/core": "^2.0.2",
|
|
95
94
|
"@popperjs/core": "^2.10.1",
|