@khanacademy/perseus-editor 1.1.1 → 2.0.1

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 (311) hide show
  1. package/.babelrc.js +1 -1
  2. package/.eslintrc.js +1 -0
  3. package/CHANGELOG.md +27 -0
  4. package/dist/all-editors.d.ts +2 -0
  5. package/dist/all-editors.js.flow +8 -0
  6. package/dist/all-widgets.d.ts +22 -0
  7. package/dist/all-widgets.js.flow +34 -0
  8. package/dist/article-editor.d.ts +59 -0
  9. package/dist/article-editor.js.flow +72 -0
  10. package/dist/components/blur-input.d.ts +19 -0
  11. package/dist/components/blur-input.js.flow +25 -0
  12. package/dist/components/checkbox.d.ts +20 -0
  13. package/dist/components/checkbox.js.flow +26 -0
  14. package/dist/components/device-framer.d.ts +15 -0
  15. package/dist/components/device-framer.js.flow +20 -0
  16. package/dist/components/drag-target.d.ts +2 -0
  17. package/dist/components/drag-target.js.flow +8 -0
  18. package/dist/components/dropdown-option.d.ts +35 -0
  19. package/dist/components/dropdown-option.js.flow +49 -0
  20. package/dist/components/form-wrapped-text-field.d.ts +48 -0
  21. package/dist/components/form-wrapped-text-field.js.flow +48 -0
  22. package/dist/components/graph-settings.d.ts +2 -0
  23. package/dist/components/graph-settings.js.flow +8 -0
  24. package/dist/components/hover-behavior.d.ts +85 -0
  25. package/dist/components/hover-behavior.js.flow +48 -0
  26. package/dist/components/json-editor.d.ts +2 -0
  27. package/dist/components/json-editor.js.flow +8 -0
  28. package/dist/components/link.d.ts +41 -0
  29. package/dist/components/link.js.flow +50 -0
  30. package/dist/components/simple-button.d.ts +16 -0
  31. package/dist/components/simple-button.js.flow +18 -0
  32. package/dist/components/sortable.d.ts +2 -0
  33. package/dist/components/sortable.js.flow +8 -0
  34. package/dist/components/util.d.ts +1 -0
  35. package/dist/components/util.js.flow +9 -0
  36. package/dist/components/viewport-resizer.d.ts +16 -0
  37. package/dist/components/viewport-resizer.js.flow +22 -0
  38. package/dist/diffs/__stories__/perseus-diff-wrapper.d.ts +5 -0
  39. package/dist/diffs/__stories__/perseus-diff-wrapper.js.flow +11 -0
  40. package/dist/diffs/article-diff.d.ts +50 -0
  41. package/dist/diffs/article-diff.js.flow +71 -0
  42. package/dist/diffs/item-diff.d.ts +23 -0
  43. package/dist/diffs/item-diff.js.flow +41 -0
  44. package/dist/diffs/renderer-diff.d.ts +22 -0
  45. package/dist/diffs/renderer-diff.js.flow +25 -0
  46. package/dist/diffs/split-diff.d.ts +2 -0
  47. package/dist/diffs/split-diff.js.flow +8 -0
  48. package/dist/diffs/string-array-diff.d.ts +2 -0
  49. package/dist/diffs/string-array-diff.js.flow +11 -0
  50. package/dist/diffs/structured-item-diff.d.ts +25 -0
  51. package/dist/diffs/structured-item-diff.js.flow +37 -0
  52. package/dist/diffs/tags-diff.d.ts +21 -0
  53. package/dist/diffs/tags-diff.js.flow +24 -0
  54. package/dist/diffs/text-diff.d.ts +15 -0
  55. package/dist/diffs/text-diff.js.flow +21 -0
  56. package/dist/diffs/widget-diff-performer.d.ts +2 -0
  57. package/dist/diffs/widget-diff-performer.js.flow +8 -0
  58. package/dist/diffs/widget-diff.d.ts +21 -0
  59. package/dist/diffs/widget-diff.js.flow +31 -0
  60. package/dist/editor-page.d.ts +57 -0
  61. package/dist/editor-page.js.flow +73 -0
  62. package/dist/editor.d.ts +82 -0
  63. package/dist/editor.js.flow +98 -0
  64. package/dist/es/index.js +4006 -5409
  65. package/dist/es/index.js.map +1 -1
  66. package/dist/hint-editor.d.ts +64 -0
  67. package/dist/hint-editor.js.flow +87 -0
  68. package/dist/i18n.d.ts +7 -0
  69. package/dist/i18n.js.flow +13 -0
  70. package/dist/iframe-content-renderer.d.ts +22 -0
  71. package/dist/iframe-content-renderer.js.flow +28 -0
  72. package/dist/index.d.ts +17 -2
  73. package/dist/index.js +1492 -2548
  74. package/dist/index.js.flow +23 -2
  75. package/dist/index.js.map +1 -1
  76. package/dist/item-editor.d.ts +36 -0
  77. package/dist/item-editor.js.flow +46 -0
  78. package/dist/item-extras-editor.d.ts +17 -0
  79. package/dist/item-extras-editor.js.flow +23 -0
  80. package/dist/katex-error-view.d.ts +16 -0
  81. package/dist/katex-error-view.js.flow +24 -0
  82. package/dist/multirenderer-editor.d.ts +32 -0
  83. package/dist/multirenderer-editor.js.flow +46 -0
  84. package/dist/section-control-button.d.ts +12 -0
  85. package/dist/section-control-button.js.flow +20 -0
  86. package/dist/stateful-article-editor.d.ts +10 -0
  87. package/dist/stateful-article-editor.js.flow +16 -0
  88. package/dist/stateful-editor-page.d.ts +2 -0
  89. package/dist/stateful-editor-page.js.flow +8 -0
  90. package/dist/testing-widgets.d.ts +22 -0
  91. package/dist/testing-widgets.js.flow +34 -0
  92. package/dist/util/register-all-widgets-and-editors-for-testing.d.ts +1 -0
  93. package/dist/util/register-all-widgets-and-editors-for-testing.js.flow +7 -0
  94. package/dist/widgets/categorizer-editor.d.ts +47 -0
  95. package/dist/widgets/categorizer-editor.js.flow +61 -0
  96. package/dist/widgets/cs-program-editor.d.ts +21 -0
  97. package/dist/widgets/cs-program-editor.js.flow +25 -0
  98. package/dist/widgets/definition-editor.d.ts +17 -0
  99. package/dist/widgets/definition-editor.js.flow +23 -0
  100. package/dist/widgets/dropdown-editor.d.ts +23 -0
  101. package/dist/widgets/dropdown-editor.js.flow +37 -0
  102. package/dist/widgets/example-graphie-widget-editor.d.ts +18 -0
  103. package/dist/widgets/example-graphie-widget-editor.js.flow +25 -0
  104. package/dist/widgets/example-graphie-widget.d.ts +87 -0
  105. package/dist/widgets/example-graphie-widget.js.flow +101 -0
  106. package/dist/widgets/example-widget-editor.d.ts +19 -0
  107. package/dist/widgets/example-widget-editor.js.flow +26 -0
  108. package/dist/widgets/example-widget.d.ts +71 -0
  109. package/dist/widgets/example-widget.js.flow +86 -0
  110. package/dist/widgets/explanation-editor.d.ts +21 -0
  111. package/dist/widgets/explanation-editor.js.flow +27 -0
  112. package/dist/widgets/expression-editor.d.ts +33 -0
  113. package/dist/widgets/expression-editor.js.flow +41 -0
  114. package/dist/widgets/graded-group-editor.d.ts +53 -0
  115. package/dist/widgets/graded-group-editor.js.flow +67 -0
  116. package/dist/widgets/graded-group-set-editor.d.ts +51 -0
  117. package/dist/widgets/graded-group-set-editor.js.flow +65 -0
  118. package/dist/widgets/grapher-editor.d.ts +14 -0
  119. package/dist/widgets/grapher-editor.js.flow +21 -0
  120. package/dist/widgets/group-editor.d.ts +49 -0
  121. package/dist/widgets/group-editor.js.flow +63 -0
  122. package/dist/widgets/iframe-editor.d.ts +18 -0
  123. package/dist/widgets/iframe-editor.js.flow +24 -0
  124. package/dist/widgets/image-editor.d.ts +2 -0
  125. package/dist/widgets/image-editor.js.flow +8 -0
  126. package/dist/widgets/input-number-editor.d.ts +47 -0
  127. package/dist/widgets/input-number-editor.js.flow +77 -0
  128. package/dist/widgets/interaction/constraint-editor.d.ts +26 -0
  129. package/dist/widgets/interaction/constraint-editor.js.flow +35 -0
  130. package/dist/widgets/interaction-editor.d.ts +28 -0
  131. package/dist/widgets/interaction-editor.js.flow +36 -0
  132. package/dist/widgets/interactive-graph-editor.d.ts +2 -0
  133. package/dist/widgets/interactive-graph-editor.js.flow +8 -0
  134. package/dist/widgets/label-image/answer-choices.d.ts +13 -0
  135. package/dist/widgets/label-image/answer-choices.js.flow +16 -0
  136. package/dist/widgets/label-image/behavior.d.ts +14 -0
  137. package/dist/widgets/label-image/behavior.js.flow +17 -0
  138. package/dist/widgets/label-image/marker.d.ts +30 -0
  139. package/dist/widgets/label-image/marker.js.flow +34 -0
  140. package/dist/widgets/label-image/question-markers.d.ts +22 -0
  141. package/dist/widgets/label-image/question-markers.js.flow +25 -0
  142. package/dist/widgets/label-image/select-image.d.ts +10 -0
  143. package/dist/widgets/label-image/select-image.js.flow +13 -0
  144. package/dist/widgets/label-image-editor.d.ts +45 -0
  145. package/dist/widgets/label-image-editor.js.flow +44 -0
  146. package/dist/widgets/lights-puzzle-editor.d.ts +24 -0
  147. package/dist/widgets/lights-puzzle-editor.js.flow +34 -0
  148. package/dist/widgets/matcher-editor.d.ts +19 -0
  149. package/dist/widgets/matcher-editor.js.flow +28 -0
  150. package/dist/widgets/matrix-editor.d.ts +20 -0
  151. package/dist/widgets/matrix-editor.js.flow +26 -0
  152. package/dist/widgets/measurer-editor.d.ts +32 -0
  153. package/dist/widgets/measurer-editor.js.flow +42 -0
  154. package/dist/widgets/molecule-editor.d.ts +17 -0
  155. package/dist/widgets/molecule-editor.js.flow +23 -0
  156. package/dist/widgets/number-line-editor.d.ts +36 -0
  157. package/dist/widgets/number-line-editor.js.flow +45 -0
  158. package/dist/widgets/numeric-input-editor.d.ts +2 -0
  159. package/dist/widgets/numeric-input-editor.js.flow +8 -0
  160. package/dist/widgets/orderer-editor.d.ts +20 -0
  161. package/dist/widgets/orderer-editor.js.flow +30 -0
  162. package/dist/widgets/passage-editor.d.ts +18 -0
  163. package/dist/widgets/passage-editor.js.flow +24 -0
  164. package/dist/widgets/passage-ref-editor.d.ts +11 -0
  165. package/dist/widgets/passage-ref-editor.js.flow +17 -0
  166. package/dist/widgets/passage-ref-target-editor.d.ts +16 -0
  167. package/dist/widgets/passage-ref-target-editor.js.flow +22 -0
  168. package/dist/widgets/plotter-editor.d.ts +45 -0
  169. package/dist/widgets/plotter-editor.js.flow +53 -0
  170. package/dist/widgets/radio/editor.d.ts +64 -0
  171. package/dist/widgets/radio/editor.js.flow +80 -0
  172. package/dist/widgets/reaction-diagram-editor.d.ts +20 -0
  173. package/dist/widgets/reaction-diagram-editor.js.flow +26 -0
  174. package/dist/widgets/sequence-editor.d.ts +56 -0
  175. package/dist/widgets/sequence-editor.js.flow +72 -0
  176. package/dist/widgets/simple-markdown-tester-editor.d.ts +14 -0
  177. package/dist/widgets/simple-markdown-tester-editor.js.flow +23 -0
  178. package/dist/widgets/simple-markdown-tester.d.ts +52 -0
  179. package/dist/widgets/simple-markdown-tester.js.flow +61 -0
  180. package/dist/widgets/simulator-editor.d.ts +20 -0
  181. package/dist/widgets/simulator-editor.js.flow +26 -0
  182. package/dist/widgets/sorter-editor.d.ts +16 -0
  183. package/dist/widgets/sorter-editor.js.flow +22 -0
  184. package/dist/widgets/table-editor.d.ts +18 -0
  185. package/dist/widgets/table-editor.js.flow +24 -0
  186. package/dist/widgets/transformer-editor.d.ts +11 -0
  187. package/dist/widgets/transformer-editor.js.flow +17 -0
  188. package/dist/widgets/unit-editor.d.ts +33 -0
  189. package/dist/widgets/unit-editor.js.flow +41 -0
  190. package/dist/widgets/video-editor.d.ts +19 -0
  191. package/dist/widgets/video-editor.js.flow +25 -0
  192. package/package.json +7 -6
  193. package/src/__stories__/{editor.stories.js → editor.stories.tsx} +4 -5
  194. package/src/__stories__/{section-control-button.stories.jsx → section-control-button.stories.tsx} +10 -11
  195. package/src/__testdata__/{input-number_testdata.js → input-number.testdata.ts} +2 -3
  196. package/src/__tests__/{editor_test.jsx → editor.test.tsx} +4 -7
  197. package/src/__tests__/{i18n_test.jsx → i18n.test.ts} +5 -5
  198. package/src/__tests__/{traversal_test.jsx → traversal.test.ts} +9 -10
  199. package/src/{all-editors_test.js → all-editors.test.ts} +1 -2
  200. package/src/all-editors.ts +83 -0
  201. package/src/all-widgets.ts +7 -0
  202. package/src/{article-editor.jsx → article-editor.tsx} +52 -42
  203. package/src/components/__stories__/{blur-input.stories.jsx → blur-input.stories.tsx} +2 -4
  204. package/src/components/{blur-input.jsx → blur-input.tsx} +12 -13
  205. package/src/components/{checkbox.jsx → checkbox.tsx} +18 -19
  206. package/src/components/{device-framer.jsx → device-framer.tsx} +4 -5
  207. package/src/components/{drag-target.jsx → drag-target.tsx} +0 -1
  208. package/src/components/{dropdown-option.jsx → dropdown-option.tsx} +40 -40
  209. package/src/components/{form-wrapped-text-field.jsx → form-wrapped-text-field.tsx} +47 -53
  210. package/src/components/{graph-settings.jsx → graph-settings.tsx} +4 -8
  211. package/src/components/{hover-behavior.jsx → hover-behavior.ts} +32 -33
  212. package/src/components/{json-editor.jsx → json-editor.tsx} +4 -3
  213. package/src/components/{link.jsx → link.ts} +33 -33
  214. package/src/components/{simple-button.jsx → simple-button.tsx} +3 -4
  215. package/src/components/{sortable.jsx → sortable.tsx} +3 -3
  216. package/src/components/{util.js → util.ts} +1 -2
  217. package/src/components/{viewport-resizer.jsx → viewport-resizer.tsx} +5 -6
  218. package/src/diffs/__stories__/{perseus-diff-wrapper.jsx → perseus-diff-wrapper.tsx} +3 -2
  219. package/src/diffs/__stories__/{structured-item-diff.stories.jsx → structured-item-diff.stories.tsx} +27 -22
  220. package/src/diffs/__stories__/{tags-diff.stories.jsx → tags-diff.stories.tsx} +12 -14
  221. package/src/diffs/__stories__/{text-diff.stories.jsx → text-diff.stories.tsx} +12 -14
  222. package/src/diffs/__tests__/{split-diff_test.js → split-diff.test.ts} +1 -2
  223. package/src/diffs/__tests__/{string-array-diff_test.js → string-array-diff.test.ts} +1 -2
  224. package/src/diffs/__tests__/{structured-item-diff_test.js → structured-item-diff.test.ts} +15 -14
  225. package/src/diffs/__tests__/{widget-diff-performer_test.js → widget-diff-performer.test.ts} +1 -2
  226. package/src/diffs/{article-diff.jsx → article-diff.tsx} +5 -6
  227. package/src/diffs/{item-diff.jsx → item-diff.tsx} +4 -5
  228. package/src/diffs/{renderer-diff.jsx → renderer-diff.tsx} +22 -28
  229. package/src/diffs/{split-diff.jsx → split-diff.ts} +4 -3
  230. package/src/diffs/{string-array-diff.jsx → string-array-diff.ts} +8 -9
  231. package/src/diffs/{structured-item-diff.jsx → structured-item-diff.tsx} +32 -27
  232. package/src/diffs/{tags-diff.jsx → tags-diff.tsx} +15 -16
  233. package/src/diffs/{text-diff.jsx → text-diff.tsx} +13 -13
  234. package/src/diffs/{widget-diff-performer.jsx → widget-diff-performer.ts} +3 -8
  235. package/src/diffs/{widget-diff.jsx → widget-diff.tsx} +15 -14
  236. package/src/{editor-page.jsx → editor-page.tsx} +52 -60
  237. package/src/{editor.jsx → editor.tsx} +315 -277
  238. package/src/{hint-editor.jsx → hint-editor.tsx} +105 -79
  239. package/src/{i18n.jsx → i18n.ts} +9 -6
  240. package/src/{iframe-content-renderer.jsx → iframe-content-renderer.tsx} +23 -17
  241. package/src/{index.js → index.ts} +15 -16
  242. package/src/{item-editor.jsx → item-editor.tsx} +35 -30
  243. package/src/{item-extras-editor.jsx → item-extras-editor.tsx} +3 -4
  244. package/src/{katex-error-view.jsx → katex-error-view.tsx} +4 -5
  245. package/src/{multirenderer-editor.jsx → multirenderer-editor.tsx} +132 -127
  246. package/src/{section-control-button.jsx → section-control-button.tsx} +10 -9
  247. package/src/{stateful-article-editor.jsx → stateful-article-editor.tsx} +2 -5
  248. package/src/{stateful-editor-page.jsx → stateful-editor-page.tsx} +1 -3
  249. package/src/{testing-widgets.js → testing-widgets.ts} +5 -6
  250. package/src/util/{register-all-widgets-and-editors-for-testing_test.js → register-all-widgets-and-editors-for-testing.test.ts} +1 -2
  251. package/src/util/{register-all-widgets-and-editors-for-testing.js → register-all-widgets-and-editors-for-testing.ts} +2 -3
  252. package/src/widgets/__stories__/{label-image-editor.stories.jsx → label-image-editor.stories.tsx} +22 -18
  253. package/src/widgets/__stories__/{radio-editor.stories.jsx → radio-editor.stories.tsx} +15 -10
  254. package/src/widgets/{categorizer-editor.jsx → categorizer-editor.tsx} +8 -6
  255. package/src/widgets/{cs-program-editor.jsx → cs-program-editor.tsx} +17 -17
  256. package/src/widgets/{definition-editor.jsx → definition-editor.tsx} +9 -8
  257. package/src/widgets/{dropdown-editor.jsx → dropdown-editor.tsx} +27 -19
  258. package/src/widgets/{example-graphie-widget-editor.jsx → example-graphie-widget-editor.tsx} +8 -8
  259. package/src/widgets/{example-graphie-widget.jsx → example-graphie-widget.tsx} +14 -17
  260. package/src/widgets/{example-widget-editor.jsx → example-widget-editor.tsx} +10 -7
  261. package/src/widgets/{example-widget.jsx → example-widget.tsx} +14 -12
  262. package/src/widgets/{explanation-editor.jsx → explanation-editor.tsx} +12 -10
  263. package/src/widgets/{expression-editor.jsx → expression-editor.tsx} +36 -26
  264. package/src/widgets/{graded-group-editor.jsx → graded-group-editor.tsx} +18 -10
  265. package/src/widgets/{graded-group-set-editor.jsx → graded-group-set-editor.tsx} +15 -12
  266. package/src/widgets/{grapher-editor.jsx → grapher-editor.tsx} +10 -9
  267. package/src/widgets/{group-editor.jsx → group-editor.tsx} +11 -9
  268. package/src/widgets/{iframe-editor.jsx → iframe-editor.tsx} +16 -13
  269. package/src/widgets/{image-editor.jsx → image-editor.tsx} +4 -7
  270. package/src/widgets/{input-number-editor.jsx → input-number-editor.tsx} +61 -47
  271. package/src/widgets/interaction/{constraint-editor.jsx → constraint-editor.tsx} +21 -24
  272. package/src/widgets/{interaction-editor.jsx → interaction-editor.tsx} +160 -61
  273. package/src/widgets/{interactive-graph-editor.jsx → interactive-graph-editor.tsx} +13 -10
  274. package/src/widgets/label-image/__stories__/{answer-choices.stories.jsx → answer-choices.stories.tsx} +22 -17
  275. package/src/widgets/label-image/__stories__/{behavior.stories.jsx → behavior.stories.tsx} +9 -10
  276. package/src/widgets/label-image/__stories__/{marker.stories.jsx → marker.stories.tsx} +11 -12
  277. package/src/widgets/label-image/__stories__/{question-markers.stories.jsx → question-markers.stories.tsx} +17 -16
  278. package/src/widgets/label-image/__stories__/{select-image.stories.jsx → select-image.stories.tsx} +12 -13
  279. package/src/widgets/label-image/{answer-choices.jsx → answer-choices.tsx} +18 -18
  280. package/src/widgets/label-image/{behavior.jsx → behavior.tsx} +9 -11
  281. package/src/widgets/label-image/{marker.jsx → marker.tsx} +17 -19
  282. package/src/widgets/label-image/{question-markers.jsx → question-markers.tsx} +16 -21
  283. package/src/widgets/label-image/{select-image.jsx → select-image.tsx} +5 -7
  284. package/src/widgets/{label-image-editor.jsx → label-image-editor.tsx} +38 -44
  285. package/src/widgets/{lights-puzzle-editor.jsx → lights-puzzle-editor.tsx} +34 -24
  286. package/src/widgets/{matcher-editor.jsx → matcher-editor.tsx} +9 -7
  287. package/src/widgets/{matrix-editor.jsx → matrix-editor.tsx} +10 -9
  288. package/src/widgets/{measurer-editor.jsx → measurer-editor.tsx} +21 -14
  289. package/src/widgets/{molecule-editor.jsx → molecule-editor.tsx} +9 -8
  290. package/src/widgets/{number-line-editor.jsx → number-line-editor.tsx} +19 -17
  291. package/src/widgets/{numeric-input-editor.jsx → numeric-input-editor.tsx} +10 -10
  292. package/src/widgets/{orderer-editor.jsx → orderer-editor.tsx} +17 -12
  293. package/src/widgets/{passage-editor.jsx → passage-editor.tsx} +9 -7
  294. package/src/widgets/{passage-ref-editor.jsx → passage-ref-editor.tsx} +8 -6
  295. package/src/widgets/{passage-ref-target-editor.jsx → passage-ref-target-editor.tsx} +9 -7
  296. package/src/widgets/{plotter-editor.jsx → plotter-editor.tsx} +34 -33
  297. package/src/widgets/radio/{editor.jsx → editor.tsx} +22 -21
  298. package/src/widgets/{reaction-diagram-editor.jsx → reaction-diagram-editor.tsx} +14 -10
  299. package/src/widgets/{sequence-editor.jsx → sequence-editor.tsx} +13 -13
  300. package/src/widgets/{simple-markdown-tester-editor.jsx → simple-markdown-tester-editor.tsx} +11 -9
  301. package/src/widgets/{simple-markdown-tester.jsx → simple-markdown-tester.tsx} +8 -7
  302. package/src/widgets/{simulator-editor.jsx → simulator-editor.tsx} +10 -8
  303. package/src/widgets/{sorter-editor.jsx → sorter-editor.tsx} +8 -6
  304. package/src/widgets/{table-editor.jsx → table-editor.tsx} +11 -10
  305. package/src/widgets/{transformer-editor.jsx → transformer-editor.tsx} +37 -35
  306. package/src/widgets/{unit-editor.jsx → unit-editor.tsx} +31 -25
  307. package/src/widgets/{video-editor.jsx → video-editor.tsx} +8 -9
  308. package/tsconfig.json +22 -0
  309. package/tsconfig.tsbuildinfo +1 -0
  310. package/src/all-editors.js +0 -85
  311. package/src/all-widgets.js +0 -10
package/.babelrc.js CHANGED
@@ -5,4 +5,4 @@
5
5
  *
6
6
  * We should remove this when jest is fixed.
7
7
  */
8
- module.exports = require("../../config/build/babel.config.js");
8
+ module.exports = require("../../config/build/babel.config");
package/.eslintrc.js CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
1
2
  /* eslint-disable import/no-commonjs */
2
3
  const path = require("path");
3
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @khanacademy/perseus-editor
2
2
 
3
+ ## 2.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 1f062e98: Bump all package versions since the build settings have been updated
8
+ - 406edf6b: Extract strings to dist/string.js instead of dist/strings.
9
+ - Updated dependencies [1f062e98]
10
+ - Updated dependencies [df820619]
11
+ - Updated dependencies [406edf6b]
12
+ - @khanacademy/kas@0.3.1
13
+ - @khanacademy/kmath@0.1.1
14
+ - @khanacademy/perseus@4.0.1
15
+
16
+ ## 2.0.0
17
+
18
+ ### Major Changes
19
+
20
+ - 53fd3768: Migrate source code to TypeScript
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [53fd3768]
25
+ - Updated dependencies [53fd3768]
26
+ - @khanacademy/perseus@4.0.0
27
+ - @khanacademy/kas@0.3.0
28
+ - @khanacademy/kmath@0.1.0
29
+
3
30
  ## 1.1.1
4
31
 
5
32
  ### Patch Changes
@@ -0,0 +1,2 @@
1
+ declare const _default: any[];
2
+ export default _default;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ declare var _default: any[];
8
+ declare export default typeof _default;
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ declare const _default: readonly Readonly<{
3
+ name: string;
4
+ displayName: string;
5
+ getWidget?: (() => import("react").ComponentType<any>) | undefined;
6
+ accessible?: boolean | ((props: any) => boolean) | undefined;
7
+ hidden?: boolean | undefined;
8
+ version?: import("@khanacademy/perseus").Version | undefined;
9
+ supportedAlignments?: readonly import("@khanacademy/perseus").Alignment[] | undefined;
10
+ defaultAlignment?: import("@khanacademy/perseus").Alignment | undefined;
11
+ getDefaultAlignment?: (() => import("@khanacademy/perseus").Alignment) | undefined;
12
+ isLintable?: boolean | undefined;
13
+ transform?: import("../../perseus/src/types").WidgetTransform | undefined;
14
+ tracking?: import("../../perseus/src/types").Tracking | undefined;
15
+ staticTransform?: import("../../perseus/src/types").WidgetTransform | undefined;
16
+ traverseChildWidgets?: any;
17
+ propUpgrades?: {
18
+ [key: string]: (arg1: any) => any;
19
+ } | undefined;
20
+ widget: import("react").ComponentType<any>;
21
+ }>[];
22
+ export default _default;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import * as $Flowgen$Import$react from "react";
8
+ import * as $Flowgen$Import$_40_khanacademy_2f_perseus from "@khanacademy/perseus";
9
+ import * as $Flowgen$Import$_2e__2e__2f__2e__2e__2f_perseus_2f_src_2f_types from "../../perseus/src/types";
10
+ declare var _default: $ReadOnlyArray<
11
+ $ReadOnly<{|
12
+ name: string,
13
+ displayName: string,
14
+ getWidget?: (() => $Flowgen$Import$react.ComponentType<any>) | void,
15
+ accessible?: boolean | ((props: any) => boolean) | void,
16
+ hidden?: boolean | void,
17
+ version?: $Flowgen$Import$_40_khanacademy_2f_perseus.Version | void,
18
+ supportedAlignments?: $ReadOnlyArray<$Flowgen$Import$_40_khanacademy_2f_perseus.Alignment> | void,
19
+ defaultAlignment?: $Flowgen$Import$_40_khanacademy_2f_perseus.Alignment | void,
20
+ getDefaultAlignment?:
21
+ | (() => $Flowgen$Import$_40_khanacademy_2f_perseus.Alignment)
22
+ | void,
23
+ isLintable?: boolean | void,
24
+ transform?: $Flowgen$Import$_2e__2e__2f__2e__2e__2f_perseus_2f_src_2f_types.WidgetTransform | void,
25
+ tracking?: $Flowgen$Import$_2e__2e__2f__2e__2e__2f_perseus_2f_src_2f_types.Tracking | void,
26
+ staticTransform?: $Flowgen$Import$_2e__2e__2f__2e__2e__2f_perseus_2f_src_2f_types.WidgetTransform | void,
27
+ traverseChildWidgets?: any,
28
+ propUpgrades?: {
29
+ [key: string]: (arg1: any) => any,
30
+ } | void,
31
+ widget: $Flowgen$Import$react.ComponentType<any>,
32
+ |}>
33
+ >;
34
+ declare export default typeof _default;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * An article editor. Articles are long-form pieces of content, composed of
3
+ * multiple (Renderer) sections concatenated together.
4
+ */
5
+ import { Changeable } from "@khanacademy/perseus";
6
+ import * as React from "react";
7
+ import type { APIOptions } from "@khanacademy/perseus";
8
+ type RendererProps = {
9
+ content?: string;
10
+ widgets?: any;
11
+ images?: any;
12
+ };
13
+ type JsonType = RendererProps | ReadonlyArray<RendererProps>;
14
+ type DefaultProps = {
15
+ contentPaths?: ReadonlyArray<string>;
16
+ json: JsonType;
17
+ mode: "diff" | "edit" | "json" | "preview";
18
+ screen: "phone" | "tablet" | "desktop";
19
+ sectionImageUploadGenerator: (i: number) => React.ReactElement<React.ComponentProps<"span">>;
20
+ useNewStyles: boolean;
21
+ };
22
+ type PerseusArticleEditorProps = DefaultProps & {
23
+ apiOptions?: APIOptions;
24
+ imageUploader?: (arg1: string, arg2: (arg1: string) => unknown) => unknown;
25
+ previewURL: string;
26
+ } & Changeable.ChangeableProps;
27
+ type State = {
28
+ highlightLint: boolean;
29
+ };
30
+ export default class ArticleEditor extends React.Component<PerseusArticleEditorProps, State> {
31
+ static defaultProps: DefaultProps;
32
+ state: State;
33
+ componentDidMount(): void;
34
+ componentDidUpdate(): void;
35
+ _updatePreviewFrames(): void;
36
+ _apiOptionsForSection(section: RendererProps, sectionIndex: number): any;
37
+ _sections(): ReadonlyArray<RendererProps>;
38
+ _renderEditor(): React.ReactElement<React.ComponentProps<"div">>;
39
+ _renderAddSection(): React.ReactElement<React.ComponentProps<"div">>;
40
+ _renderLinterHUD(): React.ReactElement<any>;
41
+ _renderIframePreview(i: number | string, nochrome: boolean): React.ReactElement<any>;
42
+ _renderPreviewMode(): React.ReactElement<React.ComponentProps<"div">>;
43
+ _handleJsonChange: (newJson: JsonType) => void;
44
+ _handleEditorChange: (i: number, newProps: RendererProps) => void;
45
+ _handleMoveSectionEarlier(i: number): void;
46
+ _handleMoveSectionLater(i: number): void;
47
+ _handleAddSectionAfter(i: number): void;
48
+ _handleRemoveSection(i: number): void;
49
+ serialize(): JsonType;
50
+ /**
51
+ * Returns an array, with one element be section.
52
+ * Each element is an array of lint warnings present in that section.
53
+ *
54
+ * This function can currently only be called in edit mode.
55
+ */
56
+ getSaveWarnings(): ReadonlyArray<RendererProps>;
57
+ render(): React.ReactNode;
58
+ }
59
+ export {};
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import { Changeable } from "@khanacademy/perseus";
8
+ import * as React from "react";
9
+ import type { APIOptions } from "@khanacademy/perseus";
10
+ declare type RendererProps = {|
11
+ content?: string,
12
+ widgets?: any,
13
+ images?: any,
14
+ |};
15
+ declare type JsonType = RendererProps | $ReadOnlyArray<RendererProps>;
16
+ declare type DefaultProps = {|
17
+ contentPaths?: $ReadOnlyArray<string>,
18
+ json: JsonType,
19
+ mode: "diff" | "edit" | "json" | "preview",
20
+ screen: "phone" | "tablet" | "desktop",
21
+ sectionImageUploadGenerator: (
22
+ i: number
23
+ ) => React.Element<"span">,
24
+ useNewStyles: boolean,
25
+ |};
26
+ declare type PerseusArticleEditorProps = {|
27
+ ...DefaultProps,
28
+ ...{|
29
+ apiOptions?: APIOptions,
30
+ imageUploader?: (arg1: string, arg2: (arg1: string) => mixed) => mixed,
31
+ previewURL: string,
32
+ |},
33
+ ...Changeable.ChangeableProps,
34
+ |};
35
+ declare type State = {|
36
+ highlightLint: boolean,
37
+ |};
38
+ declare export default class ArticleEditor
39
+ extends React.Component<PerseusArticleEditorProps, State>
40
+ {
41
+ static defaultProps: DefaultProps;
42
+ state: State;
43
+ componentDidMount(): void;
44
+ componentDidUpdate(): void;
45
+ _updatePreviewFrames(): void;
46
+ _apiOptionsForSection(section: RendererProps, sectionIndex: number): any;
47
+ _sections(): $ReadOnlyArray<RendererProps>;
48
+ _renderEditor(): React.Element<"div">;
49
+ _renderAddSection(): React.Element<"div">;
50
+ _renderLinterHUD(): React.Element<any>;
51
+ _renderIframePreview(
52
+ i: number | string,
53
+ nochrome: boolean
54
+ ): React.Element<any>;
55
+ _renderPreviewMode(): React.Element<"div">;
56
+ _handleJsonChange: (newJson: JsonType) => void;
57
+ _handleEditorChange: (i: number, newProps: RendererProps) => void;
58
+ _handleMoveSectionEarlier(i: number): void;
59
+ _handleMoveSectionLater(i: number): void;
60
+ _handleAddSectionAfter(i: number): void;
61
+ _handleRemoveSection(i: number): void;
62
+ serialize(): JsonType;
63
+
64
+ /**
65
+ * Returns an array, with one element be section.
66
+ * Each element is an array of lint warnings present in that section.
67
+ *
68
+ * This function can currently only be called in edit mode.
69
+ */
70
+ getSaveWarnings(): $ReadOnlyArray<RendererProps>;
71
+ render(): React.Node;
72
+ }
@@ -0,0 +1,19 @@
1
+ import * as React from "react";
2
+ import type { CSSProperties } from "aphrodite";
3
+ type Props = {
4
+ value: string;
5
+ onChange: (arg1: string) => void;
6
+ className?: string;
7
+ style?: CSSProperties;
8
+ };
9
+ type State = {
10
+ value: string;
11
+ };
12
+ declare class BlurInput extends React.Component<Props, State> {
13
+ constructor(props: Props);
14
+ UNSAFE_componentWillReceiveProps(nextProps: Props): void;
15
+ handleChange: (e: any) => void;
16
+ handleBlur: (e: any) => void;
17
+ render(): React.ReactNode;
18
+ }
19
+ export default BlurInput;
@@ -0,0 +1,25 @@
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
+ declare type Props = {|
10
+ value: string,
11
+ onChange: (arg1: string) => void,
12
+ className?: string,
13
+ style?: CSSProperties,
14
+ |};
15
+ declare type State = {|
16
+ value: string,
17
+ |};
18
+ declare class BlurInput extends React.Component<Props, State> {
19
+ constructor(props: Props): this;
20
+ UNSAFE_componentWillReceiveProps(nextProps: Props): void;
21
+ handleChange: (e: any) => void;
22
+ handleBlur: (e: any) => void;
23
+ render(): React.Node;
24
+ }
25
+ declare export default typeof BlurInput;
@@ -0,0 +1,20 @@
1
+ import * as React from "react";
2
+ export type CheckboxProps = {
3
+ checked: boolean;
4
+ disabled?: boolean;
5
+ appearDisabled?: boolean;
6
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
7
+ tabIndex?: number | string;
8
+ style?: {
9
+ marginTop: number;
10
+ };
11
+ dataTestId?: string;
12
+ id?: string;
13
+ };
14
+ export default class Checkbox extends React.Component<CheckboxProps> {
15
+ static defaultProps: {
16
+ checked: boolean;
17
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
18
+ };
19
+ render(): React.ReactNode;
20
+ }
@@ -0,0 +1,26 @@
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
+ export type CheckboxProps = {|
9
+ checked: boolean,
10
+ disabled?: boolean,
11
+ appearDisabled?: boolean,
12
+ onChange: (event: SyntheticInputEvent<HTMLInputElement>) => void,
13
+ tabIndex?: number | string,
14
+ style?: {|
15
+ marginTop: number,
16
+ |},
17
+ dataTestId?: string,
18
+ id?: string,
19
+ |};
20
+ declare export default class Checkbox extends React.Component<CheckboxProps> {
21
+ static defaultProps: {|
22
+ checked: boolean,
23
+ onChange: (event: SyntheticInputEvent<HTMLInputElement>) => void,
24
+ |};
25
+ render(): React.Node;
26
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * A component that displays its contents inside a device frame.
3
+ */
4
+ import PropTypes from "prop-types";
5
+ import * as React from "react";
6
+ type Props = any;
7
+ declare class DeviceFramer extends React.Component<Props> {
8
+ static propTypes: {
9
+ children: PropTypes.Validator<PropTypes.ReactElementLike>;
10
+ deviceType: PropTypes.Validator<NonNullable<"phone" | "tablet" | "desktop">>;
11
+ nochrome: PropTypes.Requireable<boolean>;
12
+ };
13
+ render(): React.ReactNode;
14
+ }
15
+ export default DeviceFramer;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import PropTypes from "prop-types";
8
+ import * as React from "react";
9
+ declare type Props = any;
10
+ declare class DeviceFramer extends React.Component<Props> {
11
+ static propTypes: {|
12
+ children: PropTypes.Validator<PropTypes.ReactElementLike>,
13
+ deviceType: PropTypes.Validator<
14
+ $NonMaybeType<"phone" | "tablet" | "desktop">
15
+ >,
16
+ nochrome: PropTypes.Requireable<boolean>,
17
+ |};
18
+ render(): React.Node;
19
+ }
20
+ declare export default typeof DeviceFramer;
@@ -0,0 +1,2 @@
1
+ declare const DragTarget: any;
2
+ export default DragTarget;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ declare var DragTarget: any;
8
+ declare export default typeof DragTarget;
@@ -0,0 +1,35 @@
1
+ import * as React from "react";
2
+ export type OptionRenderer = (children: React.ReactElement<any> | null | undefined, value: string, selected: boolean, disabled?: boolean) => React.ReactElement<any>;
3
+ type OptionProps = {
4
+ value: string;
5
+ children?: React.ReactNode;
6
+ selected?: boolean;
7
+ disabled?: boolean;
8
+ onClick?: () => void;
9
+ optionRenderer?: OptionRenderer;
10
+ onDropdownClose?: () => void;
11
+ hideFocusState?: boolean;
12
+ testId?: string;
13
+ ariaLabel?: string;
14
+ };
15
+ export declare const optionHeight = 30;
16
+ declare class Option extends React.Component<OptionProps> {
17
+ node: HTMLDivElement;
18
+ handleKeyDown(event: any): void;
19
+ render(): React.ReactNode;
20
+ }
21
+ declare class OptionGroup extends React.Component<{
22
+ onSelected: (value: string) => void;
23
+ children?: Array<React.ReactElement<React.ComponentProps<typeof Option>>>;
24
+ selectedValues: Array<string>;
25
+ optionRenderer?: OptionRenderer;
26
+ noMargin?: boolean;
27
+ onDropdownClose?: () => void;
28
+ hideFocusState?: boolean;
29
+ }> {
30
+ focusedElement: Element;
31
+ componentDidMount(): void;
32
+ render(): React.ReactNode;
33
+ }
34
+ export { OptionGroup };
35
+ export default Option;
@@ -0,0 +1,49 @@
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
+ export type OptionRenderer = (
9
+ children: React.Element<any> | null | void,
10
+ value: string,
11
+ selected: boolean,
12
+ disabled?: boolean
13
+ ) => React.Element<any>;
14
+ declare type OptionProps = {|
15
+ value: string,
16
+ children?: React.Node,
17
+ selected?: boolean,
18
+ disabled?: boolean,
19
+ onClick?: () => void,
20
+ optionRenderer?: OptionRenderer,
21
+ onDropdownClose?: () => void,
22
+ hideFocusState?: boolean,
23
+ testId?: string,
24
+ ariaLabel?: string,
25
+ |};
26
+ declare export var optionHeight: 30;
27
+ declare class Option extends React.Component<OptionProps> {
28
+ node: HTMLDivElement;
29
+ handleKeyDown(event: any): void;
30
+ render(): React.Node;
31
+ }
32
+ declare class OptionGroup
33
+ extends
34
+ React.Component<{|
35
+ onSelected: (value: string) => void,
36
+ children?: Array<React.Element<typeof Option>>,
37
+ selectedValues: Array<string>,
38
+ optionRenderer?: OptionRenderer,
39
+ noMargin?: boolean,
40
+ onDropdownClose?: () => void,
41
+ hideFocusState?: boolean,
42
+ |}>
43
+ {
44
+ focusedElement: Element;
45
+ componentDidMount(): void;
46
+ render(): React.Node;
47
+ }
48
+ declare export { OptionGroup };
49
+ declare export default typeof Option;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * DEPRECATED: Use <TextField> from ./text-field.jsx instead.
3
+ *
4
+ * This component wraps an <input> in a <form> to make it easier to add an
5
+ * `onSubmit` handler. In practice though this can complicate things because
6
+ * each field is in it's own form which is not how forms should be structured.
7
+ * If you need to handle `onSubmit`, please use <TextField> directly with your
8
+ * own <form> that wraps all text fields in the form.
9
+ **/
10
+ import { components } from "@khanacademy/perseus";
11
+ import * as React from "react";
12
+ type Props = {
13
+ id?: string;
14
+ testId?: string;
15
+ type?: string;
16
+ name?: string;
17
+ readOnly?: boolean;
18
+ value?: string | ReadonlyArray<string> | number | undefined;
19
+ placeholder?: string;
20
+ defaultValue?: string | number | ReadonlyArray<string> | undefined;
21
+ disabled?: boolean;
22
+ autoFocus?: boolean;
23
+ maxLength?: number;
24
+ invalid?: "true" | "false";
25
+ style?: React.CSSProperties | undefined;
26
+ className?: string;
27
+ width?: number | string;
28
+ grow?: boolean | number;
29
+ shrink?: boolean | number;
30
+ labelMediumInputText?: boolean;
31
+ icon?: React.ReactElement<React.ComponentProps<typeof components.Icon>>;
32
+ leftSideIcon?: boolean;
33
+ backgroundColor?: string;
34
+ focusBorderColor?: string;
35
+ borderColor?: string;
36
+ color?: string;
37
+ onSubmit?: (arg1: React.ChangeEvent<HTMLInputElement>) => unknown;
38
+ onBlur?: (arg1: React.ChangeEvent<HTMLInputElement>) => unknown;
39
+ onFocus?: (arg1: React.ChangeEvent<HTMLInputElement>) => unknown;
40
+ onChange?: (arg1: React.ChangeEvent<HTMLInputElement>) => unknown;
41
+ onClick?: (arg1: React.MouseEvent<HTMLInputElement>) => unknown;
42
+ onKeyPress?: (arg1: React.KeyboardEvent<HTMLInputElement>) => unknown;
43
+ onKeyDown?: (arg1: React.KeyboardEvent<HTMLInputElement>) => unknown;
44
+ ["aria-label"]?: string;
45
+ ["aria-describedby"]?: string | undefined;
46
+ };
47
+ declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLInputElement>>;
48
+ export default _default;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import { components } from "@khanacademy/perseus";
8
+ import * as React from "react";
9
+ declare type Props = {|
10
+ id?: string,
11
+ testId?: string,
12
+ type?: string,
13
+ name?: string,
14
+ readOnly?: boolean,
15
+ value?: string | $ReadOnlyArray<string> | number | void,
16
+ placeholder?: string,
17
+ defaultValue?: string | number | $ReadOnlyArray<string> | void,
18
+ disabled?: boolean,
19
+ autoFocus?: boolean,
20
+ maxLength?: number,
21
+ invalid?: "true" | "false",
22
+ style?: React.CSSProperties | void,
23
+ className?: string,
24
+ width?: number | string,
25
+ grow?: boolean | number,
26
+ shrink?: boolean | number,
27
+ labelMediumInputText?: boolean,
28
+ icon?: React.Element<typeof components.Icon>,
29
+ leftSideIcon?: boolean,
30
+ backgroundColor?: string,
31
+ focusBorderColor?: string,
32
+ borderColor?: string,
33
+ color?: string,
34
+ onSubmit?: (arg1: SyntheticInputEvent<HTMLInputElement>) => mixed,
35
+ onBlur?: (arg1: SyntheticInputEvent<HTMLInputElement>) => mixed,
36
+ onFocus?: (arg1: SyntheticInputEvent<HTMLInputElement>) => mixed,
37
+ onChange?: (arg1: SyntheticInputEvent<HTMLInputElement>) => mixed,
38
+ onClick?: (arg1: SyntheticMouseEvent<HTMLInputElement>) => mixed,
39
+ onKeyPress?: (arg1: SyntheticKeyboardEvent<HTMLInputElement>) => mixed,
40
+ onKeyDown?: (arg1: SyntheticKeyboardEvent<HTMLInputElement>) => mixed,
41
+ "aria-label": string | void,
42
+ "aria-describedby": (string | void) | void,
43
+ |};
44
+ declare var _default: React.ForwardRefExoticComponent<{|
45
+ ...Props,
46
+ ...React.RefAttributes<HTMLInputElement>,
47
+ |}>;
48
+ declare export default typeof _default;
@@ -0,0 +1,2 @@
1
+ declare const GraphSettings: any;
2
+ export default GraphSettings;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ declare var GraphSettings: any;
8
+ declare export default typeof GraphSettings;