@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.
- package/CHANGELOG.md +38 -0
- package/dist/article-renderer.d.ts +26 -40
- package/dist/components/math-input.d.ts +1 -1
- package/dist/components/sortable.d.ts +1 -1
- package/dist/components/tex-buttons.d.ts +1 -1
- package/dist/es/index.css +61 -61
- package/dist/es/index.js +1189 -1308
- package/dist/es/index.js.map +1 -1
- package/dist/hints-renderer.d.ts +1 -1
- package/dist/index.css +61 -61
- package/dist/index.js +1180 -1269
- package/dist/index.js.map +1 -1
- package/dist/mixins/provide-keypad.d.ts +15 -12
- package/dist/perseus-api.d.ts +1 -1
- package/dist/types.d.ts +3 -2
- package/dist/widgets/expression.d.ts +1 -1
- package/dist/widgets/graded-group.d.ts +1 -1
- package/dist/widgets/interactive-graph.d.ts +1 -1
- package/dist/widgets/plotter.d.ts +47 -13
- package/dist/widgets/sequence.d.ts +1 -1
- package/dist/widgets/table.d.ts +8 -1
- package/dist/widgets.d.ts +1 -1
- package/package.json +33 -33
- package/src/__testdata__/article-renderer.testdata.ts +3 -1
- package/src/__testdata__/item-renderer.testdata.ts +1 -1
- package/src/__testdata__/renderer.testdata.ts +1 -1
- package/src/__tests__/item-renderer.test.tsx +2 -2
- package/src/__tests__/mock-asset-loading-widget.tsx +1 -1
- package/src/__tests__/perseus-markdown.test.ts +17 -17
- package/src/__tests__/renderer-api.test.tsx +21 -21
- package/src/__tests__/renderer.test.tsx +13 -13
- package/src/__tests__/server-item-renderer.test.tsx +3 -3
- package/src/__tests__/tex-wrangler.test.ts +1 -1
- package/src/article-renderer.tsx +39 -38
- package/src/components/__stories__/image-loader.stories.tsx +1 -0
- package/src/components/__tests__/number-input.test.tsx +4 -4
- package/src/components/__tests__/sortable.test.tsx +2 -2
- package/src/components/fixed-to-responsive.tsx +1 -1
- package/src/components/graph.tsx +12 -11
- package/src/components/graphie-classes.ts +7 -7
- package/src/components/graphie.tsx +14 -14
- package/src/components/highlighting/highlightable-content.tsx +1 -1
- package/src/components/highlighting/ui/highlight-renderer.tsx +1 -1
- package/src/components/highlighting/ui/util.ts +2 -2
- package/src/components/highlighting/word-indexer.tsx +4 -4
- package/src/components/icon.tsx +2 -1
- package/src/components/image-loader.tsx +5 -4
- package/src/components/input-with-examples.tsx +2 -2
- package/src/components/lint.tsx +1 -1
- package/src/components/math-input.tsx +5 -5
- package/src/components/math-output.tsx +1 -1
- package/src/components/multi-button-group.tsx +1 -1
- package/src/components/number-input.tsx +11 -10
- package/src/components/prop-check-box.tsx +1 -1
- package/src/components/simple-keypad-input.tsx +4 -4
- package/src/components/sortable.tsx +43 -41
- package/src/components/svg-image.tsx +13 -12
- package/src/components/tex-buttons.tsx +5 -3
- package/src/components/text-input.tsx +9 -8
- package/src/components/text-list-editor.tsx +12 -11
- package/src/components/visibility-observer/create-visibility-observer.ts +1 -1
- package/src/components/visibility-observer/visibility-observer.tsx +2 -2
- package/src/components/zoomable-tex.tsx +3 -3
- package/src/components/zoomable.tsx +9 -8
- package/src/hint-renderer.tsx +3 -3
- package/src/hints-renderer.tsx +12 -11
- package/src/index.ts +1 -0
- package/src/init.ts +1 -1
- package/src/interaction-tracker.ts +4 -4
- package/src/interactive2/__tests__/movable-point.test.ts +1 -1
- package/src/interactive2/interactive-util.ts +6 -6
- package/src/interactive2/movable-helper-methods.ts +2 -2
- package/src/interactive2/movable-line-options.ts +37 -37
- package/src/interactive2/movable-line.ts +2 -2
- package/src/interactive2/movable-point-options.ts +29 -29
- package/src/interactive2/movable-point.tsx +2 -2
- package/src/interactive2/movable-polygon-options.ts +45 -45
- package/src/interactive2/movable-polygon.ts +2 -2
- package/src/interactive2/movable.ts +2 -2
- package/src/interactive2/objective_.ts +1 -1
- package/src/interactive2/wrapped-defaults.ts +2 -2
- package/src/interactive2/wrapped-ellipse.ts +9 -9
- package/src/interactive2/wrapped-line.ts +8 -8
- package/src/interactive2/wrapped-path.ts +5 -5
- package/src/item-renderer.tsx +6 -5
- package/src/mixins/changeable.ts +2 -2
- package/src/mixins/editor-jsonify.ts +1 -1
- package/src/mixins/provide-keypad.tsx +24 -37
- package/src/mixins/widget-jsonify-deprecated.ts +1 -1
- package/src/multi-items/__tests__/items.test.ts +1 -1
- package/src/multi-items/__tests__/multi-renderer.test.tsx +7 -7
- package/src/multi-items/__tests__/trees.test.ts +12 -12
- package/src/multi-items/item-types.ts +2 -2
- package/src/multi-items/items.ts +1 -1
- package/src/multi-items/multi-renderer.tsx +15 -14
- package/src/multi-items/prop-type-builders.ts +2 -2
- package/src/multi-items/tree-types.ts +4 -4
- package/src/multi-items/trees.ts +16 -16
- package/src/perseus-env.ts +2 -2
- package/src/perseus-markdown.tsx +5 -5
- package/src/renderer.tsx +39 -38
- package/src/server-item-renderer.tsx +6 -5
- package/src/sigfigs.ts +1 -1
- package/src/styles/articles.less +8 -4
- package/src/styles/perseus-renderer.less +47 -38
- package/src/styles/util.less +1 -1
- package/src/styles/variables.boostrap.less +158 -182
- package/src/styles/variables.less +20 -20
- package/src/styles/variables.shared.less +162 -168
- package/src/styles/widgets/categorizer.less +1 -2
- package/src/styles/widgets/expression.less +7 -4
- package/src/styles/widgets/grapher.less +2 -1
- package/src/styles/widgets/image.less +3 -2
- package/src/styles/widgets/interactive-graph.less +4 -2
- package/src/styles/widgets/label-image.less +2 -1
- package/src/styles/widgets/matrix.less +11 -7
- package/src/styles/widgets/orderer.less +2 -1
- package/src/styles/widgets/passage.less +2 -1
- package/src/styles/widgets/plotter.less +4 -3
- package/src/styles/widgets/radio.less +4 -2
- package/src/styles/widgets/sortable.less +1 -1
- package/src/styles/widgets/table.less +2 -1
- package/src/styles/widgets/transformer.less +2 -1
- package/src/styles/widgets/unit.less +2 -1
- package/src/traversal.ts +1 -1
- package/src/types.ts +3 -3
- package/src/util/answer-types.ts +14 -14
- package/src/util/geometry.ts +7 -7
- package/src/util/graphie.ts +32 -32
- package/src/util/interactive.ts +118 -118
- package/src/util/math.ts +4 -4
- package/src/util/react-render.tsx +1 -1
- package/src/util/scroll-utils.ts +2 -2
- package/src/util/tex.ts +3 -3
- package/src/util.ts +15 -15
- package/src/widget-container.tsx +1 -1
- package/src/widgets/__stories__/plotter.stories.tsx +27 -0
- package/src/widgets/__stories__/test-keypad-context-wrapper.tsx +3 -3
- package/src/widgets/__testdata__/numeric-input.testdata.ts +1 -1
- package/src/widgets/__testdata__/plotter.testdata.ts +36 -0
- package/src/widgets/__tests__/__snapshots__/plotter.test.tsx.snap +863 -0
- package/src/widgets/__tests__/__snapshots__/video.test.ts.snap +2 -2
- package/src/widgets/__tests__/expression.test.ts +4 -3
- package/src/widgets/__tests__/grapher.cypress.ts +32 -32
- package/src/widgets/__tests__/group.test.tsx +1 -1
- package/src/widgets/__tests__/interactive-graph.cypress.ts +40 -40
- package/src/widgets/__tests__/interactive-graph.test.ts +1 -1
- package/src/widgets/__tests__/numeric-input.test.ts +1 -1
- package/src/widgets/__tests__/passage.test.tsx +2 -2
- package/src/widgets/__tests__/plotter.test.tsx +66 -0
- package/src/widgets/__tests__/radio/base-radio.test.tsx +7 -7
- package/src/widgets/__tests__/renderQuestion.tsx +3 -3
- package/src/widgets/categorizer.tsx +5 -4
- package/src/widgets/cs-program.tsx +2 -2
- package/src/widgets/dropdown.tsx +1 -1
- package/src/widgets/expression.tsx +10 -9
- package/src/widgets/graded-group-set.tsx +6 -5
- package/src/widgets/graded-group.tsx +19 -19
- package/src/widgets/grapher/util.tsx +6 -6
- package/src/widgets/grapher.tsx +10 -10
- package/src/widgets/group.tsx +3 -3
- package/src/widgets/iframe.tsx +2 -2
- package/src/widgets/image.tsx +1 -1
- package/src/widgets/input-number.tsx +4 -4
- package/src/widgets/interaction.tsx +78 -77
- package/src/widgets/interactive-graph.tsx +109 -107
- package/src/widgets/label-image/marker.tsx +3 -2
- package/src/widgets/label-image.test.ts +1 -1
- package/src/widgets/label-image.tsx +7 -7
- package/src/widgets/lights-puzzle.tsx +2 -2
- package/src/widgets/matcher.tsx +7 -6
- package/src/widgets/matrix.tsx +20 -20
- package/src/widgets/measurer.tsx +3 -3
- package/src/widgets/molecule/__tests__/layout.test.ts +4 -4
- package/src/widgets/molecule/__tests__/parser.test.ts +14 -14
- package/src/widgets/molecule/smiles-parser.ts +3 -3
- package/src/widgets/molecule.tsx +4 -4
- package/src/widgets/number-line.tsx +11 -11
- package/src/widgets/numeric-input.tsx +11 -11
- package/src/widgets/orderer.tsx +39 -38
- package/src/widgets/passage/__tests__/passage-markdown.test.ts +1 -1
- package/src/widgets/passage/passage-markdown.tsx +4 -4
- package/src/widgets/passage-ref-target.tsx +2 -1
- package/src/widgets/passage-ref.tsx +4 -6
- package/src/widgets/passage.tsx +11 -11
- package/src/widgets/plotter.tsx +117 -107
- package/src/widgets/radio/base-radio.tsx +12 -11
- package/src/widgets/radio/choice-icon/choice-icon.tsx +3 -2
- package/src/widgets/radio/choice.tsx +1 -1
- package/src/widgets/radio/option-status.tsx +1 -1
- package/src/widgets/radio/widget.tsx +6 -6
- package/src/widgets/radio.ts +1 -1
- package/src/widgets/reaction-diagram.tsx +8 -8
- package/src/widgets/sequence.tsx +2 -2
- package/src/widgets/simulator.tsx +14 -14
- package/src/widgets/sorter.tsx +5 -4
- package/src/widgets/table.tsx +8 -8
- package/src/widgets/transformer.tsx +93 -92
- package/src/widgets/unit.tsx +17 -17
- package/src/widgets/video-transcript-link.test.tsx +3 -3
- package/src/widgets/video-transcript-link.tsx +1 -1
- package/src/widgets/video.tsx +1 -1
- package/src/widgets.ts +5 -5
- package/src/zoom.ts +22 -22
- package/tsconfig-build.tsbuildinfo +1 -1
- package/dist/a11y.js.flow +0 -11
- package/dist/all-widgets.js.flow +0 -33
- package/dist/article-renderer.js.flow +0 -73
- package/dist/asset-context.js.flow +0 -15
- package/dist/basic-widgets.js.flow +0 -33
- package/dist/components/button-group.js.flow +0 -33
- package/dist/components/constants.js.flow +0 -13
- package/dist/components/fixed-to-responsive.js.flow +0 -34
- package/dist/components/graph.js.flow +0 -66
- package/dist/components/graphie-classes.js.flow +0 -19
- package/dist/components/graphie-movables.js.flow +0 -22
- package/dist/components/graphie.js.flow +0 -69
- package/dist/components/highlighting/highlightable-content.js.flow +0 -56
- package/dist/components/highlighting/highlights.js.flow +0 -54
- package/dist/components/highlighting/ranges.js.flow +0 -60
- package/dist/components/highlighting/types.js.flow +0 -70
- package/dist/components/highlighting/ui/highlight-renderer.js.flow +0 -43
- package/dist/components/highlighting/ui/highlight-set-renderer.js.flow +0 -41
- package/dist/components/highlighting/ui/highlight-tooltip.js.flow +0 -22
- package/dist/components/highlighting/ui/highlighting-ui.js.flow +0 -30
- package/dist/components/highlighting/ui/selection-tracker.js.flow +0 -54
- package/dist/components/highlighting/ui/types.js.flow +0 -22
- package/dist/components/highlighting/ui/util.js.flow +0 -42
- package/dist/components/highlighting/word-indexer.js.flow +0 -21
- package/dist/components/hud.js.flow +0 -14
- package/dist/components/icon.js.flow +0 -31
- package/dist/components/image-loader.js.flow +0 -49
- package/dist/components/info-tip/info-tip.js.flow +0 -20
- package/dist/components/info-tip.js.flow +0 -18
- package/dist/components/inline-icon.js.flow +0 -39
- package/dist/components/input-with-examples.js.flow +0 -58
- package/dist/components/lint.js.flow +0 -58
- package/dist/components/math-input.js.flow +0 -49
- package/dist/components/math-output.js.flow +0 -33
- package/dist/components/multi-button-group.js.flow +0 -35
- package/dist/components/number-input.js.flow +0 -42
- package/dist/components/prop-check-box.js.flow +0 -8
- package/dist/components/range-input.js.flow +0 -20
- package/dist/components/simple-keypad-input.js.flow +0 -16
- package/dist/components/sortable.js.flow +0 -91
- package/dist/components/stub-tag-editor.js.flow +0 -18
- package/dist/components/svg-image.js.flow +0 -85
- package/dist/components/tex-buttons.js.flow +0 -26
- package/dist/components/tex.js.flow +0 -25
- package/dist/components/text-input.js.flow +0 -39
- package/dist/components/text-list-editor.js.flow +0 -22
- package/dist/components/tooltip.js.flow +0 -51
- package/dist/components/visibility-observer/create-visibility-observer.js.flow +0 -23
- package/dist/components/visibility-observer/get-scroll-parent.js.flow +0 -7
- package/dist/components/visibility-observer/visibility-observer.js.flow +0 -36
- package/dist/components/zoomable-tex.js.flow +0 -18
- package/dist/components/zoomable.js.flow +0 -70
- package/dist/components.js.flow +0 -22
- package/dist/definition-context.js.flow +0 -25
- package/dist/dependencies.js.flow +0 -9
- package/dist/error-boundary.js.flow +0 -19
- package/dist/extra-widgets.js.flow +0 -33
- package/dist/hint-renderer.js.flow +0 -32
- package/dist/hints-renderer.js.flow +0 -41
- package/dist/icon-paths.js.flow +0 -123
- package/dist/index.js.flow +0 -134
- package/dist/init.js.flow +0 -20
- package/dist/interaction-tracker.js.flow +0 -35
- package/dist/interactive2/interactive-util.js.flow +0 -50
- package/dist/interactive2/movable-helper-methods.js.flow +0 -15
- package/dist/interactive2/movable-line-options.js.flow +0 -44
- package/dist/interactive2/movable-line.js.flow +0 -8
- package/dist/interactive2/movable-point-options.js.flow +0 -44
- package/dist/interactive2/movable-point.js.flow +0 -8
- package/dist/interactive2/movable-polygon-options.js.flow +0 -47
- package/dist/interactive2/movable-polygon.js.flow +0 -8
- package/dist/interactive2/movable.js.flow +0 -8
- package/dist/interactive2/objective_.js.flow +0 -25
- package/dist/interactive2/types.js.flow +0 -8
- package/dist/interactive2/wrapped-defaults.js.flow +0 -11
- package/dist/interactive2/wrapped-ellipse.js.flow +0 -14
- package/dist/interactive2/wrapped-line.js.flow +0 -14
- package/dist/interactive2/wrapped-path.js.flow +0 -13
- package/dist/interactive2.js.flow +0 -16
- package/dist/item-renderer.js.flow +0 -132
- package/dist/item-version.js.flow +0 -11
- package/dist/jipt-paragraphs.js.flow +0 -14
- package/dist/loading-context.js.flow +0 -12
- package/dist/logging/log.js.flow +0 -62
- package/dist/mixins/changeable.js.flow +0 -33
- package/dist/mixins/editor-jsonify.js.flow +0 -10
- package/dist/mixins/provide-keypad.js.flow +0 -33
- package/dist/mixins/widget-jsonify-deprecated.js.flow +0 -11
- package/dist/mixins/widget-prop-denylist.js.flow +0 -20
- package/dist/multi-items/item-types.js.flow +0 -55
- package/dist/multi-items/items.js.flow +0 -66
- package/dist/multi-items/multi-renderer.js.flow +0 -213
- package/dist/multi-items/prop-type-builders.js.flow +0 -22
- package/dist/multi-items/shape-types.js.flow +0 -60
- package/dist/multi-items/shapes.js.flow +0 -25
- package/dist/multi-items/tree-types.js.flow +0 -45
- package/dist/multi-items/trees.js.flow +0 -147
- package/dist/multi-items.js.flow +0 -36
- package/dist/perseus-api.js.flow +0 -151
- package/dist/perseus-env.js.flow +0 -6
- package/dist/perseus-error.js.flow +0 -16
- package/dist/perseus-markdown.js.flow +0 -20
- package/dist/perseus-types.js.flow +0 -1041
- package/dist/question-paragraph.js.flow +0 -17
- package/dist/renderability.js.flow +0 -19
- package/dist/renderer.js.flow +0 -325
- package/dist/server-item-renderer.js.flow +0 -132
- package/dist/sigfigs.js.flow +0 -41
- package/dist/styles/constants.js.flow +0 -62
- package/dist/styles/global-constants.js.flow +0 -348
- package/dist/styles/global-styles.js.flow +0 -53
- package/dist/styles/media-queries.js.flow +0 -35
- package/dist/styles/shared.js.flow +0 -8
- package/dist/tex-wrangler.js.flow +0 -13
- package/dist/translation-linter.js.flow +0 -32
- package/dist/traversal.js.flow +0 -26
- package/dist/types.js.flow +0 -318
- package/dist/util/a11y.js.flow +0 -8
- package/dist/util/answer-types.js.flow +0 -49
- package/dist/util/colors.js.flow +0 -95
- package/dist/util/fix-passage-refs.js.flow +0 -8
- package/dist/util/geometry.js.flow +0 -37
- package/dist/util/graph-utils.js.flow +0 -9
- package/dist/util/graphie.js.flow +0 -8
- package/dist/util/interactive.js.flow +0 -11
- package/dist/util/katex-preprocess.js.flow +0 -12
- package/dist/util/math.js.flow +0 -62
- package/dist/util/mobile-native-utils.js.flow +0 -12
- package/dist/util/react-render.js.flow +0 -12
- package/dist/util/register-all-widgets-for-testing.js.flow +0 -7
- package/dist/util/scroll-utils.js.flow +0 -19
- package/dist/util/sizing-utils.js.flow +0 -20
- package/dist/util/tex.js.flow +0 -17
- package/dist/util/url-utils.js.flow +0 -11
- package/dist/util.graphie.js.flow +0 -14
- package/dist/util.js.flow +0 -319
- package/dist/version.js.flow +0 -17
- package/dist/widget-container.js.flow +0 -33
- package/dist/widgets/categorizer.js.flow +0 -70
- package/dist/widgets/cs-program.js.flow +0 -54
- package/dist/widgets/definition.js.flow +0 -57
- package/dist/widgets/dropdown.js.flow +0 -63
- package/dist/widgets/explanation.js.flow +0 -58
- package/dist/widgets/expression.js.flow +0 -116
- package/dist/widgets/graded-group-answer-bar.js.flow +0 -24
- package/dist/widgets/graded-group-set.js.flow +0 -65
- package/dist/widgets/graded-group.js.flow +0 -78
- package/dist/widgets/grapher/util.js.flow +0 -38
- package/dist/widgets/grapher.js.flow +0 -102
- package/dist/widgets/group.js.flow +0 -60
- package/dist/widgets/iframe.js.flow +0 -53
- package/dist/widgets/image.js.flow +0 -73
- package/dist/widgets/input-number.js.flow +0 -94
- package/dist/widgets/interaction/arrow-picker.js.flow +0 -21
- package/dist/widgets/interaction/color-picker.js.flow +0 -23
- package/dist/widgets/interaction/dash-picker.js.flow +0 -21
- package/dist/widgets/interaction/element-container.js.flow +0 -28
- package/dist/widgets/interaction.js.flow +0 -60
- package/dist/widgets/interactive-graph.js.flow +0 -239
- package/dist/widgets/label-image/answer-choices.js.flow +0 -55
- package/dist/widgets/label-image/marker.js.flow +0 -31
- package/dist/widgets/label-image/types.js.flow +0 -23
- package/dist/widgets/label-image.js.flow +0 -142
- package/dist/widgets/lights-puzzle.js.flow +0 -58
- package/dist/widgets/matcher.js.flow +0 -106
- package/dist/widgets/matrix.js.flow +0 -80
- package/dist/widgets/measurer.js.flow +0 -30
- package/dist/widgets/molecule/molecule-drawing.js.flow +0 -11
- package/dist/widgets/molecule/molecule-layout.js.flow +0 -96
- package/dist/widgets/molecule/smiles-parser.js.flow +0 -26
- package/dist/widgets/molecule.js.flow +0 -60
- package/dist/widgets/number-line.js.flow +0 -102
- package/dist/widgets/numeric-input.js.flow +0 -105
- package/dist/widgets/orderer.js.flow +0 -81
- package/dist/widgets/passage/passage-markdown.js.flow +0 -33
- package/dist/widgets/passage-ref-target.js.flow +0 -52
- package/dist/widgets/passage-ref.js.flow +0 -85
- package/dist/widgets/passage.js.flow +0 -157
- package/dist/widgets/plotter.js.flow +0 -78
- package/dist/widgets/radio/base-radio.js.flow +0 -50
- package/dist/widgets/radio/choice-a11y-text.js.flow +0 -14
- package/dist/widgets/radio/choice-icon/choice-icon.js.flow +0 -22
- package/dist/widgets/radio/choice-icon/cross-out-line.js.flow +0 -16
- package/dist/widgets/radio/choice-icon/shared-styles.js.flow +0 -11
- package/dist/widgets/radio/choice-none-above.js.flow +0 -16
- package/dist/widgets/radio/choice.js.flow +0 -29
- package/dist/widgets/radio/choice.jsx.fixture.js.flow +0 -7
- package/dist/widgets/radio/focus-ring.js.flow +0 -22
- package/dist/widgets/radio/option-status.js.flow +0 -16
- package/dist/widgets/radio/util.js.flow +0 -12
- package/dist/widgets/radio/widget.js.flow +0 -80
- package/dist/widgets/radio.js.flow +0 -31
- package/dist/widgets/reaction-diagram.js.flow +0 -46
- package/dist/widgets/sequence.js.flow +0 -53
- package/dist/widgets/simulator.js.flow +0 -107
- package/dist/widgets/sorter.js.flow +0 -102
- package/dist/widgets/table.js.flow +0 -67
- package/dist/widgets/transformer.js.flow +0 -127
- package/dist/widgets/unit.js.flow +0 -93
- package/dist/widgets/video-transcript-link.js.flow +0 -15
- package/dist/widgets/video.js.flow +0 -57
- package/dist/widgets.js.flow +0 -108
- package/dist/zoom.js.flow +0 -7
- 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;
|