@khanacademy/perseus 7.2.0 → 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 (409) hide show
  1. package/CHANGELOG.md +38 -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.css +61 -61
  7. package/dist/es/index.js +1189 -1308
  8. package/dist/es/index.js.map +1 -1
  9. package/dist/hints-renderer.d.ts +1 -1
  10. package/dist/index.css +61 -61
  11. package/dist/index.js +1180 -1269
  12. package/dist/index.js.map +1 -1
  13. package/dist/mixins/provide-keypad.d.ts +15 -12
  14. package/dist/perseus-api.d.ts +1 -1
  15. package/dist/types.d.ts +3 -2
  16. package/dist/widgets/expression.d.ts +1 -1
  17. package/dist/widgets/graded-group.d.ts +1 -1
  18. package/dist/widgets/interactive-graph.d.ts +1 -1
  19. package/dist/widgets/plotter.d.ts +47 -13
  20. package/dist/widgets/sequence.d.ts +1 -1
  21. package/dist/widgets/table.d.ts +8 -1
  22. package/dist/widgets.d.ts +1 -1
  23. package/package.json +33 -33
  24. package/src/__testdata__/article-renderer.testdata.ts +3 -1
  25. package/src/__testdata__/item-renderer.testdata.ts +1 -1
  26. package/src/__testdata__/renderer.testdata.ts +1 -1
  27. package/src/__tests__/item-renderer.test.tsx +2 -2
  28. package/src/__tests__/mock-asset-loading-widget.tsx +1 -1
  29. package/src/__tests__/perseus-markdown.test.ts +17 -17
  30. package/src/__tests__/renderer-api.test.tsx +21 -21
  31. package/src/__tests__/renderer.test.tsx +13 -13
  32. package/src/__tests__/server-item-renderer.test.tsx +3 -3
  33. package/src/__tests__/tex-wrangler.test.ts +1 -1
  34. package/src/article-renderer.tsx +39 -38
  35. package/src/components/__stories__/image-loader.stories.tsx +1 -0
  36. package/src/components/__tests__/number-input.test.tsx +4 -4
  37. package/src/components/__tests__/sortable.test.tsx +2 -2
  38. package/src/components/fixed-to-responsive.tsx +1 -1
  39. package/src/components/graph.tsx +12 -11
  40. package/src/components/graphie-classes.ts +7 -7
  41. package/src/components/graphie.tsx +14 -14
  42. package/src/components/highlighting/highlightable-content.tsx +1 -1
  43. package/src/components/highlighting/ui/highlight-renderer.tsx +1 -1
  44. package/src/components/highlighting/ui/util.ts +2 -2
  45. package/src/components/highlighting/word-indexer.tsx +4 -4
  46. package/src/components/icon.tsx +2 -1
  47. package/src/components/image-loader.tsx +5 -4
  48. package/src/components/input-with-examples.tsx +2 -2
  49. package/src/components/lint.tsx +1 -1
  50. package/src/components/math-input.tsx +5 -5
  51. package/src/components/math-output.tsx +1 -1
  52. package/src/components/multi-button-group.tsx +1 -1
  53. package/src/components/number-input.tsx +11 -10
  54. package/src/components/prop-check-box.tsx +1 -1
  55. package/src/components/simple-keypad-input.tsx +4 -4
  56. package/src/components/sortable.tsx +43 -41
  57. package/src/components/svg-image.tsx +13 -12
  58. package/src/components/tex-buttons.tsx +5 -3
  59. package/src/components/text-input.tsx +9 -8
  60. package/src/components/text-list-editor.tsx +12 -11
  61. package/src/components/visibility-observer/create-visibility-observer.ts +1 -1
  62. package/src/components/visibility-observer/visibility-observer.tsx +2 -2
  63. package/src/components/zoomable-tex.tsx +3 -3
  64. package/src/components/zoomable.tsx +9 -8
  65. package/src/hint-renderer.tsx +3 -3
  66. package/src/hints-renderer.tsx +12 -11
  67. package/src/index.ts +1 -0
  68. package/src/init.ts +1 -1
  69. package/src/interaction-tracker.ts +4 -4
  70. package/src/interactive2/__tests__/movable-point.test.ts +1 -1
  71. package/src/interactive2/interactive-util.ts +6 -6
  72. package/src/interactive2/movable-helper-methods.ts +2 -2
  73. package/src/interactive2/movable-line-options.ts +37 -37
  74. package/src/interactive2/movable-line.ts +2 -2
  75. package/src/interactive2/movable-point-options.ts +29 -29
  76. package/src/interactive2/movable-point.tsx +2 -2
  77. package/src/interactive2/movable-polygon-options.ts +45 -45
  78. package/src/interactive2/movable-polygon.ts +2 -2
  79. package/src/interactive2/movable.ts +2 -2
  80. package/src/interactive2/objective_.ts +1 -1
  81. package/src/interactive2/wrapped-defaults.ts +2 -2
  82. package/src/interactive2/wrapped-ellipse.ts +9 -9
  83. package/src/interactive2/wrapped-line.ts +8 -8
  84. package/src/interactive2/wrapped-path.ts +5 -5
  85. package/src/item-renderer.tsx +6 -5
  86. package/src/mixins/changeable.ts +2 -2
  87. package/src/mixins/editor-jsonify.ts +1 -1
  88. package/src/mixins/provide-keypad.tsx +24 -37
  89. package/src/mixins/widget-jsonify-deprecated.ts +1 -1
  90. package/src/multi-items/__tests__/items.test.ts +1 -1
  91. package/src/multi-items/__tests__/multi-renderer.test.tsx +7 -7
  92. package/src/multi-items/__tests__/trees.test.ts +12 -12
  93. package/src/multi-items/item-types.ts +2 -2
  94. package/src/multi-items/items.ts +1 -1
  95. package/src/multi-items/multi-renderer.tsx +15 -14
  96. package/src/multi-items/prop-type-builders.ts +2 -2
  97. package/src/multi-items/tree-types.ts +4 -4
  98. package/src/multi-items/trees.ts +16 -16
  99. package/src/perseus-env.ts +2 -2
  100. package/src/perseus-markdown.tsx +5 -5
  101. package/src/renderer.tsx +39 -38
  102. package/src/server-item-renderer.tsx +6 -5
  103. package/src/sigfigs.ts +1 -1
  104. package/src/styles/articles.less +8 -4
  105. package/src/styles/perseus-renderer.less +47 -38
  106. package/src/styles/util.less +1 -1
  107. package/src/styles/variables.boostrap.less +158 -182
  108. package/src/styles/variables.less +20 -20
  109. package/src/styles/variables.shared.less +162 -168
  110. package/src/styles/widgets/categorizer.less +1 -2
  111. package/src/styles/widgets/expression.less +7 -4
  112. package/src/styles/widgets/grapher.less +2 -1
  113. package/src/styles/widgets/image.less +3 -2
  114. package/src/styles/widgets/interactive-graph.less +4 -2
  115. package/src/styles/widgets/label-image.less +2 -1
  116. package/src/styles/widgets/matrix.less +11 -7
  117. package/src/styles/widgets/orderer.less +2 -1
  118. package/src/styles/widgets/passage.less +2 -1
  119. package/src/styles/widgets/plotter.less +4 -3
  120. package/src/styles/widgets/radio.less +4 -2
  121. package/src/styles/widgets/sortable.less +1 -1
  122. package/src/styles/widgets/table.less +2 -1
  123. package/src/styles/widgets/transformer.less +2 -1
  124. package/src/styles/widgets/unit.less +2 -1
  125. package/src/traversal.ts +1 -1
  126. package/src/types.ts +3 -3
  127. package/src/util/answer-types.ts +14 -14
  128. package/src/util/geometry.ts +7 -7
  129. package/src/util/graphie.ts +32 -32
  130. package/src/util/interactive.ts +118 -118
  131. package/src/util/math.ts +4 -4
  132. package/src/util/react-render.tsx +1 -1
  133. package/src/util/scroll-utils.ts +2 -2
  134. package/src/util/tex.ts +3 -3
  135. package/src/util.ts +15 -15
  136. package/src/widget-container.tsx +1 -1
  137. package/src/widgets/__stories__/plotter.stories.tsx +27 -0
  138. package/src/widgets/__stories__/test-keypad-context-wrapper.tsx +3 -3
  139. package/src/widgets/__testdata__/numeric-input.testdata.ts +1 -1
  140. package/src/widgets/__testdata__/plotter.testdata.ts +36 -0
  141. package/src/widgets/__tests__/__snapshots__/plotter.test.tsx.snap +863 -0
  142. package/src/widgets/__tests__/__snapshots__/video.test.ts.snap +2 -2
  143. package/src/widgets/__tests__/expression.test.ts +4 -3
  144. package/src/widgets/__tests__/grapher.cypress.ts +32 -32
  145. package/src/widgets/__tests__/group.test.tsx +1 -1
  146. package/src/widgets/__tests__/interactive-graph.cypress.ts +40 -40
  147. package/src/widgets/__tests__/interactive-graph.test.ts +1 -1
  148. package/src/widgets/__tests__/numeric-input.test.ts +1 -1
  149. package/src/widgets/__tests__/passage.test.tsx +2 -2
  150. package/src/widgets/__tests__/plotter.test.tsx +66 -0
  151. package/src/widgets/__tests__/radio/base-radio.test.tsx +7 -7
  152. package/src/widgets/__tests__/renderQuestion.tsx +3 -3
  153. package/src/widgets/categorizer.tsx +5 -4
  154. package/src/widgets/cs-program.tsx +2 -2
  155. package/src/widgets/dropdown.tsx +1 -1
  156. package/src/widgets/expression.tsx +10 -9
  157. package/src/widgets/graded-group-set.tsx +6 -5
  158. package/src/widgets/graded-group.tsx +19 -19
  159. package/src/widgets/grapher/util.tsx +6 -6
  160. package/src/widgets/grapher.tsx +10 -10
  161. package/src/widgets/group.tsx +3 -3
  162. package/src/widgets/iframe.tsx +2 -2
  163. package/src/widgets/image.tsx +1 -1
  164. package/src/widgets/input-number.tsx +4 -4
  165. package/src/widgets/interaction.tsx +78 -77
  166. package/src/widgets/interactive-graph.tsx +109 -107
  167. package/src/widgets/label-image/marker.tsx +3 -2
  168. package/src/widgets/label-image.test.ts +1 -1
  169. package/src/widgets/label-image.tsx +7 -7
  170. package/src/widgets/lights-puzzle.tsx +2 -2
  171. package/src/widgets/matcher.tsx +7 -6
  172. package/src/widgets/matrix.tsx +20 -20
  173. package/src/widgets/measurer.tsx +3 -3
  174. package/src/widgets/molecule/__tests__/layout.test.ts +4 -4
  175. package/src/widgets/molecule/__tests__/parser.test.ts +14 -14
  176. package/src/widgets/molecule/smiles-parser.ts +3 -3
  177. package/src/widgets/molecule.tsx +4 -4
  178. package/src/widgets/number-line.tsx +11 -11
  179. package/src/widgets/numeric-input.tsx +11 -11
  180. package/src/widgets/orderer.tsx +39 -38
  181. package/src/widgets/passage/__tests__/passage-markdown.test.ts +1 -1
  182. package/src/widgets/passage/passage-markdown.tsx +4 -4
  183. package/src/widgets/passage-ref-target.tsx +2 -1
  184. package/src/widgets/passage-ref.tsx +4 -6
  185. package/src/widgets/passage.tsx +11 -11
  186. package/src/widgets/plotter.tsx +117 -107
  187. package/src/widgets/radio/base-radio.tsx +12 -11
  188. package/src/widgets/radio/choice-icon/choice-icon.tsx +3 -2
  189. package/src/widgets/radio/choice.tsx +1 -1
  190. package/src/widgets/radio/option-status.tsx +1 -1
  191. package/src/widgets/radio/widget.tsx +6 -6
  192. package/src/widgets/radio.ts +1 -1
  193. package/src/widgets/reaction-diagram.tsx +8 -8
  194. package/src/widgets/sequence.tsx +2 -2
  195. package/src/widgets/simulator.tsx +14 -14
  196. package/src/widgets/sorter.tsx +5 -4
  197. package/src/widgets/table.tsx +8 -8
  198. package/src/widgets/transformer.tsx +93 -92
  199. package/src/widgets/unit.tsx +17 -17
  200. package/src/widgets/video-transcript-link.test.tsx +3 -3
  201. package/src/widgets/video-transcript-link.tsx +1 -1
  202. package/src/widgets/video.tsx +1 -1
  203. package/src/widgets.ts +5 -5
  204. package/src/zoom.ts +22 -22
  205. package/tsconfig-build.tsbuildinfo +1 -1
  206. package/dist/a11y.js.flow +0 -11
  207. package/dist/all-widgets.js.flow +0 -33
  208. package/dist/article-renderer.js.flow +0 -73
  209. package/dist/asset-context.js.flow +0 -15
  210. package/dist/basic-widgets.js.flow +0 -33
  211. package/dist/components/button-group.js.flow +0 -33
  212. package/dist/components/constants.js.flow +0 -13
  213. package/dist/components/fixed-to-responsive.js.flow +0 -34
  214. package/dist/components/graph.js.flow +0 -66
  215. package/dist/components/graphie-classes.js.flow +0 -19
  216. package/dist/components/graphie-movables.js.flow +0 -22
  217. package/dist/components/graphie.js.flow +0 -69
  218. package/dist/components/highlighting/highlightable-content.js.flow +0 -56
  219. package/dist/components/highlighting/highlights.js.flow +0 -54
  220. package/dist/components/highlighting/ranges.js.flow +0 -60
  221. package/dist/components/highlighting/types.js.flow +0 -70
  222. package/dist/components/highlighting/ui/highlight-renderer.js.flow +0 -43
  223. package/dist/components/highlighting/ui/highlight-set-renderer.js.flow +0 -41
  224. package/dist/components/highlighting/ui/highlight-tooltip.js.flow +0 -22
  225. package/dist/components/highlighting/ui/highlighting-ui.js.flow +0 -30
  226. package/dist/components/highlighting/ui/selection-tracker.js.flow +0 -54
  227. package/dist/components/highlighting/ui/types.js.flow +0 -22
  228. package/dist/components/highlighting/ui/util.js.flow +0 -42
  229. package/dist/components/highlighting/word-indexer.js.flow +0 -21
  230. package/dist/components/hud.js.flow +0 -14
  231. package/dist/components/icon.js.flow +0 -31
  232. package/dist/components/image-loader.js.flow +0 -49
  233. package/dist/components/info-tip/info-tip.js.flow +0 -20
  234. package/dist/components/info-tip.js.flow +0 -18
  235. package/dist/components/inline-icon.js.flow +0 -39
  236. package/dist/components/input-with-examples.js.flow +0 -58
  237. package/dist/components/lint.js.flow +0 -58
  238. package/dist/components/math-input.js.flow +0 -49
  239. package/dist/components/math-output.js.flow +0 -33
  240. package/dist/components/multi-button-group.js.flow +0 -35
  241. package/dist/components/number-input.js.flow +0 -42
  242. package/dist/components/prop-check-box.js.flow +0 -8
  243. package/dist/components/range-input.js.flow +0 -20
  244. package/dist/components/simple-keypad-input.js.flow +0 -16
  245. package/dist/components/sortable.js.flow +0 -91
  246. package/dist/components/stub-tag-editor.js.flow +0 -18
  247. package/dist/components/svg-image.js.flow +0 -85
  248. package/dist/components/tex-buttons.js.flow +0 -26
  249. package/dist/components/tex.js.flow +0 -25
  250. package/dist/components/text-input.js.flow +0 -39
  251. package/dist/components/text-list-editor.js.flow +0 -22
  252. package/dist/components/tooltip.js.flow +0 -51
  253. package/dist/components/visibility-observer/create-visibility-observer.js.flow +0 -23
  254. package/dist/components/visibility-observer/get-scroll-parent.js.flow +0 -7
  255. package/dist/components/visibility-observer/visibility-observer.js.flow +0 -36
  256. package/dist/components/zoomable-tex.js.flow +0 -18
  257. package/dist/components/zoomable.js.flow +0 -70
  258. package/dist/components.js.flow +0 -22
  259. package/dist/definition-context.js.flow +0 -25
  260. package/dist/dependencies.js.flow +0 -9
  261. package/dist/error-boundary.js.flow +0 -19
  262. package/dist/extra-widgets.js.flow +0 -33
  263. package/dist/hint-renderer.js.flow +0 -32
  264. package/dist/hints-renderer.js.flow +0 -41
  265. package/dist/icon-paths.js.flow +0 -123
  266. package/dist/index.js.flow +0 -134
  267. package/dist/init.js.flow +0 -20
  268. package/dist/interaction-tracker.js.flow +0 -35
  269. package/dist/interactive2/interactive-util.js.flow +0 -50
  270. package/dist/interactive2/movable-helper-methods.js.flow +0 -15
  271. package/dist/interactive2/movable-line-options.js.flow +0 -44
  272. package/dist/interactive2/movable-line.js.flow +0 -8
  273. package/dist/interactive2/movable-point-options.js.flow +0 -44
  274. package/dist/interactive2/movable-point.js.flow +0 -8
  275. package/dist/interactive2/movable-polygon-options.js.flow +0 -47
  276. package/dist/interactive2/movable-polygon.js.flow +0 -8
  277. package/dist/interactive2/movable.js.flow +0 -8
  278. package/dist/interactive2/objective_.js.flow +0 -25
  279. package/dist/interactive2/types.js.flow +0 -8
  280. package/dist/interactive2/wrapped-defaults.js.flow +0 -11
  281. package/dist/interactive2/wrapped-ellipse.js.flow +0 -14
  282. package/dist/interactive2/wrapped-line.js.flow +0 -14
  283. package/dist/interactive2/wrapped-path.js.flow +0 -13
  284. package/dist/interactive2.js.flow +0 -16
  285. package/dist/item-renderer.js.flow +0 -132
  286. package/dist/item-version.js.flow +0 -11
  287. package/dist/jipt-paragraphs.js.flow +0 -14
  288. package/dist/loading-context.js.flow +0 -12
  289. package/dist/logging/log.js.flow +0 -62
  290. package/dist/mixins/changeable.js.flow +0 -33
  291. package/dist/mixins/editor-jsonify.js.flow +0 -10
  292. package/dist/mixins/provide-keypad.js.flow +0 -33
  293. package/dist/mixins/widget-jsonify-deprecated.js.flow +0 -11
  294. package/dist/mixins/widget-prop-denylist.js.flow +0 -20
  295. package/dist/multi-items/item-types.js.flow +0 -55
  296. package/dist/multi-items/items.js.flow +0 -66
  297. package/dist/multi-items/multi-renderer.js.flow +0 -213
  298. package/dist/multi-items/prop-type-builders.js.flow +0 -22
  299. package/dist/multi-items/shape-types.js.flow +0 -60
  300. package/dist/multi-items/shapes.js.flow +0 -25
  301. package/dist/multi-items/tree-types.js.flow +0 -45
  302. package/dist/multi-items/trees.js.flow +0 -147
  303. package/dist/multi-items.js.flow +0 -36
  304. package/dist/perseus-api.js.flow +0 -151
  305. package/dist/perseus-env.js.flow +0 -6
  306. package/dist/perseus-error.js.flow +0 -16
  307. package/dist/perseus-markdown.js.flow +0 -20
  308. package/dist/perseus-types.js.flow +0 -1041
  309. package/dist/question-paragraph.js.flow +0 -17
  310. package/dist/renderability.js.flow +0 -19
  311. package/dist/renderer.js.flow +0 -325
  312. package/dist/server-item-renderer.js.flow +0 -132
  313. package/dist/sigfigs.js.flow +0 -41
  314. package/dist/styles/constants.js.flow +0 -62
  315. package/dist/styles/global-constants.js.flow +0 -348
  316. package/dist/styles/global-styles.js.flow +0 -53
  317. package/dist/styles/media-queries.js.flow +0 -35
  318. package/dist/styles/shared.js.flow +0 -8
  319. package/dist/tex-wrangler.js.flow +0 -13
  320. package/dist/translation-linter.js.flow +0 -32
  321. package/dist/traversal.js.flow +0 -26
  322. package/dist/types.js.flow +0 -318
  323. package/dist/util/a11y.js.flow +0 -8
  324. package/dist/util/answer-types.js.flow +0 -49
  325. package/dist/util/colors.js.flow +0 -95
  326. package/dist/util/fix-passage-refs.js.flow +0 -8
  327. package/dist/util/geometry.js.flow +0 -37
  328. package/dist/util/graph-utils.js.flow +0 -9
  329. package/dist/util/graphie.js.flow +0 -8
  330. package/dist/util/interactive.js.flow +0 -11
  331. package/dist/util/katex-preprocess.js.flow +0 -12
  332. package/dist/util/math.js.flow +0 -62
  333. package/dist/util/mobile-native-utils.js.flow +0 -12
  334. package/dist/util/react-render.js.flow +0 -12
  335. package/dist/util/register-all-widgets-for-testing.js.flow +0 -7
  336. package/dist/util/scroll-utils.js.flow +0 -19
  337. package/dist/util/sizing-utils.js.flow +0 -20
  338. package/dist/util/tex.js.flow +0 -17
  339. package/dist/util/url-utils.js.flow +0 -11
  340. package/dist/util.graphie.js.flow +0 -14
  341. package/dist/util.js.flow +0 -319
  342. package/dist/version.js.flow +0 -17
  343. package/dist/widget-container.js.flow +0 -33
  344. package/dist/widgets/categorizer.js.flow +0 -70
  345. package/dist/widgets/cs-program.js.flow +0 -54
  346. package/dist/widgets/definition.js.flow +0 -57
  347. package/dist/widgets/dropdown.js.flow +0 -63
  348. package/dist/widgets/explanation.js.flow +0 -58
  349. package/dist/widgets/expression.js.flow +0 -116
  350. package/dist/widgets/graded-group-answer-bar.js.flow +0 -24
  351. package/dist/widgets/graded-group-set.js.flow +0 -65
  352. package/dist/widgets/graded-group.js.flow +0 -78
  353. package/dist/widgets/grapher/util.js.flow +0 -38
  354. package/dist/widgets/grapher.js.flow +0 -102
  355. package/dist/widgets/group.js.flow +0 -60
  356. package/dist/widgets/iframe.js.flow +0 -53
  357. package/dist/widgets/image.js.flow +0 -73
  358. package/dist/widgets/input-number.js.flow +0 -94
  359. package/dist/widgets/interaction/arrow-picker.js.flow +0 -21
  360. package/dist/widgets/interaction/color-picker.js.flow +0 -23
  361. package/dist/widgets/interaction/dash-picker.js.flow +0 -21
  362. package/dist/widgets/interaction/element-container.js.flow +0 -28
  363. package/dist/widgets/interaction.js.flow +0 -60
  364. package/dist/widgets/interactive-graph.js.flow +0 -239
  365. package/dist/widgets/label-image/answer-choices.js.flow +0 -55
  366. package/dist/widgets/label-image/marker.js.flow +0 -31
  367. package/dist/widgets/label-image/types.js.flow +0 -23
  368. package/dist/widgets/label-image.js.flow +0 -142
  369. package/dist/widgets/lights-puzzle.js.flow +0 -58
  370. package/dist/widgets/matcher.js.flow +0 -106
  371. package/dist/widgets/matrix.js.flow +0 -80
  372. package/dist/widgets/measurer.js.flow +0 -30
  373. package/dist/widgets/molecule/molecule-drawing.js.flow +0 -11
  374. package/dist/widgets/molecule/molecule-layout.js.flow +0 -96
  375. package/dist/widgets/molecule/smiles-parser.js.flow +0 -26
  376. package/dist/widgets/molecule.js.flow +0 -60
  377. package/dist/widgets/number-line.js.flow +0 -102
  378. package/dist/widgets/numeric-input.js.flow +0 -105
  379. package/dist/widgets/orderer.js.flow +0 -81
  380. package/dist/widgets/passage/passage-markdown.js.flow +0 -33
  381. package/dist/widgets/passage-ref-target.js.flow +0 -52
  382. package/dist/widgets/passage-ref.js.flow +0 -85
  383. package/dist/widgets/passage.js.flow +0 -157
  384. package/dist/widgets/plotter.js.flow +0 -78
  385. package/dist/widgets/radio/base-radio.js.flow +0 -50
  386. package/dist/widgets/radio/choice-a11y-text.js.flow +0 -14
  387. package/dist/widgets/radio/choice-icon/choice-icon.js.flow +0 -22
  388. package/dist/widgets/radio/choice-icon/cross-out-line.js.flow +0 -16
  389. package/dist/widgets/radio/choice-icon/shared-styles.js.flow +0 -11
  390. package/dist/widgets/radio/choice-none-above.js.flow +0 -16
  391. package/dist/widgets/radio/choice.js.flow +0 -29
  392. package/dist/widgets/radio/choice.jsx.fixture.js.flow +0 -7
  393. package/dist/widgets/radio/focus-ring.js.flow +0 -22
  394. package/dist/widgets/radio/option-status.js.flow +0 -16
  395. package/dist/widgets/radio/util.js.flow +0 -12
  396. package/dist/widgets/radio/widget.js.flow +0 -80
  397. package/dist/widgets/radio.js.flow +0 -31
  398. package/dist/widgets/reaction-diagram.js.flow +0 -46
  399. package/dist/widgets/sequence.js.flow +0 -53
  400. package/dist/widgets/simulator.js.flow +0 -107
  401. package/dist/widgets/sorter.js.flow +0 -102
  402. package/dist/widgets/table.js.flow +0 -67
  403. package/dist/widgets/transformer.js.flow +0 -127
  404. package/dist/widgets/unit.js.flow +0 -93
  405. package/dist/widgets/video-transcript-link.js.flow +0 -15
  406. package/dist/widgets/video.js.flow +0 -57
  407. package/dist/widgets.js.flow +0 -108
  408. package/dist/zoom.js.flow +0 -7
  409. package/src/multi-items/item-types.js.flow +0 -55
@@ -32,7 +32,7 @@
32
32
  touch-action: none;
33
33
 
34
34
  &.placeholder {
35
- background:#ddd;
35
+ background: #ddd;
36
36
  border: 1px solid #ccc;
37
37
  }
38
38
 
@@ -8,7 +8,8 @@
8
8
  height: 23px;
9
9
  }
10
10
 
11
- th, td {
11
+ th,
12
+ td {
12
13
  border: 2px solid black;
13
14
  border-width: 0 2px;
14
15
 
@@ -7,7 +7,8 @@
7
7
  position: relative;
8
8
  overflow: hidden;
9
9
 
10
- > img, > .unresponsive-svg-image {
10
+ > img,
11
+ > .unresponsive-svg-image {
11
12
  position: absolute;
12
13
  // Preserves background image alignment (if image is a graph,
13
14
  // it can extend up and to the right to allow for axis labels)
@@ -1,4 +1,5 @@
1
- .old-unit-input input, .unit-editor-canonical {
1
+ .old-unit-input input,
2
+ .unit-editor-canonical {
2
3
  border: 1px solid #a4a4a4;
3
4
  border-radius: 5px;
4
5
  // box-sizing: border-box;
package/src/traversal.ts CHANGED
@@ -100,7 +100,7 @@ const traverseRenderer = function (
100
100
  // should always be renderable. It's also annoying to write
101
101
  // checks for this everywhere, so we just filter them out once and
102
102
  // for all!
103
- // @ts-expect-error [FEI-5003] - TS2571 - Object is of type 'unknown'.
103
+ // @ts-expect-error - TS2571 - Object is of type 'unknown'.
104
104
  if (widgetInfo == null || widgetInfo.type == null) {
105
105
  return widgetInfo;
106
106
  }
package/src/types.ts CHANGED
@@ -1,12 +1,12 @@
1
- import * as React from "react";
2
-
3
1
  import type {SerializedHighlightSet} from "./components/highlighting/types";
4
2
  import type {ILogger} from "./logging/log";
5
3
  import type {Item} from "./multi-items/item-types";
6
4
  import type {PerseusWidget} from "./perseus-types";
7
5
  import type {SizeClass} from "./util/sizing-utils";
6
+ import type {KeypadAPI} from "@khanacademy/math-input";
8
7
  import type {SendEventFn} from "@khanacademy/perseus-core";
9
8
  import type {Result} from "@khanacademy/wonder-blocks-data";
9
+ import type * as React from "react";
10
10
 
11
11
  export type FocusPath = ReadonlyArray<string> | null | undefined;
12
12
 
@@ -187,7 +187,7 @@ export type APIOptions = Readonly<{
187
187
  // It is called with an function that, when called, blurs the input,
188
188
  // and is expected to return an object of the shape
189
189
  // keypadElementPropType from math-input/src/prop-types.js.
190
- nativeKeypadProxy?: () => unknown;
190
+ nativeKeypadProxy?: (blur: () => void) => KeypadAPI;
191
191
  // Indicates whether or not to use mobile styling.
192
192
  isMobile?: boolean;
193
193
  // A function, called with a bool indicating whether use of the
@@ -457,10 +457,10 @@ const KhanAnswerTypes = {
457
457
  text = text.replace(/[ \(\)]/g, "");
458
458
 
459
459
  if ((match = text.match(/^log\s*(\S+)\s*$/i))) {
460
- // @ts-expect-error [FEI-5003] - TS2322 - Type '{ value: number | undefined; exact: boolean; }[]' is not assignable to type 'never[]'.
460
+ // @ts-expect-error - TS2322 - Type '{ value: number | undefined; exact: boolean; }[]' is not assignable to type 'never[]'.
461
461
  possibilities = forms.decimal(match[1]);
462
462
  } else if (text === "0") {
463
- // @ts-expect-error [FEI-5003] - TS2322 - Type 'number' is not assignable to type 'never'. | TS2322 - Type 'boolean' is not assignable to type 'never'.
463
+ // @ts-expect-error - TS2322 - Type 'number' is not assignable to type 'never'. | TS2322 - Type 'boolean' is not assignable to type 'never'.
464
464
  possibilities = [{value: 0, exact: true}];
465
465
  }
466
466
  return possibilities;
@@ -480,7 +480,7 @@ const KhanAnswerTypes = {
480
480
  const transformed = forms.decimal(text);
481
481
  $.each(transformed, function (ix, t) {
482
482
  t.exact = hasPercentSign;
483
- // @ts-expect-error [FEI-5003] - TS2532 - Object is possibly 'undefined'.
483
+ // @ts-expect-error - TS2532 - Object is possibly 'undefined'.
484
484
  t.value = t.value / 100;
485
485
  });
486
486
  return transformed;
@@ -674,7 +674,7 @@ const KhanAnswerTypes = {
674
674
  options: any,
675
675
  ): (arg1: Guess) => Score {
676
676
  return KhanAnswerTypes.predicate.createValidatorFunctional(
677
- // @ts-expect-error [FEI-5003] - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
677
+ // @ts-expect-error - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
678
678
  ...KhanAnswerTypes.number.convertToPredicate(
679
679
  correctAnswer,
680
680
  options,
@@ -778,7 +778,7 @@ const KhanAnswerTypes = {
778
778
 
779
779
  // Don't bother parsing an empty input
780
780
  if (!guess) {
781
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'empty' because it is a read-only property.
781
+ // @ts-expect-error - TS2540 - Cannot assign to 'empty' because it is a read-only property.
782
782
  score.empty = true;
783
783
  return score;
784
784
  }
@@ -787,7 +787,7 @@ const KhanAnswerTypes = {
787
787
 
788
788
  // An unsuccessful parse doesn't count as wrong
789
789
  if (!answer.parsed) {
790
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'empty' because it is a read-only property.
790
+ // @ts-expect-error - TS2540 - Cannot assign to 'empty' because it is a read-only property.
791
791
  score.empty = true;
792
792
  return score;
793
793
  }
@@ -805,7 +805,7 @@ const KhanAnswerTypes = {
805
805
 
806
806
  if (result.equal) {
807
807
  // Correct answer
808
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'correct' because it is a read-only property.
808
+ // @ts-expect-error - TS2540 - Cannot assign to 'correct' because it is a read-only property.
809
809
  score.correct = true;
810
810
  } else if (
811
811
  result.wrongVariableNames ||
@@ -816,20 +816,20 @@ const KhanAnswerTypes = {
816
816
  // TODO(aasmund): This should ideally have been handled
817
817
  // under the `result.message` condition, but the
818
818
  // KAS messages currently aren't translatable.
819
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'ungraded' because it is a read-only property.
819
+ // @ts-expect-error - TS2540 - Cannot assign to 'ungraded' because it is a read-only property.
820
820
  score.ungraded = true;
821
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'message' because it is a read-only property.
821
+ // @ts-expect-error - TS2540 - Cannot assign to 'message' because it is a read-only property.
822
822
  score.message = result.wrongVariableCase
823
823
  ? errors.WRONG_CASE_ERROR
824
824
  : errors.WRONG_LETTER_ERROR;
825
825
  // Don't tell the use they're "almost there" in this case, that may not be true and isn't helpful.
826
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'suppressAlmostThere' does not exist on type '{ readonly empty: false; readonly correct: false; readonly message: string | null | undefined; readonly guess: any; readonly ungraded: false; }'.
826
+ // @ts-expect-error - TS2339 - Property 'suppressAlmostThere' does not exist on type '{ readonly empty: false; readonly correct: false; readonly message: string | null | undefined; readonly guess: any; readonly ungraded: false; }'.
827
827
  score.suppressAlmostThere = true;
828
828
  } else if (result.message) {
829
829
  // Nearly correct answer
830
830
  // TODO(aasmund): This message also isn't translatable;
831
831
  // need to fix that in KAS
832
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'message' because it is a read-only property.
832
+ // @ts-expect-error - TS2540 - Cannot assign to 'message' because it is a read-only property.
833
833
  score.message = result.message;
834
834
  } else {
835
835
  // Replace x with * and see if it would have been correct
@@ -851,13 +851,13 @@ const KhanAnswerTypes = {
851
851
  options,
852
852
  );
853
853
  if (resultX.equal) {
854
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'ungraded' because it is a read-only property.
854
+ // @ts-expect-error - TS2540 - Cannot assign to 'ungraded' because it is a read-only property.
855
855
  score.ungraded = true;
856
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'message' because it is a read-only property.
856
+ // @ts-expect-error - TS2540 - Cannot assign to 'message' because it is a read-only property.
857
857
  score.message = errors.MULTIPLICATION_SIGN_ERROR;
858
858
  } else if (resultX.message) {
859
859
  // TODO(aasmund): I18nize `score.message`
860
- // @ts-expect-error [FEI-5003] - TS2540 - Cannot assign to 'message' because it is a read-only property.
860
+ // @ts-expect-error - TS2540 - Cannot assign to 'message' because it is a read-only property.
861
861
  score.message =
862
862
  resultX.message +
863
863
  " Also, I'm a computer. I only understand " +
@@ -88,7 +88,7 @@ export function magnitude(v: ReadonlyArray<Coord>): number {
88
88
  _.reduce(
89
89
  v,
90
90
  function (memo, el) {
91
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'Coord' is not assignable to parameter of type 'number'.
91
+ // @ts-expect-error - TS2345 - Argument of type 'Coord' is not assignable to parameter of type 'number'.
92
92
  return memo + Math.pow(el, 2);
93
93
  },
94
94
  0,
@@ -109,7 +109,7 @@ function dotProduct(a: Coord, b: Coord): number {
109
109
  function sideLengths(coords: ReadonlyArray<Coord>): ReadonlyArray<number> {
110
110
  const segments = _.zip(coords, rotate(coords));
111
111
  return segments.map(function (segment) {
112
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'. | TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
112
+ // @ts-expect-error - TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'. | TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
113
113
  return magnitude(vector(...segment));
114
114
  });
115
115
  }
@@ -123,9 +123,9 @@ export function angleMeasures(
123
123
  const offsets = _.map(triplets, function (triplet) {
124
124
  const p = vector(triplet[1], triplet[0]);
125
125
  const q = vector(triplet[2], triplet[1]);
126
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'Coord'. | TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'. | TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'.
126
+ // @ts-expect-error - TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'Coord'. | TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'. | TS2345 - Argument of type 'number[]' is not assignable to parameter of type 'readonly Coord[]'.
127
127
  const raw = Math.acos(dotProduct(p, q) / (magnitude(p) * magnitude(q)));
128
- // @ts-expect-error [FEI-5003] - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
128
+ // @ts-expect-error - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
129
129
  return sign(ccw(...triplet)) > 0 ? raw : -raw;
130
130
  });
131
131
 
@@ -170,13 +170,13 @@ export function similar(
170
170
  sides.reverse();
171
171
  // Since sides are calculated from two coordinates,
172
172
  // simply reversing results in an off by one error
173
- // @ts-expect-error [FEI-5003] - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
173
+ // @ts-expect-error - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
174
174
  sides = rotate(sides, 1);
175
175
  }
176
176
 
177
- // @ts-expect-error [FEI-5003] - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
177
+ // @ts-expect-error - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
178
178
  angles = rotate(angles, i);
179
- // @ts-expect-error [FEI-5003] - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
179
+ // @ts-expect-error - TS4104 - The type 'readonly number[]' is 'readonly' and cannot be assigned to the mutable type 'number[]'.
180
180
  sides = rotate(sides, i);
181
181
 
182
182
  if (deepEq(angles1, angles)) {
@@ -250,7 +250,7 @@ GraphUtils.createGraphie = function (el: any) {
250
250
  const points = _.map(xRange, function (x) {
251
251
  return [x, computeParabola(x)];
252
252
  });
253
- // @ts-expect-error [FEI-5003] - TS2554 - Expected 2 arguments, but got 1.
253
+ // @ts-expect-error - TS2554 - Expected 2 arguments, but got 1.
254
254
  return svgPath(points);
255
255
  }
256
256
 
@@ -278,7 +278,7 @@ GraphUtils.createGraphie = function (el: any) {
278
278
  const right = [vertex[0] + dx, point[1]];
279
279
 
280
280
  // Scale and bound
281
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type '(point: number | Coord) => Coord' is not assignable to parameter of type 'Iteratee<any[][], any, any[]>'.
281
+ // @ts-expect-error - TS2345 - Argument of type '(point: number | Coord) => Coord' is not assignable to parameter of type 'Iteratee<any[][], any, any[]>'.
282
282
  const points = _.map([left, control, right], scalePoint);
283
283
  const values = _.map(_.flatten(points), KhanMath.bound);
284
284
  return (
@@ -331,7 +331,7 @@ GraphUtils.createGraphie = function (el: any) {
331
331
  ];
332
332
 
333
333
  // Zip and scale
334
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type '(point: number | Coord) => Coord' is not assignable to parameter of type 'Iteratee<any[][], any, any[]>'.
334
+ // @ts-expect-error - TS2345 - Argument of type '(point: number | Coord) => Coord' is not assignable to parameter of type 'Iteratee<any[][], any, any[]>'.
335
335
  return _.map(_.zip(xCoords, yCoords), scalePoint);
336
336
  };
337
337
 
@@ -441,7 +441,7 @@ GraphUtils.createGraphie = function (el: any) {
441
441
  $.extend(processed, transformer(value));
442
442
  } else {
443
443
  const dasherized = key
444
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'replace' does not exist on type 'string | number | symbol'.
444
+ // @ts-expect-error - TS2339 - Property 'replace' does not exist on type 'string | number | symbol'.
445
445
  .replace(/([A-Z]+)([A-Z][a-z])/g, "$1-$2")
446
446
  .replace(/([a-z\d])([A-Z])/g, "$1-$2")
447
447
  .toLowerCase();
@@ -616,7 +616,7 @@ GraphUtils.createGraphie = function (el: any) {
616
616
  },
617
617
 
618
618
  path: function (points) {
619
- // @ts-expect-error [FEI-5003] - TS2554 - Expected 2 arguments, but got 1.
619
+ // @ts-expect-error - TS2554 - Expected 2 arguments, but got 1.
620
620
  const p = raphael.path(svgPath(points));
621
621
  p.graphiePath = points;
622
622
 
@@ -815,7 +815,7 @@ GraphUtils.createGraphie = function (el: any) {
815
815
  .data("labelDirection", direction)
816
816
  .appendTo(el);
817
817
 
818
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'setPosition' does not exist on type 'JQuery<HTMLElement>'.
818
+ // @ts-expect-error - TS2339 - Property 'setPosition' does not exist on type 'JQuery<HTMLElement>'.
819
819
  $span.setPosition = function (point) {
820
820
  const scaledPoint = scalePoint(point);
821
821
  $span.css({
@@ -824,12 +824,12 @@ GraphUtils.createGraphie = function (el: any) {
824
824
  });
825
825
  };
826
826
 
827
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'setPosition' does not exist on type 'JQuery<HTMLElement>'.
827
+ // @ts-expect-error - TS2339 - Property 'setPosition' does not exist on type 'JQuery<HTMLElement>'.
828
828
  $span.setPosition(point);
829
829
 
830
830
  const span = $span[0];
831
831
 
832
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'processMath' does not exist on type 'JQuery<HTMLElement>'.
832
+ // @ts-expect-error - TS2339 - Property 'processMath' does not exist on type 'JQuery<HTMLElement>'.
833
833
  $span.processMath = function (math, force) {
834
834
  processMath(span, math, force, function () {
835
835
  const width = span.scrollWidth;
@@ -838,7 +838,7 @@ GraphUtils.createGraphie = function (el: any) {
838
838
  });
839
839
  };
840
840
 
841
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'processText' does not exist on type 'JQuery<HTMLElement>'.
841
+ // @ts-expect-error - TS2339 - Property 'processText' does not exist on type 'JQuery<HTMLElement>'.
842
842
  $span.processText = function (text: any) {
843
843
  $span.html(text);
844
844
  const width = span.scrollWidth;
@@ -847,10 +847,10 @@ GraphUtils.createGraphie = function (el: any) {
847
847
  };
848
848
 
849
849
  if (latex) {
850
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'processMath' does not exist on type 'JQuery<HTMLElement>'.
850
+ // @ts-expect-error - TS2339 - Property 'processMath' does not exist on type 'JQuery<HTMLElement>'.
851
851
  $span.processMath(text, /* force */ false);
852
852
  } else {
853
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'processText' does not exist on type 'JQuery<HTMLElement>'.
853
+ // @ts-expect-error - TS2339 - Property 'processText' does not exist on type 'JQuery<HTMLElement>'.
854
854
  $span.processText(text);
855
855
  }
856
856
 
@@ -922,12 +922,12 @@ GraphUtils.createGraphie = function (el: any) {
922
922
  ) {
923
923
  // split the path at this point, and draw it
924
924
  if (shade) {
925
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
925
+ // @ts-expect-error - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
926
926
  points.push(top);
927
927
 
928
928
  // backtrack to draw paired function
929
929
  for (let u = t - step; u >= lastFlip; u -= step) {
930
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
930
+ // @ts-expect-error - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
931
931
  points.push(clippedFn2(u));
932
932
  }
933
933
  lastFlip = t;
@@ -936,12 +936,12 @@ GraphUtils.createGraphie = function (el: any) {
936
936
  // restart the path, excluding this point
937
937
  points = [];
938
938
  if (shade) {
939
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
939
+ // @ts-expect-error - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
940
940
  points.push(top);
941
941
  }
942
942
  } else {
943
943
  // otherwise, just add the point to the path
944
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
944
+ // @ts-expect-error - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
945
945
  points.push(top);
946
946
  }
947
947
 
@@ -951,7 +951,7 @@ GraphUtils.createGraphie = function (el: any) {
951
951
  if (shade) {
952
952
  // backtrack to draw paired function
953
953
  for (let u = max - step; u >= lastFlip; u -= step) {
954
- // @ts-expect-error [FEI-5003] - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
954
+ // @ts-expect-error - TS2345 - Argument of type 'any' is not assignable to parameter of type 'never'.
955
955
  points.push(clippedFn2(u));
956
956
  }
957
957
  }
@@ -1196,7 +1196,7 @@ GraphUtils.createGraphie = function (el: any) {
1196
1196
  } else if (result instanceof $) {
1197
1197
  // We assume that if it's not a Raphael element/set, it
1198
1198
  // does not contain SVG.
1199
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'css' does not exist on type '{}'.
1199
+ // @ts-expect-error - TS2339 - Property 'css' does not exist on type '{}'.
1200
1200
  result.css({...currentStyle, ...SVG_SPECIFIC_STYLE_MASK});
1201
1201
  }
1202
1202
 
@@ -1225,7 +1225,7 @@ GraphUtils.createGraphie = function (el: any) {
1225
1225
  // allow options to be specified by a single number for shorthand if
1226
1226
  // the horizontal and vertical components are the same
1227
1227
  if (
1228
- // @ts-expect-error [FEI-5003] - TS2339 - Property 'match' does not exist on type 'string | number | symbol'.
1228
+ // @ts-expect-error - TS2339 - Property 'match' does not exist on type 'string | number | symbol'.
1229
1229
  !prop.match(/.*Opacity$/) &&
1230
1230
  prop !== "range" &&
1231
1231
  typeof val === "number"
@@ -1346,24 +1346,24 @@ GraphUtils.createGraphie = function (el: any) {
1346
1346
  },
1347
1347
  function () {
1348
1348
  if (range[1][0] < 0 && range[1][1] > 0) {
1349
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1349
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1350
1350
  this.path([
1351
1351
  axisCenter,
1352
1352
  [gridRange[0][0], axisCenter[1]],
1353
1353
  ]);
1354
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1354
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1355
1355
  this.path([
1356
1356
  axisCenter,
1357
1357
  [gridRange[0][1], axisCenter[1]],
1358
1358
  ]);
1359
1359
  }
1360
1360
  if (range[0][0] < 0 && range[0][1] > 0) {
1361
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1361
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1362
1362
  this.path([
1363
1363
  axisCenter,
1364
1364
  [axisCenter[0], gridRange[1][0]],
1365
1365
  ]);
1366
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1366
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1367
1367
  this.path([
1368
1368
  axisCenter,
1369
1369
  [axisCenter[0], gridRange[1][1]],
@@ -1383,12 +1383,12 @@ GraphUtils.createGraphie = function (el: any) {
1383
1383
  arrows: axisArrows,
1384
1384
  },
1385
1385
  function () {
1386
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1386
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1387
1387
  this.path([
1388
1388
  [gridRange[0][0], axisCenter[1]],
1389
1389
  [gridRange[0][1], axisCenter[1]],
1390
1390
  ]);
1391
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1391
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1392
1392
  this.path([
1393
1393
  [axisCenter[0], gridRange[1][0]],
1394
1394
  [axisCenter[0], gridRange[1][1]],
@@ -1434,7 +1434,7 @@ GraphUtils.createGraphie = function (el: any) {
1434
1434
  x += step
1435
1435
  ) {
1436
1436
  if (x < stop || !axisArrows) {
1437
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1437
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1438
1438
  this.line(
1439
1439
  [x, -len + axisCenter[1]],
1440
1440
  [
@@ -1453,7 +1453,7 @@ GraphUtils.createGraphie = function (el: any) {
1453
1453
  x -= step
1454
1454
  ) {
1455
1455
  if (x > start || !axisArrows) {
1456
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1456
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1457
1457
  this.line(
1458
1458
  [x, -len + axisCenter[1]],
1459
1459
  [
@@ -1480,7 +1480,7 @@ GraphUtils.createGraphie = function (el: any) {
1480
1480
  y += step
1481
1481
  ) {
1482
1482
  if (y < stop || !axisArrows) {
1483
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1483
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1484
1484
  this.line(
1485
1485
  [-len + axisCenter[0], y],
1486
1486
  [
@@ -1499,7 +1499,7 @@ GraphUtils.createGraphie = function (el: any) {
1499
1499
  y -= step
1500
1500
  ) {
1501
1501
  if (y > start || !axisArrows) {
1502
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1502
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1503
1503
  this.line(
1504
1504
  [-len + axisCenter[0], y],
1505
1505
  [
@@ -1546,7 +1546,7 @@ GraphUtils.createGraphie = function (el: any) {
1546
1546
  x += step
1547
1547
  ) {
1548
1548
  if (x < stop || !axisArrows) {
1549
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1549
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1550
1550
  this.label(
1551
1551
  [x, axisCenter[1]],
1552
1552
  xLabelFormat(x),
@@ -1562,7 +1562,7 @@ GraphUtils.createGraphie = function (el: any) {
1562
1562
  x -= step
1563
1563
  ) {
1564
1564
  if (x > start || !axisArrows) {
1565
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1565
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1566
1566
  this.label(
1567
1567
  [x, axisCenter[1]],
1568
1568
  xLabelFormat(x),
@@ -1582,7 +1582,7 @@ GraphUtils.createGraphie = function (el: any) {
1582
1582
  y += step
1583
1583
  ) {
1584
1584
  if (y < stop || !axisArrows) {
1585
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1585
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1586
1586
  this.label(
1587
1587
  [axisCenter[0], y],
1588
1588
  yLabelFormat(y),
@@ -1598,7 +1598,7 @@ GraphUtils.createGraphie = function (el: any) {
1598
1598
  y -= step
1599
1599
  ) {
1600
1600
  if (y > start || !axisArrows) {
1601
- // @ts-expect-error [FEI-5003] - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1601
+ // @ts-expect-error - TS2683 - 'this' implicitly has type 'any' because it does not have a type annotation.
1602
1602
  this.label(
1603
1603
  [axisCenter[0], y],
1604
1604
  yLabelFormat(y),