@khanacademy/perseus 7.2.1 → 8.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.
Files changed (380) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/article-renderer.d.ts +26 -40
  3. package/dist/components/math-input.d.ts +1 -1
  4. package/dist/components/sortable.d.ts +1 -1
  5. package/dist/components/tex-buttons.d.ts +1 -1
  6. package/dist/es/index.js +1139 -1189
  7. package/dist/es/index.js.map +1 -1
  8. package/dist/hints-renderer.d.ts +1 -1
  9. package/dist/index.js +1141 -1192
  10. package/dist/index.js.map +1 -1
  11. package/dist/mixins/provide-keypad.d.ts +15 -12
  12. package/dist/perseus-api.d.ts +1 -1
  13. package/dist/types.d.ts +3 -2
  14. package/dist/widgets/expression.d.ts +1 -1
  15. package/dist/widgets/graded-group.d.ts +1 -1
  16. package/dist/widgets/interactive-graph.d.ts +1 -1
  17. package/dist/widgets/sequence.d.ts +1 -1
  18. package/dist/widgets/table.d.ts +8 -1
  19. package/dist/widgets.d.ts +1 -1
  20. package/package.json +33 -33
  21. package/src/__testdata__/article-renderer.testdata.ts +3 -1
  22. package/src/__testdata__/item-renderer.testdata.ts +1 -1
  23. package/src/__testdata__/renderer.testdata.ts +1 -1
  24. package/src/__tests__/item-renderer.test.tsx +1 -1
  25. package/src/__tests__/mock-asset-loading-widget.tsx +1 -1
  26. package/src/__tests__/perseus-markdown.test.ts +17 -17
  27. package/src/__tests__/renderer-api.test.tsx +21 -21
  28. package/src/__tests__/renderer.test.tsx +13 -13
  29. package/src/__tests__/server-item-renderer.test.tsx +3 -3
  30. package/src/__tests__/tex-wrangler.test.ts +1 -1
  31. package/src/article-renderer.tsx +39 -38
  32. package/src/components/__tests__/number-input.test.tsx +4 -4
  33. package/src/components/__tests__/sortable.test.tsx +2 -2
  34. package/src/components/fixed-to-responsive.tsx +1 -1
  35. package/src/components/graph.tsx +11 -11
  36. package/src/components/graphie-classes.ts +7 -7
  37. package/src/components/graphie.tsx +14 -14
  38. package/src/components/highlighting/highlightable-content.tsx +1 -1
  39. package/src/components/highlighting/ui/highlight-renderer.tsx +1 -1
  40. package/src/components/highlighting/ui/util.ts +2 -2
  41. package/src/components/highlighting/word-indexer.tsx +4 -4
  42. package/src/components/icon.tsx +1 -1
  43. package/src/components/image-loader.tsx +4 -4
  44. package/src/components/input-with-examples.tsx +2 -2
  45. package/src/components/lint.tsx +1 -1
  46. package/src/components/math-input.tsx +5 -5
  47. package/src/components/math-output.tsx +1 -1
  48. package/src/components/multi-button-group.tsx +1 -1
  49. package/src/components/number-input.tsx +10 -10
  50. package/src/components/prop-check-box.tsx +1 -1
  51. package/src/components/simple-keypad-input.tsx +4 -4
  52. package/src/components/sortable.tsx +42 -41
  53. package/src/components/svg-image.tsx +12 -12
  54. package/src/components/tex-buttons.tsx +4 -3
  55. package/src/components/text-input.tsx +8 -8
  56. package/src/components/text-list-editor.tsx +11 -11
  57. package/src/components/visibility-observer/create-visibility-observer.ts +1 -1
  58. package/src/components/visibility-observer/visibility-observer.tsx +2 -2
  59. package/src/components/zoomable-tex.tsx +3 -3
  60. package/src/components/zoomable.tsx +8 -8
  61. package/src/hint-renderer.tsx +3 -3
  62. package/src/hints-renderer.tsx +11 -11
  63. package/src/init.ts +1 -1
  64. package/src/interaction-tracker.ts +4 -4
  65. package/src/interactive2/__tests__/movable-point.test.ts +1 -1
  66. package/src/interactive2/interactive-util.ts +6 -6
  67. package/src/interactive2/movable-helper-methods.ts +2 -2
  68. package/src/interactive2/movable-line-options.ts +37 -37
  69. package/src/interactive2/movable-line.ts +2 -2
  70. package/src/interactive2/movable-point-options.ts +29 -29
  71. package/src/interactive2/movable-point.tsx +2 -2
  72. package/src/interactive2/movable-polygon-options.ts +45 -45
  73. package/src/interactive2/movable-polygon.ts +2 -2
  74. package/src/interactive2/movable.ts +2 -2
  75. package/src/interactive2/objective_.ts +1 -1
  76. package/src/interactive2/wrapped-defaults.ts +2 -2
  77. package/src/interactive2/wrapped-ellipse.ts +9 -9
  78. package/src/interactive2/wrapped-line.ts +8 -8
  79. package/src/interactive2/wrapped-path.ts +5 -5
  80. package/src/item-renderer.tsx +5 -5
  81. package/src/mixins/changeable.ts +2 -2
  82. package/src/mixins/editor-jsonify.ts +1 -1
  83. package/src/mixins/provide-keypad.tsx +23 -37
  84. package/src/mixins/widget-jsonify-deprecated.ts +1 -1
  85. package/src/multi-items/__tests__/items.test.ts +1 -1
  86. package/src/multi-items/__tests__/multi-renderer.test.tsx +7 -7
  87. package/src/multi-items/__tests__/trees.test.ts +12 -12
  88. package/src/multi-items/item-types.ts +2 -2
  89. package/src/multi-items/items.ts +1 -1
  90. package/src/multi-items/multi-renderer.tsx +14 -14
  91. package/src/multi-items/prop-type-builders.ts +2 -2
  92. package/src/multi-items/tree-types.ts +4 -4
  93. package/src/multi-items/trees.ts +16 -16
  94. package/src/perseus-env.ts +2 -2
  95. package/src/perseus-markdown.tsx +5 -5
  96. package/src/renderer.tsx +38 -38
  97. package/src/server-item-renderer.tsx +5 -5
  98. package/src/sigfigs.ts +1 -1
  99. package/src/traversal.ts +1 -1
  100. package/src/types.ts +3 -3
  101. package/src/util/answer-types.ts +14 -14
  102. package/src/util/geometry.ts +7 -7
  103. package/src/util/graphie.ts +32 -32
  104. package/src/util/interactive.ts +118 -118
  105. package/src/util/math.ts +4 -4
  106. package/src/util/react-render.tsx +1 -1
  107. package/src/util/scroll-utils.ts +2 -2
  108. package/src/util/tex.ts +3 -3
  109. package/src/util.ts +15 -15
  110. package/src/widget-container.tsx +1 -1
  111. package/src/widgets/__stories__/test-keypad-context-wrapper.tsx +3 -3
  112. package/src/widgets/__testdata__/numeric-input.testdata.ts +1 -1
  113. package/src/widgets/__tests__/__snapshots__/video.test.ts.snap +2 -2
  114. package/src/widgets/__tests__/expression.test.ts +4 -3
  115. package/src/widgets/__tests__/grapher.cypress.ts +32 -32
  116. package/src/widgets/__tests__/group.test.tsx +1 -1
  117. package/src/widgets/__tests__/interactive-graph.cypress.ts +40 -40
  118. package/src/widgets/__tests__/interactive-graph.test.ts +1 -1
  119. package/src/widgets/__tests__/numeric-input.test.ts +1 -1
  120. package/src/widgets/__tests__/passage.test.tsx +2 -2
  121. package/src/widgets/__tests__/plotter.test.tsx +2 -1
  122. package/src/widgets/__tests__/radio/base-radio.test.tsx +7 -7
  123. package/src/widgets/__tests__/renderQuestion.tsx +3 -3
  124. package/src/widgets/categorizer.tsx +4 -4
  125. package/src/widgets/cs-program.tsx +2 -2
  126. package/src/widgets/dropdown.tsx +1 -1
  127. package/src/widgets/expression.tsx +10 -9
  128. package/src/widgets/graded-group-set.tsx +5 -5
  129. package/src/widgets/graded-group.tsx +18 -19
  130. package/src/widgets/grapher/util.tsx +6 -6
  131. package/src/widgets/grapher.tsx +10 -10
  132. package/src/widgets/group.tsx +3 -3
  133. package/src/widgets/iframe.tsx +2 -2
  134. package/src/widgets/image.tsx +1 -1
  135. package/src/widgets/input-number.tsx +4 -4
  136. package/src/widgets/interaction.tsx +77 -77
  137. package/src/widgets/interactive-graph.tsx +109 -107
  138. package/src/widgets/label-image/marker.tsx +2 -2
  139. package/src/widgets/label-image.test.ts +1 -1
  140. package/src/widgets/label-image.tsx +7 -7
  141. package/src/widgets/lights-puzzle.tsx +2 -2
  142. package/src/widgets/matcher.tsx +6 -6
  143. package/src/widgets/matrix.tsx +20 -20
  144. package/src/widgets/measurer.tsx +3 -3
  145. package/src/widgets/molecule/__tests__/layout.test.ts +4 -4
  146. package/src/widgets/molecule/__tests__/parser.test.ts +14 -14
  147. package/src/widgets/molecule/smiles-parser.ts +3 -3
  148. package/src/widgets/molecule.tsx +4 -4
  149. package/src/widgets/number-line.tsx +11 -11
  150. package/src/widgets/numeric-input.tsx +11 -11
  151. package/src/widgets/orderer.tsx +38 -38
  152. package/src/widgets/passage/__tests__/passage-markdown.test.ts +1 -1
  153. package/src/widgets/passage/passage-markdown.tsx +4 -4
  154. package/src/widgets/passage-ref-target.tsx +1 -1
  155. package/src/widgets/passage-ref.tsx +4 -6
  156. package/src/widgets/passage.tsx +11 -11
  157. package/src/widgets/plotter.tsx +9 -9
  158. package/src/widgets/radio/base-radio.tsx +11 -11
  159. package/src/widgets/radio/choice-icon/choice-icon.tsx +2 -2
  160. package/src/widgets/radio/choice.tsx +1 -1
  161. package/src/widgets/radio/option-status.tsx +1 -1
  162. package/src/widgets/radio/widget.tsx +6 -6
  163. package/src/widgets/radio.ts +1 -1
  164. package/src/widgets/reaction-diagram.tsx +8 -8
  165. package/src/widgets/sequence.tsx +2 -2
  166. package/src/widgets/simulator.tsx +14 -14
  167. package/src/widgets/sorter.tsx +4 -4
  168. package/src/widgets/table.tsx +8 -8
  169. package/src/widgets/transformer.tsx +92 -92
  170. package/src/widgets/unit.tsx +17 -17
  171. package/src/widgets/video-transcript-link.test.tsx +3 -3
  172. package/src/widgets/video-transcript-link.tsx +1 -1
  173. package/src/widgets/video.tsx +1 -1
  174. package/src/widgets.ts +5 -5
  175. package/src/zoom.ts +22 -22
  176. package/tsconfig-build.tsbuildinfo +1 -1
  177. package/dist/a11y.js.flow +0 -11
  178. package/dist/all-widgets.js.flow +0 -33
  179. package/dist/article-renderer.js.flow +0 -73
  180. package/dist/asset-context.js.flow +0 -15
  181. package/dist/basic-widgets.js.flow +0 -33
  182. package/dist/components/button-group.js.flow +0 -33
  183. package/dist/components/constants.js.flow +0 -13
  184. package/dist/components/fixed-to-responsive.js.flow +0 -34
  185. package/dist/components/graph.js.flow +0 -66
  186. package/dist/components/graphie-classes.js.flow +0 -19
  187. package/dist/components/graphie-movables.js.flow +0 -22
  188. package/dist/components/graphie.js.flow +0 -69
  189. package/dist/components/highlighting/highlightable-content.js.flow +0 -56
  190. package/dist/components/highlighting/highlights.js.flow +0 -54
  191. package/dist/components/highlighting/ranges.js.flow +0 -60
  192. package/dist/components/highlighting/types.js.flow +0 -70
  193. package/dist/components/highlighting/ui/highlight-renderer.js.flow +0 -43
  194. package/dist/components/highlighting/ui/highlight-set-renderer.js.flow +0 -41
  195. package/dist/components/highlighting/ui/highlight-tooltip.js.flow +0 -22
  196. package/dist/components/highlighting/ui/highlighting-ui.js.flow +0 -30
  197. package/dist/components/highlighting/ui/selection-tracker.js.flow +0 -54
  198. package/dist/components/highlighting/ui/types.js.flow +0 -22
  199. package/dist/components/highlighting/ui/util.js.flow +0 -42
  200. package/dist/components/highlighting/word-indexer.js.flow +0 -21
  201. package/dist/components/hud.js.flow +0 -14
  202. package/dist/components/icon.js.flow +0 -31
  203. package/dist/components/image-loader.js.flow +0 -49
  204. package/dist/components/info-tip/info-tip.js.flow +0 -20
  205. package/dist/components/info-tip.js.flow +0 -18
  206. package/dist/components/inline-icon.js.flow +0 -39
  207. package/dist/components/input-with-examples.js.flow +0 -58
  208. package/dist/components/lint.js.flow +0 -58
  209. package/dist/components/math-input.js.flow +0 -49
  210. package/dist/components/math-output.js.flow +0 -33
  211. package/dist/components/multi-button-group.js.flow +0 -35
  212. package/dist/components/number-input.js.flow +0 -42
  213. package/dist/components/prop-check-box.js.flow +0 -8
  214. package/dist/components/range-input.js.flow +0 -20
  215. package/dist/components/simple-keypad-input.js.flow +0 -16
  216. package/dist/components/sortable.js.flow +0 -91
  217. package/dist/components/stub-tag-editor.js.flow +0 -18
  218. package/dist/components/svg-image.js.flow +0 -85
  219. package/dist/components/tex-buttons.js.flow +0 -26
  220. package/dist/components/tex.js.flow +0 -25
  221. package/dist/components/text-input.js.flow +0 -39
  222. package/dist/components/text-list-editor.js.flow +0 -22
  223. package/dist/components/tooltip.js.flow +0 -51
  224. package/dist/components/visibility-observer/create-visibility-observer.js.flow +0 -23
  225. package/dist/components/visibility-observer/get-scroll-parent.js.flow +0 -7
  226. package/dist/components/visibility-observer/visibility-observer.js.flow +0 -36
  227. package/dist/components/zoomable-tex.js.flow +0 -18
  228. package/dist/components/zoomable.js.flow +0 -70
  229. package/dist/components.js.flow +0 -22
  230. package/dist/definition-context.js.flow +0 -25
  231. package/dist/dependencies.js.flow +0 -9
  232. package/dist/error-boundary.js.flow +0 -19
  233. package/dist/extra-widgets.js.flow +0 -33
  234. package/dist/hint-renderer.js.flow +0 -32
  235. package/dist/hints-renderer.js.flow +0 -41
  236. package/dist/icon-paths.js.flow +0 -123
  237. package/dist/index.js.flow +0 -134
  238. package/dist/init.js.flow +0 -20
  239. package/dist/interaction-tracker.js.flow +0 -35
  240. package/dist/interactive2/interactive-util.js.flow +0 -50
  241. package/dist/interactive2/movable-helper-methods.js.flow +0 -15
  242. package/dist/interactive2/movable-line-options.js.flow +0 -44
  243. package/dist/interactive2/movable-line.js.flow +0 -8
  244. package/dist/interactive2/movable-point-options.js.flow +0 -44
  245. package/dist/interactive2/movable-point.js.flow +0 -8
  246. package/dist/interactive2/movable-polygon-options.js.flow +0 -47
  247. package/dist/interactive2/movable-polygon.js.flow +0 -8
  248. package/dist/interactive2/movable.js.flow +0 -8
  249. package/dist/interactive2/objective_.js.flow +0 -25
  250. package/dist/interactive2/types.js.flow +0 -8
  251. package/dist/interactive2/wrapped-defaults.js.flow +0 -11
  252. package/dist/interactive2/wrapped-ellipse.js.flow +0 -14
  253. package/dist/interactive2/wrapped-line.js.flow +0 -14
  254. package/dist/interactive2/wrapped-path.js.flow +0 -13
  255. package/dist/interactive2.js.flow +0 -16
  256. package/dist/item-renderer.js.flow +0 -132
  257. package/dist/item-version.js.flow +0 -11
  258. package/dist/jipt-paragraphs.js.flow +0 -14
  259. package/dist/loading-context.js.flow +0 -12
  260. package/dist/logging/log.js.flow +0 -62
  261. package/dist/mixins/changeable.js.flow +0 -33
  262. package/dist/mixins/editor-jsonify.js.flow +0 -10
  263. package/dist/mixins/provide-keypad.js.flow +0 -33
  264. package/dist/mixins/widget-jsonify-deprecated.js.flow +0 -11
  265. package/dist/mixins/widget-prop-denylist.js.flow +0 -20
  266. package/dist/multi-items/item-types.js.flow +0 -55
  267. package/dist/multi-items/items.js.flow +0 -66
  268. package/dist/multi-items/multi-renderer.js.flow +0 -213
  269. package/dist/multi-items/prop-type-builders.js.flow +0 -22
  270. package/dist/multi-items/shape-types.js.flow +0 -60
  271. package/dist/multi-items/shapes.js.flow +0 -25
  272. package/dist/multi-items/tree-types.js.flow +0 -45
  273. package/dist/multi-items/trees.js.flow +0 -147
  274. package/dist/multi-items.js.flow +0 -36
  275. package/dist/perseus-api.js.flow +0 -151
  276. package/dist/perseus-env.js.flow +0 -6
  277. package/dist/perseus-error.js.flow +0 -16
  278. package/dist/perseus-markdown.js.flow +0 -20
  279. package/dist/perseus-types.js.flow +0 -1041
  280. package/dist/question-paragraph.js.flow +0 -17
  281. package/dist/renderability.js.flow +0 -19
  282. package/dist/renderer.js.flow +0 -325
  283. package/dist/server-item-renderer.js.flow +0 -132
  284. package/dist/sigfigs.js.flow +0 -41
  285. package/dist/styles/constants.js.flow +0 -62
  286. package/dist/styles/global-constants.js.flow +0 -348
  287. package/dist/styles/global-styles.js.flow +0 -53
  288. package/dist/styles/media-queries.js.flow +0 -35
  289. package/dist/styles/shared.js.flow +0 -8
  290. package/dist/tex-wrangler.js.flow +0 -13
  291. package/dist/translation-linter.js.flow +0 -32
  292. package/dist/traversal.js.flow +0 -26
  293. package/dist/types.js.flow +0 -318
  294. package/dist/util/a11y.js.flow +0 -8
  295. package/dist/util/answer-types.js.flow +0 -49
  296. package/dist/util/colors.js.flow +0 -95
  297. package/dist/util/fix-passage-refs.js.flow +0 -8
  298. package/dist/util/geometry.js.flow +0 -37
  299. package/dist/util/graph-utils.js.flow +0 -9
  300. package/dist/util/graphie.js.flow +0 -8
  301. package/dist/util/interactive.js.flow +0 -11
  302. package/dist/util/katex-preprocess.js.flow +0 -12
  303. package/dist/util/math.js.flow +0 -62
  304. package/dist/util/mobile-native-utils.js.flow +0 -12
  305. package/dist/util/react-render.js.flow +0 -12
  306. package/dist/util/register-all-widgets-for-testing.js.flow +0 -7
  307. package/dist/util/scroll-utils.js.flow +0 -19
  308. package/dist/util/sizing-utils.js.flow +0 -20
  309. package/dist/util/tex.js.flow +0 -17
  310. package/dist/util/url-utils.js.flow +0 -11
  311. package/dist/util.graphie.js.flow +0 -14
  312. package/dist/util.js.flow +0 -319
  313. package/dist/version.js.flow +0 -17
  314. package/dist/widget-container.js.flow +0 -33
  315. package/dist/widgets/categorizer.js.flow +0 -70
  316. package/dist/widgets/cs-program.js.flow +0 -54
  317. package/dist/widgets/definition.js.flow +0 -57
  318. package/dist/widgets/dropdown.js.flow +0 -63
  319. package/dist/widgets/explanation.js.flow +0 -58
  320. package/dist/widgets/expression.js.flow +0 -116
  321. package/dist/widgets/graded-group-answer-bar.js.flow +0 -24
  322. package/dist/widgets/graded-group-set.js.flow +0 -65
  323. package/dist/widgets/graded-group.js.flow +0 -78
  324. package/dist/widgets/grapher/util.js.flow +0 -38
  325. package/dist/widgets/grapher.js.flow +0 -102
  326. package/dist/widgets/group.js.flow +0 -60
  327. package/dist/widgets/iframe.js.flow +0 -53
  328. package/dist/widgets/image.js.flow +0 -73
  329. package/dist/widgets/input-number.js.flow +0 -94
  330. package/dist/widgets/interaction/arrow-picker.js.flow +0 -21
  331. package/dist/widgets/interaction/color-picker.js.flow +0 -23
  332. package/dist/widgets/interaction/dash-picker.js.flow +0 -21
  333. package/dist/widgets/interaction/element-container.js.flow +0 -28
  334. package/dist/widgets/interaction.js.flow +0 -60
  335. package/dist/widgets/interactive-graph.js.flow +0 -239
  336. package/dist/widgets/label-image/answer-choices.js.flow +0 -55
  337. package/dist/widgets/label-image/marker.js.flow +0 -31
  338. package/dist/widgets/label-image/types.js.flow +0 -23
  339. package/dist/widgets/label-image.js.flow +0 -142
  340. package/dist/widgets/lights-puzzle.js.flow +0 -58
  341. package/dist/widgets/matcher.js.flow +0 -106
  342. package/dist/widgets/matrix.js.flow +0 -80
  343. package/dist/widgets/measurer.js.flow +0 -30
  344. package/dist/widgets/molecule/molecule-drawing.js.flow +0 -11
  345. package/dist/widgets/molecule/molecule-layout.js.flow +0 -96
  346. package/dist/widgets/molecule/smiles-parser.js.flow +0 -26
  347. package/dist/widgets/molecule.js.flow +0 -60
  348. package/dist/widgets/number-line.js.flow +0 -102
  349. package/dist/widgets/numeric-input.js.flow +0 -105
  350. package/dist/widgets/orderer.js.flow +0 -81
  351. package/dist/widgets/passage/passage-markdown.js.flow +0 -33
  352. package/dist/widgets/passage-ref-target.js.flow +0 -52
  353. package/dist/widgets/passage-ref.js.flow +0 -85
  354. package/dist/widgets/passage.js.flow +0 -157
  355. package/dist/widgets/plotter.js.flow +0 -112
  356. package/dist/widgets/radio/base-radio.js.flow +0 -50
  357. package/dist/widgets/radio/choice-a11y-text.js.flow +0 -14
  358. package/dist/widgets/radio/choice-icon/choice-icon.js.flow +0 -22
  359. package/dist/widgets/radio/choice-icon/cross-out-line.js.flow +0 -16
  360. package/dist/widgets/radio/choice-icon/shared-styles.js.flow +0 -11
  361. package/dist/widgets/radio/choice-none-above.js.flow +0 -16
  362. package/dist/widgets/radio/choice.js.flow +0 -29
  363. package/dist/widgets/radio/choice.jsx.fixture.js.flow +0 -7
  364. package/dist/widgets/radio/focus-ring.js.flow +0 -22
  365. package/dist/widgets/radio/option-status.js.flow +0 -16
  366. package/dist/widgets/radio/util.js.flow +0 -12
  367. package/dist/widgets/radio/widget.js.flow +0 -80
  368. package/dist/widgets/radio.js.flow +0 -31
  369. package/dist/widgets/reaction-diagram.js.flow +0 -46
  370. package/dist/widgets/sequence.js.flow +0 -53
  371. package/dist/widgets/simulator.js.flow +0 -107
  372. package/dist/widgets/sorter.js.flow +0 -102
  373. package/dist/widgets/table.js.flow +0 -67
  374. package/dist/widgets/transformer.js.flow +0 -127
  375. package/dist/widgets/unit.js.flow +0 -93
  376. package/dist/widgets/video-transcript-link.js.flow +0 -15
  377. package/dist/widgets/video.js.flow +0 -57
  378. package/dist/widgets.js.flow +0 -108
  379. package/dist/zoom.js.flow +0 -7
  380. package/src/multi-items/item-types.js.flow +0 -55
@@ -1,20 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- declare export var containerSizeClass: {|
8
- +SMALL: "small",
9
- +MEDIUM: "medium",
10
- +LARGE: "large",
11
- +XLARGE: "xlarge",
12
- |};
13
- export type SizeClass = $ElementType<
14
- typeof containerSizeClass,
15
- $Keys<typeof containerSizeClass>
16
- >;
17
- declare export var getClassFromWidth: (width: number) => SizeClass;
18
- declare export var getInteractiveBoxFromSizeClass: (
19
- sizeClass: SizeClass
20
- ) => [number, number];
@@ -1,17 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- declare var _default: {|
8
- processMath: (
9
- elem: HTMLElement,
10
- text: string,
11
- force?: boolean,
12
- callback?: () => mixed
13
- ) => Promise<void>,
14
- cleanupMath: (elem: HTMLElement) => HTMLElement,
15
- retrieveMathFormula: (elem: HTMLElement) => any,
16
- |};
17
- declare export default typeof _default;
@@ -1,11 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- /**
8
- * Turns a URL into an absolute URL.
9
- * @param {string} url The URL to turn into an absolute URL.
10
- */
11
- declare export var toAbsoluteUrl: (url: string) => string;
@@ -1,14 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- declare export function getRealImageUrl(graphieUrl: string): string;
8
- declare export function isLabeledSVG(graphieUrl: string): boolean;
9
- declare export function getBaseUrl(graphieUrl: string): string;
10
- declare export function getSvgUrl(graphieUrl: string): string;
11
- declare export function getDataUrl(graphieUrl: string): string;
12
- declare export function getImageSizeModern(
13
- url: string
14
- ): Promise<[number, number]>;
package/dist/util.js.flow DELETED
@@ -1,319 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as GraphieUtil from "./util.graphie";
8
- import type { Range } from "./perseus-types";
9
- import type { Widget, PerseusScore } from "./types";
10
- import type { KEScore } from "@khanacademy/perseus-core";
11
- declare type WordPosition = {|
12
- start: number,
13
- end: number,
14
- |};
15
- declare type WordAndPosition = {|
16
- string: string,
17
- pos: WordPosition,
18
- |};
19
- declare type RNG = () => number;
20
- export type ParsedValue = {|
21
- value: number,
22
- exact: boolean,
23
- |};
24
- declare type Coordinates = [number, number];
25
- export type GridDimensions = {|
26
- scale: number,
27
- tickStep: number,
28
- unityLabel: boolean,
29
- |};
30
- declare type QueryParams = {
31
- [param: string]: string,
32
- };
33
- export type Position = {|
34
- top: number,
35
- left: number,
36
- |};
37
- declare type TouchHandlers = {|
38
- pointerDown: boolean,
39
- currentTouchIdentifier: string | null | void,
40
- |};
41
- /**
42
- * Used to compare equality of two input paths, which are represented as
43
- * arrays of strings.
44
- */
45
- declare function inputPathsEqual(
46
- a?: $ReadOnlyArray<string> | null,
47
- b?: $ReadOnlyArray<string> | null
48
- ): boolean;
49
- declare function shuffle<T>(
50
- array: $ReadOnlyArray<T>,
51
- randomSeed: number | RNG,
52
- ensurePermuted?: boolean
53
- ): $ReadOnlyArray<T>;
54
-
55
- /**
56
- * Combine two score objects.
57
- *
58
- * Given two score objects for two different widgets, combine them so that
59
- * if one is wrong, the total score is wrong, etc.
60
- */
61
- declare function combineScores(
62
- scoreA: PerseusScore,
63
- scoreB: PerseusScore
64
- ): PerseusScore;
65
- declare function keScoreFromPerseusScore(
66
- score: PerseusScore,
67
- guess: any,
68
- state: any
69
- ): KEScore;
70
-
71
- /**
72
- * Return the first valid interpretation of 'text' as a number, in the form
73
- * {value: 2.3, exact: true}.
74
- */
75
- declare function firstNumericalParse(text: string): ParsedValue | null | void;
76
- declare function stringArrayOfSize(size: number): $ReadOnlyArray<string>;
77
-
78
- /**
79
- * For a graph's x or y dimension, given the tick step,
80
- * the ranges extent (e.g. [-10, 10]), the pixel dimension constraint,
81
- * and the grid step, return a bunch of configurations for that dimension.
82
- *
83
- * Example:
84
- * gridDimensionConfig(10, [-50, 50], 400, 5)
85
- *
86
- * Returns: {
87
- * scale: 4,
88
- * snap: 2.5,
89
- * tickStep: 2,
90
- * unityLabel: true
91
- * };
92
- */
93
- declare function gridDimensionConfig(
94
- absTickStep: number,
95
- extent: Coordinates,
96
- dimensionConstraint: number,
97
- gridStep: number
98
- ): GridDimensions;
99
-
100
- /**
101
- * Given the range, step, and boxSize, calculate the reasonable gridStep.
102
- * Used for when one was not given explicitly.
103
- *
104
- * Example:
105
- * getGridStep([[-10, 10], [-10, 10]], [1, 1], 340)
106
- *
107
- * Returns: [1, 1]
108
- *
109
- * TODO(somewhatabstract, FEI-3464): Consolidate query string parsing functions.
110
- */
111
- declare function getGridStep(
112
- range: [Coordinates, Coordinates],
113
- step: Coordinates,
114
- boxSize: number
115
- ): Coordinates;
116
- declare function snapStepFromGridStep(
117
- gridStep: [number, number]
118
- ): [number, number];
119
-
120
- /**
121
- * Given the tickStep and the graph's scale, find a
122
- * grid step.
123
- * Example:
124
- * gridStepFromTickStep(200, 0.2) // returns 100
125
- */
126
- declare function gridStepFromTickStep(
127
- tickStep: number,
128
- scale: number
129
- ): number | null | void;
130
-
131
- /**
132
- * Given the range and a dimension, come up with the appropriate
133
- * scale.
134
- * Example:
135
- * scaleFromExtent([-25, 25], 500) // returns 10
136
- */
137
- declare function scaleFromExtent(
138
- extent: Coordinates,
139
- dimensionConstraint: number
140
- ): number;
141
-
142
- /**
143
- * Return a reasonable tick step given extent and dimension.
144
- * (extent is [begin, end] of the domain.)
145
- * Example:
146
- * tickStepFromExtent([-10, 10], 300) // returns 2
147
- */
148
- declare function tickStepFromExtent(
149
- extent: Coordinates,
150
- dimensionConstraint: number
151
- ): number;
152
-
153
- /**
154
- * Find a good tick step for the desired number of ticks in the range
155
- * Modified from d3.scale.linear: d3_scale_linearTickRange.
156
- * Thanks, mbostock!
157
- * Example:
158
- * tickStepFromNumTicks(50, 6) // returns 10
159
- */
160
- declare function tickStepFromNumTicks(span: number, numTicks: number): number;
161
-
162
- /**
163
- * Constrain tick steps intended for desktop size graphs
164
- * to something more suitable for mobile size graphs.
165
- * Specifically, we aim for 10 or fewer ticks per graph axis.
166
- */
167
- declare function constrainedTickStepsFromTickSteps(
168
- tickSteps: [number, number],
169
- ranges: [Range, Range]
170
- ): Coordinates;
171
-
172
- /**
173
- * Approximate equality on numbers and primitives.
174
- */
175
- declare function eq<T>(x: T, y: T): boolean;
176
-
177
- /**
178
- * Deep approximate equality on primitives, numbers, arrays, and objects.
179
- * Recursive.
180
- */
181
- declare function deepEq<T>(x: T, y: T): boolean;
182
-
183
- /**
184
- * Query String Parser
185
- *
186
- * Original from:
187
- * http://stackoverflow.com/questions/901115/get-querystring-values-in-javascript/2880929#2880929
188
- */
189
- declare function parseQueryString(query: string): QueryParams;
190
-
191
- /**
192
- * Query string adder
193
- * Works for URLs without #.
194
- * Original from:
195
- * http://stackoverflow.com/questions/5999118/add-or-update-query-string-parameter
196
- */
197
- declare function updateQueryString(
198
- uri: string,
199
- key: string,
200
- value: string
201
- ): string;
202
-
203
- /**
204
- * A more strict encodeURIComponent that escapes `()'!`s
205
- * Especially useful for creating URLs that are embeddable in markdown
206
- *
207
- * Adapted from
208
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent
209
- * This function and the above original available under the
210
- * CC-BY-SA 2.5 license.
211
- */
212
- declare function strongEncodeURIComponent(str: string): string;
213
-
214
- /**
215
- * TODO(somewhatabstract, JIRA-XXXX):
216
- * This does not appear to be used within webapp. Could be dead code.
217
- * Need to check with mobile.
218
- */
219
- declare function widgetShouldHighlight(widget: Widget): boolean;
220
-
221
- /**
222
- * If a widget says that it is empty once it is graded.
223
- * Trying to encapsulate references to the score format.
224
- */
225
- declare function scoreIsEmpty(score: PerseusScore): boolean;
226
- declare function resetTouchHandlers(): void;
227
-
228
- /**
229
- * Extracts the location of a touch or mouse event, allowing you to pass
230
- * in a "mouseup", "mousedown", or "mousemove" event and receive the
231
- * correct coordinates. Shouldn't be used with "vmouse" events.
232
- */
233
- declare function extractPointerLocation(event: any): Position | null | void;
234
-
235
- /**
236
- * Pass this function as the touchstart for an element to
237
- * avoid sending the touch to the mobile scratchpad
238
- */
239
- declare function captureScratchpadTouchStart(e: TouchEvent): void;
240
- declare function getImageSize(
241
- url: string,
242
- callback: (width: number, height: number) => void
243
- ): void;
244
-
245
- /**
246
- * Gets the word right before where the textarea cursor is
247
- * @param {Element} textarea - The textarea DOM element
248
- * @return {JSON} - An object with the word and its starting and ending positions in the textarea
249
- */
250
- declare function getWordBeforeCursor(
251
- textarea: HTMLTextAreaElement
252
- ): WordAndPosition;
253
-
254
- /**
255
- * Moves the textarea cursor at the specified position
256
- * @param {Element} textarea - The textarea DOM element
257
- * @param {int} pos - The position where the cursor will be moved
258
- */
259
- declare function moveCursor(textarea: HTMLTextAreaElement, pos: number): void;
260
- declare var Util: {|
261
- +inputPathsEqual: typeof inputPathsEqual,
262
- +nestedMap: <T, M>(
263
- children: T | $ReadOnlyArray<T>,
264
- func: (arg1: T) => M,
265
- context: mixed
266
- ) => M | $ReadOnlyArray<M>,
267
- +rWidgetRule: RegExp,
268
- +rTypeFromWidgetId: RegExp,
269
- +rWidgetParts: RegExp,
270
- +snowman: "☃",
271
- +noScore: {|
272
- type: "points",
273
- earned: number,
274
- total: number,
275
- message?: string | null | void,
276
- |},
277
- +seededRNG: (seed: number) => RNG,
278
- +shuffle: typeof shuffle,
279
- +split: (str: string, r: RegExp) => $ReadOnlyArray<string>,
280
- +combineScores: typeof combineScores,
281
- +keScoreFromPerseusScore: typeof keScoreFromPerseusScore,
282
- +firstNumericalParse: typeof firstNumericalParse,
283
- +stringArrayOfSize: typeof stringArrayOfSize,
284
- +gridDimensionConfig: typeof gridDimensionConfig,
285
- +getGridStep: typeof getGridStep,
286
- +snapStepFromGridStep: typeof snapStepFromGridStep,
287
- +scaleFromExtent: typeof scaleFromExtent,
288
- +tickStepFromExtent: typeof tickStepFromExtent,
289
- +gridStepFromTickStep: typeof gridStepFromTickStep,
290
- +tickStepFromNumTicks: typeof tickStepFromNumTicks,
291
- +constrainedTickStepsFromTickSteps: typeof constrainedTickStepsFromTickSteps,
292
- +DeprecationMixin: any,
293
- +eq: typeof eq,
294
- +deepEq: typeof deepEq,
295
- +parseQueryString: typeof parseQueryString,
296
- +updateQueryString: typeof updateQueryString,
297
- +strongEncodeURIComponent: typeof strongEncodeURIComponent,
298
- +widgetShouldHighlight: typeof widgetShouldHighlight,
299
- +scoreIsEmpty: typeof scoreIsEmpty,
300
- +touchHandlers: TouchHandlers,
301
- +resetTouchHandlers: typeof resetTouchHandlers,
302
- +extractPointerLocation: typeof extractPointerLocation,
303
- +supportsPassiveEvents: () => boolean,
304
- +captureScratchpadTouchStart: typeof captureScratchpadTouchStart,
305
- +getImageSize: typeof getImageSize,
306
- +getImageSizeModern: typeof GraphieUtil.getImageSizeModern,
307
- +getRealImageUrl: typeof GraphieUtil.getRealImageUrl,
308
- +isLabeledSVG: typeof GraphieUtil.isLabeledSVG,
309
- +getBaseUrl: typeof GraphieUtil.getBaseUrl,
310
- +getSvgUrl: typeof GraphieUtil.getSvgUrl,
311
- +getDataUrl: typeof GraphieUtil.getDataUrl,
312
- +textarea: {|
313
- +getWordBeforeCursor: typeof getWordBeforeCursor,
314
- +moveCursor: typeof moveCursor,
315
- |},
316
- +unescapeMathMode: (label: string) => string,
317
- +random: RNG,
318
- |};
319
- declare export default typeof Util;
@@ -1,17 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- declare var _default: {|
8
- apiVersion: {|
9
- major: number,
10
- minor: number,
11
- |},
12
- itemDataVersion: {|
13
- major: number,
14
- minor: number,
15
- |},
16
- |};
17
- declare export default typeof _default;
@@ -1,33 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as React from "react";
8
- import type { PerseusWidgetOptions } from "./perseus-types";
9
- import type { LinterContextProps, WidgetProps } from "./types";
10
- declare type Props = {|
11
- shouldHighlight: boolean,
12
- type: string,
13
- initialProps: WidgetProps<any, PerseusWidgetOptions>,
14
- linterContext: LinterContextProps,
15
- |};
16
- declare type DefaultProps = {|
17
- linterContext: LinterContextProps,
18
- |};
19
- declare type State = {|
20
- sizeClass: "small" | "medium" | "large" | "xlarge",
21
- widgetProps: WidgetProps<any, PerseusWidgetOptions>,
22
- |};
23
- declare class WidgetContainer extends React.Component<Props, State> {
24
- static defaultProps: DefaultProps;
25
- state: any;
26
- componentDidMount(): void;
27
- render(): React.Node;
28
- UNSAFE_componentWillReceiveProps(nextProps: Props): void;
29
- shouldComponentUpdate(nextProps: Props, nextState: State): boolean;
30
- getWidget: () => any;
31
- replaceWidgetProps: (arg1: WidgetProps<any, PerseusWidgetOptions>) => void;
32
- }
33
- declare export default typeof WidgetContainer;
@@ -1,70 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as $Flowgen$Import$_2e__2e__2f_types from "../types";
8
- import * as React from "react";
9
- import type { PerseusCategorizerWidgetOptions } from "../perseus-types";
10
- import type { PerseusScore, WidgetProps } from "../types";
11
- declare type UserInput = any;
12
- export type Rubric = PerseusCategorizerWidgetOptions;
13
- declare type Props = {|
14
- ...WidgetProps<RenderProps, Rubric>,
15
- ...{|
16
- values: $ReadOnlyArray<string>,
17
- |},
18
- |};
19
- declare type DefaultProps = {|
20
- items: $PropertyType<Props, "items">,
21
- categories: $PropertyType<Props, "categories">,
22
- values: $PropertyType<Props, "values">,
23
- linterContext: $PropertyType<Props, "linterContext">,
24
- |};
25
- declare type State = {|
26
- uniqueId: string,
27
- |};
28
- declare export class Categorizer extends React.Component<Props, State> {
29
- static defaultProps: DefaultProps;
30
- state: State;
31
- change: (...args: $ReadOnlyArray<mixed>) => any;
32
- getUserInput: () => UserInput;
33
- render(): React.Node;
34
- onChange: (arg1: number, arg2: number) => void;
35
- simpleValidate: (arg1: Rubric) => PerseusScore;
36
- static validate(userInput: UserInput, rubric: Rubric): PerseusScore;
37
- static getUserInputFromProps(props: Props): UserInput;
38
- }
39
- declare type RenderProps = {|
40
- items: $PropertyType<PerseusCategorizerWidgetOptions, "items">,
41
- categories: $PropertyType<PerseusCategorizerWidgetOptions, "categories">,
42
- randomizeItems: $PropertyType<
43
- PerseusCategorizerWidgetOptions,
44
- "randomizeItems"
45
- >,
46
- values?: $PropertyType<PerseusCategorizerWidgetOptions, "values">,
47
- |};
48
- declare var _default: $ReadOnly<{|
49
- name: string,
50
- displayName: string,
51
- getWidget?: (() => typeof Categorizer) | void,
52
- accessible?: boolean | ((props: any) => boolean) | void,
53
- hidden?: boolean | void,
54
- version?: $Flowgen$Import$_2e__2e__2f_types.Version | void,
55
- supportedAlignments?: $ReadOnlyArray<$Flowgen$Import$_2e__2e__2f_types.Alignment> | void,
56
- defaultAlignment?: $Flowgen$Import$_2e__2e__2f_types.Alignment | void,
57
- getDefaultAlignment?:
58
- | (() => $Flowgen$Import$_2e__2e__2f_types.Alignment)
59
- | void,
60
- isLintable?: boolean | void,
61
- tracking?: $Flowgen$Import$_2e__2e__2f_types.Tracking | void,
62
- traverseChildWidgets?: any,
63
- transform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
64
- staticTransform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
65
- propUpgrades?: {
66
- [key: string]: (arg1: any) => any,
67
- } | void,
68
- widget: typeof Categorizer,
69
- |}>;
70
- declare export default typeof _default;
@@ -1,54 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as $Flowgen$Import$_2e__2e__2f_types from "../types";
8
- import PropTypes from "prop-types";
9
- import * as React from "react";
10
- declare class CSProgram extends React.Component<any> {
11
- static propTypes: {|
12
- programID: PropTypes.Requireable<string>,
13
- programType: PropTypes.Requireable<string>,
14
- width: PropTypes.Requireable<number>,
15
- height: PropTypes.Requireable<number>,
16
- settings: PropTypes.Requireable<any[]>,
17
- showEditor: PropTypes.Requireable<boolean>,
18
- showButtons: PropTypes.Requireable<boolean>,
19
- status: PropTypes.Requireable<string>,
20
- message: PropTypes.Requireable<string>,
21
- onChange: PropTypes.Validator<(...args: any[]) => any>,
22
- |};
23
- static validate(state: any, rubric: any): any;
24
- static defaultProps: any;
25
- componentDidMount(): void;
26
- componentWillUnmount(): void;
27
- handleMessageEvent: (arg1: any) => void;
28
- change: (...args: $ReadOnlyArray<mixed>) => any;
29
- simpleValidate: (arg1: any) => any;
30
- render(): React.Node;
31
- }
32
- declare var _default: $ReadOnly<{|
33
- name: string,
34
- displayName: string,
35
- getWidget?: (() => typeof CSProgram) | void,
36
- accessible?: boolean | ((props: any) => boolean) | void,
37
- hidden?: boolean | void,
38
- version?: $Flowgen$Import$_2e__2e__2f_types.Version | void,
39
- supportedAlignments?: $ReadOnlyArray<$Flowgen$Import$_2e__2e__2f_types.Alignment> | void,
40
- defaultAlignment?: $Flowgen$Import$_2e__2e__2f_types.Alignment | void,
41
- getDefaultAlignment?:
42
- | (() => $Flowgen$Import$_2e__2e__2f_types.Alignment)
43
- | void,
44
- isLintable?: boolean | void,
45
- tracking?: $Flowgen$Import$_2e__2e__2f_types.Tracking | void,
46
- traverseChildWidgets?: any,
47
- transform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
48
- staticTransform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
49
- propUpgrades?: {
50
- [key: string]: (arg1: any) => any,
51
- } | void,
52
- widget: typeof CSProgram,
53
- |}>;
54
- declare export default typeof _default;
@@ -1,57 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as $Flowgen$Import$_2e__2e__2f_types from "../types";
8
- import * as React from "react";
9
- import type {
10
- PerseusRenderer,
11
- PerseusDefinitionWidgetOptions,
12
- } from "../perseus-types";
13
- import type { PerseusScore, WidgetProps } from "../types";
14
- declare type Empty = { [key: empty]: empty };
15
- declare type RenderProps = PerseusDefinitionWidgetOptions;
16
- declare type Rubric = PerseusDefinitionWidgetOptions;
17
- declare type UserInput = Empty;
18
- declare type DefinitionProps = {|
19
- ...WidgetProps<RenderProps, Rubric>,
20
- ...{|
21
- widgets: $PropertyType<PerseusRenderer, "widgets">,
22
- |},
23
- |};
24
- declare type DefaultProps = {|
25
- togglePrompt: string,
26
- definition: string,
27
- |};
28
- declare class Definition extends React.Component<DefinitionProps> {
29
- static defaultProps: DefaultProps;
30
- static validate(userInput: UserInput, rubric: Rubric): PerseusScore;
31
- getUserInput: () => UserInput;
32
- simpleValidate: (arg1: Rubric) => PerseusScore;
33
- render(): React.Node;
34
- }
35
- declare var _default: $ReadOnly<{|
36
- name: string,
37
- displayName: string,
38
- getWidget?: (() => typeof Definition) | void,
39
- accessible?: boolean | ((props: any) => boolean) | void,
40
- hidden?: boolean | void,
41
- version?: $Flowgen$Import$_2e__2e__2f_types.Version | void,
42
- supportedAlignments?: $ReadOnlyArray<$Flowgen$Import$_2e__2e__2f_types.Alignment> | void,
43
- defaultAlignment?: $Flowgen$Import$_2e__2e__2f_types.Alignment | void,
44
- getDefaultAlignment?:
45
- | (() => $Flowgen$Import$_2e__2e__2f_types.Alignment)
46
- | void,
47
- isLintable?: boolean | void,
48
- tracking?: $Flowgen$Import$_2e__2e__2f_types.Tracking | void,
49
- traverseChildWidgets?: any,
50
- transform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
51
- staticTransform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
52
- propUpgrades?: {
53
- [key: string]: (arg1: any) => any,
54
- } | void,
55
- widget: typeof Definition,
56
- |}>;
57
- declare export default typeof _default;
@@ -1,63 +0,0 @@
1
- /**
2
- * Flowtype definitions for data
3
- * Generated by Flowgen from a Typescript Definition
4
- * Flowgen v1.21.0
5
- * @flow
6
- */
7
- import * as $Flowgen$Import$_2e__2e__2f_types from "../types";
8
- import * as React from "react";
9
- import type { PerseusDropdownWidgetOptions } from "../perseus-types";
10
- import type { PerseusScore, WidgetProps } from "../types";
11
- declare type Rubric = PerseusDropdownWidgetOptions;
12
- declare type UserInput = {|
13
- value: number,
14
- |};
15
- declare type Props = {|
16
- ...WidgetProps<RenderProps, Rubric>,
17
- ...{|
18
- selected: number,
19
- |},
20
- |};
21
- declare type DefaultProps = {|
22
- choices: $PropertyType<Props, "choices">,
23
- selected: $PropertyType<Props, "selected">,
24
- placeholder: $PropertyType<Props, "placeholder">,
25
- apiOptions: $PropertyType<Props, "apiOptions">,
26
- |};
27
- declare class Dropdown extends React.Component<Props> {
28
- static defaultProps: DefaultProps;
29
- static validate(userInput: UserInput, rubric: Rubric): PerseusScore;
30
- focus: () => boolean;
31
- _handleChangeEvent: (arg1: SyntheticInputEvent<HTMLInputElement>) => void;
32
- _handleChange: (arg1: number) => void;
33
- getUserInput: () => UserInput;
34
- simpleValidate: (arg1: Rubric) => PerseusScore;
35
- render(): React.Node;
36
- }
37
- declare type RenderProps = {|
38
- placeholder: string,
39
- choices: $ReadOnlyArray<string>,
40
- |};
41
- declare var _default: $ReadOnly<{|
42
- name: string,
43
- displayName: string,
44
- getWidget?: (() => typeof Dropdown) | void,
45
- accessible?: boolean | ((props: any) => boolean) | void,
46
- hidden?: boolean | void,
47
- version?: $Flowgen$Import$_2e__2e__2f_types.Version | void,
48
- supportedAlignments?: $ReadOnlyArray<$Flowgen$Import$_2e__2e__2f_types.Alignment> | void,
49
- defaultAlignment?: $Flowgen$Import$_2e__2e__2f_types.Alignment | void,
50
- getDefaultAlignment?:
51
- | (() => $Flowgen$Import$_2e__2e__2f_types.Alignment)
52
- | void,
53
- isLintable?: boolean | void,
54
- tracking?: $Flowgen$Import$_2e__2e__2f_types.Tracking | void,
55
- traverseChildWidgets?: any,
56
- transform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
57
- staticTransform?: $Flowgen$Import$_2e__2e__2f_types.WidgetTransform | void,
58
- propUpgrades?: {
59
- [key: string]: (arg1: any) => any,
60
- } | void,
61
- widget: typeof Dropdown,
62
- |}>;
63
- declare export default typeof _default;