@khanacademy/perseus-core 3.2.0 → 3.3.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.
Files changed (125) hide show
  1. package/dist/data-schema.d.ts +57 -12
  2. package/dist/es/index.js +2563 -221
  3. package/dist/es/index.js.map +1 -1
  4. package/dist/index.d.ts +69 -0
  5. package/dist/index.js +2597 -220
  6. package/dist/index.js.map +1 -1
  7. package/dist/parse-perseus-json/error-tracking-parse-context.d.ts +9 -0
  8. package/dist/parse-perseus-json/exhaustive-test-tool/index.d.ts +2 -0
  9. package/dist/parse-perseus-json/general-purpose-parsers/any.d.ts +2 -0
  10. package/dist/parse-perseus-json/general-purpose-parsers/array.d.ts +2 -0
  11. package/dist/parse-perseus-json/general-purpose-parsers/array.typetest.d.ts +1 -0
  12. package/dist/parse-perseus-json/general-purpose-parsers/boolean.d.ts +2 -0
  13. package/dist/parse-perseus-json/general-purpose-parsers/constant.d.ts +4 -0
  14. package/dist/parse-perseus-json/general-purpose-parsers/convert.d.ts +2 -0
  15. package/dist/parse-perseus-json/general-purpose-parsers/defaulted.d.ts +2 -0
  16. package/dist/parse-perseus-json/general-purpose-parsers/discriminated-union.d.ts +21 -0
  17. package/dist/parse-perseus-json/general-purpose-parsers/discriminated-union.typetest.d.ts +1 -0
  18. package/dist/parse-perseus-json/general-purpose-parsers/enumeration.d.ts +2 -0
  19. package/dist/parse-perseus-json/general-purpose-parsers/enumeration.typetest.d.ts +1 -0
  20. package/dist/parse-perseus-json/general-purpose-parsers/index.d.ts +17 -0
  21. package/dist/parse-perseus-json/general-purpose-parsers/is-object.d.ts +1 -0
  22. package/dist/parse-perseus-json/general-purpose-parsers/nullable.d.ts +2 -0
  23. package/dist/parse-perseus-json/general-purpose-parsers/number.d.ts +2 -0
  24. package/dist/parse-perseus-json/general-purpose-parsers/object.d.ts +6 -0
  25. package/dist/parse-perseus-json/general-purpose-parsers/optional.d.ts +2 -0
  26. package/dist/parse-perseus-json/general-purpose-parsers/pair.d.ts +2 -0
  27. package/dist/parse-perseus-json/general-purpose-parsers/pipe-parsers.d.ts +7 -0
  28. package/dist/parse-perseus-json/general-purpose-parsers/pipe-parsers.typetest.d.ts +1 -0
  29. package/dist/parse-perseus-json/general-purpose-parsers/record.d.ts +2 -0
  30. package/dist/parse-perseus-json/general-purpose-parsers/string-to-number.d.ts +2 -0
  31. package/dist/parse-perseus-json/general-purpose-parsers/string.d.ts +2 -0
  32. package/dist/parse-perseus-json/general-purpose-parsers/test-helpers.d.ts +8 -0
  33. package/dist/parse-perseus-json/general-purpose-parsers/trio.d.ts +2 -0
  34. package/dist/parse-perseus-json/general-purpose-parsers/union.d.ts +7 -0
  35. package/dist/parse-perseus-json/general-purpose-parsers/union.typetest.d.ts +1 -0
  36. package/dist/parse-perseus-json/general-purpose-parsers/unknown.d.ts +2 -0
  37. package/dist/parse-perseus-json/index.d.ts +45 -0
  38. package/dist/parse-perseus-json/object-path.d.ts +2 -0
  39. package/dist/parse-perseus-json/parse-failure-detail.d.ts +2 -0
  40. package/dist/parse-perseus-json/parse.d.ts +3 -0
  41. package/dist/parse-perseus-json/parser-types.d.ts +30 -0
  42. package/dist/parse-perseus-json/perseus-parsers/categorizer-widget.d.ts +3 -0
  43. package/dist/parse-perseus-json/perseus-parsers/cs-program-widget.d.ts +3 -0
  44. package/dist/parse-perseus-json/perseus-parsers/definition-widget.d.ts +3 -0
  45. package/dist/parse-perseus-json/perseus-parsers/dropdown-widget.d.ts +3 -0
  46. package/dist/parse-perseus-json/perseus-parsers/explanation-widget.d.ts +3 -0
  47. package/dist/parse-perseus-json/perseus-parsers/expression-widget.d.ts +3 -0
  48. package/dist/parse-perseus-json/perseus-parsers/graded-group-set-widget.d.ts +3 -0
  49. package/dist/parse-perseus-json/perseus-parsers/graded-group-widget.d.ts +16 -0
  50. package/dist/parse-perseus-json/perseus-parsers/grapher-widget.d.ts +3 -0
  51. package/dist/parse-perseus-json/perseus-parsers/group-widget.d.ts +3 -0
  52. package/dist/parse-perseus-json/perseus-parsers/hint.d.ts +3 -0
  53. package/dist/parse-perseus-json/perseus-parsers/iframe-widget.d.ts +3 -0
  54. package/dist/parse-perseus-json/perseus-parsers/image-widget.d.ts +3 -0
  55. package/dist/parse-perseus-json/perseus-parsers/images-map.d.ts +5 -0
  56. package/dist/parse-perseus-json/perseus-parsers/input-number-widget.d.ts +3 -0
  57. package/dist/parse-perseus-json/perseus-parsers/interaction-widget.d.ts +3 -0
  58. package/dist/parse-perseus-json/perseus-parsers/interactive-graph-widget.d.ts +3 -0
  59. package/dist/parse-perseus-json/perseus-parsers/label-image-widget.d.ts +3 -0
  60. package/dist/parse-perseus-json/perseus-parsers/matcher-widget.d.ts +3 -0
  61. package/dist/parse-perseus-json/perseus-parsers/matrix-widget.d.ts +3 -0
  62. package/dist/parse-perseus-json/perseus-parsers/measurer-widget.d.ts +3 -0
  63. package/dist/parse-perseus-json/perseus-parsers/molecule-renderer-widget.d.ts +3 -0
  64. package/dist/parse-perseus-json/perseus-parsers/number-line-widget.d.ts +3 -0
  65. package/dist/parse-perseus-json/perseus-parsers/numeric-input-widget.d.ts +3 -0
  66. package/dist/parse-perseus-json/perseus-parsers/orderer-widget.d.ts +3 -0
  67. package/dist/parse-perseus-json/perseus-parsers/passage-ref-widget.d.ts +3 -0
  68. package/dist/parse-perseus-json/perseus-parsers/passage-widget.d.ts +3 -0
  69. package/dist/parse-perseus-json/perseus-parsers/perseus-article.d.ts +3 -0
  70. package/dist/parse-perseus-json/perseus-parsers/perseus-image-background.d.ts +3 -0
  71. package/dist/parse-perseus-json/perseus-parsers/perseus-item.d.ts +3 -0
  72. package/dist/parse-perseus-json/perseus-parsers/perseus-renderer.d.ts +3 -0
  73. package/dist/parse-perseus-json/perseus-parsers/phet-simulation-widget.d.ts +3 -0
  74. package/dist/parse-perseus-json/perseus-parsers/plotter-widget.d.ts +3 -0
  75. package/dist/parse-perseus-json/perseus-parsers/python-program-widget.d.ts +3 -0
  76. package/dist/parse-perseus-json/perseus-parsers/radio-widget.d.ts +3 -0
  77. package/dist/parse-perseus-json/perseus-parsers/sorter-widget.d.ts +3 -0
  78. package/dist/parse-perseus-json/perseus-parsers/table-widget.d.ts +3 -0
  79. package/dist/parse-perseus-json/perseus-parsers/versioned-widget-options.d.ts +36 -0
  80. package/dist/parse-perseus-json/perseus-parsers/video-widget.d.ts +3 -0
  81. package/dist/parse-perseus-json/perseus-parsers/widget.d.ts +7 -0
  82. package/dist/parse-perseus-json/perseus-parsers/widgets-map.d.ts +3 -0
  83. package/dist/parse-perseus-json/result.d.ts +16 -0
  84. package/dist/utils/is-real-json-parse.d.ts +1 -0
  85. package/dist/utils/widget-id-utils.d.ts +38 -0
  86. package/dist/widgets/categorizer/categorizer-util.d.ts +17 -0
  87. package/dist/widgets/categorizer/index.d.ts +5 -0
  88. package/dist/widgets/cs-program/index.d.ts +5 -0
  89. package/dist/widgets/definition/index.d.ts +5 -0
  90. package/dist/widgets/dropdown/index.d.ts +5 -0
  91. package/dist/widgets/explanation/index.d.ts +5 -0
  92. package/dist/widgets/expression/expression-upgrade.d.ts +10 -0
  93. package/dist/widgets/expression/expression-util.d.ts +19 -0
  94. package/dist/widgets/expression/index.d.ts +4 -0
  95. package/dist/widgets/graded-group/index.d.ts +5 -0
  96. package/dist/widgets/graded-group-set/index.d.ts +5 -0
  97. package/dist/widgets/group/index.d.ts +5 -0
  98. package/dist/widgets/iframe/index.d.ts +5 -0
  99. package/dist/widgets/image/index.d.ts +5 -0
  100. package/dist/widgets/input-number/index.d.ts +5 -0
  101. package/dist/widgets/interaction/index.d.ts +5 -0
  102. package/dist/widgets/interactive-graph/index.d.ts +5 -0
  103. package/dist/widgets/label-image/index.d.ts +5 -0
  104. package/dist/widgets/logic-export.types.d.ts +10 -0
  105. package/dist/widgets/matcher/index.d.ts +5 -0
  106. package/dist/widgets/matrix/index.d.ts +5 -0
  107. package/dist/widgets/measurer/index.d.ts +4 -0
  108. package/dist/widgets/measurer/measurer-upgrade.d.ts +10 -0
  109. package/dist/widgets/number-line/index.d.ts +5 -0
  110. package/dist/widgets/numeric-input/index.d.ts +5 -0
  111. package/dist/widgets/orderer/index.d.ts +5 -0
  112. package/dist/widgets/orderer/orderer-util.d.ts +16 -0
  113. package/dist/widgets/passage/index.d.ts +5 -0
  114. package/dist/widgets/passage-ref/index.d.ts +4 -0
  115. package/dist/widgets/passage-ref/passage-ref-upgrade.d.ts +7 -0
  116. package/dist/widgets/passage-ref-target/index.d.ts +5 -0
  117. package/dist/widgets/phet-simulation/index.d.ts +5 -0
  118. package/dist/widgets/plotter/index.d.ts +5 -0
  119. package/dist/widgets/python-program/index.d.ts +5 -0
  120. package/dist/widgets/radio/index.d.ts +4 -0
  121. package/dist/widgets/radio/radio-upgrade.d.ts +10 -0
  122. package/dist/widgets/sorter/index.d.ts +5 -0
  123. package/dist/widgets/table/index.d.ts +5 -0
  124. package/dist/widgets/video/index.d.ts +5 -0
  125. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -7,10 +7,79 @@ export { addLibraryVersionToPerseusDebug } from "./utils/add-library-version-to-
7
7
  export { default as getMatrixSize } from "./utils/get-matrix-size";
8
8
  export { default as getDecimalSeparator } from "./utils/get-decimal-separator";
9
9
  export { approximateEqual, approximateDeepEqual } from "./utils/equality";
10
+ export { addWidget, getWidgetIdsFromContent, getWidgetIdsFromContentByType, } from "./utils/widget-id-utils";
10
11
  export { default as deepClone } from "./utils/deep-clone";
11
12
  export * as GrapherUtil from "./utils/grapher-util";
13
+ export { parsePerseusItem, parseAndMigratePerseusItem, parseAndMigratePerseusArticle, } from "./parse-perseus-json";
14
+ export { isSuccess, isFailure, type Result, type Success, type Failure, } from "./parse-perseus-json/result";
12
15
  export { libVersion } from "./version";
13
16
  export { Errors } from "./error/errors";
14
17
  export { PerseusError } from "./error/perseus-error";
15
18
  export * from "./data-schema";
16
19
  export { pluck, mapObject } from "./utils/objective_";
20
+ export { default as categorizerLogic } from "./widgets/categorizer";
21
+ export type { CategorizerDefaultWidgetOptions } from "./widgets/categorizer";
22
+ export { default as csProgramLogic } from "./widgets/cs-program";
23
+ export type { CSProgramDefaultWidgetOptions } from "./widgets/cs-program";
24
+ export { default as definitionLogic } from "./widgets/definition";
25
+ export type { DefinitionDefaultWidgetOptions } from "./widgets/definition";
26
+ export { default as dropdownLogic } from "./widgets/dropdown";
27
+ export type { DropdownDefaultWidgetOptions } from "./widgets/dropdown";
28
+ export { default as explanationLogic } from "./widgets/explanation";
29
+ export type { ExplanationDefaultWidgetOptions } from "./widgets/explanation";
30
+ export { default as expressionLogic } from "./widgets/expression";
31
+ export type { ExpressionDefaultWidgetOptions } from "./widgets/expression";
32
+ export { default as gradedGroupLogic } from "./widgets/graded-group";
33
+ export type { GradedGroupDefaultWidgetOptions } from "./widgets/graded-group";
34
+ export { default as gradedGroupSetLogic } from "./widgets/graded-group-set";
35
+ export type { GradedGroupSetDefaultWidgetOptions } from "./widgets/graded-group-set";
36
+ export { default as groupLogic } from "./widgets/group";
37
+ export type { GroupDefaultWidgetOptions } from "./widgets/group";
38
+ export { default as iframeLogic } from "./widgets/iframe";
39
+ export type { IFrameDefaultWidgetOptions } from "./widgets/iframe";
40
+ export { default as imageLogic } from "./widgets/image";
41
+ export type { ImageDefaultWidgetOptions } from "./widgets/image";
42
+ export { default as inputNumberLogic } from "./widgets/input-number";
43
+ export type { InputNumberDefaultWidgetOptions } from "./widgets/input-number";
44
+ export { default as interactionLogic } from "./widgets/interaction";
45
+ export type { InteractionDefaultWidgetOptions } from "./widgets/interaction";
46
+ export { default as interactiveGraphLogic } from "./widgets/interactive-graph";
47
+ export type { InteractiveGraphDefaultWidgetOptions } from "./widgets/interactive-graph";
48
+ export { default as labelImageLogic } from "./widgets/label-image";
49
+ export type { LabelImageDefaultWidgetOptions } from "./widgets/label-image";
50
+ export { default as matcherLogic } from "./widgets/matcher";
51
+ export type { MatcherDefaultWidgetOptions } from "./widgets/matcher";
52
+ export { default as matrixLogic } from "./widgets/matrix";
53
+ export type { MatrixDefaultWidgetOptions } from "./widgets/matrix";
54
+ export { default as measurerLogic } from "./widgets/measurer";
55
+ export type { MeasurerDefaultWidgetOptions } from "./widgets/measurer";
56
+ export { default as numberLineLogic } from "./widgets/number-line";
57
+ export type { NumberLineDefaultWidgetOptions } from "./widgets/number-line";
58
+ export { default as numericInputLogic } from "./widgets/numeric-input";
59
+ export type { NumericInputDefaultWidgetOptions } from "./widgets/numeric-input";
60
+ export { default as ordererLogic } from "./widgets/orderer";
61
+ export type { OrdererDefaultWidgetOptions } from "./widgets/orderer";
62
+ export { default as passageLogic } from "./widgets/passage";
63
+ export type { PassageDefaultWidgetOptions } from "./widgets/passage";
64
+ export { default as passageRefLogic } from "./widgets/passage-ref";
65
+ export type { PassageRefDefaultWidgetOptions } from "./widgets/passage-ref";
66
+ export { default as passageRefTargetLogic } from "./widgets/passage-ref-target";
67
+ export type { PassageRefTargetDefaultWidgetOptions } from "./widgets/passage-ref-target";
68
+ export { default as phetSimulationLogic } from "./widgets/phet-simulation";
69
+ export type { PhetSimulationDefaultWidgetOptions } from "./widgets/phet-simulation";
70
+ export { default as plotterLogic } from "./widgets/plotter";
71
+ export type { PlotterDefaultWidgetOptions } from "./widgets/plotter";
72
+ export { default as pythonProgramLogic } from "./widgets/python-program";
73
+ export type { PythonProgramDefaultWidgetOptions } from "./widgets/python-program";
74
+ export { default as radioLogic } from "./widgets/radio";
75
+ export type { RadioDefaultWidgetOptions } from "./widgets/radio";
76
+ export { default as sorterLogic } from "./widgets/sorter";
77
+ export type { SorterDefaultWidgetOptions } from "./widgets/sorter";
78
+ export { default as tableLogic } from "./widgets/table";
79
+ export type { TableDefaultWidgetOptions } from "./widgets/table";
80
+ export { default as videoLogic } from "./widgets/video";
81
+ export type { VideoDefaultWidgetOptions } from "./widgets/video";
82
+ export type * from "./widgets/logic-export.types";
83
+ export { default as getOrdererPublicWidgetOptions } from "./widgets/orderer/orderer-util";
84
+ export { default as getCategorizerPublicWidgetOptions } from "./widgets/categorizer/categorizer-util";
85
+ export { default as getExpressionPublicWidgetOptions } from "./widgets/expression/expression-util";