@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,43 +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 { DOMHighlight, Position, Rect, ZIndexes } from "./types";
9
- declare type Props = {|
10
- highlight: DOMHighlight,
11
- highlightKey: string,
12
- offsetParent: Element,
13
- zIndexes: ZIndexes,
14
- |};
15
- declare type State = {|
16
- cachedHighlightRects: $ReadOnlyArray<Rect>,
17
- |};
18
- declare class HighlightRenderer extends React.PureComponent<Props, State> {
19
- state: State;
20
- UNSAFE_componentWillReceiveProps(nextProps: Props): void;
21
-
22
- /**
23
- * Compute the set of rectangles that cover the highlighted content, with
24
- * coordinates relative to the offset parent. That way, we can use them
25
- * for CSS positioning.
26
- */
27
- _computeRects(props: Props): $ReadOnlyArray<Rect>;
28
-
29
- /**
30
- * Return whether the given mouse position (coordinates relative to this
31
- * component's offset parent) is hovering over the given rectangle
32
- * (coordinates also relative to this component's offset parent).
33
- */
34
- _rectIsHovered(rect: Rect, mouseOffsetPosition: Position): boolean;
35
-
36
- /**
37
- * Return whether the given mouse position (coordinates relative to the
38
- * viewport) is hovering over this highlight.
39
- */
40
- isHovered(mouseClientPosition?: Position | null): boolean;
41
- render(): React.Node;
42
- }
43
- declare export default typeof HighlightRenderer;
@@ -1,41 +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 HighlightRenderer from "./highlight-renderer";
9
- import type { DOMHighlightSet, Position, ZIndexes } from "./types";
10
- declare type Props = {|
11
- editable: boolean,
12
- highlights: DOMHighlightSet,
13
- offsetParent: Element,
14
- onRemoveHighlight: (highlightKey: string) => mixed,
15
- zIndexes: ZIndexes,
16
- |};
17
- declare type State = {|
18
- hoveredHighlightKey: string | null | void,
19
- hoveringTooltipFor: string | null | void,
20
- |};
21
- declare class HighlightSetRenderer extends React.PureComponent<Props, State> {
22
- state: State;
23
- _highlightRenderers: {
24
- [highlightKey: string]: HighlightRenderer,
25
- };
26
- componentDidMount(): void;
27
- UNSAFE_componentWillReceiveProps(nextProps: Props): void;
28
- componentWillUnmount(): void;
29
-
30
- /**
31
- * Given whether we were previously listening to mousemove events, and
32
- * whether we will now listen to mousemove events, add or remove the
33
- * listener accordingly.
34
- */
35
- _updateEditListeners(wasListening: boolean, willListen: boolean): void;
36
- _handleMouseMove: (e: MouseEvent) => void;
37
- _getHoveredHighlightKey(mouseClientPosition: Position): string | null | void;
38
- _renderTooltip(): null | React.Node;
39
- render(): React.Node;
40
- }
41
- declare export default typeof HighlightSetRenderer;
@@ -1,22 +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 { Rect } from "./types";
9
- declare type Props = {|
10
- label: string,
11
- onClick: () => mixed,
12
- onMouseEnter?: () => mixed,
13
- onMouseLeave?: () => mixed,
14
- focusNode: Node,
15
- focusOffset: number,
16
- offsetParent: Element,
17
- |};
18
- declare class HighlightTooltip extends React.PureComponent<Props> {
19
- _getFocusRect(): Rect | null | void;
20
- render(): null | React.Node;
21
- }
22
- declare export default typeof HighlightTooltip;
@@ -1,30 +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 { TrackedSelection } from "./selection-tracker";
9
- import type {
10
- DOMHighlight,
11
- DOMHighlightSet,
12
- DOMRange,
13
- ZIndexes,
14
- } from "./types";
15
- declare type Props = {|
16
- buildHighlight: (range: DOMRange) => DOMHighlight | null | void,
17
- contentNode: Node,
18
- editable: boolean,
19
- highlights: DOMHighlightSet,
20
- offsetParent: Element,
21
- onAddHighlight: (range: DOMHighlight) => mixed,
22
- onRemoveHighlight: (highlightKey: string) => mixed,
23
- zIndexes: ZIndexes,
24
- |};
25
- declare class HighlightingUI extends React.PureComponent<Props> {
26
- _handleAddHighlight(highlightToAdd: DOMHighlight): void;
27
- _selectionIsValid(trackedSelection?: TrackedSelection | null): boolean;
28
- render(): React.Node;
29
- }
30
- declare export default typeof HighlightingUI;
@@ -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 React from "react";
8
- import type { DOMHighlight, DOMRange } from "./types";
9
- export type TrackedSelection = {|
10
- focusNode: Node,
11
- focusOffset: number,
12
- proposedHighlight: DOMHighlight,
13
- |};
14
- declare type Props = {|
15
- buildHighlight: (domRange: DOMRange) => DOMHighlight | null | void,
16
- children?: (
17
- trackedSelection: TrackedSelection | null | void,
18
- userIsMouseSelecting: boolean
19
- ) => React.Element<any>,
20
- enabled: boolean,
21
- |};
22
- declare type State = {|
23
- mouseState: "down" | "down-and-selecting" | "up",
24
- trackedSelection: TrackedSelection | null | void,
25
- |};
26
- declare class SelectionTracker extends React.PureComponent<Props, State> {
27
- state: State;
28
- componentDidMount(): void;
29
- componentDidUpdate(prevProps: Props): void;
30
- componentWillUnmount(): void;
31
- _updateListeners(wasListening: boolean, willListen: boolean): void;
32
-
33
- /**
34
- * Get the current selection focus and range, if present and non-collapsed.
35
- *
36
- * Otherwise, if there is no current selection or it's collapsed, return
37
- * null.
38
- */
39
- _computeFocusAndRange(): {|
40
- focusNode: Node,
41
- focusOffset: number,
42
- range: DOMRange,
43
- |} | null | void;
44
-
45
- /**
46
- * Compute and update the TrackedSelection to reflect the document state.
47
- */
48
- _updateTrackedSelection(): void;
49
- _handleSelectionChange: () => void;
50
- _handleMouseDown: () => void;
51
- _handleMouseUp: () => void;
52
- render(): null | React.Element<"div">;
53
- }
54
- declare export default typeof SelectionTracker;
@@ -1,22 +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 type { DOMHighlight, DOMHighlightSet, DOMRange } from "../types";
8
- export type { DOMHighlight, DOMHighlightSet, DOMRange };
9
- export type Position = {|
10
- left: number,
11
- top: number,
12
- |};
13
- export type Rect = {|
14
- ...Position,
15
- ...{|
16
- width: number,
17
- height: number,
18
- |},
19
- |};
20
- export type ZIndexes = {|
21
- belowContent: number,
22
- |};
@@ -1,42 +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 type { DOMRange, Position, Rect } from "./types";
8
-
9
- /**
10
- * Given two positions relative to the same origin, return `child`'s position
11
- * relative to `parent`'s position.
12
- */
13
- declare export function getRelativePosition(
14
- child: Position,
15
- parent: Position
16
- ): Position;
17
-
18
- /**
19
- * `getRelativePosition`, but for Rects.
20
- *
21
- * Given a rectangle and a position relative to the same origin, return a new
22
- * rectangle of the same size, whose position is relative to the given
23
- * position.
24
- */
25
- declare export function getRelativeRect(x: Rect, parent: Position): Rect;
26
-
27
- /**
28
- * Given a DOMRange, return a list of client-relative rects that cover the text
29
- * inside the DOMRange.
30
- *
31
- * This behaves differently than the browser's built-in `getClientRects` method
32
- * for DOMRanges, because this method only gets rects for the *text* nodes,
33
- * whereas the browser's method will also return rects for any fully-contained
34
- * *element* nodes.
35
- *
36
- * For example, if an entire paragraph is selected, then `getClientRects` will
37
- * return a rectangle that covers the entire paragraph block, whereas this
38
- * method will only return rectangles for the text inside the paragraph.
39
- */
40
- declare export function getClientRectsForTextInRange(
41
- range: DOMRange
42
- ): $ReadOnlyArray<Rect>;
@@ -1,21 +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 { DOMRange } from "./types";
9
- declare type Props = {|
10
- children?: React.Element<any>,
11
- onWordsUpdate: (wordRanges: $ReadOnlyArray<DOMRange>) => mixed,
12
- |};
13
- declare class WordIndexer extends React.PureComponent<Props> {
14
- _container: HTMLElement | null | void;
15
- componentDidMount(): void;
16
- componentDidUpdate(): void;
17
- _sendWordsUpdate(): void;
18
- _getWordRanges(): $ReadOnlyArray<DOMRange>;
19
- render(): React.Node;
20
- }
21
- declare export default typeof WordIndexer;
@@ -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 type Props = {|
8
- message: string,
9
- enabled: boolean,
10
- onClick: () => void,
11
- fixedPosition?: boolean,
12
- |};
13
- declare var HUD: (x: Props) => React$Node;
14
- declare export default typeof HUD;
@@ -1,31 +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 { CSSProperties } from "aphrodite";
9
- export type IconType = {|
10
- height: number,
11
- path: string,
12
- width: number,
13
- |};
14
- declare type Props = {|
15
- className?: string,
16
- style?: CSSProperties,
17
- title?: string,
18
- color: string,
19
- focusable?: boolean,
20
- icon: IconType | string,
21
- pathClassName?: string,
22
- size?: number,
23
- alt?: string,
24
- |};
25
- declare class Icon extends React.Component<Props> {
26
- static defaultProps: {|
27
- color: string,
28
- |};
29
- render(): React.Node;
30
- }
31
- declare export default typeof Icon;
@@ -1,49 +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 { Dimensions } from "../types";
9
- declare var Status: {|
10
- +PENDING: "pending",
11
- +LOADING: "loading",
12
- +LOADED: "loaded",
13
- +FAILED: "failed",
14
- |};
15
- export type ImageProps = {|
16
- alt: string,
17
- title?: string,
18
- "aria-hidden": boolean | void,
19
- tabIndex?: string,
20
- onClick?: (e: SyntheticEvent<>) => void,
21
- style?: Dimensions,
22
- |};
23
- declare type Props = {|
24
- children?: React.Node,
25
- imgProps: ImageProps,
26
- onError?: (event: Event) => void,
27
- onLoad?: (event: Event) => void,
28
- onUpdate: (status: $ElementType<typeof Status, $Keys<typeof Status>>) => void,
29
- preloader: () => React.Element<any> | null | void,
30
- src: string,
31
- |};
32
- declare type State = {|
33
- status: $ElementType<typeof Status, $Keys<typeof Status>>,
34
- |};
35
- declare class ImageLoader extends React.Component<Props, State> {
36
- img: HTMLImageElement | null | void;
37
- constructor(props: Props): this;
38
- componentDidMount(): void;
39
- UNSAFE_componentWillReceiveProps(nextProps: Props): void;
40
- componentDidUpdate(prevProps: Props, prevState: State): void;
41
- componentWillUnmount(): void;
42
- createLoader: () => void;
43
- destroyLoader: () => void;
44
- handleLoad: (event: Event) => void;
45
- handleError: (error: Event) => void;
46
- renderImg: () => React.Element<"img">;
47
- render(): React.Node;
48
- }
49
- declare export default typeof ImageLoader;
@@ -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
- import * as React from "react";
8
- declare type Props = {|
9
- children: React.Node,
10
- |};
11
- declare type State = {|
12
- hover: boolean,
13
- |};
14
- declare class InfoTip extends React.Component<Props, State> {
15
- state: State;
16
- handleMouseEnter: () => void;
17
- handleMouseLeave: () => void;
18
- render(): React.Node;
19
- }
20
- declare export default typeof InfoTip;
@@ -1,18 +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 ReactComponentsInfoTip from "./info-tip/info-tip";
9
- declare type Props = React.ElementConfig<typeof ReactComponentsInfoTip>;
10
- declare type State = {|
11
- didMount: boolean,
12
- |};
13
- declare class InfoTip extends React.Component<Props, State> {
14
- state: State;
15
- componentDidMount(): void;
16
- render(): React.Node;
17
- }
18
- declare export default typeof InfoTip;
@@ -1,39 +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
- declare type InlineIconProps = {|
9
- path: string,
10
- height: number,
11
- width: number,
12
- style?: React.CSSProperties,
13
- title?: string,
14
- |};
15
- /**
16
- * A stripped version of Icon.jsx from webapp. Takes an SVG icon and renders it
17
- * inline like Font Awesome did.
18
- *
19
- * If you are looking for an icon that we've used before you should look in
20
- * webapp's `icon-paths.js` which is a reference file for all the SVG paths
21
- * that we've used. You'll need to copy the object from that file into
22
- * whichever file you're using the icon and explicitly pass it in to the
23
- * <InlineIcon/> React component.
24
- *
25
- * We assume that the viewBox is cropped and aligned to (0, 0), but icons can
26
- * be defined differently. At some point we might want to add these attributes
27
- * to `icon-paths.js`, but for now this is a fairly safe assumption.
28
- *
29
- * Sample usage:
30
- *
31
- * const editIcon = {
32
- * path: "M41.209 53.753l5.39 0l0 5.39l3.136 0l6.468-6.517-8.477-8.526-6.517 6.517l0 3.136zm33.173-34.937q-.882-.882-1.862.049l-19.6 19.6q-.931.98-.049 1.862t1.862-.049l19.6-19.6q.931-.98.049-1.862zm-38.563 45.668l0-16.121l37.632-37.632 16.17 16.121-37.632 37.632l-16.17 0zm43.022-12.397l0 10.633q-.049 6.713-4.753 11.417t-11.368 4.704l-46.599 0q-6.713 0-11.417-4.753t-4.704-11.368l0-46.599q0-6.664 4.753-11.417t11.368-4.704l46.599 0q3.528 0 6.566 1.372.833.392.98 1.323t-.49 1.617l-2.744 2.744q-.784.784-1.96.441t-2.352-.343l-46.599 0q-3.675 0-6.321 2.646t-2.646 6.321l0 46.599q0 3.675 2.646 6.321t6.321 2.646l46.599 0q3.675 0 6.321-2.646t2.646-6.321l0-7.056q0-.735.49-1.225l3.577-3.577q.833-.833 1.96-.392t1.127 1.617zm7.203-51.646q2.254 0 3.773 1.568l8.526 8.526q1.568 1.568 1.568 3.822t-1.568 3.773l-5.145 5.145-16.121-16.121 5.145-5.145q1.568-1.568 3.822-1.568z",
33
- * width: 100,
34
- * height: 78.912,
35
- * };
36
- * <InlineIcon {...editIcon} />
37
- */
38
- declare var InlineIcon: (x: InlineIconProps) => React.Element<any>;
39
- declare export default typeof InlineIcon;
@@ -1,58 +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 { LinterContextProps } from "../types";
9
- import type { StyleType } from "@khanacademy/wonder-blocks-core";
10
- declare type Props = {|
11
- type: "math" | "text" | "tex",
12
- value: string,
13
- onChange: any,
14
- className: string,
15
- examples: $ReadOnlyArray<string>,
16
- shouldShowExamples: boolean,
17
- convertDotToTimes?: boolean,
18
- buttonSet?: string,
19
- buttonsVisible?: "always" | "never" | "focused",
20
- labelText?: string,
21
- onFocus: () => void,
22
- onBlur: () => void,
23
- disabled: boolean,
24
- style?: StyleType,
25
- id: string,
26
- linterContext: LinterContextProps,
27
- |};
28
- declare type DefaultProps = {|
29
- type: $PropertyType<Props, "type">,
30
- shouldShowExamples: $PropertyType<Props, "shouldShowExamples">,
31
- onFocus: $PropertyType<Props, "onFocus">,
32
- onBlur: $PropertyType<Props, "onBlur">,
33
- disabled: $PropertyType<Props, "disabled">,
34
- linterContext: $PropertyType<Props, "linterContext">,
35
- className: $PropertyType<Props, "className">,
36
- |};
37
- declare type State = {|
38
- focused: boolean,
39
- showExamples: boolean,
40
- |};
41
- declare class InputWithExamples extends React.Component<Props, State> {
42
- static defaultProps: DefaultProps;
43
- state: State;
44
- _getUniqueId: () => string;
45
- _getInputClassName: () => string;
46
- _getPropsForInputType: () => any;
47
- _getComponentForInputType: () => any;
48
- _renderInput: () => any;
49
- render(): React.Node;
50
- _handleFocus: () => void;
51
- show: () => void;
52
- hide: () => void;
53
- _handleBlur: () => void;
54
- focus: () => void;
55
- blur: () => void;
56
- handleChange: (arg1: any) => void;
57
- }
58
- declare export default typeof InputWithExamples;
@@ -1,58 +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
-
9
- declare var Severity: {|
10
- +Error: 1, // 1
11
- +Warning: 2, // 2
12
- +Recommendation: 3, // 3
13
- +OfflineReportingOnly: 4, // 4
14
- |};
15
- declare type Props = {|
16
- children: React.Node,
17
- inline?: boolean,
18
- message: string,
19
- ruleName: string,
20
- insideTable: boolean,
21
- blockHighlight?: boolean,
22
- severity?: $Values<typeof Severity>,
23
- |};
24
- declare type State = {|
25
- tooltipAbove: boolean,
26
- |};
27
- /**
28
- * This component renders "lint" nodes in a markdown parse tree. Lint nodes
29
- * are inserted into the tree by the Perseus linter (see
30
- * perseus-linter/src/index).
31
- *
32
- * This component serves multiple purposes
33
- *
34
- * 1) It renders a small circle in the right margin to indicate that there
35
- * is lint on (or near) that line.
36
- *
37
- * 2) The area around the circle is hoverable: when the mouse moves over it
38
- * the linty content is highlighted and a tooltip is displayed that explains
39
- * what the problem is.
40
- *
41
- * 3) The hoverable area is also an HTML <a> tag. Clicking on it opens
42
- * a new tab and links to additional details about the specific lint rule.
43
- *
44
- * The CSS required to position the circles in the right margin is tricky
45
- * and it does not always work perfectly. When lint occurs on a block element
46
- * that has a right margin (like anything blockquoted) the circle will appear
47
- * to the left of where it belongs. And if there is more
48
- */
49
- declare class Lint extends React.Component<Props, State> {
50
- _positionTimeout: number | void;
51
- state: State;
52
- componentDidMount(): void;
53
- componentWillUnmount(): void;
54
- getPosition: () => void;
55
- renderLink: (arg1: any) => React.Element<any>;
56
- render(): React.Node;
57
- }
58
- declare export default typeof Lint;
@@ -1,49 +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 { MathFieldInterface } from "@khanacademy/math-input";
8
- import * as React from "react";
9
- import type { ButtonSetsType } from "./tex-buttons";
10
- declare type ButtonsVisibleType = "always" | "never" | "focused";
11
- declare type Props = {|
12
- className?: string,
13
- value: string,
14
- onChange: any,
15
- convertDotToTimes: boolean,
16
- buttonsVisible: ButtonsVisibleType,
17
- buttonSets: ButtonSetsType,
18
- labelText?: string,
19
- onFocus?: () => void,
20
- onBlur?: () => void,
21
- |};
22
- declare type DefaultProps = {|
23
- value: $PropertyType<Props, "value">,
24
- convertDotToTimes: $PropertyType<Props, "convertDotToTimes">,
25
- buttonsVisible: $PropertyType<Props, "buttonsVisible">,
26
- |};
27
- declare type State = {|
28
- focused: boolean,
29
- |};
30
- declare class MathInput extends React.Component<Props, State> {
31
- mouseDown: boolean;
32
- __mathFieldWrapperRef: HTMLSpanElement | null;
33
- __mathField: MathFieldInterface | null;
34
- static defaultProps: DefaultProps;
35
- state: State;
36
- componentDidMount(): void;
37
- componentWillUnmount(): void;
38
- handleFocus: () => void;
39
- handleMouseDown: (arg1: MouseEvent) => void;
40
- handleMouseUp: (arg1: MouseEvent) => void;
41
- handleBlur: (arg1: SyntheticFocusEvent<>) => void;
42
- _shouldShowButtons: () => boolean;
43
- insert: (value: any) => void;
44
- mathField: () => MathFieldInterface | null;
45
- focus: () => void;
46
- blur: () => void;
47
- render(): React.Node;
48
- }
49
- declare export default typeof MathInput;
@@ -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
- declare type Props = {|
9
- value: string | number,
10
- className?: string,
11
- labelText?: string,
12
- onFocus: () => void,
13
- onBlur: () => void,
14
- |};
15
- declare type DefaultProps = Pick<Props, "value" | "onFocus" | "onBlur">;
16
- declare type State = {|
17
- focused: boolean,
18
- selectorNamespace: string,
19
- |};
20
- declare class MathOutput extends React.Component<Props, State> {
21
- static defaultProps: DefaultProps;
22
- state: State;
23
- _getInputClassName: () => string;
24
- _getDisplayValue: (arg1: string | number) => string;
25
- render(): React.Node;
26
- getValue: () => string | number;
27
- focus: () => void;
28
- blur: () => void;
29
- _bindBlurHandler: () => void;
30
- _unbindBlurHandler: () => void;
31
- componentWillUnmount(): void;
32
- }
33
- declare export default typeof MathOutput;