@khanacademy/perseus-editor 27.0.2 → 27.1.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/components/perseus-editor-accordion.d.ts +1 -0
- package/dist/es/index.css +2 -2
- package/dist/es/index.css.map +1 -1
- package/dist/es/index.js +75 -63
- package/dist/es/index.js.map +1 -1
- package/dist/index.css +2 -2
- package/dist/index.css.map +1 -1
- package/dist/index.js +75 -62
- package/dist/index.js.map +1 -1
- package/dist/widgets/interactive-graph-editor/components/angle-answer-options.d.ts +10 -0
- package/dist/widgets/interactive-graph-editor/components/graph-points-count-selector.d.ts +8 -5
- package/dist/widgets/interactive-graph-editor/components/polygon-answer-options.d.ts +10 -0
- package/dist/widgets/interactive-graph-editor/components/segment-count-selector.d.ts +8 -4
- package/dist/widgets/interactive-graph-editor/interactive-graph-editor.d.ts +110 -22
- package/dist/widgets/radio/radio-image-editor.d.ts +11 -0
- package/dist/widgets/radio/radio-option-content-and-image-editor.d.ts +9 -0
- package/dist/widgets/radio/utils.d.ts +8 -0
- package/package.json +40 -40
- /package/dist/{widgets/radio → components}/auto-resizing-text-area.d.ts +0 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Props as EditorProps } from "../interactive-graph-editor";
|
|
3
|
+
import type { PerseusGraphType, PerseusGraphTypeAngle } from "@khanacademy/perseus-core";
|
|
4
|
+
interface Props {
|
|
5
|
+
correct: PerseusGraphTypeAngle;
|
|
6
|
+
graph: PerseusGraphType | undefined;
|
|
7
|
+
onChange: (props: Partial<EditorProps>) => void;
|
|
8
|
+
}
|
|
9
|
+
export default function AngleAnswerOptions({ correct, graph, onChange }: Props): React.JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
import type { Props as EditorProps } from "../interactive-graph-editor";
|
|
3
|
+
import type { PerseusGraphType, PerseusGraphTypePoint } from "@khanacademy/perseus-core";
|
|
4
|
+
interface Props {
|
|
5
|
+
correct: PerseusGraphTypePoint;
|
|
6
|
+
graph: PerseusGraphType | undefined;
|
|
7
|
+
onChange: (props: Partial<EditorProps>) => void;
|
|
8
|
+
}
|
|
9
|
+
declare const GraphPointsCountSelector: ({ correct, graph, onChange }: Props) => React.JSX.Element;
|
|
7
10
|
export default GraphPointsCountSelector;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Props as EditorProps } from "../interactive-graph-editor";
|
|
3
|
+
import type { PerseusGraphType, PerseusGraphTypePolygon } from "@khanacademy/perseus-core";
|
|
4
|
+
interface Props {
|
|
5
|
+
correct: PerseusGraphTypePolygon;
|
|
6
|
+
graph: PerseusGraphType | undefined;
|
|
7
|
+
onChange: (props: Partial<EditorProps>) => void;
|
|
8
|
+
}
|
|
9
|
+
export default function PolygonAnswerOptions({ correct, graph, onChange, }: Props): React.JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import type { Props as EditorProps } from "../interactive-graph-editor";
|
|
3
|
+
import type { PerseusGraphType, PerseusGraphTypeSegment } from "@khanacademy/perseus-core";
|
|
4
|
+
interface Props {
|
|
5
|
+
correct: PerseusGraphTypeSegment;
|
|
6
|
+
graph: PerseusGraphType | undefined;
|
|
7
|
+
onChange: (props: Partial<EditorProps>) => void;
|
|
8
|
+
}
|
|
9
|
+
declare const SegmentCountSelector: ({ correct, graph, onChange }: Props) => React.JSX.Element;
|
|
6
10
|
export default SegmentCountSelector;
|
|
@@ -89,7 +89,11 @@ declare const InteractiveGraph: {
|
|
|
89
89
|
}> & {
|
|
90
90
|
baseElements: NonNullable<Readonly<{
|
|
91
91
|
isArticle?: boolean;
|
|
92
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
92
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
93
|
+
* The locked figures to display in the graph area.
|
|
94
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
95
|
+
* etc.) that are locked in place and not interactive.
|
|
96
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
93
97
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
94
98
|
showAlignmentOptions?: boolean;
|
|
95
99
|
readOnly?: boolean;
|
|
@@ -125,7 +129,11 @@ declare const InteractiveGraph: {
|
|
|
125
129
|
}>["baseElements"]>;
|
|
126
130
|
canScrollPage: NonNullable<Readonly<{
|
|
127
131
|
isArticle?: boolean;
|
|
128
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
132
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
133
|
+
* The locked figures to display in the graph area.
|
|
134
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
135
|
+
* etc.) that are locked in place and not interactive.
|
|
136
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
129
137
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
130
138
|
showAlignmentOptions?: boolean;
|
|
131
139
|
readOnly?: boolean;
|
|
@@ -161,7 +169,11 @@ declare const InteractiveGraph: {
|
|
|
161
169
|
}>["canScrollPage"]>;
|
|
162
170
|
editorChangeDelay: NonNullable<Readonly<{
|
|
163
171
|
isArticle?: boolean;
|
|
164
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
172
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
173
|
+
* The locked figures to display in the graph area.
|
|
174
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
175
|
+
* etc.) that are locked in place and not interactive.
|
|
176
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
165
177
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
166
178
|
showAlignmentOptions?: boolean;
|
|
167
179
|
readOnly?: boolean;
|
|
@@ -197,7 +209,11 @@ declare const InteractiveGraph: {
|
|
|
197
209
|
}>["editorChangeDelay"]>;
|
|
198
210
|
groupAnnotator: NonNullable<Readonly<{
|
|
199
211
|
isArticle?: boolean;
|
|
200
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
212
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
213
|
+
* The locked figures to display in the graph area.
|
|
214
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
215
|
+
* etc.) that are locked in place and not interactive.
|
|
216
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
201
217
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
202
218
|
showAlignmentOptions?: boolean;
|
|
203
219
|
readOnly?: boolean;
|
|
@@ -233,7 +249,11 @@ declare const InteractiveGraph: {
|
|
|
233
249
|
}>["groupAnnotator"]>;
|
|
234
250
|
isArticle: NonNullable<Readonly<{
|
|
235
251
|
isArticle?: boolean;
|
|
236
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
252
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
253
|
+
* The locked figures to display in the graph area.
|
|
254
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
255
|
+
* etc.) that are locked in place and not interactive.
|
|
256
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
237
257
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
238
258
|
showAlignmentOptions?: boolean;
|
|
239
259
|
readOnly?: boolean;
|
|
@@ -269,7 +289,11 @@ declare const InteractiveGraph: {
|
|
|
269
289
|
}>["isArticle"]>;
|
|
270
290
|
isMobile: NonNullable<Readonly<{
|
|
271
291
|
isArticle?: boolean;
|
|
272
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
292
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
293
|
+
* The locked figures to display in the graph area.
|
|
294
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
295
|
+
* etc.) that are locked in place and not interactive.
|
|
296
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
273
297
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
274
298
|
showAlignmentOptions?: boolean;
|
|
275
299
|
readOnly?: boolean;
|
|
@@ -305,7 +329,11 @@ declare const InteractiveGraph: {
|
|
|
305
329
|
}>["isMobile"]>;
|
|
306
330
|
isMobileApp: NonNullable<Readonly<{
|
|
307
331
|
isArticle?: boolean;
|
|
308
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
332
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
333
|
+
* The locked figures to display in the graph area.
|
|
334
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
335
|
+
* etc.) that are locked in place and not interactive.
|
|
336
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
309
337
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
310
338
|
showAlignmentOptions?: boolean;
|
|
311
339
|
readOnly?: boolean;
|
|
@@ -341,7 +369,11 @@ declare const InteractiveGraph: {
|
|
|
341
369
|
}>["isMobileApp"]>;
|
|
342
370
|
onFocusChange: NonNullable<Readonly<{
|
|
343
371
|
isArticle?: boolean;
|
|
344
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
372
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
373
|
+
* The locked figures to display in the graph area.
|
|
374
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
375
|
+
* etc.) that are locked in place and not interactive.
|
|
376
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
345
377
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
346
378
|
showAlignmentOptions?: boolean;
|
|
347
379
|
readOnly?: boolean;
|
|
@@ -377,7 +409,11 @@ declare const InteractiveGraph: {
|
|
|
377
409
|
}>["onFocusChange"]>;
|
|
378
410
|
readOnly: NonNullable<Readonly<{
|
|
379
411
|
isArticle?: boolean;
|
|
380
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
412
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
413
|
+
* The locked figures to display in the graph area.
|
|
414
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
415
|
+
* etc.) that are locked in place and not interactive.
|
|
416
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
381
417
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
382
418
|
showAlignmentOptions?: boolean;
|
|
383
419
|
readOnly?: boolean;
|
|
@@ -413,7 +449,11 @@ declare const InteractiveGraph: {
|
|
|
413
449
|
}>["readOnly"]>;
|
|
414
450
|
setDrawingAreaAvailable: NonNullable<Readonly<{
|
|
415
451
|
isArticle?: boolean;
|
|
416
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
452
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
453
|
+
* The locked figures to display in the graph area.
|
|
454
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
455
|
+
* etc.) that are locked in place and not interactive.
|
|
456
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
417
457
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
418
458
|
showAlignmentOptions?: boolean;
|
|
419
459
|
readOnly?: boolean;
|
|
@@ -449,7 +489,11 @@ declare const InteractiveGraph: {
|
|
|
449
489
|
}>["setDrawingAreaAvailable"]>;
|
|
450
490
|
showAlignmentOptions: NonNullable<Readonly<{
|
|
451
491
|
isArticle?: boolean;
|
|
452
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
492
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
493
|
+
* The locked figures to display in the graph area.
|
|
494
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
495
|
+
* etc.) that are locked in place and not interactive.
|
|
496
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
453
497
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
454
498
|
showAlignmentOptions?: boolean;
|
|
455
499
|
readOnly?: boolean;
|
|
@@ -757,7 +801,11 @@ declare const InteractiveGraph: {
|
|
|
757
801
|
}> & {
|
|
758
802
|
baseElements: NonNullable<Readonly<{
|
|
759
803
|
isArticle?: boolean;
|
|
760
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
804
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
805
|
+
* The locked figures to display in the graph area.
|
|
806
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
807
|
+
* etc.) that are locked in place and not interactive.
|
|
808
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
761
809
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
762
810
|
showAlignmentOptions?: boolean;
|
|
763
811
|
readOnly?: boolean;
|
|
@@ -793,7 +841,11 @@ declare const InteractiveGraph: {
|
|
|
793
841
|
}>["baseElements"]>;
|
|
794
842
|
canScrollPage: NonNullable<Readonly<{
|
|
795
843
|
isArticle?: boolean;
|
|
796
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
844
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
845
|
+
* The locked figures to display in the graph area.
|
|
846
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
847
|
+
* etc.) that are locked in place and not interactive.
|
|
848
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
797
849
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
798
850
|
showAlignmentOptions?: boolean;
|
|
799
851
|
readOnly?: boolean;
|
|
@@ -829,7 +881,11 @@ declare const InteractiveGraph: {
|
|
|
829
881
|
}>["canScrollPage"]>;
|
|
830
882
|
editorChangeDelay: NonNullable<Readonly<{
|
|
831
883
|
isArticle?: boolean;
|
|
832
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
884
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
885
|
+
* The locked figures to display in the graph area.
|
|
886
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
887
|
+
* etc.) that are locked in place and not interactive.
|
|
888
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
833
889
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
834
890
|
showAlignmentOptions?: boolean;
|
|
835
891
|
readOnly?: boolean;
|
|
@@ -865,7 +921,11 @@ declare const InteractiveGraph: {
|
|
|
865
921
|
}>["editorChangeDelay"]>;
|
|
866
922
|
groupAnnotator: NonNullable<Readonly<{
|
|
867
923
|
isArticle?: boolean;
|
|
868
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
924
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
925
|
+
* The locked figures to display in the graph area.
|
|
926
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
927
|
+
* etc.) that are locked in place and not interactive.
|
|
928
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
869
929
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
870
930
|
showAlignmentOptions?: boolean;
|
|
871
931
|
readOnly?: boolean;
|
|
@@ -901,7 +961,11 @@ declare const InteractiveGraph: {
|
|
|
901
961
|
}>["groupAnnotator"]>;
|
|
902
962
|
isArticle: NonNullable<Readonly<{
|
|
903
963
|
isArticle?: boolean;
|
|
904
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
964
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
965
|
+
* The locked figures to display in the graph area.
|
|
966
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
967
|
+
* etc.) that are locked in place and not interactive.
|
|
968
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
905
969
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
906
970
|
showAlignmentOptions?: boolean;
|
|
907
971
|
readOnly?: boolean;
|
|
@@ -937,7 +1001,11 @@ declare const InteractiveGraph: {
|
|
|
937
1001
|
}>["isArticle"]>;
|
|
938
1002
|
isMobile: NonNullable<Readonly<{
|
|
939
1003
|
isArticle?: boolean;
|
|
940
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1004
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1005
|
+
* The locked figures to display in the graph area.
|
|
1006
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1007
|
+
* etc.) that are locked in place and not interactive.
|
|
1008
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
941
1009
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
942
1010
|
showAlignmentOptions?: boolean;
|
|
943
1011
|
readOnly?: boolean;
|
|
@@ -973,7 +1041,11 @@ declare const InteractiveGraph: {
|
|
|
973
1041
|
}>["isMobile"]>;
|
|
974
1042
|
isMobileApp: NonNullable<Readonly<{
|
|
975
1043
|
isArticle?: boolean;
|
|
976
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1044
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1045
|
+
* The locked figures to display in the graph area.
|
|
1046
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1047
|
+
* etc.) that are locked in place and not interactive.
|
|
1048
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
977
1049
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
978
1050
|
showAlignmentOptions?: boolean;
|
|
979
1051
|
readOnly?: boolean;
|
|
@@ -1009,7 +1081,11 @@ declare const InteractiveGraph: {
|
|
|
1009
1081
|
}>["isMobileApp"]>;
|
|
1010
1082
|
onFocusChange: NonNullable<Readonly<{
|
|
1011
1083
|
isArticle?: boolean;
|
|
1012
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1084
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1085
|
+
* The locked figures to display in the graph area.
|
|
1086
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1087
|
+
* etc.) that are locked in place and not interactive.
|
|
1088
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
1013
1089
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
1014
1090
|
showAlignmentOptions?: boolean;
|
|
1015
1091
|
readOnly?: boolean;
|
|
@@ -1045,7 +1121,11 @@ declare const InteractiveGraph: {
|
|
|
1045
1121
|
}>["onFocusChange"]>;
|
|
1046
1122
|
readOnly: NonNullable<Readonly<{
|
|
1047
1123
|
isArticle?: boolean;
|
|
1048
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1124
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1125
|
+
* The locked figures to display in the graph area.
|
|
1126
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1127
|
+
* etc.) that are locked in place and not interactive.
|
|
1128
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
1049
1129
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
1050
1130
|
showAlignmentOptions?: boolean;
|
|
1051
1131
|
readOnly?: boolean;
|
|
@@ -1081,7 +1161,11 @@ declare const InteractiveGraph: {
|
|
|
1081
1161
|
}>["readOnly"]>;
|
|
1082
1162
|
setDrawingAreaAvailable: NonNullable<Readonly<{
|
|
1083
1163
|
isArticle?: boolean;
|
|
1084
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1164
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1165
|
+
* The locked figures to display in the graph area.
|
|
1166
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1167
|
+
* etc.) that are locked in place and not interactive.
|
|
1168
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
1085
1169
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
1086
1170
|
showAlignmentOptions?: boolean;
|
|
1087
1171
|
readOnly?: boolean;
|
|
@@ -1117,7 +1201,11 @@ declare const InteractiveGraph: {
|
|
|
1117
1201
|
}>["setDrawingAreaAvailable"]>;
|
|
1118
1202
|
showAlignmentOptions: NonNullable<Readonly<{
|
|
1119
1203
|
isArticle?: boolean;
|
|
1120
|
-
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight
|
|
1204
|
+
onFocusChange?: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight? /**
|
|
1205
|
+
* The locked figures to display in the graph area.
|
|
1206
|
+
* Locked figures are graph elements (points, lines, line segmeents,
|
|
1207
|
+
* etc.) that are locked in place and not interactive.
|
|
1208
|
+
*/: number, focusedElement?: HTMLElement) => unknown;
|
|
1121
1209
|
GroupMetadataEditor?: React.ComponentType<any>;
|
|
1122
1210
|
showAlignmentOptions?: boolean;
|
|
1123
1211
|
readOnly?: boolean;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
interface RadioImageEditorProps {
|
|
3
|
+
initialImageUrl: string;
|
|
4
|
+
initialImageAltText: string;
|
|
5
|
+
containerClassName?: string;
|
|
6
|
+
onSave: (imageUrl: string, imageAltText: string) => void;
|
|
7
|
+
onClose?: () => void;
|
|
8
|
+
onDelete?: () => void;
|
|
9
|
+
}
|
|
10
|
+
export default function RadioImageEditor({ initialImageUrl, initialImageAltText, containerClassName, onSave, onClose, onDelete, }: RadioImageEditorProps): React.ReactElement;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
type Props = {
|
|
3
|
+
isNoneOfTheAbove: boolean;
|
|
4
|
+
content: string;
|
|
5
|
+
choiceIndex: number;
|
|
6
|
+
onContentChange: (choiceIndex: number, content: string) => void;
|
|
7
|
+
};
|
|
8
|
+
export declare const RadioOptionContentAndImageEditor: (props: Props) => React.JSX.Element;
|
|
9
|
+
export {};
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
import type { ChoiceMovementType } from "./radio-option-settings-actions";
|
|
2
2
|
import type { PerseusRadioChoice } from "@khanacademy/perseus-core";
|
|
3
3
|
export declare function getMovedChoices(choices: PerseusRadioChoice[], hasNoneOfTheAbove: boolean, choiceIndex: number, movement: ChoiceMovementType): PerseusRadioChoice[];
|
|
4
|
+
export declare function setImageProxyFromMarkdownContent(markdownContent: string): [string, {
|
|
5
|
+
url: string;
|
|
6
|
+
altText: string;
|
|
7
|
+
}[]];
|
|
8
|
+
export declare function setMarkdownContentFromImageProxy(proxiedContent: string, images: {
|
|
9
|
+
url: string;
|
|
10
|
+
altText: string;
|
|
11
|
+
}[]): string;
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Perseus editors",
|
|
4
4
|
"author": "Khan Academy",
|
|
5
5
|
"license": "MIT",
|
|
6
|
-
"version": "27.0
|
|
6
|
+
"version": "27.1.0",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
@@ -35,36 +35,36 @@
|
|
|
35
35
|
"mafs": "^0.19.0",
|
|
36
36
|
"tiny-invariant": "1.3.1",
|
|
37
37
|
"@khanacademy/kas": "2.1.0",
|
|
38
|
-
"@khanacademy/keypad-context": "3.1.
|
|
39
|
-
"@khanacademy/kmath": "2.1.
|
|
40
|
-
"@khanacademy/
|
|
41
|
-
"@khanacademy/
|
|
42
|
-
"@khanacademy/perseus": "
|
|
43
|
-
"@khanacademy/perseus-
|
|
44
|
-
"@khanacademy/perseus-score": "7.
|
|
38
|
+
"@khanacademy/keypad-context": "3.1.2",
|
|
39
|
+
"@khanacademy/kmath": "2.1.2",
|
|
40
|
+
"@khanacademy/math-input": "26.1.3",
|
|
41
|
+
"@khanacademy/perseus": "66.3.0",
|
|
42
|
+
"@khanacademy/perseus-core": "18.5.0",
|
|
43
|
+
"@khanacademy/perseus-linter": "4.2.2",
|
|
44
|
+
"@khanacademy/perseus-score": "7.5.0",
|
|
45
45
|
"@khanacademy/perseus-utils": "2.1.0",
|
|
46
46
|
"@khanacademy/pure-markdown": "2.2.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@khanacademy/mathjax-renderer": "3.0.0",
|
|
50
|
-
"@khanacademy/wonder-blocks-accordion": "3.1.
|
|
51
|
-
"@khanacademy/wonder-blocks-banner": "4.2.
|
|
52
|
-
"@khanacademy/wonder-blocks-button": "
|
|
53
|
-
"@khanacademy/wonder-blocks-clickable": "7.1.
|
|
50
|
+
"@khanacademy/wonder-blocks-accordion": "3.1.34",
|
|
51
|
+
"@khanacademy/wonder-blocks-banner": "4.2.14",
|
|
52
|
+
"@khanacademy/wonder-blocks-button": "11.0.0",
|
|
53
|
+
"@khanacademy/wonder-blocks-clickable": "7.1.20",
|
|
54
54
|
"@khanacademy/wonder-blocks-core": "12.3.0",
|
|
55
|
-
"@khanacademy/wonder-blocks-dropdown": "10.3.
|
|
56
|
-
"@khanacademy/wonder-blocks-form": "7.3.
|
|
57
|
-
"@khanacademy/wonder-blocks-icon": "5.2.
|
|
58
|
-
"@khanacademy/wonder-blocks-icon-button": "10.3.
|
|
59
|
-
"@khanacademy/wonder-blocks-labeled-field": "
|
|
60
|
-
"@khanacademy/wonder-blocks-layout": "3.1.
|
|
61
|
-
"@khanacademy/wonder-blocks-link": "9.1.
|
|
62
|
-
"@khanacademy/wonder-blocks-pill": "3.1.
|
|
63
|
-
"@khanacademy/wonder-blocks-switch": "3.3.
|
|
55
|
+
"@khanacademy/wonder-blocks-dropdown": "10.3.2",
|
|
56
|
+
"@khanacademy/wonder-blocks-form": "7.3.2",
|
|
57
|
+
"@khanacademy/wonder-blocks-icon": "5.2.14",
|
|
58
|
+
"@khanacademy/wonder-blocks-icon-button": "10.3.15",
|
|
59
|
+
"@khanacademy/wonder-blocks-labeled-field": "4.0.0",
|
|
60
|
+
"@khanacademy/wonder-blocks-layout": "3.1.31",
|
|
61
|
+
"@khanacademy/wonder-blocks-link": "9.1.20",
|
|
62
|
+
"@khanacademy/wonder-blocks-pill": "3.1.35",
|
|
63
|
+
"@khanacademy/wonder-blocks-switch": "3.3.13",
|
|
64
64
|
"@khanacademy/wonder-blocks-timing": "7.0.2",
|
|
65
|
-
"@khanacademy/wonder-blocks-tokens": "12.0.
|
|
66
|
-
"@khanacademy/wonder-blocks-tooltip": "4.1.
|
|
67
|
-
"@khanacademy/wonder-blocks-typography": "4.2.
|
|
65
|
+
"@khanacademy/wonder-blocks-tokens": "12.0.2",
|
|
66
|
+
"@khanacademy/wonder-blocks-tooltip": "4.1.38",
|
|
67
|
+
"@khanacademy/wonder-blocks-typography": "4.2.16",
|
|
68
68
|
"@khanacademy/wonder-stuff-core": "1.5.5",
|
|
69
69
|
"@phosphor-icons/core": "2.0.2",
|
|
70
70
|
"aphrodite": "1.2.5",
|
|
@@ -79,24 +79,24 @@
|
|
|
79
79
|
},
|
|
80
80
|
"peerDependencies": {
|
|
81
81
|
"@khanacademy/mathjax-renderer": "^3.0.0",
|
|
82
|
-
"@khanacademy/wonder-blocks-accordion": "^3.1.
|
|
83
|
-
"@khanacademy/wonder-blocks-banner": "^4.2.
|
|
84
|
-
"@khanacademy/wonder-blocks-button": "^
|
|
85
|
-
"@khanacademy/wonder-blocks-clickable": "^7.1.
|
|
82
|
+
"@khanacademy/wonder-blocks-accordion": "^3.1.34",
|
|
83
|
+
"@khanacademy/wonder-blocks-banner": "^4.2.14",
|
|
84
|
+
"@khanacademy/wonder-blocks-button": "^11.0.0",
|
|
85
|
+
"@khanacademy/wonder-blocks-clickable": "^7.1.20",
|
|
86
86
|
"@khanacademy/wonder-blocks-core": "^12.3.0",
|
|
87
|
-
"@khanacademy/wonder-blocks-dropdown": "^10.3.
|
|
88
|
-
"@khanacademy/wonder-blocks-form": "^7.3.
|
|
89
|
-
"@khanacademy/wonder-blocks-icon": "^5.2.
|
|
90
|
-
"@khanacademy/wonder-blocks-icon-button": "^10.3.
|
|
91
|
-
"@khanacademy/wonder-blocks-labeled-field": "^
|
|
92
|
-
"@khanacademy/wonder-blocks-layout": "^3.1.
|
|
93
|
-
"@khanacademy/wonder-blocks-link": "^9.1.
|
|
94
|
-
"@khanacademy/wonder-blocks-pill": "^3.1.
|
|
95
|
-
"@khanacademy/wonder-blocks-switch": "^3.3.
|
|
87
|
+
"@khanacademy/wonder-blocks-dropdown": "^10.3.2",
|
|
88
|
+
"@khanacademy/wonder-blocks-form": "^7.3.2",
|
|
89
|
+
"@khanacademy/wonder-blocks-icon": "^5.2.14",
|
|
90
|
+
"@khanacademy/wonder-blocks-icon-button": "^10.3.15",
|
|
91
|
+
"@khanacademy/wonder-blocks-labeled-field": "^4.0.0",
|
|
92
|
+
"@khanacademy/wonder-blocks-layout": "^3.1.31",
|
|
93
|
+
"@khanacademy/wonder-blocks-link": "^9.1.20",
|
|
94
|
+
"@khanacademy/wonder-blocks-pill": "^3.1.35",
|
|
95
|
+
"@khanacademy/wonder-blocks-switch": "^3.3.13",
|
|
96
96
|
"@khanacademy/wonder-blocks-timing": "^7.0.2",
|
|
97
|
-
"@khanacademy/wonder-blocks-tokens": "^12.0.
|
|
98
|
-
"@khanacademy/wonder-blocks-tooltip": "^4.1.
|
|
99
|
-
"@khanacademy/wonder-blocks-typography": "^4.2.
|
|
97
|
+
"@khanacademy/wonder-blocks-tokens": "^12.0.2",
|
|
98
|
+
"@khanacademy/wonder-blocks-tooltip": "^4.1.38",
|
|
99
|
+
"@khanacademy/wonder-blocks-typography": "^4.2.16",
|
|
100
100
|
"@khanacademy/wonder-stuff-core": "^1.5.5",
|
|
101
101
|
"@phosphor-icons/core": "^2.0.2",
|
|
102
102
|
"aphrodite": "^1.2.5",
|
|
File without changes
|